Table des matières:
- Étape 1: Création d'un design
- Étape 2: Création du modèle Fusion 360
- Étape 3: Configuration du Pi
- Étape 4: Installation du logiciel
- Étape 5: Configuration d'un serveur Web
- Étape 6: Contrôler les E/S
Vidéo: Distributeur de friandises IoT pour animaux de compagnie : 7 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
J'ai deux chats, et devoir leur donner des friandises environ 3 fois par jour est devenu assez ennuyeux. Ils me regardaient avec leurs visages mignons et leurs regards intenses, puis couraient vers une boîte pleine de chats verts, miaulant et suppliant pour eux. J'avais décidé que ça suffisait. Plus besoin de vous lever pour donner quelques friandises à un chat. Le moment était venu pour une machine de distribution de friandises, car comme le dit l'adage: "Les programmeurs existent pour faire des choses compliquées pour faire des choses simples moins."
DFRobot a parrainé ce projet.
Liste des pièces:
- DFRobot Raspberry Pi 3
- Module de caméra DFRobot Raspberry Pi
- Moteur pas à pas DFRobot avec engrenage planétaire
- I2C LCD 16x2
- Barrel Jack à Terminal
- Pilote de moteur pas à pas DRV8825
- Condensateur 100 µF
- Arduino UNO et Genuino UNO
- Cavaliers (génériques)
Étape 1: Création d'un design
Le premier était le choix de la façon de contrôler ma machine nouvellement pensée. Bluetooth aurait eu une portée trop courte, à seulement 30 pieds sans obstruction. Avec ces informations, j'ai choisi d'utiliser le WiFi. Mais maintenant, comment utiliser le WiFi pour contrôler la machine ? Un Raspberry Pi 3 a des capacités WiFi intégrées, me permettant d'utiliser Flask pour héberger une page Web. Ensuite était le sujet de l'enclos et comment distribuer des friandises. J'ai opté pour une conception de roue rotative, où les friandises tomberaient en petites sections, seraient tournées, puis les friandises tomberaient sur une rampe et se déplaceraient vers l'avant de la machine.
Étape 2: Création du modèle Fusion 360
J'ai commencé par créer un modèle de base pour le réceptacle à friandises. Les friandises tombent dans une mini-trémie où elles sont ensuite transportées dans une roue rotative.
Ensuite, j'ai ajouté le Raspberry Pi 3 à la conception Fusion, ainsi que les autres composants électroniques, y compris un module de caméra LCD et Raspberry Pi. J'ai également fait une trémie qui pourrait stocker des friandises supplémentaires.
Les parois du distributeur de friandises sont censées être découpées dans du contreplaqué de 1/4 de pouce sur un routeur CNC. Il y a 7 pièces, 4 murs, un sol et un dessus et un couvercle qui peuvent s'ouvrir et se fermer pour exposer les friandises.
Enfin, j'ai créé une poignée "fantaisie" pour ouvrir le couvercle.
Étape 3: 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: network={ ssid= psk=} Ensuite, j'ai sauvegardé et éjecté la carte et l'ai remise dans le Raspberry Pi 3. Cela devrait maintenant permettre l'utilisation de SSH et la connexion au WiFi.
É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 a:git clone 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. Saisissez enfin: 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:// L'ip local du pi: 8080/stream. html Pour voir le flux.
Étape 5: Configuration d'un serveur Web
Pour que la machine soit contrôlée de manière externe par WiFi, j'avais besoin d'un serveur Web. Un serveur Web sert essentiellement des pages Web à la demande, généralement par un navigateur. Je voulais quelque chose de simple et rapide à installer et à utiliser, en retirant Apache de la table. Je voulais également interfacer le serveur Web avec Python afin de pouvoir contrôler l'Arduino Uno avec PySerial. Cette quête m'a finalement conduit à Flask, une belle bibliothèque Python qui permet aux utilisateurs de créer rapidement un serveur Web. Le code complet est joint à cette page de projet. Le script python configure essentiellement 2 pages Web, une qui est hébergée dans le répertoire racine, '/', et une autre qui est hébergée dans '/dispense'. La page d'index a un formulaire HTML qui, une fois soumis, envoie une demande de publication à la page de distribution. La page de distribution vérifie ensuite si la valeur de publication est correcte et si c'est le message "D\n" est envoyé via série à l'Arduino Uno.
Étape 6: Contrôler les E/S
J'ai décidé d'utiliser le DRV8825 pour piloter mon moteur pas à pas, principalement parce qu'il n'avait besoin que de 2 broches IO et d'une limitation de courant réglable. J'ai essayé d'utiliser un L293D mais il ne pouvait pas supporter la charge du moteur pas à pas. Le DRV8825 est contrôlé en pulsant la broche STEP via PWM, et la direction est contrôlée en tirant la broche DIR vers le haut ou vers le bas. Le moteur pas à pas que j'utilise a une consommation de 1,2 A, j'ai donc ajusté la tension VREF à 0,6V. Vient ensuite l'écran LCD. Je voulais utiliser I2C pour réduire la quantité d'E/S nécessaire et simplifier le code. Pour installer la bibliothèque, recherchez simplement "LiquidCrystal_I2C" et installez-la. Enfin, l'Arduino Uno vérifie la présence de nouvelles informations dans le tampon série et s'il correspond à « D ». Si c'est le cas, l'Uno fait bouger le moteur pas à pas de 180 degrés, puis de -72 degrés pour empêcher les friandises de se loger.
Conseillé:
Distributeur de nourriture pour animaux de compagnie : 3 étapes
Distributeur d'aliments pour animaux de compagnie : Para los amantes de mascotas, este es un proyecto que les puede ser muy útil ! Un alimentador automático que te permite observar cual es el pesaje de la comida, y solo es necesario que oprimas un botón.Un mecanismo sencillo que podrás armar desde tu
DISTRIBUTEUR AUTOMATIQUE DE NOURRITURE POUR ANIMAUX DE COMPAGNIE : 9 étapes
DISTRIBUTEUR AUTOMATIQUE DE NOURRITURE POUR ANIMAUX DE COMPAGNIE : Avez-vous déjà eu envie de perdre trop de temps à nourrir votre animal de compagnie ? Avez-vous déjà dû appeler quelqu'un pour nourrir vos animaux de compagnie pendant vos vacances ? J'ai essayé de résoudre ces deux problèmes avec mon projet scolaire actuel : Petfeed
Machine d'alimentation pour animaux de compagnie avec RasPi et Telegram Bot : 4 étapes (avec photos)
Pet Feeder Machine With RasPi et Telegram Bot: Tout d'abord, je dois préciser qu'il ne s'agit pas d'une idée originale, il suffit de mettre à jour et d'adapter les scripts de programmation pour qu'ils fonctionnent avec le télégramme, je l'ai trouvé dans un précédent Instructable, donc les crédits sont vraiment les auteur de celui-ci. Vous pouviez voir l'espagnol
Catapulte automatique pour lancer de la nourriture pour animaux de compagnie (chien, chat, poulet, etc.), lancer des balles et plus encore ! : 4 étapes (avec photos)
Catapulte automatique pour lancer de la nourriture pour animaux de compagnie (chien, chat, poulet, etc.), lancer des balles et plus encore ! : Bonjour et bienvenue dans mon premier Instructable ! Notre chien adore sa nourriture, elle va littéralement tout manger en quelques secondes. J'ai imaginé des moyens de ralentir cela, des balles avec la nourriture à l'intérieur à la jeter partout dans la cour. Étonnamment, elle est
Chatière extérieure IoT pour animaux de compagnie : 6 étapes (avec photos)
Porte pour animaux de compagnie extérieure IoT : je me suis inspiré de cette instructable pour créer une porte de poulailler automatique. Non seulement je voulais la porte du poulailler sur une minuterie, mais je voulais aussi connecter la porte à Internet afin de pouvoir la contrôler avec mon téléphone ou mon ordinateur. Ce d