Je vous explique rapidement le problème.
J'ai une alarme qui s'affiche pour un moteur par exemple le corps du moteur qui est en défaut est rouge clignotant quand l'alarme défaut moteur est active et non acquittée.
Quand l'alarme est acquittée la couleur est rouge fixe.
Mes alarmes arrivent sur mon ihm dans des mots (obligation Siemens).
Je voulais utiliser une variable ihm interne pour gérer l'acquittement. L'idée est de limiter le nombre de tags externes entre mon IHM et mon automate puisque l'acquittement ne me sert à rien dans l'automate et ne me sert dans ce cas que pour des animations.
J'ai donc besoin d'une variable de type Bool pour mon faceplate c'est pour ça que je voulais extraire le bit du mot.
Le cas échéant je devrais utiliser une variable int d'acquittement par moteur ce qui me semble pas optimisé du tout même si les variables internes n'affectent pas la licence.
[TIA V16] Bits de mots interne WinCC Advanced
- itasoft
- Mi homme - Mi automate
- Messages : 7037
- Inscription : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: [TIA V16] Bits de mots interne WinCC Advanced
Slts,
Est que l’acquittement RESET le bit concerné dans l’automate ou ça ne fait rien dans l’automate et que c’est juste pour changer de couleur sur le IHM ???
Est que l’acquittement RESET le bit concerné dans l’automate ou ça ne fait rien dans l’automate et que c’est juste pour changer de couleur sur le IHM ???
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
-
- Mi homme - Mi automate
- Messages : 2076
- Inscription : 21 oct. 2015, 10:00
- Localisation : Ile de France
Re: [TIA V16] Bits de mots interne WinCC Advanced
Re !
Comment sont affichés les faceplate ?
Par appui sur un bouton ou bien plusieurs dans un écran ?
Une piste :
- Créer un tableau de 16 bool par mot de défaut
- Créer autant de scripts que de mots de défauts qui vont décoder leur propre mot de défaut
- Dans la déclaration de chaque variable Mot Défaut, ajouter dans évènement sur changement de valeur le script du mot concerné.
- Dans le script :
Affecter chaque bit du tableau de bool en fonction de l'état du mot de défaut.
- Dans le facePlate, utiliser le bool du tableau qui va bien ==== Edit : Ca fonctionne pas non plus, tableaux interdits !! ============
Lancer chaque script au démarrage de l'ihm pour 'actualiser' l'état la première fois.
Ensuite,cela se fait tout seul (normalement)
Comment sont affichés les faceplate ?
Par appui sur un bouton ou bien plusieurs dans un écran ?
Une piste :
- Créer un tableau de 16 bool par mot de défaut
- Créer autant de scripts que de mots de défauts qui vont décoder leur propre mot de défaut
- Dans la déclaration de chaque variable Mot Défaut, ajouter dans évènement sur changement de valeur le script du mot concerné.
- Dans le script :
Affecter chaque bit du tableau de bool en fonction de l'état du mot de défaut.
- Dans le facePlate, utiliser le bool du tableau qui va bien ==== Edit : Ca fonctionne pas non plus, tableaux interdits !! ============
Lancer chaque script au démarrage de l'ihm pour 'actualiser' l'état la première fois.
Ensuite,cela se fait tout seul (normalement)
Dernière modification par philou77 le 26 janv. 2023, 15:51, modifié 1 fois.
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part !
Re: [TIA V16] Bits de mots interne WinCC Advanced
L'acquittement ne fait rien dans l'automate mais plutôt sur les animations.
Je risque de devoir passer par un script.
Au niveau de mes variables de faceplate je vais plutôt prendre en entrée le numéro de bit et la variable acquittement.
-
- Mi homme - Mi automate
- Messages : 2076
- Inscription : 21 oct. 2015, 10:00
- Localisation : Ile de France
Re: [TIA V16] Bits de mots interne WinCC Advanced
Re !
Bien, l'évènement 'Changement de valeur' ne se déclenche QUE si l'on modifie la valeur DANS une fenêtre de saisie.
donc si la valeur change d'une autre manière, cela ne fonctionne pas.
Retour au frigo pour ma piste
Bien, l'évènement 'Changement de valeur' ne se déclenche QUE si l'on modifie la valeur DANS une fenêtre de saisie.
donc si la valeur change d'une autre manière, cela ne fonctionne pas.
Retour au frigo pour ma piste
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part !