<< 点击显示目录 >> 主页 ACOPOS 6D使用手册 > mapp 6D > 功能块 > McAcp6D > Function blocks > MC_BR_MoveInPlaneAsync_Acp6D > Function description |
该功能块可同时在二维空间内为多达 78 个托盘执行一个动作。
默认情况下,功能块的应用范围包括整个组件。可以使用可选的 "区域 "参数将应用范围限制在一个区域内。
说明对这两种情况都有效。有关使用参数 "Zone "的其他信息,请参阅 "将应用区域限制为一个区域"。
必须为功能块应控制的每个托盘指定唯一的目标位置。所有位置都必须在布局范围内,并且可以被托盘访问。这意味着用户在间隔目标位置时必须考虑到托盘的尺寸。目标位置也不允许分配两次。
在执行命令之前,不允许任何托盘进行移动。这意味着组件上的所有托盘都必须处于 "空闲-悬浮 "或 "停止 "状态。
如果输入 "执行 "设置为 "真",所有托盘将以指定的速度和加速度开始运动。控制器使用智能算法计算每个托盘的运动路线,使其到达目标位置,且托盘之间不会发生碰撞。路线由若干个单一的运动组成,这些运动始终只在 X 或 Y 方向上运行。在不利的星群中,有可能找不到或找不到所有路线。在这种情况下,功能块会输出错误信息,并且不会执行任何移动。
为了确保所有已定义的托盘都能到达目标位置,功能块上未指定的托盘也有可能被移动。在命令执行完毕之前,这些穿梭器会返回到原来的位置。
注意:箭头表示哪个托盘应被发送到哪个目标位置,并不代表计算出的托盘路线。
托盘 ID |
1 |
2 |
当前位置 |
X = 120 毫米 Y = 120 毫米 |
X = 360 毫米 Y = 120 毫米 |
目标位置 |
X = 360 毫米 Y = 360 毫米 |
X = 120 毫米 Y = 360 毫米 |
结果 |
由于目标位置在布局中,且彼此相距足够远,因此可以执行移动。 |
托盘 ID |
1 |
2 |
3 |
当前位置 |
X = 120 毫米 Y = 120 毫米 |
X = 360 毫米 Y = 360 毫米 |
X = 360 毫米 Y = 120 毫米 |
目标位置 |
X = 60 毫米 Y = 300 毫米 |
不受控制 |
X = 60 毫米 Y = 420 毫米 |
结果 |
可以进行移动,因为目标位置在布局中,而且相距足够远,穿梭机不会互相妨碍。 |
托盘 ID |
1 |
2 |
当前位置 |
X = 120 毫米 Y = 120 毫米 |
X = 360 毫米 Y = 120 毫米 |
目标位置 |
X = 200 毫米 Y = 360 毫米 |
X = 280 毫米 Y = 360 毫米 |
结果 |
由于目标位置相距不够远,因此无法执行该动作。托盘会重叠。 |
托盘 ID |
1 |
2 |
当前位置 |
X = 120 毫米 Y = 120 毫米 |
X = 360 毫米 Y = 120 毫米 |
目标位置 |
X = 40 毫米 Y = 320 毫米 |
X = 300 毫米 Y = 420 毫米 |
结果 |
由于托盘 1 的目标位置太靠近版面边缘,因此无法执行移动。托盘会悬空太远。 |
使用参数 "区域 "时,功能说明同样有效。只有应用区域会缩小到所引用的区域。
在执行命令之前,区段必须处于 "mcACP6D_ZONE_ACTIVE_CLOSED"(mcACP6D_ZONE_ACTIVE_CLOSED)状态,即隔离栅必须关闭。如果在区段处于不同状态或区段对象无效时执行命令,则功能块会输出错误信息。
通过缩小应用区域,只能使用区域内的托盘。上述要求仅限于该区域。这意味着目标位置必须在布局和区域边界内,并且必须是穿梭车可以访问的。此外,只有区域内的托盘必须处于 "空闲-悬浮 "或 "停止 "状态。
区域外的托盘将被功能块忽略,例如,可以同时执行其他动作。
如果需要对布局区域进行独立控制,尤其建议限制功能块的应用区域。
托盘 ID |
1 |
2 |
3 |
状态 |
闲置 - 悬浮 |
闲置 - 悬浮 |
着陆 |
当前位置 |
X = 60 毫米 Y = 60 毫米 |
X = 420 毫米 Y = 60 毫米 |
X = 360 毫米 Y = 360 毫米 |
目标位置 |
X = 420 毫米 Y = 180 毫米 |
X = 60 毫米 Y = 120 毫米 |
未控制 |
结果 |
无区域:由于应用区域(组件)内并非所有托盘都处于有效状态("空闲-悬浮 "或 "停止"),因此无法执行运动。
有区域:由于区域未处于有效状态("mcACP6D_ZONE_ACTIVE_CLOSED"),因此无法执行移动。 |
托盘 ID |
1 |
2 |
3 |
状态 |
闲置 - 悬浮 |
闲置 - 悬浮 |
着陆 |
当前位置 |
X = 60 毫米 Y = 60 毫米 |
X = 420 毫米 Y = 60 毫米 |
X = 360 毫米 Y = 360 毫米 |
目标位置 |
X = 420 毫米 Y = 180 毫米 |
X = 60 毫米 Y = 120 毫米 |
未控制 |
结果 |
可以执行移动,因为应用区域仅限于区域(黄色),其中的所有托盘都处于正确状态,目标位置也在布局和区域边界内。 |
The function block simultaneously performs a movement for up to 78 shuttles in 2-dimensional space.
The application area for the function block extends to the entire assembly by default. The optional "Zone" parameter can be used to restrict the application area to one zone.
The description is valid for both cases. For additional information about using parameter "Zone", see item "Limiting the application area to one zone".
A unique target position must be specified for each shuttle that the function block should control. All positions must be within the layout limits and accessible to a shuttle. This means that the shuttle sizes must be taken into account by the user when spacing the target positions. Target positions are also not permitted to be assigned twice.
Before the command is executed, no shuttle is permitted to be performing a movement. This means that all shuttles on the assembly must be in state "Idle - Levitated" or "Stopped".
If input "Execute" is set to TRUE, the movement starts for all shuttles with the specified speed and acceleration. The controller uses an intelligent algorithm to calculate a route for each shuttle so that it reaches its target position and there are no collisions between the shuttles. The route consists of several single movements that always run in the x- or y-direction only. It is possible in unfavorable constellations that no or not all routes can be located. In this case, the function block outputs an error and no movement is performed.
To ensure that all defined shuttles reach their target position, it is possible that shuttles that were not specified on the function block are also moved. These are returned to their original position before the command is completed.
Note: The arrows symbolize which shuttle should be sent to which target position and do not represent the calculated routes of the shuttles.
Shuttle ID |
1 |
2 |
Current position |
X = 120 mm Y = 120 mm |
X = 360 mm Y = 120 mm |
Target position |
X = 360 mm Y = 360 mm |
X = 120 mm Y = 360 mm |
Result |
The movement can be performed since the target positions are in the layout and far enough apart from one another. |
Shuttle ID |
1 |
2 |
3 |
Current position |
X = 120 mm Y = 120 mm |
X = 360 mm Y = 360 mm |
X = 360 mm Y = 120 mm |
Target position |
X = 60 mm Y = 300 mm |
Not controlled |
X = 60 mm Y = 420 mm |
Result |
The movement can be performed because the target positions are in the layout and still far enough apart that the shuttles do not get in each other's way. |
Shuttle ID |
1 |
2 |
Current position |
X = 120 mm Y = 120 mm |
X = 360 mm Y = 120 mm |
Target position |
X = 200 mm Y = 360 mm |
X = 280 mm Y = 360 mm |
Result |
The movement cannot be performed because the target positions are not far enough apart. The shuttles would overlap. |
Shuttle ID |
1 |
2 |
Current position |
X = 120 mm Y = 120 mm |
X = 360 mm Y = 120 mm |
Target position |
X = 40 mm Y = 320 mm |
X = 300 mm Y = 420 mm |
Result |
The movement cannot be performed because the target position of shuttle 1 is too close to the edge of the layout. The shuttle would overhang the edge too far. |
The function description is also valid when using parameter "Zone". Only the application area is reduced to the referenced zone.
Before the command can be executed, the zone must be in state "mcACP6D_ZONE_ACTIVE_CLOSED", i.e. the barrier must be closed. The function block outputs an error if the command is executed when the zone is in a different state or the zone object is invalid.
By reducing the application area, only shuttles within the zone can be used. The requirements described above are limited to this area only. This means that the target position must be within the layout and zone boundaries and must be accessible for the shuttles. In addition, only the shuttles within the zone must be in state "Idle - Levitated" or "Stopped".
Shuttles outside the zone are ignored by the function block and can execute other movements simultaneously, for example.
Limiting the application area for the function block is particularly recommended if areas of the layout should be controlled independently.
Shuttle ID |
1 |
2 |
3 |
State |
Idle - Levitated |
Idle - Levitated |
Landed |
Current position |
X = 60 mm Y = 60 mm |
X = 420 mm Y = 60 mm |
X = 360 mm Y = 360 mm |
Target position |
X = 420 mm Y = 180 mm |
X = 60 mm Y = 120 mm |
Not controlled |
Result |
Without zone: The movement cannot be performed because not all shuttles in the application area (assembly) have a valid state ("Idle - Levitated" or "Stopped").
With zone: The movement cannot be performed because the zone is not in a valid state ("mcACP6D_ZONE_ACTIVE_CLOSED"). |
Shuttle ID |
1 |
2 |
3 |
State |
Idle - Levitated |
Idle - Levitated |
Landed |
Current position |
X = 60 mm Y = 60 mm |
X = 420 mm Y = 60 mm |
X = 360 mm Y = 360 mm |
Target position |
X = 420 mm Y = 180 mm |
X = 60 mm Y = 120 mm |
Not controlled |
Result |
The movement can be performed because the application area is limited to the zone (yellow), all shuttles in it are in the correct state and the target positions are also within the layout and zone boundaries. |