nxcomNmt()

<< 点击显示目录 >>

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

nxcomNmt()

 

该FB可用于向指定节点发送NMT命令。

 

该功能块只能有条件 地用于冗余。

 

参数

输入/输出

参数

数据类型

说明

IN

enable

BOOL

该功能块仅在enable为<>0时执行。

IN

pDevice

UDINT

(given as a pointer to STRING)

接口的名称。

例如。"SS1.IF1"

IN

node

USINT

所需从属设备的节点号(1...127)。

IN

command

UDINT

NMT命令

状态

数值

说明

nxcomNMT_CMD_START

1

启动节点

nxcomNMT_CMD_STOP

2

停止节点

nxcomNMT_CMD_ENTER_PREOP

128

将节点设置为预操作模式。

nxcomNMT_CMD_RESET_NODE

129

重置节点。

nxcomNMT_CMD_RESET_COMM

130

重置与节点的通信。

OUT

status

UINT

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

OUT

coStatus

UDINT

该输出包含 CANopen堆栈的状态

 

调用语法

nxcomNmt(enable, pDevice, node, command, status, coStatus)

 

pDevice

该参数指定了接口名称(STRING)的地址。接口名称(语法:SL<x>.SS<y>.IF<z>)描述了应该被访问的CAN接口(例如:"SS1.IF1")。

 

错误号码

误差数字

常数

错误描述

纠错

0

ERR_OK

无错误


65534

ERR_FUB_ENABLE_FALSE

FB "enable "参数不等于1。

启用FB。

65535

ERR_FUB_BUSY

任务仍在处理中,再次调用FB。

继续调用FB。

 

 

 


34500

nxcomERR_INVALID_DEVICE

为接口指定的名称无效。

检查接口的名称。

34501

nxcomERR_SEND_MESSAGE

发送到CANopen协议栈的消息失败。

这是一个内部AR错误,没有纠错建议。请联系B&R支持。

34502

nxcomERR_TIMEOUT

发送到CANopen协议栈的消息超时。

这是一个内部AR错误,没有纠正错误的建议。请联系B&R支持部门。

34503

nxcomERR_CANOPEN_STACK

发送到CANopen协议栈的消息因错误而终止。

检查CANopen堆栈状态(见参数coStatus - CANopen堆栈状态)。

34504

nxcomERR_DATALEN

指定的文件长度是无效的。

检查指定的数据长度。