CANopenWriteEmcy()

<< 点击显示目录 >>

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

CANopenWriteEmcy()

这个功能块用于通过网络层发送特定于应用的紧急信息。

emcy_err元素根据CiA标准草案301包含用户应用程序的紧急错误信息。emcy_add_info元素可以用来指定额外的错误信息,这些信息不是正在发送的紧急信息的一部分,但在对象字典(错误字段,见CiA Draft Standard 301)的1003H索引中输入。这个错误信息只用于诊断,因此甚至可以为零。

当CANopenWriteEmcy()功能块被调用时,要发送的信息被存储在CANopen内核的发送缓冲区中。如果没有错误发生(报文成功存储在发送缓冲区),那么就会返回 "status = 0"。然而,PLC程序不会被告知消息是否被成功发送。

 

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

 

这个功能块 不能 用于 冗余

 

参数

输入/输出

参数

数据类型

说明

IN

enable

BOOL

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

IN

pDevice

UDINT

(transmitted as a pointer to STRING)

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

IN

emcy_err_code

UINT

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

IN

emcy_err_register

USINT

根据CiA标准草案301的紧急错误信息,用于发送紧急信息。

IN

emcy_err_field1

USINT

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

IN

emcy_err_field2

USINT

IN

emcy_err_field3

USINT

IN

emcy_err_field4

USINT

IN

emcy_err_field5

USINT

IN

emcy_add_info

UINT

额外的用户特定的紧急错误信息被输入到对象字典的1003H索引中(错误字段,见CiA Draft Standard 301)。这不是正在发送的紧急信息的一部分,而是用于诊断,因此可以是零。

OUT

status

UINT

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

OUT

error

UINT

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

 

调用语法 (Automation Basic)

CANopenWriteEmcy (enable, adr(Device), emcy_err_code, emcy_err_register, emcy_err_field1, emcy_err_field2, emcy_err_field3, emcy_err_field4, emcy_err_field5, emcy_add_info, status, error)