Différences entre versions de « Projets:Bracelet universel »
De wikilab
| Ligne 1 : | Ligne 1 : | ||
| + | ==Description du projet== | ||
| + | Concevoir un bracelet conçu pour recevoir et commander des capteurs et récepteurs électronique, en un mot "une interface"? | ||
| + | Quelque exemples: elle pourrait commander une prothèse, un interrupteur, un relais, la lumière, etc. | ||
| + | |||
| + | ==Cahier des charges== | ||
| + | Fabrication d'un bracelet connecté: | ||
| + | |||
| + | * Un bracelet entourant le bras au 3/4 du bras ; | ||
| + | * Fermé et serré autour du bras grâce a un scratch ou a des argots et une élastique ; | ||
| + | * Dans ce bracelet d'un centimètre d'épaisseur, il faut intégrer : | ||
| + | ** Un support de batterie ; | ||
| + | ** Un support de capteur ; | ||
| + | ** Un microcontrôleur. | ||
| + | |||
| + | [[File:Croquis shémas.jpg]] | ||
| + | |||
| + | ==Analyse de l'existant== | ||
| + | |||
| + | ==Equipe== | ||
| + | |||
| + | * Jacky | ||
| + | * Gaël | ||
| + | * Nicolas | ||
| + | * Julien | ||
| + | |||
| + | ==Matériel nécessaire== | ||
| + | |||
| + | * microcontrôleur ESP8266 | ||
| + | * mousse autocollante | ||
| + | * un bracelet scratch | ||
| + | * le capteur IR [https://www.sparkfun.com/products/9453 SparkFun Line Sensor Breakout] | ||
| + | * quelques câbles | ||
| + | * ABS | ||
| + | |||
| + | ==Outils nécessaires== | ||
| + | |||
| + | * imprimante 3D | ||
| + | |||
| + | ==Modèles 3D== | ||
| + | |||
| + | Le bracelet a été [[:File:Bracelet.zip|modélisé sur FreeCAD]] à partir d'un [[:File:Bracelet connecte.pdf|schéma 2D]]. | ||
| + | |||
| + | ==Code Arduino== | ||
| + | |||
| + | <pre> | ||
| + | // Un simple sketch permettant de lire la valeur du capteur IR sur | ||
| + | // le terminal série ou le traceur série de l'IDE Arduino. | ||
| + | // Une moyenne glissante sur 10 valeurs permet de lisser le signal. | ||
| + | |||
| + | // Le capteur IR est branché sur le port analogique | ||
| + | #define analogPin A0 | ||
| + | |||
| + | // Nombre de valeurs utilisées pour le lissage | ||
| + | #define valuesNumber 10 // max 32 !!! | ||
| + | int values[valuesNumber]; | ||
| + | |||
| + | void setup() { | ||
| + | // activation de la liaison série | ||
| + | Serial.begin(115200); | ||
| + | |||
| + | // on initialise le tableau | ||
| + | for (int i = 0; i < valuesNumber; i++) { | ||
| + | values[i] = 0; | ||
| + | } | ||
| + | } | ||
| + | |||
| + | void loop() { | ||
| + | // on décale les valeurs précédentes | ||
| + | for (int i = 0; i < (valuesNumber - 1); i++) { | ||
| + | values[i] = values[i + 1]; | ||
| + | } | ||
| + | |||
| + | // on lit une nouvelle valeur | ||
| + | values[valuesNumber - 1] = analogRead(analogPin); | ||
| + | |||
| + | // on calcule la moyenne | ||
| + | int moyenne = 0; | ||
| + | for (int i = 0; i < valuesNumber; i++) { | ||
| + | moyenne += values[i]; | ||
| + | } | ||
| + | moyenne = moyenne / valuesNumber; | ||
| + | |||
| + | // on renvoie la moyenne sur le terminal série | ||
| + | Serial.println(moyenne); | ||
| + | |||
| + | // on temporise un peu | ||
| + | delay(25); | ||
| + | } | ||
| + | </pre> | ||
| + | |||
| + | ==Coût== | ||
| + | |||
| + | Moins de 15 €. | ||
| + | |||
| + | ==Réalisation== | ||
| + | |||
| + | [[File:Bracelet 1.jpg]] | ||
| + | |||
| + | [[File:Bracelet.zip]] | ||
| + | |||
| + | [[Category:Projets]] | ||
| + | |||
== Description du projet == | == Description du projet == | ||
| + | |||
Un bracelet pour les gouverner tous ! | Un bracelet pour les gouverner tous ! | ||
Version du 13 mars 2019 à 11:57
Description du projet
Concevoir un bracelet conçu pour recevoir et commander des capteurs et récepteurs électronique, en un mot "une interface"? Quelque exemples: elle pourrait commander une prothèse, un interrupteur, un relais, la lumière, etc.
Cahier des charges
Fabrication d'un bracelet connecté:
- Un bracelet entourant le bras au 3/4 du bras ;
- Fermé et serré autour du bras grâce a un scratch ou a des argots et une élastique ;
- Dans ce bracelet d'un centimètre d'épaisseur, il faut intégrer :
- Un support de batterie ;
- Un support de capteur ;
- Un microcontrôleur.
Analyse de l'existant
Equipe
- Jacky
- Gaël
- Nicolas
- Julien
Matériel nécessaire
- microcontrôleur ESP8266
- mousse autocollante
- un bracelet scratch
- le capteur IR SparkFun Line Sensor Breakout
- quelques câbles
- ABS
Outils nécessaires
- imprimante 3D
Modèles 3D
Le bracelet a été modélisé sur FreeCAD à partir d'un schéma 2D.
Code Arduino
// Un simple sketch permettant de lire la valeur du capteur IR sur
// le terminal série ou le traceur série de l'IDE Arduino.
// Une moyenne glissante sur 10 valeurs permet de lisser le signal.
// Le capteur IR est branché sur le port analogique
#define analogPin A0
// Nombre de valeurs utilisées pour le lissage
#define valuesNumber 10 // max 32 !!!
int values[valuesNumber];
void setup() {
// activation de la liaison série
Serial.begin(115200);
// on initialise le tableau
for (int i = 0; i < valuesNumber; i++) {
values[i] = 0;
}
}
void loop() {
// on décale les valeurs précédentes
for (int i = 0; i < (valuesNumber - 1); i++) {
values[i] = values[i + 1];
}
// on lit une nouvelle valeur
values[valuesNumber - 1] = analogRead(analogPin);
// on calcule la moyenne
int moyenne = 0;
for (int i = 0; i < valuesNumber; i++) {
moyenne += values[i];
}
moyenne = moyenne / valuesNumber;
// on renvoie la moyenne sur le terminal série
Serial.println(moyenne);
// on temporise un peu
delay(25);
}
Coût
Moins de 15 €.
Réalisation
Description du projet
Un bracelet pour les gouverner tous !
Autonome (sur batterie), connecté (UART, wifi, bluetooth), le dispositif repose sur un capteur de distance infrarouge à bas coût qui mesure la déformation du bras lors de la contraction des muscles.
Liens utiles
- Page du projet sur le GesLab
- Documentation finale du projet
- Dépôt GitHub du projet
- Canal de discussion du projet sur Framateam
Cahier des charges
Analyse de l'existant
Equipe (Porteur de projet et contributeurs)
- Porteur de projet
- Nicolas Huchet
- Contributeurs
- Animateur (coordinateur du projet)
- Nicolas Huchet
- Fabmanager référent
- Julien Lebunetel
- Responsable de documentation
- Julien Lebunetel

