300的PLC中怎么调用sfc41延时ob86中断

如题,怎么在300的PLC中调用sfc41延时ob86中断,延时时间到后停止cpu运行。是不是加载OB86并在OB86快里面加载SFC41,那SFC41输入值是什么单位?输入值1000 = 1秒?有SFC系统功能的使用具体说明和实例吗?

最佳答案

1、使用SFC41 “DIS_AIRT”(禁用报警中断),可以延迟优先级高于当前OB的中断OB和 异步出错OB的处理。可以在一个OB中多次调用SFC41。SFC41调用将由操作系统 进行计数。这些调用中的每一个都将保持有效,直至明确地通过SFC42 “EN_AIRT” 调用再次取消或直至完全处理完当前OB为止。
2、那SFC41输入值是什么单位?输入值1000 = 1秒?
、SFC41没有输入值,只有返回值。即:
RET_VAL OUTPUT INT I、Q、M、D、L 延迟数(= SFC41调用数)。
、SFC41与SFC42是配对使用,即CALL SFC41来禁止中断和非同步故障,CALL SFC42来允许处理中断和非同步故障。
、SFC41  :DIS_AIRT 延迟高优先级中断和非同步故障
、SFC42: EN_AIRT 使能高优先级中断和非同步故障
、换言之,    SFC 41“DIS_AIRT”延迟处理比当前优先级更高的中断和异步错误,直到用SFC 42允许处理中断或当前的OB执行完毕。SFC 42“EN_AIRT”用来允许立即处理被SFC 41暂时禁止的中断和异步错误,SFC 42和SFC 41配对使用。
3、应用实例:
、实例描述:
为了保证全局数据交换的连续性,在调用SFC 60之前应调用SFC 39“DIS_ IRT”或SFC 41“DIS_AIRT”来禁止或延迟更高级的中断和异步错误。SFC 60执行完后调用SFC 40“EN IRT”或SFC 42“EN_AIRT”,允许处理高优先级的中断和异步错误。
、详见:
http://www.aitmy.com/news/201307/03/news_46417.html
4、有关资料:
<S7-300400的系统软件和标准功能>下载:
http://www.ad.siemens.com.cn/download/SearchResult.aspx?searchText=1023

提问者对于答案的评价:
好的,谢谢。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc346772.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月4日 下午11:06
下一篇 2021年7月4日 下午11:06

相关推荐

发表回复

登录后才能评论