Post Processeurs

Le format des fichiers Gcode générés peut être contrôlé à l'aide des fichiers de définition des post processeurs. Ces définitions peuvent être crées, copiées et modifiées depuis la section Post Processeurs de l'onglet Système.

Le post-processeur utilisé pour un projet spécifique est défini dans les propriétés du dossier Usinage dans le groupe Post Processeur. Si aucun post processeur n'est spécifié, le post processeur par défaut sera utilisé.

Nouveauté 0.98N
Pour définir le post processeur par défaut, cliquez du bouton de droite de la souris sur le nom du post processeur dans la liste de l'onglet Système, puis sélectionnez Définir par défaut dans le menu contextuel. Le post processeur par défaut sera indiqué par une flêche verte à coté de son nom.


Le post processeur par défaut peut aussi être définit dans la configuration générale.

Note: Le post processeur défini dans le dossier Usinage à priorité sur le post processeur défini par défaut.

Pour que le post processeur défini par défaut soit utilisé par CamBam, aucun post processeur ne dois être sélectionné dans le dossier Usinage ; c.a.d. que le champ Post processeur du dossier Usinage doit être vide (cliquez dedans et effacer le nom du Post processeur si nécessaire)

 

Macros du Post processeur

Cette option est utilisée pour passer des macro utilisateur au post processeur. C'est un texte multiligne contenant des définitions de macros au format $macro=valeur. Quelques exemples de macros sont donnés ci-dessous.

$o=1234
$stock_height=0.4
Post processeur

Cette option fournit une liste déroulante permettant de sélectionner un des post processeurs disponibles dans le dossier système

Gestion des post processeurs

La liste des post processeurs disponibles est accessible à partir du dossier Post processeur de l'onglet Système. Ici, les définitions des post processeurs peuvent être créées, modifiées, copiées, renommées et supprimées.

De nouveaux post processeurs peuvent être créés via le menu contextuel accessible par un clic droit sur le dossier post-processeur. Alternativement, les définitions existantes peuvent être copiées, collées puis ensuite modifiées. C'est un bon moyen de créer des variations d'un post-processeur de travail..

Si des fichiers post processeurs sont modifiés, créés en dehors de CamBam ou dans une autre instance de CamBam, la liste des post processeurs doit être actualisée en utilisant le menu Outils - Recharger post processeurs.

Les post processeurs sont des fichiers XML avec une extension de fichier .cbpp, stockés dans le sous dossier \post du dossier système de CamBam.

Sections du post processeur

Le fichier XML contient un certain nombre de sections. Chaque section peut contenir un mélange de texte littéral, qui est transcrit directement dans le fichier Gcode de destination, et des macros texte au format ${format}. Les définitions de macros sont définies dans d'autres sections du post processeur, ou en définissant des macros utilisateur dans l'option Macros du Post processeur du dossier Usinage. Les macros sont évaluées et les valeurs texte qui en résultent sont écrites dans le Gcode.

Note: Si des sections de la liste suivante ne sont pas visibles dans les propriétés, assurez-vous que vous êtes en mode Avancé dans l'éditeur de propriétés.

(Principal) – Fichier post processeur

Cette section définit la structure générale du fichier gcode. Elle comprend généralement trois macros qui sont évalués en interne à partir des règles définies dans d'autres sections du post processeur.

{$header}       -        Cette macro est évaluée en utilisant la section En-tête décrites ci-dessous.

{$mops}         -        Cette macro est évaluée comme une liste de blocs de texte, un bloc pour chaque opération d'usinage. Chaque bloc est formaté en utilisant les règles de la section Opération d'usinage.

{$footer}         -        Cette macro est évaluée en utilisant la section Pied de page décrites ci-dessous.

Exemple:

%
O{$o}
MY FANUC POST )
{$header}
G0 X10Y10Z0
{$mops}
{$footer}
%
Note: la valeur de la macro {$o} est passée au post processeur en utilisant la propriété Macros du Post processeur du dossier Usinage, et qui contiendra quelque chose comme '$o=1234'

