s7200模拟输出问题

各位高手,请看下面的一段程序:西门子PLC引入模拟量的话就是
TITLE=液位控制中断子程序
Network 1                          // 单极性数值转化为PID标准化数值
LD     SM0.0
XORD   AC0, AC0                    //累加器清零
ITD    AIW0, AC0                   //采集水位值
ITD    AIW0, AC1
DTR    AC0, AC0                    //将采集到的水位值转换为实数
/R     32000.0, AC0                //对单极性的实数水位值标准化
MOVR   AC0, VD100                  //将水位值的标准化结果填入PID回路表

Network 2                           // PID运算
LD     SM0.0
PID    VB100, 0                     //调用PID功能

Network 3                           // 把PID标准值转化成实际输出值
LD     SM0.0
MOVR   VD108, AC0                   //取出PID回路运算结果
*R     32000.0, AC0                 //取PID回路运算结果的控制量,进行逆标准化(即转换为工程量)
ROUND  AC0, AC0                     //取整
DTI    AC0, AC0                     //双整数至整数
MOVW   AC0, AQW0                    //输出模拟量 


1、这里面的VD108是其什么作用的?如果此处改成VD128行不行?我在其他很多程序里也看到这里直接就出来VD108了,前后都没有出现过。
2、受控原件的是0-10V的还是4-20毫安的?怎么区别,不会受控原件是0-10V或4-20毫安,或者1-10V或者0-20毫安,这块程序都一样吧?怎么区分。谢谢高手赐教!

问题补充:
首先感谢haohuai这位仁兄的回答,再问
VD108是运算结果,VD128是什么?VD108是因为前面的VD100(VB100)吗 ?如果前面是VD200(VB200),那这里“MOVR   VD108, AC0                   //取出PID回路运算结果”就是VD208 ?

我不是问受控原件接受的是0-10V还是4-20毫安还是1-10V还是0-20毫安。我问的是模拟输出那块的程序,如果受控原件是0-10V控制的,那块程序怎么写,如果是4-20毫安(1-10V、0-20毫安)。模拟输出那块的程序应该不一样吧,对于不同的受控原件,在程序上怎么区别的?谢谢

最佳答案

1 你看2007年9月版手册的167页。

到下载中心 http://www.ad.siemens.com.cn/download/
文档编号:1017
文档类型: 手册 
文档中文标题: S7-200 可编程控制器系统手册
日期: 2008/8/1 
大小:12.81MB  

2 不一样的是输出的接线方式,计算过程是一样的。

1 不行,VD108是运算结果,VD128是什么?
PID功能块通过一个PID回路表交换数据,这个表是在V数据存储区中的开辟,长度为36字节。因此每个PID功能块在调用时需要指定两个要素:PID控制回路号,以及控制回路表的起始地址(以VB表示)。

2 受控原件的是0-10V的还是4-20毫安的?怎么区别
  这个要看具体的受控元件的说明书呀。

提问者对于答案的评价:
非常感谢,把分给你

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc319123.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月1日 下午4:55
下一篇 2020年11月1日

相关推荐