-> Hier kostenlos registrieren
Teil 3:
NETWORK
TITLE =Schaltzeit nach gewählter Funktion
//Abfrage welche Funktion gewählt ist, danach die Istzeit mit der eingestellten
//Schaltzeit vergleichen und mit VKE=1 eine Variable setzen.
//Funktion 1: Montag bis Freitag
//Funktion 2: Samstag & Sonntag
//Funktion 3: Montag bis Sonntag
//================================================Funktion 1
U( ;
U #Mo_bis_Fr; //Funktion Montag bis Freitag
UN #Sa_bis_So;
UN #Mo_bis_So;
U #Woche;
) ;
SPB MoFr;
SPA FKT2;
//--------------------------------------
MoFr: U #Schaltzeit1_aktiviert; // Kanal 1 aktiv?
SPB ON2;
SPA NXT3;
ON2: L #Uhrzeit; // Istzeit mit
L #Einschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoFr_T1_Ein; // Fkt1 T1 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoFr_T1_Ein; // Fkt1 T1 Ausschalten
//--------------------------------------
NXT3: U #Schaltzeit2_aktiviert; // Kanal 2 aktiv?
SPB ON3;
SPA NXT4;
ON3: L #Uhrzeit; // Istzeit mit
L #Einschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoFr_T2_Ein; // Fkt1 T2 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoFr_T2_Ein; // Fkt1 T2 Ausschalten
//--------------------------------------
NXT4: U #Schaltzeit3_aktiviert; // Kanal 3 aktiv?
SPB ON4;
SPA NXT5;
ON4: L #Uhrzeit; // Istzeit mit
L #Einschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoFr_T3_Ein; // Fkt1 T3 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoFr_T3_Ein; // Fkt1 T3 Ausschalten
//--------------------------------------
NXT5: U #Schaltzeit4_aktiviert; // Kanal 4 aktiv?
SPB ON5;
SPA NXT6;
ON5: L #Uhrzeit; // Istzeit mit
L #Einschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoFr_T4_Ein; // Fkt1 T4 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoFr_T4_Ein; // Fkt1 T4 Ausschalten
NXT6: NOP 0;
//================================================Funktion 2
FKT2: U( ;
U #Sa_bis_So;
UN #Mo_bis_Fr;
UN #Mo_bis_So;
U #Wochenende;
) ;
SPB SaSo;
SPA FKT3;
//--------------------------------------
SaSo: U #Schaltzeit1_aktiviert; // Kanal 1 aktiv?
SPB ON6;
SPA NXT7;
ON6: L #Uhrzeit; // Istzeit mit
L #Einschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_SaSo_T1_Ein; // Fkt2 T1 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_SaSo_T1_Ein; // Fkt2 T1 Ausschalten
//--------------------------------------
NXT7: U #Schaltzeit2_aktiviert; // Kanal 2 aktiv?
SPB ON7;
SPA NXT8;
ON7: L #Uhrzeit; // Istzeit mit
L #Einschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_SaSo_T2_Ein; // Fkt2 T2 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_SaSo_T2_Ein; // Fkt2 T2 Ausschalten
//--------------------------------------
NXT8: U #Schaltzeit3_aktiviert; // Kanal 3 aktiv?
SPB ON8;
SPA NXT9;
ON8: L #Uhrzeit; // Istzeit mit
L #Einschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_SaSo_T3_Ein; // Fkt2 T3 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_SaSo_T3_Ein; // Fkt2 T3 Ausschalten
//--------------------------------------
NXT9: U #Schaltzeit4_aktiviert; // Kanal 4 aktiv?
SPB ON9;
SPA NX10;
ON9: L #Uhrzeit; // Istzeit mit
L #Einschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_SaSo_T4_Ein; // Fkt2 T4 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_SaSo_T4_Ein; // Fkt2 T4 Ausschalten
NX10: NOP 0;
//================================================Funktion 3
FKT3: U #Mo_bis_So;
UN #Mo_bis_Fr;
UN #Sa_bis_So;
SPB MoSo;
SPA NX14;
//--------------------------------------
MoSo: U #Schaltzeit1_aktiviert; // Kanal 1 aktiv?
SPB ON10;
SPA NX11;
ON10: L #Uhrzeit; // Istzeit mit
L #Einschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoSo_T1_Ein; // Fkt3 T1 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoSo_T1_Ein; // Fkt3 T1 Ausschalten
//--------------------------------------
NX11: U #Schaltzeit2_aktiviert; // Kanal 2 aktiv?
SPB ON11;
SPA NX12;
ON11: L #Uhrzeit; // Istzeit mit
L #Einschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoSo_T2_Ein; // Fkt3 T2 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoSo_T2_Ein; // Fkt3 T2 Ausschalten
//--------------------------------------
NX12: U #Schaltzeit3_aktiviert; // Kanal 3 aktiv?
SPB ON12;
SPA NX13;
ON12: L #Uhrzeit; // Istzeit mit
L #Einschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoSo_T3_Ein; // Fkt3 T3 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoSo_T3_Ein; // Fkt3 T3 Ausschalten
//--------------------------------------
NX13: U #Schaltzeit4_aktiviert; // Kanal 3 aktiv?
SPB ON13;
SPA NX14;
ON13: L #Uhrzeit; // Istzeit mit
L #Einschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoSo_T4_Ein; // Fkt3 T4 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoSo_T4_Ein; // Fkt3 T4 Ausschalten
NX14: NOP 0;
//--------------------------------
NETWORK
TITLE =Schaltuhrausgang
U #Mo_bis_Fr;
U( ;
O #Funktion_MoFr_T1_Ein;
O #Funktion_MoFr_T2_Ein;
O #Funktion_MoFr_T3_Ein;
O #Funktion_MoFr_T4_Ein;
) ;
O ;
U #Sa_bis_So;
U( ;
O #Funktion_SaSo_T1_Ein;
O #Funktion_SaSo_T2_Ein;
O #Funktion_SaSo_T3_Ein;
O #Funktion_SaSo_T4_Ein;
) ;
O ;
U #Mo_bis_So;
U( ;
O #Funktion_MoSo_T1_Ein;
O #Funktion_MoSo_T2_Ein;
O #Funktion_MoSo_T3_Ein;
O #Funktion_MoSo_T4_Ein;
) ;
= #Schaltuhr_aktiviert;
END_FUNCTION_BLOCK
NETWORK
TITLE =Schaltzeit nach gewählter Funktion
//Abfrage welche Funktion gewählt ist, danach die Istzeit mit der eingestellten
//Schaltzeit vergleichen und mit VKE=1 eine Variable setzen.
//Funktion 1: Montag bis Freitag
//Funktion 2: Samstag & Sonntag
//Funktion 3: Montag bis Sonntag
//================================================Funktion 1
U( ;
U #Mo_bis_Fr; //Funktion Montag bis Freitag
UN #Sa_bis_So;
UN #Mo_bis_So;
U #Woche;
) ;
SPB MoFr;
SPA FKT2;
//--------------------------------------
MoFr: U #Schaltzeit1_aktiviert; // Kanal 1 aktiv?
SPB ON2;
SPA NXT3;
ON2: L #Uhrzeit; // Istzeit mit
L #Einschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoFr_T1_Ein; // Fkt1 T1 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoFr_T1_Ein; // Fkt1 T1 Ausschalten
//--------------------------------------
NXT3: U #Schaltzeit2_aktiviert; // Kanal 2 aktiv?
SPB ON3;
SPA NXT4;
ON3: L #Uhrzeit; // Istzeit mit
L #Einschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoFr_T2_Ein; // Fkt1 T2 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoFr_T2_Ein; // Fkt1 T2 Ausschalten
//--------------------------------------
NXT4: U #Schaltzeit3_aktiviert; // Kanal 3 aktiv?
SPB ON4;
SPA NXT5;
ON4: L #Uhrzeit; // Istzeit mit
L #Einschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoFr_T3_Ein; // Fkt1 T3 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoFr_T3_Ein; // Fkt1 T3 Ausschalten
//--------------------------------------
NXT5: U #Schaltzeit4_aktiviert; // Kanal 4 aktiv?
SPB ON5;
SPA NXT6;
ON5: L #Uhrzeit; // Istzeit mit
L #Einschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoFr_T4_Ein; // Fkt1 T4 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoFr_T4_Ein; // Fkt1 T4 Ausschalten
NXT6: NOP 0;
//================================================Funktion 2
FKT2: U( ;
U #Sa_bis_So;
UN #Mo_bis_Fr;
UN #Mo_bis_So;
U #Wochenende;
) ;
SPB SaSo;
SPA FKT3;
//--------------------------------------
SaSo: U #Schaltzeit1_aktiviert; // Kanal 1 aktiv?
SPB ON6;
SPA NXT7;
ON6: L #Uhrzeit; // Istzeit mit
L #Einschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_SaSo_T1_Ein; // Fkt2 T1 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_SaSo_T1_Ein; // Fkt2 T1 Ausschalten
//--------------------------------------
NXT7: U #Schaltzeit2_aktiviert; // Kanal 2 aktiv?
SPB ON7;
SPA NXT8;
ON7: L #Uhrzeit; // Istzeit mit
L #Einschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_SaSo_T2_Ein; // Fkt2 T2 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_SaSo_T2_Ein; // Fkt2 T2 Ausschalten
//--------------------------------------
NXT8: U #Schaltzeit3_aktiviert; // Kanal 3 aktiv?
SPB ON8;
SPA NXT9;
ON8: L #Uhrzeit; // Istzeit mit
L #Einschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_SaSo_T3_Ein; // Fkt2 T3 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_SaSo_T3_Ein; // Fkt2 T3 Ausschalten
//--------------------------------------
NXT9: U #Schaltzeit4_aktiviert; // Kanal 4 aktiv?
SPB ON9;
SPA NX10;
ON9: L #Uhrzeit; // Istzeit mit
L #Einschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_SaSo_T4_Ein; // Fkt2 T4 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_SaSo_T4_Ein; // Fkt2 T4 Ausschalten
NX10: NOP 0;
//================================================Funktion 3
FKT3: U #Mo_bis_So;
UN #Mo_bis_Fr;
UN #Sa_bis_So;
SPB MoSo;
SPA NX14;
//--------------------------------------
MoSo: U #Schaltzeit1_aktiviert; // Kanal 1 aktiv?
SPB ON10;
SPA NX11;
ON10: L #Uhrzeit; // Istzeit mit
L #Einschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoSo_T1_Ein; // Fkt3 T1 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_1; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoSo_T1_Ein; // Fkt3 T1 Ausschalten
//--------------------------------------
NX11: U #Schaltzeit2_aktiviert; // Kanal 2 aktiv?
SPB ON11;
SPA NX12;
ON11: L #Uhrzeit; // Istzeit mit
L #Einschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoSo_T2_Ein; // Fkt3 T2 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_2; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoSo_T2_Ein; // Fkt3 T2 Ausschalten
//--------------------------------------
NX12: U #Schaltzeit3_aktiviert; // Kanal 3 aktiv?
SPB ON12;
SPA NX13;
ON12: L #Uhrzeit; // Istzeit mit
L #Einschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoSo_T3_Ein; // Fkt3 T3 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_3; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoSo_T3_Ein; // Fkt3 T3 Ausschalten
//--------------------------------------
NX13: U #Schaltzeit4_aktiviert; // Kanal 3 aktiv?
SPB ON13;
SPA NX14;
ON13: L #Uhrzeit; // Istzeit mit
L #Einschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
S #Funktion_MoSo_T4_Ein; // Fkt3 T4 Einschalten
L #Uhrzeit; // Istzeit mit
L #Ausschalten_4; // Schaltzeit vergleichen
>=D ; // größer gleich?
R #Funktion_MoSo_T4_Ein; // Fkt3 T4 Ausschalten
NX14: NOP 0;
//--------------------------------
NETWORK
TITLE =Schaltuhrausgang
U #Mo_bis_Fr;
U( ;
O #Funktion_MoFr_T1_Ein;
O #Funktion_MoFr_T2_Ein;
O #Funktion_MoFr_T3_Ein;
O #Funktion_MoFr_T4_Ein;
) ;
O ;
U #Sa_bis_So;
U( ;
O #Funktion_SaSo_T1_Ein;
O #Funktion_SaSo_T2_Ein;
O #Funktion_SaSo_T3_Ein;
O #Funktion_SaSo_T4_Ein;
) ;
O ;
U #Mo_bis_So;
U( ;
O #Funktion_MoSo_T1_Ein;
O #Funktion_MoSo_T2_Ein;
O #Funktion_MoSo_T3_Ein;
O #Funktion_MoSo_T4_Ein;
) ;
= #Schaltuhr_aktiviert;
END_FUNCTION_BLOCK