BEAM Applications


Posted on Thursday, July 12th, 2007 at 11:49 am by Chris Turner

Theory of operation (How does it work?)

The Servocore was created to act like a standard Bicore but instead of controlling a DC motor, it controls a servo. A standard servo works on the basis of pulse width modulation, which is a pulsed signal sent to the servo. The longer the pulse, the greater the rotation the servo tries to attain. When the pulse “shrinks” in duration, the servo rotates the other direction. The Servocore works using 3 Bicores; two to set the left and right rotation limits, and one to regulate the time interval between rotating to these left and right limits.

On the BEP Servocore board, you’ll find two 20K potentiometers that control the end stop positions. R8 controls how long it will wait to go between these positions. The signal that controls the time for left/right positions of the front servo are also sent via an IMx signal multiplexer (reverser) to the rear Servocore. When the walker tactile sensor activates the IMx, the IMx inverts the signals so the phase between the front and back servos is shifted, causing the walker to reverse.

Circuit Diagram:

BEP02-Servocore_schematic.gif
Not crazy about bitmaps? Us neither. Try a nice, vector PDF file!

Construction procedure:

  1. Gather all your parts:

    You can get all the parts you need here.

    Parts List:

    • 2 - Sc1 BEP boards
    • 1 - IMx BEP board
    • 1 - CHG BEP board
    • 1 - 25c BB1 BEP board
    • 2 - BEP Leg mounting pads including 6 mounting screws
    • 2 - Pair of 3mm Sintra cut outs to hold the servos at a 45 degree angle to each other (change to suit your preference)
    • 2 - 74HCT240 for the Servocores. These must be the HCT versions to work properly.
    • 1 - 74AC240 for the IMx multiplexor. For this project we also used a HCT version for consistency (makes no matter to the IMx operation).
    • 4 - 2N3906 or 2N2907 transistors
    • 4 - 0.47µF capacitors
    • 8 - 0.1µF capacitors
    • 2 - 22µF capacitors for power filtering
    • 4 - AAA Ni-Cad batteries
    • 2 - Dual AAA battery holder
    • 1 - 6.8µF capacitor (Backup timer cap)
    • 6 - LEDs, All the same colors or all different. You decide!
    • 2 - 16 inch pieces of thick copper leg wire (8ga solid)
    • 8 - Sip sockets (for easy resistor swapping)
    • 2 - Servos, must be unmodified, with brains intact!
    • 2 - Tactile sensors
    • 1 - Power switch
    • 1 - 1.3mm Barrel jack (optional for charging batteries)

    Resistors (Not all shown in image)

    • 4 - 20K potentiometers (Sets limits of servo travel)
    • 10 - 1K resistors
    • 6 - 100K resistors
    • 2 - 10K resistors
    • 2 - 47K resistors
    • 2 - 1.5M resistors (Slave value resistors)
    • 2 - 100 ohm resistors (Sets charge current limit)
    • 1 - 470 ohm resistor
    • 1 - 1M resistor (Sets backup time)
    • 1 - 2.2M/2.4M resistor (Master Bicore frequency resistor)

  2. Prepare the BEP boards

    BEP02-BEP_Board-DSCN1803.jpg
    BEP02-BEP_strip-DSCN1827.jpg
    BEP02-BEP_strip2-DSCN1831.jpg

    Separate the boards needed to build the walker. It works out that the needed boards are located right in the middle of the full BEP board. Set the snap line on a table edge and apply pressure until the score line starts to break. Do this to separate a column consisting of an IMx, a BC1, another IMx followed by a pair of Sc1’s, and at the very bottom is a quarter sized BB1 and a CHG board.

    To build this project, all that is really needed is the IMx, a pair of Sc1 boards and the bottom BB1 and CHG boards. The top two boards can be broken off. Don’t forget to include a pair of leg mounting pads!

  3. Populate the BEP modules

    BEP02-Populate-DSCN1868.jpg
    BEP02-BEP_Topside-DSCN1878.jpg

    Now we begin to populate the boards. Feel free to use chip carriers instead of soldering the chips directly to the PCBs. Please make careful note that 74HCT240 chips are used, not the 74AC240 chips (except for the Imx if you wish). The Sc1 Servocores will not work properly with 74AC240 chips! This is due to the internal wiring of the AC style chip. You cannot make Bicores running at different frequencies on the same 74AC240 without them starting to interfere with each other. This isn’t a problem with the HCT version (but the HCT doesn’t have the output current the AC does).

    Only half of the IMx board is populated, and the tactile sensors will be attached in parallel so when either sensor is triggered, it will follow the same behaviour.

    Pin sockets have been placed in the following positions: R4 on the IMx, R8 on both Sc1’s and 2 pins on the BB1 board.

  4. Servocore installation detail

    BEP02-Close_Sc1-DSCN1871.jpg

    This is a close up shot of the Sc1

  5. IMx Multiplexer installation detail

    BEP02-Close_IMx-DSCN1893.jpg

    This a close up shot of the IMx. Take note that only half of the IMx is being used, as we’re only swapping two signal lines, not four.

  6. Body Construction

    BEP02-Sintra_servos-DSCN1907.jpg
    BEP02-Sintra_glue-DSCN1908.jpg

    Let’s switch tracks and work on the body of the walker. The sintra plastic suppot is cut at an angle of 45 degrees, and the servos glued to the sintra with superglue or epoxy. The 45 degree angle was chosen to give the walker a good climbing ability combined with decent speed. Want more speed? Lower the angle so the servos are almost on the same angle. More climb? Make them 90 degrees to each other!

  7. Brain meets body!

    BEP02-Angle_profile-DSCN1935.jpg
    BEP02-Angle_close-DSCN1931.jpg
    BEP02-JumperVcc-DSCN1934.jpg

    Now comes the marriage between brain and body. The front IMx Board will need to be angled at 45 degrees to match the angle of the front motor. This is accomplished by breaking the board at the score line angling it upwards then re-enforcing this break by soldering leads between the two boards. Don’t glue the boards down yet, we still need to run a few wires under the board.

    Take note that there is a jumper in the middle connecting the +Vcc line from one module to the next, and a solder bridge connecting the two ground pads on the corners. These are necessary to electrically and mechanically attach the two boards together.

    Another jumper needs to go between the +Vcc lines of the two Sc1 boards. Most boards already share a common ground, but to provide power to all boards at once, a jumper needs to be in place connecting all the +’s together.

  8. Connecting modules - Front Sc1 to IMx

    BEP02-Wire_Sc1-DSCN1946.jpgBEP02-Wire_IMx-DSCN1949.jpg

    Once the board is set at the angle to match the front motor, we need to run five (5) wires between the BEP boards. The first pair of blue wires connect the output of the master Bicore to the input of the IMx.

    The top image shows the connections to the outputs of the master Sc1.

    The bottom image show the connections to the inputs of the IMx.

  9. Power / Charger

    BEP02-Switch_Jack-DSCN1884.jpg

    The last wire (white) hooks up the power to the CHG this allows the power to be switched on and off. This wire runs from the center +Vcc pad on the rear Sc1 to the pad right beside the pad marked Batt +.

  10. Initial Servocore testing

    BEP02-Close_test-DSCN1994.jpg
    BEP02-Sevo_test-DSCN1990.jpg

    It’s a good habit to test the modules before it’s too late to fix them. Just for testing purposes, insert a 3 pin header into the servo hookup on a Sc1 board. This pin header does not need to be soldered in, light pressure should be enough to make electrical contact.

    Choose an arbitrary value to use for the back and forth oscillations (2M works fine) and install it in the spot marked R8. Power will also be necessary to test the board, so use a quad pack of AAA batteries or attach to a power supply delivering 5V to the center rail (+Vcc) and the corner edge (-ground).

    If your test is successful, your servo will jitter, and rotate to one position, wait, then rotate back.

    While we’re testing, try force triggering the IMx to make sure its swaps the Sc1 signals. Do this by shorting the large rectangular pad near the top left and the smaller pad near the middle.

    If nothing is working, skip ahead to the troubleshooting section at the bottom. Don’t progress further until your modules are behaving like they should be!

  11. Mounting brains to the body

    BEP02-Board_fitting-DSCN1924.jpg

    If everything appears to be working with the brain, you can attach it to the body. You may want to hold off on gluing down everything to make soldering a bit easier.

  12. Attaching the rear motor to the back Servocore

    BEP02-Wire_servo-DSCN1998.jpg

    Attach the rear motor to the back Servocore. The white wire goes to the square pad, red wire goes in the middle, black goes to the far left pad. If in doubt, the connections are marked in text on the board.

  13. Attaching the forward motor to the front Servocore

    BEP02-Wire_servo-DSCN2243.jpg

    Solder the front servo motor connections in the same manner you soldered the rear servo in the previous step.

    This image also shows the ground connection from the battery to the PCB (detailed in the next step).

  14. Connecting the battery pack negative lead

    BEP02-Ground_batteries-DSCN2240.jpg

    Wire up the negative side of the battery pack to the ground side of any BEP board, but go for the closest point available. Less wire used means more voltage available to the circuit as less voltage is dropped across the wires.

  15. Wiring up the battery packs in series

    BEP02-Series_batteries2-DSCN2230.jpg BEP02-Series_batterys-DSCN2228.jpg

    Run a wire between the two battery packs, connecting them in series. This changes a pair of 2.4V packs into one large 4.8V pack.

  16. Connecting the battery pack positive lead

    BEP02-Wire_Batt-DSCN2236.jpg BEP02-Wire_Batt2-DSCN2233.jpg

    The second image shows the red wire from the battery pack goes to the pad on the CHG board marked as “Batt +”.

    At this point all electrical connections are made and flipping the switch should start the motors moving. Make sure that the batteries have a sufficient charge and that some default biasing resistors are in place. For default values try 1M for the IMx reverser, 2.4M for the suspended master resistor and 1.5M for the slave value resistors.

  17. Legs

    BEP02-Led_solder-DSCN2212.jpgBEP02-Leg_mount-DSCN2222.jpg

    So the walker is now only missing one vital component… LEGS!

    Start by stripping a section 1.5″ across in the middle of the leg wire, then solder on the leg mounting pad. As can be seen in the image, clipped resistor leads were used to tie down to keep the leg from moving while soldering. Due to the large metal mass of the copper leg wire, we recommend using a high-power soldering gun for this step. After the leg is soldered, screw down the mounting pad to the servo horn, then screw the servo horn onto the servo. Try to arrange the servo horn so it sits approximately 1/2 through the full servo left/right travel arc.

  18. Walker leg shaping / Servocore setup

    BEP02-Side_profile-DSCN2190.jpgBEP02-Front_profile-DSCN2192.jpgBEP02-Back_profile-DSCN2187.jpg

    Walker leg profiles are bit of a black art. The longer you experiment with it, the better you’ll get. For this walker, we used the following recipe:

    Front leg first bend 1 inch from servo horn, second bend 3.5 inch, last bend to ground 3 inch. Back leg bend 3.25 inch from the leg mounting pad bend from ground is 4.25 inch. Rubber feet were added to the leg contact point to provide better grip.

    With this basic leg shape in place, turn on the walker and watch it flail about. Using the Sc1 trimpots, tune the left and right rotation limits for each motor so that they’re approximately the same. When you have the same amount of left/right rotation, your walker should be able to move in a generally straight line. If not, tweak the leg geometry and the rotation limits.

    When it’s travelling straight, try changing the master bias resistor on the forward Sc1 to make the duration between leg left/right movements faster and slower. You’ll be surprised at what a difference to the performance it will make! Experiment, and have fun with the tuning process.

  19. Tactile sensors

    BEP02-Close_tactile-DSCN2167.jpgBEP02-Front_tactile-DSCN2178.jpg

    Now it walks great, but attempts to go through walls instead of backing away… we need some tactile sensors!

    This is one way of doing the tactile sensors: the spring is part of the whisker that gets soldered to the large ground pad, and the brass pin is soldered to the enable pad. When the enable pad gets pulled low (i.e.: connected to ground) the IMx is enabled and will swap the signal polarities to the rear Servocore. Heat shrink tubing is used to adjust the sensitivity of the tactile sensor and also to help prevent false triggering by isolating more of the pin from the sensor.

    The lower images shows the pin is positioned in the middle of the spring whisker. Whichever way the spring gets deflected it will cause it to hit the pin, causing the walker to kick into reverse!

  20. Complete!

    BEP02-Walker_complete-DSCN2186.jpg

    After sensors are installed it’s complete!


