Outils pour utilisateurs

Outils du site


cours:oc:gr10_16_17:gr10_16_17

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Dernière révision Les deux révisions suivantes
cours:oc:gr10_16_17:gr10_16_17 [2017/02/14 13:48]
kbuisson [Groupe :]
cours:oc:gr10_16_17:gr10_16_17 [2017/02/18 17:04]
tober [Groupe :]
Ligne 17: Ligne 17:
    ​***Scénario 2 :** En tant que Bob, je veux que mon aquarium ajuste son niveau d'eau de manière autonome    ​***Scénario 2 :** En tant que Bob, je veux que mon aquarium ajuste son niveau d'eau de manière autonome
    ​***Scénario 3:** En tant que Bob, je veux pouvoir spécifier le niveau de nitrate et le volume de mon bac afin de pouvoir rééquilibrer le niveau par ajout d’eau saine dans le bac    ​***Scénario 3:** En tant que Bob, je veux pouvoir spécifier le niveau de nitrate et le volume de mon bac afin de pouvoir rééquilibrer le niveau par ajout d’eau saine dans le bac
-   ​***Scénario 4:** En tant que Bob, je veux pouvoir récupérer suivre l'​état des différents relevés sur mon téléphone en spécifiant la période concernée+   ​***Scénario 4:** En tant que Bob, je veux pouvoir récupérer suivre l'​état des différents relevés sur mon navigateur
  
 === Services proposés: === === Services proposés: ===
Ligne 70: Ligne 70:
 \\ \\
 {{:​cours:​oc:​gr10_16_17:​archi.jpg?​500|}} {{:​cours:​oc:​gr10_16_17:​archi.jpg?​500|}}
-(La liste des capteurs sur ce schéma n'est pas exhaustive). 
 \\ \\
-**Exemple d'​utilisation :** Le niveau d'eau baisse (et passe en dessous du seuil minimum), le serveur WComp détecte une baisse de niveau, et demande à notre aquarium de déclencher l'​éléctro-vanne,​ afin de re-remplir l'​aquarium.+**Exemple d'​utilisation :** Le niveau d'eau baisse (et passe en dessous du seuil minimum), le serveur WComp détecte une baisse de niveau, et demande à notre aquarium de déclencher l'​éléctro-vanne,​ afin de remplir l'​aquarium ​à un niveau correcte.
  
 \\ \\
-**Par exemple:** 
-Je récupère l'​état courant de l'​aquarium,​ si le niveau d'eau est trop bas je génère une requête post pour allumer l'​électrovalve (composition de webservice). 
- 
 {{:​cours:​oc:​gr10_16_17:​orchest.png?​400|}} {{:​cours:​oc:​gr10_16_17:​orchest.png?​400|}}
  
  
-Nous aurons+== Liste des Web Services== 
-  * 1 webservice pour récupérer le status ​de l'​objet, l'​état ​courant de la machine, accessible en HTTP GET +\\ 
-  * 1 webservice par actionneur en fournissant l'​état voulue dans le corps de la requête, accessible en HTTP POST.+Nous mettons à dispositions un certains nombre ​de web servicesaccessible via le protocole UPnP 
 +Vous pouvez subscribe aux évènements suivants qui vous donnerons ​l'​état ​actuel du sensor (isListenning) et la dernière valeur récupéree:​ 
 +  * Temperature °C 
 +  * Ph  
 +  * Potar [0-300] 
 +  * Light lux
  
-Nous n'avons pas encore décidé entre une implémentation SOAP ou RESTREST est plus facile ​à mettre en place mais interdis toute découverte automatisée. Nos besoins sont assez simple, récupérer ​l'​état ​des différents capteurs et activer/désactiver un actionneur. Nous verrons au moment voulue sur quelle approche partir.+Vous pouvez agir sur le système via différents actionneurs et leurs webservice, vous pouvez récupérer l'état actuel du capteur (onoff) 
 +Vous avez à votre disposition:​ 
 +  * Pump: pour actionner/​éteindre la pompe  
 +  * ServoMoteur:​ Pour augmenter/​réduire ​l'intensité de la lumière ou l'​éteindre sans vous préoccupez de son état actuel 
 +  * Heater: pour allumer/éteindre le chauffage 
 +  * Valve: Pour ouvrir/​fermer l'​électrovalve
  
-Exemple de HTTP **get** sur **/​status**:​ 
  
-{   +== Environnements== 
-   ​***alert**:0, +\\ 
-   ***temperature**:​25,​ +Nous travaillons sur raspberry pi 2, nous disposons d'un serveur servant d'​orchestrateur du système avec l'aide de WCOMP et d'un serveur WEB écrit en python avec la librairie Flask. Le serveur en python fait office de cloud et d'​interface web pour l'​utilisateuron y stock des données et mettons à dispositions des graphiques sur l'​évolution de certains capteurs.
-   ***PH**:7.2, +
-   ​***water_level**:​10, +
-   ​***light**:​1 +
-}+
  
 +== Installations:​ ==
 +\\
 +Pour installer les différents composants suivre les consignes disponibles sur nos répertoires github
  
 +[[https://​github.com/​Paltoquet/​concordia/​tree/​master]] pour le code embarqué sur la raspberry
 +[[https://​github.com/​Paltoquet/​concordia_comp]] pour le code WCOMP
 +[[https://​github.com/​Paltoquet/​concordia_web/​tree/​master]] pour le serveur web
  
 +Si vous disposez de l'​aquarium:​
 +
 +  * Allumer la raspberry
 +  * Aller dans le répertoire **concord**
 +  * Executer python **upnp_concordia.py**
 +Sur votre ordinateur:
 +
 +  * Vérifier que les webservices apparaissent dans device spy
 +  * Lancer le serveur web, run.bat disponsible sur le répertoire github
 +  * Ouvrez WCOMP, créer un nouveau container et importez **tmp.wcc** (voir github)
 +
 +== Images du projet: ==
 +\\
 +\\
 +{{:​cours:​oc:​gr10_16_17:​concord.jpg?​500|}}
  
cours/oc/gr10_16_17/gr10_16_17.txt · Dernière modification: 2017/02/19 22:58 par kbuisson