Codes G et codes M : Explication du langage machine CNC, y compris la différence entre G90 et G28 et entre G91 et G28.

Fraiseuse CNC pour le travail des métaux.
Les codes G et M contrôlent les mouvements et les fonctions auxiliaires des machines CNC. Apprenez les codes G00, G01, G90, G91 et G28, les décalages d'origine et l'initialisation sécurisée des programmes FANUC.

Les codes G et les codes M sont le langage que comprennent les machines CNC.

Dans l'article précédent, nous avons expliqué les cinq systèmes principaux d'une machine CNC et leur fonctionnement. Dans cet article, nous abordons la programmation CNC en étudiant les deux principaux types d'instructions utilisés pour piloter une machine-outil.

Cet article utilise le format de code CNC FANUC comme exemple principal.

Quand j'ai commencé à travailler en usine, ce programme n'avait aucun sens pour moi.

Je me souviens encore de mes débuts dans le travail en usine.

Mon professeur m'a tendu une feuille de papier couverte de lignes comme celles-ci :

O0001
G94 G40 G49 G80
T01 M06
G90 G00 G54 X0. Y0.
S3000 M03
G43 H01 Z100.
G01 Z-5. F200
...
G00 Z50.
M09
G49
G91 G28 Z0.
M30

Il a dit:

Tout d'abord, apprenez à lire ceci.

J'ai longuement contemplé le programme. J'ai reconnu quelques lettres, mais presque tout le reste me paraissait incompréhensible.

Plus tard, j'ai découvert que ces codes obéissent à des règles claires et ne sont pas aussi compliqués qu'ils n'y paraissent au premier abord.

Un programme CNC contient principalement deux types d'instructions :

  1. Instructions qui indiquent à l'outil de coupe comment se déplacer
  2. Des instructions qui indiquent à la machine quelle fonction auxiliaire activer

Le premier type est appelé code G.

Le deuxième type est appelé code M.

Quels sont Codes G et codes M?

Les codes G indiquent à l'outil de coupe comment se déplacer.

Les codes G sont également connus sous le nom de codes de fonction préparatoire.

Leur fonction principale est de définir le mouvement de l'outil de coupe, notamment :

  • Positionnement rapide
  • Coupe linéaire
  • Interpolation circulaire
  • Mouvement de coordonnées absolues
  • Mouvement de coordonnées incrémental
  • sélection du système de coordonnées de travail
  • retour de référence machine

Le code AG commence par la lettre G, suivi de deux chiffres.

Par exemple :

G00
G01
G54
G90

Avant d'apprendre les commandes individuelles, il est important de comprendre la différence entre les codes G modaux et non modaux .

Codes G modaux

Un code modal reste actif après sa programmation.

Il continue d'affecter les blocs de programme suivants jusqu'à ce qu'un autre code G du même groupe le remplace.

Par exemple, après la programmation :

G01

La machine CNC continuera d'utiliser l'interpolation linéaire dans les blocs suivants, même lorsque G01 n'est pas réécrit.

Le mode reste actif jusqu'à une autre commande de mouvement, telle que G00, G02, G03, le remplace.

Codes G non modaux

Un code non modal n'est effectif que dans le bloc de programme où il apparaît.

Elle est exécutée une seule fois et ne reste pas active dans les blocs suivants.

Par exemple :

G04

Il s'agit d'une commande de maintien. Elle n'affecte que le bloc de programme courant.

Codes G et M essentiels pour les débutants en CNC

Les commandes suivantes figurent parmi les codes les plus importants pour quiconque débute en programmation CNC. Les explications ci-dessous reprennent la structure et les exemples de l'article original.

G00 — Positionnement rapide

G00 déplace l'outil de coupe vers une position spécifiée à la vitesse de déplacement rapide de la machine.

Il est généralement utilisé pour le positionnement plutôt que pour la découpe.

Exemple :

G00 X100. Y50. Z200.

Cette commande déplace rapidement l'outil vers :

  • X = 100 XNUMX mm
  • Y = 50 XNUMX mm
  • Z = 200mm

Avertissement de sécurité important

G00 ne se déplace pas nécessairement le long d'une trajectoire rectiligne contrôlée.

