Herunterladen Diese Seite drucken

JUMO MTRON 4030 Systemhandbuch Seite 55

Vorschau ausblenden Andere Handbücher für MTRON 4030:

Werbung

Beispiel
1.01/Systemhandbuch JUMO mTRON
(* Realisierung eines Retain-Pulsgebers, d.h. eines Pulsgebers,
der eine begonnene Pulsphase nach einer Netzunterbrechung mit
der verbliebenen Restzeit fortsetzt. Zusätzlich wird die
Zeitspanne der Netzunterbrechung berücksichtigt. Aus Gründen
der Übersichtlichkeit wird nur eine NetzAus-Zeit bis 1 Stunde
berücksichtigt *)
VAR
pulsdauer : UINT;
netzauszeit : UINT;
END_VAR
VAR RETAIN
restzeit : UINT;
zeitnetzaus : DT;
zeitnetzein : DT;
END_VAR
VAR CONSTANT
millisekunde : UINT := 1;
sekunde : UINT := 2;
minute : UINT := 3;
gesamtzeit : UINT := 120;
END_VAR
IF reset_flag THEN
IF restzeit > 0 THEN(* Pulsphase nach NetzAus fortsetzen? *)
TP2 (FALSE, TP2.ET, sekunde);(* letzte Pulsphase
zeitnetzein := RTC.CDT;(* Zeitpunkt NetzEin *)
(* folgende 5 Zeilen: NetzAus-Zeit in Sekunden *)
IF GET_MINUTE (zeitnetzein) >= GET_MINUTE (zeitnetzaus)
THEN
netzauszeit := (GET_MINUTE (zeitnetzein) -
ELSE
netzauszeit := ((GET_MINUTE (zeitnetzein) + 60)
END_IF;
netzauszeit := netzauszeit + GET_SECOND (zeitnetzein) -
IF netzauszeit >= restzeit THEN
(* Pulsgeber wegen zu langer NetzAus-Zeit ... *)
pulsdauer := 0;(* ... nicht fortführen *)
ELSE
pulsdauer := restzeit - netzauszeit;
(* Pulsgeber abzüglich NetzAus-Zeit ... *)
TP2 (TRUE, pulsdauer, sekunde);
(* ... fortführen *)
END_IF;
ELSE
pulsdauer := gesamtzeit;(* nächste Pulsph. beginnt neu *)
END_IF;
END_IF;
TP2 (e_01, pulsdauer, sekunde);
(* Merker, nicht retain *)
(* Merker, retain *)
(* Datenbausteine *)
(* Zeitbasis Millisekunden *)
(* Zeitbasis Sekunden *)
(* Zeitbasis Minuten *)
(* Dauer der Pulsphase *)
(* Initialisierungsblock: Neustart *)
GET_MINUTE (zeitnetzaus)) * 60;
- GET_MINUTE (zeitnetzaus)) * 60;
GET_SECOND (zeitnetzaus);
6 Programmieren
abbrechen *)
7–53

Werbung

loading

Diese Anleitung auch für:

70.4030