Quel ordre pour l'insertion des codes d'une prog CN

N

Nico-Mx

Nouveau
Bonjour à tous,

Un collègue m'a dit qu'il y avait un ordre pour entrer les codes dans un bloc.

On ne peut pas faire:

N10 M8 S1000 F30 M3 Y2 X3 M3 G1

Mais plutôt:

N10 G1 X3 Y2 F30 S1000 M3 M8

Il m'a donné cet séquence là:

N G XYZ F S T D M

Quand pensé-vous?
 
D

Dodore

Compagnon
Sur NUM et je pense que ce doit être pareil sur toutes les CNC l.ordre n'a aucune importance pour la machine et pour l'usinage. Par usage, suivant les entreprises, on adopte un ordre pour une facilité de lecture et de compréhension par contre il y a des fonctions " avant" et des fonctions " apres"
Exemple
N10 G1 x100 Z5 M40 M3 S1000 dans ce cas la machine se mettra d'abord en marche avant de faire les déplacements le M3 est une fonction avant
Dans le même genre si je mets
M0 X100 Z5 , le déplacement se fera avant que la machine s'arrête , le M0 est une fonction après
J'ai presque toujours eu pour habitude de marquer une seule commande par ligne
Exemple
Edit
En general on met sur deux lignes un bloc de sécurité et l'appelle de l'outil
N80 G0 G40 G80 G52 X. Z ( pour annuler toutes les fonctions devenu inutile avant un changement d'outil et retour au point de changement d'outil )
N90 T1 D1 M6 ( changement d'outil, en general tout seul sur une ligne pour éviter les rotation n'importe où et pour éviter les catastrophes )
Fin édit
N100 M40 M4 S 1000 ( mise en rotation)
N110 G95 F0,3 ( reglage avance)
N120 G1 X150 ( deplacement)
Ca peut bien sûr s'écrire sur une seule ligne
c'est plus clair à lire et la machine travail aussi vite , ça augmente le nombre de ligne , mais c'est sans importance, les machines ont des capacités de mémoire beaucoup plus importantes actuellement que les premières machine , sur les premières machines on évitait de mettre les espaces entre deux mots pour gagner de la place en mémoire

Anecdote
J'ai fait un jour un essai, je dis bien " un essai " en inscrivant sur le même bloc deux fonctions contradictoire ( G0 ; G1 ) c'est la dernière qui est prise en compte
Je viens de penser a un truc , je n'ai jamais essayer de mettre le numéro de bloc, N20 par exemple, au milieu du bloc évidement c'est idiot, ça ne se fait pas, mais je pense que si je pouvais j'essaierais , pour par exemple, faire une recherche de bloc
 
Dernière édition:
N

Nico-Mx

Nouveau
Je comprend bien. De toutes façons, les fabricants de machine outil ne respectent pas l'ensemble de la norme iso 6983.
Je suis absolument sur que la norme dit que toutes lignes doit commencer par un bloc N(pour répondre à ta question). Hors les machines sans passent très bien.
Mais la norme doit bien stipuler un certaine ordre pour le code.
Personne ne possède la norme (voir un fragement)?
Sinon, dans quel ordre rédigez-vous votre code?

P.S: j'essaierai le M0 X100 Z5 sur FANUC ...
 
D

Dodore

Compagnon
Bonjour
Qu'est ce que c'est que cette norme 6985, elle parle de quoi
En general une ligne de programmation commence par N mais ce n'est vraiment pas une obligation, d'ailleurs on trouve. Sur le forum des tas de programme qui n'ont pas de Numero de ligne
Il y a ici un programme pourri qui n'a aucun numero de ligne ou plutot quelque uns , par ci par là et en plus qui ne snt pas dans l'ordre
Pour le reste, sur une ligne il n'y a aucun ordre d'écriture
Comme je le disais
Si on écrit
N10 G42 X150 M3 F.2 T3 S1500 G1
Ou bien
G1 G42 F.2 X150 M3 S1500 T3
Le resultat sera identique

J'ai pensé aussi à un truc , à propos des adresses N au milieu de la ligne
Sur NUM il y a la fonction G77 (rappelle d'une séquence ) qui s'écrit
G77 N30 N70 , il me semble que dans ce cas on ne peut pas modifier l.ordre des mots et que le G77 doit être suivi par des numéros de blocs
 
K

kiki86

Compagnon
bonjour
pour dodore
la norme ISO 6983 parle de programmation en G code et répond à certaines questions
bonne lecture
 
S

sergeLAH

Apprenti
On peut très bien se passer des numéros de ligne. Ca ne sert pas à grand chose à part pour des sauts ou rappels.
Et puis, il n'y a pas que NUM (disons qu'il y a de moins en moins de NUM).
Ma préférence est le siemens 840D et je n'ai jamais mis de numéro de ligne
 
D

Dodore

Compagnon
Oui tres bien mais
Pour moi je ne connais presque que NUM je sais que les numéros de lignes ne sont pas utile sauf dans le cas d'un rappelle de blocs mais je trouve ça bien pratique, pour pouvoir se repérer et éventuellement en cas de besoin pour retrouver plus facilement un bloc dans un programme ou pour faire par exemple une rcherche de Numero de séquence ( RNS)
La question portait au depart sur l'ordre d'écriture des mots dans un bloc, quel est ton avis sur ce point ?
 
K

kiki86

