用于写入到FP0-A21单元和从中读取的函数。
此函数会将数字数据写入模拟量单元的模拟量输出通道,并从其模拟量输入通道读取转换后的数字数据。要转换并输出为模拟量值的数字值在iOutChannel中指定。来自模拟量单元的转换后数字值按通道存储在输出变量iInChannel0和iInChannel1中。
模拟量值范围必须使用DIP开关设置。
输入
根据模拟量单元的安装位置设置其首个WX/WY地址的偏移量。
对于直接连接到CPU的模拟量扩展单元(无适配器):使用ExpansionUnitToIOWordOffset_FP0或进行以下设置:2(WX2/WY2)用于单元编号1,4(WX4/WY4)用于单元编号2,6(WX6/WY6)用于单元编号3
对于通过适配器连接到CPU的模拟量扩展单元:使用ExpansionUnitToIOWordOffset_FPX_FP0或从表中选择偏移量。
相对于适配器的单元位置 |
相对于CPU的适配器位置 |
|||||||
---|---|---|---|---|---|---|---|---|
第1个单元 |
第2个单元 |
第3个单元 |
第4个单元 |
第5个单元 |
第6个单元 |
第7个单元 |
第8个单元 |
|
第1个单元 |
30 |
40 |
50 |
60 |
70 |
80 |
90 |
100 |
第2个单元 |
32 |
42 |
52 |
62 |
72 |
82 |
92 |
102 |
第3个单元 |
34 |
44 |
54 |
64 |
74 |
84 |
94 |
104 |
设置要由模拟量单元转换和输出的数字值。
输出
通过通道从模拟量单元返回转换后的数字数据。
当电源关闭后再打开时,DIP开关设置将生效。
无平均处理:在每个通道上为各个A/D转换的指定输入触点区域设置转换数据。
平均:在每个通道上,对于各个A/D转换,排除最近十次数据的最大值和最小值,对其他八次的数据求平均值并设置结果。
0至5V、0至20mA |
-10至+10V |
|||
---|---|---|---|---|
无平均处理 |
平均 |
无平均处理 |
平均 |
|
对于热电偶,始终执行平均处理。
热电偶类型K |
热电偶类型J |
热电偶类型T |
||||
---|---|---|---|---|---|---|
终端温度至1000°C |
-100°C至终端温度 |
终端温度至750°C |
-100°C至终端温度 |
终端温度至350°C |
-100°C至终端温度 |
|
0至20mA |
-10至+10V |
|
---|---|---|
电压输入 |
电流输入 |
---|---|
在IN/V和IN/COM终端之间连接输入仪器。 |
连接IN/V和IN/I终端。在桥接器和IN/COM终端之间连接输入仪器。 |
热电偶输入 |
|
---|---|
温度高于终端温度: 将IN/V终端连接到热电偶的(+)侧。将IN/COM终端连接到热电偶的(-)侧。 |
温度低于终端温度: 将IN/V终端连接到热电偶的(-)侧。将IN/COM终端连接到热电偶的(+)侧。 |
电压输出 |
电流输出 |
---|---|
在OUT/V和OUT/COM终端之间连接输出仪器。 |
在OUT/I和OUT/COM终端之间连接输出仪器。 |
0mA至20mA输入或输出 |
0V至5V DC输入 |
-10V至10V DC输入或输出 |
|||
---|---|---|---|---|---|
数字值 (INT) |
模拟量值 |
数字值 (INT) |
模拟量值 |
数字值 (INT) |
模拟量值 |
0 |
0,0mA |
0 |
0,0V |
-2000 |
-10,0V |
800 |
4,0mA |
400 |
0,5V |
-1500 |
-7,5V |
1600 |
8,0mA |
800 |
1,0V |
-1000 |
-5,0V |
2400 |
12,0mA |
1200 |
1,5V |
-500 |
-2,5V |
3200 |
16,0mA |
1600 |
2,0V |
0 |
0,0V |
4000 |
20,0mA |
2000 |
2,5V |
+500 |
+2,5V |
2400 |
3,0V |
+1000 |
+5,0V |
||
2800 |
3,5V |
+1500 |
+7,5V |
||
3200 |
4,0V |
+2000 |
+10,0V |
||
3600 |
4,5V |
||||
4000 |
5,0V |
热电偶输入:
超过终端温度 |
低于终端温度 |
||
---|---|---|---|
数字值 (INT) |
模拟量值 |
数字值 (INT) |
模拟量值 |
25 |
25°C |
0 |
0°C |
250 |
250°C |
-25 |
-25°C |
350 |
350°C |
-50 |
-50°C |
500 |
500°C |
-75 |
-75°C |
750 |
750°C |
-100 |
-100°C |
1000 |
1000°C |
此命令描述仅提供基本硬件文档。有关详细的技术信息,请参阅手册:
所有用于编程此函数的输入和输出变量已在POU头中声明。 所有编程语言使用相同的POU头。
VAR
iOutChannel: INT:=0;
iIOWordOffset: INT:=0;
iInChannel0: INT:=0;
iInChannel1: INT:=0;
END_VAR
使用ExpansionUnitNumberToIOWordOffset_FP0或ExpansionUnitNumberToIOWordOffset_FPX_FP0计算连接到CPU的模拟量单元的字偏移量。
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_F,Unit_AnalogInOut_FP0_A21!,,25,1,38,5,,?DiIOWordOffset?DiOutChannel?CiInChannel0?CiInChannel1);
B(B_VARIN,,iOutChannel,23,3,25,5,);
B(B_VAROUT,,iInChannel0,38,2,40,4,);
B(B_VAROUT,,iInChannel1,38,3,40,5,);
B(B_VARIN,,1,3,2,5,4,);
B(B_F,ExpansionUnitNumberToIOWordOffset_FP0!,,5,1,25,4,,?DiExpansionUnitNumber?C);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
Unit_AnalogInOut_FP0_A21(iIOWordOffset := iIOWordOffset,
iOutChannel := iOutChannel,
iInChannel0 => iInChannel0,
iInChannel1 => iInChannel1);