Indholdsfortegnelse:

Arduino Laser Projector + Control App: 8 trin
Arduino Laser Projector + Control App: 8 trin

Video: Arduino Laser Projector + Control App: 8 trin

Video: Arduino Laser Projector + Control App: 8 trin
Video: DIY Laser Projector - Built from an old hard drive 2024, November
Anonim
Image
Image
Arduino Laser Projector + Control App
Arduino Laser Projector + Control App
Arduino Laser Projector + Control App
Arduino Laser Projector + Control App
  • XY - 2 -dimensionel laserscanning
  • 2 x 35 mm 0,9 ° stepper motorer - 400 trin/omdrejninger
  • Automatisk spejlkalibrering
  • Fjernstyret seriel kontrol (via bluetooth)
  • Auto -tilstand
  • Fjernbetjeningsapp med GUI
  • Åben kilde

Hent:

github.com/stanleyondrus

stanleyprojects.com

Trin 1:

Trin 2: Teori

Teori
Teori
Teori
Teori

Laserprojektorer kan opdeles i to hovedkategorier. Enten bruger de et diffraktionsglas/folie til at projicere et mønster, eller også har de et system, der bevæger laserstråle i XY -akseretninger. Den anden mulighed ser normalt meget bedre ud, fordi det er muligt at programmere det mønster, der skal projiceres. Mens laserstrålen i det første tilfælde er ved at blive diffrakteret og projekterer et statisk billede, i det andet består laseren stadig af kun en stråle, der bevæger sig meget hurtigt. Hvis denne bevægelse er hurtig nok, opfatter vi den som et mønster på grund af vedholdenhed i synet (POV). Dette gøres normalt ved at have to vinkelrette spejle, der hver kan bevæge laserstrålen i en akse. Ved at kombinere dem er det muligt at placere laserstrålen på den nøjagtige placering.

Til professionelle applikationer bruges normalt galvanometerscannere. Nogle af disse scannere er i stand til at udføre 60 kpps (kilopunkt pr. Sekund). Det betyder, at de kan placere laserstrålen på 60000 forskellige steder i løbet af 1 sekund. Dette skaber en virkelig glat projektion uden den stroboskopiske effekt. De kan dog være rigtig dyre. Jeg har brugt steppermotorer, hvilket er det billige, ikke så hurtige, alternativ.

Laseren tegner mønsteret ved at kredse linjerne igen og igen med virkelig høj hastighed. Nogle gange er der flere dele af mønsteret, der ikke er forbundet med hinanden. I dette eksempel er hvert bogstav adskilt, men når laseren bevæger sig fra et bogstav til et andet, skaber det en uønsket linje. Dette løses ved en teknologi kaldet blanking. Hele tanken bag er, at laseren tændes, når den bevæger sig fra et til et andet mønster. Dette gøres af en højhastighedsstyrende enhed, som skal synkroniseres med scanningssystemet.

Trin 3: Indhentning af komponenter

Indhentning af komponenter
Indhentning af komponenter
Indhentning af komponenter
Indhentning af komponenter

På listen herunder kan du finde de komponenter, jeg brugte, og de links, hvor jeg købte dem.

  • 1x Arduino Uno
  • 1x Adafruit Motor Shield V2
  • 1x lasermodul
  • 2x 35 mm 0,9 ° steppermotorer - 400 trin/omdrejninger - 5V - eBay
  • 3x LED - AliExpress
  • 1x HC -06 Bluetooth -seriemodul - AliExpress
  • 1x fotodiode - AliExpress
  • 1x NPN transistor BC547B - AliExpress
  • 2x 2K Trimmer - AliExpress
  • 1x DC -stikpanelmontering - eBay
  • 1x vippekontakt - AliExpress

Og så noget materiale og værktøjer, du kan finde derhjemme. Forhåbentlig;)

  • Spejl (det bedste er et metallisk spejl som HDD -fad)
  • Aluminiumsplade
  • Snips
  • Hot Lim (eller Pattex Repair Express)
  • Ledninger
  • Tang
  • Bor (eller saks i mit tilfælde: D)
  • Kasse (f.eks. Samlingsboks)

Trin 4: Montering af trin

Montering Steppers
Montering Steppers
Montering Steppers
Montering Steppers
Montering Stepper
Montering Stepper

Aluminiumsplade skulle skæres og bøjes til den korrekte form. Derefter blev der boret huller og fastgjort steppere.

Trin 5: Laser Blanking + Mirror Calibration

Laser Blanking + spejlkalibrering
Laser Blanking + spejlkalibrering
Laser Blanking + spejlkalibrering
Laser Blanking + spejlkalibrering
Laser Blanking + spejlkalibrering
Laser Blanking + spejlkalibrering
Laser Blanking + spejlkalibrering
Laser Blanking + spejlkalibrering

Motor Shield har et lille prototypeareal, der blev brugt til to små kredsløb.

Laser Blanking

Vi vil styre vores laser med en Arduino. Men vi er nødt til at begrænse strømmen, der strømmer ind i laseren, og også køre den direkte fra en digital udgangsstift er ikke en god idé. Mit lasermodul havde allerede en nuværende beskyttelse. Således har jeg bygget et simpelt kredsløb, hvor transistoren tænder og slukker laseren. Grundstrøm kan reguleres af trimmer og styrer laserens lysstyrke.

Spejlkalibrering

Fotodiode blev placeret i hullet i midteraksen lige over X-aksen stepper. Pull-down modstandskredsløb var nødvendigt for at opnå nøjagtige målinger. Ved kalibrering læser vi værdier fra fotodioden, og når værdien overstiger en bestemt værdi (laser skinner direkte ind i den), stopper steppere og vender tilbage til udgangspositionen.

pseudokode til kalibrering

// 1. trin = 0,9 ° / 400 trin = 360 ° = fuld rotation laserOn (); for (int a = 0; a <= 400; a ++) {for (int b = 0; b = photodiodeThreshold) {laserOff (); vende hjem(); } trin Y (1, 1); } trinX (1, 1); } laserOff (); uden held ();

Trin 6: Endelig samling

Endelig forsamling
Endelig forsamling
Endelig forsamling
Endelig forsamling

Hele kredsløbet blev sat i plastforbindelsesboksen og spændt med skruer. Hele projektoren er virkelig bærbar, bare tilslut strømforsyningen, skift kontakten, og vi har lasershow.

Trin 7: Laser Control App

Laser Control App
Laser Control App

Den styrende app blev lavet i C# og giver mulighed for at skifte mellem mønstre, justere hastigheden og se aktuelle handlinger. Det er gratis at downloade sammen med Arduino -koden (se Intro).

Trin 8: Video

Anbefalede: