Tartalomjegyzék:

DIY STEP/DIR LASER GALVO CONTROLLER: 5 lépés (képekkel)
DIY STEP/DIR LASER GALVO CONTROLLER: 5 lépés (képekkel)

Videó: DIY STEP/DIR LASER GALVO CONTROLLER: 5 lépés (képekkel)

Videó: DIY STEP/DIR LASER GALVO CONTROLLER: 5 lépés (képekkel)
Videó: Building a DIY portable Laser Engraver 2024, Július
Anonim
DIY STEP/DIR LASER GALVO CONTROLLER
DIY STEP/DIR LASER GALVO CONTROLLER

Szia, Ebben az utasításban szeretném megmutatni, hogyan lehet saját step / dir felületet létrehozni az ILDA szabványos galvo lézerszkennerekhez.

Mint talán tudjátok, én vagyok a "DIY-SLS-3D-Printer" és a "JRLS 1000 DIY SLS-3D-PRINTER" feltalálója is, és miközben ezeket a gépeket építettem, elkezdtem azon agyalni, hogyan fognak ezek a nyomtatók működni, ha a Galvo szkennereket fogom használni a derékszögű mozgásrendszer helyett. Ezekben a napokban azonban nem tudtam, hogy programozni kellene egy vezérlőt egy galvo szkennerhez. Tehát egy meglévő firmware -t használtam, derékszögű mozgással.

De ma és némi kutatás után találtam egy tanulságosat, ahol a szerző egy arduino -t használ egy DIY Laser Galvo show létrehozásához. Azt hittem, hogy pontosan ezt keresem, ezért megrendeltem az alkatrészeket, mint az utasításaiban, és néhány kísérletet végeztem. Némi kutatás után rájöttem, hogy az Arduino nem fog olyan jól teljesíteni, mint a lépés / irány interfész, ezért újrakevertem az STM32 mikrovezérlőhöz.

Ne feledje, hogy ez a vezérlő csak prototípus, de sok projekthez használható. Például DIY SLS 3D nyomtatóban vagy lézergravírozóban.

A Galvo vezérlő jellemzői:

  • átalakítás 5V -os lépés/irányjelből ILDA szabványra
  • 120 kHz bemeneti frekvencia (lépés / irányjel)
  • 12 bites kimeneti felbontás (0, 006 ° per szög)
  • átalakítás polárisból lineáris koordinátákká
  • kompatibilis bármely mozgásvezérlővel, amely lépés- és irányjelzést hoz létre
  • középső beállító csap (homing rutin)

videó a lézeres galvo vezérlőről: (hamarosan)

Ha tetszik az Instructable, kérlek szavazz rám a Remix versenyen

1. lépés: A Galvo vezérlőhöz szükséges alkatrészek

A galvo vezérlő elektronikus alkatrészei:

Mennyiség Leírás Link Ár
1x ILDA 20Kpps galvo galvanométer készlet AliExpress 56, 51€
1x 6 mm -es 650 nm -es lézerdióda AliExpress 1, 16€
néhány vezetékek - -
1x ST-Link V2 AliExpress 1, 92

Az áramkör elektronikus alkatrészei:

Itt vannak a galvo vezérlő összes szükséges alkatrésze. Igyekeztem minden alkatrészt a lehető legolcsóbban beszerezni.

Mennyiség Leírás Név az áramkörön Link Ár
1x STM32 "Blue-Pill" mikrovezérlő "KÉK-PILL" AliExpress 1, 88€
1x MCP4822 12 bites kétcsatornás DAC MCP4822 AliExpress 3, 00€
2x TL082 kettős OpAmp IC1, IC2 AliExpress 0, 97€
6x 1k ellenállás R1-R6 AliExpress 0, 57€
4x 10k trim-potenciométer R7-R10 AliExpress 1, 03€
néhány pin fejléc - AliExpress 0, 46€

