top of page

Juillet 2017 , par Techno_fabrik

Difficulté :

Durée :

PROJET : TRACKER SOLAIRE PARABOLIQUE

LE PROJET  

L'objectif est de créer un tracker solaire parabolique autonome permettant de suivre le soleil, et donc d'obtenir le meilleur ensoleillement possible. 

Schéma de principe

SPÉCIFICATIONS MATÉRIELLES :

    Parabole     carton et papier aluminium

    Socles         carton

    Tubes contenant l'eau      cuivre et tube rigide

     Moteurs       pas-à-pas

     Programmation    Arduino

     Dynamo

SPÉCIFICATIONS FONCTIONNELLES :

    Capter la lumière du soleil 

    Suivre le soleil pour une intensité lumineuse                 maximale

    Produire de l'électricité thermique

SPÉCIFICATIONS TECHNOLOGIQUES :

    Programmation C

    Capteur lumière       photorésistance

    Vanne autorisant ou non l'arrivée d'eau

    Inclinaison et rotation de la parabole

 

 

 

MATÉRIEL :

  1 module ARDUINO UNO 

  2 moteurs pas-à-pas ( NEMA 17)

  3 photorésistances ou capteurs de                    lumière   

  1 condensateur 47 uF 

  2 circuits pour moteur pas-à-pas

  1 batterie 12V

      carton 

      pistolet à colle

      aluminium 

      tube cuivre et rigide

      moteur en génératrice (ici, débitmètre)

PRÉREQUIS :

Connaissance des risques électriques. Montage réalisable par tous. Notion d'électronique et bases en programmation.

RÉALISATION

ETAPE 1: La parabole

La parabole a été réalisée à partir de 2 x 12 parallélogrammes fait de carton et recouvert de papier aluminium. 

Cette parabole est ensuite traversée par une barre permettant d'incliner ou non la parabole grâce au moteur pas-à-pas 24BYJ48.

Au bout de la barre, on a fixé notre module composé de 3 photorésistances . ( voir la page du 

ETAPE 2 : Le moteur pas à pas 24BYJ48

Nous avons connecté le moteur bipolaire pas à pas 24BYJ48 à son driver associé contenant le circuit ULN2003.

Il suffit de connecter les inputs INx (x = 1,2,3,4) aux sorties digitales de l'arduino.

On alimentera le driver en +5V.

Pour coder, nous utiliserons la bibliothèque Stepper.h , ce qui nous permet de commander facilement le moteur en lui donnant la vitesse : nom.setSpeed(vitesse), ainsi que le pas désiré : nom.step(+ou- pas)

ETAPE 3 : La rotation de la parabole

Pour faire tourner la parabole, nous avons mis celle-ci sur une base tournante. Le moteur pas-à-pas NEMA 17 ainsi que son driver A4988 permet de faire tourner la parabole dans un sens. 

Remarque : Nous n'avons besoin de faire tourner la parabole dans un seul sens pour ce projet, car la parabole doit suivre le soleil. Il faut par contre replacer la parabole tout les matins.

ETAPE 4 : Le moteur pas-à-pas Nema 17

    sous-étape 1 : Liaison Arduino - A4988

On connecte l'alimentation de la partie commmande au module A4988.

La broche 3 est connectée au step du driver: on pourra alors moduler la vitesse de rotation du moteur.

La broche 4 est connectée au dir du driver: cela nous permet de choisir le sens de rotation en mettant ce pin à HIGH ou LOW.

 

    sous-étape 2 : Alimentation des moteurs

 Les moteurs sont alimentés en 12 V (nous avons utilisé  une alimentation d'ordinateur).

On ajoute un condensateur de découplage de 47uF pour sécuriser le driver de possible pique de courant causé par le moteur.

     

Programme (codé en C)

// 07/2017 - Programme C - Tracker solaire Parabolique -  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 le moteur pas-à-pas 24BYJ48 et son driver facilement
 #include <Stepper.h> 
//********************DECLARATIONS****************************

 //Le moteur (fils 1 2 3 4) est branché sur les sorties 8 9 10 11 de l'Arduino (et sur GND, +V)
Stepper small_stepper(STEPS, 8, 10, 9, 11);     // Sens horaire
  
int A4988_pas = 3;
// nema 17 definir la vitesse
int A4988_direction = 4; // nema 17 definir la direction
float photo_r_0,photo_r_1,photo_r_2; // valeur des photorésisances


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

void setup() {
  
pinMode(A4988_pas,OUTPUT); 
pinMode(A4988_direction,OUTPUT);
Serial.begin(9600); 
}

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

void loop() {
 
photo_r_0=analogRead(A0);
// entrée analogique 8 bits = 1024 valeurs = 0 à 5V
photo_r_1=analogRead(A1);
photo_r_2=analogRead(A2);

   
if ( photo_r_0<photo_r_1-3)  
// selon la valeur des photorésistances, on va moduler l'angle des servomoteurs
{
  digitalWrite(A4988_direction,HIGH);
// Permet au moteur de tourner dans une direction 
  for(int x = 0; x < 1; x++) // 1 tour complet = 200 pas
  {// Permet de faire un PAS à une certaine allure. Pour tourner plus vite, changer le delay jusqu'à 1 , pour ralentir, le changer jusqu'à 30
    digitalWrite(A4988_pas,HIGH); 
    delay(5); 
    digitalWrite(A4988_pas,LOW); 
    delay(5); 
  } 
  
else if (photo_r_0>photo_r_1+3)
{
   digitalWrite(A4988_direction,LOW); 
  for(int x = 0; x < 1; x++) 
  {
    digitalWrite(A4988_pas,HIGH); 
    delay(5); 
    digitalWrite(A4988_pas,LOW); 
    delay(5); 
  } 
}
if (photo_r_2>photo_r_1+3)
// tourner la parabole en avant
{
small_stepper.setSpeed(40);
// + Speed = - Couple  ,
small_stepper.step(10);
}
else if (photo_r_2<photo_r_1-3)
// relacher la parabole
{
small_stepper.setSpeed(40);
small_stepper.step(-10);
}  
}

VIDEO REALISATION
Tracker solaire parabolique
Lire la vidéo
bottom of page