Unit_AnalogInput_FP0_RTD_REALBloque de función para leer desde un módulo FP0-RTD6 (los valores digitales convertidos son de tipo REAL).
El dato de la expansión analógica se almacena para cada canal, en las variables de salida Este bloque de función lee valores digitales convertidos de los canales de entrada del módulo de entradas analógicas.rChannel0rChannel5.
Para medir los datos de la entrada RTD, se pueden utilizar los siguiente dispositivos: Pt100 (según IEC751), Pt1000 (según IEC751), Ni1000 (según DIN43760), o una resistencia.
El dispositivo de medición debe ajustarse con los interruptores DIP y en el bloque de función.
El tiempo de muestreo debe ajustarse con los interruptores DIP.

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 la resolución del canal correspondiente.
No modificar este valor durante el tiempo de ejecución. En caso contrario la conversión puede no ser precisa durante 1s.
Ajustar la unidad de temperatura.
Ajustar el dispositivo RTD.
La configuración debe coincidir con la combinación de los interruptores DIP.
Salida
Devuelve el valor digital convertido por el módulo analógico, para cada canal.
Ejemplo:
Termopar, baja resolución: 20,12°C → 20,1 (valor de medición fuera de rango: 819,1)
Termopar, alta resolución 20,12°C → 20,12 (valor de medición fuera de rango: 81,91)
Resistencia, baja resolución: 25W → 25 (valor de medición fuera de rango: 16383)
Resistencia, alta resolución: 25,4W → 25,4 (valor de medición fuera de rango: 1638,3)
Desde que se aplica alimentación y se lee el primer valor de conversión, el valor digital será 8191 ó 16383. En el programa del PLC, no se debe tener en cuenta este valor durante este periodo.
Si se ha roto la sonda RTD, el valor digital pasará a 8191 ó 16383. Tener en cuenta este valor en el código del programa, para evitar cualquier riesgo que se pueda producir por la rotura del RTD. Siempre se debe sustituir el RTD estropeado.
La configuración de los interruptores DIP se hará efectiva cuando la alimentación pase de OFF a ON.
Pt100 |
Pt1000 |
Ni1000 |
Resistencia |
|
|---|---|---|---|---|
Pt100 |
Pt1000 |
Ni1000 |
Resistencia |
|
|---|---|---|---|---|
0,1s |
1s |
|
|---|---|---|
Resolución: 0,1K/0,1F, 1Ω
Pt100 |
Pt1000 |
||
|---|---|---|---|
°C/°F |
°C/°F |
||
Valor analógico |
Valor digital |
Valor analógico |
Valor digital |
-200,0/-328,0 |
-2000/-3280 |
-200,0/-328,0 |
-2000/-3280 |
+500,0/+800,0 |
+5000/+8000 |
+300,0/+572,0 |
+3000/+5720 |
Ni1000 |
Resistencia |
||
|---|---|---|---|
°C/°F |
Ω |
||
Valor analógico |
Valor digital |
Valor analógico |
Valor digital |
-30,0/-22,0 |
-300/-220 |
+20 |
+20 |
+150,0/+302,0 |
+1500/+3020 |
+2200 |
+2200 |
Resolución: 0,01K/0,01F, 0,1Ω
Pt100 |
Pt1000 |
||
|---|---|---|---|
°C/°F |
°C/°F |
||
Valor analógico |
Valor digital |
Valor analógico |
Valor digital |
-80,00/-80,00 |
-8000/-8000 |
-80,00/-80,00 |
-8000/-8000 |
+80,00/+80,00 |
+8000/+8000 |
+80,00/+80,00 |
+8000/+8000 |
Ni1000 |
Resistencia |
||
|---|---|---|---|
°C/°F |
Ω |
||
Valor analógico |
Valor digital |
Valor analógico |
Valor digital |
-30,00/-22,00 |
-3000/-2200 |
+20,0 |
+200 |
+80,00/+80,00 |
+8000/+8000 |
+1630,0 |
+16300 |
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
Inst_FP0_RTD_REAL: Unit_AnalogInput_FP0_RTD_REAL;
rRTD_In0: REAL:=0;
rRTD_In1: REAL:=0;
rRTD_In2: REAL:=0;
rRTD_In3: REAL:=0;
rRTD_In4: REAL:=0;
rRTD_In5: REAL:=0;
END_VAR
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 := 13 ;
NETWORK_BODY
B(B_FB,Unit_AnalogInput_FP0_RTD_REAL!,Inst_FP0_RTD_REAL,19,1,37,13,,?BiIOWordOffset?BbChannel0HighResolution?BbChannel1HighResolution?BbChannel2HighResolution?BbChannel3HighResolution?BbChannel4HighResolution?BbChannel5HighResolution?BbTemperatureInFahrenheit?BbChannel012DIPSwitchSetToResistor?BbChannel345DIPSwitchSetToResistor?CrChannel0?CrChannel1?CrChannel2?CrChannel3?CrChannel4?CrChannel5);
B(B_VARIN,,2,17,2,19,4,);
B(B_VAROUT,,rRTD_In0,37,2,39,4,);
B(B_VARIN,,false,17,3,19,5,);
B(B_VAROUT,,rRTD_In1,37,3,39,5,);
B(B_VARIN,,false,17,4,19,6,);
B(B_VAROUT,,rRTD_In2,37,4,39,6,);
B(B_VARIN,,false,17,5,19,7,);
B(B_VAROUT,,rRTD_In3,37,5,39,7,);
B(B_VARIN,,false,17,6,19,8,);
B(B_VAROUT,,rRTD_In4,37,6,39,8,);
B(B_VARIN,,false,17,7,19,9,);
B(B_VAROUT,,rRTD_In5,37,7,39,9,);
B(B_VARIN,,false,17,8,19,10,);
B(B_VARIN,,false,17,9,19,11,);
B(B_VARIN,,false,17,10,19,12,);
B(B_VARIN,,false,17,11,19,13,);
L(1,0,1,13);
END_NETWORK_BODY
END_NET_WORK
END_BODY
Inst_FP0_RTD_REAL(iIOWordOffset := 2,
bChannel0HighResolution := false,
bChannel1HighResolution := false,
bChannel2HighResolution := false,
bChannel3HighResolution := false,
bChannel4HighResolution := false,
bChannel5HighResolution := false,
bTemperatureInFahrenheit := false,
bChannel012DIPSwitchSetToResistor := false,
bChannel345DIPSwitchSetToResistor := false,
rChannel0 => rRTD_In0,
rChannel1 => rRTD_In1,
rChannel2 => rRTD_In2,
rChannel3 => rRTD_In3,
rChannel4 => rRTD_In4,
rChannel5 => rRTD_In5);