Étape 6: Code
Le code est divisé en deux onglets, le premier étant The_Social_Quadruped.ino et le second est Quad_Functions.ino. J’ai joint ces deux.
Le premier onglet inclut la bibliothèque de Servo.h qui vient avec l’IDE Arduino, ainsi que la bibliothèque NewPing.h, qui peut être téléchargée ici. J’ai tout d’abord définir la l’ergot, la broche de l’écho et la distance max pour le capteur à ultrasons après quoi, je définis une variable booléenne qui sera utilisée pour activer/désactiver le mode autonomie du robot. J’ai ensuite définir les servos. Dans la fonction de réglage, j’ai fixer les servos à leurs positions respectives sur la protection du capteur Arduino et initialiser le Serial monitor pour me permettre d’envoyer des commandes à l’Arduino. Dans la fonction de boucle, j’ai mis le capteur à ultrasons pour envoyer la distance de l’objet le plus proche pour le moniteur de la série et recherchez les entrées d’utilisateur. Si l’utilisateur entre le caractère f, b, r, l, w, s, u ou a, les fonctions avant, arrière, right, left, vague, sommeil, stand ou autonomie qui sont définis dans l’onglet Quad_Functions.ino sont appelées respectivement. Lorsque l’utilisateur appuie sur a, cependant, la fonction autonomie continuera en boucle jusqu'à ce que l’utilisateur presses a encore une fois.
Le second onglet contient les définitions pour toutes les fonctions. Les fonctions respectives étape définissent une étape pour chaque type de mouvement, la fonction de support définit les servos dans une position qui provoque le robot de se mettre debout, les fonctions avance et arrière causent au robot de se déplacer respectivement vers l’avant et arrière, que les fonctions gauches et provoquent le robot à pivoter sur la droite et gauche respectivement, la cause de wave2 et des fonctions d’onde le robot à agiter à l’aide de ses pattes avant gauche et droit respectivement , la fonction waveAuto provoque le robot à agiter à l’aide de sa jambe droite avant alors qu’il est en mode autonome, la fonction sommeil affecte les servos en position que causes le robot se coucher à plat sur le sol et enfin la fonction de readPing obtient les lectures du capteur à ultrasons et les convertit en centimètres.
Remarque : Vérifiez que les broches de servo que vous définissez coïncident avec les broches que vous connecté à sur le bouclier de l’Arduino. En outre, veillez à débrancher le module Bluetooth lorsque vous transférez de l’esquisse à l’Arduino, car elle perturbe parfois avec le processus de téléchargement.