Repétition d'un bloc??

  • Auteur de la discussion zerutoki
  • Date de début
Z

zerutoki

Guest
Bonjour,comment fait-on sur fanuc pour rapeller un bloc ou une serie de bloc?
Merci
 
P

PH-MECA

Nouveau
Bonjour abomber,
Plusieurs solutions:
la premiere facile, tu fait copier coller des lignes à rappeler dans ton editeur de programme(si tu en as un)
sinon tu fais un M98P100 (appel de sous programme n°100) et tu crées ton sous programme N°100 avec à la fin de ce sous programme M99. A la lecture du M98P100, le programme va directement dans le sous-programme N°100, execute le programme puis à la lecture du M99 reviens dans le programme principal à la ligne suivant le M98P100.
Tiens nous au courant si ton probleme est resolu
A+
 
Z

zerutoki

Guest
Merci pour ta reponse,mais je connais ca.
Ma question est peut-on faire un rappel de blocs,afin de répeter ce dernier X fois
Mon but est de répeter une serie de bloc en y ajoutant avec un increment afin de faire un décalage a chaque fois.

ex:(tournage dressage face)
N5 X50 Z0
N10 G1 X-1 F.2
N15 G0 X50 Z2
N20 Z0
N25 W-2(décalage en incremental)
N30 =répétition N10 à N25 P10? (P10=10 fois par exemple)
 
Y

yann38

Nouveau
salut,

tu peux utiliser des variable du genre:

O0001
#503=0 (A METTRE AU DEBUT DE PROGRAMME)
ex:(tournage dressage face)
N1

#501 =10 (NOMBRE DE PASSE EGAL A 10)
#504 =0.2 (VALEUR DE DECALAGE EN Z POUR CHAQUE PASSE EGAL A -0.2 MM VALEUR TOUJOURS POSITIVE)
#505 =0 (VALEUR DU Z DE DEPART EGAL A 0)
#506 =#503*#504
#507 =#505-#506


N5 X50 Z#507
N10 G1 X-1 F.2
N15 G0 X50 Z2


