Pour répondre à stanloc il y a bien une possibilité de dire au logiciel que l'asservissement moteur est à la bourre : en cas de dépassement du nombre d'erreur autorisé une sortie peut être activée.
Je reconnais que c'est violent, puisque c'est l'arrêt du pilotage moteur, donc l'arrêt de l'usinage.
Mais si un tel cas se produit c'est soit que le PID est mal réglé, soit que le moteur n'est pas adapté à ce qu'on lui demande de faire.
Pour les cartes d'interpolation (personnelement je n'en connais pas qui gèrent également un asservissement) c'est effectivement un moyen de traiter "le temps réel" sans attendre les instructions du logiciel, en passant par un buffer, qui va stocker les commandes en attendant de les exécuter. Tout celà a un coût suplémentaire, mais si j'ai bien tout compris on doit pouvoir gagner en ne mettant que des drivers de gestion de l'alimentation des moteurs, sans gestion des codeurs.
Pour moi, pour que l'asservissement de position soit "parfait", je ne prendrais pas les codeurs moteurs, mais le retour de règles numériques.
Ce qui nous amène à la double boucle : l'asservissement moteur géré par le driver moteur, et en complément l'asservissement de position avec des régles de mesures géré par "autre chose" (logiciel, carte d'interpolation).
Maintenant il ne faut pas trop s'embrouiller la tête, nous sommes des amateurs avec des moyens d'amateur (dans mon cas du moins), et même si parfois on aimerait toucher la perfection, je pense que déjà faire du mieux qu'on peut est suffisant.
@rom12, on peut effectivement se servir du signal de encodeur pour tout autre chose: afficheur par exemple.
Mes cours d'asservissement étant un peu loin, je ne voudrais pas dire de bêtises, mais il me semble qu'il n'est pas souhaitable d'utiliser les mêmes retour d'information pour gérer deux boucles d'asservissement imbriquées.
La correction serait alors traitée par les deux boucles, donc plutôt dur pour régler le PID de chaque boucle.