Mikron WF2/3DCM... encore un retrofit Linuxcnc/Mesa

G

gaston48

Compagnon
J'avais essayé en reconstituant l'info du tachy à partir de la vitesse mesurée à partir de la règle.
Oui, là on a constaté que ça yoyoter, merci encore pour ton essais .
Là tu penses que ça pourrai marcher avec non pas la vitesse mesurée mais celle commandée?
Ben de mon coté je pilote un servo DC avec codeur sans tachy.
Le drive est configuré en mode courant-couple, mais il a la possibilité d’être configuré en plus en mode vitesse avec donc une entrée tachy
que j'ai comme toi, simulé avec la dérivé du codeur.
He bien je n'ai pas trouver de réel différence de qualité d'asservissement avec ou sans tachy.
 
Dernière édition:
B

Bruno26

Compagnon
Je viens de faire l'essai. C'est completement instable même avec un gain du PID plus faible.
Au démarrage ça semble bon, pas d'oscillation, mais dès que je commande une vitesse ça se met à grogner fort et ça part vite en vrille.
Pourtant j'ai mesuré au voltmetre les sorties en utilisant l'info de l'encodeur rotatif, elles sont vraiment proches. A 1000mm/min 2.97v pour la commande du variateur et 3.1v pour l'info du tachy reconstituée.
J'ai du mal quand même à ne pas m'embrouiller avec les sorties analogiques et la valeur de "7i77.0.0.analogoutN-scalemax". Si j'ai bien compris c'est la valeur de 7i77.0.1.analogoutN qui correspond à une sortie de 10v. J'arrive pas à m'y faire, d'autant plus que finalement on ne peut pas visualiser la tension de sortie avec une pin de Linuxcnc.
 
G

gaston48

Compagnon
Je ne sais pas ou est exactement documenté ce paramétrage :smt076.
Tu as une réponse de PCW (de Mesa) ici:
https://forum.linuxcnc.org/49-basic-configuration/26796-mesa-7i77-output-scale

Avec la simple commande FF1 et P à 0 tu as le même comportement qu'avec la tachy-codeur ?

on ne peut pas visualiser la tension de sortie avec une pin de Linuxcnc.
Non Linuxcnc s’arrête au PWM, ensuite le +/-10 c'est le "convertisseur" de la 7i77. Le besoin d'un scope se fait vite
sentir.
 
Dernière édition:
G

gaston48

Compagnon
Je ne sais pas ou est exactement documenté ce paramétrage
Ah ça y est c'est ici, j'avais oublié, elle concerne tout ce qui est communication série des cartes filles et fpga que je ne
pratique pas avec la 5i20. il faut que je parcourt régulièrement la doc sinon j'oublie ...
http://linuxcnc.org/docs/2.7/html/man/man9/sserial.9.html
mais elle n'est pas à jour malheureusement ...

//// ***** CHECK ME ***** I’m not sure about the description on analogoutN-scalemax ////
 
B

Bruno26

Compagnon
Avec la simple commande FF1 et P à 0 tu as le même comportement qu'avec la tachy-codeur ?
Euh, je suis pas sûre de te comprendre. Tu me proposes de comparer quoi?

Une petite copie d'écran de halscope:
vitesses.png


En mauve, encoder.05.velocity c'est la vitesse vue par la règle. En vert, encoder.00.velocity c'est la vitesse vue par le codeur rotatif. On voit bien qu'il décroche (au dessus de 20mm/s)
J'essaierai comme tu me proposer de calculer différemment la dérivée.
 
G

gaston48

Compagnon
Euh, je suis pas sûre de te comprendre. Tu me proposes de comparer quoi?
ici # 148 avant de rentrer un peu de P tu as optimiser FF1, comparer les 2 valeur de FF1 avec et sans tachy pour
un régime équivalent du moteur
de calculer différemment la dérivée.
c'est le composant ddt , à priori, c'est le même algo, mais ça confirmerait.
et concernant le décodage de quadrature, si tu passes en X1 ou lieu de X4 en ajustant le scale en proportion ceci pour baisser la fréquence max.
Mais ça me dit toujours pas la fréquence max du rawcount
résolution du codeur x4 x rps max du servo moteur, sachant rapport accouplement moteur-vis, pas de la vis, avance max mm/s max (50)
 
Dernière édition:
B

Bruno26

