Unit_AnalogInput_FP0_RTD_REALFunction block per leggere da un'unità FP0-RTD6 (i valori digitali convertiti sono del tipo di dato REAL).
Questo Function Block legge i valori digitali convertiti dai canali ingresso analogico dell'unità analogica. I valori digitali convertiti dall'unità analogica vengono salvati per canale nelle variabili di uscita da rChannel0 a rChannel5.
Per la misurazione del dato di ingresso RTD è possibile utilizzare i seguenti dispositivi: Pt100 (secondo IEC751), Pt1000 (secondo IEC751), Ni1000 (secondo DIN43760) o una resistenza.
Il dispositivo di misurazione deve essere impostato con i DIP switch e nel Function Block.
Il ciclo di campionamento deve essere impostato con i DIP switch.

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 |
Imposta la risoluzione del canale corrispondente.
Non modificare questo valore durante il runtime. Diversamente la conversione sarà inesatta di 1s..
Impostare l'unità di temperatura.
Impostare il dispositivo RTD.
L'impostazione deve coincidere con le impostazioni degli interruttori DIP.
Uscita
Restituisce i dati digitali convertiti dall'unità analogica per canale.
Esempio:
Termocoppia, bassa risoluzione: 20,12°C → 20,1 (valore misurazione fuori range: 819,1)
Termocoppia, alta risoluzione 20,12°C → 20,12 (valore misurazione fuori range: 81,91)
Resistenza, bassa risoluzione: 25W → 25 (valore misurazione fuori range: 16383)
Resistenza, alta risoluzione: 25,4W → 25,4 (valore misurazione fuori range: 1638,3)
Tra l'accensione e il primo dato di conversione valido, il valore digitale sarà 8191 o 16383. Al momento della programmazione, assicuratevi di non utilizzare il dato ottenuto durante questo periodo.
Quando la RTD è rotta, il valore digitale cambia in 8191 o 16383. Al momento della programmazione, evitate qualsiasi rischio derivante da una RTD rotta. Una RTD rotta deve essere sostituita.
Le impostazioni DIP switch sono valide quando l'alimentazione passa da OFF a ON.
Pt100 |
Pt1000 |
Ni1000 |
Resistenza |
|
|---|---|---|---|---|
Pt100 |
Pt1000 |
Ni1000 |
Resistenza |
|
|---|---|---|---|---|
0,1s |
1s |
|
|---|---|---|
Risoluzione: 0,1K/0,1F, 1Ω
Pt100 |
Pt1000 |
||
|---|---|---|---|
°C/°F |
°C/°F |
||
Valore analogico |
Valore digitale |
Valore analogico |
Valore digitale |
-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 |
Resistenza |
||
|---|---|---|---|
°C/°F |
Ω |
||
Valore analogico |
Valore digitale |
Valore analogico |
Valore digitale |
-30,0/-22,0 |
-300/-220 |
+20 |
+20 |
+150,0/+302,0 |
+1500/+3020 |
+2200 |
+2200 |
Risoluzione: 0,01K/0,01F, 0,1Ω
Pt100 |
Pt1000 |
||
|---|---|---|---|
°C/°F |
°C/°F |
||
Valore analogico |
Valore digitale |
Valore analogico |
Valore digitale |
-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 |
Resistenza |
||
|---|---|---|---|
°C/°F |
Ω |
||
Valore analogico |
Valore digitale |
Valore analogico |
Valore digitale |
-30,00/-22,00 |
-3000/-2200 |
+20,0 |
+200 |
+80,00/+80,00 |
+8000/+8000 |
+1630,0 |
+16300 |
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
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
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 := 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);