Améliorer la précision de la température d'impression avec le réglage PID

Le firmware des imprimantes 3D est réglé sur des valeurs de PID standards pour gérer la chauffe de la tête d'impression. Il est possible de recalculer finement ces valeurs pour améliorer la qualité d'impression de votre imprimante.

Wikipedia est assez précis sur le sujet : https://fr.wikipedia.org/wiki/R%C3%A9gulateur_PID

Le régulateur PID, appelé aussi correcteur PID (proportionnel, intégrateur, dérivateur ou proportionnel, intégral, dérivée) est un système de contrôle, permettant d’effectuer un asservissement en boucle fermée d’un système industriel ou « procédé ». C’est le régulateur le plus utilisé dans l’industrie, et il permet de régler un grand nombre de grandeurs physiques.

Plus techniquement :

Un correcteur est un algorithme de calcul qui délivre un signal de commande à partir de la différence entre la consigne et la mesure.

Le correcteur PID agit de trois manières :

  • action proportionnelle : l'erreur est multipliée par un gain G ;
  • action intégrale : l'erreur est intégrée et divisée par un gain Ti ;
  • action dérivée : l'erreur est dérivée et multipliée par un gain Td.

Le firmware de nos imprimantes (Marlin), intègre ces 3 valeurs pour chauffer la tête d'impression de manière précise et éviter des oscillations de température réelle par rapport à la température consigne. Or, ces valeurs sont très dépendantes de l'environnement de mesure, du matériel utilisé, de la température de travail, du matériau utilisé, etc.

Par exemple, si vous imprimez souvent de l'ABS à 250°C, les valeurs standards de PID données pour du PLA à 210°C ne sont pas correctes !

Voici par exemple une imprimante avant réglage du PID :

On remarque bien que la température oscille beaucoup au dessus et en dessous de la température de consigne, ce qui n'est pas bon pour la qualité de l'extrusion.

Voici ensuite l'imprimante après réglage :

La régulation est bien plus précise.

Pour recalculer votre PID, voici la marche à suivre :

  • Faire chauffer la tête d'impression à au moins 200°C et mettre un filament dedans.
  • Extruder un peu de matière pour s'assurer que le filament est bien amorcé.
  • Laisser refroidir la tête d'impression jusqu'à la température ambiante.
  • Une fois que la tête est de nouveau à température ambiante, lancer la commande suivante sur Repetier Host :

M303 E0 S210 C8

où E0 définit votre extrudeur à calibrer (E0 pour la tête n°1 et E1 pour la tête n°2), S210 est la température de calibration (ici 210°C, à ajuster en fonction de votre matière à extruder) et C8 le nombre d'itérations pour avoir une valeur précise (8 est une bonne valeur mais vous pouvez mettre plus). Pour en savoir un peu plus : m303

Si vous ne savez pas où mettre cette ligne de commande, c'est par ici (cliquer sur Easy Mode si cette case n’apparaît pas) :

Et lancer la commande en cliquant sur Envoyer ou Entrée.

La fenêtre de log va afficher que l’autotune PID démarre et la tête va être mise en chauffe.

A la fin du processus, qui va durer plusieurs minutes, le message suivant est affiché dans les logs :

Ici les valeurs finales de Kp, Ki et Kd sont respectivement de 21.50, 1.70 et 67.98. L’erreur de Line Number est normale à ce stade du test.

Ensuite, il faut soit reflasher le firmware de l'imprimante en remplaçant les valeurs Kp, Ki et Kd (se référer à la documentation de montage du kit dans ce cas), ou alors réécrire les valeurs d'EEPROM directement depuis Repetier Host dans Configuration → Configuration EEPROM du firmware :

Remplacer les valeurs Kp, Ki et Kd et cliquer sur Sauver dans EEPROM pour enregistrer les nouvelles valeurs.

Il est aussi possible de rentrer ces valeurs directement en GCODE, voir m301 et m500.