KRC1 movements

  • Dear All,


    looking for some advises/comments clearing my problem. I'm going" :censored:" trying to force my KRC1 to keep tool in parallel/perpendicular position.


    I bought it several months ago with illegible model number, but after some research i determine, that it should be KR200/2 TJ(because of ZH 200/2 with mounting of A3 bearing plate divided on 3-Tejin). First of all, i have copied fresh MADA from D drive, done mastering and ABC World measurement for the Tool. Robot was doing strange twisting of A,B,C axes eg. when i was moving only along X axis in manual world mode it was leaning also B axis, along Y using A axis.. The same with PTP and LIN motions, it was moving A,B,C axes to reach desired position, instead of keeping the flange in constant orientation.


    I spent a lot of time reading manuals and topics but do not have any ideas. Was trying MADA's for all KR150 and 200 taken from D:/.


    Please :help: me to understand and fix it.

  • AD
  • Hi,


    this one have no extension, there is exactly 1000mm between A3 and A5 axis. But now I realized, that I don't know what is physical, easily recognizable difference between 125/150 and 200 option?? Is it possible to recognize them?


    Also i didn't take under consideration that it could be KR125, because in all robcor.dat files from all MADA's (for every type of KR125 as well as KR150 from D:\) have:


    $MODEL_NAME[]="#KR125_1 FLOOR ZHO1",


    but my one is with ZH 200-2 wrist. Only for some KR200 there is: $MODEL_NAME[]="#KR200_2_TJ FLOOR ZH02". So the next question is, what is the difference between ZH01 and ZH02 wrist :wallbash:, and if I' am right if ZH02=ZH 200-2 :stupid: ??.


    I'am asking, because i'am sure that type and producer of some "kinematics" influence on control system configuration(because of dimentions, gear ratios etc.).


    Also, only with MADA for KR200/2 TJ there is no "Wrong machine data for this robot type" alert. But to be sure, when I get home, i'm going to check what file is in RDW card.


    According to wrong marstering i agree, that it has influence on accuracy and behavior of the arm, but can a small inaccuracy during mastering causing so faulty behavior as twisting A5 axis by 50deg during X 500 movement(I'm nor sapient, I just don't know)?


    Regards

    Edited once, last by rybar ().

  • Ok, it works!!! Yesterday I have replaced KRC folder on D:/ with the new one taken from other disc, and robot works with data for KR200/2 TJ. I think my one were corrupted or just wrongly edited...thanks for help.


    Also I would like to ask, if there are any spacial rules during preparing src file with other software to be clearly understood by KUKA compilator?In the other words, I was trying to wrote a script generating simple programs like square moves in the loop. Now, when machine suppose to work fine I'm going back to work, but before i had some programming issues like:


    1. It didn't want to copy files into POWERON folder because of "File wrongly copied"(from other location on hard disk, and also I was trying to copy src file created by kuka but edited on other computer).
    2. When I write simple program by hand, robot don't understand some commands like LOOP etc., even if there are directly prescribed from some exampled programs found in programming manuals(with "illegal..." fault or something like that ). Also, in KRL assistant I can only chose PTP, LiN motion commands and some simple logical functions. Do I need any special upgrade to get robot understanding all commands?


    I have read several manuals, but nowhere found explanation for that.


    Regards

  • i write programs all the time and have zero issues. make sure to use plain text editor and not word processor (just saying) or special characters will cause a problem. when making structures like loops, branches etc, make sure that entry is correct (LOOP has matching ENDLOOP etc.). Syntax is explained in manuals.



    only some instructions are available as INLINE FORMS (ILF). most of them must be typed in. if you are entering code using teach pendant make sure to OPEN program (do not SELECT).



    if loading programs that are created externally, use HMI on teach pendant to paste them into KRC:\R1\PROGRAMS

    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

  • OrangeEdit is a free download from OrangeApps.de, and can help avoid KRL syntax errors. But it is not a full compilation environment, so the syntax checking is primitive.


    What KSS version is this robot running? KRL has remained mostly the same over the years, but there have been changes that can make programs that are valid under a newer KSS version suffer compilation failures in a very old KRC1.


    When copy&pasting programs into the robot, it needs to be done from the KUKA HMI. It can also help sometimes to load the .DAT file first, then load the .SRC file. Try to avoid copying multiple modules at once.

  • Hi again,


    now I have some more free time so let's play again :).


    1. The problem with copying files from USB to disk drive was solved by using and just editing original file .src taken form hard disk. I still don't know what is the difference between simple .txt and .src(now I have no time for wasting to solving that, so such solution must be enough :dance2: ).
    2. Now I try to define INT,REPEAT,LOOP etc. functions, but always i get "Illegal or Wrong..." error. Basic ones like PTP,LIN works fine. Could they be locked/disabled somehow or just KSS/Techpack dependent ?


    My KSS 2.76_28 with GUI V 2.3.36.


    Regards

    Edited once, last by rybar ().

  • you should first read manual. you have older KSS and as i recall GUI is quite different, save behavior is different etc.



    Then there is a difference between SELECTing program and OPENing one.



    if you SELECT program, it is loaded and ready to run. any programming is limited to use of INLINE FORM instructions (ILF). Any change is compiled immediately when ILF is saved.



    If you OPEN program, it is not loaded and ready to run, basically it is a plain text editor. you are not limited to ILF, you can also type commands in manually. Changes are not compiled until file is saved.

    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

  • I would suggest this:
    1. Create a new program on the teach pendant
    2. Copy that program (both files!) over to your computer
    3. Open and edit the program using OrangeEdit
    4. Save and copy back into the robot


    This process should give you a valid module to start from. One key item in KRL is to not tamper with the &-prefixed lines at the top of an .SRC or .DAT file (unless you really know what you're doing), but these lines are usually not visible on the pendant (or in OrangeEdit's HMI-view mode). Also, the DEF ModuleName() line must be the first line following the &-prefix lines.

  • yes, creating a new files and using them it's good idea, but i still don't know what is wrong when:


    INI
    PTP HOME VEL=100% DEFAULT
    LIN_REL{X 200}
    PTP HOME VEL=100% DEFAULT


    is correct and works, but:


    INI
    PTP HOME VEL=100% DEFAULT
    ***INT R=1(LOOP, REPEAT etc.)
    PTP HOME VEL=100% DEFAULT


    generates "Illegal or unknown block" error.


    Yes, maybe it's to easy to be understood and solved :).


    In the same file OrangeEdit indicates:


    :wallbash: :wallbash: :wallbash: :wallbash: :wallbash: :help:

    Edited once, last by SkyeFire ().

  • simple...



    PTP HOME motions are ILF instructions ("inline-form"). They have everything taken care of for you (speed, acceleration, frames ,...).



    LIN_REL in your program is not.... it is line of code you typed in (not selected from menu). This is meant for experts. IF you want to use it, you need to become an expert and learn how it works and what it needs. Basically you need to program in everything that ILF does yourself

    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

  • In that program, which line generates the error? Because it looks like this one:
    ***INT R=1(LOOP, REPEAT etc.) The *** is how the compiler marks erroneous lines.


    Which is syntactically incorrect. For one thing, you have to declare a variable before using it. Second, that (LOOP, REPEAT,etc) bit will create syntax errors. Was that supposed to be a comment? Comments in KRL have to start with a semicolon.


    Also, the way you're copy&pasting your code, I can't tell if you're working in ASCII view or HMI view. So we can't tell if you're handling the ILF and Folded code properly.

  • from the begging i'm trying to explain, that simple programs consisting basic commands eg. motions(all LIN,PTP,CIRCLE and so on with VEL,ACC... declared independently or globally in BAS.DAT) works fine. The problem is with another functions like REPEAT,LOOPS, etc. which seems to be incomprehensible for KSS, eg.:


    DEF TEST()
    INI


    INT R=1
    R=R+1
    UNTIL R>100
    END


    generates error:


    DEF TEST()
    INI
    PTP HOME Vel=100% default
    ***INT R=1
    ***R=R+1
    ***UNTIL R>100
    PTP HOME Vel=100% default
    END



    but in this same file program works sequence like:


    DEF TEST()
    INI
    PTP HOME Vel=100% default
    PTP{X 200 Y 200}
    LIN_REL{X 5, Y 5}
    PTP HOME Vel=100% default
    END


    Excuse me if I don't understand Your previous guidelines, but above examples are taken from manual so think, both are expected to be correct ???


    It's true that I'm not expertise in KUKA programming, I'm trying to learn but in that problems I couldn't find any explanation in manuals.

    Edited once, last by rybar ().

  • Can you do use a favor a take a screenshot of your hmi panel containing the code that gives the error message? Then we can at least see if you have the program selected or just opened. That is the first thing we have to know, after that we can look at the syntax.

    Every problem has a solution, that isn't the problem. The problem is the solution.

  • you really need to read programming manuals...



    you cannot declare variable in the middle of the program.
    declarations are either in DAT file or at the TOP of the SRC file (directly after DEF line).



    then you need to learn about initializing variables

    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

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