Project showcase
Solar Tracker

Solar Tracker © GPL3+

The project was to create a little solar tracker, that follows a light. This device can be linked to a robot, a parabola, etc.

  • 1,303 views
  • 0 comments
  • 5 respects

Components and supplies

Necessary tools and machines

Hy gluegun
Hot glue gun (generic)

About this project

In order to create a solar parabola tracker, we wanted to create a mini solar tracker in the first place.

This device is working thanks to 3 photoresistor and 2 servo-motors.

Code

CODE Solar trackerC#
// 29/07/2017 - Programme C - Tracker solaire -  Carte Arduino ( UNO ) 
// Ce programme a pour objectif de : 
//                                     -  Traiter les informations apportés par les photorésistances
//                                     -  Gérer la rotation et l'inclinaison du module pour suivre une source lumineuse
// Programme réalisé par Techno_Fabrik

//********************BIBLIOTHEQUES****************************
 // bibliothèque permettant d'utiliser les commandes pour servomoteurs facilement
 #include <Servo.h>
//********************DECLARATIONS****************************

float photo_r_0,photo_r_1,photo_r_2; // valeur des photorésisances
int servo1=6; // commande du premier servo
int servo2=7;
int angle_rot=90,angle_inc=90; // angle des servos
Servo moteur_rotation; 
Servo moteur_inclinaison;

 //*************************INITIALISATION **********************

void setup() {
  
 moteur_rotation.attach(servo1);   // on relie l'obtet au pin de commande
 moteur_inclinaison.attach(servo2);// on relie l'objet au pin de commande
  Serial.begin(9600); 
  delay(2000);
}

//*************************************** BOUCLE ***************************

void loop() {
 
while ( (angle_rot > 10 )&&(angle_rot< 170) && (angle_inc>10)&&(angle_inc<170)) // sécurité pour les servos
{
photo_r_0=analogRead(A0);Serial.print("R_0 :   ");Serial.println(photo_r_0); // entrée analogique 8 bits = 1024 valeurs = 0 à 5V
photo_r_1=analogRead(A1);Serial.print("R_1 :   ");Serial.println(photo_r_1);
photo_r_2=analogRead(A2);Serial.print("R_2 :   ");Serial.println(photo_r_2);

   
if ( photo_r_0<photo_r_1-3)  // selon la valeur des photorésistances, on va moduler l'angle des servomoteurs
{
  angle_rot=angle_rot-1;
  moteur_rotation.write(angle_rot);
}
else if (photo_r_0>photo_r_1+3)
{
  angle_rot=angle_rot+1;
  moteur_rotation.write(angle_rot);
}

if (photo_r_2>photo_r_1+3)
{
  angle_inc=angle_inc-1;
  moteur_inclinaison.write(angle_inc);
}
else if (photo_r_2<photo_r_1-3)
{
  angle_inc=angle_inc+1;
  moteur_inclinaison.write(angle_inc);
}
}
Serial.println(" ANGLE SERVO MAXIMUM ");
}

Schematics

Solar Tracker fritzing
tracker_solaire_d3wvgJqKAh.fzz
Picture of the fritzing schematic
f0b1a0_f26b266ad68542198a6854eb25d6bcd3_mv2_oqh2xUgGXk.webp

Comments

Similar projects you might like

DIY Solar Tracker Arduino Project ITA

Project tutorial by Ingeimaks Ingeimaks

  • 42,411 views
  • 7 comments
  • 37 respects

Solar Panel Sun Tracker - Phone Charger

Project tutorial by FIELDING

  • 87,281 views
  • 24 comments
  • 251 respects

Dual Axis Solar Tracker Panel with Auto and Manual Mode

Project tutorial by Giannis Arvanitakis

  • 40,548 views
  • 13 comments
  • 87 respects

Solar Tracker 35W with DC Motors

Project showcase by DemetrisEng

  • 31,149 views
  • 12 comments
  • 71 respects

Solar Tracker V2.0

Project tutorial by Brown Dog Gadgets

  • 34,274 views
  • 4 comments
  • 98 respects

Arduino Solar Tracker

Project tutorial by Saad Motahhir and Aboubakr_El Hammoumi

  • 34,834 views
  • 12 comments
  • 24 respects
Add projectSign up / Login