Computer Based Heliostat Electronics / Making it Move

Subscribe to my Feed!

Update: This page contains information on my old heliostat electronics system which was based around a PC. The newer Arduino Sun Tracking / Heliostat Electronics Control System page is more up to date than this one; however, some of the information on this page can still be useful. Not all of it is necessarily relevant to the Arduino Control system though, so watch out.

This page will cover the electronics you need to buy/scrounge/steal to make your heliostat move. There is already a lot of information on the net about controlling stepper motors with computers, so this will just be a quick overview to help you get an idea of what you need.

The items used for moving a heliostat are essentially the same as what is used for a CNC machine’s motion. If you are familiar with CNCs, you will be able to pull this off with no trouble whatsoever.

However, if things like stepper motors and driver boards are completely new to you, the information presented on this page might make this project seem out of your reach. Don’t let it scare you off though. It’s not as hard as you might think it is.

In this tutorial, I will tell you what I personally am using for my heliostat’s motion. This doesn’t necessarily mean that what I use is the best, the easiest to find, or the easiest to put together, it just happens to be what I had on hand when I decided to build my heliostat.

Also, I would like to bring up the fact that I am not an electronics expert. I can point you in the general direction of what you will need, but, if you have a particularly in depth question regarding electronics, you would probably be better off asking someone else.

Keep in mind that some of the information on this page might even be wrong to a certain degree due to the fact that don’t have an extensive amount of expertise in this area. I am just a hobbyist who is relaying his experiences.

What You Will Need

A computer with a parallel port

A power supply
A driver board
Stepper motors

A parallel port cable
Wire for connecting everything
Limit switches (somewhat optional)

Computer with a Parallel Port

The first thing you will need is a computer with a parallel port. Parallel ports were (/are) generally used to connect the printer to the computer, but, nowadays, the printer is attached via USB. For most people, parallel ports are mostly obsolete, but, for those of us who need to control stepper motors, they are still very useful.

You can generally find parallel ports on computers that are only a few years old, so yours might have one already. If not, you can buy one that plugs into the PCI slot.

If you already have a parallel port but it is connected directly to the motherboard, you might want to still go ahead and buy a PCI to parallel port card. That way, if you hook something up wrong, you will only fry the PCI card and not the whole motherboard. (hopefully:)

Also, USB to parallel port cables will not work for this, so don’t bother buying one to try.

Once you have a computer with a parallel port card, make sure that it works with the Sun Tracker program before moving on. There is no point in buying more stuff until you know for certain that you have a working parallel port.

This page will show you how to test it with the Sun Tracker program Making sure that Your Parallel Port Works.

Parallel ports can be finicky creatures, so test it now before it causes too much aggravation.

Power Supply

The next thing you will need is a power supply. It’s purpose it to power the driver board and, ultimately, the stepper motors. You have a few options available.
You could:
A. Just buy a power supply like I did.
B. Modify an existing power supply.
C. Build one from scratch.

Here is the power supply that I am currently using. I bought it off of EBay a few years back to use with my old CNC machine, and I think it cost about 30 dollars.

In case you can’t see it in the picture, the output is 31V 2420mA. You should check your driver board’s documentation to find the appropriate output for your power supply.

DSCI0187 []

Modifying an existing power supply would be the path to take when you’re trying to do things for as cheap as possible. I think the best option for a cheap power supply would be a computer power supply. A tutorial which will show you how to modify one is at the reprap site. The link is If that page doesn’t have what you need, a quick Google search should yield more on the subject.

For our purposes, building a power supply from scratch isn’t really necessary because it should be fairly easy to find one large enough already built for a reasonable price. Of course, some people will build one from scratch for the simple fact that they like doing it, so it still remains an option.


Driver Board

Next up on the list is the driver board. The purpose of the driver board is essentially to boost the signals outputted from the parallel port so that they are powerful enough to drive the stepper motors. (That’s an oversimplification, but it’s accurate enough for now.)

The one that I’m using at the moment is the Hobby CNC EZ Driver Board Kit. It’s pretty cheap as far as driver boards go, but you have to solder it together yourself. It does have instructions for doing it though, and I’ve put two together myself without incident.

The EZ Driver Board Kit is meant for CNC machines so it can control up to three stepper motors, but you will only need two for moving your heliostat. 2 axis driver boards can be found on EBay for reasonable prices, so you might save a little bit of money if you go that route.

Another option would be to buy a 4 axis driver board so that you can control two separate heliostats with the Sun Tracker program. 4 axis boards are pretty common and cost just a little bit more than the 3 axis boards. The Hobby CNC site above has one available.

Things to Watch out for when Buying a Driver Board

Something you may want to watch out for when choosing a driver board is whether or not the parallel port cable can plug into it easily. In some cases, you need to wire it manually by cutting apart the parallel port cable and connecting each of the necessary wires/pins. This isn’t especially difficult, but, if you are already new to this sort of thing, it steepens the learning curve. Another option would be to buy a breakout board to gain access to the necessary pins, but that adds to the cost.

Another thing to be careful about when choosing a driver board is whether or not it is able to power large enough stepper motors to move you heliostat.

You might also want to double check that the driver board comes with heat sinks attached. In some cases, you might not need them, but I’ve seen boards on EBay that said heat sinks were required but weren’t included.

It is possible to buy the heat sinks separately and attach them yourself, but that increases the price. That driver board you just found on EBay,which looks like it is a great deal might not turn out to be as cheap as you think it is.

Stepper Motors

The stepper motors are the final link in the chain of electrical devices that are needed to make a heliostat move.

The size of the stepper motors is based on the size of the heliostat. The ones that I’m using have 90 of holding torque, and I don’t think I would try anything much less than that. Of course, if the heliostat is well balanced, it should take hardly any force at all to move it. Extra torque does, however, allow for some breathing room.

There isn’t a whole lot that needs to be said about stepper motors as the various types that you generally run into don’t differ greatly. The one thing you need to watch out for though is whether or not your driver board will accept the same number of wires that your stepper motors have.

It is pretty typical that 4 wire stepper motors will not work with many driver boards. Check the driver board’s documentation to find out what type of stepper motors it works with.

Parallel Port Cable

The parallel port cable is what connects the computer’s parallel port to the driver board. Make sure that you buy a cable with the correct ends on it. The Amazon link below is an example of one that would work.

You can buy them in 25′ lengths or, perhaps, longer (although I didn’t see any over 25′ on Amazon when I checked). The longer cord is only necessary if your driver board is far away from the computer. This would be the case if you mount the driver board right next to the heliostat.

The other possibility is when the driver board is set right next to the computer. In this case, you would only need a parallel port cable that is a few feet long. However, the wires that go from the driver board to the stepper motors would then have to make up the distance. This sort of wire will probably cost more, but you might be able to find a bargain on it which could put it below the cost of the parallel port wire.

Wire for Connecting Everything

You will need wire both for connecting the stepper motors to the driver board and also for setting up the limit switches if you choose to use them.

The only thing to keep in mind with the stepper motor wire is that it needs to be thick enough to carry the current without overheating. Also remember that longer wire has a greater voltage drop than a shorter one. This means that you will need to get thicker wire to compensate.

The wire for the limit switches doesn’t need to be anything fancy. I’ve successfully used telephone wire for this sort of thing.

Limit Switches

The limit switches act as a sort of off switch for the heliostat. If the heliostat moves too far and presses one of the limit switches, it will stop what it is doing and wait for someone to realign it.

Limit switches can be found in just about any electronics catalog, but I have found the prices to be reasonable on EBay.

You will need four limit switches, and they need to be normally open, NO for short.

Subscribe to my Feed!