Mobile Robot Control 2024 Optimus Prime: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
No edit summary
 
(18 intermediate revisions by 5 users not shown)
Line 1: Line 1:
=== '''<u>Introduction</u>''' ===
We are Optimus Prime, a team of six members applying various control techniques and coding skills to optimize a robot for restaurant environments. Our goal is to enable the robot to efficiently deliver orders from the kitchen to the tables, even when faced with various obstacles. This project focuses on ensuring precise and reliable performance, ultimately improving service efficiency and the overall dining experience.


===Group members:===
=== '''<u>Group Members</u>''' ===
{| class="wikitable"
{| class="wikitable"
|+Caption
|+Caption
Line 7: Line 9:
|Yuvan  Dwaraga||1563793
|Yuvan  Dwaraga||1563793
|-
|-
|
|Wiktor Bocian
|
|1628798
|-
|-
|
|Ramakrishnan Rajasekar
|
|1979027
|-
|-
|
|Ariyanayag Ramesh Skandan
|
|2012618
|-
|-
|
|Abhir Adiverekar
|
|1984136
|-
|-
|
|Suryakumar Hariharan
|
|1974076
|}
|}
== '''Exercise 1 - The art of not crashing''' ==
This exercise aims to enhance our understanding of control techniques and obstacle avoidance algorithms.
=== Solution 1 ===
The odometry and laser data were obtained based on the instructions from the manual, enabling the robot to be aware of its surroundings. Although this sensor data does not provide instructions for the robot to stop or go when an obstacle is on its way, a discussion was held to include a constant safe distance value, which ensures that the robot maintains a safe distance from obstacles and avoids collisions. Loops were also introduced as the robot operates to check whether the obstacles are close to the robot or not. Specifically, if an obstacle is detected within a certain range less than the predefined safe distance (0.5 meters) the robot will come to a halt. This algorithm ensures that the robot can navigate in its surroundings safely.  [[File:MRC dont crash-1.jpg|thumb|Simulation of the robot stopping ]] 
=== Solution 2 ===
Advancements to the previous solution were made by introducing rotation values and forward motion value to enhance the robot's performance. These values were effective when the obstacle is too close to the robot. The stoppage of the robot comes into play and the rotation values allow it to rotate with movement restriction and later it allows the robot to move in the forward direction with constant units. This approach ensures that the robot not only stops to avoid immediate collisions but also actively seeks a safe route forward. Overall, the combination of a constant safe distance, rotation and forward actions allows the robot to perform more efficiently.   
=== Learnings from solution ===
The robot's performance in this case was evidenced in both simulation and in practical sessions. Alterations in the code were made so that, in case of the obstacle detection, the robot was made to move in the x direction in adherence to the safe distance.                                   
[[File:MRC dontcrash.jpg|thumb|Simulation of the robot movement in x direction]]
=== Practical session ===
I am not able to link with videos .mp4 files maybe only jpeg are allowed. Not sure though.
== '''Exercise 2 - Local navigation''' ==
=== '''<u>Artificial potential fields</u>''' ===
==== Motivation ====
Our motivation for choosing the artificial potential field algorithm lies in its effectiveness for real-time obstacle avoidance and smooth navigation. This approach enables our robot to dynamically manoeuvre around obstacles by leveraging attractive and repulsive forces, ensuring efficient path planning.
==== Solutions ====
==== Learnings from each solution ====
==== Visual representation of sim ====
==== Practical video ====
==== Pros and cons ====
=== '''<u>Dynamic window approach</u>''' ===
==== Motivation ====
Our motivation for choosing the Dynamic Window Approach (DWA) method is its ability to optimize both velocity and trajectory in real-time for safe and efficient navigation. This algorithm allows our robot to dynamically adjust its path by considering its kinematic constraints and the surrounding obstacles, ensuring precise and responsive movement.
==== Solutions ====
==== Learnings from each solution ====
==== Visual representation of sim ====
==== Practical video ====
==== Pros and cons ====
== '''Exercise 3 - Global path planning''' ==
=== A* algorithm ===
=== Probabilistic Road Map (PRM) ===
== '''Exercise 4 - Localization''' ==

Latest revision as of 16:05, 20 May 2024

Introduction

We are Optimus Prime, a team of six members applying various control techniques and coding skills to optimize a robot for restaurant environments. Our goal is to enable the robot to efficiently deliver orders from the kitchen to the tables, even when faced with various obstacles. This project focuses on ensuring precise and reliable performance, ultimately improving service efficiency and the overall dining experience.

Group Members

Caption
Name student ID
Yuvan Dwaraga 1563793
Wiktor Bocian 1628798
Ramakrishnan Rajasekar 1979027
Ariyanayag Ramesh Skandan 2012618
Abhir Adiverekar 1984136
Suryakumar Hariharan 1974076

Exercise 1 - The art of not crashing

This exercise aims to enhance our understanding of control techniques and obstacle avoidance algorithms.

Solution 1

The odometry and laser data were obtained based on the instructions from the manual, enabling the robot to be aware of its surroundings. Although this sensor data does not provide instructions for the robot to stop or go when an obstacle is on its way, a discussion was held to include a constant safe distance value, which ensures that the robot maintains a safe distance from obstacles and avoids collisions. Loops were also introduced as the robot operates to check whether the obstacles are close to the robot or not. Specifically, if an obstacle is detected within a certain range less than the predefined safe distance (0.5 meters) the robot will come to a halt. This algorithm ensures that the robot can navigate in its surroundings safely.

Simulation of the robot stopping

Solution 2

Advancements to the previous solution were made by introducing rotation values and forward motion value to enhance the robot's performance. These values were effective when the obstacle is too close to the robot. The stoppage of the robot comes into play and the rotation values allow it to rotate with movement restriction and later it allows the robot to move in the forward direction with constant units. This approach ensures that the robot not only stops to avoid immediate collisions but also actively seeks a safe route forward. Overall, the combination of a constant safe distance, rotation and forward actions allows the robot to perform more efficiently.

Learnings from solution

The robot's performance in this case was evidenced in both simulation and in practical sessions. Alterations in the code were made so that, in case of the obstacle detection, the robot was made to move in the x direction in adherence to the safe distance.

Simulation of the robot movement in x direction

Practical session

I am not able to link with videos .mp4 files maybe only jpeg are allowed. Not sure though.




Exercise 2 - Local navigation

Artificial potential fields

Motivation

Our motivation for choosing the artificial potential field algorithm lies in its effectiveness for real-time obstacle avoidance and smooth navigation. This approach enables our robot to dynamically manoeuvre around obstacles by leveraging attractive and repulsive forces, ensuring efficient path planning.

Solutions

Learnings from each solution

Visual representation of sim

Practical video

Pros and cons

Dynamic window approach

Motivation

Our motivation for choosing the Dynamic Window Approach (DWA) method is its ability to optimize both velocity and trajectory in real-time for safe and efficient navigation. This algorithm allows our robot to dynamically adjust its path by considering its kinematic constraints and the surrounding obstacles, ensuring precise and responsive movement.

Solutions

Learnings from each solution

Visual representation of sim

Practical video

Pros and cons

Exercise 3 - Global path planning

A* algorithm

Probabilistic Road Map (PRM)

Exercise 4 - Localization