Kazalo:

Arduino nadzorovana laserska igračka za lov na pse: 6 korakov
Arduino nadzorovana laserska igračka za lov na pse: 6 korakov

Video: Arduino nadzorovana laserska igračka za lov na pse: 6 korakov

Video: Arduino nadzorovana laserska igračka za lov na pse: 6 korakov
Video: Laserska harfa za biofeedback 2024, November
Anonim
Image
Image
Arduino nadzorovana laserska igračka za lov na pse
Arduino nadzorovana laserska igračka za lov na pse

Pred približno dvema letoma sem zgradil to igračo za svojega psa, kjer z dvema servomotorjema krmilita laser, ki mu daje naključno gibanje, kjer laserska pika pobegne in ga lahko lovi. Laser je deloval odlično, vendar se je med mojo nedavno potezo poškodoval, zato ga bomo v tem navodilu popravili in razložil bom načela delovanja.

1. korak: Materiali

Materiali
Materiali
Materiali
Materiali
Materiali
Materiali

Projekt je sestavljen iz 4 delov: plošča Arduino, 2 mikro servomotorja in laserski modul. Vsi so nameščeni v plastični posodi iz kisle smetane, kjer je plošča Arduino zlepljena na dno, medtem ko so servomotorji in laser na vrhu.

Spodaj je seznam povezav za nakup, kjer lahko dobite tisto, kar potrebujete:

  • Arduino plošča:

    www.banggood.com/custlink/vKGvhaBTl3

  • 9g mini servomotorjev:

    www.banggood.com/custlink/v33GdlgfaE

  • Laserski diodni modul:

    s.click.aliexpress.com/e/crrJMQgs

2. korak: Gradnja

Gradnja
Gradnja
Gradnja
Gradnja
Gradnja
Gradnja

Pred tem sem servomotorje z lepljivim vročim lepilom prilepil na pokrov, vendar ni zdržal. Če želite to odpraviti, bom uporabil nekaj dvostranskega penastega traku, saj se je tam, kjer sem ga uporabljal, izkazal za zelo trpežnega. Poravnava na pokrovu ni tako kritična, saj jo je vedno mogoče prilagoditi z vrtenjem.

Drugi servo je neposredno pritrjen na prvega, tako da lahko skupaj premikajo laser v dveh smereh. Prvi ga premika levo in desno, drugi pa gor in dol. Laserski modul je pritrjen na roko drugega servomotorja z vročim lepilom, ki se zdi, da še drži.

3. korak: Ožičenje

Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje

Električna napeljava projekta je razmeroma enostavna. Servo motorji imajo tri žice: napajalno, ozemljitveno in signalno. Napajalni kabel je običajno rdeč in ga je treba priključiti na 5V pin na plošči Arduino. Ozemljitvena žica je običajno črna ali rjava in jo je treba priključiti na ozemljitveni zatič na plošči Arduino. Signalni pin je običajno rumen, oranžen ali bel in ga je treba priključiti na digitalni zatič na plošči Arduino. V našem primeru uporabljamo digitalne zatiče 9 in 11. Upoštevajte, da servomotorji porabijo veliko energije, zato jih morate, če želite voziti več kot enega ali dva, verjetno napajati iz ločenega napajalnika in ne iz vtiča +5V na Arduino.

Laserski modul ima tri zatiče, vendar se uporabljata le dva. Tista na levi strani je pozitivna povezava in je običajno označena z velikimi črkami S, negativna povezava pa na desni in označena z minusom. Povezavo do celotne sheme lahko dobite v opisu videoposnetka.

Celotna shema je na voljo na EasyEdi:

easyeda.com/bkolicoski/Arduino-Laser-Toy

4. korak: Načela delovanja

Načela delovanja
Načela delovanja
Načela delovanja
Načela delovanja

Zdaj, ko je popravilo končano, poglejmo kodo in delovanje te naprave. Tipičen 9g mikro servo se premika za 180 stopinj in ga nadzoruje signal PWM. Ta signal se ustvari iz Arduina s pomočjo knjižnice Servo. Knjižnica ponuja priročno metodo, imenovano "write", ki na servo zapisuje vrednost in ustrezno nadzoruje gred. Na standardnem servomotorju bo to nastavil kot gredi (v stopinjah) in gred premaknil v to smer.

V našem primeru želimo omejiti to gibanje na največ 50 do 70 stopinj v vsako smer, tako da območje, kjer pes teče, ni preveliko, da se ne bi prehitro utrudil. Poleg tega sem te omejitve uporabil za nastavitev obsega laserja, tako da ne zapušča območja, kjer se mora moj pes premikati. Nastavljeni so na začetku skice skupaj z definicijama za dva servomotorja in spremenljivkami, ki jih bomo uporabili za njihov položaj.

5. korak: Arduino koda

Koda Arduino
Koda Arduino
Koda Arduino
Koda Arduino

V nastavitveni funkciji najprej inicializiramo servomotorje in jih pritrdimo na pravilne zatiče na Arduinu. To bo knjižnici povedalo, da odda signal PWM na ta pin. Nato zapišemo začetni položaj obema servomotorjema in da bomo lahko pravilno namestili igračo, sem dodal nekaj kode, ki bo trikrat premaknila servomotorje v krožnem vzorcu na robove meje, ki je nastavljena. Tako lahko vidite, kje se pika premika, in temu ustrezno prilagodite postavitev igrače.

V funkciji zanke najprej generiramo dve številki, ki predstavljata naslednja kota dveh servomotorjev, in podamo omejitve, ki smo jih prej nastavili. Naključna funkcija v Arduinu lahko sprejme najmanjšo in največjo vrednost, ki jo mora ustvariti. Te vrednosti se nato pošljejo servomotorjem, enega za drugim, vmes z zamikom pol sekunde.

Celotno kodo najdete na moji strani GitHub:

github.com/bkolicoski/LaserToy

6. korak: Uživajte

Uživajte!
Uživajte!
Uživajte!
Uživajte!

Upam, da je bil ta Instructable poučen in zanimiv, zato predlagam, da me spremljate in se ne pozabite naročiti na moj YouTube kanal.

Priporočena: