Programmation avec EDnum▲
Format général des données et définition des adresses▲
%nnnn | Numéro de programme 4 chiffres maxi |
Nnnnnn | Numéro de séquences ou de ligne 5 chiffres maxi de N0 à N32767 |
Gnn | Fonction préparatoire 2 chiffres maxi 6 fonctions maximum dans un bloc |
Hnnnn | Numéro d'appel de sous-programmes dans une séquence comportant un G77 4 chiffres maxi |
Xnnnnn,nnn Ynnnnn,nnn Znnnnn,nnn |
Mouvements principaux sur les axes. 8 chiffres maxi |
Innnnn,nnn Jnnnnn,nnn Knnnnn,nnn |
Coordonnées du centre en interpolation circulaire en G2 et G3 ou pas de l'hélice en interpolation hélicoïdale ou pas du filet en filetage au gain |
Innnnn,nnn Jnnnnn,nnn |
Prise de passe axiale et latérale en G45 |
Unnnnn,nnn Vnnnnn,nnn Wnnnnn,nnn |
Mouvements parallèles aux axes X, Y et Z |
Annnnn,nnn Bnnnnn,nnn Cnnnnn,nnn |
Coordonnées angulaires autour des axes X, Y et Z |
Pnnnnn,nnn | Valeur de la première pénétration en G83 ou G87, ou sens de l'outil suivant X ou U en G16 |
Pnnnn,nnn | Prise de passe axiale en ébauche en G45 (7 chiffres maxi) |
Qnnnnn,nnn | Valeur de la dernière pénétration en G83 ou G87 ou sens de l'outil suivant Y ou V en G16 |
Qnnnn,nnn | Prise de passe latérale en ébauche en G45 |
Rnnnnn,nnn | Rayon du cercle en interpolation circulaire ou hélicoïdale 8 chiffres maxi. Ou sens de outil suivant Z ou W en G16 |
Fnnn,nn | Vitesse d'avance en mm/tr en G95 , 5 chiffres maxi |
Fnnnnn,nnn | Vitesse d'avance en mm/min en G94 , 7 chiffres maxi |
Fnn,nn | Valeur de la temporisation en secondes en G4 (4 chiffres maxi durée maxi 99.99s) |
Fn | Nombre de files en G33 (1 chiffre - 9 filets maxi) |
Mnnn | Fonction auxiliaire (3 chiffres maxi - 32 décodées, 224 codées) |
Snnnn | Fréquence de rotation de la broche en tr/min en G97 (4 chiffres maxi) ou nombre de répétition d'un sous-programme en G77 |
Tnnnnn | Numéro d'outil (5 chiffres maxi - de 0 à 65535) |
Dnnn | Numéro de correcteur (3 chiffres maxi - de 0 à 255) |
Lnnn | Variable programme (3 chiffres maxi - 0 Ã 19 et de 100 Ã 199) |
Ennnnn | Paramètres externes (5 chiffres) |
Définition des fonctions ISO en tournage▲
Fonctions initialisées à la mise sous tension ou à la suite d'une remise à zéro.
G00 | Interpolation linéaire en rapide |
G01* | Interpolation linéaire à la vitesse programme |
G02 | Interpolation circulaire à la vitesse tangentielle programmée sens trigonométrique |
G03 | Identique à G02 mais en sens trigonométrique |
G04 | Temporisation programmable avec l'adresse F |
G09 | Arrêt précis en fin de bloc avant enchaînement sur le bloc suivant |
G10 | Arrêt d'usinage sur acquisition du signal "Butée fin de bloc" ou sur détection d'un seuil mesuré, en saut à un autre bloc ou enchaînement sur le bloc suivant |
G12 | Survitesse par manivelle |
G16* | Définition de l'axe de l'outil à l'aide des adresses PQR |
G20* | Programmation en X et Z |
G21 | Programmation cartésienne sur le couple d'axes rotatif (C) et rectiligne (X) |
G33 | Cycle de filetage à pas constant |
G38 | Filetage enchaîné sur cône |
G40* | Annulation de correction d'outil suivant le rayon |
G41 | Correction de rayon d'outil à gauche du profil |
G42 | Correction de rayon d'outil à droite du profil |
G45 | Cycles de poche |
G51 G52 | Programmation absolue des cotes par rapport à l'origine mesure |
G53 | Suspension du zéro programme par rapport au zéro machine |
G54* | Validation du zéro programme par rapport au zéro machine |
G59 | Décalage d'origine programme. S'ajoute au décalage. Validé par G54 |
G64 | Cycle d'ébauche paraxial |
G65 | Cycle d'ébauche de gorge |
G66 | Cycle de défonçage |
G70 | Entrée des données en pouce |
G71* | Entrée des données en métrique |
G75 | Validation d'un sous-programme de dégagement d'urgence |
G76 | Transfert des valeurs courantes des paramètres dans le programme pièce |
G77 | Appel inconditionnel d'un sous-programme ou d'une suite de séquence avec retour |
G79 | Saut conditionnel ou inconditionnel à une séquence sans retour |
G80* | Annulation de cycle d'usinage |
G83 | Cycle de débourrage |
G87 | Cycle de brise-copeaux |
G90* | Programmation absolue par rapport à origine programme |
G91 | Programmation relative par rapport au point de départ du bloc |
G92 | Limitation de la vitesse de broche. Sxxxx |
G92 | Présélection de origine programme. X ou Z |
G94* | Vitesse d'avance exprimée en mm/min |
G95 | Vitesse d'avance exprimée en mm/tour |
G96 | Vitesse de coupe constante |
G97* | Vitesse de broche en tour/min. (choix automatique de gamme) |
G98 | Définition du rayon ou du diamètre de départ lors de l'usage d'un plateau interpolé avec X et Z ou seul pour le calcul de la vitesse de rotation |
Remarques :
Seule la fonction M6 n'est pas modale (1).
Elle est remise à zéro dès la détection par la CNC du compte rendu de M.
Plusieurs fonctions M décodés peuvent être programmées dans un bloc.
Des fonctions M codées peuvent être définies par le constructeur.
Ce sont des fonctions "APRES".
Une seule de ces fonctions est autorise par bloc.
(1)Modale : une fonction est dite modale lorsqu'elle reste active jusqu'à sa révocation.
Exemple :
Si G1 est programmée dans un bloc, cette fonction est active - tous les déplacement suivants seront en G1 jusqu'a la rencontre d'un G0, G2, G3...
Avant CODE Apres DESIGNATION
M00 | Arrêt programmé |
M01 | Arrêt optionnel |
M02 | Fin programme pièce |
M03 | Rotation de broche ses anti-trigonométrique |
M04 | Rotation de broche senstrigonométrique |
M05* | Arrêt de broche |
M06 | Changement d'outil |
M07 | Arrosage nø2 |
M08 | Arrosage nø1 |
M09* | Arrêt des arrosages |
M10 | Blocage d'axe |
M11 | Déblocage d'axe |
M19 | Indexation broche |
M40 | 6 gammes de broches |
M45 | ( suivant CNC ) |
M48* | Validation des potentiomètres de broche et avance |
M49 | Inhibition des potentiomètres de broche et avance |
M64* | Commande broche 1 |
M65 | Commande broche 2 |
M66* | Utilisation mesure broche 1 |
M67 | Utilisation mesure broche 2 |
M998* | Mode MODIF, IMD et appel de sous-programme par l'automate autorisé |
M999 | Masquage par programmation des modes MODIF, IMD et appel de sous-programme par l'automate |
Sous-programmes et sauts en code ISO▲
Les fonctions G77 et G79 permettent de réaliser des appels de séquences ou de programmes, de façon conditionnelle ou inconditionnelle.
G77 évite de programmer des séquences ou des suites de séquences identiques dans un même programme.
Les sous-programme et les sauts peuvent se situer dans un programme, dans un autre programme ou sous-programme.
N100 G77 N.. appel de séquence.
Un sous-programme dans le programme principal es défini par les séquences de début et fin.
Il peut être situé entre % et M2 ou au-delà de M2.
Le parcours d'un sous-programme défini par deux numéros de séquence ne s'effectue que dans l'ordre croissant des numéros.
Pour G77 N200 N10, le système parcourt le programme de N10 à N200 sans signaler une erreur.
Exemples :
- Appel d'un bloc : G77 N10 N10. Seul le bloc N10 est appelé.
- Appel d'un bloc et répétions : G77 N10 N10 S4. Le bloc N10 et appelé 4 fois.
- Appel de séquences : G77 N10 N250. Appel des blocs 10 à 250 inclus.
- Appel de séquences et répétition : G77 N20 N60 S3. Blocs N20 à N60 appelés 3 fois.
- Appel d'un Sous-programme (S/P) : G77 H20.
- Appel et répétions d'un S/P : G77 H20 S5.
- Appel de séquences dans un S/P : G77 H20 N30 N150.
Exemple :
%30
.....
N200 ....
N210 G77 H100 (saut inconditionnel programme %100, puis retour à la ligne N220 de %30)
N220 ....
G79 : Saut de séquences sans retour.
Le saut de séquences est conditionnel ou inconditionnel, et permet de passer directement à la séquence appelée, qui doit être située dans le même programme.
Saut inconditionnel :
G79 N280 : saut à la séquence 280 qui peut être située avant ou après la séquence d'appel.
Saut conditionnel :
Utilise une variable programme ou un paramètre externe dans le bloc de saut, et d'une condition < ou = ou <, ou de deux simultanément.
G79 L2 >= 3 N280 : si L2 est supérieur ou égal à 3, saut à la séquence 280, sinon enchaînement sur le bloc suivant.
Programmation des poches▲
La fonction G45 permet d'usiner des poches de forme simple : poches circulaires, oblongues, rectangulaires et rectangulaires avec congés aux quatre coins.
G45 : fonction préparatoire (non modale).
X Y Z : cotes du centre de la poche (en relatif ou absolu).
U V W : cotes du fond de trou (relatif ou absolu).
EB EX EY EZ : cotes en relatif définissant les dimensions de la poche finie (rayon inclus).
EB : rayon.
EX : côté suivant X (ou U).
EY : côté suivant Y (ou V).
EZ : côté suivant Z (ou W).
Vitesses d'usinage▲
EP : vitesse axiale d'ébauche.
EQ : vitesse latérale d'ébauche.
EI : vitesse axiale de finition.
EJ : vitesse latérale de finition.
Il est possible de programmer quatre vitesse différentes, mais deux vitesses seulement sont obligatoires :
une vitesse axiale et une vitesse latérale.
ER : cote du plan de remontée (facultative).
Exemples :
EB programme seul correspond à une poche circulaire (EB=10).
EB et EX programmes correspondent à une poche oblongue ( EB = 10 EX = 40 ).
EX = 40 EY =30 : EX et EY correspondent à une poche carrée ou rectangulaire.
EX = 50 EY =30 EB =5 : EX,EY et EB correspondent à un poche carrée ou rectangulaire avec congés.
P J I Q : prises de passes définissant les ébauches et les finitions.
P : prise de passe axiale.
Q : prise de passe latérale (en ébauche).
I : prise de passe axiale.
J : prise de passe latérale (en finition).
Usinage d'une poche rectangulaire avec congés▲
Longueur L=100 Largueur I= 50 prof.=44.
Congés R=20 rayon outil D1 r=4
%100
N10 T1 D1 M6
N20 M3 M40 S2000
N30 G X Y Z50
N40 G45 X75 Y52 Z-44 ER2 EX100 EY50 EB20 P10 Q7 EP100 EQ500
N50 Z50
N60 X Y
N70 M2 (fin programme)
Interpolation circulaire et fonction miroir▲
En interpolation circulaire, le sens G2 et G3 est inversé en miroir X ou en miroir Y.
Pas en miroir XY.
Format : La fonction miroir est validée par G51 suivi du nom de l'axe où doit être appliqué le miroir et du signe -
La fonction miroir peut être appliquée aux axes X,Y et Z.
Elle permet de réaliser des usinages symétriques à partir d'un programme définissant la moitié ou le quart de la pièce.
La fonction miroir affecte :
- Les cotes programmées, qui sont inverses.
- Les décalages programmés en G59.
- La correction de rayon d'outil.
- Le sens de rotation en interpolation circulaire.
La fonction miroir n'affecte pas :
- L'origine pièce PREF.
- Le décalage entre l'origine pièce et le l'origine programme DEC1.
- L'excentration plateau DEC3.
- Les dimensions d'outils.
- La programmation en origine mesure G52.
Cette fonction doit être programmée dans un bloc seul, plusieurs axes pouvant être valides ou invalidés en miroir.
Particularité :
Lorsqu'un miroir est demandé sur l'axe correspondant à la direction d'outil, la direction d'outil doit être reprogrammée (G16) pour tenir compte des miroirs.
Par exemple :
G16 P-
X
Y
G51 X- ( miroir sur axe X )
G16 P+
En interpolation circulaire, le sens de G2, ou G3 est inversé en miroir X ou miroir Y.
Axes rotatifs : la fonction miroir sur axe rotatif inverse le sens de rotation et complémente la cote à 360°.
Exemple :
%30 (programme Miroir)
N5 G G90 G80 G40 G74 X-150 Y-150 Z M0
N10 S630 T1.1 M42 M3
N15 G0 X15 Y30 Z3 (1)
N20 G1 Z-5 F63 (1)
N25 X30 (2)
N30 Y15 (3)
N35 GZ3
N40 G51 X ( X+ devient X- )
N45 G77 N15 N35 ( Répéter bloc)
N50 G51 Y ( Y+ devient Y- X- ne change pas)
N55 G77 N1 N35 ( Répéter bloc)
N60 G50 X ( Annule miroir sur X- X deviens positif)
N65 G77 N15 N35 ( Répéter bloc )
N70 G50 Y ( Annule miroir sur Y- Y revient positif)
N75 G77 N5 ( Répéter bloc)
N80 M2
Note :
Remarques :
La fonction miroir s'écrit sans signe.
Avec un correcteur de rayon d'outil, annulez le correcteur avant d'appeler la fonction miroir.
G74 ignore mais n'annule pas la fonction miroir modale.
Les signes des cotes X, Y, Z, et du décalage d'origine G92 sont définis par rapport à l'origine programme.
Toutes les valeurs sont inversées après l'ordre d'inversion G51.
Correction de rayon d'outil▲
G40 | Annulation de correction d'outil suivant le rayon |
G41 | Correction de rayon d'outil à gauche du profil |
G42 | Correction de rayon d'outil à droite du profil |
Le système calcule le décalage normal au profil et les intersections des trajectoires parallèles aux éléments programmés (droite et cercles).
Il applique le décalage en fonction du sens de parcours (G41 ou G42).
Engagement / dégagement
Le premier bloc dans lequel apparaît l'appel de correction (G41 ou G42) est corrigé à son point d'arrivée, suivant la normale élevée au point de départ de la trajectoire exprimée dans le bloc suivant.
L'annulation de la correction de rayon (G40) affecte le point programmé du bloc.
Limites d'utilisation de la correction plane
La correction plane (G41 ou G42) implique que le rayon d'outil introduit dans le système soit inférieur ou égale au plus petit rayon de courbure programmé.
Profil extérieur rectangulaire avec congés
Programme exemple :
( Cotation )
L0=....( Rayon fraise +2 )
L1=.... ( 1er cote )
L2=.... ( 2eme cote )
L3=.... ( Profondeur en Z )
L8=.... ( Rayon congé )
( Outil et conditions technologiques )
L4=.... ( N° outil )
L5=.... ( N° correcteur )
L6=.... ( V broche )
L7=.... ( V avance )
( Calculs paramètres )
L10=L1/2-L0 ( x1 )
L11=L1/2 ( x2 )
L12=L1-L8 ( x3 x6 )
L13=L2-L8 ( y5 y8 )
L14=L1/2+L0 ( x11 )
( usinage profil )
N10 TL4 DL5 M6
N20 M3 M40 SL6 FL7
N30 G XL10 Y-L0
N40 Z-L3
N50 G42 G1 XL10 Y-L0 (1)
N60 G2 XL11 Y RL0 (2)
N70 G1 YL12 (3)
N80 G3 XL1 YL0 RL8 (4)
N90 G1 YL13 (5)
N100 G3 XL2 YL12 RL8 (6)
N110 G1 XL0 (7)
N120 G3 X YL13 RL8 (8)
N130 G1 YL0 (9)
N140 G3 XL0 Y RL8 (10)
N150 G1 XL11 (11)
N160 G2 XL14 Y-L0 RL8 (12)
N170 G40 G Z100
N180 M2 ( Fin programme )
Mode d'avance (tournage)▲
G94 - G95
Avance mm / tr G95.
Avance mm / min G94
Sens de rotation
Le sens est défini, vu du dessus de la broche.
M03 rotation sens horaire (M3).
M04 rotation sens trigonométrique (M4).
Interpolation circulaire▲
G02 - GO3
Mouvement sens :
- Antitrigométrique G02 a » b
- Trigonométrique a « b G03.
Fonctions d'arrêt▲
M00 : arrêt total.
M01 : arrêt optionnel (M1).
M1 a la même valeur que M10 lors qu'il est validé.
M02 : arrêt et fin de programme.
M2 : RAZ du système.
Seul, Départ Cycle (D Cy) permet la continuité après M2.
M05 : arrêt de broche (M5).
M06 Changement d'outil (M6).
Remarque
Après M ou M1 validé, il faut M3 ou M4 pour la remise en mouvement de la broche.
M2 doit être suivie impérativement de X OFF (ISO).
Fonctions M de mise en position ou serrage▲
Exemples de fonctions définies par le constructeur de M0 :
G40 | Annulation de correction d'outil suivant le rayon |
M17 | Avance du fourreau de la contre-pointe |
M18 | Recul du fourreau de la contre-pointe |
M26 | Serrage de la pièce |
M27 | Desserrage de la pièce (mandrin ou porte-pince hydraulique ou pneumatique) |
M36 | Verrouillage de la contre-pointe en position |
M37 | Déverrouillage de la contre-pointe |
Appel de palette :
M60 | Sortie M61 entrée de la palette gauche |
M62 | Sortie M63 entrée de la palette droite |
Mode de programmation G90 - G91▲
Ces fonctions précisent les références d'usinage
G90 | Toutes les valeurs sont définies depuis l'origine-pièce (ou une même origine) |
G91 | La référence est la position précédente |
Programmation ABSOLUE : G90.
Programmation RELATIVE : G91.
En programmation absolue G90, la cote est repérée par rapport à l'origine programme OP.
G59 : l'axe appelé et la valeur définissent le décalage appliqué à toutes les cotes suivantes.
Un nouveau G59 annule et remplace le précédent.
En programmation relative G91, la cote est repérée par rapport à la position précédente.
G59 : l'axe appelé et la valeur s'appliquent à la première cote suivant G59.
Un nouveau G59 modifie de la même manière la cote qui suivra.
En valeur absolue, le décalage sera la somme des valeurs programmées.
G59 est modale.
Le premier déplacement programmé sur chaque axe doit obligatoirement se faire en G90 ou G52.
Pour annuler, programmez :
- Avec G90, G59 X Y Z (zéro).
- Avec G91, revenir en G90, puis programmer G59 X Y Z (zéro).
Rappel :
G59 | Décalage d'origine programmé |
G90 | Programmation Absolue par rapport à OP |
G91 | Programmation Relative par rapport au point de départ du bloc |
Déplacement linéaire G00 - G01▲
Mouvement rapide : G00
Mouvement programmé : G01
Exemple :
N50 G1 X4500 Y6350 F100
G04 : Temporisation.
Fonction G04.
Valeur 1s F...
G04 F... programmés seuls dans un bloc.
Ne sont pas modales.
Exemple :
N10 F500
N20 G04 F2
Temporisation F2 = 2 secondes.
Programmation nécessaire lorsqu'il s'agit d'assurer la finition : d'un fond de gorge, d'alésage, d'épaulement.
Perçage de trous en interpolation circulaire▲
Fonctions : G81 - G80 - ED
Si une pièce comporte une géométrie déductible par rotation angulaire d'une figure élémentaire, telle que perçage sur circonférence, dentures, il est possible de ne programmer que la figure élémentaire de usinage et d'exécuter une rotation angulaire ED.
Exemples :
Perçages multiples
Décalage angulaire double
Rotation par évolution de ED
Rotation par décalage G59
Perçage de 8 trous 3 fois.
%11
N1 G0 X0 Y0 Z5
N2 G0 X600 Y (ligne de référence)
N3 GXY
N4 G0 X0 Y600 (ligne de référence)
N5 GXY
N6 L8=600*C45
N7 L9=600*S45
N8 G0 XL8 YL9 (ligne de référence)
N9 GXY
N10 M6 T1 D1 (outil)
N11 M3 S1200 D1 (marche en route)
N12 L3=0.01
N50 L1=300*CL3 (calcule valeurs de G59)
N60 L2=300*SL3
N70 L0=0
N80 G59 XL1 YL2
N90 G79 N200 (aller a N200)
N100 (G81 ER2 Z-10 F400) (trou centre)
N102 (G G80)
N105 EDL0 (début perçage)
N120 G81 X40 Y ER2 Z-10 F400
N125 G G80
N130 L0=L0+45
N140 G79 L0<360 N105
N150 G Z5 (fin de perçage)
N200 G77 N100 N150
N220 L3=L3+45
N230 G79 L3<=91 N50 (si condition aller au N50)
N240 G59 X0 Y0
N245 G Z30
N250 M6 T0
N260 M2 (fin de programme)
Règles d'utilisation des décalages▲
La mesure de position est toujours repérée par rapport à l'origine mesure.
Les cotes programmées peuvent être exprimées dans les formes suivantes :
- Programmation absolue (G90) : la cote est repérée par rapport à l'origine programme.
- Programmation relative (G91) : la cote est repérée par rapport à la position précédente.
- Programmation absolue par rapport à l'origine mesure (G52) : la cote est repérée par rapport à 1'origine mesure.
N10 G52 X ± 5.3 Y ± 5.3 Z ± 5.3
Les décalages et corrections d'outils ne sont pas pris en compte.
Cette fonction est révoquée en fin de bloc et doit être programmée avant les adresses des axes et sans correction de rayon (G41 - G42).
Cette programmation est utilisée pour amener le point piloté sur un point fixe (changement d'outil automatique par exemple).
Remarque
Le premier déplacement du programme sur chaque axe doit obligatoirement être programme en absolu (G90 hors G52 ou G53).
Si ce n'était pas le cas, G91 serait interprété comme un G90 pour ce déplacement.
Les cotes programmées, affectées des divers décalages et des dimensions d'outils, sont comparées aux cotes extrêmes de la machine introduites à la mise en route.
En cas de dépassement, le système génère un message d'erreur.
POM prise des origines machine intervention manuelle▲
- Potentiomètre d'avance à 100%
- MODE NEUTRE touche allume à la M.S.T
- RAZ remise à l'état initial
- MANUEL commande manuelle des axes
- X- touche de commande manuelle des axes
- Y- touche de commande manuelle des axes
- Z- touche de commande manuelle des axes
- 4+ touche de commande manuelle des axes
- POM prise des origine machine
- X+ touche de commande manuelle des axes
- Y+ touche de commande manuelle des axes
- Z+ touche de commande manuelle des axes
- 4 - touche de commande manuelle des axes
Si touche défaut ? allumé : RAZ et recommencer ! ERREUR.
Si touche défaut ? éteint : l'opération POM a réussi.
0rdre des opérations sur le calculateur▲
Le calculateur effectue les opérations dans l'ordre où elles sont écrites.
L0+L1/2
- L0+L1 = a
- a/2 = résultat
L5/3+L1*5
- L5/3 = a
- a+L1 = b
- b*5 = résultat
Il n'y a donc pas respect des règles mathématiques de priorité des opérations (pas d'opérateur prioritaire). Le calculateur n'accepte pas les parenthèses dans les calculs effectués car les parenthèses sont réservées aux commentaires.