Përmbajtje:

Roboti lypës me gjurmimin dhe kontrollin e fytyrës nga Xbox Controller - Arduino: 9 hapa (me fotografi)
Roboti lypës me gjurmimin dhe kontrollin e fytyrës nga Xbox Controller - Arduino: 9 hapa (me fotografi)

Video: Roboti lypës me gjurmimin dhe kontrollin e fytyrës nga Xbox Controller - Arduino: 9 hapa (me fotografi)

Video: Roboti lypës me gjurmimin dhe kontrollin e fytyrës nga Xbox Controller - Arduino: 9 hapa (me fotografi)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Korrik
Anonim
Image
Image
Instalimi dhe konfigurimi i OpenCV dhe C ++
Instalimi dhe konfigurimi i OpenCV dhe C ++

Ne do të bëjmë një robot lypës. Ky robot do të përpiqet të irritojë ose të tërheqë vëmendjen e njerëzve që kalojnë. Do të zbulojë fytyrat e tyre dhe do të përpiqet të qëllojë me lazer mbi ta. Nëse i jepni një monedhë robotit, ai do të këndojë një këngë dhe do të kërcejë. Roboti do të ketë nevojë për një arduino, një furnizim të drejtpërdrejtë të një kamere dhe një kompjuter për të hapur openCV. Roboti gjithashtu do të jetë në gjendje të kontrollohet nga një kontrollues xBox nëse është i lidhur me kompjuterin.

Hapi 1: Materialet

Hardware Elektronike

  • Arduino NANO ose UNO
  • Kamera USB 2.0
  • Kabllo kërcyes (meshkuj dhe femra)
  • 2 x Servo - Generic (Sub -Micro Size)
  • 2 x LED - CATHODE RGB 5mm
  • 2 x 5mW Laser
  • 1 x LED i kuq 5 mm
  • 1 x Breadboard
  • Rezistencë 4 x 220Ω
  • 1 rezistencë 1KΩ
  • 1 x protoboard
  • 1 x sensor Sonar 4 kunja
  • Kontrolluesi Xbox

Analog i harduerit

  • Kuti druri (15 x 15 x 7 cm)
  • Zam
  • Shirit elektrik

Softuer

  • Arduino IDE
  • Studio vizuale 2017
  • 3Ds Max (ose ndonjë softuer tjetër modelues 3d)
  • Preform 2.14.0 ose më vonë
  • OpenCV 3.4.0 ose më vonë

Mjetet

  • Pajisjet e saldimit
  • Sharrë dhe stërvitje
  • Prerës i telave

Hapi 2: Instalimi dhe konfigurimi i OpenCV dhe C ++

Instalimi dhe konfigurimi i OpenCV dhe C ++
Instalimi dhe konfigurimi i OpenCV dhe C ++

Hapi 2.1: Marrja e softuerit

Visual studio 2017: Shkarkoni Visual studio Comunity 2017openCV 3.4.0 Win pack: Shkoni te faqja zyrtare e shkarkimit

Hapi 2.2: Instalimi i OpenCV2.2.1: Nxirrni skedarin zip në diskun tuaj Windows (: C).2.2.2: Shkoni te cilësimet e avancuara të sistemit tuaj. Kjo mund të gjendet në funksionin tuaj të kërkimit win10.2.2.3: Ne duhet të konfigurojmë ndryshore të reja Mjedisore. Gjeni mjedisin "Rruga" dhe shtypni redaktoni.2.2.4: Tani duhet të shtojmë vendndodhjen e "hartës së koshit" në një ndryshore të re në Shtegun mjedisor. Nëse keni instaluar openCV në C drive tuaj, rruga mund të shkojë kështu: C: / opencv / build / x64 / vc14 / bin Ngjitni rrugën dhe shtypni "OK" në të gjitha dritaret që mund të keni hapur gjatë këtij procesi.

Hapi 2.3: konfigurimi i studios vizuale C ++ 2.3.1: Krijoni një projekt të ri vizual C ++. Bëjeni atë një projekt bosh të Win32 Console Application.2.3.2: Në skedën e skedarëve burim, klikoni me të djathtën dhe shtoni një skedar të ri C ++ (.cpp) dhe emërtojeni atë "main.cpp".2.3.3: Klikoni me të djathtën mbi projektin- emrin në Solution explorer dhe zgjidhni Properties.2.3.4: Duhet të shtojmë një Include Directories shtesë. Kjo mund të gjendet nën skedën C/C ++ në përgjithësi. Kopjoni shtegun e mëposhtëm: C: / opencv / build / include dhe ngjiteni pas "AID" dhe klikoni në aplikoni. 2.3.5: Në të njëjtën dritare ne duhet të zgjidhni skedën "Linker". në përgjithësi ne duhet të bëjmë një Drejtori të tjera Librare Shtesë. Ngjiteni rrugën e mëposhtme prapa "AID" C: / opencv / build / x64 / vc14 / lib dhe shtypni apliko përsëri.2.3.6: Nën të njëjtën skedë Linker zgjidhni skedën "Input". Dhe shtypni "Vartësitë shtesë> redakto" dhe ngjisni skedarin e mëposhtëm opencv_world320d.lib dhe xinput.lib (Për kontrolluesin) dhe shtypni aplikoni përsëri. Mbyllni dritaren. Tani skedari juaj C ++ është gati për të punuar.

Hapi 3: Vendosja e Arduino

Vendosja e Arduino
Vendosja e Arduino
Vendosja e Arduino
Vendosja e Arduino
Vendosja e Arduino
Vendosja e Arduino
Vendosja e Arduino
Vendosja e Arduino

Takimi me servos: Servotët janë të aftë të rrotullohen ~ 160 ° Ata duhet të kenë midis 4, 8 dhe 6, 0 Volt për të funksionuar normalisht. Servo ka 3 kunja: tokë, 4, 8 - 6, 0 volt pin dhe një të dhënë gjilpere. Për projektin tonë ne do të vendosim kunjat e të dhënave për servos në DigitalPin 9 dhe 10.

Takimi i drejtuesve të RGB: Llambat RGB kanë 4 kunja. Kunja e kuqe, jeshile, blu dhe terren. Për të kursyer pak hapësirë në arduino, ne mund të lidhim së bashku 2 led RGB. Pra, ne do të përdorim vetëm 3 kunja. Ne mund të lidhim dhe bashkojmë led -et RGB në një protoboard si në imazh. Red pin => DigitalPin 3 (PWM) Pin green => DigitalPin 4Blue pin => DigitalPin 7

Takimi me zilen Piezo: Roboti ynë i vogël do të bëjë pak zhurmë. Për ta bërë këtë ne duhet t'i japim atij një zë! Ne mund të zgjedhim ta bëjmë atë me të vërtetë me zë të lartë. Ose mund të vendosim një rezistencë 220Ω para zhurmës piezo për ta bërë atë pak më pak të neveritshëm. Ne po e lëmë zilen Piezo në tryezën e bukës. Pra, nuk ka nevojë për bashkim. Ne lidhim pin -in e të dhënave (+) me DigitalPin 2 dhe kunjin e tokëzimit me tokëzimin në tabelën e bukës.

Takimi me Sonarin: Në mënyrë që roboti të mos përpiqet të synojë personin që është 10 metra larg. Ne mund t'i japim robotit një distancë distancë nga ku do të jetë në gjendje të synojë njerëzit. Ne e bëjmë këtë me një sensor sonar. VCC => 5 voltTrig => DigitalPin 6Echo => DigitalPin 5GND => tokë

Takimi me detektorin e monedhave: Ne do të bëjmë një detektor monedhe. Detektori i monedhës do të funksionojë duke zbuluar nëse qarku është i mbyllur ose i prishur. Pothuajse do të funksionojë si një ndërprerës. Por ne duhet të jemi të kujdesshëm. Nëse e bëjmë këtë gabim, do të na kushtojë një arduino. Së pari: Lidhni AnalogPin A0 me një kabllo 5 volt. Por sigurohuni që të vendosni një rezistencë 1KΩ midis tij. E dyta: Lidhni një tel me tokën. Ne mund t'i lidhim menjëherë telat dhe rezistencën në të njëjtën protoboard me atë të RGB. Tani nëse prekim 2 telat më lart, arduino do të zbulojë një qark të mbyllur. Kjo do të thotë se ka një monedhë! Takimi me lazerët e dënimit. Robotit i duhen armët e tij për të qëlluar! Për të kursyer pak hapësirë, i bashkova 2 lazerët së bashku. Ata do të përshtaten në mënyrë perfekte në kornizën e kamerës. Lidheni ato me DigitalPin 11 dhe në tokë. Zjarri larg djalit të vogël!

