Overview

Problem Overview:

The goal for this project is to develop a mobile robot capable of exploring a maze, locating a candle in one of the rooms of the maze, and extinguishing the flame in the minimum time.



Design Constraints:

   Basic Rules: [1]
  • The robot may be programmed and built using any hardware or software. 
  • The robot must fit into a 12.25" by 12.25" by 12.25" space and keep within that boundary during operation, meaning the robot cannot transform into something larger after being activated.
  • The candle will be placed randomly within any of the four rooms of the maze and will measure anywhere between 6 and 8 inches tall.
  • The robot must run fully autonomously (no R/C)
  • There may be no wire connection running from the robot to a external computer, but a wireless connection is allowed as long as the robot remains autonomous
  • Before extinguishing the candle, the robot must be within 12" of the candle. This is marked by the placement of a white piece of paper in the shape of a quarter circle with a radius of 12" placed in the corner with the candle in the center.
  • The robot is not allowed to look over the walls of the maze at any time
  • The robot is not allowed to climb over the walls of the maze
  • The robot is allowed to touch the wall at any time during the run
  • The robot will always start at the home position, designated as the circle with an uppercase 'H' in the center in Figure 1.1 below, and may be placed in an orientation of the contestant's choosing.
  •  The candle will be placed in either of the two corners across from the entrance of each room and never in the third corner next to the entrance.
  • Each robot has 2 opportunities to locate and extinguish the candle. A robot capable of extinguishing the candle both times will have a final score equal to the average of the two scores. Robots that can successfully extinguish the flame both times will be rated higher than those who can only complete the task a single trial, regardless of run times.
  • It must be clear to the judges that the robot has located and identified the candle. This can be signified by having the robot emit some sort of sound or flash an indicator lamp. 
   Arean Layout: [1]
  • Figure 1.1 shows the dimensions of the arena, a 248 cm by 248 cm square.
  • The floor of the arena is painted black.
  • The walls are painted white and are 10" high.
  • The walls of the maze are 3/4" thick.
  • The 'home circle', designated with the uppercase 'H', is 12.25" in diameter and is solid white poster board.
  • At the entrance of each room there will be a white strip of tape 3/4" thick spanning across the entire entrance.
  • The darkened areas of the maze signify the possible placement of carpet within the maze.
Figure 1.1: Fire-Fighting Competition Arena Setup [1].



Pre-Existing Solutions:

The contest has been in existence for several years. One such example is the Trinity College Fire-Fighting Competition that has been running for the past 18 years [2]. Since then, there have been many different approaches taken by contestants in order to complete the task. The most common type of robot, in terms of design, is similar to one built by Ericson Mar of the Cooper Union for the Advancement of Science and Art [3]. See figure 1.2. These types of robots feature a two-drive wheel design with a third caster wheel that allow for easy turning to make navigating the maze much simpler [3]. This design also utilizes an array of distance sensors in order to give the robot the hardware to get a firm grasp as to its movement and orientation as it progresses through the maze [3]. Mar's design uses a fan to blow out the candle [3], but the Trinity College rules also mention the use of non-air based means of extinguishing the candle [2]. Some of these include, but are not limited to using a carbon dioxide gas, a water gun, or a wet sponge to extinguish the flame [2].



Figure 1.2: Ericson Mar's fire fighting robot [3].


In the Problem Overview section above, it states that a "mobile robot" must be developed, but does not limit to only robots on wheels. The Trinity College competition has actually added an entire sector of their competition devoted to robots that use non-wheel based locomotion [2], namely walking or crawling robots.


Design Goal:

The robot's design will feature a circular chassis with two drive motors and a single caster ball in order allow for tight zero point turns. There will be three levels to the chassis: the bottom level for housing the motors, battery, and a few spots for sensors, the middle level for housing the microprocessor and more room for sensors, and the upper level for the extinguishing mechanism, flame sensor and sweep servo, and the LCD screen. In terms of detecting the candle's flame, the goal is to minimize time spent searching the room by having the detection sensor attached to a servo motor, a motor limited to a strict angle of movement usually 0-180 degrees. This will allow the robot to stay in place and have the servo move the sensor around in order to scan the rooms. This will also eliminate any chance for error in terms of the robot loosing its bearing if and when it needs to exit the room since it did not detect the candle. Another key feature to the robot will be the extinguishing mechanism. It will rely on a propeller driven by a DC motor and will produce enough wind power to blow the candle out.


Since the constraints are loose in terms of what the robot can be made out of and programmed in, there are few factors that will reduce what can and cannot be on the robot. The most obvious limiting factor is the 12.25" box the robot must fit in. Another factor that will come into play is the presence of carpets since they will make it harder for a robot to move and could possibly cause the motors to stall if they do not have enough power to keep the robot in motion. 






Algorithm Design:

The algorithm that controls the robot is heavily based on wall following to navigate them maze. The wall following algorithm uses the difference between an initial distance value from the wall using a ultrasonic sensor and begins to move forward and update the current distance. The difference between the new distance and the initial determines the differential between the two drive wheels. For instance, if the initial distance is 15cm and after moving for a bit the distance is observed to be 10 cm, the robot will calculate a difference of -5cm and begin to move away from the wall by increasing the power of the right wheel proportional to the calculated difference. This wall following algorithm allows the robot to handle inside curves when traversing the maze. At the entrance of each room, there is a strip of white tape that designates the area as a door. To stop the robot from wall following its way into the room, the algorithm also continually updates the change in light value from a light sensor. This sensor is placed close to the ground and every cycle through the wall following differential drive code, a delta-light value gets updated and lets the robot know when it has passed over a white surface in comparison to the black floor. Once it has observed this change, a servo pans the flame sensor 0-180 degrees to scan the entire room the robot just entered and compares the current sensor reading to the highest taken so far and then compares the highest reading taken over the 0-180 degree range and compares it to a set threshold. If the maximum flame sensor reading is above the threshold then there must be a candle in the room. The robot then proceeds to align itself with the candle and move forward until the white quarter circle is observed and then blows out the candle. If there is no candle detected, the robot turns and wall follows until the next white line is reached and repeats the process. Figures 1.3 and 1.4 show a more detailed representation of the algorithm. Figure 1.5 shows the path the robot takes as it moves through the maze, as well as the order in which it searches the rooms. 


Figure 1.3: Main section of algorithm.



Figure 1.4: The two sub-commands called by the main algorithm above.


Figure 1.5: Each path is color coated to signify the separate parts of the code that are required to move from room to room.

Project Deliverables:

This project will result in a fully autonomous, mobile robot capable of successfully wall following throughout the maze to navigate from room to room, detecting the presence of flame, and extinguishing the flame when detected.




Project Schedule:

  • Weeks 1 - 3: Overall introduction to the hardware and software being used to build and program the robot
  • Week 4: Sensor characterization, narrowing down final design of both the mechanical robot as well as the program's algorithm
  • Week 5: Begin constructing the robot making note of how the slightest change may have an adverse effect on how the algorithm will flow
  • Week 6: Construction continued (extra emphasis on how the algorithm and mechanical robot coincide)
  • Week 7: Solid 'draft' robot capable of navigating the entire maze
  • Week 8: Approach final robot design and programming, minor debugging to finish up
  • Week 9: Minor debugging - close to finished product
  • Week 10: Finished product

No comments:

Post a Comment