Le caractère % est écrit littéralement est sera omis si vous n'utilisez pas un programme de transfert de fichiers via le port RS232.

(Principal) – En-tête

Définit les règles utilisées par la macro {$header}.

Exemple:

{$comment} {$cbfile.name} {$date} {$endcomment}
{$tooltable}
{$comment} CUTVIEWER {$endcomment} {$comment} FROM/0,0,5 {$endcomment}
{$comment} TOOL/MILL,1,0,20.0,0 {$endcomment}
{$comment}STOCK/BLOCK,{$stock_width},{$stock_length},
{$stock_height},{$stock_x},{$stock_y},{$stock_z} {$endcomment}
{$cbfile.header}
{$units} {$distancemode} {$velocitymode} {$cuttercomp(off)}
{$toolchange(first)}
G54 ( Use fixture 1 )
{$clearance}

Une fois de plus, la propriété Macros du Post processeur est utilisée pour passer la macro {$stock_….} au post processeur qui, dans cet exemple pourrait contenir un texte comme:

$stock_length=150
$stock_width=150
$stock_height=12.7
$stock_x=75
$stock_y=75
$stock_z=12.7
 

(Principal) – Pied de page

Définit les règles utilisées par la macro {$footer}.

Exemple:

{$clearance}
G28 G91 Z0
G90 G53 X-15.0 Y0.0
M09
{$spindle(off)}
{$endrewind}

(Principal) – Opération d'usinage

Définit le formatage de chaque occurrence de la macro {$mops}. Cette information sera répétée dans le Gcode pour chaque opération d'usinage active.

Exemple:

{$comment} {$mop.name} {$endcomment}
{$toolchange}
{$velocitymode} {$workplane}
{$mop.header}
{$spindle} {$s}
{$blocks}
{$mop.footer}

(Principal) – Début de coupe

Macro à utiliser pour débuter une coupe. Elle peut être utilisé pour le plasma ou les découpe au laser pour allumer l'outil de coupe.

La macro Début de coupe est appelée lorsque qu'un mouvement en Z descendant sous Surface pièce est détecté.

(Principal) – Fin de coupe

Macro à utiliser pour terminer une coupe. Elle peut être utilisé pour le plasma ou les découpe au laser pour éteindre l'outil de coupe.

La macro Fin de coupe est appelée lorsqu'un mouvement rapide est détecté (G0) ou si un déplacement en vitesse d'usinage amène l'axe Z à une position supérieure ou égale à Surface pièce.

Exemple: Pour éteindre un laser afin de sauter les attaches de maintien, utilisez les attaches carrées et réglez la hauteur des attaches de sorte que leurs parties supérieures soient au-dessus de Surface pièce. La macro Début de coupe sera alors appelée lorsque qu'un mouvement en Z descendant sous Surface pièce sera détecté.

Nouveauté 0.98N Vous pouvez désormais utiliser les attaches de type "Sauter" pour l'utilisation avec un laser.

(Principal) – Macros du Post processeur

Nouveauté 0.98N
Cette propriété peux être utilisée pour définir des valeurs par défaut pour les macro personalisées utilisées dans le post processeur.

Les valeurs personnalisées de macro seront remplacées par les valeurs définies dans la propriété Macros du Post processeur du dossier Usinage.

Outils – Table des outils

Définit comment chaque entrée de la macro {$tooltable} est produite. Les tables d'outils sont généralement insérées dans l'en tête du fichier et contiennent un texte de commentaire décrivant la liste d'outils utilisés dans le fichier Gcode.

Exemple:

        {$comment} T{$tool.index} : {$tool.diameter} {$endcomment}

Outils – Changement d'outil

Définit le formatage de la macro {$toolchange}

Exemple:

