CANopenRecvEmcy()

<< 点击显示目录 >>

主页  贝加莱CANopen通信使用助手 > 通过编程实现CANopen通讯 > 功能块与函数说明  > AsCANopen - Function blocks >

CANopenRecvEmcy()

该功能块用于从网络层接收缓冲区读取节点的紧急信息。

根据CiA标准草案301,emcy_err元素包含该节点的紧急错误信息。

这个功能块总是返回进入接收缓冲区的第一条紧急信息(即最古老的信息)。然后,该信息将从接收缓冲区中删除。因此,一个紧急信息只能被PLC程序读取一次。 CANopenRecvEmcyDev() 和CANopenRecvEmcy()函数块都访问同一个接收缓冲区。

 

异步处理导致该功能块返回 ERR_FUB_BUSY ,直到FBK成功完成或发生错误。

 

这个函数块 不能 用于 冗余

 

参数

输入/输出

参数

数据类型

说明

IN

enable

BOOL

只有当 enable 为<>0时才会执行此功能块 。

IN

pDevice

UDINT

(transmitted as a pointer to STRING)

设备名称(语法:SL<x>.SS<y>.IF<z>)。

OUT

status

UINT

错误编号 (0=无错误)。

OUT

error

UINT

根据CIA405_CANopen_KERNEL_ERROR 数据类型的错误代码  。

OUT

node

USINT

收到紧急信息的节点地址(1-127)。

OUT

emcy_err_code

UINT

根据CiA标准草案301的紧急错误信息。

OUT

emcy_err_register

USINT

根据CiA标准草案301的紧急错误信息。

OUT

emcy_err_field1

USINT

根据CiA标准草案301的紧急错误信息。

OUT

emcy_err_field2

USINT

OUT

emcy_err_field3

USINT

OUT

emcy_err_field4

USINT

OUT

emcy_err_field5

USINT

 

调用语法(Automation Basic)

CANopenRecvEmcy (enable, adr(Device), status, error, node, emcy_err_code, emcy_err_register, emcy_err_field1, emcy_err_field2, emcy_err_field3, emcy_err_field4, emcy_err_field5)