[RESOLU] [NUM 760F] Interpolation hélicoïdale en G1

N

nascoli

Nouveau
Bonjour,

Je sais faire une interpolation hélicoïdale sur une CN 760F "normale" (aléseuse dite horizontale):
G3 X0 Y40 I0 J0 Z-50 K2 F120 (par exemple);

Sur une machine "moins normale", c'est à dire sans l'option adéquate, si je tape le même bloc, elle me fait:
-l'interpolation circulaire souhaitée en XY, mais sans mouvement du Z,
-puis le tour complet effectué, l'outil se déplace directement au Z final, Z-50.
Ce qui fait beaucoup pour une plaquette de 16mm.

Ma solution provisoire est l'incrémental (G91) suivi d'un rappel de bloc (G77 Nxxx Nxxx Sxx) pour parvenir à mes fins.
Mais ce procédé est plus long en rédaction et en exécution, de plus, il y a le risque de se planter en nombre de répétitions.

La machine n'a pas non plus l'option G95 (avance en mm/tour) ni d'autre qui pourraient me rendre plus productif.

Je pense maitriser le NUM 760 pas trop mal, mais quelques astuces me faciliteront la tâche,
comme le fameux "I(i) Nxxx Nxxx" ou "I %xxx Nxxx Nxxx" (copier/coller d'une partie d'un programme) que j'utilise désormais souvent
ainsi que mes collègues à qui j'ai dévoilé l'astuce que j'ai découvert ici même.

Merci à tous pour vos suggestions.

[edit du 02/09/2011] précision sur le titre
 
D

Dodore

Compagnon
Re: [NUM 760F] Interpolation hélicoïdale

bonjour
une façon mais à verifier parce que je n'ai plus de machine sous la main
on suppose l'origine en haut et au centre du trou pour un rayon de 30 profondeur 50
%999
N10 GO G41 OU (G42) X30 Y Z
N20 L1 = 0
N30 L1 = L1 + 2
N40 G79 L1 => 50 N100 (L1 égal ou plus grand que 50) si la cote atteins ou dépasse 50 elle va au bloc 100 c'est a dire que si elle est a 50 elle ne feras pas l'usinage de 50)
N50 G1 Z-L1
N60 G3 X30 Y R30
N70 G79 N30
N100 la suite
exemple: dégagement au centre en G40 puis remonté à Z2


autre façon
N10 GO G41 OU (G42) X30 Y Z
N20 L1 = 0
N30 L1 = L1 + 2
N50 G1 Z-L1
N60 G3 X30 Y R30
N70 G79 L1 = < 48 N30 dans ce cas elle fera l'usinage si la cote est égale ou plus petite que 48 si la cote est plus grande que 48 elle continu le programme au bloc N100 dans ce cas avec un incrément de 2 elle peu faire au maximum la cote 50

N100


c'est quand même à vérifier

par contre je ne connais pas la fonction I (i)

et c'est sur une fraiseuse vertical mais je pense que les axes pour une aléseuse doivent être orienté de la même façon par rapport à la broche




<<
 
N

nascoli

Nouveau
Re: [NUM 760F] Interpolation hélicoïdale

Merci @DODORE pour ces propositions,
Je teste dès demain "à blanc" et je vous tiens au courant en fin de journée.

J'utilise assez souvent les variables (L1; L2; ...) mais sans les avoir exploités davantage, tels qu'associés aux signes > ou < voire cos; sin; ou tan...
Je sais que beaucoup de chose sont possibles avec les variables, mais je n'aurais pas pensé, ni même imaginé rédiger un programme de votre façon.

par contre je ne connais pas la fonction I (i)
"i" permet d'insérer une partie d'un programme dans un autre programme en mode [modif]

Sinon, pour en revenir à ma question, j'aurai bien tenté un "G91 Z-" dans la même ligne que le "G3", ou la bloc d'après avec un "G77" pour rappeler le "G3" accompagné d'un "G90", mais je n'y crois pas.

Par contre, je n'ai pas saisi l'intérêt du N20 L1=0 si N30 = L1+2
D'ailleurs, en relisant votre post, si je dégage à Z2, j'ai l'impression que j'usinerai toujours à Z-2 (Z-L1(=0+2))soit -2.

