<< 点击显示目录 >> 主页 贝加莱CANopen通信使用助手 > 通过编程实现CANopen通讯 > 功能块与函数说明 > AsCANopen - Function blocks > CANopenGetState() |
该功能块用于查询设备的节点状态。
状态查询是基于心跳或救生员的监测。在 "状态 "输出上的返回值有以下含义。
返回值 |
描述 |
UNKNOWN |
指定地址的CANopen设备不支持心跳或救生员监控,所以它的状态不能被监控。 |
NOT_AVAIL |
指定地址的CANopen设备不再响应心跳或生命保护查询,使其对系统不可用。 |
其他。 |
除了UNKNOWN和NOT_AVAIL状态值外,返回值对应于CiA标准草案301中的各自定义(见 常量概述)。 |
以 "node=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 |
node |
USINT |
要查询的节点的地址(1-127或0代表本地节点)。 |
OUT |
status |
UINT |
错误编号 (0=无错误)。 |
OUT |
state |
UINT |
CANopen内核的状态(见 CIA405_STATE 常数)。 |
CANopenGetState (enable, adr(Device), node, status)