• 沒有找到結果。

用SFB54“RALRM” STATUS[3]从DP从站接收中断

长沙工控帮教育科技有限公司整理 Copy

8 符合PNO AK 1131的DPV1 SFB

8.3 用SFB54“RALRM” STATUS[3]从DP从站接收中断

注意

SFB52 “RALRM”接口与“符合IEC 61131-3标准的PROFIBUS指南PROFIBUS通讯 和代理功能块”标准中定义的FB “RALRM”完全相同。

描述

SFB

“RALRM”将从外围设备模块(集中结构)或者从DP从站组件接收含所有相应信息的 中断。然后将此信息提供给输出参数。

输出参数中的信息包含被调用OB的启动信息以及中断源的信息。

由于要检查外围设备中断,故只能在由CPU操作系统启动的中断OB中调用SFB54。

注意

如果要在启动事件并非由外围设备触发的OB中调用SFB54 “RALRM”,则SFB输出 中提供的信息便会相应减少。

确保在不同的OB中调用SFB 54 “RALRM”时使用不同的背景数据块。如果要在相关 中断OB外部计算SFB54调用结果数据,则对每个OB启动事件应该使用单独的背景 数据块。

SFB 54调用

可以在三种工作模式(MODE)下调用SFB54 “RALRM”。下表予以说明。

MODE SFB54 ...

0 ...在输出参数ID中显示触发中断的组件并将输出参数NEW设置为TRUE。

1 ...描述所有输出参数,与中断触发组件无关。

2 ...检查是否是输入参数F_ID中指定的组件触发了中断。

如果未触发中断,则NEW = FALSE

如果已触发中断,则NEW = TRUE,且描述所有其它输出参数

长沙工控帮教育科技有限公司整理

参数 声明 数据类型 存储区域 描述 MODE INPUT INT I、Q、M、D、L、常数 工作模式

F_ID INPUT DWORD I、Q、M、D、L、常数 要从中接收中断的组件(模块)的逻辑起 始地址

MLEN INPUT INT I、Q、M、D、L、常数 要接收的数据中断信息最大长度 (以字节计)

NEW OUTPUT BOOL I、Q、M、D、L 已接收新中断。

STATUS OUTPUT DWORD I、Q、M、D、L SFB或DP主站的出错代码

ID OUTPUT DWORD I、Q、M、D、L 已从中接收中断的组件(模块)的逻辑 起始地址。

位15包含I/O ID:0代表输入地址;

1代表输出地址 LEN OUTPUT INT I、Q、M、D、L 已接收中断信息的长度 TINFO IN_OUT ANY I、Q、M、D、L (任务信息)

OB启动和管理信息的目标范围 AINFO IN_OUT ANY I、Q、M、D、L (中断信息)

标题信息和附加中断信息的目标区域 至少应为AINFO提供MLEN字节。

当心

如果选择的目标区域TINFO或AINFO能容纳的字节数过少,则SFB54不能输入完整 信息。

目标区域TINFO的数据结构

字节 含义

0至19 当前已调用SFB54的OB的启动信息:

字节0到11:结构类似于SFC6SP;“RD_SINFO”中的参数TOP_SI

字节12到19:请求OB的日期和时间 20至27 管理 信息

长沙工控帮教育科技有限公司整理

管理信息的结构

TINFO

字节 数据类型 含义

根据调用SFB54的各个OB的不同,可能仅会部分改写目标区域TINFO和AINFO。

关于分别输入哪些信息,请参考下表。

出错信息

输出参数STATUS包含一些信息。它被解释为ARRAY[1...4] OF BYTE,出错信息的 结构如下:

域元素 名称: 含义

STATUS[1] Function_Num B#16#00(如果无故障)

DPV1-PDU的功能ID:在出错情况下,与B#16#80 进行或链接。如果未使用DPV1协议单元:B#16#C0。

STATUS[2] Error_Decode 出错ID的位置 STATUS[3] Error_Code_1 出错ID

STATUS[4] Error_Code_2 制造商特定出错ID扩展

STATUS[2]可具有以下值:

Error_Decode (B#16#...)

含义

00到7F CPU 无故障或无警告

80 DPV1 因不符合IEC 61158-6而出错

81到8F CPU B#16#8x显示在SFB的第n个调用参数中存在出错。

FE、FF DP配置文件 配置文件特定出错

STATUS[3]可具有以下值:

Error_Decode (B#16#...)

Error_Code_1 (B#16#...)

Error_Decode (B#16#...)

Error_Code_1 (B#16#...)

按照DVP1的解释 含义

96 H系统中发生主备机切换,先前的主CPU已进入STOP

模式。当时正在处理一个OB。SFB54不能提供OB启动 信息、管理信息、标题信息或附加中断信息。

可使用SFC6 “RD_SINFO”读出OB启动信息。此外,

还可以使用SFC13 “DPNRM_DG”同步读取OB4x、

55、56、57、82和83的受影响DP从站的当前诊断帧 (地址信息来自OB启动信息)。

Error_Decode (B#16#...)

Error_Code_1 (B#16#...)

Error_Decode (B#16#...)

Error_Code_1 (B#16#...)

按照DVP1的解释 含义

8F 00到FF 第15个调用参数中存在出错

FE、FF 00到FF 配置文件特定出错

出现DPV1出错时,DP主站会将STATUS[4]传递给CPU和SFB。如果不出现DPV1 出错,则此值被设置为0,但对于SFB52则会出现以下例外情况:

• STATUS[4]包含RECORD中的目标区域长度(如果MLEN > RECORD中的目标 区域长度)

• STATUS[4]=MLEN(如果实际数据记录长度 < MLEN < RECORD中的目标区域 长度)

长沙工控帮教育科技有限公司整理