La base du robot est un microcontrôleur Arduinoqui est utilisé pour le contrôler. Autonome le robot a deux programmes de gestion différents. Le premier programme permet au robot de rouler en évitant les obstacles sur son chemin; pour les déterminer, le robocar utilise deux capteurs à ultrasons. Le deuxième programme dresse un plan des objets environnants à l'aide d'un tableau bidimensionnel. Ayant reçu des données d'un tableau de données bidimensionnel, le robot saura où et ce qui l'entoure.
Matériaux:
- Capteurs à ultrasons 2 pièces (4 pièces pour les futures mises à niveau)
- Servos 4 pièces
- Arduino (l'auteur utilise le modèle Uno)
- planche à pain
- fils
- Batteries 9.6V 2 pcs
- Batterie 9V
- Roues 4 pièces
- ruban électrique
- Écrous, boulons, etc.
Première étape. La partie mécanique.
Tout d'abord, le robot a besoin d'un châssis solide. L'article a une photo du robot, mais quel châssis utiliser et comment le faire n'a pas d'importance. L'auteur a réalisé trois versions différentes du robot. Seules deux options sont envisagées dans l'article, car la troisième n'a pas été particulièrement réussie. La première version du robot avait une forme ressemblant à un camion. Il avait une grande taille, mais avait une vitesse assez basse et mal déployée. De plus, un gros robot n'est pas très pratique à utiliser. La deuxième option est plus réfléchie, elle s'est avérée beaucoup plus petite et plus compacte.
Tout d'abord, les servocommandes sont placées sur le châssis, de sorte qu'il est possible de placer des roues sur leurs arbres. L'auteur utilise quatre roues. Si vous prenez des servos puissants, vous pouvez en général utiliser deux roues. Mais le châssis doit en même temps être agencé de manière à ce qu'il y ait suffisamment d'espace pour les batteries, une carte de circuit imprimé et Arduino.
Après avoir installé les servos, ils ont mis les roues. L'auteur a installé sur l'arbre après la roue une protection supplémentaire contre le déraillement des roues. À l'avant du robot, deux roues sont en outre installées, ce qui peut aider le robot à entrer dans les bordures ou autres petits obstacles s'il se heurte à eux. Pour réduire la friction sur les roues arrière, un ruban électrique a été ajouté.
Ensuite, le compartiment à piles est installé. L'auteur a pris le chargeur Vex et l'a modifié pour alimenter les moteurs, pas pour charger les batteries.Maintenant que la carte est prise, les fils plus et GND sont soudés, ce qui ira au connecteur de charge de la batterie. Ensuite, les fils noirs des deux batteries sont soudés au fil de charge GND et les fils rouges des batteries au fil positif du chargeur. Ensuite, ces fils sont connectés à la carte. Après cela, l'auteur fait des montures pour installer des capteurs à ultrasons à l'avant du robot. Si vous devez ajouter des capteurs supplémentaires, vous devez allonger le support.
Deuxième étape Électronique partie.
Pour cette étape, aucune connaissance supplémentaire en électronique n'est requise. Les batteries 9,6 V sont connectées en parallèle, mais si vous utilisez le compartiment à piles du chargeur, vous n'avez rien à faire, car cela a déjà été fait. De plus, selon le schéma ci-dessous, tous les composants sont connectés. Il convient de noter qu'en fonction de la longueur du châssis, il est nécessaire de sélectionner ou de rallonger les fils, car ils peuvent être manquants sur la carte. Un fil de signal est utilisé pour les premier et deuxième servos et pour les troisième et quatrième autres. Cela est fait pour le fonctionnement synchrone des premier et deuxième servos, car ils sont situés sur un côté, il en va de même pour les troisième et quatrième servos.
Pour ajouter des capteurs ou des servos supplémentaires, tout se fait selon le même principe - le fil de signal est connecté à l'Arduino, GND au noir et une alimentation 5V au fil rouge. Il ne faut pas oublier que GND des moteurs doit être connecté à la batterie GND et à Arduino.
Troisième étape La partie logicielle.
Pour écrire du code, l'auteur a utilisé Processing. Pour la navigation, un tableau bidimensionnel est utilisé (arraything), les valeurs 0 ou 1 y sont entrées. Si vous entrez 1, cela indiquera un objet, ce qui signifie que le robot se déplacera uniquement à 0. Le code peut être téléchargé ci-dessous.