ICARUS: the Analog Heliostat





Introduction: ICARUS: the Analog Heliostat

About: A lowly geologist who likes to build stuff.
Have you ever been sitting in the shade and thought "I wish the sun could come to me"? Well now it can.

I wanted to squeeze some extra sunlight into my life to provide some free heat as well as reduce the risk of the Crabby-McNasties. There is a wonderful device called a heliostat which can reflect those powerful sun beams exactly where you want them; as in  "pew pew pew".

UPDATE JULY 18 2013:I have been contacted by a real professional (see "redrok" in the link and comments below) to advise me that I have oversimplified the geometry causing errors in aiming. I didn't get the calibration and tightening up to realize that I had this problem before Icarus died of a blown motor. Please see the next step for more details of where I went wrong (Rectilinear vs. Spherical Geometry).    

A heliostat is basically a mirror that rotates to reflect sunlight on a fixed point throughout the day: into my dining room in the winter or onto a solar pool heater in the summer. This seems like a very easy project until you consider that there are two axes of rotation, and that the sun's position in the sky changes with the seasons (hugs the horizon in winter). I've been wanting to build a heliostat for a few years, even though I have never actually seen one (until today!). Heliostats are commercially available, although they are not quite mainstream yet. There are many hobbyists trying new and innovative ways of working out the geometric and mechanical challenge of splitting the angle between the sun and target:

Using clockwork: https://www.instructables.com/id/HELIOSTAT/
Using Arduino to calculate where you need to point: cerebralmeltdown.com
A complete history of Heliostats: http://www.redrok.com/main.htm#mechanical
Commercially available: http://lightmanufacturingsystems.com/order/

I am quite certain that the best solution is to have some form of computer that calculates the required position of the mirror and transfers instructions to precise actuators or step motors to position it in real time. Arduino appears to be sufficiently powerful, and the necessary code is mostly available in some form. This is where the "ANALOG" comes from in my title: I was looking to bypass the computer and precise motors to A) reduce the cost, B) make it more weather-proof and C) make it trouble-shootable (for a lowly geologist like myself). So, although I am using electricity and electronics, this is more like your grandmothers radio (analog) than you might think. I don't expect that this design would be rolled out in the western world, but the relatively simple mechanics means that it could find a niche hobbyists and in developing countries. In fact, much of the body and mechanism would lend itself well to 3D printing (future update?). 

I was inspired by the many Arduino Solar Tracker projects which seem to handily provide a vector to the sun. The second vector of interest is straightforward: it points directly towards the target (window, pool heater). To get the sun reflected where you want it, the mirror needs to be positioned perpendicular to the bisector (exactly half way, or normal) between these two vectors. That seems easy, right? A simple computer or child can tell you where that bisector is; neither of which I know how to provide instructions in a form that would be executed. The point is: I am trying to eliminate computer processing from the equation, so how do you precisely split an angle in three dimensions "mechanically"? See the next step to see my low-tech solution. If I have just invented (or not) the equivalent to a "square wheel" (as in, a more elegant solution exists) please let me know in the comments below.

Step 1: STEP 1: Sketching and Prototyping

UPDATE July 18 2013: "Most of what is described below is WRONG... My simple geologist brain misled me to think in simple geometry. I've copied some of the explanation Redrok provided below:

ME: Are you saying that obtaining the "overall bisector" in 3D between the sun and target cannot be obtained by simply forcing the Alt axis (the whole vertical rhomboid in fact) to follow current AZ bisector (in plan view)?

REDROK: That is exactly what I'm saying. You are thinking in terms of "Rectilinear Geometry" where latitude and longitude lines are all 90 degrees to each other. As if the earth were a cube. However, the earth is a sphere not a cube. One is supposed to use "Spherical Geometry". Look at a globe of the earth. The longitude lines are curved so they meet at the poles. The latitude and longitude lines are not 90 degrees to each other, (Except at the equator). Draw an arc on the globe, (actually a great circle), then with a tape measure find center of the arc. Now carefully read the longitude and latitude of the end points and center of the arc. You will find this isn't correct by just averaging the end points of the arc. (Actually the rhombus performs averaging). OK, depending on the chosen arc the error can be small, but with other arcs the error approaches infinity.

Lesson learnt; there is tonnes of information on the internet about building heliostats. What is described below should not be considered as a guide to build a successful heliostat :-/  

I figured out how I could split the angles in 2 dimensions by using a "hinged rhombus". Basically the vector that joins opposite side of an equal sided rhombus (diamond or lozenge shape) will divide the angles equally. So by combining two of these rhombi you can split the angle in two orientations and a single vector which exactly splits the difference in 3D. Hook up a mirror that is perpendicular to this vector and you are off to the races.

This all worked in my head, but it actually has to work in the physical world. So I started by sketching it out in the Android SketchBook App on my over-sized smartphone and stylus (Note 2). I upgraded to the full version to enable straight lines and extra layers. The sketching saved me quite a bit of headaches because it forced me to think how I was going to link the rhombi and enabled me to show people what I was trying to do. Explaining to people how it was going to work forced me to realize that I had better put together a prototype to get as many of the kinks out before I started cutting and welding pieces together. I decided to use some cedar shims, nuts and bolts and an old caster. The result was satisfying, however friction between the various components and maximum and minimum angles required some reconsideration. 

Another obvious issue was the attachment mechanism of the mirror itself. From reading some cerebralmeltdown forums I learnt that I should not hang any weight on the directional components (and use a caster as a universal joint). I imported a photo of my wooden prototype into Sketchbook again and worked out several possible scenarios. The one that made the most sense has two mirrors attached to an axle that runs through the hole where the wheel was attached. This design ensured that the weight was centered over the caster and it provided an area at the center for my "normal vector bar" to be welded perpendicular to the axle (see sketch above). 

Step 2: Step 2: Material

At the core of this project is the caster, the solar engines and a bunch of tubing. Much of the tubing and flat steel pieces can be replaced by components that would be 3D printed. 

Initially inspired by the simplicity of the solar speeder kit (solar panel, energy storage with intermittent bursts, motor, wheels) I eventually accepted that the weak torque of the motor was not going to get me anywhere. I than realized that step motors are quite expensive and significantly more complex in terms of energy delivery; I then discovered geared motors. These would provide the torque I needed, they are cheap and not fussy on what type of electricity it received, I overcome its lack of precision by having equal and competing solar engines (explained in detail later). 

The rundown of parts you will need include:
  1. "Door" Mirror (Walmart 8$)
  2. Caster, the bigger the better (Canadian Tire 15$).
  3. 100cm of flat (0.2cm by 3cm) stiff material for the vertical rhombus (pieces from an Ikea drying rack). Potentially 3D printable.  
  4. 100cm of square tubing material (3cm by 3cm) for the horizontal rhombus. Potentially 3D printable.
  5. 100cm of very stiff cylindrical tubing (0.8cm). This is going to support the mirrors so lateral load capacity is a must.
  6. 100cm of stiff cylindrical tubing (0.8cm). These will act as the "normal" vectors. Potentially 3D printable.
  7. 40cm of tubing that has a slightly higher inner diameter than the tubing above. Potentially 3D printable.
  8. 4 solar engine kits (https://solarbotics.com/product/bscc3733a-mse-1/)
  9. 4 bigger capacitors (6.5V, 2200MF)
  10. 2 MS21 geared motors (https://solarbotics.com/product/gm21/)
  11. 1 Pololu wheel (https://solarbotics.com/product/rw70x08/)
  12. 15 nuts and bolts to hold your rhomboids together.
  13. Sheet metal to make enclosures for the solar engines. Enclosures are potentially 3D printable.
  14. Silicone to seal up the electronics.
  15. Spray paint
  1. Welder (Flux core MIG).
  2. Soldering iron and wire.
  3. Drill (Drill Press is better).
  4. Chop saw with metal blade.
  5. Sheet metal brake.
  6. Various hand tools

Step 3: STEP 3 - Modifying the Caster

The caster is going to provide the two axes of rotation for the heliostat, and we need to fit the components to it. 

Unscrew the wheel and drill out the holes to fit the wide diameter tubing. Pass 15cm of the tubing into hole you just drilled and weld it into place. You will eventually cut the center portion from the tubing to create a gap of about 2cm. 

To create the bar onto which the mirrors will hang, I initially welded end bolts from the Ikea rack onto one of the spindles (I could easily thread the mirror support spindles on either end, this seemed too flimsy). I eventually elected to use a single solid rod, however I had to carefully weld the "normal vector spindle" within the 2cm gap all the while ensuring that it was perfectly perpendicular.  You now have the basic supporting mechanism for the mirrors. The spindle sticking out the front is your bisector in 3D and the mirrors will be installed perpendicular (in both axes) to this spindle.

Step 4: STEP 4: Building Rhombi

The concept is that you want to divide the angle between your target and the sun equally. There may be a more elegant solution to this problem, however Google was no help to me (please leave a comment if there exists a more refined approach this problem).

In principle, the larger you build the rhombus the more accurate the angle division is going to be (high ratio of "sun tracker motion"/"degree rotation"). The further you are going to be from your target the more accurate you need to be. Imagine for instance: you can lay a mirror flat beside your house and you will reflect sun onto it for a big part of the day. We don't want to go too big because it will become unwieldy and require too much energy to move.

I elected to use lengths of 10.5cm just to keep the whole kit relatively compact. You should consider whether your loved ones will permit you to install this ungodly contraption where you want it. You should also consider the square footage needed to accommodate this swiveling, tilting apparatus.

We can start with building the vertically aligned rhombus:
  1. Chop up your flat bars into equal lengths (I use the Ikea clothes drying rack end pieces).
  2. Line up the flat bars and use C-clamps to keep them lined up.
  3. Use a drill press or drill with the drill bit matching the bolts you will be using. In my case these were 3/8 inch
  4. Cut a 2cm length of tubing that is slightly wider than the spindles
  5. Weld two bolts, perfectly opposed to the tubing.
  6. Bolt them together.

Step 5: STEP 5: Solar Engines

I ordered the solar engines and motors from Solarbotics, I was very pleased with the service and clear instructions that came with the kits. I had no prior experience with soldering and was able to put together the kits without any major issues (they are meant for educational purposes). The video below shows how the competing solar engines work. Basically, I wire the solar engines to turn the motor in opposite directions, the motor moves the whole kit (two panels) in the direction towards the light (a pulley for the vertical and a wheel for the horizontal). If the light is mostly on one side then the motor turns towards more often and moves the kit towards it, if the light is shared exactly between the panels, then we get equal opposing bursts of motion (we are pointing directly at the sun, so we want to stay there!!).

The circuit board is printed on the back of the solar panel, which is a very elegant and compact design. The only issue was all the soldered bits are sticking out the sides which made it more challenging to protect the electronics from the elements. Once you have assembled the engines, test it out to see if you were successful. I was disappointing at first because under artificial lights, they would only have a movement every 5-10 minutes. Its those damn energy efficient bulbs though, because under direct sunlight, some of them were running constantly while others were bursting every 2 seconds! I switched out the capacitors to a higher capacity to give less frequent, and more power bursts, I probably should have changed the trigger and C2 capacitor as well to optimize the performance.

Step 6: STEP 6: Enclosures for Solar Engines

I looked at some enclosures at the local electronics store, however none really met my criteria. I needed to have a window to let sunlight in and ideally I could have the flexibility to play with the geometry. I did find one blue tinted clear case, but I was worried about the "greenhouse" effect overheating and damaging the electronics. 

I decided to make my own enclosures out of sheet metal; waterproofing and shorting out due to conductivity needed to be worked out, but nothing silicone and electrical tape couldn't solve.

Anytime you work with sheet metal, it is a good idea to make a pattern out of a thin cardboard (cereal box). Sheet metal is rather expensive so you want to avoid cutting out a dozen failed prototypes. Also sheet metal has a thickness; if you use printer paper, you are underestimating the "losses" that will occur at folds. 

These enclosures would be very cool as 3D printed parts (future update?).

LESSON LEARNT: Think of the order in which you will need to make your folds. In some cases I had to make a big fold with the brake early on, bring it back to get a smaller fold in. The creases tend to stay supple.

Step 7: STEP 7: Mounting the Motors

The geared motors have a long, cylindrical shape with two flattened sides for most of the length. I used this geometry to wedge the motors into place. For the vertical drive, I drilled a hole into square tubing and widened it by pulling on the tubing with the drill bit still treaded through the piece. This method meant quite a bit of fiddling and trial and error, but resulted in a snug fit.

For the horizontal drive, I used square tubing once again by inserting the motor into the end and wedging it into place with a wooden shim. I flattened the shim somewhat with a vice to ensure a snug fit.

After wiring was completed I did my best to waterproof the setups with electrical tape and folded sheet metal.  

Step 8: STEP 8: Mirrors

I had picked up some giant decorative mirrors from a neighbour that had put out in the trash; however these were very heavy and would be difficult to mount. I considered some plastic mirrors that I had seen at Ikea, (light and can be drilled trough to mount). I eventually settled on a decorative mirror from Walmart (door hanging style). These are crazy cheap (8$), very light and framed in plastic. The dimension was quite good too: I figured I would cut the mirror in half (one for each side). Getting a clean break was none too easy... I didn't score the mirror prior to sawing the plastic frame (with a hand wood saw) . A crack to propagated diagonally through the mirror, essentially ruining half of it. I went back out to the store and this time I scored the mirror along the center, so that if I accidentally cracked it, the mirror would hopefully follow the path I had provided. FAIL. This time thought the crack wasn't too far off center and I decided to use it as is. 

To mount the mirrors onto the crossbar, I spent significant time head scratching before settling on the final solution. I cut two lengths of flat steel to the width of the mirror frames. I drilled holes in the four corners of each through which I would pass narrow bolts. I raised the "normal vector" bar to exactly vertical and clamped the pieces of flat steel onto the cross bars for welding. After welding, I scratched the hole patterns of flat steel onto the mirror frames. The "Bisector Spindle" ensures that the unit is "Bottom Heavy" because the pulley relies on the constant slight tension.

Step 9: STEP 9: Paint and Finishing Touches

Nothing special here. Just tape up the bits you don't want paint on (nuts, bolts, stainless bits). I found this paint in the bargain section (2$), it ended up being greener than expected. 

I also needed to provide the wheel with a grippy surface to travel on, so I used some leftover roof covering (a giant roll of shingle). This also allowed me to adjust the height of the track as the wheel was floating on some parts and of the track. I cut and folded peices of the tar paper and inserted them under the "finishing piece".


This was a really fun project, much was learnt. There are still quite a few of adjustments to be made (e.g. lining up the mirrors so that they are pointing at the same spot and deciding on the placement of the solar engines and install them permanently). But so far, I am very pleased with the result, even though I am not convinced that I will ever get consistent results, I will let you know.

Update: I got a few days of good results before one of the motors conked out. I am not sure that I doubt that I will invest in another motor given that it likely failed due to fact it was not designed for extreme temperatures and moisture. This project was a blast to build and in the end showed that an analog, non-clockwork heliostat is possible.

I hope that you have learnt something from this Instructable that you can apply to your own project.



    • Oil Contest

      Oil Contest
    • Water Contest

      Water Contest
    • Creative Misuse Contest

      Creative Misuse Contest

    28 Discussions

    Thanks for the comment. Apparently I didn't get the geometry right (see the comments), but if you are looking for inspiration:


    You can place the mirror on a polar axis (points to north star) and then be able to tilt the mirror off that axis to point to the target. As the time of year changes (sun declination) you'll have to change that tilt about once per week in spring and fall, but not as often in december and june. The polar axis only needs to turn at 15 degrees per hour (360 degrees in 24 hours), so no calculations are other mechanics are needed. The option I am going to try is a series of 4 solar cells on each of the 4 sides of my target window to power two 12VDC motors in forward or reverse, depending on where the Sun is hitting. No other electronics. It would require resetting the position of the mirror each morning. I like this method over the polar axis and even computer calculations because I don't have to do any careful set up procedure in get the base angle correct and tight, nor adjustments to the calculation if the target is not due south. The math for bisecting the angle is surprisingly hard because you can't do it in polar coordinates without first converting to rectangular coordinates. See my profile picture for how I save $500 last year in heating my 4000 sq ft house using $200 of materials. But I had to adjust the four 4x8 insulation boards covered with aluminzed mylar ($50 from amazon) by hand 5 times a day. This year, I want to have some motors doing it for me!!! It can't survive strong winds, but I just had to twist 2 bent nails to remove each of the 4x8s and then lay them against the house (3 minutes work). Ideally, they would be moved to cover the outside of the windows each night for insulation. One 4x8 has up to 3,000 watts hitting it. About 30% was lost from bad aiming and the boards being wider than the windows, and 20% from the double panes. But even more was lost from the oak tree that blocked all the mid-day sun....and I still saved $500. With motors and that tree gone, $800 savings per year seems possible. On good days that are not too cold, I can get the house up to 80 F and keep it there until about 3 pm. Then the house loses about 1 F per 45 minutes, so I can stay above 70 F until 10 pm. Snuggle in bed warmly and suffer some morning 60 F cold until 9 am, and 50 F days with zero heating bill are tolerable. A north window with an oversized heliostat can get 3 times more sun energy than a south window because there is not a cosine-angle loss at any time during the day. It's possible to do my 4 solar cell method with only 2 cells and 1 motor (1 turning axis) but it requires careful setup. My manual adjusting was needed on only 1 axis because I set the axis approximately halfway between the polar axis and the target window.

    14 replies

    Oops, I forgot the 15 degrees per hour polar axis trick doesn't work unless the target is in the exact direction of the base of the polar axis. 15 degrees per hour trick to work, the target window has to be exactly due south of the heliostat. But for all reasonable conditions where the target is approximately south of the heliostat, there is a single-axis rotation (single motor) solution that turns faster in morning and afternoon. For most of the winter, that axis will not need adjusting except by a few degrees, generally less than 5 if any. But the mirror tilt off that axis will need to change about once a week. From about 36 after fall to 45 on december 22, back to 36 degrees off the axis as spring gets near. For my situation where the window is due south and the heliostat is even with it and 32 degrees latitude, the rotating axis tilt is 13 degrees up from polar axis towards the window. Looking south, the polar axis is equal to your latitude below the horizon. My latitude is 32, so 32 minus 13 = 19 degrees main axis tilt below the south horizon, so the north end of the axis is 19 degrees above horizon. At latitude 45 degrees, the tilt above north horizon is 15 degrees (and the tilt off that axis ranges from 39 to 48. So most everyone in U.S. could use an axis set about 14 degrees above north horizon and allow the mirror to have a manually adjustable tilt of 35 to 50 degrees off that axis, if the heliostat is level with window and due north, by however many feet is needed to get out of shade of the roof. You need one north facing 6'x6' bay window or sliding glass door and two 4x8's for every 1,500 sq feet and good insulation and open sky to have zero heating bill on sunny days. Material's cost: $30 two insulation boards, $15 door hinges, $20 aluminized mylar, $50 electric motor and solar cells, $10 of 2x4's and 1x2's. But I have not worked out the gearing for the motors.

    oops, for the US, it's your latitude minus 14 degrees is the tilt above the north horizon that should suffice for a single axis design (not "14 degrees" as I said) . For heliostats a long way away from the window, things have to be more precise. But adjusting the mirror tilt every week is a hassle and the initial angle needs to be accurate, and it changes if the heliostat is moved, so I think I am just going use 2 normal axis and 2 motors. Instead of solar cells, I am thinking about using 4 LEDs in series on each side (16 LEDs total) to turn on 4 mosfet transistors that power the 2 motors forwards or backwards. I learned from redrok that LED's can be used to detect light and they should be plenty to turn on a mosfet. He likes more complicated electronics than me because he's good at doing electronics. He wants to do a microcontroller and everything. I just want to get my house heated ASAP. BTW, the huge amount light coming into the house erases the feeling of winter. It's more than great to have all that warm light. But you got to think big. Glass mirrors are not big enough. Don't even buy the mylar and try the aluminized side of the 4x8 insulation board, just leaning it up against something, if you can place it close to a large window or large sliding glass door. I stay home all day, and I like it warm, so out heating bill on this large old house is huge.

    Hi zawy;

    I have designed some extremely simple trackers pretty much based on just Blue LEDs and MOSFETs. See:
    Or even less parts if you have a wall wort that outputs low voltage AC power. See:

    redrok, thanks for the circuits. It looks like I'll be going with That really clever but finicky simple AC circuit. With the Irf 530 mosfets i have the only way i could get it to work was with 5 660 nm or 5 850 nm LEDs (testing with halogen lamp which is really close to Sun with little bit extra infrared). 3 660 nm is enough voltage and coulumbs for the gate, but the circuit wanted to stay in AC on without any light, hard on the motor and really hard on the mosfets. But by adding forward diodes in series with the reverse gate-leakage diodes, all seems well, but then i need 2 more LED to be more sensitve to light. Other wise, i would have been buying 2 of your $26 circuits. the 850 nm leds supplied 0.3 mW whereas the 660 nm suplied 0.1 mW... about 3 and 1% efficency for 0.01 cm^2 dies at 100 mW/cm^2 if i closely simulated the sun, except that the lens amplifies, so less real efficiency. I think they are nearly the same angle lens, but 1/2 the angle means 4 times the light intensity when pointed directly. I tried resistors in series with the leds but had no luck. My motor is 12 v 0.1A, but it seems like a 1A motor is possible. I used 1N4454 diodes. I don't know how, but the voltage stays the same pos or neg polarity with small peaks over the full 60 hz cycle. Since i only need a few joules per hour to turn the heliostat, 6 leds, a 1 mF capacitor and a zener could be a sufficent solar cell, especially for stepper motors. I have completed a 2 axis PVC design to hold 2 4x8s and I'll edit the instructable or add a new one hopefully this week, with video of operation.

    Hi zawy;

    The IRF530N MOSFET is not suitable for this circuit:
    The IRF530N gate threshold is about 4V, see:
    However, it needs even more voltage to turn on sufficiently.
    The IRFZ3708 is much more suitable.
    The measured threshold voltage is about 1.7V.

    You mentioned that both MOSFETs are turning on at the same time.
    This is caused by leakage currents getting into the gates from the drains.
    This can be dissipated a 100MOhm resistor, (generally unobtainable).
    I uses 1N4148 signal diodes which have suitable leakage.
    Don't use low leakage current diodes!!!

    Use good quality Blue LEDs and the IRF3708 MOSFET.
    If you are wanting to use higher current motors a heat sink may be needed on the MOSFETs.


    I only have Irf 530 on hand. My cheap oscope was affetcing the circuit, so the series diode was not working unless the oscope was attached. The higher gate voltage of the 530 allows 10 Mohm instead of diode to work. But that also means I need 5 reds for forward, and 6 reds for reverse. Likewise, I don't have blues. I'm just trying to get it working today without having to order anything. And for my purposes, 1 or 6 diodes doesn't make any difference.

    Hi zawy;

    Even when you use the 10MOhm shunt resistors you still need the shunt diodes.


    It seems to work good with just the resistors but I didn't look at the waveforms with the scope. I have it operating the heliostat. Are you sure the 1N4148, good 5 mm Blue LEDs, and IRF 3708 work good? When I update my instructable, I'll reference your page and these specs for the benefit of using 4 blues instead of the 20 reds I'm using.

    Why blue and green LEDs? 660 nm red LED 5mm "lamp" types are 1.9 V. I've emailed you before about my heliostat work. I believe I have the single-axis heliostat math worked out now, with less than 0.5 degree error for U.S. latitudes, winter, and a limited range of heliostat-target arrangements (window ideally due south and equal or below heliostat's south horizon. See my instructable.

    Hi zawy;

    You are thinking of the LEDs as, well, LEDs.
    I think of them as little PhotoVoltaic cells.
    As PV cells the don't generate nearly as much voltage as when operated as LEDs.
    Rule of thumb as PV cells:
    Red 1.25V
    Yellow 1.4V
    Green 1.6V
    Blue 1.9V

    Hi zawy;

    I have designed some extremely simple trackers pretty much based on just Blue LEDs and MOSFETs. See:
    Or even less parts if you have a wall wort that outputs low voltage AC power. See:

    I really like your concept (solar panels around your target doing your aiming and powering).

    Redrok has contacted me to explain how I've underestimated the complexity of splitting the angles (as you have also noted). I will be updating this instructable once I fully understand my faulty logic. You should put together an instructable to show us your strategy!

    I'll try to get to motorizing it this coming winter. Here's an instructable I just published for what I did last year.


    Great 'ible! Very nice ideas very nicely shown. Many thanks!