Indholdsfortegnelse:
- Trin 1: Bor, tilslut og monter motoren
- Trin 2: Montering af beholderen
- Trin 3: Lav et lille hul til slikkaster
- Trin 4: Arduino -opsætning
- Trin 5: Dlib -opsætning
- Trin 6: Tilslutning af ansigtsgenkender til din robot
Video: Candy-throwing robot med Arduino, genbrugsdele og Dlib .: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Med et par genbrugsdele, et Arduino + motorskærm og Dlib-computersoftware kan du lave en fungerende ansigtsdetekterende slikkaster.
Materialer:
- Træramme
- Bærbar computer/computer (helst en mere kraftfuld end en Raspberry Pi!).
- Arduino (helst Uno, eller en der passer til dit motorskærm.)
- Arduino motorskjold (jeg brugte det gamle Adafruit -skjold, som det stadig sælges her)
- Ethvert standard webcam
- Lille vaskemaskine
Genanvendte dele:
- Kabinet (gammel metalboks fungerer godt.)
- Stepper motor, DC motor fra demonteret gammel printer.
- Gammel printer strømforsyning
- Slikdispenser (stor yoghurtbeholder).
Indersiden af det færdige produkt vil lidt ligne vedhæftet oversigt.
Advarsel
Sørg for at frakoble strøm til Arduino/motoropsætning, før du tilslutter/genopretter. Sørg for at tilslutte strømmen i den rigtige polaritet!
Dette er et mellemliggende projekt med Arduino og software, du skal installere eller kompilere på din computer. Instruktionerne kan variere og blev testet med at arbejde på Ubuntu.
Du skal muligvis justere Arduino -koden til det motorskærm, du bruger, hvis du ikke bruger det gamle Adafruit -motorskærm.
Trin 1: Bor, tilslut og monter motoren
Bor huller i sagen og fastgør trinmotor, så webkameraet kan bevæge sig ovenpå, og dispenseren kan rotere rundt i bunden.
Steppermotorer kan bevæge sig i små trin (4 tråde), i modsætning til jævnstrømsmotorer (2 ledninger), der kører baglæns/fremad, ikke i trin.
DC -motoren har 2 ledninger (kører begge veje), den valgfri trinmotor vil have 4 i to spoler (test med multimeter modstandsmåler for at se, hvor spolerne er tilsluttet, som beskrevet her.)
Hvis du bruger det gamle Adafruit -skjold som i mit eksempel, skal du forbinde DC candy -spindermotoren til motor nr. 3 og stepper til de to første motorer (#1, #2) som beskrevet i deres dokumentation.
Når de er tilsluttet, skal du koble motorerne til et Arduino -motorskærm, der er fastgjort til en Arduino. For de bedste resultater anbefales det at have en anden strømforsyning til motorerne, som du kan koble op til DC -udgangen på en $ 2 vægvorte fra en brugt butik.
Trin 2: Montering af beholderen
Mål midten af en yoghurtbeholder eller en anden stor plastbeholder, og bor et greb, der er lige større end motorens ende.
Fastgør beholderen til kassen med en lille skive - Krazy -lim den til bunden af beholderen og til elmotorspindlen.
Lad limen tørre i et par dage for at hærde fuldstændigt - det kan være en god idé at placere en lille afstandsstykke mellem æsken og spindebeholderen for at sikre, at den ikke sætter sig skæv.
Trin 3: Lav et lille hul til slikkaster
Når spinneren er fastgjort korrekt, skal du bruge enden af en skarp kniv til at skitsere et lille hul til slik, der kan smides ud af enden - dette skal være lige over bunden, hvor læben er.
(For de bedste resultater kan cirka 30 stykker slik lægges på lågenden af dispenseren, som vil være bunden.)
Hold forsigtigt omridset med en skarp kniv, indtil det springer ud og efterlader et lille hul (du kan udvide hullet senere efter behov).
Trin 4: Arduino -opsætning
Hvis du ikke allerede har installeret Arduino -softwaren, skal du hente den fra
www.arduino.cc/en/Main/Software
Enhver nyere version skal fungere.
Test DC/Stepper motoren med eksemplerne i din Arduino Shields eksempelkode.
Hvis du tilfældigvis bruger dette skjold (stadig tilgængeligt fra nogle forhandlere), kan du bruge min kode direkte:
github.com/programmin1/HowToTrainYourRobot …
Når du har testet og kan dispensere slik ved at indtaste "d" i Arduino serielle vindue, er det tid til at forbinde dette med Dlibs genkender.
Trin 5: Dlib -opsætning
Dlib (https://dlib.net/) giver et open-source, brugervenligt bibliotek til billedgenkendelse. Installer Python Dlib -modulet ved hjælp af:
sudo pip installer Dlib
- eller -
sudo easy_install Dlib
Vent på, at Dlib installeres og kompileres. (Du skal bruge en computer med fortrinsvis et par gig RAM, eller du skal vente længe og udvide bytteplads). Koden bruger også OpenCV til webcam -modulet, så kør:
sudo apt-get install python-opencv
Installationstrin kan variere, hvis du bruger MacOS eller andre operativsystemer.
Grib nu data fra ansigtsgenkendelsesmærker fra
dlib.net/files/shape_predictor_68_face_land…
Pak den ud (med Archive Manager/7zip) og placer den i HOME/Downloads/shape_predictor_68_face_landmarks.dat
Trin 6: Tilslutning af ansigtsgenkender til din robot
Slut den Arduino-styrende USB til computeren, og kontroller, at filen "/dev/ttyACM0" findes (dette er enheden, som de serielle kommandoer skal sendes til). Hvis det ikke virker, og en anden lignende mappe, der vises i /dev, når du tilslutter den, skal du erstatte /dev /ttyACM0 i filen faceDetectThreadCorrelationCV2FaceSmile.py i repoen.
Tilslut webkameraet (hvis der ikke er noget indbygget webcam i den computer, du bruger), og kør den.py -fil på kommandolinjen eller med kommandoen Kør/F5 i Geany -teksteditor. Hvis du vil bruge et andet/eksternt webcam på en bærbar computer, kan du ændre "VideoCapture (0)" til "VideoCapture (1)" for at bruge et andet webcam, som du kan placere på trinmotoren oven på robotens boks.
Hvis alt går godt, vil du se en oversigt over et smil, når et ansigt er foran webkameraet.
Læs oversigten og kildekoden for.py -filen for at se matematikken om, hvordan smilregistrering fungerer fra de punkter, Dlib giver fra ansigtets vartegn.:)
Anbefalede:
Social distancerende Halloween Candy Robot: 7 trin (med billeder)
The Social Distancing Halloween Candy Robot: Hvis du leder efter en sjov ny måde at interagere med årets Halloween trick-or-treaters, og du står klar til den udfordring, som dette projekt bringer, så hop direkte ind og byg din egen! Denne socialt distancerende robot vil 'se', når en trick-or-treat
Halloween "hoved-i-en-krukke" Candy Dispenser Dekoration Med Arduino: 5 trin
Halloween "hoved-i-en-krukke" Candy Dispenser Dekoration Med Arduino: Dette projekt forklarer, hvordan man bygger en slikdispenser til brug som Halloween-dekoration, bygget med Arduino Uno. LED'erne lyser i en bag og frem sekvens i rødt og vil vende til grønt, hvis ultralydssensoren registrerer en hånd. Dernæst vil en servo
Lav en LED -drage ud af genbrugsdele !: 11 trin (med billeder)
Lav en LED -drage ud af genbrugsdele !: Hej, jeg håber, at alle er sikre og raske under denne pandemi. Ved at blive hjemme indså jeg, at jeg havde nogle gamle og ubrugte elektroniske kredsløb og defekte mobiladaptere. Som elektronisk entusiast og en ivrig drage -fan, spekulerede jeg på
Bluetooth Boombox -opladningsdock (genbrugsdele !!!): 6 trin
Bluetooth Boombox -opladningsdock (genbrugsdele !!!): I denne instruks vil jeg vise dig, hvordan du laver en Bluetooth -højttaler helt ud af genanvendte dele. Jeg vil indtaste dette instruerbare i " Trash To Treasure " konkurrence, da den består af genbrugsskram, som jeg fandt på mit loft
Lav en bænkstrømforsyning hovedsageligt af genbrugsdele: 19 trin (med billeder)
Lav en bænkstrømforsyning hovedsageligt af genbrugsdele: Denne instruktør viser dig, hvordan du laver en meget god bænkstrømforsyning ved hjælp af hovedsageligt genbrugsdele. Dette er virkelig " mærket II ", du kan se " mærke I " her. Da jeg var færdig med min første bænk