FB_HomingTorque

功能描述

此功能块可让您通过朝向阻止运动以确定零点物理对象运动将驱动器归位。此类型的回归由控制器控制(有关驱动器控制回归,请参阅 MC_Home)。这种类型的回归通常用于归位 Delta 机器人的手臂。

功能块 FB_HomingTorque 修改用于回归的驱动器参数 CTRL_I_maxMON_p_dif_load 的值,并在回归后将这些值恢复为原始值。如果在回归过程中控制器与驱动器之间的通讯中断(例如,断电、物理连接中断),则不会恢复这些参数的原始值。

 警告
意外的设备操作
在以任何方式运行设备之前,如果控制器和驱动器之间的通讯在回归期间中断,或者如果您怀疑通讯在回归期间可能已中断,请确认驱动器参数 CTRL_I_maxMON_p_dif_load 设置为正确的值。
未按说明操作可能导致人身伤亡或设备损坏等严重后果。

根据转矩限制(输入 MaxTorque)、速度(输入 Velocity)和维持转矩的时间(输入 TorqueTime),用于回归的物理对象(块)可能无法承受这些力。如果转矩限制过大,也可能会导致电机、编码器和其他部件无法工作。

禁用对最小运动距离的监控可能导致意外的设备运行。

 警告
意外的设备操作
  • 确认机器的机械设计适合在输入 MaxTorqueTorqueTime 中设置的值。
  • 确认在输入 MaxTorqueTorqueTime 中设置的值未超过在机器中所用的电机和其他设备的文档中指定的限制。
  • 通过将输入 OffsetDistance 设置为大于 0 的值来验证是否执行了偏移运动,以将轴移离物理对象(块)。
  • 通过将输入 MinTravelDistance 设置为大于 0 的值,确认对最小运动距离的监控已启用。
未按说明操作可能导致人身伤亡或设备损坏等严重后果。

回归运动已启动(输入 AccelerationJerk),按照在输入 Direction 中设置的方向达到指定速度(输入 Velocity)。

用于回归的转矩限制为在输入 MaxTorque 中设置的值。

输入 DetectionVelocityThreshold 的值指定达到输入 MaxTorque 的转矩限制时的速度限制值。

如果转矩大于输入 MaxTorque 的值的 70% 且速度小于输入 DetectionVelocityThreshold 的值,则满足阻止运动的机械对象的检测条件(块条件)。

如果在输入 TorqueTime 处指定的时间内满足了块条件,则驱动器器参数 CTRL_I_maxMON_p_dif_load 将恢复为其原始值。然后,在输入 OffsetDistance 中指定的反向偏移运动将启动。

完成偏移运动后,会设置输入 HomePosition

下面的示例演示了值 DetectionVelocityThresholdMaxTorqueTorqueTime 的相互依赖关系:

注: 如果使用本示例中的弹簧之类的“软”块,则 HomePosition 的精度可能较低。

输入 MaxTravelDistance 用于指定回归运动的最大距离。如果在此距离内未满足块条件,则功能块的执行以检测到错误而中止。

输入 MinTravelDistance 用于指定回归运动的最小距离。如果轴沿指定方向按指定的距离值执行运动,并且参考位置与实际位置之差小于输入 MinTravelDistance 的值的 10%,则认为已经覆盖了最小距离。如果未达到最小距离,则会触发驱动器的 Halt(驱动器控制字的位 13 复位为 0)。完成 Halt 后,会执行运动以返回首次执行功能块的位置。如果在输入 MaxTorque 中设置的转矩值不足以进行回归运动,则可能无法达到最小距离。

开始执行功能块时,轴属性 IsHomed 设置为 FALSE。一旦输入 HomePosition 设置为轴位置,轴属性 IsHomed 即设置为 TRUE

必须先映射 Sercos IDN P-0-3030.0.36actual torque 值),然后才能使用功能块。

在执行了功能块之后,既不能启动功能块作为缓冲功能块,也不能执行缓冲功能块。

只有在轴处于 PLCopen 运行状态 StandStill 时,才能启动该功能块。功能块执行后允许的 PLCopen 运行状态为 StoppingErrorStopStandStill.

该功能块仅可用于 LXM32S 驱动器。

图形表示形式

输入

输入

数据类型

描述

Axis

Axis_Ref

对将执行功能块的轴的引用。

如果为反馈轴启动了功能块,则功能块的执行以检测到错误 (NotSupportedWithFeedbackAxis) 而中止。

Execute

BOOL

值范围:FALSETRUE

缺省值: FALSE

输入 Execute 的上升沿可启动功能块。功能块持续执行,且输出 Busy 设置为 TRUE

当功能块处于执行状态中时,输入 Execute 处的上升沿将被忽略。

