Table des matières:

Dog Bot : Lego Robot Rover avec webcam : 17 étapes (avec photos)
Dog Bot : Lego Robot Rover avec webcam : 17 étapes (avec photos)

Vidéo: Dog Bot : Lego Robot Rover avec webcam : 17 étapes (avec photos)

Vidéo: Dog Bot : Lego Robot Rover avec webcam : 17 étapes (avec photos)
Vidéo: How to Escape a Police Sniffing Dog 2024, Décembre
Anonim
Image
Image

Voici comment créer un robot Lego que vous pouvez contrôler depuis n'importe quel écran via le wifi. Il dispose également d'une webcam pour voir où vous allez et de lumières LED pour les yeux ! C'est un excellent projet à faire avec vos enfants car ils peuvent créer le logo et vous pouvez les impliquer dans autant d'électronique qu'ils le souhaitent. Il y a beaucoup de flexibilité dans la façon dont vous mettez en œuvre ce projet, et cela signifie que vous peut facilement le démonter et le redessiner à nouveau. Je l'ai trouvé utile, quand je me suis retrouvé coincé pour tout simplement recommencer. Une fois que vous avez fait cela plusieurs fois, il est assez facile et rapide de reconstruire à partir de zéro. Ce qui est bien, c'est que vous n'avez pas à vous soucier de « casser » quoi que ce soit, car vous développerez les compétences nécessaires pour reconstruire facilement.

