Ma Deckel FP4NC [ Retrofit ] COPEAUX!!!!!!

  • Auteur de la discussion Auteur de la discussion bendu73
  • Date de début Date de début
  • Tags Tags
    deckel
Oui je viens de vérifier aussi,
l'axe est bien sélectionné "is-selected" mais ça n'est pas répercuté dans la fenêtre contrôle manuel (F3)
qui reste autonome et fonctionnelle
les autres commandes halui.jog doivent marcher aussi d'une façon indépendante, mais pas avec un codeur de manivelle
seulement avec des valeurs fugitives comme une joystick
Il faut passer par une autre voie, plus directe sur les canaux axis ça été fait avec les manivelles de matt
faut que je retrouve ...
 
Test avec Gmoccapy, interface intéressante. Mais j'ai eu des latences au niveau de l'activation de la lube et sens de rotation moteur.
La j'ai eu emballement du moteur X qui à foncé sur la buté extrême, peur...

J'ai voulu tester les jog
  • gmoccapy.jog-x-plus

  • gmoccapy.jog-x-minus
Mais ils mettent une erreur, ils n'existent pas, alors que l'on peut les voir dans halmeter.

Je vais revenir sur Axis.
 
Oui j'ai essayé ça :
net mpg-x axis.0.jog-enable <= "pin mesa"

Mais il me dit que le lien est déjà fait entre axis.0.jog-enable et mpg-x
Je pense qu'il "parle" des boutons sur Axis, ils ne peuvent pas être sur la même sortie.

Edit: c'est résolu mais rien ne se passe, j'ai bien mon axis.0.jog-enable en true mais il n'est pas selectionné dans axis... grrrrrrrrrr
Voilà, il faut bien passer par cette voie axis.N.jog qui est complètement indépendant de celle dans le menu
axis qui continue à marcher dans son coin.

http://linuxcnc.org/docs/html/examples/mpg.html
 
Mais elles ne s'affiche pas dans Axis??
Moi tant que j'ai mon selecteurs d'axe ( 3 pos) et mes deux bouton d'avance + et -. ça me va.
 
Voici ma manivelle, qui est peut être grillée car j'ai branché le +5 et le gnd au borne +5 et B (je sais plus dans quel sens)

upload_2017-8-4_17-20-22.png

upload_2017-8-4_17-20-42.png

upload_2017-8-4_17-21-1.png
 
Peux tu la tester avec un arduino ou un truc du style?
Si cela fonctionne comme un codeur rotatif, tu cherches un code tout fait et en avant (si t'as un arduino sous la main...)
 
il y a un circuit intégré en sortie, faut voir la référence .
avec une seule voie tu n'as pas de décodage X 4 donc il faut choisir le counter-mode 1
pour ne décoder qu'une voie et affecter 1 ou -1 au scale pour configurer le sens.
Si dans axis , il y a des indicateurs qui ne sont pas accessible ou mise à jour
quand il y a une action indépendante, ben c'est comme ça, les sources sont public, tu
peux les réécrire comme Tormach. Ou rajouter des indicateurs, comme les erreurs de
poursuite.
Axis est conçu pour un PC avec écran clavier souris

Ici avec Gmoccapy
(à 3.43 retour slider d'un pot dans gmoccapy)
 
Dernière édition:
Bonjour,

Je vais essayer de modifier mon clavier en branchant mes boutons de pupitres en parallèle dessus, à moins qu'il soit possible d'assigné un bouton (input mesa) en touche de clavier.
Sinon je renonce à ces boutons et comme le dis Bruno, j'utilise le clavier ( je collerais des indications sur les touches ).

Concernant la manivelle, elle fera bouger l'axe sélectionné dans axis?
 
Bonjour,
il faudrait faire l'inventaire des commandes externes qui sont reprises graphiquement dans axis. Il ne doit
pas y en avoir beaucoup finalement car beaucoup d'interfaces sont recréés dans la fenêtre libre à droite avec du
pyvcp.
Ici avec une xhc hb04 on voit bien que la fenêtre à gauche est inerte quand il passe au pendant

matt07600 qui a passé toute sa console de realmeca en parallèle (avec un arduino et l'aide de cncserv)
a peut être l'expérience de ce qui est repris à l'écran ? il semble qu'il soit sous axis encore.
https://www.usinages.com/threads/retrofit-dune-realmeca-fd-avec-linuxcnc-mesa.100918/
Il est passé sous arduino pour travailler en liaison série et économiser des entrées de la 7i77.

Ici branchement d'une manivelle
https://forum.linuxcnc.org/27-driver-boards/27730-how-to-wire-mpg-on-7i77?limitstart=0
 
Bon avec le test de deux bouton push:
bouton 0 sur halui.joint.0.select
bouton 1 sur halui.joint.1.select

Halmeter me dis bien que tel ou tel axe est sélectionné sous
halui.joint.0.is-selected ou halui.joint.1.is-selected

c'est réactif à cela mais je n'ai pas encore de mouvement réel.
 
VICTOIRE!!!!

J'ai réussis à faire fonctionner mon bouton de selection et mes +/-!!!!!!!!!!!!!!!!!!!!!! :hang:
Le truc qu'il manquait c'est le halui.jog-speed car sur halmeter il était à 0, vitesse nul donc ça ne pouvait pas avancer. Je l'ai mis à 10, 100...
Je vais donc tenter d'accorder cette valeur sur mon potentiomètre. Par contre pas sur que j'arrive à lier cette valeur à la valeur d'avance programme ( qui est très pratique à réguler avec un potentiomètre)
Je vais aussi convertir mon bouton rotatif 3 position ( qui est en fait 2 interrupteur derrière) en 3 position logique.


EDIT :

Le bouton select est OK!!! reste le potard avec un float, ça va pas être simple dutout!!

 
Dernière édition:
Quelle est l'utilité de ces 2 commandes qui me semblent redondentes ?
net jog-x => axis.0.jog-enable
net jog-x => halui.joint.0.select

Si tu supprimes l'une ou l'autre quel est la conséquence ?
j'ai tendance à penser que les commandes halui sont vraiment indépendantes et autonomes
de tout interface graphique. Il y a des halui.jog.0 .... aussi
Donc pourquoi passer par axis avec axis.0.jog-enable ? si toute les commandes halui nécessaires
sont bien sorties ?
 
Les axis ne servent à rien, exacte (peut être par la suite pour ma manivelle??).

Je ne trouve pas par contre dans Halmeter ma "velocity" (les deux curseurs dans Axis).

halui.max-velocity.value me donne bien mon "50" inscrit dans le ini.

Je parviens a avoir la valeur de mon potentiomètre. Bien sur dans halmeter à la pin j'ai un true, moi j'aimerai une valeur :smt017
 
Dernière édition:
axis ne sert pas, ah tant mieux, il y a une logique. Donc halui est une voie d’accès à hal complètement
indépendante et qui permet de tout faire finalement.
axis.0.jog ... etc ce sont plutôt des options d'axis, qui permettent de brancher quelques bidules hard
en complément d' axis de base: ecran-clavier-souris

Pour les entrées analogiques de la 7i77
https://forum.linuxcnc.org/38-gener...an-i-read-the-analog-input-0-3-from-mesa-7i77
C'est autre que 0 suivant la doc de la 7i77
En revanche, je n'ai pas d'info sur la dynamique de l'ADC de ces entrées: tension max et résolution.
la valeur en float, tu lui appliques un scale par une multiplication avec un offset éventuel, avant de la brancher "net" sur le paramètre
que tu veux moduler
Donc loadrt ...
http://linuxcnc.org/docs/2.7/html/man/man9/scale.9.html
des lignes setp pour fixer le coefficient multiplicateur et l'offset éventuel

Et quand on regarde le code de ce composant scale, c'est la qu'on se dit que c'est
du niveau arduino et qu'on se mettrait bien à bidouiller ses propre composants
http://git.linuxcnc.org/gitweb?p=li...4;hb=014b9d0fe1caaa2a7594fd946844423a702231f2
 
Ok Bruno donc,
J'ai trouvé les Analog in put, mais je pensais que l'ont pouvais avoir toute les entrée... seulement 4 ( bon ça me suffit ).
C'est exclusivement les input 0,1,2, et 3, je vais devoir revoir mon câblage aie!
La ces entrés sont sur les endstop, donc la j'ai des valeur propres à mon alimentation 24V, (sa oscille entre 24 et 28 très rapidement).
A voir avec mon potentiomètre, je vois cela demain!!!
 
Ahhhh

J'ai retrouvé cela, que tu avais dis Bruno :

Pour exploiter les entrées analogique, il faut choisir le process data 1 ou 2 avec le dernier
paramètre de cette ligne majeur (fichier de config.hal)

loadrt hm2_pci config=" num_encoders=3 num_pwmgens=0 num_stepgens=0 sserial_port_0=000xxx"

sserial_port_0=100xxx ou sserial_port_0=200xxx

dans ce cas, les quatre inputs :

hm2_5i25.0.7i77.0.0.input-00
hm2_5i25.0.7i77.0.0.input-01
hm2_5i25.0.7i77.0.0.input-02
hm2_5i25.0.7i77.0.0.input-03

Deviennent des entrées analogiques "rustiques" d'une résolution de 8 bits (256 incréments de niveaux)
à +/- 5 % avec une pleine échelle si la tension externe est de : 36.3 V. toi tu as 24 V
je n'ai trouvé aucun exemple de config dans la nature peut être en cherchant dans le darknet.

Dans config.hal il faudra d'abord chargé ces 4 lignes , appliquer un potar successivement sur les 4 entrées et voir
avec halmeter si, miracle, on a autre chose qu'un état logique, FALSE ou TRUE ...
normalement ce sera un float

net potar0 hm2_5i25.0.7i77.0.0.input-00
net potar1 hm2_5i25.0.7i77.0.0.input-01
net potar2 hm2_5i25.0.7i77.0.0.input-02
net potar3 hm2_5i25.0.7i77.0.0.input-03

Si tu passes au process data 3
sserial_port_0=300xxx
En plus des 4 entrées analogiques pour potar
tu as 2 voies encodeur pour 2 MPG avec un comptage en mode 1 donc TRUE donc sans X4 .
hm2_5i25.0.7i77.0.0.input-16
hm2_5i25.0.7i77.0.0.input-17

hm2_5i25.0.7i77.0.0.input-18
hm2_5i25.0.7i77.0.0.input-19

avec des entrées en 5 V (pas en 24)

Je viens de trouver un peu de lecture doc ici sur la 7i77 (même le rédacteur est un peu paumé)
http://linuxcnc.org/docs/2.7/html/man/man9/sserial.9.html#7i77
en plus du manuel mesa ...

Génial!

Donc okay pour changer le mode de la 7i77 il faut changer le sserial_port_0=000xxx :
mode 1 : sserial_port_0=100xxx
mode 2 : sserial_port_0=200xxx
mode 3 : sserial_port_0=300xxx

Chaque mode :

upload_2017-8-10_0-8-6.png


Et donc avec les input 16/17 et 18/19 j'ai de quoi branché ma Manivelle? car la je l'avais branché sur l'entré de l'encoder 4 (idem à ceux des règles). Cela expliquerai peut être pourquoi j'ai pas les deux sens de rotations ( ou alors c'est que ma manivelle est effectivement grillée...).
je vois pas trop la différence entre le mode 1 et 2...

Edit :

Le potard va être pour réglé l'avance de jog, mais j'aimerai aussi lui assigné une autre fonction, à savoir l'incrémentation de ma manivelle ( 0.001, 0.01, 0.1, 1 ou autre...). Est t'il possible que entre une certaine valeur de la valeur float de u potentiomètre il soit assigné une sortie.
ex:

Si 0<Potard<5
alors incrémentation = 0.001
Si 5<potard<10
alors incrémentation = 0.01

Edit2 :
Je crois que c'est la fonction limit :

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

Pins:
limit1.N.in float in
limit1.N.out float out

paramètres:
limit1.N.min float rw (default: -1e20)
limit1.N.max float rw (default: 1e20)

Ou plutôt la fonction "comp" :

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

Pins:
comp.N.in0 float in
Inverting input to the comparator

comp.N.in1 float in
Non-inverting input to the comparator

comp.N.out bit out
Si in1 > in0, alors Vraie, Output = 1

Il me faut réaliser 3 ou 4 truc comme cela pour avoir mes 3 ou 4 possibilité d’incrémentation de manivelle.
 
Dernière édition:
Le mode 1 ou 2 doit justement être en relation avec la tension d'entrée (max) de ces entrées analogiques.
mode 2 field voltage, le 24 V externe .
Toutes tes sensibilités de manivelle doivent finir par sortir par un seul canal, donc elles seront
sélectionnées par un multiplexer, la famille des composants mux. la sélection se fait par un port
parallèle binaire. le mux8 par exemple a 3 entrées binaires à piloter.
La démarche habituelle est de monter un commutateur rotatif 8 positions 3 bits donc branché sur
3 entrées digitales de la 7i77.
Si tu veux le faire par le potentiomètre, il faudrait synthétiser les fonctions d'un ADC parallèle 3 bits
donc avec au moins 7 comparateurs et une logique 8 vers 3

http://www.hardwaresecrets.com/how-analog-to-digital-converter-adc-works/6/

C'est typiquement un composant spécifique qu'on code soi-même:
Un comparateur à fenêtres, des tests qui vont configurer 3 sorties digitales
Tu pourrais transposer le même type de composant pour piloter la boite de vitesse

Sur un autre sujet, je me suis rendu compte que pncconf oublie un branchement relatif
à une boucle de vitesse entre le codeur et la pid ?

Pour chaque axe, il s'agit de ce branchement:

net x-vel-fb hm2_5i25.0.encoder.00.velocity => pid.x.feedback-deriv

A tester et comparer avec les paramètres PID et FF
cette boucle doit compléter, à mon avis, la boucle analogique indépendante du drive
ou la suppléer si elle est inexistante (boucle en courant uniquement).
 
Dernière édition:
hummm, je vois cela après que mon potentiomètre fonctionne avec l'avance.
C'est un "10 ka".
Entre la broche centrale et le gnd j'ai une valeur max de 4V environ mais au centre, puis ça chute à nouveau... bizarre.
Par contre Halmeter m'affiche toujours des mesure entre 24 et 27 quoique je face sur le potard.
 
A priori, ces entrées ont une résolution de 8 bits avec 36.3 V pour la pleine échelle !
le mode 2 activerait un entrées supplémentaire qui mesure en permanence la field tension
on aurait donc fieldvoltage, analog3, analog2, analog1 .
 
Si bien sur, mais je parlais de l' " entrées supplémentaire qui mesure en permanence la field tension".

Mon potentiomètre est bien branché sur mon entré 00 sur ma Mesa et donc en analogin00, mais la tension varie bizarrement :
Cela fait une courbe qui monte vite, puis qui redescend (au niveau de la tension). J'ai un pique au milieu puis ça rechute...

Et Halmeter m'affiche une valeur instable alors que j'ai des valeur fixe mesuré au voltmetre.
 
Dernière édition:
Super, j'arrive à stabilisé progressivement ma valeur avec la fonction lowpass avec un gain en descendant (la je suis à 0.005).

Par contre il est pas commun mon potentiomètre à avoir un point milieux, la valeur augmente puis redescend.
 
J'ai fais un gros pavé de programme pour ce potard, optimisation surement mais le potard fonctionne avec mes boutons d'avance. Ce que je reproche par contre c'est le temps que met la valeur pour attendre sa valeur propre. C'est un peu lent, je ne sais pas de quoi c'est du. Mais c'est déjà super!
Je vais peut être aussi changer ce potard :smt021

Je suis trop content!!! Merci Gaston pour ton aide (j'oublie pas les autres vous inquiété pas :heart:).
 
C'est un peu lent, je ne sais pas de quoi c'est du
A cause de ton low pass tout simplement il filtre tout, comme une variation brutale, à la hausse, comme à la baisse

Concernant ton potard, varie t il de la même façon quand il est débranché et que tu mesures la variation
de résistance avec ton multimètre ?
 
Oui! J'avais fait le test, c'est bien ça, avec une valeur de 0.001 c'est lent , avec 0.01 c'est très bien et les mouvements de la machine sont très bons. Je peux même faire varié la vitesse pendant le mouvement.
C'est top!

Je fais la mesure du potentiomètre tout à l'heure ;)
 
Test du potentiomètre sur une alimentation 12V. Marche très bien, j'ai bien une évolution de 0 à 12V.
bon alors à quoi c'est dû :7grat:

EDIT :
C'est dû encore une fois à mon dont pour me planter sur le câblage... Forcement si le potentielle entre les deux bornes est à 0, pas facile de sortir une valeur normal.
C'est réglé et j'ai mes bouton qui marche!!!!!!!

Reste plus qu'a faire la manivelle !
 
Dernière édition:

Sujets similaires

V
Réponses
12
Affichages
1 016
vibram
V
E
Réponses
1
Affichages
926
sodereco
S
B
Réponses
1
Affichages
207
Gillou 63
G
eclectique
Réponses
38
Affichages
1 991
eclectique
eclectique
pierremertus
Réponses
9
Affichages
18 457
tournele
tournele
Z
Réponses
2
Affichages
14 355
zo17300
Z
Dominobanjo
Réponses
41
Affichages
15 015
mvt
stef1204
Réponses
8
Affichages
790
tyio
Pinocchio
Réponses
0
Affichages
224
Pinocchio
Pinocchio
G
Réponses
41
Affichages
10 370
thierry74
thierry74

Sujets similaires

Retour
Haut