发布于 2011-08-01 17:12:02
3楼
不赞同楼主的观点,要做到这样的程序太难了,并且考虑的条件太多,但这样的程序可能并不适会在PLC中使用。以一个简单的量程转换程序Y=a/b*X+c为例。
1.你先是需要考虑各个参数的犯围是否合法,考虑了除数为零情况的处理
2.你紧接着考虑了这个算式各部分的执行结果是否越界,然后把越界状态输出同,并对越界后的计算结果进行了处理
3.你再考虑了你和程序对别人程序的影响,在程序的入口及出口处加入了保存及恢复寄存器和状态字的指令
4.最后你还要去考虑别人程序对你自己程序的影响,是否还要禁用中断,使程序执行不被其它程序调用打断
考虑的越多,单独从一小段程序来说可能是正确的,但会使你的程序变得复杂,扫行时间加长,并不一定适合在PLC中多次调用。PLC中的程序有一个特点,就是写程序的人一般来说都是一个人或几个人组成的一个小群体,而且你写的程序只会被你自己调用,因此你只要保证你的程序在当前环境中正确就行了,在这个前提下尽可能的使你和程序短小,你的程序永远也不可能被我用到,需要时别人会按自己的意图编写合适和程序,因此上我认为在PLC环境下能够正确执行并且短小的程序就是好程序了
当然对对一个完整的项目来说,你一定要做好接口信息的说明,别人不会改你的程序但会用到你的接口信息,很有可能会修改输入输出点,对输入输出设备的通讯控制字等,因此一定要把这此信息存到几个块中,别人修改时只改这些块中的信息就足够了