Innehållsförteckning:
- Steg 1:
- Steg 2: Teori
- Steg 3: Skaffa komponenter
- Steg 4: Montera Steppers
- Steg 5: Laser Blanking + Mirror Calibration
- Steg 6: Slutmontering
- Steg 7: Laser Control App
- Steg 8: Video
Video: Arduino laserprojektor + kontrollapp: 8 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
- XY - 2 -dimensionell laserskanning
- 2x 35 mm 0,9 ° stegmotorer - 400 steg/varv
- Automatisk spegelkalibrering
- Fjärrseriell styrning (via bluetooth)
- Auto -läge
- Fjärrkontrollapp med GUI
- Öppen källa
Ladda ner:
github.com/stanleyondrus
stanleyprojects.com
Steg 1:
Steg 2: Teori
Laserprojektorer kan delas in i två huvudkategorier. Antingen använder de ett diffraktionsglas/folie för att projicera ett mönster eller så har de ett system som rör laserstrålen i XY -axelriktningar. Det andra alternativet ser vanligtvis mycket bättre ut eftersom det är möjligt att programmera det mönster som ska projiceras. Medan laserstrålen i det första fallet diffrakteras och projicerar en statisk bild, i det andra består lasern fortfarande av bara en stråle som rör sig mycket snabbt. Om denna rörelse är tillräckligt snabb uppfattar vi den som ett mönster på grund av ihållande syn (POV). Detta görs vanligtvis genom att ha två vinkelräta speglar, var och en som kan flytta laserstrålen i en axel. Genom att kombinera dem är det möjligt att placera laserstrålen till den exakta platsen.
För professionella applikationer används vanligtvis galvanometerskannrar. Några av dessa skannrar klarar 60kpps (kilopunkt per sekund). Det betyder att de kan placera laserstrålen på 60000 olika platser under en sekund. Detta skapar en riktigt smidig projektion utan stroboskopisk effekt. De kan dock vara riktigt dyra. Jag har använt stegmotorerna, vilket är det billiga, inte så snabba alternativet.
Lasern ritar mönstret genom att kretsa linjerna om och om igen med riktigt hög hastighet. Ibland finns det flera delar av mönstret som inte är sammankopplade. I detta exempel separeras varje bokstav, men när lasern rör sig från en bokstav till en annan skapar det en oönskad linje. Detta löses med en teknik som kallas blanking. Hela tanken bakom är att lasern slås på när man flyttar från ett till ett annat mönster. Detta görs av en höghastighetsstyrenhet, som måste synkroniseras med skanningssystemet.
Steg 3: Skaffa komponenter
I listan nedan hittar du komponenterna jag använde och länkarna där jag köpte dem.
- 1x Arduino Uno
- 1x Adafruit Motor Shield V2
- 1x lasermodul
- 2x 35 mm 0,9 ° stegmotorer - 400 steg/varv - 5V - eBay
- 3x LED - AliExpress
- 1x HC -06 Bluetooth -seriemodul - AliExpress
- 1x fotodiod - AliExpress
- 1x NPN -transistor BC547B - AliExpress
- 2x 2K Trimmer - AliExpress
- 1x DC -uttagspanelfäste - eBay
- 1x vippströmbrytare - AliExpress
Och sedan lite material och verktyg som du kan hitta hemma. Förhoppningsvis;)
- Spegel (bäst är en metallspegel som HDD -tallrik)
- Aluminiumplåt
- Snips
- Hot Lim (eller Pattex Repair Express)
- Trådar
- Tång
- Borra (eller sax i mitt fall: D)
- Box (t.ex. kopplingsbox)
Steg 4: Montera Steppers
Aluminiumplåt behövde klippas och böjas till rätt form. Därefter borrades hål och stegmaskiner fästes.
Steg 5: Laser Blanking + Mirror Calibration
Motor Shield har ett litet prototypområde som användes för två små kretsar.
Laser Blanking
Vi vill styra vår laser med en Arduino. Men vi måste begränsa strömmen som flödar in i lasern och även att köra den direkt från en digital utgångsstift är ingen bra idé. Min lasermodul hade redan ett strömskydd. Således har jag byggt bara en enkel krets där transistorn slår på och av lasern. Basström kan regleras av trimmer och styr laserns ljusstyrka.
Spegelkalibrering
Fotodiod placerades i hålet i mittaxeln precis ovanför X-axelns steg. Neddragningsmotståndskrets var nödvändig för att erhålla exakta mätningar. Vid kalibrering läser vi värden från fotodioden och när värdet överskrider ett specifikt värde (laser lyser direkt in i det) stannar stegarna och återgår till utgångsläget.
pseudokod för kalibrering
// 1step = 0,9 ° / 400steps = 360 ° = full rotation laserOn (); för (int a = 0; a <= 400; a ++) {för (int b = 0; b = photodiodeThreshold) {laserOff (); återvända hem(); } steg Y (1, 1); } stegX (1, 1); } laserOff (); misslyckad ();
Steg 6: Slutmontering
Hela kretsen sattes i kopplingsdosan av plast och spändes med skruvar. Hela projektorn är verkligen bärbar, bara anslut strömförsörjningen, växla omkopplaren och vi har lasershow.
Steg 7: Laser Control App
Den styrande appen gjordes i C# och gör det möjligt att växla mellan mönster, justera hastigheten och se aktuella åtgärder. Det är gratis att ladda ner tillsammans med Arduino -koden (se Intro).