Wiki » History » Version 54
mathieu roux, 21/02/2021 06:41 PM
1 | 33 | mathieu roux | h1. Sommaire |
---|---|---|---|
2 | 18 | mathieu roux | |
3 | 21 | mathieu roux | {{toc}} |
4 | 20 | mathieu roux | |
5 | 27 | mathieu roux | h1. Introduction |
6 | 19 | mathieu roux | |
7 | 40 | lucas ordas | h2. Présentation du Projet |
8 | 23 | mathieu roux | |
9 | 46 | lucas ordas | Réalisation d'un projet permettant d'afficher un message déroulant sur un panneaux leds 8x32, 3 scénario sont envisager |
10 | 47 | mathieu roux | 1) Un utilisateur avancé peut accéder, par la console de l'OS raspbian, au code source afin de le modifier et d'interagir avec le panneau LED. |
11 | 2) Un utilisateur intermédiaire peut entrer le message qu'il souhaite afficher sur le panneau LED en l'entrant en argument dans la console de l'OS raspbian. |
||
12 | 46 | lucas ordas | 3) Un utilisateur lambda peut accéder à une page web qui lui permet de saisir un message et de l'afficher en appuyant sur « RUN ». |
13 | |||
14 | |||
15 | 28 | mathieu roux | h2. Cahier des charges |
16 | 1 | lucas ordas | |
17 | 28 | mathieu roux | h2. Diagramme d'utilisation simplifié |
18 | 27 | mathieu roux | |
19 | !https://zupimages.net/up/21/05/8vow.png! |
||
20 | |||
21 | 1 | lucas ordas | h2. Diagramme de déploiement |
22 | |||
23 | !https://zupimages.net/up/21/05/x9w4.png! |
||
24 | 27 | mathieu roux | |
25 | 49 | lucas ordas | h2. Liste du matériel |
26 | 27 | mathieu roux | |
27 | 48 | lucas ordas | Lors de ce mini-projet nous avons eu besoin de: |
28 | 1 Panneau LED 8x32 |
||
29 | 2 Connecteur HE10 |
||
30 | 1m de Nappe |
||
31 | Alimentation PC 230V |
||
32 | Fer a souder |
||
33 | 1 Oscilloscope |
||
34 | 1 Voltmètre |
||
35 | 1 Raspberry Pi b+ |
||
36 | 1 Câble Ethernet |
||
37 | 1 Adaptateur HDMI vers DVI; |
||
38 | 1 Câble HDMI |
||
39 | Modules borniers |
||
40 | Module Pi Face |
||
41 | 1 Alimentation Pi |
||
42 | 1 | lucas ordas | 1 Carte Micro SD 16Go avec un adaptateur USB/SD. |
43 | 49 | lucas ordas | |
44 | h2. Liste des logiciels |
||
45 | 50 | mathieu roux | |
46 | 49 | lucas ordas | Lors de ce mini-projet, nous avons eu besoin de: |
47 | - CodeBlocks; |
||
48 | - SmarTTY; |
||
49 | - StarUML; |
||
50 | - Apache2. |
||
51 | |||
52 | 48 | lucas ordas | |
53 | 27 | mathieu roux | h2. Répartition des taches |
54 | 37 | mathieu roux | |
55 | 36 | lucas ordas | Mathieu: |
56 | * Diagramme des cas d'utilisation/écrire les scénarios associés |
||
57 | * Installation/Configuration Raspbian Jessie |
||
58 | * Fabrication d'un boîtier pour le panneaux leds |
||
59 | * Diagramme de déploiement |
||
60 | * Diagramme d’activités |
||
61 | * Installation de la toolchain |
||
62 | * Test d'un programme en compilation croisée |
||
63 | * Fonctionnement des panneaux (Registre à décalage) |
||
64 | * Programmes de test |
||
65 | * Prototypage |
||
66 | * Codage intégration |
||
67 | |||
68 | Lucas: |
||
69 | * Fabrication d'un boîtier pour le panneaux leds |
||
70 | * Réalisation matérielle et tests connexions |
||
71 | * Comprendre l'interconnexion des différents matériels |
||
72 | * Tester les sorties GPIO avec 2 leds connectés |
||
73 | * Test d'un programme en compilation croisée |
||
74 | * Relevé des signaux (Horloge à partir d'un timer logiciel) |
||
75 | * Fonctionnement des panneaux (Registre à décalage) |
||
76 | * Programmes de test |
||
77 | * Prototypage |
||
78 | * Codage intégration |
||
79 | * Intégration serveur web |
||
80 | |||
81 | 27 | mathieu roux | |
82 | h1. Création du Panneau LED |
||
83 | |||
84 | 34 | mathieu roux | h2. Construction du panneau |
85 | |||
86 | h3. Création de la boite du panneau |
||
87 | |||
88 | h3. Création des câbles |
||
89 | |||
90 | h3. Câblage au panneau et Raspberry |
||
91 | |||
92 | 31 | mathieu roux | h2. Installation des logiciels |
93 | |||
94 | h3. Code::Blocks |
||
95 | |||
96 | h4. Compilateur ARM sur Windows |
||
97 | |||
98 | 1 | lucas ordas | h3. SmarTTY (Client SSH & SCP) |
99 | 31 | mathieu roux | |
100 | 1 | lucas ordas | h3. Apashe Serveur Web |
101 | |||
102 | 54 | mathieu roux | h4. Mise en forme |
103 | |||
104 | Pour la mise en forme de la page, nous utilisons le code html suivant: |
||
105 | |||
106 | !https://zupimages.net/up/21/07/jksf.png! |
||
107 | |||
108 | 35 | mathieu roux | h3. Installation & configuration de Raspbian |
109 | 1 | lucas ordas | |
110 | 35 | mathieu roux | h2. Développement |
111 | |||
112 | 52 | mathieu roux | h3. Développement du programme |
113 | 35 | mathieu roux | |
114 | h4. Scénario avec utilisateur avancé |
||
115 | 50 | mathieu roux | |
116 | 1 | lucas ordas | Dans ce scénario, l'utilisateur aura accès au code source directement afin de modifier le message qui s'affichera sur le panneau LED. |
117 | 52 | mathieu roux | Pour cela nous avons utilisé le *C/C++*: |
118 | 50 | mathieu roux | |
119 | !https://zupimages.net/up/21/07/7kq8.png! |
||
120 | 35 | mathieu roux | |
121 | 1 | lucas ordas | h4. Scénario avec utilisateur intermédiaire |
122 | 35 | mathieu roux | |
123 | 52 | mathieu roux | Dans ce scénario, l'utilisateur intermédiaire a accès au terminal du raspberry, et peut choisir le texte affiché en le mettant en argument de la commande d'exécution du programme. Pour cela, nous avons ajouté le programme suivant, permettant de récupéré les arguments saisies dans la console, et de les mettre sous forme de chaine de caractères, au programme précédent. |
124 | 44 | mathieu roux | |
125 | 47 | mathieu roux | !https://zupimages.net/up/21/07/rsuc.png! |
126 | 43 | mathieu roux | |
127 | 1 | lucas ordas | h4. Scénario avec utilisateur lambda |
128 | 43 | mathieu roux | |
129 | Dans ce scénario, notre client pourra choisir directement sur le service web la phrase qu'il voudra afficher sur le panneau. Le programme C/C++ est le même que dans le scénario précédent. |
||
130 | 52 | mathieu roux | Pour que le client puisse choisir, nous avons intégré un *programme php* à notre site web lui permettant d'exécuter le programme à distance, avec en argument le texte choisis par l'utilisateur sur un champ sur le site. |
131 | 53 | mathieu roux | |
132 | !https://zupimages.net/up/21/07/zeh5.png! |