BZT PF750 P

joumpy
Compagnon
8 Octobre 2009
1 513
38: Grenoble
Avec la fonction de nesting, tu allonges le programme d'autant.
Avec les boucles et les paramètres, le programme se réduit comme peau de chagrin.
Et quand il faut trouver un bug sur 40.000 lignes...

Le jour ou tu veux juste changer la vitesse d'avance: 1 chiffre à changer: la valeur du paramètre qui va bien.
Sinon, tout remouliner sous CB en changeant les paramètres d'outils.

Le 2D, je fais à la main. La 3D, sur forme simple, à la main aussi.

Celui qui m'a mis le pied à l'étrier, c'est Grenouille 32
ICI
 
dh42
Compagnon
4 Septembre 2009
5 269
Près de St Etienne (42)
joumpy a dit:
D'après ce que j'ai pu voir sur les forums, ça devrait être compatible...

essaie d'abord un test simple

#1=10
G00 X0
G00 X#1
G00 X0
M30

Gaffe à laisser le mouvement libre sur X de 10 mm dans le sens positif à partir de la position d'origine.
Si ça se déplace de 10 mm et que ça revient en position initiale, tu as gagné les paramètres.
Ensuite tu peux tester les boucles.
Re

Je viens d'essayer sur Mach3 (sans la machine) et il comprends ce code ; la simu fait bien ce qui est prévu :-D

Pour ma part, je ne fait aucun GCode à la main, uniquement avec CB, et éventuellement le peu que je fait à la main je l'intègre dans CB. La plupart des mes pièces ont des découpes tortueuses, le code est donc généré à partir d'un DXF importé. Avec CB c'est tellement simple et rapide :prayer:

Une question à 1000$ ; est il possible d'avoir l'équivalent d'un "input", qui permettrait à l'utilisateur d'entrer la valeur de la variable #1 ; et puis tant qu'on y est, peut on faire des calculs mathématiques genre #1 = #2 * 4 ?

++
David
 
JLuc69
Compagnon
19 Juin 2008
1 315
Genas (69)
joumpy a dit:
D'après ce que j'ai pu voir sur les forums, ça devrait être compatible...

essaie d'abord un test simple

#1=10
G00 X0
G00 X#1
G00 X0
M30

Gaffe à laisser le mouvement libre sur X de 10 mm dans le sens positif à partir de la position d'origine.
Si ça se déplace de 10 mm et que ça revient en position initiale, tu as gagné les paramètres.
Ensuite tu peux tester les boucles.
Alors, j'ai testé pour vous ... :mrgreen:
Ce petit bout de programme marche, mais ça s'arrète là
Celui ci ...
... ne marche plus ! :???:
Même avec les sous programmes, ça marche mal :
mach3 fait le premier contour mais ne va pas faire les 4 autres à des profondeurs différentes :x
 
assurancetourix
Compagnon
17 Octobre 2008
941
rennes
ben normal

d'un coté tu appelles P2

mais ton ss prog tu le nommes O0002
il faut l’appeler O2

ou alors tu fais P0002

vv
 
joumpy
Compagnon
8 Octobre 2009
1 513
38: Grenoble
Pour le premier programme, je pense que tu lui demandes de remonter et qu'il n'aime pas. Essaie de placer le résultat de la condition (N10) en dessous de la ligne de test. Ça devrait passer...
Pour le deuxième programme, tentes quand même la modif d'Assurancetourix, Ça mange pas de pain!
 
joumpy
Compagnon
8 Octobre 2009
1 513
38: Grenoble
L'input, je ne sais pas faire... Alors j'initialise toutes mes variables en début de programme...Un vague reste de turbo-pascal!

Pour les calculs, il y a les 4 opérations de base, plus les fonctions trigo et quelques fonctions genre valeur absolue...

Par exemple, lorsque j'ai un tracé complexe à reproduire, comme un cœur, je demande à CamBam de me faire le G-code de base et je me démerde avec une boucle pour que la bécane répète le tracé jusqu'à ce que la profondeur soit atteinte. De cette façon, le nombre de passes n'intervient plus, je peux modifier ma profondeur de passe à volonté.

Coté programmation, j'essaie d'éviter les "goto" qui risquent de s’emmêler les pinceaux si les directions se croisent...
Je privilégie les boucles WHILE (tant que en français)
 
