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.
- Que sont les codes G et les codes M ?
- Codes G et M essentiels pour les débutants en CNC
- G90 et G91 — Coordonnées absolues et incrémentales
- Comment fonctionne le G90 G28 Z0 ?
- Comment fonctionne le G91 G28 Z0 ?
- G54 à G59 — Sélection du système de coordonnées de travail
- Les codes M indiquent à la machine quelle fonction activer.
- Codes M CNC courants
- Pourquoi chaque programme CNC a besoin d'un bloc d'initialisation de sécurité
- Exemple complet de programme FANUC
- Résumé : Comprendre les codes G et les codes M
- Support d'usinage CNC à partir d'un moule de fonderie
- Services de moulage sous pression d'aluminium
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 :
- Instructions qui indiquent à l'outil de coupe comment se déplacer
- 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
| Command | Type de coordonnées | Signification de X50 |
|---|---|---|
| G90 | Coordonnées absolues | Déplacez-vous à X = 50 mm |
| G91 | Coordonnées incrémentales | Dé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 :
- Déplacez-vous jusqu'au point intermédiaire programmé.
- 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 :
- L'axe Z se déplace d'abord de sa position actuelle à la position absolue.
Z0. - 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 :
- L'axe Z se déplace d'une distance incrémentale de zéro
- La position actuelle devient le point intermédiaire
- 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
| Command | Point intermédiaire | Risque ou effet principal |
|---|---|---|
G90 G28 Z0. | Z0 absolu dans le système de coordonnées actif | L'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 actuelle | La 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 M | Fonction | Exemple ou explication |
|---|---|---|
| M03 | Rotation de la broche vers l'avant | Utilisé avec une valeur S, comme par exemple S3000 M03 |
| M04 | Rotation inverse de la broche | Utilisé pour des outils spéciaux ou certaines opérations de taraudage |
| M05 | Arrêt de broche | La broche doit normalement s'arrêter avant un changement d'outil. |
| M06 | Changement d'outil automatique | Utilisé avec une commande T, comme par exemple T02 M06 |
| M08 | Liquide de refroidissement activé | Active le liquide de refroidissement pendant la découpe |
| M09 | Liquide de refroidissement désactivé | Coupe le liquide de refroidissement avant le changement d'outil ou la fin du programme. |
| M00 | Arrêt du programme | Attend que l'opérateur appuie sur DÉMARRAGE DU CYCLE |
| M01 | Arrêt facultatif | S'arrête uniquement lorsque le commutateur d'arrêt optionnel est activé. |
| M30 | Fin du programme et réinitialisation | Normalement utilisé à la fin d'un programme complet |
| M98 | Appel de sous-programme | Appelle 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 rapideG01— Découpe linéaireG02— Interpolation circulaire dans le sens des aiguilles d'une montreG03— Interpolation circulaire dans le sens inverse des aiguilles d'une montreG90— Programmation en coordonnées absoluesG91— Programmation incrémentale des coordonnéesG28— Retour au point de référence de la machineG54— 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 brocheM05— Arrêtez la brocheM06— Changer l'outilM08— Mettez le liquide de refroidissement surM09— Couper le liquide de refroidissementM30— 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.
G00ne doit pas être utilisé avec négligence à proximité de la pièce à usiner.G90utilise des coordonnées absolues.G91utilise des coordonnées incrémentales.G28se 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.



