Faire ralentir ou accélérer la vitesse d'un cerveau en debut ou fin de course

Sylvain_Jeanneton:
Si je viens ici c justement pour avoir de l'aide et pas pour lire ce genre de réponse à la noix. Lol !
Quelqu'un peut-il m'aider de façon à ce que monsieur tout le monde puisse agir vite et de façon assez précise même sans être un expert ce serait chouette. Oui ou non ? :0)
Amicalement.
<sy

Qu'est-ce que vous ne comprenez pas?

  • On vous a dit déjà deux fois que le servo va accélérer tout seul, donc pour la partie "accélération" au départ, c'est géré pour vous.
  • On vous a dit que la décélération est relativement brutale en effet si la nouvelle position (consigne) était relativement éloignée du point de départ - par contre si la consigne est proche du point de départ, la phase d'accélération n'a même pas le temps de se mettre en ordre de marche et votre servo va avancer quasiment à vitesse constante

--> dit autrement: si vous être à -45° et que vous voulez aller à +45° - c'est loin, donc le servo va accélérer, suivant ses capacités et la charge à bouger afin d'atteindre une vitesse de croisière - disons que ça se passe entre -45° et -20° ensuite entre -20° et +43° le servo va continuer à vitesse constante et freiner violemment entre +43° et +45°

g1.png

--> ce que l'on vous propose d'explorer - à vous de pondre un bout de code - c'est de "tricher" avant l'arrivée à la consigne et de lui fournir des ordres différents de manière assez rapproché dans le temps pour qu'il parcourt le reste du chemin avec un comportement différent. Les valeurs, le timing etc dépendront de votre servo et donc sont "laissées en exercice au lecteur" ...

Vous pouvez utiliser writeMicroseconds() pour affiner les consignes plutôt que l'angle en d°