programmation de Mach3

  • Auteur de la discussion ordinerf
  • Date de début
O

ordinerf

Compagnon
Bonjour à tout le monde,
je cogite depuis un bout de temps sur un truc qui me semble tout simple et pourtant je n'arrive pas à trouver la solution :smt089
peut-on programmer Mach3 afin d'avoir une vitesse de déplacement propre à chaque axe, voici un exemple:
G01 X10 Y20 F100 => on va avoir X et Y qui vont se déplacer à la même vitesse donné par F
ce que j'aimerais c'est avoir ceci:
G01 X10 Y20 F(X)100 F(Y)50 => définir une vitesse différente par axe qui travaille en même temps.
sinon éxiste t'il un système de "ratio" par exemple qui permette de varier la vitesse de X en fonction de celle de Y, par exemple:
G01 X10 Y20 F100 Ratio0.5 => ce qui ferait diviser par 2 la vitesse de Y par rapport à celle de X
si il n'y a rien de tout ça éxiste t'il une possiblité de programmer une routine pour que Mach3 agisse dans mon sens :rirecla:
merci d'avance pour vos réponses, parce que la je sèche et mes ti nerfs ne vont pas tarder à toucher les fins de course :rirecla:
 
V

vres

Compagnon
Bonjour Ordinerf
La vitesse est donnée pour un deplacement interpolé et non pour un axe.
Si un deplacement de 2000 sur X et 500 sur Y, tu ne peux pas dire je veut une vitesse de 100 sur X et 200 sur Y.
La vitesse de Y et obligatoirement 4 fois plus lente que celle de X sinon tu n'aura pas le déplacement voulu.
J'ai peut-être pas compris ta question.
Cordialement
Christian
 
O

ordinerf

Compagnon
oui oui je suis entièrement d'accord avec toi mais ce n'est pas évident à expliquer :oops:
en faite j'ai un mouvement linéaire lier à un mouvement circulaire, le linéaire est monté sur le circulaire et en faite je dois avoir le déplacement d'un point toujours à la même vitesse donc je vais avoir un mouvement circulaire et linéaire qui vont varier en fonction de l'emplacement de l'un par rapport à l'autre et donc la vitesse va bouger aussi et c'est ça que je veux programmer :)
voici un ti dessin qui explique tout :)
le disque B est entrainé en rotation par un moteur pas à pas, le point rouge est entrainé en déplacement linéaire le long de A grace à un moteur pas à pas et une tige filetée, le point rouge doit effectuer le trajet tracer en rouge à la même vitesse quelque soit son emplacement et son sens de déplacement.

toto.JPG
 
J

JKL

Compagnon
Je ne sais pas pour Mach que je ne connais pas mais avec certains équipements on a les fonctions soit GEAR soit SLAVE qui peuvent peut-être faire cela.
Mais si je ne m'abuse, tu as là une machine fonctionnant en coordonnées polaires. Donc si par ailleurs la vitesse vectorielle peut être déclarée constante ton point rouge se déplacera à une vitesse constante sur sa trajectoire décrite en coordonnées polaires.
 
M

maitrefred

Ouvrier
Bonsoir ordinerf

Je pense qu'il faut te diriger vers EMC2 :)
 
R

romteb

Fondateur
C'est pas dans Mach3 que tu pourras trouver la solution à ton problème, c'est uniquement une question de post processeur et de configuration de ton logiciel de fao pour la génération de ton G-Code.

Comment compte tu générer ton gcode ?
 
O

ordinerf

