Commit 499dfbda9b7ab18b2ab30c0adf179fa7916d9f9f

Authored by lwadbled
1 parent 35fd4b08

fix(README.md): Quelques changements de syntaxe

Showing 1 changed file with 12 additions and 11 deletions   Show diff stats
README.md
1   -
2   -# Presentation du projet
  1 +# Presentation du projet
3 2  
4 3 Le but de ce projet est de réaliser une interface Web de commande et de visualisation d'appareils de mesures (tels que des oscilloscopes, générateurs, multimètres, etc ...) afin de pouvoir réaliser des TP d'électronique à distance.
5 4  
... ... @@ -7,13 +6,13 @@ Le but de ce projet est de réaliser une interface Web de commande et de visuali
7 6  
8 7 Afin de réaliser ce projet, il faut :
9 8  
10   -* Connaitre l'utilisation des commandes LXI (pour installer le package sous linux : **apt-get install lxi-tools**) qui va permettre la communication avec les appareils à distance ;
  9 +* Connaitre l'utilisation des commandes LXI (pour installer le package sous linux : `apt-get install lxi-tools`) qui va permettre la communication avec les appareils à distance ;
11 10  
12 11 * Installation d'un serveur, ici j'ai utilisé un serveur Apache2 ;
13 12  
14   -* Utiliser les languages HTML et PHP ainsi que le framework Bootstrap pour réaliser l'interface Web ;
  13 +* Utiliser les langages HTML,PHP,CSS et JavaScript ainsi que le framework Bootstrap pour réaliser l'interface Web ;
15 14  
16   -* Modifier les groupes des fichiers pour utiliser l'interface sur le Web correctement (notemment pour les photos) avec la commande : **chgrp -R www-data dossier-html**.
  15 +* Modifier les groupes des fichiers pour utiliser l'interface sur le Web correctement (notemment pour les photos) avec la commande : `chgrp -R www-data dossier-html`.
17 16  
18 17 # Contenu du dépôt GIT
19 18  
... ... @@ -39,7 +38,9 @@ Ce dépôt GIT est constitué des codes de l'interface Web. On retrouve à l'int
39 38 * Ces fichiers sont appelés par *main.php* s'il doit afficher l'interface d'un Generateur.
40 39 * Des sous dossiers contenant l'affichage et la réalisation d'un unique bouton sont parcourus par les deux fichiers précédents pour réaliser l'ensemble de l'interface.
41 40  
42   -* *Scripts* : dossier qui regroupe des fichiers php qui permettent de réaliser des petits scripts tels que la capture d'écran d'un appareil ou l'affichage d'une image sur l'interface. Ces scripts sont appelés dans différents fichiers du projet ;
  41 +* *Oscilloscope_onglets* et *Generateur_onglets* : dossiers qui ont les memes commandes que pour les deux dossiers précédents, mais avec un affichage différent (panel de commande avec des onglets). Pour voir ces affichages, il faut modifier le type de l'appareil dans *bdd.json* par le nom de l'un de ces répertoires.
  42 +
  43 +* *Scripts* : dossier qui regroupe des fichiers php qui permettent de réaliser des petites fonctions tels que la capture d'écran d'un appareil ou l'affichage d'une image sur l'interface. Ces fichiers sont appelés dans différents fichiers du projet ;
43 44  
44 45 * *Captures* : dossier qui regroupe les différentes captures d'écrans des appareils selon leurs noms afin de pouvoir les afficher sur l'interface Web.
45 46  
... ... @@ -65,15 +66,15 @@ Avant de pouvoir créer une nouvelle interface pour un appareil, il est impérat
65 66  
66 67 Pour commencer, il faut assigner une adresse IP valable à l'appareil (pour cela, il faut regarder la datasheet de l'appareil pour savoir comment modifier son adresse IP).
67 68  
68   -Ensuite, on branche l'appareil sur une prise Ethernet, et, dans un terminal, on entre la ligne de commande **lxi discover**. Cette commande va afficher tous les appareils possèdant une interface LXI connectés au réseau. Si l'appareil n'apparait pas, on peut essayer la commande **ping** avec son adresse IP pour vérifier que l'appareil est bien connecté. Si le ping fonctionne, alors l'appareil ne possède pas d'interface LXI. On peut néanmoins essayer de réaliser la prochaine étape, cela voudrait dire que l'on doit garder en mémoire l'adresse IP de l'appareil si on veut réaliser son interface Web. En effet, la page de recherche (*decouvre.php*) utilise la commande **lxi discover** pour trouver les appareils utilisables.
  69 +Ensuite, on branche l'appareil sur une prise Ethernet, et, dans un terminal, on entre la ligne de commande `lxi discover`. Cette commande va afficher tous les appareils possèdant une interface LXI connectés au réseau. Si l'appareil n'apparait pas, on peut essayer la commande **ping** avec son adresse IP pour vérifier que l'appareil est bien connecté. Si le ping fonctionne, alors l'appareil ne possède pas d'interface LXI. On peut néanmoins essayer de réaliser la prochaine étape, cela voudrait dire que l'on doit garder en mémoire l'adresse IP de l'appareil si on veut réaliser son interface Web. En effet, la page de recherche (*decouvre.php*) utilise la commande `lxi discover` pour trouver les appareils utilisables.
