Tracking moving object

Hi

I have industrial robot and position is at Point A (x,y,z) in time t=t1. I want to pick product on the belt with speed v (t) (not constant, can change 0-Vmax). At time t=t1 product is at position (X1,Y1,Z1). I have trajectory between A and B at the time t=t1. How can I calculate speed for robot or position to catch this product?

Has somebody good document about catching the product on the belt?

Thanks.

Regards

Leo

Reply to
leo
Loading thread data ...

Sure. That would be

formatting link

Reply to
Rich Webb

Do you know the speed of the belt? If you can get the changing belt velocity, you can integrate it forward in time beginning at t1, and that will get you the proper position at some later time t2. The faster you can get accurate velocity readings, the better that integrated position will be.

If, instead of sensing it, you know the belts expected velocity profile between t1 and t2, you could integrate that function instead to get the expected position.

Mike Ross

Reply to
mike_l_rossREMOVE

I know only position of products on the belt in every scan. The problem is if the belt is fast, how can I reach this speed?

Reply to
leo

No, I need better quality of tracking operations.

Reply to
leo

You mean the belt travels faster than expected sometimes? How often do you get a scan, just once for every object transferred? Doesn't sound like you have enough information to accurately estimate the proper place on the belt at time t2. You need to sense or otherwise know the belt speed over the time interval.

Mike Ross

Reply to
mike_l_rossREMOVE

I have information only about position of products every 2 msec.

Reply to
leo

so scan at 0ms, record product position1 scan at 2ms, record product position2

subtract product position 2 from position1, and you have distance traveled in 2ms.

Reply to
aiiadict

Do you mean that the belt is moving faster than your robot arm can move so the arm is not able to catch up to the object? If the object is moving too fast you just have to be able to see it far enough in advance to allow you to get the arm to the correct place in time.

You have to use the position data from your scans to construct a model of where you expect the object to be in the future as a function of time. This would be an equation that gives you virtual path of the object in 4D space (3D + time dimension) and you do the same for your robotic arm and adjust the commands you send to the arm to make the path of the arm intersect with the path of the object. That is, so that the arm shows up at the right place, at the right time, in order to grab the object.

If you assume the belt is moving at a constant speed, then the equation is simpler. If you want to adjust for a belt which is currently changing speed (speeding up or slowing down), then you have to use a more complex model (aka equation) to model the expected change in speed between each update.

Basically, after each 2ms update, you need to contract a new plan for the movement of the arm (maybe a sequence of command you will send it over time to get it where you need it to be).

I don't anything about the typical command interface to one of those robots. Do you tell it in real time where to move to (x,y,z), and then some amount of time later, it gets there? If so, you need to build a mathematical model of the robot arm that will estimate where it will be over time after you give it a new command. This may require you to model not only it's position, but it's current velocity in order to give you accurate enough results.

Is you goal to make the arm move in sync with the object on the belt and then grab it as the object and arm are moving? Or do you want the arm to move to the correct place, stand still, and then grab the object just at the right time as it moves past?

The calculations will be different based on what your are trying to make the arm do.

The faster the object and arm have to move, the more accurate your calculations will have to be in order for it to work.

Reply to
Curt Welch

OK, first, here's a video of a Staubli robot doing exactly that:

formatting link
And here's an Adept robot doing it:

formatting link
And here's someone doing it as an assignment in a robotics class:

formatting link
Here's a sausage-packaging robot doing it:

formatting link
And one doing it with chocolate eggs:

formatting link
And the Adept Quattro robot, the world's fastest robot manipulator:

formatting link
So this is a solved problem with commercially available solutions. So go buy something. Lots of vendors make software packages for robot conveyor tracking.

John Nagle

Reply to
John Nagle

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.