Friday, January 24, 2014

Office Bot

I decided to build an autonomous bot to rove around my office.  The idea is to use this as a platform to develop and test new ideas for autonomous systems.  These systems will eventually be installed in our Aerobot.  This includes the ability to communicate with the internet using a wireless network.
 
After researching various platforms, I decided upon the Magician chassis at just $14.95 from Sparkfun and it includes two DC motors and gearboxes.  I will be using an Arduino Uno as the controller and this chassis is an appropriate size and provides and good amount of space with its two-shelf design.  This will accommodate the Arduino, a motor shield, battery and a small breadboard for prototyping as well as Sonar, WiFi and PIR sensors.

Assembling the chassis was a little bit tedious (especially for those of us with fat fingers) as there are numerous screws and holes to align.  That said, I am happy with the finished product.  It is sturdy and has ample room to mount sensors and controllers.  Moreover, its design allows one to readily attach additional shelves.  The two wheels plus caster design with a built-in 48:1 gearbox will enable it to roam smoothly along the carpeted floors of my office at a good pace and will also allow for maneuvering in tight spaces.   The Magician chassis also comes with a battery holder (4 x AA batteries) which provides 6V (which will power the Arduino Uno controller).  This was mounted on the lower shelf where it is tucked away out of sight (this will likely make the batteries a little tedious to change in the future as it will require disassembling the shelves).

Additional posts are provided with the chassis kit which are used to mount the controller board - though mounting the Arduino Uno to the shelf required a little jockeying around with the post, but such is the beauty of the shelf design; it provides tremendous flexibility.

So What's The Goal?

 The goal of this project is to build a robot the can autonomously roam my office.  While this goal is a rather vague and open-ended one (due to the fact that one can always add additional "intelligence" to the vehicle) suffice it to say that Phase 1 of this project should seek to achieve the following:

  1. COMMS:  Establish wireless communication ("comms") between the bot and a "ground station" computer.  Initially, an PC in my office will serve as the ground station.  The PC will thus be able to send instructions to the bot. 
  2. GUIDANCE:  Create a user interface for sending guidance instructions to the bot there by instructing it where to go.  While a general framework will be set up for this, for now only the the commands "forward" and "stop" will be implemented in Phase 1 (it is important with any project always to set up your "STOP/OFF" button first!)
  3. AUTONOMOUS CONTROL:  Using a combination of sensors and intelligence algorithms, the bot must be able to navigate the office while avoiding obstacles.  
So the idea is that if one commands "forward" on the PC, the bot should drive "forward" but should stop and turn in order to avoid obstacles (mostly cubicle walls for now).

No comments:

Post a Comment