69 70  
70   -La prochaine étape consiste à réaliser une première capture d'écran de l'appareil, ce qui permettra de l'afficher ensuite sur l'interface. Pour cela on utilise la commande **lxi screenshot -a 111.111.111.111 screenshot.bmp** (111.111.111.111 représentant l'adresse IP de l'appareil et screenshot.bmp le fichier où est sauvegardée la capture d'écran).
  71 +La prochaine étape consiste à réaliser une première capture d'écran de l'appareil, ce qui permettra de l'afficher ensuite sur l'interface. Pour cela on utilise la commande `lxi screenshot -a 111.111.111.111 screenshot.bmp` (111.111.111.111 représentant l'adresse IP de l'appareil et screenshot.bmp le fichier où est sauvegardée la capture d'écran).
71 72  
72   -Pour finir la vérification, il faut rechercher les commandes SCPI pour l'appareil. Ces commandes permettent de piloter l'appareil à distance, ce sont elles que l'on va utiliser pour réaliser les commandes sur l'interface. La syntaxe de la ligne de commande à entrer dans le terminal est : **lxi scpi -a 111.111.111.111 "CMD"** (111.111.111.111 représentant l'adresse IP de l'appareil et CMD la commande SCPI).
  73 +Pour finir la vérification, il faut rechercher les commandes SCPI pour l'appareil. Ces commandes permettent de piloter l'appareil à distance, ce sont elles que l'on va utiliser pour réaliser les commandes sur l'interface. La syntaxe de la ligne de commande à entrer dans le terminal est : `lxi scpi -a 111.111.111.111 "CMD"` (111.111.111.111 représentant l'adresse IP de l'appareil et CMD la commande SCPI).
73 74  
74 75 Si tout a correctement fonctionné, l'appareil est compatible avec LXI et l'on peut passer à l'étape suivante.
75 76  
76   -## Modification/Ajout de code
  77 +## Modification/Ajout de code
77 78  
78 79 Après avoir vérifier la compatibilité de l'appareil avec LXI, on souhaite écrire le code correspondant à son interface de visualisation et de commande.
79 80  
... ... @@ -81,7 +82,7 @@ Tout d'abord, il faut modifier le fichier *bdd.json* et ajouter le nom de l'appa
81 82  
82 83 Si c'est un nouveau type d'appareil, il faut alors créer un nouveau dossier ayant le même nom que le type de l'appareil. A l'interieur de ce dossier, il faut créer un fichier ayant pour nom *main_type.php* (donc *main_multimetre.php* si c'est un multimetre par exemple) et un fichier *commandes_type.php*. Dans le fichier *main_type.php*, il faut utiliser le script de creation d'image avec la ligne de code en PHP :
83 84 ```php
84   -include(./Scripts/creation_img.php);
  85 +include('Scripts/creation_img.php');
85 86 ```
86 87 Ensuite, afin de rendre le code plus facilement modifiable par la suite, il faut séparer les différentes commandes dans différents dossiers. Dans ces dossiers, on ajoute deux fichiers PHP, l'un correspond à l'affichage du bouton permettant de lancer la commande (avec un nom comme par exemple *form_bouton.php*), et l'autre correspond à la réalisation de la commande (avec un nom comme *cmd_bouton.php*). A l'interieur de ce dernier, pour réaliser la ligne de commande lxi, il faut utiliser la fonction php `shell_exec`. Concernant la façon d'afficher les différents paramètres sur la page, c'est à vous de le réaliser.
87 88  
... ...