Posts by benjamin21

    hey ,

    I'm currently checking the condition where KRC4 ask for a breaktest or a masteringtest_req (reference test).

    I did find every possible information about the brake test (46h , then notification message, 2h, ack messsage ...)

    but couldn't find what criteria needed by the robot to ask for a reference test to be made).

    Any ideas? thanks in advance

    Thank you hermann for your response.

    I'm ready to find by myself if office Lite is useful or not :)

    But besides manuals that specify how to install OfficeLite into virtual machine (which I have successfully installed but was a pain in the ***) , there is absolutely no information of how to use office lite.

    If anyone has any documentation, manuals of it works please let me know.

    I've already search in kuka website. Can't find anything at all...

    hey everyone and best wishes for this new years. Hope it will better than 2020 ;).

    what are the limitations you have read?

    As panic mode mentioned in post #2, it is a very useful tool (even without SimPro)

    OL acts like a real robot system (some hardware is missing - like KLI or not supported, KRL programming is fully supported - Windows and Base system side)

    I might write something wrong indeed, this is not from what I have read but from what I heard that the fonctionnality is limited.

    Probably because most of the roboticians I've talk to never use online programming...

    Anyway I'm still missing OL manuals. I do believe this software can be useful but I only find manual on how to install it but not how to use it :) If anyone has any information , It would be greatful.

    i use OL without SimPro. love it. i can easily do 99% of work and send the project to technician that will be on site. he checks and teaches tools/bases if needed, touches up handful of points and most of the time that's pretty much it.

    My question is quite simple : what you can do with OL that you can't do with WV?

    and my second question is :

    All of our implantation required API communication with the robot,

    Can you simulate the communication inside OL?

    If you can't then I don't see the point of using OL instead of WV.

    I can create a WorkVisual programs with communication already set up (profinet for example) and send it to a technician that checks and teaches tools/bases if needed, touches up points and so on like you said.

    Thank you for your responses


    I did finish my first kuka project which was about packing and palletising cardboard and overall I'm quite surprised of how kuka works ( quite open and mainly DIY). I did not expect kuka to work like this to be honest but like every robotics brand, it has pros and cons. I still considered myself as new in kuka.

    I did acquired kukaSimpro which is awesome and surprisingly not laggy at all compare to other simulation software. Yeah my PC is not made for those simulation:). I was able to make the simulation of the futur project.

    With kukaSimpro , we also get kuka officeLite and I have few questions about it, and as you might expected, I wanna transfer that simulation into OL.

    Despite my research I do not find any tutorial/manual of how to link officeLite to SimPro/WorkVisual.

    All officeLite manuals are about how to install officeLite (which was useful considering you need to use VirtualMachine).

    could I have any information about the link between OL and SP/WoV.

    and What about kuka sim Pro, what kind of information can I extract from that simulation (config. dat , program ...)

    one last word : my boss is convinced that we can make a tremendous work before we acquire the robot with officeLite. Basically programming everything is advanced and barely check some moves where the robot is installed.

    But from what I have read, the fonctionnality of OfficeLite is pretty limited...

    thank for your responds


    I've finally finished my kuka integration and everything works super fine.

    My robot is a 150-3100 with KSS 8.6 and I want to measure the energy consumption during a full cycle with speed set as maximum.

    Inside the main screen -->Display-->Energy consumption It's possible to measure the energy during a period of time. But the window is cutting the freaking Unit value :D, even the manual does not reveal the unit value. Is it KW? I have measure 0.02150 duing a 20s cycle, there is no way the unit is KWatts.

    Someone has any ideas ? thanks.

    So you just changed motion from PTP to LIN.... so code you posted is still not the code you had there when you got the error message. And you wonder why it is hard to help you? Here is an idea - when you get the problem and error message, and want help with it.... post THAT code.

    Hi panic,

    Did I ever said why it is hard to get some help? not sure about that. I think people is answering very quickly despite my poor english and do the their best in short amount of time. So I think I get help from this forum way better than I expected and I thank everyone for that but don't tell thing I didn't say or thought.

    Anyway, I just change that PTP mouvement into a linear one. So here is the code : you change LIN to PTP and you get the error. No need to re-post it.

    As suggested, this is related to Status and Turn (more specifically to Turn). CP motions do use Status and Turn but... they ignore programmed values of S &T, instead - they calculate their own. PTP motion does not do that so when you get to axis reversal for example, PTP motion would try to go all around to reach commanded position (instead of just few degrees using shortest path).

    That is very helpful , I'm looking toward system variable to change geometrical operation. A6 is the problem so I might try to create another point in order to force Axis 6 in the direction I want.


    well, you are not posting your code... but my spidey senses are telling me that

    you are asking robot to use Status and Turn values... even when they are no longer valid.

    in this case it is a turn value for that specific axis need to be changed

    What code do you need? there is nothing more than the code I posted earlier except real coordinate of point 1 . Not sure this gonna help :(

    ;FOLD PTP Pinter1 CONT Vel=50 % PDAT2 Tool[3]:STYLO Base[0];%{PE}




    FDAT_ACT = FPinter1

    BAS(#PTP_PARAMS, 50.0)


    PTP XPinter1 C_Dis


    ;DEC_X=300 DEC_Y=400 DEC_Z=400

    XApproPosePal1.X = XPoriginePal1.X+(DEC_X*XPAL_1)

    XApproPosePal1.Y = XPoriginePal1.Y+(DEC_Y*YPAL_1)

    XApproPosePal1.Z = XPoriginePal1.Z+(DEC_Z*ZPAL_1)

    ;FOLD LIN ApproPosePal1 Vel=1 m/s CPDAT5 Tool[3]:STYLO Base[1]:Palette ;%{PE}



    FDAT_ACT = FApproPosePal1

    BAS(#CP_PARAMS, 1.0)


    LIN XApproPosePal1


    Read through expert programing manual, familiarize yourself with geometric operator (it's just 4x4 matrix multiplication if you are already familiar with those), status and turn. Your code will be less messy and easier to read/modify.

    I abhor needless effort and first reading documentation for any complex system is usually a path of least work.

    You are correct sir. It's tough to find the correct manual though. I feel like sinking into an ocean of information

    That works indeed, I need to find the solution with PTP mouvement though , just in case it might happen again :).

    Great I did some python during lockdown to break boredom. Might be useful

    Thank you everyone for your quick response and reactivity.

    As I said before the formula where you specify the right coordinate (X,Y or Z) : MYFRAME[1]=FRAME_DATA[1].X+400*nbLooped works as expected.

    I did change things a bit : they were no use of changing Frame value but instead I'm using a ReferencePoint basically located at coordinate (X0.Y0,Z0) of my palette and I change other points based of this referencePoint.

    XPoint1.X = XReferencePoint.X + ( DEC_X * INT_nb_looped )

    XPoint1.Y = XReferencePoint.Y + ( DEC_Y * INT_nb_looped )

    XPoint1.Z = XReferencePoint.Z + ( DEC_Z * INT_nb_looped )

    When I_nb_looped get higher and higher value, Xpoint 1 is moving through X axis accordingly. DEC_Y and Z is set to 0.

    Surprisingly after INT_nb_looped reached a certain point, I got an error value 1447.

    I try to find the solution in the forum , the robot cannot reach point cause Software limit is out of range.

    So I need to create intermediaire point or change the destination point, but when I use the JOG motion the robot is very capable of moving to the next point and my axis values are far away from limit.

    any ideas?

    I hope this in understandable :) Thank

    Try this


    yes mental already give me the solution, but thank for your answer.

    What point? The one where robot TCP is currently at in current base? That's read only system variable $pos_act. If you are thinking about some other point, then describe it and/or the scenario in more detail.

    Indeed the point where TCP is in the current base . I want to extract X,Y,Z coordinate and store it into REAL variable

    Hey Mentat,

    You guess it right,

    I could have more clear about my previous post.

    I thought the formula needs to be inside the coordinate of the frame data

    FRAME_DATA[1]={X -1300+400*nbLooped ,Y 1787,Z 143,A 0.0,B 0.0,C 0.0}

    That's why I got an error when compiling.

    Is it possible to read X value of the point? The value might change over time. I do not see any instruction inside manuals in order to read cartesian value of point.


    Hey everyone,

    I'm new to KRL and I need some help into my palletizing project.

    Basically I want to move the same point on a FRAME and changed the frame. X every time my program is looped.


    DECL Point 1 ={X 2123.80151,Y -11.0088034,Z 1258.20068,A 175.519653,B 89.8564301,C 23.5823574,S 2,T 35,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}

    FRAME_DATA[1]={X -1329.70984,Y 1787.50391,Z 143.175064,A 0.0,B 0.0,C 0.0}

    every time program is loop add 400 to X coord of base :

    FRAME_DATA[1]={X -1329.70984 +(400 * nb looped) ,Y 1787.50391,Z 143.175064,A 0.0,B 0.0,C 0.0}

    I thought I can use a variable inside the frame coordinate but that does not work.

    any help on frame transformation would be appreciate

    thanks in advance