Petit bout de gcode pour tailler des pignons avec un 4° axe

  • Auteur de la discussion quoy25
  • Date de début
quoy25
quoy25
Apprenti
20 Oct 2019
55
  • Auteur de la discussion
  • #1
petite video qui presente un bout de gcode avc 2 boucles imbriquées permettant de faire du taillage de pignons droits avec une fraise module et un 4° axe.
application sur un routeur 6040Z avec 4° axe modifié ( petit bati mecano soudé pour faciliter le montage de l'axe)


 
A
Alainb33
Apprenti
14 Juin 2017
190
Agen (47)
très fort ce bout de gcode :smt023
 
quoy25
quoy25
Apprenti
20 Oct 2019
55
  • Auteur de la discussion
  • #3
très fort ce bout de gcode :smt023
merci !... ce type de boucle imbriquée est tres utile pour des travaux "incrementaux" => on peut facilement faire du fraisage de surface par exemple avec une boucle qui fait le surfacage et une boucle qui fait la prise de passe en profondeur et ensuite on repete autant de fois que necessaire . cerise sur le gateau , en mettant des parametres , on peu utiliser un meme programme pour differents travaux ( fraisage surfacique de diferentes tailles et differentes profondeurs).pas besoin de retaper tout le code , juste besoin de changer la valeur des parametres...
 
F
franck67
Compagnon
22 Déc 2011
1 681
interressant , j'avais l'intention de me preparer des " assistants " personnels pour ne pas etre obligés de systematiquement dessiner la piece surtout quand on est dans l'atelier et qu'on veut faire un usinage simple
 
quoy25
quoy25
Apprenti
20 Oct 2019
55
  • Auteur de la discussion
  • #5
dans l'idée des assistants , les boucles sont utiles egalement pour les perçages en coordonnées polaires => une boucle de prise de passe pour le cycle de perçage/débourage et ensuite une boucle pour faire le nombre de trou sur le cercle de perçage. attention, dans ce cas la il faut travailler en coordonnées polaire dans le GCODE . ( mode G16 ). comme pour le surfacage , on peut parametrer les increments de profondeur ainsi que l'increment du nombre de trou pour faire toutes les combinaisons avec un seul et meme programme...
 
F
franck67
Compagnon
22 Déc 2011
1 681
je pensais plutot a opé de surfacage , rainurage ou contournage ( droit )

par contre ( j'ai pas encore commencé a travailler dessu )
mais comment faire pour par exemple depuis excel renseigner les cotes , diam outils etc etc puis editer un gcode via une macro ou simplement feuille de calcul ???
 
quoy25
quoy25
Apprenti
20 Oct 2019
55
  • Auteur de la discussion
  • #7
quand je parlais de parametrage , c'est utiliser des paramtres directement dans le programme Gcode et tu fixes la valeur du parametre en debut de GCODE comme ça a chaque fois tu n'as plus qu'a changer les paramtres sans devoir refaire le Gcode . tu peux aussi passer par des parametres intrmediaires genre largeur , longueur , profondeur et diametre de fraise et faire faire le clacul des variables par le GCODE . pour la solution saisie dans excel , je n'ai jamais essayé . ça doit etre possible mais sans doute plus compliqué que le parametrage dans les programmes GCODE.

voici un exemple de programme de fraisage parametré :

 
F
franck67
Compagnon
22 Déc 2011
1 681
le # defini la variable ( je ne suis pas programmateur )
si je comprends bien les premiere ligne attribu les variable enfin je veux dire par la que la premiere ligne par exemple dit que la variable 11 est = (ici ) a 50 et qu'ensuite tu appelles juste la variable dans le gcode )
 
J
joumpy
Compagnon
8 Oct 2009
1 519
38: Grenoble
C'est un peu le principe utilisé par les vieux programmeurs (le programmateur, c'est autre chose :) );
On commence le programme par définir les variables.
Ensuite, les calculs.
Ensuite on envoie la machine sur sa position de sécurité, puis de là sur son point de départ.
Ensuite on fait le boulot dans le sous-programme.
Ensuite et avant de sortir du sous-programme, on réinitialise les valeurs (parce qu'on va revenir)
Quand le boulot est fini, on ramène la machine en position de sécurité.

Quand on a l'habitude, on peut coder plus vite, mais on a ensuite du mal à relire/corriger.
La façon de faire de @quoy25 est la bonne.

Pour les boucles, soit on utilise les sous-programmes et on donne une limite sous forme de nombre de boucles à exécuter par la machine (qu'il faut calculer soi-même), soit on utilise des instructions de type while et on donne directement la valeur limite et la machine fait autant de boucles que nécessaire pour l'atteindre.
 
Dernière édition:
quoy25
quoy25
Apprenti
20 Oct 2019
55
  • Auteur de la discussion
  • #10
j'arrives un peu tard , et Jumpy a tout dit . je confirme que #1, #2 ....#n sont les noms des variables que l'on fixe en debut de programme de façon identique a tous les langages de programmations.
 
P
pascalp
Compagnon
30 Août 2007
1 078
Perpignan
Les boucles c'est pratique et efficace.
C'est mon plus gros grief envers GRBL qui ne connait ni les M98, M99, ni les commandes O de linuxcnc. A sa décharge, il faut dire qu'il prend peu de place.
 
quoy25
quoy25
Apprenti
20 Oct 2019
55
  • Auteur de la discussion
  • #12
je viens de retrouver la petite sequence video de la simulation CUTVIEWER du programme de fraisage surfacique parametré ( CUTVIEWER accepte ce type de GCODE) :

 
V
vincetastic
Nouveau
13 Déc 2019
3
Bonjour à tous!
J'arrive très tard mais j'ai une petite question sur les variables.
J'essaye de modifier le comportement de mon gcode à partir de variable comme cité plus haut.
J'arrive à définir une variable et à modifier le parcours sans problème (je visualise mon parcours sur un visualiseur en ligne).

Mon objectif est de faire varier la température d'un extrudeur pendant l'impression.
Mais quand je lance un gcode qui modifie la température à partir d'une variable, la température tombe à zéro.
Tout se passe comme si la consigne de température ne pouvait pas être modifier par ce type de variable.

Mon code :
; -----------déclaration des variables-----------
#10 = 250
#11 = 210
;------------------------------------------------
M104 S#10 ; Consigne de température
G90 ; Système de déplacement absolu
M109 S#10 ; Attend que la température indiquée soit atteinte pour continuer
;------------------------------------------------------------------------

G0 F3600 X52.286 Y133.952 Z100 ; un premier mouvement
G1 X0.5 Y#11 E3.41816 Z0 ; un deuxième mouvement pour lequel la direction en Y est gérée par la variable #11

Merci par avance,

Bien à vous :)
 
J
joumpy
Compagnon
8 Oct 2009
1 519
38: Grenoble
Toutes les CNC n'acceptent pas les variables...
Par exemple chez Fanuc, les variables, les boucles et les conditions sont des options (payantes bien sûr). Donc si le programme ne répond pas à ce type de commande, c'est qu'il faut débloquer le module.
Je sais que Mach3 ne fait pas les boucles mais fait les sous-programmes et les variables.
Les CN spécifiques imprimantes 3D... Aucune idée: je ne connais pas.
Et E3.41816: pareil, connais pas.
 
JLuc69
JLuc69
Compagnon
19 Juin 2008
1 377
Genas (69)
Je sais que Mach3 ne fait pas les boucles mais fait les sous-programmes et les variables.
Je crois que si. Il me semble avoir fais, il y a quelques années, un bout de programme avec une boucle while pour mon beau frere qui voulait usiner un manche de guitare
 
V
vincetastic
Nouveau
13 Déc 2019
3
Ah C'est donc un problème de version du firmware de la machine ? (ou de module à se procurer)

Merci pour la réponse ! Je vais creuser pour essayer de savoir qui elle machine accepte quel type de code!
 
J
joumpy
Compagnon
8 Oct 2009
1 519
38: Grenoble
Se renseigner... C'est long!
Un bout de code, départ cycle et tu sais.
 
V
vincetastic
Nouveau
13 Déc 2019
3
Oui c'est vrai, mais j'ai accès à plusieurs machines (en école). Je pense pouvoir trouver mon bonheur.

Le plus bizarre c'est que la machine n'a pas renvoyé d'erreur, elle a simplement interprété ma variable comme égale à zéro : pas toujours facile de savoir que ça bloque quand il s'agit d'une consigne de température...
 
Haut