PM2M/2021/TP

From air
Jump to: navigation, search

Page 2021 des supports de cours et travaux pratiques de l'UE Projets M2PGI Services Machine-to-Machine et Internet-of-Things.

Enseignants 2021 : Didier Donsez

  • 23/02 de 13H30 a 16H45 (Distantiel)
  • 02/03 de 13H30 a 16H45 (Distantiel)
  • 19/03 de 13H30 a 16H45 (Distantiel)
  • 18/03 de 13H30 a 16H45 (Distantiel)
  • 23/03 de 13H30 a 16H45 (Distantiel)

Rendu des 2 fiches de synthèse (individuelle) : 06/04 à minuit.

Soutenance du mi-projet durant la semaine d'examen le ??/04 de 15H00 à 18H00 (3H00).

Le mini-projet réalisé en séance a pour objectif la mise en place rapide et agile d'une infrastructure (matérielle et logicielle) de collecte de données capteur. Les mesures de capteurs distribués sont acquises par des dispositifs embarqués et sont remontés vers des serveurs de données hébergés dans un cluster sur un cloud public pour y être analysées (Big Data Analytics) et visualisées (dataviz).

IoT systems over years
IoT Reference Architecture
Sensors Mix


Support de cours

Bonus Track

Planning

23/02

  • Introduction à l'Internet des Objets (applications, communications sans fil)
  • Introduction aux LPWAN et à LoRa/LoRaWAN

02/03

Avant la séance du 2/03 (TRES IMPORTANT)

Fin du cours LPWAN et LoRaWAN. Manipulation de CampusIoT.

Programmation des microcontroleurs STM32 (1H30) par Michael ESCODA (ST Microelectronics)

  1. Intro rapide aux MCU (GPIO, SPI, I2C, CAN, UART …). MCU versus CPU
  2. Les STM32
  3. Les écosystèmes Nucleo
  4. STM32CubeIDE : présentation de l’IDE (configuration des pins et des clocks)
  5. Importer un projet à partir d’une carte Nucleo L073RZ avec STM32CubeIDE

09/03

Avant la séance du 9/03 (TRES IMPORTANT)

Construction du firmware de la carte "endpoint" : Instructions

Installation de la chaine de collecte NodeRed-InfluxDb-Grafana avec Docker

Travail en équipe.

16/03

Installation de la chaine de collecte NodeRed-InfluxDb-Grafana avec Docker

Travail en équipe.

23/03

Travail en équipe.


06/04

Soutenance en équipe.

Etapes

Remarque TRES TRES importante: ne sauvegardez pas les crédentials des services cloud que vous utilisez (AWS, Digital Ocean, Heroku, Azure, IBM Bluemix, Twitter, OVH ...) dans des dépôts git publiques : placez les dans des documents credentials.json, credentials.properties, credentials.sh, ... et ajoutez les ces documents à .gitignore pour plus de sureté.


Mini-projet : Service de sécurité des biens et des personnes

L’objectif du mini-projet est d’étudier la réalisation d'un service de sécurité des biens et des personnes utilisant un parc de sirène connectées en LoRaWAN.

L’objet LoRaWAN est identifié par son DevEUI et associé à une pièce ou à un lieu. Il peut être enregistré sur un réseau public national en OTAA ou sur un réseau privé en OTAA comme CampusIoT.

L’objet sirène remonte régulièrement des mesures prises sur les capteurs au format LPP.

L’objet sirène est déclenché soit par un bouton poussoir (ie panic button), soit par observation d’un événement “tragique” (augmentation brutale de la température, fumée …).

L’objet sirène envoie périodiquement un message de status (ie heart beat) une fois déclenché.

L’application peut envoyer des messages vers l’objet pour :

  • piloter les GPIO en output de l'objet
  • le réglage de la période de transmission des messages montants
  • la mise à l’heure de la RTC (s’inspirer des App Clock Sync spec),
  • jouer une séquence de sons sur réception d'un message descendant de l'application de gestion de la sécurité,
  • de programmer le jeu périodique d’une séquence de sons (avec un paramètre cron pattern) quand la RTC a été préalablement * synchronisée

L’objet peut être un objet de classe A ou un objet de classe C.

