Unit_AnalogInput_FP0_RTD_INTBloc fonction permettant de lire un module FP0-RTD6 (valeurs numériques converties de type INT).
Ce bloc fonction lit les valeurs numériques converties à partir des voies d’entrées analogiques du module analogique. Les valeurs numériques du module analogique converties sont sauvegardées par voie dans les variables de sortie iChannel0 à iChannel5.
Pour mesurer les données d’entrée RTD, vous pouvez utiliser les modules suivants : Pt100 (selon IEC751), Pt1000 (selon IEC751), Ni1000 (selon DIN43760) ou une résistance.
Le dispositif de mesure doit être configuré avec les DIP switches et dans le bloc fonction.
Le cycle d’échantillonnage doit être défini avec les DIP switches.

Entrée
Définit l’offset de la première adresse WX/WY du module analogique en fonction de sa position dans l’installation.
Pour les modules d’extension analogiques connectés directement à l’unité centrale (sans adaptateur) : Utilisez ExpansionUnitToIOWordOffset_FP0 ou procédez aux paramétrages suivants : 2 (WX2/WY2) pour le numéro de module 1, 4 (WX4/WY4) pour le numéro de module 2, 6 (WX6/WY6) pour le numéro de module 3
Pour les modules d’extension analogiques connectés à l’unité centrale via un adaptateur : Utilisez ExpansionUnitToIOWordOffset_FPX_FP0 ou sélectionnez l’offset à partir du tableau.
Position du module par rapport à l’adaptateur |
Position de l’adaptateur par rapport à la CPU |
|||||||
|---|---|---|---|---|---|---|---|---|
1e module |
2e module |
3e module |
4e module |
5e module |
6e module |
7e module |
8e module |
|
1e module |
30 |
40 |
50 |
60 |
70 |
80 |
90 |
100 |
2e module |
32 |
42 |
52 |
62 |
72 |
82 |
92 |
102 |
3e module |
34 |
44 |
54 |
64 |
74 |
84 |
94 |
104 |
Définit la résolution de la voie correspondante.
Ne modifiez pas cette valeur pendant la durée d’exécution. Sinon, la conversion ne sera pas précise pendant 1s.
Définit l’unité de température.
Définit le module RTD.
Le paramétrage doit correspondre aux paramètres des DIP switches.
Sortie
Renvoie les données numériques converties du module analogique selon la voie.
Exemple :
Thermocouple, faible résolution : 20,12°C → 201 (valeur de mesure en dehors de l’intervalle autorisé : 8191)
Thermocouple, résolution élevée 20,12°C → 2012 (valeur de mesure en dehors de l’intervalle autorisé : 8191)
Résistance, faible résolution : 25Ω → 25 (valeur de mesure en dehors de l’intervalle autorisé : 16383)
Résistance : résolution élevée : 25,4Ω → 254 (valeur de mesure en dehors de l’intervalle autorisé : 16383)
Entre la mise sous tension et la première donnée de conversion valide, la valeur numérique est 8191 ou 16383. Pendant la programmation, veillez à ne pas utiliser les données obtenues pendant cette période.
Lorsque le détecteur thermorésistant est cassé, la valeur numérique passe à 8191 ou 16383. Pendant la programmation, évitez tout risque d’erreur provoqué par un détecteur thermorésistant cassé et remplacez-le.
Les paramétrages des DIP switches sont effectifs lorsque l’automate est mis sous tension.
Pt100 |
Pt1000 |
Ni1000 |
Résistance |
|
|---|---|---|---|---|
Pt100 |
Pt1000 |
Ni1000 |
Résistance |
|
|---|---|---|---|---|
0,1s |
1s |
|
|---|---|---|
Résolution : 0,1K/0,1F, 1Ω
Pt100 |
Pt1000 |
Ni1000 |
Résistance |
||||
|---|---|---|---|---|---|---|---|
°C/°F |
°C/°F |
°C/°F |
Ω |
||||
Valeur analogique |
Valeur numérique |
Valeur analogique |
Valeur numérique |
Valeur analogique |
Valeur numérique |
Valeur analogique |
Valeur numérique |
-200,0/-328,0 |
-2000/-3280 |
-200,0/-328,0 |
-2000/-3280 |
-30,0/-22,0 |
-300/-220 |
+20 |
+20 |
+500,0/+800,0 |
+5000/+8000 |
+300,0/+572,0 |
+3000/+5720 |
+150,0/+302,0 |
+1500/+3020 |
+2200 |
+2200 |
Résolution : 0,01K/0,01F, 0,1Ω
Pt100 |
Pt1000 |
Ni1000 |
Résistance |
||||
|---|---|---|---|---|---|---|---|
°C/°F |
°C/°F |
°C/°F |
Ω |
||||
Valeur analogique |
Valeur numérique |
Valeur analogique |
Valeur numérique |
Valeur analogique |
Valeur numérique |
Valeur analogique |
Valeur numérique |
-80,00/-80,00 |
-8000/-8000 |
-80,00/-80,00 |
-8000/-8000 |
-30,00/-22,00 |
-3000/-2200 |
+20,0 |
+200 |
+80,00/+80,00 |
+8000/+8000 |
+80,00/+80,00 |
+8000/+8000 |
+80,00/+80,00 |
+8000/+8000 |
+1630,0 |
+16300 |
La description de cette instruction ne livre que des informations matériel de base. Pour avoir des informations techniques complémentaires, consultez le manuel :

Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU. Le même en-tête de POU est utilisé pour tous les langages de programmation.

