一次偶然机会和朋友交流时发现他们的编程思想值得借鉴,如采集电流或转速,这个程序很简单,但是如何更高效合理的编写呢?
我的习惯 是多次使用V区的存储器作为中间变量来处理,如下朋友的思路是:
////////////////
网络1 电流
LD SM0.0
XORD AC0, AC0 //用异或指令进行中间变量清零
MOVW AIW0, AC0
DTR AC0, AC0
/R VD2270, AC0
*R VD2042, AC0
TRUNC AC0, VD2100 //在位机中用VW2102作为显示变量
////////////////
网络2 转速
LD SM0.0
XORD AC0, AC0 //用异或指令进行中间变量清零
MOVW AIW2, AC0
DTR AC0, AC0
/R VD2280, AC0
TRUNC AC0, VD2110 //在位机中用VW2112作为显示变量
////////////////
以上多次使用累加器AC0 可以减少中间变量(V区)的使用,关键每次调用之前用了XORD 指令进行重新使用前归零处理,这点值得借鉴! 以后不妨一试!
另外,在一次在外出差晚上睡不着机会,打开200PLC软件,用PID向导完成了3路配置,利用一个补丁(大家都知道)解开POU密码,看看西门子PID指令编写思路!
借助他们的思路 现在已经利用一个PID指令 完成22路温控的控制且控制效果不错,完全脱离了西门子的PID最多8条指令的限制!
最后转载 工控诗一首 送给大家
寒暑昼夜蚊虫飞,电器设备控制柜。
天南地北任我行,逻辑动作满思维。
现场艰苦汗与灰,身强力壮薪酬微。
有朝一日大展翅,乘风破浪凯旋归。