Projet

Général

Profil

P15AB09 Spécification de l'automatisation d'un système de relaxation » Historique » Version 34

Anonyme, 02/04/2021 09:53

1 4 Anonyme
p<. !https://forge.clermont-universite.fr/attachments/download/15884/polytech_20150703131159_20150703131208.PNG!
2
3 5 Anonyme
p>. !https://forge.clermont-universite.fr/attachments/download/15885/logo_zebulle_20150703131503_20150703131513.PNG!
4 3 Anonyme
5 2 Anonyme
---
6 1 Anonyme
7 3 Anonyme
p=.  %{color:red}Spécification d’un système de relaxation% 
8 2 Anonyme
9 1 Anonyme
---
10 3 Anonyme
11
*Projet GE4a-GE5a* : Spécification d’un système de relaxation
12
*Entreprise / Client* : Zebulle
13
*Auteurs* : Samuel Defrance / Damien Genty / Jérémy Heyne
14
*Responsable Projet* : M Laffont
15
*Tuteur industriel* : M Chazelle
16 6 Anonyme
17
p=. !https://forge.clermont-universite.fr/attachments/download/15886/lotus_20150703131736_20150703131748.PNG!
18
19 7 Anonyme
%{color:red}1. Résumé% 
20
%{color:red}2. Abstract% 
21
%{color:red}3. Introduction% 
22
%{color:red}4. Présentation du Sujet% 
23
%{color:red}5. Cahier des charges% 
24
%{color:red}6. Développement% 
25
26
p(. %{color:red}1. Problématiques%
27
28
p(. %{color:red}2. Faisabilité%
29
30
p(. %{color:red}3. Solutions%
31
32
p((. %{color:red}1. La carte électronique%
33
34
p((. %{color:red}2. L’interface Homme/Machine%
35
36
p((. %{color:red}3. Design de la tablette%
37
38
%{color:red}7. Gestion de Projet%
39
40
p(. %{color:red}1. W.B.S.%
41
42
p(. %{color:red}2. Gantt%
43
44
%{color:red}8. Bilan%
45
%{color:red}9. Bibliographie%
46
%{color:red}10. Documents%
47
%{color:red}11. Notes d'application%
48
49
---
50
51
p=. Résumé
52
53
*Le projet professionnel s’inscrit dans un cursus d’élève ingénieur et relève de 202h de travail. L’entreprise ZeBulle souhaite finaliser son dispositif de relaxation pour entreprises et particuliers. Il s’agit d’un espace restreint regroupant fauteuil massant, diffuseur d’huiles essentielles, enceintes musicales et dispositif de chromothérapie, commandés par tablette tactile, à disposition de l’utilisateur. Dans cette démarche, l’entreprise a proposé comme sujet la réalisation d’un système permettant de contrôler, par l'intermédiaire de la tablette, l’ensemble des composants. Il est également demandé de réaliser un programme émettant les séquences de chromothérapie. Ce système sera alors proposé aux entreprises, hôtels et particuliers pour assurer leurs moments de détente et réconfort.*
54
55
*Mots clefs : gestion, communication, organisation, recherche.*
56
57
---
58
59
p=. Abstract
60
61
*This professional project is a part of an engineering student curriculum and reports above 202 hours of work. The company ZeBulle wants to finalize its relaxation device for businesses and individuals. This is a small space including massage chair, essential oil diffuser, music speakers and chromatherapy system, controlled by touch pad, available to the user. The purpose of the subject is to control the system via the tablet. It is also asked to code a program emitting sequences chromatherapy. This system will be offered to companies, hotels and individuals to ensure their moments of relaxation and comfort.*
62
63
*Keywords: management, communication, organization, research.*
64
65
---
66
67
p=. Introduction
68
69
*La démarche du projet professionnel est d’acquérir les compétences et l’expérience nécessaires au métier d’ingénieur. Très apprécié par les entreprises, ce projet permet aux étudiants d’obtenir un aperçu du travail qu’ils devront réaliser une fois entrés dans la vie active. Le projet regroupe un travail pratique, qui vise à réaliser le dispositif demandé, une gestion de projet, des présentations orales et un rapport final.*
70
71
*Dans un monde en perpétuelle évolution, le salarié se doit de donner le meilleur de lui-même pour satisfaire aux exigences de son entreprise. Cette quête de perfection peut pousser certains à se donner corps et âme dans leur travail, ou à l’inverse, à douter de ses capacités, à perdre ses moyens, et perdre l’envie de mener à bout une quelconque réalisation. Ainsi, aujourd’hui, plus de 1/5 des salariés souffrent de stress, ou de dépression au travail.
72
C’est dans cette optique que l’entreprise auvergnate ZeBulle, dirigée par M. Robert Llambrich et M. Jean-Luc Debrion, a décidé de créer un dispositif permettant de prévenir ces symptômes. Du fait de son faible encombrement, le système peut être directement installé chez le client. Il permet ainsi, aux salariés le désirant, de bénéficier d’une séance de relaxation, directement au sein de l’entreprise. Par ailleurs, le dispositif est prévu pour des installations plus fixes telles que les hôtels, lieux de détente ou chez des particuliers.*
73
74
*Le dispositif comprend un fauteuil massant, un diffuseur d’huiles essentielles, des enceintes et des panneaux de LEDs pour diffuser de la lumière. Une tablette tactile permet à l’utilisateur de choisir ses programmes. La relaxation s’effectue par la stimulation simultanée des cinq sens, si l’opérateur le désire.*
75
76
*Le sujet proposé par l’entreprise est donc de synchroniser la lumière émise par le panneau et par le fauteuil, ainsi que de contrôler par l'intermédiaire de la tablette, le massage, la diffusion d'huiles essentielles et l’émission de musique. La tablette permet d’interfacer le fauteuil et tous les autres composants ensemble.
77
Ce rapport a pour objectif la présentation du cahier des charges fixé et les avancées techniques réalisées.
78
La première partie présentera le sujet en détail et le cahier des charges final. Viendra par la suite la problématique et l’avancement du projet. La troisième section décrira l’organisation qu’a suivie le projet. Enfin sera présenté le bilan personnel des réalisateurs du projet.*
79
80
---
81
82
p=. Présentation du Sujet
83
84
*L’entreprise ZeBulle désire réaliser un dispositif permettant aux usagers de se relaxer n’importe où et n’importe quand en minimisant le temps dépensé pour cette activité. Ce système permettra de lutter contre le stress au travail, mais aussi simplement, de se détendre chez soi ou dans les lieux spécialisés.*
85
86
*Le dispositif comprend un fauteuil massant, un diffuseur d’huiles essentielles, des enceintes, et des panneaux de LEDs pour diffuser de la lumière.*
87
88
*La relaxation s’effectue par la stimulation simultanée des cinq sens, si l’opérateur le désire.*
89 8 Anonyme
90
p=. !https://forge.clermont-universite.fr/attachments/download/15888/salle_relax_20160111134153_20160112175935.PNG!
91
92
93
*Le sujet proposé par l’entreprise est donc de faire collaborer ces différents éléments n'étant à l'origine pas créés pour fonctionner ensemble. Il faut donc :
94
- synchroniser la lumière émise par le panneau et par le fauteuil,
95
- contrôler par l'intermédiaire de la tablette, le massage, la diffusion d'huiles essentielles et l’émission de musique.*
96
97
*La tablette permet d’interfacer le fauteuil et tous les autres composants ensemble.
98
Elle permettra de choisir les composantes que le client souhaite activer durant sa séance. Les informations seront envoyées à un microprocesseur qui activera la ou les composantes sélectionnées.*
99
100
*La constitution du fauteuil est la suivante :
101
- Une partie d'alimentation située à la base du fauteuil et constituée d'un transformateur 230V/12V, d'un convertisseur 230V/12V continu et d'un module de communication radiofréquence comme visible sur la figure suivante :*
102
103 9 Anonyme
p=. !https://forge.clermont-universite.fr/attachments/download/15889/capture8_20160112180653_20160112180822.PNG!
104
105
*- Une partie d'éclairage et de massage composée de deux rubans de LEDs RGB alimentées en 12V continu et de huit moteurs à courant continu comme vu sur la figure suivante :*
106 10 Anonyme
107
p=. !https://forge.clermont-universite.fr/attachments/download/15890/leds_fauteuil_20160115152335_20160115152353.PNG!
108
109 12 Anonyme
*Les huit moteurs sont associés par paires. Deux massent au niveau des épaules deux autres dans le bas du dos, deux autres aux cuisses et enfin les deux derrière les mollets. Il y a donc 4 lignes de 2 colonnes de moteurs.
110
Il est à noter qu'à l'origine la diffusion lumineuse sur le fauteuil s'effectue via une télécommande RF (Radio Fréquence), le massage quant à lui s'effectue via une télécommande filaire permettant un massage rapide ou lent.*
111 10 Anonyme
112 12 Anonyme
*La seconde partie des LEDs constitue les panneaux réfléchissants qui seront placés de part et d'autre du fauteuil, derrière un mur de brique de sel rouge (figure 4) et sont aussi commandables par une télécommande radiofréquence. Le système d'origine est donc constitué de trois télécommandes différentes. Le but du projet est donc de s'affranchir de ses différentes télécommandes pour contrôler les différents éléments de relaxation via une unique tablette de la marque Qilive.*
113 1 Anonyme
114
p=. !https://forge.clermont-universite.fr/attachments/download/15891/Capture3_20160112181049_20160112181113.PNG!
115 12 Anonyme
116
p=. !https://forge.clermont-universite.fr/attachments/download/15892/brique_sel_20160112181049_20160112181126.PNG!
117
118
*Le sujet regroupe donc une partie dite hardware, qui traite des aspects matériels, comme la réalisation de cartes électroniques, et une partie software, importante, qui représente les codes qui seront implémentés dans les différents composants tels que les tablettes ou les microprocesseurs.*
119
120
---
121
122
p=. Cahier des charges
123
124
*La définition du cahier des charges est la partie primordiale de tout projet. Elle s’effectue en amont de celui-ci, et nécessite une communication constante entre les clients et le chef de projet. Son objectif est de définir les livrables finaux qui seront fournis aux clients à la date de fin de réalisation. Il est donc important que clients et chef de projet se mettent en accord et surtout que toutes les parties soient clarifiées afin d’éviter toutes incompréhensions.*
125
126
*Cette phase constitue principalement la première partie du projet dit d'avant projet. Lors de cette phase, deux réunions ont eu lieue avec les clients pour clarifier et mettre au point le cahier des charges suivant, d'une part, la compréhension des désirs des clients par les étudiants et d'autre part, les études de faisabilité relatives aux domaines du produit réalisées. Le cahier des charges définitif est le suivant :*
127 13 Anonyme
128
p=. !https://forge.clermont-universite.fr/attachments/download/15893/cahier_des_charges_20160112181049_20160112181427.PNG!
129
130
*La première fonction à mettre en œuvre est la diffusion de lumière simultanée sur les LEDs du fauteuil et du panneau. Un critère sur le retard de diffusion a été fixé à moins d'une seconde.
131
Dans cette fonction principale, la diffusion synchrone doit pouvoir être effectuée via, d'une part, les télécommandes RF du fauteuil ou des panneaux et d’autre part par l’application tablette.*
132
133
*La seconde fonction concerne la communication entre la tablette et la carte électronique. Ici plusieurs types de communication sont possibles entre des protocoles utilisant un système filaire ou non. Le protocole de communication choisi a été la communication Bluetooth. La communication se devant être rapide pour permettre à l’utilisateur de profiter de sa séance le plus rapidement possible, il a été choisir de fonctionner à une vitesse de 115200 bauds. Les bauds représentent le nombre de bits émis par secondes.*
134
135
*La troisième fonction que doit effectuée le système est le massage. Cette fonction doit permettre à l’utilisateur de se faire masser par les moteurs présents sur le fauteuil. Un critère concernant les vitesses possibles de massages a été émis et engagent les réalisateurs du projet a fournir des programmes identiques à ceux présent dans la télécommande de massage.*
136
137
*La quatrième fonction concerne l’interface tablette permettant à l’utilisateur de lancer sa séance de relaxation. Cette application doit donc permettre à l’utilisateur de choisir si celui-ci veut une relaxation par l’odorat, par un massage et par de la lumière.
138
Dans cette fonction principale, une fonction secondaire jugée comme moins critique par le client a été émise, il s’agit de la diffusion musicale qui doit pouvoir être émise via des haut-parleurs ou un casque.*
139
140
*La dernière fonction concerne la diffusion d’huiles essentielles. Le système doit être capable d’émettre des huiles essentielles quand l’utilisateur souhaite en avoir. Les clients ont indiqué que cette option était moins importante que la synchronisation des lumières et que le programme tablette.*
141
142
---
143
144
p=. Développement
145
146
*Cette partie définit la problématique, l'étude de faisabilité du projet et les solutions retenues pour la réalisation du système. Une bonne définition de la problématique et de la faisabilité permet de fixer le matériel à utiliser et l'organisation à adopter lors de la réalisation.*
147
148
---
149
150
Problématique
151
152
*Les différentes problématiques reprennent les fonctions définies dans le cahier des charges.*
153
154
*Tout d’abord, il a fallu réfléchir à la méthode permettant de synchroniser la couleur du fauteuil et celle des panneaux. Le fauteuil dispose d’une télécommande permettant de choisir la couleur du fauteuil. Une seconde télécommande permet de choisir la couleur des panneaux. Chaque télécommande est couplée à son matériel avec un identifiant. La solution qui a été retenue consiste à connaitre tous les identifiants des télécommandes utilisées. L’utilisateur choisit ensuite un programme sur la tablette, le dispositif détecte les identifiants manquants et les génère afin que panneaux et fauteuils reçoivent le même signal.*
155
156
*La question de l’implémentation d’un code dans la tablette s’est également posée par la suite. Quels logiciels choisir ? Cette problématique a été résolue, une première version de l'apllication aillant été codée sous QT Android il a été décider de continuer avec ce même logiciel.*
157
158
*Vient également la question de l’interfaçage du fauteuil et des autres composants. Certains seront reliés en filaire, d’autre avec une connexion sans fil.*
159
160
---
161
162
Faisabilité
163
164
*L’étude de faisabilité d’un projet cherche à vérifier, avant définition finale du cahier des charges, que chacune des tâches qui seront proposées pourra être réalisée. Cette phase permet de choisir entre autres les logiciels qui seront utilisés, le matériel et d’estimer le temps que chaque partie prendra.*
165
166
*Pour cela, divers processus d’études et de manipulations ont été réalisés.*
167
168
*Concernant la première fonction, celle de chromothérapie, il s’agissait de vérifier que chaque télécommande possède un identifiant unique qui soit couplé à un matériel unique, par exemple fauteuil 1, 2 ou panneau 1, 2 … Pour cela les signaux de deux télécommandes ont été relevés à l’oscilloscope. Il a était constaté que chaque télécommande possède bien un identifiant unique, et que la télécommande du fauteuil par exemple ne permet de pas de contrôler le panneau de LEDs.* 
169 14 Anonyme
170
p=. !https://forge.clermont-universite.fr/attachments/download/15894/Capture7_20160112181049_20160112181541.PNG!
171
172
*Par ailleurs, la télécommande utilise une communication sans fil. La fréquence a donc été relevée sur le récepteur présent dans le fauteuil. La communication s’effectue à 433.92 Mhz. Les panneaux et le fauteuil utilisent la même fréquence de communication ce qui ne nécessite aucune adaptation.
173
Concernant la génération des couleurs, fauteuils et panneaux sont équipés de LEDs RGB. Sept teintes par couleurs ont pu être établies ce qui représente une variation de 350 couleurs. Ceci a été possible grâce à une PWM (Pulse Width Modulation) implantée dans le programme. L’état haut correspond à l’état éteint pour les LEDS.*
174 15 Anonyme
175
p=. !https://forge.clermont-universite.fr/attachments/download/15895/fig4_20150703124206_20150703124216.PNG!
176
177
*Enfin, voulant intégrer des programmes spécifiques à la chromothérapie, des recherches sur les couleurs ou les fréquences à émettre ont été menées. Un rendez-vous avec le Docteur Adrianarisoa, psychiatre au CHU de Clermont-Ferrand, a permis d'exclure du cahier des charges ces recherches. En effets, celles-ci requièrent une connaissance précise du domaine. Le client devra se renseigner auprès d’un professionnel dans la thérapie par les couleurs. Le programme permettra l’émission de n’importe quelle couleur et le scintillement à la fréquence souhaitée.*
178
179
*La deuxième fonction concerne le programme de la tablette. Pour cela, il s’agissait principalement de savoir s’il était possible de faire communiquer ladite tablette avec les autres composants du système. Il existe des dispositifs Bluetooth pouvant s’intégrer sur des cartes électroniques, et la tablette possédant elle aussi un émetteur récepteur Bluetooth, cette technologie a été choisie.*
180
181
*Par ailleurs, l’ergonomie présente sur la tablette joue un rôle important dans les sensations que ressentira le client. Il s’agira de sa première sensation. Une ergonomie fine et travaillée permettra ainsi de le mettre en condition pour la suite. Ce design a été réalisé par un professionnel. L’objectif maintenant est de l’implanter par code dans la tablette. Pour cela la série QT Android sera utilisée. Une première prise en main a déjà été réalisée.*
182
183
*Enfin, un programme permettant le choix des fonctions, du système de relaxation, avait été testé avant l’affectation des projets. Il sera réutilisé et réadapté en fonction des besoins et du nouveau matériel pour correspondre aux demandes du client.*
184
185
*Le nouveau fauteuil n’a pas encore été livré. L’objectif est de regarder ses signaux de contrôle et quel support il utilise pour dialoguer. En effet, il semble posséder une liaison sans fil. Le circuit interne peut également donner des informations sur son fonctionnement. En effet, le fauteuil possède des LEDs intégrées, et celles-ci devront ou non être utilisées par le processus de chromothérapie.*
186
187
*Enfin, la dernière étude concerne la tablette secondaire. Celle-ci ne devant contenir qu’un programme, il sera donc possible de la programmer tout comme pour la première.*
188
189
---
190
191
Solutions
192
193
p((. La carte électronique
194
195
*La carte électronique permet le contrôle du fauteuil (massage et LEDs) et des panneaux de LEDs, en rapport avec les informations reçues par la télécommande d'un des deux modules haute-fréquence ou de la tablette tactile.
196
Lors du processus de développement, une première version fonctionnelle de la carte électronique a été développée, permettant le contrôle des LEDs et la communication Bluetooth. Dans la version suivante, finale, a été intégrée la gestion des moteurs (fonction testée auparavant sur breadboard), ainsi que celle des télécommandes haute-fréquence (testée elle sur la carte de synthèse propre à l'école).
197
La communication Bluetooth ne sera pas évoquée ici, faisant l'objet d'un point important dans la grande partie suivante.*
198
199
p((. %{color:##blue}+La commande des LEDs et des moteurs+%
200 16 Anonyme
201
*Le microcontrôleur choisit pour la carte finale, le PIC18F27J53, possède jusqu'à 4 sorties pouvant fonctionner sur PWM (Pulse Width Modulation, ou Modulateur de Largeur d'Impulsion, MLI, en français) de périodes indépendantes. Trois de ces sorties sont utilisées afin de sélectionner la couleur souhaitée sur nos bandeaux de LEDs (une pour chaque couleur, rouge, vert et bleu) : en effet, ces LEDs sont considérées comme éteintes lorsque notre carte émet du 12V sur la sortie correspondante (soit un état logique "haut" en sortie de notre microcontrôleur), et allumées lorsqu'elle n'émet rien (soit un état logique "bas"). Les PWM nous permette de faire varier la durée des états allumés et éteints de nos LEDs, à une fréquence telle que le scintillement est invisible à l'oeil nu et donne une sensation d'intensité de la lumière sur la LED (un état haut long suivi d'un état bas court donnera l'impression que la LED est faiblement allumée, et inversement).
202
En jouant sur l'intensité de chaque couleur (rouge, vert et bleu donc), il est possible de proposer une large gamme de couleurs sur les bandeaux de LEDs. Chaque composante pouvant prendre 256 valeurs différents, nous pouvons obtenir un total de 16 777 216 couleurs différentes. Une fonction permet ensuite, au choix, d'afficher une couleur sélectionnée directement, ou alors de générer un dégradé allant de la couleur initiale à la couleur choisie.*
203
204
*Pour ce qui est des moteurs, la carte demandait à nouveau 4 PWM, permettant cette fois-ci de sélectionner la vitesse des moteurs. Le microcontrôleur sélectionné ne possédant plus assez de sorties PWM hardware, il a fallu en programmer manuellement. La demande client était originellement de pouvoir reproduire les programmes de base du fauteuil (2 vitesse, et massant sur une ligne de moteur à la fois, allant du haut vers le bas et revenant). Avec la solution développée, il est maintenant possible de sélectionner jusqu'à 16 vitesses différentes, et d'activer plusieurs lignes selon les demandes qui seront effectuées.*
205
*Deux broches du microcontrôleur sont utilisées pour activer les colonnes moteurs. Il s'agit de l'alimentation. Quatre autres broches viennent sélectionner la ligne à activer. Ainsi les moteurs fonctionnent deux par deux. La ligne qui est toujours au niveau au correspond à l'alimentation, le 12V. Les quatre autres lignes permettent de mettre à un niveau bas ou haut le retour du moteur, donc activer ou non son massage. La carte finale est présentée ci dessous:*
206 17 Anonyme
207
p=. !https://forge.clermont-universite.fr/attachments/download/15896/Capture22_20160113214820_20160113214906.PNG!
208 18 Anonyme
209
p((.  %{color:#82B6E1}+La partie haute-fréquence+%
210
211
p(. *Les bandeaux de LEDs du fauteuil et des panneaux étant commandées par différentes télécommandes haute-fréquences, il fallait par le biais de notre carte garder cette fonction mais en se limitant à une seule télécommande, permettant ainsi la synchronisation des couleurs sélectionnées sur les différents modules.
212
Pour cela, la carte électronique intègre un récepteur et un émetteur haute-fréquence. Le récepteur est relié à une broche possédant une fonction interrupt-on-change, permettant la détection d'un changement d'état sur ce dernier. Le programme attend la réception de la même trame a plusieurs reprises afin de s'assurer de la validité de la commande.
213
Chaque trame possède deux parties principales : la première est une adresse qui permet de faire le lien entre une télécommande donnée et son récepteur, et la seconde est universelle entre chaque module et contient la fonction a effectuer (par exemple "affiche du rouge"). En cas d'appui long sur le bouton d'une télécommande inconnue, le programme détecte l'adresse de celle-ci et l'enregistre comme nouveau module (par exemple, si le client ajoute un panneau à son système). Enfin, la commande reçue est diffusée sur toutes les adresses mémorisées par le microcontrôleur.*
214
215
--- 
216
217
p(. *L'interface Homme/Machine*
218
219
*L’application tablette doit permettre à l’utilisateur de choisir le type de séance de relaxation qu’il souhaite démarrer.
220
Pour cela, l’application doit permettre un choix des différentes solutions de relaxation (Massage, Aromathérapie, Musicothérapie et/ou Chromothérapie). Une fois le choix fait, ces informations doivent être communiquées au microcontrôleur pour que celui-ci active ou non les différentes solutions de relaxation.
221
La tablette fonctionnant sous le système d’exploitation Android 4.4, l’application aurait pu être codée sous plusieurs environnements de développement comme Android Studio ou QT Creator.
222
Une première version, appelée ici version alpha, de l’application ayant déjà été développée sous QT Creator, il a été décidé de continuer sous le même environnement le développement de l’application. Ici la version de QT Creator utilisée est la 5.5 qui intègre un module appelé QT Android permettant l’export des applications sur les smartphones de type Android.
223
QT Creator a l’originalité de pouvoir développer des applications qui peuvent être codées soit en C++ soit en QML, un langage créé spécialement pour QT pour développer plus facilement une interface graphique. Ce langage a d’ailleurs été utilisé pour développer une interface ne servant qu’a représentée un design possible pour l’application. La version alpha quant à elle a été codée entièrement en C++. Les améliorations apportées ont donc également été codées en C++.*
224
225
p(.  %{color:#82B6E1}+La communication Bluetooth+%
226
227
Comme dit précédemment, la communication utilisée entre la carte électronique et la tablette est de type Bluetooth. Cette communication est apparue comme la plus simple à mettre en place, car elle permet un envoi et une réception rapide de données et de manière non filaire. La note d’application n° 3 est disponible pour une explication détaillée de cette communication.
228
Le schéma de fonctionnement et de l’interaction entre la tablette et le microcontrôleur est le suivant : (du point de vue de la tablette)
229 19 Anonyme
230
p=. !https://forge.clermont-universite.fr/attachments/download/15897/schemabt_20160112193447_20160112193502.PNG!
231
232
p(((. %{color:#black}+Au niveau du microcontrôleur:+%
233
234
*La communication mise en place est réglée pour être en mode asynchrone. Cette configuration a été choisie pour permettre un envoi et une réception sans l’utilisation d’une horloge commune. En effet, au niveau de l’application, il est impossible de savoir la manière dont les utilisateurs vont appuyer sur les différents boutons émettant un signal Bluetooth et donc il serait impossible au microcontrôleur de réceptionner ces informations de manière synchrone.*
235
236
*Sur le PIC18F27J53 deux ports séries peuvent être utilisé pour communiquer avec le module Bluetooth.*
237 20 Anonyme
238
p=. !https://forge.clermont-universite.fr/attachments/download/15898/Capture11_20160112182723_20160112182755.PNG!
239
240
*Ces ports séries sont des UARTs (Universal Synchronous Asynchronous Receiver Tansmitter) et permettent le transfert et la réception de données par le microcontrôleur. Nous utilisons une seule UART, la pin de réception étant la pin 18 et de transmission la pin 17.
241
L’UART a été configuré pour fonctionner à une vitesse de transmission de 115200 bauds.*
242
243
*Une trame est composée d’un bit de Start annonçant le début d'un envoi ou d'une reception, de huit bits de données et d’un bit de Stop indiquant la fin de la transmission.*
244
245
p(((. %{color:#black}+Au niveau de l’application:+%
246
247
*-La classe btport :*
248
249
*La configuration du Bluetooth au niveau de l’application Android est réalisée au travers d’une classe appelée btport.
250
Cette classe permet d’initialiser le Bluetooth de la tablette, de se connecter à un autre périphérique Bluetooth, mais permet également l’envoi et la réception de données. Les données transmissibles et recevables sont des caractères ASCII. Il faut noter que lors d’une transmission, les caractères compris entre ‘1’ et ‘9’ sont considérés comme une temporisation. L’intérêt est de pouvoir assurer une bonne réception des caractères par le microcontrôleur, celui-ci fonctionnant en mode asynchrone.*
251
252
*-La fonction d’auto connexion*
253
254
*L'application contient également une fonction d’auto-connexion. Cette fonction permet d’identifier le nom des modules Bluetooth détectés par l’application et permet à la tablette de se connecter à un identifiant particulier. Dans le code développé, le module Bluetooth identifié s’appelle PIC.*
255
256
*Cette fonction a été mise en place pour simplifier l’utilisation de l’interface par l’utilisateur, elle peut néanmoins poser un inconvénient. En effet, la connexion automatique peut se faire uniquement lorsque le module Bluetooth PIC est découvert par l’application. En fonction du nombre de périphériques Bluetooth activés dans le champ d’action de la tablette, la durée d’auto connexion peut donc varier de moins de 5 secondes à plus d’une minute. Cela pose problème lors d’une utilisation rapide de l’application et donc d’un lancement rapide de la séance. Les informations de la séance étant envoyées au début de la séance, il est obligatoire que la connexion Bluetooth soit effectuée. Pour pallier cet inconvénient, une contrainte a été ajoutée sur l’envoi des données, obligeant la connexion à être effectuée avant l’envoi des données et avant le début de la séance de relaxation.*
257
258
*L’architecture de l’application :
259
L’application est basée sur une machine à état. Chaque état représentant une page de l’application et les boutons représentant les conditions de transition.
260
Les pages les plus importantes concernant la communication et le lancement du système électronique sont :*
261
262
*la page suivante de choix d’options :*
263 21 Anonyme
264
p=. !https://forge.clermont-universite.fr/attachments/download/15899/Capture13_20160112183704_20160112184000.PNG!
265
266
*L’appui des cases à cocher va permettre de mettre à jour une structure Info qui contient les éléments booléens suivant :
267
valider_massage, valider_color, valider_aroma, valider_musique et Bt_connection_ok qui permettent l’enregistrement des différents choix de l’utilisateur. Le booléen Bt_connection_ok permettant de vérifier qu'une connexion est établie.
268
L’appui du bouton Continuer amènera l’utilisateur à la page du choix des programmes uniquement si celui-ci a choisi au minimum une solution de relaxation. Sinon le changement d’affichage suivant sera effectué. Cette page restera active tant que l’utilisateur n’aura pas choisi un type de relaxation.*
269 22 Anonyme
270
p=. !https://forge.clermont-universite.fr/attachments/download/15900/Capture14_20160112183704_20160112184013.PNG!
271
272
*Une autre page va permettre à l'utilisateur de choisir son programme de relaxation et qui en rappelle sa durée.
273
En cliquant sur un des boutons, une séance débutera et durera autant de temps qu’indiqué sur le bouton.
274
Seuls les boutons proposant une lumière continue peuvent fournir une séance utilisant la chromothérapie.
275
L’appui sur l’un de ses boutons ouvre la page suivante :*
276 23 Anonyme
277
p=. !https://forge.clermont-universite.fr/attachments/download/15901/Capture15_20160112183704_20160112184029.PNG!
278
279
*La page contient un ensemble de boutons permettant à l’utilisateur d’arrêter les différentes solutions de relaxation activées. Par défaut, seuls les boutons de désactivation des solutions choisies par l’utilisateur sont affichés. Dans la figure précédente, le massage n’a pas été activé, cela s’observe grâce à la case massage n’ayant pas été cochée. L’utilisateur pouvant arrêter les différentes solutions de relaxations faisant appel à sa vision, son odorat et à son ouïe pouvant en fonction des personnes être considéré comme gênant seules ces solutions possèdent un bouton de désactivation. Il a été décidé de laisser uniquement libre l’activation et le changement de vitesse du massage comme le prouve la figure précédente.*
280
281
*Cette page contient donc un affichage dynamique. En plus de la désactivation, l’utilisateur est libre de gérer le volume de la musique lancée directement via le slider vertical présent sur la page ou via les boutons de gestion du volume de la tablette. De plus lors de l’activation des différentes lignes de moteurs un label indiquant la ligne d’activation apparait.*
282
283
*La gestion musicale se fait grâce à la libraire QMediaPlayer. Cette librairie permet notamment de lancer un fichier.mp3 à l’intérieur d’une application.
284
Les fichiers musicaux ont été insérés directement sur l’application. Les fichiers musicaux ne sont donc pas visibles sur la tablette. Ce choix est apparu évident, une majorité des applications Android disponibles utilisant le même procédé.*
285
286
*Ce programme permet donc de dialoguer avec le reste du dispositif, bien qu’il présente un design de la tablette sommaire. La partie suivante traite de la nouvelle mise en forme de l’application.*
287
288
p(((( Design de la tablette
289
290
*Comme mentionné plus haut, cette partie traite du rendu visuel de l’application et est réalisée dans un langage de programmation développé par Nokia qui est le QML (QT Meta Language). Ce langage permet de concevoir des interfaces allant de la simple fenêtre avec un bouton, à des objets plus élaborés réagissant en fonction du comportement de l’utilisateur.*
291
292
*Le langage est inclus à la version de QT Creator utilisée, la 5.5. Par ailleurs, son exportation sur appareils android tels que téléphones ou tablettes est également possible grâce à QT Android.
293
Il est possible de réaliser des interfaces complètes et fonctionnelles pour ordinateur en QML. En effet, il est possible d’inclure du Java et du C++ au code, ce qui laisse au développeur une marge d’adaptabilité importante. Cependant, son utilisation est de plus en plus répandue pour les Smartphones.*
294
295
p(((. %{color:#black}+Principe+%
296
297
*Le Qml permet donc de séparer la partie relevant du design de la partie logique de l’application, réalisée en C++. Le fonctionnement du QML repose sur l’utilisation d’ « objets ». Ces objets sont les éléments de base du code et donc de l’interface. Le développeur trouvera par exemple l’objet « Rectangle » qui permet d’afficher un rectangle dans la fenêtre principale. Les objets sont définis avec une majuscule. Chaque objet peut être défini par des propriétés comme, un identifiant, une hauteur et une largeur, ainsi qu’une position fixe ou non, etc.*
298
299
*L’objectif est de créer une arborescence simple, d’objets que l’on veut faire apparaître dans la fenêtre ou après une action d’un utilisateur. Ainsi pour intégrer une image par exemple, il suffit de définir un rectangle avec ses propriétés et d’ajouter l’objet « Image » à l’intérieur de l’objet « Rectangle ». Image sera donc l’ « enfant » de « Rectangle » comme le montre la figure suivante.*
300
301 24 Anonyme
p=. !https://forge.clermont-universite.fr/attachments/download/15902/Capture17_20160112184118_20160112184212.PNG!
302
303
*L’objet ApplicationWindow? permet de charger la fenêtre principale. Les imports sont des « types » et permettent de charger les objets qu’ils contiennent tel qu’ApplicationWindow? qui est contenu dans QtQuick?.Window 2.2.
304
Par la suite, les objets peuvent être placés grâce à des propriétés. Il est possible de définir leur position en x et y ou de la définir par rapport au parent, par exemple la hauteur du rectangle rect1.
305
Il est également possible de créer ses propres objets et définir les attributs que le programmeur souhaite leur approprier. Deux objets ont été créés de cette façon, il s’agit de « Fenetre » qui est défini dans le fichier Fenetre.qml, et de « Bouton », qui est défini dans le fichier Bouton.qml.
306
Cette méthode permet de personnaliser l’objet créé en vue d’une utilisation fréquente de celui-ci. Par exemple, la figure suivante montre la différence entre l’objet « Button » développé par QML et l’objet « Bouton » cité ci-dessus.*
307 25 Anonyme
308
p=. !https://forge.clermont-universite.fr/attachments/download/15903/Capture18_20160112184813_20160112185026.PNG!
309
310
*L’avantage d’un tel fichier est de fixer les propriétés de l’objet et de ne modifier que celles souhaitées, contrairement à l’objet développé par QML où il est nécessaire de redéfinir à chaque appel les propriétés.
311
Il en va de même pour l’objet « Fenetre ». Il s’agit de la fenêtre qui se lance lors du lancement d’un des programmes de la tablette. Or le graphisme de cet objet ne changera pas en fonction du programme appelé ce qui justifie l’utilisation de ce procédé.*
312 26 Anonyme
313
p=. !https://forge.clermont-universite.fr/attachments/download/15904/Capture19_20160112184813_20160112185046.PNG!
314
315
*Le choix a également été fait de n’avoir qu’une seule fenêtre principale chargée les pages à l’intérieur de celle-ci. Ainsi, chaque page est en réalité un rectangle dont les dimensions sont ajustées à la fenêtre principale. Les rectangles sont chargés en utilisant la fonction loader développée par QT. Elle est initialisée dans le fichier main.qml qui permet de charger la fenêtre principale et la page d’accueil. Lors d’un appui sur un bouton ou une zone, définie par l’objet « MousArea? », la page suivante sera chargée. Cela permet d’avoir une unique fenêtre ouverte pour le programme en cours. L’agencement de ces fenêtres et leur design est défini dans la partie suivante.*
316
317
p(((. *+Graphisme+*
318
319
*Cette partie dévoile le graphisme de chaque page et l’agencement entre elles. Ainsi, l’appui sur les boutons tels que suivant ou retour permettent de changer de page, mais la sélection d’un programme ne l’exécutera pas. Seule la fenêtre sera chargée, ceci afin d’avoir une vue d’ensemble du design pour ensuite pouvoir exécuter les programmes dans un second temps.*
320
321
*Au lancement de l’application, la page d’accueil apparaît.*
322 27 Anonyme
323
p=. !https://forge.clermont-universite.fr/attachments/download/15905/Capture20_20160112184813_20160112185108.PNG!
324
325
*En appuyant sur le texte Zebulle, l’utilisateur accède alors à la page d’avertissement, pour les huiles essentielles.*
326 28 Anonyme
327
p=. !https://forge.clermont-universite.fr/attachments/download/15906/avertissement_20160112185633_20160112185721.PNG!
328
329
*Ainsi, l’utilisateur est informé des effets des huiles et peut désactiver cette option en cochant la checkbox en bas à droite. Si cette option n’est pas cochée et que le bouton suivant est activé, une page de rappel concernant les huiles s’affiche afin d’éviter tout mal entendu.*
330 29 Anonyme
331
p=. !https://forge.clermont-universite.fr/attachments/download/15907/rappel_20160112185633_20160112185900.PNG!
332
333
*Encore une fois l’utilisateur a le choix de désactiver ou non l’option d’huiles.
334
La fenêtre suivante permet de choisir le programme.*
335 30 Anonyme
336
p=. !https://forge.clermont-universite.fr/attachments/download/15908/choix_pro_20160112185633_20160112185925.PNG!
337
338
*L’utilisateur peut alors choisir les options qu’il souhaite activer. Le premier bouton Choix couleur ouvre la fenêtre suivante.*
339 31 Anonyme
340
p=. !https://forge.clermont-universite.fr/attachments/download/15909/choix_coul_20160112185633_20160112185946.PNG!
341
342
*Les quatre checkboxs du bas rappellent les options choisies par l’utilisateur. Les 2 checkboxs du haut permettent de choisir si la couleur est émise en continue ou en pulsée. L’utilisateur peut ensuite choisir la couleur qu’il désire. La fenêtre du programme s’ouvre alors.*
343 32 Anonyme
344
p=. !https://forge.clermont-universite.fr/attachments/download/15910/fen_20160112185633_20160112190106.PNG!
345
346
*Se trouve sur la droite un slider permettant de régler le volume. Lorsque celui-ci dépasse les 75%, le slider devient rouge pour prévenir du niveau sonore élevé . Le bouton central permet de mettre fin au programme complet, l’utilisateur revient alors à la fenêtre du choix de la couleur (figure 5). Les quatre boutons du bas contrôlent la musique.*
347 33 Anonyme
348
p=. !https://forge.clermont-universite.fr/attachments/download/15911/fen2_20160112190222_20160112190240.PNG!
349
350
*Dans le cas où le programme choisi est palette de couleurs (figure 4), la fenêtre présentée en image 8 s’ouvre.*
351 34 Anonyme
352
p=. !https://forge.clermont-universite.fr/attachments/download/15912/palette_20160112190222_20160112190302.PNG!
353
354
*Cette fenêtre permet à l’utilisateur de choisir la couleur qu’il désire. Il vient toucher avec son doigt un endroit de l’image. La couleur du pixel sélectionné est alors identifiée. Il serait alors possible d’envoyer la couleur en commande afin que les LEDs du fauteuil et du panneau s’illuminent. L’utilisateur peut également glisser son doigt et ainsi obtenir un « train » de couleurs. Le rectangle rose en haut à gauche affiche la position du curseur, et les composantes rouge vert et bleu du pixel choisi. Le bouton stop permet de revenir à la fenêtre des choix des programmes. Toutes les autres fenêtres ont la possibilité de revenir à la précédente.*
355
356
---
357
358
p=. Gestion de Projet
359
360
*Cette partie regroupe l’organisation du projet. Elle constitue un point clef du travail. Une bonne organisation permet d’avoir les idées claires sur le travail à réaliser et de prévoir d’éventuels contretemps. C’est aussi un document qui permet au client et aux responsables du projet de connaître l’avancement du projet et les dates importantes.*
361
362
---
363
364
W.B.S.
365
366
Afin de découper le projet en différentes sous-fonctions plus simples pour l’organisation principale de celui-ci, il convient de réaliser un W.B.S. La figure suivante présente l'organisation qu'a suivi le projet.