Plusieurs axes peuvent se déplacer simultanément à leur vitesse maximale. Selon la commande machine et l'écartement des axes, la trajectoire d'outil réelle peut être diagonale ou en forme de coude.

Pour cette raison, n'utilisez jamais G00 de manière négligente lorsque l'outil de coupe se trouve à proximité de la pièce à usiner, du dispositif de fixation, des pinces ou de la table de la machine.

Lors de l'approche de la pièce à usiner, utilisez un mouvement d'avance contrôlé tel que : G01.

G01 — Découpe linéaire

G01 déplace l'outil de coupe le long d'une ligne droite à une vitesse d'avance spécifiée.

C'est l'une des commandes de coupe les plus couramment utilisées en usinage CNC.

Exemple :

G01 X50. Y50. F300.

Cette commande déplace l'outil en ligne droite vers :

  • X = 50 XNUMX mm
  • Y = 50 XNUMX mm

Le débit d'alimentation est :

F300

L'unité de la valeur F dépend du mode d'alimentation actif.

Sous G94

Le débit d'alimentation est mesuré par minute :

mm/min

Sous G95

La vitesse d'avance est mesurée par tour de broche :

mm/rev

Les fraiseuses CNC sont couramment utilisées G94.

G02 et G03 — Interpolation circulaire

G02 et G03 sont utilisées pour usiner des trajectoires d'outils circulaires ou en forme d'arc.

G02

Interpolation circulaire dans le sens des aiguilles d'une montre.

G03

Interpolation circulaire dans le sens inverse des aiguilles d'une montre.

La direction est généralement déterminée en regardant depuis la direction positive de l'axe sélectionné vers la direction négative.

Pour un arc dans le plan XY, cela signifie normalement regarder depuis l'axe Z positif vers la pièce à usiner.

Exemple utilisant une valeur R :

G02 X50. Y0. R25. F200.

Cette commande déplace l'outil dans le sens horaire vers :

  • X = 50 XNUMX mm
  • Y = 0 XNUMX mm
  • Rayon = 25 mm
  • Vitesse d'avance = 200 mm/min

Exemple utilisant des décalages centraux :

G03 X0. Y50. I0. J25. F200.

Cette commande déplace l'outil dans le sens antihoraire en utilisant I et J définir le décalage du centre de l'arc.

Une façon simple de se souvenir

G02 = Clockwise
G03 = Counterclockwise

La direction doit être considérée de l'axe Z positif vers l'axe Z négatif lorsqu'on travaille dans le plan XY.

G90 et G91 — Coordonnées absolues et incrémentales

G90 et G91 Ce sont deux commandes que les débutants en CNC confondent souvent.

G90 — Programmation en coordonnées absolues

Sous G90, toutes les coordonnées programmées font référence à l'origine du système de coordonnées actuellement actif.

Par exemple :

G90 G00 X50.

Ça signifie:

Déplacez-vous à la position de coordonnées absolues X = 50 mm.

Cela ne signifie pas se déplacer de 50 mm supplémentaires par rapport à la position actuelle.

Une comparaison simple consiste à entrer une destination précise dans un système de navigation.

G91 — Programmation incrémentale des coordonnées

Sous G91, chaque valeur de coordonnée représente une distance de déplacement par rapport à la position actuelle de l'outil.

Par exemple :

G91 G00 X50.

Ça signifie:

Déplacez-vous de 50 mm supplémentaires dans la direction X positive à partir de la position actuelle.

Cela ne signifie pas se déplacer jusqu'à la coordonnée absolue X = 50 mm.

Une simple comparaison revient à dire :

Avancez encore de 500 mètres, puis tournez à droite.

Comparaison entre le G90 et le G91

CommandType de coordonnéesSignification de X50
G90Coordonnées absoluesDéplacez-vous à X = 50 mm
G91Coordonnées incrémentalesDéplacez-vous de 50 mm supplémentaires par rapport à votre position actuelle.

G28 — Retour au point de référence machine

G28 ordonne à l'axe de la machine de revenir à son point de référence prédéfini.

Le format de base est :

G28 X_ Y_ Z_

Les valeurs X, Y et Z définissent un point intermédiaire.

Sous G90, le point intermédiaire est interprété comme une coordonnée absolue.

Sous G91, le point intermédiaire est interprété comme un mouvement progressif.

