Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Automatyczna nawijarka do przystawek gitarowych na ATmega8

ghost666 07 Jun 2016 11:43 16686 10
  • Automatyczna nawijarka do przystawek gitarowych na ATmega8
    Davide Gironi skonstruował automatyczną nawijarkę do przystawek gitarowych. Jeśli ktokolwiek z Was wykonywał kiedyś taki pick-up, to wie, jak trudne i jednocześnie, jak ważne jest dobre nawinięcie jego uzwojenia. Zaprezentowana nawijarka CNC pozwala istotnie uprościć ten proces.

    Układ sterowany jest z pomocą mikrokontrolera ATmega8, który kontroluje wszystkie ruchy systemu. Autor postanowił w system wbudować szereg usprawnień, w porównaniu do jego poprzedniego projektu (który obejrzeć można tutaj). Podstawowe funkcje, jakie wbudowano w układ to:

    * Licznik nawiniętych zwojów.
    * Powolne rozpędzanie silnika nawijarki.
    * Automatyczne zatrzymywanie nawijarki.
    * Konfigurowalna ilość zwojów oraz prędkość ich nawijania.
    * Dwa kierunki obrotów.
    * Automatyzacja nawijania (CNC).
    * Dynamiczna zmiana prędkości poprzecznej nawijarki.
    * Wyświetlacz LCD pokazujący podczas pracy następujące parametry:
    - Kierunek nawijania,
    - Prędkość obrotową silnika nawijarki,
    - Całkowita i aktualnie nawiniętą liczbę zwojów,
    - Kierunek mechanizmu ruchu poprzecznego drutu nawojowego,
    - Prędkość ruchu mechanizmu poprzecznego.

    Nawijarka może pracować w trybie w pełni automatycznym (CNC) z włączonym poprzecznym ruchem podajnika drutu nawojowego lub w trybie półautomatycznym, pozwalającym na manualne podawanie drutu na obracający się pick-up.

    Układ wyposażony jet w trzy przyciski, pozwalające konfigurować działanie nawijarki: SELECT, UP i DOWN. Mają one następujące funkcje:

    * Krótkie naciśnięcie przycisku SELECT powoduje ruch mechanizmu poprzecznego o 1 mm.
    * Długie naciśnięcie przycisku SELECT powoduje wejście/wyjście do trybu programowania. W tym trybie przycisku UP i DOWN zmieniają wybrane wartości, a krótkie naciśnięcie przycisku SELECT zatwierdza ustawienie i powoduje przejście do konfiguracji kolejnego parametru.
    * Krótkie naciśnięcie przycisku UP powoduje zmianę kierunku nawijania.
    * Długie naciśnięcie przycisku UP resetuje licznik.
    * Krótkie naciśnięcie przycisku DOWN powoduje zmianę kierunku ruchu prowadnicy drutu.
    * Długie naciśnięcie przycisku DOWN resetuje licznik.

    Tak prezentuje się nawijarka podczas pracy:





    Układ jest wyposażony, oprócz przycisków, w pedał pozwalający na kontrolę nawijania. W trybie nawijania cewki wystarczy nacisnąć pedał RUN, aby nawijarka rozpoczęła swoją pracę. Zacznie ona najpierw powoli rozkręcać silnik obracający cewką, a po dojściu do zaprogramowanej liczby zwojów, zatrzyma się. Puszczenie pedału RUN także spowoduje natychmiastowe zatrzymanie silnika.

    Jeśli wyłączymy tryb automatycznego zatrzymywania, to nawijarka pracować będzie tak długo, jak trzymany będzie pedał. W tym trybie licznik zwojów także będzie zliczał ich ilość, niezależnie od kierunku nawijania.

    Jako silnik kręcący cewką nawijarki wykorzystano tani silniczek DC na 12 V o prędkości nominalnej 1200 RPM. Silnik sterowany jest poprzez driver L298N.

    Automatyczna nawijarka do przystawek gitarowych na ATmega8


    Mechanizm poprzecznego ruchu podajnika drutu nawojowego wykonano w oparciu o elementy ze skanera. Poruszany jest on silnikiem krokowym skanera w poprzek kierunku ruchu drutu nawojowego.

    Automatyczna nawijarka do przystawek gitarowych na ATmega8


    Ruch podajnika drutu ograniczony jest dwoma transoptorami. Elementy te zamontowano na niewielkich magnesach neodymowych, dzięki czemu ich położenie dostosować można do wielkości i kształtu nawijanego uzwojenia.

    Automatyczna nawijarka do przystawek gitarowych na ATmega8


    Napinacz drutu nawojowego wykonano z sprężyny i kawałka filcu. Jest to bardzo prosta konstrukcja, ale dobrze spełnia swoje zadanie. Dyszę podajnika wykonano z elementu wyposażenia dentystycznego - plastikowej końcówki do odsysacza śliny. Otwór tego elementu jest bardzo mały, co zapewnia precyzyjne prowadzenie drutu, a z uwagi, że element ten jest plastikowy, to nie uszkadza on izolacji uzwojenia.

    Automatyczna nawijarka do przystawek gitarowych na ATmega8


    Licznik zwojów wykonany jest z sensora Halla i magnesu neodymowego, umocowanego na obracającej się przystawce, na którą nawijany jest drut.

    Poprzeczny mechanizm z silnikiem krokowym oferuję rozdzielczość 5,29 µm/krok. Można w jego miejsce zamontować oczywiście precyzyjniejszy silnik krokowy, aby uzyskać wyższą rozdzielczość ruchu. Niezależnie od tego, przed rozpoczęciem pracy z urządzeniem, należy je skalibrować.

    Przy każdej zmianie elementów podajnika drutu należy ustawić następujące stałe w programie:

    * GUIDEMOTOR_1STEPUM,
    * GUIDEMOTOR_1MMSTEP,
    * GUIDEMOTOR_1CMMAXSPEEDTIMEMS,
    * GUIDEMOTOR_1CMMINSPEEDTIMEMS,
    * GUIDEMOTOR_FIXEDSPEED_DEFAULT,
    * WIRE_MINGAUGE,
    * WIRE_MAXGAUGE.

    Aby skalibrować ruch podajnika, należy wykonać dwa proste kroki:

    Trzeba zmierzyć odległość poprzeczną, jaką pokonuje podajnik drutu na jeden krok silnika. W tym celu ustawiamy GUIDEMOTOR_MEASURESTEP jako 1, a liczbę kroków, jaką ma ruszyć się podajnik zapisujemy pod zmienną GUIDEMOTOR_MEASURESTEPSTEPS. Kompilujemy tak zmieniony program i wgrywamy do mikrokontrolera. Teraz, po uruchomieniu układu, podajnik ruszy się zaprogramowaną ilość kroków, a my musimy jedynie zmierzyć całkowitą przebytą drogę i podzielić ją przez ilość kroków. Z tego wyliczyć możemy liczbę kroków na 1 mm i liczbę kroków na 1 µm.

    Dla przykładu: ustawiliśmy ruch 20 tysięcy kroków, podczas którego podajnik przemieścił się o 106 mm. Jeśli teraz podzielimy te wartości przez siebie, to otrzymujemy następujące wartości: 188,879 kroków na mm i 5,29 kroku na µm. Wartości te zapisujemy w programie jako stałe - odpowiednio - GUIDEMOTOR_1MMSTEP oraz GUIDEMOTOR_1STEPUM.

    Po zakończeniu tego etapu ustawiamy zmienną GUIDEMOTOR_MEASURESTEP z powrotem na 0.

    Aby zmierzyć maksymalną i minimalną prędkość przesuwu podajnika drutu nawojowego, ustawiamy GUIDEMOTOR_MEASURESPEED na 1. Ponownie kompilujemy program i wgrywamy go do mikrokontrolera. Po uruchomieniu się programu na LCD możemy odczytać maksymalną i minimalną prędkość, jaką osiągnąć może silnik krokowy przesuwu podajnika drutu. Wartości, jakie odczytaliśmy z wyświetlacza zapisujemy w programie pod zmiennymi GUIDEMOTOR_1CMMAXSPEEDTIMEMS oraz GUIDEMOTOR_1CMMINSPEEDTIMEMS, a zmienną GUIDEMOTOR_MEASURESPEED ustawiamy znowu na 0.

    Po ustawieniu powyższych wartości kalibracyjnych wpisać możemy inne wartości konfigurujące program: GUIDEMOTOR_FIXEDSPEED_DEFAULT, WIRE_MINGAUGE oraz WIRE_MAXGAUGE, które obliczamy z wykorzystaniem załączonego arkusza kalkulacyjnego (patrz link poniżej). Jeśli chcemy manualnie obliczać te wartości, to opis ich wyznaczania także znajduje się w dokumentacji. Do ich wyliczenia potrzebne są nam jedynie informacje opisujące nasz układ, które znamy.

    Maksymalna i minimalna średnica drutu jest ważnym parametrem, który definiuje co i jak nawinąć może nasz system.

    Nawijarka nawija uzwojenie w bardzo prostym wzorze, tak, że każdy kolejny zwój znajduje się dokładnie obok poprzedniego i tak warstwa po warstwie. Na poniższym zdjęciu mikroskopowym można zobaczyć, jak wygląda gotowe uzwojenie wykonane na opisywanej nawijarce:

    Automatyczna nawijarka do przystawek gitarowych na ATmega8


    Teraz przyjrzyjmy się bliżej samemu programowi kontrolującemu układ. Wymagał on trochę pracy, z uwagi m.in. na fakt, że wirnik obracający cewką nie kręci się cały czas z tą samą prędkością i przesuw drutu musi to uwzględniać, szczególnie jeśli wybraliśmy opcję z wolnym rozkręcaniem silnika nawijarki, albo kiedy nawijamy uzwojenie przy niewielkiej prędkości.

    Silnik przesuwu kontrolowany jest poprzez przerwanie timera w mikrokontrolerze. Program musi wyznaczyć liczbę kroków, o jaką ruszyć ma silnik krokowy podajnika drutu na podstawie:

    * liczby zwojów nawiniętych od ostatniego ruchu,
    * aktualnej prędkości obrotowej silnika nawijarki,
    * grubości drutu,
    * odległości, jaką pokonuje na jeden krok silnik krokowy,
    * maksymalnego i minimalnego czasu, jaki zajmuje pokonanie podajnikowi drutu 1 cm.

    Automatyczna nawijarka do przystawek gitarowych na ATmega8


    Aby wyznaczyć o jaką odległość przemieścić się musi podajnik drutu, aby kolejny zwój wypadł obok poprzedniego, program realizuje dosyć proste obliczenia:

    Code: c
    Log in, to see the code


    Dalej jest trochę trudniej, szczególnie, że w programie wykorzystywane są tylko wartości całkowite (i trzeba zapamiętywać dodatkowo reszty z dzielenia):

    Code: c
    Log in, to see the code


    Ale to nie wszystko! Musimy zadbać, o to, żeby silnik krokowy przesuwał podajnik z taką prędkością, aby drucik wypadał zaraz obok poprzedniego zwoju dokładnie, gdy nawijarka wykona dokładnie jeden obrót. Oczywiście nie chcemy wykonywać zbyt szybkich ruchów, ani zatrzymywać silnika nawijarki, więc musimy dokonać pewnych obliczeń, które zagwarantują nam płynny ruch:

    Aby estymować prędkość silnika, jaka jest wymagana, program dokonuje prostego obliczenia:

    Code: c
    Log in, to see the code


    Teraz obliczyć można, korzystając z zapisanej maksymalnej i minimalnej prędkości, czas w milisekundach, jaki potrzebny jest na ruch podajnika drutu o 1 cm, aby wyznaczyć, ile czasu potrzebne jest na ruch:

    Code: c
    Log in, to see the code


    Dzięki temu uzyskujemy prędkość - od 1 do 100 - z jaką poruszać się musi silnik krokowy, przesuwający podajnik drutu. Jeśli w programie ustawimy zmienną GUIDEMOTOR_DEBUGSTEPANDSPEED na 1, to wyświetlacz podawać będzie aktualną prędkość i ilość pozostałych kroków silnika krokowego. Jest to przydatne np. podczas debugowania układu. Prędkość nigdy nie powinna być wyższa niż 100, a liczba kroków musi maleć - jeśli rośnie to oznacza, że nasz podajnik porusza się zbyt wolno.

    Automatyczna nawijarka do przystawek gitarowych na ATmega8


    Dalsze usprawnienia, jakie przewiduje zaimplementować autor, to interfejs UART, który pozwoli na kontrolowanie układu z poziomu komputera. Dzięki temu łatwo będzie można realizować bardziej skomplikowane wzoru nawoju.

    Projekt stworzony został w środowisku Eclipse, skomplikowany został avr-gcc na ATmega8 pracującą przy częstotliwości zegara 16 MHz.

    Kompletną dokumentację projektu (płytek drukowanych i kodu programu) odnaleźć można tutaj.

    Źródło: http://davidegironi.blogspot.com/2016/06/a-cnc-pickup-winding-machine-built-on.html#.V1DMrjV94dU

    Cool? Ranking DIY
    About Author
    ghost666
    Translator, editor
    Offline 
    Fizyk z wykształcenia. Po zrobieniu doktoratu i dwóch latach pracy na uczelni, przeszedł do sektora prywatnego, gdzie zajmuje się projektowaniem urządzeń elektronicznych i programowaniem. Od 2003 roku na forum Elektroda.pl, od 2008 roku członek zespołu redakcyjnego.
    ghost666 wrote 11803 posts with rating 9943, helped 157 times. Live in city Warszawa. Been with us since 2003 year.
  • #2
    timo66
    Level 23  
    Super precyzyjne nawijanie, ale czego mi brakuje w konstrukcji, to napinacza drutu. Przy powolnym nawijaniu drut będzie luźniej nawinięty niż przy maksymalnej prędkości nawijania.
  • #3
    ghost666
    Translator, editor
    timo66 wrote:
    Super precyzyjne nawijanie, ale czego mi brakuje w konstrukcji, to napinacza drutu. Przy powolnym nawijaniu drut będzie luźniej nawinięty niż przy maksymalnej prędkości nawijania.


    Napinacz drutu jest, ale w bardzo uproszczonej formie - dwa kawałki filcu + sprężynka, która je dociska:

    Automatyczna nawijarka do przystawek gitarowych na ATmega8
  • #4
    timo66
    Level 23  
    O to przepraszam, właśnie się zastanawiałem nad funkcją tego filcu.
    Tak po za tym fajny dodatek do takiego plotera DiY.
  • #5
    Pretorio
    Level 1  
    Bardzo ciekawe urządzenie. Czy jest możliwość kupna?
  • #6
    ghost666
    Translator, editor
    Pretorio wrote:
    Bardzo ciekawe urządzenie. Czy jest możliwość kupna?


    O to trzeba by chyba zapytać autora konstrukcji - to powyższe, to tylko przedruk projektu z innych źródeł - http://davidegironi.blogspot.com/2016/06/a-cnc-pickup-winding-machine-built-on.html
  • #7
    zdziwiony
    Level 26  
    Autor urządzenia powinien dopracować mocowanie karkasu. Teraz widać że się kiwa jak pijana baletnica.
  • #8
    Citizen75
    Level 20  
    Zastanawiam się w jakim stanie jest izolacja przewodu nawojowego po przejściu przez zaznaczone na zdjęciu "oczka". Szczególnie to pierwsze oczko, które jest metalowe. Również na pierwszym zdjęciu widać też drugie podobne metalowe oczko.

    Automatyczna nawijarka do przystawek gitarowych na ATmega8
  • #9
    jankazik
    Level 17  
    Do nawijania przetworników gitarowych używa się /najczęściej/ DNE 0.05 - 0.06. Aby zatem układać kolejne zwoje obok siebie należy zapewnić chyba posuw karetki z taką samą dokładnością. Czy napęd od skanera jest w stanie to osiągnąć ?
  • #10
    DRAZEK87
    Level 14  
    zdziwiony wrote:
    Autor urządzenia powinien dopracować mocowanie karkasu. Teraz widać że się kiwa jak pijana baletnica.


    Autor tego urządzenia zasługuję na najwyższa nagrodę, to że mocowanie jego jest nieprecyzyjne i za to nalezy go nie obwiniać ale trzeba chwalić za to co zrobił i należało by to rozwijać udoskonalać.... nie ma w sprzedaży u nas takiej maszyny więc też sam przystąpiłem do jej budowy ...

    po pierwsze autor napisał program który udostępnia daje to możliwość analizy ....weż napisz sam to udostępnij innym,,, unas takich ludzi nie ma ...bo liczą na chajs w portfelu zamiast pomoc innym ....

    poza tym ten temat jest bardziej hobby wiec pokaże wam jak ja ten powyższy problem rozwiązałem precyzja co do 0,01 ideał i mocowanie perfekcyjne
    foto z budowy urządzenia ...

    dodaje jeszcze dwa foto jak wykonałem posuw drutu... popatrz
    Automatyczna nawijarka do przystawek gitarowych na ATmega8 Automatyczna nawijarka do przystawek gitarowych na ATmega8 Automatyczna nawijarka do przystawek gitarowych na ATmega8

    na koniec dodam przeanalizowałem oprogramowanie autora napisałem własne poprawiłem i użyłem silnika krokowego o ogromnej mocy do nawijania, cel kompletnie inny niż autor ale działa, chociaż nie powiem na podstawie jego autorstwa zrobiłem coś własnego inne
    go bazując też na rozwiązaniach z wschodu gdzie maja takie maszyny są dostępne za kosmiczne kwoty ...

    jaką byś nie zbudował technicznie maszynę bez odpowiedniego oprogramowania będzie bezużyteczna chcesz taka pomyśl nad tym
  • #11
    ZenekZdenek
    Level 7  
    Rozumiem, że normalne cewki też nawinę takę maszynką?