hysteresis moteur DC et potentiometre

Il y a une erreur dans ton code... Puisqu'avant de tester l'hystérésis, tu fais une comparaison brute... essaie cela, pas de comparaison brute, directement hystérésis :

void loop() 
{ 
  val = analogRead(potpin);            // reads the value of the potentiometer (value between 0 and 1023) 
  val = map(val, 1, 1023, 1, 360);     // scale it to use it with the servo (value between 0 and 180) 

  
  if (valeurcible < (val - hyseteris)) { motor.run(FORWARD);}                                        //moteur avance
 else if (valeurcible > (val + hyseteris)) { motor.run(BACKWARD);}                                  // moteur recule
    else {motor.run(RELEASE);}
 
}

A supposer que hyseteris soit toujours positif... le moteur ne tournera que si valeurcible sort de l'intervalle [val - hyseteris, val + hyseteris] et s'arrêtera dès que l'intervalle entoure valeurcible.

Prévois un hyseteresis assez grand au début, genre 500, tu le réduiras au fur et à mesure de tes tests. Si tu es motivé, colle un second potar sur une entrée analogique et fais un "hyseteresis = analogread(hyst_pin) / 2; Serial.println(hyseteresis);", comme ça, pas besoin de reloader le prog à chaque test, tu liras la valeur du bon hyseteresis sur ta console!

je te souhaite un bon courrage pour ton asservissement, car ce n'est pas simple. [HUMOUR]Tu savais qu'il existe des servomoteurs?[/HUMOUR] :grin: