S7-200读取与处理EM231RTD模块数据的方法?
刘玉蓉
发布于2014-11-26 17:30
4
0
标签:
系统组态为:224的CPU接入一个EM231-7PC22-0XA0的热电阻模块,测量温度。
1. 据我了解,直接读取个通道的PT100的值AIW0,得到的数据应该是温度的10倍。我要把它除以10才能得到正确的温度。
2. 但AIW0中的数据读回来应该是整型数据,除以10以后不就变成了实型数据了么?应该用什么指令来除?
3. 读取PT100温度值的常规处理方法是怎样的?
图片说明: 1,哪一个写法对?应该怎样改?
佳答案
1、你的理解是正确的。
2、应该用什么指令来除?
应用16位整数INT除法,DVI_I。即整数除法商还是16位整数。
3、读取PT100温度值的常规处理方法是怎样的?
如果要求精度高一点,可以:
、将AIW0读入到一个中间单元,例如MW10中;
、将MW10中的16位整数类型通过ITD指令转换为双字(32位)整数型,例如存入MD20中;
、将MD20中的32位整数类型通过DTR指令转换为双字(32位)实数型;例如,再存入MD20中;
、将MD20中的32位实数通过MUL_R浮点(实数)乘法指令与浮点(实数)常数0.1相乘,结果为浮点(实数)型,存入MD20中。
转换为浮点(实数)型后与浮点(实数)常数0.1相除也可以。