KRC4, Calculate Weigth/payload

  • Hi there,


    I'm working with KUKA KRC4 robots and for my application it would be of interest calculating the mass of the object that my robot is handling.


    The variable $TORQUE_AXIS_ACT is according to the system variable the actual torque of the motor for the specific axis, does this allow me to calculate the mass together with my acceleration variable, and can I do it "on the fly"...? Lets say I choose to do a LIN movement, and with my torque and acceleration variable I can define my weight, buy using (M=r*m*a), where r is the distance from the mass center. (the mass center will vary slightly when the object mass changes, but there are ways to come around this, and M is my net torque that I can derive from the actual torque variable)


    I'm wondering if anyone has tried to one way or the other way calculate the payload by using these variables? And what would the tolerances be? Are we talking (+-)Kg or much less, more?


    Lets say the above mentioned method is faulty, would using a force/torque Sensor be a smart method of get proper values that I can use to calculate my payload with much better tolerances, or is it a totally wrong approach to use such a sensor?


    The weight I want to calculate is primarily around 20-40kg, but there is also an interest to do the same calculations with bigger robots that is handling objects up to 250kg.


    Thanks for your time :smiling_face:

    Edited once, last by eis_03 ().

  • I have never programmed Kuka before, but all the other major robot brands that I have programmed have built in a way for the robot to calculate such. I would expect Kuka does too. Sometimes it is a paid option. Search this forum or your Kuka manuals some for payload estimation or something similar.

  • Hi,
    To clarify, I want to calculate the weight of each object that I handle with the robot, meaning that each object might differ in weight from the previous handled object. When I set up the robot I specify the load data with appropriate data and all works fine.


    I wish to some how calculate the weight of the handled object each time I grab an object, lets say its kind of an palletizing operation I do with the robot, and each object might differ in weight, and I would like to know how much each objects mass is.


    the LDD is used to determin the load data and is performed in the setup, I want to have this calculation to be done during operation, eather by sending needed variables to a Master PLC, or do it in the sps.sub.


    I have the feeling that this could be a thing that is useful in many other application where the weight of the handled object differs, so I was hoping that someone out there had some ideas or experience to use the robot, in one way or the other, to determine the weight of the object that is handled.


    Thanks for your time!

    Edited once, last by eis_03 ().

  • I don’t see this as a practical application but i don’t know details or what kind of cycle time or accuracy is needed.

    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

  • At the moment there are no accuracy that is defined as ok, or not ok. I'm just interesting if there is someone who has done such calculations using the variables available from the robot (or maybe data from appropriate sensor). I'm eager to hear anyones experience about it, if there are any, regardless the accuracy, or the cycle times, those are details that one can work and tweak along the way.

  • [size=2]1. robots are meant to move and do work. wast majority of applications require robots to move as fast as possible because cycle time correlates with productivity (it is a simple economics).[/size]


    [size=2]2. measuring weight requires stopping (settling down of readings) to get any kind of accuracy. [/size]


    [size=2]3. determining more parameters such as CoG, inertia requires motion but this is not just time consuming, it is complicated to calculate (require accurate dynamoc model of the mechanism including joint frictions). if it wasn't everyone would just write their own version of LDD instead of paying for tech package. [/size]


    [size=2]4. measuring load using motor current is possible but poor. it is comparable to determining weight of a car-driver by looking at fuel consumption. this is why we tell robot what to load is and not the other way around. this is why truck weighing stations [/size]


    [size=small]5. why not focus on tasks or solutions that are within your abilities? why use most complicated approach? if you need to measure weight, just add weighing scale and be done with it.[/size]

    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 agree on that robots are mainly meant to move and do work for us, as fast as possible, its simple economic. But an engineering mind tends to seek new solutions and possibilities, R&D(It also has to do with economics), to streamline production, and reach for new abilities.


    So, instead of having on additional weighing station that do add time to my cycle time because the robot has to pick the object from a stack, take it to the scale and drop it, wait for the scale to stabilize and take the reading, grab the object and continue, why not use this fantastically "smart" robot that clearly is capable to make complex calculations, and let that one do all the work, including doing calculations, that the robot is really good at as well.


    So to not let this thread totally derail into a economics and production/layout thread:


    So if I only use motor current( I did suggest motor torque above) we have a poor accuracy, that's at least a start, its not very informative, but it is something,


    I do hear you on measuring/calculating the weight on motor current will be a bit dodgy, and that's why I keep the FT sensor-option open.


    I still have a hard time to let go of the robot variables though, because I do have variables that is directly related to the weight/payload, and I would guess that the value of those are pretty accurate, because the robot relay on them for calculating, among many, overload.


    So one way of get around joint friction and other "pit falls" would be to maybe take readings on those variables that is directly related to the weight/payload with a number of different known weights, make a regression analyze on those variable and get myself a mathematical function that depends on these robot variables, and from that get my weight? Its just an idea, probably heaps of "pit falls" to fall in to, but in that way all the mechanical frictions and gear ratio and other factors are worked around?


    Anyway, thanks again for input and your time:)

Advertising from our partners