INHOUDSOPGAWE:

BAIE: 6 stappe
BAIE: 6 stappe

Video: BAIE: 6 stappe

Video: BAIE: 6 stappe
Video: КАК БЕСПЛАТНО СОЗДАТЬ КРАСИВУЮ ЖИВУЮ ИЗГОРОДЬ 2024, November
Anonim
OUCH
OUCH
OUCH
OUCH

Ouch is u persoonlike Omnidirectionele nuttelose katarak helper. Aangesien gesigsherkenning die Zeitgeist tref, tref OUCH u! OUCH weet nie net hoe jy lyk nie, dit weet ook hoe dit baie irriterend moet wees! Anders as groot broer, is hierdie masjien baie sigbaar en vervul dit slegs een doel: om u lewe 'n bietjie kak te maak. Het u ooit u sonbril tuis vergeet en 'n helder weerkaatsing verras? Met OUCH kan u hierdie oomblik herhaaldelik herleef. Deur lig van die helderste ligbron om jou reguit in jou gesig te weerkaats, sal dit verseker dat jy nie 'n enkele oomblik daar rondom sal geniet nie.

Pasop, of OUCH is dalk die laaste ding wat u ooit sal sien!

Die projek is uitgevoer as deel van die seminaar Computational Design and Digital Fabrication in die ITECH -meestersprogram.

August Lehrecke | Max Zorn

Voorrade

Elektroniese onderdele:

Arduino

  • Arduino UNO

    • 2x Reely Mini-Servo S0009
    • 4x fotoresistors
    • 4x 10k weerstande
    • 2x potensiometers
    • 1x USB -drukkabel

Framboos Pi

  • Rasberry Pi 4

    • 1x RaspiCam
    • 4x Reely Mini-Servo S0009
    • 1x PCA9685 16-kanaal 12-bis PWM-servostuurprogramma
    • 5v DC eksterne kragtoevoer
    • 1x Rasberry Pi 5.1V - 3Amp voeding (of eksterne ekwivalent)
    • 1x MAKERFACTORY HC-SR05 Ultraschallsensor (MF-6402156)
    • 1x 470 Ohm weerstand
    • 1x 320 Ohm weerstand

3D -gedrukte onderdele:

BAIE kom in verskillende vorms en groottes voor. Vir hierdie weergawe het ons 'n 3D -drukker gebruik om pasgemaakte meganismes te druk.

  • 4 x Staan
  • 2 x Base S
  • 1 x basis L
  • 2 x rotasie basis dubbel
  • 1 x rotasie basis enkel
  • 1 x stel asondersteuning S
  • 1 x stel asondersteuning M
  • 1 x stel assteun L
  • 1 x kamera -houer
  • 1 x lighouer
  • 1 x spieëlhouer

U kan ook die bykomende Tower -ontwerp gebruik om die komponente te volg:

  • 1 x toring (in plaas van 4 x staander)
  • 1 x Base S & 1x Base M (in plaas van 2 x Base S)

Ander onderdele:

  • Mylar
  • 1 x rubberband
  • 1 x ritssluiting
  • 12 M5 x 160 platkopskroewe
  • 2 M5 x 80 platkopskroewe

Gereedskap:

  • 3D -drukker
  • H3.0 Skroewedraaier
  • Warm gom geweer

Stap 1: Stap 1: Druk die onderdele af

As u toegang tot 'n 3D -drukker het, kan u pasgemaakte meganismes druk om die servo's te huisves en die drie hoofkomponente te monteer.

Vir die Face -komponent benodig ons:

  • 2 x staanplekke
  • 1 x basis L
  • 1 x roterende basis dubbel
  • 1 x stel asondersteuning M
  • 1 x kamera- en afstandsensorsteun

Die Light -komponent benodig:

  • 1 x Staan
  • 1 x Base S
  • 1 x roterende basis dubbel
  • 1 x stel asondersteuning S
  • 1 x lighouer

Die Mirror -komponente bestaan uit die volgende:

  • 1 x Staan
  • 1 x Base S
  • 1 x roterende basis enkel
  • 1 x stel assteun L
  • Spieëlhouer

