David Bullock - mail@davidbullock.uk

II. Robots - Mazebot trials

Successful Test Footage (3'25")
This is a video showing the robot successfully completing the maze. In this footage you may notice the robot incorrectly identifying a dead end. Fortunately it does this twice - a case of two wrongs making a right.

The Mazebot is essentially a tracked version of the Cambot with two light sensors instead of bumpers. The most significant difference is in the programming as it was necessary to develop a strategy to contend with dead ends. Coping with dead ends per se is actually easy, you just get the robot to turn 180°. The real problem is getting the robot to detect that it is at a dead end to begin with, which is more difficult than it sounds. To a robot only equipped with light sensors a dead end appears exactly the same as every other wall. However, if it uses the same strategy it does with every other wall it will remain stuck indefinitely. I eventually solved this problem by measuring the time between left and right turns and if this was sufficiently short and happened repeatedly for a sufficiently long period of time, I got the programme to switch into “dead end” mode, i.e. rotate 180° and move forward. Though this strategy was not foolproof and occasionally resulted in false positives (see video below) it increased the likelihood of the robot completing the maze considerably. What I found most interesting about this was the process I went through to arrive at this solution. This was to tweak this or that parameter and continually retest. If the robot was more successful I would tweak that parameter further until the return was diminished. If it was less successful I would reset the parameter to its original setting and try something else. The difference between a successful and an unsuccessful solution can be very small, often no more than 0.1 of any given increment.