You can find the beginning of this project blog here: http://buildsmartrobots.ning.com/profiles/blogs/robomagellan-2012-b...
My first week on the project and I am already behind. I was doing some really exciting work for my real job and putting in some serious hours. I did get a few hours here and their to work on the RoboMagellan robot and I worked on it all day Saturday.
Through the week I was able to wire up the 6x6 chassis and get the speed control and servos installed. I also built a tower on the robot to mount the compass as high as possible.
The Minds-i 6x6 Rover kit is an amazing robot platform. All 6 wheels are driven through 2 gearboxes by 2 motors. The front and back wheels pivot for steering. The chassis is solid but has just enough give to twist and keep all 6 wheels on the ground. The springs on the shocks are adjustable. I set the shock springs to max tension which allows the robot to hold a netbook and batteries without sagging.
Dual Motor Drive - Oh Yea!!!!!
One servo on each side for steering. Adjusting the steering takes some patients, I am still trying to get it right.
Checkout the video in the comments below to see the robot in action. It drove over a 4 inch concrete edge like the edge was not even there. If you listen to the audio in the video, you will here my surprise.
On top of the tall tower is the compass. The compass is mounted high to avoid magnetic interference from the motors.
This week I also ordered the ultrasonic ranging modules for the robot. After significant debate, I decided to go with the MaxBotix MB1000's ( http://www.maxbotix.com/products/MB1000.htm ). Basically it boiled down to cost. I needed 6 of these sensors. I really could not afford more than $26.95 (on sale at http://www.pololu.com ). I really wanted the MB1200 because I think it is the correct sensor for the job, I just could not afford $250.00 in ultrasonic range finders. By going with the MB1000 I was able to buy all 6 for only $162.00 and after adding the LS20031 GPS receiver module my Pololu bill was less than $212. Robotics is tough when you are saving for school.
After spending a few hours pouring over the MaxBotix website (http://www.maxbotix.com/)I have come to the conclusion that they make a really good sensor. The documentation is clear and easy to understand, and their sensor have a ton of great features. I know some of the other RoboMagellan robots use them and everyone I talked to who have used the sensors had only good things to say about MaxBotix. When I get the sensors I plan on running some experiments with them and posting the results.
The MaxBotix ultrasonic range modules come in five different beam profiles (EZ0-EZ4) shown below.
The Ultrasonic range modules are the only form of obstruction detection on the robot. I had two design goals in mind; long range and wide divergence. My design calls for the beam patterns to overlap, so the beam pattern had to be wide to get the complete 120 degrees I wanted using only 5 sensors. I need the distance because this is a fast robot. The further away I can detect an obstruction, the better chance I have of avoiding it. If you notice in the beam patter charts above, for an ultrasonic sensor, range is dependent on object size. The bigger an object the farther away you can detect it. Graphs A. B, and C represent detection patterns for object of 3 different sizes; 0.25 inches, 1 inch, and 3.5 inches. I chose to use the 0.25 inch graph (A) for my calculations. This is a worst case, and natural obstruction include branches that may be only 0.25 inches across. According to the beam pattern plots above, the MB1000 has the best detection range for a 0.25 inch object ( 82 inches or approximately 7 feet ). This is going to be very tight for a robot as fast as the 6x6 but I always have the option of slowing the robot down.
Last Saturday I spent 6 hours laying out a new board for the RoboMagellan Robot. It uses three MSP430G2553's to do GPS/compass navigation, motor control, and high level decision making for the robot. Everything except Computer Vision is done using three 16bit microcontrollers connected together using i2c.