A Robotics Project Page
Google
 
Web    www.PhilBot.com
My other sites
  • OurCoolHouse
  • Phil's Resume
  • Web Portfolio

  • [Home] [Projects] [Hardware] [Software] [Books] [Links] [Downloads]


    BOB: Construction.          [Back to BOB index]

    A fun part of any robotics project is building up the controller board and mounting it onto the chassis.  In the case of BOB, the board IS the chassis, so it's really the only part that has to be built (aside from the Twin Motor Gearbox).  By the time I created this page, BOB's controller board was at Version 1.1, which basically means that I found enough bugs fixes and new features that I wanted to add, to make it worth while designing a new board.  Since it only costs $60 to get 3 boards made for testing, it's really not much of a tough decision.

    I only found a few faults with my original V1.0 board:  I had left off a critical pull-up resistor from the Serial EEPROM data line, some of my pad hole sizes were too small for their components, and I'd gotten the I/O lines 8-15 reversed on the expansion connector.  The last problem wasn't critical for me, but I really wanted to stick with the "standard" pinout for this connector so I could mix & match other vendor's OOPic I/O boards.  So it was just easier to re-do those sections of the board.  While I was at it I added some other stuff. I added four general purpose status LEDs, a "Cosmic Wedgie" jumper (so you don't need to pull the EEPROM if you mess up the program) and some other subtle layout tweaks.

    Here's the sequence I used to build up the board.  Click on the pics to zoom in.
     
    The first thing I like to do is to build up the voltage regulator section of the board.  On BOB this comprises the power connector,  on-off switch, voltage regulator and filter capacitors. 

    Since I'm using an efficient voltage regulator (TC1262-5.0) and a relatively low battery voltage, the regulator doesn't generate a lot of heat.  Nevertheless, instead of adding a heat sink, I've made the ground plane under the regulator quite large, and I actually solder the regulator to the board.  This increase in conductive mass helps to keep the regulator cool, and I also use it to help keep the motor controller cool as well.

    BOB Robot controller board with Power circuitry installed
    Once the regulator section is built, I test it to ensure that it's working. 

    I have a 6xAAA NiMH battery pack that's wired to provide two voltages.  The battery connector has a common ground (at pin 1), the center terminal is the 6 cell voltage, and the end terminal (pin 3) has the 4 cell voltage.  The center terminal is used with the regulator to power the logic circuits.  I've included two voltage test points near the regulator, right next to the 0.1 uF decoupling capacitor.  I always like to add these pads just in case I need to attach a 'scope ground for advanced testing, or just hook up a logic probe.

    Here you can see that the regulator is providing 4.98 Volts, which is just fine for digital circuits.

    Once the power is up and running, I usually add all the passive components, like resistors and capacitors. 

    The nice roll of blue masking tape helps to keep the board raised while adding components.

    Ho Hum... what's next?

    After all the axial passives are in, I move on to the electrolytic (can) capacitors, diodes, switches and Integrated Circuits.

    The components have been grouped to make it easier to lay out the circuit traces, so similar functions stick together.  For example, the RS-232 converter IC is used for the serial port, so it's up by the DB9 serial connector.  The motor driver chip, voltage filter caps and spike suppressors are all in the lower corner where the motor connector will go.  Also note that the resonator (orange part with three legs) is actually under the socket for the OOPic processor. 

    If your were observant, you may have noticed that I on the V1.1 switched to a right-angle serial connector.  This orientation makes it easier to leave the connector in, and run BOB upside down :)

    Next I flip the board over and add the Optical encoders (that measure wheel rotation) and their pull-ups.  The optical encoders have a beveled edge at the front (pin 1) so they are easy to get oriented.  The bevel actually worked in my favor, helping to avoid the guts of the gear train.

    You may wonder why I mounted the resistor networks on the underside of the board.... This was to leave the top of the rear board free to mount the battery pack.  It occurs to me that I should also mounts the three 0.1 uF caps on the underside too.

    I'm still trying to find a better way to mount the battery pack, but for now, Velcro will have to do.

    BOB Robot controller board showing optical wheel encoders.
    The InfraRed Obstacle and Line sensors are added next. 

    BOB has mounting pads for three Sharp Obstacle sensors above the board, two at front, one at rear.  These sensors have a digital output that goes low when an obstacle is less than 40cm away.

    The Fairchild line sensors mount under the board and are extended to be about 1/4" off the floor.  I've provided analog inputs for three sensors, but if I only want two (for SUMO applications) then I can just install a resistor in place of the middle IR emitter.  I also added two sets of mounting pads for the two outer sensors.  This lets me mount them close in (for line following) or far out (for SUMO).  The ones in the picture are in the outer position.  The photo on the main BOB page shows three sensors mounted in the "close in" position.

    One modification on the V1.1 board was that I staggered the mounting holes for the line sensors.  So, instead of being in-line like you might expect, each pair of wires make a small front-back triangle.  These pairs of triangles actually add stiffness to the assembly which makes them harder to bend out of place.  Any 'bot that needs more protection up front will need to add some metal or plastic bumper... but the exact shape depends on the application.
     

    Front view of BOB robot showing Sharp obstacle sensors and Fairchild Line sensors.
    The only remaining part to add is the motor connector.  This also mounts under the board for easy wiring.

    Now the board can be bolted to the Tamiya Twin Motor Gearbox using the two 1/8" spacers which come with the TMG kit.  These spacers combine with the hole spacing on the BOB board to perfectly align the Optical encoders with the slotted gears in the gearbox (see my [TMG page] for details of these gear slots) .

    In this photo, I've configured BOB for SUMO mode.  This includes the following modifications to fit the 10cm x 10cm size requirement:

    • The TMG has been configured for High gear reduction.  This creates a shorter wheelbase and higher torque.
    • The TMG wheel shafts have been shortened by 1/4" each to reduce the width of the 'bot.
    • BOB has been trimmed down in width at the rear to provide ample wheel clearance.  There are trimming guides on the board to show where to do this.
    The last thing to add is the Ball Caster that supports the front of the robot. 

    This is mounted to the PCB using a single bolt through the Regulator mounting hole.  The caster is actually supported by a three post assembly.  The mount must be rotated such that two posts are at the front, and the third central post sits between the two gear motors.  It's a snug fit, but hey, BOB's a small bot.

    But wait... I forgot the LED's.  I need them for my standard test program....

    Don't worry... I'll add them right away :)

    The Next Step

    Now that you've seen what it takes to build BOB... how about some [software]. 

     

     

    Web content is copyright © PhilBot.com 2005, Deep Creek Lake, MD.
    Contact: Phil Malone 301.387.2331, webmaster@PhilBot.com