CODESYS Status Bytes DIO/DI/DO

Codesys hilft Dir bei der Konfiguration Deines RevPi DIO/DI/DO.

  • Doppelklicke im Codesys-Baum auf das RevPi DIO/DI/DO.
  • Klicke auf die erste Registerkarte “Module Parameters”.

Konfigurationswerte der DIO Module in Codesys

Konfigurationswerte der DO Module in Codesys

Konfigurationswerte der DI Module in Codesys

Input Im Bereich Input kannst Du Einstellungen für alle Parameter vornehmen, die Dein RevPi Modul empfängt. Das können z. B. die Werte eines Temperatursensors sein.

Im Bereich Memory kannst Du auswählen, wie die Eingänge ausgewertet werden sollen.

Optional kannst Du die Eingänge auch als Encoder (Drehwertgeber) konfigurieren und eine Zählerfunktion zuschalten.

Detaillierte Informationen zum Bereich Memory und den Funktionen Encoder und Counter findest Du in den entsprechenden Abschnitten in diesem Kapitel.

Name

Datentyp

Anzahl

Offset

RevPi DIO

RevPi DI

RevPi DO

Beschreibung

Input

WORD

1

0

X

X

Aktuelle Werte an den Eingängen.

Die Bits 0 – 15 (DI) bzw. 0-13 (DIO) zeigen die aktuellen Werte der Eingänge 1 – 16 (DI) bzw. 1-14 (DIO) an.

Output Status

WORD

1

2

X

X

Bitcodierter Status der Ausgänge.

Die Bits 0 – 15 (DO) bzw. 0-13 (DIO) zeigen den aktuellen Fehlerzustand der Ausgänge 1 – 16 (DO) bzw. 1-14 (DIO) an.

1: Fehler am Ausgang (Abschaltung wegen Übertemperatur, Überlast..).

0: kein Fehler

Status

WORD

1

4

X

X

X

Modulstatus

Hinweis! Die Werte von Bit 0-7 gelten für RevPi DIO und DI. Für RevPi DO sind die Bits nicht belegt, da dieses Modul keinen Eingangsbaustein hat.

Bit 0: Keine Kommunikation zum Eingangsbaustein.

Bit 1: UV1* auf Eingang 1 – 8

Bit 2: UV2* auf Eingang 1 – 8

Bit 3: Übertemperatur** für Eingang 1 – 8

Bit 4: UV1* auf Eingang 9 – 16

Bit 5: UV2* auf Eingang 9 – 16

Bit 6: Übertemperatur** für Eingang 9 – 16

Bit 7: Fehlermeldung des Eingangsbausteins

Hinweis! Die Werte von Bit 8-16 gelten für RevPi DIO und DO. Für RevPi DI sind die Bits nicht belegt, da das Modul keinen Ausgangsbaustein hat.

Bit 8: Keine Kommunikation zum Ausgangsbaustein.

Bit 9: Der Ausgangsbaustein meldet einen CRC-Fehler.

Bit 10: Fehlermeldung des Ausgangsbausteins.

Bit 11 – 15: undefiniert

Counter

DINT

16

6

X

X

Aktuelle Werte der Counter- bzw. Encoderfunktion.

UV1: Die Versorgungsspannung für die Eingangsbausteine ist unter 7 Volt gesunken. Der Alarm wird aufgehoben, wenn der Wert wieder über 9 Volt steigt.

UV2: Die Versorgungsspannung für die Eingangsbausteine ist unter 14 Volt gesunken. Der Alarm wird aufgehoben, wenn der Wert wieder über 16,5 Volt steigt.

Die Kanäle 1-8 und 9-16 haben getrennte Bits für UV1 und UV 2, weil dafür zwei individuelle Bausteine im Modul sind, die dieses Signal erzeugen. Die Spannung liegt jedoch immer an beiden Bausteinen identisch an. Deshalb setzen beide Bausteine ihr Fehlerbit bei UV1 oder UV2.

**Die Eingangsbausteine melden einen Übertemperatur-Alarm, wenn 135 °C überschritten werden.

Output

Im Bereich Output kannst Du Einstellungen für alle Prozesswerte vornehmen, die Dein RevPi Modul sendet.

Im Bereich Memory kannst Du auswählen, wie die Ausgänge eingestellt werden.

Optional kannst Du eine PWM-Funktion zuschalten.

Detaillierte Informationen zum Bereich Memory und der PWM-Funktionen findest Du in den entsprechenden Abschnitten in diesem Kapitel.

Name

Datentyp

Anzahl

Offset

RevPi DIO

RevPi DI

RevPi DO

Beschreibung

Output

WORD

1

70

X

X

Aktuelle Werte an den Ausgängen.