De quoi as-tu besoin

  • Framboise Pi B+
  • Kit base et moteur
  • Plaque de base Lego
  • Super colle de force industrielle
  • Percer
  • Couteau artisanal
  • Matériel de soudage
  • carte SD
  • lecteur de carte SD
  • Kit contrôleur de moteur
  • 2 LED
  • Webcam à prix moyen (vous pouvez en essayer une pas chère)
  • PC et tablette/téléphone
  • Routeur Wifi auquel vous avez un accès administrateur
  • Beaucoup de morceaux de Lego
  • Chargeur de téléphone d'urgence
  • 4 fils de démarrage avec chacun au moins 1 borne femelle
  • 4 piles AA (rechargeables c'est bien)

Étape 1: préparer la base

J'ai commencé avec une base et 2 moteurs comme cet ensemble moteur sur Amazon

Prenez la base en plexiglas et collez-y une fine plaque de base Lego. J'ai utilisé de la super colle de force industrielle pour cela qui sèche en quelques minutes et est super forte. Lorsque la colle est fixée, coupez l'excès de plaque de base Lego afin qu'il suive la ligne de la plaque de base en plexiglas. puis percez des trous à travers la plaque Lego qui correspondent à la base en plexiglas. J'ai percé les trous au fur et à mesure que j'en avais besoin. Vous avez maintenant les bases pour construire votre structure Lego.

Étape 2: Assembler les roues

Assembler les roues
Assembler les roues

Assemblez maintenant les roues. Suivez les instructions du fabricant ici. Les roues que j'ai achetées avaient toutes les instructions en chinois, que je ne peux pas lire, mais c'était assez facile à comprendre à partir des images. Une fois assemblés, attachez les fils aux moteurs avec une petite goutte de soudure.

Étape 3: Fixez les roues à la base

Fixez les roues à la base
Fixez les roues à la base

Fixez ensuite les roues sur la plaque de base, vous pouvez percer des trous dans la base si vous en avez besoin. Vous découvrirez probablement vers la fin du projet que vous voulez que les fils passent à travers la base ailleurs, mais vous pouvez toujours percer un nouveau trou et déplacer plus tard.

Étape 4: préparer le Pi

Préparer le Pi
Préparer le Pi

Maintenant, préparez le PI. J'ai utilisé un modèle B+ avec un dongle wifi USB. J'ai utilisé l'image de bureau complète basée sur Debian Jessie que vous pouvez télécharger sur le site Raspbian Pi. Cela vaut la peine de créer la carte SD à partir de zéro et de garder l'image disque à portée de main car vous pouvez facilement recommencer. Vous devrez peut-être faire un peu de recherche sur Google pour savoir comment créer l'image disque sur votre PC. J'ai créé mon image en utilisant Ubuntu comme ceci: Faites un clic droit sur l'image disque et sélectionnez "Ouvrir avec le graveur d'image disque". Écrivez l'image sur la carte SD. L'image disque est assez petite, donc si vous avez une carte SD plus grande (par exemple: 30 Go), vous pouvez utiliser un logiciel de partitionnement comme GParted pour utiliser tout l'espace disponible. Une fois que vous avez compris comment procéder, cela prend environ 5 minutes et cela en vaut vraiment la peine, car si vous gâchez le logiciel, vous pouvez simplement le réinstaller à nouveau.

Étape 5: Montez la carte contrôleur

Monter la carte contrôleur
Monter la carte contrôleur

Ensuite, vous avez besoin d'une carte contrôleur de moteur. J'ai utilisé le kit de RyanTek. Il est livré avec un excellent guide de soudure, mais je pense que vous pouvez également le faire pré-souder. Si vous n'avez jamais fait de soudure auparavant, ne vous inquiétez pas, allez-y doucement et entraînez-vous un peu avant de commencer sur la carte du moteur.

Maintenant, fixez la batterie (avec 4 piles AA) et les moteurs jusqu'à la carte contrôleur, puis fixez la carte contrôleur sur les broches GPIO du Pi. Encore une fois, la carte contrôleur vous donnera plus de détails. Ne vous inquiétez pas de placer les bons fils de moteur dans les bons emplacements, tant qu'ils ne sont pas connectés aux emplacements d'alimentation CC. Je ne colle ni ne visse le Pi ou la batterie sur la carte Lego car cela vous donne plus de flexibilité lors de la conception du corps Lego. Vous pouvez également modifier facilement votre conception au fur et à mesure.

Étape 6: Commencez à construire le corps de Lego

Commencez à construire le corps Lego
Commencez à construire le corps Lego
Commencez à construire le corps Lego
Commencez à construire le corps Lego

Il est maintenant temps de construire des Lego. À ce stade, vous pouvez impliquer de très jeunes enfants, à condition qu'ils puissent tenir un morceau de Lego ! Nous avons commencé avec juste un boîtier carré de base jusqu'à ce que tout fonctionne, puis nous sommes devenus plus aventureux avec le chien bot. La grande chose ici est que vous pouvez reconstruire le corps du robot autant que vous le souhaitez. Commencez par créer une maison pour le Pi. Pensez à laisser de la place pour les ports USB et les câbles d'alimentation. Construisez une bonne quantité de relâchement dans n'importe quel logement que vous construisez. C'est OK pour que les choses bougent un peu et vous ne pouvez pas être trop précis avec Lego.

Nous avons utilisé des fenêtres Lego pour donner accès aux ports USB dont vous aurez besoin plus tard.

Étape 7: préparer le Pi

C'est le bon moment maintenant pour démarrer le Pi et faire bouger le robot.

J'ai développé le code à utiliser avec ce projet sur le hub Git. Les pages Lisez-moi sur le hub git vous expliquent comment installer tous les logiciels sur le Pi, mais je vais également vous expliquer les étapes ici.

Commencez par démarrer le Pi en branchant le câble d'alimentation. Vous devrez connecter le câble HDMI à un téléviseur et utiliser un clavier et une souris USB. La première chose à faire est de vous connecter à votre Wifi. pour ce faire, cliquez sur l'icône en haut à droite du bureau Raspian et prouvez les détails. Une fois connecté au Wifi, vous pouvez faire tout le reste à partir de la ligne de commande, donc si vous préférez, vous pouvez vous connecter au Pi en utilisant ssh, mais pour l'instant, comme nous sommes connectés à un téléviseur, nous pouvons ouvrir un terminal à partir du bureau Raspian.

Étape 8: Installez le logiciel sur le Pi

Ouvrez le terminal sur le Pi et tapez les commandes suivantes.

sudo apt-get mise à jour

Cela met à jour Raspian avec le dernier logiciel.

Ensuite, installez le logiciel de la webcam

sudo apt-get install motion

Vous devez également configurer le mouvement à ce stade. J'ai répertorié ce qui doit être mis à jour dans quels fichiers sur les pages github. Il existe également une instruction sur la façon de faire fonctionner une webcam sur votre Pi. Apprenez à connaître les paramètres et jouez avec eux une fois que vous êtes à l'aise avec la configuration.

sudo apt-get installer python-dev python-pip

Cela installe les bibliothèques Python ainsi que le gestionnaire de packages de logiciels python.

sudo pip install 'pubnub>=4.1.2'

Cela installe Pubnub, le logiciel qui gère la messagerie entre le panneau de commande et votre robot sans fil.

Il faut un certain temps pour installer cette partie alors allez vous faire une tasse de thé !!

Étape 9: Installez le logiciel du robot

Maintenant que vous avez installé tous les éléments logiciels dépendants, il est temps d'installer le code requis pour exécuter le robot.

git clone

cela créera un dossier lego-robot dans votre répertoire personnel.

Avant de pouvoir exécuter le code du robot, vous devez créer un compte PubNub et obtenir une clé de publication et d'abonnement. vous pouvez le faire en suivant les instructions de démarrage maintenant sur PubNub. Une fois que vous êtes configuré, vous devez ouvrir les deux fichiers:

  • lego-robot/server/keys.py
  • lego-robot/client/keys.js

et remplacez les clés pub et sub par vos clés que vous pouvez obtenir à partir du tableau de bord pubnub.

Notez que la valeur du canal peut être n'importe quoi, tant qu'elle correspond sur le client et le serveur.

Étape 10: Installez le logiciel du contrôleur et vérifiez que tout fonctionne

Installez le logiciel du contrôleur et vérifiez que tout fonctionne
Installez le logiciel du contrôleur et vérifiez que tout fonctionne
Installez le logiciel du contrôleur et vérifiez que tout fonctionne
Installez le logiciel du contrôleur et vérifiez que tout fonctionne

Sur un PC, clonez le code git hub de la même manière que nous l'avons fait sur le robot.

git clone

Vous n'avez peut-être pas installé git sur votre PC. Sinon, suivez les instructions sur git hub.

Vous avez également la possibilité de télécharger le code sous forme de fichier zip, bien que je vous conseille d'installer GIT et de copier les fichiers en clonant le référentiel.

vous devrez mettre à jour le fichier lego-robot/client/keys.js avec vos clés de publication et d'abonnement personnelles.

Lorsque vous avez terminé, ouvrez le fichier lego-robot/client/buttons.html dans un navigateur Web. Vous devriez maintenant pouvoir contrôler votre robot à l'aide des boutons de commande.

Le diagramme ci-dessus montre ce qui se passe:

  • Lorsque vous cliquez sur un bouton, un message est envoyé à pubnub (à l'aide de votre clé de publication)
  • PubNub transmet ensuite au robot qui…
  • écoute (à l'aide de la touche d'abonnement) les messages
  • Le robot se traduit alors par une action.

J'ai utilisé pubNub car c'est gratuit, rapide (en temps réel) et simplifie grandement l'envoi et la réception de messages à l'aide d'une API vraiment sympa.

Vous pouvez creuser dans le code client et serveur et voir les messages envoyés à l'aide de touches simples telles que "en avant" et "en arrière".

Il existe également un contrôleur de style joystick sur lego-robot/client/joystick.html.

J'améliorerai ces contrôleurs et en ajouterai de nouveaux tout le temps, donc si jamais vous souhaitez mettre à jour le logiciel, vous pouvez utiliser la commande "git pull". N'hésitez pas également à contribuer au référentiel git et à créer des contrôles plus conviviaux.

Vous êtes maintenant prêt à vérifier que le mouvement fonctionne correctement. Sur le terminal Pi, changez de répertoire en lego-robot/server et tapez:

sudo python robot.py

cela démarre un script python pour écouter les messages entrants de Pubnub.

Essayez maintenant d'appuyer sur certains boutons du contrôleur, vous devriez voir ces réponses reçues sur le terminal Pi (comme indiqué dans l'image ci-dessus) et le robot.py traduit ces messages en mouvements en les mappant aux signaux sur le Pi GPIO.

Vous devriez pouvoir déplacer le robot.

Étape 11: préparer la webcam et les lumières LED

Préparer la webcam et les lumières LED
Préparer la webcam et les lumières LED
Préparer la webcam et les lumières LED
Préparer la webcam et les lumières LED

Vous pouvez utiliser n'importe quelle webcam compatible Linux (la plupart le sont). J'opterais pour un modèle de milieu de gamme (environ 15 £) car j'en ai essayé un très bon marché et je n'ai pas pu en obtenir une image claire. La première étape consiste à démonter la webcam pour ne disposer que de la carte et de la caméra de base.

Si vous souhaitez installer des lumières, prenez une lumière LED et connectez deux câbles de démarrage à chaque borne. J'ai utilisé des câbles de démarrage qui ont une borne femelle à une extrémité afin que vous puissiez facilement le brancher plus tard sur les broches Pis GPIO. L'autre extrémité du fil que vous devez dénuder, pour retirer le terminal. Vous pouvez également souder ici pour établir une connexion sécurisée. J'ai également utilisé un film thermorétractable, que vous pouvez utiliser pour couvrir chaque fil, même si je ne m'inquiéterais pas de faire un trop bon travail jusqu'à ce que vous soyez heureux que tout fonctionne, alors vous pouvez terminer et vous améliorer. C'est aussi une bonne idée d'utiliser une résistance pour empêcher votre LED de brûler.

Il y a une instructable détaillée ici détaillant comment câbler les LED.

Comme le montre la photo, j'utilise un bloc Lego avec un trou pour monter facilement la LED sur la tête du robot.

Étape 12: Créez la tête avec une caméra nasale et des lumières

Créez la tête avec une caméra nasale et des lumières
Créez la tête avec une caméra nasale et des lumières
Créez la tête avec une caméra nasale et des lumières
Créez la tête avec une caméra nasale et des lumières
Créez la tête avec une caméra nasale et des lumières
Créez la tête avec une caméra nasale et des lumières

Créez un boîtier de tête pour la caméra. Je ne serai pas trop précis ici car il est temps pour vous d'être créatif. Cependant, vous devez construire autour de la caméra. Dog bot intègre la caméra dans son nez et a les yeux comme des LED. Assurez-vous de laisser un trou à l'arrière de la tête pour faire sortir les fils.

Étape 13: Complétez le corps

Compléter le corps
Compléter le corps
Compléter le corps
Compléter le corps
Compléter le corps
Compléter le corps

Maintenant que vous êtes heureux que le robot chien bouge, vous pouvez créer un logement pour les batteries. J'ai utilisé un pack de 4 piles AA (fournies avec les roues et la base) et un pack chargeur de téléphone d'urgence. Les piles AA sont pour les moteurs à courant continu pour les roues et le pack de téléphone portable est pour le Pi. C'est une bonne idée de rendre les batteries facilement accessibles car vous devrez y accéder pour les recharger et les remplacer.

Une fois que vous êtes heureux, mettez un toit sur le Pi. Je ne m'inquiète pas trop de cacher les fils et les circuits, car cela fait partie de l'image des robots. Cependant, tout dépend de vous à ce stade. Vous voudrez peut-être considérer le poids de votre bot, plus il est lourd, plus il se déplace lentement.

Étape 14: Montez la tête

Monter la tête
Monter la tête
Monter la tête
Monter la tête
Monter la tête
Monter la tête

Il est temps de tout connecter.

Connectez le câble USB de la webcam à l'avant du bot, en utilisant les trous d'accès que vous avez créés. Vous pouvez fixer le fil au robot en créant un boîtier Lego. J'ai également raccourci le cordon USB en le coupant et en le ressoudant, mais ne le faites que si vous avez vraiment envie de souder 4 petits fils ensemble. Il serait peut-être plus facile d'acheter un câble USB court et de le reconnecter à l'arrière de l'appareil photo.

Vous devez également connecter les lumières LED aux broches Pis GPIO non utilisées par le contrôleur de la carte moteur. Ce sont les broches GPIO 20 et 21 et les deux broches de masse de rechange à proximité. Utilisez les broches de terre de rechange à proximité. Si la lumière ne fonctionne pas, essayez de commuter la masse avec la sortie GPIO. Pour déterminer les broches à connecter à google, un bon diagramme GPIO.

Étape 15: Testez les LED et la Nose Cam

Testez les LED et la Nose Cam
Testez les LED et la Nose Cam

Pour démarrer le logiciel de la webcam, tapez:

mouvement sudo

Assurez-vous également que vous avez démarré le script robot.py (comme détaillé dans les instructions précédentes):

sudo python robot.py

Vous devriez maintenant pouvoir utiliser l'interrupteur d'éclairage du contrôleur pour allumer et éteindre les lumières.

La webcam doit diffuser sur votre adresse IP Pis sur le port 8080, par exemple, tapez ce qui suit dans votre navigateur Web.

192.168.1.2:8081

J'ai trouvé l'adresse IP Pi en me connectant à mon routeur en tant qu'administrateur et en regardant les périphériques connectés. Les instructions sur la façon de procéder se trouvent généralement à l'arrière du routeur ou reportez-vous aux instructions en ligne de votre routeur.

vous pouvez explorer les paramètres de configuration du logiciel de mouvement, comme décrit à l'étape précédente. Je trouve que parfois le streaming s'interrompt, mais en général ça marche bien.

Vous pouvez accéder à ce flux vidéo à partir de n'importe quoi exécutant un navigateur connecté à votre réseau Wifi.

Étape 16: Terminer

Accès en ligne

Vous devriez maintenant pouvoir contrôler le robot depuis un navigateur sur un PC. Cependant, il est agréable de pouvoir contrôler le bot à partir de n'importe quel appareil tactile comme un iPad ou un téléphone.

Pour ce faire, vous devez héberger les fichiers clients (buttons.html, etc.) sur un serveur Web.

J'ai commencé par installer un serveur Web sur le Pi, qui fonctionne bien. Cependant, il est plus facile de simplement télécharger le fichier HTML sur n'importe quel autre serveur Web. J'ai simplement copié le fichier HTML sur mon compte hôte bleu public. Vous souhaiterez peut-être protéger l'accès à ces fichiers car ils contiennent les sous-clés de pub de votre canal de pub nub. Une fois cela fait, vous pouvez accéder au contrôleur à partir de n'importe quel appareil, même de l'extérieur de votre maison.

Démarrage automatique

Une autre chose utile à faire est de mettre à jour le script \etc\rc.local sur votre raspberry Pi; en ajoutant ces deux lignes:

  • mouvement sudo
  • nohup sudo python /home/pi/lego-robot/server/robot.py &

Ceux-ci s'exécuteront à chaque démarrage du Pi, vous n'avez donc pas besoin d'exécuter la commande manuellement.

Étape 17: Amusez-vous

S'amuser !
S'amuser !

C'est tout.

N'hésitez pas à laisser des commentaires si vous êtes bloqué et si vous souhaitez améliorer l'un des logiciels, veuillez contribuer au référentiel github. Je vais continuer à travailler sur ce projet et voici quelques idées:

  • Un contrôleur de style "big trak" où vous programmez une séquence de commandes telles que "gauche 10, avance 6, arrière 2…", puis appuyez sur "exécuter" et le robot exécute les commandes.
  • Un cou inclinable, pour que vous puissiez regarder vers le haut avec la webcam
  • Un haut-parleur qui traduit le texte du contrôleur en parole
  • Commande à commande vocale

À votre santé

Pierre

Conseillé: