Función para escribir en un módulo FP0-A04V.
Esta función escribe datos digitales en los canales de salida analógica del módulo analógico. Los valores digitales a convertir y la salida como valores analógicos se especifican en iOutChannel0–iOutChannel3.
Entrada
Ajustar el offset de la primera dirección WX/WY del módulo de entradas analógicas según su posición de instalación.
Para módulos de expansión analógicos conectados directamente a la CPU (sin adaptador): Utilizar ExpansionUnitToIOWordOffset_FP0 o realizar la siguiente configuración: 2 (WX2/WY2) para el módulo 1, 4 (WX4/WY4) para el módulo 2, 6 (WX6/WY6) para el módulo 3
Para módulos de expansión analógicos conectados a la CPU a través de un adaptador: Utilizar ExpansionUnitToIOWordOffset_FPX_FP0 o seleccionar el offset de la tabla.
Posición del módulo respecto al adaptador |
Posición del adaptador respecto a la CPU |
|||||||
---|---|---|---|---|---|---|---|---|
1er módulo |
2º módulo |
3er módulo |
4º módulo |
5º módulo |
6º módulo |
7º módulo |
8º módulo |
|
1er módulo |
30 |
40 |
50 |
60 |
70 |
80 |
90 |
100 |
2º módulo |
32 |
42 |
52 |
62 |
72 |
82 |
92 |
102 |
3er módulo |
34 |
44 |
54 |
64 |
74 |
84 |
94 |
104 |
Ajustar el valor digital a convertir y emitir por el módulo analógico.
Valores: -2000 a +2000
Salida
Estado del módulo: TRUE cuando la alimentación está conectada.
Estado del canal: TRUE si hay un error.
Valor digital (INT) |
Valor analógico |
---|---|
-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 |
Esta descripción de comandos solo proporciona documentación básica sobre el hardware. Para obtener información técnica detallada, consultar el manual:
Todas las variables de entrada y de salida utilizadas para la programación de esta función han sido declaradas en la Cabecera de la POU. Se utiliza la misma cabecera de la POU para todos los lenguajes de programación.
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
Los valores digitales introducidos en iOutChannel0–iOutChannel3 se escriben en la entrada analógica y se convierten en valores analógicos. Los datos analógicos se envían al canal correspondiente de salida.
Utilizar ExpansionUnitNumberToIOWordOffset_FP0 o ExpansionUnitNumberToIOWordOffset_FPX_FP0 para calcular el offset de la palabra del módulo analógico conectado a la 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);