Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Gabriel

Pages: [1] 2
I have had a couple of people now ask me how to turn the sun's and heliostat's altitude and azimuth into the target's altitude and azimuth. In case it is asked again, I am organizing what has been put together on this subject here.

So you know where the sun is, the mirror is already pointing a certain direction, but which direction does the reflected light go?

This is a bit different then what is normally needed. Normally, you have the sun's position, you know the required direction of the reflected light (the target), but you still need to find the altitude and azimuth of the heliostat.

This is basically what was asked by metalbag at this link.

My reply to this questions was

There might be an easier way, but here is what I'm trying to do to solve this.

Basically, I thought that if I rotated the sun's vector 180 degrees around the heliostat's [vector], then that should give me the target vector.

I found the matrix for this on wikipedia. (Scroll down to where it says "Rotation matrix from axis and angle")
Since theta is 180, the trig functions simplify to 0 for sin and -1 for cos.
Out axis is the heliostat's vector, so I also substituted that it. The vector is named u in this case.

Then I just multiplied matrix R by the sun's vector (v) to get the rotated vector, which is the target vector.

I only did one simple test case to double check. It gave me the right answer, but go ahead and test it out for yourself just to be sure it works for everything.

I scanned the work and attached it to this post. I don't have the time just now to type it into code, but I figure you can do that for me. :)

I tried writing the vector clearly at the bottom, but let me know if you have trouble reading my handwriting.

I didn't have the chance to to do the actual coding at the time, but someone sent an email earlier who needed it so I went ahead and took the math from the image and coded it in.

I have attached it to this post. You will need to upload it to an Arduino to run it.

Believe it or not, it actually worked on the first try. That pretty much never happens to me:)

Hi all,

I have attached some updated versions of the Arduino Sun Harvester Program. There aren't any "exciting" changes in this particular version aside from a few bug fixes, but I have a lot of ideas for things that I hope to add.

Since there is probably going to be a lot posted under this topic, I went ahead and started this new thread to replace the old one here.

This program (as always) is released under the [url =]Creative Commons Attribution-NonCommercial-ShareAlike 3.0 license[/url].

Note that I haven't tested these programs much yet, but figured I would go ahead and post them to hurry up and get the ball rolling. This version only fixes a few bugs...

1. The program should now work with the latest version of the Arduino Software.
2. Fixed a bug which would cause the program to sometimes not go into wind protection mode.
3. Added a no potentiometer option which allows you to leave out the potentiometer when using a heliostat.

Like I said, I haven't tested this much yet, so keep an eye out for odd behavior. I haven't changed anything major though, so basic functions should still be fine.

Future Update Ideas!

Now that that's out of the way, it's time to think about what to add. Here are some ideas that I have heard or come up with since the last major update. Note that these are just ideas, so I'm not going to hold back. When it actually comes time to implement them, we will see what is actually doable. :)

In no particular order...

Find ways of simplifying the program so that it isn't so much of a pain to input custom settings.

Add simultaneous movement to the stepper motors instead of having them take turns.

Add calculations for heliostat designs with the mirror mounted away from the axes or rotation to make them more accurate.

Add options for trackers besides just the altitude and azimuth type machines currently supported.

Add better support for machines close to the equator. (Altitude angles greater than 90 degrees perhaps?).

Add code for GPS support.

Add code for Compass support.

Write Android app that sends lat, long, and time to Sun Harvester program using phone's GPS and time. (maybe)

Add standard settings for a heliostat / sun tracking machine so user doesn't have to input their own. (Will require a couple of good machine designs.

Try and get the program to play well with 32-bit Arduinos.

Try and get rid of libraries wherever possible so that newbies don't have to worry about installing them. (This was already mostly taken care of in the last update).

Maybe add a way to do data logging into the program.

Add the option to change settings through the Serial Monitor, or perhaps separate PC based program.

