Function description

<< 点击显示目录 >>

主页  ACOPOS 6D使用手册 > mapp 6D  > 功能块 > McAcp6D  > Function blocks  > MC_BR_MoveArc_Acp6D  >

Function description

该功能块在二维空间内执行圆弧运动。

如果输入 "Execute(执行)"设置为 "true(真)",则以指定的参数开始圆弧运动。在运动过程中,只改变托盘的 x 和 y 位置。这意味着托盘在 Z、Rx、Ry 和 Rz 中的当前位置被保留。

运动的目标位置或中心位置可以绝对指定,也可以相对于托盘指定。

如果托盘当前正在执行运动,新命令将存储在运动缓冲器中,并在处理完所有之前的命令后执行。

还可以在功能块上指定所需的终点速度。如果该值大于 0,托盘将以该速度到达目标位置。通过该功能,可以在不停止的情况下过渡到运动缓冲区中的另一条运动指令。如果没有其他运动指令,则在目标位置处会出现过冲,因为托盘必须首先减速,然后尽快返回目标位置。

 

信息:

如果指定的末端速度和加速度超出了配置的系统限制,ACOPOS 6D 控制器将自动对其进行限制。

如果目标位置位于某定子电机的边缘,而以末端速度超程将意味着超过边缘,则运动指令将被拒绝。

如果到目标位置的距离太短,无法达到指定的末端速度,则会自动限制为可实现的速度值。

 

有两种不同的方法来定义圆弧运动:

McAcp6DArcOptionEnum

描述

mcACP6D_ARC_RADIUS

这里定义了目标位置和所需半径。通过附加参数可使用四种可能路径之一。

mcACP6D_ARC_ANGULAR

运动由中心点和移动角度定义。

 

mcACP6D_ARC_ RADIUS

圆弧运动目标点的位置可以绝对指定,也可以相对于托盘指定。

半径必须至少是当前托盘位置与目标位置之间距离的一半。这样就形成了两个圆,定义了从当前位置到目标位置的 4 条可能路径。可以通过旋转方向和圆弧类型从 4 条路径中选择一条。

 

McAcp6DArcDirectionEnum

McAcp6DArcTypeEnum

a

mcACP6D_ARC_COUNTER_CLOCKWISE

mcACP6D_ARC_MAJOR

b

mcACP6D_ARC_COUNTER_CLOCKWISE

mcACP6D_ARC_MINOR

c

mcACP6D_ARC_CLOCKWISE

mcACP6D_ARC_MAJOR

d

mcACP6D_ARC_CLOCKWISE

mcACP6D_ARC_MINOR

示例(针对 a)

托盘位置:X = 0.12 m / Y = 0.12 m

目标位置:X = 0.36 m / Y = 0.36 m

半径: 0.175 毫米

旋转方向 = mcACP6D_ARC_COUNTER_CLOCKWISE(逆时针方向)

圆弧类型 = mcACP6D_ARC_MAJOR(大圆弧)

movearc_targetradius

mcACP6D_ARC_ANGULAR

圆弧运动的半径由托盘的当前位置和定义的中心点决定。然后可以使用旋转角度和方向来定义沿圆弧的终点位置。角度的单位是弧度,且必须大于 0。

示例

托盘位置:X = 0.12 米 / Y = 0.12 米

目标位置:X = 0.12 米 / Y = 0.36 米

中心点:X = 0.24 m / Y = 0.24 m

旋转方向 = mcACP6D_ARC_CLOCKWISE (顺时针)

角度 = 1.570796 rad (90°)

movearc_centerangle

 

 


This function block performs a circular arc movement in 2-dimensional space.

If input "Execute" is set to TRUE, a circular arc movement starts with the specified parameters. During the movement, only the x- and y-positions of the shuttle are changed. This means that the current position of the shuttle in Z, Rx, Ry and Rz is retained.

The target or center position of the movement can be specified absolutely or relative to the shuttle.

If the shuttle is currently performing a movement, the new command is stored in the movement buffer and executed after all previous commands have been processed.

A desired end velocity can also be specified on the function block. If this value is greater than 0, the shuttle will reach the target position at this velocity. This function makes it possible to transition to another movement command that is already in the movement buffer without stopping. If there is no additional movement command, there will be overshoot at the target position since the shuttle must first be slowed down and then return to the target position as quickly as possible.

 

Information:

The specified end velocity and acceleration are automatically limited by the ACOPOS 6D controller if they are outside the configured system limits.

If the target position is at the edge of a segment and overshooting by the end velocity would mean exceeding the edge, the movement command is rejected.

If the distance to the target position is too short to reach the specified end velocity, this is automatically limited to an achievable speed value.

 

There are two different ways to define the circular arc movement:

McAcp6DArcOptionEnum

Description

mcACP6D_ARC_RADIUS

A target position and the desired radius are defined here. One of four possible routes is used via additional parameters.

mcACP6D_ARC_ANGULAR

The movement is defined by the center point and travel angle.

 

mcACP6D_ARC_ RADIUS

The position of the target point of the circular arc movement can be specified absolutely or relative to the shuttle.

The radius must be at least half the distance between the current shuttle position and the target position. This results in two circles that define 4 possible paths from the current position to the target position. One of the 4 paths can be selected via the direction of rotation and circular arc type.

 

McAcp6DArcDirectionEnum

McAcp6DArcTypeEnum

a

mcACP6D_ARC_COUNTER_CLOCKWISE

mcACP6D_ARC_MAJOR

b

mcACP6D_ARC_COUNTER_CLOCKWISE

mcACP6D_ARC_MINOR

c

mcACP6D_ARC_CLOCKWISE

mcACP6D_ARC_MAJOR

d

mcACP6D_ARC_CLOCKWISE

mcACP6D_ARC_MINOR

Example (for a)

Shuttle position: X = 0.12 m / Y = 0.12 m

Target position: X = 0.36 m / Y = 0.36 m

Radius: 0.175 mm

Direction of rotation = mcACP6D_ARC_COUNTER_CLOCKWISE (counterclockwise)

Circular arc type = mcACP6D_ARC_MAJOR (large arc)

movearc_targetradius

mcACP6D_ARC_ANGULAR

The radius for the circular arc movement results from the current position of the shuttle and the defined center point. The angle and direction of rotation can then be used to define the end position along the circle. The angle is specified in radians and must be greater than 0.

Example

Shuttle position: X = 0.12 m / Y = 0.12 m

Target position: X = 0.12 m / Y = 0.36 m

Center point: X = 0.24 m / Y = 0.24 m

Direction of rotation = mcACP6D_ARC_CLOCKWISE (clockwise)

Angle = 1.570796 rad (90°)

movearc_centerangle