Régulation de position (CNC-1)

image_pdf

C’est le premier article dédié aux machines à commande numérique, les CNC.

      1. Régulation de mouvement en machine-outil.
      2. Présentation de trois systèmes de pilotage (un très ancien, un astucieux et un open source).
      3. Le parcours d’outil, le générateur de trajectoire
      4. Les correcteurs et les ajustements.

Pour ce premier pas dans monde des machines-outil, l’idée est de vous présenter la régulation de position des axes de ces machines. On se concentre sur leurs mouvements, pas de grandes théories mathématiques, mais plutôt une approche pragmatique du comment fonctionne la régulation de ces axes.

Régulation d’axes de machine

Pour certain le terme régulation s’applique lorsque que le but est constant et ils parlent d’asservissement lorsque ce but à atteindre varie dans le temps. C’est pas très important, en fait et pour nous ce sera des synonymes. D’autres parlent de pilotage pour l’ensemble des entités en interaction, pour nous ce terme “pilotage” sera restreint à la fonction du conducteur dans un véhicule par exemple.

Mais ce qui nous intéresse ici, ce sont les “règles” de la régulation et les fonctions des mouvements plus que la machine elle-même.

Pour ce faire, voici un système qui va nous permettre de visualiser un déplacement; considérons un petit chariot qui se déplace lorsque le moteur tourne. Notre ami, avec son drapeau vert, nous indique si l’on est loin ou près du mur et suivant ses indications, on appuie ou on relâche la pédale des gaz ! Le but est de stopper notre chariot “juste au mur”.

régulation de position, principe global

Pour arriver à s’arrêter “contre le mur” sans abîmer notre chariot, il est nécessaire d’avoir un retour de la distance entre le chariot et le mur. Ici je dois de suite moduler ce propos, certaines machines ne fonctionnent pas selon ce principe, j’y reviendrais un peu plus loin.

Comme vous régulez l’avance de votre chariot en fonction de la distance restante, c’est donc une régulation de position dont il s’agit

Pour piloter correctement notre chariot, nous devons bien connaître divers éléments. Par exemple, si vous êtes à 1, 10 ou 100 mètres du mur vous n’aurez pas la même vitesse maximum lors de votre déplacement. Généralement (mais là c’est vous qui voyez !) plus vous vous approchez du mur, plus diminuez votre vitesse, jusqu’à avoir une vitesse nulle au moment du contact avec le mur. Les paramètres que vous gérez lors de ce déplacement sont principalement :

        • La distance à parcourir jusqu’au mur
        • La vitesse et l’accélération maximale admissible (surtout par votre ami !)
        • Le mode d’arrivée

Que signifie ce paramètre “mode d’arrivée” ? Lorsque vous vous déplacez avec votre véhicule, vous avez une succession de distance à parcourir entre chaque arrêt, jusqu’au prochain stop, par exemple. Habituellement vous admettez votre prochain point d’arrivée sur la “ligne du stop”. Si vous êtes un peu avant ou un peu après, c’est pas important car vous avez toujours la possibilité de corriger votre position après votre arrivée. Autre exemple ou le dépassement de la consigne (point d’arrivée) est admis : le réglage de la température de l’eau de votre douche. Un peu chaud, un peu froid, “re” un peu chaud, “re” un peu froid, etc, et enfin la douche est agréable ! Dans ces “modes d’arrivée”, on admet que la position à atteindre  (la consigne) peut-être dépassée. Mas vous comprendrez bien que pour notre chariot et le mur, il est impératif de ne pas dépasser la distance à parcourir, donc que le point d’arrivée (la position à atteindre, la consigne) est à ne jamais excéder! Dans le cas d’axes de machines-outil, c’est identique, le dépassement de consigne est prohibé !

Mouvement axe machine

Cette régulation se résume à un déplacement du chariot selon le souhait d’un utilisateur. Le système de régulation essaye donc de répondre à cette demande. On peut synthétiser le mouvement du chariot comme suit :

schéma de mouvement d'axe

Sur ce graphique, on remarque tout de suite qu’en fait deux éléments sont surveillés, la vitesse et la distance, le souhait est concrètement un déplacement à une certaine vitesse. On parle bien de régulation de position, mais en fait, c’est une régulation de vitesse et de position qui est utilisée. Il faut cependant considérer une prédominance de la consigne de position sur celle de la vitesse et ce fait justifie entièrement de ne parler que de régulation de position. En effet pour les mouvements des axes machines, on ne cherche pas systématiquement la vitesse maximum des axes, c’est pourquoi on fixe une vitesse pour chaque déplacement donné. En fait, on essaye, espère de réaliser un certain travail lors des déplacements d’axes, donc la maîtrise de la vitesse est assez compréhensible.

