Generierung impliziter Variablen für das Forcing von E/As

Bei der Inbetriebnahme einer Anlage oder Maschine kann es erforderlich sein, die an den Ein- und Ausgängen anliegenden Werte zu "erzwingen". Wenn ein Gerät dies unterstützt, können Sie zu diesem Zweck spezielle "Kraftvariablen" erzeugen lassen und diese z.B. in einer HMI-Visualisierung verwenden.

Erfordernis: Das Gerät unterstützt diese Funktion. Sie haben ein Projekt, in dem eine I/O-Map für das Gerät konfiguriert ist und das ein Programmobjekt ‎PLC_PRG‎ enthält.

  1. Öffnen Sie den Geräteeditor, „Registerkarte SPS-Einstellungen“, durch Doppelklick auf das Geräteobjekt im Gerätebaum.

  2. Aktivieren Sie die Option „Force-Variablen für IO-Mapping generieren“.

  3. Drücken Sie [F11], um die Anwendung zu kompilieren.

    Für jeden E/A-Kanal werden zwei Variablen nach der folgenden Syntax angelegt, wobei Leerzeichen im Kanalnamen durch Unterstriche ersetzt werden:

    ‎<device name>_<channel name>_<IECaddress>_force‎ vom Typ ‎BOOL‎ zur Aktivierung und Deaktivierung des Forcierens

    ‎<device name>_<channel name>_<IECaddress>_value‎ des Datentyps des Kanals, um den Wert zu definieren, den Sie dem Kanal aufzwingen wollen

    Diese Variablen sind im Eingabeassistenten in der Kategorie „Variables“ / „IoConfig_Globals_Force_Variables verfügbar.“ Sie können sie unter CODESYS in Programmierobjekten, in Visualisierungen, in der Symbolkonfiguration usw. verwenden.

  4. Öffnen Sie den Funktionsblock „PLC_PRG“, setzen Sie den Fokus in den Implementierungsteil und drücken Sie F2.

    Der Eingabeassistent wird geöffnet. Die Variablen sind in der Kategorie „Variables“ / „IoConfig_Globals_Force_Variables“ wie oben beschrieben verfügbar.

    Eine steigende Flanke am Eingang "Force Variable" aktiviert das Forcen des jeweiligen Ein- oder Ausgangs mit dem durch die "Value Variable" vorgegebenen Wert. Eine fallende Flanke schaltet das Forcing aus. Die Deaktivierung durch Zurücksetzen der "Force"-Variablen auf ‎FALSE‎ ist die Voraussetzung dafür, dass ein neuer Wert erzwungen werden kann.

Beachten Sie die folgenden Einschränkungen.

  • Das Forcen über die impliziten Force-Variablen ist nur für Kanäle möglich, die im „I/O Mapping“ des Gerätes auf eine bestehende oder neu angelegte Variable gemappt sind.

  • Das Forcen über die impliziten Force-Variablen ist nicht möglich für unbenutzte Ein- und Ausgänge oder solche, die über eine AT-Deklaration in einem Anwendungsprogramm auf eine Variable abgebildet werden.

  • E/A-Kanäle, die Sie über den Mechanismus erzwingen wollen, müssen von CODESYS in mindestens einer Task verwendet werden.

  • CODESYS kennzeichnet erzwungene Eingänge in der Überwachung durch das rote Force-Symbol, nicht aber erzwungene Ein-/Ausgänge. Der erzwungene Wert wird vom E/A-Treiber nur implizit zum Schreiben auf das Gerät verwendet.

Für weitere Informationen siehe: ⮫ „Erzwingen und Schreiben von Variablen “