L’objectif du projet est de

  • rechercher et analyser (avantages/inconvénients sous la forme d’une grille) des produits concurrents
  • définir l’architecture globale du réseau de sirènes d’alarme,
  • définir la sécurité globale (clé de chiffrage),
  • définir l’architecture matérielle de l’objet,
  • définir le format des messages LoRaWAN uplink et downlink,
  • définir le logiciel embarqué de l’objet sirène.
  • proposer une implémentation du logiciel embarqué de l’objet sirène.
  • montrer les changements de comportement de l’objet en fonction des événements (normal, incident détecté, retour à la normal).
  • implémenter l'application NodeRed qui reçoit les messages des 2 sirènes du binome et leur envoie de les différents messages listés précédenment
  • implémenter la console de visualisation avec un tableau de bord grafana avec des "plugins" bien choisis.


Le prototypage de l’objet sera fait au moyen de la carte endpoint du kit LRWAN2 et d'un buzzer piezio raccordé à une des GPIO libre de la carte.

La carte fille I-Nucleo-LRWAN1 du kit inclut un modem LoRAWAN et des capteurs de température, humidité, pression I2C : HTS221, LSM6DS3, LIS3MDL, LPS25HB/LPS22HB de ST). L’affection des broches de la carte fille I-Nucleo-LRWAN1 est donné dans le fichier du driver /STM32CubeExpansion_LRWAN_V1.3.1/Drivers/BSP/I_NUCLEO_LRWAN1/i_nucleo_lrwan1.h

Pour la démonstration, prévoyez de montrer la trace console de l’objet.

Groupes

Affectation des projets PM2M 2020-2021
Sujet Étudiants Fiche de suivi Dépôt git Documents Matériel

Fiches

Fiche "ACS" (Analyse de Cycle de Vie)

Rédigez en une page maximum les aspects "ACS" (Analyse de Cycle de Vie) de votre projet (en mettant l'accent sur la problématique de la transition écologique et en le positionnant par rapport aux 9 axes du SNTEDD). La page doit être un document Markdown dans votre dépôt Git public. Chaque fiche est individuelle.

Fiche "Privacy & Security"

Rédigez en une page maximum les aspects "Privacy & Security" de votre projet. La page doit être un document Markdown dans votre dépôt Git public. Chaque fiche est individuelle.


Evaluation

Les documents demandés devront être remis le 05/04 avant minuit.

Les documents demandés sont:

  • un jeu de transparents PPT/ODP de votre présentation avec votre "discours" dans les notes du présentateur.
  • (optionnel) un screencast de votre présentation avec votre discours en voix off.
  • la vidéo et/ou le screencast de votre démonstration.
  • le rapport technique de la réalisation au format Markdown
  • la fiche individuelle ACS au format Markdown (décrite plus haut)
  • la fiche individuelle "Security&Privacy" au format Markdown (décrite plus haut)

La présentation mettra en avant

    • le titre (avec les noms prénoms des binômes)
    • les applications IoT cibles/envisagées
    • le ou les architectures (successivement) implémentées,
    • les composants logiciels et matériels utilisés,
    • les métriques (langages de programmation, sloc, performance ...),
    • les problèmes rencontrés et les solutions élaborées,
    • la conclusion
    • des perspectives possibles à votre développement.

Prévoyez 15 minutes pour la présentation et la démonstration.

Le code, le rapport et le PDF de la présentation doivent être livré dans un dépôt Github le 5 Avril avant minuit. (avec 3 répertoires : ./docs, ./firmware, ./dashboard). Les vidéos et screencasts peuvent être livrées sous la forme d'une vidéo YouTube ou d'un dépôt avec un lien caché (wetransfer, google drive ...).

Galeries

Galerie 2021

[1]

Galerie 2020

Galerie 2019

Galerie 2018

PM2M 2018PM2M 2018PM2M 2018PM2M 2018PM2M 2018PM2M 2018PM2M 2018PM2M 2018

Galerie 2017

Galerie 2016

Suivez les tweets :

Galerie 2015

Galerie 2014

PM2M 2014PM2M 2014PM2M 2014PM2M 2014PM2M 2014PM2M 2014PM2M 2014PM2M 2014