Movies

If a image is worth a thousand words is a movie worth a thousand images? Hmmm. Enough philosophy; here’s the movie (2.5meg MPEG-1).

Troubleshooting

  • If no LED’s light up when power is connected, double check polarity and voltage of the power source or batteries.
  • The Servocore is set up to give a range between the two end stops. The potentiometers should be able to make the servo hit both the stops on either side. If this can’t be done, try reversing what potentiometer sets which stop by setting the potentiometers on the opposite side they are on now. That was really confusing - sorry.
  • Let’s try that again. Each trimpot can control either the left or right end stop position, as it depends on how far the resistance has been cranked. Try setting the left trimpot by rotating the adjustment screw all the way to the left (counter-clockwise) 20 turns, then back right 3 turns. Set the right trimpot by rotating it’s screw all the way to the right (clockwise) 20 turns, then back left 3 turns. The left trimpot should now set the left rotation limit, and the right trimpot the right rotation limit.
  • If the walkers just takes short steps no matter what the potentiometers are set to then try increasing the master resistor to a larger value.

Hints, tips and useful advice

  • Try to tune the walker for a maximum stride length without falling over, this will decrease the chance that the walker will get high centered as well as this increases its step height.
  • Try tuning the walker for velocity by making rapid, short-arc leg sweeps. Set the left/right rotation to only 20 or 30 degrees, and lower the master Sc1 resistor value so it cycles back and forth quickly.
  • The input voltage to charge the Ni-Cads should be around 7.2V, but can be as high as 12V. Any higher, and it could smoke up the resistors on the CHG board.