HomePosition

LREAL

值范围:LREAL

缺省值:0

以用户自定义单位表示的位置,在满足块条件(输入 MaxTorqueDetectionVelocityThreshold)且转矩时间(输入 TorqueTime)已过时从功能块进行偏移运动之后设置。

OffsetDistance

LREAL

值范围:正 LREAL

缺省值:0

以用户自定义单位表示的反方向运动,在满足块条件(输入 MaxTorqueDetectionVelocityThreshold)且转矩时间(输入 TorqueTime)已过之后执行。

MaxTravelDistance

LREAL

值范围:正或负 LREAL

缺省值:0

以用户自定义单位表示的为检测功能块条件满足情况而移动的最大距离。

行为:

  • 值 0:功能块的执行以检测到错误 (InvalidMaxTravelDistance) 而中止。

  • 值大于 0:设置回归运动覆盖的最大运动距离。如果在此距离内未满足块条件,则功能块的执行以检测到错误 (MaxTravelDistanceExceeded) 而中止。

  • 值小于 0:禁用对最大运动距离的监控。

MinTravelDistance

LREAL

值范围:正或负 LREAL

缺省值:0

开始检测是否满足块条件之前要涵盖的最小距离,以用户自定义单位表示。

如果该值大于输入 MaxTravelDistance 的值,则功能块的执行以检测到错误 (MinTravelDistanceIsNotLowerThanMaxTravelDistance) 而中止。

如果未达到指定的最小距离,则功能块的执行以检测到错误 (MinTravelDistanceNotReached) 而中止。触发驱动器的 Halt(驱动器控制字的位 13 复位为 0)。

Velocity

LREAL

值范围:正 LREAL

缺省值:0

回归运动的速度值,以用户自定义单位表示。

如果值为负或零,则功能块的执行以检测到错误 (NonPositiveHomingVelocity) 而中止。

Acceleration

LREAL

值范围:正 LREAL

缺省值:0

回归运动的加速度值,以用户自定义单位表示。

如果值为零或负,则功能块的执行以检测到错误 (AccelerationOutOfRange) 而中止。

Deceleration

LREAL

值范围:正 LREAL

缺省值:0

回归运动的减速度值,以用户自定义单位表示。

如果值为零,则功能块的执行以检测到错误 (DecelerationOutOfRange) 而中止。

Jerk

LREAL

值范围:正 LREAL

缺省值:0

  • 正值:变化率限值(单位/秒3)(加速度修改的最大变化率)。

  • 零:变化率限值已禁用。加速度从零跳至最大加速度(无限变化率)。

Direction

MC_Direction

缺省值:PositiveDirection

回归运动的方向。

可能的值:

  • PositiveDirection

  • NegativeDirection

如果值无效,则功能块执行以检测到错误 (DirectionInvalid) 而中止。

有关值描述,请参阅 MC_Direction

DetectionVelocityThreshold

LREAL

值范围:正 LREAL

缺省值:0

以用户自定义单位表示的速度限制值,用于检测块条件的实现,即实际转矩大于输入 MaxTorque 的值的 70%,且速度小于此输入的值。

如果值不是正 LREAL 值,则功能块的执行以检测到错误 (NonPositiveDetectionVelocityThreshold) 而中止。

MaxTorque

LREAL

值范围:LREAL

此值指定 Nm 中的转矩限制,用于检测块条件的实现,即转矩大于此输入处的值的 70%,且速度小于输入 DetectionVelocityThreshold 处的值。如果值为负,则功能块的执行以检测到错误 (MaxTorqueInvalid) 而中止。如果值为 0,则无转矩限制。 

TorqueTime

UINT

值范围:UINT

缺省值:0

必须满足块条件的最短持续时间(毫秒),即转矩保持大于输入 MaxTorque 处的值的 70%,且速度在输入 DetectionVelocityThreshold 处指定的持续时间内保持小于此输入处的值。

输出

输出

数据类型

描述

Done

BOOL

值范围:FALSETRUE

缺省值: FALSE

  • FALSE:执行尚未完成,或者检测到错误。

  • TRUE:无检出错误时执行终止。

Active

BOOL

值范围:FALSETRUE

缺省值: FALSE

  • FALSE:功能块不控制轴的运动。

  • TRUE:功能块控制轴的运动。

CommandAborted

BOOL

值范围:FALSETRUE

缺省值: FALSE

  • FALSE:执行尚未中止。

  • TRUE:执行已被另一个功能块所中止。

Error

BOOL

值范围:FALSETRUE

缺省值: FALSE

  • FALSE:功能块正在执行,且执行期间未检测到错误。

  • TRUE:已在执行功能块时检出错误。

ErrorID

ET_Result

此枚举提供诊断信息。