中国自动化学会专家咨询工作委员会指定宣传媒体
免费注册 登录 广告服务 | 客服中心
您现在所在的是:

PLC论坛

抖音 德嘉 泓格论坛 FLIR红外热像论坛
工控论坛首页 PLC论坛 → 浏览主题: 状态字的BR位的作用与使用方法详解
发表新帖 回复该主题
回帖:3个,阅读:4640 [上一页] [1] [下一页]
* 帖子主题:

状态字的BR位的作用与使用方法详解

分享到
5994
liaosun
文章数:1398
年度积分:50
历史总积分:5994
注册时间:2003/5/4
发站内信
2015论坛贡献奖
2014论坛贡献奖
2013论坛贡献奖
2012论坛贡献奖
2011博客贡献奖
2010博客杰出贡献奖
发表于:2011/10/11 7:57:38
#0楼

   状态字的第8位为二进制结果位BR。
   在梯形图中,用方框表示功能(FC)、功能块(FB)和某些指令。
   图1中的FC1有3个双整数输入参数和1个双整数输出参数。输入变量IN_VAL乘以系数Par1,除以系数Par2后,得到输出参数OUT_VAL。SAVE指令将RLO保存到BR位中。
图[/URL]
   图2是OB1调用FC1的程序。I0.0的常开触点接通时,FC1的EN(Enable,使能输入)输入为1,才能执行FC1。如果FC1的EN端有能流流入,而且执行时无错误(除数非零),使能输出ENO(Enable Output)端有能流流出。EN和ENO均为BOOL型。
图
   如果FC1执行出错(除数Party2为零,见图2的右图),它的ENO端没有能流流出。ENO可以作为下一个方框的EN输入,即几个方框可以串联。只有前一个方框被正确执行,与它连接的后面的程序才能被执行,这种连接方式具有连锁的功能。
   状态字中的二进制结果位BR对应于梯形图中方框指令的ENO。BR位为 1,ENO端有能流流出,反之ENO端没有能流流出。
   图1中最右边的SAVE指令对BR位的处理是至关重要的,如果没有它,FC1的ENO不能反映FC1的执行是否出错。
   下面是删除图1中的SAVE指令后,对应的语句表程序。
     A(  
     L     #IN_VAL
     L     #Par1
     *D  
     T     #MID_VAL
     AN    OV
     SAVE
     CLR  
     A     BR
     )    
     JNB   _001
     L     #MID_VAL
     L     #Par2
     /D  
     T     #OUT_VAL
_001: NOP   0
   在最后两条指令之间添加下面的3条指令,FC1的ENO就能反映FC1的执行是否出错。
     AN    OV  
     SAVE    
     CLR  
   执行指令“AN  OV”后,如果除法指令没有出错(溢出位OV为0),RLO为1;如果除法指令出错(溢出位为1),RLO为0。SAVE指令将RLO送给BR位,CLR指令将RLO清零。
   除了SAVE指令,还有两条指令影响BR位。
   当RLO=1时,JCB指令中断程序的顺序执行,并跳转到跳转目的地。如果 RLO = 0, 则不跳转。
   当RLO=0时,JNB指令中断程序的顺序执行,并跳转到跳转目的地。如果 RLO = 1, 则不跳转。
此帖来自中华工控网工控博客
原文件地址:http://blog.gkong.com/more.asp?id=144793&Name=liaochangchu
我是廖常初,是一个高校的老师,曾在企业从事机械、电气技术工作,长期从事工业控制和PLC应用的教学、科研和工程应用工作。博客中的日志除注明外均为原创。愿意在此与大家探讨工控的问题!
廖常初工控博客地址:http://blog.gkong.com/blog.asp?name=liaochangchu
我曾写过几本小书: 《PLC编程及应用》第3版(S7-200)、《S7-300/400 PLC应用技术》第3版、《FX系列PLC编程及应用》第2版、《S7-200 PLC编程及应用》、《PLC基础及应用》第2版(FX系列大专教材)、《西门子人机界面(触摸屏)组态与应用技术》、《西门子工业通信网络组态编程与故障诊断》、《S7-1200 PLC编程及应用》第2版、《跟我动手学S7-300/400 PLC》、《跟我动手学FX系列PLC》
机械工业出版社廖常初图书专题:http://www.gkong.com/zt/liaochangchu/
1445
qdgeng886
文章数:305
年度积分:50
历史总积分:1445
注册时间:2006/10/5
发站内信
发表于:2011/10/11 9:22:28
#1楼
是西门子系列的,看着不是很熟,
学习了,谢谢。很少用到。
677
912782396
文章数:13
年度积分:50
历史总积分:677
注册时间:2013/10/20
发站内信
发表于:2013/10/27 11:06:43
#2楼
我模仿你说的也写了一个类似的程序,这个是FB里的程序
附件 1.jpg
这个是主程序调用的程序
附件 2.jpg
不知道可不可以这么理解你的意思,如第一张图所示:如果网络三中没有Q0.2,我就不知道传送过程有没有完成,而Q0.2可以检测这个过程有没有出错,可以这么了解吗?
如第二张图所示,那个乘法后面没有什么东西,就不知道乘法运算有没有处理成功,可以这么理解吗?
还有我不明白的是:我后面加一个Q点或者M点,和你加一个SAVE有什么区别吗?
谢谢!
5994
liaosun
文章数:1398
年度积分:50
历史总积分:5994
注册时间:2003/5/4
发站内信
2015论坛贡献奖
2014论坛贡献奖
2013论坛贡献奖
2012论坛贡献奖
2011博客贡献奖
2010博客杰出贡献奖
发表于:2013/10/27 23:02:11
#3楼
以下是引用9127823962013/10/27 11:06:43的发言:
我模仿你说的也写了一个类似的程序,这个是FB里的程序
附件 1.jpg
这个是主程序调用的程序
附件 2.jpg
不知道可不可以这么理解你的意思,如第一张图所示:如果网络三中没有Q0.2,我就不知道传送过程有没有完成,而Q0.2可以检测这个过程有没有出错,可以这么了解吗?
如第二张图所示,那个乘法后面没有什么东西,就不知道乘法运算有没有处理成功,可以这么理解吗?
还有我不明白的是:我后面加一个Q点或者M点,和你加一个SAVE有什么区别吗?
谢谢!
没有SAVE指令,FB的ENO就不能反映FB中程序执行是否出错。
我是廖常初,是一个高校的老师,曾在企业从事机械、电气技术工作,长期从事工业控制和PLC应用的教学、科研和工程应用工作。博客中的日志除注明外均为原创。愿意在此与大家探讨工控的问题!
廖常初工控博客地址:http://blog.gkong.com/blog.asp?name=liaochangchu
我曾写过几本小书: 《PLC编程及应用》第3版(S7-200)、《S7-300/400 PLC应用技术》第3版、《FX系列PLC编程及应用》第2版、《S7-200 PLC编程及应用》、《PLC基础及应用》第2版(FX系列大专教材)、《西门子人机界面(触摸屏)组态与应用技术》、《西门子工业通信网络组态编程与故障诊断》、《S7-1200 PLC编程及应用》第2版、《跟我动手学S7-300/400 PLC》、《跟我动手学FX系列PLC》
机械工业出版社廖常初图书专题:http://www.gkong.com/zt/liaochangchu/
工控学堂推荐视频:

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

62.4004