Laastens kan u ook die toring wat u voorsien, druk.

As u dit as die basis vir al drie komponente wil gebruik, moet u die vektor wiskunde in die kode dienooreenkomstig aanpas. Koppel die Face -komponent verder met Base M in plaas van Base L met die toring.

Stap 2: Stap 2: Maak die spieël

Stap 2: Maak die spieël
Stap 2: Maak die spieël
Stap 2: Maak die spieël
Stap 2: Maak die spieël

Om u eie Mirror -komponent te maak, sny 'n sirkelvormige stuk Mylar en plaas dit bo -op die 3D -gedrukte spieëldeel. Gebruik dan eers 'n rekkie om dit vas te maak. Die rek moet in die groef rondom die komponent pas. Gebruik dan 'n ritssluiting om die verbinding saggies te beveilig, maar trek dit nog nie te hard aan nie. Nou kan u die Mylar begin rek totdat u 'n blink, spieëlende oppervlak kry. Draai laastens die rits vas en geniet die weerkaatsing van u pragtige gesig!

Stap 3: Stap 3: Monteer die komponente

Stap 3: Monteer die komponente
Stap 3: Monteer die komponente
Stap 3: Monteer die komponente
Stap 3: Monteer die komponente
Stap 3: Monteer die komponente
Stap 3: Monteer die komponente
Stap 3: Monteer die komponente
Stap 3: Monteer die komponente

Gesigskomponent

  1. Warmgom die vuis Servo in die ooreenstemmende uitsny van die roterende basis
  2. Plak die Servo -aansluiting in die groef aan die onderkant van die basisdeel
  3. Sit die twee basisdele bymekaar, sodat die Servo met die koppelaar in verbinding tree
  4. Gebruik die servo se skroef om die aansluiting aan die servo vas te maak
  5. Plak die tweede stuk stuk warm in die ooreenstemmende groef, bo -aan die assteun
  6. Gebruik 4 M5 -boute om die assteun aan die roterende basis vas te skroef
  7. Warmgom die tweede servo aan die houer
  8. Skuif die kamera op die penne
  9. Bevestig die ultrasoniese afstandsensor aan die houer, óf deur skroef of warm lijm
  10. Koppel die kamera / sensorhouer aan die assteun; die servo moet weer in die aansluitstuk skuif
  11. Gebruik die servo se skroef om die aansluiting aan die servo vas te maak
  12. Skroef die Raspberry Pi en die servo -bestuurder vas aan 'n stuk laaghout (maak seker dat die afstand tussen die gate van Base L pas)
  13. Skroef die Face -komponent vas met die M5 -boute

Spieëlkomponent

  1. Volg stappe 1 tot 7
  2. Koppel die spieël aan die assteun
  3. Plak 'n spieëlstaander op laaghout, sodat die Mirror en Face -komponent in lyn is
  4. Skroef die Mirror -komponent vas met die M5 -boute

Ligte komponent

  1. Volg stappe 1 tot 7 van bo
  2. Ryg die ligsensors deur die monteergate aan die onderkant van die skadukruis
  3. Verbind die skadukruis met die assteun, die servo moet weer in die aansluitstuk skuif
  4. Gebruik die servo se skroef om die aansluiting aan die servo vas te maak
  5. Plak 'n staander op laaghout sodat die komponent Light, Mirror en Face in lyn is en die Mirror tussen die Face en Light -komponente is
  6. Skroef die Face -komponent vas met die M5 -boute

*Alle komponente kan ook aan die toring geheg word, maar let op die groter kodering en bedradingskompleksiteit en druktyd. As u die toring wil gebruik, gebruik die Base M -deel in plaas van die Base L vir die Face -komponent en skroef die basisdele aan die toring vas met die ooglede en M5 -boute.

Stap 4: Stap 4: Stel die borde op

Stap 4: Stel die borde op
Stap 4: Stel die borde op
Stap 4: Stel die borde op
Stap 4: Stel die borde op
Stap 4: Stel die borde op
Stap 4: Stel die borde op

