L MD 55
L 0
<>D
FP M 30.0
S A 2.0
U E 5.0
R A 2.0
Soll der Ausgang immer an sein wenn MD55 <> 0 ist oder nur wenn es von 0 weg wechselt?
Im Moment hast Du Variante zwei programmiert, da der Merker M30.0 nur zurückgesetzt wird wenn das MD auf 0 ist...
4) Bit1 noch immer 1 - und Bit3 in MD55 von 0 nach 1 --> A2.0 soll neu gesetzt werden!
Hallo,
Du suchst eine Zustandsänderung irgendwelcher Bits. Nimm Bitsum und schau wieviele hi sind, speichere es ab, und vergleiche danach wieder wieviele hi sind.
L #ALARMMEM //Speicher von die vorigen Störmeldungen
XOW W#16#FFFF
L #ALARMRAW //Störmeldungen
AW
L 0
<>I
S "AlarmNew"
L #ALARMRAW
T #ALARMMEM
Damit sollte man Haralds FAQ vlt. noch erweitern, da das doch recht häufig angefragt wird.Code:L #ALARMMEM //Speicher von die vorigen Störmeldungen XOW W#16#FFFF L #ALARMRAW //Störmeldungen AW L 0 <>I S "AlarmNew" L #ALARMRAW T #ALARMMEM
Was heißt nun wieder "falls er vorher rückgesetzt wurde!"?
Einen Ausgang auf 1 setzen auch wenn er schon 1 ist - das tut dem Ausgang nicht weh
Harald
L MW 200
XOW W#16#FFFF
L MW 55
L 0
<>I
S A 2.0
L MW 55
T MW 200
Doch, der Ausgang wird nur gesetzt wenn ein neuen Störbit gestzt wird.1) Nun lässt sich aber der Ausgang A2.0 nicht rücksetzen, solange ein Bit in MW55 gesetzt ist.
2) Bei mir handelt es sich ja eigentlich um ein Merkerdoppelwort und da klappt ja XOW nicht
L #ALARMMEM //Speicher von die vorigen Störmeldungen. Doppelwort !
INVD
L #ALARMRAW //Störmeldungen. Doppelwort !
UD // english: AD, deutsch UD !
L L#0
<>D
S "AlarmNew"
L #ALARMRAW
T #ALARMMEM
Mein STEP7 ist auf Englisch eingestellt, und deiner ist auf Deutsch, vermute ich
Anstatt AD, dann UD.
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?