Compagnon
et concernant le décodage de quadrature, si tu passes en X1 ou lieu de X4 en ajustant le scale en proportion
Je crois qu'il n'existe pas ce paramètre avec hostmot2, en tout cas pas trouvé dans "configuration de hal".
Je pense qu'il faudra que j'essai avec un codeur avec moins de résolution, ou peut-être en mettant le codeur sur la vis plutot que sur le moteur, ça ferait déjà moins d'impulsions à compter.
Je ne connais d'ailleurs pas exactement le rapport de démultiplication qu'il y a entre le moteur et la vis. J'ai réglé encoder_scale pour que position et vitesse soient cohérentes entre le codeur et la règle (qq centièmes d'écart sur une grande course).
Avec encoder_scale =88000, et à 50mm/s ça fait 4.4MHz.
 
G

gaston48

Compagnon
Si si c'est une ligne de ce type:

hm2_5i25.0.encoder.00.counter-mode 0 tu passes mode 0 à mode 1

http://linuxcnc.org/docs/2.7/html/man/man9/hostmot2.9.html

4.4 Mhz ! avec un servomoteur à 3000 tr/mn max soit 50 tr/s ça nous fait un codeur de résolution
nominale de 22000 ? c'est pas tout à fait adapté, souvent c'est un 1000 p/tr donc 4000 x 50 = 200 Khz
Une régle heidenhain interpolé avec précision, c'est 0.1 microns par pulse soit 50 / 0.1e-3 = 500 Khz
 
B

Bruno26

Compagnon
(bit r/w) counter-mode

Set to False (the default) for Quadrature. Set to True for Step/Dir (in which case Step is on the A pin and Dir is on the B pin).

C'est la même chose que encoder.N.x4-mode ?

4.4 Mhz ! C'est peut-être bien là qu'il est le problème.
Ce codeur n'irait pas non plus?
https://www.ebay.fr/itm/Hot-Encoder...e=STRK:MEBIDX:IT&_trksid=p2060353.m1438.l2649

Response frequency: 0-20KHz Je sais pas si ça correspond vraiment à la fréquence maxi des impulsions.
 
G

gaston48

Compagnon
Dans le composant "encoder" il y a effectivement cette autre ligne. Peut être pour une compatibilité
avec d'anciennes versions. Mais elle n'est pas reprise dans la rubrique encoder du composant hostmot2

Le comptage est fait sur la voie A et pour discriminer le sens, à chaque front montant de la voie A on regarde
l’état de la voie B d'ou les termes "step" "dir" qui sont ici des entrées.

20 Khz c'est la fréquence max d'une voie je pense, ce qui nous ferait 2000 tr/mn max. Ce n'est pas
beaucoup, mais on en a peut être pour son argent aussi. A voir si dans d'autres résolutions c'est
toujours 20 Khz ou toujours 2000 tr/mn
 
Dernière édition:
B

Bruno26

Compagnon
Une petite avancée :-D
Un des 2 soufflets de l'axe X:
DSC07392.JPG


Plus facile à faire que celui du Z. Pas de couture à la main, l'angle au milieu du soufflet est assez faible pour tout faire à la machine.
J'ai dû faire quelques copeaux pour faire des pièces pour maintenir le soufflet de chaque côté. Vu la largeur de la table, j'ai bridé mes pièces le plus en avant possible pour ne pas risquer de mettre des copeaux là où il ne faut pas.
Je me suis amusé aussi à faire du copeaux dans de la ferraille, avec une passe de 5 mm de profondeur avec une fraise HSS d'ébauche de 20mm de diamètre, aucune vibration, ça rentre dans du beurre :-D:-D. Ca va me changer de ma petite Crouzet!

J'ai essayé par contre de changer le mode de comptage pour le codeur de mon axe Z, mais ça ne change rien. Je me commanderai un petit codeur de base sur ebay.

A+
 
G

gaston48

Compagnon
mais ça ne change rien.
Le comptage n'est pas divisé par 4 ? ou cela ne recule pas la limite du signal vitesse ?
Si on calcule à part le signal de vitesse avec le composant ddt, halmeter indique le valeur
de cadencement du thread de ce composant et donc de sa limite de calcul.
 
B

Bruno26

Compagnon
Non, ça ne change absolument rien. J'avoue que je n'ai pas essayé avec le composant ddt. Je commanderai un codeur avec moins d'impulsions par tour quand j'y penserai...
Pour l'instant, trop impatient de me servir de la machine. Il faut juste que je finisse vite fait bien fait le dernier soufflet.
Maintenant il faut que j'installe un 4ème axe. J'ai eu avec la fraiseuse un gros diviseur Spirsin, du bon gros matos bien lourd.
J'ai déjà le driver, il faut que j'y trouve une place dans l'armoire. Pour son raccordement, il y a déjà des fils en trop entre le pupitre et l'armoire qui vont être bien utiles. Il sera branché sur la 7i77 sur des sorties de base, avec donc des impulsions générées par Linuxcnc plutôt que par la 5i25, si j'ai bien compris. Pas besoin d'être bien rapide pour ce 4ème axe.
A+
 
