Miller Solar Engine

From BEAM Robotics Wiki

Jump to: navigation, search

We apologize for the need to display ads on this wiki. But somehow we must pay for hosting.
Probably the smallest incarnation of the Miller SE, using SMD pieces
Probably the smallest incarnation of the Miller SE, using SMD pieces

On December 18, 1999, Dave Hrynkiw announced on the BEAM Email List that Solarbotics had licensed the Miller Solar Engine from Andrew Miller of "AM Innovations". This solar-engine came about from Andrew Miller's playing around with the then-new 1381 voltage detectors.


[edit] Introduction

The Miller solar engine (also called Millerengine) uses a 1381* voltage detector (a.k.a., a voltage supervisor) IC to drive a voltage-based (type 1 solar engine) solar engine. The 1381 is normally used to reset CPUs and Micros when the power supply drops too low for reliable operation. So 1381s detect and switch when the input voltage crosses the rated upper and lower threshold voltages. The upper- and lower-switching voltages are slightly overlapped so that the turn-on voltage is a few hundred mV above the turn-off voltage. This hysteresis keeps input noise (around the switching threshold) from resulting in multiple output cycles as the transition occurs.

The Miller SE is designed to increase the 1381 hysteresis to a larger value. This is done by putting a small capacitor across the input legs of the 1381, and a diode between the 1381 and the "true" ground.

Here's the basic circuit (It is shown as a modification to the "vanilla" 1381 SE circuit, where added components are red, deleted components are grayed out, and common components are in black):

Miller SE schematic

[edit] How it works

As the solar cell charges the (4700 uF) storage capacitor, the voltage across the capacitor increases with time. Eventually it reaches the 1381's trip point, and the 1381 applies voltage to the base of the 2N3904. Since this is an NPN transistor, it "trips" and applies current to the motor. This state of affairs will continue until the 1381 sees a voltage that looks like its trip point minus 0.3 V, at which point the 2N3904 goes "quiescent," and the solar cell resumes charging the storage capacitor.

By choosing values for C1 and R1, we can "tweak" the performance of this circuit. If the load is (as shown above) a motor, we'll want R1 to be zero (i.e., no resistor), and C1 to be about 0.47 uF.

  • Larger values for C1 result in longer (but less-frequent) "bursts" of motor activity.
  • smaller values result in shorter (but more-frequent) activity.
  • Larger values of R1 reduce the power going through the motor, as well as lengthening the "bursts" of motor activity. If the load is an LED or something similar, you'll need less power to drive it, and probably then want a non-zero value for R1.

[edit] Freeforming

If you want to build a "freeform" version of this circuit, here's a very compact layout (note that the layout shows the 2N3904 and 1381 in "dead-bug" fashion, i.e., with their legs pointing towards you).

Start by glueing the 2N3904 and 1381 together ("face to face"). As is usual for things this small, you should then solder your connections starting in the middle (i.e., work your way out).

MSE freeform layout

[edit] Calculating the 1381 Voltage

To calculate the matching voltage of the 1381 you for 80% of the output given in ambient light (rather than 80% of the rated output). Put the cell in the environment that you expect the robot to work under. Measure and determine 80% from there.

Also, remember to add in the diode's voltage drop. So, measure the cell's voltage in room lighting. Multiply that number by .8. Subtract something like .7V for the diode (it is better to test this first).

The result will give you the target voltage for the 1381.

[edit] Also See:

This wiki is sponsored and hosted by Interactive Matter
Personal tools
Ads to finance this wiki