Table des matières:
- Fournitures
- Étape 1: Étape 1: Impression des pièces
- Étape 2: Étape 2: Faire le miroir
- Étape 3: Étape 3: Assemblage des composants
- Étape 4: Étape 4: Configurer les cartes
- Étape 5: Le code:
- Étape 6: Exécuter le code
Vidéo: Aïe : 6 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:06
Aïe est votre assistant personnel omnidirectionnel pour la cataracte inutile. Alors que la reconnaissance faciale frappe le Zeitgeist, OUCH vous frappe ! OUCH ne sait pas seulement à quoi tu ressembles, il sait aussi être très agaçant ! Contrairement à Big Brother, cette machine est très visible et ne remplit qu'un seul but: vous rendre la vie un peu plus merdique. Avez-vous déjà oublié vos lunettes de soleil à la maison et été surpris par un reflet lumineux ? OUCH vous permet de revivre ce moment encore et encore. En réfléchissant la lumière de la source de lumière la plus brillante autour de vous directement dans votre visage, il s'assurera que vous ne profiterez pas d'un seul instant autour d'elle.
Attention, ou OUCH pourrait être la dernière chose que vous verrez jamais !
Le projet a été mené dans le cadre du séminaire Computational Design and Digital Fabrication du programme de maîtrise ITECH.
Août Lehrecke | Max Zorn
Fournitures
Parties éléctroniques:
Arduino
-
Arduino UNO
- 2x Mini-Servo Reely S0009
- 4x photorésistances
- 4x 10k résistances
- 2x potentiomètres
- 1x câble d'imprimante USB
Tarte aux framboises
-
Framboise Pi 4
- 1x RaspiCam
- 4x Mini-Servo Reely S0009
- 1x pilote de servomoteur PWM 12 bits PCA9685 16 canaux
- Alimentation externe 5v CC
- 1x alimentation Rasberry Pi 5.1V - 3Amp (ou équivalent externe)
- 1x FABRICANT HC-SR05 Ultraschallsensor (MF-6402156)
- 1x résistance 470 Ohm
- 1x résistance 320 Ohm
Pièces imprimées en 3D:
Les OUCH se présentent sous différentes formes et tailles. Pour cette version, nous avons utilisé une imprimante 3D pour imprimer des mécanismes personnalisés.
- 4 supports
- 2 x Base S
- 1 x socle L
- 2 x base de rotation double
- 1 x base de rotation simple
- 1 x ensemble de support d'axe S
- 1 x ensemble de support d'axe M
- 1 x ensemble de support d'axe L
- 1 x support de caméra
- 1 x support de lumière
- 1 x support de miroir
En option, vous pouvez utiliser la conception de tour fournie, pour assembler les composants pour:
- 1 x tour (au lieu de 4 x support)
- 1 x Base S & 1x Base M (au lieu de 2 x Base S)
Autres parties:
- Mylar
- 1 x élastique
- 1 x cravate zippée
- 12 vis à tête plate M5 x 160
- 2 vis à tête plate M5 x 80
Outils:
- Imprimante 3D
- Tournevis H3.0
- Pistolet à colle chaude
Étape 1: Étape 1: Impression des pièces
Si vous avez accès à une imprimante 3D, vous pouvez imprimer des mécanismes personnalisés pour loger les servos et monter les trois composants principaux.
Pour le composant Face, nous avons besoin de:
- 2 x supports
- 1 x socle L
- 1 x base rotative double
- 1 x ensemble de support d'axe M
- 1 x support de caméra et de capteur de distance
Le composant Lumière nécessite:
- 1 x support
- 1 x socle S
- 1 x base rotative double
- 1 x ensemble de support d'axe S
- 1 x support de lumière
Les composants du miroir se composent des éléments suivants:
- 1 x support
- 1 x socle S
- 1 x base rotative simple
- 1 x ensemble de support d'axe L
- Support de miroir
Enfin, vous pouvez également imprimer la tour fournie.
Si vous souhaitez l'utiliser comme base pour les trois composants, vous devrez ajuster les mathématiques vectorielles dans le code en conséquence. De plus, connectez le composant Face avec la base M au lieu de la base L à la tour.
Étape 2: Étape 2: Faire le miroir
Pour créer votre propre composant de miroir, coupez un morceau circulaire de Mylar et placez-le sur la partie miroir imprimée en 3D. Ensuite, utilisez d'abord un élastique pour le fixer en place. L'élastique doit s'adapter à l'intérieur de la rainure autour du composant. Utilisez ensuite une attache zippée pour sécuriser délicatement la connexion, ne la serrez pas trop pour le moment. Vous pouvez maintenant commencer à étirer le Mylar jusqu'à obtenir une surface brillante et réfléchissante. Enfin, serrez la fermeture éclair et profitez du reflet de votre beau visage !
Étape 3: Étape 3: Assemblage des composants
Composant de visage
- Collez à chaud le premier servo dans la découpe correspondante de la base rotative
- Collez le connecteur Servo dans la rainure, située au bas de la partie de base
- Assemblez les deux pièces de base, de sorte que le Servo s'emboîte avec le connecteur
- Utilisez la vis du servo pour fixer le connecteur au servo
- Collez à chaud la deuxième pièce de connecteur dans la rainure correspondante, située en haut du support d'axe
- Utiliser 4 boulons M5 pour visser le support d'axe à la base rotative
- Collez à chaud le deuxième servo sur le support
- Faites glisser la caméra sur les broches
- Fixez le capteur de distance à ultrasons au support, soit par vissage, soit par collage à chaud
- Connectez le support de caméra / capteur au support d'axe, le servo doit à nouveau glisser dans la pièce de connecteur
- Utilisez la vis du servo pour fixer le connecteur au servo
- Vissez le Raspberry Pi et le servodriver sur un morceau de contreplaqué (Assurez-vous que l'espacement correspond aux trous de la Base L)
- Vissez le composant Face aux supports, à l'aide de boulons M5
Composant miroir
- Suivez les étapes 1 à 7
- Connectez le miroir au support d'axe
- Collez un support de miroir sur du contreplaqué, de sorte que les composants Miroir et Face soient alignés
- Vissez le composant Miroir au support, à l'aide de boulons M5
Composant léger
- Suivez les étapes 1 à 7 ci-dessus
- Faites passer les capteurs de lumière à travers les trous de montage au bas de la croix d'ombrage
- Connectez la croix d'ombrage au support d'axe, le servo doit à nouveau glisser dans la pièce de connecteur
- Utilisez la vis du servo pour fixer le connecteur au servo
- Collez un support sur du contreplaqué, de sorte que les composants Light, Mirror et Face soient alignés et que le Mirror soit entre les composants Face et Light
- Vissez le composant Face aux supports, à l'aide de boulons M5
*Tous les composants peuvent également être attachés à la tour, veuillez cependant tenir compte de la complexité accrue du codage et du câblage et du temps d'impression. Si vous souhaitez utiliser la tour, utilisez la pièce Base M au lieu de la Base L pour le composant Face et vissez les pièces Base à la tour à l'aide des œillets et des boulons M5.
Étape 4: Étape 4: Configurer les cartes
Voici le schéma de câblage des trois composants. Le tracker solaire agit sur sa propre boucle sur l'Arduino et envoie ses positions d'asservissement au Rasberry Pi via le port USB série. Un capteur de distance en option peut être connecté à l'avant de la piCamera panoramique/inclinable pour créer une triangulation plus robuste de la cible. Ici, nous allons les aligner en ligne droite et faire la moyenne des vecteurs afin que ce ne soit pas nécessaire.
Quatre servos sont connectés au servodriver PCA9685 qui est alimenté par une alimentation externe 5v. Deux des servos contrôlent le panoramique et l'inclinaison de la caméra de suivi du visage, tandis que les deux autres contrôlent le panoramique et l'inclinaison du miroir.
Étape 5: Le code:
Le code de ce projet peut être divisé en deux parties: le code de suivi de la lumière Arduino et le code de suivi du visage/de positionnement du miroir python.
Code Arduino:
Ce code est une version légèrement modifiée du projet de suivi du soleil de geobruce. C'est une excellente référence pour en savoir plus sur le composant de suivi solaire et plus de détails peuvent être trouvés sur cette page instructables. Les valeurs d'intensité lumineuse sont extraites des 4 photorésistances et moyennées pour trouver la zone la plus lumineuse et ajuster les servos en conséquence. Nous écrivons ensuite les valeurs d'angle d'asservissement sur le port série.
Code Python:
Ce code intègre un CV ouvert pour créer un mécanisme d'inclinaison panoramique et de suivi du visage ainsi que pour piloter les servos du miroir. Vous devrez suivre quelques étapes pour télécharger un CV ouvert sur votre Raspberry pi. Il existe de nombreuses ressources pour cela, mais j'aime beaucoup celle de pyimagesearch. Une description complète de ce processus peut être trouvée ici. Remarque: Nous avons téléchargé les bibliothèques de CV ouvertes dans un environnement virtuel sur lequel nous exécutons tout le code. Si vous décidez de le faire, assurez-vous de télécharger toutes les dépendances dans l'environnement virtuel sur lequel vous exécutez le programme et non le Pi lui-même.
Une fois que vous avez téléchargé Open CV, ce code nécessitera également quelques dépendances supplémentaires (installées sur l'environnement spécifique que vous exécutez) pour s'exécuter:
- Adafruit ServoKit: Une page complète sur le processus de téléchargement sur le Raspberry Pi se trouve ici.
- imutils
- numpy
- gpiozero (si vous utilisez un capteur de distance)
Pour le suivi des visages, le script nécessite un argument (--faces) qui est un fichier.xml qu'openCv utilise pour trouver des visages. Vous devrez mettre ce fichier dans le même répertoire que le script python. Je l'ai fourni dans les téléchargements et il peut également être trouvé ici.
Étape 6: Exécuter le code
Une fois que vous avez téléchargé tout le code dans le même répertoire et configuré votre environnement virtuel avec un CV ouvert, vous êtes prêt à l'exécuter.
- Ouvrez l'invite de commande sur votre pi
- Tapez workon cv (ou le nom que vous avez choisi pour votre environnement virtuel)
- Changez le répertoire dans lequel vous avez vos fichiers stockés (cd (chemin d'accès aux fichiers))
- La dernière ligne exécute le programme et spécifie le fichier haar cascade. (python Face3.py --faces haarcascade_frontalface_default.xml)
Lorsque vous l'exécutez, vous devriez voir un flux vidéo de la picam apparaître à l'écran et l'invite de commande commencera à imprimer les valeurs des servos des six servos.
Et vous avez terminé ! Selon la qualité des servos dont vous disposez, vous souhaiterez peut-être les calibrer chacun spécifiquement pour améliorer la précision de votre système. Nous avons fini par devoir modifier toutes les plages PWM pour qu'elles fonctionnent correctement.
Conseillé:
Comment fabriquer une antenne double biquade 4G LTE en quelques étapes faciles : 3 étapes
Comment créer une antenne double biquade 4G LTE Étapes faciles : La plupart du temps, je n'ai pas une bonne force de signal pour mes travaux quotidiens. Donc. Je recherche et essaye différents types d'antenne mais ne fonctionne pas. Après une perte de temps, j'ai trouvé une antenne que j'espère fabriquer et tester, car ce n'est pas un principe de construction
Game Design dans Flick en 5 étapes : 5 étapes
Game Design dans Flick en 5 étapes : Flick est un moyen très simple de créer un jeu, en particulier quelque chose comme un puzzle, un roman visuel ou un jeu d'aventure
Système d'alerte de stationnement en marche arrière Arduino - Étapes par étape : 4 étapes
Système d'alerte de stationnement en marche arrière Arduino | Étapes par étape : dans ce projet, je vais concevoir un circuit de capteur de stationnement inversé pour voiture Arduino simple à l'aide d'un capteur à ultrasons Arduino UNO et HC-SR04. Ce système d'alerte de marche arrière basé sur Arduino peut être utilisé pour une navigation autonome, une télémétrie de robot et d'autres r
Détection de visage sur Raspberry Pi 4B en 3 étapes : 3 étapes
Détection de visage sur Raspberry Pi 4B en 3 étapes : dans ce Instructable, nous allons effectuer une détection de visage sur Raspberry Pi 4 avec Shunya O/S en utilisant la bibliothèque Shunyaface. Shunyaface est une bibliothèque de reconnaissance/détection de visage. Le projet vise à atteindre la vitesse de détection et de reconnaissance la plus rapide avec
Miroir de vanité de bricolage en étapes faciles (à l'aide de bandes lumineuses à LED): 4 étapes
Miroir de vanité DIY en étapes faciles (à l'aide de bandes lumineuses à LED) : Dans cet article, j'ai fabriqué un miroir de vanité DIY à l'aide des bandes LED. C'est vraiment cool et vous devez les essayer aussi