Réalisation D'un - Tracker - Solaire À L'aide D'arduino - Pybar

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 10

26/07/2021 Réalisation d'un "Tracker" solaire à l'aide d'Arduino | pyBar

Skip to navigation
Skip to content

Recherche:  Enter Search...


Envoyer
 

Navigation
Accueil
pyBar
Logiciel pyBar
Téléchargement
Installation
Tutoriel et astuces
Tutoriels
Symétrie
Superposition
Méthode des forces
Travaux pratiques
 
Faire un don
Screencasts
 
Raspberry
Mini Ordinateur
Thermomètre
 
Arduino
Carte Arduino
Solar tracker
Live viewer
 
RDM
Cours de RDM
Calcul automatisé section
 
Logiciels
Scilab
 

Vous êtes ici : Accueil » Arduino » Solar tracker 

En continu
23 nov. 2020
Nouvelle version de pyBar
Catégorie : General
Posté par : administrateur

La nouvelle version de pyBar est prête, elle fonctionne désormais avec python 3 et GTK 3.

Je cherche de l'aide pour la porter sous windows. La version fonctionne bien sous MSYS2. Il reste juste à
créer le paquet pour que pybar puisse fonctionner en autonomie sous windows. Mais je ne trouve pas de
solution pour faire cette dernière étape. Toute  aide serait la bienvenue pour la communauté Windows.
pybar.fr/index.php?page=tracker 1/10
26/07/2021 Réalisation d'un "Tracker" solaire à l'aide d'Arduino | pyBar

Merci de me contacter à philippe@nom de domaine

[Plus]
25 juil. 2019
Ouverture d'une CPGE ATS Génie Civil
Catégorie : General
Posté par : administrateur

Ouverture d'une classe préparatoire CPGE ATS génie civil au lycée Cantau à Anglet.

[Plus]
01 févr. 2015
Bananapi
Catégorie : General
Posté par : administrateur

Le raspberrypi a un petit frère (un grand frère je devrais dire ...) le bananapi. Ce dernier est très similaire
mais présente des performances plus intéressantes. A découvrir!

Réalisation d'un "Tracker" solaire à l'aide


d'Arduino
Cette maquette s'inscrit dans un contexte de développement durable car elle optimise un système de
production d'énergie renouvelable, et également d'informations numériques.

pybar.fr/index.php?page=tracker 2/10
26/07/2021 Réalisation d'un "Tracker" solaire à l'aide d'Arduino | pyBar

La maquette réalisée est un automate d'une trentaine de centimètres de hauteur, capable de suivre une source
lumineuse mobile afin d'orienter de façon optimale le panneau solaire en direction des rayons du soleil.

Les mouvements de rotation se produisent selon deux axes (un vertical et un horizontal). Deux moteurs
commandés par la carte électronique Arduino assure la mise en rotation. L'orientation optimale est calculée à
partir des données de 3 cellules photorésistantes.

Démonstration en video

pybar.fr/index.php?page=tracker 3/10
26/07/2021 Réalisation d'un "Tracker" solaire à l'aide d'Arduino | pyBar

More from Philippe Lawrence

Arduino Solar tracker Lycée Cantau Anglet from Philippe Lawrence on Vimeo.

Matériels
Les principaux éléments sont les suivants:

Carte Arduino
Mini Panneau Solaire 10x7,5 cm 5,5 W
2 roulements Diamètre 26 mm
Batterie 6 V
2 servomoteurs
3 PhotoRésistances 1 kOhm
Quincaillerie : Tige filletée Diamétre 3 mm, L=1 m ; 4 équerres, lame bois ; cornière alu 15x15 mm ;
rondelles, écrous

pybar.fr/index.php?page=tracker 4/10
26/07/2021 Réalisation d'un "Tracker" solaire à l'aide d'Arduino | pyBar

Cablage et fonctionnement
Le principe consiste à remarquer que la lumière reçue par les trois photorésistances est identique dès que le
capteur (ensemble des trois photorésistances) est orienté dans l'axe de la lumière. Il faut donc mesurer la
lumière reçue par chaque photorésistance en mesurant la tension à leurs bornes. Cette mesure est réalisée
grâce à la connexion des ports pin 1 à 3 de la carte (ces derniers sont configurés en port analogique).
Le programme compare ensuite ces tensions ordonnant aux servomoteurs de pivoter dans la direction
de la
ou des photorésistances qui reçoivent le moins de lumière.

pybar.fr/index.php?page=tracker 5/10
26/07/2021 Réalisation d'un "Tracker" solaire à l'aide d'Arduino | pyBar

Algorigramme
Ci-dessous l'algorigramme simplifié de fonctionnement du programme.