2. lépés: A vezérlő elmélete

Kép
Kép

Itt elmagyarázom, hogyan működik a vezérlő általában. Mutatok néhány részletet, például a derékszög kiszámítását.

1. MOZGÁSVEZÉRLŐ

A mozgásvezérlő az a rész, ahol létrehozza a lépés- és irányjelzéseket. A lépés/irány vezérlést gyakran használják léptetőmotoros alkalmazásokban, mint például 3D-nyomtatók, lézerek vagy CNC-malmok.

A lépés- és irányjelzéseken kívül szükség van egy középső elosztócsapra, hogy az STM32 és a Motioncontroller megegyező legyen. Ez azért van, mert a fej teljesen szabályozott, és nincs szükség végálláskapcsolókra.

2. STM32-mikrokontroller

Az STM32 mikrovezérlő a vezérlő szíve. Ennek a mikrokontrollernek számos feladata van. Ezek a feladatok:

1. feladat: Mérje meg a jeleket

Kép
Kép

Az első feladat a bemeneti jelek mérése. Ebben az esetben lépés- és irányjelzésekről van szó. Mivel nem akarom, hogy a mozgásvezérlőt korlátozza a bemeneti frekvencia, ezért az áramkört 120 kHz-re terveztem (tesztelve). Ennek a bemeneti frekvenciának az adatvesztés nélküli eléréséhez két hardver időzítőt használok: TIM2 és TIM3 az STM32 -en a lépés / irány interfész kezelésére. A lépés- és irányjelzések mellett ott van az irányjelzés. Ezt az igazítást az STM32 külső megszakítása vezérli.

2. feladat: Számítsa ki a jeleket

Most a vezérlőnek ki kell számítania a jeleket a DAC megfelelő értékére. Mivel a galvo nem lineáris poláris koordináta -rendszert hoz létre, kis számításra van szükség ahhoz, hogy lineáris függőséget hozzon létre a lépés és a ténylegesen mozgatott lézer között. Itt megmutatom a számítás vázlatát:

Kép
Kép

Most meg kell találnunk a számítás képletét. Mivel 12 bites DAC -t használok, -5 - +5 V feszültséget tudok adni 0 - 4096 lépésben. Az általam megrendelt galvo teljes letapogatási szöge -5 - +5V -nál 25 °. Tehát a phi szög -12, 5 ° - +12, 5 ° tartományban van. Végül gondolnom kell a távolságra d. Én személy szerint 100x100 mm -es szkennelési mezőt szeretnék, tehát a d -m 50 mm lesz. A magas h a phi és d eredménye lesz. h 225,5 mm. Ahhoz, hogy a d távolságot a phi szöghez viszonyítsam, egy kis képletet használtam, amely az érintőket használja, és a radiánokból származó szöget "DAC-értékekké" alakítja át

Kép
Kép

Végül csak 2048 -as torzítást kell hozzáadnom, mivel a szkennelési mezőm a középre igazítás, és minden számítás megtörtént.

3. feladat: Értékek küldése a DAC -hez:

Mivel az általam használt STM32 -nek nincs beépített DAC -ja, külső DAC -ot használtam. A kommunikáció a DAC és az STM32 között SPI -n keresztül valósul meg.

3. DAC

Az áramkörhöz ugyanazt a 12 bites DAC "MCP4822" -t használom, mint a deltaflo. Mivel a DAC unipoláris 0-4, 2V, és szüksége van -+5V bipolárisra az ILDA szabványhoz, fel kell építeni egy kis áramkört néhány OpAmp -el. TL082 OpAmps -t használok. Ezt az erősítő áramkört kétszer kell felépítenie, mert két fejet kell vezérelnie. A két OpAmp tápfeszültségként -15 és +15 V -ra van csatlakoztatva.

Kép
Kép

4. GALVO

