Wiki » History » Version 38
Stan Le Guen, 22/02/2021 01:18 AM
1 | 1 | Joris PEGON | h1. *+Panneau Leds+* |
---|---|---|---|
2 | 2 | Joris PEGON | |
3 | h2. _Stan Le Guen / Joris Pegon_ |
||
4 | 3 | Joris PEGON | |
5 | {{toc}} |
||
6 | 4 | Joris PEGON | |
7 | 19 | Stan Le Guen | h2. +Introduction au projet:+ |
8 | |||
9 | 22 | Stan Le Guen | Nous avions pour but d'afficher un message sur un panneau led de 3 manières différentes représentées sous la forme de 3 scénarios que voici: |
10 | 19 | Stan Le Guen | |
11 | 25 | Stan Le Guen | * Scénario 1: Un utilisateur programmeur ayant accès au code source modifie le message à afficher, puis exécute le programme |
12 | * Scénario 2:Un utilisateur expérimenté entre le message en argument lors de l'exécution du programme avec la console de l'OS RaspBian |
||
13 | * Scénario 3:Un utilisateur lambda utilise une interface web avec d'afficher le message simplement en appuyant sur un bouton "run" |
||
14 | 5 | Joris PEGON | |
15 | 20 | Stan Le Guen | --- |
16 | 1 | Joris PEGON | |
17 | 25 | Stan Le Guen | h2. +Répartition des tâches:+ |
18 | 21 | Stan Le Guen | |
19 | 20 | Stan Le Guen | *Joris :* |
20 | * Fabrication de l'enveloppe corporelle du panneau led |
||
21 | * Identification des nappes et connectiques |
||
22 | * Réalisation des connectiques (soudures, câblages) |
||
23 | * Installer une solution matérielle |
||
24 | * Assistance dans la recherche de solutions |
||
25 | |||
26 | *Stan :* |
||
27 | * Installation et configuration de Raspbian Jessie |
||
28 | * Installation et tests de la chaîne de compilation croisée |
||
29 | * Recherche de solutions (Coder / Tester / Debugger) |
||
30 | * Installer une solution logicielle |
||
31 | * Installation du serveur web |
||
32 | |||
33 | --- |
||
34 | |||
35 | h2. +Bilan matériel et logiciel utilisés+ |
||
36 | |||
37 | *Bilan matériel:* |
||
38 | * 1 Panneau led |
||
39 | * 1 Bornier |
||
40 | * 2 Connecteurs HE10 |
||
41 | * 2m de nappes |
||
42 | * une clé USB |
||
43 | * 1 Raspberry Pi |
||
44 | * Carte micro SD |
||
45 | * 1 Boîtier RPI |
||
46 | * Module wifi |
||
47 | * Module Pi face |
||
48 | |||
49 | *Bilan Logiciel:* |
||
50 | * Raspbian |
||
51 | * Smartty |
||
52 | 1 | Joris PEGON | * StarUML |
53 | 25 | Stan Le Guen | * Notepad++ |
54 | 20 | Stan Le Guen | * CodeBlocks |
55 | * Serveur Web |
||
56 | * Redmine |
||
57 | |||
58 | 23 | Stan Le Guen | --- |
59 | 1 | Joris PEGON | |
60 | 25 | Stan Le Guen | Afin d'illustrer les scénarios présentés précédemment , voici deux diagramme résumant la situation: |
61 | |||
62 | |||
63 | !StarUml1.PNG! |
||
64 | |||
65 | --- |
||
66 | |||
67 | !StartUml2.PNG! |
||
68 | |||
69 | --- |
||
70 | |||
71 | 31 | Stan Le Guen | h2. +Conception de l'enveloppe du panneau LED+ |
72 | 34 | Stan Le Guen | * Ci joint des photos de celle ci: |
73 | 31 | Stan Le Guen | |
74 | --- |
||
75 | |||
76 | !Panneau_Leds.jpg! |
||
77 | |||
78 | --- |
||
79 | |||
80 | --- |
||
81 | |||
82 | !Panneau_Leds2.jpg! |
||
83 | |||
84 | --- |
||
85 | |||
86 | !AlimPC.jpg! |
||
87 | |||
88 | --- |
||
89 | |||
90 | --- |
||
91 | |||
92 | !Arrière.jpg! |
||
93 | |||
94 | --- |
||
95 | |||
96 | !ArrièreLeds.jpg! |
||
97 | |||
98 | --- |
||
99 | |||
100 | --- |
||
101 | |||
102 | !ArrièreLedsCablés.jpg! |
||
103 | |||
104 | --- |
||
105 | |||
106 | 1 | Joris PEGON | h2. +Mesure a l'oscilloscope+ |
107 | 34 | Stan Le Guen | * On a relevé la tension entre chaque borne des leds rouges et vertes grâce à un oscilloscope lorsqu'on faisait clignoter les leds (horloge). Voici ci-dessous le graphique obtenu : on peut bien remarquer le changement d'état des leds correspondant |
108 | 1 | Joris PEGON | |
109 | 34 | Stan Le Guen | --- |
110 | |||
111 | !Oscillo.jpg! |
||
112 | |||
113 | --- |
||
114 | 32 | Stan Le Guen | |
115 | 1 | Joris PEGON | h2. +Partie 1 : Installation matérielle et logicielle+ |
116 | |||
117 | 25 | Stan Le Guen | * Stan s'est occupé de la partie installation logicielle englobant l'installation / la configuration du RaspBian Jessie & l'installation / la configuration de l'environnement de développement. |
118 | * Joris, pendant ce temps la, s'est occupé de l'enveloppe corporelle du panneau LED et du câblage de la Raspberry |
||
119 | 1 | Joris PEGON | |
120 | 32 | Stan Le Guen | --- |
121 | |||
122 | !Raspberry.jpg! |
||
123 | |||
124 | --- |
||
125 | |||
126 | 33 | Stan Le Guen | On a relevé la tension entre chaque borne des leds rouges et vertes grâce à un oscilloscope lorsqu'on faisait clignoter les leds (horloge). Voici ci-dessous le graphique obtenu : on peut bien remarquer le changement d'état des leds correspondant |
127 | |||
128 | 32 | Stan Le Guen | --- |
129 | |||
130 | !K1K2.jpg! |
||
131 | |||
132 | --- |
||
133 | |||
134 | 25 | Stan Le Guen | h3. +1.1 Installation du RaspBian Jessie+ |
135 | |||
136 | Il a tout d'abord fallu installer la chaine de compilation permettant alors de compiler les programmes futurs sont notre ordinateur , pour cela un logiciel nous était fourni : GNU toolchain |
||
137 | |||
138 | --- |
||
139 | |||
140 | 26 | Stan Le Guen | |
141 | 25 | Stan Le Guen | !Toolchain.PNG! |
142 | |||
143 | 26 | Stan Le Guen | |
144 | 25 | Stan Le Guen | --- |
145 | |||
146 | Cela a vite été suivi par le test de compilation d'un programme simple écris à travers l'outil Notepad++ et compilé dans l'invite de commande avec la commande " arm-linux-gnueabuhf-gcc.exe -g bonjour.c -o bonjour " |
||
147 | |||
148 | --- |
||
149 | |||
150 | 26 | Stan Le Guen | |
151 | 25 | Stan Le Guen | !programmetest.PNG! |
152 | |||
153 | 26 | Stan Le Guen | |
154 | 25 | Stan Le Guen | --- |
155 | |||
156 | 26 | Stan Le Guen | |
157 | 25 | Stan Le Guen | !compilation1.PNG! |
158 | 26 | Stan Le Guen | |
159 | 25 | Stan Le Guen | |
160 | --- |
||
161 | |||
162 | Cela a donc crée un fichier exécutable par la Raspberry et non par notre machine Windows. |
||
163 | Nous avons ensuite relevé l'adresse IP de notre Raspberry avec la commande : "ip a" |
||
164 | |||
165 | 28 | Stan Le Guen | h3. 1.2 +SmarTTY+ |
166 | 25 | Stan Le Guen | |
167 | SmarTTY est un client SSH fourni avec la chaine de compilation vu précédemment, il sert ainsi d'interface entre notre machine Windows et la Raspberry |
||
168 | 27 | Stan Le Guen | Nous avons alors configuré une nouvelle connexion pour SmarTTY: |
169 | |||
170 | --- |
||
171 | |||
172 | !SmarTTY.PNG! |
||
173 | |||
174 | --- |
||
175 | 1 | Joris PEGON | |
176 | 35 | Stan Le Guen | |
177 | h2. +Partie 2 : OS et Programmes tests+ |
||
178 | |||
179 | 28 | Stan Le Guen | A cet instant , il était possible de "drag'n drop" notre exécutable dans le dossier prévu à cet effet. |
180 | Nous avons donc autorisé l'exécution de notre binaire avec la commande " chmod +x bonjour " puis exécuté celui ci avec la commande ./bonjour |
||
181 | 1 | Joris PEGON | |
182 | 28 | Stan Le Guen | --- |
183 | |||
184 | !bonjour.PNG! |
||
185 | |||
186 | 29 | Stan Le Guen | --- |
187 | 1 | Joris PEGON | |
188 | 35 | Stan Le Guen | h3. 2.1 +Code::Blocks+ |
189 | 28 | Stan Le Guen | |
190 | Code::Blocks est l'environnement de développement nous ayant permis de développer nos programmes de tests avant d'arriver aux solutions demandées. |
||
191 | 36 | Stan Le Guen | |
192 | --- |
||
193 | |||
194 | !codeblocks.PNG! |
||
195 | |||
196 | --- |
||
197 | |||
198 | --- |
||
199 | |||
200 | !codebonjour.PNG! |
||
201 | |||
202 | --- |
||
203 | |||
204 | |||
205 | h3. 2.2 +Programmes tests+ |
||
206 | 28 | Stan Le Guen | Les programmes tests les plus importants ont étés les suivants : |
207 | |||
208 | 29 | Stan Le Guen | Le programme suivant a servi à déterminer si les entrées et sorties de la carte Raspberry fonctionnaient |
209 | 28 | Stan Le Guen | |
210 | 29 | Stan Le Guen | --- |
211 | 28 | Stan Le Guen | |
212 | !blinkgpio.PNG! |
||
213 | |||
214 | --- |
||
215 | |||
216 | Le programme suivant est un extrait d'un programme permettant l'affichage en statique de 4 "A" sur le panneau LED, en utilisant des tableau 1D |
||
217 | 7 | Joris PEGON | |
218 | --- |
||
219 | |||
220 | !aaaa.PNG! |
||
221 | |||
222 | 1 | Joris PEGON | --- |
223 | 10 | Joris PEGON | |
224 | 12 | Joris PEGON | Ce dernier programme permet encore une fois l'affichage de 4 "a" mais cette fois ci défilants et utilisant un seul tableau 2D |
225 | |||
226 | 10 | Joris PEGON | --- |
227 | 11 | Joris PEGON | |
228 | !aaaa2d.PNG! |
||
229 | 13 | Joris PEGON | |
230 | 1 | Joris PEGON | --- |
231 | 35 | Stan Le Guen | |
232 | 37 | Stan Le Guen | h2. +Partie 3 : Serveur Web+ |
233 | |||
234 | * Afin d'avoir la possibilité d'écrire un message a travers une interface web, il nous faut l'application "Apache2". Avec cette application , l'utilisateur lambda n'a plus qu'a taper le message voulu : |
||
235 | |||
236 | --- |
||
237 | |||
238 | !apache2.PNG! |
||
239 | |||
240 | --- |
||
241 | |||
242 | * Il conviendra ensuite d'installer php avec la commande : sudo apt-get install php5 libapache2-mod-php5 -y puis de créer un dossier "/var/www/" avec sudo mkdir. |
||
243 | Ceci s'affiche alors : |
||
244 | |||
245 | --- |
||
246 | |||
247 | !versionphp.PNG! |
||
248 | |||
249 | --- |
||
250 | |||
251 | * On copie alors les ficher dans le répertoire "panneauLeds" de la Raspberry : |
||
252 | |||
253 | --- |
||
254 | |||
255 | !repertoire.PNG! |
||
256 | |||
257 | --- |
||
258 | |||
259 | * Test de l'installation dans le serveur : |
||
260 | |||
261 | --- |
||
262 | 38 | Stan Le Guen | |
263 | !panneauled.PNG! |
||
264 | |||
265 | --- |
||
266 | |||
267 | * Modification du chemin de l'exécutable dans le fichier "runApp.php". |
||
268 | |||
269 | --- |
||
270 | |||
271 | !cheminexe.PNG! |
||
272 | |||
273 | --- |
||
274 | |||
275 | * Ajout des droits au groupe "www-data" dans le ficher /etc/sudoers. |
||
276 | |||
277 | --- |
||
278 | |||
279 | !modifsudoers.PNG! |
||
280 | |||
281 | --- |
||
282 | |||
283 | * Lorsque toutes ces étapes sont effectuées avec succès, alors il est possible désormais d'envoyer un message à travers une interface web , le produit est donc délivrable à l'utilisateur lambda |