G

gaston48

Compagnon
Non, ça ne change absolument rien.
C'est quand même divisé par 4 ou pas ?
Par ce qu’après, on peut facilement faire une division supplémentaire avec quelques composants sur une plaque d'essais
https://www.sonelec-musique.com/electronique_bases_diviseurs_frequence.html

Il sera branché sur la 7i77 sur des sorties de base, avec donc des impulsions générées par Linuxcnc plutôt que par la 5i25,
Non, ce n'est pas une bonne idée, les GPIO universelles ne sont pas rapides (1 Khz max je pense)
Si c'est du step/dir , il faut passer par une config qui utilise le deuxième ports DB25
avec le bon firmware, 7i77 + la bonne carte
c'est l'exemple de config donné dans le site de eusurplus sur leur wiki
 
Dernière édition:
B

Bruno26

Compagnon
Oui, je me doute bien que ça n'est pas le top en passant par la 7i77, mais je n'ai pas besoin que ce soit rapide. Je veux juste pouvoir usiner des tout petits pignons et usiner les 4 faces d'une pièces sans la démonter.
A moins que j'essaye comme tu dis mais avec une simple Bob à 2 balles sur le 2ème port db25. C'est ce que j'ai sur mon tour avec des pas à pas.
 
B

Bruno26

Compagnon
C'est quand même divisé par 4 ou pas ?

Tu me mets le doute là. Je devrai avoir encoder_scale 4 fois plus petit? Il me semble que c'était le cas pour avoir la même vitesse calculée, mais à tout essayer en même temps je m'y perd un peu...
 
G

gaston48

Compagnon
Je veux juste
C'est dommage, avec un codeur sur la broche, tu asservies les 2 axes broche et diviseur
et tu fais du taillage par génération avec fraise mère (très accessible en RPC ou ailleurs maintenant)
 
B

Bruno26

Compagnon
J'ai rejeté un oeil à la doc de la 7i77:

MAXIMUM ENCODER COUNT RATE The 7I77 uses multiplexed encoder signals to save interface pins. The multiplexing rate will determine the maximum encoder count rate. Default multiplexing rate with HostMot2 firmware is ClockLow / 8,or approximately 4 MHz with 5I25 or 6I25 FPGA host interface cards, giving a resolvable count rate of 2 MHz. The Multiplexing rate can be increased if desired but high multiplex rates will require short cables between the FPGA controller card and the 7I77 due to signal integrity and time-of-flight considerations. Maximum practical multiplex rate is approximately 12 MHz (and 6 MHz count rates).

Elle est là la limitation pour mon "codeur-tachymetre", le multiplexage entre la 5i25 et la 7i77. C'est pour ça que la façon de compter ne change rien, la limitation est avant.

J'ai failli faire une grosse bétise, ça le fait pas une sortie de la 7i77 en 24v sur les entrées step/dir de mon driver...
Donc je vais bien passer par une Bob à 2 balles sur le 2ème port db25.
 
G

gaston48

Compagnon
Exact, c'est peut être ça d'ou ma préférence pour moins de multiplexage avec la 5i20 ou 23
et les connecteurs à 50 pins.
Faire un diviseur hard en sortie de codeur, c'est pas très compliqué et ça pédale.
Voir le lien que je t'ai fourni en attendant que tu reçoives le codeur de rpc
quelques composants sur ebay, tu les as vite.
Il y a le fait aussi que ton codeur n'est peut être pas fait pour tourner à 3000 rmp
les hautes résolutions sont plutôt monté sur les axes lents. Il n'y a que
le scope qui peut le dire ou la doc heidenhain

C'est le firmware 5i25+5i77+7i78
sur le le db25 P2 réservé à la 7i78, tu as directement des sorties step dir et PWM
 
Dernière édition:
B

Bruno26

Compagnon
Merci gaston, tu me maches le travail là!
Par contre je n'ai pas ce qu'il faut sous la main pour relier ce 2ème port à une db25.
C'est ce truc là qu'il faut?
https://www.amazon.fr/StarTech-com-...UTF8&qid=1513113638&sr=8-5&keywords=port+db25

