WinCC : Inversions des octets des mots d'alarme
Posté : 29 août 2017, 14:37
Bonjour !
Une petite question sur la gestion des alarmes avec WinCC et les inversions d'octets.
Pour être concret, je vais partir sur un exemple.
Sur l'automate, nous avons un DB d'alarme en bool :
Le "problème" c'est l'inversion des octets de poids fort et poids faible.
J'avais besoin de redémarrer en prod rapidement, j'ai donc :
DB d'alarme automate : DB10
DB d'alarme IHM : DB20
Avec :
Quand on sait que les octets sont inversés, on peut "facilement" faire bon du premier coup, mais je pense notamment aux gars de maintenance qui vont rajouter des alarmes par la suite, ça peut prendre un moment avant de comprendre pourquoi ce n'est pas le bon message qui s'affiche.
Une petite question sur la gestion des alarmes avec WinCC et les inversions d'octets.
Pour être concret, je vais partir sur un exemple.
Sur l'automate, nous avons un DB d'alarme en bool :
Dans WinCC, la variable de déclenchement ne peut pas être un booléen, mais doit être de type mot (ou Int, Dint, Dword..).
Adresse -------------- Mnémonique
DB10.DBX0.0 ------- Alarme 0
DB10.DBX0.1 ------- Alarme 1
DB10.DBX0.2 ------- Alarme 2
DB10.DBX0.3 ------- Alarme 3
DB10.DBX0.4 ------- Alarme 4
DB10.DBX0.5 ------- Alarme 5
DB10.DBX0.6 ------- Alarme 6
DB10.DBX0.7 ------- Alarme 7
DB10.DBX1.0 ------- Alarme 8
DB10.DBX1.1 ------- Alarme 9
DB10.DBX1.2 ------- Alarme 10
DB10.DBX1.3 ------- Alarme 11
DB10.DBX1.4 ------- Alarme 12
DB10.DBX1.5 ------- Alarme 13
DB10.DBX1.6 ------- Alarme 14
DB10.DBX1.7 ------- Alarme 15
Le "problème" c'est l'inversion des octets de poids fort et poids faible.
Je pensais que passer sur de l'IHM Siemens allait me faciliter la vie, mais finalement pas vraiment.
Texte - Variable de déclenchement - Bit déclenchement
Alarme 0 -------------- DBW0 ------------------------ 8
Alarme 1 -------------- DBW0 ------------------------ 9
Alarme 2 -------------- DBW0 ------------------------ 10
Alarme 3 -------------- DBW0 ------------------------ 11
Alarme 4 -------------- DBW0 ------------------------ 12
Alarme 5 -------------- DBW0 ------------------------ 13
Alarme 6 -------------- DBW0 ------------------------ 14
Alarme 7 -------------- DBW0 ------------------------ 15
Alarme 8 -------------- DBW0 ------------------------ 16
Alarme 9 -------------- DBW0 ------------------------ 1
Alarme 10 ------------- DBW0 ------------------------ 2
Alarme 11 ------------- DBW0 ------------------------ 3
Alarme 12 ------------- DBW0 ------------------------ 4
Alarme 13 ------------- DBW0 ------------------------ 5
Alarme 14 ------------- DBW0 ------------------------ 6
Alarme 15 ------------- DBW0 ------------------------ 7
J'avais besoin de redémarrer en prod rapidement, j'ai donc :
DB d'alarme automate : DB10
DB d'alarme IHM : DB20
Avec :
Vous faites comment vous ?L DB10.DBW0
CAW
T DB20.DBW0
...
Quand on sait que les octets sont inversés, on peut "facilement" faire bon du premier coup, mais je pense notamment aux gars de maintenance qui vont rajouter des alarmes par la suite, ça peut prendre un moment avant de comprendre pourquoi ce n'est pas le bon message qui s'affiche.