Question: A . TASK - 1 : Multi - robot coverage path planning Two robots are located in ROS Stage environment. The environment includes obstacles that

A. TASK-1: Multi-robot coverage path planning
Two robots are located in ROS Stage environment. The environment includes obstacles that the robots should
avoid colliding.
The starting positions and orientations of the robots are shown in Figure 1. The arrows show the directions
that the robot moves. The distance R that the robot travels in left/right directions is the same. Both robots
start moving up until they detect the wall/obstacle with their sensors; then they turn left/right, and then move
down/up until they detect the wall/obstacle again with their sensors. This motion pattern is executed until
the robot reaches the end point (see Figure 1, square icons). The robots should always face the directions
that they move. The starting positions and the orientations of the robots should appear as seen in Figure 1.
Set the value of R as 3 for robot-1 and robot-2. You can do small changes on this value.
Each robot should keep the track of the total distance that it travels.
You should create a yaml file that holds the R values for the robots. The parameters in the yaml file should be
received in the Python file using the appropriate functions.
First, robot-1 should start moving. When robot-1 finishes its motion, it should send the message that includes
string command and float distance to robot-2. The value of the command variable should be "START" and the
value of the distance variable should be the total distance traveled by robot-1. Robot-2 should subscribe to
the topic that this message is sent. Upon receiving this message, robot-2 should start its motion also print the
distance value that is received. Note that for this message file to be built, you need to modify your
"CMakeLists.txt" file in your project package accordingly and include this message as a header to your Python
file(s).
Important Notes:
You should use the robot's sensor so that it does not hit the walls/obstacles. You can define a fixed
distance (R) for the robot when it is traveling in left or right direction (i.e. in the x axis). However, do
not define a fixed distance for the robot when it is traveling in up or down direction (i.e. in the y axis).
This should be controlled by the robots' sensors. That is, the robot should understand when it should
turn left/right using its sensor data.
You need to change the world file to change the initial postions and orientations of the robots.
 A. TASK-1: Multi-robot coverage path planning Two robots are located in

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!