J'en avais assez d'utiliser Notepad++ pour ajouter mon G-Code spécifique au laser, alors je me suis intéressé au post-processing avec CamBam.

"Hé, Nico, le post processing c'est quoi?

  • Ecoute bien mon petit :

En fait, CamBam effectue deux opérations à partir d'un dessin :

  1. Il génère le parcours d'outil, en fonction du diamètre de l'outil et d'autres paramètres. Cette opération reste purement virtuelle. J'entends par là "indépendante de la machine".
  2. Il génère du G-Code à partir du parcours d'outil calculé. Ici, le programme écrit les instructions pour la machine. Et cette machine peut avoir des spécificités dans le G-Code qu'elle attend. Une certaine manière de décrire un arc, par exemple. C'est le travail du post processeur de générer les bonnes instructions pour la machine avec laquelle je vais travailler.

Je pense qu'on pourrait assimiler le parcours d'outil au code source d'un programme; le post-processeur, lui, est le compilateur spécifique pour la machine. Il en résulte un programme G-Code dont certaines instructions sont propre à cette machine.

En tout cas, c'est ma vision de la chose.

Avec CamBam, pour accéder au répertoire des post-processeurs, il faut aller dans (par défaut) : C:ProgramDataCamBamxxxpost.

On peut y trouver un certain nombre de post processeurs déjà disponibles, comme "default", "EMC2", "Mach3"... ça parlera à certains je pense.

Alors j'ai copié le default.cbpp en laser.cbpp et j'ai attaqué.

Le premier truc qui me prenait la tête, c'est les commentaires CamBam entre parenthèses. Je ne sais pas si c'est Repetier ou Marlin, mais un des deux n'aime pas. J'ai redéfini les commentaires avec des points-virgules (avant, je le faisais avec notepad++).

Mais les deux éléments les plus importants dans le cas du laser sont:

  • StartCut : G-Code injecté en début de coupe (c'est à dire Z sous la surface du brut)
  • EndCut : G-Code injecté en fin de coupe (Z au dessus du brut)

J'ai donc ajouté ceci, d'après ce que je disais dans l'article précédent:

[code]

<StartCut>;start laser M400 M42 P45 S255</StartCut> <EndCut>;Stop laser M400 M42 P45 S0</EndCut>

[/code]

Et voici un bout de G-Code généré avec ce post processeur:

[code]

G21 G90 G64 G40 G0 Z3.0 ;T3 : 0.0 ;T3 M6 ;Gravure1 G17 M3 S1000 G0 X0.0 Y0.0 G1 F300.0 Z-0.4 ;start laser M400 M42 P45 S255 G1 F800.0 X20.0 Y20.0 ;Stop laser M400 M42 P45 S0 G0 Z3.0

[/code]

Par contre c'est bête, il y a toujours les commandes de Z... Je n'ai pas encore trouvé comment les faire sauter automatiquement, celles-là... Alors en attendant je les vire avec un petit search & replace de notepad++ en mode expressions régulières : je remplace ".Z." par "" (ne pas tenir compte des guillemets). En gros ça efface les lignes qui contiennent la lettre Z.

Télécharger le post-processeur (à renommer en .cbpp)

Article précédent Article suivant