PM2M/2020/TP: Difference between revisions

From air
Jump to navigation Jump to search
 
(11 intermediate revisions by the same user not shown)
Line 66: Line 66:
==Fiches==
==Fiches==
===Fiche "ACS" (Analyse de Cycle de Vie)===
===Fiche "ACS" (Analyse de Cycle de Vie)===
Rédigez en une page maximum les aspects "ACS" ([https://fr.wikipedia.org/wiki/Analyse_du_cycle_de_vie Analyse de Cycle de Vie]) de votre projet (en mettant l'accent sur la problématique de la [https://fr.wikipedia.org/wiki/Transition_%C3%A9cologique transition écologique] et en le positionnant par rapport aux 9 axes du SNTEDD). La page doit être une entrée du wiki. Chaque fiche est individuelle.
Rédigez en une page maximum les aspects "ACS" ([https://fr.wikipedia.org/wiki/Analyse_du_cycle_de_vie Analyse de Cycle de Vie]) de votre projet (en mettant l'accent sur la problématique de la [https://fr.wikipedia.org/wiki/Transition_%C3%A9cologique 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"===
===Fiche "Privacy & Security"===
Rédigez en une page maximum les aspects "Privacy & Security" de votre projet. La page doit être une entrée du wiki. Chaque fiche est individuelle.
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.

==Cartes, Capteurs et Actionneurs==

[[Image:B-L475E-IOT01A.jpg|200px|thumb|right|STM32 IoTNode B-L475E-IOT01A]]
[[Image:lopy.png|200px|thumb|right|LoPy (LoRa)]]
[[Image:sipy.png|200px|thumb|right|SiPy (Sigfox)]]

# [[SODAQ Explorer]]
# [[Sagemcom Siconia]]
# [[Pycom LoPy]]
# [[Pycom SiPy]]
# [[Pycom FiPy]]
# STM32 Nucleo + Shield LoRa + Shield Météo
# STM32 Nucleo + Shield LoRa + Shield Qualité de l'air
# STM32 Nucleo + [[SparkFun FM Tuner Evaluation Board - Si4703|Récepteur RDS]] + [[ESP8266]]
# [[STM32 IoTNode B-L475E-IOT01A|STM32 IoTNode]]
# LoRaWAN devices
# Modem Microchip RN2483
# [https://wireless-solutions.de/products/radiomodules/im282a.html Modem IMST im282a SX1280 LoRa 2.4 GHz]
# ODBII dongle BLE
# [https://www.seeedstudio.com/OBD-II-CAN-BUS-Development-Kit-p-2993.html Grove OBD-II CAN-BUS Development Kit]
# Multichannel gas sensor [[MiCS-6814]]

# [http://micropython.org/stm32/ micropython sur STM32]


==Mini-Projet==
==Mini-Projet==
[[Image:M2MArchi2015-001.jpg|200px|right|thumb|Architecture Mini-Projet]]


Ce mini-projet consiste a mettre en place une infrastructure de collecte de données capteur. L'acquisition des mesures de capteurs distribués se fait sur une carte [[STM32 Nucleo]], sur une carte [[Intel Galileo]] ou sur un téléphone Android. Les technologies de comminucation sont : USB Serial, BLE, [[LoRa]], Ethernet, WiFi. Les données sont remontées dans des messages vers un serveur ([[Node-RED]]) via un "broker" [[PubSub]] ([[MQTT]] ([[Mosquitto]] ou [[RabbitMQ]]), [[Apache Kafka]], [[PubNub]], [[PubSubHubbub]], [[Socket.io]], [[WebRTC]] ...). Les formats des messages peuvent être [[JSON]] ([[GeoJSON]]), [[BSON]], [[CSV]], [[NMEA 0183]], binaire, [[XML]] ([[EEML]], [[KML]], [[Adaptive Machine Messaging Protocol (AMMP)|AMMP]] ...) ... Les données peuvent être stockées dans une base de données (SQL ou [[NoSQL]] comme [[MongoDB]], [[Redis.io]], [[InfluxDB]], ...) et visualisées en différé ou en direct ([[Grafana]], [[D3.js]], [[OpenHAB]] via le connecteur [[MQTT]], [[Bootleaf]] pour les données géolocalisées ...). Elles seront sécurisées à l'aide d'une blockchain privée [[Hyperledger]].
Ce mini-projet consiste a mettre en place une infrastructure de collecte de données capteur. L'acquisition des mesures de capteurs distribués se fait sur une carte [[STM32 Nucleo]], sur une carte [[Intel Galileo]] ou sur un téléphone Android. Les technologies de comminucation sont : USB Serial, BLE, [[LoRa]], Ethernet, WiFi. Les données sont remontées dans des messages vers un serveur ([[Node-RED]]) via un "broker" [[PubSub]] ([[MQTT]] ([[Mosquitto]] ou [[RabbitMQ]]), [[Apache Kafka]], [[PubNub]], [[PubSubHubbub]], [[Socket.io]], [[WebRTC]] ...). Les formats des messages peuvent être [[JSON]] ([[GeoJSON]]), [[BSON]], [[CSV]], [[NMEA 0183]], binaire, [[XML]] ([[EEML]], [[KML]], [[Adaptive Machine Messaging Protocol (AMMP)|AMMP]] ...) ... Les données peuvent être stockées dans une base de données (SQL ou [[NoSQL]] comme [[MongoDB]], [[Redis.io]], [[InfluxDB]], ...) et visualisées en différé ou en direct ([[Grafana]], [[D3.js]], [[OpenHAB]] via le connecteur [[MQTT]], [[Bootleaf]] pour les données géolocalisées ...). Elles seront sécurisées à l'aide d'une blockchain privée [[Hyperledger]].
Line 108: Line 83:
|+ Affectation des projets PM2M 2019-2020
|+ Affectation des projets PM2M 2019-2020
|-
|-
|
!scope="col"| Sujet
!scope="col"| Sujet
!scope="col"| Étudiants
!scope="col"| Étudiants
!scope="col"| Fiche de suivi
!scope="col"| Dépôt git
!scope="col"| Dépôt git
!scope="col"| Documents
!scope="col"| Matériel
!scope="col"| Matériel
|-
|-
| IRock : Surveillance des glissements de terrain

| Troussier Simon, Sanchez Jeremy, Bleton--Giordanno Maxence
| [https://gitlab.com/m2m-iot Dépôts]
| Siconia
|-
| [[Projet de comptage d’humains et d’animaux en milieu naturel]]
| WAMPACH Sylvestre, DRIOWYA Abdelghafour
| [https://github.com/Th3CracKed/M2M_Image_Recognition Dépôt]
| [[MAix BiT]]
|-
| Radar et comptage de personnes
| Lucie MULLER, Benjamin LONGA
| [https://github.com/bozzo1337/fusion Dépôt]
| RPI3, RPICam, [[SparkFun Grid-EYE Infrared Array Breakout - AMG8833]]
|-
| Monitoring de mouvement de paroi rocheuse avec le VL53L0X
| Amine JONAHI, Maher ISHAK
| [https://github.com/AmieJoni/parois-rocheuses Dépôt]
| [[STM32 IoTNode B-L475E-IOT01A]]
|-
| Four solaire connecté
| Defours Ronan
| TBD
| Nucleo, [https://github.com/stm32duino/I-NUCLEO-LRWAN1 I-NUCLEO-LRWAN1] avec accelerometer and magnetometer [https://github.com/stm32duino/LSM303AGR LSM303AGR], humidity and temperature [https://github.com/stm32duino/HTS221 HTS221] et pressure [https://github.com/stm32duino/LPS22HB LPS22HB]
|-
|}
|}

===Sujets (provisoire) des mini-projets===


* ''IRock : Surveillance des glissements de terrain''
* ''Radar et comptage de personnes (fusion d'information)''
* ''Parking à la seconde''
** [[OBD|ODB-II]]
* ''Monitoring de mouvement de paroi rocheuse avec le [https://www.st.com/en/imaging-and-photonics-solutions/vl53l0x.html VL53L0X]'' (avec ISTERRE)
** [[STM32 IoTNode B-L475E-IOT01A]]
** [[P-NUCLEO-LRWAN1]]
* ''Banc de performance de LoRa 2.4 Ghz''
** [https://github.com/CampusIoT/tutorial/tree/master/wimodino_im282a WiMODino iM282A-L]
* ''Selle de vélo connectée''
** [[STM32 IoTNode B-L475E-IOT01A]]
** [[Papierlogik]]
* ''[[Projet de comptage d’humains et d’animaux en milieu naturel]]''
* ''[[Four solaire connecté]]''
** [[P-NUCLEO-LRWAN1]]


==Misc==
==Misc==
Line 146: Line 122:
'''Attention, Eduroam et WifiCampus bloquent le port 1883 du protocole [[MQTT]] (entre autre).'''
'''Attention, Eduroam et WifiCampus bloquent le port 1883 du protocole [[MQTT]] (entre autre).'''


==Soutenances==
==Evaluation==


Du fait du confinement lié au Covid-19, la soutenance est replacée pour une évaluation sur document.
====Planning des soutenances====
Date : 07/04 de 15H00 à 18H00 (3H00) au fablab (lieu à confirmer).


Les documents demandés devront être remis le 07/04 avant minuit.
COMING SOON


Les documents demandés sont:
====Instructions pour les soutenances des mini-projets====
* 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
* chaque soutenance dure 15 minutes comportant une présentation de 7 minutes ainsi qu'une démonstration de 5 minutes et 3 à 5 minutes de questions/réponses.
* respectez le temps donc repetez la
* remplissez le doodle pour choisir un creneau de passage
* la présentation mettra en avant
** le titre (avec les noms prénoms des binômes)
** le titre (avec les noms prénoms des binômes)
** les applications IoT cibles/envisagées
** les applications IoT cibles/envisagées
Line 168: Line 146:
** des perspectives possibles à votre développement.
** 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 presentation doivent être livré dans un dépôt Github la veille de la soutenance.
Le rapport qui détaille les éléments de la présentation sera livré dans un README.md ou README.html dans le dépôt GitHub.

Envoyez le lien vers le dépôt Github (code + présentation) avant la soutenance.

La présentation peut-être réalisée avec [[Reveal.js]].

Pensez a répéter vos présentations.


Le code, le rapport et le PDF de la présentation doivent être livré dans un dépôt Github le 7 Avril avant minuit.
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=
=Galeries=
Line 197: Line 170:
==Galerie 2014==
==Galerie 2014==
[[Image:PM2M214-001.jpg|200px|PM2M 2014]][[Image:PM2M214-002.jpg|200px|PM2M 2014]][[Image:PM2M214-003.jpg|200px|PM2M 2014]][[Image:PM2M214-004.jpg|200px|PM2M 2014]][[Image:PM2M214-005.jpg|200px|PM2M 2014]][[Image:PM2M214-006.jpg|200px|PM2M 2014]][[Image:PM2M214-007.jpg|200px|PM2M 2014]][[Image:PM2M214-008.jpg|200px|PM2M 2014]]
[[Image:PM2M214-001.jpg|200px|PM2M 2014]][[Image:PM2M214-002.jpg|200px|PM2M 2014]][[Image:PM2M214-003.jpg|200px|PM2M 2014]][[Image:PM2M214-004.jpg|200px|PM2M 2014]][[Image:PM2M214-005.jpg|200px|PM2M 2014]][[Image:PM2M214-006.jpg|200px|PM2M 2014]][[Image:PM2M214-007.jpg|200px|PM2M 2014]][[Image:PM2M214-008.jpg|200px|PM2M 2014]]

=Annexes=

==Cartes, Capteurs et Actionneurs==

[[Image:B-L475E-IOT01A.jpg|200px|thumb|right|STM32 IoTNode B-L475E-IOT01A]]
[[Image:lopy.png|200px|thumb|right|LoPy (LoRa)]]
[[Image:sipy.png|200px|thumb|right|SiPy (Sigfox)]]

# [[SODAQ Explorer]]
# [[Sagemcom Siconia]]
# [[Pycom LoPy]]
# [[Pycom SiPy]]
# [[Pycom FiPy]]
# STM32 Nucleo + Shield LoRa + Shield Météo
# STM32 Nucleo + Shield LoRa + Shield Qualité de l'air
# STM32 Nucleo + [[SparkFun FM Tuner Evaluation Board - Si4703|Récepteur RDS]] + [[ESP8266]]
# [[STM32 IoTNode B-L475E-IOT01A|STM32 IoTNode]]
# LoRaWAN devices
# Modem Microchip RN2483
# [https://wireless-solutions.de/products/radiomodules/im282a.html Modem IMST im282a SX1280 LoRa 2.4 GHz]
# ODBII dongle BLE
# [https://www.seeedstudio.com/OBD-II-CAN-BUS-Development-Kit-p-2993.html Grove OBD-II CAN-BUS Development Kit]
# Multichannel gas sensor [[MiCS-6814]]

# [http://micropython.org/stm32/ micropython sur STM32]

Latest revision as of 15:29, 17 March 2020

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

Enseignants 2020 : Didier Donsez

  • 18/02 de 13H30 a 16H45 (FabLab)
  • 03/03 de 13H30 a 16H45 (FabLab)
  • 10/03 de 13H30 a 16H45 (FabLab)
  • 17/03 de 13H30 a 16H45 (FabLab)
  • 24/03 de 13H30 a 16H45 (FabLab)

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

Soutenance du mi-projet durant la semaine d'examen le 07/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) et sécurisé avec la blockchain Hyperledger Fabric.

IoT systems over years
IoT Reference Architecture
Sensors Mix


Support de cours

Planning

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é.

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.

Mini-Projet

Ce mini-projet consiste a mettre en place une infrastructure de collecte de données capteur. L'acquisition des mesures de capteurs distribués se fait sur une carte STM32 Nucleo, sur une carte Intel Galileo ou sur un téléphone Android. Les technologies de comminucation sont : USB Serial, BLE, LoRa, Ethernet, WiFi. Les données sont remontées dans des messages vers un serveur (Node-RED) via un "broker" PubSub (MQTT (Mosquitto ou RabbitMQ), Apache Kafka, PubNub, PubSubHubbub, Socket.io, WebRTC ...). Les formats des messages peuvent être JSON (GeoJSON), BSON, CSV, NMEA 0183, binaire, XML (EEML, KML, AMMP ...) ... Les données peuvent être stockées dans une base de données (SQL ou NoSQL comme MongoDB, Redis.io, InfluxDB, ...) et visualisées en différé ou en direct (Grafana, D3.js, OpenHAB via le connecteur MQTT, Bootleaf pour les données géolocalisées ...). Elles seront sécurisées à l'aide d'une blockchain privée Hyperledger.


Mini-projets

Affectation des mini-projets

Affectation des projets PM2M 2019-2020
Sujet Étudiants Dépôt git Matériel
IRock : Surveillance des glissements de terrain Troussier Simon, Sanchez Jeremy, Bleton--Giordanno Maxence Dépôts Siconia
Projet de comptage d’humains et d’animaux en milieu naturel WAMPACH Sylvestre, DRIOWYA Abdelghafour Dépôt MAix BiT
Radar et comptage de personnes Lucie MULLER, Benjamin LONGA Dépôt RPI3, RPICam, SparkFun Grid-EYE Infrared Array Breakout - AMG8833
Monitoring de mouvement de paroi rocheuse avec le VL53L0X Amine JONAHI, Maher ISHAK Dépôt STM32 IoTNode B-L475E-IOT01A
Four solaire connecté Defours Ronan TBD Nucleo, I-NUCLEO-LRWAN1 avec accelerometer and magnetometer LSM303AGR, humidity and temperature HTS221 et pressure LPS22HB

Misc

Déploiement sur plateforme Cloud

Le serveur Node-RED et le "broker" PubSub MQTT (Mosquitto ou RabbitMQ) peuvent être hébergé sur une plateforme cloud 'gratuite' ou 'pas chère' comme Windows Azure ou Amazon EC2, Heroku, IBM Bluemix, Digital Ocean, OVH ou sur votre machine via des images Docker.

Attention, Eduroam et WifiCampus bloquent le port 1883 du protocole MQTT (entre autre).

Evaluation

Du fait du confinement lié au Covid-19, la soutenance est replacée pour une évaluation sur document.

Les documents demandés devront être remis le 07/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 7 Avril avant minuit. 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 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

Annexes

Cartes, Capteurs et Actionneurs

STM32 IoTNode B-L475E-IOT01A
LoPy (LoRa)
SiPy (Sigfox)
  1. SODAQ Explorer
  2. Sagemcom Siconia
  3. Pycom LoPy
  4. Pycom SiPy
  5. Pycom FiPy
  6. STM32 Nucleo + Shield LoRa + Shield Météo
  7. STM32 Nucleo + Shield LoRa + Shield Qualité de l'air
  8. STM32 Nucleo + Récepteur RDS + ESP8266
  9. STM32 IoTNode
  10. LoRaWAN devices
  11. Modem Microchip RN2483
  12. Modem IMST im282a SX1280 LoRa 2.4 GHz
  13. ODBII dongle BLE
  14. Grove OBD-II CAN-BUS Development Kit
  15. Multichannel gas sensor MiCS-6814
  1. micropython sur STM32