CoeReadSdoObject
透过 EtherCAT CANopen (CoE) 读取 SDO 值。
语法
KsCommandStatus CoeReadSdoObject(
int SlaveId,
int ObIndex,
int ObSubIndex,
BOOL CompleteAccess,
BYTE* Value,
int Length
);
参数
SlaveId:即从站索引 (Slave Index)。此索引是 KINGSTAR 主站于 EtherCAT 网路启动时,根据实体连接顺序自动指派的。直接连线到主站的第一个装置会被指派为索引 0 (Index 0),接著是索引 1、索引 2,依此类推。即使新增、移除或重新连线装置,这些索引在从站阵列中也会保持一致。请参阅 热插拔 (HotConnect)、修复与重启 中的使用案例以了解更多详细资讯。
ObIndex:物件的 CANopen 索引。请参见装置说明书以获取此值。
ObSubIndex:物件的 CANopen 子索引。请参见装置说明书以获取此值。
CompleteAccess:TRUE:读取所有子索引;FALSE:读取一个子索引。
Value: 将填入物件数据的缓冲区指标。
Length:欲读取值的长度(位元)。
回传值
返回 KsCommandStatus 结构。
备注
此用以检测驱动器或任何其他从站如预期配置,若所读取的位元数量较可用位原数量多,则结果将因驱动器而异,例如,读取请求可能失败;或驱动器可能会在要读取的值中添加前导零。
可用的 EtherCAT 状态
ecatPreOP, ecatSafeOP, ecatOP
范例
复制
BYTE byteReadValue = 0;
Command = CoeReadSdoObject(0, 0X6061, 0, FALSE, &byteReadValue, 1);
使用需求
| RT | Win32 | |
|---|---|---|
| 最低支援版本 | 4.0 | 4.0 |
| 标头档 | ksapi.h | ksapi.h |
| 程式库 | KsApi_Rtss.lib | KsApi.lib |
参见