Programmation de la carte
La programmation de la carte s'effectue via une interface logicielle en pseudo langage C. Une fois le
programme écrit, il est envoyé sur la carte qui peut ensuite fonctionner en autonomie (sans connexion avec
pybar.fr/index.php?page=tracker 6/10
26/07/2021 Réalisation d'un "Tracker" solaire à l'aide d'Arduino | pyBar

l'ordinateur).

Code Arduino
1 #include <servo.h> ?

2  
3 //IO Pins
4 int pinL = 1;              //Left Sensor IO Pin
5 int pinR = 2;              //Right Sensor IO Pin
6 int pinServo1 = 10;        //Servo 1 PWM pin
7 int pinU = 3;              //up Sensor IO Pin
8 int pinServo2 = 11;        //Servo 2 PWM pin
9  
10 int leftValue = 0;         //The left Sensor Value
11 int rightValue = 0;        //The right Sensor Value
12 int upValue = 0;           //The left Sensor Value
13 int error1 =0;              //The Deviation between the 2 sensors
14 int errorAVG1 = 0;          //Error Average - Rolling 2 Point
15 int error2 =0;              //The Deviation between the 2 sensors
16 int errorAVG2 = 0;          //Error Average - Rolling 2 Point
17  
18  
19 Servo hServo1;              //The servo object
20 Servo hServo2;  
pybar.fr/index.php?page=tracker 7/10
26/07/2021 Réalisation d'un "Tracker" solaire à l'aide d'Arduino | pyBar

21 int Position = 45;         //Position to write out


22  
23 int minPos = 7;            //Min Position
24 int maxPos = 160;          //Max Position
25  
26  
27 float output1 = (maxPos - minPos) /2;  //Initial output Position
28 float output2 = (maxPos - minPos) /2;  //Initial output Position
29  
30 void setup()
31 {
32  
33 Serial.begin(9600);  //9600
34 //pinMode(pinV, INPUT);
35 hServo1.attach(pinServo1);
36 hServo2.attach(pinServo2);
37  
38 //Set Servo to Centre for Alignment Purpose
39 Serial.println("Moving Servo to start Position");
40 hServo1.write(output1);
41 hServo2.write(output2);
42 delay(2000);
43 Serial.println("Going Live................");
44 }
45 void loop()
46 {
47   //Input Reading
48    leftValue = analogRead(pinL);
49    rightValue = analogRead(pinR);
50    upValue = analogRead(pinU);
51    error1 = leftValue - rightValue;
52    error2 = -upValue + (leftValue+rightValue)/2;
53    errorAVG1 = (errorAVG1 + error1) / 2;
54    errorAVG2 = (errorAVG2 + error2) / 2;
55   
56  float newOutput1 = output1 + getTravel(errorAVG1);
57  if (newOutput1 > maxPos)
58  {
59    newOutput1 = maxPos;
60  }
61  else
62  {
63    if (newOutput1 < minPos)
64    {
65      newOutput1 = minPos;
66    }
67  }
68     hServo1.write(newOutput1);
69     output1 = newOutput1;
70      
71  float newOutput2 = output2 + getTravel(errorAVG2);
72  if (newOutput2 > maxPos)
73  {
74    newOutput2 = maxPos;
75  }
76  else
77  {
78    if (newOutput2 < minPos)
79    {
80      newOutput2 = minPos;
81    }
pybar.fr/index.php?page=tracker 8/10
26/07/2021 Réalisation d'un "Tracker" solaire à l'aide d'Arduino | pyBar

82  }
83     hServo2.write(newOutput2);
84     output2 = newOutput2;
85 }
86  
87 int getTravel(float errorAVG)
88 {
89   int deadband = 50;         //Range for which to do nothing with outp
90   // -1 = Left; +1 = Right
91   
92  if (errorAVG < (deadband * -1))
93  {
94    return -1;
95  }
96  else
97  {
98    if (errorAVG > deadband)
99    {
100      return 1;
101    }
102    else
103    {
104      return 0;
105    }
106  }
107 }

Acquisition des données


Les données peuvent être acquises soit à partir d'un terminal relié au port série virtuel de l'ordinateur (ce qui
permet d'exporter ensuite les données vers un tableur), soit tracées en temps réel à l'aide d'une interface
programmée en python, comme celle de la figure suivante.

pybar.fr/index.php?page=tracker 9/10
26/07/2021 Réalisation d'un "Tracker" solaire à l'aide d'Arduino | pyBar

^  Top
Previous page: Carte Arduino 
Page suivante : Serial live viewer 

Accueil
pyBar
Raspberry
Arduino
RDM
Logiciels

Carte Arduino
Solar tracker
Live viewer

pybar.fr/index.php?page=tracker 10/10

Vous aimerez peut-être aussi