P4 IOT 2017 : Différence entre versions

De Wiki d'activités IMA
(Détail du travail de la première séance)
Ligne 44 : Ligne 44 :
 
==Détail du travail de la première séance==
 
==Détail du travail de la première séance==
  
Code pour le capteur de luminosité:
+
Durant cette première séance nous avons pu tester et étudier les valeurs de retour du capteur de luminosité et réfléchir à comment modifier le code pour réaliser notre projet. Vous trouverez ci-dessous le code utilisé pour tester le capteur:
  
 
<pre>
 
<pre>
Ligne 80 : Ligne 80 :
 
</pre>
 
</pre>
  
Les valeurs en retour:
+
Voici un tableau avec nombreuses exemples de valeurs de retour et leurs équivalence:
  
 
Illuminance               Example
 
0.002 lux         Moonless clear night sky
 
0.2 lux         Design minimum for emergency lighting (AS2293).
 
0.27 - 1 lux         Full moon on a clear night
 
3.4 lux         Dark limit of civil twilight under a clear sky
 
50 lux                 Family living room
 
80 lux                 Hallway/toilet
 
100 lux         Very dark overcast day
 
300 - 500 lux         Sunrise or sunset on a clear day. Well-lit office area.
 
1,000 lux         Overcast day; typical TV studio lighting
 
10,000 - 25,000  lux Full daylight (not direct sun)
 
32,000 - 130,000 lux Direct sunlight
 
  
 
  {| class="wikitable alternance centre"
 
  {| class="wikitable alternance centre"
Ligne 107 : Ligne 94 :
 
  | Full moon on a clear night
 
  | Full moon on a clear night
 
  |-
 
  |-
  ! scope="row" |  
+
  ! scope="row" | 3.4 lux
  |  
+
  | Dark limit of civil twilight under a clear sky
 +
|-
 +
! scope="row" | 50 lux
 +
| Family living room
 +
|-
 +
! scope="row" | 80 lux
 +
| Hallway/toilet
 +
|-
 +
! scope="row" | 100 lux
 +
| Very dark overcast day
 +
|-
 +
! scope="row" | 300 - 500 lux
 +
| Sunrise or sunset on a clear day. Well-lit office area
 +
|-
 +
! scope="row" | 1,000 lux
 +
| Overcast day; typical TV studio lighting
 +
|-
 +
! scope="row" | 10,000 - 25,000  lux
 +
| Full daylight (not direct sun)
 +
|-
 +
! scope="row" | 32,000 - 130,000 lux
 +
| Direct sunlight
 
  |-
 
  |-
! scope="row" |
 
|
 
 
  |}
 
  |}
  

Version du 13 janvier 2018 à 21:11

Présentation du sujet

Nous avons choisi de réaliser une veilleuse mobile, une veilleuse qui cherchera le meilleur emplacement dans une pièce ( dans une ligne droite entre deux murs ou deux obstacles par exemple) pour recharger sa batterie grâce à un panneau solaire.

Contexte

Ce projet est réalisé dans le cadre du module transversale IOT (Internet of Things).

Description du projet

Nous allons utiliser un Mindstorm pour la plateforme mobile sur laquelle sera monté un ou plusieurs panneaux photovoltaïques. Aussi, ce dernier sera équipé d'un capteur de lumière car le but étant d'abord de déterminer l'endroit le plus lumineux disponible. Après avoir déterminé cet endroit, l'appareil sera capable à l'aide des panneaux photovoltaïque et une batterie rechargeable d'alimenter une veilleuse (une LED dans un premier temps).

Réalisation

Matériel utilisé

  • Mindstorm
  • Panneau photovoltaïque
  • Capteur de lumière
  • Arduino Uno

Suivi de réalisation

Séance 1 (08/01/2018) - Formation des groupes, chercher un sujet et faire valider ce-dernier.
Séance 2 (09/01/2018) Code d'utilisation du capteur lumière et initiation au Mindstorm.
Séance 3 (16/01/2018) activité ...
Séance 4 (17/01/2018) activité ...
Séance 5 (22/01/2018) activité ...
Séance 6 (24/01/2018) activité ...

Détail du travail de la première séance

Durant cette première séance nous avons pu tester et étudier les valeurs de retour du capteur de luminosité et réfléchir à comment modifier le code pour réaliser notre projet. Vous trouverez ci-dessous le code utilisé pour tester le capteur:


int sensorPin = A0;    // select the input pin for the potentiometer
 
float rawRange = 1024; // 3.3v
float logRange = 5.0; // 3.3v = 10^5 lux
 
void setup() 
{
  analogReference(EXTERNAL); //
  Serial.begin(9600);
  Serial.println("Adafruit Analog Light Sensor Test");
}
 
void loop() 
{
  // read the raw value from the sensor:
  int rawValue = analogRead(sensorPin);    
  
  Serial.print("Raw = ");
  Serial.print(rawValue);
  Serial.print(" - Lux = ");
  Serial.println(RawToLux(rawValue)); 
  delay(1000);
}
 
float RawToLux(int raw)
{
  float logLux = raw * logRange / rawRange;
  return pow(10, logLux);
}

Voici un tableau avec nombreuses exemples de valeurs de retour et leurs équivalence:


Illuminance Example
0.002 lux Moonless clear night sky
0.27 - 1 lux Full moon on a clear night
3.4 lux Dark limit of civil twilight under a clear sky
50 lux Family living room
80 lux Hallway/toilet
100 lux Very dark overcast day
300 - 500 lux Sunrise or sunset on a clear day. Well-lit office area
1,000 lux Overcast day; typical TV studio lighting
10,000 - 25,000 lux Full daylight (not direct sun)
32,000 - 130,000 lux Direct sunlight

https://learn.adafruit.com/adafruit-ga1a12s202-log-scale-analog-light-sensor/use-it

http://www.instructables.com/id/Solar-Battery-Charging/

Détail du travail de la deuxième séance

https://learn.adafruit.com/adafruit-ga1a12s202-log-scale-analog-light-sensor/use-it


int sensorPin = A0, rawValue, maxValue=0, marge = 50;
boolean firstSearch = false, searchAgain = false, keepMoving;

void setup() 
{
  analogReference(EXTERNAL); 
  Serial.begin(9600);
}
 
void loop() 
{
  while (firstSearch == false || searchAgain == true)
  {  
    rawValue = analogRead(sensorPin);
    if (rawValue > maxValue)
      {
        maxValue = rawValue;
      }
    searchAgain = false, firstSearch = true;
  }
  
  Serial.println("PAUSE");
  //3seconds
  delay(3000);
  Serial.println("WERE BACK");
  
  do
  {
    rawValue = analogRead(sensorPin);
    if (rawValue < maxValue - marge)
    {
      keepMoving = true;
    }
    else
    {
      keepMoving = false;
    }
    Serial.println(keepMoving);
   } while (keepMoving == true);
  
  //delay(6000);
  searchAgain = true;
}

Détail du travail de la troisième séance

Détail du travail de la quatrième séance

Détail du travail de la cinquième séance

Détail du travail de la sixième séance

Rendu

Poster

Version électronique du poster :

Notre poster

Fichiers rendus

Notre application : Media:2017_IOT_P0_application.zip