“常用公式”在线计算,“设计手册”在线查询
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 支持支持 反对反对

共 1 个关于本帖的回复 最后回复于 2013-6-6 16:01

沙发
姬晓军 新来的 发表于 2013-6-6 16:01:13 | 只看该作者
研发埠培训中心
如果输入是在标准程序和安全程序中都进行了扫描,那么你可能看到故障安全输入信号在标准程序中跳变的情况。发生跳变是因为不仅仅在OB1的开始更新输入的过程映象表,而且当F-CALL (安全程序)被调用时也会更新过程映象表。因而输入值是在安全程序被调用之前被采集还是调用之后进行采集,将得到不同的结果。举例:· 自动防故障装置的输入是在标准程序的OB1中进行查询的。安全程序是在OB35中调用的。故障安全输入模块已被钝化。· 步骤: 1. 当调用OB1时,读到的输入值为“1”。2. 这时OB35中断OB1。F-CALL (安全程序)被调用。F I/O的过程映象表得以更新。由于输入模块被钝化,输入值为“0”被读入安全程序中。3. 当OB35完全处理完成后,OB1才完成——读入的输入值仍旧是“0”。输入的过程映象表已经在F-CALL的调用时进行了更新,并且继续在OB1中被使用。4. 下一次通过OB1调用标准程序时,该位再次以“1”值被读入。· 根据OB35中断OB1的不同时刻,输入可能有不同的状态。补救措施:为了避免该情况的发生,可以将标准程序中用到的输入传送到一个标志位,举个例子, 在F程序中或者随后直接在标准程序中访问这个标志位。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注我们

360网站安全检测平台