Ce concept de point intermédiaire est la clé pour comprendre pourquoi G91 G28 Z0. est couramment utilisé à la place de G90 G28 Z0..

Quel est le point intermédiaire ?

Lorsque la machine exécute une G28 En mode commande, l'axe ne se déplace pas simplement et directement vers le point de référence de la machine en une seule étape.

Le mouvement comporte normalement deux étapes :

  1. Déplacez-vous jusqu'au point intermédiaire programmé.
  2. Déplacez-vous du point intermédiaire au point de référence de la machine

Le mode de coordonnées programmé détermine l'emplacement de ce point intermédiaire.

Comment fonctionne le G90 G28 Z0 ?

Supposons que l'outil de coupe se trouve actuellement à l'emplacement suivant :

Z50.

Considérons maintenant la commande suivante :

G90 G28 Z0.

Sous G90, la valeur Z0. est une coordonnée absolue dans le système de coordonnées actuellement actif.

Le mouvement se déroule donc en deux étapes :

  1. L'axe Z se déplace d'abord de sa position actuelle à la position absolue. Z0.
  2. Il passe ensuite de Z0. au point de référence de la machine

Avant d'exécuter une commande de retour G28, la compensation de longueur d'outil est souvent annulée.

Dans cette situation, il faut d'abord se déplacer vers la position de coordonnées de travail. Z0. peut entraîner un déplacement de l'outil vers le bas, en direction de la pièce à usiner.

Si le point zéro de la pièce est situé sur la surface supérieure de celle-ci, l'outil de coupe peut pénétrer directement dans la pièce.

C'est pourquoi utiliser :

G90 G28 Z0.

Ne pas bien comprendre la position intermédiaire peut engendrer un risque de collision sérieux.

L'article original souligne que l'outil peut d'abord se déplacer vers le zéro des coordonnées de la pièce avant de revenir à la position de référence de la machine.

Comment fonctionne le G91 G28 Z0 ?

Considérez maintenant:

G91 G28 Z0.

Sous G91, Z0. représente un mouvement incrémental de zéro.

Autrement dit, la position actuelle de l'outil sert de point intermédiaire.

Le mouvement se déroule comme suit :

  1. L'axe Z se déplace d'une distance incrémentale de zéro
  2. La position actuelle devient le point intermédiaire
  3. L'axe Z revient ensuite au point de référence prédéfini de la machine.

Comme le déplacement intermédiaire programmé est nul, l'outil ne se déplace pas d'abord vers la position de coordonnées de travail. Z0..

Au lieu de cela, il commence à revenir de sa position actuelle vers le point de référence de l'axe Z de la machine.

C’est pourquoi les programmes CNC utilisent couramment :

G91 G28 Z0.

Cela signifie :

Utilisez la position Z actuelle comme point intermédiaire, puis ramenez l'axe Z au point de référence de la machine.

Cette logique de mouvement est la principale raison pour laquelle l'article original recommande G91 G28 Z0. plutôt que des G90 G28 Z0. pour cette situation.

Comparaison des G90, G28 et G91 G28

CommandPoint intermédiaireRisque ou effet principal
G90 G28 Z0.Z0 absolu dans le système de coordonnées actifL'outil peut d'abord se déplacer vers le zéro de la pièce.
G91 G28 Z0.Aucun déplacement incrémentiel par rapport à la position actuelleLa position actuelle devient le point intermédiaire avant le retour de référence

Format de programmation FANUC commun

G91 G28 Z0.

Commentaire:

The Z-axis makes a zero incremental move and then returns to the machine Z reference point.

G54 à G59 — Sélection du système de coordonnées de travail

G54 est l'une des commandes de système de coordonnées de travail les plus couramment utilisées.

Après avoir défini l'origine de la pièce lors de la détection des bords, du palpage ou du réglage de l'outil, les valeurs des coordonnées sont saisies dans le G54 compensation du travail.

Lorsque le programme contient :

G54

la machine l'interprète comme :

Utilisez l'origine de la pièce stockée dans G54.

Les systèmes de coordonnées de travail supplémentaires comprennent :

G55
G56
G57
G58
G59

Ce sont les systèmes de coordonnées standard du deuxième au sixième ordre.