New!

Posted on Thursday, July 12th, 2007 at 11:49 am by Chris Turner
BEP03-Finished-DSCN2805.jpg The following instructions detail how to build a Solar Power Smart Head version 3. The Head will seek light and when it finds the brightest source it will go into a low current standby mode. This version also comes with an low power FLED circuit to indicate when the head is active.

So How does it Work?

The Power Smart Head circuit was designed by BEAM-list guru Wilf Rigter, and since its introduction, the circuit has gone through many iterations, each improving on the previous. This latest version has been tweaked, tuned and optimized… for now! We’ve taken our Bicore Experimenter’s PCB, and used a MD2 and BC1 module to construct this project.

Wilf also suggests: Current passing through the LDRs in bright light is wasted energy. A solution to reduce the current through the eyes is to add some sunglasses. This can be done by darkening the surface of the LDRs with a felt pen. Add one layer at a time and measure.the resistance of the LDR under a bright light with an ohmmeter. The resistance should be about 1K for each LDR. Now the amount of energy wasted when the light is bright is negligible. Be forewarned: This will also reduce sensitivity of the eyes a bit.

The Eyes / Voltage Divider

The Solar Power Smart Head uses a pair of photoresistors as a voltage divider. By tapping the signal from between them, a voltage is read that varies from 1/2 the system voltage (if running from 5V, aimed directly at the light is 2.5V). The greater the eyes are off balance, the greater the voltage will stray from the “ideal” 1/2 voltage. If it turns one way, voltage climbs. If it turns the other way, voltage drops.

You might notice that the eyes are arranged so that they’re wired in series from Vcc, through the eyes, and to …a output gate? Well, it’s like this: In bright sunlight, the CdS cells (the eyes) have a resistance of only about 150 ohms each, for a total of 300 ohms. If you wired these eyes up across Vcc and ground, you’d have a HUGE load on the solar cell when you want it as efficient as possible. So, by terminating the ground connection of the eyes to a gate output, the eyes are “turned off” during charge. When the circuit activates, the gate output snaps low and acts practically as a ground connection, which is good enough for the eyes to do their thing.

 

The High / Low Oscillator

This varying voltage from the eyes is fed into what is called a “high / low / oscillate” circuit with three types of output states: 1) high 2) low 3) pulsing. When all is right, it spends as much time being high as it does low. When the voltage input from the eyes is introduced, it influences the “high / low” circuit to pulse longer on the high or low side (depending if the input voltage is higher or lower than ideal). When the eyes receive unequal light, the output is a steady high or low, and the motor turns left or right until the light on the eyes become close to balanced.

 

Nv / Nu Deadband

This rapid chain of off-kilter highs and lows is streamed to another circuit called a “bipolar monostable / delay circuit” (cool technophrase to baffle common folk with, eh?). This circuit is also known as a Nv / Nu driver. The Nv / Nu driver is set up so that it will only send a dissimilar signal to the motor driver if it’s “so much” out. A dissimilar signal is important, because to get a motor to rotate, you have to feed a high signal to one side, and a low to the other to get a flow of power. If both sides of a motor’s inputs are high or low, there’s no difference - no power flows; no motion happens. The “so much” portion of the Nv / Nu circuit is called deadband, and means the area in which the circuit thinks the signal is close enough to ignore. If the input signal strays outside of the deadband, it’s time for the circuit to take action!

The Nv / Nu deadband works by “living” off of equal, but opposite polarity signals. When the SPSH is aimed at something, the signal train feeding the Nv / Nu is 50/50 - half the time on, half the time off. In this situation, the capacitor sitting in the Nv / Nu acts as a wire, passing the same signal through it to the other motor input. As one of the motor inputs is sitting behind a 10M resistor, this capacitor-passed signal can easily over-ride it. The result is that the motor inputs are now both the same, and nothing happens. When the signal train strays too far from balanced, the Nv / Nu capacitor finally charges up, and can’t “stomach” any more signal. A signal difference passes through the 10M resistor, and BOOM! We have movement!

 

