Taula de continguts:

MOLT: 6 passos
MOLT: 6 passos

Vídeo: MOLT: 6 passos

Vídeo: MOLT: 6 passos
Vídeo: НОЧЬ В СТРАШНОМ ДОМЕ С ДЕМОНОМ / НЕ СТОИЛО СЮДА ПРИХОДИТЬ 2024, Desembre
Anonim
MOLT
MOLT
MOLT
MOLT

Ouch és el vostre ajudant personal per a la cataracta inútil omnidireccional. Mentre el reconeixement facial arriba al Zeitgeist, MOLT et colpeja! OUCH no només sap com es veu, també sap ser molt molest! A diferència del germà gran, aquesta màquina és molt visible i només compleix un propòsit: fer que la vostra vida sigui més petita. Alguna vegada has oblidat les ulleres de sol a casa i t’ha sorprès un reflex brillant? OUCH us permet reviure aquest moment una vegada i una altra. Si reflecteix la llum de la font de llum més brillant que us envolta directament a la cara, s’assegurarà que no gaudireu ni un moment al seu voltant.

Compte, o MOLT pot ser l’últim que veuràs!

El projecte es va dur a terme com a part del seminari de disseny computacional i fabricació digital del programa de màsters ITECH.

August Lehrecke | Max Zorn

Subministraments

Parts electròniques:

Arduino

  • Arduino UNO

    • 2-Reely Mini-Servo S0009
    • 4x fotoresistències
    • 4x resistències de 10k
    • 2x potenciòmetres
    • 1x cable d'impressora USB

Raspberry Pi

  • Rasberry Pi 4

    • 1x RaspiCam
    • 4x Reely Mini-Servo S0009
    • 1 controlador de servo PWM de 16 canals PCA9685 de 16 canals
    • Alimentació externa de 5v CC
    • 1 alimentació Rasberry Pi 5.1V - 3Amp (o equivalent extern)
    • 1x Ultraschallsensor MAKERFACTORY HC-SR05 (MF-6402156)
    • 1x resistència de 470 Ohm
    • Resistència de 1x 320 Ohm

Parts impreses en 3D:

MOLTES vénen en diverses formes i mides. Per a aquesta versió, hem utilitzat una impressora 3D per imprimir mecanismes personalitzats.

  • 4 x Stand
  • 2 x Base S
  • 1 x Base L.
  • 2 x base de rotació doble
  • 1 x base de rotació individual
  • 1 x Conjunt de suport Eix S
  • 1 x Conjunt de suport de l'eix M
  • 1 x Conjunt de suport Eix L
  • 1 x muntatge de càmera
  • 1 x muntatge de llum
  • 1 x muntatge de mirall

Opcionalment, podeu utilitzar el disseny de la torre proporcionat, per fer servir els components a:

  • 1 x torre (en lloc de 4 x suport)
  • 1 x Base S i 1x Base M (en lloc de 2 x Base S)

Altres parts:

  • Mylar
  • 1 x goma elàstica
  • 1 x corbata amb cremallera
  • 12 cargols de capçal pla M5 x 160
  • 2 cargols de capçal pla M5 x 80

Eines:

  • Impressora 3D
  • Tornavís H3.0
  • Pistola de cola calenta

Pas 1: Pas 1: Impressió de les peces

Si teniu accés a una impressora 3D, podeu imprimir mecanismes personalitzats per allotjar els Servos i muntar els tres components principals.

Per al component Face, necessitem:

  • 2 x estands
  • 1 x Base L.
  • 1 x base giratòria doble
  • 1 x Conjunt de suport de l'eix M
  • 1 x Càmera i muntatge del sensor de distància

El component Light requereix:

  • 1 x suport
  • 1 x Base S
  • 1 x base giratòria doble
  • 1 x Conjunt de suport Eix S
  • 1 x muntatge de llum

Els components Mirror consisteixen en el següent:

  • 1 x suport
  • 1 x Base S
  • 1 x base giratòria individual
  • 1 x Conjunt de suport Eix L
  • Mirall Mount