Le déplacement total est réalisé en 3 phases, l’accélération(1), la vitesse constante(2) et le freinage (3) ou aussi dénommé décélération ou encore l’accélération négative. L’utilisateur fixe deux paramètres : la distance et la vitesse, le système de régulation, lui, calcule la position du chariot en fonction des phases du déplacement.

On analysera que le cas général ou le déplacement demandé permet d’atteindre la vitesse souhaitée. Ce n’est pas réducteur, car vous pouvez très facilement imaginer que le paramètre “distance” est plus important à respecter que celui de la vitesse qui lui sera redéfini. Autre point, dans le parcours présenté la vitesse finale est nulle, mais ce n’est pas toujours le cas. Là aussi le but sera redéfinit avec le but “vitesse à cette distance”. Le principe global restant le même.

Un peu de physique et de concret

Voilà maintenant nous avons tous les ingrédients pour définir notre déplacement, mais comment remplacer notre mouvement de pied sur l’accélérateur pour positionner le chariot au plus près du mur par un système électronique automatique ?

Dans notre premier exemple, nous avons utilisé deux cerveaux humains pour diriger la manœuvre, un indiquait la distance et l’autre régulait le déplacement. Il nous faut aussi deux éléments pour effectuer cette régulation. Pour le premier dispositif celui qui permet d’indiquer la distance restante, je pense que vous avez assez d’idées pour en imaginer un, une règle, un laser, un codeur, etc. Pour le deuxième dispositif, il faut simplement penser qu’un automate, un ordinateur, un microcontrôleur enfin un système électronique a un très avantage par rapport à notre cerveau : une “horloge précise”. Ahhh oui, j’oubliais, on parle de mouvements de ce type (voir la vidéo), qui sont compliqués à réaliser et contrôler pour un humain. :

vidéo (0’10) de H2W Technologie, www.h2wtech.com, matériel datant de 2011

distance, vitesse et accélération

Pourquoi une horloge précise présente un avantage ?

L’accélération, vous savez tous ce que c’est. Vous l’avez déjà expérimentée, sentie lors du démarrage de votre voiture, lors du décollage de l’avion ou lors du freinage (accélération négative) sur votre vélo. Lors de ces “expériences”, vous avez constaté que votre vitesse avait changée entre avant et après l’accélération. On peut donc tirer cette définition : l’accélération, c’est une variation de vitesse pendant un certain temps.

formule de l'accélération

Si vous allez vite chez votre boulanger, vous mettrez moins de temps que si vous vous déplacez lentement. Vous sentez là que votre temps de parcours et votre vitesse sont groupées. De même, si votre boulanger est votre voisin ou s’il vous faut traverser le village, vous savez instinctivement que votre temps de parcours ne sera pas le même. Comme pour l’accélération, vous avez constaté que votre position a changée entre avant et après votre mise en vitesse. Pour résumé : la vitesse est une variation de position pendant un certain temps.

formule de la vitesse

Voilà maintenant que nous avons trouvé l’entité commune (le temps) entre nos trois notions, il nous faut trouver un moyen de mesurer, contrôler ce paramètre. Sans entrer dans la technique, vous avez certainement remarqué que votre smartphone est capable de vous donner l’heure de façon ultra-précise, c’est juste pour vous “démontrer” qu’un système électronique est beaucoup (mais alors beaucoup) mieux armé que le cerveau humain pour donner l’heure et donc bien quantifier le temps.

régulation de position, principe global

Si vous connaissez, la position et le temps de manière précise alors il vous est possible de définir voire de contrôler la vitesse et l’accélération (mais pas seulement) d’un objet en mouvement. Ceci facilite grandement la régulation d’un tel système.

La régulation de position

Schématiquement, la régulation de position d’axe machine présente cet aspect, notez que c’est général :

régulation de position, principe global

Ce schéma, qui résume la régulation d’un axe de machine, demande quelques explications.

  • J’ai séparé la régulation en quatre entités principales (pilotage, amplificateur, moteur, lecture position), qui sont les fonctions clés de la régulation de position des axes.
  • D’abord un coté pratique, la lecture de la position actuelle réelle, telle que dessinée, suggère que l’on ne contrôle pas directement la position du chariot, mais que l’on compte le nombre de tours moteur. C’est une méthode possible, car par déduction (pas de la vis) on trouve de la position du chariot. Ce n’est qu’une solution parmi beaucoup d’autres pour suivre la position du chariot. 
  • Si l’on veut visualiser le passage de la consigne au déplacement de l’axe, on peut le résumer comme suit

