Mobile Robot Control 2023 Group 8

From Control Systems Technology Group
Jump to navigation Jump to search

Welcome to our group page.

Group members

Caption
Name student ID
Eline Wisse 1335162
Lotte Rassaerts 1330004
Marijn Minkenberg 1357751

Exercise 1 : The art of not crashing

Instead of just stopping, we made the robot turn around whenever it came close to a wall in front of it. The video of the bobo robot running our dont_crash script can be found here: https://drive.google.com/file/d/109fDDzf6ou2HHuSZgOicY27pRdOpJs0s/view?usp=sharing.

Navigation Assignment 1

It is more efficient to only place nodes at turning points of the robot (so it can drive straight from node to node), or at a decision point (where the robot can take either of two routes). In between the nodes, the robot will have to drive straight anyway, so it is not necessary to use extra nodes in between. This way the number of nodes is decreased from 41 to 20. Hence, the algorithm will have to explore fewer nodes on the way. This will save unnecessary computations, making the algorithm more efficient.

Figure 1: Efficient node placement for A* algorithm


Navigation Assignment 2

See main branch in repository.

The used approach for this assignment is open space detection. First, it is determined whether the range of the laser data points is within the set horizon. This is evaluated for the laser data over the whole range. If the range of the laser point is larger than the horizon, this laser point is added to the open space. Laser points of the open space that are next to each other, belang to the same open space. Hence, it can occur that the robot observes multiple open spaces. In this case, the robot chooses the widest open space, and drives to the middle of it. The robot will only correct its direction, if the new open space deviates more than 5 laser points from the midpoint of the robot. This, to make sure the movement is smooth and no unnessecary corrections are made. On top of that, if right in front of the robot, no object is present within horizon, it will drive straight for 0.5 seconds, or until it encounters an object. After this 0.5 seconds, or when an object is detected, the open spaces will be determined again. If the robot detects no open space, or is very close to an object it will rotate, in an attempt to find a new open space.


Screen recording of simulation: https://drive.google.com/file/d/1EcfIyBl419EeOkya5rmSvxfzes4J4Fpt/view?usp=share_link