Hello,
I think you have to ceate a special input Interface for your usecase, because our standard system is not intended to do this.
For geometrie movement we have two options…
Linear-Movements (G00/G01):
In this operation Mode we interpolate in the cartesian coordinates. The Path is generated for X,Y Coordinates and while the path is moving we transform each input X,Y set to a Q1,Q2 Axes Coordinate.
G01 X=10 Y=10
G01 Q1=10 Q2=10 → the Interpreter use the direct transformation to calculate the set Point in X,Y and operates like if given X,Y Coordinates.
So you can use PCS or ACS coordinates but you cant mix them.
Issue here, if you are at X=100 Y=100 and you move to X=100 Y=100 you will end up with no interpolation at all, because the system does not see a difference.
PTP-Movements (G100/G101):
In this operation Mode we interpolate in the Joint Axis Coordinates. No inverse Transformation is called while movement becuase each calculated point is already in Joint coordinates.
G101 Q1=10 Q2=10
G101 X=100 Y=100 → Inverse Transformation is called once to translate the target coordinates to the Joint version.
If your TCP stays in the position if both axes are just rotating in oposite direction with same speed, you can just call G101 with the traget Joint Coordinates.
But if there is a non linear transformation in this compensation we need to find a different idea.
The question in generall would mean that for the Targeted Position your kinematik is in a sigular position, which has multiple solutions for the same TCP. The PathPanner has to call the Transformation multiple times , with same TCP input but should get different results. That is an operation i think the system is not made for i think. Normaly you want to get through a singular postion with the one solution selected which is next to the previous solution to have minimal axis movement.
If we want to change the mode of a Kinematic at B&R we go with PTP-Movements and allow the TCP to move, while we reconfigure an Kinematic.
Example for a SCARA you have first right handed and want to go to left handed. This is a non redundant Kinematik like all our build in kinematiks. It is not possible to reconfigure from one mode to the other without moving the tcp.
There have been some now functions added which increases the usable interface from CNC-Programm to Transformation. I did not jet have time to test them or understand all possible use cases of them.
MODE: Set robot mode
REF_POS: Set reference joint position
UPDATE_CUSMECH_DATA
I hope this information helped to understand the interpolation modes of the PathPlanner. I am currently very busy with other tasks. I will check for your update …
Greetings
Michael