Bonjour à tous.
Je réalise une installation avec une centaine de servomoteurs (type modélisme) pilotés par 14 Arduinos nano et une autre Arduino qui commande les 14 en serial.
Je voudrais créer une routine d'initialisation qui permettrait à chaque lancement de régler automatiquement l’amplitude de mouvement de chaque servo.
Comme il n'est pas possible de lire la position du servo, mais seulement l'ordre qu'on lui envoie, l'idée était de déceler électriquement, quand le moteur force en buté de chaque coté et d'enregistrer cette valeur. Ce n,'est pas un problème de logique de code mais soit de lecture soit d’électronique.
La solution est de faire passer l'alimentation positive ou négative de chaque servo par une résistance de 1 ohm. Et effectivement si je branche mon multimètre de chaque côté de la résistance, j’obtiens une valeur qui passe de 0,12 volt pendant que le moteur tourne normalement( et une valeur de 0,70 volt lorsque le moteur bloc d'un côté ou de l'autre.
Mais le problème est que sur l'Arduino, je n'obtiens pas du tout ces valeurs sur une pin analogique, en passant par des diodes ou non, faisant l'installation sur le négatif ou le positif, mes valeurs restent incohérents sur l'Arduino, passant de 5,oo à 4,00 volts puis à 0,87 volt ou 3,85 ou autres, sans aucunes corrélation avec les phases de mouvements du servo.
Un brillant intellectuel de l'informatique ou de l’électronique, aurait-il une solution géniale pour le débutant que je suis.
Merci à tous
Pascal