1

I am going to start my work on a robotic project. Before jumping into the question, let me first give a brief description of the set up of this project.

The set up consists of a facility where there is a rail system and there are multiple robots mounted on them. The environment is static with only mobile robots. As for now it can be 3 robots wagon on these rails. These robots are for pick-and-place tasks.There is, as such no communication between these robots but they are connected to the server, which gives the robots tasks.

Please have a look at the rough sketch (pardon me for this bad diagram) to have an idea of the set-up. enter image description here

From the above diagram, R1 and R2 are robots on the rails. The server may assign a job to robot R1 for picking an object at "A" and dropping it at "B" and the robot has to move completely autonomous. Now, my queries are as follows:

  • How the robot R1 moves to "A" and then to "B", taking the optimal path, concerning Path Planning of the robot?
  • How the robot avoid collision in a static map, with other mobile robots on the rails, concerning collision avoidance ? (I am thinking of using a camera to detect the other robot)

I have looked into some literature and have a basic idea. I have also gone through some of the asked question in here. But I dont have any concrete idea to start working. I am looking for some advice/ideas/algorithms/literature to go about the problem. Please help me out. Thanks in advance !!

Note: I will be simulating the whole set-up in a 3D environment.

Community
  • 1
  • 1
soupso
  • 592
  • 1
  • 4
  • 20

1 Answers1

1

For the first question, consider the entire rail network as a graph and use a shortest path algorithm to get the optimal path.

I do not know if you are allowed to move other robots when moving R1 to A and B. If some of the robots cannot be moved, then remove those portions of the railway from the graph, and calculate the path.

To avoid collision, one method would be to allow motion in only one direction along the rails (a figure of 8 in this case). Overall it should not be a problem since you are controlling the bots from a central server.

user2963623
  • 2,267
  • 1
  • 14
  • 25
  • Thank you so much for your quick reply. My bad, I missed to include that other robots moves while R1 gets the jobs from the server. Also to add to that, the robots moves both the directions and the server only gives them a job, it does not control the robots. The robots have to move autonomously avoiding collisions and get the task done. – soupso Jul 28 '14 at 15:34
  • Does the robots have information about the state of the entire system i.e., other robots and their location, status, or only of their own? – user2963623 Jul 28 '14 at 15:48
  • No, each robots knows about their state. They will have to move autonomously and act upon the optimal path to finish the task. – soupso Jul 28 '14 at 15:57
  • In that case finding the optimal path may not always be possible. if the bots are of the same type, swap the tasks when they collide. – user2963623 Jul 28 '14 at 16:26
  • Okay. Unfortunately swapping the task can not be in the scenario. One of my thought is let R1 derives an optimal path and if there is any potential collision then again optimize the path and reroute. Can this be done ? What is the best algorithms for accomplishing such an activity ? – soupso Jul 28 '14 at 17:45
  • It is possible if there is always a path to the task. So in the picture you have provided, it will find another path. In such a scenario a simple algorithm would be to find all possible paths and explore them in ascending path length order – user2963623 Jul 28 '14 at 20:22