Hier is die bedradingsdiagram vir die drie komponente. Die sonopspoor werk op sy eie lus op die Arduino en stuur sy servoposisies via die seriële USB -poort na die Rasberry Pi. 'N Opsionele afstandsensor kan aan die voorkant van die pan/kantel piCamera gekoppel word om 'n meer robuuste triangulering van die teiken te skep. Hier sal ons hulle in 'n reguit lyn rangskik en net die vektore gemiddeld maak, sodat dit nie nodig is nie.

Vier servo's word gekoppel aan die PCA9685 servostuurprogramma wat deur 'n eksterne 5v -kragtoevoer aangedryf word. Twee van die servo's beheer die pan en kantel vir die gesigsporingskamera, terwyl die oorblywende twee die pan beheer en kantel vir die spieël.

Stap 5: Die kode:

Die kode
Die kode

Die kode vir hierdie projek kan in twee dele verdeel word: die Arduino-ligsporingskode en die python-gesigsporing/spieëlposisioneringskode.

Arduino -kode:

Hierdie kode is 'n effens aangepaste weergawe van die sonopsporingsprojek van geobruce. Dit is 'n uitstekende verwysing om meer te wete te kom oor die sonopsporingskomponent, en meer besonderhede kan gevind word op hierdie instruksiesblad. Die ligintensiteitswaardes word van die 4 foto-weerstande ingeneem en gemiddeld om die helderste gebied te vind en die servo's dienooreenkomstig aan te pas. Ons skryf dan die servo hoekwaardes uit na die seriële poort.

Python -kode:

Hierdie kode integreer oop CV om 'n kantelmeganisme vir die opsporing van die gesig te skep, sowel as om die servo's vir die spieël te bestuur. U sal 'n paar stappe moet doen om die oop CV op u Framboos -pi af te laai. Daar is baie hulpbronne hiervoor, maar ek hou baie van die een van pyimagesearch. U kan hier 'n volledige deurloop van hierdie proses vind. Opmerking: ons het die oop CV -biblioteke afgelaai in 'n virtuele omgewing waarop ons die hele kode gebruik, as u besluit om dit te doen, moet u al die afhanklikes aflaai in die virtuele omgewing waarop u die program bestuur en nie die Pi self.

Nadat u die oop CV afgelaai het, benodig hierdie kode ook 'n paar meer afhanklikes (geïnstalleer in die spesifieke omgewing wat u bestuur):

  • Adafruit ServoKit: 'n Volledige bladsy oor die aflaai -proses op die framboos Pi kan hier gevind word.
  • imutils
  • gevoelloos
  • gpiozero (as afstandsensor gebruik word)

Vir die opsporing van die gesig benodig die skrip 'n argument (--faces), 'n.xml-lêer wat openCv gebruik om gesigte te vind. U moet hierdie lêer in dieselfde gids as die python -script plaas. Ek het dit in die downloads verskaf, en dit kan ook hier gevind word.

Stap 6: Gebruik die kode

Die bestuur van die kode
Die bestuur van die kode
Die bestuur van die kode
Die bestuur van die kode

As u al die kode in dieselfde gids afgelaai het en u virtuele omgewing met 'n oop CV opgestel het, is u gereed om dit uit te voer.

  1. Maak die opdragprompt op u pi oop
  2. Tik workon cv (of watter naam u ook al gekies het vir u virtuele omgewing)
  3. Verander die gids na waar u u lêers gestoor het (cd (pad na lêers))
  4. Die laaste reël voer die program uit en spesifiseer die haar cascade -lêer. (python Face3.py --faces haarcascade_frontalface_default.xml)

As u dit uitvoer, moet u 'n videostroom van die picam op die skerm sien verskyn, en die opdragprompt begin die servo -waardes uit al ses servo's druk.

En jy is klaar! Afhangende van die kwaliteit van die servo's wat u het, wil u dit spesifiek kalibreer om die akkuraatheid van u stelsel te verbeter. Uiteindelik moes ons al die PWM -reekse aanpas sodat hulle behoorlik kon werk.

Aanbeveel: