Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Vaihe 1: Osien tulostaminen
- Vaihe 2: Vaihe 2: Peilin tekeminen
- Vaihe 3: Vaihe 3: Komponenttien kokoaminen
- Vaihe 4: Vaihe 4: Määritä levyt
- Vaihe 5: Koodi:
- Vaihe 6: Koodin suorittaminen
Video: UUCH: 6 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
Ouch on henkilökohtainen monisuuntainen hyödytön kaihi -apulainen. Kun kasvojentunnistus osuu Zeitgeistiin, OUCH iskee sinuun! OUCH ei vain tiedä miltä näytät, vaan osaa myös olla hyvin ärsyttävä! Toisin kuin isoveli, tämä kone on hyvin näkyvä ja sillä on vain yksi tarkoitus: tehdä elämästäsi hieman paska. Oletko koskaan unohtanut aurinkolasit kotiin ja hämmästynyt kirkkaasta heijastuksesta? OUCH antaa sinun kokea tämän hetken uudestaan ja uudestaan. Heijastamalla ympärilläsi olevan kirkkaimman valonlähteen valoa suoraan kasvoihisi, se varmistaa, ettet nauti hetkestä sen ympärillä.
Varo, tai OUCH voi olla viimeinen asia, jonka näet!
Projekti toteutettiin osana ITECH -maisteriohjelman laskennallisen suunnittelun ja digitaalisen valmistuksen seminaaria.
Elokuu Lehrecke | Max Zorn
Tarvikkeet
Elektroniset osat:
Arduino
-
Arduino UNO
- 2x Reely Mini-Servo S0009
- 4x valovastus
- 4x 10k vastukset
- 2x potentiometriä
- 1x USB -tulostinkaapeli
Raspberry Pi
-
Rasberry Pi 4
- 1x RaspiCam
- 4x Reely Mini-Servo S0009
- 1x PCA9685 16-kanavainen 12-bittinen PWM-servo-ohjain
- 5V DC ulkoinen virtalähde
- 1x Rasberry Pi 5.1V - 3Amp virtalähde (tai ulkoinen vastaava)
- 1x MAKERFACTORY HC-SR05 Ultraschallsensor (MF-6402156)
- 1x 470 ohmin vastus
- 1x 320 ohmin vastus
3D -tulostetut osat:
OUCH -tuotteita on erikokoisia ja -muotoisia. Tässä versiossa käytimme 3D -tulostinta mukautettujen mekanismien tulostamiseen.
- 4 x jalusta
- 2 x pohja S
- 1 x pohja L
- 2 x pyörivä pohja kaksinkertainen
- 1 x Yksittäinen pyörivä pohja
- 1 x Akselituen sarja S
- 1 x Akselituen sarja M
- 1 x Akselituen sarja L
- 1 x kamerateline
- 1 x valoteline
- 1 x peilikiinnike
Vaihtoehtoisesti voit käyttää mukana toimitettua tornimallia komponenttien kiinnittämiseen:
- 1 x torni (4 x jalustan sijasta)
- 1 x Base S & 1x Base M (2 x Base S: n sijaan)
Toiset osat:
- Mylar
- 1 x kuminauha
- 1 x vetoketju
- 12 M5 x 160 litteät ruuvit
- 2 M5 x 80 litteät ruuvit
Työkalut:
- 3D tulostin
- H3.0 Ruuvimeisseli
- Kuuma liimapistooli
Vaihe 1: Vaihe 1: Osien tulostaminen
Jos sinulla on pääsy 3D -tulostimeen, voit tulostaa mukautettuja mekanismeja servojen sijoittamiseksi ja kolmen pääkomponentin asentamiseksi.
Kasvokomponentin osalta tarvitsemme:
- 2 x telineet
- 1 x pohja L
- 1 x pyörivä pohja kaksinkertainen
- 1 x Akselituen sarja M
- 1 x kamera- ja etäisyysanturin kiinnike
Light -komponentti vaatii:
- 1 x jalusta
- 1 x pohja S
- 1 x pyörivä pohja kaksinkertainen
- 1 x Akselituen sarja S
- 1 x valoteline
Peilin osat koostuvat seuraavista:
- 1 x jalusta
- 1 x pohja S
- 1 x pyörivä jalusta
- 1 x Akselituen sarja L
- Peilikiinnike
Lopuksi voit myös tulostaa toimitetun tornin.
Jos haluat käyttää sitä kaikkien kolmen komponentin perustana, sinun on säädettävä koodin vektorimatematiikka vastaavasti. Lisäksi liitä Face -osa Base M: n kanssa Base L: n sijaan torniin.
Vaihe 2: Vaihe 2: Peilin tekeminen
Jos haluat tehdä oman peilikomponentin, leikkaa pyöreä pala Mylaria ja aseta se 3D -painetun peiliosan päälle. Kiinnitä se ensin kuminauhalla paikalleen. Kuminauhan tulee sopia osan ympärillä olevan uran sisään. Kiinnitä liitos varovasti vetoketjulla, älä kiristä sitä vielä liikaa. Nyt voit alkaa venyttää Mylaria, kunnes saat kiiltävän peilaavan pinnan. Kiristä lopuksi vetoketju ja nauti kauniiden kasvojesi heijastuksesta!
Vaihe 3: Vaihe 3: Komponenttien kokoaminen
Kasvokomponentti
- Kuumaa liimaa nyrkki Servo pyörivän pohjan aukon mukaisesti
- Liimaa Servo -liitin pohjaosan alaosassa olevaan uraan
- Aseta kaksi pohjaosaa yhteen niin, että servo lukittuu liittimeen
- Kiinnitä liitin servoon Servon ruuvilla
- Kuumaa liimaa toinen liitoskappale akselin tuen yläosassa olevaan uraan
- Ruuvaa akselituet pyörivään alustaan 4 M5 -pultilla
- Kuumaa liimaa toinen Servo telineeseen
- Liu'uta kamera tappeihin
- Kiinnitä ultraääni -etäisyysanturi kiinnikkeeseen joko ruuvaamalla tai kuumaliimalla
- Liitä kamera / anturikiinnike akselitukeen, servon on jälleen liu'utettava liitäntäkappaleeseen
- Kiinnitä liitin servoon Servon ruuvilla
- Ruuvaa Raspberry Pi ja servo -ohjain vanerikappaleeseen (Varmista, että etäisyys vastaa pohjan L reikiä)
- Kierrä Face -osa telineisiin M5 -ruuveilla
Peilikomponentti
- Noudata vaiheita 1-7
- Liitä peili akselitukeen
- Liimaa peiliteline vaneriin niin, että peili ja kasvot ovat kohdakkain
- Kierrä peilikomponentti telineeseen M5 -ruuveilla
Kevyt komponentti
- Noudata yllä olevia vaiheita 1-7
- Pujota valoanturit varjostusristin alareunassa olevien kiinnitysreikien läpi
- Liitä varjostusristi akselitukeen, servon on jälleen liu'utettava liitoskappaleeseen
- Kiinnitä liitin servoon Servon ruuvilla
- Liimaa jalusta vaneriin niin, että valo-, peili- ja kasvokomponentit ovat kohdakkain ja peili on kasvojen ja valon osien välissä
- Ruuvaa Face -komponentti telineisiin M5 -ruuveilla
*Kaikki komponentit voidaan myös kiinnittää torniin. Ota kuitenkin huomioon koodauksen ja johdotuksen monimutkaisuus ja tulostusaika. Jos haluat käyttää tornia, käytä Base M -osaa Face L -komponentin Base L: n sijaan ja ruuvaa Base -osat torniin silmukoiden ja M5 -pulttien avulla.
Vaihe 4: Vaihe 4: Määritä levyt
Tässä on kolmen komponentin kytkentäkaavio. Auringonvalvontalaite toimii omalla silmukallaan Arduinolla ja lähettää servoasennot Rasberry Pi: lle sarja -USB -portin kautta. Lisävarusteena saatava etäisyysanturi voidaan kytkeä panorointi-/kallistuspiCameran etuosaan, jotta kohde saadaan kolmiomaisemmaksi. Tässä asetamme ne suoriin linjoihin ja keskimäärin vain vektorit, joten sitä ei vaadita.
Neljä servoa on kytketty PCA9685 -servo -ohjaimeen, joka saa virtansa ulkoisesta 5 voltin virtalähteestä. Kaksi servoa ohjaa kasvojen seurantakameran panorointia ja kallistusta, kun taas loput kaksi ohjaavat pannua ja kallistusta peilille.
Vaihe 5: Koodi:
Tämän projektin koodi voidaan jakaa kahteen osaan: Arduinon valonseurantakoodi ja python-kasvojenseuranta-/peilipaikannuskoodi.
Arduino -koodi:
Tämä koodi on hieman muokattu versio geobruce -aurinkoseurantaprojektista. Se on loistava viite saadaksesi lisätietoja aurinkokennon seurantakomponentista, ja lisätietoja on tällä ohjesivulla. Valon voimakkuusarvot otetaan 4 valovastuksesta ja lasketaan keskimäärin kirkkaimman alueen löytämiseksi ja servojen säätämiseksi vastaavasti. Kirjoitamme sitten servokulman arvot sarjaporttiin.
Python -koodi:
Tämä koodi integroi avoimen CV: n luodakseen kasvojenseurannan kallistusmekanismin ja ajaa peilin servoja. Sinun on suoritettava joitakin vaiheita ladataksesi avoimen CV: n Raspberry pi -laitteeseesi. Tähän on monia resursseja, mutta pidän kovasti pyimagesearchin julkaisusta. Koko prosessin läpikäynti löytyy täältä. Huomautus: Olemme ladanneet avoimet CV -kirjastot virtuaaliseen ympäristöön, jossa käytämme koko koodia. Jos päätät tehdä tämän, varmista, että lataat kaikki riippuvuudet virtuaaliseen ympäristöön, jossa käytät ohjelmaa etkä itse Pi.
Kun olet ladannut avoimen CV: n, tämä koodi vaatii myös joitain muita riippuvuuksia (asennettuna käyttämääsi ympäristöön):
- Adafruit ServoKit: Koko sivu lataamisprosessista vadelma Pi: lle löytyy täältä.
- imutils
- numpy
- gpiozero (jos käytetään etäisyysanturia)
Kasvojen seurannassa komentosarja vaatii argumentin (--faces), joka on.xml-tiedosto, jota openCv käyttää kasvojen löytämiseen. Sinun on asetettava tämä tiedosto samaan hakemistoon kuin python -komentosarja. Olen toimittanut sen latauksissa ja se löytyy myös täältä.
Vaihe 6: Koodin suorittaminen
Kun olet ladannut kaikki koodit samaan hakemistoon ja määrittänyt virtuaalisen ympäristön avoimella CV: llä, olet valmis suorittamaan sen.
- Avaa komentokehote pi: lläsi
- Kirjoita workon cv (tai mikä tahansa nimi, jonka valitsit virtuaaliselle ympäristöllesi)
- Vaihda hakemisto, johon olet tallentanut tiedostosi (cd (polku tiedostoihin))
- Viimeinen rivi suorittaa ohjelman ja määrittelee haar -kaskaditiedoston. (python Face3.py --face haarcascade_frontalface_default.xml)
Kun suoritat sen, sinun pitäisi nähdä videovirta picamista ponnahtaa näyttöön ja komentokehote alkaa tulostaa servoarvoja kaikista kuudesta servosta.
Ja olet valmis! Käytettävissä olevien servojen laadusta riippuen voit halutessasi kalibroida ne erikseen järjestelmän tarkkuuden parantamiseksi. Jouduimme säätämään kaikkia PWM -alueita, jotta ne toimivat oikein.
Suositeltava:
DIY Raspberry Pi Downloadbox: 4 vaihetta
DIY Raspberry Pi Downloadbox: Löydätkö usein itsesi lataamasta suuria tiedostoja, kuten elokuvia, torrentteja, kursseja, TV -sarjoja jne., Niin tulet oikeaan paikkaan. Tässä Instructable -ohjelmassa muuttaisimme Raspberry Pi zero -laitteemme latauskoneeksi. Joka voi ladata minkä tahansa
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): 8 vaihetta
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): ultraäänikaiuttimet L298N DC-naarasadapterin virtalähde urospuolisella dc-nastalla ja analogiset portit koodin muuntamiseksi (C ++)
4G/5G HD -videon suoratoisto DJI Dronesta alhaisella latenssilla [3 vaihetta]: 3 vaihetta
4G/5G HD -videon suoratoisto DJI Dronesta alhaisella latenssilla [3 vaihetta]: Seuraava opas auttaa sinua saamaan live-HD-videovirtoja lähes mistä tahansa DJI-dronesta. FlytOS -mobiilisovelluksen ja FlytNow -verkkosovelluksen avulla voit aloittaa videon suoratoiston droonilta
Pultti - DIY -langaton latauskello (6 vaihetta): 6 vaihetta (kuvilla)
Pultti - DIY -langaton latausyökello (6 vaihetta): Induktiiviset lataukset (tunnetaan myös nimellä langaton lataus tai langaton lataus) on langattoman voimansiirron tyyppi. Se käyttää sähkömagneettista induktiota sähkön tuottamiseen kannettaville laitteille. Yleisin sovellus on langaton Qi -latauslaite
4 vaihetta akun sisäisen vastuksen mittaamiseksi: 4 vaihetta
4 vaihetta akun sisäisen vastuksen mittaamiseksi: Tässä on 4 yksinkertaista vaihetta, joiden avulla voit mitata taikinan sisäisen vastuksen