Project

General

Profile

Wiki » History » Version 84

Elena Vig, 21/02/2021 08:58 PM

1 35 Elena Vig
h1. *+Panneau Leds+*
2 1 Alexis Mata
3 45 Alexis Mata
h2. VIG Elena / MATA Alexis
4 43 Alexis Mata
5 24 Elena Vig
{{toc}}
6
7 37 Alexis Mata
---
8
9
h2. +Présentation du projet:+
10
11 71 Elena Vig
Le projet que nous devions réaliser consiste à afficher des messages sur un panneau leds selon 3 scénarios donnés :
12
# Un utilisateur programmeur peut accéder, par la console de l'OS raspbian, au code source afin de le modifier et d'interagir avec le panneau LED.
13
# Un utilisateur confirmé peut entrer le message qu'il souhaite afficher sur le panneau LED en l'entrant en argument dans la console de l'OS raspbian.
14
# Un utilisateur lambda peut accéder à une page web qui lui permet de saisir un message et de l'afficher en appuyant sur « RUN ».
15
16 52 Alexis Mata
17 38 Alexis Mata
---
18
19 60 Alexis Mata
h2.  +Répartition des tâches:+
20 1 Alexis Mata
21
*Elena :* 
22 38 Alexis Mata
* Construction de la boîte du panneau
23
* Diagramme de déploiement et diagramme d'activité
24 34 Elena Vig
* Réalisation des connexions / soudures / câbles
25
* Installation / Test de la chaîne de compilation
26
* Coder / Tester / Debugger
27
* Modifier le programme afin d'exploiter les arguments de la fonction principale
28 33 Elena Vig
29
*Alexis :* 
30 34 Elena Vig
* Installation / configuration de Raspbian Jessie
31
* Réalisation des connexions / soudures / câbles
32
* Mesure et relevé des signaux éléctriques (horloge)
33
* Installer une solution matérielle/logicielle
34 1 Alexis Mata
* Installer le serveur web
35
36 38 Alexis Mata
---
37
38
h2. +Matériels et logiciels utilisés+
39
40
*Bilan Matériel:*
41 72 Elena Vig
* 1 Panneau led
42
* 1 Bornier
43
* 2 Connecteurs HE10
44
* 2m de nappes
45
* une clé USB
46
* 1 Raspberry Pi
47
* Carte micro SD
48
* 1 Boîtier RPI
49
* Module wifi
50
* Module Pi face
51 38 Alexis Mata
52 73 Elena Vig
*Bilan Logiciel:*
53 72 Elena Vig
* Raspbian
54
* Smartty
55
* StarUML
56
* Monia
57
* CodeBlocks
58
* Serveur Web 
59
* Redmine
60 38 Alexis Mata
61
---
62
63 23 Elena Vig
h2.  +Installation / Configuration Raspbian Jessie+
64 20 Elena Vig
65 83 Elena Vig
* Nous avons dézippé le fichier compressé '2021-01-22-raspbian-jessie-8.zip', puis installé l'utilitaire 'md5check_setup.exe', puis copié le fichier qu'on vient de décompresser. Enfin, nous avons installé puis formaté l'image Raspbian sur la carte SD.
66 1 Alexis Mata
!raspbian.PNG!
67 83 Elena Vig
68
* On commence ensuite la configuration en vérifiant si l'adresse IP est bien connectée sur le bon réseau, on regarde si le système est bien à jour, que le service ssh est activé et que la librairie wiringPI soit bien installée sur notre raspberry.
69 75 Elena Vig
Voici le raspberry installé et branché :
70 55 Alexis Mata
!branchement_raspberry.jpg!
71 49 Alexis Mata
72 23 Elena Vig
h2.  +Diagramme de déploiement des cas d'utilisations et leurs scénarios+
73 20 Elena Vig
74 63 Alexis Mata
!diagramme.PNG!
75
76 23 Elena Vig
h2.  +Réalisation des connexions / soudures / câbles et test+
77 20 Elena Vig
78 84 Elena Vig
* La soudure des composants de la carte mère de notre Raspbian Jessie étant déjà réalisée, il nous a fallu réaliser les connexions des câbles K1 et K2, puis les brancher correctement. 
79
80
* Ensuite, pour les tester, il a fallu faire 2 leds (une rouge, une verte) avec une résistance, et ensuite les brancher sur la précédente monture avec la borne négative connectée au GND, et la borne négative connectée sur  le GPIO 22 pour la led rouge et le GPIO 17 pour la led verte.
81 81 Elena Vig
Si les leds s'allument correctement et réagissent aux instructions données dans la console avec le GPIO, le test des connexion peut donc être validé.
82
83 32 Elena Vig
h2.  +Construction de la boîte du panneau leds+
84 20 Elena Vig
85 77 Elena Vig
On a du créer une boîte en carton et polystyrène refermable permettant au panneau leds de tenir debout.
86 64 Alexis Mata
!PanneauLeds.jpg!
87
88 23 Elena Vig
h2.  +Mesure et relevé des signaux électriques (horloge)+
89 20 Elena Vig
90 23 Elena Vig
h2.  +Installation / Test de la chaîne de compilation+
91 20 Elena Vig
92 78 Elena Vig
Installation de la chaîne de compilation Gnu :
93 67 Alexis Mata
94 68 Alexis Mata
!gnu.PNG!
95 67 Alexis Mata
96 78 Elena Vig
Création d'un exécutable qui ne fonctionne pas sous windows destiné au raspberry.
97
Pour transférer ce fichier sur le Raspberry, nous utilisons le client SSH de l'utilitaire SmarTTY fourni avec la chaîne de compilation:
98 1 Alexis Mata
99
!smartty.PNG!
100 69 Alexis Mata
101 78 Elena Vig
Il faut sauvegarder la clé publique fournie par SmarTTY.
102 69 Alexis Mata
103 78 Elena Vig
Ensuite, nous avons testé le projet 'hello' en mode debug . Il faut lancer le serveur gdb sur le raspberry avec la commande suivante : 'gdbserver :1234bonjour'
104
105 69 Alexis Mata
!bonjour.PNG!
106 67 Alexis Mata
107 78 Elena Vig
On lance alors le client gdb grâce a la commande 'arm-linux-gnueabihf-gdb.exe bonjour', et on peut observer la réponse suivante sur SmarTTY :
108 70 Alexis Mata
109
!gdb1234.PNG!
110 74 Alexis Mata
111 78 Elena Vig
Place ensuite à la configuration du compilateur pour windows :
112 74 Alexis Mata
113
!compiler.PNG!
114
115 80 Alexis Mata
Ensuite on compile le projet bonjour en sélectionnant Build dans l'outil Build.
116 67 Alexis Mata
117 23 Elena Vig
h2.  +Coder / Tester / Debugger+
118 20 Elena Vig
119 82 Elena Vig
* Tout d'abord, nous avons dû tester pas à pas plusieurs programmes donnés pour comprendre les différentes fonctions permettant de faire fonctionner les leds.
120
121
122
* Ensuite, on a réalisé un programme permettant de faire apparaître le message "AAAA" sur le panneau grâce à un tableau 1D. Puis, une fois le programme réalisé et testé, avec un tableau 2D.
123
Voici en exemple le programme avec le tableau 2D :
124
125 1 Alexis Mata
!ProgrammeAAAA.jpg!
126 82 Elena Vig
127
* Enfin, une fois que nous avions compris le fonctionnement du programme avec le tableau 2D et les différentes fonctions, on a pu créer un programme affichant "Bonne année 2021"
128
129
* Une fois toutes ces étapes réalisées, nous avons pu réfléchir au programme final permettant d'afficher le message tapé dans la console. 
130 23 Elena Vig
131 36 Elena Vig
h2.  +Installer une solution matérielle/logicielle+
132 1 Alexis Mata
133 49 Alexis Mata
h2.  +Installation du serveur web+ 
134 41 Alexis Mata
135 79 Elena Vig
Un serveur web doit être installé (avec Apache2) pour l'utilisateur lambda. Grâce à l'application ainsi créée, celui-ci n'a plus qu'à taper le message qu'il veut pour l'afficher sur le panneau leds :
136 62 Alexis Mata
137 1 Alexis Mata
!apache2.PNG!
138 62 Alexis Mata
139 79 Elena Vig
Ensuite, il convient d'installer php avec la commande 'sudo apt-get install php5 libapache2-mod-php5 -y', puis un répertoire dans '/var/www/ sudo mkdir.
140
Cette page s'affiche alors, lorsque tout est installé :
141 62 Alexis Mata
142 61 Alexis Mata
!apache2.1.PNG!
143 1 Alexis Mata
144 79 Elena Vig
Copie des fichiers dans le répertoire 'panneauLeds' de la raspberry :
145 62 Alexis Mata
146 1 Alexis Mata
!indexphp.PNG!
147 62 Alexis Mata
148 79 Elena Vig
Test de l'installation dans le serveur :
149 1 Alexis Mata
150 42 Alexis Mata
!siteweb.PNG!
151 62 Alexis Mata
152 79 Elena Vig
Modification du chemin de l’exécutable dans le fichier «runApp.php».
153 61 Alexis Mata
154 62 Alexis Mata
!runAppphp.PNG!
155 66 Alexis Mata
156 79 Elena Vig
Enfin, il faut rajouter les droits au groupe «www-data» dans le fichier /etc/sudoers.
157 61 Alexis Mata
158 62 Alexis Mata
!droits.PNG!
159 61 Alexis Mata
160 79 Elena Vig
Toutes ces étapes réalisées avec succès, le serveur web est correctement créé et peut être mis à la disposition du client.
161
162 19 Alexis Mata
163 3 Alexis Mata
164 4 Alexis Mata
165
---