De toute façon, faut essayer et corriger sur le terrain les détails.
Je note et vous tiens au courant, promis.

[offtopic](ça me fait penser que je doit avoir quelque chose pour percer/tarauder/aléser autour d'un diamètre avec un départ angulaire et avec des variables, je noterai tout et le posterai, même s'il fait mal à la tête ce programme (que je n'ai jamais utilisé)).[/offtopic]

ÉDIT: oui, sur aléseuse comme sur verticale, les axes sont les mêmes:
Z= axe broche
X= longitudinal
Y= l'autre (verticale sur aléseuse, transversal (avant/arrière) sur verticale ou traditionnelle.
 
D

Dodore

Compagnon
Re: [NUM 760F] Interpolation hélicoïdale

num-f106/demande-aide-pour-programmation-parametree-t17229.html



nascoli a dit:
Sinon, pour en revenir à ma question, j'aurai bien tenté un "G91 Z-" dans la même ligne que le "G3", ou la bloc d'après avec un "G77" pour rappeler le "G3" accompagné d'un "G90", mais je n'y crois pas.


Tu peux effectivement utiliser le G91 pour prendre les passes en Z et faire suivre d’un G90 pour faire le cercle
Exemple
%999
N10 GO G41 OU (G42) X30 Y Z
N40 G91 Z-2
N60 G90 G3 X30 Y R30
N70 G77 N40 N60 S4 (pour une profondeur de 10)

attention dans ce cas il y a déjà une passe à Z-2 si on veux faire une profondeur de 10 il faut rappeler cette séquence uniquement 4 fois

on peux supprimer cette inconvénient en faisant un G79 pour aller directement au G77
exemple
%999
N5 G79 N 70
N10 GO G41 OU (G42) X30 Y Z
N40 G91 Z-2
N60 G90 G3 X30 Y R30
N70 G77 N40 N60 S5 (pour une profondeur de 10)

On peu même aussi terminer par

N80 G90 Z-50
N95 G3 X30 Y R30 ( pour par exemple faire une finition)
N100 la suite
exemple: dégagement au centre en G40 puis remonté à Z2

nascoli a dit:
Par contre, je n'ai pas saisi l'intérêt du N20 L1=0 si N30 = L1+2
D'ailleurs, en relisant votre post, si je dégage à Z2, j'ai l'impression que j'usinerai toujours à Z-2 (Z-L1(=0+2))soit -2.
Le bloc N20 permet de remettre la variable à zéro si celle-ci a été utilisée auparavant pour une autre opération, ce bloc n’est effectivement pas obligatoire dans ce cas
Pour le rappelle de séquence en G79, je ne rappelle pas le bloc N20, la séquence commence à N30 qui fait bien L1 =L1 +2

merci pour la fonction I (i) je l'avais effectivement lu, mais oubliée

javais fait un exemple de programme paramètré ici
num-f106/demande-aide-pour-programmation-parametree-t17229.html
 
N

nascoli

Nouveau
Re: [NUM 760F] Interpolation hélicoïdale

DODORE a dit:
Tu peux effectivement utiliser le G91 pour prendre les passes en Z et faire suivre d’un G90 pour faire le cercle
Exemple
%999
N10 GO G41 OU (G42) X30 Y Z
N40 G91 Z-2 <<--- il manque "G1" non ?.
N60 G90 G3 X30 Y R30
N70 G77 N40 N60 S4 (pour une profondeur de 10) ....

Oui, mais ce n'est pas ce que je recherche exactement.
Je souhaiterai déplacer les 3 axes en même temps avec un pas régulier en Z, pour faire un filetage à l'outil, sans taraud.

Merci pour ton exemple de programme du sujet cité. Ça va me donner des idées.

J'ai essayé vite fait (beaucoup de travail, pas de temps):

Le résultat:
Mise en route de la rotation
Déplacement en rapide avec prise du correcteur (D1 R=20) à X10 (30-20) Y0 Z0;
Prise de passe Z-2, puis Z-4, Z-6, etc.;
... Sans déplacements XY !?...

Puis je suis retourné à mes occupations.

Sinon, OK pour l'intérêt de N20.

A suivre ...
 
D

Dodore

Compagnon
Re: [NUM 760F] Interpolation hélicoïdale

j'ai modifié le 1er septembre quelque blocs pour les rendre plus compréhensif ou pour corriger quelques erreurs

Bonsoir
Désolé comme tu avais parlé de profondeur , j'avais fais un programme dans ce sens
Voilà ce que j' ai fais pour un programme avec déplacement hélicoïdal
On suppose un filetage inter de 30 avec un pas de 2 et une profondeur filetée 10
Avec une fraise à filet
l'origine est en Z sur la face et en X et Y au centre du trou
On choisira un déplacement angulaire de 1 degré
On fera les déplacements en G1, pour les déplacement sur le cercle l'erreur sera négligeable si on veux une précision plus importante on peux choisir un déplacement de 0,5 degré
Tout d' abord il faut calculer le déplacement en z pour 1 degré
On choisira les variables
L10 pour l'angle qui va varier de 1 à 360 degrés
(si on veux faire plusieurs tours il faut remplacer 360 par 720 ou tout autre valeur exemple 2 tours 1/2 = 900 cette valeurs remplacera le chiffre 360 au bloc N190
L20 pour Les déplacement en X (formule = cosinus de l'angle * rayon ce qui se traduit en langage NUM C L1 * 30(rayon)
L30 pour les déplacements en Y' avec le sinus
L45 pour les déplacements en Z

%999
N10 L1=1 ( incrément en degré)
N20 L4= 2/360( incrément en Z , pour 1 degré avec un pas de 2)
N30 différents réglages
Vitesse de rotation
Vitesse d' avance
Rotation
Etc
N100 G 0 X0 Y0 Z2 (approche )
N110 G0 Z-8 (plongé à Z moins le pas, puisque la cote final est -10)
N120 G1 G41 X30 Y0
N130 L10 = L10 +L1 (angle)
N140 L20 = C L10*30 ( calcul de la cote en X) je pense que c'est comme ça que ça s'écrit je ne me rappelle plus très bien
N150 L30 = S L10*30 ( c..............en Y)
N160 L40 = L40 + L4 (calcul de la différence de hauteur multiplié par le nombre de degrés
N170 L45= L40 + 8(nouvelle cote en Z pour un déplacent de 1 degré
N180 G1 X L20 Y L30 Z - L45
N190 G79 L1 = > 360 N200
N195 G 79 N130
N200 G0 G40 X 0 Y0
N210 G0 Z10
N220 (et suivant : fin de programme
je pense que ça doit marcher ......

il me semble que je me suis planté, et qu'on fait un filetage a gauche, pour faire un filetage à droite il faut prendre les valeur angulaire negative ou changer le sens du déplacement en Z attention pas les deux
 
D

Dodore

Compagnon
Re: [NUM 760F] Interpolation hélicoïdale

DODORE a dit:
https://www.usinages.com/threads/demande-daide-pour-programmation-parametree.17229/



on peux supprimer cette inconvénient en faisant un G79 pour aller directement au G77
exemple
%999
N5 G79 N 70
N10 GO G41 OU (G42) X30 Y Z
N40 G91 Z-2 [glow=red] (oui effectivement il faut un G1)[/glow]
N60 G90 G3 X30 Y R30
N70 G77 N40 N60 S5 (pour une profondeur de 10)
 
D

Dodore

Compagnon
Re: [NUM 760F] Interpolation hélicoïdale

nascoli a dit:
J'ai essayé vite fait (beaucoup de travail, pas de temps):

Le résultat:
Mise en route de la rotation
Déplacement en rapide avec prise du correcteur (D1 R=20) à X10 (30-20) Y0 Z0;
Prise de passe Z-2, puis Z-4, Z-6, etc.;
... Sans déplacements XY !?...

A suivre ...
j'ai bien regardé et réfléchi
la seul chose à laquelle je pense :
je crois qu'il existe quelque chose qui dit:
il faut un déplacement en X Y dans les trois blocs qui suivent un G41 ou G42
est ce que c'est ça?
elle fait pourtant bien un déplacement qui correspond à la prise en compte du correcteur
pour le vérifier il faudrait faire un essai en G40
 
N

nascoli

Nouveau
Re: [NUM 760F] Interpolation hélicoïdale

Bonjour DODORE et merci de t'interesser à ce sujet.

je crois qu'il existe quelque chose qui dit:
il faut un déplacement en X Y dans les trois blocs qui suivent un G41 ou G42
est ce que c'est ça?
Non, je ne pense pas.
En général, j'entre, dans le programme,

elle fait pourtant bien un déplacement qui correspond à la prise en compte du correcteur
pour le vérifier il faudrait faire un essai en G40

Oui, avec pour correcteur D1 R20, l'outil parcoure, pour un contour de rayon 30mm, 10mm (30-20) (en G41 bien sur).
En G40, l'outil parcoure 30mm, normal .
 
N

nascoli

Nouveau
Re: [NUM 760F] Interpolation hélicoïdale

%999
N10 L1=1 ( incrément en degré)
N20 L4= 2/360( incrément en Z , pour 1 degré avec un pas de 2)
N30 différents réglages
Vitesse de rotation
Vitesse d' avance
Rotation
Etc
N100 G 0 X0 Y0 Z2 (approche )
N110 G0 Z-8 (plongé à Z moins le pas, puisque la cote final est -10)
N120 G1 G41 X30 Y0
N130 L10 = L10 +L1 (angle)
N140 L20 = C L10*30 ( calcul de la cote en X) je pense que c'est comme ça que ça s'écrit je ne me rappelle plus très bien
N150 L30 = S L10*30 ( c..............en Y)
N160 L40 = L40 + L4 (calcul de la différence de hauteur multiplié par le nombre de degrés
N170 L45= L40 + 8(nouvelle cote en Z pour un déplacent de 1 degré
N180 G1 X L20 Y L30 Z - L45
N190 G79 L1 = > 360 N200
N195 G 79 N130
N200 G0 G40 X 0 Y0
N210 G0 Z10
N220 (et suivant : fin de programme
je pense que ça doit marcher ......

il me semble que je me suis planté, et qu'on fait un filetage a gauche, pour faire un filetage à droite il faut prendre les valeur angulaire negative ou changer le sens du déplacement en Z attention pas les deux

Bon, la CN n'en veut pas: "ERREUR 91 N140"
--> "fonction non reconnu par le système" (dixit la liste des erreurs NUM 760).

N140 L10=CL10*30 (qui s'écrit vraiment comme ça)
Il y a des chances qu'il en soit de même pour le bloc 150, mais la CN a bloqué à N140.

Pourtant, ce genre de programme doit fonctionner, car j'ai un autre programme, fourni avec la machine (d'occasion), qui fonctionne avec des (par exemple):
L12=CL8*L2
J'ai tenté plusieurs choses, mais rien à faire.

J'ai donc écris sur papier le programme qui fonctionne et le programme en cours qui ne fonctionne pas, pour cogiter dessus ce week-end.
Je l'ai oublier, je crois que je vais y retourner, c'est ouvert cette nuit (30 km A/R).
 
N

nascoli

Nouveau
Re: [NUM 760F] Interpolation hélicoïdale

Me voilà de retour, j'avais pensé à toi ce matin et copier un sous-programme de perçage sur un diamètre quelconque et un angle de départ.
Avec un programme principal comprenant:
-les conditions de coupe ainsi que le correcteur d'outil;
-la valeur de toutes les variables;
-l'appel du sous-programme;
-et enfin, le dégagement en fin d'usinage, l'arrêt broche et la fin de programme.

Programme testé et fonctionnel, ce qui nous aidera probablement à comprendre l'Erreur 91 précédente :
On va partir de l'exemple d'un perçage/taraudage de 6xM10 prof.20/30 equidistants sur un diamètre 100 et un départ coté à 7,5 degrés de l'axe.



Tel qu'il est, tout fonctionne, sans erreur.
Ce qui prouve que le Cosinus d'une variable n'est pas inconnu du système comme l'indique la CN dans le programme de contournage.

Alors peut-être que le programme est bon mais qu'il faudrait "ranger" les blocs dans un ordre différent.

J'ai tout le week-end pour cogiter dessus, tenter de réorganiser et d'en faire un sous-programme et de tout remettre au propre et de tester lundi soir (travaille de nuit)

Le but de faire des sous-programmes, c'est de ne pas y toucher, on entre juste les valeurs dans le programme principal (ici %8)
 
D

Dodore

Compagnon
Re: [NUM 760F] Interpolation hélicoïdale en G1

Ça y est j'ai trouvé :
Les variables L20 à L99
N''existent pas
 
N

nascoli

Nouveau
Re: [NUM 760F] Interpolation hélicoïdale en G1

Tout à fait, c'est ce que j'avais vu vendredi soir en rédigeant le programme (post précédent).
Je teste ça ce soir et posterai le résultat demain matin.
 
R

relax

Compagnon
Re: [NUM 760F] Interpolation hélicoïdale en G1

Bonjour,
Je ne connais pas le num mais sur fanuc on doit spécifier le plan de travail utilisé pour les interpolations circulaires.
G17(plan XY)/G18(plan XZ)/G19(plan YZ).
Cordialement
 
N

nascoli

Nouveau
Re: [NUM 760F] Interpolation hélicoïdale en G1

super ntjx a dit:
Bonjour,
Je ne connais pas le num mais sur fanuc on doit spécifier le plan de travail utilisé pour les interpolations circulaires.
G18(plan XY)/G18(plan XZ)/G19(plan YZ).
Cordialement

Bonjour,
sur NUM également, mais le G17 est présent "par défaut" comme "G90" , "G40", et "G54".
Donc inutile des les redemander.
Merci pour votre participation.
 
N

nascoli

Nouveau
Re: [NUM 760F] Interpolation hélicoïdale en G1

Bonjour,

C'est pas encore ça,
en restant toujours sur la même base, R30 avec une plongée de 2mm/tour,

l'interpolation hélicoïdale se fait en G1, mais le Z se déplace de 0,4mm/tour.
Par ailleurs, l'avance programmée ne correspond pas à la réalité, très lente pour F2000.

J'y réfléchi et prépare un autre programme tiré de l'exemple que tu m'as donné, avec 2 formules supplémentaires pour le calcul du Z.

L'erreur 91 a disparu :smt002
 
D

Dodore

Compagnon
Re: [NUM 760F] Interpolation hélicoïdale en G1

nascoli a dit:
Bonjour,

C'est pas encore ça,
en restant toujours sur la même base, R30 avec une plongée de 2mm/tour,

l'interpolation hélicoïdale se fait en G1, mais le Z se déplace de 0,4mm/tour.
Par ailleurs, l'avance programmée ne correspond pas à la réalité, très lente pour F2000.

J'y réfléchi et prépare un autre programme tiré de l'exemple que tu m'as donné, avec 2 formules supplémentaires pour le calcul du Z.

L'erreur 91 a disparu :smt002
bonsoir
est ce que tu peux me faire parvenir le programme que tu as fait
pour la vitesse de déplacement ça arrive quelquefois, quand il y a trop de calculs, le système ne calcul pas assez vite par rapport à la vitesse d'usinage; ce problème pourrait disparaitre si tu changes l’incrément angulaire
nascoli a dit:
N140 L20=CL10*L2 ............. AHHHH Purée, je viens de cogiter, les variables, C'EST DE L1 à L19 !!!
il me semble que c'est même de L0 à L19


sur mon iphone je n'avais que
nascoli a dit:
N140 L20=CL10*L2 ............. AHHHH Purée, je viens de
 
N

nascoli

Nouveau
Re: [NUM 760F] Interpolation hélicoïdale en G1


Voilà pour une approche que j'ai faite tout à l'heure
Il reste peut-être des erreurs, je testerai ce soir. (je pars à 20h00).

Si modifie l'incrément en passant de 1 à 5°, ça ne va pas être joli à voir...

(ps: je t'ai envoyé un MP hors sujet, au cas où tu ne l'aurais pas vu :smt002 )
 
D

Dodore

Compagnon
Re: [NUM 760F] Interpolation hélicoïdale en G1

erreur

L1=30 rayon
L2=2 pas/360°
L3=-10 profondeur usinage
L4=50 dégagement/saut de bride
L5=4 approche (éventuellement multiple du pas et de la profondeur, à voir).
L6=1 incrément en degré

L7 =incrément en Z pour un angle de 1°
pour chaque degré la cote en Z varie de 2mm/360



N5 M3 M41 S200 F2000
N10 G0 X0 Y0 ZL4
N20 ZL5
N30 G1 G41 XL1 Y0

N40 L10=L10+L6 (angle courant)
N50 L11=CL10*L1 (calcul coordonnées X)
N60 L12=SL10*L1 (calcul coordonnées Y)
a ajouter N65 L15= L5 – L7 si on prend le point de départ à 4 mm de la pièce
à supprimer N70 L13=360/L10 (fraction angle courant/360°) c'est pas un angle qu'il faut calculer mais une distance en Z pour X degré
a supprimer N80 L14=L2/L13 (calcul coordonnées Z)


N90 G1 XL11 YL12 Z -L14 L15
N100 G79 L1=>360 N200
N110 G79 L14=L3 N200
N120 G79 N40

N200 G0 G40 X0 Y0
N210 ZL4 M5 M2


il ne reste qu'a essayer
 
N

nascoli

Nouveau
Re: [NUM 760F] Interpolation hélicoïdale en G1

Bonjour,

Le programme fonctionne très bien tel que je l'ai rédigé hier à 19h50.
Sauf que j'ai du mettre L3 en positif.
Et l'interpolation est toujours aussi lente à F6000 ou F2000, c'est pareil.
Je pense, comme toi, que la CN rame à calculer toutes ces coordonnées.

Cependant, en priorité:
- j'ajouterai le N65 L15=L5-L7 que tu proposes, car de Z4, on passe directement à Z-0.005 sur 1°
- remplacer, à N90, L14 par L15
- remplacer N100 par: G79 L10=360 N200 (facultatif je pense)

A l'heure de ton dernier message, j'étais au boulot.
Je n'ai donc pas pu tester ta dernière proposition.

Cela dit, on peut considérer ce sujet comme Résolu.
Un grand merci pour ton aide ainsi que les explications claires et détaillées.

(je suis tombé, par hasard, sur un forum où tu avais posté un programme qui me semble fort intéressant (ellipse):
develloppante de cercle )
Je vais étudier ça de près.
 
D

Dodore

Compagnon
Bjr
N'oublie pas au bloc 110 de rajouter le signe =>
 
N

nascoli

Nouveau
Merci, effectivement, je l'avais oublié:
N110 G79 L15=>L3 N200 :smt023
 
J

JLuc69

Compagnon
Re: [NUM 760F] Interpolation hélicoïdale en G1

DODORE a dit:
Ça y est j'ai trouvé :
Les variables L20 à L99
N''existent pas
Si tu as besoin de plus de variable, tu peux utiliser :
L0 à L19
L100 à L199
L900 à L959 (ATTENTION !! ces variables sont utilisées par les cycles G81, G82, ...)
 
U

usinum

Ouvrier
Salut,
J ai parcouru ce blog et il me semble qu il ne faille pas passer par un G41/42 pour liberer de la cn.
Le rayon est une variable, donc on le change comme on veut. Ensuite, de simples increments lineaires (G1) sur 3 axes avec un algorithme ne doivent causer aucun souci a la num.
a+
j-m c
 
D

Dodore

Compagnon
usinum a dit:
Salut,
J ai parcouru ce blog et il me semble qu il ne faille pas passer par un G41/42 pour liberer de la cn.
Le rayon est une variable, donc on le change comme on veut. Ensuite, de simples increments lineaires (G1) sur 3 axes avec un algorithme ne doivent causer aucun souci a la num.
a+
j-m c
Effectivement en y réfléchissant , ça doit marcher il suffit de travailler "en centre fraise et pour ajuster la cote de modifier la variable du rayon de filetage
Je me posais justement la Question de la prise de correction en G41 ou en G 42, parce que les portons de droite sont trop petit , et je me demandais ou allait se positionner la fraise au premier bloc en correction de rayon
 

Sujets similaires

Haut