{$clearance}
{$comment} T{$tool.index} : {$tool.diameter} {$endcomment}
{$comment} Tool Radius and Taper coming soon {$endcomment}
{$comment} TOOL/MILL, {$tool.diameter}, {$tool.radius},
    {$tool.length}, 0 {$endcomment}
T{$tool.index} M6

Codes G – G0, G1, G2, G3, G81, G82, G83

Ces sections définissent le formatage des fonctions Gcode courantes.

Codes G – Centre des arcs – mode absolu

Utilisé dans la macro {$mop.header} pour spécifier Mode IJ arcs en mode absolu. (G90.1 sous Mach3)

Codes G – Centre des arcs – mode incrémental

Utilisé dans la macro {$mop.header} pour spécifier Mode IJ arcs en mode incrémental. (G91.1 sous Mach3)

Codes G – Comp. du rayon d'outil à droite, à gauche, désactivée

Utilisé dans la macro {$cuttercomp(off|L|R)}. Généralement Off = G40, Gauche (L) = G41, Droite (R) = G42.

Codes G – Début de cycle de perçage

Séquence de codes utilisés au début d'un bloc de cycle de perçage. Généralement G98 pour un retour au niveau initial à la fin du cycle.

Codes G – Fin de cycle de perçage

Séquence de codes utilisés à la fin d'un bloc de cycle de perçage. Généralement G80.

Codes G – Distance Absolue, Distance Incrémentale

Généralement absolue=G90, incrémentale=G91. Note! Le mode incrémental n'est pas supporté pour l'instant.

Codes G – Unités (pouces), Unités (métriques)

Pouces = G20, millimètres = G21.

Codes G – Mode de déplacement - vitesse constante / trajectoire exacte

trajectoire exacte =G61, vitesse constante =G64.

Codes G – Plan de travail XY, Plan de travail XZ, Plan de travail YZ

XY=G17, XZ=G18, YZ=G19.

Codes G – Mode X - diamètre

Utilisé dans la macro {$lathexmode} pour spécifier que les valeurs de X sont données en mode diamètre.(G7 sur EMC2)

Codes G – Mode X - rayon

Utilisé dans la macro {$lathexmode} pour spécifier que les valeurs de X sont données en mode rayon.(G8 sur EMC2)

Codes M – Fin / Retour au début

Généralement M30.

Codes M – Répéter

Généralement M47.

Codes M – Broche rotation horaire, Broche rotation anti-horaire, Arrêt broche

Généralement:  horaire (CW) = M3, anti-horaire (CCW) = M4, arrêt = M5.

Codes M - Stop

Généralement M0.

Déplacements – Rapide, Avance travail (G1), Arc horaire, Arc anti-horaire

Cette section définit le formatage des fonctions Gcode de déplacement.

Exemple:

Rapide

	{$g0} {$_f} {$_x} {$_y} {$_z} {$_a} {$_b} {$_c}
  

Avance travail (G1)

	{$_g1} {$_f} {$_x} {$_y} {$_z} {$_a} {$_b} {$_c}
  

Arc horaire

	{$g2} {$_f} {$_x} {$_y} {$_z} {$i} {$j}
  

Arc anti-horaire

	{$g3} {$_f} {$_x} {$_y} {$_z} {$i} {$j}
Note: Les opérateurs gcode {$g. ..} et leurs paramètres peuvent être spécifiés en utilisant un préfixe trait de soulignement (_). Il s'agit de montrer les valeurs qui sont modales (persistantes). Elles ne seront écrites dans le code que si la valeur actuelle a changée. L'omission du trait de soulignement force l'écriture du paramètre.

Cycles de perçage – Perçage, Perçage avec débourrage, avec temporisation

Cette section définit le formatage des fonctions Gcode de cycle de perçage.

Perçage

	{$g81} {$_x} {$_y} {$_z} {$_r} {$_f}
  