Mashtrim opsional. Ne mund të vendosim një LED të kuq nën vendin e monedhës. Ky do të jetë një mashtrim i vogël argëtues kur është errësirë. Lidhni një tel me DigitalPin 8 dhe vendosni një rezistencë 220Ω midis LED dhe telit për të parandaluar që ajo të shpërthejë. Lidhni kunjin e shkurtër të LED në tokë.

Hapi 4: Kodi C ++

Hapi 4.1: Vendosja e kodit main.cpp4.1.1: Shkarkoni "main.cpp" dhe kopjoni kodin në main.cpp.4.1.2 tuajin: Në linjën 14 ndryshoni "com" në com që arduino përdor. "\. / COM (ndrysho këtë)" 4.1.3: Në rreshtin 21 dhe 22 vendosni rrugën e duhur për skedarët "haarcascade_frontalface_alt.xml" dhe "haarcascade_eye_tree_eyeglasses.xml" Nëse openCV është instaluar në diskun C, këto skedarë mund të gjenden këtu: "C: / opencv / build / etc / haarcascades \" Mbani mbishkrimet e dyfishta ose shtoni një ku ka vetëm një.

Hapi 4.2: Shtoni tserial.h dhe Tserial.cppKëto 2 skedarë do të kujdesen për komunikimin midis arduino dhe PC.4.2.1: Shkarkoni tserial.h dhe Tserial.cpp.4.2.2: Vendosni këto 2 skedarë në projekt drejtori Në Solution explorer klikoni me të djathtën mbi projektin dhe zgjidhni shtoni> artikullin ekzistues. Në dritaren që shfaqet, zgjidhni dy skedarët që do të shtohen.

Hapi 4.2: Shtoni CXBOXController.h dhe CXBOXController.hKëto skedarë do të marrin pjesën kontrolluese të projektit.4.2.1: Në zgjidhjen explorer klikoni me të djathtën mbi projektin dhe zgjidhni shtoni> artikullin ekzistues. Në dritaren që shfaqet zgjidhni dy skedarët që do të shtohen. Skedarët C ++ janë konfiguruar.

Hapi 5: Kodi Arduino

Hapi 5.1: Biblioteka NewPing5.1.1: Shkarkoni ArduinoCode.ino dhe hapeni atë në arduino IDE.5.1.2: Shkoni te "Skica> Përfshi libarin> Menaxhoni libaret".5.1.3: Kërkoni në kutinë e filtrit te "NewPing" dhe instaloni këtë bibliotekë.

Hapi 5.2: Biblioteka Pitches5.2.1: Shkarkoni pitches.txt dhe kopjoni përmbajtjen e pitches.txt.5.2.2: Në Arduino IDE shtypni CTRL+Shift+N për të hapur një skedë të re. pitches.txt në skedën e re dhe ruajeni atë si "pitches.h". Kodi Arduino është ngritur

Hapi 6: Shtypja 3D dhe Përsosja e Printimit

Printimi 3D dhe përsosja e printimit
Printimi 3D dhe përsosja e printimit
Printimi 3D dhe përsosja e printimit
Printimi 3D dhe përsosja e printimit

Hapi 6.1: Shtypni skedarin 3D Hapni printfile.form dhe kontrolloni nëse gjithçka është në rregull. Nëse gjithçka duket në rregull, dërgojeni printjob -in në printer. Nëse diçka ju duket ose dëshironi të ndryshoni modelin. Unë kam përfshirë skedarët 3Ds Max dhe skedarët OBJ që ju të redaktoni.

Hapi 6.2: Përsosni modelin 6.2.1: Pasi të keni përfunduar printimin njomni 2 modelet me alkool 70% për të hequr çdo resedu.6.2.2: Pas printimit vendoseni modelin në diell për disa orë për të lejuar rrezet UV forcoj modelin. Ose mund të përdorni një llambë UV për të forcuar modelin. Kjo duhet të bëhet sepse modeli do të jetë ngjitës.

6.2.3: Hiqni kornizën mbështetëse. Kjo mund të bëhet me një prestar teli. Ose ndonjë mjet tjetër që mund të presë plastikën.6.2.4: Disa pjesë të printimit 3D mund të jenë ende të buta. Edhe nëse modeli ka qenë në shumë rreze ultraviolet. Pjesët që mund të jenë të buta, janë pjesët që janë afër kornizave mbështetëse. Vendoseni modelin në më shumë rreze ultraviolet për t'u ngurtësuar. Mund të përpiqeni t'i përshtatni servot në kornizë. Nëse ato nuk përshtaten, mund të përdorni Dremel për të hequr materialin. bëj që të përshtatet.

