1. Home
    1. Dashboard
    2. Search
  2. Forum
    1. Unresolved Threads
    2. Members
      1. Recent Activities
      2. Users Online
      3. Team Members
      4. Search Members
      5. Trophys
  3. Articles
  4. Blog
  5. Videos
  6. Jobs
  7. Shop
    1. Orders
  • Login or register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Products
  • More Options
  1. Robotforum - Support and discussion community for industrial robots and cobots
  2. Forum
  3. Industrial Robot Support and Discussion Center
  4. KUKA Robot Forum
Your browser does not support videos RoboDK Software for simulation and programming
Visit our Mainsponsor
IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Sponsored Ads

create new program without kuka software

  • NiamoR42
  • May 25, 2011 at 12:35 PM
  • Thread is Resolved
  • NiamoR42
    Trophies
    3
    Posts
    7
    • May 25, 2011 at 12:35 PM
    • #1

    hello,

    I try to write KRL (Kuka Robot Language) program with notepad or an other soft (or in python / C++).
    If I want to play my program, I have to do cold start with the pc KRC2 because the KUKA soft says that my programs (*.dat & *.src) are text file... :icon_confused:

    is there a solution to refresh programs folder and not have a compilation problem without coldstart ?

    thanks a lot.

    NiamoR42

  • jmpche
    Trophies
    3
    Posts
    13
    • May 25, 2011 at 1:43 PM
    • #2

    Hi,

    You can write your program with every editor, but you must to load the program from kuka's explorer.

    If you have soft v5.x, you haye to change to "Expert" and find your file using the explorer in Kuka HMI, you copy from "Edit" menu and paste into R1, into the folder for works trajectories.

    In lower versions, the procedure is similar, but I don't have any handy to be precise.

  • NiamoR42
    Trophies
    3
    Posts
    7
    • May 25, 2011 at 2:10 PM
    • #3

    Hy JoseMi,

    thanks for your answer.
    I use the "admin" mode to run windows programs (explorer, notepad, ...).

    I write my program (*.dat & *.src) in the R1 folder but with the kuka soft, I kan't play the trajectories because the kuka HMI says my programs are text file and not program (I think kuka soft don't try to compile my program).
    perhaps there is a function to compel the KRC pc to compile my program ?

    NiamoR42

  • jmpche
    Trophies
    3
    Posts
    13
    • May 25, 2011 at 2:35 PM
    • #4

    Hi,
    Probably the word "kuka's explorer " is not the best word to define the manager of files in Kuka HMI, sorry.

    You haven't to compile the programs.

    You can paste your program to R1\programs from C:\, D:\ or usb device, but you must do it from kuka HMI.

    If you want to write the program with the robot, you must go into R1\program and choose softkey "New", and select p.e "Modul".

  • NiamoR42
    Trophies
    3
    Posts
    7
    • May 25, 2011 at 2:49 PM
    • #5

    OK JoseMi,

    but I want to do all in automatic... : My superviser soft has to calculate and to write a kuka program and to start the trajectory.
    how to copy the program with a soft, function or command...?

    NiamoR42

  • mookie
    Reactions Received
    2
    Trophies
    3
    Posts
    84
    • May 25, 2011 at 3:38 PM
    • #6

    theres ways to do it but its gonna cost you. there is a utility that you can use that will copy programs from a directory and reload them through the hmi on command, its a bit overkill for what your looking for though. so what your trying to do is write a program outside of the editing environment but your trying to get the robot to pull it from where your writing it to? why not have it reside within the robots krl directory?

  • Online
    SkyeFire
    Reactions Received
    1,051
    Trophies
    12
    Posts
    9,423
    • May 25, 2011 at 4:12 PM
    • #7

    KRL unfortunately has no file-handling functions (a distinct oversight). So unless you buy the Tech Package that Mookie mentioned, there's no way from within KRL to order the robot to load a module from a hard drive location into the /R1 RAMdrive.

    There are ways to do this manually -- in the KUKA Navigator on the KCP, you can (if in Expert mode or higher) navigate to any drive visible to the KRC's Windows system, and perform an EDIT>COPY from the menu buttons. Then navigate to the /R1/Program directory and perform an EDIT>PASTE from the menu buttons. This can even be automated to an extent using Windows scripting, like AutoIT.

    I suppose the question is, just how automatic does this process need to be?

  • NiamoR42
    Trophies
    3
    Posts
    7
    • May 27, 2011 at 8:56 AM
    • #8

    thanks Mookie and SkyFire,

    You understand everything : I want to do all without manual action.

    mookie : "why not have it reside within the robots krl directory?"
    even if I write my program in the R1 directory, the robot doesn't want use it. I think when I switch on the robot, it load every programs in it RAM memory. So I have to find a function to oblige the robot to reload all programs...

    What is the Tech Package? We have the RSI option (with the 3com card), but for the moment, I can't use it because I don't know how (the exemple run not very good...) and I don't have a lot of information...

    P.S.: sorry for my english, I'm french... :merci:

  • Online
    SkyeFire
    Reactions Received
    1,051
    Trophies
    12
    Posts
    9,423
    • May 27, 2011 at 2:59 PM
    • #9

    It is, unfortunately, the nature of the big orange beasts.

    During boot, KSS loads the /R1 directory from the hard drive into a RAM drive, and runs from the RAM drive. This makes it possible to make alterations to the files on the hard drive while the robot is running, without affecting the robot's operation. During shutdown, KSS saves all files from the RAM drive back to the hard drive.

    So, adding modules to the /R1 directory on the harddrive has no effect until the robot is rebooted.

    The Tech Package to allow program files to be loaded from the hard drive while the robot is powered up is called KUKA DirLoader (it actually loads an entire directory). That's probably the safest and most effective approach.

    Now, I have done a very small bit of experimentation in using Windows scripting to duplicate the sequence of button pushes on the KCP that perform the manual copy&paste module operations, and I've gotten it to work in AUT mode in OfficeLite 5.6. No idea if it'll work on a production robot, and frankly I'd be nervous about trying it without very thorough testing.

    Alternatively, if the programs you need to run have the same structure, but just different positions, you could create a large array of E6POS in the DAT file, then do something like this in the SRC file:

    Code
    FOR i = 1 TO ArrayLimit
      Array [i] = {X -1, Y -1, Z -1, A -1, B -1, C -1} ; init array 
    ENDFOR
    i = 1
    WHILE ((i <= ArrayLimit) AND (communications check))
      Array [i] = E6POS variable from communications subroutine
      i = i + 1
    ENDWHILE
    1 = 1
    WHILE ((i<=ArrayLimit) AND NOT ((Array[i].X == -1 AND Array[i].Y==-1...and so on)))
      LIN Array [i]
      i = i + 1
    ENDWHILE
    Display More

    That's a very rough example, of course, but it can be made to work.

    Alternatively, you can create a loop that simply keeps asking a remote device for the coordinates of its next move, and executes said move.

    RSI isn't the right tool for this -- RSI is really intended to allow the robot's motion to be influenced in realtime by sensor devices, although the "sensor" could easily be a robot simulation engine like RobCAD. People have used RSI to turn KUKAbots into real-world realtime "slaves" of virtual robots inside a computer.

    So, the solution that would work for you depends on what your program toolchain looks like -- what your process is to generate a program, and what the program looks like before loading into the robot.

  • Tilman
    Trophies
    2
    Posts
    5
    • May 27, 2011 at 3:32 PM
    • #10

    Hello SkyeFire,

    NiamoR42 is a french guy, and he send me private message in french. I gave him a short response (normally, I don't do this, discussions should be made here, this is the code of a forum).

    I told him nearly the same, but (now Mookie has to leave definitively the country), you did it better :icon_smile:

    I thought about one more possibility: using the cross interface (for example, the cross.ocx). There are nice functions, which seems to do exactly what NiamoR42 needs (Copy, Select, Run, etc.) Disadvantage: theses functions are not documented. Anyone tried them?

    Greetings,
    Tilman/France

  • NiamoR42
    Trophies
    3
    Posts
    7
    • May 29, 2011 at 9:55 PM
    • #11

    Thanks for all your answers.. !
    I have to cogitate.. :grinning_face_with_smiling_eyes:

  • Online
    SkyeFire
    Reactions Received
    1,051
    Trophies
    12
    Posts
    9,423
    • June 1, 2011 at 4:23 PM
    • #12
    Quote from Tilman


    Hello SkyeFire,

    I thought about one more possibility: using the cross interface (for example, the cross.ocx). There are nice functions, which seems to do exactly what NiamoR42 needs (Copy, Select, Run, etc.) Disadvantage: theses functions are not documented. Anyone tried them?

    Greetings,
    Tilman/France

    Hm! That's actually an idea worth pursuing.
    The problem, of course, is that KUKA guards that software quite jealously, for multiple reasons. I know Mookie has done quite a bit of work into building VB/C# plugins that work with the KCP HMI, but I don't know if he (or anyone) has ever tried reverse-engineering the Cross OCX as you suggest.
    Of course, this would require someone with nerves of steel, exquisite programming skills, and a KUKAbot (or OfficeLite) free for doing lots of experimentation on. Not to mention lots of free time. :icon_rolleyes:

  • Tilman
    Trophies
    2
    Posts
    5
    • June 1, 2011 at 5:36 PM
    • #13

    Hello SkyeFire,

    Quote from SkyeFire


    Not to mention lots of free time.


    Yes! Or somebody, who knows how it works :toothy9:

    You have seen perhaps the simulation of the KR6 in my video. It was not Kuka Sim, but OfficeLite with a virtual arm that I programmed myself (for economic reasons…). I used here the cross.ocx interface, but only for reading the position ($AXIS_ACT). I stopped playing with the cross.ocx at this level.

    The programming is not very hard, if you know ActiveX. The main problem is that no documentation is available. For example to copy a file, it could be the function DownLoad:

    Code
    short __fastcall DownLoad(BSTR strFile/*[in]*/, BSTR strKRCDest/*[in]*/, BSTR strOpt/*[in]*/);


    But strOpt... Is it a timeout value? And the strKRCDest, what is the syntax of the path?

    There is also the crosscommexe.exe interface. You can find some unofficial documents for it. This interface is a little more user friendly, but it is not supported on newer versions of the KSS any more.

    After all, I prefer the solution that you explained, SkyeFire: transferring the positions. This solution is documented, you can realize it without any package (by using the RS232 interface), no problem with the guarantee of your robot… and you need less time to realize it :icon_smile:

    Greetings,
    Tilman/France

  • Pavel_Yakubov
    Trophies
    3
    Posts
    3
    • February 20, 2012 at 7:18 PM
    • #14
    Quote from Tilman


    Hello SkyeFire,

    NiamoR42 is a french guy, and he send me private message in french. I gave him a short response (normally, I don't do this, discussions should be made here, this is the code of a forum).

    I told him nearly the same, but (now Mookie has to leave definitively the country), you did it better :icon_smile:

    I thought about one more possibility: using the cross interface (for example, the cross.ocx). There are nice functions, which seems to do exactly what NiamoR42 needs (Copy, Select, Run, etc.) Disadvantage: theses functions are not documented. Anyone tried them?

    Greetings,
    Tilman/France

    Hi All, please see attached document. Is it what you search?

    Files

    Microsoft Word - documentation_CrossCommEXE _V1D1.doc.pdf 221.71 kB – 332 Downloads
  • Tilman
    Trophies
    2
    Posts
    5
    • February 22, 2012 at 2:26 PM
    • #15

    Wow! Thank you a lot!
    I used another, inofficiel documentation for the crosscom.exe interface. Yours is much better!!!
    Has somebody the same for the cross.ocx :icon_smile:
    Very best regards, and thank you again,
    Tilman

  • vivektronics2003
    Trophies
    3
    Posts
    18
    • November 8, 2013 at 7:21 PM
    • #16

    Hi Tilman,
    Have you initialized the cross.ocx in vb or got the documentation for this?

Advertising from our partners

IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Advertise in Robotics
Advertise in Robotics

Job Postings

  • Anyware Robotics is hiring!

    yzhou377 February 23, 2025 at 4:54 AM
  • How to see your Job Posting (search or recruit) here in Robot-Forum.com

    Werner Hampel November 18, 2021 at 3:44 PM
Your browser does not support videos RoboDK Software for simulation and programming

Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Thread Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™
As a registered Member:
* You will see no Google advertising
* You can translate posts into your local language
* You can ask questions or help the community with your knowledge
* You can thank the authors for their help
* You can receive notifications of replies or new topics on request
* We do not sell your data - we promise

JOIN OUR GREAT ROBOTICS COMMUNITY.
Don’t have an account yet? Register yourself now and be a part of our community!
Register Yourself Lost Password
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on Google Play
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on the App Store
Download