P32 Récupération d'énergie pour balise BLE : Différence entre versions
(→Semaine 8 (16/11/2015)) |
(→Semaine 9 (23/11/2015)) |
||
Ligne 412 : | Ligne 412 : | ||
===Semaine 9 (23/11/2015)=== | ===Semaine 9 (23/11/2015)=== | ||
+ | |||
+ | Lors de cette semaine nous avons effectué des tests en respectant une procédure de test précise. En effet les valeurs des courants que nous relevons sont très petites aussi chaque variation du montage est susceptible de perturber les valeurs. | ||
+ | |||
+ | |||
+ | [[Fichier:P32Conne.jpg]] | ||
+ | |||
+ | |||
+ | [[Fichier:Avertissement.jpg]] | ||
+ | |||
===Semaine 10 (30/11/2015)=== | ===Semaine 10 (30/11/2015)=== | ||
===Semaine 11 (07/12/2015)=== | ===Semaine 11 (07/12/2015)=== |
Version du 2 décembre 2015 à 13:41
Sommaire
- 1 Objectif
- 2 Etude préalable
- 3 Organisation générale
- 4 Planning prévisionnel
- 5 Suivi de l'avancement du Projet
- 5.1 Semaine 1 (28/09/2015)
- 5.2 Semaine 2 (05/10/2015)
- 5.3 Semaine 3 (12/10/2015)
- 5.4 Semaine 4 (19/10/2015)
- 5.5 Semaine 5 (26/10/2015)
- 5.6 Semaine 6 (02/11/2015)
- 5.7 Semaine 7 (09/11/2015)
- 5.8 Semaine 8 (16/11/2015)
- 5.9 Semaine 9 (23/11/2015)
- 5.10 Semaine 10 (30/11/2015)
- 5.11 Semaine 11 (07/12/2015)
- 5.12 Semaine 12 (14/12/2015)
- 5.13 Semaine 13 (04/01/2016)
- 5.14 Semaine 14 (11/01/2016)
- 5.15 Semaine 15 (18/01/2016)
- 5.16 Semaine 16 (25/01/2016)
- 5.17 Semaine 17 (01/02/2016)
- 5.18 Semaine 18 (08/02/2016)
- 5.19 Semaine 19 (15/02/2016)
- 5.20 Semaine 20 (22/02/2016)
- 6 Annexes
Objectif
Mon projet consiste à réaliser un système électronique autonome, composé de différents capteurs et capable de recueillir et de transmettre les données mémorisées vers un système centralisé.
Etude préalable
L’énergie est le point de difficulté dans la réalisation de ce projet. Chaque élément devra être choisi non seulement pour ses performances mais également pour sa faible consommation.
Organisation générale
Le système est organisé autour d’une source d’énergie, d’un contrôleur, de capteurs, de mémoire et d’un protocole de communication.
On cherche à minimiser l'énergie consommée par l'ensemble du système.
Chaine de l’énergie
L’énergie pour ce module autonome est constituée de quatre phases importantes :
La récupération de l'énergie dans l'environnement
Il existe de nombreux moyens pour récupérer de l'énergie dans l'environnement. L'objectif est de trouver les sources les plus adaptées à l'environnement de l'application recherchée.
On peut citer:
- La récupération de l'énergie par différence de température
- Les panneaux photovoltaïques
- La récupération de l'énergie des ondes radio
- La Piézoélectricité
Dans ce projet nous utiliserons la piézoélectricité, le module de récupération ayant déjà fait partie d'une étude de IRCICA précédent le projet.
Le stockage de l’énergie
Le choix du système de stockage de l'énergie constitue une partie importante de la réalisation du système. La problématique de cette partie sera de déterminer quel type de stockage nous utiliserons : batterie, super-capacité ou un hybride et de les dimensionner. Il faudra tenir compte des problèmes de décharge partielle influent sur la durée de vie du stockage.
Le management/mise en forme de l’énergie
L'objectif de cette partie est d'étudier la nécessité de la mise en place d'une régulation tout en préservant des contraintes de consommation très faibles.
L'utilisation de l'énergie mise en forme
On cherche à minimiser l'énergie consommée par l'ensemble du système.
Contrôleur
Le microprocesseur : il existe différents types de microprocesseurs. L'objectif est de choisir un support capable de consommer un minimum d'énergie tout en conservant une taille minimale. Nous avons déjà utilisé dans d'autres projets des micro-contrôleurs de type Arduino et Raspberry pie. Ceux-ci ont pour avantage d’être prêts à l'emploi et faciles de prise en main. On peut s’orienter également vers un contrôleur ultra low power comme le STM32L4.
Consommation | Facilité de développement | Miniaturisation | |
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Capteurs
On peut imaginer différents types de capteurs :
- Accéléromètre
- Gyroscope
- Pression atmosphérique et altitude
- Température
- GPS
Mémoire
Le système doit être autonome et donc conserver un minimum de mesures pour les cas où la connexion est impossible. La mémoire doit être dimensionnée en fonction du nombre de capteurs, l’intervalle d’acquisition et le temps maximum avant connexion au système centralisé.
Protocole de communication
Un protocole de communication : dans un premier temps, nous nous concentrons sur le protocole BLE (Bluetooth Low Energie). Ce protocole étant standardisé, il nous permettra de recueillir de la documentation et réaliser des tests de consommation rapides.
Planning prévisionnel
Suivi de l'avancement du Projet
Semaine 1 (28/09/2015)
- Rencontre avec Monsieur Boe et Monsieur Giraud
- Présentation du projet
- Recherche documentaire
- Etablissement du cahier des charges
Semaine 2 (05/10/2015)
Recherche documentaire sur la consommation estimée des différents éléments.
Contrôleur | Consommation Active | Consommation Inactive | Prix |
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Module BLE | Consommation | Options d'alimentation | Prix |
---|---|---|---|
|
|
|
|
-
Le système Mini Arduino/ BLE Mini me semble être un bon compromis entre facilité d’intégration, consommation d'énergie et miniaturisation du système.(Choix à discuter à la réunion du Merdredi 07/10) - Choix du module RFduino
Capteurs | Modèle | Alimentation min/max | Prix |
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Pour minimiser les pertes on cherche a travailler avec une tension d'alimentation la plus faible possible. Je propose de travailler avec une tension d'alimentation de 3,3V (Validé à discuter à la réunion du Merdredi 07/10)
- Le système de récupération d'énergie fonctionnant sur la base d'un mouvement, j'ai choisi l'ensemble des capteur ci dessus qui me semble être adapté à l'intégration dans un système en mouvement. (Validé à discuter à la réunion du Merdredi 07/10)
- Récupération des modules RFduino, prise en main
Semaine 3 (12/10/2015)
- Installation des librairies
- Visualisation d'exemples
- Tests d'implantation du code source du projet P14: Aimant intelligent de la session IMA4: 2014/2015
- Optimisation du code pour la réduction de la consommation d'énergie
- Recherches sur d'autres composants dans l'optique d'une consommation toujours plus faible
Capteurs | Modèle | Alimentation min/max | Prix | Consommation (typ/max) |
---|---|---|---|---|
|
|
|
|
|
Calcul théorique de la consommation énergétique du module BLE + RFD22301
Mode "endormi" : ARM CPU Running Current + Output standard drive current = 4 + 0.5 = 4.5mA
Mode "acquisition": ARM CPU Running Current + Output high drive current = 5 + 4 = 9mA
Mode "transmission" : ARM CPU Running Current + Transmit Current + Output standard drive current = 4 + 0.5 + 12 = 16.5mA
http://www.rfduino.com/wp-content/uploads/2014/03/RFD22301.Data_.Sheet_.11.24.13_11.38PM.pdf
Code possible du mode "endormi"
pinMode(5, INPUT); RFduino_pinWake(5, HIGH); RFduino_ULPDelay(INFINITE); if (RFduino_pinWoke(5)) { state = ! state; RFduinoGZLL.sendToHost(state); }
http://forum.rfduino.com/index.php?topic=385.0
Semaine 4 (19/10/2015)
- Réunion du 21/10
- Réalisation de tests
- Ajustement du nombre de capteurs : dans un premier temps on utilisera le capteur de température puis l'accéléromètre
- Discussion sur le bac de test et méthodes de test : résistance de visualisation, chronométrage du temps de transmission, vitesse du processeur
- Réalisation des premiers relevés
Semaine 5 (26/10/2015)
- Recherche bibliographique sur les modes d'endormissement du module RFduino
- Essais de codes utilisant un mode d'endormissement plus profond
- Réalisation de graphique de l'énergie utilisée par le module lors de la transmission d'un message par le module BLE.
- Recherches sur des méthodes de programmation pour la diminution de la vitesse processeur
- On visualise à l'oscilloscope des pic d'envoi et des pic d'avertissement de la balise BLE, on peut ainsi déduire la puissance nécessaire de chaque action
Semaine 6 (02/11/2015)
- Test de diminution de la vitesse processeur
- Réalisation de graphique démontrant l'impact de la réduction de la vitesse processeur sur l'énergie consommée et déduction d'une vitesse optimale pour notre application
- Réunion du 4/11
Définition d'objectifs : Création d'un fichier excel permettant de caractériser les coûts en énergies de chaque étapes de fonctionnement du système.
- Création d'un environnement de test "normé" ( Pour éviter les variations de mesures on réalise un banc et on applique les mêmes conditions de test pour chaque essai)
- Recherche bibliographique sur la norme BLE : recherche du temps maximum entre deux "avertissements" de la balise BLE
Semaine 7 (09/11/2015)
- Explication du principe de communication BLE pour l'exploitation des résultats
Nous nous intéressons dans notre projet à "l'observateur". Cet objet peut avoir trois états : stand-by, advertising et en communication.
Dans le mode "Advertising" le système peut :
- Avertir le système récepteur de la proximité d'un capteur
- Avertir de la présence à un appareil souhaitant ce connecter
- Ce reconnecter de façon asynchrone
Semaine 8 (16/11/2015)
Analyse en détail d'une trame BLE
On constate que pendant la durée de la trame il y a un échange entre les deux objets appairé. On s’intéresse ici uniquement aux actions "Slave Tx". Le but étant d'identifier la durée et le courant consommé par ces actions pour obtenir des valeurs en joules.
On constate donc deux phases :
- Advertising event - connection event
Nous allons essayer de retrouver et quantifié l'énergie consommé dans ces deux phases.
Semaine 9 (23/11/2015)
Lors de cette semaine nous avons effectué des tests en respectant une procédure de test précise. En effet les valeurs des courants que nous relevons sont très petites aussi chaque variation du montage est susceptible de perturber les valeurs.
Semaine 10 (30/11/2015)
Semaine 11 (07/12/2015)
Semaine 12 (14/12/2015)
Semaine 13 (04/01/2016)
Semaine 14 (11/01/2016)
Semaine 15 (18/01/2016)
Semaine 16 (25/01/2016)
Semaine 17 (01/02/2016)
Semaine 18 (08/02/2016)
Semaine 19 (15/02/2016)
Semaine 20 (22/02/2016)
Annexes
Consommation du STM32L4 Series : http://www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1580?sc=stm32l4
Réduction de la consommation de l'Arduino : http://www.home-automation-community.com/arduino-low-power-how-to-run-atmega328p-for-a-year-on-coin-cell-battery/
Consommation Raspberry : https://www.raspberrypi.org/help/faqs/
Module BLE : http://redbearlab.com/blemini/
Accéléromètre : http://fr.farnell.com/analog-devices/adxl345bccz/accelerometre-3-axes-14lga/dp/1853935
Capteur température : http://fr.farnell.com/analog-devices/tmp36gt9z/capteur-temp-to-92-3/dp/1438760?ost=TMP36GT9Z ou http://fr.farnell.com/stmicroelectronics/stlm20w87f/capteur-de-temperature-analog/dp/1391131
Accéléromètre + Gyroscope : http://fr.farnell.com/invensense/mpu-6050/gyroscope-accelero-6-axes-i2c/dp/1864742