Indholdsfortegnelse:
- Forbrugsvarer
- Trin 1: Trin 1: Udskrivning af delene
- Trin 2: Trin 2: Lav spejlet
- Trin 3: Trin 3: Samling af komponenterne
- Trin 4: Trin 4: Konfigurer tavlerne
- Trin 5: Koden:
- Trin 6: Kørsel af koden
Video: UHOV: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
Ouch er din personlige Omnidirectional Useless Cataract Helper. Da ansigtsgenkendelse rammer Zeitgeist, rammer OUCH dig! OUCH ved ikke kun, hvordan du ser ud, den ved også, hvordan man skal være meget irriterende! I modsætning til storebror er denne maskine meget synlig og opfylder kun ét formål: At gøre dit liv en lille smule skidtere. Glemte du nogensinde dine solbriller derhjemme og blev overrasket over en lys refleksion? OUCH lader dig genopleve dette øjeblik igen og igen. Ved at reflektere lys fra den klareste lyskilde omkring dig lige i dit ansigt, vil det sikre, at du ikke vil nyde et eneste øjeblik omkring det.
Pas på, eller UUCH kan være det sidste, du nogensinde vil se!
Projektet blev gennemført som en del af seminaret Computational Design and Digital Fabrication i ITECH -masterprogrammet.
August Lehrecke | Max Zorn
Forbrugsvarer
Elektroniske dele:
Arduino
-
Arduino UNO
- 2x Reely Mini-Servo S0009
- 4x fotoresistorer
- 4x 10k modstande
- 2x potentiometre
- 1x USB -printerkabel
Hindbær Pi
-
Rasberry Pi 4
- 1x RaspiCam
- 4x Reely Mini-Servo S0009
- 1x PCA9685 16-kanals 12-bit PWM servodriver
- 5v DC ekstern strømforsyning
- 1x Rasberry Pi 5.1V - 3Amp strømforsyning (eller ekstern tilsvarende)
- 1x MAKERFACTORY HC-SR05 Ultraschallsensor (MF-6402156)
- 1x 470 Ohm modstand
- 1x 320 Ohm modstand
3D -trykte dele:
SÅ mange findes i forskellige former og størrelser. Til denne version brugte vi en 3D -printer til at udskrive brugerdefinerede mekanismer.
- 4 x stativ
- 2 x Base S
- 1 x Base L
- 2 x rotationsbase dobbelt
- 1 x rotationsbase enkelt
- 1 x sæt Axis Support S
- 1 x sæt aksestøtte M
- 1 x sæt aksestøtte L
- 1 x kameraholder
- 1 x Light Mount
- 1 x spejlbeslag
Du kan eventuelt bruge det medfølgende Tower -design til at mene komponenterne til:
- 1 x tårn (i stedet for 4 x stativ)
- 1 x Base S & 1x Base M (i stedet for 2 x Base S)
Andre dele:
- Mylar
- 1 x gummibånd
- 1 x lynlås
- 12 M5 x 160 Flathead Skruer
- 2 M5 x 80 flade skruer
Værktøjer:
- 3D printer
- H3.0 Skruetrækker
- Varm limpistol
Trin 1: Trin 1: Udskrivning af delene
Hvis du har adgang til en 3D -printer, kan du udskrive brugerdefinerede mekanismer til at huse servoer og montere de tre hovedkomponenter.
Til Face -komponenten har vi brug for:
- 2 x stativer
- 1 x Base L
- 1 x Dobbelt roterende base
- 1 x sæt aksestøtte M
- 1 x Kamera- og afstandssensormontering
Lyskomponenten kræver:
- 1 x stativ
- 1 x Base S
- 1 x Dobbelt roterende base
- 1 x sæt Axis Support S
- 1 x Light Mount
Spejlkomponenterne består af følgende:
- 1 x stativ
- 1 x Base S
- 1 x Roterende Base Single
- 1 x sæt aksestøtte L
- Spejlmontering
Endelig kan du også udskrive det medfølgende tårn.
Hvis du vil bruge det som basis for alle tre komponenter, bliver du nødt til at justere vektormatematikken i koden i overensstemmelse hermed. Tilslut endvidere Face -komponenten med Base M i stedet for Base L til tårnet.
Trin 2: Trin 2: Lav spejlet
For at lave din egen spejlkomponent skal du skære et cirkulært stykke Mylar og placere det oven på den 3D -trykte spejldel. Brug derefter først et gummibånd til at fastgøre det på plads. Gummibåndet skal passe ind i rillen omkring komponenten. Brug derefter en lynlås til at forsigtigt sikre forbindelsen, stram den ikke for meget endnu. Nu kan du begynde at strække Mylar, indtil du får en skinnende, spejlende overflade. Stram til sidst lynlåsen og nyd refleksionen af dit smukke ansigt!
Trin 3: Trin 3: Samling af komponenterne
Ansigtskomponent
- Varm lim neven Servo i henhold til udskæringen af den roterende bund
- Lim servostikket ind i rillen, der er placeret i bunden af bunddelen
- Sæt de to bunddele sammen, så Servoen låser sammen med stikket
- Brug servoskruen til at fastgøre stikket til servoen
- Varm lim det andet konnektorstykke ind i den tilsvarende rille, der er placeret øverst på aksestøtten
- Brug 4 M5 bolte til at skrue aksestøtten til den roterende base
- Varm lim den anden Servo til holderen
- Skub kameraet på benene
- Fastgør ultralydsafstandssensoren til holderen, enten via skruing eller varmlimning
- Tilslut kamera / sensorophænget til aksestøtten, Servoen skal igen glide ind i stikstykket
- Brug servoskruen til at fastgøre stikket til servoen
- Skru Raspberry Pi og servodriveren til et stykke krydsfiner (Sørg for, at afstanden passer til hullerne i Base L)
- Skru Face -komponenten fast på stativerne ved hjælp af M5 bolte
Spejlkomponent
- Følg trin 1 til 7
- Tilslut spejlet til aksestøtten
- Lim et spejlstativ til krydsfiner, så komponenten Mirror og Face er justeret
- Skru spejlkomponenten fast på stativet ved hjælp af M5 bolte
Let komponent
- Følg trin 1 til 7 ovenfra
- Træk lyssensorerne gennem monteringshullerne i bunden af skygge -krydset
- Tilslut skygge -krydset til aksestøtten, Servoen skal igen glide ind i stikstykket
- Brug servoskruen til at fastgøre stikket til servoen
- Lim et stativ til krydsfiner, så komponenten Light, Mirror og Face er justeret, og spejlet er mellem Face og Light -komponenterne
- Skru Face -komponenten fast på stativerne ved hjælp af M5 bolte
*Alle komponenter kan også fastgøres til tårnet. Overvej dog den øgede kodning og ledningskompleksitet og udskrivningstid. Hvis du vil bruge tårnet, skal du bruge Base M -delen i stedet for Base L til Face -komponenten og skrue Base -delene til tårnet ved hjælp af øjer og M5 -bolte.
Trin 4: Trin 4: Konfigurer tavlerne
Her er ledningsdiagrammet for de tre komponenter. Solsporeren virker på sin egen sløjfe på Arduino og sender sine servopositioner til Rasberry Pi via den serielle USB -port. En valgfri afstandssensor kan tilsluttes fronten af pan/tilt piCamera for at skabe en mere robust triangulering af målet. Her vil vi stille dem op i en lige linje og bare beregne gennemsnittet af vektorer, så det er ikke påkrævet.
Fire servoer er tilsluttet PCA9685 servodriveren, der drives af en ekstern 5v strømforsyning. To af servoerne styrer pan og tilt for ansigtssporingskameraet, mens de resterende to styrer pan og tilt for spejlet.
Trin 5: Koden:
Koden til dette projekt kan opdeles i to dele: Arduino light-tracking code og python face tracking/mirror positioning code.
Arduino kode:
Denne kode er en let modificeret version af solsporingsprojektet fra geobruce. Det er en god reference til at finde ud af mere om solsporingskomponenten, og flere detaljer kan findes på denne instruktive side. Lysintensitetsværdier tages fra de 4 fotomodstande og beregnes i gennemsnit for at finde det lyseste område og justere servoerne i overensstemmelse hermed. Vi skriver derefter servovinkelværdierne ud til den serielle port.
Python -kode:
Denne kode integrerer åbent CV for at oprette en ansigtssporings -pan -vippemekanisme samt driver servoerne til spejlet. Du bliver nødt til at gennemgå nogle trin for at downloade åbent CV på din Raspberry pi. Der er mange ressourcer til dette, men jeg kan meget godt lide den fra pyimagesearch. En fuld gennemgang af denne proces kan findes her. Bemærk: Vi har downloadet de åbne CV -biblioteker til et virtuelt miljø, som vi kører hele koden på, hvis du besluttede dig for at gøre dette, skal du sørge for at downloade alle afhængighederne til det virtuelle miljø, som du kører programmet på, og ikke selve Pi.
Når du har downloadet åbent CV, vil denne kode også kræve nogle flere afhængigheder (installeret i det specifikke miljø, du kører) for at køre:
- Adafruit ServoKit: En hel side om processen til download på hindbær Pi kan findes her.
- imutils
- numpy
- gpiozero (hvis du bruger afstandssensor)
For ansigtssporing kræver scriptet et argument (--faces), som er en.xml-fil, som openCv bruger til at finde ansigter. Du bliver nødt til at sætte denne fil i det samme bibliotek som python -scriptet. Jeg har givet det i downloads, og det kan også findes her.
Trin 6: Kørsel af koden
Når du har hentet hele koden i den samme mappe og konfigureret dit virtuelle miljø med åbent CV, er du klar til at køre den.
- Åbn kommandoprompten på din pi
- Skriv workon cv (eller hvilket navn du valgte til dit virtuelle miljø)
- Skift biblioteket til det sted, hvor du har dine filer gemt (cd (sti til filer))
- Den sidste linje kører programmet og specificerer haar cascade -filen. (python Face3.py --faces haarcascade_frontalface_default.xml)
Når du kører den, skal du se en videostream fra picam dukke op på skærmen, og kommandoprompten begynder at udskrive servoværdierne fra alle seks servoer.
Og du er færdig! Afhængigt af kvaliteten af de servoer, du har, vil du måske kalibrere dem hver især for at forbedre nøjagtigheden af dit system. Vi endte med at skulle justere alle PWM -intervaller, for at de kunne fungere korrekt.
Anbefalede:
Arduino bil omvendt parkering alarmsystem - Trin for trin: 4 trin
Arduino bil omvendt parkering alarmsystem. Trin for trin: I dette projekt vil jeg designe en simpel Arduino bil omvendt parkeringssensorkreds ved hjælp af Arduino UNO og HC-SR04 ultralydssensor. Dette Arduino -baserede bilomvendt alarmsystem kan bruges til en autonom navigation, robotafstand og andre rækkevidde
Trin for trin pc -bygning: 9 trin
Trin for trin PC Building: Supplies: Hardware: MotherboardCPU & CPU -køler PSU (strømforsyningsenhed) Opbevaring (HDD/SSD) RAMGPU (ikke påkrævet) CaseTools: Skruetrækker ESD -armbånd/mathermal pasta m/applikator
Tre højttalerkredsløb -- Trin-for-trin vejledning: 3 trin
Tre højttalerkredsløb || Trin-for-trin vejledning: Højttalerkredsløb styrker lydsignalerne, der modtages fra miljøet til MIC og sender det til højttaleren, hvorfra forstærket lyd produceres. Her vil jeg vise dig tre forskellige måder at lave dette højttalerkredsløb på:
Trin-for-trin uddannelse i robotik med et sæt: 6 trin
Trin-for-trin uddannelse i robotteknologi med et kit: Efter ganske få måneder med at bygge min egen robot (se alle disse), og efter at jeg to gange havde dele mislykkedes, besluttede jeg at tage et skridt tilbage og tænke min strategi og retning. De flere måneders erfaring var til tider meget givende, og
Akustisk levitation med Arduino Uno trin for trin (8 trin): 8 trin
Akustisk levitation med Arduino Uno Step-by Step (8-trin): ultralyds lydtransducere L298N Dc kvindelig adapter strømforsyning med en han-DC-pin Arduino UNOBreadboard Sådan fungerer det: Først uploader du kode til Arduino Uno (det er en mikrokontroller udstyret med digital og analoge porte til konvertering af kode (C ++)