Write separate PC based program to interface with Arduino program. This has already been started to a degree. You can check out the attached Processing program if you wish. It is no where near finished, but you can still see where it's headed. I had already started the program under Visual C#, but have started porting over to Processing because it plays well with multiple platforms.

That's all I can think of at the moment. Although I'm sure there is probably more to add. Please post any ideas for the program that you may have.



Here are a few pics and stl file of a 3D printed enclosure for the Sun Harvester Shield made by Sebastian Gonzalez. This is part of a larger heliostat project he is working on at his university. Hopefully he will have more to send as he gets further along!

CNC Machine Builds / My "New" CNC Machine
« on: August 13, 2013, 10:43:32 AM »
Hobby CNC Machine Making Link's Shield and Robot Arm Parts

I finally got around to making a video of the CNC machine I built over the winter. I have built a few different CNC machines in the past, but none of them were especially accurate. I took my time with this one though, and it actually turned out really well. Finally! I have a CNC that cuts out circles that actually look like circles!

It probably took about 100 hours to design and build this machine, so obviously I'm going to show it off now that it's finished! I only have the video for now, but if people show enough interest I might do a full write up on it.

Heliostat Projects / DIY Worm Gear Based Heliostat Design
« on: June 25, 2013, 09:28:00 AM »
Hey everybody,

As I've mentioned before, it is one of my goals to put together a worm gear based heliostat design that can be assembled with basic off the shelf components found at your typical hardware store. Aside from the stepper motors, limit switches, and Stepper Power Control Board (not strictly required), I was able to get everything needed to build this machine at my local Lowe's store.

Those who follow this forum closely will notice that this is a variation of Jim's heliostat design.

Experience has showed me that worm gear based machines are much easier to set up than the linear actuator based machines I have put together in the past. It probably only took me 15 minutes to mount and align this one, and that includes the time it took to get all of the various tools and things together.

I actually cheated a bit on this one and ended up cutting out all of the various parts on my CNC Machine. Once I work through a few bugs I plan on trying to make a PDF file that you can print out and use as a template for cutting everything out. That way it can be built using more basic tools.

These pictures are just a teaser for now. I'm going to try and build another one and make some modifications / improvments as I go. If you want to have a closer look at how everything goes together, you can check out the Sketchup model.
The model is very close to the real life version since the gcode was using it.

I hope to put a bigger mirror on it later. You'll also notice that the PCV Pipe end caps for protecting the motors from the rain haven't been put on it yet. Once I'm sure I won't need to take it apart again, I will seal everything up with silicone. Although you can't see it from the pictures, I have a Stepper Power Control Board mounted inside the machine. Hopefully I will be able to seal everything up well enough to protect it from moisture.

Materials List
Here is a quick materials list and price breakdown. It's not complete yet, but you will at least get a fairly accurate idea of what is needed.

Gatehouse Arborley 4-in x 4-in x 72-in White Vinyl Fence Post: $15.97

EverTrue 0.75-in x 5.5-in x 8-ft Interior/Exterior Paint Grade PVC: $20.56

2-Count 1/4-in- 20 Zinc-Plated Standard (SAE) Regular Nut: $2.73

1/4" x 3/8" Bronze Standard (Sae) Flat Washer: $2.92

Mueller Proline 3/8-in Black Steel Nipple Fitting: $4.60

PVC Endcaps: I don't have the receipt, but I think this would come up to about $6.00 each.

Limit switches (about $4.00)

Stepper Motors, about $30

The total comes up to about $100 dollars in materials for this heliostat, however, notice that the vinyl fence post and piece of exterior trim are long enough to build multiple heliostats. Compensating for that, it comes to about $70.00 for this heliostat. Most of these items I'm sure can be found for cheaper online, so you might even be able to get the price below $50.00. Like I said though, this is just a rough estimate.

Energy Storage Projects / Ice from the Sun
« on: June 13, 2013, 09:50:43 AM »
In the winter, it is easy to use the energy from a heliostat since light can be converted directly to heat simply by shining it on, for example, a wall. At this time of the year though, it's hot enough that I'm far more interested in cooling things down than heating them up.

