Cuprins:
- Pasul 1: Piese de care aveți nevoie pentru controlerul Galvo
- Pasul 2: Teoria controlorului
- Pasul 3: Circuitul
- Pasul 4: Programarea STM32
- Pasul 5: Conectați toate piesele mecanic și testați-le
Video: DIY STEP / DIR LASER CONTROLER GALVO: 5 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Salut, în acest instructabil, vreau să vă arăt cum puteți construi propria interfață pas / dir pentru scanere laser galvo standard ILDA.
După cum s-ar putea să știți, sunt și inventatorul „DIY-SLS-3D-Printer” și al „JRLS 1000 DIY SLS-3D-PRINTER” și, în timp ce construiam aceste mașini, am început să mă gândesc la performanța acestor imprimante, dacă voi folosi un scaner Galvo în locul unui sistem de mișcare carteziană. Cu toate acestea, în aceste zile nu am avut cunoștințele de a programa un controler pentru un scaner galvo. Așa că am folosit un firmware existent cu mișcare carteziană.
Dar astăzi și după unele cercetări, am găsit un instructabil în care autorul folosește un arduino pentru a crea un spectacol DIY Laser Galvo. Am crezut că exact asta caut, așa că am comandat piesele ca în instructabilul său și am făcut câteva experimente. După câteva cercetări, am aflat că Arduino nu va funcționa atât de bine ca interfața pas / direcție, așa că l-am remixat pentru microcontrolerul STM32.
Vă rugăm să vă amintiți că acest controler este doar un prototip, dar poate fi utilizat pentru o mulțime de proiecte. De exemplu, într-o imprimantă 3D SLS DIY sau un gravor cu laser.
Caracteristicile controlerului Galvo sunt:
- conversie de la semnale de pas / dir de 5V la standart ILDA
- Frecvența de intrare 120kHz a (semnalelor pas / direcție)
- Rezoluție de ieșire pe 12 biți (0, 006 ° per unghi)
- conversia de la coordonate polare la liniare
- compatibil cu orice controler de mișcare care va crea un semnal de direcție și pas
- pin de aliniere central (rutină de aderare)
video cu controler laser galvo: (în curând)
Dacă îți place Instructable-ul meu, te rog să mă votezi în Concursul de Remixuri
Pasul 1: Piese de care aveți nevoie pentru controlerul Galvo
Piese electronice pentru controlerul galvo:
Cantitate | Descriere | Legătură | Preț |
---|---|---|---|
1x | Set galvanometru galvo ILDA 20Kpps | Aliexpress | 56, 51€ |
1x | 6mm 650nm Laserdiode | Aliexpress | 1, 16€ |
niste | fire | - | - |
1x | ST-Link V2 | Aliexpress | 1, 92 |
Piese electronice pentru circuit:
Iată toate piesele necesare pentru controlerul galvo. Am încercat să obțin toate piesele cât mai ieftine posibil.
Cantitate | Descriere | Nume pe circuit | Legătură | Preț |
---|---|---|---|---|
1x | Microcontroler STM32 "Blue-Pill" | „ALBASTRĂ-PILOVĂ” | Aliexpress | 1, 88€ |
1x | MCP4822 DAC dual channel pe 12 biți | MCP4822 | Aliexpress | 3, 00€ |
2x | TL082 dual OpAmp | IC1, IC2 | Aliexpress | 0, 97€ |
6x | Rezistor 1k | R1-R6 | Aliexpress | 0, 57€ |
4x | 10k-potențiometru de decupare | R7-R10 | Aliexpress | 1, 03€ |
niste | antet pin | - | Aliexpress | 0, 46€ |
Pasul 2: Teoria controlorului
Aici vă voi explica, cum funcționează controlerul în general. De asemenea, voi arăta câteva detalii, de exemplu, calculul unghiului drept.
1. CONTROLUL DE MOCIUNE
Controlerul de mișcare este partea în care veți crea semnalele de direcție și pas. Controlul pasului / direcției este adesea utilizat în aplicații cu motor pas cu pas, cum ar fi imprimante 3D, lasere sau freze CNC.
În plus față de semnalele de pas și direcție, este nevoie de un pin de aliniere central pentru a face ca STM32 și Motioncontroller să fie compatibile. Acest lucru se datorează faptului că galvo-urile sunt controlate în mod absolut și nu este nevoie de nicio întrerupătoare de limită.
2. STM32-microcontroler
Microcontrolerul STM32 este inima acestui controler. Acest microcontroler are mai multe sarcini de făcut. Aceste sarcini sunt:
Sarcina 1: Măsurați semnalele
Prima sarcină este de a măsura semnalele de intrare. În acest caz, vor fi semnale de pas și direcție. Deoarece nu vreau ca controlerul de mișcare să fie limitat de frecvența de intrare, am proiectat circuitul pentru 120kHz (testat). Pentru a obține această frecvență de intrare fără a pierde date, folosesc două temporizatoare hardware TIM2 și TIM3 pe STM32 pentru a gestiona interfața pas / direcție. În plus față de semnalele de pas și direcție există semnalul de aliniere. Această aliniere este controlată de o întrerupere externă pe STM32.
Sarcina 2: Calculați semnalele
Acum controlerul trebuie să calculeze semnalele la valoarea corectă pentru DAC. Deoarece galvo va crea un sistem de coordonate polare neliniare, este necesar un mic calcul pentru a crea o dependență liniară între pas și laserul real deplasat. Aici vă voi arăta o schiță a calculului:
Acum trebuie să găsim formula pentru calcul. Deoarece folosesc un DAC de 12 biți, pot da o tensiune de la -5 - + 5V în 0 - 4096 pași. Comanda Galvo I have are un unghi total de scanare de 25 ° la -5 - + 5V. Deci unghiul meu phi este în intervalul de la -12, 5 ° - +12, 5 °. În cele din urmă, trebuie să mă gândesc la distanța d. Vreau personal un câmp de scanare de 100x100mm, așa că d-ul meu va fi de 50mm. Înaltul h va fi rezultatul phi și d. h este 225, 5mm. Pentru a aduce distanța d în raport cu unghiul phi, am folosit o mică formulă, care va folosi tangențele și va converti unghiul din radiani în „valori DAC”
În cele din urmă, trebuie doar să adaug o prejudecată de 2048, deoarece scanarea mea este alinierea centrală și toate calculele sunt terminate.
Sarcina 3: Trimiteți valori către DAC:
Deoarece STM32 pe care l-am folosit nu are construire în DAC, am folosit un DAC extern. Comunicarea dintre DAC și STM32 se realizează prin SPI.
3. DAC
Pentru circuit folosesc același DAC pe 12 biți "MCP4822" ca deltaflo. Deoarece DAC este unipolar 0-4, 2V și aveți nevoie de - + 5V bipolar pentru standardul ILDA, trebuie să construiți un circuit mic cu câteva OpAmps. Folosesc TL082 OpAmps. Trebuie să construiți acest circuit amplificator de două ori, pentru că trebuie să controlați doi galvo. Cele două OpAmp-uri sunt conectate la -15 și + 15V ca tensiune de alimentare.
4. GALVO
Ultima parte este destul de simplă. Tensiunea de ieșire a celor două OPAmps va fi conectată la driverele ILDA Galvo. Și atât, acum ar trebui să puteți controla galvo-urile cu semnale de direcție și pas
Pasul 3: Circuitul
Pentru circuit am folosit un prototip PCB.
Puteți conecta semnalele de pas și direcție direct la STM32, deoarece am activat rezistențe interne de tragere. De asemenea, am folosit știfturi tolerante de 5V pentru știfturile de pas, direcție și centru.
Puteți descărca schema completă a circuitului de mai jos:
Pasul 4: Programarea STM32
STM32 este programat cu Attolic TrueStudio și CubeMX. TrueStudio este gratuit și îl puteți descărca de aici
Deoarece TrueStudio nu este atât de simplu ca, de exemplu, Arduino IDE, am generat un fișier.hex, pe care trebuie pur și simplu să îl încărcați pe microcontrolerul STM32.
În cele ce urmează vă voi explica cum ați introdus fișierul în STM32 „BluePill”:
1. Descărcați „STM32 ST-LINK Utility”: Puteți descărca software-ul de aici
2. Instalați și deschideți „STM32 ST-LINK Utility”:
3. Acum deschideți fișierul Galvo.hex în ST-Link Utility:
După aceea, trebuie să conectați STM32 „BluePill” la ST-Link-V2. Odată conectat, faceți clic pe butonul „Conectați-vă la traget”:
În cele din urmă, faceți clic pe „Descărcați”. Acum, STM32 ar trebui să fie intermitent corect.
În plus, am atașat toate fișierele sursă pentru Galvo_Controller în TrueStudio
Pasul 5: Conectați toate piesele mecanic și testați-le
Am așezat toate piesele electronice pe o placă de aluminiu de 4 mm pentru un aspect mai bun:-)
Acum vă voi arăta cum trebuie să reglați potențiometrele de pe circuit probabil:
La început câteva informații de bază despre standardul ILDA. Standardul ILDA este de obicei folosit pentru spectacole cu laser și constă dintr-un semnal de 5V și -5v. Ambele semnale au aceeași amplitudine, dar cu polaritate modificată. Deci, trebuie să tăiem semnalul de ieșire de la DAC la 5V și -5V.
Reglați potențiometrul:
Ceea ce puteți vedea aici este tensiunea de ieșire a acestui circuit la o frecvență de pas de intrare de 100kHz și cu un semnal de direcție constantă. În această imagine totul este în regulă. Amplitudinea merge de la 0 la 5V și de la 0 la -5. De asemenea, tensiunile sunt aliniate probabil.
Acum vă voi arăta ce s-ar putea greși în timp ce reglați potențiometrul:
După cum puteți vedea acum, ambele tensiuni nu sunt aliniate probabil. Soluția este de a regla tensiunea offset de la OpAmp. Faceți acest lucru reglând potențiometrele „R8” și „R10”.
Alt exemplu:
După cum puteți vedea acum, tensiunile sunt aliniate probabil, dar amplitudinea nu este de 5V, ci de 2V. Soluția este de a regla rezistența de câștig de la OpAmp. Faceți acest lucru reglând potențiometrele „R7” și „R9”.
Recomandat:
Frigider / frigider Peltier de casă cu controler de temperatură DIY: 6 pași (cu imagini)
Răcitor / frigider Peltier de casă cu controler de temperatură DIY: Cum să faci un răcitor Peltier / mini frigider termoelectric de casă DIY cu controler de temperatură W1209. Acest modul TEC1-12706 și efectul Peltier fac cooler-ul perfect pentru bricolaj! Acest instructable este un tutorial pas cu pas care vă arată cum să faceți
Controler de tastatură DIY pentru MAME și pinball virtual: 4 pași (cu imagini)
Controler de tastatură DIY pentru MAME și Virtual Pinball: Acest set de instrucțiuni vă permite să fabricați propriul controler de tastatură folosind tastaturi vechi pentru costul unor fire, lipire și o bucată de lemn. Aceste controlere au fost utilizate în proiectele mele MAME și Virtual Pinball .Vezi Virtual Pinball Inst
Controler de joc DIY bazat pe Arduino - Controler de joc Arduino PS2 - Jucând Tekken cu DIY Arduino Gamepad: 7 pași
Controler de joc DIY bazat pe Arduino | Controler de joc Arduino PS2 | Jucând Tekken cu DIY Arduino Gamepad: Bună, băieți, jocul este întotdeauna distractiv, dar jocul cu propriul controler personalizat DIY este mai distractiv
YABC - încă un controler Blynk - controler de temperatură și umiditate în cloud IoT, ESP8266: 4 pași
YABC - încă un alt controler Blynk - controler de temperatură și umiditate în cloud IoT, ESP8266: Bună ziua, producători, am început recent să cultiv ciuperci acasă, ciuperci de stridii, dar am deja 3x din aceste controlere acasă pentru controlul temperaturii fermentatorului pentru berea mea de acasă, soție face, de asemenea, acest lucru Kombucha acum și ca termostat pentru căldură
Mini gravor cu laser laser CNC și tăietor de hârtie cu laser: 18 pași (cu imagini)
Mini gravor cu laser laser CNC și tăietor de hârtie cu laser: Acesta este un instructabil despre modul în care am realizat un gravor cu laser laser pe bază de Arduino și un tăietor de hârtie subțire folosind unități DVD vechi, laser de 250 mW. Zona de joc este de 40 mm x 40 mm maximum. Nu este distractiv să faci o mașină proprie din lucruri vechi?