Per últim, també podeu imprimir la torre proporcionada.

Si el voleu utilitzar com a base per als tres components, haureu d’ajustar les matemàtiques vectorials al codi en conseqüència. A més, connecteu el component Face amb la Base M en lloc de la Base L a la torre.

Pas 2: Pas 2: fer el mirall

Pas 2: fer el mirall
Pas 2: fer el mirall
Pas 2: fer el mirall
Pas 2: fer el mirall

Per crear el vostre propi component Mirall, talleu un tros circular de Mylar i col·loqueu-lo a la part superior del mirall imprès en 3D. Després, primer utilitzeu una goma per fixar-la al seu lloc. La banda de goma ha d’adaptar-se a l’interior de la ranura al voltant del component. A continuació, utilitzeu una corbata amb cremallera per assegurar suaument la connexió, encara no la torneu massa. Ara podeu començar a estirar el Mylar fins obtenir una superfície brillant i reflectant. Per últim, estrenyeu la corbata amb cremallera i gaudiu del reflex de la vostra bella cara.

Pas 3: Pas 3: Muntatge dels components

Pas 3: Muntatge dels components
Pas 3: Muntatge dels components
Pas 3: Muntatge dels components
Pas 3: Muntatge dels components
Pas 3: Muntatge dels components
Pas 3: Muntatge dels components
Pas 3: Muntatge dels components
Pas 3: Muntatge dels components

Component de la cara

  1. Enganxeu calent el puny Servo en el retall adequat de la base giratòria
  2. Enganxeu el connector Servo a la ranura, situada a la part inferior de la part base
  3. Ajunteu les dues parts de la base de manera que el Servo s'enclavi amb el connector
  4. Utilitzeu el cargol del servo per fixar el connector al servo
  5. Enganxeu en calent la segona peça del connector a la ranura corresponent, situada a la part superior del suport de l'eix
  6. Utilitzeu 4 perns M5 per cargolar el suport de l’eix a la base giratòria
  7. Pega calenta el segon Servo a la muntura
  8. Feu lliscar la càmera sobre els pins
  9. Connecteu el sensor de distància ultrasònic a la muntura, mitjançant cargols o encolats en calent
  10. Connecteu el muntatge de la càmera / sensor al suport de l'eix, el Servo ha de tornar a lliscar cap a la peça del connector
  11. Utilitzeu el cargol del servo per fixar el connector al servo
  12. Cargoleu el Raspberry Pi i el controlador de servo a un tros de fusta contraxapada (assegureu-vos que l’espaiat coincideixi amb els forats de la base L)
  13. Enrosqueu el component de la cara als suports mitjançant cargols M5

Component de mirall

  1. Seguiu els passos 1 a 7
  2. Connecteu el mirall al suport de l'eix
  3. Enganxeu un suport del mirall a la fusta contraxapada de manera que el component Mirall i cara estiguin alineats
  4. Cargoleu el component Mirall al suport mitjançant cargols M5

Component lleuger

  1. Seguiu els passos 1 a 7 des de dalt
  2. Enfileu els sensors de llum pels orificis de muntatge a la part inferior de la creu d’ombrejat
  3. Connecteu la creu d’ombreig al suport de l’eix, el Servo ha de tornar a lliscar cap a la peça del connector
  4. Utilitzeu el cargol del servo per fixar el connector al servo
  5. Enganxeu un suport a la fusta contraxapada de manera que el component Llum, Mirall i Cara estiguin alineats i el Mirall estigui entre els components Cara i Llum.
  6. Enrosqueu el component de la cara als suports mitjançant cargols M5

* Tots els components també es podrien connectar a la torre, si us plau, tingueu en compte la complexitat de codificació i cablejat i el temps d'impressió. Si voleu utilitzar la torre, utilitzeu la part Base M en lloc de la Base L per al component Face i cargoleu les parts Base a la torre mitjançant els traus i els perns M5.

Pas 4: Pas 4: configureu els taulers

