
Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:02

Cześć, w tej instrukcji chcę pokazać, jak zbudować własny interfejs step / dir dla standardowych skanerów laserowych galvo ILDA.
Jak być może wiesz, jestem również wynalazcą „DIY-SLS-3D-Printer” i „JRLS 1000 DIY SLS-3D-PRINTER” i kiedy budowałem te maszyny, zacząłem majstrować nad tym, jak te drukarki będą działać, czy użyję skanerów Galvo zamiast kartezjańskiego systemu ruchu. Jednak w tamtych czasach nie miałem umiejętności programowania sterownika do skanera galvo. Użyłem więc istniejącego oprogramowania układowego z ruchem kartezjańskim.
Ale dzisiaj i po kilku badaniach znalazłem instrukcję, w której autor używa arduino do stworzenia pokazu DIY Laser Galvo. Pomyślałem, że właśnie tego szukam, więc zamówiłem części jak w jego instrukcji i wykonałem kilka eksperymentów. Po kilku badaniach stwierdziłem, że Arduino nie będzie tak dobrze działał jako interfejs krok/kierunek, więc zremiksowałem go pod mikrokontroler STM32.
Proszę pamiętać, że ten kontroler jest tylko prototypem, ale można go używać w wielu projektach. Na przykład w drukarce 3D DIY SLS lub grawerce laserowej.
Cechy kontrolera Galvo to:
- konwersja z 5V sygnałów step/dir do standardu ILDA
- Częstotliwość wejściowa 120 kHz (sygnały kroku/kierunku)
- 12-bitowa rozdzielczość wyjściowa (0,006° na kąt)
- konwersja ze współrzędnych biegunowych na liniowe
- kompatybilny z dowolnym kontrolerem ruchu, który wygeneruje sygnał kroku i kierunku;
- sworzeń wyrównujący środek (procedura bazowania)
wideo z laserowego kontrolera galvo: (wkrótce)
Jeśli podoba Ci się mój Instructable, zagłosuj na mnie w konkursie Remix
Krok 1: Części potrzebne do kontrolera Galvo
Części elektroniczne do kontrolera galvo:
Ilość | Opis | Połączyć | Cena |
---|---|---|---|
1x | Zestaw galwanometru galwanometru ILDA 20Kpps | Aliexpress | 56, 51€ |
1x | 6mm 650nm dioda laserowa | Aliexpress | 1, 16€ |
Niektóre | przewody | - | - |
1x | ST-Link V2 | Aliexpress | 1, 92 |
Części elektroniczne do obwodu:
Oto wszystkie wymagane części do kontrolera galvo. Starałem się pozyskiwać wszystkie części jak najtaniej.
Ilość | Opis | Nazwa na obwodzie | Połączyć | Cena |
---|---|---|---|---|
1x | Mikrokontroler STM32 "Blue-Pill" | „NIEBIESKA TABLETKA” | Aliexpress | 1, 88€ |
1x | MCP4822 12-bitowy dwukanałowy przetwornik cyfrowo-analogowy | MCP4822 | Aliexpress | 3, 00€ |
2x | TL082 podwójny wzmacniacz operacyjny | IC1, IC2 | Aliexpress | 0, 97€ |
6x | Rezystor 1k | R1-R6 | Aliexpress | 0, 57€ |
4x | Potencjometr przycinania 10k | R7-R10 | Aliexpress | 1, 03€ |
Niektóre | nagłówek pinów | - | Aliexpress | 0, 46€ |
Krok 2: Teoria kontrolera

Tutaj wyjaśnię, jak ogólnie działa kontroler. Pokażę też kilka szczegółów, na przykład obliczenie kąta prostego.
1. KONTROLER RUCHU
Kontroler ruchu to część, w której tworzysz sygnały kroku i kierunku. Sterowanie krokowe/kierunkowe jest często używane w aplikacjach z silnikami krokowymi, takich jak drukarki 3D, lasery lub frezarki CNC.
Oprócz sygnałów kroku i kierunku, potrzebny jest środkowy pin wyrównujący, aby zapewnić spójność STM32 i kontrolera ruchu. Dzieje się tak, ponieważ galwy są całkowicie kontrolowane i nie ma potrzeby stosowania jakichkolwiek wyłączników krańcowych.
2. Mikrokontroler STM32
Sercem tego kontrolera jest mikrokontroler STM32. Ten mikrokontroler ma kilka zadań do wykonania. Te zadania to:
Zadanie 1: Pomiar sygnałów

