s7-200PLC模拟量转化成数字量方法 点击:1096 | 回复:1



z1257261606

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 43回
  • 年度积分:0
  • 历史总积分:11
  • 注册:2014年8月12日
发表于:2014-10-11 14:32:13
楼主

1、将模拟量通道AIW 0的数据通过I_DI指令转换为DINT数据类型,并存放入AC 0中

2、将AC 0中的数据使用DI_R转换为浮点数,目的是为了提升计算精度,因为西门子不允许整型数据直接转换为浮点数,因此必须通过1,2步骤转换。

3、将AC0-6400,因为4-20mA的采集在西门子200系列中是通过坐标移动进行的,也就是因为对于0-20mA来说,西门子S7-200的采集数据在0-32000,也就是说每mA对应的数值为32000/20=1600,那么4-20mA就是6400-32000,因此要将输入值-6400来完成坐标的移动。

4、然后除以(DIV_R)25600来得到输入值占用整个输入范围的百分比,32000-6400=25600,25600就是4-20mA对应的输入范围。

5、然后通过乘以(MUL_R)100,就得到了0-100的数据。

通过上述程序,将输入的模拟量信号对应的6400-32000之间的数据转换为0-100之间的数据,这样做也称为线性转换。





银光人生—华

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 13597回
  • 年度积分:0
  • 历史总积分:52877
  • 注册:2007年11月23日
发表于:2014-10-11 16:18:10
1楼

恩,这个很好理解的。

西门子200PLC输入0-20MA对应0-32000个数,那么我们正常输出入4-20MA对应6400-32000。



热门招聘
相关主题

官方公众号

智造工程师