Ils sont utiles pour :

  • Usinage de plusieurs pièces
  • Utilisation de plusieurs luminaires
  • Programmation de différentes positions de la pièce
  • Exécution de plusieurs décalages de travail dans une seule configuration

Les codes M indiquent à la machine quelle fonction activer.

Les codes M sont également connus sous le nom de codes de fonctions diverses ou codes de fonctions auxiliaires.

Contrairement à la plupart des codes G, les codes M ne définissent généralement pas la position de l'outil de coupe.

Ils contrôlent en revanche des fonctions de support de la machine telles que :

  • Démarrage et arrêt de la broche
  • Changer d'outils
  • Activation et désactivation du liquide de refroidissement
  • Mise en pause du programme
  • Fin du programme
  • Appel d'un sous-programme

L'article original répertorie les codes M couramment utilisés suivants.

Codes M CNC courants

Code MFonctionExemple ou explication
M03Rotation de la broche vers l'avantUtilisé avec une valeur S, comme par exemple S3000 M03
M04Rotation inverse de la brocheUtilisé pour des outils spéciaux ou certaines opérations de taraudage
M05Arrêt de brocheLa broche doit normalement s'arrêter avant un changement d'outil.
M06Changement d'outil automatiqueUtilisé avec une commande T, comme par exemple T02 M06
M08Liquide de refroidissement activéActive le liquide de refroidissement pendant la découpe
M09Liquide de refroidissement désactivéCoupe le liquide de refroidissement avant le changement d'outil ou la fin du programme.
M00Arrêt du programmeAttend que l'opérateur appuie sur DÉMARRAGE DU CYCLE
M01Arrêt facultatifS'arrête uniquement lorsque le commutateur d'arrêt optionnel est activé.
M30Fin du programme et réinitialisationNormalement utilisé à la fin d'un programme complet
M98Appel de sous-programmeAppelle un sous-programme spécifié, parfois avec un nombre de répétitions

Pourquoi chaque programme CNC a besoin d'un bloc d'initialisation de sécurité

Il existe une règle dont les opérateurs de machines CNC se souviennent généralement après avoir été témoins d'une seule collision grave entre machines :

Chaque programme CNC doit commencer par un bloc d'initialisation de sécurité.

Une ligne de sécurité courante au format FANUC est :

G90 G94 G40 G49 G80

Cette ligne supprime les conditions modales potentiellement dangereuses laissées actives par un programme précédent.

G90 — Sélectionner le mode de coordonnées absolues

G90

Cela empêche le nouveau programme de s'exécuter accidentellement sous G91 Mode incrémental laissé actif par le programme précédent.

Sans G90Une coordonnée conçue comme une position absolue pourrait être interprétée comme une distance de déplacement supplémentaire.

G94 — Sélectionner le débit par minute

G94

Cette option permet de sélectionner le débit d'alimentation par minute, généralement exprimé en :

mm/min

Cela empêche le programme d'être utilisé accidentellement G95 avance par révolution laissée active par une autre opération.

G40 — Annuler la compensation du rayon de coupe

G40

Cela annule la compensation active du rayon de coupe.

Cela empêche un précédent G41 or G42 valeur de compensation due à une modification inattendue de la trajectoire d'outil programmée.

G49 — Annulation de la compensation de longueur d'outil

G49

Cela annule la compensation active de la longueur de l'outil.

Cela empêche un décalage H précédent de continuer à affecter la position de l'axe Z dans le nouveau programme.

G80 — Annulation des cycles annulés

G80

Cela annule les opérations de perçage, d'alésage, de taraudage ou autres cycles prédéfinis.

Il empêche qu'un cycle de forage laissé actif par le programme précédent ne se répète de manière inattendue dans le nouveau programme.

L'article source souligne que ces commandes sont essentielles pour effacer les conditions modales résiduelles avant le début du programme d'usinage.

Règle de sécurité simple à retenir

G40 G49 G80 clear the previous compensation and cycles.
G90 G94 establish the correct coordinate and feed modes.

En termes simples :

Commencez par effacer les anciens paramètres, puis définissez le nouveau mode de programme.


Pourquoi ce bloc de sécurité est important

Imaginez que le programme précédent se soit terminé pendant G43 La compensation de la longueur de l'outil était toujours active.

Le prochain programme commence directement avec G54, sans annuler au préalable l'indemnisation restante.

