I have a SCARA-style kinematic running as an MpRoboticsFlex axis group. The group has three joint axes (Q1, Q2, QZ) plus two
synchronized auxiliary/slave axes, a gantry X and gantry Z, that carry the whole arm. Workspace protection is set up in the
path program with SafeCuboid() (shelf/post obstacles anchored in MCS via SetFrame/SetPCS).
What I want to achieve: move the gantry X axis to a target position independently while the path program continues to move
Q1/Q2 back and forth (i.e. the gantry travels on its own profile rather than being locked into each PTP block with the joint
axes).
My approach was to ReleaseAxis(‘GantryX’) from the path, drive it as a single axis (MC_MoveAbsolute) from a cyclic task, then
re-adopt it later with MovePosition(‘GantryX’).
The problem: while the axis is released, the path planner no longer has a trajectory for it, so the SCARA wireframe used for
SafeCuboid monitoring is computed with the gantry X frozen at its release position. Because the shelf/post cuboids are
anchored in machine coordinates and the arm’s MCS location depends on gantry X, the monitoring is evaluated at the wrong
place and the cuboid protection effectively no longer guards the arm correctly while gantry X is physically moving.
Is there any way to accomplish moving the gantry axes independently while maintaining proper safe cuboids? 1b2217b5-5390-4ff9-a94b-80b6dce398a6 looks close to what I need, but is limited to spindle set ups.
Using AS 4.12, MappMotion 5.28.3. We’re weeks away from upgrading to AS6 though if that makes any difference.
Thanks in advance!