Pierwszym zadaniem jest pomiar sygnałów wejściowych. W tym przypadku będą to sygnały krokowe i kierunkowe. Ponieważ nie chcę, aby kontroler ruchu był ograniczany częstotliwością wejściową, zaprojektowałem układ na 120kHz (testowane). Aby osiągnąć tę częstotliwość wejściową bez utraty danych, używam dwóch zegarów sprzętowych TIM2 i TIM3 na STM32 do zarządzania interfejsem krok/kierunek. Oprócz sygnałów krokowych i kierunkowych występuje sygnał wyrównania. To wyrównanie jest kontrolowane przez zewnętrzne przerwanie w STM32.
Zadanie 2: Oblicz sygnały
Teraz kontroler musi obliczyć sygnały do właściwej wartości dla DAC. Ponieważ galvo utworzy nieliniowy układ współrzędnych biegunowych, potrzebne są małe obliczenia, aby stworzyć liniową zależność między schodkowym a faktycznie przesuniętym laserem. Tutaj pokażę szkic kalkulacji:

Teraz musimy znaleźć wzór do obliczeń. Ponieważ używam 12-bitowego przetwornika cyfrowo-analogowego, mogę podać napięcie od -5 do +5 V w krokach od 0 do 4096. Zamówione przeze mnie galvo ma całkowity kąt skanowania 25° przy -5 - +5V. Więc mój kąt phi mieści się w zakresie od -12, 5° - +12, 5°. Na koniec muszę pomyśleć o odległości d. Osobiście chcę mieć pole skanowania 100x100mm, więc moje d będzie wynosić 50mm. Wysokie h będzie wynikiem phi i d. h wynosi 225,5 mm. Aby sprowadzić odległość d do kąta phi, użyłem małego wzoru, który użyje tangensów i przeliczy kąt z radianów na „wartości DAC”

Na koniec muszę tylko dodać odchylenie 2048, ponieważ moje pole skanowania jest wyrównane do środka i wszystkie obliczenia są wykonane.
Zadanie 3: Wyślij wartości do DAC:
Ponieważ używany przeze mnie STM32 nie ma wbudowanego przetwornika cyfrowo-analogowego, użyłem zewnętrznego przetwornika cyfrowo-analogowego. Komunikacja między DAC a STM32 realizowana jest przez SPI.
3. DAC
Do obwodu używam tego samego 12-bitowego przetwornika cyfrowo-analogowego „MCP4822” jako deltaflo. Ponieważ DAC jest jednobiegunowy 0-4, 2V i potrzebujesz bipolarnego +5V dla standardu ILDA, musisz zbudować mały układ z kilkoma wzmacniaczami operacyjnymi. Używam wzmacniaczy operacyjnych TL082. Ten obwód wzmacniacza trzeba zbudować dwa razy, ponieważ trzeba sterować dwoma galwami. Oba wzmacniacze operacyjne są podłączone do -15 i +15 V jako ich napięcie zasilania.

4. GALVO
Ostatnia część jest dość prosta. Napięcie wyjściowe dwóch wzmacniaczy OPAMP zostanie podłączone do sterowników ILDA Galvo. I to wszystko, teraz powinieneś być w stanie kontrolować galwy za pomocą sygnałów krokowych i kierunkowych
Krok 3: Obwód

Do obwodu użyłem prototypowej płytki drukowanej.
Możesz podłączyć sygnały kroku i kierunku bezpośrednio do STM32, ponieważ mam aktywowane wewnętrzne rezystory pull down. Użyłem również pinów tolerancyjnych 5 V dla pinów kroku, kierunku i środka.
Poniżej możesz pobrać pełny schemat obwodu:
Krok 4: Programowanie STM32
STM32 jest zaprogramowany za pomocą Attolic TrueStudio i CubeMX. TrueStudio jest darmowy i możesz go pobrać tutaj
Ponieważ TrueStudio nie jest tak proste jak np. Arduino IDE, wygenerowałem plik.hex, który wystarczy wgrać do mikrokontrolera STM32.
Poniżej wyjaśnię, jak wgrałeś plik do STM32 "BluePill":
1. Pobierz "STM32 ST-LINK Utility": możesz pobrać oprogramowanie tutaj
2. Zainstaluj i otwórz "Narzędzie STM32 ST-LINK":