Lors du déplacement vers le bas de l'axe Z, la commande peut conserver le décalage de longueur d'outil précédent. Par conséquent, l'outil peut se déplacer de plusieurs dizaines de millimètres de plus que prévu et entrer en collision avec la pièce.

Un court bloc d'initialisation peut éviter un accident coûteux impliquant un outil, une pièce, un dispositif de fixation, une broche ou une machine.

Exemple complet de programme FANUC

Combinons maintenant les codes G et les codes M en un programme simple.

O0001
G94 G40 G49 G80
T01 M06
G90 G00 G54 X0. Y0.
S3000 M03
G43 H01 Z100.
G01 Z-5. F200
...
G00 Z50.
M09
G49
G91 G28 Z0.
M30

Le programme présenté dans la source utilise le changement d'outil, la sélection du décalage d'usinage, le contrôle de la broche, la compensation de la longueur de l'outil, l'avance de coupe, l'arrêt du liquide de refroidissement, l'annulation de la compensation et le retour à la référence de l'axe Z.

Explication ligne par ligne

Numéro de programme

O0001

Définit le numéro de programme CNC.

Initialisation de sécurité

G94 G40 G49 G80

Cette ligne :

  • Sélectionne le débit par minute
  • Annule la compensation du rayon de coupe
  • Annule la compensation de longueur d'outil
  • Annule les cycles en conserve actifs

Pour une protection supplémentaire, de nombreux programmes incluent également G90 dans la ligne d'initialisation de sécurité :

G90 G94 G40 G49 G80

Changement d'outil

T01 M06

Cette fonction sélectionne l'outil 1 et effectue un changement d'outil automatique.

Sélectionnez Décalage de travail et déplacez-vous vers la position de départ

G90 G00 G54 X0. Y0.

Cette ligne :

  • Sélectionne la programmation en coordonnées absolues
  • Sélectionne le positionnement rapide
  • Active le système de coordonnées de travail G54
  • Se déplace rapidement vers X0 et Y0

Démarrer la broche

S3000 M03

Cela lance la broche dans le sens avant à :

3000 rpm

Activer la compensation de longueur d'outil

G43 H01 Z100.

Cette ligne :

  • Active la compensation positive de la longueur de l'outil
  • Utilise le décalage de longueur d'outil H01
  • Positionne l'axe Z à 100 mm

Introduisez l'outil dans la pièce à usiner

G01 Z-5. F200

Cela déplace l'outil en ligne droite vers :

Z = -5 mm

à un débit d'alimentation de :

200 mm/min

Repliez-vous vers un plan sûr

G00 Z50.

Cela rétracte rapidement l'outil pour :

Z = 50 mm

Coupez le liquide de refroidissement

M09

Cela coupe le système de refroidissement.

Annulation de la compensation de longueur d'outil

G49

Cela annule la compensation active de la longueur de l'outil.

Ramenez l'axe Z au point de référence

G91 G28 Z0.

Ce mode utilise l'incrémental.

L'axe Z effectue d'abord un déplacement incrémental nul, ce qui signifie que sa position actuelle devient le point intermédiaire. Il retourne ensuite au point de référence de l'axe Z de la machine.

Mettre fin au programme

M30

Cela met fin au programme et le réinitialise.

Résumé : Comprendre les codes G et les codes M

Les codes G et les codes M remplissent deux fonctions différentes mais complémentaires dans un programme CNC.

Codes G

Les codes G contrôlent principalement le mouvement des outils et les modes de coordonnées.

Voici quelques exemples importants :

  • G00 — Positionnement rapide
  • G01 — Découpe linéaire
  • G02 — Interpolation circulaire dans le sens des aiguilles d'une montre
  • G03 — Interpolation circulaire dans le sens inverse des aiguilles d'une montre
  • G90 — Programmation en coordonnées absolues
  • G91 — Programmation incrémentale des coordonnées
  • G28 — Retour au point de référence de la machine
  • G54 — Sélectionnez le premier système de coordonnées de travail

Codes M

Les codes M contrôlent principalement les fonctions auxiliaires de la machine.

