Turinys:

„Arduino“lazerinis projektorius + valdymo programa: 8 žingsniai
„Arduino“lazerinis projektorius + valdymo programa: 8 žingsniai

Video: „Arduino“lazerinis projektorius + valdymo programa: 8 žingsniai

Video: „Arduino“lazerinis projektorius + valdymo programa: 8 žingsniai
Video: Leap Motion SDK 2024, Lapkritis
Anonim
Image
Image
„Arduino“lazerinis projektorius + valdymo programa
„Arduino“lazerinis projektorius + valdymo programa
„Arduino“lazerinis projektorius + valdymo programa
„Arduino“lazerinis projektorius + valdymo programa
  • XY - 2 matmenų lazerinis nuskaitymas
  • 2x 35 mm 0,9 ° žingsniniai varikliai - 400 žingsnių/aps
  • Automatinis veidrodžio kalibravimas
  • Nuotolinis serijinis valdymas (per „Bluetooth“)
  • Automatinis režimas
  • Nuotolinio valdymo programa su GUI
  • Atviro kodo

Parsisiųsti:

github.com/stanleyondrus

stanleyprojects.com

1 žingsnis:

2 žingsnis: teorija

Teorija
Teorija
Teorija
Teorija

Lazerinius projektorius galima suskirstyti į dvi pagrindines kategorijas. Arba jie naudoja difrakcinį stiklą/foliją, kad sukurtų modelį, arba turi sistemą, kuri lazerio spindulį perkelia XY ašies kryptimis. Antrasis variantas paprastai atrodo daug geriau, nes galima užprogramuoti projektuojamą modelį. Pirmuoju atveju lazerio spindulys yra išsklaidomas ir projektuoja statinį vaizdą, antruoju atveju lazeris vis dar susideda tik iš vieno labai greitai judančio spindulio. Jei šis judėjimas yra pakankamai greitas, mes jį suvokiame kaip modelį dėl regėjimo atkaklumo (POV). Paprastai tai daroma turint du statmenus veidrodžius, kurių kiekvienas gali judėti lazerio spinduliu vienoje ašyje. Sujungus juos, galima nukreipti lazerio spindulį į tikslią vietą.

Profesionaliems tikslams dažniausiai naudojami galvanometrai. Kai kurie iš šių skaitytuvų gali atlikti 60 kpps (kilogramo tašką per sekundę). Tai reiškia, kad jie gali per vieną sekundę nukreipti lazerio spindulį į 60000 skirtingų vietų. Tai sukuria tikrai sklandžią projekciją be stroboskopinio efekto. Tačiau jie gali būti tikrai brangūs. Aš naudoju žingsninius variklius, kurie yra pigi, ne tokia greita alternatyva.

Lazeris piešia modelį, vis iš naujo skriejantis aplink linijas dideliu greičiu. Kartais yra keletas modelio dalių, kurios nėra sujungtos. Šiame pavyzdyje kiekviena raidė yra atskirta, tačiau kai lazeris juda iš vienos raidės į kitą, ji sukuria nepageidaujamą liniją. Tai išsprendžiama naudojant technologiją, vadinamą blanking. Visa idėja yra ta, kad lazeris išjungiamas, kai pereinama nuo vieno modelio prie kito. Tai atlieka didelės spartos valdymo blokas, kurį reikia sinchronizuoti su nuskaitymo sistema.

3 žingsnis: komponentų gavimas

Komponentų gavimas
Komponentų gavimas
Komponentų gavimas
Komponentų gavimas

Žemiau esančiame sąraše galite rasti mano naudojamus komponentus ir nuorodas, kuriose juos nusipirkau.

  • 1x „Arduino Uno“
  • 1x „Adafruit Motor Shield V2“
  • 1x lazerio modulis
  • 2x 35 mm 0,9 ° žingsniniai varikliai - 400 žingsnių/aps. - 5 V - „eBay“
  • 3x LED - „AliExpress“
  • 1x HC -06 „Bluetooth“serijos modulis - „AliExpress“
  • 1x fotodiodas - „AliExpress“
  • 1x NPN tranzistorius BC547B - „AliExpress“
  • 2x 2K žoliapjovė - „AliExpress“
  • 1x nuolatinės srovės lizdo plokštės laikiklis - „eBay“
  • 1x perjungimo jungiklis - „AliExpress“

