150 likes | 264 Views
Wall-Following Research. Researcher: Benjamin Domingo Mentor: Joey Durham. Objective. The objective of this research project was to build an autonomous robot that would be able to follow a wall. The robot would also have to maintain a certain distance away from the wall for which to follow.
E N D
Wall-Following Research Researcher: Benjamin Domingo Mentor: Joey Durham
Objective • The objective of this research project was to build an autonomous robot that would be able to follow a wall. • The robot would also have to maintain a certain distance away from the wall for which to follow.
Method • Firstly, an intense analysis was performed in an effort to understand the robot perspective. • An understanding of the robot environment was needed in order to proceed with developing a strategy for which to implement on the robot. • An illustration of the environment for which the robot sees is shown in the following page along with a picture of the actual robot in the laboratory.
Figure 1. Robot environment Figure 2. Autonomous robot
Sensor range Environment: A closer look at figure 1. tells us the point of view of the robot. It gives knowledge of what obstacles it may see and cannot see. The sensor data however, has some parameters. These parameters include having the ability of only reaching a 240 degree span, a max range of 5 meters, there are only 683 sensor data point within the 240 degree span, and the frequency of the data is 10Hz.
Method • Now that there was a clear understanding of the environment and the specifications of the robot, implementing a strategy was the next step. • My idea for proceeding with the wall-following problem was to use the concept of damped oscillations and reaching a steady equilibrium.
Method • An illustration of the damped oscillation concept taken from a text book is shown below .
Challenges • Some of the challenges that were met were very difficult to handle. • There were two reference frames that needed to be juggled at the same time. They were the local reference frame of the robot and the global reference frame of the environment. • A thorough understanding of both reference frames and how they correspond to one another proved to be one of the most difficult challenges for which to overcome.
Challenges • Another challenge included a comprehension of the computer language that was used to communicate with the robot. • The use of C language and an understanding of the linux software Player/Stage was necessary in order for my ideas to translate onto the robot. • Another challenge was that of left-handedness and right-handedness. • For example, the robot had to choose whether to follow a wall that came within the 0-120 degree span or the 120-240 degree span. This problem would present itself when the robot would encounter two or more walls within its range of sensor data.
Results • The result of much work in the detail of the programming and understanding the robot fully was successful to a certain degree. • The robot incorporated the damping oscillation concept. • The robot incorporated the idea of range gaps to deal with the problem of right-handedness and left-handedness.
Results • Upon integration of my program in Player/Stage and running a simulation of it, the result is shown below. Here, the robot initially realized that it was too close to the wall. It needs to maintain a distance of 2 meters away and has corrected itself in the future development of its path. • Note that since the wall in simulation is not smooth and contains ridges and bumps, the robot acknowledges these characteristics and imitates them exactly as a result.
Results • Here we see that the robot has understood that there is a “new” wall to follow as it negotiated the turn on the upper right corner. This is a result of the right-handedness method.
Results • In this screenshot, we can see that at this moment in time the robot is negotiating the incline of the wall it is following.
Conclusions • From simulation it can be seen that this method of damped oscillations is a competent one. • A next step in the development of this code is to have it evolve into a more robust form. Having the robot tackle more complicated environments where an erratic piece of data might show up is good next step.
Acknowledgements • Professor Francesco Bullo • Joey Durham, UCSB • Edwards, Henry C. Differential Equations and Boundary Value Problems. Third edition. Pearson Education, Inc. 2004