Sisällysluettelo:

UUCH: 6 vaihetta
UUCH: 6 vaihetta

Video: UUCH: 6 vaihetta

Video: UUCH: 6 vaihetta
Video: Опасные мифы о шизофрении. Ученые против мифов 14-6. Юрий Сиволап 2024, Marraskuu
Anonim
OUCH
OUCH
OUCH
OUCH

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

Vaihe 2: Peilin valmistus
Vaihe 2: Peilin valmistus
Vaihe 2: Peilin valmistus
Vaihe 2: Peilin valmistus

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

Vaihe 3: Komponenttien kokoaminen
Vaihe 3: Komponenttien kokoaminen
Vaihe 3: Komponenttien kokoaminen
Vaihe 3: Komponenttien kokoaminen
Vaihe 3: Komponenttien kokoaminen
Vaihe 3: Komponenttien kokoaminen
Vaihe 3: Komponenttien kokoaminen
Vaihe 3: Komponenttien kokoaminen

Kasvokomponentti

  1. Kuumaa liimaa nyrkki Servo pyörivän pohjan aukon mukaisesti
  2. Liimaa Servo -liitin pohjaosan alaosassa olevaan uraan
  3. Aseta kaksi pohjaosaa yhteen niin, että servo lukittuu liittimeen
  4. Kiinnitä liitin servoon Servon ruuvilla
  5. Kuumaa liimaa toinen liitoskappale akselin tuen yläosassa olevaan uraan
  6. Ruuvaa akselituet pyörivään alustaan 4 M5 -pultilla
  7. Kuumaa liimaa toinen Servo telineeseen
  8. Liu'uta kamera tappeihin
  9. Kiinnitä ultraääni -etäisyysanturi kiinnikkeeseen joko ruuvaamalla tai kuumaliimalla
  10. Liitä kamera / anturikiinnike akselitukeen, servon on jälleen liu'utettava liitäntäkappaleeseen
  11. Kiinnitä liitin servoon Servon ruuvilla
  12. Ruuvaa Raspberry Pi ja servo -ohjain vanerikappaleeseen (Varmista, että etäisyys vastaa pohjan L reikiä)
  13. Kierrä Face -osa telineisiin M5 -ruuveilla

Peilikomponentti

  1. Noudata vaiheita 1-7
  2. Liitä peili akselitukeen
  3. Liimaa peiliteline vaneriin niin, että peili ja kasvot ovat kohdakkain
  4. Kierrä peilikomponentti telineeseen M5 -ruuveilla

Kevyt komponentti

  1. Noudata yllä olevia vaiheita 1-7
  2. Pujota valoanturit varjostusristin alareunassa olevien kiinnitysreikien läpi
  3. Liitä varjostusristi akselitukeen, servon on jälleen liu'utettava liitoskappaleeseen
  4. Kiinnitä liitin servoon Servon ruuvilla
  5. Liimaa jalusta vaneriin niin, että valo-, peili- ja kasvokomponentit ovat kohdakkain ja peili on kasvojen ja valon osien välissä
  6. 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

Vaihe 4: Määritä levyt
Vaihe 4: Määritä levyt
Vaihe 4: Määritä levyt
Vaihe 4: Määritä levyt
Vaihe 4: Määritä levyt
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:

Koodi
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

Koodin suorittaminen
Koodin suorittaminen
Koodin suorittaminen
Koodin suorittaminen

Kun olet ladannut kaikki koodit samaan hakemistoon ja määrittänyt virtuaalisen ympäristön avoimella CV: llä, olet valmis suorittamaan sen.

  1. Avaa komentokehote pi: lläsi
  2. Kirjoita workon cv (tai mikä tahansa nimi, jonka valitsit virtuaaliselle ympäristöllesi)
  3. Vaihda hakemisto, johon olet tallentanut tiedostosi (cd (polku tiedostoihin))
  4. 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: