Robot Program Post Processor (downloader)

Got it To work now thanks for your response!

Sorry but we canā€™t help you with writing a post-processor. If you know python you could take some existing post-processor and try to convert source code to produce a job file for your brand.

-k

Hi,

The Igus post processor is added to the original package.

-Shayan

1 Like

Hello,

Kassow post processor has been added.

Lefa

1 Like

Iā€™m having difficulty with the post processer converting multiple groups inside my Fanuc LS file. I have a dual arm robot configuration with a single positioner. I have a one-to-many robot interface between my workpiece positioner and one-to-one interface between both robots. Is there a robot group setting or configuration within visual components that Iā€™m missing. Iā€™m only able to get single arm Fanuc LS files exported with the post processor with my positioner. I need a dual arm (group 1 and group 2) with my positioner as group 3 in the group mask of my LS file. Has anyone experienced this?

PP doesnā€™t support dual arm configuration unfortunately. Also VC itself cannot quite support applications where multiple robots need to synchronize their motions. VC only has sync statement to sync program execution at certain positions but motions themselves cannot be synchronized.

-k

Hello!

First of all, thank you for providing this add-on.

Iā€™ve found an issue with the Comau post-processor (version: 2023-01_11), tested on NS16-1.65/HAND where the tool definition with Euler ZYZ will have a negative second angle. The robot controller (C5g) does not like this at all and will throw error (37075: 2nd Euler angle less than zero) . Furthermore it wont allow you to move or jog the robot once the $TOOL variable is set.

I guess this is caused by the ambiguity of Euler angles since the rotation output from the post-processor A:180.000 E:-120.000 R: 0.000 is the same as A:0 E:120.000 R:180.000000.

Iā€™ve found no repository where I could create an issue, so I guess this post will have to do.

Best regards

Hi,

Thanks for reporting this. Do you know if it would accept A:180.000 E:240.000 R: 0.000 instead of A:180.000 E:-120.000 R: 0.000? Playing with full rotations would be easy fix but changing the format like you said is not as easy as the angle values are gotten from vcMatrix class methods and itā€™s not trivial to change the order of those rotations.

-k

Hello! Thank you for the quick response.

A:180.000 E:240.000 R: 0.000 worked just fine.

Best regards

1 Like

I updated the PP add-on to original post. Could you test if it works better now? I changed it so that all the matrices in Comau files are written with all-positive angles.

-k

1 Like

Generated program with the new update works just fine running on the robot!
Thank you for the blazingly quick support. :slight_smile:

Best regards

1 Like

Hi, thank you for the Fanuc post-processor. Reviewing the text outputs with a Fanuc programmer, everything looks OK. When importing into RoboGuide, it says something like canā€™t load / failed to load main.ls. I donā€™t have RoboGuide to test myself. Are there any common gotchas?

Maybe the most common problem is using bases or tools outside the range that Fanuc supports. This is whatā€™s mentioned about Fanuc on PPā€™s readme:

 FANUC - LS
  
  -Produces one .ls file per routine.
  
  -Produces SET_FRAMES.ls that synchronizes tool and base frames. This 
   subroutine is called from the beginning of main routine.
  
  -Use only tools 1-10 and bases NULL and 1-9.
  
  -Relative DefineBase/Tool need matrix multiplication function which you
   can find in "Vision support tools" option package. Also set system
   variable $KAREL_ENB to 1.

-k

Thanks keke. Getting somewhere now. My first issue was having NULL tool in my perch position. That posted to Tool 0 (out of range). I also had a Null base which posted to 0. That could have been another problem. Selecting a tool & frame in VC fixed that issue.

I have a switch statement in a subprogram that also caused a problem. It produced ā€œSELECT R[1] == 100500ā€. I hand edited to single = and it loaded in Roboguide with no error. Is there a way to recompile the Fanuc_ls.py if I edit it to remove an ā€œ=ā€ from this function?

Yes you can modify the source file, I think the line youā€™re looking for is 735. PP has only hardcoded = character so maybe the second comes from the case condition expression. I think you donā€™t need to write the = on case condition expression itself so maybe you could also try removing it from there.

-k

And if you modify the add-on source just launch the PP again which should recompile the source automatically and thereā€™s no need to restart VC.

-k

Hello keke
Your PP is great!
Iā€™m currently working on an Addon Manager for Visual Components and would like to add the pre- and post-processor to the list.
The addons will then show up to everyone who installed the addon manager.
Users will also get notified about updates and they can install them with a single click.
Am I allowed to add them? :slight_smile:
BR Johnny

Yeah sure, go ahead.

-k

1 Like

Great, added them to the list.
Before I ask in every thread, I will go ahead and add some more addons made by you guys.
Just let me know if anything speaks against this.

Hi @keke,
Great tool.
There is one question to the Yaskawa Export:
Would it make sense to adapt it that way, that the user can export the tool point also without having teached random positions in usage of each tool point?


use case: in the robot are already all tool points defined and you want to export them.
When the export ist done without having teached any position the file TOOL.CND looks like the example at the left side.
Thanks in advance
Best regards