Pas 4: configureu els taulers
Pas 4: configureu els taulers
Pas 4: configureu els taulers
Pas 4: configureu els taulers
Pas 4: configureu els taulers
Pas 4: configureu els taulers

Aquí teniu el diagrama de cablejat dels tres components. El rastrejador solar actua sobre el seu propi bucle a l'Arduino i envia les seves posicions de servo al Rasberry Pi mitjançant el port USB sèrie. Es pot connectar un sensor de distància opcional a la part frontal de la càmera pi / tilt per crear una triangulació més robusta de l'objectiu. Aquí els alinearem en línia recta i només farem una mitjana dels vectors perquè no sigui necessari.

Quatre servos estan connectats al servo controlador PCA9685 que s’alimenta amb una font d’alimentació externa de 5V. Dos dels servos controlen la panoràmica i la inclinació de la càmera de seguiment facial, mentre que els dos restants controlen la panoràmica i la inclinació del mirall.

Pas 5: el codi:

El codi
El codi

El codi d’aquest projecte es pot desglossar en dues parts: el codi de seguiment de llum Arduino i el codi de posicionament de mirall i de seguiment de cares de Python.

Codi Arduino:

Aquest codi és una versió lleugerament modificada del projecte de seguiment solar de geobruce. És una gran referència per obtenir més informació sobre el component de seguiment solar i es poden trobar més detalls en aquesta pàgina instructiva. Els valors d’intensitat de la llum es prenen de les 4 resistències fotogràfiques i es fan una mitjana per trobar la zona més brillant i ajustar els servos en conseqüència. A continuació, escrivim els valors d'angle de servo al port sèrie.

Codi Python:

Aquest codi integra un CV obert per crear un mecanisme d’inclinació panoràmica de seguiment facial, així com accionar els servos del mirall. Haureu de seguir alguns passos per descarregar el CV obert al vostre Raspberry pi. Hi ha molts recursos per a això, però m'agrada molt el de pyimagesearch. Podeu trobar un recorregut complet d’aquest procés aquí. Nota: Hem descarregat les biblioteques de CV obertes a un entorn virtual on executem tot el codi, si heu decidit fer-ho, assegureu-vos que descarregueu totes les dependències a l’entorn virtual on esteu executant el programa i no el mateix Pi.

Un cop hàgiu descarregat el CV obert, aquest codi també requerirà algunes dependències més (instal·lades a l'entorn específic que esteu executant) per executar:

  • Adafruit ServoKit: aquí es pot trobar una pàgina completa sobre el procés de descàrrega al raspberry Pi.
  • imutils
  • numpy
  • gpiozero (si s’utilitza el sensor de distància)

Per al seguiment de cares, l'script requereix un argument (--faces) que és un fitxer.xml que utilitza openCv per trobar cares. Haureu de posar aquest fitxer al mateix directori que l’escriptura python. Ho he proporcionat a les descàrregues i també es pot trobar aquí.

Pas 6: Execució del codi

Execució del codi
Execució del codi
Execució del codi
Execució del codi

Un cop hàgiu descarregat tot el codi al mateix directori i hàgiu configurat l'entorn virtual amb un CV obert, ja podreu executar-lo.

  1. Obriu el símbol del sistema al vostre pi
  2. Escriviu workon cv (o el nom que trieu per al vostre entorn virtual)
  3. Canvieu el directori on teniu els vostres fitxers emmagatzemats (cd (camí cap als fitxers))
  4. La darrera línia executa el programa i especifica el fitxer en cascada haar. (Python Face3.py --faces haarcascade_frontalface_default.xml)

En executar-lo, hauríeu de veure un flux de vídeo des del picam a la pantalla i el símbol del sistema començarà a imprimir els valors del servo dels sis servos.

I ja està! Depenent de la qualitat dels servos que tingueu, és possible que vulgueu calibrar-los específicament per millorar la precisió del vostre sistema. Vam acabar per ajustar tots els intervals de PWM perquè funcionessin correctament.

Recomanat: