automate et servomoteur , pb configuration

T
terminator
Compagnon
9 Janvier 2018
1 021
  • Auteur de la discussion
  • #1
Bonjour
Afin de pouvoir commander des servomoteurs avec un automate Schneider et une carte TSX CAY22 de commande d'axe , je teste le materiel suivant:

processeur TSX 57202
carte TSX CAY22 + carte entrées sorties tor
servo moteur avec codeur incremental 2048x4 et servopack Yaskawa
la carte tsx22 est configurée en axe indépendant borné
je programme sous PL7 PRO V4.4 en Language Ladder

j'ais branché et configuré tous ca correctement (je pense) et pour l'instant cela fonctionne bien .
J'arrive a programmer plusieurs mouvement/déplacement avec SMOVE .

Mon probleme pour le moment est que je dois avoir une sortie activée a la fin de chaque mouvement afin de valider ces déplacements pour la suite du programme .
La fonction SMOVE permet d'activer une sortie reflexe auxiliaire Q0 sur la vois 0 en écrivant " SMOVE %CH2.0(18,90,9,4000,100,16#0210) "

Cela fonctionne bien mais comment la désactiver apres traitement car elle reste activée ???
J'ai bien trouvé une doc mais j'ai bien du mal a comprendre

merci pour votre aide !

desactivation qo.jpg
 
Dernière édition:
petit_lulu
petit_lulu
Compagnon
11 Janvier 2015
690
gers
salut,
je n'ai jamais programme de mouvement avec PL7 mais juste une idee, si tu copie cette sortie dans un bit et que tu gere le front montant, ca ne fonctionnerai pas? (si le bit passe a 0 tout seul lors du mouvement bien sur)
 
T
terminator
Compagnon
9 Janvier 2018
1 021
  • Auteur de la discussion
  • #3
bonjour
oui peut etre mais comment faire ?
bricoler en ladder des contacts , relais , tempo , compteur , etc ok pour moi
mais quand il faut toucher a " si tu copie cette sortie dans un bit et que tu gere le front montant " la je cale !
 
petit_lulu
petit_lulu
Compagnon
11 Janvier 2015
690
gers
mince, c'est trop petit:
Image1.jpg


pour l'avoir, tu clique sur "variables" dans l'arborescence puis en haut a gauche de la fenetre tu choisi "E/S" puis ton module dans "adr" et tu as toutes les adresses du modules.
dans les variables il y en a une avec le nom "%CH2.0" et un "P" dans la colonne grise a gauche, tu click sur le P et tu dois avoir la fenetre de pre-symbolisation, tu rentre un nom de variable ("test" dans mon cas), tu fais OK et tu obtient tous les nom de symboles avec le commentaire comme dans la fenetre ci-dessus.

ensuite tu as juste a prendre un contact NO a gauche dans le ladder et tu rentre l'adresse du bit d'etat (%IW2.0.2:X14 dans mon cas) et tu le copie dans un bit interne (%M100 par exemple) et ensuite tu utilise ce bit interne avec le front montant (contact NO avec le P a l'interieur) pour faire ce que tu as besoin...
 
T
terminator
Compagnon
9 Janvier 2018
1 021
  • Auteur de la discussion
  • #6
bon , je te remercie !
désolé , j'avais commis une erreur dans la ref de la carte , c'est pas cty22 mais cay22
ta manip est tjs valable , ce que je trouve c'est :
%Q2.0.11 EBOOL xxx_aux0_out Commande de la sortie auxiliaire AUX0
%I2.0.41 EBOOL xxx_in_aux0 Image de la sortie auxiliaire AUX0

apres , je fais pareil ?
 
petit_lulu
petit_lulu
Compagnon
11 Janvier 2015
690
gers
re,
a priori c'est bon, il te reste a mettre un contact NO avec l'adresse %I2.0.41 et a le copier dans un bit interne %Mx
et dans ton programme tu utilise ce bit (%Mx) pour faire la fonction que tu as besoin (avec un front montant par exemple)
 
T
terminator
Compagnon
9 Janvier 2018
1 021
  • Auteur de la discussion
  • #8
et tu penses que cette manip va réinitialiser/réarmer/remettre a 0 cette sortie q0 qui s'active a la fin d'un mouvement et qu'il faut " desactiver manuellement " apres pour pouvoir redétecter la fin d' un autre mouvement ? ( + de 30 mouvements différents)
Je vais essayer ce soir
merci
 
petit_lulu
petit_lulu
Compagnon
11 Janvier 2015
690
gers
ce qu'il faut voir c'est si la sortie passe a 0 lorsqu'il y a un mouvement et repasse a 1 a la fin du mouvement?
tu place l'adresse dans une table d'animation et tu vois si ca passe a 0 lors d'un mouvement...
sinon, toujours dans la table d'animation tu essai de mettre a 0 cette adresse ou le bit de commande %Q2.0.11...

apres c'est selon ce que tu veux faire, avec un front positif du %I... tu peut faire la fonction que tu as besoin... avec bobine "(re)set" pour memoriser l'information par exemple et toujours avec ce meme front remettre a 0 le bit de sortie Q0 (avec %Q2.0... si ca permet de la remetre a 0)
si besoin tu peut m'envoyer en MP ton programme si ce n'est pas "secret defense" bien sur ...
 
T
terminator
Compagnon
9 Janvier 2018
1 021
la sortie est a 0 avant et pendant le mouvement et passe a 1 a l'instant ou le mouvement est terminé .Et reste a 1 .
La seule facon de la remettre a 0 c'est run sur off

a mon avis c'est ca qu'il faudrait faire : " remettre a 0 le bit de sortie Q0 (avec %Q2.0... si ca permet de la remetre a 0) " sur commande d'un poussoir
J'ai bien essayé dans une operation en ecrivant : %Q2.0.11:=0 ou xxx_aux0_out :=0 mais ca ne fonctionne pas cela ne doit pas etre la bonne facon !
 
petit_lulu
petit_lulu
Compagnon
11 Janvier 2015
690
gers
essai de faire avec une bobine "reset" si jamais...
parfois c'est pas tres explicite alors essai de mettre a 1 le %Q2.0....
 
petit_lulu
petit_lulu
Compagnon
11 Janvier 2015
690
gers
quelque chose dans ce genre:
Capture.JPG


avec a droite le %Q2.0.... et a gauche un bit memoire non utilise (%Mx)
dans une table d'animation tu place le %Mx et tu le place a 1 pour faire un essai...
a la place de la bobine reset, essai avec une bobine set si jamais...
 
Haut