“Power Smart” Indicator

Also included is a high efficiency LED flasher that serves the dual purpose of using the regularly unused gates and providing a useful running indicator. Note: This is not a “lock-on” indicator. It is simply a very efficient blinker that turns on when the SPSH is on (moving or not). When the circuit is charging, it is being “held off” by the rest of the circuit.

 

Solar Engine

Of course, being a solar device, we have it hooked up to a solar cell and a few other components to make it function under light. The SPSH will take a bit to charge up, then (if there’s a need to re-align) it will turn every once in a while. If there’s no need to move, it’ll happily blink an LED at you.

The solar engine powering the SPSH utilizes a 1381 voltage trigger, which outputs a high signal when the supply voltage exceeds its set trigger voltage (in this case for a 1381J, 2.7V) and a low signal when voltage is below the trigger voltage. The high signal when the 1381 triggers is inverted and enables the PSH circuit (enables with a low signal). The +Vcc reference is powered through a regular silicon diode, due to the low current the voltage drop is about 0.3V so the 1381 really sees +Vcc - 0.3V. When the 1381 enables the 1/2 of the 74HC240 chip housing the head circuit, another inverter is to create a “Latch signal” to yank the +Vcc reference of the 1381 up to practically the supply +Vcc. This hysteresis value between the voltage drop of the diode and the output voltage of the inverter gate is what causes this circuit to latch.

For some much more detailed operational analysis check these links:

http://www.solarbotics.net/wilf/PSH/heads101.html

http://www.solarbotics.net/library/circuits/bot_head_pshead.html, particularly the schematic at the bottom of the page, which is the one used as a basis for this project.

A Few Changes to the Original

A few minor changes were made to the original SPSH3 circuit, including the addition of a 0.47µF capacitor, decreasing the power storage capacitor from 1.0F to 0.33F, and using a 22µF capacitor instead of 10µF.

Adding the 0.47µF capacitor helps filter power to the 1381 when the supply voltage sags, preventing false resets. Using 0.33F capacitors for power storage makes the head trigger more frequently, but shortens the running time. Substituting the 10µF for a 22µF capacitor gives a slower, but brighter LED flash.

If you want to adjust the “deadband” try replacing the 510k resistor with a 500k or 1M trimpot feeding from the eyes to the High / Low oscillator. The lower value it is, the more sensitive the headbot will be, up to the point where it will always be seeking left and right trying to optimize its aim. Adjusting this resistor is easier than tweaking the actual 10M Nu / Nv resistor. You know how hard it is to find a 10M trim potentiometer?!?

Wilf expresses concerns on how we’re running the circuit with “floating inputs” when the chip is deactivated. Although we’re not presently having problems with the design, Wilf feels (correctly) that a couple 1M resistors between the inputs and ground (or Vcc) will make it quite robust.

Here’s his full review: “The pin 13 input of the 74HC240 and all the inverter inputs of the74AC240 driver are floating when the SE is off. The trapped voltage at those inputs can be the SE reset voltage and that voltage remains the same while the supply cap is charging. This can cause problems as Vcc is rising and the input is held at a lower voltage. Even though the outputs associated with those floating inputs are tristate, the Vcc leakage current of the chips can greatly increase (>50mA) and hang up the circuit. A couple of 1M resistors between the floating inputs and GND (or Vcc) will take away the uncertainty.”

Circuit Diagram:

BEP03-SPSH3_schematic.gif

If you find that a wee bit small to read, click on the image for a much larger GIF of the schematic, or click here for a PDF copy of the same schematic.

 

Construction procedure:

BEP03-Part-DSCN2384.jpg

1. Gather all your parts:

Or click here to add all the parts to your cart

Parts list:

1 - BC1 BEP board
1 - MD2 BEP board
1 - A 3mm thick Sintra cutout used to make the base for the head
1 - 74HC240 for the BC1. These should be the HC versions to work properly.
1 - 74AC240 for the MD2 motor driver. Some motors are efficient enough not to use a driver. Ours isn’t!
1 - 0.47µF capacitor (Marked 474)
2 - 0.01µF capacitor s (Marked 103)
1 - 22µF capacitor (Substituted from 10µF)
1 - LED
2 - CdS photo cells
2 - 1N914 diodes
1 - 1381 “J” trigger
1 - DC Gearmotor (GM2) with mounting wheel
1 - Solar cell (SC3733)
2 - 0.33F Gold capacitors (Substituted from 1.0F in the picture)
Resistors:

1 - 510K resistor
1 - 5.1M resistor
2 - 10M resistors
2 - 100K resistor

BEP03-Base-DSCN2401.jpg

2. Forming the base

Sintra is a thermoplastic, meaning that when you heat it up you can shape it. A couple of methods work well for heating it up- leave it in boiling water for a minute or use a heat gun. We tend to use the heat gun as it’s less messy, but it does require a bit more skill to use. Just heat the Sintra up, bend it to the desired shape, hold it there while it cools and voila - it holds the shape!

Pick a shape that appeals to you, as it’s simply a base to mount the head to. If the shape doesn’t meet your expectations, you can always re-heat it and try again. Sintra is pretty useful construction stuff.

BEP03-Motor_baseDSCN2404.jpg

3. Glue mounting wheel on base and insert motor

Superglue- Specifically “Flash” Cyanoacrylate works very well for bonding Sintra to gear motor wheels.

BEP03-MD2-DSCN2396.jpg
Figure 4.1BEP03-MD2_solder-DSCN2407.jpg
Figure 4.2BEP03-MD2_Solder2-DSCN2423.jpg
Figure 4.3BEP03-MD2_Enable-DSCN2845.jpg
Figure 4.4

4. Solder the 74AC240 into the BEP MD2 “Motor Driver” module

Figure 4.1: Be very careful not to mix up the 74AC240 with the 74HC240. The 74AC240 works best for driving motors because of its higher current carrying capabilities. Solder the 74AC240 chip in place and watch the chip orientation.