#503 =#503+1
IF[#501 LT #503] THEN GOTO 1
IF[#501 EQ #503] THEN GOTO 50

N50


(suite du programme)

M30
 
N

Nono.60

Ouvrier
Bonsoir,
J'ai trouver ça, si ça peut etre utile.

Sur Fanuc OI-MC
Voila j'espere t'avoir aider,
Cordialement, :wink:
 
Z

zerutoki

Guest
Merci les gars,mais c'est pas tout a fait ce que je cherche,meme si ca marche aussi.

Sur siemens ca donne ca je crois

MARK1;
G0 X50 Z0
G1 X-1 F.2
G0 Z2
X50
Z0
G90 Z-2
MARK2;
REPEAT MARK1;MARK2; L10

C'est pas G77? SUR FANUC
G77 N25 N150 P10
 
N

Nono.60

Ouvrier
Bonjour,
Il n'y a pas de G77 sur Fanuc, juste sur NUM
si tu veut repeter un bloc, mais le dans un sous prog et appel le plusieurs fois.
Sinon je ne sais pas si il y a une autre solution.
Cdlt,
 
P

PEB

Apprenti
Tu veux parler du G70 P___ Q___
mais sauf erreur de ma part ce code ne marche que si tu est en G18, plan pour le tournage car c'est une fonction de répétition des blocs de définition du cycle d'ébauche.
Personnellement je n'utilise jamais ce code...
Part contre pour ton "problème" tu peux tout simplement faire un "While" en utilisant un compteur.
C'est la solution la plus rapide en exécution (et la plus propre d'un point de vu programmation, mais ça ce n'ai que mon avis...)
 
Z

zerutoki

Guest
ok merci a tous pour votre aide,je vais essayer tous ca quand j'ai le temps et je vous tiens au courant.merci encore :-D
 
G

grenouille32

Compagnon
Bonsoir tout le monde, :)
Sur les commandes Fanuc de tournage, il y a normalement un code G permettant de définir les blocs à répéter, avec la progression en mm et l'avance par tout en mm/tour; on doit également définir la surépaisseur d'ébauche en X et en Z; il y a le même genre de code G pour la finition, sans les surépaisseurs bien entendu.
On définit ainsi le numéro de bloc de début de profil et le numéro de bloc de fin de profil.
J'avais cela sur les machines Schaublin 125 / 180 et 220.
Mais je ne sais pas si cela existe sur toutes les armoires CN.
Plus de détails si intérêt.
Bonne soirée.
La Grenouille
 
P

pakito61

Apprenti
bonsoir sur mon mory seiki je peut rappeler un profil avec par ex: G70 P10 Q20
 
J

JLuc69

Compagnon
pakito61 a dit:
bonsoir sur mon mory seiki je peut rappeler un profil avec par ex: G70 P10 Q20
Sur FANUC, G70 est le cycle de finition d'un profil, pas un rappel de bloc
 
P

pakito61

Apprenti
bonjour, je m'en sert souvent quand je fait des canelure dans un diametre int avec l'axe C et ça marche, ça evite de retaper le profil à chaque angles, le G70 P10 Q20 te rappel le profil de la N10 à la N20 autant de fois que tu le met, je sais je le pratique bien souvent sur mon armoire fanuc ça marche peut etre pas sur toute
 
J

JLuc69

Compagnon
pakito61 a dit:
bonjour, je m'en sert souvent quand je fait des canelure dans un diametre int avec l'axe C et ça marche, ça evite de retaper le profil à chaque angles, le G70 P10 Q20 te rappel le profil de la N10 à la N20 autant de fois que tu le met, je sais je le pratique bien souvent sur mon armoire fanuc ça marche peut etre pas sur toute
C'est vrai que l'on peut, parfois, détourner les fonctions de leur réelle application :wink:
A la boite on utilise bien le G83 pour ébaucher les diamètres lorsque l'on usine des matériaux à copeaux long (plastiques) :mrgreen:
Il faux juste se rappeler que ce sont des cycles, et en tant que tel, ils finissent là où ils ont commencer :partyman:
 
P

PEB

Apprenti
JLuc69 a dit:
on utilise bien le G83 pour ébaucher les diamètres lorsque l'on usine des matériaux à copeaux long
Pour des Ø exter ? Si c'est ça, tu as le G74 qui te permet de faire plusieurs passe au Ø dans le même cycle...
Si c'est pas ça, j'ai pas compris :???:

Et je réitère ma question faut il être en G18 pour pouvoir utiliser le G70 ???? (je crois que oui, donc pas de G2/G3 à l'intérieur)
Merci
 
J

JLuc69

Compagnon
PEB a dit:
JLuc69 a dit:
on utilise bien le G83 pour ébaucher les diamètres lorsque l'on usine des matériaux à copeaux long
Pour des Ø exter ? Si c'est ça, tu as le G74 qui te permet de faire plusieurs passe au Ø dans le même cycle...
Si c'est pas ça, j'ai pas compris :???:
Si, c'est le même genre d'utilisation. Le but c'est de fragmenter le copeau long. J'avoue que j'ai jamais utilisé le G74 : à tester !
PEB a dit:
Et je réitère ma question faut il être en G18 pour pouvoir utiliser le G70 ???? (je crois que oui, donc pas de G2/G3 à l'intérieur)
Merci
Le plan G18 (XZ) permet de faire, justement, les G2/G3 correctement ainsi que la correction de rayon (on est sur un tour) donc le G70 (cycle de finition, normalement) prends les G2/G3 mais n'est valide que sur les tours. Il n'existe pas en fraisage.
 
P

PEB

Apprenti
JLuc69 a dit:
Le plan G18 (XZ) permet de faire, justement, les G2/G3 correctement ainsi que la correction de rayon (on est sur un tour) donc le G70 (cycle de finition, normalement) prends les G2/G3 mais n'est valide que sur les tours. Il n'existe pas en fraisage.
Je me suis mal exprimé, je voulais dire qu'il n'était pas possible de faire des G2/G3 lorsqu'on détourné cette fonction à des fins de répétition de ligne pour un profil en fraisage sur le plan XY (G17)
 
Z

zerutoki

Guest
Alors j'ai poser une colle? :roll:

Comment répéter une série de bloc dans LE PROGRAMME PRINCIPAL SANS SOUS-PROGRAMME!

merci
 
Z

zerutoki

Guest
PEB a dit:
Tu veux parler du G70 P___ Q___
mais sauf erreur de ma part ce code ne marche que si tu est en G18, plan pour le tournage car c'est une fonction de répétition des blocs de définition du cycle d'ébauche.
Personnellement je n'utilise jamais ce code...
Part contre pour ton "problème" tu peux tout simplement faire un "While" en utilisant un compteur.
C'est la solution la plus rapide en exécution (et la plus propre d'un point de vu programmation, mais ça ce n'ai que mon avis...)

tu peux développer le while? merci
le G70 ca marche pas!
 
P

PEB

Apprenti
Bon bin voilà Jean Luc a répondu à ma place !
Je ne suis par contre pas pour utiliser la variable qui sert a positionner en Z pour faire le compteur.
En effet tu as des risques de t'arrêter avant la fin de la boucle, du a un arrondi foireux à cause de a la précision de calcul...
 
R

relax

Compagnon
abomber a dit:
Merci,
[ #100 GE -20]

que veut dire le GE -20?

Si je ne dis pas de betise GE ca veut dire supérieur ou égale.
IL y a aussi GT(supérieur) LE (inférieur ou égale) LT( inférieur)
 
J

JLuc69

Compagnon
super ntjx a dit:
abomber a dit:
Merci,
[ #100 GE -20]

que veut dire le GE -20?

Si je ne dis pas de betise GE ca veut dire supérieur ou égale.
IL y a aussi GT(supérieur) LE (inférieur ou égale) LT( inférieur)
Et pour complèter la bonne réponse de ntjx :
NE : NOT EQUAL (different)
EQ : EQUAL (égal)
GT : GREATER THAN
GE : GREATER OR EQUAL
LT : LESS THAN
LE : LESS OR EQUAL

Pour [#100 GE -20] c'est le test :
si la valeur du paramètre #100 est plus grand ou égale à -20
 
Dernière édition:
M

Med saleh

Nouveau
Bonjour abomber,
Plusieurs solutions:
la premiere facile, tu fait copier coller des lignes à rappeler dans ton editeur de programme(si tu en as un)
sinon tu fais un M98P100 (appel de sous programme n°100) et tu crées ton sous programme N°100 avec à la fin de ce sous programme M99. A la lecture du M98P100, le programme va directement dans le sous-programme N°100, execute le programme puis à la lecture du M99 reviens dans le programme principal à la ligne suivant le M98P100.
Tiens nous au courant si ton probleme est resolu
A+
Et si je veux répéter ce prog 100 fois par expl ?
 
S

siger1

Ouvrier
bonjour
il y avait ça aussi ( m98p100L20 ) ( L20 , c'est répeté 20fois, je ne me rappelle plus si le premier compte dans la repetition ,a essayer
salut a +
siger1
 
J

Joël29

Apprenti
Bonjour.
Ma façon à moi de faire les répétitions d'usinages sans utiliser de sous-programmes est la suivante

O1234
#999=0(mise à zéro de la variable)
N10
...
Programme ou usinage à répeter

#999=#999+1(rajoute 1 à chaque passage)
N500 IF[#999EQ3] GOTO1000 (EQ à modifier selon nombre de répétions qu'on veut faire ici 3)
Mettre si besoin ici un décalage d'origine du genre :G10 L2 P1 W-5(P1 pour G54, P2 pour G55 etc..) et (W en relatif pour le Z)(attention change la valeur du G54)(ou autre..)

GOTO10(prog retourne au bloc N10
N1000
G10 L2 P1 W10(remise comme au début du G54 à changer selon le nombre de décalages)
M30
Voilà ma façon, sur les bi-broches je le fais ainsi pour usiner toute la barre sans intervenir quand c'est possible(je n'ai pas d'embarreur)
Après c'est le principe de base que j'ai mis. Je ne suis pas rentré dans toutes les différentes possibilités permises...
Marche aussi avec #998..
 
L

lolo

Compagnon
Alors j'ai poser une colle? :roll:

Comment répéter une série de bloc dans LE PROGRAMME PRINCIPAL SANS SOUS-PROGRAMME!

merci

Au contraire avec sous-programme, car tu peux appeler plusieurs fois ton sous-programme directement sur une seule ligne :

M98 P100 L15
( Appelle 15* de suite le sous-prog 100 )
tu peux aussi appeler une ligne particulière du sous-prog via l'adresse H :
M98 P100 H200 L15

Sub-Prog 100
O100
N100
....
M99
N200
...
M99
Etc..
M30

Donc tu peux mettre tous les blocs que tu souhaites repeter dans le meme sous-prog 100
Via les N et l'argument H , tu choisis quelle sequence tu executes , et avec L : Combien de fois tu la repetes.

C'est , pour moi, le plus simple, et le plus propre.
1 seul sous-prog pour tous les parcours, classés dans l'ordre N100, N200, Etc..

Après, il est vrai que chacun a sa propre logique et ses propres habitudes / préferences .
 

Sujets similaires

coquillette
Réponses
14
Affichages
757
rabotnuc
R
T
Réponses
1
Affichages
7 263
laurent12100
L
B
Réponses
85
Affichages
20 486
burmanac
B
L
Réponses
0
Affichages
183
laurentl38
L
J
Réponses
22
Affichages
1 786
L
P
Réponses
0
Affichages
218
Paulinho
P
C
Réponses
1
Affichages
3 802
daclu23
D
M
Réponses
4
Affichages
709
MPh31
M
D
Réponses
14
Affichages
1 443
D
D
Réponses
7
Affichages
503
jujurassik
J
Haut