Programmation PL7 pro carte comptage rapide
Mantis78
Messages postés
7
Statut
Membre
-
Mantis78 Messages postés 7 Statut Membre -
Mantis78 Messages postés 7 Statut Membre -
Bonjour,
Je viens ici chercher de l'aide car je m'occupe d'un projet pour ma 2ème année de BTS sur lequèl je dois faire de la programmation sous pl7 pro.
Je m'explique : Je dois pouvoir afficher la vitesse d'un arbre moteur (1500tr/min max, 2 sens de rotation) sur un écran Magélis grâce à un codeur de 1024 point par tour (modèle RI58-D/1024ED.371B ).
L'API utilisé est un TSX 3722 avec en plus une carte de comtage rapide TSX CTZ 2AA car l'API ne peut compter une fréquence aussi élevée (f = 25,6 Khz pour 1500 tr/min).
Comme c'est la première fois que je touche à PL7 pro je viens ici vous demander de l'aide pour m'aider à trouver où que se soit le moyen de réussir cette partie de mon projet.
Merci d'avance
Je viens ici chercher de l'aide car je m'occupe d'un projet pour ma 2ème année de BTS sur lequèl je dois faire de la programmation sous pl7 pro.
Je m'explique : Je dois pouvoir afficher la vitesse d'un arbre moteur (1500tr/min max, 2 sens de rotation) sur un écran Magélis grâce à un codeur de 1024 point par tour (modèle RI58-D/1024ED.371B ).
L'API utilisé est un TSX 3722 avec en plus une carte de comtage rapide TSX CTZ 2AA car l'API ne peut compter une fréquence aussi élevée (f = 25,6 Khz pour 1500 tr/min).
Comme c'est la première fois que je touche à PL7 pro je viens ici vous demander de l'aide pour m'aider à trouver où que se soit le moyen de réussir cette partie de mon projet.
Merci d'avance
A voir également:
- Programmation PL7 pro carte comptage rapide
- Pile carte mere - Guide
- Acces rapide - Guide
- Clé windows 10 pro 64 bits gratuit - Guide
- Carte d'identité - Accueil - Services publics
- Ccleaner pro gratuit - Télécharger - Optimisation
5 réponses
Là pour résoudre ton problème, tu n’as pas le choix,
étant donné que ta carte n’accepte que 500KHz.
La seule solution est de prendre un codeur ne dépassant
pas 200 points par tour.
Pourquoi veux-tu mettre un codeur 1024 points ?
étant donné que ta carte n’accepte que 500KHz.
La seule solution est de prendre un codeur ne dépassant
pas 200 points par tour.
Pourquoi veux-tu mettre un codeur 1024 points ?
Je ne sais pas ou tu as trouvé %ID3.11.0 ?
Essai plutôt:
%ID3.0 si codeur sur la voix 0 ou
%ID3.1 si codeur sur la voix 1
Ton principe de calcul est bon, a condition que ton étape X14 dure
un seul cycle de scrutation.
Car si non, tu vas faire ton calcul tant que %S6 seras égal à 1 sois pendant
0,5s. Ta valeur seras toujours en mouvement. Comme le magélis ira
chercher cette valeur en arrière plan, tu ne peut pas savoir à quel moment.
Donc ça affichera n'importe quoi.
Je ne comprend pas ton %MW24 afficheur magélis.
Quand tu paramètres le magélis tu crées une table de dialogue.
Exemple
Paramètre dans le magélis.
%MW20 = Numéro de page affichée XBT ->API
%MW21= Page à traiter XBT <-> API
%MW22= Table d'alarme XBT <- API
Dans l'automate tu as juste à mettre dans %MW21, le numéro
de la page ou il y a le message qui contient ta variable de vitesse (%MD2),
et ça se lit automatiquement.
Pour ton calcul, utilise plutôt un double mot. Car ce n'est pas une calculatrice
il ne va pas te dire si il y a un débordement et tu auras n'importe quoi.
A savoir que si tu utilise %MD2, ça donne %MW2 = poids faible de %ID2
%MW3 = " fort de %ID2
Si tu as juste à afficher la vitesse, pourquoi faire un grafcet?
J'ai essayé %ID3.0 est sa marche.
En faite j'utilise le grafcet juste pour le démarrage de mon moteur, et %X14 correspond à l'étape où il démarre.
Pour le Magélis tu as effectivement raison %MW24 n'a rien à faire là, je prendrais %MD2.
Pour le cacul de %S6 je voulais que l'automate compte pendant 0,5 ou 1 s mais recommence quand il a finit, comme ça j'aurais un rafraichissement de la vitesse assé bon.Donc si j'ai bien compris là il risque de compter encore et encore ?
En faite j'utilise le grafcet juste pour le démarrage de mon moteur, et %X14 correspond à l'étape où il démarre.
Pour le Magélis tu as effectivement raison %MW24 n'a rien à faire là, je prendrais %MD2.
Pour le cacul de %S6 je voulais que l'automate compte pendant 0,5 ou 1 s mais recommence quand il a finit, comme ça j'aurais un rafraichissement de la vitesse assé bon.Donc si j'ai bien compris là il risque de compter encore et encore ?
Oui c’est bien jusqu'à 500KHz .
Excuse moi, mais j’ai fait une erreur de calcul, ta carte de comptage
suffit largement. Puisqu’elle accepte 500000 imp/s
et que le codeur en donnera 25600 imp/s pour 1500tr/min
Pour transformer des impulsions codeur en vitesse, il
te suffit de prendre le bit système %S6 qui a une base de
temp d'une seconde entre deux fronts montants.
Tu mes une valeur de présélection codeur 0.
-Front montant %S6
valide le bit de présélection pour avoir la valeur courante du codeur = 0
-Front descendant %S6,
charge valeur codeur %IDx.0 dans %MD1
suivant le sens de rotation, %MD1 sera positif ou négatif
si négatif tu *-1
A partir de la, tu connais le nombres d’impulsions en 0,5s
Ensuite il te reste plus qu’à convertir en tr/min, que tu place dans %MD2
Dans l’afficheur il te suffit de récupéré %MD2.
J'ai travaillé dessus aujourd'hui et j'ai eu quelques soucis de compréhension.
Pour la valeur de présélection codeur je l'ai mis à 0, par contre après pour le front montant %S6 je sais pas où es qu'on valide la valeur courante du codeur.
Pour le front descendant c'est pareil je sais pas où es qu'on chage la valeur du codeur %IDx.0 dans %MD1.
Pour la valeur de présélection codeur je l'ai mis à 0, par contre après pour le front montant %S6 je sais pas où es qu'on valide la valeur courante du codeur.
Pour le front descendant c'est pareil je sais pas où es qu'on chage la valeur du codeur %IDx.0 dans %MD1.
En voulant rajouter un deuxième ordinateur chez moi en réseaux
j'ai mis là pagaille, et je n'avais plus de connection. Mais bon,
me revoila.
Dans le préliminaire:
-Transformer le bit système %S6 en bit interne (pour permettre d'utiliser les fronts)
-Validation carte comptage
-Si mesure invalide (%Iwx.i.2:X7) charge la valeur présélection sur front %S5 base de temp de 100ms
-Charge sur front montant %S6 la valeur de présélection
-Charge valeur codeur sur front descendant %S6 dans %MD1
-Calcul
Exemple:
à savoir que x = position rack dans l'automate
i = voie du codeur ( 0 ou 1 )
%S6
|---| |------------------------------------------------------(%M6)-|
|----------------------------------------------------------(%Qx.i)-|
%IWx.i.2:X7 %S5
|----| |-----------| |---+-------------------------------(%Qx.i.1)-|
| %M6 |
|----|P|-----------------+
%M6 opération
|--|N|-----+----------------------------------------[%MD1:=%IDx.i]-|
| comp opération
+--[%MD1<0]-----------------------------[%MD1:=%MD1*-1]-|
Pour le calcul sachant que tu as 25600 imp/s pour 1500 tr/min, pour une base
de temp d'une seconde. Comme dans l'exemple on n'est en base de temp de
0,5s on aura donc 12800 imp pour 1500 tr/min. Ensuite il suffit de faire la
règle de trois, mais pour éviter les débordements de calculs 12800 ==> 128
1500 ==> 15
Ce qui donne:
opération
|------------------------------------------[ %MD2:=(%MD1*15)/128 ]-|
Pour l'afficheur tu mes ajouter un champ et tu places la variable %MD2 et voilà.
Il faut savoir que là, je te propose une solution, et non là solution.
Car chaques programmeurs à ses astuces.<code></code>
Salut,
Merci de ta réponse c'est beaucoup plus clair.
Finalement moi j'avais pencé programmer ceci :
%X14 %M6 opération
|--| |-----------| |------------------------------------[%MW24:=(%ID3.11.0*1500)/6400]---|
%X14 correspond à l'étape du grafcet où la vitesse doit apparaître.
%MW24 correspond à l'afficheur de la Magélis.
ID3.11.0 correspond à la variable d'entré des signaux du codeur, mais même comme ça pl7 pro ne veut pas me le valider pourtant j'ai mis le bon rack (3) et .11.0 est écrit dans l'aide de PL7...
Puis pour la formule j'ai fait la régle de 3.
Pour le réglage j'ai mis juste comptage car s'il compte uniquement, le sens de rotation importera peu du moment qu'il y a les fronts montant.
Mon prof m'a dit que sa convenais mais comme il a vérifié en vitesse je doute un peu...
Tu en pense quoi?
Je vais bien étudié ta proposition car demain je passe l'oral et je vais essayer de finir cette partie :-)
Merci de ta réponse c'est beaucoup plus clair.
Finalement moi j'avais pencé programmer ceci :
%X14 %M6 opération
|--| |-----------| |------------------------------------[%MW24:=(%ID3.11.0*1500)/6400]---|
%X14 correspond à l'étape du grafcet où la vitesse doit apparaître.
%MW24 correspond à l'afficheur de la Magélis.
ID3.11.0 correspond à la variable d'entré des signaux du codeur, mais même comme ça pl7 pro ne veut pas me le valider pourtant j'ai mis le bon rack (3) et .11.0 est écrit dans l'aide de PL7...
Puis pour la formule j'ai fait la régle de 3.
Pour le réglage j'ai mis juste comptage car s'il compte uniquement, le sens de rotation importera peu du moment qu'il y a les fronts montant.
Mon prof m'a dit que sa convenais mais comme il a vérifié en vitesse je doute un peu...
Tu en pense quoi?
Je vais bien étudié ta proposition car demain je passe l'oral et je vais essayer de finir cette partie :-)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionNon le problème n'est pas là.
Comme il te faut 0,5s pour connaître la vitesse du moteur,
et que dans ton exemple %MD2 va varier pendant 0,5s.
Et que tu ne peux pas savoir à quel moment le magélis va la prendre.
Ta valeur affiché sera aléatoire.
Dans ce cas il faut obligatoirement utiliser un front.
Apparemment tu es fâchés avec les fronts !!!
Exemple:
%S6
|--| |-----------------------------------------------------(%M6)-|
%M6 %X14
|--| P ou N |-------| |-------------[ %MD2:=(%ID3.0*1500)/6400 ]-|
Tant que l'étape X14 est active le calcul se fera.
Donc rafraîchissement toutes les secondes dans le TSX.
Le magélis lui à un rafraîchissement d'environ toutes les secondes
donc ça ne sert à rien d'allé plus vite.
J'ai mis M6 front montant ou descendent car je ne
sais pas à quel moment, tu charges la valeur de présélection.
Attention, elle doit être rechargée à chaque fronts.
Ha oui moi et les fronts montant ça fait deux... :-)
Je voulais énormément te remercier Bigburns car j'ai passé mon oral est grâce à tes conseils et remarques je n'ai pas eu de soucis devant le jury.
Malgré que j'ai pas pus faire marché le mode magélis car l'API déconnait, j'ai pus expliqué le fonctionnement via PL7 pro.
En tout cas je suis très content qu'au dernier moment, quelqu'un comme toi m'aide sur le codeur.
Merci encore !!
Cordialement,
Alex
Je voulais énormément te remercier Bigburns car j'ai passé mon oral est grâce à tes conseils et remarques je n'ai pas eu de soucis devant le jury.
Malgré que j'ai pas pus faire marché le mode magélis car l'API déconnait, j'ai pus expliqué le fonctionnement via PL7 pro.
En tout cas je suis très content qu'au dernier moment, quelqu'un comme toi m'aide sur le codeur.
Merci encore !!
Cordialement,
Alex
Le codeur que j'ai m'a été imposé, la carte de comtage rapide aussi, d'ailleur tu en est sûre qu'elle accepte que 500KHz? C'est pas plutôt qu'elle accepte jusqu'a 500KHz?
Moi mon plus gros soucis c'est surtout la programmation :-(
Merci