FB_HomingDigitalInput

功能描述

此功能块可让您将驱动器归位到参考开关。此类型的回归由控制器控制(有关驱动器控制回归,请参阅 MC_Home)。

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

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

在检测到参考开关的上升沿时,速度将设置为输入 LowVelocity(在输入 Deceleration 中指定的减速度)。第二次运动的方向取决于输入 HomingMode 的值(相反方向或相同方向)。当检测到参考开关的下降沿时,输入 HomePosition 设置为轴的位置值,并且轴按照在输入 Deceleration 中指定的减速度停止。静止位置与 HomePosition 之差是减速过程中所覆盖的距离。

根据输入 ReturnToZero 的值,将执行朝向零点的运动 (TRUE)。

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

如果在回归运动期间触发了硬件限位开关,则功能块的执行以检测到错误 (DriveInError) 而中止。

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

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

示例 1:

输入设置:

  • Direction: PositiveDirection

  • ReturnToZero: False

  • HomingMode: FastNoReverseSlowSetpositionStop

运动:

  • 1:以 HighVelocity 向基准开关的上升沿运动,随后减速至 LowVelocity

  • 2:沿着相同的方向以 LowVelocity 向参考开关的下降沿运动。该 HomePosition 已完成设置。

如果检测到下降沿,但速度值仍大于输入 LowVelocity 的值(这意味着上升沿和下降沿之间的距离不足以从 HighVelocity 减速到 LowVelocity),则在完成减速到 LowVelocity 的过程后,将启动反向搜索上升沿的运动。检测到上升沿时,运动方向再次反转,并继续运动,直到检测到下降沿。该 HomePosition 已完成设置。

示例 2:

输入设置:

  • Direction: PositiveDirection

  • ReturnToZero: False

  • HomingMode: FastReverseSlowSetpositionStop

运动:

  • 1:以 HighVelocity 向基准开关的上升沿运动,随后减速至 LowVelocity

  • 2:采用 LowVelocity 的反向运动。该 HomePosition 已完成设置。

图形表示形式

输入

输入

数据类型

描述

Axis

Axis_Ref

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

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

Execute

BOOL

值范围:FALSETRUE

缺省值: FALSE

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

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

如果您尝试在执行其他功能块时执行该功能块,则会检测到错误 (AxisNotInStandstill)。

HomePosition

LREAL

值范围:LREAL

缺省值:0

以用户自定义单位表示的位置,在 LowVelocity 下检测到参考开关信号的下降沿时设置为轴位置。

如果将该值设置为模数轴模数范围之外的值,则会检测到错误 (PositionOutsideModulo)。

如果将该值设置为线性轴允许的运动范围之外的值,则会检测到错误 (HomePositionOutsideLimits)。

MaxTravelDistance

LREAL

值范围:正或负 LREAL

缺省值:0

用于搜索参考开关信号上升沿的运动的最大距离,以用户自定义单位表示。

行为:

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

  • 值大于 0:设置回归运动覆盖的最大运动距离。如果在此距离内未检测到参考开关信号的上升沿,则功能块的执行以检测到错误 (MaxTravelDistanceExceeded) 而中止。

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

HighVelocity

LREAL

值范围:正 LREAL

缺省值:0

在检测到信号之前朝向基准开关的回归运动的速度值,以用户自定义单位表示。

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

LowVelocity

LREAL

值范围:正 LREAL

缺省值:0

在检测到上升沿之后远离基准开关的运动的速度值,以用户自定义单位表示。

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

Acceleration

LREAL

值范围:正 LREAL

缺省值:0

朝向基准开关的回归运动 (HighVelocity) 和远离基准开关的运动 (LowVelocity) 的加速度值,以用户自定义单位表示。

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

Deceleration

LREAL

值范围:正 LREAL

缺省值:0

检测到基准开关信号后的回归运动 (HighVelocity) 和远离基准开关的运动 (LowVelocity) 的减速度值,以用户自定义单位表示。

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

Jerk

LREAL

值范围:正 LREAL

缺省值:0

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

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

Direction

MC_Direction

缺省值:PositiveDirection

回归运动的方向。

可能的值:

  • PositiveDirection

  • NegativeDirection

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

有关值描述,请参阅 MC_Direction

ReferenceSwitch

BOOL

值范围:FALSETRUE

缺省值: FALSE

此输入指示回归运动是否已到达参考开关。

TRUE:回归运动已到达参考开关。

FALSE:回归运动尚未到达参考开关。

HomingMode

MC_HomingMode

此数据类型是 MotionInterface 库的枚举 ET_HomingMode 的别名。它让您能够指定在完成采用 HighVelocity 的快速运动后是否反向执行采用 LowVelocity 的慢速运动。

可能的值:

  • FastReverseSlowSetpositionStop

  • FastNoReverseSlowSetpositionStop

ReturnToZero

BOOL

值范围:FALSETRUE

缺省值: FALSE

TRUE:在设置了回归位置后,运动继续到 HighVelocity 的零位置 0(对应于 MC_MoveAbsolute 设置为位置 0.0 的运动)。

注: 如果在 ReturnToZero 设置为 TRUE 的情况下执行功能块 MC_SetPosition,则向零点的运动按最初的计算继续。

FALSE:设置回归位置后不执行任何运动。

只要归零运行持续,PLCopen 运行状态就仍为 Homing

输出

输出

数据类型

描述

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

此枚举提供诊断信息。