Figure 4.2: Usually, solder bridges are a bad thing but in this case we are using them to make convenient electrical connections. Run solder bridges across the inputs and outputs to make two groups of four by placing four inverters in parallel for each side of the motor. Teaming up inverters increases the available drive current to the motor.
Figure 4.3: This is a close-up shot of the solder bridges paralleling the two groups of four on the MD2 outputs. Make sure that there is not solder between the two bridges or to the free ground pads either. That would be a bad thing as it would be shorting out the outputs!

Figure 4.4: Cut the enable trace isolating it from ground, the enable will be connected to the enable on the BC1 board later. That’s basically it for work on the MD2, set it aside for now and begin work on the BC1 board.

BEP03-BC1-DSCN2400.jpg
Figure 5.1BEP03-Enable_cut-DSCN2417.jpg
Figure 5.2

5. Solder the 74HC240 into the BEP BC1 Module

Figure 5.1: Leave the MD2 for now, as we’re going to start on the nitty gritty brains of the Power Smart Head. Start by soldering in the 74HC240 chip. Again, watch the chip orientation.

Figure 5.2: Flip the PCB - we need to enable lines on pin 19 to be isolated. Do this by cutting the trace tying the two enables together and the trace from pin 19 to ground.

BEP03-BC1_bridges-DSCN2426.jpg

6. BC1 solder bridges

As the BC1 is intended to be an “all-purpose” sort of module, there is some custom work to be done. First, we’ll have to make four solder bridges to the BC1. Starting at the top right side, run a solder bridge between pin 1 and ground, which will permanently ground this enable line. Remember, you’re working on the bottom of the chip, so pin numbers start at the top right corner and go down, and back up the left side.

Down and to the left of that a solder bridge, connect pins 17, 18 and 19.

Near the bottom left, bridge pins 8 and 9 together.

Lastly, right of the previous step, pins 12 and 13 have a bridge connecting them.

BEP03-BC1_1381A-DSCN2813.jpg
Figure 7.1BEP03-BC1_1381B-DSCN2818.jpg
Figure 7.2BEP03-BC1_1381D-DSCN2827.jpg
Figure 7.3BEP03-BC1_1381F-DSCN2836.jpg
Figure 7.4BEP03-BC1_1831E-DSCN2831.jpg
Figure 7.5

7. 1381 trigger section

Figure 7.1: The 1381 “J” trigger is soldered into the pads near the power filter capacitor , by the top right of the chip. 1381 pin 1 is soldered into IN1 on the BC1. 1381 pin 2 is soldered to a free pad and pin 3 is soldered to the nearest ground pad.

Figure 7.2: A 0.47µF capacitor is soldered across the 1381 Vcc and ground rails (pin 2 and 3). This capacitor smooths power to the 1381 and keeps it from prematurely resetting by accident.

Figure 7.3: A 1N914 diode is soldered between Vcc and pin 2 of the 1381. This diode isolates power to the 1381, letting it do it’s job when the power sags during motor operation.

Figure 7.4: A 100K resistor is installed between O5 and IN1.

Figure 7.5: It should resemble something like this when you are done.

BEP03-BC1_jumper-DSCN2465.jpg

8. BC1 Jumper

Flip the PCB over and run a jumper wire between O5 and pin 2 of the 1381. This is part of the enable latch circuit from the 1381 trigger.

BEP03-BC1_diode-DSCN2473.jpg
Figure 9.1BEP03-BC1_10Meg-DSCN2476.jpg
Figure 9.2BEP03-BC1_100K-DSCN2482.jpg
Figure 9.3BEP03-BC1_22uF-DSCN2487.jpg
Figure 9.4
BEP03-BC1_22uF2-DSCN2489.jpg
Figure 9.5BEP03-BC1_LED-DSCN2492.jpg
Figure 9.6BEP03-22uF_hookup-DSCN2528.jpg
Figure 9.7BEP03-22uF_hookup2-DSCN2532.jpg
Figure 9.8

9. LED flasher Section

The following diode, two resistors, capacitor and LED are part of the LED Flasher circuit that blinks the LED when the head is active.

Figure 9.1: Solder the other 1N914 diode with the Cathode pointed towards IN2 and the Anode pointed towards the group of pins 17, 18 and 19.
Figure 9.2: Add a 10M resistor from pin 4 of the 74HC240, for now just leave the other end of the resistor hanging.

Figure 9.3: Solder in a 100K resistor between pin 6 of the 74HC240 and the other end of the 10M resistor.

Figure 9.4: Add a 22µF capacitor between the resistor combination and pin 14 of the 74HC240. capacitor + goes to pin 14 as shown by the red lead.
Figure 9.5: A different view of the shot above.

Figure 9.6: Solder the LED between a pair of free pads near the bottom right of the BC1 board.

Figure 9.7: Run a wire between LED Anode to pin 6 of the 74HC240, show by the red wire. The small black wire is connected to the + of the 22µF capacitor and to the Cathode of the LED.

Figure 9.8: Details of the black wire connection to the Cathode of the LED.

BEP03-BC1_.01uF2-DSCN2499.jpg

10. Soldering in 0.01µF caps

The two 0.01µF capacitors are soldered in so one goes between pins 11 and 12, the other capacitor needs to straddle a pin to go between pins 13 and 15.

BEP03-BC1_5M1_10M-DSCN2523.jpg

11. Add 10M and 5.1M resistors

The second 10M resistor is soldered between pin 8 and 15.

The 5.1M resistor goes between pins 9 and 11.

BEP03-BC1_510K-DSCN2672.jpg

12. The 510K resistor

The 510K resistor goes from pin 11 and a free pad, which will later be connected to the center point of the CdS photoresistor voltage divider.

BEP03-BC1_jumper3-DSCN2759.jpg

13. Just one last board jumper wire

Jumper goes between 6 and 16 (blue wire). This is a part of the LED flasher circuit.

That’s basically it for work on the PCB!

BEP03-.33F_caps-DSCN2536.jpg

14. Soldering the 0.33F capacitors together

The two 0.33F capacitors need to be soldered in series to make a 5V 0.165F capacitor.

BEP03-MD2-chamfer-DSCN2545.jpg
Figure 15.1BEP03-BC1_chamfer-DSCN2838.jpg
Figure 15.2

15. Cutting corners

Figure 15.1: The corner of both the MD2 and the BC1 are chamfered. This is done so they fit tightly to the motor body, with the flat of the chamfer resting against the solar cell. Be careful while cutting the chamfer so that any important traces are not cut. The outside ground line goes all the way around the board so cutting it once does not change it electrically.

Figure 15.2: The boards are attached on either side of the motor

BEP03-Glue-DSCN2700.jpg

16. Putting it together

Everything gets assembled like this. The CdS photoresistor eyes are installed in this figure (but installed in the next step).

BEP03-Eyes-DSCN2691.jpg
Figure 17.1BEP03-Eyes2-DSCN2693.jpg
Figure 17.2

17. The eyes

Figure 17.1: It is wise to insulate the wires coming from the CdS photoresistors, as it will prevent them from shorting together, as well as giving some surface for the glue to stick to.

Figure 17.2: The eyes were angled at approximately 45 degrees.

BEP03-Eyes3-DSCN2709.jpg
Figure 18.1BEP03-Eyes4-DSCN2714.jpg
Figure 18.2BEP03-CDS_attach-DSCN2721.jpg
Figure 18.3

18. Wiring the eyes

Figure 18.1: Wire up the CdS cells
Figure 18.2: This yellow wire goes underneath the solar cell and…
…Figure 18.3: gets attached to the 510K resistor, CdS cell point.

BEP03-Cap_hookup-DSCN2662.jpg
Figure 19.1BEP03-Cap_hookup2-DSCN2666.jpg
Figure 19.2

19. Adding the power storage caps

Figure 19.1: The 0.33F capacitors fit nicely on the rear of the motor. The capacitor + and - are soldered right onto the power filtration capacitor location.

Figure 19.2: Another figure of the same, to show that the bare capacitor leads do not touch anything else.

BEP03-Power_connect-DSCN2733.jpg
Figure 20.1BEP03-Power_connect3-DSCN2766.jpg
Figure 20.2BEP03-Power_connect2-DSCN2735.jpg
Figure 20.3

20. Attaching power lines of the boards together

Figure 20.1: Image of the ground and Vcc connections to the MD2 board.

Figure 20.2: Detail of the positive connection to the BC1 board.

Figure 20.3: Detail of the ground wire to the BC1 board.

BEP03-MD2_inputs-DSCN2739.jpg
Figure 21.1BEP03-MD2_inputs2-DSCN2736.jpg
Figure 21.2

21. Attach outputs of the PSH to the motor driver.

Figure 21.1: The blue wires are the outputs of the PSH being connected to the inputs of the motor driver.

Figure 21.2: Detail image showing the output connections of the BC1 board. The outputs are labeled O6 and O7.

BEP03-Motor_green-DSCN2749.jpg
Figure 22.1BEP03-Motor_green2-DSCN2752.jpg
Figure 22.2

22. Outputs of motor driver to the motor

Figure 22.1: The green wires are the connections from the outputs of the motor driver to the motor. If the head rotates opposite to what you expect, this is probably the easiest point to correct the behavior.

Figure 22.2: Detail image showing the output connections of the BC1 board. The outputs are labeled O6 and O7.

BEP03-Motor_green-DSCN2749.jpg
Figure 23.1BEP03-Solar--DSCN2775.jpg
Figure 23.2

23. Lastly, attaching the solar cell

The ‘+’ from the solar cell, wire a connection to any positive trace on the board (the center rail).

The ‘-’ from the solar cell goes to any ground trace on the PCB (the edge rail).

BEP03-Finished-DSCN2805.jpg

24. All done!

Enjoy.

Troubleshooting:

  • To help trouble-shoot, to have a DC power supply and a multimeter. With a 1381 “J”, a supply voltage over 3.22V should be sufficient to start the circuit and keep it running continuously. Any voltage source over 3.22V will start the LED flashing and the head tracking light. By attaching a DC supply this help to troubleshoot as it bypasses the solar engine and allows continuous operation.

  • If the head only turns one direction the CdS cells may be very un balanced, check this by giving the eyes approximately equal light and measuring the voltage at the center of the voltage divider. The voltage should be close to half the supply voltage. Actually measured value at 1.71V. If the value is way off the best solution is to just replace the eyes.

 

Hints, tips and useful advice :

  • Tuning the head is most easily accomplished by changing the angle the eyes are set at. A potentiometer can be set between the eyes to electrically tune for a left/right bias.

  • Adding battery power is a simple matter of wiring a battery is parallel with the storage cap. Just make sure that the battery voltage is sufficient to trigger the 1381. This project could be made exclusively battery power by just removing the 1381 trigger stage and have the enable lines permanently grounded.

 

Copyright © Solarbotics Ltd., 2003, all rights reserved.

Posted on Thursday, July 12th, 2007 at 11:48 am by Chris Turner

Turbot_excl.png

The Turbot is a member of the Scophthalmidae family of flatfish and is almost completely circular. Turbot is often found partially buried in the seabed in sand, gravel, rocks and sediment. It is an active predator, as adult turbots live almost exclusively off other fish. Turbot is a good source of protein and is also rich in selenium. Its fat content varies, but it usually contains roughly 1 gram of omega-3 fatty acids per 100g filletBarring advances in genetic engineering, we will not be building that kind of Turbot. However, this kind of Turbot can be built with a soldering iron:

BEP05-Turbot_Finished-DSCN4.jpg

The original name was coined by Mark Tilden, as his original experiments in this form of robotics were inspired by Turing Machines.

Turbots are a unique robot, they move around by flipping themselves over. An interesting method of locomotion but somewhat tricky to make phototropic. Every time the Turbot flips over, the motors are effectively reversed, and a different side will be facing towards the light.

Turbots are well known as being the velociraptors of the BEAM park tearing into wires, flipping BEAMants over and organizing themselves into military units. OK maybe not quite “Jurassic park”, but you get the idea.

So How does it Work?

This turbot design uses four eyes, one pair determines what way is up and the other pair looks to the sides. To date, this has proven to be very effective. For simplicity with this project, the motors run in only one direction.

The electronic control for this device is deceivingly simple. The core circuit consists of four photodiodes, a 74AC240 chip and a resistor. This signal is then amplified to drive the motors with a transistor driver.

Vision: A voltage divider is created using two reverse biased photodiodes. Why reverse biased? If they are forward biased, they would short out the power supply and that usually ends up being a bad thing. Basically, a reverse biased photodiode acts like a photoresistor, meaning that the resistance varies with light intensity. The voltage at the center of the voltage divider will vary with changes in light level.

Brain: The voltage divider output is fed into the input of an inverter, specifically a 74AC240 inverter. These inverters have the property of switching at close to 1/2 +Vcc (1/2 the power supply voltage). This combined with the tight tolerances of photodiodes usually make tuning unnecessary, especially with a design as noisy as a Turbot.

Brawn: Since the output signal from the 74AC240 is from only a single output, it will need to be boosted to drive a GM3 motor with sufficient power to make it move. It is convenient that in this particular Turbot design the motors need be driven in only one direction which can be simply done by using a single transistor and a bias resistor. A bias resistor size of 1K was used to drive a 2N2222 transistor, which should give a drive current of close to 500mA.

 

Circuit Diagram:

BEP05_turbot_symbolic_diagram_excl.gif

Wiring Diagram:

BEP05_turbot_symbolic_diagram_excl.gif

Here’s a collection of the circuit diagrams in a nice, high-quality 25kB PDF file.

Assembly procedure:

BEP05-Parts-DSCN4267.jpg

1. Collect all your parts:

Click here to have these parts added to your cart.

Parts List Electrical:

1 - BC1 BEP board
1 - LMP BEP board
2 - GM3 style gearmotors
1 - 74AC240
1 - Power switch
4 - Photo diodes
2 - 2N2222
2 - 1K resistors
1 - 47K resistor
4 - AAA rechargeable batteries
2 - Dual AAA battery holder

Parts List Mechanical:

1 - 10ga Leg Wire 24” long, need about 16”
2 - LMP BEP board
1 - Sintra 3mm, Isosceles triangle 10cm by 7cm by 7cm
1 - Sintra 6mm, Same measurements as above
8 - Sheet metal screws (for wheel and leg mounting pad)
2 - Mounting screws (3/4″ long - we do not carry these, you may have to scrounge)

BEP05-240chip-DSCN4275.jpg

2. Soldering the 240 chip

Start with the 74AC240, and mount it into the BC1 board. Please take care to solder it in the right way, as these can be sizably obstinate to desolder (ummm, we mean “they’re a pain the butt to remove”).

BEP05-Solder_bridges-DSCN42.jpg

3. Solder bridges on the BC1

Install a solder bridge that connects pin 1 to ground. This permanently enables the inputs on that side of the chip.

The three solder bridges on the left side are grounding unused inputs. Not absolutely necessary but can keep unwanted noise from entering the circuit.

Solder bridge at top left connects output 1 to the enable, that way the photo diode bridge directly control the enable pin.

Lastly there are a pair of bridges that run between O2, I6 and O6, I3

With proper solder bridges you can save yourself a lot of time otherwise spent running wires.

BEP05-Jumper-DSCN4293.jpg

4. Jumper on the BC1

It’s a bit hard to run a solder bridge this far across the PCB, so a short blue wire is used to connect I4 to O3.

BEP05-47K_resistor-DSCN4303.jpg

5. 47K resistor

The 47K resistor runs between the center bridges of O2, I6 and O6, I3. This is the pass-through resistor. When the inverter is disabled, the signal gets passed through this resistor, but when the inverter is active the resistors are over-ridden by the inverted signal.

BEP05-2N2222-DSCN4311.jpg BEP05-2N2222_B-DSCN4309.jpg

6. Driver transistors

The 2N2222 transistors are installed in free pads with the emitter going to ground, with the collector ready to connect to the motors, and the base sitting ready for future soldering.

BEP05-Trace_Cut-DSCN4319.jpg

7. Cutting Traces

Three cuts need to be made.

First, cut the trace connecting the two enable pins together.

Next cut the trace connecting pin 19 to ground.

Lastly cut the trace that runs from ground to that little group of two pads.

BEP05-1K_Resistors-DSCN4325.jpgBEP05-1K_Res-DSCN4332.jpg

8. The 1K resistors

The two 1K resistors are used to limit the current from the output of the 74AC240 chip to the base of the driver transistors.

One resistor runs from O3 to the base of the transistor. The other 1K resistors run from O4 to the base of the other transistor. This should limit the driving current to about 500mA, which is more than enough to run these motors.

bEP05-Top_eye2-DSCN4376.jpgBEP05-Top_eye-DSCN4378.jpg

9. Top Eye

Photo diode cathode connects to I1 on the BC1 board. Connect the anode to the nearest ground, which (in this case) is conveniently located right beside I1. This will be the eye that looks towards the “top” of the Turbot.

Remember! Reversed bias… reeeeverrrrsed biaaased! Otherwise, SMOKE! (bad)

BEP05-Batt_Pack-DSCN4360.jpg

10. Battery pack

The battery packs are put side by side, with the center leads bent over and soldered together. This wires the battery packs in series making a 4.8V pack. The positive pin is also clipped so that the pack can be mounted flat on the sintra base.

BEP05-Wire_motors-DSCN4344.jpg

11. Solder motor wires

Solder the motor wires onto the motors right now, as the next step will cover up where they need to be soldered. A length of 6 inches of wire gives lots of room for error (not like you would make an error, right?).

BEP05-Motor_mounting-DSCN43.jpgBEP05-Mounting_screw-DSCN43.jpg

12. Motor mounting to sintra

Yes, the picture is white sintra on white background with white motors, but the only 6mm sintra we have is white (sorta looks like a picture of a polar bear in a snowstorm, hmmm?). Alternately, you could glue two pieces of colored 3mm together to make a 6mm sandwich.

The mounting screws go through the motor holes into the sintra about 1/4″ inch. Which adds a this mechanical bonding which isn’t absolutely necessary, but provides much greater strength than just glue.

BEP05-Side_Eyes-DSCN4367.jpg

13. Battery pack and side looking eyes

The battery pack should fit nicely between the motors. The pins on the other side of the battery pack will need to be cut off to fit on the sintra as shown.

The eyes are mounted on the inside edge of the motors, and make sure to use the plastic motor nub to help protect the eyes from damage when the Turbot is rolling on the ground.

BEP05-Left_Eye-DSCN4380.jpgBEP05-Right_Eye_Neg-DSCN438.jpgBEP05-Right_Eye_Close-DSCN4.jpg

14. Wiring side looking eyes

Left eye Cathode goes to + on the battery pack via white wire.

Right eye Anode gets wired to ground via the black wire.

A close-up of the right eye anode connection

BEP05-Bottom_Eye-DSCN4392.jpg

15. Bottom Eye

Bottom eye mounted between the battery pack and the sintra. White wire goes to + on the battery pack. Green wire connected to the photodiode Anode and runs to the other side of the turbot.

Bep05-Eyes_wire_Green-DSCN4.jpg

16. Green Wire

Green wire from anode of the bottom looking eye, connects to I1 on the BC1 board.

BEP05-Eyes_wire_orange-DSCN.jpgBEP05-Eye_Right_Orange-DSCN.jpg

17. Left eye/Right eye wired

Left eye anode gets wired to I2 with an orange wire.

Right eye cathode gets wired to I2 also with another orange wire.

BEP05-Wire_motors2-DSCN4434.jpgBEP05-Wire_motors-DSCN4435.jpg

18. Motor connections and testing

Probably the trickiest part of building this is getting the motor connections right, you have a 25% chance of guessing them ALL correctly the first time. Good luck!

See these red and black wires from the battery pack? Use these to temporarily test the operation of the Turbot and figure out the correct motor connections.

The motors share a common positive connection, with the other motor connection are going to the emitters of each of the driver transistors. Each motor activates when ground is switch by the transistor.

Basically it doesn’t matter what way the motors rotate as long as they are both the same direction. Get that right, and you have something that will be either phototropic or photophobic.

Note: It’s more convenient to test this before attaching the legs as they tend to get in the way and tangle things up.

Next step is figuring out how to make the Turbot phototropic. Try hooking power up to the board temporarily, with topside up. The motor closest to the eye should be rotating so that it will flip the Turbot towards the light. If the other motor moves, then the motor connections to the driver transistor need to be swapped. If the motor goes in the wrong direction, then reverse the connections to that motor. Clear as mud, right? Read it again…

Now on the same top side up, try pointing the other eye towards the light. Again, the motor closest to that eye should be the one turning. Make sure that its rotating trying to flip the turbot towards the light source.

With that in place, the bottom side should be correct also, that being now the opposite motor to the eye seeing light will rotate to move the Turbot parallel to the light source.

It’s not easy to wrap your head around a robot brain that has no distinguishing difference between left/right, and up/down. Re-read, experiment, and resolder if need be!

BEP05-Power_Switch2-DSCN444.jpg

19. Brain mount

Here the wires get trimmed a bit and the BC1 board gets mounted to the sintra. Make sure that the wire connections that were decided on the previous step are the same here.

The black wire is left over because we still need to put in some kind of power switch.

BEP05-Power_Switch-DSCN4449.jpg

20. Power switch

The power switch switches ground. Shown here a DPDT (double-pole, double-throw) switch used to turn the Turbot on and off. A SPST (single-pole, single throw) switch would also work fine. The switch is mounted on the ground rail on the outside of the BC1 board. The two free pins are attached directly to the negative side of the battery pack. When the switch is flipped, the ground rail of the BC1 is connected to the negative side of the battery pack.

The switch should be buried enough that it will not shut itself off when the robot is in operation. You may want to put a guard rail around the switch to protect it from getting damaged.

BEP05-Legs_presolder-DSCN44.jpgBEP05-Legs_Soldered-DSCN442.jpgBEP05-Legs_Crossed-DSCN4454.jpg

21. Soldering the Legs

Cut two lengths of leg wire one 7 inches long and the other 9 inches long. Strip the insulation off 1 inch from the ends.

Solder the leg wire to the mounting pad and screw them down to the GMW.

Mount the legs on the Turbot. Then the last step is bending. The shorter leg gets bent 90 degrees so that it rotates between the body and the longer leg. The longer leg is bent at about 55 degrees so that the legs don’t hit each other when the turbot is moving.

BEP05-Turbot_Finished2-DSCN.jpg

22. Finished!

Whee!

Troubleshooting:

  • When powered up for the first time, check to see if the photodiodes start getting hot. They were? That means they were put in forward biased, and are now toast. Replace them, but installed in reverse bias mode (that means wired backwards). If the 74AC240 chip starts getting hot, then either the system voltage is too high (>6V) or the battery pack polarity is backwards.

  • If you flip the power switch and nothing happens, either the motors are hooked to the wrong polarity (should be to +) or the batteries are not charged. If in doubt, check the voltage across the BC1 power connections with a multimeter. When turned on, you should get at least 4.8V.

  • If the motors move but the light falling on the eyes doesn’t seem to affect which motor activates, then check the voltage divider. The connection to the voltage divider may be going to the wrong set of inputs.

  • If the light between the eyes was perfectly balanced, the output may oscillate at high frequency. This is easy to fix by adding a small capacitor providing positive feedback to the photodiode bridge. Do this by putting the capacitor across the input of the photodiode bridge to the associated output gate that the bridge is attached to.

 

Other Musings and Hints:

  • This device has the ability to run under solar or battery power. All that’s needed for solar operation is a suitable solar engine such as the MSE. Remember, you will need to put solar cells on both sides.

  • You can actually put wheels on this, one side will be phototropic and other side photophobic. A Whrbot? Hmmm….

  • Now a sufficient number of Turbots combined with your midget pony army should be able to take over the world!

Copyright © Solarbotics Ltd., 2003, all rights reserved.