This line is different compared to what's reported by the error.
Can you double check you are using the latest version of the post processor we provided you? We are also planning to improve the way we manage coordinate systems and tools.
Yes, I confirm I tried with your station and I was able to generate the program attached.
However, your program/robot is using a post processor called IGUS_v2. You should select the IGUS post processor or make sure you override the correct file.
Hello Albert and Phillip, Problem 1: resolved
I resolved the issue issue in IGUS.py.
The error on line 241 was present because ACCEL_PERCENT is not defined anywhere in the code. I just defined the ACCEL_PERCENT = 35. and the code runs now.
Problem 2:
After generating the .xml the program gives error in IGUS IRc software. The xml (P63_cubes_test) that you(Albert) provided also results in error in Igus IRc software.
In case of subprogram (it works for Test_1 but not for Test_8_150mm_v3). I think the reason is because in Test_8_150mm_v3 the subprogram is using Python script.
In case of Test_1, I can now see a different xml for subprograms but the IGUS IRc gives error when running the main program. Its because it not able to recognize the subprograms. And if I run individual subprogram, this results in limitation of axis movement error in Igus IRc.
Can you please test my all the programs in IRc? This will also give you a better idea on what I am complaining about. Because I am getting the same error.
Problem 3: Related to RoboDK software:
While running Test_8_150mm_v7_same_base.rdk, My robot does not come to home position but rather sets itself at an offset. This results in error as robot becomes out of position. Is there something I am doing wrong here in roboDK to assign the position?
Hello Albert,
Update: Without using a gripper in Igus IRc, I am now able to run the subprogram of Test_1 file. So I can confirm that the subprogram works if it is generated separately. Same goes with the xml that you gave me yesterday. It also works without using gripper in IgusIRc.
But using python script, the subprogram is created in RoboDK interface but not as external xml file and hence it doesn't work. Also for Test_8_150mm_v3, if I delete all the sub program command and convert the station for only single frame i.e remove frame 3 and only use frame 1 then pick and place works. But using Frame 1 and Frame 3 it give error.
I've attached two versions of the post, the new version that generates the tool file and frames files, and a simple version that maintains the previous behavior.
The tool file goes in C:\iRC-igusRobotControl-V14\Data\Tools while the frames file userFrames.xml, should replace the one in C:\iRC-igusRobotControl-V14\Data\userFrames.xml
If you wish to create programs in a single file and the frame and tool data auto calculated out, just use the IGUS_Simple post processor.
As for the python post processing issue, I could successfully replicate it, we will investigate that issue further. As an interim solution, you could modify your python script to generate a regular RoboDK program that can then be run with the IGUS post processor without any issues.
Code:
# Controlling the robot directly
robot.setPoseTool(tool)
# Adding an instruction to a robodk program being generated
prog.setPoseTool(tool)
Hello Phillip,
Thank you for the new updates. I have tired this both program. The Userframe is created but the I still have the same error when using the multi frame.
What i have figured out for now is to use the previous version of yours, convert the robodk station with only one reference (eg. Frame 1). And then manually generate the subprogram and insert them in Igus software. This works that way.
The new versions should support multiple frames, I've attached one my test stations so you can verify yourself, for the regular post processor, it now generates a userFrames.xml file that needs to be copied into the robots files before the IGUS simulator is started. I can't comment on the behavior of overwriting this file on the real robot but I would appreciate feedback. If for some reason you can't or it's not desirable to overwrite the userFrames.xml file, I also included the Simple post processor.
The simple IGUS post processor calculates out all the frames and tools and simply makes everything relative to the base of the robot and the flange, this is so that you don't need to manually copy the frames file and make sure that the tool definition on the robot matches the one in RoboDK.