RucksackSepp
Level-2
- Beiträge
- 22
- Reaktionspunkte
- 4
-> Hier kostenlos registrieren
Hallo zusammen,
ich bin momentan dabei einige Eierlegende-Wollmilchsau Bausteine zu schreiben, die für ein Ventil viele Funktionsumfänge bereitstellen. Um die Schnittstell möglichst übersichtlich zuhalten, würde ich gerne an der Bausteinschnittstelle abfragen, ob eine Variable zugewiesen ist oder nicht, anstatt eine "Ein/Aus-Variable" zu definieren.
Beispiel, eine Stellungsüberwachung hat zwei Variablen "posOpen" und "posClosed". Daran werden die Endschalter angeschlossen. An "posAvailable" wird über eine Konstante von außen mitgeteilt, ob die Stellungsüberwachung verfügbar ist. Ansonsten gibt's keine Auswertung.
Code ist nur mal Beispielhaft aufgesetzt, um einen Eindruck zu vermitteln. Danke!
ich bin momentan dabei einige Eierlegende-Wollmilchsau Bausteine zu schreiben, die für ein Ventil viele Funktionsumfänge bereitstellen. Um die Schnittstell möglichst übersichtlich zuhalten, würde ich gerne an der Bausteinschnittstelle abfragen, ob eine Variable zugewiesen ist oder nicht, anstatt eine "Ein/Aus-Variable" zu definieren.
Beispiel, eine Stellungsüberwachung hat zwei Variablen "posOpen" und "posClosed". Daran werden die Endschalter angeschlossen. An "posAvailable" wird über eine Konstante von außen mitgeteilt, ob die Stellungsüberwachung verfügbar ist. Ansonsten gibt's keine Auswertung.
C-ähnlich:
VAR_INPUT
trigger BOOL;
posOpen BOOL;
posClosed BOOL;
posAvailable BOOL;
VAR_END
VAR_OUTPUT
valveOpen BOOL;
valveClosed BOOL;
END_VAR
IF NOT #trigger AND #posClosed AND #posAvailable THEN
#valveClosed := TRUE;
ELSIF NOT #trigger AND NOT #posAvailable THEN
#valveClosed := TRUE;
ELSE
valveClosed := FALSE;
END_IF;
Code ist nur mal Beispielhaft aufgesetzt, um einen Eindruck zu vermitteln. Danke!