3. Teraz otwórz plik Galvo.hex w narzędziu ST-Link:

Następnie musisz podłączyć STM32 "BluePill" do ST-Link-V2. Po połączeniu kliknij przycisk „Połącz z obiektem docelowym”:

Na koniec kliknij „Pobierz”. Teraz twój STM32 powinien być poprawnie sflashowany.

Dodatkowo załączyłem wszystkie pliki źródłowe dla Galvo_Controller w TrueStudio
Krok 5: Połącz wszystkie części mechanicznie i przetestuj je


Wszystkie części elektroniczne umieściłem na 4mm aluminiowej płycie dla lepszego wyglądu:-)
Teraz pokażę Ci jak trzeba wyregulować potencjometry na obwodzie prawdopodobnie:
Na początek kilka podstawowych informacji o standardzie ILDA. Standard ILDA jest zwykle używany do pokazów laserowych i składa się z sygnału 5V i -5V. Oba sygnały mają tę samą amplitudę, ale ze zmienioną polaryzacją. Musimy więc zredukować sygnał wyjściowy z DAC do 5V i -5V.
Ustaw potencjometr:

To, co tutaj widać, to napięcie wyjściowe tego obwodu przy wejściowej częstotliwości kroku 100 kHz i stałym sygnale kierunkowym. Na tym zdjęciu wszystko jest w porządku. Amplituda waha się od 0 do 5V i od 0 do -5. Prawdopodobnie również napięcia są wyrównane.
Teraz pokażę, co może się nie udać podczas regulacji potencjometru:

Jak widać teraz oba napięcia prawdopodobnie nie są wyrównane. Rozwiązaniem jest dostosowanie napięcia niezrównoważenia ze wzmacniacza OpAmp. Robisz to, regulując potencjometry „R8” i „R10”.
Inny przykład:

Jak widać teraz napięcia pewnie są wyrównane, ale amplituda to nie 5V tylko 2V. Rozwiązaniem jest regulacja wzmocnienia rezystora z OpAmp. Robisz to, regulując potencjometry „R7” i „R9”.
Zalecana:
Kontroler gier DIY oparty na Arduino - Kontroler gier Arduino PS2 - Granie w Tekken z DIY Arduino Gamepad: 7 kroków

Kontroler gier DIY oparty na Arduino | Kontroler gier Arduino PS2 | Granie w Tekken z DIY Arduino Gamepad: Witajcie, granie w gry jest zawsze zabawne, ale granie z własnym niestandardowym kontrolerem do gier jest przyjemniejsze. Dlatego stworzymy kontroler do gier za pomocą arduino pro micro w tej instrukcji
DIY Kontroler lotu Multiwii kontrolowany przez Arduino: 7 kroków (ze zdjęciami)

DIY Arduino Controled Multiwii Flight Controller: Ten projekt ma na celu stworzenie wszechstronnej, ale niestandardowej tablicy logicznej drona multicoptera opartej na Arduino i Multiwii
DIY kontroler prędkości PWM 2000 W: 8 kroków (ze zdjęciami)

DIY 2000 Watts PWM Speed Controller: Pracowałem nad przekształceniem mojego roweru w elektryczny za pomocą silnika prądu stałego do automatycznego mechanizmu drzwi i do tego stworzyłem również akumulator o napięciu 84 V DC. Teraz potrzebujemy regulatora prędkości, który może ograniczyć ilość energii del
Kontroler rękawic DIY z czujnikami e-tekstylnymi: 14 kroków (ze zdjęciami)

Kontroler rękawic zrób to sam z czujnikami e-tekstylnymi: Ten instruktaż to samouczek krok po kroku, jak zrobić rękawicę do danych z czujnikami e-tekstylnymi. Projekt jest efektem współpracy Rachel Freire i Artema Maxima. Rachel jest projektantką tekstyliów na rękawiczki i czujników eTextile, a Arty projektuje ok
Laser Box Music Laser Light Show: 18 kroków (ze zdjęciami)

Laser Box Music Laser Light Show: Wcześniej opublikowałem instrukcję, w której opisano, jak używać dysków twardych komputera do tworzenia muzycznego pokazu laserowego. Postanowiłem zrobić wersję kompaktową, wykorzystując skrzynkę elektryczną i silniki samochodów RC. Zanim zacznę, prawdopodobnie powiem, że lase