Thermomètre connecté : Différence entre versions

De Wiki d'activités IMA
(Étapes du projet)
(Étapes du projet)
 
(Une révision intermédiaire par le même utilisateur non affichée)
Ligne 48 : Ligne 48 :
 
De plus, une application Android permet la réception des données et demande à l'utilisateur la température souhaité pour son café. A partir de ces deux données, il est possible d'en déduire le temps d'attente pour boire son café.
 
De plus, une application Android permet la réception des données et demande à l'utilisateur la température souhaité pour son café. A partir de ces deux données, il est possible d'en déduire le temps d'attente pour boire son café.
  
 +
[[Fichier:ComBLE.png|center|400px]]
  
[[Fichier:ComBLE.jpg|center|400px]]
+
Le code actuel nous permet de détecter les composants connectés en Bluetooth. Cependant, nous avons un problème. En effet, nous n'arrivons pas à recevoir les données émises par notre RFDuino.
  
 
==Suivi de l'avancement du Projet==
 
==Suivi de l'avancement du Projet==

Version actuelle datée du 21 janvier 2016 à 08:28

Cahier des charges

Présentation générale du projet

Objectif du projet

L'objectif du projet est de concevoir un thermomètre connecté afin de pouvoir déterminer la température d'un café et permettre à l'utilisateur de boire son café à la température souhaitée. Le thermomètre devra donc récupérer la température du café et envoyer les données à une application sur téléphone ( via l'utilisation du bluetooth).

De plus, il faudra que le dispositif bénéficie d'un système de recharge afin de permettre son utilisation sur le long terme. Dans notre cas, nous allons utiliser l'effet thermo-électrique (recharge de la pile ou condensateur à l'aide du courant créé par la différence de température). Cette méthode étant peu efficace, il sera nécessaire de réduire au maximum la consommation de notre micro-processeur. Nous pouvons par exemple espacer les mesures de températures et aussi utiliser le mode sleep de notre processeur lorsqu'il n'est pas en utilisation.

Ainsi, ce projet permet de faire de la gestion d'énergie (mode veille) et d'un routage orienté économie d'énergie (Utilisation de l'effet Peltier)

Choix techniques : matériel et logiciel

Pour réaliser ce projet, nous allons utiliser le matériel suivant :

  • Capteur de température : LM35DM/NOPB
  • Micro-processeur : RFDuino RFD22301
  • Rechargement de la source de tension : Dissipateur Peltier
  • Générateur : Pas encore trouvé, hésitation entre un super condensateur et une pile

Étapes du projet

Le projet peut se décomposer en deux phases distinctes. La première consiste à réaliser le code du RFDuino. La deuxième partie consiste à réaliser une carte afin de relever la température du café et d'envoyer cette donnée au RFDuino. Enfin, la dernière partie permettra de communiquer entre le téléphone et le RFDuino.


Partie  : Code RFDuino

Le code présent dans le RFDuino doit permettre la gestion d'un mode veille afin de limiter au maximum la consommation. La plupart du temps, le RFDuino sera inactif et pendant quelques millisecondes il recevra les données provenant du capteur de température et les transmettra au téléphone (si le BLE est activé sur le téléphone). le code réalisé est le suivant :

CodeIDE.png

Le code se décompose en deux parties. La première consiste en la récupération et l'envoie des données tandis que la deuxième sert à la gestion de l'énergie. En effet, le RFDuino se réveille toutes les 3 secondes (RFDuino_ULPDelay). Nous avions pensé utiliser une pin pour réveiller le RFDuino en applicant une tension sur une pin préalablement configuré. Cependant, n'ayant pas de composant supplémentaire nous avons préféré utiliser la première méthode.


Partie 2 : Carte électronique

La carte comprends une source de tension, un module Peltier permettant de recharger la source et le capteur de température. Le capteur de température est linéaire et nécessite juste un ajustement car il se trouve en contact avec la paroi interne du thermomètre et non en contact avec le café. Une liaison entre la sortie du capteur de température et le RFDuino permettra la conversion de la tension de sortie ( 0mV -> 2°C et +/- 10mV/°C ).

Capteurlel.jpg

Le capteur utilisé est un capteur de température LM35 qui peut être alimenté entre 5 et 30V. Le courant qui le parcours est de 60µA. Pour le RFDuino, son courant est de 18mA et il est alimenté entre 1.9 et 3.6V. Ainsi, la consommation du système est d'un peu moins de 60mW en utilisation normale. Cependant, nous avons vu précédemment que le RFDuino ne fonctionnait que quelques millisecondes toutes les 3 secondes. Cela signifie que le module permettant la recharge de la batterie peut être plus petit. Ainsi avec un module de 40*40 mm, il est possible de générer un courant de 470mA et une tension de 2,4V.En couplant ce dispositif avec un hacheur élévateur de tension il serait possible d'alimenter notre système avec juste le module Peltier.


Partie 3 : Communication RFDuino / Téléphone

La communication entre le RFDuino et le téléphone se fait par bluetooth BLE. La communication BLE (Bluetooth Low Energie) permet de communiquer entre plusieurs objets connectés pour lesquels le besoin en débit de transmission de données est faible. De plus, une application Android permet la réception des données et demande à l'utilisateur la température souhaité pour son café. A partir de ces deux données, il est possible d'en déduire le temps d'attente pour boire son café.

ComBLE.png

Le code actuel nous permet de détecter les composants connectés en Bluetooth. Cependant, nous avons un problème. En effet, nous n'arrivons pas à recevoir les données émises par notre RFDuino.

Suivi de l'avancement du Projet

Séance 1

  • Récupération des différents composants
  • Recherche d'informations
  • Tentative de codage en C. Après divers problèmes, le code sera fait sous l'IDE dans un premier temps (modification en C si le temps le permet).

Séance 2

  • Réalisation du code permettant la réception des températures
  • Étude de la consommation globale du système

Séance 3

  • Recherche d'informations et réalisation du mode veille
  • Difficultés pour l'installation du logiciel pour l'application Android

Séance 4

  • Commencement de l'application Android

Séance 5