Problems Using Old Project

  • Hi everyone. I'm very new to the KUKA world, so sorry if the following are some trivial questions but I can't solve this problem even after reading a lot of KUKA documentation.
    I need to import a real cell in a virtual environment. To do so I need to take an existing robot solution developed on a controller with firmware 8.5.8 and make it compatible with Officelite 8.6.2 (which is our version of Officelite).
    The following option packages where part of the original project:


    Of these Option Packages only the LoadDataDetermination has copatibility with KSS 8.6.2, so I kept that one.

    The first thing I did was exporting the partial solution of the original project with all the hardware and importing it on the controller running 8.6.2 firmware. The configuration appears to me to be identical.
    However, when I generate the code, I obtain a KRC/STEU/Mada/$custom.dat file with errors within it:

    Even though I copied 2 initialization for each array, all the 32 elements of each array are initialized as described above. This code generates errors since the types
    $OPC_PAR_----_T aren't defined.

    I checked in the original project and these types (or structure, more precisely) are defined in a KRC:\$OPERATE.dat, which is a write-only file which doesn't appear in the file tree.
    Since I couldn't include almost any of the optionals which where in the original project, I thought that was the reason those types are missing in my solution. Also, I did not configure the KUKA Safe part, while this was done in the original project.
    I could try to eliminate those lines of code and get rid of the errors, but I've been trying to modify system .dat files for a few days now and figured out it only brings problem if you don't know what you are doing.
    I would like to add that in the KRC/STEU/Mada folder there's a $machine.dat file which I have no clue from where it comes from.

    My final attempt was:
    Creation of a copy of the 8.6.2 project with imported hardware configuration, deletion of the files .dat which would be generated with code + the mysterious $machine.dat file in the STEU/Mada folder, generation of code. Unfortunately I tried to upload this on Officelite but everytime I received different error message and, in the end, Officelite collapsed.

    Finally, what do you suggest I should do now? What would be your way of updating an old project to make it compatible with a newer version of the KSS?
    Also, after each of my attempts, Officelite always gave me some warnings, but I'd tackle that problem once I don't have any coding error in my files...

    Edited once, last by LowerCaseDream: Fixed attachment of the picture of options ().

  • - the picture of your options isn't available. Attach it correct.

    - only suggestion: it seems that you are missing the opc option on your office lite.

    You can try to install it from the older robot, if you have the option files from that robot.

    - if the project really uses the opc option, you need to install the option.

    - one possibility would be to copy the program files manually into the new project, compare the system files of old and new project and copy relevant parts line by line. Export/import things like I/o and safety coniguration. This is the way I have done it most time, and it always worked for me.

  • - the picture of your options isn't available. Attach it correct.

    - only suggestion: it seems that you are missing the opc option on your office lite.

    You can try to install it from the older robot, if you have the option files from that robot.

    - if the project really uses the opc option, you need to install the option.

    - one possibility would be to copy the program files manually into the new project, compare the system files of old and new project and copy relevant parts line by line. Export/import things like I/o and safety coniguration. This is the way I have done it most time, and it always worked for me.

    Hi hermann , thanks for answering.
    - I reuploaded the picture, hopefully is visible now.
    - I just now did the following:
    - Create new project, set firmware (8.6.2) and outputs (8192).
    - Add robot (KR 180 R3500 ultra K) and its configuration.
    - Configure EtherCAT communication.
    - I generated the code.
    As soon as I generated the code I checked in the KRC:\Steu\Mada\$custom.dat file and saw that the OPC_PAR_---_T arrays were created.

    I then restarted the project from zero, added only the robot with its configuration (Power Pack, Servo Pack...) and generated the code. Again, in the KRC:\Steu\Mada\$custom.dat file the arrays OPC_PAR_---_T were created.

    Third attempt: project from zero, set firmware (8.6.2) and outputs (4096), added the robot (KR 180 R3500 ultra K) and choosed the configuration with the fewest changes, generated the code. Sure enough, the $custom.dat file showed the same problematic arrays.

    At this point it seems clear to me that those types definition is not related to Officelite, but to the robot itself. But now I wonder: if this depends on the robot, why do I have those errors even when importing the hardware configuration of the old project (which has those OPC_PAR types defined in its KRC:\$OPERATE.dat)? How is this KRC:\$OPERATE.dat file generated?

    I hope what I'm writing it's clear enough by the way, I'm trying to explain at the best of my capabilities.


  • Update: I just created a project with the robot which is present in Officelite's WorkingProject and used the proposal configuration with fewest changes. When I generated the code the OPC arrays were still present... At this point it seems that generating the code as soon as you make a configuration is just something you shouldn't do?

  • Update 2:
    I created a new project, imported hardware config from old project, imported Config and KRC of the old project, hoping this would copy also the invisible $OPERATE.dat file. Unfortunately, even this method brought no luck.
    I ran out of ideas for now, if anyone has other possible solutions I'm open to suggestions.
    :help:

  • to simulate KSS 8.5 project, you need OL 8.5.

    to simulate KSS 8.6 project, you need OL 8.6.


    one cannot simply massage 8.5 project and relevant options into working on OL 8.6 (or the other way around). the only option (other than obtaining correct version of OL or OPS or KRC) is to create new project from scratch for target KSS, replace options with compatible ones, convert any user files (KRL programs, UserTech etc.) and import them into new project. And i should know because I have done the exact same thing on several occasions.


    Few tips:


    1. Note that WoV projects created from scratch are not complete. One need to add some files manually from correct KSS versions.


    2. I never dump any KSS files (things that come with controller) from one KSS version to another. They must be always from exact same version. Even slight version differences can lead to problems as seen on KSS8.5.6 /8.5.8 because KUKA chose to manipulate files and move things around.


    3. Getting files to match (even on a correct KSS) may still mean that more than one step is needed. An example of this is when option packages are involved. During installation of an option, files on controller are modified. So you do not want to just dump all changes into newly created WoV project. First you need to get clean project working. Then get it working with all options. Take that working project from controller and then you have something to use as a starting point ... Now you can start adding user files (KRL programs UserTech files etc.).


    4. In general - fewer options means faster results so i tend to strip out unnecessary ones.

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Hi panic mode, thanks for stepping in.
    About point 1: that explains a lot of troubles that also newly created projects brought me, thanks for writing this info.
    About keeping all KSS files: the company I'm doing my thesis at is starting to program their robot just now. Up to this point they always hired system integrators. This time, when hiring the system integrator, they specified that they wanted the source files, so the workvisual project is the only thing that I have available at the moment, since the robot is no longer here at the factory. However, that's definitely a valid tip, I'll remember that.

    However, after tweaking for a while with the project, I managed to get to this point:

    Apparently the external axis is at 0.00mm. The motion enable signal is supposed to come from external plc via etherCAT.


    Considering I'm working on officelite only and I didn't actually connect any robot to etherCAT in the simulation, could these errors only depend on that? Or there probably still are errors within the project files?

  • OL does not support fieldbus networks. Delete KEB (X44 bus) and deploy again.

    I did that and now have only these errors:



    The external axis is at 0.00mm, I have no idea why.
    The second error is even stranger to me. It seems that it depends on $MOVE_ENABLE being FALSE (which it is). However, I set

    $CHCK_MOVENA to FALSE in the option.dat file (it was TRUE before), so the controller shouldn't block me from enabling the drives because of that signal...

  • On boot, all axes in OL are at zero. You need to move them to suitable position or open up soft limits.



    The second error is even stranger to me. It seems that it depends on $MOVE_ENABLE being FALSE (which it is). However, I set

    $CHCK_MOVENA to FALSE in the option.dat file (it was TRUE before), so the controller shouldn't block me from enabling the drives because of that signal...

    That is not how it works. $CHCK_MOVENA tell to KSS if it is permissible to have $MOVE_ENABLE mapped to 1025 (always TRUE) when controller is in EXT mode. That does not change value of $MOVE_ENABLE which still need to be TRUE if you want to move robot.


    So set $MOVE_ENABLE to 1025.

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Thank you so much, panic mode. Everything is green and ready to go.
    At least until I try to set up and use Y200, that is :upside_down_face:

Advertising from our partners