164 lines
2.4 KiB
Plaintext
164 lines
2.4 KiB
Plaintext
FUNCTION_BLOCK "MBlinken"
|
|
TITLE = Anzeige blinken lassen
|
|
{ S7_Optimized_Access := 'FALSE' }
|
|
VERSION : 0.1
|
|
VAR_INPUT
|
|
Impulsdauer : Bool; // Impulsdauer
|
|
Error_1 : Bool;
|
|
Error_2 : Bool;
|
|
Error_3 : Bool;
|
|
Error_4 : Bool;
|
|
Error_5 : Bool;
|
|
Error_6 : Bool;
|
|
Error_7 : Bool;
|
|
Error_8 : Bool;
|
|
Error_9 : Bool;
|
|
Error_10 : Bool;
|
|
END_VAR
|
|
|
|
VAR_OUTPUT
|
|
hAnzeige : Bool; // Anzeige
|
|
END_VAR
|
|
|
|
VAR
|
|
Flanke_Ausschalttakt : Bool;
|
|
Kein_Blinken : Bool;
|
|
Ausschalttakte : Int; // Betriebsbereit ist ausgeschaltet
|
|
END_VAR
|
|
|
|
|
|
BEGIN
|
|
NETWORK
|
|
TITLE = Anzeige bei Error 1-10 1-10 mal blinken lassen
|
|
|
|
//Anzeige ausschalten:
|
|
UN #Error_1;
|
|
UN #Error_2;
|
|
UN #Error_3;
|
|
UN #Error_4;
|
|
UN #Error_5;
|
|
UN #Error_6;
|
|
UN #Error_7;
|
|
UN #Error_8;
|
|
UN #Error_9;
|
|
UN #Error_10;
|
|
R #hAnzeige;
|
|
R #Flanke_Ausschalttakt;
|
|
R #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
//Anzeige aktivieren
|
|
U #Impulsdauer;
|
|
UN #Kein_Blinken;
|
|
= #hAnzeige;
|
|
|
|
U #Impulsdauer;
|
|
FN #Flanke_Ausschalttakt;
|
|
SPBN mHu;
|
|
|
|
L #Ausschalttakte;
|
|
+ 1;
|
|
T #Ausschalttakte;
|
|
|
|
|
|
mHu: L #Ausschalttakte;
|
|
L 2;
|
|
>=I;
|
|
U #Kein_Blinken;
|
|
R #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
U #Kein_Blinken;
|
|
SPB En01;
|
|
|
|
TAK;
|
|
L 1;
|
|
>=I;
|
|
U #Error_1;
|
|
S #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
TAK;
|
|
L 2;
|
|
>=I;
|
|
U #Error_2;
|
|
S #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
TAK;
|
|
L 3;
|
|
>=I;
|
|
U #Error_3;
|
|
S #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
TAK;
|
|
L 4;
|
|
>=I;
|
|
U #Error_4;
|
|
S #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
TAK;
|
|
L 5;
|
|
>=I;
|
|
U #Error_5;
|
|
S #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
TAK;
|
|
L 6;
|
|
>=I;
|
|
U #Error_6;
|
|
S #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
TAK;
|
|
L 7;
|
|
>=I;
|
|
U #Error_7;
|
|
S #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
TAK;
|
|
L 8;
|
|
>=I;
|
|
U #Error_8;
|
|
S #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
TAK;
|
|
L 9;
|
|
>=I;
|
|
U #Error_9;
|
|
S #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
TAK;
|
|
L 10;
|
|
>=I;
|
|
U #Error_10;
|
|
S #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
TAK;
|
|
L 10;
|
|
>I;
|
|
S #Kein_Blinken;
|
|
SPB NoAn;
|
|
|
|
SPA En01;
|
|
|
|
NoAn: L 0;
|
|
T #Ausschalttakte;
|
|
|
|
En01: NOP 0;
|
|
|
|
NETWORK
|
|
TITLE = Ende
|
|
BE;
|
|
|
|
|
|
END_FUNCTION_BLOCK
|
|
|