找回密码
 立即注册

QQ登录

只需一步,快速开始

工控课堂 首页 工控文库 PLC学习 查看内容

西门子PLC编程同步错误的概念是什么?如何应用?

2022-5-30 21:30| 发布者: 198366809| 查看: 1180| 评论: 0

摘要: 同步错误是与执行用户程序有关的错误,程序中如果有不正确的地址区、错误的编号或错误的地址,都会出现同步错误,操作系统将调用同步错误OB。同步错误可分为编程错误和访问错误,编程错误指在程序中调用一个CPU中并 ...

 同步错误是与执行用户程序有关的错误,程序中如果有不正确的地址区、错误的编号或错误的地址,都会出现同步错误,操作系统将调用同步错误OB。同步错误可分为编程错误和访问错误,编程错误指在程序中调用一个CPU中并不存在的块,访问错误指访问的一个模块有故障或访问不存在的模块。OB121用于处理编程错误,OB122用于处理模块访问错误。
    同步错误OB的优先级与检测到出错误的块的优先级一致。因此,OB121和OB122可以访问中断发生时累加器和其他寄存器中的内容,用户程序可以用它们来处理错误。例如,出现对某个模拟量输入模块的访问错误时,可以在OB122中用SFC44定义一个替代值。
    同步错误可以用SFC36“MASK-FLT”来屏蔽,以使某些同步错误不触发同步错误OB的调用,但是CPU在错误寄存器中会记录发生的被屏蔽的错误。用错误过滤器中的一位来表示某种同步错误是否被屏蔽。错误过滤器分为程序错误过滤器和访问错误过滤器,分别占一个双字。
    表4-7中的变量PRGFLT_SET-MASK和ACCFLT-SET-MASK分别用来设置程序错误过滤器和访问错误过滤器,某位为1表示该位对应的错误被屏蔽。屏蔽后的错误过滤器可以用变量PRGFLT-MASKED和ACCFLT-MASKED读出。错误信息返回值RET-VAL为0时表示没有错误被屏蔽,为1时表示至少有一个错误被屏蔽。
    调用SFC37“MDSK-FLT”并且在当前优先级被执行完后,将解除屏蔽的错误,并且消除当前优先级的事件状态寄存器中相应的位。
    可以用SFC38“READ-ERR”读出已经发生的被屏蔽的错误。

关注公众号,加入500人微信群,下载100G免费资料!

最新评论

热门文章
关闭

站长推荐上一条 /1 下一条

QQ|手机版|免责声明|本站介绍|工控课堂 ( 沪ICP备20008691号-1 )

GMT+8, 2025-12-26 07:04 , Processed in 0.083356 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

返回顶部