Here's a neat project that is actually able to do exactly that, use heat for cooling. It's called A Solar Absorption Ice Maker. There is a fair amount of information on them scattered around the net, but this is the first PDF I found that actually explains the process in plain English.

It's something that I definitely want to try at some point. You figure if I already have a heliostat array set up, then I wouldn't need to build the parabola part of this ice maker. The rest of it actually looks relatively simple.

I once did a "quick" test with a chest freezer to see how long it would take to freeze about 5 gallons of water. I wish I had written it down, but I think it took about 4 days to completely freeze all of the ice. It also took roughly an equal amount of time to thaw again. This is why I posted this in the "Energy Storage Projects" section of this forum. If you can use the extra energy available on a sunny day to make enough ice for extended food storage, then you are (sort of) also storing energy. ("sort of" because ice is more of an absence of energy, yeah I'm confused too.)

It would be interesting to see if anyone else has tried something like this.


Heliostat Projects / DIY Linear Actuator Based Heliostat Design
« on: April 30, 2013, 02:09:39 PM »
Hi all,

I finally had the chance to document the Linear Actuator based heliostat that I built. In general, linear actuator based heliostats can be a pain, so I don't know if you really want to bother building one. I did need to have one around for testing the program though, so I went ahead and built this one.

I hope to have a wormgear based heliostat put together fairly soon. I'll make sure to document that one too once it's up and running.

Parts List
One of my main goals is to have some heliostat designs available that can be assembled using fairly basic tools and off the shelf components. Indeed, everything needed for the design on this page can be purchased at your typical hardware store.

Here's an "off the cuff" parts list. It's not meant to be exact or exhaustive since pretty much every part can be substituted with something else. In general, try and use materials that can survive outside.
  • About 10 feet of treated 2x4
  • Two galvanized lag screws (I think mine are 3/8")
  • Two carriage bolts (like I mentioned in the video, something with a hexnut end will make your life easier)
  • 7/16" - 14 threaded rod 3 feet long (This will be cut into smaller pieces. I actually used two 12" pieces, but they might be a little too short for you)
  • Two stepper motors
  • Four end caps for 2" PVC pipe.
  • Two pieces of 2" pipe about 2" long.
  • Exterior decking screws (Mine are about 2.5 inches long)
  • Two limit switches
  • A short piece of PVC pipe to mount the altitude limit switch in
  • A 4x4
  • A mirror
  • Pipe flange
  • Pipe about 5" long
  • Some plastic to make various parts out of

Here is a video where I do a quick overview of the various aspects of this heliostat.

DIY Heliostat with Linear Actuators (Part 1)

Here are a few misc. pictures for reference.

Sketchup Models

You can download the Sketchup model for this design by clicking on one of the two links below. You'll notice in the below to pictures that there are two slightly different designs, one for the northern hemisphere and the other for the southern hemisphere. They are both essentially the same, but the southern hemisphere version is basically just the mirror image of the northern hemisphere version.

Sorry to all of you metric folk for all of the inch measurements! If you prefer, you can go to Window>>Model Info on Sketchup's menu bar and change the model to a different unit of measurement.

Linear Actuator Heliostat (Northern Hemisphere).skp

Linear Actuator Heliostat (Southern Hemisphere).skp

As you pan and orbit around the model, you'll notice that the parts on the heliostat have been color coded and that each of these parts have been laid out with dimensions added for easy reference. This model isn't 100% accurate to what I built, but it should be pretty close. Pay particularly close attention to the holes in the end of the white part. I tried to mention it in the video, but in case you missed it, these end holes aren't centered in the board.
Also like I mentioned in the video, you would probably want to change some dimensions if you are using a different sized mirror.

Linear Actuator Settings
Here are a couple of pictures which I hope should clarify what dimensions and angles you should measure when inputting them into the program's settings. You'll notice that the altitude numbers are especially weird. This is just how they turn out. One reason to draw out your model in CAD is to make it easier to figure out what your machine's linear actuator settings will be. As you can imagine, it would be really hard to measure these dimensions accurately in the real world.

Here are the approximate settings for this machine. I say approximate because your limit angle settings and max / min alt and az range settings might turn out to be different. You'll most likely have to determine those by experimentation.

Code: [Select]
                 {    1  ,    2 ,          14 ,      -1 ,      8.504 ,  8.632 ,   81.675 ,       1   ,     -1.15 ,       14 ,       -1  ,       5.5 ,    5.5 ,       90 ,       2,       -49,       -49,    -1.15 ,   55,       55 }

Technically, I'm not a student right now, but I figured I would do a quick post to break in the new forum category "Student Sun Tracking / Heliostat Projects".

This is a poster I put together about a year ago that showcases the Open Sun Harvesting Project. Much of the information on it is now somewhat out of date. It is interesting to see how much the project has progressed in the last year.

Student Sun Tracking and Heliostat Projects / Students Welcome!!!
« on: April 15, 2013, 07:44:16 AM »
I have recently realized that the majority of the individuals I have encountered who are interested in building either a sun tracker or a heliostat are in fact students. For whatever reason, most students seem to prefer to communicate with me through email, which is cool, but this method of communication has a downside. Basically, you guys never get the chance to meet each other or see one another's projects.

To help remedy this, I have created a new forum category which is specifically for students who are interested in building either a sun tracker or a heliostat.

Here are a few tips for this category:

1. Don't be shy! Everyone here is quite friendly.

2. If you've never used a forum before, don't worry it's easy. You can't hurt anything, so don't be afraid to try it out. The "Help" tab in the upper left hand corner should give you all of the information you need to get started.

3. Don't worry if your English isn't perfect. I have probably communicated with more individuals who speak / write English as a second language then I have with English as a first language. This is very much so a multi-language forum!

5. Don't be afraid to ask questions! Obviously, you shouldn't expect anyone to do your whole project for you, but that doesn't mean that you shouldn't ask questions if you get stuck.

6. Please do share your project when it's completed. Your work will most definitely inspire others once they see what you've done. 

7. Finally, since you are now a part of it, please consider adding your location to the Open Sun Harvesting Project's User Location Map.


Heliostat Projects / More Sun Harvester PCBs are in!
« on: January 15, 2013, 12:05:44 PM »

I have just received the first large(ish) batch of Arduino Sun Harvester Shields from the PCB manufacturer. 25 in total. I haven't assembled any yet, but everything looks good so far.

I hope to have them available for purchase in about a month, maybe less. I still need to set up a station so that I can quickly test them,  buy a stencil for quick assembly, and buy the electronic components. Once all of this is finished I'll be ready to assemble and ship them out.

If you would like to know when they are in stock, send me an email and I'll add you to the contact list. My address can be found at

Note that I haven't ordered any of the Stepper Power Control Boards that are used for controlling multiple machines yet, but let me know if you are interested in them.

Letting me know what you want ahead of time is a huge help because it gives me an idea of how many of the electronic components I should order. If enough people sign up, I'll be able to justify buying more components. Electronics parts are typically much cheaper  if you buy them in larger quantities.

I plan to sell the Arduino Sun Harvester Shields for roughly $70 USD each, not including shipping. The exact price depends on how much of my time it takes me to assemble them and how large an electronics order I'm able to make.

Thanks for your help and let me know if you have any questions!

Sun Tracking / Heliostat Arduino Interface Program

I've been working on this program for two or three months now, and it has finally reached the point that it is more or less useable. The video should be a reasonably good explanation for how to use it, although I didn't go super in depth since things will likely change quite a bit as time goes on.

Since making the video (hurricane Sandy knocked out my internet for awhile so I couldn't upload it) , I have already fixed the graph bug which didn't show all of the months. Also, ignore the Simple, Cube, etc buttons on the right side of the Solar Radiation Data Analysis Window. For now, using them could be a good way to crash the program. In general, the ctrl + alt + delete trick for forcing a program to close might be a good thing to remember when using it.

There are three attachments to this post:

The "Arduino Heliostat Control PC Interface" file holds the program that will install on a typical PC computer and is what is shown in the video. I think I included all of the necessary files, but let me know if you have trouble installing it.

The "Heliostat Power" folder holds the source code. The program was written with Visual C#, so you will have to download it if you want to help improve the code. The free Express version of Visual C# should be fine. I haven't added much in the way of comments yet, so good luck figuring out how it all works.  ???

The "SunTracker_Heliostat_Program_V097_d_XBEE" folder contains the program that must be uploaded to the Arduino if you want to experiment with connecting the PC to the Arduino. Note that although the program says XBee in its name, you can also just plug in with a USB cable, and it will work exactly the same.

The below link goes to the website where I am getting the solar radiation data if you want to try it for your location. Unfortunately, I don't know where to find similar data for other countries besides the US. If you know of something, please let me know.

Here also is the link to the PDF which is the User's Manual for the above data. It's definitely worth a read if you are into this sort of thing.

I think that covers everything for now. I should have more in the coming months.

UPDATE: (3/25/2014)
It's a bit overdue, but I have finally had the chance to both update and document this program.

Strictly speaking, the Arduino interface portion of the program has not been modified (although it needs to be); however, massive changes have been made to the "Solar Radiation Data Analysis" parts of the program.

UPDATE: (3/25/2014)
It's a bit overdue, but I have finally had the chance to both update and document this program.

Strictly speaking, the Arduino interface portion of the program has not been modified (although it needs to be); however, massive changes have been made to the "Solar Radiation Data Analysis" parts of the program.

You can read the full documentation for this update at this link.

The updated files can be found attached to this post below.
"Heliostat Power Output" is the normal executable file that will install the program on your computer.
"Heliostat Power Output" is the source code which you can use if you wish to modify the program or perhaps double check my work.

The updated files can be found attached to this post below.
"Heliostat Power Output" is the normal executable file that will install the program on your computer.
"Heliostat Power Output" is the source code which you can use if you wish to modify the program or perhaps double check my work.

Heliostat Projects / Heliostat Design(s) [Work in Progress]
« on: October 08, 2012, 11:56:00 AM »
Hi All,

Well, the Sun Tracking / Heliostat Program is mostly finished and fully functional, and the Sun Tracking / Heliostat Electronics are also pretty much done, so the next thing on the agenda is to come up with some machine designs.

There is, of course, this heliostat design
Since you only really need a saw and a drill to build the thing, it is accessible to most everyone who has basic construction skills.

There are some downsides though such as:
the lead screws would freeze in the winter
the lead screws tended to get bent easily which resulted in wobbly movement
the machine is very slow
the range of motion for the azimuth motion is restricted

Of course, many of these downsides could be overcome just by making some relatively minor changes to the design, which is something that I hope we will discuss here.

Another thing that I hope to discuss is an entirely new design.

What I'm planning on building for myself (and also possibly some other people since I keep getting asked if I sell them) is basically a long life, accurate movement, and minimal set up time heliostat.

This one will be based on wormgears, and I am going to try to make it capable of 360 degree motion along both the altitude and azimuth directions. I have attached a few screenshots to show what I am planning.

I wouldn't be surprised if it will end up taking me upwards of six months before this thing is really finished the way I want it to be. There are a lot of little things that I'm going to have to figure out. I am also going to have to invest in some small machine shop tools, so it will take some time for me to save up for them and also to figure out how to operate them.

Of course, the two designs I've mentioned so far certainly aren't the only ones.

There are a few others on this forum have shared.

If anybody has any input, I would be glad to hear it!

Pages: [1] 2