Author Topic: IIWA - Kuka PRC CIR Movement Point Order  (Read 206 times)

jason_r_Crow

  • Robots in Architecture Members
  • Forum User
  • *
  • Posts: 5
    • View Profile
IIWA - Kuka PRC CIR Movement Point Order
« on: March 15, 2021, 05:03:31 AM »
I am seeing a disconnect between the simulation and the movement of the IIWA movement when attempting to draw multiple circles.

When creating a CIR movement on the IIWA, my recollection of the proper point order to pick is start (point 1), end (point 2), aux point (aux point).

In Kuka PRC, if I input that point order, the simulation does not show the correct movement, but if I input the points as start (point 1), aux (aux point), end (point 2), the simulation looks correct.

On the robot, the opposite happens. If I input the points as start (point 1), aux (aux point), end (point 2), the robot back tracks when repeating the arc movement to form circles.  If I input the points in the order start (point 1), end (point 2), aux point (aux point), the robot moves correctly.

Johannes @ Robots in Architecture

  • Lead Developer
  • Administrator
  • Forum User
  • *****
  • Posts: 1118
    • View Profile
    • Robots in Architecture
Re: IIWA - Kuka PRC CIR Movement Point Order
« Reply #1 on: March 15, 2021, 07:30:10 AM »
Hello Jason,

That's pretty strange, especially considering that we definitely did use CIR movements in a few of our projects - but that was also a few software versions ago, so who knows what changed. But the behavior in KUKA|prc should be to provide three planes, out of which the start, aux, and end planes are generated. I don't have an iiwa anymore so I cannot test that myself, but if you want to switch the frames you need to look at the following sections of the PRC_CORE.java file:

Code: [Select]
AbstractFrame frm = cmd.cirMove.frame;
AbstractFrame auxfrm = cmd.cirMove.auxframe;
and change it to...
Code: [Select]
AbstractFrame frm = cmd.cirMove.auxframe;
AbstractFrame auxfrm = cmd.cirMove.frame;
There should be two occurrences of that line.

Best,
Johannes