Voici quelques exemples importants :

  • M03 — Démarrer la broche
  • M05 — Arrêtez la broche
  • M06 — Changer l'outil
  • M08 — Mettez le liquide de refroidissement sur
  • M09 — Couper le liquide de refroidissement
  • M30 — Terminer et réinitialiser le programme

Points clés à retenir

  • Les codes modaux restent actifs jusqu'à ce qu'un autre code du même groupe les remplace.
  • Les codes non modaux ne s'appliquent qu'au bloc de programme dans lequel ils apparaissent.
  • G00 ne doit pas être utilisé avec négligence à proximité de la pièce à usiner.
  • G90 utilise des coordonnées absolues.
  • G91 utilise des coordonnées incrémentales.
  • G28 se déplace normalement par un point intermédiaire avant de revenir au point de référence de la machine.
  • G90 G28 Z0. peut d'abord déplacer l'outil vers la position absolue de coordonnées de travail Z0.
  • G91 G28 Z0. utilise la position actuelle comme point intermédiaire avant de revenir au point de référence Z.
  • Chaque programme devrait commencer par un bloc d'initialisation de sécurité tel que : G90 G94 G40 G49 G80.

Support d'usinage CNC à partir d'un moule de fonderie

Chez Cast Mold, l'usinage CNC est une composante importante de notre service de fabrication intégré.

Nous offrons un soutien intégré couvrant :

  • Conception de moules de fonderie sous pression
  • Fabrication de moules
  • moulage sous pression d'alliages d'aluminium et de zinc
  • Usinage CNC
  • Perçage et taraudage
  • Traitement de surface
  • Inspection dimensionnelle
  • Assemblage et expédition

Pour les composants moulés sous pression, des caractéristiques usinées CNC sont souvent nécessaires pour :

  • Trous de montage de précision
  • Threads
  • Surfaces d'étanchéité
  • positions de palier
  • Interfaces d'assemblage
  • Zones critiques de planéité
  • Dimensions à tolérance serrée

En combinant l'outillage, le moulage sous pression, l'usinage CNC, le traitement de surface et l'inspection, nous aidons nos clients à réduire le temps de communication entre plusieurs fournisseurs et à améliorer la constance dimensionnelle dans la production par lots.

Pour une évaluation de projet, veuillez fournir :

  • Dessins 2D
  • Modèles 3D
  • Exigences matérielles
  • quantité annuelle
  • exigences relatives à la finition de surface
  • Tolérances critiques
  • Les exigences d'inspection

Services de moulage sous pression d'aluminium

Découvrez nos services de moulage sous pression d'aluminium en Chine.

Partagez :

plus messages

Envoyez nous un message

Blog récent Posts

Fraiseuse CNC pour le travail des métaux.

Codes G et codes M : Explication du langage machine CNC, y compris la différence entre G90 et G28 et entre G91 et G28.

Les codes G et M contrôlent les mouvements et les fonctions auxiliaires des machines à commande numérique (CNC). Apprenez les codes G00, G01, G90…
Fraiseuse CNC pour le travail des métaux.

Les cinq systèmes principaux d'une machine CNC : comprendre ce schéma permet de comprendre le fonctionnement d'une machine CNC.

Que se passe-t-il à l'intérieur d'une machine CNC après que l'opérateur a appuyé sur le bouton DÉMARRAGE DU CYCLE ? Ceci…
Système de coordonnées d'une machine CNC montrant les axes X, Y et Z et la règle de la main droite

Systèmes de coordonnées des machines CNC expliqués : règle de la main droite, MCS, WCS et décalages d’outil

L'usinage CNC repose sur des références de coordonnées précises. Ce guide explique la règle de la main droite, le fonctionnement de la machine et…

Besoin de pièces personnalisées ?

Remonter en haut

Demande de devis ou d'informations

Nous serions heureux de recevoir votre demande de devis.

Veuillez nous envoyer par e-mail vos exigences détaillées, y compris le dessin 2D, le modèle 3D et la quantité.

  • ventes@cast-mold.com
  • +86 18718679416
  • 101, n° 6, route Yongshun, ville de Basha, ville de Humen, ville de Dongguan, province du Guangdong.

nous pouvons organiser le ramassage lorsque vous nous rendez visite.

Nous sommes proches de l'aéroport international de Shenzhen, de l'aéroport international de Hong Kong et de l'aéroport de Guangzhou.