Projet IMA3 P3, 2016/2017, TD2

De Wiki de Projets IMA
Révision datée du 13 juin 2017 à 22:49 par Alepolar (discussion | contributions) (Partie informatique)

Projet IMA3-SC 2016/2017 : Banc test pour station météo

Cahier des charges

  • Commande du taux d'humidité dans l’air
  • Commande de la température
  • Commande de la luminosité
  • Commande du vent
  • Commande de la pluie
  • Commande depuis une interface Web.
  • Système de comparaison avec les valeurs de la station météo et alerte si les valeurs sont incohérentes

Description du système

Le banc de test pour station météo est un banc de test destiné à vérifier le bon fonctionnement des stations météo en sortie d’usine . Pour cela le banc de test crée une atmosphère dans une cloche fermée. Cette atmosphère est « programmable » c’est à dire que la personne chargée du test va rentrer par exemple les paramètres suivants : température :22° humidité : 30 % , temps : ensoleillé , vent : 10 km/h. Une fois la commande envoyée par l’opérateur le banc de test « crée » les conditions météorologiques souhaitées, l’opérateur enregistre les valeurs affichées sur la station météo sur l’interface web qui valide ou non le produit.

Le matériel

En notre possession

  • 1 hygromètre/sonde de température DHT11
  • 1 photorésistance LDR
  • 1 lampe
  • 1 ventilateur
  • 1 Arduino Uno (en attendant le FPGA)
  • 1 Rapsberry Pi
  • 3 résistance de 9k ohm
  • 3 résistance de 10k ohm
  • 3 transistor

En attente

  • 1 système d'écoulement d'eau (fabrication artisanale)
  • 1 réservoir d’eau (fabrication artisanale)
  • 1 résistance chauffante (fabrication artisanale)


Séance 1

Partie électronique

  • Étude des capteurs :

Température

Voici les caractéristiques des 2 modèles envisageables de capteurs de températures:

DHT11
  • Voltage: 0-5V
  • Plage humidité: 20% à 90%
  • Plage température: 0 à 50°C
  • Précision humidité: +/- 5%
  • Précision température: +/- 2°C
DHT22
  • Voltage: 0-5V
  • Plage humidité: 0% à 100%
  • Plage température: -40°C à 80°C
  • Précision humidité: +/- 2%
  • Précision température: +/- 0.5°C

Le capteur DHT22 est plus précis et plus cher, cependant nous n'avons pas besoin de tant de précision. C'est pourquoi, nous avons choisi d'utiliser le capteur DHT11.

Humidité

Nous avons la possibilité d'utiliser le même capteur que le capteur de température pour obtenir les valeurs de l'humidité. Alors, nous utiliserons aussi le capteur DHT11.

Luminosité

Photorésistance LDR
  • Plage de photorésistance : 2 à 20 Kohm
  • Résistance d'obscurité (après 10 secondes) : supérieur à 2 Mohm
  • Valeur de gamma à 10-100 Lux : 0.7
  • Dissipation de puissance maximale : 100 mW
  • Tension de claquage maximale : 150 Vcc
  • Temps de réponse (montée) : 20 ms
  • Temps de réponse (descente) : 30 ms
  • Température ambiante : -35°C à +70°C

Partie informatique

  • Ecriture des programmes tests :
Test de la réception de valeur en LUX

Nous avons codé un programme qui reçoit une valeur en Lux. En fonction de la valeur retournée, nous affichons l'environnement autour de la photorésistance. Nous avons réparti les différents environnements avec les plages suivantes :

  • 0 < LUX <10, le capteur est couvert.
  • 10 < LUX < 200, l'environnement est sombre.
  • 200 < LUX < 500, l'environnement est exposé à de la lumière.
  • 500 < LUX < 800, l'environnement est lumineux.
  • 800 < LUX < + ∞, l'environnement est très lumineux.
Commande de la LED

Nous avons réalisé un programme qui commande une photorésistance et une LED.

Ce programme reçoit une valeur en Lux, captée par la photorésistance, et si la valeur est supérieur à 700 Lux, la LED reste éteinte et inversement si la valeur est inférieur à 700 Lux, le LED s'allume afin d'avoir une bonne luminosité.

Test de réception de la valeur en °C

Nous voulions tester la réception de la valeur de la température en °C. C'est pourquoi,nous avons réalisé un programme qui reçoit une valeur en °C avec le capteur DHT11.

Test de réception de la valeur en %

Nous voulions tester la réception de la valeur de l'humidité en %. C'est pourquoi,nous avons codé un programme qui reçoit une valeur en % avec le capteur DHT11.

Séance 2

Partie électronique

Dans ce projet, il nous était conseillé d'utiliser une carte FPGA NanoBoard. Tout d'abord, nous avons commencé par se renseigner sur la carte. Ensuite, nous avons réalisé le tutoriel , donné au début du projet.

Partie informatique

Pour notre projet, nous avons décidé d'utiliser une Raspberry Pi qui est un très petit ordinateur.Pour se faire, nous avons dû configurer le nano-ordinateur. Notre Raspberry Pi doit pouvoir communiquer avec un ordinateur de salle de projet mais aussi avec le réseau de Polytech pour permettre l'installation de paquetages. Pour accéder à la carte Raspberry Pi, nous avons utilisé un câble série et le logiciel 'minicom' afin d'établir une connexion série avec une vitesse de 115200 bauds et aucun contrôle de flux matériel.

Séance 3

Partie électronique

Prise de mesures pour l'utilisation du ventilateur

Partie informatique

Dans notre projet, nous avons utilisé des Websockets. Les WebSockets permettent au navigateur et à l'application distante de communiquer de façon bi-directionnelle .

Séance supplémentaire 1

Partie électronique

Partie informatique

Utilisation des Websockets

Conclusion

Pour conclure, notre projet n'est pas vraiment un succès car il n'est que partiellement fini. Notre projet aurait pu être fini dans les temps si ce dernier aurait été plus simple.De plus, nous avons eu des problèmes d'accès à la salle FPGA, ce qui a chamboulé un peu notre programme mais nous avons dû fait avoir les contres-temps, comme dans la vie quotidienne. Cependant, ce projet complexe nous a permis de voir le travail de groupe et aussi d'appliquer les cours que nous avons suivis au cours de cette 3ème année.