Ir tada kai kurios medžiagos ir įrankiai, kuriuos galite rasti namuose. Tikiuosi;)

  • Veidrodis (geriausias yra metalinis veidrodis, pavyzdžiui, HDD plokštelė)
  • Aliuminio lakštas
  • Snips
  • Karštas klijai (arba „Pattex Repair Express“)
  • Laidai
  • Replės
  • Gręžtuvas (arba mano atveju žirklės: D)
  • Dėžutė (pvz., Jungties dėžutė)

4 žingsnis: laiptelių montavimas

Montavimo žingsniai
Montavimo žingsniai
Montavimo žingsniai
Montavimo žingsniai
Montavimo žingsniai
Montavimo žingsniai

Aliuminio lakštą reikia supjaustyti ir sulenkti į tinkamą formą. Tada buvo išgręžtos skylės ir pritvirtinti žingsneliai.

5 veiksmas: balinimas lazeriu + veidrodžio kalibravimas

Balinimo lazeriu + veidrodžio kalibravimas
Balinimo lazeriu + veidrodžio kalibravimas
Balinimo lazeriu + veidrodžio kalibravimas
Balinimo lazeriu + veidrodžio kalibravimas
Balinimo lazeriu + veidrodžio kalibravimas
Balinimo lazeriu + veidrodžio kalibravimas
Balinimo lazeriu + veidrodžio kalibravimas
Balinimo lazeriu + veidrodžio kalibravimas

„Motor Shield“turi nedidelę prototipų sritį, kuri buvo naudojama dviem mažoms grandinėms.

Balinimas lazeriu

Mes norime valdyti savo lazerį naudodami „Arduino“. Tačiau turime apriboti srovę, patenkančią į lazerį, ir neleisti ją valdyti tiesiai iš skaitmeninio išvesties kaiščio. Mano lazerinis modulis jau turėjo srovės apsaugą. Taigi aš sukūriau tik paprastą grandinę, kurioje tranzistorius įjungia ir išjungia lazerį. Bazinė srovė gali būti reguliuojama trimeriu ir valdo lazerio ryškumą.

Veidrodžio kalibravimas

Fotodiodas buvo įdėtas į skylę centrinėje ašyje tiesiai virš X ašies žingsninio žingsnio. Norint gauti tikslius matavimus, buvo reikalinga ištraukiama rezistoriaus grandinė. Kalibruodami skaitome vertes iš fotodiodo, o kai vertė viršija tam tikrą vertę (į ją tiesiogiai šviečia lazeris), žingsneliai sustoja ir grįžta į pradinę padėtį.

pseudo kodas kalibravimui

// 1 žingsnis = 0,9 ° / 400 žingsnių = 360 ° = pilnas sukimasis laserOn (); for (int a = 0; a <= 400; a ++) {for (int b = 0; b = photodiodeThreshold) {laserOff (); Grįžti namo(); } Y žingsnis (1, 1); } žingsnis X (1, 1); } laserOff (); nesėkmingas ();

6 žingsnis: galutinis surinkimas

Galutinis surinkimas
Galutinis surinkimas
Galutinis surinkimas
Galutinis surinkimas

Visa grandinė buvo įdėta į plastikinę jungiamąją dėžę ir priveržta varžtais. Visas projektorius yra tikrai nešiojamas, tiesiog prijunkite maitinimo šaltinį, perjunkite jungiklį ir mes parodysime lazerį.

7 žingsnis: Lazerio valdymo programa

Lazerio valdymo programa
Lazerio valdymo programa

Valdymo programa buvo sukurta C# ir leidžia perjungti modelius, reguliuoti greitį ir pamatyti dabartinius veiksmus. Jį galima nemokamai atsisiųsti kartu su „Arduino“kodu (žr. Įvadą).

8 žingsnis: vaizdo įrašas

Rekomenduojamas: