Lee's BEAM Projects

BEAM - Biological Electronic Aesthetic Mechanical Robotics It is based on the work of Mark Tilden, using Nervous network circuits to design robust, life like robots.

I bought a FRED kit from for $9.

 

 

FRED

 

Here is my finished FRED.  The heat shrink tubing on the motor shafts did not get very good traction.  I cut some small pieces of small size silicone Model Airplane fuel line tubing and pushed it over the heat shrink.  Wow, FRED has traction now.  I had to move the motors to the back of the capacitor because he wanted to flip over.  The first time I showed it to some friends at an Amateur Radio Club meeting one of them asked “ What makes that little wire in the front pop up like that.”  I replied, “Traction.”

 

Mini-Solar Roller

 

i-Sl

 

My local Radio Shack Store just had these I/R remote control cars for $5.  I had to buy a couple.  I do my testing indoors with a 75 watt Flood Lamp because during the winter months we do not get very many sunny days. I did not have to poke the FLED out through the windshield but it lets the capacitor charge up a little higher before firing.  The capacitor is a 0.047F. 

 

LCD Name Badge

     

 

I found this LCD Name Badge circuit designed by Wilf Rigter (Thanks Wilf) using a 74HC240 IC.  Although the LCD has 6 digits I only needed to use 4 for my name and my Amateur Radio Call Sign. That is why I glued the Solar Cell to the front.  It helps protect the Solar Cell.  Then I added a magnetic clip from an old plastic Name Tag to the back.   My last name of Olson would have worked too.  The circuit and directions are at http://www.geocities.com/leemon1/Bots/LCD/lcdname.htm   I added a 1.5 Farad capacitor to get charged up in good light so it would work. Sometimes the display would hang when turning on in a dim light and going to a brighter area so I added the on-off switch to use as a reset switch.

 

Pummer Bug

 

Working as Technician for a School District we replace a lot of Apple Pro Mice because the wires like to break right where they go into the mouse.  So I decided to recycle the nice clear case into a Pummer Bug.  I used a piece of masking tape to make a window for the solar cell and a friend sand blasted the insides to frost the plastic.  I drew the wings in Microsoft paint.  I printed them out and made them into a transparancy.  The kind schools use on overhead projectors.  I used a standard pummer circuit but charge a pair of 280mah button shaped Ni-Cad batteries. The tip of the superbright LED was filed flat turning the output from a spot in to a flood, filling the whole back half of the bug.  The eyes were made with faceted plastic beads and the legs are #14 solid insulated wire. A little caulk to seal the bottom seam and he is ready to live outside in a flower bed.

 

Picaxe 08M2 2 Servo Walker

I combined 2 hobbies of mine, BEAM Robotics and the programmable Picaxe chip. It walks across the floor and reverses and turns when it senses something in front of it.  The 08M2, for $2.85, has 5 input/outputs with 2K of program storage and is a lot of fun and easy to work with.  I used less that 500 bytes to write my Servo Walker program.  The Infrared Proximity Sensor, the red circuit board, was $8 from eBay as were the two 9g Micro Servos for a total of $4.50. I do not know how the Chinese can make, sell, and ship to us so cheap. The Battery is a 3.7 volt Li-Ion cell phone replacement that I got for $3 and the universal Li-Ion charger was $6.50 which I use for batteries in other projects.  Everything else I already had. The legs ar .055" piano wire with computer modding wire loom and 1/2A model airplane silicone fuel line for the feet. The Picaxe is programmed in a form of BASIC that is compiled and dumped in to the chip.  The program is below the photos and the video.

   

    

 

 

 

'     Picaxe 08M2 Two Servo Walker Code
'     By Lee Olson
'     Servos don't center the same
'     Thats why the difference by 2

              servo 1,92                'Init 92 rotation
              servo 2,100              'Init 80 rotation
main:
              let b1 = 92               'FRONT SERVO CW
              let b2 = 122             'FRONT SERVO centered
              let b3 = 152             'FRONT SERVO CCW
              let b4 = 100             'REAR SERVO CW
              let b5 = 120             'REAR SERVO centered
              let b6 = 140             'REAR SERVO CCW

              let b7 = 2                 'Slow the Servos

              let b11 = 0

              pause 2000

rear:
              for b9 = b4 to b5                            '100 to 120
              servopos 2,b9
              pause_int b7
              next b9

              let b11 = 1

              for b9 = b5 to b6                             '120 to 140
              servopos 2,b9
              pause_int b7
             
              let b11 = 2

              for b9 = b6 to b5 step -1                '140 to 120
              servopos 2,b9
              pause_int b7
              next b9
              let b11 = 3

              for b9 = b5 to b4 step -1                 '120 to 100
              servopos 2,b9
              pause_int b7
              next b9
              let b11 = 0
              goto rear

start1:


front:

p1:
              if b11 <> 1 then p1

              for b10 = b1 to b2 step 2               '92 to 122
              servopos 1,b10
              pause_int b7
              next b10

p2:
              if b11 <> 2 then p2

              for b10 = b2 to b3 step 2               '122 to 152
              servopos 1,b10
              pause_int b7
              next b10

p3:
             

              for b10 = b3 to b2 step -2               '152 to 122
              servopos 1,b10
              pause_int b7
              next b10

p4:
              if b11 <> 0 then p4

             
              servopos 1,b10
              pause_int b7
              next b10
              if pin3 = 0 then goto reverse_              ' sensor input
              goto front


reverse_:                            'and turn

              let b1 = 97                              'FRONT SERVO CW and turn
              let b2 = 122                            'FRONT SERVO centered and turn
              let b3 = 147                            'FRONT SERVO CCW and turn
              let b4 = 80                              'REAR SERVO CW and larger gate
              let b5 = 110                            'REAR SERVO centered
             

              let b7 = 1 'speed up the Servos

              for b14 = 1 to 15

p1r:
              if b11 <> 1 then p1r

              for b10 = b3 to b2 step -2     '147 to 122
              servopos 1,b10
              pause_int b7
              next b10

p2r:
              if b11 <> 2 then p2r

              for b10 = b2 to b1 step -2      '122 to 97
              servopos 1,b10
              pause_int b7
              next b10

p3r:
              if b11 <> 3 then p3r

              for b10 = b1 to b2 step 2      '97 to 122
              servopos 1,b10
              pause_int b7
              next b10

p4r:
              if b11 <> 0 then p4r

              for b10 = b2 to b3 step 2      '122 to 147
              servopos 1,b10
              pause_int b7
              next b10
              next b14
                                                            'Forward no Turn


              let b1 = 92                              'FRONT SERVO CW
              let b2 = 122                            'FRONT SERVO centered
              let b3 = 152                            'FRONT SERVO CCW
              let b4 = 100                            'REAR SERVO CW
              let b5 = 120                            'REAR SERVO centered
             

              let b7 = 2 'Slow the Servos

              goto front


 

Please send your comments or questions to:

mr.olson@charter.net