fraiseuse charlyrobot

  • Auteur de la discussion alegreandre
  • Date de début
A

alegreandre

Nouveau
Bonjour
Y aurai t-il quelqu'un qui aurait fait marcher une fraiseuse Charlyrobot avec EMC2.
Elle est branché sur le port port rs 532 (modem).
J'ai beau changer dans la configuration l'adresse du port 0X378 par l'adresse 0x3f8 (qui correspond) cela ne fait rien.
Je suis nouveau ds EMC2 mais pas ds Linux.

Si quelq'un aurait des idées je le remercie d'avance.

André
 
C

christian-tr

Apprenti
Bonjour
Il existe bien des modèles de charlyrobot avec des systèmes différents.
EMC envoie via le port // des signaux électrique ppour piloter directement l'electronique de la machine.
la Charly par la RS232 attend des données de déplacement sous forme ascii selon un protole bien précis, elles qui seront transformées en signaux par la carte interne.
Il n'y a donc aucune chance que ça marche.
Il faut voir avec galaad ou Charlygraal
Cordialement.
 
A

alegreandre

Nouveau
merci d'avoir répondu aussi rapidement.
Un peu déçu de ne pas pouvoir faire tourner cette machine sous linux, :cry:
mais peut être un jour ?????

cordialement
André
 
H

horsot

Compagnon
Bonsoir,

Aucune chance qu'il y ai un support de cette carte dans EMC2 un jour. C'est dû à sa structure en boucle fermé temps réel de son asservissement moteur.

En gros EMC2 vérifie constamment que la position de l'outil suive bien la trajectoire en agissant sur les moteurs. Il faut garder en tête que ce n'est pas le même module qui gère la trajectoire (commande position moteur en fonction de la position courante et de la vitesse/position voulue) et le déplacement/commande moteur.

Dans le cas d'un asservissement usuel (un moteur et un capteur de position pour avoir un retour) EMC2 vérifie que la position voulue (de la trajectoire) soit celle des capteur en agissant sur le moteur, c'est le cas des machines à servos+encodeurs. Il faut donc que les informations arrivent de manière synchrone (régulières) pour assurer la stabilité d'un tel système (d'où le linux temps réel).

