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

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

3天内不再提示

优先级错误组织块OB85介绍

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 2023-02-12 10:39 次阅读

优先级错误组织块(OB85)

--程序顺序错误(OB85)

在下列情况下,CPU操作系统调用 OB85:

• 存在中断 OB的启动事件,但由于还没有将该 OB下载到 CPU而不能执行该OB。

• 访问系统功能块的实例数据块时发生错误。

• 更新过程映像表时发生错误(模块不存在或处于故障状态)。

如果OB85尚未编程,则当检测到这些事件其中之一时,CPU会转为STOP模式。

可以使用SFC 39至42禁用或延迟,并重新启用优先级错误OB。

优先级错误OB的本地数据

下表说明了优先级错误OB的临时(TEMP)变量。变量名为OB85的默认名称。

OB85_EV_CLASS BYTE 事件等级和标识符:B#16#35B#16#38 (仅限于错误代码B#16#B3和B#16#B4)B#16#39 (仅限于错误代码B#16#B1、B#16#B2、B#16#B3和B#16#B4)

OB85_FLT_ID BYTE 错误代码(可能值:B#16#A1、B#16#A2、B#16#A3、B#16#A4、B#16#B1、B#16#B2、B#16#B3、B#16#B4)

OB85_PRIORITY BYTE ?优先级,可通过STEP 7分配(硬件配置)

OB85_OB_NUMBR BYTE OB编号(85)

OB85_RESERVED_1 BYTE 保留

OB85_RESERVED_2 BYTE 保留

OB85_RESERVED_3 INT 保留

OB85_ERR_EV_CLASS BYTE 引起错误的事件的等级

OB85_ERR_EV_NUM BYTE 引起错误的事件的编号

OB85_OB_PRIOR BYTE 在出错时处于活动状态的OB的优先级

OB85_OB_NUM BYTE 在出错时处于活动状态的OB的编号

OB85_DATE_TIME DATE_AND_TIME 调用OB时的DATE_AND_TIME

必须使用 STEP 7在S7程序中将 OB85创建为对象。在所生成的块中编写将要在OB85中执行的程序,然后将其作为用户程序的一部分下载到 CPU中。

例如,可以将 OB85用于下列目的:

• 评估OB85的启动信息,并确定哪个模块处于故障状态或没有插入(指定模块启动地址)。

• 通过SFC49 LGCGADR,查找所涉及的模块的插槽。

如果没有编程 OB85,那么当检测到优先级错误时,CPU变成停止模式。

在相应的关于块的帮助中,可以获取 OB、SFB 和SFC 的详细资料

编程实例:

L B#16#A1

B#16#A1 由于使用STEP 7创建了组态,您的程序或操作系统将为未装载到CPU上的OB创建一个启动事件。尚未加载的OB发生错误事件

L #OB85_FLT_ID

==I

SPB K_OB

L B#16#A2

由于使用STEP 7创建了组态,您的程序或操作系统将为未装载到CPU上的OB创建一个启动事件。尚未加载的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

F_PA: NOP 0

SPA ENDE

STOP: CALL "STP" SFC 46 ---PLC停机使用SFC 46 "STP"使CPU进入停机状态

ENDE: NOP 0

为什么要在OB85里编辑停机功能呢?

原因:

1. OB85的故障代码:B#16#A1 产生的原因是由于使用STEP 7创建了组态,您的程序或操作系统将为未装载到CPU上的OB创建一个启动事件。尚未加载的OB发生错误事件.

OB85的内部变量出错.

2. 由于使用STEP 7创建了组态,您的程序或操作系统将为未装载到CPU上的OB创建一个启动事件。尚未加载的OB发生错误事件.






审核编辑:刘清

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

    关注

    68

    文章

    10446

    浏览量

    206574
  • SFC
    SFC
    +关注

    关注

    0

    文章

    44

    浏览量

    11061
  • CSFB
    +关注

    关注

    0

    文章

    9

    浏览量

    14796

原文标题:优先级错误组织块(OB85)

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

收藏 人收藏

    评论

    相关推荐

    [转] STN32抢占优先级与副优先级及中断优先级NVIC理解

    首先来说说两个概念,1、NVIC的优先级概念 抢占式优先级 (pre-emption priority): 高占先式优先级的中断事件会打断当前的主程序/中断程序运行— —抢断式优先响应
    发表于 04-15 14:14

    CC1310rtos里面,优先级定义时,是1的优先级高还是2的优先级高?

    CC1310rtos里面,优先级定义时,是1的优先级高还是2的优先级高?
    发表于 06-21 10:12

    任务优先级问题

    优先级的任务可以通过时间片轮转调度来实现任务切换。在不同优先级的任务中,如果高优先级的任务没有延时,没有等待信号量等使用任务调度的内核对象的话,是否高优先级任务就会一直占用CPU而导
    发表于 04-02 04:35

    中断优先级问题如何解决

    中断设置为具有不同的优先级,以确保快速UART首先进入,慢速UART次之,计时器最低,但我总是出现异常错误。通常,异常类型是7,这是一个总线错误,异常地址位于中断例程之一的区域内。现在,我已经将所有
    发表于 04-22 11:38

    优先级判断STM32

    一:综述STM32 目前支持的中断共为 84 个(16 个内核+68 个外部), 16 可编程中断优先级的设置(仅使用中断优先级设置 8bit 中的高 4 位)和16个抢占优先级(因
    发表于 08-13 06:50

    stm32的中断优先级基本原理介绍

    stm32的中断具有不同的优先级,可以使用NVIC(嵌套向量中断控制器,Nested Vectored Interrupt Controller)来控制。 一、基本原理介绍 stm32的中断优先级
    发表于 08-13 08:46

    NVIC中断优先级管理与中断优先级分组

    NVIC中断优先级管理中断优先级分组:STM32F407系列把中断分为5个组:(0~4)对0-4每个中断设置一个抢占优先级和响应优先级值(值越小优先
    发表于 08-16 08:06

    中断优先级的基本规则

    单片机芯 片: STC12C5A60S2 晶振是11.0592MHZ中断优先级的基本规则1.低优先级中断可被高优先级中断所中断2.任何中断都不被同级中断所中断然而datashhet里
    发表于 11-25 06:32

    什么是先占优先级和从优先级

    什么是先占优先级和从优先级
    发表于 12-13 07:00

    cortex M抢占优先级和子优先级有什么用

    Cortex M内核中每个中断都有一个8位的优先级设置寄存器这个8位的寄存器可以分为抢占优先级和子优先级两个部分(通过设置优先级组设置)抢占优先级
    发表于 01-25 06:07

    FreeRTOS中断优先级和任务优先级架构的相关资料推荐

    FreeRTOS中断优先级和任务优先级架构:Cortex-M3版本:FreeRTOS V9.0.0前言:最开始,我并没有搞清楚什么是中断优先级和任务优先级,但看了部分资料后发现这两个并
    发表于 02-08 06:36

    RT-Thread线程优先级链表与位图算法的介绍

    1 线程优先级链表每个线程控制都带有一个链表成员,根据优先级将thread->slist插入对相应优先级链表中,对于相同优先级采取时间片轮
    发表于 05-13 15:38

    如何应用优先级错误处理组织块(OB85)

    优先级错误组织块(OB85) 只要发生下列事件之一,CPU的操作系统即调用OB85: 1.尚未装载的OB
    的头像 发表于 10-14 16:18 3579次阅读

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

    今天出现一个PLC停机: 由 OB85 引起的停机. OB85里的程序编辑: L     B#16#A1                     //尚未加载的OB发生错误
    的头像 发表于 05-12 13:47 2445次阅读
    解析一个由<b class='flag-5'>OB85</b>编程引起CPU停机

    OB优先级和运行时特性

    S7-1200-CPU 支持优先级 1(最低)到 27(最高)。为 OB 分配其启动事件的优先级。中断 OB 只能由时间错误中断进行中断。
    的头像 发表于 01-07 11:41 1261次阅读