Table des matières:
- Étape 1: L'électronique du robot
- Étape 2: Configuration du Pi
- Étape 3: Préparation de l'appareil photo
- Étape 4: Installation du logiciel
- Étape 5: Contrôleur
- Étape 6: Le code du robot
- Étape 7: Code du contrôleur
- Étape 8: Exécuter le Raspberry SPy
Vidéo: Robot espion Raspberry : 8 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
Ce projet vous permet de piloter un robot via une page Web et de visionner un livestream. Il peut être utilisé pour espionner les animaux domestiques, s'assurer que rien ne brûle dans votre four et même observer les oiseaux ! DFRobot a fourni le Raspberry Pi 3 et le module caméra Raspberry Pi.
Étape 1: L'électronique du robot
J'ai commencé par assembler le kit châssis 2WD MiniQ de DFRobot. J'ai glissé les roues sur les arbres du moteur, puis je les ai insérées dans des supports et je les ai fixées au châssis. Enfin, j'ai ajouté les supports métalliques. Il était maintenant temps de construire la carte principale. Le pilote du moteur L293d a été soudé en place, ainsi que les fils allant aux broches GPIO du Raspberry Pi. Ensuite, j'ai soudé un connecteur pour la batterie, car cela fournira l'alimentation principale. Une fois la source d'alimentation ajoutée, j'ai installé un régulateur 5V.
Étape 2: Configuration du Pi
DFRobot m'a contacté et m'a envoyé son module de caméra Raspberry Pi 3 et Raspberry Pi. Donc, après avoir ouvert les boîtes, je me suis mis au travail en configurant la carte SD. Je suis d'abord allé sur la page de téléchargement de Raspberry Pi et j'ai téléchargé la version la plus récente de Raspbian. J'ai ensuite extrait le fichier et l'ai placé dans un répertoire pratique. Vous ne pouvez pas simplement copier/coller un fichier.img sur une carte SD, vous devez le "graver" sur la carte. Vous pouvez télécharger un utilitaire de gravure comme Etcher.io pour transférer facilement l'image du système d'exploitation. Une fois le fichier.img sur ma carte SD, je l'ai inséré dans le Raspberry Pi et lui ai donné le pouvoir. Après environ 50 secondes, j'ai débranché le cordon et retiré la carte SD. Ensuite, j'ai remis la carte SD dans mon PC et suis allé dans le répertoire "boot". J'ai ouvert le bloc-notes et l'ai enregistré en tant que fichier vierge nommé "ssh" sans extension. Il y avait aussi un fichier que j'ai ajouté appelé "wpa_supplicant.conf" et j'y ai mis ce texte:
réseau={ ssid= psk= }
Ensuite, j'ai sauvegardé et éjecté la carte et je l'ai remise dans le Raspberry Pi 3. Cela devrait maintenant permettre l'utilisation de SSH et la connexion au WiFi.
Étape 3: Préparation de l'appareil photo
Par défaut, la caméra est désactivée sur le Pi, vous devez donc ouvrir le terminal de type sudo raspi-config pour faire apparaître le menu. Allez dans "options d'interfaçage", puis activez la caméra. Maintenant, sélectionnez simplement "Terminer" et insérez le câble plat du module de caméra dans la zone correcte du Pi.
Étape 4: Installation du logiciel
Il existe plusieurs logiciels différents qui peuvent diffuser de la vidéo, tels que vlc et motion, mais j'ai décidé d'utiliser le mjpeg-streamer en raison de sa faible latence et de sa facilité d'installation. Selon les instructions sur le site, faites un clone git https://github.com/jacksonliam/mjpg-streamer.git dans un dossier, puis tapez sudo apt-get install cmake libjpeg8-dev pour installer les bibliothèques nécessaires. Changez votre répertoire dans le dossier que vous avez téléchargé, puis tapez make suivi de sudo make install pour compiler le logiciel. Enfin, entrez export LD_LIBRARY_PATH=. et pour l'exécuter, tapez./mjpg_streamer -o "output_http.so -w./www" -i "input_raspicam.so" Vous pouvez accéder au flux en vous rendant sur https://:8080/stream.html pour afficher le flux.
Étape 5: Contrôleur
Puis vint la partie sur la façon de contrôler un Raspberry Pi via WiFi, car Bluetooth a trop peu de portée. J'ai décidé d'utiliser un serveur Flask fonctionnant sur le Raspberry PI et un module ESP8266 ESP12E pour lui envoyer des données. L'ESP8266 n'a qu'une seule entrée analogique, ce qui signifie que je ne pouvais pas utiliser le joystick directement, car il prend deux entrées analogiques. La meilleure option était l'ADS1115, qui est un appareil I2C qui lit les signaux analogiques à 16 bits de résolution. J'ai simplement connecté SDA à 4 et SCL à 5, ainsi que VCC et GND. L'axe X du joystick se connecte à A0 sur l'ADS1115 et l'axe Y se connecte à A1. MAIS, j'ai accidentellement grillé l'ADS1115, j'ai donc dû recourir à la meilleure chose: les boutons ! Alors maintenant, ma configuration est une carte de développement Sparkfun Thing ESP8266 avec 3 boutons - avant, droite et gauche. Désormais, chaque fois que l'on appuie sur un bouton, il envoie des données pour faire tourner les roues dans cette direction.
Étape 6: Le code du robot
J'ai fait un projet précédent qui utilisait la bibliothèque GPIO PWM du Pi pour contrôler les moteurs via json, j'ai donc simplement réutilisé le code pour accepter les données via une application Flask à la place. Flask est une bibliothèque Python qui transforme essentiellement votre Pi en un serveur Web capable d'envoyer et de recevoir des données. En utilisant PWM, les moteurs peuvent être contrôlés avec une plus grande précision par rapport à l'entraînement du réservoir. Cela signifie également que le robot peut aller à des vitesses variables plutôt qu'à une vitesse fixe. Mon application de flacon est configurée pour modifier le PWM des moteurs une fois qu'elle reçoit les données d'une requête GET via http de l'ESP12e. Il utilise également la bibliothèque subprocess. Popen pour exécuter le script de diffusion Web en arrière-plan. J'ai joint le code à la page du projet, donc tout ce qui est nécessaire est un téléchargement.
Étape 7: Code du contrôleur
Le code était assez simple, il suffit de prendre les lectures des 3 broches, de les exécuter à travers certaines instructions if pour déterminer la direction de la roue, et enfin d'envoyer ces valeurs au Raspberry Pi. L'ajout de la carte ESP8266 pour l'IDE Arduino est fourni avec la bibliothèque HTTPClient, qui gère les en-têtes et l'envoi de données. Le serveur Flask doit recevoir des données via un appel POST, donc le code démarre une connexion avec le serveur Web Raspberry Pi, puis ajoute un en-tête aux données indiquant qu'elles sont encodées JSON, et enfin il envoie les données sous la forme d'un objet JSON. J'ai ajouté un délai de 40 ms pour éviter que le Raspberry Pi ne soit surchargé de données.
Étape 8: Exécuter le Raspberry SPy
Il suffit de taper sudo python.py ! Vous devriez voir la caméra s'allumer, et en allant à l'adresse web du pi avec le port 8080 le flux devrait être visible. Maintenant, vous pouvez utiliser le contrôleur n'importe où dans la maison et avoir également un flux en direct.
Conseillé:
Modèle de grue sans fil (SMART BOT) avec caméra espion sur le réseau (wifi ou hotspot): 8 étapes
Modèle de grue sans fil (SMART BOT) avec caméra d'espionnage sur le réseau (wifi ou hotspot) : pour réaliser n'importe quel projet, nous passons par quelques étapes :
Faire une caméra espion avec une webcam : 6 étapes
Faire une caméra espion avec une webcam : Bonjour, je m'appelle Sebastian et c'est mon premier Instructable, mon anglais est mauvais, donc un traducteur l'utilisera pour qu'il reste le mieux possible, alors si le mod ou l'administrateur peut déjà le corriger, merci vous beaucoup! Bon pour ce projet, nous wi
Piratez l'oreille d'espion et apprenez à inverser l'ingénierie d'un circuit : 4 étapes (avec photos)
Piratez l'oreille d'espion et apprenez à inverser l'ingénierie d'un circuit : cette instructable présente la vénérable oreille d'espion dans les détails et ma façon de procéder à l'ingénierie inverse d'un circuit. Pourquoi cet appareil mérite-t-il son propre instructable ? : - Vous pouvez acheter une oreille d'espion pour un dollar ! -Il peut amplifier les sons jusqu'à 60 dB ou un facteur de 1000
Caméra espion déclenchée par le mouvement : 5 étapes (avec photos)
Caméra espion déclenchée par le mouvement : vous pouvez désormais effectuer une surveillance secrète avec cette caméra « attrapée en mouvement » caméra vidéo espion qui enregistre la vidéo et l'audio cachés. Voyez-le en action et les résultats des tests
Télécommande espion automatique : 8 étapes (avec photos)
Télécommande espion automatique : Bien sûr, la télécommande espion Thinkgeek Micro originale était amusante pendant un certain temps, mais il y avait un inconvénient majeur. Afin de faire des ravages sur la télévision de quelqu'un d'autre, vous deviez être à portée visuelle. Au bout d'un moment, votre proie se rendrait compte que vous y étiez pour quelque chose