Perçage avec temporisation

	{$g82} {$_x} {$_y} {$_z} {$p} {$_r} {$_f}
  

Perçage avec débourrage

	{$g83} {$_x} {$_y} {$_z} {$p} {$_q} {$_r} {$_f}

Tournage – Mode X tour

Pour les opérations de tournage, spécifie si les valeurs de X sont fournies en diamètre ou en rayon.

Tournage – Décalage du rayon (tour)

Si à Faux, le parcours d'outil passe par le centre du rayon de l'outil.

Si à Vrai, un décalage de la trajectoire est appliqué en fonction du rayon de l'outil.
Le parcours sera décalé d'une valeur négative en X équivalent au rayon de l'outil. La direction du décalage en Z du rayon de l'outil est déterminée par la direction de coupe.

Pour une coupe à droite, la valeur en Z sera décalée d'une valeur négative, d'une valeur positive pour une coupe à gauche.

Dans le dessin ci-dessus, la croix rouge représente le point de référence de la trajectoire lorsque Décalage du rayon (tour) est à Vrai. Si à Faux, c'est le point noir au centre du rayon de l'outil qui servira de point de référence. Le point de référence est parfois appelé point 'virtuel' ou 'imaginaire' de l'outil.

 

Numérotation des lignes - Ajouter des numéros de ligne

Nouveauté 0.98N
Si à Vrai, des numéros de ligne sont insérés au début de chaque ligne de Gcode.

Numérotation des lignes - Espace après

Nouveauté 0.98N
Si à Vrai, un espace sera inséré après le numéro de ligne.

Numérotation des lignes - Format

Nouveauté 0.98N
Contrôle la façon dont les valeurs numériques sont affichées.

Le caractères '0' définit un emplacement qui contiendra soit un chiffre significatif soit un 0.

Le caractère "#" définit un emplacement qui contiendra soit un chiffre significatif soit un espace s'il n'y a pas de chiffre significatif à cette position.

Numérotation des lignes - Ignorer

Nouveauté 0.98N
Les lignes où le premier caractère n'est pas un espace est qui se trouvent dans cette liste ne recevront pas de numéro de ligne.

Numérotation des lignes - Incrément

Nouveauté 0.98N
Le numéro de ligne sera incrémenté de cette valeur chaque fois qu'un numéro de ligne sera ajouté.

Numérotation des lignes - N° de départ

Nouveauté 0.98N
Valeur de départ de la numérotation

Numérotation des lignes - Préfixe

Nouveauté 0.98N
Ce texte (généralement le caractère 'N') sera écrit devant le numéro de ligne.

 

Options – Sortie des arcs

