INHOUDSOPGAWE:

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

Video: Arduino Laser Projector + Control App: 8 stappe

Video: Arduino Laser Projector + Control App: 8 stappe
Video: Leap Motion SDK 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 -dimensionele laserskandering
  • 2x 35 mm 0,9 ° stepper motors - 400 tree/omwenteling
  • Outomatiese spieëlkalibrasie
  • Seriële afstandbeheer op afstand (via bluetooth)
  • Outomatiese modus
  • Afstandsbedieningsprogram met GUI
  • Oop bron

Aflaai:

github.com/stanleyondrus

stanleyprojects.com

Stap 1:

Stap 2: Teorie

Teorie
Teorie
Teorie
Teorie

Laserprojektors kan in twee hoofkategorieë verdeel word. Of hulle gebruik 'n diffraksieglas/foelie om 'n patroon te projekteer, of hulle het 'n stelsel wat laserstraal in XY -as -rigtings beweeg. Die tweede opsie lyk gewoonlik baie beter omdat dit moontlik is om die patroon wat geprojekteer word, te programmeer. Terwyl die laserstraal in die eerste geval afgebreek word en 'n statiese beeld uitsteek, bestaan die laser in die tweede geval uit slegs een straal wat baie vinnig beweeg. As hierdie beweging vinnig genoeg is, beskou ons dit as 'n patroon vanweë die volharding van die visie (POV). Dit word gewoonlik gedoen deur twee loodregte spieëls te hê wat elkeen die laserstraal in een as kan beweeg. Deur hulle te kombineer, is dit moontlik om die laserstraal op die presiese plek te plaas.

Vir professionele toepassings word galvanometer -skandeerders gewoonlik gebruik. Sommige van hierdie skandeerders kan 60 kpps (kilopunt per sekonde) doen. Dit beteken dat hulle die laserstraal gedurende 1 sekonde op 60000 verskillende plekke kan plaas. Dit skep 'n baie gladde projeksie sonder die stroboskopiese effek. Hulle kan egter baie duur wees. Ek het die stepper motors gebruik, wat die goedkoopste, nie so vinnige, alternatief is nie.

Die laser teken die patroon deur die lyne oor en oor met 'n baie hoë spoed te wentel. Soms is daar verskeie dele van die patroon wat nie aan mekaar gekoppel is nie. In hierdie voorbeeld word elke letter geskei, maar as die laser van een letter na 'n ander beweeg, skep dit 'n ongewenste lyn. Dit word opgelos deur 'n tegnologie genaamd blanking. Die hele idee agter is dat die laser oorgeskakel word wanneer dit van een na 'n ander patroon beweeg. Dit word gedoen deur 'n hoëspoedbeheer-eenheid wat met die skanderingstelsel gesinkroniseer moet word.

Stap 3: Verkryging van komponente

Die verkryging van komponente
Die verkryging van komponente
Die verkryging van komponente
Die verkryging van komponente

In die onderstaande lys vind u die komponente wat ek gebruik het en die skakels waar ek dit gekoop het.

  • 1x Arduino Uno
  • 1x Adafruit Motor Shield V2
  • 1x lasermodule
  • 2x 35mm 0,9 ° stepper motors - 400 tree/omwenteling - 5V - eBay
  • 3x LED - AliExpress
  • 1x HC -06 Bluetooth -seriemodule - AliExpress
  • 1x fotodiode - AliExpress
  • 1x NPN -transistor BC547B - AliExpress
  • 2x 2K Trimmer - AliExpress
  • 1x DC -paneelhouer - eBay
  • 1x skakelaar - AliExpress

En dan 'n paar materiaal en gereedskap wat u tuis kan vind. Hopelik;)

  • Spieël (die beste is 'n metaalspieël soos HDD Platter)
  • Aluminium plaat
  • Snips
  • Hot Glue (of Pattex Repair Express)
  • Drade
  • Tang
  • Boor (of skêr in my geval: D)
  • Doos (bv. Aansluitkas)

Stap 4: Monteer stappers

Montagestappers
Montagestappers
Montagestappers
Montagestappers
Montagestappers
Montagestappers

Aluminiumplaat moes gesny en in die regte vorm gebuig word. Daarna is gate geboor en steppers vasgemaak.

Stap 5: Laserblanking + spieëlkalibrasie

Laserblanking + spieëlkalibrasie
Laserblanking + spieëlkalibrasie
Laserblanking + spieëlkalibrasie
Laserblanking + spieëlkalibrasie
Laserblanking + spieëlkalibrasie
Laserblanking + spieëlkalibrasie
Laserblanking + spieëlkalibrasie
Laserblanking + spieëlkalibrasie

Motor Shield het 'n klein prototipe -area wat vir twee klein stroombane gebruik is.

Laserblanking

Ons wil ons laser met 'n Arduino beheer. Ons moet egter die stroom wat in die laser vloei, beperk en dit ook direk vanaf 'n digitale uitgangspen dryf, is nie 'n goeie idee nie. My lasermodule het reeds 'n huidige beskerming gehad. Ek het dus net 'n eenvoudige stroombaan gebou waar transistor die laser aan en af skakel. Basisstroom kan deur die trimmer gereguleer word en beheer die helderheid van die laser.

Spieëlkalibrasie

Fotodiode is in die gat in die sentrale as reg bokant die X-as-stepper geplaas. Om presiese metings te verkry, was 'n aftrekweerstandskring nodig. As ons kalibreer, lees ons waardes van die fotodiode en as die waarde 'n spesifieke waarde oorskry (laser skyn direk daarin), stop die steppers en keer terug na die tuisposisie.

pseudokode vir kalibrasie

// 1step = 0.9 ° / 400steps = 360 ° = full rotation laserOn (); for (int a = 0; a <= 400; a ++) {for (int b = 0; b = photodiodeThreshold) {laserOff (); returnHome (); } stapY (1, 1); } stapX (1, 1); } laserOff (); onsuksesvol ();

Stap 6: Finale vergadering

Finale Vergadering
Finale Vergadering
Finale Vergadering
Finale Vergadering

Die hele stroombaan is in die plastiek -aansluitkas geplaas en met skroewe vasgedraai. Die hele projektor is regtig draagbaar, steek net die kragtoevoer in, skakel die skakelaar aan en ons het 'n laservertoning.

Stap 7: Laser Control -app

Laserbeheer -app
Laserbeheer -app

Die beheer -app is in C# gemaak en laat toe om tussen patrone te skakel, die spoed aan te pas en huidige aksies te sien. Dit is gratis om saam met die Arduino -kode af te laai (sien Intro).

Stap 8: Video

Aanbeveel: