CANopen
KINGSTAR 在扫描总线时可侦测到 CANopen 装置。扫描 CANopen 总线耗时 30 秒至 1 分钟;如果连接了 CANopen 耦合器,KINGSTAR 则需要额外的 30 秒到 1 分钟才能启动。
三种设定 CANopen 设备的方式:
- 使用预设值-当侦测到 CANopen 设备后,KINGSTAR 将会接收其 PDO 设定值,而后将这些设定套用到系统中。此方法的优先级最低,仅适用于简单的 I/O 模组。
- 将 CANopen 设定汇入 KINGSTAR 资料库-KINGSTAR 会在启动后使用这些设定。目前使用者无法自行汇入 CANopen 设定,必须由 KINGSTAR 人员汇入。
- 使用 AddModuleConfiguration 设置您的 CANopen 装置-您需要使用 CanOpenSetting 结构来设定装置,再将其传送到 KINGSTAR。使用 AddModuleConfiguration 时,装置 ID (device ID) 就是装置的 CAN ID。此方法的优先顺序最高。
CANopen 装置可能有自己的物件字典 (object dictionary),如果有的话,您可以使用 AoeReadCommand 和 AoeWriteCommand 命令存取物件。AoE 命令要用的连接埠参数为 0x1000 + CAN ID。例如:CAN ID 为 7 的装置,使用的连接埠是 0x1007。
如果您使用 ReadIOSdoObject 及 WriteIOSdoObject 命令,这些命令会自动呼叫 AoE 命令并套用正确的连接埠号。
注意:目前所有的 CANopen 模组都视为 I/O 模组,唯一支援的 CANopen 耦合器是 Beckhoff EL6751。
在 CANopen 中编辑鲍率
KINGSTAR 使用 500 Kb 给 CAN 总线扫描和通讯,鲍率可在 Beckhoff EL6751 中编辑。
要编辑鲍率,请呼叫 AddModuleConfiguration 将 ModuleId 设为零。在传给 Configuration 的 CanOpenSetting 结构中,新增一道 0xF800:2 的 SDO 命令,命令中的值代表对应的鲍率。鲍率值可以在 EL6751 使用指南找到。
参见
RT/Win32 – KINGSTAR 总线 - 信箱
.NET API – Api 类别 - 信箱
.NET 类别 – ISlave 介面 - 方法
PLC 功能块 – EtherCAT