0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

解析一个由OB85编程引起CPU停机

机器人及PLC自动化应用 来源:机器人及PCL自动化应用 作者:机器人及PCL自动化 2021-05-12 13:47 次阅读

99156d6e-b05a-11eb-bf61-12bb97331649.jpg

9924b9d6-b05a-11eb-bf61-12bb97331649.jpg

今天出现一个PLC停机:由OB85 引起的停机.

OB85里的程序编辑:

L B#16#A1 //尚未加载的OB发生错误事件

L #OB85_FLT_ID

==I

SPB K_OB

L B#16#A2 // 尚未加载的OB发生错误事件

==I

SPB K_OB

L B#16#A3 // 访问未加载的块时出错

L #OB85_FLT_ID

==I

SPB K_B

SPA F_PA

K_OB: SPA STOP

SPA ENDE

K_B: SPA STOP

SPA ENDE

STOP: CALL "STP" 调用FC46

OB85 :

B#16#A1

程序或操作系统(基于组态)为未装载到 CPU 上的 OB 创建一个启动事件。

● OB85_Z1:请求的 OB 的相应临时变量。这由 OB85_Z23 确定。

● OB85_Z23:

– 高位字:导致 OB 调用的事件的类别和编号

– 低位字,高位字节:在出错时处于激活状态的程序级别

B#16#A2

程序或操作系统(基于组态)为未装载到 CPU 上的 OB 创建一个启动事件。

