Capteur d'accélération connecté
Sommaire
Cahier des charges
Présentation générale du projet
Contexte & Objectif
Dans le cadre de l'IoT (Internet of Things), nous avons choisi de réaliser un capteur d'accélération avec indicateur led. Les données seront enregistrées et envoyées sur smartphone en bluetooth.
Description du Projet
L'idée est d'acquérir des données sur l'accélération d'une personne ou d'un objet, et d'en recevoir un compte rendu sur son smartphone.
Dans le cas d'un sportif, pour un footing par exemple :
On place le module sur le torse, et des leds indiqueront par code couleur si l'accélération est bien nulle, donc vitesse constante, ou si le coureur est irrégulier.
Dans le cas d'un automobiliste :
On place le module sur le tableau de bord, les leds indiquent par code couleur si on accélère ou freine trop fort. Avec le compte rendu envoyé sur smartphone, on est en mesure de comparer plusieurs trajets effectués, et d'améliorer sa conduite. C'est le principe des derniers contrats d'assurance auto proposés.
On réalisera un boitier en imprimante 3D pour la portabilité.
Il faudra trouver une solution pour "séparer" les bandes leds du module pour le coureur. En effet, l'accéléromètre ne peut pas être placé sur le bras à cause de l'effet balancier qui fausserait les mesures.
Matériel & Logiciel
Matériels reçus
Microcontrôleur : RFduino Capteur : accéléromètre : 10 DOF 2 bandes de 8 leds Bouton poussoir Breadboard 2 piles de 1.5V
Le programme sera dans un premier temps effectué sur l'IDE Arduino, puis retranscrit en C si un gain de consommation s'avère possible.
Aperçu de l'objet connecté
Travail réalisé
Recherche d'informations et librairies des composants tels que RFDuino.
Le projet se décompose en 3 parties principales :
- Récupération des données de l'accélèromètre
Pour cette partie, nous avons réalisé un code sur l'IDE Arduino qui permet dans un premier temps de lire les données de l'accélération et de les afficher sur le moniteur série. L'accélèromètre utilisé est un 10 DOF (Adafruit) , alimenté en 3,3V et capable d'être interfaçer avec la RFDuino via une communication série I2C. Nous avons également connecter une bande LED, indicateur de variations de l'accélération par rapport au seuil fixé. Par exemple, si l'utilisateur dépasse un certain seuil, un nombre X de leds s'allument (vert,jaune,rouge).
Résultats
- Stockage des données sur une carte SD
L'idée de départ était de stocker les données reçues sur une carte SD. Malheureusement, la librairie RFDuino est une ancienne version et ne peut donc pas autoriser l'écriture dans un fichier.
- Envoi des données par communication Bluetooth
L'avantage des modules RFDuino est qu'ils intégrent une communication sans fil. Nous avons donc édité notre code afin de pouvoir établir une communication BLE (librairie RFDuino).
Prise en main du logiciel "MIT App Inventor" et réalisation de l'application Android
Lors de la dernière séance, nous avons commencé à développer l'application. Au début, nous comptions le faire sur Android Studio; vu le nombre d'heures qui nous restait, nous avons donc décidé de le faire sur "MIT App Inventor"
Découpage interface de l'application :
L'appui sur le :
- "Bouton Scan" : scanne tous les appareils disponibles
- "Bouton Disconnect" : déconnecte le Bluetooth du smartphone
- "Bouton Available devices" : affiche les appareils activés
On peut aussi fixer la "valeur de sensibilité" suivant l'axe du mouvement.
- "Download results" : affiche les valeurs envoyées par l'accéléromètre
*Réalisation du boîtier à l'aide d'une imprimante 3D et finalisation du projet.
* Réalisation du poster
Tests effectués le 20/01/2017 matin en circulation (vidéo)