Az utolsó rész meglehetősen egyszerű. A két OPAmp kimeneti feszültsége az ILDA Galvo illesztőprogramokhoz lesz csatlakoztatva. És ennyi, most már képesnek kell lennie a fej irányítására lépés- és irányjelzésekkel

3. lépés: Az áramkör

Az áramkör
Az áramkör

Az áramkörhöz egy PCB prototípust használtam.

A lépés- és irányjelzéseket közvetlenül csatlakoztathatja az STM32 -hez, mert aktiváltam a belső lehúzó ellenállásokat. Ezenkívül 5 V -os tűrő csapokat használtam a lépcső-, irány- és középcsapokhoz.

Az alábbiakban letöltheti az áramkör teljes vázlatát:

4. lépés: Az STM32 programozása

Az STM32 programozott Attolic TrueStudio és CubeMX programokkal. A TrueStudio ingyenesen használható, és letöltheti innen

Mivel a TrueStudio nem olyan egyszerű, mint például az Arduino IDE, létrehoztam egy.hex fájlt, amelyet egyszerűen fel kell töltenie az STM32 mikrovezérlőre.

A következőkben elmagyarázom, hogyan töltötte fel a fájlt az STM32 "BluePill" -re:

1. "STM32 ST-LINK Utility" letöltése: A szoftvert innen töltheti le

2. Telepítse és nyissa meg az "STM32 ST-LINK Utility" alkalmazást:

Kép
Kép

3. Most nyissa meg a Galvo.hex fájlt az ST-Link segédprogramban:

Kép
Kép

Ezt követően csatlakoztatnia kell az STM32 "BluePill" -et az ST-Link-V2-hez. A csatlakoztatás után kattintson a "Csatlakozás a tragethez" gombra:

Kép
Kép

Végül kattintson a "Letöltés" gombra. Most az STM32 -t helyesen kell villogni.

Kép
Kép

Ezenkívül csatoltam a Galvo_Controller összes forrásfájlját a TrueStudio -ban

Lépés: Csatlakoztassa az összes alkatrészt mechanikusan és tesztelje

Csatlakoztassa az összes alkatrészt mechanikusan és tesztelje
Csatlakoztassa az összes alkatrészt mechanikusan és tesztelje
Csatlakoztassa az összes alkatrészt mechanikusan és tesztelje
Csatlakoztassa az összes alkatrészt mechanikusan és tesztelje

Az összes elektronikus alkatrészt egy 4 mm-es alumínium lemezre helyeztem a jobb megjelenés érdekében:-)

Most megmutatom, hogyan kell beállítani az áramkör potenciométereit:

Először néhány háttérinformáció az ILDA szabványról. Az ILDA szabványt általában lézeres műsorokra használják, és 5V és -5V jelből áll. Mindkét jel amplitúdója megegyezik, de a polaritás megváltozott. Tehát a DAC kimeneti jelét 5 V -ra és -5 V -ra kell vágni.

Állítsa be a potenciométert:

Kép
Kép

Itt láthatja ennek az áramkörnek a kimeneti feszültségét 100 kHz bemeneti lépésfrekvencián és állandó irányjel mellett. Ezen a képen minden rendben van. Az amplitúdó 0 és 5 V között, és 0 és -5 között változik. Valószínűleg a feszültségek is igazodnak.

Most megmutatom, mi lehet a hiba a potenciométer beállítása közben:

Kép
Kép

Mint látható, mindkét feszültség valószínűleg nincs egyenletesen beállítva. A megoldás az OpAmp -ről az eltolt feszültség beállítása. Ezt az "R8" és "R10" potenciométerek beállításával teheti meg.

Egy másik példa:

Kép
Kép

Mint látható, a feszültségek valószínűleg igazodnak, de az amplitúdó nem 5V, hanem 2V. A megoldás az erősítőellenállás beállítása az OpAmp -ról. Ezt az "R7" és "R9" potenciométerek beállításával teheti meg.

Ajánlott: