RoboDK Forum
KUKA LWR IV + KRC2 Post Processor- Printable Version

+- RoboDK Forum (//m.sinclairbody.com/forum)
+-- Forum: RoboDK (EN) (//m.sinclairbody.com/forum/Forum-RoboDK-EN)
+ - - -论坛:属l questions about RoboDK (//m.sinclairbody.com/forum/Forum-General-questions-about-RoboDK)
+--- Thread: KUKA LWR IV + KRC2 Post Processor (/Thread-KUKA-LWR-IV-KRC2-Post-Processor)



KUKA LWR IV + KRC2 Post Processor-konstantinos.agg-03-19-2020

Hello, is there a way to change the KUKA KRC2 post processor, in order to declare the joint list as seen in the first picture (with E1 being the third joint)?

For some reason the KUKA LWR IV+ i use has declared the third joint as external and expects the joints to be send in this order:

robot.MoveJ([A1, A2, A3, A4, A5, A6, E1]) with E1 being the joint value for the 3rd Joint (J3) as seen in the first picture.

However robodk sends the joint values as:

robot.MoveJ([A1, A2, A3, A4, A5, A6, E1]) with E1 being the joint value of the 7th Joint (J7) as seen in the first picture.

So far i have manually swapped the order of the joints (as seen in the code below) before sending them to KUKA, to match the simulation with the robot's real movement.

Code:

fromrobolinkimport*# RoboDK API
fromrobodkimport*# Robot toolbox
RDK = Robolink()

robot = RDK.Item("KUKA")

pose = RDK.Item("Bottom Left")

#移动机器人仿真
RDK.setRunMode(1)
robot.MoveJ(pose)

# Move real robot
"""

Change the position of the Joints because KUKA LWR IV+ has declared the third joint as an External Joint.

KUKA LWR IV+ Joints = [A1, A2, E1, A3, A4, A5, A6] and RoboDK sends the joints as [A1, A2, A3, A4, A5, A6, E1]
"""
RDK.setRunMode(6)
tar = tr(pose.Joints())
robot.MoveJ([tar[0,0], tar[0,1], tar[0,3], tar[0,4], tar[0,5], tar[0,6], tar[0,2]])


However, due to different joint limits if i swap them and the 3rd Joint has a value bigger than 7th Joint then the program exits. So I am searching for a way to manipulate the post processor in order to send them correctly to avoid joint limitations.


RE: KUKA LWR IV + KRC2 Post Processor-Jeremy-03-19-2020

Hi there,

This section of the online documentation showed you how to modify the post-processor.
//m.sinclairbody.com/doc/en/Post-Processors.html#EditPost

Have a great day.
Jeremy


RE: KUKA LWR IV + KRC2 Post Processor-konstantinos.agg-03-19-2020

Thanks for the helpful documentation.

To clarify, if I modify a Post Processor it will only affect the generated program and not the output of the Python RoboDK API function robot.MoveJ()?
If I want to modify this function i will have to change it from the robolink.py file?


RE: KUKA LWR IV + KRC2 Post Processor-Jeremy-03-19-2020

Hi Konstantinos,

You are right.
I recommend you to create a copy of the post-processor before modifying it.
This way you can always roll back to the original version.

Jeremy


RE: KUKA LWR IV + KRC2 Post Processor-konstantinos.agg-03-19-2020

(03-19-2020, 08:19 PM)Jeremy Wrote:Hi Konstantinos,

You are right.
I recommend you to create a copy of the post-processor before modifying it.
This way you can always roll back to the original version.

Jeremy

Thank you Jeremy, that was helpful.

Have a nice day. :)

Konstantinos