consigne → pilotage → amplificateur → moteur → position

Sur ce montage photos vous avez tout de suite repéré la photo qui représente notre ami avec le drapeau, celle “du retour d’information” (position réelle).

régulation de position, principe global

Le même schéma sur un mode plus technique (c’est juste pour faire peur) :

régulation de position, schéma de principe

C’est dans les grandes lignes le principe des régulations de machines. Dans la réalité, pour les machines-outils, on contrôle, aussi lire “retour d’information”, d’autres paramètres (la vitesse, le couple, l’accélération, le courant, etc), il n’y a pas seulement la position du chariot. Mais le but est toujours le même : essayer de suivre au plus près la consigne du système de pilotage, l’atteindre le plus vite, le plus régulièrement et surtout NE PAS LA DÉPASSER. Si l’on se réfère au schéma ci-dessus : toujours minimiser au maximum l’erreur !

Remarque :

Certaines machines, robots ou axes de machine ne sont pas régulés en position mais en force (ou couple) ou encore en vitesse mais nous considérons pas ces types de régulation. Bien que le principe est un peu similaire, un paramètre principal du mouvement est particulièrement contrôlé et le plus suivi. Notez encore que dans certains cas il n’y a pas de déplacement principal, car le but est l’application d’une force ou d’une pression par exemple.

Le pilotage

Son rôle principal est de définir la position de l’axe en tout moment et d’envoyé une consigne (une erreur) “accélérer ou ralentir” à l’amplificateur suivant la position réelle du chariot.

Remarque préliminaire : Pour définir par calcul la position du chariot, le pilotage intègre divers paramètres propre à la machine comme par exemple la vitesse et l’accélération maximum. Pour se simplifier l’analyse, nous admettrons que beaucoup de ces éléments sont définis par des contraintes mécaniques et les performances des moteurs/amplificateurs associés. Donc nous les adopterons tels quels, il est vrai que généralement beaucoup de ces valeurs sont fixées une fois pour toute à la construction de la machine.

Dans tout ce que nous avons vu, vous avez certainement remarqué qu’il existe toujours une différence entre la demande et le résultat. C’est l’erreur entre la position souhaitée et la réalité qui “motorise” le mouvement. Ce que l’on peut résumer par :

Pas d’erreur, pas de mouvement.

Ce qu’il faut comprendre, c’est que la régulation va toujours chercher à minimiser cette différence, mais qu’il lui faut une différence pour réagir. Certains parlent d’une “régulation à l’erreur”, ce qui n’est pas faux. Il est nécessaire d’avoir une erreur pour pouvoir corriger (réguler) et plus l’erreur est grande, plus la correction sera violente. Autre point qu’il ne faut pas perdre de vue, c’est que pour une machine-outil, il est primordial de ne pas dépasser la distance à atteindre. Vous voyez donc le paradoxe arriver : minimiser rapidement l’erreur et ne pas dépasser la consigne, il faut agir avec doigté !

Principe du calcul du point intermédiaire.

schéma de mouvement d'axe

Prenons un exemple pour être le plus concret possible. Imaginons que nous avons une machine dont un des axes voit sa consigne changer brutalement. L’utilisateur lui demande de se déplacer à une vitesse 160 mm/s (soit environ 10m/min) sur une distance de 500 mm !

Cette demande est dans les caractéristiques de notre machine, sinon l’exemple n’est pas terrible 🙄 . Le système de pilotage va calculer des points intermédiaires entre le point de départ et la position finale. Pourquoi cela ? Pour pouvoir optimiser le mouvement, c’est-à-dire diminuer l’erreur, accélérer le plus fort possible, pas (peu) d’irrégularité, pas de dépassement, contrôler la vitesse, etc… Voilà le rôle du pilotage. Pour être trivial, si votre axe de machine est “pourri”, par exemple, il y a des points durs, la vis ne tourne pas rond, votre lecture de position n’est l’optimum, etc., le système de pilotage va devoir tenter d’intégrer (calculer) tous ces paramètres et demander un objectif intermédiaire (une consigne intermédiaire) à la régulation afin de minimiser les problèmes et obtenir un déplacement le plus fluide possible. Ahhh, ok, et combien de points intermédiaires ?

C’est là qu’il faut se souvenir que les systèmes ont une horloge ultra-précise (mieux que l’humain) et qu’ils ont un autre avantage par rapport à l’humain : ils calculent très vite !

Exemple avec quelques chiffres