Donc je vais essayer dans un premier temps avec le port parallèle. Ca me permettra déjà de voir comment il faut configurer les fichiers hal et ini.
Je viens de lire 2 sujets, où un certain... gaston48 donne les solutions :-D
https://www.usinages.com/threads/linuxcnc-parametrage-4-eme-axes.103599/
https://www.usinages.com/threads/resolu-configuration-cnc-4-axes-xyzb.74234/

A+
 
G

gaston48

Compagnon
Ouh la, je ne souviens plus de ces interventions :shock:

c'est un câble de ce typa là effectivement et ensuite l'idéal, une carte de protection
de ce type là:
http://www.shop.cncmonster.de/LinuxCNC/Interface-Karten/Breakoutboards/7i75-Breakout-Board::356.html
une bob à 2 balles doit fonctionner aussi si tu identifies bien des buffers qui protégerons les entrées et
les sorties. La 5i25 est quand même fragile à des surtensions. Sur le forum linuxcnc, des membres qui
constate avoir cramer des entrées, ça existe.
 
B

Bruno26

Compagnon
J'ai une première config faite avec stepconf, donc juste pour essayer le diviseur avec le port parallèle, une bob de base, et un driver certainement sous-dimensionné (7A maxi alimenté en 64VAC). J'arrive à une douzaine de seconde pour un tour complet du diviseur.
Largement suffisant pour ce que je veux faire. Mais il faut que je le démonte pour le nettoyer complètement. Il tourne clairement plus facilement d'un côté que de l'autre.
V'la la bête, bien crado:
spirsin.JPG
spirsin2.JPG
 
B

Bruno26

Compagnon
J'avais fait ma config ci-dessus avec stepconf, pour commander uniquement le diviseur par le port parallèle, pas le reste de la machine.
Aujourd'hui j'ai essayé de faire une config complète, les 3 servos via la 5i25 et7i77 plus le diviseur sur le port parallèle.
Ben, ça marche pô. A priori on ne peut utiliser le port parallèle en plus d'une carte Mesa que pour des entrées/sorties de base, pas pour commander un axe de plus:
http://www.vdwalle.com/Norte/LinuxCNC Pncconf.htm
"It also supports I/O on max 3 parports, though you can't directly control an axis using the parport (it's for I/O like coolant etc)"
Dommage, j'avais amélioré ma config et j'étais pas loin des 8tr/min donné par la doc du diviseur (merci wapiti).

Le connecteur pour brancher un 2ème port db25 sur la 5i25 j'en ai un dans un autre PC, celui qui me sert pour mon tour où le premier port avait un peu grillé cet été avec ces Rontudju d'orages :mad:. Je vais aller lui piquer.

A+
 
G

gaston48

Compagnon
A priori on ne peut utiliser le port parallèle en plus d'une carte Mesa que pour des entrées/sorties de base, pas pour commander un axe de plus:
je pense que tu peux, mais il faut bien chargé l'intégralité des composants qui gère le port //
il faut faire une config port // uniquement et bien identifier ce que tu dois copier coller dans la config mesa.
de même que tu peux installer une deuxième 5i25 par exemple et utiliser un deuxième PCI.
dans ton cas tu utiliserais un PCI et un port //
 
B

Bruno26

Compagnon
Salut,
J'ai fini par trouver une config qui marche, donc avec les 3 servos sur la 7i77 plus le 4ème axe sur le port parallèle. Je ne sais pas où était mon erreur. Je suis reparti de ma config issue de stepconf avec juste le port // et j'y ai rajouté tout ce qu'il y avait dans mes fichiers ini et hal de ma config avec les servos. L'ordre des instructions dans ces fichiers n'a pas d'importance, à part peut-être les loadrt avant le reste?

Dans mes débuts avec Linuxcnc, je te disais, gaston, que je n'arrivais pas à afficher la vitesse courante "vel" en dessous des visus des axes. J'ai fini par trouver, c'est simplement parce que l'option "afficher les offsets" était cochée et on ne peut visiblement par avoir les 2 d'affichés en même temps...

A+
 
B

Bruno26

