Servomoteur dans les deux sens

Bonjour;

je n'ai pas réussi à trouver ma réponse sur le forum alors je l'ai posé ici.

Je n'arrive pas à trouver ou comprendre comme demander à un servomoteur d'aller dans le sens inverse, par exemple de passer de 0° à -90°

Tout le reste fonctionne correctement.

Quel est le code pour parvenir à ce résultat ?

Merci pour votre aide..

il faut que ta position de repos que tu utilise sois 90° (pour un servo 180° ) ainsi ton 0 deviendras -90° et 180 deviendras 90°

J'avais pensé à cette solution, mais uniquement en dernier recours, ça me fait perdre une bonne parti de l'angle du servo :-/

N'existent il pas une autre solution ?

Si tu lisais un peu les docs tu verrais que l'argument attendu par servo.write() est un angle compris entre 0 et 180.
Maintenant, que tu donnes ta consigne sous la forme -90 à +90 ou 0 à 180 dans les 2 cas la fourchette sera la même, c'est juste un offset sur la valeur que tu manipules.
Si tu veux piloter plus finement ton servo, tu peux utiliser servo.writeMicroseconds() qui te permettra de balayer toute la course possible du servo avec un pas assez fin.

Re,
Pour les servomoteurs, il y a un flou sur les caractéristiques techniques données par les constructeurs. Les datasheets des servos n'ont même pas le minimum de données techniques.
Il faut savoir que les servos se pilotent, selon les modèles, en 50 Hz, 120 Hz, 200 Hz, 333 Hz et même 560 Hz.
Position centrale : 1500 us ou 1520 us pour les versions 50, 120, 200 et 333 Hz et 760 us pour la version 560 Hz
Compte tenu du mode d'asservissement de position par bande morte, il est utopique de commander les servos (hobbyistes) avec plus de 100 pas différents.
Mais c'est juste mon avis