Tout le G-code de LinuxCNC
JavaScript must be enabled in your browser to display the table of contents.
1. Conventions d’écriture du G-code
Dans une commande type, le tiret (–) signifie une valeur réelle et les signes
(<>) indiquent un item facultatif.
Si L- est écrit dans une commande, le signe – fera référence à Lnombre.
De la même manière, le signe – dans H- peut être appelé le Hnombre et
ainsi de suite pour les autres lettres. Une valeur facultative sera
écrite .
Dans les blocs de G-code, le mot axes signifie n’importe quel axe défini dans la configuration.
Une valeur réelle peut être:
- – un nombre explicite, 4 par exemple.
- – une expression, [2+2] par exemple.
- – une valeur de paramètre, #88 par exemple.
- – une fonction unaire de la valeur, acos[0] par exemple.
Dans la plupart des cas, si des mots d’axes sont donnés
parmi XYZABCUVW, ils spécifient le point de destination.
Les axes sont donnés dans le système de coordonnées courant,
à moins qu’explicitement décrit comme étant dans le système de coordonnées
absolues (machine).
Les axes sont facultatifs, tout axe omis gardera sa valeur courante.
Tout item dans un bloc de G-code, non explicitement décrit comme facultatif,
sera requis. Une erreur sera signalée si un item requis est omis.
Dans les commandes, les valeurs suivant les lettres sont souvent
données comme des nombres explicites. Sauf indication contraire, les
nombres explicites peuvent être des valeurs réelles. Par exemple, G10
L2 pourrait aussi bien être écrite G[2*5] L[1+1]. Si la valeur du
paramètre 100 étaient 2, G10 L#100 signifierait également la même
chose.
2. Table d’index du G-code
Sections | Descriptions |
---|---|
Interpolation linéaire en vitesse rapide |
|
Interpolation linéaire en vitesse travail |
|
Interpolation circulaire sens horaire/anti-horaire |
|
Temporisation |
|
Spline cubique |
|
B-Spline quadratique |
|
NURBS, ajout point de contrôle |
|
NURBS, exécute |
|
Mode diamètre (sur les tours) |
|
Mode rayon (sur les tours) |
|
Ajuste les valeurs de l’outil en table d’outils |
|
Modifie les valeurs de l’outil dans la table d’outils |
|
Fixe les valeurs de l’outil dans la table d’outils |
|
Fixe l’origine d’un système de coordonnées |
|
Fixe l’origine du système de coord. aux valeurs calculées |
|
Choix du plan de travail |
|
Unités machine |
|
Aller à une position prédéfinie |
|
Aller à une position |
|
Mouvement avec broche synchronisée |
|
Taraudage rigide |
|
Mesures au palpeur |
|
Révocation de la compensation de rayon d’outil |
|
Compensation de rayon d’outil |
|
Comp. dynamique de rayon d’outil à gauche/à droite |
|
Compensation de longueur d’outil d’après une table d’outils |
|
Compensation dynamique de longueur d’outil |
|
Révocation de la compensation de |
|
Déplacements en coordonnées |
|
Choix du système de coordonnées (1 à 9) |
|
Mode trajectoire exacte/mode arrêts exacts |
|
Mode trajectoire continue avec tolérance |
|
Cycle de perçage avec brise copeau |
|
Cycle de filetage multipasses (tour) |
|
Révocation des codes modaux |
|
Cycle de perçage |
|
Autres cycles de perçage |
|
Perçage avec débourrage |
|
Taraudage à droite (pas encore implémenté) |
|
Alésage, retrait en vitesse travail |
|
Alésage, retrait en vitesse rapide |
|
Cycle d’alésage arrière (pas encore implémenté) |
|
Cycle alésage, Stop, Retrait manuel |
|
Cycle d’alésage avec tempo, recul vitesse travail |
|
Types de déplacement |
|
Arc I,J,K, centre absolu ou relatif |
|
Décalages d’origines avec mise à jour des paramètres |
|
Révocation des décalages d’origine |
|
Applique contenu des paramètres aux déc. d’origine |
|
Modes de vitesse |
|
Vitesse de coupe constante (IPM ou m/mn) |
|
Vitesse en tours par minute |
|
Options de retrait des cycles de perçage |
3. G0 Interpolation linéaire en vitesse rapide
G0 axes
Pour un mouvement linéaire en vitesse rapide, programmer G0 axes,
tous les mots d’axe sont facultatifs. Le G0 est facultatif si le mode mouvement
courant est déjà G0. Cela produit un mouvement linéaire vers le point de
destination à la vitesse rapide courante (ou moins vite si la machine n’atteint
pas cette vitesse). Il n’est pas prévu d’usiner la matière quand une
commande G0 est exécutée. Un G0 seul peut être utilisé pour passer le mode
de mouvement courant en G0.
G90 (Fixe les déplacements en mode absolu) G0 X1 Y-2.3 (mouvement linéaire en vitesse rapide du point courant à X1 Y-2.3) M2 (fin de programme)
Si la compensation d’outil est active, le mouvement sera
différent de celui décrit ci-dessus, voir la section
sur la compensation de d’outil.
Si G53 est programmé sur la même ligne, le mouvement sera également
différent, voir la section sur les mouvements en coordonnées absolues.
C’est une erreur si:
- Un mot d’axe est indiqué sans valeur réelle.
- Un mot d’axe est indiqué qui n’est pas configuré.
4. G1 Interpolation linéaire en vitesse travail
G1 axes
Pour un mouvement linéaire en vitesse travail, (pour usiner ou non)
programmer G1 axes, tous les mots d’axe sont facultatifs. Le G1 est
facultatif si le mode de mouvement courant est déjà G1.
Cela produira un mouvement linéaire vers le point de destination à
la vitesse de travail courante (ou moins vite si la machine n’atteint
pas cette vitesse). Un G1 seul peut être utilisé pour passer le mode de
mouvement courant en G1.
G90 (Fixe les déplacements en mode absolu) G1 X1.2 Y-3 F10 (mouvement linéaire à 10 unités/mn du point courant à X1.2 Y-3) Z-2.3 (mouvement linéaire à 10 unités/mn du point courant à Z-2.3) Z1 F25 (mouvement linéaire de l'axe Z à 25 unités/mn vers Z1) M2 (Fin de programme)
Si la compensation d’outil est active, le mouvement sera
différent de celui décrit ci-dessus, voir la section
sur la compensation d’outil.
Si G53 est programmé sur la même ligne, le mouvement sera également
différent, voir la section sur les mouvements en coordonnées absolues.
C’est une erreur si:
- – Aucune vitesse d’avance travail n’est fixée.
- – un mot d’axe est indiqué sans valeur réelle.
- – un mot d’axe est indiqué qui n’est pas configuré.
5. G2, G3 Interpolation circulaire en vitesse travail
G2 ou G3 axes décalages (format centre) G2 ou G3 axes R- (format rayon) G2 ou G3 décalages (cercles complet)
Un mouvement circulaire ou hélicoïdal est spécifié en sens horaire
avec G2 ou en sens anti-horaire avec G3. La direction est vue depuis
le côté positif de l’axe autour duquel le mouvement se produit.
Les axes de cercle ou les hélicoïdes, doivent être parallèles aux
axes X, Y ou Z du système de coordonnées machine.
Les axes (ou, leurs équivalents, les plans perpendiculaires aux axes)
sont sélectionnés avec G17 (axe Z, plan XY),
G18 (axe Y, plan XZ), ou G19 (axe X, plan YZ).
Les plans 17,1, 18,1 et 19,1 ne sont pas actuellement pris en charge.
Si l’arc est circulaire, il se trouve dans un plan parallèle au plan sélectionné.
Pour programmer un hélicoïde, inclure le mot d’axe perpendiculaire au
plan de l’arc. Par exemple, si nous sommes dans le plan G17, inclure
un mot Z, ceci provoquera un mouvement de l’axe Z vers valeur programmée
durant tout le mouvement circulaire XY.
Pour programmer un arc supérieur à un tour complet, utiliser un
mot P spécifiant alors le nombre de tours complets en plus de l’arc.
Si P n’est pas spécifié, le comportement sera comme si P1 avait été
donné: ceci étant, un seul tour complet ou partiel sera effectué,
donnant un arc plus petit ou égal à un tour complet.
Par exemple, si un arc de 180° est programmé avec P2, le mouvement résultant
sera d’un tour et demi. Pour chaque incrément de P au delà de 1, un tour complet
sera ajouté à l’arc programmé. Les arcs hélicoïdaux multitours sont
supportés ce qui donne des mouvements très intéressants pour usiner des
alésages ou des filetages.
Si une ligne de G-code crée un arc et inclus le mouvement d’un
axe rotatif, l’axe rotatif tournera à vitesse constante de sorte que
le mouvement de l’axe rotatif commence et se termine en même temps que
les autres axes XYZ. De telles lignes sont rarement programmées.
Si la compensation d’outil est active, le mouvement sera
différent de celui décrit ci-dessus, voir les sections
sur G40 et sur G41-G42.
Le centre de l’arc est absolu ou relatif, tel que fixé par
G90.1 ou G91.1, respectivement.
C’est une erreur si:
- Aucune vitesse d’avance travail n’est spécifiée.
Deux formats sont possibles pour spécifier un arc: Le format centre et
le format rayon.
5.1. Arc au format centre (format recommandé)
Les arcs au format centre sont plus précis que les arcs au format rayon, c’est
le format à privilégier.
La distance entre la position courante et le centre de l’arc et,
facultativement, le nombre de tours, sont utilisés pour programmer des arcs
inférieurs au cercle complet. Il est permis d’avoir le point final de l’arc
égal à la position courante.
Le décalage entre le centre de l’arc et la position courante ainsi
que facultativement, le nombre de tours, sont utilisés pour programmer des
cercles complets.
Une erreur d’arrondi peut se produire quand un arc est programmé avec une
précision inférieure à 4 décimales (0.0000) pour les pouces et à moins de
3 décimales (0.000) pour les millimètres.
Les décalages par rapport au centre de l’arc sont des distances relatives au
point de départ de l’arc. Le mode distance relative de l’arc est le
mode par défaut.
Un ou plusieurs mots d’axe et un ou plusieurs décalages doivent être programmés
pour un arc qui fait moins de 360 degrés.
Aucun mot d’axe mais un ou plusieurs décalages doivent être programmés pour un
cercle complet. Le mot P, par défaut à 1, est facultatif.
Pour d’avantage d’information sur les arcs en mode relatif, voir la
section G91.1.
Les décalages par rapport au centre de l’arc sont des distances absolues depuis
la position 0 courante des axes (origine machine).
Un ou plusieurs mots d’axe et tous les décalages doivent être programmés pour
les arcs de moins de 360 degrés.
Aucun mots d’axe mais tous les décalages doivent être programmés pour un
cercle complet. Le mot P, par défaut à 1, est facultatif.
Pour d’avantage d’information sur les arcs en mode absolu, voir la
section G90.1.
G2 ou G3
- Z – hélicoïde
- I – décalage en X
- J – décalage en Y
- P – nombre de tours
G2 ou G3
- Y – hélicoïde
- I – décalage en X
- K – décalage en Z
- P – nombre de tours
G2 ou G3
- X – hélicoïde
- J – décalage en Y
- K – décalage en Z
- P – nombre de tours
C’est une erreur si:
- Aucune vitesse d’avance travail n’est fixée avec le mot F.
- Aucun décalage n’est programmé.
- Quand l’arc est projeté dans le plan courant, la distance depuis le point
courant et le centre diffère de la distance entre le point final et le centre,
de plus de (.05 pouce/.5 mm) OU ((.0005 pouce/.005mm) ET .1% du rayon).
Déchiffrer le message d’erreur Le rayon à la fin de l’arc diffère de celui
du début:
- début – position courante
- centre – la position du centre telle que calculée avec les paramètres I,J ou
K - fin – le point final programmé
- r1 – le rayon entre le point de départ et le centre
- r2 – le rayon entre le point final et le centre
5.2. Exemples d’arcs au format centre
Calculer des arcs à la main peut être difficile.
Il est possible de dessiner l’arc à l’aide d’un programme de DAO
pour obtenir les coordonnées et les décalages.
Garder à l’esprit les tolérances, il pourrait être nécessaire de modifier
la précision de la DAO pour obtenir les résultats souhaités.
Une autre option consiste à calculer les coordonnées et les décalages
en utilisant des formules. Comme vous pouvez le voir sur la figure suivante
un triangle peut être formé à partir de la position courante,
de la position de fin et du centre de l’arc.
Sur la figure suivante, vous voyez que la position de départ est X0 Y0, la
position finale est X1 Y1. La position du centre de l’arc est X1 Y0.
Ceci donne un décalage de 1 depuis la position de départ sur l’axe X et
0 sur l’axe Y. Dans ce cas seul le décalage I est nécessaire.
Le G-code de cet exemple serait:
G0 X0 Y0 G2 X1 Y1 I1 F10 (arc en sens horaire dans le plan XY)
Dans cet autre exemple, nous pouvons voir les différences de décalages
pour Y selon que nous faisons un mouvement G2 ou un mouvement G3.
Pour le mouvement G2 la position de départ est en X0 Y0, alors que
pour le mouvement G3 elle est en X0 Y1. Le centre de l’arc est en
X1 Y0.5 pour les deux. Le décalage J du mouvement G2 est 0.5 alors que
celui du mouvement G3 est -0.5.
Le G-code de cet exemple serait:
G0 X0 Y0 G2 X0 Y1 I1 J0.5 F25 (arc en sens horaire dans le plan XY) G3 X0 Y0 I1 J-0.5 F25 (arc en sens anti-horaire dans le plan XY)
Voici un exemple au format centre pour usiner une hélice:
G0 X0 Y0 Z0 G17 G2 X10 Y16 I3 J4 Z-1 (Arc hélicoïdal avec ajout de Z)
G0 X0 Y0 Z0 G2 X0 Y1 Z-1 I1 J0.5 P2 F25
Cet exemple signifie, faire un mouvement circulaire ou hélicoïdal en
sens horaire (vu du côté positif sur l’axe Z), dont l’axe est parallèle
à l’axe Z, se terminant en X10, Y16 et Z9, avec son centre décalé
de 3 unités dans la direction X, par rapport à la position X courante.
Son centre décalé dans la direction Y de 4 unités depuis la position Y courante.
Si la position courante est X7, Y7 au départ, le centre sera en X10, Y11.
Si la valeur de départ en Z est 9, ce sera un arc circulaire. Autrement,
ce sera un arc hélicoïdal. Le rayon de cet arc serait de 5 unités.
Dans le format centre, le rayon de l’arc n’est pas spécifié, mais il
peut facilement être trouvé puisque c’est la distance entre le
point courant et le centre du cercle, ou le point final de l’arc et le centre.
5.3. Arcs au format rayon (format non recommandé)
G2 ou G3 axes R-
- R – rayon depuis la position courante
Ce n’est pas une bonne pratique de programmer au format rayon des
arcs qui sont presque des cercles entiers ou des demi-cercles, car un
changement minime dans l’emplacement du point d’arrivée va produire un
changement beaucoup plus grand dans l’emplacement du centre du cercle
(et donc, du milieu de l’arc). L’effet de grossissement est tellement
important, qu’une erreur d’arrondi peut facilement produire un usinage
hors tolérance. Par exemple, 1% de déplacement de l’extrémité d’un arc
de 180 degrés produit 7% de déplacement du point situé à 90 degrés le
long de l’arc. Les cercles presque complets sont encore pires.
Autrement, l’usinage d’arcs, inférieurs à 165 degrés ou compris entre
195 et 345 degrés sera possible.
Dans le format rayon, les coordonnées du point final de l’arc, dans le
plan choisi, sont spécifiées en même temps que le rayon de l’arc.
Programmer G2 axes R- (ou utiliser G3 au lieu de G2 ). R est le
rayon. Les mots d’axes sont facultatifs sauf au moins un
des deux du plan choisi, qui doit être utilisé. Un rayon positif
indique que l’arc fait moins de 180 degrés, alors qu’un rayon négatif
indique un arc supérieur à 180 degrés. Si l’arc est hélicoïdal, la
valeur du point d’arrivée de l’arc dans les coordonnées de l’axe
perpendiculaire au plan choisi sera également spécifiée.
C’est une erreur si:
- Les deux mots d’axes pour le plan choisi sont omis.
- Le point d’arrivée de l’arc est identique au point courant.
Voici un exemple de commande pour usiner un arc au format rayon:
G17 G2 X10 Y15 R20 Z5 (arc au format rayon)
Cet exemple signifie, faire un mouvement en arc ou hélicoïdal en sens horaire
(vu du côté positif de l’axe Z), se terminant en X=10, Y=15 et Z=5,
avec un rayon de 20. Si la valeur de départ de Z est 5, ce sera un arc
de cercle parallèle au plan XY sinon, ce sera un arc hélicoïdal.
6. G4 Tempo
G4 P-
- P – durée de la temporisation en secondes (un flottant)
Les axes s’immobiliseront pour une durée de P secondes. Cette commande n’affecte
pas la broche, les arrosages ni les entrées/sorties.
C’est une erreur si:
- Le nombre P est négatif ou n’est pas spécifié.
7. G5 Spline cubique
G5 X- Y- P- Q-
- I – offset incrémental en X, du point de départ au premier point de contrôle
- J – offset incrémental en Y, du point de départ au premier point de contrôle
- P – offset incrémental en X, du point de départ au second point de contrôle
- Q – offset incrémental en Y, du point de départ au second point de contrôle
G5 crée une B-spline cubique dans le plan XY avec les axes X et Y seuls.
P et Q doivent être tous les deux spécifiés pour chaque commande G5.
Pour la première d’une série de commandes G5, I et J doivent être tous les deux
spécifiés. Pour les commandes G5 suivantes de la série, soit I et J sont
spécifiés tous les deux, soit aucun ne l’est. Si aucun n’est spécifié, la
direction de départ de ce cube rejoindra automatiquement la direction de fin du
cube précédent (comme si I et J étaient les négatifs des P et Q précédents).
Par exemple, pour programmer une courbe en forme de N:
G90 G17 G0 X0 Y0 G5 I0 J3 P0 Q-3 X1 Y1
Une seconde courbe en N qui s’attache doucement à celle-ci peux maintenant être
faite sans spécifier I et J:
G5 P0 Q-3 X2 Y2
C’est une erreur si:
- P et Q ne sont pas spécifiés tous les deux
- Un seul, de I ou J est spécifié
- Aucun de I ou J n’est spécifié à la première série de commandes G5
- Un axe autre que X ou Y est spécifié
- Le plan courant n’est pas G17
8. G5.1 Spline quadratique
G5.1 X- Y- I- J-
- I – Offset incrémental en X, du point de départ au point de contrôle
- J – Offset incrémental en Y, du point de départ au point de contrôle
G5.1 crée une B-spline quadratique dans le plan XY avec les seuls axes X et Y.
Ne pas spécifier I ou J donne un offset nul pour l’axe non spécifié,
un ou les deux doivent donc être donnés.
Par exemple, pour programmer une parabole, entre l’origine X-2 Y4 et X2 Y4:
G90 G17 G0 X-2 Y4 G5.1 X2 I2 J-8
C’est une erreur si:
- Les offsets I et J ne sont pas spécifiés ou sont à zéro
- Un autre axe que X ou Y est spécifié
- Le plan actif n’est pas G17
9. G5.2 G5.3 Block NURBS
G5.2 X- Y- ... G5.3
Attention
|
G5.2, G5.3 sont expérimentaux, il n’ont pas encore été testés totalement. |
G5.2 est pour ouvrir un bloc de données définissant un NURBS et G5.3 pour
fermer le bloc de données. Dans les lignes entre ces deux codes, les points de
contrôle de la courbe sont définis avec deux éléments, leur poids relatif (P)
et le paramètre (L) qui détermine l’ordre de la courbe.
Les coordonnées courantes, avant la premiére commande G5.2, est toujours prise
comme premier point de contrôle du NURBS. Pour définir le poids pour le
premier point de contrôle, premièrement programmer G5.2 P- sans donner X ni Y.
Le poids par défaut si P n’est pas spécifié est 1. L’ordre par défaut si L n’est
pas spécifié est 3.
G0 X0 Y0 (mouvement en vitesse rapide) F10 (set feed rate) G5.2 P1 L3 X0 Y1 P1 X2 Y2 P1 X2 Y0 P1 X0 Y0 P2 G5.3 ; Les mouvements en vitesse rapide montrent le même parcours sans le bloc NURBS G0 X0 Y1 X2 Y2 X2 Y0 X0 Y0 M2
D’autres informations sur NURBS sont disponibles ici:
10. G7 Mode diamètre sur les tours
G7
Sur un tour, programmer G7 pour passer l’axe X en mode diamètre. En
mode diamètre, les mouvements de l’axe X font la moitié de la cote
programmée. Par exemple, X10 placera l’outil à 5 unités du centre, ce
qui produira bien une pièce d’un diamètre de 10 unités.
11. G8 Mode rayon sur les tours
G8
Sur un tour, programmer G8 pour passer l’axe X en mode rayon. En mode
rayon, les mouvements de l’axe X sont égaux à la cote programmée. Ce
qui signifie que X10 placera l’outil à 10 unités du centre et aura pour
résultat une pièce d’un diamètre de 20 unités. G8 est le mode par
défaut à la mise sous tension.
12. G10 L1 Ajustements dans la table d’outils
G10 L1 P- axes
- P – numéro d’outil
- R – rayon de bec
- I – angle frontal (tour)
- J – angle arrière (tour)
- Q – orientation (tour)
G10 L1 ajuste les valeurs de la table d’outils pour l’outil N°P aux valeurs
passées dans les paramètres. Les nouvelles valeurs peuvent être passées depuis
un programme ou depuis la fenêtre d’entrées manuelles (MDI). Un G10 L1 valide,
réécrit et recharge la table d’outils.
G10 L1 P1 Z1.5 (fixe le décalage en Z de l'outil 1 à 1.5 de l'origine machine) G10 L1 P2 R0.15 Q3 (fixe le rayon de bec de l'outil 2 à 0.15 avec une orientation 3)
C’est une erreur si:
- La compensation d’outil est active
- Le mot P n’est pas spécifié
- Le mot P ne correspond pas à un numéro d’outil valide de la table d’outils.
D’autres informations sur l’orientation des outils de tour sont disponibles ici.
13. G10 L2 Établissement de l’origine d’un système de coordonnées
G10 L2 P-
- P – système de coordonnées (0 à 9)
- R – rotation autour de l’axe Z
G10 L2 décale l’origine des axes dans le système de coordonnées spécifié par
la valeur du mot d’axe. Le décalage s’effectue à partir de l’origine machine
établie par la prise d’origine machine (homing). Les valeurs de ce décalage vont
remplacer toutes celles en effet sur le système de coordonnées spécifié. Les
mots d’axe inutilisés resteront inchangés.
Programmer P0 à P9 pour spécifier le système de coordonnées à décaler.
Valeur P | Système de coordonnées | G-code |
---|---|---|
0 |
Actif courant |
n/a |
1 |
1 |
G54 |
2 |
2 |
G55 |
3 |
3 |
G56 |
4 |
4 |
G57 |
5 |
5 |
G58 |
6 |
6 |
G59 |
7 |
7 |
G59.1 |
8 |
8 |
G59.2 |
9 |
9 |
G59.3 |
Facultativement, programmer R pour indiquer la rotation des axes XY autour
de l’axe Z.
La direction de rotation est anti-horaire comme vue depuis le côté positif de
l’axe Z.
Tous les mots d’axe sont facultatifs.
Être en mode relatif (G91) est sans effet sur G10 L2.
Concepts importants:
- G10 L2 Pn ne change pas l’actuel système de coordonnées par celui spécifié
par P, il est nécessaire d’utiliser G54 à 59.3 pour sélectionner le système de
coordonnées. - Quand un mouvement de rotation est en cours, jogger un axe, déplacera celui-ci
seulement dans le sens négatif ou positif et non pas le long de l’axe de
rotation. - Si un décalage d’origine créé avec G92 est actif avant la commande G10 L2,
il reste actif après. - Le système de coordonnées dont l’origine est définie par la commande G10
peut être actif ou non au moment de l’exécution de G10. Si il est actif à
ce moment là, les nouvelles coordonnées prennent effet immédiatement.
C’est une erreur si:
- Le nombre P n’est pas évalué comme étant un nombre entier compris entre 0 et 9.
- Un axe est programmé mais n’est pas défini dans la configuration.
G10 L2 P1 X3.5 Y17.2
Place l’origine du premier système de coordonnées (celui sélectionné par G54)
au points X3.5 et Y17.2 (en coordonnées absolues).
La coordonnée Z de l’origine, ainsi que les coordonnées de tous les autres axes,
restent inchangées puisque seuls X et Y étaient spécifiés.
G10 L2 P1 X0 Y0 Z0 (révoque les décalages en X, Y et Z du système N°1)
L’exemple précédent fixe les origines XYZ du système de coordonnées G54, à
l’origine machine.
Les systèmes de coordonnées sont décrits en détail ici.
14. G10 L10 modifie les offsets d’outil dans la table d’outils
G10 L10 P- axes
- P – numéro d’outil
- R – rotation autour de l’axe Z
- I – angle frontal (tour)
- J – angle arrière (tour)
- Q – orientation (tour)
G10 L10 modifie les valeurs de l’outil P dans la table d’outils, de sorte
que si la compensation d’outil est rechargée, avec la machine à la position
courante et avec les G5x et G92 actifs, les coordonnées courantes pour
l’axe spécifié deviendront les coordonnées spécifiées. Les axes non spécifiés
dans la commande G10 L10 ne seront pas modifiés.
M6 T1 G43 (appel l'outil 1 et active la correction de longueur d'outil) G10 L10 P1 Z1.5 (fixe la position courante en Z à 1.5 dans la table d'outils) G43 (recharge l'offset de longueur d'outil depuis la table d'outils modifiée) M2 (fin de programme)
C’est une erreur si:
- La compensation d’outil est activée.
- Le mot P n’est pas spécifié.
- Le mot P ne correspond pas à un numéro d’outil valide de la table d’outils.
15. G10 L11 modifie les offsets d’outil dans la table d’outils
G10 L11 P- axes
- P – numéro d’outil
- R – rotation autour de l’axe Z
- I – angle frontal (tour)
- J – angle arrière (tour)
- Q – orientation (tour)
G10 L11 est identique à G10 L10 excepté qu’au lieux de fixer les valeurs
par rapport aux décalages de coordonnées courants, il les fixe de sorte que les
coordonnées courantes deviennent celles spécifiées par les paramètres si la
nouvelle compensation d’outil est rechargée et que la machine est placée dans
le système de coordonnées G59.3, système sans aucun décalage G92 actif.
Ceci permet à l’utilisateur de fixer le système de coordonnées G59.3 à
un point fixe de la machine et d’utiliser cet emplacement pour mesurer
l’outil sans s’occuper des autres décalages courants actifs.
C’est une erreur si:
- La compensation d’outil est activée
- Le mot P n’est pas spécifié.
- Le mot P ne correspond pas à un numéro d’outil valide de la table d’outils.
16. G10 L20 Établissement de l’origine d’un système de coordonnées
G10 L20 P- axes
- P – système de coordonnées (0-9)
G10 L20 est similaire à G10 L2 excepté qu’au lieu d’ajuster les offsets à des
valeurs données, il les place à des valeurs calculées de sorte que les
coordonnées courantes deviennent les valeurs données en paramètres.
G10 L20 P1 X1.5 (fixe la position courante en X du système de coordonnées G54 à 1.5)
C’est une erreur si:
- Le nombre P n’est pas évalué comme une entier compris entre 0 et 9.
- Un axe non défini dans la configuration est programmé.
17. G17 à G19.1 Choix du plan de travail
Ces codes sélectionnent le plan de travail courant comme décrit ci-dessous:
- G17 – XY (par défaut)
- G18 – ZX
- G19 – YZ
- G17.1 – UV
- G18.1 – WU
- G19.1 – VW
Les plans UV, WU et VW ne supportent pas les arcs. Il est de bonne pratique
d’inclure la sélection du plan de travail dans le préambule du programme G-code.
Les effets de la sélection d’un plan de travail sont discutés dans la section
sur les arcs.
18. G20, G21 Choix des unités machine
- G20 – pour utiliser le pouce comme unité de longueur.
- G21 – pour utiliser le millimètre comme unité de longueur.
C’est toujours une bonne pratique de programmer soit G20, soit G21, dans
le préambule du programme, avant tout mouvement et de ne plus en changer
ailleurs dans le programme.
19. G28, G28.1 Aller à une position prédéfinie
Attention
|
Pour une bonne répétabilité de la position et que la position soit correctement enregistrée avec G28.1, faire la prise d’origine générale avant d’utiliser G28. |
G28 utilise les valeurs enregistrées dans les paramètres 5161 à 5166 comme
points finaux des mouvements des axes X Y Z A B C U V W.
Les valeurs des paramètres sont des coordonnées machine absolues, en unités
machine natives, telles que fixées dans le fichier ini. Tous les axes définis
dans le fichier ini seront déplacés lors d’un G28.
- G28 – effectue un mouvement en vitesse rapide de la position courante à la
position absolue enregistrée dans les paramètres 5161 à 5166. - G28 axes – effectue un déplacement en vitesse rapide à la position
spécifiée par axes y compris les décalages, puis effectuera un mouvement en
vitesse rapide aux coordonnées absolues stockées dans les paramètres 5161
à 5166 pour les axes spécifiés. - G28.1 – enregistre la position absolue courante dans les paramètres 5161
à 5166.
G28 Z2.5 (vitesse rapide vers Z2.5 puis emplacement spécifié dans les paramètres enregistrés de G28)
C’est une erreur si:
- La compensation d’outil est active.
20. G30, G30.1 Aller à une position prédéfinie
Attention
|
Pour une bonne répétabilité de la position et que la position soit correctement enregistrée avec G30.1, faire la prise d’origine générale avant d’utiliser G30. |
- G30 – effectue un mouvement en vitesse rapide de la position courante à la
position absolue stockée dans les paramètres 5181 à 5186.
Les valeurs stockées dans les paramètres font référence au système de
coordonnées absolues qui est le système de coordonnées machine. - G30 axes – effectue un déplacement en vitesse rapide depuis la position
courante jusqu’à la position spécifiée par axes, y compris les décalages,
suivi d’un mouvement rapide à la position absolue stockée dans les paramètres
5181 à 5186 pour les axes spécifiés. Les axes non spécifiés ne bougeront pas. - G30.1 – enregistre la position absolue courante dans les paramètres 5181 à
5186.
Note
|
Les paramètres de G30 peuvent être utilisés pour déplacer l’outil quand un M6 est programmé avec la variable [TOOL_CHANGE_AT_G30]=1 dans la section [EMCIO] du fichier ini. |
G30 Z2.5 (mvt rapide à Z2.5 puis déplacement selon les paramètres de G30 stockés)
C’est une erreur si:
- La compensation de d’outil est active.
21. G33 Mouvement avec broche synchronisée
G33 X- Y- Z- K-
- K – distance par tour
Pour un mouvement avec broche synchronisée dans une direction, programmer
G33 X- Y- Z- K- où K donne la longueur du mouvement en XYZ pour chaque tour
de broche. Par exemple, si il commence à Z=0, G33 Z-1 K.0625 produira
un mouvement d’un pouce de long en Z en même temps que 16 tours de broche.
Cette commande peut être la base d’un programme pour faire un filetage de
16 filets par pouce. Un autre exemple en métrique, G33 Z-15 K1.5 produira
un mouvement de 15mm de long pendant que la broche fera 10 tours soit un
pas de 1.5mm.
Les mouvements avec broche synchronisée utilisent l’index de broche et les pins
spindle at speed pour le filetage multi-passes. Un mouvement avec G33 se
termine au point final programmé.
Note
|
K suit la ligne d’avance décrite par X- Y- Z-. K n’est pas parallèle à l’axe Z si les points d’arrivée des axes X et Y sont utilisés, par exemple pour réaliser un filetage conique. |
Au début de chaque passe G33, LinuxCNC utilise la vitesse de broche et les
limites d’accélération de la machine pour calculer combien de temps prendra Z
pour accélérer après chaque impulsion d’index et détermine de combien de degrés
la broche tournera pendant ce temps là. Il ajoute alors cet angle à la position
de l’index puis calcule la position de Z utilisant l’angle de broche correct.
Cela signifie que Z aura atteints la position correcte juste en fin
d’accélération à la bonne vitesse, il peux immédiatement usiner le bon filetage.
Les pins motion.spindle-at-speed et l’index encoder.n.phase-Z pour la broche
doivent être connectés dans le fichier HAL pour que G33 soit opérationnel.
Voir le Manuel de l’intégrateur pour plus d’informations sur les mouvements
synchronisés avec la broche.
G90 (mode distance absolue) G0 X1 Z0.1 (positionnement en vitesse rapide) S100 M3 (broche en rotation à 100tr/mn) G33 Z-2 K0.125 (mouvement vers Z -2 avec une avance de 0.125 par tour) G0 X1.25 (mouvement de dégagement en vitesse rapide) Z0.1 (mouvement en vitesse rapide à Z0.1) M2 (fin de programme)
C’est une erreur si:
- Tous les axes sont omis.
- La broche ne tourne pas quand cette commande est exécutée.
- Le mouvement linéaire requis excède les limites de vitesse machine
en raison de la vitesse de broche.
22. G33.1 Taraudage Rigide
G33.1 X- Y- Z- K-
- K – distance par tour
Pour un taraudage rigide avec broche synchronisée et mouvement de retour,
programmer G33.1 X- Y- Z- K- où K- donne la longueur du mouvement
pour chaque tour de broche. Un mouvement de taraudage rigide suit cette
séquence:
Attention
|
Si pour un taraudage rigide, les coordonnées X et Y spécifiées ne sont pas les coordonnées courantes lors de l’appel de G33.1, le mouvement ne s’effectuera pas le long de l’axe Z mais de la position courante jusqu’aux coordonnées X et Y spécifiées. |
- Un mouvement aux coordonnées spécifiées, synchronisé avec la rotation de
la broche, avec le ratio donné et débutant à l’impulsion d’index du codeur
de broche. - Quand le point final est atteint, la commande inverse le sens de rotation
de la broche (ex: de 300 tours/mn en sens horaire à 300 tours/mn en sens
anti-horaire) - Le mouvement reste synchronisé en continu avec la broche, même ‘au delà’
de la coordonnée du point final spécifié pendant l’arrêt de la broche et
son inversion. - Le mouvement synchronisé se poursuit pour revenir aux coordonnées initiales.
- Quand les coordonnées initiale sont atteintes, la commande inverse la
broche une seconde fois (ex: de 300tr/mn sens anti-horaire à 300tr/mn en
sens horaire) - Le mouvement reste synchronisé même ‘au delà’ des coordonnées initiales
pendant que la broche s’arrête, puis s’inverse. - Un mouvement non synchronisé ramène le mobile en arrière, aux
coordonnées initiales.
Tous les mouvements avec broche synchronisée ont besoin d’un index de broche,
pour conserver la trajectoire prévue et que les passes se chevauchent
exactement. Un mouvement avec G33.1 se termine aux coordonnées initiales.
Les mots d’axes sont facultatifs, sauf au moins un qui doit être utilisé.
G90 (mode distance absolue) G0 X1.000 Y1.000 Z0.100 (mouvement rapide au point de départ taraudage rigide en 20 filets par pouce) G33.1 Z-0.750 K0.05 (et une profondeur de filet de 0.750) M2 (fin de programme)
C’est une erreur si:
- Tous les axes sont omis.
- La broche ne tourne pas quand cette commande est exécutée.
- Le mouvement linéaire requis excède les limites de vitesse machine
en raison d’une vitesse de broche trop élevée.
23. G38.x Mesure au palpeur
G38.x axes
- G38.2 – palpe vers la pièce, stoppe au toucher, signale une erreur en cas de
défaut. - G38.3 – palpe vers la pièce, stoppe au toucher.
- G38.4 – palpe en quittant la pièce, stoppe en perdant le contact, signal une
erreur en cas de défaut. - G38.5 – palpe en quittant la pièce, stoppe en perdant le contact.
Important
|
Cette commande n’est pas utilisable si la machine n’a pas été configurée pour exploiter un signal de sonde entre HAL et LinuxCNC. Le signal de la sonde doit être envoyé sur une broche d’entrée puis transmis à motion.probe-entrée (bit, In). G38.x utilise la valeur de cette broche pour déterminer quand la sonde a touché ou perdu le contact. TRUE si le contact de la sonde est fermé (Touché), FALSE si il est ouvert. |
Programmer G38.x axes, pour effectuer une mesure au palpeur. Les mots d’axe
sont facultatifs excepté au moins un. Les mots d’axe définissent ensemble,
le point de destination, à partir de l’emplacement actuel, vers lequel la
sonde se déplace. Si le palpeur n’a pas déclenché avant que la destination soit
atteinte, G38.2 et G38.4 signaleront une erreur. L’outil dans la broche doit
être un palpeur ou un actionneur de contact.
En réponse à cette commande, la machine déplace le point contrôlé
(qui est le centre de la boule du stylet du palpeur) en ligne droite,
à la vitesse travail courante, vers le point programmé.
En mode vitesse inverse du temps, la vitesse est telle que le mouvement
depuis le point courant jusqu’au point programmé, prendra le temps spécifié.
Le mouvement s’arrête (dans les limites d’accélération de la machine)
lorsque le point programmé est atteint ou quand l’entrée du palpeur
bascule dans l’état attendu selon la première éventualité.
Le tableau de signification des différents codes de mesure.
Code | État ciblé | Sens de destination | Signal d’erreur |
---|---|---|---|
G38.2 |
Touché |
Vers la pièce |
Oui |
G38.3 |
Touché |
Vers la pièce |
Non |
G38.4 |
Quitté |
Depuis la pièce |
Oui |
G38.5 |
Quitté |
Depuis la pièce |
Non |
Après une mesure réussie, les paramètres 5061 à 5069
contiendront les coordonnées des axes XYZABCUVW, pour l’emplacement du
point contrôlé à l’instant du changement d’état du palpeur.
Après une mesure manquée, ils contiendront les coordonnées du point programmé.
Le paramètre 5070 est mis à 1 si la mesure est réussie et à 0 si elle est
manquée. Si la mesure n’a pas réussi, G38.2 et G38.4 signaleront une erreur
en affichant un message à l’écran si l’interface graphique choisie le permet.
Un commentaire de la forme (PROBEOPEN filename.txt) ouvrira le
fichier filename.txt et y enregistrera les 9 coordonnées de
XYZABCUVW pour chaque mesure réussie.
Le fichier doit être fermé avec le commentaire
(PROBECLOSE).
Dans le répertoire des exemples, le fichier smartprobe.ngc montre
l’utilisation d’un palpeur et l’enregistrement des coordonnées de la pièce
dans un fichier. Le fichier smartprobe.ngc peut être utilisé par ngcgui
avec un minimum de modifications.
C’est une erreur si:
- Le point programmé est le même que le point courant.
- Aucun mot d’axe n’est utilisé.
- La compensation de d’outil est activée.
- La vitesse travail est à zéro.
- Le palpeur est déjà au contact de la cible.
24. G40 Révocation de la compensation de rayon d’outil
- G40 – révoque la compensation de rayon d’outil. Le mouvement suivant, de
sortie de compensation, doit être une droite au moins aussi longue que le
diamètre de l’outil. Ce n’est pas une erreur de désactiver la compensation
quand elle est déjà inactive.
; la position courante est X1 après la fin du mvt avec compensation G40 (révoque la compensation) G0 X1.6 (mouvement linéaire aussi long que le diamètre d'outil) M2 (fin de programme)
C’est une erreur si:
- Un mouvement en arc avec G2 ou G3 suit un G40.
- Le mouvement suivant la révocation de compensation est inférieur au
diamètre de l’outil.
25. G41, G42 Compensation de rayon d’outil
G41 (compensation à gauche du profil) G42 (compensation à droite du profil)
- D – Numéro d’outil
Le mot D est facultatif. En son absence ou si il est à zéro, le rayon de l’outil
courant est utilisé. Si le mot D est présent, il devrait normalement correspondre
au numéro de l’outil monté dans la broche, bien que cela ne soit pas
indispensable, il doit par contre correspondre à un numéro d’outil valide.
Pour activer la compensation d’outil à gauche du profil,
programmer G41. G41 applique la compensation d’outil à gauche de la
ligne programmée vu de l’extrémité positive de l’axe perpendiculaire au plan.
Pour activer la compensation d’outil à droite du profil,
programmer G42. G42 applique la correction d’outil à droite de la
ligne programmée vu de l’extrémité positive de l’axe perpendiculaire au plan.
Le mouvement d’entrée doit être au moins aussi long que le rayon de l’outil.
Le mouvement d’entrée peut être effectué en vitesse rapide.
La compensation d’outil ne peut être effectuée que si le plan XY ou
le plan XZ est actif.
Les commandes définies par l’utilisateur, M100 à M199, sont autorisées
lorsque la compensation d’outil est activée.
Le comportement de la machine, quand la compensation d’outil est activée,
est décrit dans la section sur la compensation d’outil.
C’est une erreur si:
- Le nombre D ne correspond, ni à zéro, ni à un numéro d’outil valide.
- Le plan YZ est le plan de travail actif.
- La compensation d’outil est activée alors qu’elle est déjà active.
26. G41.1, G42.1 Compensation dynamique d’outil
G41.1 D- (à gauche du profil) G42.1 D- (à droite du profil)
- Le mot D spécifie le diamètre de l’outil.
- Le mot L spécifie l’orientation de l’outil, est à 0 par défaut si
non spécifié.
Pour activer la compensation dynamique d’outil à gauche du profil,
programmer G41.1 D- L-.
Pour activer la compensation dynamique d’outil à droite du profil,
programmer G42.1 D- L-.
C’est une erreur si:
- Le plan YZ est le plan de travail actif.
- La valeur de L n’est pas comprise entre 0 et 9 inclus.
- Le nombre L est utilisée alors que le plan XZ n’est pas le plan actif.
- La compensation d’outil est activée alors qu’elle est déjà active.
Plus d’informations sur l’orientation des outils, sur les outils de tour en 1-2-3-4 et
les outils de tour en 5-6-7-8.
27. G43 Activation de la compensation de longueur d’outil
- H – Numéro d’outil
- G43 – Utilise l’outil courant chargé par le dernier Tn M6. G43 modifie les
mouvements ultérieurs en décalant les coordonnées de Z et/ou de X, de la
longueur de l’outil. G43 ne provoque aucun mouvement. L’effet de la
compensation ne se produira qu’au cours du prochain mouvement des axes compensés,
de sorte que le point final de ce mouvement sera la position compensée. - G43 H- – Utilise l’offset de l’outil correspondant fourni par la table
d’outils. Ce n’est pas une erreur d’avoir la valeur de H à zéro, le numéro de
l’outil courant sera utilisé.
G43 H1 (ajuste les offsets d'outil avec les valeurs de l'outil 1 fournies par la table d'outils)
C’est une erreur si:
- La valeur de H n’est pas un entier, il est négatif, ou il ne correspond, ni
à zéro, ni à un numéro d’outil valide.
28. G43.1 Compensation dynamique de longueur d’outil
G43.1 axes
- G43.1 axes – Modifie les mouvements ultérieurs en décalant les coordonnées
de Z et/ou de X, selon les offsets stockés dans la table d’outils. G43.1 ne
provoque aucun mouvement. L’effet de la compensation ne se produira qu’au cours
du prochain mouvement des axes compensés de sorte que le point final de ce
mouvement sera la position compensée.
G90 (passe en mode absolu) T1 M6 G43 (charge l'outil N°1 et son offset de longueur, Z est à la position machine 0 et la visu affiche Z1.500) G43.1 Z0.250 (décale l'outil courant de 0.250, la visu affiche maintenant Z1.250) M2 (fin de programme)
C’est une erreur si:
- Une commande de mouvement est sur la même ligne que G43.1
29. G49 Révocation de la compensation de longueur d’outil
Pour révoquer la compensation de longueur d’outil, programmer G49.
Ce n’est pas une erreur de programmer une compensation qui est déjà
utilisée. Ce n’est pas non plus une erreur de révoquer une compensation de
longueur d’outil alors qu’aucune n’est couramment utilisée.
30. G53 Mouvement en coordonnées absolues
G53 axes
Pour un déplacement exprimé en coordonnées système, programmer
G53 sur la même ligne qu’un mouvement linéaire. G53 n’est pas modal, il doit
donc être programmé sur chaque ligne où il doit être actif. G0 ou G1 ne
doivent pas se trouver sur la même ligne si un d’eux est déjà actif.
Par exemple:
G53 G0 X0 Y0 Z0 (mouvement linéaire rapide des axes à leur positions d'origine) G53 X2 (mouvement linéaire rapide à la coordonnée absolue X=2)
C’est une erreur si:
- G53 est utilisé sans que G0 ou G1 ne soit actif.
- G53 est utilisé alors que la compensation d’outil est active.
Étudier le chapitre sur les systèmes de coordonnées et de leurs décalages, pour bien maîtriser ces concepts.
31. G54 à G59.3 Choix du système de coordonnées
- G54 – Système de coordonnées pièce 1
- G55 – Système de coordonnées pièce 2
- G56 – Système de coordonnées pièce 3
- G57 – Système de coordonnées pièce 4
- G58 – Système de coordonnées pièce 5
- G59 – Système de coordonnées pièce 6
- G59.1 – Système de coordonnées pièce 7
- G59.2 – Système de coordonnées pièce 8
- G59.3 – Système de coordonnées pièce 9
Le code G54 est apparié avec le système de coordonnées pièce N°1,
pour le choisir programmer G54 et ainsi de suite pour les autres systèmes.
Les systèmes de coordonnées stockent les valeurs de chacun des axes dans les
variables indiquées dans le tableau ci-dessous.
C’est une erreur si:
- Un de ces G-codes est utilisé alors que la compensation d’outil est active.
Voir la section sur les systèmes de coordonnée
pour une vue complète.
32. G61, G61.1 Contrôle de trajectoire exacte
- G61 – Met la machine en mode de trajectoire exacte. G61 suivra exactement
la trajectoire programmée même si cela doit aboutir à un arrêt complet
momentané du mobile. - G61.1 – Met la machine en mode arrêts exacts.
33. G64 Contrôle de trajectoire continue avec tolérance
G64 >
- P- – Déviation maximale tolérée par rapport à la trajectoire programmée.
- Q- – Tolérance naïve cam.
- G64 – Recherche de la meilleure vitesse possible.
- G64 P- – Mélange entre meilleure vitesse et tolérance de déviation.
- G64 P- Q- – Est le moyen d’affiner encore pour obtenir le meilleur
compromis entre vitesse et précision de la trajectoire. La vitesse sera
réduite si nécessaire pour maintenir la trajectoire, même si ça doit aboutir
à un arrêt complet momentané. Le détecteur naïve cam est activé. Quand il
y a une série de mouvements linéaires XYZ en vitesse travail, avec une
même vitesse de déplacement, inférieure à Q-, ils sont regroupés en
un seul segment linéaire, ainsi la vitesse s’en trouve améliorée puisqu’il
n’y a plus de décélération/arrêt/accélération aux points de jonction des
segments. Sur les mouvements G2/G3 dans le plan G17 (XY) lorsque le
maximum d’écart entre un arc et une ligne droite est inférieur à
la déviation maximale P-, la tolérance de l’arc est divisée en deux lignes
(depuis le début de l’arc jusqu’au milieu et du milieu jusqu’à la fin). Ces
deux lignes sont ensuite soumises à l’algorithme naïve cam. Ainsi, les cas
ligne-arc, arc-arc et arc-ligne et le cas ligne-ligne, bénéficient de
l’algorithme naïve cam, ce qui améliore les performances en simplifiant
les trajectoires. Il est permis de programmer ce mode même si il est déjà actif.
G64 P0.015 (fixe la déviation d'usinage à 0.015 maximum de la trajectoire programmée)
Il est de bonne pratique de spécifier un type de contrôle de trajectoire
dans le préambule de chaque programme G-code.
34. G73 Cycle de perçage avec brise copeaux
G73 axes R- Q-
- R- – Position du plan de retrait en Z
- Q- – Incrément delta parallèle à l’axe Z
- L- – Répétition
Le cycle G73 est destiné au perçage profond ou au fraisage avec brise-copeaux.
Les retraits, au cours de ce cycle, fragmentent les copeaux longs (fréquents
lors de l’usinage de l’aluminium). Ce cycle utilise la valeur Q- qui
représente un incrément delta parallèle à l’axe Z. Le cycle se décompose de la
manière suivante:
- Un mouvement préliminaire. Comme décrit dans cet exposé sur le mouvement préliminaire
- Un mouvement de l’axe Z seul, en vitesse travail, sur la position la moins
profonde entre, l’incrément delta ou la position de Z programmée. - Une petite remontée en vitesse rapide.
- Répétition des étapes 2 et 3 jusqu’à ce que la position programmée de Z
soit atteinte à l’étape 2. - Un mouvement de l’axe Z en vitesse rapide jusqu’au plan de retrait.
C’est une erreur si:
- La valeur de Q est négative ou égale à zéro.
- Le nombre R n’est pas spécifié.
35. G76 Cycle de filetage préprogrammé
G76 P- Z- I- J- R- K- Q- H- E- L-
- Ligne pilote – La ligne pilote est une ligne imaginaire, parallèle à
l’axe de la broche (Z), située en sécurité à l’extérieur du matériau à
fileter. La ligne pilote va du point initial en Z jusqu’à la fin du
filetage donnée par la valeur de Z dans la commande. - P- – Le pas du filet en distance de déplacement par tour.
- Z- – La position finale du filetage. A la fin du cycle, l’outil sera
à cette position Z.
Note
|
En mode diamètre G7, les valeurs I, J et K sont des mesures de diamètre. En mode rayon G8, les valeurs I, J et K sont des mesures de rayon. |
- I- – La crête du filet est une distance entre la ligne pilote et la
surface de la pièce. Une valeur négative de I,
indique un filetage externe et une valeur positive, indique un
filetage interne. C’est généralement à ce diamètre nominal que le
matériau est cylindré avant de commencer le cycle G76. - J- – Une valeur positive, spécifie la profondeur de la passe initiale.
La première passe sera à J au delà de la crête du filet I. - K- – Une valeur positive, spécifie la profondeur finale du filet.
La dernière passe du filetage sera à K au delà de la crête du filet I.
Paramètres facultatifs:
- R- – La profondeur de dégressivité. R1.0 spécifie une profondeur
de passe constante pour les passes successives du filetage.
R2.0 spécifie une surface constante.
Les valeurs comprises entre 1.0 et 2.0 spécifient
une profondeur décroissante mais une surface croissante.
Enfin, les valeurs supérieures à 2.0 sélectionnent une surface décroissante.
Attention
|
Les valeurs inutilement hautes de dégressivité, produiront un nombre inutilement important de passes. (dégressivité = plongée par paliers) |
- Q- – L’angle de pénétration oblique. C’est l’angle (en degrés)
décrivant de combien, les passes successives doivent être décalées
le long de l’axe Z. C’est utilisé pour faire enlever plus de matériau
d’un côté de l’outil que de l’autre.
Une valeur positive de Q fait couper d’avantage le bord de l’outil.
Typiquement, les valeurs sont 29, 29.5 ou 30 degrés. - H- – Le nombre de passes de finition. Les passes de finition sont
des passes additionnelles en fond de filet.
Pour ne pas faire de passe de finition, programmer H0.
Les entrées et sorties de filetage peuvent être programmées coniques
avec les valeurs de E et L.
- E- – Spécifie la longueur des parties coniques le long de l’axe Z.
L’angle du cône ira de la profondeur de la dernière passe à la
crête du filet I. E2.0 donnera un cône d’entrée et de sortie
d’une longueur de 2.0 unités dans le sens du filetage. Pour
un cône à 45 degrés, programmer E identique à K. - L- – Spécifie quelles extrémités du filetage doivent être coniques.
Programmer L0 pour aucune (par défaut), L1 pour une
entrée conique, L2 pour une sortie conique, ou L3 pour l’entrée et
la sortie coniques.
L’outil fera une brève pause pour la synchronisation
avec l’impulsion d’index avant chaque passe de filetage. Une gorge de
dégagement sera requise à l’entrée, à moins que le début du filetage
ne soit après l’extrémité de la pièce ou qu’un cône d’entrée soit utilisé.
À moins d’utiliser un cône de sortie, le mouvement de sortie (retour
rapide sur X initial) n’est pas synchronisé sur la vitesse de broche.
Avec une broche lente, la sortie pourrait se faire sur une petite
fraction de tour. Si la vitesse de broche est augmentée après qu’un
certain nombre de passes soient déjà faites, la sortie va prendre
une plus grande fraction de tour, il en résultera un usinage très
brutal pendant ce nouveau mouvement de sortie. Ceci peut être évité en
prévoyant une gorge de sortie, ou en ne changeant pas la vitesse de
broche pendant le filetage.
La position finale de l’outil sera à la fin de la ligne pilote.
Un mouvement de sécurité peut être nécessaire avec un filetage interne,
pour sortir l’outil de la pièce.
C’est une erreur si:
- Le plan de travail actif n’est pas ZX.
- D’autres mots d’axes que X ou Y, sont spécifiés.
- La dégressivité R est inférieure à 1.0.
- Tous les mots requis ne sont pas spécifiés.
- P, J, K ou H est négatif.
- E- est supérieur à la moitié de la longueur de la ligne pilote.
Les pins motion.spindle-at-speed et l’index encoder.n.phase-Z doivent être
connectées dans le fichier HAL pour que G76 soit opérationnel.
Voir le Manuel de l’intégrateur pour plus d’informations sur les mouvements
synchronisés avec la broche.
Le cycle préprogrammé G76 est basé sur le mouvement avec broche synchronisée G33,
voir les informations technique relatives à G33.
Un programme de filetage, g76.ngc montre l’utilisation d’un cycle de
filetage G76, il peut être visualisé et exécuté sur n’importe quelle machine
utilisant la configuration sim/lathe.ini.
G0 Z-0.5 X0.2 G76 P0.05 Z-1 I-0.075 J0.008 K0.045 Q29.5 L2 E0.045
Sur l’image ci-dessous, l’outil est à la position finale après que le cycle
G76 soit terminé. On voit que le parcours d’entrée de l’outil sur la droite,
spécifié par Q29.5 et le parcours de sortie conique à gauche comme
spécifié par L2 E0.045. Les lignes blanches sont les mouvements de coupe.
36. Les cycles de perçage G81 à G89
Les cycles de perçage de G81 à G89 et la révocation de ces cycle G80,
sont décrits dans cette section. Des exemples sont donnés plus bas avec
les descriptions.
Tous les cycles de perçage sont effectués dans le respect du plan
de travail courant. N’importe lequel des six plans de travail peut être
choisi. Dans cette section, la plupart des descriptions supposeront que
le plan de travail XY est le plan courant. Le comportement reste
analogue pour les autres plans de travail et les mots corrects doivent
être utilisés. Par exemple, dans le plan G17.1, l’action de retrait
s’effectue parallèlement à l’axe W et les positions ou incréments sont
donnés avec U et W. Dans ce cas, substituer U, V, W avec X, Y, Z dans les
instructions suivantes.
Les mots d’axes rotatifs ne sont pas autorisés dans les cycles de perçage.
Quand le plan actif est X, Y, Z, les mots d’axes U, V, W ne sont pas autorisés.
De même, si le plan actif est U, V, W, les mots d’axes X, Y, Z ne sont
pas autorisés.
36.1. Mots communs
Tous les cycles de perçage utilisent les groupes X, Y, Z ou U, V, W selon
le plan sélectionné, ainsi que le mot R. La position de R- (signifiant
retrait) est perpendiculaire au plan de travail courant (axe Z pour le plan XY,
axe X pour le plan YZ, axe Y pour le plan XZ, etc.). Quelques cycles de
perçage utilisent des arguments supplémentaires.
36.2. Mots sticky
Dans les cycles de perçage, un nombre est qualifié de sticky (persistante,
collant) si, quand le même cycle est répété sur plusieurs lignes de code en
colonne, le nombre doit être indiqué la première fois, mais il
devient facultatif pour le reste des lignes suivantes. Les nombres
sticky conservent leur valeur tant qu’ils ne sont pas explicitement
programmés avec une nouvelle valeur. La valeur de R est toujours sticky.
En mode de déplacements incrémentaux (G91), les valeurs X, Y, est R
sont traitées comme des incréments depuis la position courante, Z est
un incrément depuis la position de l’axe Z avant le mouvement
impliquant l’axe Z. En mode de déplacements absolus, les valeurs de X,
Y, R, et Z sont des positions absolues dans le système de coordonnées courant.
36.3. Répétition de cycle
Le mot L est facultatif et représente le nombre de répétitions.
L=0 n’est pas permis. Si les fonctionnalités de répétition sont utilisées,
elles le sont normalement en mode relatif, de sorte que la même séquence de
mouvements se répète à plusieurs emplacements régulièrement espacés le long
d’une ligne droite. Quand L>1 en mode relatif et XY comme plan courant,
les positions X et Y sont déterminées en ajoutant les valeurs X et Y de
la commande à celles de la position courante, pour le premier trajet ou
ensuite, à celles de la position finale du précédent trajet, pour les
répétitions. Ainsi, si vous programmez L10, vous obtiendrez 10 cycles.
Le premier cycle sera la distance X, Y depuis la position d’origine.
Les positions de R- et Z- ne changent pas durant toutes les
répétitions. En mode absolu, L>1 signifie faire le même cycle à la même
place plusieurs fois, omis, le mot L est équivalent à L=1. La valeur de L
n’est pas sticky.
36.4. Mode de retrait
La hauteur du mouvement de retrait à la fin de chaque répétition
(appelée plan de retrait dans les descriptions suivantes) est
déterminée par le mode de retrait: retrait sur la position initiale de
Z, si elle est au dessus de la valeur de R et que le mode de retrait
est G98, OLD_Z, sinon, à la position de R. Voir la section
sur les options du plan de retrait.
36.5. Erreurs des cycles de perçage
Il y a une erreur si:
- Tous les mots X, Y et Z sont manquants durant un cycle de perçage.
- Des mots d’axes de différents groupes (XYZ) (UVW) sont utilisés.
- Un nombre P est requis mais un nombre P négatif est utilisé.
- Un nombre L est utilisé mais n’est pas un entier positif.
- Un mouvement d’axe rotatif est utilisé durant un cycle de perçage.
- Une vitesse inverse du temps est activée durant un cycle de perçage.
- La compensation d’outil est activée durant un cycle de perçage.
Quand le plan XY est actif, la valeur de Z est sticky, et c’est une
erreur si:
- La valeur de Z est manquante alors qu’un même cycle de perçage n’a
pas encore été activé. - La valeur de R est inférieure à celle de Z.
Si un autre plan est actif, les conditions d’erreur sont analogues à
celles du plan XY décrites ci-dessus.
36.6. Mouvement préliminaire et Intermédiaire
Le mouvement préliminaire est un ensemble de mouvements commun à tous les
cycles de perçage.
Tout au début de l’exécution d’un cycle de perçage, si la position
actuelle de Z est en dessous de la position de retrait R, l’axe Z va
à la position R. Ceci n’arrive qu’une fois, sans tenir compte de la
valeur de L.
En plus, au début du premier cycle et à chaque répétition, un ou deux
des mouvements suivants sont faits:
- Un déplacement en ligne droite, parallèle au plan XY, vers le position
programmée. - Un déplacement en ligne droite, de l’axe Z seul vers la position de
retrait R, si il n’est pas déjà à cette position R.
Si un autre plan est actif, le mouvement préliminaire et intermédiaire
est analogue.
36.7. Pourquoi utiliser les cycles de perçage?
Il y a au moins deux raisons pour utiliser les cycles de perçage. La
première est l’économie de code et la seconde la sécurité offerte par le
mouvement préliminaire qui permet de ne pas s’occuper du point de départ
du cycle.
37. G80 Révocation des codes modaux
- G80 – Révoque, tant qu’il est actif, tous les codes de mouvements modaux du
groupe 1 auquel il appartient. Il est révoqué lui même par tout g-code du même
groupe.
C’est une erreur si:
- Des mots d’axes sont programmés quand G80 est actif.
G90 G81 X1 Y1 Z1.5 R2.8 (cycle de perçage en mode de déplacement absolu) G80 (révoque G81) G0 X0 Y0 Z0 (active les mouvements en vitesse rapide et déplace le mobile en X0, Y0 et Z0)
L’exemple 1 produit les mêmes déplacements et le même état final de la machine
que l’exemple suivant:
G90 G81 X1 Y1 Z1.5 R2.8 (cycle de perçage en mode de déplacement absolu) G0 X0 Y0 Z0 (active les mouvements en vitesse rapide et déplace le mobile en X0, Y0 et Z0)
L’avantage du premier exemple est que la ligne du G80 révoque clairement le cycle
G81. Avec ce premier programme, le programmeur doit revenir en mode
mouvement avec G0, comme c’est fait sur la ligne suivante, ou tout autre
mot G de mouvement.
Si un cycle de perçage n’est pas révoqué avec G80 ou un autre mot G
de mouvement, le cycle de perçage attend de se répéter en utilisant
la prochaine ligne de code contenant un ou plusieurs mots d’axe. Le fichier
suivant perce (G81) un ensemble de huit trous, tel que montré sur l’image qui
suit.
N100 G90 G0 X0 Y0 Z0 (coordonnées d'origine) N110 G1 X0 G4 P0.1 N120 G81 X1 Y0 Z0 R1 (cycle de perçage) N130 X2 N140 X3 N150 X4 N160 Y1 Z0.5 N170 X3 N180 X2 N190 X1 N200 G80 (révocation du cycle G81) N210 G0 X0 (mouvement en vitesse rapide) N220 Y0 N230 Z0 N240 M2 (fin du programme)
Note
|
Noter que la position de Z change après les quatre premiers trous. C’est également un des rares cas dans lesquels les numéros de lignes sont présents, permettant d’envoyer le lecteur sur une ligne de code spécifique. |
L’utilisation du G80 de la ligne N200 est facultative puisqu’il y a un G0
sur la ligne suivante qui révoque le cycle G81. Mais utiliser G80,
comme l’exemple 2 le montre, donne une meilleure lisibilité au programme. Sans
ce G80, il ne serait pas aussi évident que tous les blocs compris entre N120 et
N200 appartiennent au cycle de perçage.
38. G81 Cycle de perçage
G81 (X- Y- Z- ) ou (U- V- W- ) R- L-
Le cycle G81 est destiné au perçage.
- Un mouvement préliminaire, comme décrit sur cette page.
- Un déplacement de l’axe Z seul à la vitesse programmée, vers la
position Z programmée. - Retrait de l’axe Z en vitesse rapide jusqu’au plan de retrait R.
Supposons que la position courante soit, X1, Y2, Z3 dans
le plan XY, la ligne de code suivante est interprétée:
G90 G81 G98 X4 Y5 Z1.5 R2.8
Le mode de déplacements absolus est appelé (G90), le plan de retrait
est positionné sur OLD_Z (G98), l’appel du cycle de perçage G81 va
lancer ce cycle une fois. La position X deviendra celle demandée,
X4. La position de Y deviendra celle demandée, Y5. La position de Z
deviendra celle demandée, Z1.5. La valeur de R fixe le plan de retrait
de Z à 2.8. La valeur de OLD_Z est 3. Les mouvements suivants vont se
produire.
- Un mouvement en vitesse rapide, parallèle au plan XY vers X4, Y5, Z3
- Un mouvement en vitesse rapide, parallèle à l’axe Z vers X4, Y5, Z2.8
- Un mouvement en vitesse travail, parallèle à l’axe Z vers X4, Y5, Z1.5
- Un mouvement en vitesse rapide, parallèle à l’axe Z vers X4, Y5, Z3
Exemple 2: Supposons que la position courante soit, X1, Y2, Z3 dans
le plan XY, la ligne de codes suivante est interprétée:
G91 G81 G98 X4 Y5 Z-0.6 R1.8 L3
Le mode de déplacements incrémentaux est appelé (G91), le plan de
retrait est positionné sur OLD_Z (G98), l’appel du cycle de perçage
G81 demande 3 répétitions du cycle. La valeur demandée de X est 4,
la
valeur demandée de Y est 5, la valeur demandée de Z est -0.6 et le
retrait R est à 1.8. La position initiale de X sera 5 (1+4), la
position initiale de Y sera 7 (2+5), le plan de retrait sera positionné
sur 4.8 (1.8+3) et Z positionné sur 4.2 (4.8-0.6). OLD_Z est à 3.
Le premier mouvement en vitesse rapide le long de l’axe Z vers X1, Y2,
Z4.8), puisque OLD_Z est inférieur au plan de retrait.
La première répétition produira 3 mouvements.
- Un déplacement en vitesse rapide, parallèle au plan XY vers X5, Y7, Z4.8
- Un déplacement en vitesse travail, parallèle à l’axe Z vers X5, Y7, Z4.2
- Un déplacement en vitesse rapide, parallèle à l’axe Z vers X5, Y7, Z4.8
La deuxième répétition produira 3 mouvements. La position de X est
augmentée de 4 et passe à 9, la position de Y est augmentée de 5 et
passe à 12.
- Un déplacement en vitesse rapide, parallèle au plan XY vers X9, Y12, Z4.8
- Un déplacement en vitesse travail, parallèle à l’axe Z vers X9, Y12, Z4.2
- Un déplacement en vitesse rapide, parallèle à l’axe Z vers X9, Y12, Z4.8
La troisième répétition produira 3 mouvements. La position de X est
augmentée de 4 et passe à 13, la position de Y est augmentée de 5 et
passe à 17.
- Un déplacement en vitesse rapide, parallèle au plan XY vers X13, Y17, Z4.8
- Un déplacement en vitesse travail, parallèle à l’axe Z vers X13, Y17, Z4.2
- Un déplacement en vitesse rapide, parallèle à l’axe Z vers X13, Y17, Z4.8
Exemple 3: G81 en position relative
Supposons maintenant que le premier g81 de la ligne de
code soit exécuté, mais de (0, 0, 0) plutôt que de (1, 2, 3).
G90 G81 G98 X4 Y5 Z1.5 R2.8 Depuis OLD_Z est inférieur à la valeur de R,
il n’ajoute rien au mouvement, mais puisque la valeur initiale de Z est
inférieure à la valeur spécifiée dans R, un premier mouvement de Z sera
effectué durant le mouvement préliminaire.
Exemple 4: G81 en absolu avec R > Z
Il s’agit de la trajectoire pour le second bloc de code de G81.
G91 G81 G98 X4 Y5 Z-0.6 R1.8 L3
Cette trajectoire commence en (0, 0, 0), l’interpréteur ajoute les
valeurs initiales Z0 et R 1.8 et déplace le mobile en vitesse rapide
vers cet emplacement. Après ce premier déplacement initial de Z, la
répétition fonctionne de manière identique à celle de l’exemple 3 avec
le mouvement final de Z à 0.6 en dessous de la valeur de R.
Exemple 5: G81 en relatif avec R > Z
G90 G98 G81 X4 Y5 Z-0.6 R1.8
Puisque ce tracé commence en (X0, Y0, Z0), l’interpréteur ajoute R1.8 au Z0
initial et déplace le mobile en vitesse rapide à cet emplacement, comme dans
l’exemple 4. Après ce mouvement initial à une hauteur Z0.6, le
mouvement en vitesse rapide se terminera en X4 Y5.
Alors la hauteur Z sera à 0.6 en dessous de la valeur de R. La fonction de
répétition fera encore déplacer Z au même emplacement.
39. G82 Cycle de perçage avec temporisation
G82 (X- Y- Z- ) ou (U- V- W- ) R- L- P-
Le cycle G82 est destiné au perçage.
Les mouvements du cycle G82 ressemblent à ceux de G81 avec une
temporisation supplémentaire en fin de mouvement Z. La longueur de
cette temporisation, exprimée en secondes, est spécifiée par un mot P#
sur la ligne du G82.
- Un mouvement préliminaire. Comme décrit sur cette page.
- Un déplacement de l’axe Z seul en vitesse programmée, vers la position Z programmée.
- Une temporisation de P secondes.
- Retrait de l’axe Z en vitesse rapide jusqu’au plan de retrait R.
G90 G82 G98 X4 Y5 Z1.5 R2.8 P2
Sera équivalent à l’exemple 3 ci-dessus mais avec une temporisation de
2 secondes en fond de trou.
40. G83 Cycle de perçage avec débourrage
G83 (X- Y- Z-) or (U- V- W-) R- L- Q-
Le cycle G83 est destiné au perçage profond ou au fraisage avec
brise-copeaux. Les retraits, au cours de ce cycle, dégagent les copeaux du
trou et fragmentent les copeaux longs (qui sont fréquents lors du perçage dans
l’aluminium). Ce cycle utilise la valeur Q qui représente un incrément
delta le long de l’axe Z.
donnera:
- Un mouvement préliminaire, comme décrit sur cette page.
- Un mouvement de l’axe Z seul, en vitesse travail, sur la position la
moins profonde entre, un incrément delta, ou la position de Z programmée. - Un mouvement en vitesse rapide au plan de retrait.
- Une plongée en vitesse rapide dans le même trou, presque jusqu’au fond.
- Répétition des étapes 2, 3 et 4 jusqu’à ce que la position programmée
de Z soit atteinte à l’étape 2. - Un mouvement de l’axe Z en vitesse rapide vers le plan de retrait.
C’est une erreur si:
- La valeur de Q est négative ou égale à zéro.
41. G84 Cycle de taraudage à droite
Ce code n’est pas encore implémenté dans LinuxCNC. Il est accepté mais son
comportement n’est pas défini. Voir le taraudage rigide.
42. G85 Cycle d’alésage, sans temporisation, retrait en vitesse travail
G85 (X- Y- Z-) or (U- V- W-) R- L-
Le cycle G85 est destiné à l’alésage, mais peut être utilisé pour
le perçage ou le fraisage.
- Un mouvement préliminaire, comme décrit sur cette page.
- Un déplacement de l’axe Z seul en vitesse travail, vers la position Z programmée.
- Retrait de l’axe Z en vitesse travail vers le plan de retrait.
43. G86 Cycle d’alésage, arrêt de broche, retrait en vitesse rapide
G86 (X- Y- Z-) or (U- V- W-) R- L- P-
Le cycle G86 est destiné à l’alésage. Ce cycle utilise la valeur P pour
une temporisation en secondes.
- Un mouvement préliminaire, comme décrit sur cette page.
- Un déplacement de l’axe Z seul en vitesse travail, vers la position Z programmée.
- Une temporisation de P secondes.
- L’arrêt de rotation de la broche.
- Retrait de l’axe Z en vitesse rapide vers le plan de retrait.
- Reprise de la rotation de la broche dans la même direction que
précédemment.
La broche doit tourner avant le lancement de ce cycle. C’est une
erreur si:
- La broche ne tourne pas avant que ce cycle ne soit exécuté.
44. G87 Alésage inverse
Ce code n’est pas encore implémenté dans LinuxCNC. Il est accepté mais son
comportement n’est pas défini.
45. G88 Alésage, arrêt de broche, retrait en manuel
Ce code n’est pas encore implémenté dans LinuxCNC. Il est accepté mais son
comportement n’est pas défini.
46. G89 Cycle d’alésage, temporisation, retrait en vitesse travail
G89 (X- Y- Z-) or (U- V- W-) R- L- P-
Le cycle G89 est destiné à l’alésage. Il utilise la valeur de P
pour une temporisation en secondes.
- Un mouvement préliminaire, comme décrit sur cette page.
- Un déplacement de l’axe Z seul en vitesse travail, vers la position Z programmée.
- Temporisation de P secondes.
- Retrait de l’axe Z en vitesse travail vers le plan de retrait.
46.1. Pourquoi utiliser les cycles de perçage ?
Il y a au moins deux raisons, la première est l’économie de code. Un
simple trou demande plusieurs lignes de code pour être exécuté.
Nous avons montré plus haut, comment les cycles
de perçage peuvent être utilisés pour produire 8 trous avec dix
lignes de code. Le programme ci-dessous permet de produire le même jeu
de 8 trous en utilisant cinq lignes pour le cycle de perçage. Il ne
suit pas exactement le même parcours et ne perce pas dans le même ordre
que l’exemple précédent, mais le programme a été écrit de manière
économique, une bonne pratique qui devrait être courante avec les
cycles de perçage.
Exemple 5: perçage de huit trous, réécrit.
G90 G0 X0 Y0 Z0 (coordonnées d'origine) G1 F10 X0 G4 P0.1 G91 G81 X1 Y0 Z-1 R1 L4 (cycle de perçage) G90 G0 X0 Y1 Z0 G91 G81 X1 Y0 Z-.5 R1 L4 (cycle de perçage) G80 (révocation du cycle G81) M2 (fin de programme)
Exemple 6: Douze trous en carré
Cet exemple montre l’utilisation du mot L pour répéter une série
incrémentale de cycles de perçage pour des blocs de code successifs
dans le même mode mouvements G81. Ici, nous produisons 12 trous au
moyen de cinq lignes de code dans le mouvement modal.
G90 G0 X0 Y0 Z0 (coordonnées d'origine) G1 F50 X0 G4 P0.1 G91 G81 X1 Y0 Z-0.5 R1 L4 (cycle de perçage) X0 Y1 R0 L3 (répétition) X-1 Y0 L3 (répétition) X0 Y-1 L2 (répétition) G80 (révocation du cycle G81) G90 G0 X0 (retour vers l'origine en vitesse rapide) Y0 Z0 M2 (fin de programme)
La deuxième raison d’utiliser les cycles de perçages, c’est qu’il
produisent un mouvement préliminaire et retournent à une position
prévisible et contrôlable, quel que soit le point de départ du cycle.
47. G90, G91: Modes de déplacement
- G90 est le mode de déplacement absolu, les valeurs d’axes
X, Y, Z, A, B, C, U, V, W représentent les positions dans le système de
coordonnées courant. Les exceptions à cette règle sont décrites dans
la section sur les cycles de perçage. - G91 est le mode de déplacement relatif, en mode relatif, les
valeurs d’axes représentent un incrément depuis la position courante.
G90 (passe en mode de déplacement absolu) G0 X2.5 (déplacement linéaire en vitesse rapide à la coordonnée X=2.5 en incluant tous les offsets en cours)
G91 (passe en mode de déplacement relatif) G0 X2.5 (déplacement linéaire en vitesse rapide, à +2.5 en X de la position courante)
- Voir G0 pour plus d’information.
48. G90.1, G91.1: Mode de déplacement en arc (I, J et K)
- G90.1 – Mode de déplacement absolu pour les offsets I, J et K. Quand
G90.1 est actif, I et J doivent être tous les deux spécifiés avec G2/G3 pour
le plan XY ou J et K pour le plan XZ, sinon c’est une erreur. - G91.1 – Mode de déplacement relatif pour les offsets I, J et K. G91.1
replace I, J et K à leur fonctionnement normal.
49. G92 Décalage d’origine des systèmes de coordonnées
G92 axes
Voir ce chapitre pour une vision générale
des systèmes de coordonnées.
G92 fixera de nouvelles valeurs de coordonnées au point actuel (sans
faire de mouvement). Les mots d’axes contiennent les valeurs souhaitées. Au
moins un mot d’axe est obligatoire, les autres sont facultatifs. Si il
n’y a pas de mot d’axe pour un axe donné, les coordonnées de cet axe
resteront inchangées.
Quand G92 est exécuté, les origines de tous les systèmes de
coordonnées sont déplacées. Elles seront déplacées de sorte que les valeurs du
point contrôlé courant, dans le système de coordonnées courant, deviendront
celles spécifiées dans la ligne du G92. Les origines de tous les systèmes de
coordonnées sont décalées de la même distance.
Par exemple, supposons que le point courant soit à X=4 et qu’aucun
décalage G92 ne soit actif. La ligne G92 X7 est programmée, toutes les
origines seront décalées de -3 en X, ce qui fera que le point courant
deviendra X=7. Ce -3 est enregistré dans le paramètre 5211.
Être en mode de déplacement relatif est sans effet sur l’action de G92.
Des décalages G92 peuvent déjà être actifs quand G92 est appelé. Si
c’est le cas, ils seront remplacés par le nouveau décalage, de sorte que le
point courant devienne la valeur spécifiée.
C’est une erreur si:
- Tous les mots d’axes sont omis.
LinuxCNC conserve les décalages G92 et les réutilise au prochain démarrage
du logiciel. Pour éviter cela, programmer un G92.1 qui les effacera, ou
un G92.2 qui supprimera les valeurs enregistrées.
Voir le chapitre sur les systèmes de coordonnées.
Voir la section sur les décalages G92.
Voir la section sur les paramètres.
50. G92.1, G92.2 Remise à zéro des décalages des systèmes de coordonnées
- G92.1 – Positionne les décalages d’axes à 0 et passe les paramètres
5211 à 5219 à zéro. - G92.2 – Positionne les décalages d’axes à 0, laisse les valeurs des
paramètres inchangées, elles ne seront pas utilisées.
51. G92.3 Restauration des décalages d’axe
- G92.3 – Positionne les décalages d’axes aux valeurs enregistrées dans
les paramètres 5211 à 5219.
Il est possible de positionner les décalages d’axes dans un programme puis de
ré-utiliser les mêmes dans un autre programme. Pour cela, programmer G92 dans
le premier programme, ce qui positionnera les paramètres 5211 à
5219. Ne pas utiliser G92.1 dans la suite du premier programme. Les
valeurs des paramètres seront enregistrées lors de la sortie du premier
programme et rétablies au chargement du second programme. Utiliser
G92.3 vers le début du deuxième programme, ce qui restaurera les
décalages d’axes enregistrés par le premier.
52. G93, G94, G95: Choix des modes de vitesse
- G93 – Passe en mode inverse du temps. Dans le mode vitesse inverse du
temps, le mot F signifie que le mouvement doit être terminé en [1/F]
minutes. Par exemple, si la valeur de F est 2.0, les mouvements
doivent être terminés en 1/2 minute.Quand le mode vitesse inverse du temps est actif, le mot F doit
apparaître sur chaque ligne contenant un mouvement G1, G2, ou G3. Les
mots F qui sont sur des lignes sans G1, G2, ou G3 sont ignorés. Être en
mode vitesse inverse du temps est sans effet sur les mouvements G0
(vitesse rapide). - G94 – Passe en mode unités par minute. Dans le mode vitesse en unités
par minute, le mot F indique le déplacement du point contrôlé en millimètres
par minute, en pouces par minute, ou en degrés par minute, selon l’unité
utilisée. - G95 – Passe en mode unités par tour. Dans le mode vitesse en unités
par tour, le mot F donne le déplacement du point contrôlé à effectuer sur
l’axe Z, en millimètres par tour de broche ou en pouces, selon l’unité utilisée.
C’est une erreur si:
- Le mode vitesse inverse du temps est actif et qu’une ligne avec G1,
G2, ou G3 (explicitement ou implicitement) n’a pas de mot F. - Une nouvelle vitesse n’a pas été spécifiée après un passage en G94 ou G95.
53. G96, G97: Modes de contrôle de la broche
G96 S- (vitesse de coupe constante) G97 (mode tr/mn)
- D- – Vitesse de broche maximale en tours par minute.
- S- – Vitesse de coupe constante.
- G96 D- S- – Passe à une vitesse de coupe constante de S pieds par minute,
si G20 est actif, ou S mètres par minute, si G21 est actif. D- est facultatif.Lorsque G96 est utilisé, s’assurer que X0 dans le système de coordonnées
en cours (y compris les compensations d’outils) est bien le centre de
rotation, sinon LinuxCNC ne donnera pas la vitesse de broche désirée.
G96 n’est pas affecté par les mode rayon ou diamètre. - G97 – Vitesse de coupe en tr/mn.
G96 D2500 S250 (passe à une vitesse de coupe constante de 250 m/mn maximum pour une vitesse de broche maximale de 2500tr/mn).
C’est une erreur si:
- S n’est pas spécifié avec G96.
- Une vitesse est spécifiée en mode G96 et la broche ne tourne pas.
54. G98, G99: Options du plan de retrait
Quand la broche se rétracte pendant les cycles de perçage, il
existe deux options pour indiquer comment elle doit se rétracter:
- G98 Retrait perpendiculaire au plan de travail courant jusqu’à
la position qui était celle de cet axe juste avant le début du cycle de
perçage. (à moins que cette position ne soit inférieure à celle indiquée
par le mot R, auquel cas, c’est cette dernière qui serait utilisée).
- G99 Retrait perpendiculaire au plan de travail courant jusqu’à la position
indiquée par le mot R.
Ne pas oublier que la signification du mot R change selon que le mode de
déplacement est absolu ou relatif.
Le plan de retrait initial (G98) est annulé chaque fois que le mode de
mouvement est abandonné, que ce soit explicitement avec G80 ou implicitement
(tout code de mouvement qui n’est pas un cycle).
Basculer d’un mode de cycle à un autre, par exemple entre G81 et G83
n’annule pas le plan de retrait initial. Il est permis de basculer entre
G98 et G99 durant une série de cycles de perçage.