Go Down

Topic: arduino dual axis solar tracker (Read 10009 times) previous topic - next topic

Kostas Kokoras

Oct 30, 2012, 07:04 pm Last Edit: Dec 29, 2013, 08:11 pm by Kostas Kokoras Reason: 1

It's an Arduino project controlling 2 linear actuators with 24v dc motors calculating the position of the sun on the sky using solar geometry http://www.pveducation.org/properties-of-sunlight/motion-of-sun
One motor for Elevation and the other for azimuth.
Schematics available in video.


And you need some guidance for what? Maybe posting in the correct place - Exhibition/Gallery.

Kostas Kokoras

And you need some guidance for what? Maybe posting in the correct place - Exhibition/Gallery.

Yes, you are absolutely right, i missed that ...
Maybe a mod can move it to correct place for me, pls?


OP, you can use the "report to moderator" control to contact us.
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.


If you feel discouraged due to the comments posted so far ..don't. Some people spend their day doing just that. Fortunately there are not many on this forum

I looked at your video and indeed it looks good. Have you tried it in the sun with the weight of full panels on it yet. I would like to see your code and oerhaps a schematic that is not on a video. Some of us don't have the download capacity for a lot of videos.

While on that do you know how to save a u tube video without jumping through a lot of loops joining stuff?
I looked for your email too but that was the same I suppose ..."join all this stuff then we might give it to you"

Kostas Kokoras

i am really happy that at least one person is really interested in this project, hi april  ;)

The schematics on video are.....

1. for the pontensiometers to the to axles for measuring the angles of tracker one for elevation 30-90 degrees and another for azimuth 120-240 degrees
pontensiometers dont give me very acurate measurment but that was what i had in hand...encoders will do better job i suppose

2. a switch so i can choose between sun tracking mode and manual mode

3. four buttons that move the tracker in all diractions when in manual mode, pressing together the UP and East will enter calibration mode
in calibration mode moves automatically to the limit switches of all directions one by one and measure the value of pontensiometer and stores it to rtc memory.

4. DS1307 iic RTC and memory, maybe i should use capacitors on the crystal here, cause its loosing time :smiley-red:

5. just a led to idicate that one of limit switches is reached

6. four limit switches of the four diractions of tracker, limit switches are mechanically adjustable so u can control the angle widths.

7. two motor control circuits h-bridge with relays, from here http://arduino-info.wikispaces.com/DC-Motors with the effect known as "fly wheel braking". 

here are 3 different pics of electrincs as the project was procceeding

No i didnt use real panels cause i dont have one. the mechanical construction is done from an old fence that was removed. i bet it can hold one real panel for sure or maybe two. the piece of wood i put on has about the same weight of a real panel.the linear actuators are from hospital beds so the can support more than 100Kgr each. i suppose a mechanic must design a construction that is correct for the job it will do depenting of how many panels are gone placed on.

here is the arduino code, most of comments are in Greek language, sorry..

here is the VB code

as for download a video from youtube i use jdownloader, just copy the link from youtube and the rest is easy.


very nice ! I liked it a lot.

Very nice little program running on the PC.
Maybe you can add a reading of power being output by the solar panel (when you have one), also light sensor values, etc to the graph.

keep posting. congrats

Kostas Kokoras


I like your project. I wrote a "Solar" program in BASIC about 30 years ago. There is a lot of considerations as you work through this problem. Longitude and latitude of the solar site, the solar day of the year. Azimuth, and position of the sun, etc., etc. 30 years ago, it was positioning panels built of old automobile radiators to supply heat. With the availabilty of small microprocessors like the Arduino, much of the celestial math can be eliminated, and just differentiate between multiple light sensors, and logically move to the brightest as your target. Keep up the good thought process, us old guys are counting on you!


nice project!
Have you measured how much energy the tracking costs and how much the extra gain is?
And if you would only have one motor?
Rob Tillaart

Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -
(Please do not PM for private consultancy)


nice project!
Have you measured how much energy the tracking costs and how much the extra gain is?
And if you would only have one motor?

I wish I had a copy of my old program.."solar.bas" that was on many old BBS's and more than one Public Domain software CD's. My program calculated the output (in wattage) difference between panel alignment settings. The misaligment of a panel by as little as 5 degrees was significant, especially during the winter months where the solar day is short. Dig around and try to find that program, I had included all source code and permission to copy, etc.


First of all very nice project and very neat Arduino and VB sketch. Thanks for sharing:I also just completed the dual axes sun tracking system but i have used no mathematical model. Actually i dont want it too much complication like yours. Here is my circuit with some info.
Simply...You can't afford me..

Author Of:

Oops..some one gave me Karma...:)

Kostas Kokoras


Can some one share me formula evolved in construct Dual axis tracker

Kostas Kokoras

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131