Dernière mise à jour le lundi 4 avril 2016.
Développement d’une application complète de commande de 8 aiguilles avec un Arduino et des servomoteurs.
La série suit une progression avec la présentation du matériel puis la mise en œuvre de chacune des fonctions nécessaires avec leur test unitaire. Les fonctions sont intégrées au fur et à mesure jusqu’à la finalisation de l’application.
Les articles se veulent pédagogiques et permettent de découvrir à la fois les aspects matériels et logiciels.
Le sketch de la dernière version du logiciel :
Le réglage des butées est un point important. En effet, chaque servo moteur va avoir un neutre un peu différent de ses congénères. Il en va de même pour les positions extrêmes. De plus, chaque installation d’aiguille est un peu différente des autres.
Il est donc essentiel de pouvoir, servomoteur par servomoteur, régler les deux positions extrêmes.
Le matériel
Afin de sélectionner l’un des servomoteurs pour régler, au moyen de deux poussoirs, sa position extrême actuelle nous avons besoin d’un (...)
Comme nous l’avons détaillé dans l’article précédent « 8 poussoirs et 8 servos, enfin ! », le passage d’un servomoteur à 8 servomoteurs, nous à contraint à rassembler les variables permettant de décrire l’état d’un servomoteur dans une struct afin de créer un tableau de 8 éléments de ce type.
struct DescripteurServo Servo objetServo ; int vitesse ; int angle ; int pin ; byte etatServo ; ; struct DescripteurServo servoMoteur[8] ;
Malheureusement, le programme manipulant un servomoteur (...)
Dans « Commande du servo-moteur par bouton poussoir », nous avons vu comment commander un servo-moteur avec un poussoir. Dans « Plusieurs boutons poussoir sur une entrée analogique », nous avons vu comment connecter 8 poussoirs sur une entrée analogique et détecter lequel est pressé. Il reste maintenant à mettre en œuvre les 8 servos.
Les variables pour manipuler les 8 servos
Si vous vous rappelez, plusieurs variables étaient employées pour notre servo : l’objet de type Servo permettant de le (...)
Dans « Commande du servo-moteur par bouton poussoir », nous avons vu comment connecter un bouton poussoir à une entrée analogique. Dans celui-ci nous allons voir comment en connecter plusieurs et lire lequel est enfoncé.
Cette idée de connecter plusieurs poussoirs sur une entrée analogique n’est pas nouvelle. Une Application Note de Freescale existe et l’idée m’a été soufflée par Marc-Henri que je remercie au passage.
Marc-Henri vient de publier un article sur son blog qui décrit précisément le (...)
Nous allons maintenant ajouter un bouton poussoir pour commander le mouvement du servo-moteur. Cet article fait suite à « Mise en œuvre d’un servo-moteur ».
Le système fonctionnera de la manière suivante : Lorsque le servo-moteur est dans une des positions extrêmes, une pression sur le poussoir donnera au servo-moteur une vitesse lui permettant de gagner l’autre position extrême. Lorsque le servo-moteur est en mouvement, une pression sur le bouton inversera la vitesse.
Mise en œuvre du bouton (...)