Compagnon
JKL> c'est un proto partiel et non une machine :wink:
en faite si le moteur du disque B à une vitesse constante il est certain que le point rouge va avoir une vitesse variable en fonction de son emplacement controler par le moteur du chariot A, la vitesse du point rouge sera la plus petite quand A sera au plus court et la vitesse du point rouge sera plus grande quand A sera au plus long.
Maitrefred> c'est gratuit EMC2 ? :siffle:
Romteb>bah en faite ce que je voulais faire c'était de n'avoir qu'à donner les points du trajets en rouge et ainsi un utilitaire fait maison me donnait tout le G-code, donc ça pas de problême mais le seul point qui bloque c'est la vitesse des moteurs qui doit être variable si je veux un déplacement constant du point rouge, si Mach3 peut être programmé au niveau des vitesses de chaque axe c'est le top, mon utilitaire fera tout le programme mais si ce n'est pas le cas je vais devoir faire aussi un utilitaire pour commander les moteurs depuis le port LP1 ce qui ne m'arrange pas trop faute de temps :smt089
donc soit je fais tout de A à Z ou soit Mach3 se bouge le popotin pour me rendre ce service :rirecla:
sinon il me reste une solution mais qui ne me plait guère c'est de faire un déplacement sacadé c'est à dire que la vitesse F varie par exemple tous les 1 mm que le point rouge aura effectuer en déplacement.
imaginons que je prenne A et B comme axe sur Mach3.
A étant un déplacement linéaire donc sur une longueur en mm.
B est un déplacement circulaire donc sur 360°
on va avoir par exemple:
G01 A10 B12 F100
G01 A10.2 B12.05 F98
etc...
c'est à dire que plus A sera grand et plus ma vitesse "périphérique" sera grande donc je vais réduire F de façon à rattraper cette différence de vitesse.
certe ça ne se sentira pas (enfin je pense) mais bon ça va me faire des programmes hyper long alors que mon but est de faire plutot court d'où l'intéret de programmer Mach3 en fonction de la position de mon point rouge :)
le top serait de pouvoir mettre une vitesse de départ et une vitesse d'arrivé comme on fait avec les axes, exemple:
G01 X20 Y30 F100 <= X de départ, Y de départ et F de départ
G01 X60 Y50 F70<= X d'arrivé, Y d'arrivé et F à l'arrivé
mon point démarerait avec F100 pour s'arrêter avec F70 et entre les deux la vitesse F diminuerait de façon proportionnelle :)
si je dois me taper l'utilitaire complet alors je ferais carément un big truc qui va englober plein d'autre chose qui me seront utile plus tard mais bon pour ce petit proto j'aimerais faire rapidos, minidos et simplidos :mrgreen:
 
L

la_coterie

Ouvrier
Peut etre function Cfg's/Formulas peut t'aide?
 
V

vres

Compagnon
Par simplicité je ne vois que les micro-vecteurs pas de 1 mm comme tu dis, mais de 0.1 ou 0.2mm. Si mach fait bien son boulot tout il devrait être lisser et ne pas faire de saccade.
Il faut faire un petit bout de programme pour generer le code iso. peut être avec excel ?.

Le mieux serait de faire avec un axe C et un axe X ou Y. Reste à savoir comment Mach va calculer la longueur et donc la vitesse.
 
R

romteb

Fondateur
Le problème c'est que Mach3 ne peut pas gérer un axe linéaire monté sur un rotatif, c'est au niveau du Gcode qu'il faut régler le problème.

Avec EMC2 tu as un module cinématique implémenté dans HAL, je rejoint Maîtrefred, EMC2 est gratuit. :wink:
 
M

maitrefred

Ouvrier
Bonjour.
Juste une remarque 8-)

Les vitesses des deux axes ne sont pas proportionnel(les)? fais attention :!:
 
O

ordinerf

Compagnon
la_coterie> je ne connais pas function Cfg's/Formulas, je vais m'informer :wink:
Cncserv> pour le code ce n'est pas un problême, par contre niveau calcul au vu de mes essais Mach ne se limite qu'à aller du point A au point B tout en gérant la vitesse qu'on lui à donné, ce dont je suis étonné c'est qu'il n'y a pas de possibilité de lui programmé des routine manifestement :eek:
Romteb>je vais étudier EMC2 de plus pret :hum:
Maitrefred> tout à fait et c'est pour ça que je cherche à programmer plutot que de "tricher" niveau G-code, mais bon si je ne peus pas programmer je vais soit faire un truc spécialement pour ce proto avec gestion des moteurs (parce que ça ce n'est qu'une petite partie du proto) soit tricher mais bon ça m'embête d'avoir des programmes très long.
 

Sujets similaires

L
Réponses
11
Affichages
1 604
lecoyote
L
V
Réponses
18
Affichages
1 127
V
B
Réponses
3
Affichages
1 011
dh42
C
Réponses
22
Affichages
973
jbf
N
Réponses
4
Affichages
741
BRICOLO
B
T
Réponses
8
Affichages
980
greg_elec
greg_elec
lolo
Réponses
1
Affichages
745
lolo
PL50
Réponses
25
Affichages
891
dh42
Haut