Funzione da scrivere su un'unità FP0-A04V.
Questa funzione scrive i dati digitali sui canali uscita analogica dell'unità analogica. I valori digitali da convertire e restituire come valori analogici vengono specificati da iOutChannel0 a iOutChannel3.
Ingresso
Imposta l'offset del primo indirizzo WX/WY dell'unità analogica secondo la sua posizione di installazione.
Per le unità di espansione analogica collegate direttamente alla CPU (senza adattatore): Utilizzate ExpansionUnitToIOWordOffset_FP0 oppure effettuate le seguenti impostazioni: 2 (WX2/WY2) per numero unità 1, 4 (WX4/WY4) per numero unità 2, 6 (WX6/WY6) per numero unità 3
Per le unità di espansione analogica collegate alla CPU tramite adattatore: Utilizzare ExpansionUnitToIOWordOffset_FPX_FP0 oppure selezionare l'offset dalla tabella.
Posizione unità relativamente all'adattatore |
Posizione adattatore relativamente alla CPU |
|||||||
---|---|---|---|---|---|---|---|---|
1a unità |
2a unità |
3a unità |
4a unità |
5a unità |
6a unità |
7a unità |
8a unità |
|
1a unità |
30 |
40 |
50 |
60 |
70 |
80 |
90 |
100 |
2a unità |
32 |
42 |
52 |
62 |
72 |
82 |
92 |
102 |
3a unità |
34 |
44 |
54 |
64 |
74 |
84 |
94 |
104 |
Impostare il valore digitale da convertire e restituire tramite l'unità analogica.
Valori: Da -2000 a +2000
Uscita
Stato unità: TRUE quando l'alimentazione è on.
Stato canale: TRUE se è presente un errore.
Valore digitale (INT) |
Valore analogico |
---|---|
-2000 |
-10,0V |
-1500 |
-7,5V |
-1000 |
-5,0V |
-500 |
-2,5V |
0 |
0,0V |
+500 |
+2,5V |
+1000 |
+5,0V |
+1500 |
+7,5V |
+2000 |
+10,0V |
Questa descrizione di comando offre unicamente documentazione base hardware. Per informazioni tecniche dettagliate consultare il manuale:
Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.
VAR
iAnalog_Out_Ch0: INT:=0;
iAnalog_Out_Ch1: INT:=0;
iAnalog_Out_Ch2: INT:=0;
iAnalog_Out_Ch3: INT:=0;
bPowerIsOn: BOOL:=FALSE;
bErrorChannel0: BOOL:=FALSE;
bErrorChannel1: BOOL:=FALSE;
bErrorChannel2: BOOL:=FALSE;
bErrorChannel3: BOOL:=FALSE;
END_VAR
I valori digitali inseriti in iOutChannel0–iOutChannel3 vengono scritti sull'unità analogica e convertiti in valori analogici. Il dato analogico viene restituito sui canali di uscita corrispondenti.
Utilizzare ExpansionUnitNumberToIOWordOffset_FP0 o ExpansionUnitNumberToIOWordOffset_FPX_FP0 per calcolare l'offset della word dell'unità analogica connessa alla CPU.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 7 ;
NETWORK_BODY
B(B_F,Unit_AnalogOutput_FP0_A04V!,,18,0,32,7,,?DiIOWordOffset?DiOutChannel0?DiOutChannel1?DiOutChannel2?DiOutChannel3?CbPowerIsOn?CbErrorChannel0?CbErrorChannel1?CbErrorChannel2?CbErrorChannel3);
B(B_VARIN,,2,16,1,18,3,);
B(B_VAROUT,,bPowerIsOn,32,1,34,3,);
B(B_VARIN,,iAnalog_Out_Ch0,16,2,18,4,);
B(B_VAROUT,,bErrorChannel0,32,2,34,4,);
B(B_VARIN,,iAnalog_Out_Ch1,16,3,18,5,);
B(B_VAROUT,,bErrorChannel1,32,3,34,5,);
B(B_VARIN,,iAnalog_Out_Ch2,16,4,18,6,);
B(B_VAROUT,,bErrorChannel2,32,4,34,6,);
B(B_VARIN,,iAnalog_Out_Ch3,16,5,18,7,);
B(B_VAROUT,,bErrorChannel3,32,5,34,7,);
L(1,0,1,7);
END_NETWORK_BODY
END_NET_WORK
END_BODY
Unit_AnalogOutput_FP0_A04V(iIOWordOffset := 2,
iOutChannel0 := iAnalog_Out_Ch0,
iOutChannel1 := iAnalog_Out_Ch1,
iOutChannel2 := iAnalog_Out_Ch2,
iOutChannel3 := iAnalog_Out_Ch3,
bPowerIsOn => bPowerIsOn,
bErrorChannel0 => bErrorChannel0,
bErrorChannel1 => bErrorChannel1,
bErrorChannel2 => bErrorChannel2,
bErrorChannel3 => bErrorChannel3);