OB85_Z1 和 OB85_Z23(对于 OB85_FLT_ID=B#16#A1)

B#16#A3

操作系统访问块时出错

● OB85_Z1:操作系统的错误 ID

– 高位字节:1=集成的功能,2=IEC 定时器

– 低位字节:0=无错误分辨率,1=未装载块,2=区域长度错误,3=写保护错误

● OB85_Z23:

– 高位字:块编号

– 低位字:导致错误的 MC7 命令的相对地址。块类型必须取自 OB 85_DKZ23(B#16#88:OB,B#16#8C:FC,B#16#8E:FB,B#16#8A:DB)。

-------OB40-->

硬件中断组织块(OB40至OB47)

S7提供了多达八个的独立硬件中断,每一中断都具有自己的OB。

通过STEP 7分配参数,可以为将要触发硬件中断的每个信号模块指定以下内容:

在何种条件下触发硬件中断的通道。

?要分配给个别通道组的硬件中断OB(默认情况下,将由OB40来处理所有的硬件中断)。

借助于CP和FM,可使用其各带软件来分配这些参数。

可使用STEP 7选择各个硬件中断OB的优先级。

了解硬件中断OB的操作

在模块触发硬件中断后,操作系统将标识插槽以及相应的硬件中断OB。如果此OB的优先级高于当前激活的优先级,则将启动该OB。当执行完此硬件中断OB后,将发送通道指定的确认。

如果在对硬件中断进行标识和确认的这段时间内,在同一模块中发生了触发硬件中断的另一事件,则应用以下规则:

如果该事件发生在先前触发硬件中断的通道中,则新中断丢失。在下图中,将根据数字输入模块的通道实例对此进行说明。触发事件是上升沿。硬件中断OB是OB40。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • plc
    plc
    +关注

    关注

    5008

    文章

    13149

    浏览量

    461984
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10824

    浏览量

    211108
  • CP
    CP
    +关注

    关注

    3

    文章

    35

    浏览量

    25610

原文标题:OB85编程引起CPU停机

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    深度解析 4G模组GPIO编程技巧篇

    本文将解析4G模组GPIO编程技巧,从概述、软硬件环境准备、示例等详细道来:
    的头像 发表于 11-20 23:08 31次阅读
    深度<b class='flag-5'>解析</b>  4G模组GPIO<b class='flag-5'>编程</b>技巧篇

    CPU主频是什么意思

    CPU主频,作为计算机处理器性能的重要指标,承载着丰富的技术内涵与实际应用价值。以下是对CPU主频的详细解析,包括其定义、用途、技术原理
    的头像 发表于 09-26 15:50 904次阅读

    CPU时钟周期的组成和作用

    CPU时钟周期是计算机体系结构中至关重要的概念,它直接关联到CPU的运行速度和性能。以下是对CPU时钟周期的定义、组成和作用的详细
    的头像 发表于 09-26 15:32 393次阅读

    晶闸管如何导通变为关断

    晶闸管导通变为关断的过程是涉及电流控制、电压调节以及内部PN结导电状态变化的复杂过程。以下是对这过程的详细解析,旨在提供全面且深入的
    的头像 发表于 08-27 16:26 884次阅读

    深入解析 MEMS 可编程 LVPECL/LVDS 振荡器 SiT9120 系列

    深入解析 MEMS 可编程 LVPECL/LVDS 振荡器 SiT9120 系列
    的头像 发表于 08-13 16:23 369次阅读
    深入<b class='flag-5'>解析</b> MEMS 可<b class='flag-5'>编程</b> LVPECL/LVDS 振荡器 SiT9120 系列

    stm8s003停机后,外部中断有时候会无法退出停机状态,为什么?

    stm8s003,进入停机,外部中断退出停机,但是经常会触发中断之后却没退出停机状态,再触发才行,这是什么问题。我用示波器看过外部中断的波形,确实有触发波形了,但是却没有退出停机状态。
    发表于 05-11 08:29

    STM8S活跃停机模式使用红外中断唤醒无法正确识别中断的原因?

    之间的时间计数,正常的话前导码13.5ms,逻辑1 2.25ms,逻辑0 1.12ms 问题描述: 未进入活跃停机之前,红外中断触发正常,如图接收32bit红外码(忽略第一个数据),码值
    发表于 04-15 07:46

    J-Link OB-nRF5340-NordicSemi

    J-Link OB-nRF5340支持3SWD和2虚拟串口。 固件来自jlinkv794。由于Firmwares文件夹下的固件加密,我不得不逆向jlink,现在我可以做到解密所有固件。 成品演示: 奇怪的是刷入后自带SN。
    发表于 03-18 19:14

    优雅停机是什么?SpringBoot+Nacos+k8s实现优雅停机

    优雅停机是什么?网上说的优雅下线、无损下线,都是意思。
    的头像 发表于 02-20 10:00 1880次阅读
    优雅<b class='flag-5'>停机</b>是什么?SpringBoot+Nacos+k8s实现优雅<b class='flag-5'>停机</b>

    处理器和cpu东西吗 cpu和主板的区别

    处理器和CPU东西,CPU是指中央处理器(Central Processing Unit)的简称,是计算机的核心部件,负责执行各种计算任务。
    的头像 发表于 01-19 09:52 1.9w次阅读

    S7-CPU工作模式的原理

    通过适当编写启动 OB,可以在启动程序中为循环程序指定些初始化变量。对启动 OB 的数量没有要求。即,可以在用户程序中创建或多个启动
    的头像 发表于 01-15 10:26 520次阅读
    S7-<b class='flag-5'>CPU</b>工作模式的原理

    OB2283MP电流模式PWM控制器-ob2283芯片中文资料

    供应OB2283MP电流模式PWM控制器,提供ob2283芯片中文资料规格参数等,更多产品手册、应用料资请向骊微电子申请。>>
    发表于 12-25 16:52 9次下载

    使用OB2736V+OB2613NPD20V2.25A OB2736VIEP+OB2613 N的45W USB PD模块

    电子发烧友网站提供《使用OB2736V+OB2613NPD20V2.25A OB2736VIEP+OB2613 N的45W USB PD模块.pdf》资料免费下载
    发表于 12-22 10:00 20次下载

    西门子博途:如何创建新OB

    大多数OB类型都可以创建多个OB(数量取决于CPU)。在这样做的过程中,123的数字
    发表于 12-12 11:20 911次阅读
    西门子博途:如何创建新<b class='flag-5'>OB</b>

    西门子博途中CPU对错误的反应

    如果CPU的操作系统检测到错误,它会以OB调用的形式搜索适当的错误处理。如果找到了相应的OB,则执行该OB并完成CPU的错误处理。如果适当的
    的头像 发表于 12-11 17:12 852次阅读
    西门子博途中<b class='flag-5'>CPU</b>对错误的反应