故事作者:空果仁

最近创作

看看TA的故事

同样的程序在不同PLC中有不同的响应

已锁定

空果仁

官方工程师 西门子1847工业学习平台

  • 帖子

    210
  • 精华

    47
  • 被关注

    310

论坛等级:侠圣

注册时间:2011-07-11

普通 普通 如何晋级?

同样的程序在不同PLC中有不同的响应

2503

5

2019-02-11 10:05:31


        PLC编程是基于硬件系统的,不同的硬件系统有不同的处理行为方式,编程不严谨就会造成结果的偏差,所以编程一定要规范化,规范化的好处就是可以避免这些偏差,同时编程的规范化也是标准化的一部分。

      很久以前遇到一个问题,用户在OB1中调用PID程序块,调试完成后效果良好,后来更换新的CPU后,发现PID程序块不能正常工作了,反而说新的CPU有问题,这就是一个不规范编程的案例。PID功能块需要在确定的循环中断中调用,并在参数CYCLE中赋值循环中断的中断周期,这样才能计算积分和微分的正确时间,而OB1的优先级低,容易被中断,扫描时间不确定,PID的参数是测试的结果,而非正确的过程参数,又因为新的CPU比旧的CPU运算速度快将近10倍,所以PID程序块就不能正确工作了。

      还有一些功能是与通信有关,例如移植S7-300的程序到S7-1500中,在S7-300中运行好好的,移植后突然发现在HMI上不能改写变量的值了,程序大概是这样的,在FB1中有一个IN/OUT 参数“test”,下面是简单的源程序仿制,赋值“test”后,经过运算再次传递到“test”中,wait指令表示后面程序执行的时间,如图1所示。

      

 

然后在OB1中调用,赋值MW2,如图2所示。

 

      在HMI或者TIA  博途监控表改变MW2的值,有时连续多次才能修改成功,大家想一想这是什么原因?


同样的程序在不同PLC中有不同的响应 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

崔工谈博途与PLC

共有103条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。