Dans le cas particulier de la boucle ouverte (moteur pas à pas) la machine ne peut pas renvoyer à EMC2 la position effective du moteur (il n'y a pas de capteur) : on fait confiance au moteur pour ne pas perdre de pas. La combine est de faire un retour de position dans le block qui génère les signaux "step/dir". Chaque "pas" généré par ce bloc engendre un déplacement moteur à un instant précis.

Dans le cas de ta carte, la liaison série casse l'aspect temps réel (rien ne garanti la synchronisation). De ce fait toute la gestion de la trajectoire est gérée (de manière primaire) dans ton électronique. Galaad ou assimilé ne se charge que de transformer le Gcode en interpolation linéaire. C'est un avantage pour ces softs qui ont beaucoup n'ont pas la possibilité de tourner sur un OS temps réel (windows) mais réduit beaucoup la fléxibilité et les performances.

Ta carte sépare t'elle la partie commande (liaison serie) avec la partie puissance?

Si tu connais linux, il serait vraiment dommage de ne pas utiliser EMC2. As tu regardé la documentation?

Bonne soirée

Xavier
 
A

alegreandre

Nouveau
Au que oui que je veux bien que cela marche sous linux; J'y suis depuis 12 ans et sans windows.

J'ai regardé la documentation de EMC2, mais rien trouvé.

En fait la carte (ou boitier) est fait en 4 parties:
-une carte qui reçoit le câble (port Rs532).
et en suite une carte par axe avec des sorties genre RS532. reliés a chaque moteur.

bonne soirée d même

André
 
H

horsot

Compagnon
Re,

Rs532? tu veux dire RS232 un port série classique genre modem/ancienne sourie?

Si tu peux faire des photos de tes cartes on pourrait voir si tu peux pas virer la carte qui est relié avec l'ordinateur et la remplacer par une carte d'interface parallèle.

Pour la doc :
http://linuxcnc.org/docs/html/ La version anglaise est plus à jour.

Xavier
 
G

gourky

Ouvrier
horsot a dit:
Dans le cas de ta carte, la liaison série casse l'aspect temps réel (rien ne garanti la synchronisation). De ce fait toute la gestion de la trajectoire est gérée (de manière primaire) dans ton électronique. Galaad ou assimilé ne se charge que de transformer le Gcode en interp

Bonjour,

On peut très bien faire du temps réel et de la synchronisation en liaison série. Tout dépend du protocole mis en place.
 
H

horsot

Compagnon
gourky a dit:
Bonjour,

On peut très bien faire du temps réel et de la synchronisation en liaison série. Tout dépend du protocole mis en place.

Bonjour gourky,

Si on se contente d'utiliser les signaux RX/TX du port série, je ne vois pas comment on pourrait garantir une latence constante car une fois les octets à envoyer placés dans le buffer rien n'indique en combien de temps ils seront traités (transmis). En bricolant avec les signaux de contrôles je pense qu'on peut arriver a faire quelque chose, une sorte de datation des paquets. Je ne suis pas sûr qu'un contrôleur de type 16550 (ceux dans les pc) ai les directives nécessaires, il faudrait le coder en soft...

Le sujet m'intéresse, as-tu de la doc d'une telle implémentation?

Bonne journée

Xavier
 
G

gourky

Ouvrier
Pour se synchroniser, il suffit d'attendre la réponse des contrôleurs pas à pas par liaison série.
Les traitements asynchrones sont plus intéressants. Il faut juste un identifiant dans la trame que le contrôleur renvoie à la fin du traitement pour récupérer ses petits.
De toute façon, le futur veut que l'on travaille avec des liaisons USB qui sont en série ou Ethernet. Car les ports séries disparaissent aussi des cartes mères.
 
B

bimeur

Compagnon
que de souvenir avec le CharlyRobot et CharlyGraal ^^
 
E

Eponyme-le

Nouveau
Avec un ami nous avons remis en marche une vieille fraiseuse CharlyRobot. Si ton boîtier de commande est le même, il suffit, comme le dit horsot, de remplacer la carte RS232 par une liaison directe depuis le port parallèle vers le connecteur de fond de panier. Je n'ai pas le brochage sous la main mais si tu nous fournis des photos de la machine et du boîtier de commande alors je peux le récupérer. Je pourrais également t'envoyer le fichier de configuration de la machine.
 
H

horsot

Compagnon
gourky a dit:
Pour se synchroniser, il suffit d'attendre la réponse des contrôleurs pas à pas par liaison série.
Les traitements asynchrones sont plus intéressants. Il faut juste un identifiant dans la trame que le contrôleur renvoie à la fin du traitement pour récupérer ses petits.
De toute façon, le futur veut que l'on travaille avec des liaisons USB qui sont en série ou Ethernet. Car les ports séries disparaissent aussi des cartes mères.

Le temps réel est justement de ne pas attendre plus qu'un certain délais quitte à avoir des performances dégradés. Je ne vois pas ce qui garanti ce délais dans le protocole RS232 qui plus est bufferisé.

Si tu sous entends de faire de l'asservissement numérique asynchrone en synchronisant les horloges respectives (PC et carte pour garder une base de temps commune), c'est quelque chose d'horriblement plus complexe que faire de l'asservissement synchrone avec une seule horloge. Dans le cas de l'asservissement asynchrone, on fini souvent par extrapoler la courbe des mesures asynchrones pour la rééchantillonner en synchrone ce qui implique imprécisions et latence... De toute façon EMC2 fait un asservissement synchrone et je doute qu'il puisse avoir le temps de calcul pour d'en faire un asynchrone sur des machines modestes.

Je viens de retrouver la page expliquant brièvement les contraintes d'EMC2 et les soucis des protocoles de communications (Anglais) : http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Emc2HardwareDesign
Bonne lecture.

Actuellement, pour EMC2, il y a des cartes PCI (PCIexpress?!) qui permettent d'implémenter en hard (FPGA) la gestion bas nivaux du générateur de step, des encodeurs, PWM,... L'Ethernet temps réel est une demande forte de l'industrie pour les systèmes réparties reste à savoir si le débit et la latence seront suffisants dans notre application.

Dans le cas présent, ce n'est pas de l'asservissement mais c'est de la communication commande/statu entre le PC et la carte via la liaison série. Et ce qui est clair c'est qu'EMC2 n'est pas du tout prévu pour faire ce genre de chose.

Bonne fin d'après-midi

Xavier
 
A

alegreandre

Nouveau
bonjour tout le monde

Voici les photos:

Je ne sais pas si c'est suffisant

Merci à tous de s intéresser à mon petit problème

André

arriere.jpg
arriere boitier

arriere_carte_rs232.jpg
arrière carte rs232

facade2.jpg


facade.jpg
façade du boitier
 
H

horsot

Compagnon
Re,

Ok 4 cartes différentes (3 drivers + 1 carte d'interpolation). Il faudrait que tu récupères le brochage du connecteur des 3 drivers afin de déterminer si tu peux les piloter par ton interface parallèle de PC (ou une carte PCI dédiée si tu veux en acheter une (pas nécessaire)).

Si tu n'as pas la doc et à moins qu'un forumeur ne te dépanne, je te conseille de contacter le service client de charlyrobot en expliquant que tu veux utiliser EMC2 avec le port parallèle. Sinon il te faudra faire du "reverse engineering", le système marche t'il?

Bon courage

Xavier
 
C

christian-tr

Apprenti
En fait c'est un coffret Isel C142
On peut facilement faire un branchement sur le connecteur fond de panier de la carte RS232
J'ai le schema du connecteur (DIN41612 64/96) sur papier, je peux vous en faire une copie si vous le souhaitez.
cordialement
 
A

alegreandre

Nouveau
Bonsoir

Xavier :je ne pense pas faire du "reverse engineering". , ce n'est pas dans mes cordes.

J'ai contacté Charlyrobot en leur exposant ma démarche.
Dés que j'ai une réponse je la communiquerai.

Oui je veux bien le schéma du connecteur (DIN41612 64/96) christian-tr.
Mais peut être avec des explications sur ce connecteur si c'est possible.
Merci

je trouve que ce forum est vraiment actif. Merci encore une fois à tout le monde.

André
 
C

christian-tr

Apprenti
Je ne pense pas que ca soit du "reverse engineering"
ce système n'était pas très performant.
Pour le branchement c'est très simple 3Dir et 3 Clock au niveau TTL.
 
A

alegreandre

Nouveau
Heuu 3 Dir et 3clock...

Excuse de mon ignorance mais là il faudrait que tu m'expliques.
 
C

christian-tr

Apprenti
Pour chaque moteur il y deux signaux:
-Un qui indique le sens de rotation
- l'autre qui demande au moteur de faire un pas a chaque impulsion.

Je ne peux poster le schéma que samedi matin, je suis en déplacement.

Je pense qu'avec le brochage certains ici pourront te faire le schéma de raccordement avec EMC2 sans problème :wink:
Je connais bien les Charlyrobot/Isel mais pas EMC2
 
A

alegreandre

Nouveau
ok merci.
Je ne suis pas pressé.

Bonne soirée

André
 
H

horsot

Compagnon
christian-tr a dit:
Je ne pense pas que ca soit du "reverse engineering"
ce système n'était pas très performant.
Pour le branchement c'est très simple 3Dir et 3 Clock au niveau TTL.

Ok pour les step/dir, en effet c'est le grand classique. Le terme "reverse engineering" était un peu pompeux :oops: je l'appliquais pour la reconnaissance des circuits (ou des signaux) pour déterminer le brochage sur le sub-d 9 des drivers.

Pour la configuration, je conseille de la faire par soi-même avec le "stepconf wizard". Il va générer tous les fichiers de configuration fonctionnels puis, si nécessaire, il te faudra les ajuster à la main pour une configuration avancée. En bref ces sont des fichiers ASCII de config tout simples et bien documentés qui ne feront pas frémir les moustaches d'un linuxien de la vieille époque :wink: ! Mais comme dirait l'adage "RTFM" est obligatoire pour la configuration avancée!

Bonne soirée

Xavier
 
C

christian-tr

Apprenti
Voici le brochage du connecteur
Seuls les broches encadrées en rouge sont à brancher.
Sur le connecteur le 5V est produit par un 7805, il vaut mieux éviter de s'en servir.
Les signaux sont en 5V TTL.
les entrées références sont des switch NF au GND.

Désolé pour le qualité de la photo.

Cordialement

isel2.JPG
 
A

alegreandre

Nouveau
rebonjour tout le monde

Je vois ce schémas mais il m'inspire pas totalement.

Si j'ai bien compris j'achète un connecteur (DIN41612 64/96) mâle et je branche dessus les fils correspondant à la photo.

Mais quel fil ? et ensuite il faut l'autre partie qui vas sur l'ordi (port parallèle)???

Excusez moi de mon ignorance en électronique!

Merci
cordialement

André
 
C

christian-tr

Apprenti
Je ne connais pas EMC2, d'autres pourront peut-être t'aider pour le schéma de raccordement.

Comme il n'existe pas de DIN41612 en mâle a souder fil a fil, il faut prendre un connecteur a souder sur carte. Les sorties sont a 90.
(il existe une série inversée mais la numérotation ne correspond pas, A et C inversés)

A mon avis il faut un minimum de notions électroniques pour entreprendre ce travail.
Cordialement
 
A

alegreandre

Nouveau
Merci donc pour le schémas


Cordialement
André

ps: Je ne connais pas grand chose en électronique mais je peux me faire aider.
 
X

xi

Apprenti
Eponyme-le a dit:
Avec un ami nous avons remis en marche une vieille fraiseuse CharlyRobot. Si ton boîtier de commande est le même, il suffit, comme le dit horsot, de remplacer la carte RS232 par une liaison directe depuis le port parallèle vers le connecteur de fond de panier. Je n'ai pas le brochage sous la main mais si tu nous fournis des photos de la machine et du boîtier de commande alors je peux le récupérer. Je pourrais également t'envoyer le fichier de configuration de la machine.
Pour info, je suis l'"ami" qui a la charlyrobot qui fonctionne avec EMC2 ... voir ma présentation pour plus de détails !
 
P

pierrem

Apprenti
Bonjour

j'ai une carte de commande isel que je souhaite remplacer pas une carte interface pour port parallèle selon le schéma ci dessus
pas contre je ne sait pas si la carte que je souhaite remplacer est la même que celle sur laquelle vous avez fait la modif
la carte est visible au lien ci dessous c'est la même que celle que je possède
/files/capture_783.png

la carte peut elle être supprimée et remplacé par celle que vous avez fait ??

merci d'avance

Pierre
 
X

xi

Apprenti
Bon, comme promis, j'ai mis le temps, mais voilà le schéma de la carte interface port parallele pour ma charlyrobot. J'ai le meme rack que celui d'"alegreandre", et la carte interface se met à la place de la carte à microprocesseur (elle la remplace et elle commande directement les cartes de puissance).

Voilà les images :
de_moteur_et_carte_microprocesseur_charlyrobot_297.png

(A gauche : le brochage d'une carte de puissance (inutile) et a droite le brochage de la carte à microprocesseur (connecteur du fond de panier sur lequel va se brancher notre nouvelle carte)

ema_carte_interface_port_parallele_charlyrobot_777.png

(schema de ma carte d'interface)

ce_port_parallele_connecteur_41612_charlyrobot_173.png

(correspondance des broches entre le port parallele et le connecteur du fond de panier. C'est en rapport avec l'image precedente)
 
A

alegreandre

Nouveau
schéma charlyrobot

:-D Merci beaucoup Xi.

Je vais tester le branchement.

Je te tiens au courant.

André
 
P

pcng

Apprenti
Avec un ami nous avons remis en marche une vieille fraiseuse CharlyRobot. Si ton boîtier de commande est le même, il suffit, comme le dit horsot, de remplacer la carte RS232 par une liaison directe depuis le port parallèle vers le connecteur de fond de panier. Je n'ai pas le brochage sous la main mais si tu nous fournis des photos de la machine et du boîtier de commande alors je peux le récupérer. Je pourrais également t'envoyer le fichier de configuration de la machine.


Bonjour Jai un problème un peux similaire à vous

J’ai reçu une charlyrobot et je voudrai le connecter à un pc Windows XP avec le logicielle mach3fr auriez-vous un schéma électrique pour remplacer la carte RS232 par une liaison port parallèle vers le connecteur de fond du rack J’ai mis des photos sur le poste que J’ai fait un grand merci

https://www.usinages.com/threads/connexion-entre-fraiseuse-et-pc.106738/

Rack ar.JPG


rack av.JPG
 
Haut