The Single Axis Solar Tracker controlled with Arduino which is open source prototyping platform based on easy-to-use hardware and software.
How it works,
The #Solartracker tracks the Sun with help of LDR's placed on both side of the Solar Panel.
If the value of Right LDR goes high the Servo Motor will rotate Right side ,If left LDR goes high servo will rotate Left side. If both values are same the Servo will stop rotating.
Buy The Solar tracker Kit : Order Project Kit :- Assembles / Not assembled (Instruction manual included(Document)) - With Help & Support
If you have any trouble comment or contact me : @technical_tamizha_official
Tutorial Video :
Here is a list of the items which you need in order to complete this project. If you are looking to make a dual axis tracking stand then you will need to double up on the servos, LDRs and resistors.
An Arduino (Uno used here)
Single Axis Tracking Stand (Brief DIY Design)
2 x 10K Resistors
2 x LDRs
1 x Solar Panel
Connection Wires
Servo Motor
The specific servo model or size has not been stated as it depends on the size and weight of your solar panel. The one used in this project is a 9 gram analogue servo. You can use any size PWM hobby servo with the Arduino although the larger servos will require their own power source.
Circuit Diagram: This Circuit Diagram will make your Connection simple. Note : connect servo to 9th pin - (R - Resistor) (PR - Photo Resistor(LDR))
Program :
Order Project Kit :- Assembles / Not assembled (Instruction manual included(Document)) - With Help & Support
Download Or Copy Paste the Program in your Arduino IDE
Download : Single Axis Solar Tracker
//Program by Technical Tamizha #include <Servo.h> //including the library of servo motor Servo myservo; int initial_position = 90; int LDR1 = A0; //connect The LDR1 on Pin A0 int LDR2 = A1; //Connect The LDR2 on pin A1 int error = 5; int servopin=11; //You can change servo just makesure its on arduino's PWM pin void setup() { myservo.attach(servopin); pinMode(LDR1, INPUT); pinMode(LDR2, INPUT); myservo.write(initial_position); //Move servo at 90 degree delay(2000); } void loop() { int R1 = analogRead(LDR1); // read LDR 1 int R2 = analogRead(LDR2); // read LDR 2 int diff1= abs(R1 - R2); int diff2= abs(R2 - R1); if((diff1 <= error) || (diff2 <= error)) { } else { if(R1 > R2) { initial_position = --initial_position; } if(R1 < R2) { initial_position = ++initial_position; } } myservo.write(initial_position); delay(100); }
Upload the given code into the Arduino. if you have any questions regarding the solar tracker project you can ask in the comment section or contact me : @technical_tamizha_official
Did you make this project?? share it with us
Commentaires