Compagnon
bonjour
pour ma part sur 3 types d'armoire : FANUC, GE, NUM entr les années 80 87
je programmais
numéro de ligne
vitesse, choix de l’outil, déplacement, prise en compte correcteur de rayon,avance fonction M
dans cet ordre et sur une ligne et ensuite autre bloc avec les différents G1 ou G2,G3 avance travail pour le profil de la pièce
mais je pense que depuis 87 l’évolution permet d’écrire dans n’importe quel l’ordre avec une logique pour mettre en tête les numéros de blocs : appel, repère
bonne journée
 
S

sergeLAH

Apprenti
N G XYZ F S T D M

Cet ordre me convient bien que:
- T et D sont chez moi toujours seuls (avec M6) dans une même ligne
- Je préfère mettre S avant F et je programme toujours les CC dans une ligne à part
- Pour moi jamais XYZ dans une même ligne en Fraisage
- Toujours un espace entre 2 instructions

Début d'un programme de tournage
N10 G0 G52 X0 Z0 G95 F.1
N20 G92 S4000
N30 T1 D1 M6
N40 G97 S500 M4
N50 G0 X32 Z0 (approche rapide proche du point départ usinage)
G96 S360 F.2 M8
(usinage)

Début d' un programme de fraisage
N10 G0 G52 Z0
N20 G0 G52 X0 Y0 (je sais, G0 est modale)
N30 T1 D1 M6
N40 S4000 F1500
N50 G0 X50 Y45 (approche usinage en X et Y)
N60 G0 Z0 (position Z usinage, on peut aussi venir en rapide à Z+10 et puis en G01 à Z usinage suivant type de pièce)
(usinage)

C'est vrai que je numérote aussi en NUM puisque" c'est pratique pour un RNS.
Je préfère aussi siemens parce qu'on peut écrire en minuscule
 
D

Dodore

Compagnon
Je fais tout comme toi
Juste un petit détaille
Tu dis que tu ne mets jamais X Y et Z sur une même ligne en fraisage
Je le comprend tout à fait quand on fait des déplacements en G0 ,et spécialement quand on doit retourner au point de changement d'outil, dans ce cas, comme tu le fais, d'abord un dégagement en Z, puis en X Y, mais quand on doit faire un usinage, donc en G 1, dans les trois directions simultanément on est bien obligé de programmer ces trois axes en même temps
Une autre habitude que j'avais adoptée
Quand on doit changer de correcteur en gardant le meme outil , par exemple avec un outil à gorge qui a en general deux correcteurs , j'avais adopté la solution de mettre le nouveau correcteur seul sur une ligne pour qu'il aparraisse nettement
Ceci parce que dans les premiers programmes que j'ai vu, ce nouveau correcteur etait souvent en fin de ligne et pas toujours très visible, et donc un risque de catastrophe en cas d'oubli
 
S

sergeLAH

Apprenti
exact
Je ne sépare le XY du Z que quand le dégage au point de changement ou quand ou quand je fais l'approche après un changement d'outil.
Heureusement que je fais de temps en temps les 3 en même temps....sinon je ferais comment pour percer avec une fraise en hélice ou faire l'engagement d'un poche fermée.

Et entièrement accord avec toi pour le second correcteur
 
N

Nico-Mx

Nouveau
A dodore,

J'ai appris également sur NUM (bon souvenir de mon école avec NUM 560 et 760) et ont nous avaient appris à mettre pour chaque ligne un bloc N. Mais je suis d'accord avec toi que les blocs N ne sont pas obligatoire. Dans l'entreprise où je suis, on code comme ça pour FANUC:


%
O00038 ( M12x1,5 OpT.1)
G99 G112 G50 S2000
G65 P1
N101 T909 S500 M03 ( DRESSAGE )
G96 S180 (180 M/MIN)
G0 X19. Z5. M08
G01 G42 Z2. F.50
Z-15. F.20
G40 X21. Z-11. F.80
G0 Z2.
G1 G41 Z0. X19. F.80
Z2. F0.20
G0 Z2.
G71 P1010 Q1015 D2. U0.2 F0.3 (ROUGHING)
N1010 G1 G42 Z0. X10.50 F0.20
Z-.25 X12.50
Z-12.20
X17.50
Z-15.20
X18.50
Z-15.20 X20
G0 G40 Z1.
N1015 X10.50
G70 P1010 Q1015 F0.2 (FINISHING)
G97 S500 M9
G65 P1
N102 T808 S1150 M03 ( PERCAGE DIAM 6.25x7.50 )

Les blocs permettent de faire un saut (comme ton G77) ou pour les cycles pré-programmés.

J'ai découvert effectivement que les bloc n'étaient pas nécessaire avec SIEMENS 810.

Sinon, tous est possible j'ai mon bosse qui ce permet même de mettre un G42 avec un G0 (pour quel intérêt?!?)...
 
S

sergeLAH

Apprenti
Le G41 et le G42 se programme toujours hors usinage donc c'est logique de le faire en G0.
En tournage (si G1 avec 42 ou 41) ce n'est pas une grosse perte de temps puisque le rayon est petit mais en fraisage (toujours G41) ce serait vraiment une grosse parte de temps de le programmer en G1
 
K

kiki86

Compagnon
bonjour
le G41 ou G42 peut se programmer en G0 pendant la mouvement du changement d'outil au point départ d'usinage
 
Haut