MP_UST_3
Dieser Funktionsbaustein dient zur Steuerung und Überwachung eines Multi IO Moduls UST3.
Über MP_Address wird vorgegeben, mit welchem MP-Busteilnehmer der Baustein kommunizieren soll. bStart aktiviert die Kommunikation mit dem MP-Bus-Teilnehmer. Über bBusy wird angezeigt, dass der Baustein aktiv ist. Bleibt bStart auf TRUE wird mit der Zeit TMPolling der Teilnehmer zyklisch angesprochen. Die Zeit ist größer als eine Sekunde einzustellen. bError zeigt einen Fehler in der Kommunikation mit dem Antrieb an. Die Art des Fehlers kann mit iErrorID ausgelesen werden.
Die Eingangsdaten bRelay_R1 bis bRelay_R3 schalten die Relais R1 bis R3 (PIN 15 bis PIN 17). Die Variable iUa schaltet den analogen Ausgang 0...10 V auf PIN 5. Dabei entspricht ein Digit einem mV.
Die Datenstruktur SETTINGS wird für die Parametrierung des UST3 verwendet. Es kann die Skalierung der analogen Eingangsdaten eingestellt, sowie die Widerstandsmessung auf PIN4 aktiviert werden. Für die Widerstandsmessung kann die Skalierung des Widerstandsmesswert geändert werden. Dies kann auch im laufenden Betrieb erfolgen. iU1 ist der Analoge Eingang auf PIN 3. Dabei entspricht ein Digit einem mV oder, wenn man die Skalierung in der Datenstruktur SETTINGS umgestellt hat, 250 µV. Das gleiche gilt auch für die analogen Eingänge iU2_YSensor (PIN 4) oder auch iU3 (PIN 7).iU2_YSensor kann auch als Widerstandsmessung genutzt werden. Dies muss über die Datenstruktur SETTINGS eingestellt werden. bDigital_S1 bis bDigital_S3 entsprechen den digitalen Eingängen des UST3, PIN 7 bis PIN 9.
Alle Daten werden von der MP-Bus-Masterklemme KL6771 automatisch gepollt. Die Pollgeschwindigkeit hängt ab von der Anzahl der angeschlossenen MP-Bus-Teilnehmer und der eingestellten Pollzeit. Die digitalen Eingänge eignen sich nicht für den Anschluss von Tastern oder Sensoren die nur kurze Impulse ausgeben. Um einen Pegelwechsel sicher mitzubekommen, muss dieser minimal eine Sekunde anliegen.
VAR_INPUT
MP_Address : USINT := 1;
bStart : BOOL;
strDataKL6771 : DataKL6771;
TMpolling : TIME := t#10s;
bRelay_R1 : BOOL;
bRelay_R2 : BOOL;
bRelay_R3 : BOOL;
iUa : UINT;
SETTINGS : UST3_SET;
MP_Address: MP-Bus Adresse des Slaves.
bStart: Positive Flanke startet den Baustein. Liegt dauerhaft ein TRUE an, so wird mit der Zeit TMPolling der Baustein zyklisch aktiv.
strDataKL6771: Datenstruktur die mit dem KL6771() Baustein verbunden sein muss (siehe DataKL6771).
TMpolling: Zeit mit der der Baustein den Antrieb ansprechen soll. Default 10 s, minimale Zeit 1 s.
bRelay_R1: Relais PIN 15.
bRelay_R2: Relais PIN 16.
bRelay_R3: Relais PIN 17.
iUa: Analoger Ausgang PIN 5 (1 mV = 1 Digit).
SETTINGS: Datenstruktur zum Einstellen der Skalierung und der Widerstandsmessung (siehe UST3_SET).
VAR_OUTPUT
bBusy : BOOL;
bError : BOOL;
iErrorId : MP_Error;
iU1 : INT;
iU2_YSensor : INT;
iU3 : INT;
bDigital_S1 : BOOL;
bDigital_S2 : BOOL;
bDigital_S3 : BOOL;
iResistor : INT;
bBusy: Dieses Bit wird so lange gesetzt, wie der Baustein aktiv ist.
bError: Der Ausgang wird TRUE, sobald ein Fehler auftritt. Dieser Fehler wird über die Variable iErrorId beschrieben.
iErrorId: Der Ausgang gibt im Fehlerfall einen Fehlercode aus (siehe MP_Error). Gleichzeitig wird bError TRUE.
iU1: Analoger Eingang PIN 3 (1 Digit = 1 mV oder 1 Digit = 250 µV).
iU2_YSensor: Analoger Eingang PIN 4 (1 Digit = 1 mV oder 1 Digit = 250 µV).
iU3: Analoger Eingang PIN 7 (1 Digit = 1 mV oder 1 Digit = 250 µV).
bDigital_S1: Digitaler Eingang PIN 8.
bDigital_S2: Digitaler Eingang PIN 9.
bDigital_S3: Digitaler Eingang PIN 7.
iResistor: Widerstandswert PIN 4.