joumpy
Compagnon
8 Octobre 2009
1 513
38: Grenoble
Voila ce que donnerai pour moi le deuxième programme de JLuc69
; usinage de poche carrée
#1=-1 ; profondeur de travail
#2=-5 ; profondeur finale
#5=1 ; compteur
#6=2 ; répétition
#10=10 ; taille du carré
#11=-#10
#15=200 ; vitesse de travail
;
G00 G90 Z1 (ca, c'est perso, je dégage toujours en Z)
G00 X0 Y0
WHILE[#1GE#2]DO1
G01 Z#1 F#15
WHILE[#5LE#6]DO2
G01 G91 X#10 F#15
Y#11
X#11
Y#10
G90
#5=#5+1
END2
#5=1
#1=#1-1
END1
G00 Z1
M30
 
JLuc69
Compagnon
19 Juin 2008
1 315
Genas (69)
Il y a peut être aussi le fait que je tourne avec la version 2.61 :???:
Ca ne marche pas si bien que ça, que ce soit les macros (il accepte pas les additions simples : #1=#1+1) ou les prises et sorties de correction qu'il fait très mal.
Je vais télécharger la V3.043 pour voir :roll:
J'espère que je pourrais l'utiliser "juste pour voir" (ma machine sera pilotée par GALAAD)

Pour l'appel des sous programmes, j'ai trouvé où était la boulette :
la fin de mon fichier était juste après le M99 : il faut absolument un retour à la ligne après le dernier M99 :twisted:
 
joumpy
Compagnon
8 Octobre 2009
1 513
38: Grenoble
JLuc69 a dit:
Pour l'appel des sous programmes, j'ai trouvé où était la boulette :
la fin de mon fichier était juste après le M99 : il faut absolument un retour à la ligne après le dernier M99 :twisted:
Ces machines font preuve d'une perversité... :lol: :lol: :lol:
 
joumpy
Compagnon
8 Octobre 2009
1 513
38: Grenoble
Dommage pour l'instruction WHILE, c'est quand même super pratique...
Faudrait voir avec Artsoft ce que Mach 3 peut digérer en G-code.
Bon, on demande pas une traduction complète non plus! :wink: :wink: :wink:
 
JLuc69
Compagnon
19 Juin 2008
1 315
Genas (69)
Voilà une solution qui marche, un mélange de paramètres et d'incréments :

Le "L" sur la ligne du M98 sert au nombre de répétition :partyman:
De cette façon, on a la main sur la profondeur et sur le nombre de fois que le profil est fait. Par contre, la prise de correction n'est pas bonne :mad: . Je ne sais pas si c'est dans les paramètres que l'on peut régler ce problème, ou si il faut le savoir et en tenir compte :evil:
Comme la version que j'ai est en anglais, je ne me suis pas trop penché sur le pb... de plus que je ne vais pas l'utiliser...
Est ce que mach3 peut piloter une machine via le port série ?
 
dh42
Compagnon
4 Septembre 2009
5 269
Près de St Etienne (42)
Salut,

Je vous fait profiter de quelques recherche sur le forum de Mach3 suite à une question sur les branchements conditionnels sur un autre forum.

................

Alors pour ce qui est des branchement conditionnels dans Mach3, je suis allez voir sur le forum de ArtSoft ; la réponse est: "ce n'est pas possible, mais ce n'est pas impossible" :-D

Explication: Il n'y a pas d'instruction If/Then/Else dans le Gcode compris par Mach3, mais il est possible d'appeler une macro qui fera le même travail.

Cette macro se trouve donc dans un fichier séparé et est en fait du code en Visual Basic.

Voici les explications que j'ai trouvées avec quelques commentaires perso pour expliquer le fonctionnement de la bidouille.

Le Gcode:

#500 = 5 (définition d'une variable n° 500 et affectation d'une valeur)
O20 (routine n°20)

G code routine 1 ici

#500 = #500-1 (décrémentation de la variable 500)
M500 (appel de la routine en VB)
M98 P#502 (502 contient la réponse de la routine en VB ; c.a.d le n° de routine à utiliser 20 ou 30)
O30 (routine n°30)

G code routine 2


M500.m1s file goes in macros/your profile and contains (le fichier en VB doit avoir ce nom "M500.m1s", il doit se trouver dans le dossier de profil de la machine utilisée)

Le fichier en VB: ("M500.m1s")

Sub main ()
a = GetVar (500) ' lire la valeur de la variable 500 du Gcode et l'affecter à "a"
If a > 0 Then GoTo set20
SetVar(502,30) 'affecter la valeur 30 à la variable 502 du Gcode si "a" est <= à 0
GoTo set30 'sauter à set30:
set20:
SetVar(502,20) 'affecter la valeur 20 à la variable 502 du Gcode si "a" est > à 0
set30:
End If
End Sub


bon décodage :wink:

++
David
 
dh42
Compagnon
4 Septembre 2009
5 269
Près de St Etienne (42)
Salut,

Petits travaux d'entretien sur mon axe Z ; suite à une perte de pas et une pièce tuée (paix à son âme :) ) je me suis aperçu que le Z était dur .... gommage des guides à la poussière de MDF + huile :roll:

Une image prise lorsque la machine était neuve, pour s'y retrouver dans la suite des photos.


Donc démontage et nettoyage.

Dépose de la partie supérieure avec le moteur, la vis à bille et son écrou.




La partie mobile avec les douilles laitons de guidage.


la partie basse avec le roulement de la vis à bille.


L'écrou


Après nettoyage, le glissement est redevenu correct, mais un huilage à l'huile moteur le rend dur ... re- nettoyage et huilage à la vaseline ... c'est nettement mieux.

J'ai aussi décidé de virer le grand carter qui m’empêche de nettoyer quoi que ce soit sur le Z sans tout démonter :roll:

++
David
 
La dernière réponse à ce sujet date de plus de 6 mois
Haut