Posts by kiiwa

    Is there a way to have a robot application execute after start-up? Without having to select it from the drop down menu on the smartpad?

    Yes. Select the application you want to run as your default one from Sunrise Workbench (like in the attached photo). This way it's always loaded after start up or when you pass to AUTO mode.

    Then to start/stop use External Control via:

    • I/O system of the robot controller

    • Network protocol UDP

    More info in the documentation (e.g. in the KUKA_SunriseOS_116_SI_en.pdf you find it in Chapter 12 External control )


    I am trying to phase out the use of the smartpad, including the smartHMI software.

    I'm not 100% sure you can do that

    I never used EtherCat to send positions. I dabbled a bit with FRI a couple years ago, it was a hassle for me, wasn't worth it. I use the SmartServo option that comes with the LBR iiwa, pretty handy and straight forwards. I send the positions via UDP or TCP/IP, not hard real time (iiwa is slower than other KRC4 robots) but quite responsive and smooth movement.

    Of course, you can't jog the robot when you're in AUTO mode. Turn the physical key on the SmartPad ,select T1 mode then turn it back.

    The error message seems like you selected the wrong type of flange in your project configuration on Sunrise workbench or you didn't connect the data cable from the Controller to the robot Arm.


    I am working with KUKA iiwa lbr 14 R820 robot. Currently, I am not able to jog the robot using the smartpad. I have attached the photo of the error that I am getting. I have started working on this robot very recently and so I am new to the system. Also, I am posting for the first time so excuse me if I have not followed the protocol.

    You need to activate the security configuration each time you change it. You can do that on the smartPad, go to security, you'll find a button "activate" click and enter the password kuka provided.


    Can you please tell me your experience with KUKA LBR iiwa.

    I've worked on them for 5 years now, they're pretty awesome in many aspects: Safety, Torque sensing, Hand-guiding, ease of integration in non-industrial setups, you don't need to buy packages for every protocol, etc.


    how deep we must know the java programming?

    To start you need to know some programming (Variables and Types, Conditionals, Loops, functions, etc) and Object Oriented programming (Classes, Objects, etc.). If you ever programmer before, it's not very hard to learn.


    When compared to normal KRC4 controller programming. how is the programming experience with KUKA LBR iiwa.

    Each one has pros and cons, or let's say conveniences and inconveniences. From the top of my head, and as aforementioned, KRL is less verbose and you can change your code on the fly directly from the smartPad. You can't do that on the LBR iiwa, you need to change your code on the sunrise Workbench editor each time then synchronize. You can get around some of that by using process data or file exchange, to update some parameters, but not code (I think).

    On Java you have tons of libraries available online (communication protocols, XML/JSON parsers, etc.), you have much less in KRL.

    The bigger a program/project on KRL the clunkier it becomes. In java with some good package management, you can keep your project tidy.

    I usually use a "breakwhen" in my motion instruction, then check if "getFiredBreakConditionInfo()!= null" , to roll back to my previous position in case of an, obstacle, but not to release a trapped person, it's to avoid breaking my work-pieces, when I want to put them on a base and there's already something underneath.

    As @SkyFire said, it's not safe to move automatically after a collision, as we have no way to know if it's not going to worsen the problem, especially with big robots.

    The best way is to use a small Network hub, connect your PC + 2 Robots to the hub and set your PC's IP to something like / and be sure to have both robots use different IPs, because the default one is, and you'll have address conflict if you don't change your second robot's IP from the StationSetup--> Configuration-->IP

    Instead of stopping or pausing your motion do this when you detect an obstacle:


    The robot will freeze, like it a wait(). Once there's no force applied on the robot, you can get your override back to normal:


    And the robot will resume.