Karel Code Compilation (ktrans)

  • I am working with a Fanuc R-2000iA robot with an R-J3iB controller running software version 6.3140. Very old software but it has been running reliably for many years for a critical application that cannot afford any downtime so the approach has always been, if it ain't broke.... We have made minor changes to the TP files and positioning but we are now needing to make a change to the core operations.


    The controller runs a TCP Server Socket Messaging program at start up and I send it simple string commands from a PC which are then pushed out to the various TP files for robot operation. We have all code and all TP files but the compiled TCPServ program is currently a black box. I have all the string commands and I know how to populate the correct registers to get the TP files to function properly but we are in need of re-writing or creating a new Socket Messaging Server program.


    I do not believe this to be too difficult from a coding standpoint as I can start from Fanuc Socket Messaging Server example program and then insert the necessary code to read the incoming string form the PC and then update registers and the like.


    The problem:


    RoboGuide v8 or v9 will not allow me to load Robot Image 6.3140 (claims required Windows Vista or older) and then I went down a very long and dark rabbit hole of creating Virtual Machines of four different Windows OS versions and trying to install RoboGuide there but the new versions of RoboGuide won't install on old versions of windows. Erf. Fanuc tech support claims to not be able to provide RoboGuide versions older than v8 and I believe I am now stuck in a situation where I need an old version of a Robot Image but there is not a combination of version of RoboGuide and Windows that supports this.


    My client is very reluctant (as am I) to update the robot controller as 0.0% downtime is a necessity. Changing out server files is low risk as it is literally just changing out the old startup program for a new one and reverting back is easily done.


    I was able to create a sample Karel file from the Socket Messaging server example and I am able to get this to compile successfully using command line ktrans (from /ProgramFiles/Fanuc/WinOLPC/bin) but I am concerned with the versioning and potential incompatibilties.


    Sample code found here in section 12.6.3 (Page 16)

    Removed link to fanuc copyrighted material


    Can anyone shed any light on difficulty I may have with using a PC file compiled using ktrans (RoboGuide v9) and pushing this PC file onto my controller that is running controller software from 2 decades ago? Or should I be okay because I am only to use this Karel code to read an incoming string, parse the string to registers, populate 3 registers (at which point a TP program running in parallel looks for register values to execute the appropriate TP programs to perform moves)? Nothing more complicated than that and maybe checking status.


    Any insight would be greatly appreciated....Thanks in advance....

  • Place your Ad here!
  • Lemster68

    Approved the thread.
  • Hi TomTom..... Shoot, I was afraid of this. Is this true of all Karel programs even if there are no moves or workspace type of processing being done? I was hoping that since all I need is a TCP Socket Messaging string parser that the Karel translation to PC file would be robot/controller/OS agnostic.

  • Yes, all karel progs are specific to a robot version.


    I am also using KTrans to compile my .kl files. I've got an robot.ini file which controls the version. I think I generated that file with "setrobot.exe" which if I remember correctly I got from the same WinOLPC folder you've already located.


    Below is what I've got in my robot.ini file. "Compiler8dot20" is just the name of a RoboGuide workcell. I am not sure what the individual values do though.


    [WinOLPC_Util]
    Robot=\C\Users\XXXX\Documents\My Workcells\Compiler8dot20\Robot_1
    Version=V8.20-1
    Path=C:\Program Files (x86)\FANUC\WinOLPC\Versions\V820-1\bin
    Support=C:\Users\XXXX\Documents\My Workcells\Compiler8dot20\Robot_1\support
    Output=C:\Users\XXXX\Documents\My Workcells\Compiler8dot20\Robot_1\output

  • PnsStarter, that is a great suggestion, thanks! I tried this and it appears to install FRVRC631 (before it would give me an error about OS compatibility). Unfortunately when I try to create a new work cell from my backup, it tells me that 6.31 is still not installed. I get the message: "The file backup requires version v6.31 which is not installed. Run the FRVRC V6.31 setup then try the operation again."


    Have you had success with installing an older version (like v6.31) to RoboGuide 9 with compatibility mode?


    Thanks kindly...

  • Hi rf103....I do not have 6.31 in my WinOLPC folder...I presume this is because I am unable to install it. I tried to run the installer for 6.31 in compatibility mode as described above by PnsStarter and while it runs, it doesn't seem to properly install.

  • I'm running v6.31 in roboguide 8 on windows 10. I've never been able to translate karel programs in roboguide (the option is grayed out), but I have a copy of WINOLPC+ that handles compiling just fine (in xp compatability mode)

  • Hi TitusLepic....did you not get any error messages trying to install FRVRC631? I am going to uninstall everything now and try your same configuration. I tried many VMs with various combinations but I don't believe I did a Windows 10 RoboGuide 8 combination. I think all my Windows 10 attempts were with RoboGuide 9. Thank you for this info, I will report back.

  • Many thanks to everyone above but I was able to install RoboGuide 8 with 6.31 and load my AoA image...thanks, thanks, thanks! It seems like I foolishly did not try this combination...I had gone straight to RoboGuide 9 on Windows 10 and it did not like the 6.31 Controller version but RoboGuide 8 does.... Go figure. Onwards and upwards

  • As mentioned, I was able to load my AoA image into RoboGuide, create a KL file but in my text editor, the Build button is grayed out. I am currently on a temporary development machine and in a trial version, might that be why?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account
Sign up for a new account in our community. It's easy!
Register a new account
Sign in
Already have an account? Sign in here.
Sign in Now

Advertising from our partners