Pick on the fly (KukaSim)

  • We have ordered a Kuka KR10 R1100-2, and I am now in the proces of creating a simulation for it using KukaSim (the robot will not arrive for a few months but I want to start programming / testing in simultation). In KukaSim I am using RCS version Kuka 8.6, and controller firmware version 8.6.6. (these were the default settings). I am using KukaSim 4.0 and have purchased a floating license.


    One of the things I want to achieve is for the robot gripper to track a product and move in and out to perform an operation on this product. I have now acchieved this by making a for loop where I increment Base_data[1].X by 10, followed by a SLIN move command. The problem I have with this code is that the speed is not correct because the movement is composed of 100 small movements, and after each movement the robot decelrates and accelrates, blending does not seem to work here.


    Would the ConveyorTech package be a better way to achieve what I'm describing? Or is conveyorTech only necessary when the speed of the conveyor might vary and the robot needs to follow it perfectly (this is not the case for me, the speed is a constant), and is there an other way to acchieve what I want without the ConveyorTech package?


    Second question: If I do decide to get the ConveyorTech package, can this package also be used in KukaSim?

  • In the real world, doing this without ConveyorTech (or perhaps RSI) is going to be questionable at best. It's not just a matter of following conveyor speed fluctuations (and there are always some, no matter how constant the conveyor speed is intended to be), but also synchronizing the start of the robot following to a particular position of the part on the conveyor. This is the reason that CT uses the Fast Measurement interrupt inputs, instead of the "normal" inputs -- it's only a matter of microseconds vs milliseconds, but in line-tracking, it matters.


    Also, trying to "fake" line tracking by iteratively shifting $BASE isn't going to make for good velocity matching, even if we assume the conveyor speed never varies even slightly. On top of that, while this might allow good motion blending with non-Spline motion, I'm honestly not sure if Spline motion will work with this. SPL motions are characterized by their advanced pre-planning, and SPL may not work well with this kind of "moving target".

  • Hello,


    Conveyortech simulation with KUKA.Sim is possible but only conceptual by utilizing the conveyor tracking base component within KUKA.Sim library. But It does not support the ILFS like COnvInit, ConvON or COnFollow and you have to also use the Visual Component Interpreter, instead of RCS. If you want to have a deterministic cycle time, you must use the real robot along with Conveyortech package and appropriate hardware.

    Edited once, last by Ben014 ().

  • Thank you for your help, after further testing with Kukasim and evaluating your feedback we have decided to purchase the conveyortech package. However the robot will not arrive any time soon because of long delivery times, so I still want to try to simulate the motion using Kukasim.


    Could someone perhaps point me in the right direction for using the ConveyorTrackingBase component? I have created a simple model with a KR10-R1100-2 robot, a product feeder, conveyor belt, and the conveyor tracking base component. The feeder is producing simple square boxes (one every 5 seconds). But I have no clue yet how to make the robot follow the products that are on the conveyor.


    I suppose I have to use a python script but I cannot see where I can create or edit python scripts for my components. According to the help file this should be accesible in the components graph panel (in the modeling menu, after selecting a component) but I cannot find nor create the python feature for any of my components. My menu layout seems different from the help file examples. For instance I don't have the buttons 'features', 'tools' and 'behaviors' available in the toolbar in the modeling menu.

  • Thanks guys! This helped a lot. Is the video you provided part of a Kuka training program of some sort? Is this video, and perhaps other videos, accessible in any other way in the future?


    If anyone reads this in the future when the link to the video is not available anymore: I got 2 things wrong:

    -You have to use a batch conveyor (I used a straight conveyor and the ConveyorTrackingBase does not snap to this type of conveyor for some reason)

    -You have to turn off RCS


    The rest should be pretty obvious: Snap Base_data[1] to the ConveyorTrackingBase sphere, and set it as the node, and connect the sensor output to the robot input to start the motion

Advertising from our partners