Bee Honeyt BTS SN 20192020 ACKERMANN Tho 1
Bee Honey’t BTS SN 2019/2020 ACKERMANN Théo 1
BTS SN 2019/2020 Sommaire ● Présentation générale ○ ○ ○ ○ ● Expression du besoin Présentation du système Technologie de transmission sans fil Gestion du projet Cahier des charges Répartition des tâches Ressources logicielles du projet Présentation personnelle ○ Ressources logicielles du projet ○ ○ ○ ○ The Things Network Protocole MQTT Diagramme des cas d’utilisation Maquette Interface Homme-Machine Architecture logicielle Architecture interne Tests de validation ACKERMANN Théo 2
Bee-Honey’t BTS SN 2019/2020 Présentation générale ACKERMANN Théo 3
Présentation générale BTS SN 2019/2020 Expression du besoin ACKERMANN Théo 4
Présentation générale BTS SN 2019/2020 Expression du besoin Ensoleillement (optionnel) Poids Niveau de charge de la batterie (optionnel) Température Humidité Pression ACKERMANN Théo 5
Présentation générale BTS SN 2019/2020 Présentation du système ACKERMANN Théo 6
Présentation générale Technologie de transmission sans fil Fréquence 868 MHz Bande passante 500 - 125 KHz 100 Hz Débit 0, 3 -37, 5 kb/s (UL) 50 kb/s (DL) 100 b/s (UL) 600 b/s (DL) Message max/jour Illimité 140 Puissance émission 14 d. Bm Autonomie de la batterie 105 mois 90 mois Distance 5 km (urbain) / 15 km (rural) 10 km (urbain) / 50 km (rural) Immunité au bruit Très haute Basse Modulation Lo. Ra (propriétaire) DBPSK / GFSK ACKERMANN Théo 7
Bee-Honey’t BTS SN 2019/2020 Gestion du projet ACKERMANN Théo 9
Gestion du projet BTS SN 2019/2020 Cahier des charges Étudiant 2 (IR) ACKERMANN Théo Créer une IHM pour afficher les données des ruches Recevoir les données actuelles des ruches (MQTT/Json) Afficher les données des ruches sur l’IHM Récupérer les données enregistrées (HTTP/Json) Afficher des graphiques avec les données des ruches Pouvoir éditer les ruches. Paramétrer une nouvelle ruche et ses alertes. Option: Alertes par email. ACKERMANN Théo 10
Gestion du projet BTS SN 2019/2020 Répartition des tâches 6 Février 2020 Début du projet 3 Avril 2020 Revue 2 Créer une IHM Recevoir les données actuelles des ruches 6 Mai 2020 Revue 3 Nouvelle ruche Éditer une ruche Supprimer une ruche ? ? ? Revue finale Afficher des graphiques Paramétrer les alertes Enregistrer la configuration TTN ACKERMANN Théo 11
Gestion du projet BTS SN 2019/2020 Ressources logicielles Désignation Caractéristiques OS GNU/Linux Ubuntu 16. 04 LTS Environnement de développement Qt Creator et Qt Designer API Qt 5. 11 Générateur de documentation Doxygen version 1. 8 Gestion de versions Subversion (Rioux. SVN) ACKERMANN Théo 12
Bee-Honey’t BTS SN 2019/2020 Présentation personnelle ACKERMANN Théo 13
Présentation personnelle BTS SN 2019/2020 Ressources logicielles ACKERMANN Théo 14
Présentation personnelle BTS SN 2019/2020 The Things Network 40 000 Contributeurs 400 Communautés 90 Pays 4 000 Passerelles ACKERMANN Théo 15
Présentation personnelle BTS SN 2019/2020 Protocole MQTT Topi c ACKERMANN Théo 16
Présentation générale BTS SN 2019/2020 Diagramme des cas d’utilisation ACKERMANN Théo 17
Présentation personnelle BTS SN 2019/2020 Interface Homme-Machine ACKERMANN Théo 19
Présentation personnelle BTS SN 2019/2020 Architecture logicielle ACKERMANN Théo 20
Présentation personnelle BTS SN 2019/2020 Scénario Se connecter au réseau TTN ACKERMANN Théo 21
Présentation personnelle BTS SN 2019/2020 Scénario Récupérer les données d’une ruche ACKERMANN Théo 22
Présentation personnelle BTS SN 2019/2020 Récupération des données Température et Humidité codées sur 16 bits function Decoder(bytes, port) { var decoded = {}; switch (port) { case 3: // DHT 22 decoded. temperature = ((bytes[0]<<8) + bytes[1])/100; decoded. humidite = ((bytes[2]<<8) + bytes[3])/100; break; } return decoded; } Chaque application cliente : 1. 2. extrait l’objet “payload_fields” extrait les champs température et l’humidité {. . . "payload_fields": { "humidite": 48, "temperature": 20. 6 }. . . } ACKERMANN Théo 23
Présentation personnelle Extraire les données BTS SN 2019/2020 {. . . "payload_fields": { "humidite": 48, "temperature": 20. 6 }. . . } QJson. Document document. JSON = QJson. Document: : from. Json(message); QJson. Object objet. JSON = document. JSON. object(); objet. JSON. value("payload_fields"). to. Object(). value("temperature"). to. Double(); ACKERMANN Théo 24
BTS SN 2019/2020 Tests de validation Test Résultat Créer une IHM pour afficher les données Recevoir les données actuelles des ruches (MQTT/Json) Afficher les données des ruches sur l’IHM Récupérer les données enregistrées (HTTP/Json) Afficher des graphiques avec les données des ruches Pouvoir éditer les ruches. Paramétrer une nouvelle ruche et ses alertes. Option: Alertes par email. ACKERMANN Théo 25
- Slides: 23