Sisällysluettelo:
- Vaihe 1: Materiaalit
- Vaihe 2: OpenCV: n ja C ++: n asentaminen ja määrittäminen
- Vaihe 3: Arduinon asentaminen
- Vaihe 4: C ++ -koodi
- Vaihe 5: Arduino -koodi
- Vaihe 6: 3D -tulostus ja tulostuksen hienosäätö
- Vaihe 7: Laatikon rakentaminen
- Vaihe 8: Viimeistely
- Vaihe 9: Käynnistä ohjelma
Video: Kerjäävä robotti kasvojen seurannalla ja ohjauksella Xbox -ohjaimen avulla - Arduino: 9 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:03
Aiomme tehdä kerjäävän robotin. Tämä robotti yrittää ärsyttää tai saada huomiota ohikulkijoihin. Se tunnistaa heidän kasvonsa ja yrittää ampua heitä laserilla. Jos annat robotille kolikon, hän laulaa kappaleen ja tanssii. Robotti tarvitsee arduinon, kameran live -syötteen ja tietokoneen openCV: n käyttämiseksi. Robotti voidaan myös ohjata xBox -ohjaimella, jos se on kytketty tietokoneeseen.
Vaihe 1: Materiaalit
Laitteisto Elektroninen
- Arduino NANO tai UNO
- USB 2.0 -kamera
- Hyppyjohdot (uros ja naaras)
- 2 x servo - geneerinen (pienikokoinen)
- 2 x LED - RGB -KATODI 5 mm
- 2 x 5 mW laserit
- 1 x punainen LED 5 mm
- 1 x leipälauta
- 4 x 220Ω vastus
- 1 x 1 KΩ vastus
- 1 x protoboard
- 1 x luotainanturi 4 nastaa
- Xbox -ohjain
Analoginen laitteisto
- Puulaatikko (15 x 15 x 7 cm)
- Liima
- Sähköteippi
Ohjelmisto
- Arduino IDE
- Visuaalinen studio 2017
- 3Ds Max (tai mikä tahansa muu 3D -mallinnusohjelmisto)
- Aihio 2.14.0 tai uudempi
- OpenCV 3.4.0 tai uudempi
Työkalut
- Juotoslaitteet
- Näki ja poraa
- Lankaleikkuri
Vaihe 2: OpenCV: n ja C ++: n asentaminen ja määrittäminen
Vaihe 2.1: Ohjelmiston hankkiminen
Visual Studio 2017: Lataa Visual Studio Comunity 2017openCV 3.4.0 Win Pack: Siirry viralliselle lataussivulle
Vaihe 2.2: OpenCV2.2.1: Asenna zip -tiedosto Windows (: C) -asemaan 2.2.2.2: Siirry järjestelmän lisäasetuksiin. Tämä löytyy win10 -hakutoiminnostamme.2.2.3: Meidän on määritettävä uudet ympäristömuuttujat. Etsi "Path" -ympäristö ja paina edit.2.2.4: Nyt meidän on lisättävä "bin -kartan" sijainti uuteen muuttujaan Path -ympäristössä. Jos olet asentanut openCV: n C -asemaan, polku voi mennä näin: C: / opencv / build / x64 / vc14 / bin Liitä polku ja paina "OK" kaikissa ikkunoissa, jotka olet mahdollisesti avannut tämän prosessin aikana.
Vaihe 2.3: Visual Studio C ++: n määrittäminen 2.3.1: Luo uusi visual C ++ -projekti. Tee siitä tyhjä win32-konsolisovellusprojekti 2.3.2: Lähdetiedostot-välilehdellä napsauta hiiren kakkospainikkeella ja lisää uusi C ++ -tiedosto (.cpp) ja anna sille nimi "main.cpp".2.3.3: Napsauta hiiren kakkospainikkeella projektia- nimi Ratkaisut -selaimessa ja valitse Ominaisuudet 2.3.4: Meidän on lisättävä lisää Sisällytä hakemistoja. Tämä löytyy yleensä C/C ++ -välilehdestä. Kopioi seuraava polku: C: / opencv / build / include ja liitä se "AID": n taakse ja napsauta Käytä. 2.3.5: Samassa ikkunassa valitse "Linker" -välilehti. Yleensä meidän on tehtävä muita ylimääräisiä liberaaleja hakemistoja. Liitä seuraava polku "AID" -taulukon taakse C: / opencv / build / x64 / vc14 / lib ja paina Käytä uudelleen.2.3.6: Valitse saman Linker -välilehden "Input" -välilehti. Ja paina "Lisäriippuvuudet> muokkaa" ja liitä seuraava tiedosto opencv_world320d.lib ja xinput.lib (ohjaimelle) ja paina Käytä uudelleen. Sulje ikkuna ja nyt C ++ -tiedostosi on valmis käytettäväksi.
Vaihe 3: Arduinon asentaminen
Servojen kohtaaminen: Servot pystyvät pyörimään ~ 160 ° Niillä on oltava 4, 8 ja 6, 0 voltin välinen toiminta normaalisti. Servossa on 3 nastaa: maadoitus, 4, 8-6, 0 voltin nasta ja data tappi. Projektiamme varten asetamme DigitalPin 9: n ja 10: n servojen datanastat.
RGB -ledien kohtaaminen: RGB -ledeissä on 4 nastaa: punainen, vihreä, sininen ja maadoituspiikki. Jotta voimme säästää tilaa arduinossa, voimme yhdistää 2 RGB -lediä yhteen. Joten käytämme vain 3 nastaa. Voimme liittää ja juottaa RGB -ledit protoboardiin, kuten kuvassa.
Piezo -summerin tapaaminen: Pieni robotti aikoo tehdä melua. Tätä varten meidän on annettava hänelle ääni! Voimme päättää tehdä hänestä todella äänekkään. Tai voimme laittaa 220Ω: n vastuksen pietsosummerin eteen, jotta hänestä tulee hieman vähemmän kiusallinen. Jätämme Piezo -summerin leipäpöydälle. Joten juottamista ei tarvita, liitämme datatappi (+) DigitalPin 2 -laitteeseen ja maadoitusnasta maadoituslevyyn.
Tapaaminen luotaimen kanssa: Jotta robotti ei yrittäisi kohdistaa henkilöä, joka on 10 metrin päässä. Voimme antaa robotille etäisyysetäisyyden siitä, mistä se pystyy kohdistamaan ihmisiä. VCC => 5 volttrig => DigitalPin 6Echo => DigitalPin 5GND => maa
Kolikonilmaisimen tapaaminen: Aiomme tehdä kolikonilmaisimen. Kolikonilmaisin toimii havaitsemalla, onko piiri suljettu tai rikki. Se toimii melkein kuin kytkin. Mutta meidän on oltava varovaisia. Jos teemme tämän väärin, se maksaa meille arduino. Ensimmäinen: Liitä AnalogPin A0 5 voltin kaapeliin. Varmista kuitenkin, että asetat sen väliin 1 KΩ: n vastuksen. Voimme heti juottaa johdot ja vastuksen samaan protoboardiin kuin RGB -ledit. Nyt, jos kosketamme kahta johdinta yhteen, arduino havaitsee suljetun piirin. Tämä tarkoittaa, että on olemassa kolikko! Tuomion laserien kohtaaminen. Tilan säästämiseksi juotin kaksi laseria yhteen, ja ne sopivat täydellisesti kameran runkoon. Kytke ne DigitalPin 11 -laitteeseen ja maahan.
Valinnainen temppu. Voimme laittaa punaisen LED -valon kolikon aukon alle. Tämä on hauska pikku temppu, kun on pimeää. Liitä johto DigitalPin 8 -laitteeseen ja aseta 220Ω: n vastus LEDin ja johdon väliin estääksesi sen räjähtämisen. Kytke LED -valon lyhyt nasta maahan.
Vaihe 4: C ++ -koodi
Vaihe 4.1: Main.cpp -koodin määrittäminen 4.1.1: Lataa "main.cpp" ja kopioi koodi omaan main.cpp.4.1.2: Muuta rivillä 14 "com" komennoksi, jota arduino käyttää. "\. / COM (muuta tämä)" 4.1.3: Riveillä 21 ja 22 aseta oikea polku tiedostoille "haarcascade_frontalface_alt.xml" ja "haarcascade_eye_tree_eyeglasses.xml" Jos C -asemaan on asennettu openCV, nämä tiedostot löytyvät täältä: "C: / opencv / build / etc / haarcascades \" Pidä kaksoisviilto tai lisää sellainen, jos vain yksi on.
Vaihe 4.2: Lisää tserial.h ja Tserial.cpp Nämä kaksi tiedostoa huolehtivat arduinon ja tietokoneen välisestä tiedonsiirrosta. hakemistoon. Ratkaisutyökalussa hiiren kakkospainikkeella projektia ja valitse lisää> olemassa oleva kohde. Valitse ponnahdusikkunasta kaksi lisättävää tiedostoa.
Vaihe 4.2: Lisää CXBOXController.h ja CXBOXController.h Nämä tiedostot ottavat projektin ohjaimen osan 4.2.1: Solution Explorerissa napsauta projektia hiiren kakkospainikkeella ja valitse lisää> olemassa oleva kohde. Valitse ponnahdusikkunasta kaksi lisättävää tiedostoa. C ++ - tiedostot asetetaan.
Vaihe 5: Arduino -koodi
Vaihe 5.1: NewPing -kirjasto 5.1.1: Lataa ArduinoCode.ino ja avaa se arduino IDE.5.1.2: Siirry kohtaan "Luonnos> Sisällytä kirjasto> Hallitse kirjastoja". 5.1.1: Hae suodatinruudusta kohtaan "NewPing" ja asenna tämä kirjasto.
Vaihe 5.2: Pitches -kirjasto 5.2.1: Lataa pitches.txt -tiedosto ja kopioi pitches.txt -tiedoston sisältö 5.2.2: Avaa Arduino IDE: ssä CTRL+Vaihto+N avataksesi uuden välilehden. 5.2.3: Liitä koodi pitches.txt uuteen välilehteen ja tallenna se nimellä "pitches.h". Arduino -koodi on määritetty
Vaihe 6: 3D -tulostus ja tulostuksen hienosäätö
Vaihe 6.1: Tulosta 3D -tiedosto Avaa printfile.form ja tarkista, onko kaikki kunnossa. Jos kaikki näyttää olevan kunnossa, lähetä tulostustyö tulostimelle, jos jotain näyttää siltä tai haluat vaihtaa mallia. Olen sisällyttänyt 3Ds Max -tiedostot ja OBJ -tiedostot muokattavaksi.
Vaihe 6.2: Mallin tarkentaminen 6.2.1: Kun tulostus on valmis, liota kaksi mallia noin 70-prosenttisessa alkoholissa poistaaksesi tulostusjäljen. 6.2.2: Aseta tulostamisen jälkeen malli auringolle muutaman tunnin ajan, jotta koveta malli. Tai voit käyttää UV-lamppua mallin kovettamiseen. Tämä on tehtävä, koska malli on tahmea.
6.2.3: Irrota tukikehys. Tämä voidaan tehdä lankaleikkurilla. Tai mikä tahansa muu työkalu, joka voi leikata muovia. Vaikka malli olisi ollut paljon UV-valossa, osat, jotka voivat olla pehmeitä, ovat osia, jotka ovat lähellä tukikehyksiä. Aseta malli kovempaan UV-valon auringonpaisteeseen. Voit yrittää sovittaa servot runkoon. Jos ne eivät sovi, voit hioa materiaalin Dremelillä. tee se sopivaksi.
Vaihe 7: Laatikon rakentaminen
Vaihe 7.1: Reikien tekeminen Olen sisällyttänyt suunnitelman kyseisestä laatikosta. 7.1.1: Merkitse kaikki reiät oikeisiin paikkoihin 7.1.2: Poraa kaikki reiät. 7.1.3: Nelikulmaiset reiät voidaan myös porata. Jotta ne olisivat neliömäisiä, voit asentaa Dremeliin pienen viilan ja viilata terävät kulmat. 7.1.1: Yritä sovittaa kaikki osat. 7.1.5: Varo puunhalkeamia, jos ne sopivat. Käytä hiekkapaperia päästäksesi eroon niistä.
Vaihe 7.2: Maalaus 7.2.1: Aloita kannen hiomalla. Tarvitsemme maalin tarttumaan 7.2.2: Ota kangas ja laita siihen vähän terpenttiiniä laatikon puhdistamiseen.
Vaihe 8: Viimeistely
Nyt meidän on asetettava kaikki paikoilleen ja annettava sen tehdä se. Vaihe 8.1: Kolikkotunnistin 8.1.1: Liimaa metallirahoja kolikonilmaisimelle 8.1.1: Juotos jokainen johto liittimestä kiinnikkeeseen..3: Testaa yhteys kolikolla. Jos suljettua piiriä ei ole, juota johdot enemmän reunaan Vaihe 8.2: Protoboard- ja RGB -ledit 8.2.1: Aseta protoboard oikeaan yläkulmaan ja teippaa se alas! 8.2.2: Liitä RGB -ledit 8.2.3: Kytke kaikki johdot protoboardista arduinoon Vaihe 8.3: Kaikuluotain 8.3.1: Aseta anturi siihen tekemiimme reikiin. 8.3.28.3.2: Katkaise uros- ja naarasjohdot puoliksi ja juota naaras- ja urosjohdot yhteen yhdeksi kaapeliksi, jonka avulla voimme liittää anturin arduinoon.
Vaihe 8.4: Laserit ja kamera 8.4.1: Liimaa pieni kehys kameraan. Varmista, että se on pystysuorassa 8.4.2: Laita laserit myös runkoon. Liimaa ne alas, jotta vihollinen ei varasta niitä!
Vaihe 8.5: Servot ja 3D -tulostus 8.5.1: Liimaa servo kannen reikään 8.5.2: Lataa arduino -tiedosto arduinoon (tämä saa servot seisomaan oikeassa asennossa) 8.5.3: Servon mukana tuli pieni pyöreä tasangolla. Aseta tämä kannen servolle 8.5.4: Aseta suuri 3D -tulostus servolle ja tasangolle ja ruuvaa ne tiukasti yhteen ruuvilla. 8.5.6: Aseta kamera paikalleen ja kaikki on käyttövalmis!
Vaihe 9: Käynnistä ohjelma
Käynnistä robotti avaamalla C ++ -tiedosto Visual studiossa. Varmista, että olet "debug -tilassa" Lataa arduino -tiedosto arduinoon. Kun se on ladattu, paina play visual studiossa. Ja robotti ampuu ja kerää kaikki kolikot maailmassa !!!
Suositeltava:
Joystick -ohjattava pyörätuoli esteiden seurannalla: 3 vaihetta (kuvilla)
Joystick -ohjattava pyörätuoli, jossa on esteiden seuranta: Liikuntarajoitteisten ihmisten turvallisen ajamisen helpottamiseksi ultraäänianturia käytetään matkalla olevien esteiden seurantaan. Joystickin liikkeen perusteella moottorit ajavat pyörätuolia mihin tahansa neljään suuntaan ja nopeuteen jokaisen
Naisten turvalaite GPS -seurannalla ja hälytyksillä Arduinon avulla: 6 vaihetta
Naisten turvalaite GPS -seurannalla ja hälytyksillä Arduinon avulla: Kaiken viime aikoina käytettävissä olevan tekniikan ansiosta ei ole vaikeaa rakentaa naisille tarkoitettua turvalaitetta, joka ei ainoastaan luo hätähälytystä vaan lähettää viestin ystävillesi, perheellesi tai asianomainen henkilö. Täällä rakennetaan bändi
Kasvojen muutosprojisointimaski - ole mitä tahansa: 14 vaihetta (kuvilla)
Kasvojen vaihtava projektionaamio - ole mitä tahansa: Mitä teet, kun et voi päättää, mitä haluat olla Halloweenina? Ole kaikki. Projisointimaski koostuu valkoisesta 3D -tulostetusta naamiosta, vadelmapiistä, pienestä projektorista ja akusta. Se pystyy heijastamaan mitä tahansa ja kaikkea
Koti -automaatio: Automaattinen kytkinkortti himmentimen ohjauksella Bluetoothin kautta Tiva TM4C123G: n avulla: 7 vaihetta
Koti -automatiikka: Automaattinen kytkinkortti himmentimellä Bluetoothin kautta Tiva TM4C123G: n avulla: Nykyään meillä on televisiovastaanottimien ja muiden elektronisten järjestelmien kauko -ohjaimet, jotka ovat tehneet elämästämme todella helppoa. Oletko koskaan miettinyt kodin automaatiota, joka antaisi mahdollisuuden ohjata putkivaloja, tuulettimia ja muita sähkölaitteita
Rakenna hyvin pieni robotti: Tee maailman pienimmästä pyörillä varustettu robotti tarttumalla: 9 vaihetta (kuvilla)
Rakenna hyvin pieni robotti: Tee maailman pienimmästä pyörillä varustettu robotti tarttumalla: Rakenna 1/20 kuutiometrin robotti, jossa on tarttuja, joka voi poimia ja siirtää pieniä esineitä. Sitä ohjaa Picaxe -mikrokontrolleri. Uskon, että tällä hetkellä tämä voi olla maailman pienin pyörillä varustettu robotti, jossa on tarttuja. Se epäilemättä ch