FB_HomingTouchProbe

功能描述

此功能块可让您将驱动器归位到接触式探测器的位置捕捉值。此类型的回归由控制器控制(有关驱动器控制回归,请参阅 MC_Home)。

输入 Trigger 指定要检测的捕捉信号的跳变沿(下降沿或上升沿)。回归运动的方向在输入 Direction 中设置。输入 MaxTravelDistance 用于指定回归运动的最大距离。如果在此距离内未检测到捕捉信号的跳变沿,则功能块的执行以检测到错误而中止。

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

检测到捕捉信号的指定跳变沿时,会将相应的位置值设置为回归位置。运动按照在输入 Deceleration 中设置的减速度值减速。

根据输入 ReturnToZero 的值,运动将停止 (FALSE) 或继续到达零点 (TRUE)。

采用以下输入设置的示例 1:

  • Direction: PositiveDirection

  • Trigger: RisingEdge

运动:

项目

运动

1

回归运动(搜索位置捕捉信号的跳变沿)。

2

向零点运动(如果 ReturnToZero 设置为 TRUE)。

3

向限位开关运动(回归失败)。

情形:

项目

情形

A

回归运动按照输入 Velocity 中的低值执行 (1)。检测到上升沿且运动停止。在回归运动后,将执行向零点的运动 (2)。

B

回归运动按照输入 Velocity 中的高值执行 (1)。检测到上升沿且运动停止。在回归运动后,将执行向零点的运动 (2)。

C

回归运动在上升沿之后、下降沿之前启动 (1),即在触发器上启动。运动通过限位开关停止 (3)。由于无法在上升沿和下降沿之间的位置启动回归运动,因此回归失败。

D

回归运动在下降沿之后启动 (1)。运动通过限位开关停止 (3)。回归失败。

采用以下输入设置的示例 2:

  • Direction: PositiveDirection

  • Trigger: FallingEdge

运动:

项目

运动

1

回归运动(搜索位置捕捉信号的跳变沿)。

2

向零点运动(如果 ReturnToZero 设置为 TRUE)。

3

向限位开关运动(回归失败)。

情形:

项目

情形

A

执行回归运动 (1)。检测到下降沿且运动停止。在回归运动后,将执行向零点的运动 (2)。

B

回归运动在上升沿和下降沿之间启动 (1),即在触发器上启动。运动通过限位开关停止 (3)。由于无法在上升沿和下降沿之间的位置启动回归运动,因此回归失败。

C

回归运动在下降沿之后启动 (1)。运动通过限位开关停止 (3)。回归失败。

通过库中的 IDNs 来检测位置捕捉信号的跳变沿。这意味着延迟,该延迟取决于必须调用功能块才能完成的情况出现的频率。如果输入 ReturnToZero 设置为 FALSE,则延迟对应于功能块的输出 Done 设置为 TRUE 后到接触式探测器的距离。

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

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

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

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

图形表示形式

输入

输入

数据类型

描述

Axis

Axis_Ref

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

Trigger

MC_Trigger_Ref

引用将执行功能块的驱动器的位置捕捉源。功能块检测捕捉信号的指定跳变沿,并使轴回归到此位置值。

可能的值:

  • FallingEdge

  • RisingEdge

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

如果在启动功能块时正在使用指定位置捕捉源,则功能块的执行以检测到错误 (CaptureSourceAlreadyInUse) 而中止。

如果位置捕捉信号的指定跳变沿无效,则功能块的执行以检测到错误 (InvalidCaptureEdge) 而中止。

如果触发器被功能块 MC_AbortTrigger 中止,则功能块的执行以检测到错误 (TriggerExternalAborted) 而中止。

Execute

BOOL

值范围:FALSETRUE

缺省值: FALSE

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

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

HomePosition

LREAL

值范围:LREAL

缺省值:0

以用户自定义单位表示的位置,在检测到捕捉信号的指定跳变沿时设置为回归位置。

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

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

注: 回归后,由于减速到停止,轴位置与检测到的回归位置不同(在定速 (Deceleration) 回归运动期间,检测到位置捕捉信号的跳变沿后的 Velocity 输入)。

MaxTravelDistance

LREAL

值范围:正或负 LREAL

缺省值:0

用于搜索捕捉信号跳变沿的运动的最大距离,以用户自定义单位表示。

行为:

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

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

  • 值小于 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

ReturnToZero

BOOL

值范围:FALSETRUE

缺省值: FALSE

TRUE:在设置了回归位置后,运动继续到零位置(对应于 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

此枚举提供诊断信息。