Skip to main content

命令:添加 SoftMotion CiA402 轴

功能:该命令添加了一个通用的 SoftMotion 设备树中现场总线从站下方的 CiA402 轴。

称呼: 项目 菜单;设备树中设备对象的上下文菜单

要求:在设备树中,选择一个支持该驱动器的设备。示例:EtherCAT 从站或 CAN 从站。

CODESYS 提供了几个专门支持伺服驱动器模型的专用驱动器。如果将伺服设备驱动器添加到设备树中,那么它会自动拥有一个代表 SoftMotion 轴。标准驱动程序用于与设备通信。因此,您可以使用该命令来支持任何符合标准的伺服驱动器。 CODESYS CiA402 的实施。驱动器是否与设备一起工作的方式取决于设备本身的实现。经验表明,不同的制造商对标准有不同的解释,尤其是在错误处理和限位开关方面。因此,无法保证驱动程序如何与设备一起工作。

注意

通用 CiA402 驱动程序最多支持 8 个轴,以防驱动器的设备描述未指定数字。否则,支持设备描述中定义的轴数。

CANopen: 可能的轴数取决于 EDS 文件中逻辑设备的配置文件 (1000H 对象和 67FFH + X * 800H, 在哪里 X = 逻辑设备的数量)。有关详细信息,请参阅 CANopen CiA301 标准。

EtherCAT:可能的轴数取决于 ESI 文件中定义的 CiA402 通道 (CoE DS402Channels)。

设备制造商需要对 EDS 或 ESI 文件进行改编。

调试时使用的对象

调试时,如果设备支持以下对象,则会访问这些对象。

目的

读/写访问

(M) 必す信号

(O) 可选

评论

0x1000:0

M

较低的值必须是 402。否则取消。

0x1018:1

O

0x1018:2

O

0x1018:3

O

0x1018:4

O

0x6502:0

O

0x605A:0

O

0x60C2:1

如果参数 Set60C2 = TRUE

0x60C2:2

如果参数 Set60C2 = TRUE

0x6076:0

O

运行中使用的对象

根据所使用的功能,在操作期间使用以下对象:

0x603F:00, 0x6040:00, 0x6041:00, 0x6060:00, 0x6061:00, 0x6062:00, 0x6064:00, 0x606B:00, 0x606C:00, 0x6074:00, 0x6077:00, 0x6078:00, 0x607C:00, 0x60B1:00, 0x60B2:00, 0x60B8:00 0x60B9:00, 0x60BA:00, 0x60BB:00, 0x60BC:00, 0x60BD:00, 0x60F4:00.

高级配置

重要

您需要选择 显示通用设备配置编辑器 选项中的 选项 – 设备编辑器 对话框,以便显示带有参数的选项卡。

您可以使用以下参数来微调 CiA402 状态图的流程。

CiA402 参数

描述

_bImmediateDisabling

TRUE: 什么时候 bRegulator 被重置为 FALSE,将驱动器的状态从 Operation enabled 直接到 Switch on disabled

FALSE:通过“Switched on”和“Ready to switch on”切换状态,使驱动器有机会执行快速停止并正确处理制动器。

注意:如果此选项设置为FALSE, 然后可以使用位掩码微调立即禁用关闭的状态_dwStatesImmediateDisabling.

_bForbidReenableDuringDisabling

仅在以下情况下相关 _bImmediateDisabling = FALSE.

TRUE:驱动器被逐步禁用,直到驱动器发出信号 Ready to switch on 在处理新的启用命令之前。

dwStatesImmediateDisabling

仅在以下情况下相关 _bImmediateDisabling = FALSE.

立即禁用打开的状态的位掩码。

  • 位 0:正常操作

  • 第 1 位:快速停止

  • 位 2:外部快速停止

  • 位 3:归位

示例:假设 _bImmediateDisabling = FALSE, 价值 2#0110 表示仅针对“正常操作”和“归位”状态关闭立即禁用。对于状态“Quickstop”和“External Quickstop”,立即禁用已打开。

_uiPreHomingWait

状态机在状态中等待的周期数 PRE_HOMING 在通过设置位开始归位过程之前 4 的控制字。

_uiPostHomingWait

状态机停留的周期数 HOMING_DONE 在切换回“正常操作”之前。

_uiHomingMinCycles

开始时的循环次数 HOMING,其中完成位(状态字的位 10/12)被忽略。

_uiWaitCyclesForStateSwitch

系统等待驱动器执行状态更改命令的周期数。如果驱动器出现故障,系统将切换回 SWITCH_ON_DISABLED

_bPreHomingWaitBit12Clear

TRUE: 进去等候 PRE_HOMING 直到状态字的位 12 在开始回原点之前被驱动器清除(在设置控制字的位 4 之前)。

请注意,在任何情况下,状态机都停留在 PRE_HOMING 至少 _uiPreHomingCycles.

_bCheckBit10PostHoming

TRUE: 切换到 HOMING_DONE 如果状态字的第 12 位和第 10 位都是 TRUE (如 CiA-402 中所述)。

FALSE:忽略第 10 位;仅使用位 12。

_bCheckOpMode

TRUE:检查是否 0x6061 显示设置的值 0x6060 启用轴时。

FALSE:省略此项勾选,设置运行模式后立即启用。

_abyControllerMode

ARRAY[0..7] OF BYTE 包含操作模式(对象 0x6060)对应于 AXIS_REF_SM3.byOperationMode。 (指数 0,3 = 位置;指数 1 = 速度;指数 2 = 扭矩)

_bCheckBit12InPositionMode

TRUE: AxisIsReadyForMotion 检查 CSP 或 IP 中的位 12。

FALSE: AxisIsReadyForMotion 不检查位 12。

_bDoHaltWhenStopInterruptsHome

TRUE: 什么时候 MC_Stop 中断,用控制字的第 8 位中止归位。

FALSE:不设置第 8 位,直接切换运行模式。

_bCheckBit13InHomingMode

TRUE: 在 HOMING_ACTIVE, wStatusWord.13 = TRUE 导致错误停止和 wControlWord.8 := TRUE (根据 _bDoHaltWhenStopInterruptsHome)

_bSetControlBit4InCSP

TRUE: 将状态字的第 4 位也设置为 CSP 模式。一些驱动器需要这样做,尽管它不是标准的。

_uiHomingWaitListeningBits101213

在状态 HOMING_ACTIVE, 在从设置第 4 位开始的这个周期数期间不要监听第 10、12 和 13 位。(某些驱动器需要一些时间来重置这些位)。

_bRegulatorOnRequiresVoltageEnabled

是否需要状态字的第 4 位(电压使能) TRUE 以便 bRegulatorRealState = TRUE (默认值: FALSE).

_bDriveStartRequiresOperationEnabled

状态字的第 2 位(操作使能)是否需要 TRUE 以便 bDriveStartRealState = TRUE (默认值: TRUE).