GetModuleConfiguration

获取已配置装置的资讯。

语法

KsError GetModuleConfiguration(
     int ConfigurationIndex,
     int* SlaveId,
     int* ModuleId,
     KsConfigurationType* ConfigurationType,
     VOID* Configuration
);

参数

ConfigurationIndex:已配置装置的索引。

SlaveId:即从站索引 (Slave Index)。此索引是 KINGSTAR 主站于 EtherCAT 网路启动时,根据实体连接顺序自动指派的。直接连线到主站的第一个装置会被指派为索引 0 (Index 0),接著是索引 1、索引 2,依此类推。即使新增、移除或重新连线装置,这些索引在从站阵列中也会保持一致。请参阅 热插拔 (HotConnect)、修复与重启 中的使用案例以了解更多详细资讯。

ModuleId:(连接至耦合器的装置)的模组 ID,此可以是槽 ID、连接埠 ID 或从站 ID。

ConfigurationType:装置与耦合器间的连接类型。请见 KsConfigurationType 类型。

Configuration:配置结构的指标,此取决于使用的通讯协定。例如,若协定为 IO-Link,则配置为 IoLinkSetting 结构。

回传值

如果此函式执行成功,会回传 errNoError,否则会传回错误码。如需更多有关错误码的资讯,请参阅 KsError 清单。

可用的 EtherCAT 状态

ecatOffline, ecatInit, ecatBoot, ecatPreOP, ecatSafeOP, ecatOP

范例

复制
int slaveId = 0, moduleId = 0;
void* Configuration = malloc(sizeof(CanOpenSetting));
KsConfigurationType type = KsConfigurationType::configEtherCAT;
nRet = GetModuleConfiguration(0, &slaveId, &moduleId, &type, Configuration);

// Cast Configuration to the pointer of setting structure based on the type value
if (type == configCANopen)
{
    CanOpenSetting CanOpenConf = *(CanOpenSetting*)Configuration;
}

使用需求

  RT Win32
最低支援版本 4.0 4.0
标头档 ksapi.h ksapi.h
程式库 KsApi_Rtss.lib KsApi.lib

参见

AddModuleConfiguration

GetConfiguredModuleCount

RemoveModuleConfiguration