Page 1 sur 1

Tuto, principe du consignateur d’état

Posté : 09 juil. 2018, 04:03
par itasoft
Tuto, principe du consignateur d’état :
WN état N
WM état à N-1
WDIF Bits qui ont changés d’état
WAPP Bits qui sont apparus (qui sont passés de 0à1)
WDSP Bits qui ont disparus (qui sont passés de 1à0)


If WN<>WM then
WDIF :=WN XOR WM ;
WAPP :=WDIF AND WN ;
WDSP :=WDIF AND WM ;
WM :=WN ;
End_if ;

Re: Tuto, principe du consignateur d’état

Posté : 09 juil. 2018, 10:22
par philou77
Salut !

Sympa..bon en même temps, j'ai jamais eu à utiliser cela...à part 16 fronts montants sur 16 bits en quelque instructions similaires..

C'est l'été, tu t'ennuies ou tu nous donnes des devoirs de vacances ?

Re: Tuto, principe du consignateur d’état

Posté : 09 juil. 2018, 12:44
par itasoft
slts,
effectivement sans le if then ça peut fair les fronts
WAPP fronts montants WDSP fronts desendant, c'est des devoirs de vacances, LOL


WDIF :=WN XOR WM ;
WAPP :=WDIF AND WN ;
WDSP :=WDIF AND WM ;
WM :=WN ;

Re: Tuto, principe du consignateur d’état

Posté : 09 juil. 2018, 19:28
par JC87
Hello,

J'ai utilisé ce genre de méthode pour faire sonner un klaxon a l'apparition d'une nouvelle alarme. Quand on a plus de 500 alarmes c'est quand même mieux que de faire 500 fronts et autant de "ou" pour faire sonner le dit klaxon :D

JC

Re: Tuto, principe du consignateur d’état

Posté : 09 juil. 2018, 20:33
par itasoft
@jc87,
oui effectivement on peut faire les mêmes opérations avec des tableaux de mots,

Re: Tuto, principe du consignateur d’état

Posté : 14 juil. 2018, 09:50
par itasoft
JC87 a écrit : 09 juil. 2018, 19:28 Hello,
J'ai utilisé ce genre de méthode pour faire sonner un klaxon a l'apparition d'une nouvelle alarme. Quand on a plus de 500 alarmes c'est quand même mieux que de faire 500 fronts et autant de "ou" pour faire sonner le dit klaxon :D
JC
Commander le klaxon à chaque apparition d’un nouveau défaut c’est pas bête ça, sur 1000 alarmes ça nous ferait des tableaux de 64 mots INT,
Mettre tous les bits de défauts dans un tableau de mot et faire des opérations logiques sur tableaux.
ci dessous un exemple sur Unity ça peut toujours servir .

TWDIF:=XOR_ARINT(TWN,TWM); (*Bits qui ont changés d'état par rapport à l'état N-1 *)
TWAPP:=AND_ARINT(TWDIF,TWN); (*Bits en apparition*)
TWM:=TWN; (* Etat N dans N-1 *)
(* Commande du klaxon avec auto maintien et Acquittement*)
KLAXON:=NOT ACQUIT AND (SUM_ARINT(TWAPP)<>0 OR KLAXON);

Re: Tuto, principe du consignateur d’état

Posté : 17 août 2018, 10:17
par sinced
C'est une très bonne solution sous Schneider.
Siemens ne dispose pas de fonction XOR sur les tableaux de mots (à moins peut être d'en crééer). Mais le principe est le même et je pense qu'on peut jongler avec des réels directement.

Re: Tuto, principe du consignateur d’état

Posté : 17 août 2018, 17:04
par itasoft
slts,
le XOR équivaut à faire une soustraction entre Etat N et Etat N-1
EX:

TWDIF=SUB_ARINT(TWN,TWM); (* Etat N moins Etat N-1 *)