Funktionsbaustein zum Schreiben in ein FP0R-DA4-Modul.
Dieser Funktionsbaustein schreibt die digitalen Werte in die analogen Ausgangskanäle des Analogmoduls. Die digitalen Werte, die umgewandelt und als analoge Werte ausgegeben werden sollen, werden bei iOutChannel0 bis iOutChannel3 festgelegt.
Die analogen Ausgangsbereiche werden ebenfalls mit diesem Funktionsbaustein festgelegt.
Der Spannungs- oder Stromausgang muss mit den DIP-Schaltern festgelegt werden.
Eingang
Setzt den Offset der ersten WX/WY-Adresse des Analogmoduls entsprechend dem Installationsort.
Für analoge Erweiterungsmodule, die direkt an die CPU angeschlossen sind (ohne Adapter): Verwenden Sie ExpansionUnitToIOWordOffset_FP0 oder nehmen Sie die folgenden Einstellungen vor: 2 (WX2/WY2) für die Modulnummer 1, 4 (WX4/WY4 für die Modulnummer 2, 6 (WX6/WY6) für die Modulnummer 3
Für analoge Erweiterungsmodule, die über einen Adapter an die CPU angeschlossen sind: Verwenden Sie ExpansionUnitToIOWordOffset_FPX_FP0oder wählen Sie den Offset aus der Tabelle.
Modulposition relativ zum Adapater |
Adapterposition relativ zur CPU |
|||||||
---|---|---|---|---|---|---|---|---|
1. Modul |
2. Modul |
3. Modul |
4. Modul |
5. Modul |
6. Modul |
7. Modul |
8. Modul |
|
1. Modul |
30 |
40 |
50 |
60 |
70 |
80 |
90 |
100 |
2. Modul |
32 |
42 |
52 |
62 |
72 |
82 |
92 |
102 |
3. Modul |
34 |
44 |
54 |
64 |
74 |
84 |
94 |
104 |
Setzt den digitalen Wert, der umgewandelt und vom Analogmodul ausgegeben werden soll.
Legt den Spannungs- oder Strombereich für den analogen Ausgangskanal fest.
Ausgang
Modulstatus: TRUE wenn die Stromversorgung eingeschaltet ist.
TRUE wenn die E/A-Konfiguration abgeschlossen ist und das Modul bereit ist.
Kanalstatus: TRUE wenn ein Fehler vorliegt.
DIP-Schalter 1 muss auf EIN stehen, um den 14-Bit-Modus zu verwenden. Mit den Schaltern 2 und 5 wird der Spannungs- oder Stromausgang für jeden Kanal gewählt.
Die DIP-Schaltereinstellungen werden wirksam, wenn die Stromversorgung eingeschaltet wird.
Kanal 0 |
Kanal 1 |
Kanal 2 |
Kanal 3 |
|||||
---|---|---|---|---|---|---|---|---|
Spannungsausgang |
Stromausgang |
Spannungsausgang |
Stromausgang |
Spannungsausgang |
Stromausgang |
Spannungsausgang |
Stromausgang |
|
Spannungsausgang |
Stromausgang |
---|---|
-10V bis +10V DC Ausgang |
-5V bis +5V DC Ausgang |
0V bis 5V DC Ausgang |
|||
---|---|---|---|---|---|
Digitalwert (INT) |
Analogwert |
Digitalwert (INT) |
Analogwert |
Digitalwert (INT) |
Analogwert |
-8000 |
-10,0V |
-8000 |
-5,0V |
0 |
0,0V |
-4000 |
-5,0V |
-4000 |
-2,5V |
4000 |
1,25V |
0 |
0V |
0 |
0V |
8000 |
2,5V |
+4000 |
5,0V |
+4000 |
+2,5V |
12000 |
3,75V |
+8000 |
10,0V |
+8000 |
+5,0V |
16000 |
5,0V |
0V bis 10V DC Ausgang |
0mA bis 20mA Ausgang |
4mA bis 20mA Ausgang |
|||
---|---|---|---|---|---|
Digitalwert (INT) |
Analogwert |
Digitalwert (INT) |
Analogwert |
Digitalwert (INT) |
Analogwert |
0 |
0,0V |
0 |
0,0mA |
0 |
4,0mA |
4000 |
2,5V |
3200 |
4,0mA |
4000 |
8,0mA |
8000 |
5,0V |
6400 |
8,0mA |
4000 |
12,0mA |
12000 |
7,5V |
9600 |
12,0mA |
4000 |
16,0mA |
16000 |
10,0V |
12800 |
16,0mA |
16000 |
20,0mA |
16000 |
20,0mA |
Diese Befehlsbeschreibung enthält nur eine grundlegende Hardware-Dokumentation. Detaillierte technische Informationen entnehmen Sie bitte dem Handbuch:
Im POE-Kopf werden alle Ein- und Ausgangsvariablen deklariert, die für die Programmierung dieser Funktion verwendet werden. Für alle Programmiersprachen wird der gleiche POE-Kopf verwendet.
VAR
Inst_FP0R_DA4: Unit_AnalogOutput_FP0R_DA4;
iAnalogOut0: INT:=0;
iAnalogOut1: INT:=0;
iAnalogOut2: INT:=0;
iAnalogOut3: INT:=0;
bPowerIsOn: BOOL:=FALSE;
bConfig_done: BOOL:=FALSE;
bErrorCh0: BOOL:=FALSE;
bErrorCh1: BOOL:=FALSE;
bErrorCh2: BOOL:=FALSE;
bErrorCh3: BOOL:=FALSE;
END_VAR
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 12 ;
NETWORK_BODY
B(B_COMMENT,,FP0R-DA4,2,1,17,2,);
B(B_FB,Unit_AnalogOutput_FP0R_DA4!,Inst_FP0R_DA4,19,1,36,12,,?BiIOWordOffset?BiOutChannel0?BiOutChannel1?BiOutChannel2?BiOutChannel3?BwOutChannel0_Config?BwOutChannel1_Config?BwOutChannel2_Config?BwOutChannel3_Config?CbPowerIsOn?CbConfigIsDone?CbErrorChannel0?CbErrorChannel1?CbErrorChannel2?CbErrorChannel3);
B(B_VARIN,,4,17,2,19,4,);
B(B_VAROUT,,bPowerIsOn,36,2,38,4,);
B(B_VARIN,,iAnalogOut0,17,3,19,5,);
B(B_VAROUT,,bConfig_done,36,3,38,5,);
B(B_VARIN,,iAnalogOut1,17,4,19,6,);
B(B_VAROUT,,bErrorCh0,36,4,38,6,);
B(B_VARIN,,iAnalogOut2,17,5,19,7,);
B(B_VAROUT,,bErrorCh1,36,5,38,7,);
B(B_VARIN,,iAnalogOut3,17,6,19,8,);
B(B_VAROUT,,bErrorCh2,36,6,38,8,);
B(B_VARIN,,0,17,7,19,9,);
B(B_VAROUT,,bErrorCh3,36,7,38,9,);
B(B_VARIN,,0,17,8,19,10,);
B(B_VARIN,,0,17,9,19,11,);
B(B_VARIN,,0,17,10,19,12,);
L(1,0,1,12);
END_NETWORK_BODY
END_NET_WORK
END_BODY
Inst_FP0R_DA4(iIOWordOffset := 2,
iOutChannel0 := iAnalogOut0,
iOutChannel1 := iAnalogOut1,
iOutChannel2 := iAnalogOut2,
iOutChannel3 := iAnalogOut3,
wOutChannel0_Config := 0,
wOutChannel1_Config := 0,
wOutChannel2_Config := 0,
wOutChannel3_Config := 0,
bPowerIsOn => bPowerIsOn,
bConfigIsDone => bConfig_done,
bErrorChannel0 => bErrorCh0,
bErrorChannel1 => bErrorCh1,
bErrorChannel2 => bErrorCh2,
bErrorChannel3 => bErrorCh3);