VAR
Inst_FP0_RTD_INT: Unit_AnalogInput_FP0_RTD_INT;
iRTD_In_Ch0: INT:=0;
iRTD_In_Ch1: INT:=0;
iRTD_In_Ch2: INT:=0;
iRTD_In_Ch3: INT:=0;
iRTD_In_Ch4: INT:=0;
iRTD_In_Ch5: INT:=0;
END_VAR
Utilisez ExpansionUnitNumberToIOWordOffset_FP0 ou ExpansionUnitNumberToIOWordOffset_FPX_FP0 pour calculer l’offset du mot du module analogique connecté à l’unité centrale.

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_INT!,Inst_FP0_RTD_INT,20,1,38,13,,?BiIOWordOffset?BbChannel0HighResolution?BbChannel1HighResolution?BbChannel2HighResolution?BbChannel3HighResolution?BbChannel4HighResolution?BbChannel5HighResolution?BbTemperatureInFahrenheit?BbChannel012DIPSwitchSetToResistor?BbChannel345DIPSwitchSetToResistor?CiChannel0?CiChannel1?CiChannel2?CiChannel3?CiChannel4?CiChannel5);
B(B_VARIN,,2,18,2,20,4,);
B(B_VAROUT,,iRTD_In_Ch0,38,2,40,4,);
B(B_VARIN,,FALSE,18,3,20,5,);
B(B_VAROUT,,iRTD_In_Ch1,38,3,40,5,);
B(B_VARIN,,FALSE,18,4,20,6,);
B(B_VAROUT,,iRTD_In_Ch2,38,4,40,6,);
B(B_VARIN,,FALSE,18,5,20,7,);
B(B_VAROUT,,iRTD_In_Ch3,38,5,40,7,);
B(B_VARIN,,FALSE,18,6,20,8,);
B(B_VAROUT,,iRTD_In_Ch4,38,6,40,8,);
B(B_VARIN,,FALSE,18,7,20,9,);
B(B_VAROUT,,iRTD_In_Ch5,38,7,40,9,);
B(B_VARIN,,FALSE,18,8,20,10,);
B(B_VARIN,,FALSE,18,9,20,11,);
B(B_VARIN,,FALSE,18,10,20,12,);
B(B_VARIN,,FALSE,18,11,20,13,);
L(1,0,1,13);
END_NETWORK_BODY
END_NET_WORK
END_BODY
Inst_FP0_RTD_INT(iIOWordOffset := 2,
bChannel0HighResolution := false,
bChannel1HighResolution := false,
bChannel2HighResolution := false,
bChannel3HighResolution := false,
bChannel4HighResolution := false,
bChannel5HighResolution := false,
bTemperatureInFahrenheit := false,
bChannel012DIPSwitchSetToResistor := false,
bChannel345DIPSwitchSetToResistor := false,
iChannel0 => iRTD_In_Ch0,
iChannel1 => iRTD_In_Ch1,
iChannel2 => iRTD_In_Ch2,
iChannel3 => iRTD_In_Ch3,
iChannel4 => iRTD_In_Ch4,
iChannel5 => iRTD_In_Ch5);