Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

Synchronize Moves Between Multiple Robots

#1
Right now, two robots can be synchronized to start their moves at the same time using IO setting and waiting.
https://robodk.com/forum/Thread-Synchron...f-2-Robots
https://www.youtube.com/watch?v=MMKJaplGfKc

I would like to be synchronize motion between two robots across arbitrarily small time slices.

For example, let's say I have a few targets:
t0 is linked to robot A and has position [0,0,0,0,0,0]
t1 is linked to robot A and has position [100,0,0,0,0,0]
t2 is linked to robot B and has position [0,0,0,0,0,0]
t3 is linked to robot B and has position [0,200,0,0,0,0]

I want robot A to linear move from t0 to t1 at the same time that robot B linear moves from t2 to t3. I want both robots to start and end the moves at the same time, regardless of speed settings. That is, even if robot A can complete the move from t0 to t1 in 2 seconds, I want it to not get ahead of robot B, which needs a full 4 seconds to complete the move.

Using the IO synchronization method, I could create a large number of intermediate targets between t0 and t1 (t0.0, t0.1,t0.2, etc.) and between t2 and t3 (t2.0, t2.1, t2.2, etc.). Then, I could repeatedly have robot A move to the next target then wait for robot B to catch up. However, that is undesirable because (1) it's messy and (2) the motion isn't truly synchronized, with robot A constantly accelerating and decelerating while robot B moves at constant speed.

Ideally, I could use some kind of synchronized move functionality where RoboDK anticipates how fast each robot can complete the move and throttles the speed of the faster robot so the robots complete their moves in the same time and remain sync'd along the way.

This would allow RoboDK to be used for applications such as a team lift, where two robots each support one end of a large object. In the case of a team lift, the relative position of the robot TCPs must remain constant throughout the movement, so true synchronized motion is necessary.
#2
It is possible to mirror the robot movement using the API, I joined an example of it.

You can also look at our plugin which might help you achieve your goal :  Coordinated Motion | Add-in Marketplace


Attached Files
.rdk   Sync Move - ABB - DH-DHM Mirror Test.rdk (Size: 826.18 KB / Downloads: 48)
#3
These are good suggestions. I think that between those two there is a solution for what I need to do.

Thanks, Olivier!
  




Users browsing this thread:
1 Guest(s)