签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
用户自定义循环组织块OB123与OB1的采集顺序
前一段时间在“找答案”栏目中,看到有这样的提问,话说:“用户自定义循环组织块OB123及OB124等组织块,与OB1到底是那个先被cpu采集数据,还是那个后被采集到数据的顺序关系?”虽然根据我的编程习惯,还不是很“乐意”调用用户自定义OB组织块的习惯,但是,自西门子推出这个功能后,也肤浅的验证过自定义OB123等组织块的应用,但是,没有专题关注过到底是那个先,那个后的问题,在此,不仿验证一下,把这个问题明确了。
验证过程:
验证那个先,那个后,我考虑到一个方法,仍然是根据plc采集工作机制“自上而下,自左而右”的“习惯”。我创建一个验证项目,分别创建OB123/OB124,然后,在各自的OB块上,有“臆想”的编辑我的测试程序,看运行结果是否符合我事先定义好的思路。
1) 创建一个验证项目,分别创建OB123/OB124,图示:
按系统默认,定义自定义组织块,编号分别是OB123、OB124。
2) 分别在OB1/OB123/OB124编辑一个简单的测试程序,使能M0.0 = 1后,看Q0.0/Q0.1/Q0.2到底那个被置位,图示:
OB123:
OB124:
3) 程序非常简单,按我看帮助的官方解释,应该是按顺序执行的,那么通过3个OB组织块的运行结果,应该是Q0.2 = 1,官方帮助截图:
4) 将编辑好的测试程序,编译ok!后下载到模拟仿真器:
创建应该监控表1,填入需要监控的这些变量:
运行的结果,正如我理解的那样,最终是Q0.2 = 1 ,也就是说,先执行OB1,然后再执行OB123,最终执行OB编号高的OB124,这个理解在此得到证实。
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1692663&b_id=50&s_id=0&num=10
更多的组织块给编程带来了哪些便利性呢,或者说多个组织块有什么好处?
正如我开始讲的那样,我也不习惯采用多个循环组织块编辑方式。
但是,从之前的工作经历看,也遇到过不少项目,做着做着一个“庞大的OB1组织块”在自己的不知不觉中衍生了,在做项目的时候因为熟悉程序的架构,不需要通过太多的浏览。可是,一旦时间延长几年以后,可能因为调试或者维保的需要,再次看这个OB1显得总缺少一些什么?如果可以根据项目的功能,再分解一些,可能会更方便理解程序和查找程序了,这是我肤浅的一点认识。
楼主:按照你的理解,%Q0.0-0.2不应该是闪烁的吗?
感觉认识又加深了
是的。
Q0.0/Q0.1是不可能有输出的,因为它们工作于一个周期内,也符合plc的工作机制。
楼主怎么会想到去验证OB123 124 呢
加深了印象,谢谢楼主分享
是在找答案中看到有类似的提问,我只是之前应用过,也没有对此的认识,昨天晚上想到,我何不验证一下呢?仿真、实体机我都有备着,只怕没有想到,不怕做不到。
这个功能其实在以前用过的AB的5000中就有,其实也类似于把功能分组设计成几个FC。
其实也类似于把功能分组设计成几个FC
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录