Compagnon
Bonjour à tous,
Je déterre mon post. Petit problème sur ma Mikron. La pompe hydraulique qui permet le desserrage de l'outil fait des siennes.
Pendant l'hiver la pompe est un peu faiblarde et il faut attendre un peu au démarrage pour pouvoir monter un outil. Mais maintenant, la pompe ne s'arrête plus de tourner. J'arrive quand même à monter ou enlever un outil, mais la pompe tourne en permanence et fait parfois des bruits (sifflements) pas vraiment de bonne augure.
J'ai essayé de diminuer la pression en réglant le pressostat mais ça n'y fait rien.
Je pense que je suis bon pour un démontage complet.
Je suis preneur de tout conseil quant à l'entretien de ce genre de pompe. Je n'ai aucun matériel particulier pour contrôler une pression là dessus.

P1040347.JPG


A+
 
G

gaston48

Compagnon
Salut :-D !
C'est une version avec accumulateur, normalement la pompe est toujours sous tension pour maintenir une pression
à l'entrée de cet accumulateur. En fonction de ce que tu tires, elle se met en route pour maintenir une pression dans l'accu.
Première chose, rechercher une petite fuite permanente et là ça peut se produire au niveau du vérin de la broche
horizontal, ça fuit dans le carter et on ne voit rien de l'extérieur.

edit : non ça ne peut pas etre ça dans un premier temps ... il faut manœuvrer l'electro-vanne pour ça

Des soucis avec les huiles qui gomme avec le temps et perturbe les tiroirs, clapet, pressostats etc ...

Problème de groupe ici aussi :
 
Dernière édition:
B

Bruno26

Compagnon
J'ai commencé le démontage. Pour l'instant j'ai juste pu vérifier que la pression ne chute pas même après avoir arrêté la machine depuis un certain temps. Il y a une petite molette pour faire chuter la pression et on entends bien l'huile circuler jusqu'à ce qu'il n'y ai plus de pression.

A+
 
B

Bruno26

Compagnon
Bon, j'ai tout démonté jusqu'aux petit engrenages de la pompe. Ils ont un peu triste mine et porte les traces de plusieurs dizaines de milliers d'heures. J'ai changé le filtre en entrée de la pompe qui était bien crado, ça lui fera pas de mal.
Mais le problème ne venait pas de là. C'est simplement le microswitch du pressostat qui ne coupe pas comme il faut le circuit. Quand la pression est atteinte il reste environ 400ohms entre les contacts qui devraient être ouverts. Apparemment ça suffit à enclencher le relais qui commande la pompe.
En enlevant ce microswitch du pressostat, on voit le "piston" qui se déplace quand la pression monte. A priori la pompe devrait bien atteindre les 80bars mini indiqués dans la doc de la machine. Le sifflement, c'est quand la pression monte trop haut, il doit y avoir un limiteur de pression.
Pas sûr que je trouve à changer que ce micro switch, il faudrait exactement les mêmes dimensions pour que ça marche.
A+
 
P

PL50

Compagnon
Bon, j'ai tout démonté jusqu'aux petit engrenages de la pompe. Ils ont un peu triste mine et porte les traces de plusieurs dizaines de milliers d'heures. J'ai changé le filtre en entrée de la pompe qui était bien crado, ça lui fera pas de mal.
Mais le problème ne venait pas de là. C'est simplement le microswitch du pressostat qui ne coupe pas comme il faut le circuit. Quand la pression est atteinte il reste environ 400ohms entre les contacts qui devraient être ouverts. Apparemment ça suffit à enclencher le relais qui commande la pompe.
En enlevant ce microswitch du pressostat, on voit le "piston" qui se déplace quand la pression monte. A priori la pompe devrait bien atteindre les 80bars mini indiqués dans la doc de la machine. Le sifflement, c'est quand la pression monte trop haut, il doit y avoir un limiteur de pression.
Pas sûr que je trouve à changer que ce micro switch, il faudrait exactement les mêmes dimensions pour que ça marche.
A+
Salut, pourquoi tu n'installe pas un manocontact sur circuit hydraulique qui pilote le moteur électrique, comme sur un sur-presseur?
A+
 

Sujets similaires

Flavccw
Réponses
12
Affichages
2 933
jeanmichel1946
jeanmichel1946
P
Réponses
12
Affichages
2 075
pro-ms
P
O
Réponses
16
Affichages
3 670
olivthehaas
O
M
Réponses
8
Affichages
4 238
Mandrak
M
M.O.I
Réponses
8
Affichages
9 565
bocopo67
bocopo67
B
Réponses
193
Affichages
21 587
mvt
Laurent_CNC
Réponses
2
Affichages
2 285
Laurent_CNC
Laurent_CNC
T
Réponses
7
Affichages
2 273
tapedessus
T
V
Réponses
9
Affichages
1 866
vibram
V
Haut