Hapi 7: Ndërtimi i Kutisë

Ndërtimi i Kutisë
Ndërtimi i Kutisë
Ndërtimi i Kutisë
Ndërtimi i Kutisë

Hapi 7.1: Bërja e vrimave Unë kam përfshirë një plan të kutisë në fjalë. Projekti nuk është në shkallë, por të gjitha madhësitë janë të sakta.7.1.1: Filloni duke shënuar të gjitha vrimat në vendet e duhura.7.1.2: Shponi të gjitha vrimat. Vrimat më të mëdha mund të bëhen deri në madhësi me një Dremel.7.1.3: Vrimat katrore gjithashtu mund të shpohen. Por për t'i bërë ato katrore ju mund ta përshtatni Dremel -in me një skedar të vogël dhe të vendosni qoshe të mprehta.7.1.4: Mundohuni t'i përshtatni të gjithë përbërësit. nëse ato përshtaten, ju jeni mirë të shkoni! 7.1.5: Kini kujdes për copëzat e drurit. Përdorni letër rëre për t'i hequr ato.

Hapi 7.2: Pikturimi7.2.1: Filloni me lëmimin e kapakut. Ne kemi nevojë që boja të ngjitet.7.2.2: Merrni një leckë dhe vendosni pak Terpentinë mbi të për të pastruar kutinë.7.2.3: Tani mund ta lyeni kutinë me llak me çfarëdo ngjyre që dëshironi.

Hapi 8: Përfundimi

Duke përfunduar lart
Duke përfunduar lart
Duke përfunduar lart
Duke përfunduar lart
Duke përfunduar lart
Duke përfunduar lart

Tani duhet të vendosim gjithçka në vend dhe ta lëmë të bëjë gjënë e vet. Hapi 8.1: Detektori i monedhës8.1.1: Ngjitni disa mbajtëse metalike për detektorin e monedhës. 8.1.2: Lidhni çdo tel nga lidhësi në një mbajtëse. 8.1.3: Provoni lidhjen me një monedhë. Nëse nuk ka qark të mbyllur, lidhni telat më shumë në buzë. Hapi 8.2: Tabela e protoboardit dhe RGB8.2.1: Vendoseni protoboardin në këndin e sipërm të djathtë dhe ngjiteni poshtë! 8.2.2: Lidhni ledet RGB me telat nga protoboard! 8.2.3: Lidhni të gjitha telat nga protoboard në arduino. Hapi 8.3: Sensori i sonarit 8.3.28.3.2: Pritini disa tela meshkuj dhe femra në gjysmë dhe lidhni telat femra dhe meshkuj së bashku për të bërë një kabllo të vetme që mund të përdorim për të lidhur sensorin me arduino. 8.3.3: Lidhni sensorin me arduino

Hapi 8.4: Laserët dhe kamera8.4.1: Ngjitni kornizën e vogël në kamerë. Sigurohuni që të jetë i drejtë.8.4.2: Vendosni edhe lazerët në kornizë. Ngjitini ato në mënyrë që armiku të mos i vjedhë!

Hapi 8.5: Servos dhe printimi 3D8.5.1: Ngjiteni servon në vrimën e kapakut8.5.2: Ngarko skedarin arduino në arduino (kjo i bën servos të qëndrojnë në pozicionin e duhur) 8.5.3: Me servo erdhi një rrafshnaltë e vogël e rrumbullakët. Vendoseni këtë në servo në kapak.8.5.4: Vendosni printimin e madh 3D në servo dhe pllajë dhe vidhosini fort së bashku me një vidë. 8.5.6: Vendoseni kamerën në vend dhe çdo gjë është gati për të shkuar!

Hapi 9: Filloni Programin

Për të nisur robotin, hapni skedarin C ++ në Visual studio. Sigurohuni që jeni në "modalitetin e korrigjimit" Ngarko skedarin arduino në arduino. Pasi të jetë ngarkuar, luani shtypin në studion vizuale. Dhe roboti do të gjuajë dhe do të mbledhë të gjitha monedhat në botë !!!

Recommended: