quote:以下是引用鼠老爹在2008-12-06 11:47:20的发言:
1、PLC中的数据寄存器高低位排列和高级语言不同,你必须遵循PLC的规则。
我就是遵循PLC的规则了,所以(5)步我认为应该把VB300改为VB303,你说我的说法对么?
2、为何将模拟量的输入值作为输出、积分前项和过程变量前值,需要看程序的其他要求,在这里无法判断。
书里有工艺,倒是没有提模拟量的输入值作为输出值等。按照pid回路表,VD308存储的就是Mn标准化的输出值,而输出值是由pid根据输入偏差计算得出的,所以该处给VD308赋值有意义么?为了初始化?
3、我认为
*R VD308, AC0
这个指令有问题,其结果不适合作为模拟量输出。
第6)步时AC0的值还应该为实数啊,即第3)步的作用,那么AC0就不是标准化的值存到vd308就是个错误啊。模拟量输出应该以字格式输出吧
4、如程序这样将常量作为设定参数,可能只是一种演示,或者是预置,或者干脆就是不允许程序的用户做修改。实际上这些参数可以在任何时侯通过HMI或MicroWIN对其作出修改。
通过HMI改设定值 比例 ,积分, 微分等参数时就是把他们的寄存器地址(vd304--)与HMI联系起来,在HMI上改这些参数实质上就相当于监控表里的强制功能吧。你说的MicroWIN对其作出修改也就是用传送指令吧。
我用的这本书说她的程序仅做参考,不是唯一也不是最优的,但是也不至于编错误吧,那岂不是误导读者了