Prenons notre déplacement de 10 m/min soit environ 160 mm/sec = 160’000 μm par seconde soit une fréquence de 160Khz nombre de microns. Si l’on souhaite piloter cet axe avec un Arduino Uno (16Mhz cadence horloge), entre deux pulses d’un micron, notre Arduino pourra effectuer 16’000’000/160’000 = 100 cycles d’horloge, soit environ 6μsec. Il n’a pas trop de possibilités de calculer grand chose, mais bon, c’est juste un exemple d’illustration. Généralement, le contrôleur d’une CNC ne s’occupe pas que d’un axe et il effectue beaucoup de calculs par axe, vous trouverez souvent dans le milieu industriel de la machine-outil un temps d’une milliseconde entre chaque calcul de position (ATTENTION: très grossier, ne pas prendre ce chiffre comme fixe, ça dépend ….).

Pour fixer les idées, une milliseconde correspond à effectuer un calcul (nouveau point intermédiaire) chaque 0,16 mm pour un déplacement à la vitesse de 10m/min ce qui n’est pas mal et pour la grande majorité des machines, c’est suffisant en termes de précision. Cette vitesse correspondant généralement à un “déplacement rapide” donc pas de travail effectif, usinage par exemple, en cours de mouvement simplement un placement. Dans ce type de déplacement ce qui compte, c’est la position de départ et celle d’arrivée, entre c’est moins important …. 😉 Mais, tout de même, pour ce simple déplacement de 500mm, il y aura plus de 3200 points intermédiaires définit par le système de pilotage.

On parle d’une base de temps d’une milliseconde, c’est le temps entre chaque calcul des positions intermédiaires que le pilote effectue pour chaque axe à contrôler.

Une remarque pour finir, le terme de consigne est aussi bien utilisé pour la destination finale du mouvement que pour les points intermédiaires, dons soyez vigilant pour être au clair.

Comment contrôler la position ?

Vous trouverez tous de sorte de capteurs de position sur le marché et sachez que cette position peut être déduite indirectement comme par exemple le nombre de tour moteur qui détermine la position par calcul avec le pas de la vis. Voici quelques exemples de capteurs de positions industriels et semi-industriels. Vous trouverez ici et ici quelques explications concernant divers types de capteurs.

codeur position codeur position codeur position codeur position

Amplificateur

C’est en fait un boîtier électronique qui transforme une consigne de déplacement en courant/tension/fréquence pour le moteur. Pour être bien clair voici quelques photos d’amplificateurs, dans certains cas, ils sont inclus dans les moteurs, en anglais et franglais, on parle de “driver”. Généralement, on a un ensemble moteur-amplificateur de même marque, car ils sont adaptés l’un à l’autre.

Amplificateur électronique Amplificateur électronique Amplificateur électronique

Moteur

Si vous n’avez pas d’idée précise sur les divers types de moteur électrique, je vous laisse lire l’article sur “les moteurs électriques“.

La régulation comme principe ne s’applique pas qu’aux machines-outils et leurs motorisations, mais ce qui est expliqué ici est surtout valable pour le mouvement d’axes de machines. La transmission mécanique du mouvement peut-être de diverses méthodes comme le vis-écrou, les courroies, vérins, etc. le principe de régulation est le même (position, erreur, correction).

Régulation sans retour d’information

Dans cette partie, je veux juste revenir sur un moteur répandu qui permet d’avoir une machine-outil sans information de retour de la position, on parle de système en boucle ouverte. Le moteur pas à pas l’autorise et c’est un de ses grands avantages. Vous demandez un déplacement de 10 pas et il effectue une rotation de 10 pas ……. enfin 🙄 vous espérez qu’il effectue effectivement cette rotation. Mais comment en être sûr si vous n’avez pas de contrôle du déplacement ?

      • Avantage : pas de contrôle du mouvement (prix bas)
      • Inconvénient : pas de contrôle du mouvement (manque d’assurance)

Ce type de motorisation se trouve sur beaucoup de “petites machines” comme les imprimantes 3D personnelles.

Conclusion

La précision et l’agilité de vos axes de machines dépendent fortement de la performance tant de la mécanique que de la régulation. Cette dernière peut-être sophistiquée si vous cherchez la haute performance. Il est possible de palier (gommer) un certain nombre de problèmes mécaniques avec un pilotage un peu plus pointu, mais la régulation ne pourra jamais faire “d’un bourrin, un pur-sang” pour parler trivialement.

Pour ne pas terminer sur cette note un peu abrupte, voici une vidéo (4’21) qui présente une mise en pratique des concepts de régulation de vitesse et de régulation de position.

 

Suite : trois systèmes de pilotage