Satura rādītājs:
- 1. solis: materiāli
- 2. darbība: OpenCV un C ++ instalēšana un konfigurēšana
- 3. darbība: Arduino iestatīšana
- 4. solis: C ++ kods
- 5. solis: Arduino kods
- 6. darbība: 3D drukāšana un drukas uzlabošana
- 7. darbība: kastes izveide
- 8. solis: pabeigšana
- 9. solis: sāciet programmu
Video: Ubagošanas robots ar sejas izsekošanu un kontroli, ko veic Xbox kontrolieris - Arduino: 9 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Mēs izgatavosim ubagošanas robotu. Šis robots mēģinās kairināt vai piesaistīt garāmbraucošos cilvēkus. Tas atklās viņu sejas un mēģinās šaut uz tām lāzerus. Ja iedosit robotam monētu, viņš dziedās dziesmu un dejos. Lai palaistu openCV, robotam būs nepieciešams arduino, tiešraides kamera un dators. Robotu varēs vadīt arī ar xBox kontrolieri, ja tas būs pievienots datoram.
1. solis: materiāli
Aparatūra Elektroniska
- Arduino NANO vai UNO
- USB 2.0 kamera
- Jumper kabeļi (vīrieši un sievietes)
- 2 x servo - vispārējs (apakšmikro izmērs)
- 2 x LED - RGB KATODS 5mm
- 2 x 5 mW lāzeri
- 1 x sarkana gaismas diode 5 mm
- 1 x maizes dēlis
- 4 x 220Ω rezistors
- 1 x 1KΩ rezistors
- 1 x protobords
- 1 x Sonāra sensors 4 tapas
- Xbox kontrolieris
Aparatūras analogs
- Koka kaste (15 x 15 x 7 cm)
- Līme
- Elektriskā lente
Programmatūra
- Arduino IDE
- Vizuālā studija 2017
- 3Ds Max (vai jebkura cita 3D modelēšanas programmatūra)
- Sagataves 2.14.0 vai jaunāka versija
- OpenCV 3.4.0 vai jaunāka versija
Rīki
- Lodēšanas iekārtas
- Zāģēt un urbt
- Stiepļu griezējs
2. darbība: OpenCV un C ++ instalēšana un konfigurēšana
2.1. Darbība. Programmatūras iegūšana
Visual studio 2017: Lejupielādēt Visual studio Comunity 2017openCV 3.4.0 Win win pack: Dodieties uz oficiālo lejupielādes lapu
2.2. Darbība: OpenCV2.2.1 instalēšana: izvelciet zip failu savā Windows (: C) diskdzinī. 2.2.2: dodieties uz uzlabotajiem sistēmas iestatījumiem. To var atrast jūsu win10 meklēšanas funkcijā. 2.2.3: Mums ir jāiestata jauni vides mainīgie. Atrodiet vides "Path" vidi un nospiediet rediģēt.2.2.4: Tagad mums ir jāpievieno "atkritumu tvertnes" atrašanās vieta jaunam mainīgajam Path enviromental. Ja C diskā instalējāt openCV, ceļš var būt šāds: C: / opencv / build / x64 / vc14 / bin Ielīmējiet ceļu un nospiediet "OK" visos logos, kurus, iespējams, esat atvēris šī procesa laikā.
2.3. Darbība: vizuālās studijas C ++ konfigurēšana 2.3.1. Izveidojiet jaunu vizuālo C ++ projektu. Padariet to par tukšu win32 konsoles lietojumprogrammas projektu. 2.3.2: cilnē Avota faili ar peles labo pogu noklikšķiniet un pievienojiet jaunu C ++ failu (.cpp) un nosauciet to par "main.cpp".2.3.3: ar peles labo pogu noklikšķiniet uz projekta nosaukumu risinājumu pārlūkā un atlasiet Rekvizīti.2.3.4: mums jāpievieno papildu iekļaušanas direktoriji. To var atrast cilnē C/C ++ kopumā. Kopējiet šādu ceļu: C: / opencv / build / include un ielīmējiet to aiz "AID" un noklikšķiniet uz Apply.2.3.5: Tajā pašā logā mums ir atlasiet cilni "Linker". vispārīgi mums ir jāizveido citi papildu bibliotēku katalogi. Ielīmējiet šo ceļu aiz "AID" C: / opencv / build / x64 / vc14 / lib un vēlreiz nospiediet Apply.2.3.6: Tajā pašā cilnē Linker izvēlieties cilni "Ievads". Un nospiediet "Papildu atkarības> rediģēt" un ielīmējiet šādu failu opencv_world320d.lib un xinput.lib (kontrolierim) un vēlreiz nospiediet lietot. Aizveriet logu. Tagad jūsu C ++ fails ir gatavs darbam.
3. darbība: Arduino iestatīšana
Servo satikšanās: Servos var pagriezties ~ 160 °. Lai normāli darbotos, tiem jābūt starp 4, 8 un 6, 0 voltiem. Servo ir 3 tapas: zeme, 4, 8 - 6, 0 voltu tapa un dati pin. Mūsu projektam DigitalPin 9 un 10 iestatīsim servo datu tapas.
RGB gaismas diodes: RGB gaismas diodēm ir 4 tapas. Sarkana, zaļa, zila un piesprausta tapa. Lai ietaupītu vietu arduino, mēs varam savienot 2 RGB gaismas diodes kopā. Tātad, mēs izmantosim tikai 3 tapas. Mēs varam savienot un lodēt RGB gaismas diodes, piemēram, attēlā. Sarkanā tapa => DigitalPin 3 (PWM) Zaļā tapa => DigitalPin 4 Zila tapa => DigitalPin 7
Tikšanās ar pjezo skaņas signālu: mūsu mazais robots radīs troksni. Lai to izdarītu, mums ir jādod viņam balss! Mēs varam izvēlēties viņu padarīt skaļu. Vai arī mēs varam ievietot 220Ω rezistoru pirms pjezo skaņas signāla, lai padarītu viņu mazliet mazāk nepatīkamu. Mēs atstājam Piezo skaņas signālu uz maizes dēļa. Tāpēc nav nepieciešama lodēšana. Mēs savienojam datu tapu (+) ar DigitalPin 2, bet zemējuma tapu - uz maizes.
Tikšanās ar hidrolokatoru: lai robots nemēģinātu mērķēt uz cilvēku, kas atrodas 10 metru attālumā. Mēs varam piešķirt robotam attāluma diapazonu no vietas, kur tas varēs mērķēt uz cilvēkiem. Mēs to darām ar hidrolokatoru. VCC => 5 volti Trig => DigitalPin 6Echo => DigitalPin 5GND => zeme
Tikšanās ar monētu detektoru: Mēs izgatavosim monētu detektoru. Monētu detektors darbosies, atklājot, vai ķēde ir slēgta vai salauzta. Tas gandrīz darbosies kā slēdzis. Bet mums jābūt uzmanīgiem. Ja mēs to darām nepareizi, tas mums izmaksās arduino. Pirmkārt: pievienojiet AnalogPin A0 5 voltu kabeli. Bet starp to noteikti ievietojiet 1KΩ rezistoru. Otrkārt: pievienojiet vadu zemei. Mēs varam nekavējoties pielodēt vadus un rezistoru pie tā paša protoboļa kā RGB gaismas diodes. Tagad, ja pieskarsimies diviem vadiem, arduino atklās slēgtu ķēdi. Tas nozīmē, ka ir monēta! Tikšanās ar lāzeriem. Robotam ir nepieciešami ieroči, lai šautu! Lai ietaupītu vietu, es lodēju abus lāzerus kopā. Tie lieliski iederēsies kameras rāmī. Pievienojiet tos DigitalPin 11 un zemei. Atlaidiet mazo puisi!
Neobligāts triks. Mēs varam novietot sarkanu gaismas diodi zem monētas ligzdas. Tas būs jautrs triks, kad ir tumšs. Pievienojiet vadu DigitalPin 8 un ievietojiet 220Ω rezistoru starp gaismas diodi un vadu, lai novērstu tā uzspridzināšanu. Pievienojiet gaismas diodes īso tapu zemei.
4. solis: C ++ kods
4.1. Solis: main.cpp koda iestatīšana "\. / COM (mainīt šo)" 4.1.3: 21. un 22. rindā iestatiet pareizo ceļu failiem "haarcascade_frontalface_alt.xml" un "haarcascade_eye_tree_eyeglasses.xml" Ja C diskā ir instalēta openCV, šos failus var atrast šeit: "C: / opencv / build / etc / haarcascades \" Saglabājiet dubultās slīpsvītras vai pievienojiet vienu, kur ir tikai viens.
4.2. Solis: pievienojiet tserial.h un Tserial.cpp Šie 2 faili rūpēsies par saziņu starp arduino un datoru. 4.2.2: Lejupielādējiet tserial.h un Tserial.cpp.4.2.2: ievietojiet šos 2 failus projektā direktoriju. Risinājumu izpētē ar peles labo pogu noklikšķiniet uz projekta un atlasiet pievienot> esošs vienums. Uznirstošajā logā atlasiet divus pievienojamos failus.
4.2. Solis: pievienojiet CXBOXController.h un CXBOXController.h Šie faili uzņemsies projekta kontroliera daļu. 4.2.1: Risinājumu izpētē ar peles labo pogu noklikšķiniet uz projekta un atlasiet Pievienot> esošu vienumu. Uznirstošajā logā atlasiet divus pievienojamos failus. C ++ faili ir iestatīti.
5. solis: Arduino kods
5.1. Solis: NewPing bibliotēka 5.1.1: lejupielādējiet ArduinoCode.ino un atveriet to arduino IDE.5.1.2: dodieties uz "Skice> Iekļaut bibliotēku> Pārvaldīt bibliotēkas". 5.1.1: filtrēšanas lodziņā meklējiet "NewPing" un instalējiet šo bibliotēku.
5.2. Solis: bibliotēkas augstums 5.2.2. Lejupielādējiet failu pitches.txt un nokopējiet pitches.txt saturu. 5.2.2: Arduino IDE nospiediet CTRL+Shift+N, lai atvērtu jaunu cilni. 5.2.3. Ielīmējiet kodu no pitches.txt jaunajā cilnē un saglabājiet to kā "pitches.h". Arduino kods ir iestatīts
6. darbība: 3D drukāšana un drukas uzlabošana
6.1. Darbība. 3D faila drukāšana Atveriet printfile.form un pārbaudiet, vai viss ir kārtībā. Ja viss šķiet kārtībā, nosūtiet drukas darbu uz printeri. Ja kaut kas šķiet vai vēlaties mainīt modeli. Rediģēšanai esmu iekļāvis 3Ds Max failus un OBJ failus.
6.2. Solis: modeļa uzlabošana 6.2.1: Pēc drukāšanas abus modeļus iemērciet aptuveni 70% spirtā, lai noņemtu drukas atdzejojumus. 6.2.2: Pēc drukāšanas novietojiet modeli saulē dažas stundas, lai ļautu UV gaismai rūdīt modeli. Vai arī modeļa sacietēšanai varat izmantot UV lampu. Tas jādara, jo modelis būs lipīgs.
6.2.3. Noņemiet atbalsta ietvaru. To var izdarīt ar stiepļu griezēju. Vai jebkurš cits instruments, ar kuru var sagriezt plastmasu.6.2.4: Dažas 3D drukas daļas joprojām var būt mīkstas. Pat ja modelim ir bijis daudz UV staru. Daļas, kas var būt mīkstas, ir detaļas, kas atrodas tuvu atbalsta rāmjiem. Ievietojiet modeli vairāk UV staru saulē, lai sacietētu.6.2.5: Ar "dremel" palīdzību jūs varat noslīpēt visus mazos rāmja izciļņus. Jūs varat mēģināt uzstādīt servo rāmī. Ja tie neder, varat izmantot Dremel, lai noslīpētu materiālu. padarīt to piemērotu.
7. darbība: kastes izveide
7.1. Solis. Caurumu izgatavošana Es iekļāvu attiecīgās kastes projektu. Plāns nav līdz mērogam, bet visi izmēri ir pareizi. 7.1.1: Vispirms atzīmējiet visus caurumus pareizajās vietās. 7.1.2: urbiet visus caurumus. Lielākus caurumus var izgatavot līdz izmēram, izmantojot Dremel.7.1.3. Kvadrātveida caurumus var arī urbt. Bet, lai padarītu tos kvadrātveida, jūs varat ievietot Dremel ar nelielu failu un izgriezt asus stūrus.7.1.4: Mēģiniet ievietot visas sastāvdaļas. 7.1.5: Uzmanieties no koka šķembām, ja tās ir piemērotas. Lai no tiem atbrīvotos, izmantojiet smilšpapīru.
7.2. Solis: krāsošana 7.2.1. Sāciet ar vāka slīpēšanu. 7.2.2. Paņemiet drānu un uzlieciet uz tās nedaudz terpentīna, lai notīrītu kastīti.
8. solis: pabeigšana
8.1. Monētu detektors.3: pārbaudiet savienojumu ar monētu. Ja nav slēgtas ķēdes, pielodējiet vadus vairāk līdz malai. 8.2. Solis: protoboards un RGB gaismas diodes 8.2.1. Novietojiet protoboardu augšējā labajā stūrī un pielīmējiet to! 8.2.2: pievienojiet RGB gaismas diodes ar vadiem 8.2.3: pievienojiet visus vadus no protoboard ar arduino. 8.3. solis: sonāra sensors 8.3.28.3.2. Pārgrieziet dažus vīriešu un sieviešu vadus uz pusēm un lodējiet sievišķo un vīriešu vadu kopā, lai izveidotu vienu kabeli, ko mēs varam izmantot, lai savienotu sensoru ar arinoino. 8.3.3: Pievienojiet sensoru arduino
8.4. Solis: Lāzeri un kamera 8.4.1. Līmējiet mazo rāmi pie kameras. Pārliecinieties, vai tas ir vertikāli.8.4.2. Ievietojiet lāzerus arī rāmī. Līmējiet tos, lai ienaidnieks tos nezagtu!
8.5. Darbība: Servo un 3D drukāšana mazs apaļš plato. Novietojiet to uz servo vākā. 8.5.4. Uzlieciet lielo 3D izdruku uz servo un plato un cieši pieskrūvējiet tos kopā ar skrūvi. 8.5.6: Novietojiet kameru vietā, un viss ir gatavs lietošanai!
9. solis: sāciet programmu
Lai palaistu robotu, Visual studijā atveriet failu C ++. Pārliecinieties, vai esat atkļūdošanas režīmā. Augšupielādējiet arduino failu arduino. Kad tas ir augšupielādēts, nospiediet atskaņošanu vizuālajā studijā. Un robots apšaudīs un savāks visas pasaules monētas !!!
Ieteicams:
Motora pārvietošana ar acu izsekošanu: 8 soļi
Kustīgais motors ar acu izsekošanu: Pašlaik acu izsekošanas sensori ir biežāk sastopami dažādās jomās, bet komerciāli tie ir vairāk pazīstami ar interaktīvām spēlēm. Šī apmācība neizliekas par sensoru izstrādi, jo tā ir ļoti sarežģīta un arvien biežāk izmanto
Raspberry Pi - autonoms Mars Rover ar OpenCV objektu izsekošanu: 7 soļi (ar attēliem)
Raspberry Pi - autonoms Mars Rover ar OpenCV objektu izsekošanu: darbina Raspberry Pi 3, Open CV objektu atpazīšana, ultraskaņas sensori un pārnesumkārbas līdzstrāvas motori. Šis roveris var izsekot jebkuram objektam, kuram tas ir apmācīts, un pārvietoties pa jebkuru reljefu
SĒKLU SĒJAS ROBOTS: 11 soļi
SĒKLAS SĒDA ROBOTS: Saskaņā ar Apvienoto Nāciju Organizācijas Pārtikas un lauksaimniecības organizācijas datiem pasaules iedzīvotāju skaits līdz 2050. gadam pieaugs līdz gandrīz 10 miljardiem, palielinot pieprasījumu pēc lauksaimniecības. Tas nozīmē steidzamu nepieciešamību automatizēt lauksaimniecības nozari, lai gūtu peļņu no
Līdzsvarojošais robots / 3 riteņu robots / STEM robots: 8 soļi
Līdzsvarojošais robots / trīs riteņu robots / STEM robots: mēs esam izveidojuši kombinētu balansēšanas un trīsriteņu robotu, kas paredzēts lietošanai skolās un pēc skolas izglītības programmās. Robota pamatā ir Arduino Uno, pielāgots vairogs (visas konstrukcijas detaļas ir iekļautas), litija jonu akumulators (viss atbilst
YABC - vēl viens Blynk kontrolieris - IoT mākoņa temperatūras un mitruma kontrolieris, ESP8266: 4 soļi
YABC - Vēl viens Blynk kontrolieris - IoT mākoņa temperatūras un mitruma kontrolieris, ESP8266: Sveiki, Makers, es nesen sāku audzēt sēnes mājās, austeru sēnes, bet man jau ir 3x no šiem kontrolieriem mājās, lai raudzētu temperatūras kontroli savai mājas brūvei, sieva arī tagad dara šo Kombucha lietu un kā siltuma termostatu