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
cours:oc:gr10_16_17:gr10_16_17 [2017/02/14 13:50]
kbuisson [Groupe :]
cours:oc:gr10_16_17:gr10_16_17 [2017/02/19 22:58] (Version actuelle)
kbuisson [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 77: Ligne 77:
  
  
-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 certain nombre de web services, accessible via le protocole UPnP. 
 +Vous pouvez subscribe aux évènements suivants, qui vous donnerons l'​état actuel du sensor (isListening) et la dernière valeur récupéree ​
 +  * Temp: Temperature °C de l'eau 
 +  * Ph: Ph de l'eau 
 +  * Potar: Niveau d'eau (potar [0-300]) 
 +  * Light: Lumière ambiante ​de l'​aquarium (light lux)
  
-Nous n'​avons pas encore décidé entre une implémentation SOAP ou REST, REST 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 webserviceset récupérer l'​état ​actuel du capteur (on/off). 
 +Vous avez à votre disposition:​ 
 +  * Pump: Pour actionner/​éteindre la pompe à eau servant à vider l'​aquarium 
 +  * ServoMotor: Pour augmenter/​réduire l'​intensité de la lumière ambiante, ou l'​éteindre sans vous préoccupez de son état actuel 
 +  * Heater: Pour allumer/​éteindre la thermo-résistance permettant de chauffer l'​eau 
 +  * Valve: Pour ouvrir/​fermer l'​électro-valve permettant de remplir l'​aquarium en eau
  
-Exemple de HTTP **get** sur **/​status**:​ 
  
-{   +== Environnements== 
-   ​***alert**:0, +\\ 
-   ***temperature**:​25,​ +Nous travaillons sur un 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 de configuration 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, veuillez suivre les consignes disponibles sur nos répertoires GitHub.
  
 +  * [[https://​github.com/​Paltoquet/​concordia/​tree/​master]] : Code embarqué de la Raspberry
 +  * [[https://​github.com/​Paltoquet/​concordia_comp]] : Code WCOMP
 +  * [[https://​github.com/​Paltoquet/​concordia_web/​tree/​master]] : Code du serveur web
  
 +Si vous disposez de l'​aquarium:​
 +
 +  * Allumer la Raspberry
 +  * Aller dans le répertoire **concord**
 +  * Éxecuter python **upnp_concordia.py**
 +
 +Sur votre ordinateur:
 +
 +  * Vérifier que les webservices apparaissent dans DeviceSpy
 +  * Lancer le serveur web, **run.bat** disponible 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.1487076628.txt.gz · Dernière modification: 2017/02/14 13:50 par kbuisson