Détermine le mode de sortie des arcs dans le Gcode. Si réglé sur Convertir en lignes, de courtes lignes seront utilisées à la place des arcs. (utile pour l'utilisation avec des logiciels comme CNC Wrapper par exemple)

Options – Tolérance conversion arcs-> lignes

Si Sortie des arcs = Convertir en lignes est utilisé, cette valeur contrôle l'erreur maximum autorisée pour la conversion des arcs en lignes. Une faible tolérance produit des courbes plus lisses mais des fichiers plus gros.

Options – Axe du plan de dégagement

Utilisé pour définir dans quelle direction les déplacements vers le plan de dégagement seront fait. Généralement Z, mais doit être réglé à X ou Z pour les opérations de tournage.

Options – Début de commentaire, Fin de commentaire

Définit le texte qui sera utilisé au début et à la fin d'un commentaire.

Exemple1:

Début de commentaire: (
Fin de commentaire: )

Exemple2:

Début de commentaire: ;
Fin de commentaire:

Options – Fin de ligne

Séquence de caractère utilisée à la fin d'une ligne. Les codes d'échappement \r et \n peuvent être utilisés.

Options – Inverser les arcs

Contrôle le comportement des arcs sur le plan XZ (G18).

Pour les opérations de fraisage, il doit être réglé à Faux. La direction des arcs sera alors relative à l'axe Y positif.

Pour les opérations de tournage cette option doit généralement être à vrai. Le sens des arcs sur un tour est généralement relatif à la direction 'haut' cela implique un axe Y positif en utilisant un système de coordonnées orienté à gauche. CamBam utilise un système de coordonnées orienté à droite de sorte que les arcs en XZ doivent être inversés lors de l'écriture du G-code.

Options – Longueur minimale des arcs

Une valeur numérique qui contrôle la précision maximum utilisée pour la génération des déplacements en arcs de cercle (G2, G3). Si la longueur d'un arc est inférieure à la valeur Longueur minimale des arcs un mouvement en ligne droite (G1) est utilisé à la place. Ceci est utile pour les utilisateurs de TurboCNC où des arcs très faibles peuvent causer quelques problèmes qui peuvent apparaître comme des fossettes dans le parcours d'outil.

Exemple:

Longueur minimale de arcs = 1e-4

Options – Rayon maximum des arcs

Une valeur numérique qui contrôle le rayon maximum autorisé pour les déplacements en arc de cercle. Si le rayon de l'arc dépasse cette valeur, un mouvement en ligne droite (G1) est utilisé.

Exemple:

Rayon maximum des arcs = 1e6

Options – Format des nombres

Il s'agit d'un modèle de formatage qui contrôle la façon dont les nombres à virgule flottante sont affichés.

Un caractère dièse (#) désigne un emplacement optionnel pour un chiffre et un caractère 0 représente un chiffre qui sera toujours affiché, en ajoutant des zéros de remplissage si nécessaire.

Cela peut aussi modifier les instructions Gcode nécessaires. Par exemple, si un parcours d'outil contient un passage de X = 1,234 à X = 1,233 et si un format de nombre de #. # 0 est utilisé, aucune instruction de mouvement ne sera écrite dans le Gcode car si elle sont  formatées à 2 décimales, ces deux coordonnées sont identiques.

Options – Descente rapide vers le plan de dégagement

Si à Vrai et si Z est à une position plus élevée que le plan de dégagement, une descente en rapide vers le plan de dégagement sera effectuée.
Si à Faux cette descente rapide sera désactivée.

Options – Supprimer les erreurs de l'analyseur

Le post-processeur va analyser le Gcode lorsqu'il est créé pour mettre à jour les valeurs internes tels que les registres. Cela peut produire des messages d'erreur pour des post-processeurs qui produisent du Gcode non standard . Dans de nombreux cas le Gcode sera toujours correctement généré et les messages d'erreur peut être ignorés.

Régler Supprimer les erreurs de l'analyseur à Vrai évitera l'affichage des erreurs d'analyse, mais cela peut par ailleurs masquer les messages d'erreurs réelles.

Options – Majuscules

Si la valeur est à Vrai, le post-processeur convertit tout le texte écrit dans le fichier gcode en majuscules. Ceci est particulièrement utile pour les systèmes Fanuc qui ne supportent pas les caractères minuscules.

Options - Mode IJ arcs

Nouveauté 0.98N
Cette propriété détermine si les paramètres I et J utilisés pour les déplacements en arc de cercle se réfèrent à des coordonnées relatives ou absolues par rapport aux paramètres X et Y. Si ce paramètre est réglé différemment dans l'interpréteur de commande de votre CN (logiciel de pilotage) le résultat peut se traduire par des arcs de cercles aléatoires.

Par défault: Dans ce cas ce sont les valeurs du post-processeur qui seront utilisés. Si le post-processeur utilise aussi une valeur "Par défaut", le mode Incremental (C-P1) sera utilisé

Absolu: I & J sont les coordonnées absolues du centre de l'arc

Incremental (C-P1): I & J sont les coordonnées du centre de l'arc, relatives au premier point de l'arc. C'est le mode incrémental typique. Dans les précédantes versions, il était simplement appelé Incrémental

Incremental (P1-C): I & J sont les coordonnées du premier point de l'arc relatives au centre de l'arc.

Incremental (C-P2): I & J sont les coordonnées du centre de l'arc, relatives au second point de l'arc.

Incremental (P2-C)I: & J sont les coordonnées du second point de l'arc relatives au centre de l'arc.

Post traitement – Commande de post-traitement, Cmd. de post-traitement - args

Commande de post-traitement peut être utilisé pour spécifier une application externe qui modifiera le Gcode produit par le post processeur.

Cmd. de post-traitement - args contient les arguments à passer à l'application de traitement.

Les macros suivantes sont reconnues:

{$outfile}:            Le nom du fichier Gcode brut produit par le post processeur
{$cbfile.name}:    Le nom court du document CamBam en cours

Note: Des guillemets doubles doivent être utilisés dans les arguments pour éviter les problèmes avec les espaces dans les noms de fichiers

Exemple:

Commande de post-traitement = C:\bin\gcodelinenums.exe
Cmd. de post-traitement - args = "{$outfile}" "{$outfile}.out"

Les macros du post processeur

$arc.i $arc.j $arc.k
Retourne la valeur du registre I, J ou K du mouvement en arc courant. Le préfixe 'I', 'J' ou 'K' n'est pas retourné.
$arc.radius
Retourne le rayon du mouvement en arc courant. Les arcs de 0° à 180° on un rayon positif, les arcs de 180° à 360° on un rayon négatif.
$arc.start
$arc.sweep
$arc.end

Nouveauté 0.98N

Retourne le début, la fin ou l'angle de balayage de l'arc courant.

Les angles sont mesurés en degrés, 0° aligné avec l'axe X coté positif.

Les arcs Anti-horaires ont un angles de balayage positif, les arcs horaires un angle de balayage négatif.

$arccentermode
Nouveauté 0.98N
Retourne un G90.1 (absolu) ou un G91.1(incrémental) suivant le Mode IJ arcs choisis pour la sortie des arcs de cercle.
$blocks Cette macro est générée en interne et contient toutes les instructions de déplacement requises par l'opération d'usinage en cours.
$comment Insère le texte défini dans la propriété Début de commentaire du post processeur
$cbfile.footer Insère les options définies dans la propriété Fin de fichier personnalisée du dossier Usinage du projet.
$cbfile.header Insère les options définies dans la propriété En-tête de fichier personnalisée du dossier Usinage du projet.
$cbfile.name Insères le nom défini dans la propriété Nom du dossier racine du projet.
$check(x,y,z) Générée en interne, cette macro vérifie les paramètres des coordonnées x, y, z en fonction de l'emplacement actuel de l'outil. Si différentes une séquence de mouvements sera insérée pour se déplacer à la nouvelle position en passant par le Plan de dégagement et en utilisant la vitesse de plongée si nécessaire.
$clearance Mouvement rapide (G0) jusqu'au Plan de dégagement
$cuttercomp(off|L|R) Compensation du rayon d'outil. Note: Pour l'instant, CamBam ne calcul pas la compensation du rayon d'outil.
off (désactivée) = G40                   L (gauche) = G41                  R (droite) = G42
$date Insère la date courante.
$distancemode Toujours égale à G90 pour l'instant
$endcomment Insère le texte défini dans la propriété Fin de commentaire du post processeur.
$endrewind Insère le texte défini dans la propriété Fin / Retour au début du post processeur.
Typiquement = M30
$footer Evalue le texte placé dans la propriété Pied de page du post processeur.
$g0, $g1, $g2, $g3, $g81, $g82, $g83

$_g0, $_g1, $_g2, $_g3, $_g81, $_g82, $_g83
Ces macros contrôlent la façon dont le Gcode est formaté. Le format de chaque code est tiré de la définition G... du fichier .cbpp. Cela peut être utile pour contrôler le remplissage de zéros (par exemple: G1 au lieu deG01), ou pour utiliser d'autres codes G.

Si le préfixe trait de soulignement ( _ )est utilisé, ces instructions sont supposées être modales (persistantes). Du code sera écrit pour la première occurrence, mais omis pour les blocs suivants s'ils utilisent la même instruction.
$header Evalue le texte placé dans la section En-tête du post processeur.
$mop.clearanceplane
Retourne la valeur du paramètre Plan de dégagement de l'opération courante.
$mop.cutfeedrate

Retourne la valeur du paramètre Vitesse d'avance de l'opération courante.

Le préfixe 'F' n'est pas retourné.

$mop.depthincrement
Retourne la valeur du paramètre Incrément de passe de l'opération courante.
$mop.dwell
Retourne la valeur du paramètre Pause de l'opération de perçage courante.
$mop.first.x
$mop.first.y
$mop.first.z
Nouveauté 0.98N

Retourne les coordonnées X, Y ou Z du premier point des parcours d'outil de l'opération d'usinage courante.

Ces macros peuvent être utilisées après un changement d'outil pour déplacer les axes X et Y à la position suivante d'usinage tout en conservant la hauteur Z du changement d'ouitl, puis de descendre ensuite à la hauteur du plan de dégagement.

$mop.footer Insère le contenu de la propriété Fin d'opération personnalisée de l'opération d'usinage courante.
$mop.header Insère le contenu de la propriété En-tête d'opération personnalisée de l'opération d'usinage courante.
$mop.holediameter
Retourne la valeur du paramètre Diamètre du trou de l'opération de perçage courante.
$mop.name Insère le contenu de la propriété Nom de l'opération d'usinage courante.
$mop.peckdistance
Retourne la valeur du paramètre Incrément débourrage de l'opération de perçage courante.
$mop.plungefeedrate

Retourne la valeur du paramètre Vitesse d'avance en plongée de l'opération courante.

Le préfixe 'F' n'est pas retourné.

$mop.retractheight
Retourne la valeur du paramètre Hauteur de rétraction de l'opération de perçage courante.
$mop.stocksurface

Retourne la valeur du paramètre Surface pièce de l'opération courante.

$mop.tag
Retourne la valeur du paramètre Info de l'opération courante.
$mop.targetdepth
Retourne la valeur du paramètre Profondeur finale de l'opération courante.
$move.x
$move.y
$move.z

Retourne les valeurs X, Y et Z du mouvement en cours. (valeurs du registre)

Les préfixes 'X', 'Y' et 'Z' ne sont pas retournés.

$mops Insère une liste d'objets, une entrée par opération d'usinage active. Chaque entrée de la liste est formatée en utilisant les définitions de la propriété Opération d'usinage du post processeur.
$part.name Insère le nom du Groupe d'usinage courant
$post.toolchange
Nouveauté 0.98N
Insère la macro de changement d'outil du post processeur, cela peut être utile pour inclure cette définition dans la propriété Changement d'outil des définitions d'outils.
$repeat Insère le texte défini dans la propriété Répéter du post processeur.
Typiquement = M47
$s Insère le contenu de la propriété Vitesse de rotation de l'opération d'usinage courante.
$set(x|y|z|a|b|c|f|p|q|r,<value>)

Définit la valeur courante du registre X, Y ou Z spécifié. Aucun Gcode n'est crée

Exemple: $set(z,5.5)

Cela peut être utile après l'utilisation d'une macro personnalisée de changement d'outil afin d'informer le post processeur des nouvelles coordonnées de l'outil après son changement.
$spindle Insère une macro dépendante de la valeur de la propriété Sens de rotation de l'opération d'usinage courante.   Sens horaire (cw) = M3 , Sens anti-horaire (ccw) = M4 , Arrêt (off) = M5
$spindle(off|cw|ccw) Sens horaire (cw) = M3 , Sens anti-horaire (ccw) = M4 , Arrêt (off) = M5
$stock_length Insère le contenu de la propriété Dimension X du brut défini dans le dossier Usinage ou dans un Groupe d'usinage
$stock_width Insère le contenu de la propriété Dimension Y du brut défini dans le dossier Usinage ou dans un Groupe d'usinage
$stock_height Insère le contenu de la propriété Dimension Z du brut défini dans le dossier Usinage ou dans un Groupe d'usinage
$stock_x Insère le contenu de la propriété Décalage X du brut défini dans le dossier Usinage ou dans un Groupe d'usinage
$stock_y Insère le contenu de la propriété Décalage Y du brut défini dans le dossier Usinage ou dans un Groupe d'usinage
$stock_z Insère le contenu de la propriété Surface pièce du brut défini dans le dossier Usinage ou dans un Groupe d'usinage
$stop Insère le texte défini dans la propriété Stop du post processeur.
Typiquement = M0
$tool.comment
Nouveauté 0.98N
Insère le contenu de la propriété Commentaire de l'outil courant.
$tool.diameter Insère le contenu de la propriété Diamètre de l'outil de l'opération d'usinage courante.
$tool.index Insère le contenu de la propriété Numéro d'outil de l'opération d'usinage courante.
$tool.length Insère le contenu de la propriété Longueur définie pour cet outil dans la bibliothèque d'outils.
$tool.name
Nouveauté 0.98N
Insère le contenu de la propriété Nom définie pour cet outil dans la bibliothèque d'outils ou T(num d'outil) s'il n'est pas défini dans la bibliothèque.
$tool.profile
Insère le contenu de la propriété Forme d'outil définie pour cet outil dans la bibliothèque d'outils.
$tool.radius Utilise la propriété Forme d'outil pour déterminer le rayon de l'outil.
0 pour une fraise cylindrique, D/2 pour une fraise à bout rond.
$tool.veeangle
Nouveauté 0.98N
Insère le contenu de la propriété Angle de la fraise définie pour cet outil dans la bibliothèque d'outils ou 0 s'il n'est pas défini dans la bibliothèque.
$toolchange Insère une instruction de changement d'outil basée sur définition contenue dans la propriété Changement d'outil du post processeur.Si le n° d'outil n'a pas changé, aucun code n'est inséré.
$toolchange(first) Insère une instruction de changement d'outil utilisant le premier outil de la liste d'outil du projet courant.
$tooltable Insère une liste de tous les outils utilisés dans le projet courant. Chaque entrée est formatée en utilisant la définition Table des outils du post processeur.
$units Utilise la propriété Unités de dessin du dossier racine du projet.
mm = G21, pouces = G20
$velocitymode Insère le contenu de la propriété Mode de déplacement de l'opération d'usinage courante.Trajectoire exacte = G61 , Vitesse constante = G64
$workplane Insère le contenu de la propriété Plan de travail  de l'opération d'usinage courante.
XY = G17 , XZ = G18 , YZ = G19
$x, $y, $z, $a, $b, $c, $i, $j, $f, $r, $p, $q

$_x, $_y, $_z, $_a, $_b, $_c, $_i, $_j, $_f, $_r, $_p, $_q
Ces macros insèrent les paramètres utilisés dans les commandes de déplacement courantes du Gcode.

Si le préfixe trait de soulignement ( _ )est utilisé, ces instructions sont supposées être modales (persistantes). Cela signifie qu'ils ne seront écrits dans le code uniquement si la valeur courante à changée. Omettre le ( _ ) force leur écriture.
$xneg, $yneg, $zneg, ...
Même chose que les macros $x, $_y etc, mais avec inversion du signe.
$xabs, $yabs, $zabs, ...
Même chose que les macros $x, $_y etc, mais toujours positive (valeur absolue)
Copyright (c) 2011 HexRay Ltd