Die Bits 0 – 15 (DO) bzw. 0-13 (DIO) zeigen die aktuellen Werte der Ausgänge 1 – 16 (DO) bzw. 1-14 (DIO) an.

PWM
(1 – 16)

USINT

16

72

X

X

Aktuelle PWM-Werte in % für die Ausgänge 1 – 16 (DO) bzw. 1-14 (DIO).
Diese Werte sind nur gültig, wenn für den jeweiligen Ausgang die PWM-Funktion aktiviert ist.

Memory

Im Bereich Memory kannst Du festlegen, wie die einzelnen Eingänge ausgewertet werden sollen und wie die Ausgänge eingestellt werden.

Name

Datentyp

Anzahl

Offset

RevPi DIO

RevPi DI

RevPi DO

Beschreibung

InputMode

BYTE

16

88

X

X

Auswahl des Modus für den jeweiligen Eingang.

Direct: Es kann der aktuell anliegende Wert des Eingangs abgerufen werden.

Counter, rising edge: Am Eingang werden die steigenden Flanken gezählt.

Counter, falling edge: Am Eingang werden die fallenden Flanken gezählt.

Encoder: Dieser Eingang wird für die Encoderfunktion verwendet. ACHTUNG: Für die Encoderfunktion werden immer zwei Eingänge benötigt (s. Abschnitt „Encoder“.)

InputDebounce

WORD

1

104

x

x

Hier wird für alle Eingänge eine Zeit für den Entprellfilter angegeben. Diese Zeit gibt an, ab wann ein wechselnder Zustand am Eingang als stabil angesehen wird. Mögliche Werte sind Off, 25 µs, 750 µs und 3 ms.

OutputPushPull

WORD

1

106

X

X

Hier wird für die Ausgänge festgelegt, ob sie im Pushpull- oder im Highsidemodus betrieben werden.

OutputOpenLoadDetect

WORD

1

108

X

X

Hier wird für die Ausgänge festgelegt, ob eine open-load Erkennung aktiv ist.

OutputPWMActive

WORD

1

110

X

X

Hier wird festgelegt, ob der Ausgang im PWM-Modus betrieben werden soll.

OutputPWMFrequency

BYTE

1

112

X

X

Hier wird für alle Ausgänge, die im PWM-Modus betrieben werden sollen, festgelegt, mit welcher Frequenz das PWM-Signal erzeugt werden soll. Allgemein gilt: Je höher die Frequenz, desto höher ist die Schrittweite, in der das Taktverhältnis eingestellt werden kann.

Counter

Du kannst für jeden der 14 Eingänge optional eine Zählerfunktion einschalten. Wie bereits der Name sagt, kannst Du mit dieser Funktion zählen z. B. wie oft ein Drehkreuz oder ein Taster betätigt wurde.

Ein Beispiel dafür findest Du auch in unseren Video-Tutorials. Für jeden Zähler steht dann ein 32-Bit-Wert im Prozessabbild. Der aktuelle Zählerwert wird als signed 32 bit Wert zurückgegeben.

Encoder

Du kannst maximal 5 Encoder verwenden.
Pro Encoder benötigst Du jeweils 2 Eingänge. Dazu musst Du die Eingänge immer paarweise verwenden.

Z. B.:

Eingang 1 und 2,

Eingang 3 und 4

Eingang 13 und 14 (bzw. Eingang 15 und 16 bei PiDi)

Es ist wichtig, dass Du den ersten Encoder-Kanal immer an einem ungeraden Eingang anlegst. Wenn Du das nicht tust und z. B. Eingang 2 und 3 verwendest, wird Dein Encoder nicht erkannt.

Der aktuelle Encoderwert wird als signed 32 bit Wert für den ersten Kanal zurückgegeben.

PWM

Du kannst für jeden der 14 Ausgänge optional eine PWM-Funktion einschalten.

Die PWM-Funktion ist z. B. dann hilfreich, wenn Du Teile von Mengen steuern möchtest. Damit kannst Du etwa eine Wasserzufuhr regulieren oder Lichter dimmen.

Bei eingeschaltetem PWM wird statt einem Bit pro Kanal ein ganzer Bytewert von 0 bis 100 übertragen, der in Prozent die Pulsweite am Ausgang definiert. Per Konfiguration kann pro Modul eine der folgenden PWM-Frequenzen festgelegt werden:

PWM-Frequenz

Auflösung der kleinsten Schrittweite in Prozent (Tastgrad)

40 Hz

1 %

80 Hz

2 %

160 Hz

4 %

200 Hz

5 %

400 Hz

10 %

Der aktuelle Tastgrad in % wird über einen unsigned 8 bit Wert eingestellt.