Maze Project for the Boe-Bot??? Help!
I am a teacher working with the Boe-Bots for high school and middle school students. I designed a wood maze (approximately 4x6 feet)·for the students to program their boe-bots. We used the maze for a dead reckoning project but now I would like to see if we could use the maze via the infrareds. I need help in directing the students since the maze is a little complicated with mostly 90 degree turns to the left or right. Can someone direct me in the right spot to help me out? What program would be the best to use? The maze is not painted, however the floor is on a white board and the sides which are aprroximately 3 inches are just plain wood.
Comments
The trick with mazes like yours is to experiment with the resistors that go in series with the IR LEDs.· Larger resistors will make the Boe-Bot more nearsighted, smaller ones make it more far sighted.· In the kind of maze you are working with, there's typically a nearsighted sweet-spot that will make it possible for the Boe-Bot to make its way through the maze without getting stuck.·
Another important element is how the IR LEDs are directed.· If they are both pointing straight ahead,·the Boe-Bot·might not see a wall on the side before it bumps into it.· By pointing both·IR LEDs slightly outward, the Boe-Bot should detect both side and front·walls.·
After going through Chapter 8, I've seen some students use extra IR LEDs and receivers looking sideways, and the ones in front looking straight ahead.· Their programs use the distance detection techniques introduced in Chapter 8 to figure out how close the walls are in front and on the sides.·
Another fun way to tackle this job is with the PING)))™ Ultrasonic Sensor and the PING))) Mounting Bracket Kit.
At this point, I can think of a number of other ways to solve the problem.· Some use existing hardware, and others require a variety of extra parts.· All are documented below.·
One thing to keep in mind is that maze and room navigation is not necessarily a trivial problem.· Even university competitions such as the micromouse maze are essentially set up for line following even though they have walls.· Most of the robots have extensions that hang above the walls and actually read the tops of the walls.· It's really more akin to following an electrical tape delimited maze with the QTI Line Follower AppKit for the Boe-Bot.· For anybody looking for a maze navigation project after Robotics with the Boe-Bot, I would recommend using electrical tape and QTI line followers.
Of course, there are also firefighting competitions with room and hallway navigation.· For this kind of maze, I think the PING)))™ Ultrasonic Sensor and PING))) Mounting Bracket Kit·would probably be the most appropriate hardware to simplify the autonomous navigation problem.·
All that said, the task of maze navigation should be doable with the Boe-Bot's infrared, and some of the solutions aren't all that difficult.· I believe that the material in Chapter 7 is better than the material in Chapter 8 for navigating a maze with walls.· I'm not saying skip Chapter 8 though.· Definitely have the students try the activities in Chapter 8.· They are really cool, and they also feature some important pre-engineering lessons.·
Here are some tips for guiding the students through Chapter 7:
Activity #2: Install LEDs that tell you what the Boe-Bot sees.· This will be crucial for making it possible for the students to adjust their Boe-Bot's eyes because the indicator LEDs will tell them when the Boe-Bot does and does not detect the wall.· There is a second crucial element to this activity, and that's ballast interference detection.· Fluorescent lights are notorious for interfering with the Boe-Bot's infrared object detectors.· If a maze is set up under fluorescent lights·that are broadcasting interference, a perfectly good program and circuit will fail in the maze.· That's not good.· So make sure to test the maze area for ballast interference using the section entitled Sniffing for IR Interference in Activity·#2.·
Activity #3: The students can actually run the program·from the first half of·Activity #2, and then take their Boe-Bots with them to the maze. There, they can try·different resistor values and IR LED/receiver angles to get the Boe-Bot to give unique detection signatures for the various features in the maze.· This is a key element for success.· Make sure the students turn the power to the Boe-Bot off before changing the circuit.· Since the BASIC Stamp stores the program in EEPROM, the test program will restart when they turn the Boe-Bot's power·back on, so they won't have to download the program again.· They can stick close to the maze and test their various adjustments.
Activity #4: This activity will be important if you are thinking about trying a solution-B, discussed later in this post.· Reason being, the program demonstrates how to make the Boe-Bot execute preprogrammed maneuvers.
Activity #5: Well,·this is·solution-A.· I've seen it work in wood mazes at a number of Educators Courses.· The key to making it work is Activities #2 and #3, as just discussed.· The walls need to be just outside the IR LEDs range when it's going down the center, and the rest pretty much falls into place.· This solution doesn't really challenge the students, nor does it give them the opportunity to demonstrate their own programming and circuit creativity because it's more of a tuning and tweaking challenge.
The IR detectors can also be adjusted so that the walls are within their detection ranges.· The program will need to be changed, more like Activity #6.·
You mentioned earlier that the Chapter 8, Activity #2 algorithm wasn't working that well.· It can be made to faithfully follow hallways, but coding for intersection detection and analysis is kind of a pain because you have to monitor the control loop for certain conditions, and break out of the same condition has been detected a certain·number of times.··It also requires an extra·level of tuning to achieve success.· Here is a list of some of the tuning issues:
- Ballast interference (Chapter 7, Activity #2, Sniffing for IR Interference section).·
- Chapter 7, Activity #3 resistor selection·can prevent·the distance detection to be too far outside or inside the range of the IR detector.· The distance detection·has an effective range of·maybe two or three inches.· If those·two·or three inches are eighteen to·fifteen inches because the resistor in series with the IR LED was too small, the Boe-Bot won't be able to use it to navigate walls that are only 8 inches apart.··A resistor that's too will cause the whole system to be too nearsighted, and it won't see the walls.·
- Coding - it's more difficult when you have five distances.· Eliminate at least two·or three values from the frequency sweep and make it so that there is a far sighted distance that sees both walls when the Boe-Bot is on the right track, and a nearsighted distance that doesn't see both walls when the Boe-Bot is on the right track.· If the Boe-Bot is entering a T or + intersection, there will be a period of time when neither the near nor the·far sighted distances will be able to see a wall.· The code will then have to use IF...THEN and/or SELECT...CASE to make its navigation decisions, and the techniques in Chapter 7 Activity #4 will help.
Solution-B:Alright, now on to a more reliable distance measurement system.· It will still require tuning, but it·should work better because it's a matter of picking the right resistors (and IR detector angles).··That hard part is that it's a new circuit and the students will have to write their code from scratch and test it until they get it right.· The distance detection circuit measures up to three different distances.· For maximum distance, set both P1 and P0 LOW before sending the FREQOUT signal to P2 (and saving the state of P4).· Your effective IR LED series resistance will be 667 ohms.· For medium distance, use INPUT 0 and LOW 1 before FREQOUT.· The series resistance will then be 1 k.··For close-up, use INPUT 1 and Low 0 will cause an input resistance of 2 k.··The values·R1 = 1 k·and R2 = 2 k·in the schematic are just starting points.· Maybe you really need 5 k and 2.2·k, etc.· Again, it will take some testing with your particular maze.·
·········
Next, there's the question of whether the Boe-Bot is navigating a maze of hallways or a maze of rooms and hallways.· If it is navigating a maze of hallways with constant width, three of these distance detectors (or even just object detectors) should be able to describe the maze for the Boe-Bot.· Note: IR LEDs and IR detectors are inexpensive at www.parallax.com.
·········
If we have hallways and rooms, the Boe-Bot will have to track a single wall at some points.· If the IR object (or the enhanced distance) detectors are used, it will probably take a total of 5 because the Boe-Bot will need two on a side wall at any given time.· Note: the enhanced distance circuit will require 7 I/O pins for all the IR LEDs, but it will only need a total of two resistors.· It will need five more I/O pins for receivers.· That's a total of 12 I/O pins, leaving one for a speaker, one two for the servos, and one for whatever.· With the·new distance detectors, the program can adjust depending on whether the distance from the wall is equal and within a certain range.
·········
Post Edited (Andy Lindsay (Parallax)) : 12/7/2005 2:56:41 AM GMT
Take a look at the Memsic. I think this is what you are looking for and there is a ton of documetation on it's use available for free download at parallax website.
http://www.parallax.com/detail.asp?product_id=28017
Cheers,
Steve
There are some more with links on this page: Stamps in Class "Mini Projects".· One of them is about navigating an incline with the Boe-Bot and the Memsic accelerometer.· The link is in the "Accelerometer + Boe-Bot" section.
One thing about a ramp is that the Boe-Bot can either go over it, or not.··The Boe-Bot can use the accelerometer·to·determine whether or not it's time to back down and look for a way around.· Finding a hilltop is·another interesting challenge with some important lessons built-in.
Post Edited (Andy Lindsay (Parallax)) : 12/8/2005 6:58:56 PM GMT
Is there any way to have the Boe Bot navigate a maze without a QTI line follower kit? I just have the
Robotics with the Boe Bot Kit? The maze is comprised of just 90 degree turns and dead ends, and is not a true
micromouse maze. Please respond soon.
Thank you