System-Variablen¶
Was ist eine Systemvariable?¶
Eine Systemvariable ist ein Symbol in der Symboliktabelle, welches bestimmte Informationen liefert. Der Inhalt dieser Variablen wird von der Grafcet-Engine geliefert.
Einsatzgebiete von Systemvariablen:¶
Beispiele mit Systemvariablen:
- Einen Ausgang mit 1 Hz blinken lassen
- In Abhängigkeit von der Uhrzeit etwas ein- oder ausschalten
- Zeitmessungen: wenn ein Schritt zu lange aktiv ist, dann darauf reagieren, eigene Timer programmieren
Weiter unten finden Sie konkrete Beispiele.
Wie verwendet man eine Systemvariable?¶
Zuerst fügt man die Systemvariable in die Symboliktabelle ein und anschließend kann man sie verwenden, wie jedes andere Symbol auch. In der Symboliktabelle kann man über das Kontextmenü alle Systemvariablen einfügen lassen. Anschließend löschen Sie einfach die Symbole, die Sie nicht benötigen.
In der nachfolgenden animierten GIF-Datei sieht man, wie man die Systemvariablen einfügt. Anschließend werden nicht benötigte Variablen gelöscht.
Welche Systemvariablen stehen zur Verfügung?¶
Tabelle Systemvariablen:
Systemvariable | Datentyp | Beschreibung |
---|---|---|
_SI_RTC_YEAR | UInt16 | Liefert das aktuelle Jahr |
_SI_RTC_MONTH | Byte | Liefert den aktuellen Monat |
_SI_RTC_DAY | Byte | Liefert den aktuellen Tag |
_SI_RTC_H | Byte | Liefert die aktuelle Stunde |
_SI_RTC_M | Byte | Liefert die aktuellen Minuten |
_SI_RTC_S | Byte | Liefert die aktuellen Sekunden |
_SI_RTC_MS | UInt16 | Liefert die aktuellen Millisekunden |
_SI_TOGGLE | Bool | Wechselt bei jedem Zyklus: True, False, True, ... |
_SI_1HZ | Bool | Liefert einen 1 Hz Takt (z.B. für Meldeleuchten) |
_SI_10HZ | Bool | Liefert einen 10 Hz Takt (z.B. für Meldeleuchten). Verfügbar ab Version 2.0.0.0. |
_SI_100HZ | Bool | Liefert einen 100 Hz Takt (z.B. für Meldeleuchten). Unter Umständen ist die Zykluszeit nicht ausreichend, um einen 10 Hz Takt zu liefern.Verfügbar ab Version 2.0.0.0. |
_SI_TICKS | UInt32 | Ist ein Millisekunden-Zähler. Zeitmessungen realisierbar |
_SI_CYCLIC_COUNTER | UInt16 | Wird bei jedem Zyklus immer um 1 inkrementiert (erhöht). |
_SI_CYCLIC_TIME | UInt16 | Liefert die aktuelle Zykluszeit in Millisekunden |
_SI_VERSION | UInt16 | Liefert die aktuelle Grafcet-Engine-Version |
_SI_WBYTES | UInt16 | Wenn >0, dann ist das Beobachten aktiv |
Grafcet-Beispiele¶
Beispiel: Einen Ausgang mit 1 Hz blinken lassen
Beispiel: Ausgang um 12:00 Uhr einschalten und um 13:00 Uhr wieder ausschalten. Im nachfolgenden Bild sind 2 Varianten zu sehen:
Beispiel: Wenn ein Schritt länger als 5 Sekunden aktiv ist, dann den Ausgang 'TimeOut' auf ‚1‘ schalten.
Info
Beispiele als Grafcet-Studio Projekt Datei herunterladen System-Variables-Examples
Info
Grafcet-Studio Version 1.0.3.2 oder neuer erforderlich