Cours:BUTiot : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
Ligne 72 : Ligne 72 :
 
* [[Cours:BUTiot_NodeRed|NodeRed]]
 
* [[Cours:BUTiot_NodeRed|NodeRed]]
  
=== Préparation du poste à chaque séance ===
 
  
La version de node.js installé n'est pas à jour, il est donc nécessaire de l'actualiser. Il est obligatoire de faire cette mise à jour à chaque séance car le contenu des postes est remis à zero à chaque démarrage. Cependant la procédure n'est pas très longue :
 
# Télécharger la dernière version de node.js (LTS), ce doit être la 20.10.0 : https://nodejs.org
 
# Lancer l'exécutable :
 
## Il est recommandé de laisser toutes les fonctionnalités de Node.js Windows activées
 
## '''Cocher la case permettant d’installer les outils nécessaires (Tools for Native Modules)'''.
 
# Dans un terminal
 
## Contrôler la bonne installation de Node.js : <source>
 
node -v
 
v20.10.0
 
</source>
 
## S'assurer de disposer de la dernière version de npm <source>
 
npm install npm -g
 
</source>
 
## Installer les packages nécessaire, par exemple mqtt <source>
 
npm install mqtt --save
 
</source>
 
## S'assurer que tout fonctionne bien en lançant node.js <source>
 
node
 
> const m = require("mqtt");
 
> const client = m.connect("mqtt://10.98.35.245");
 
</source>
 
  
 
==== Note sur l'installation de paquets avec npm ====
 
==== Note sur l'installation de paquets avec npm ====
Ligne 102 : Ligne 80 :
 
* Le dossier d'installation global n'est pas reconnu par défaut par Node.js. Pour utiliser un paquet global, une des solutions est de créer la variable d'environnement <code>NODE_PATH</code> avec le contenu <code>%AppData%/npm/node_modules</code>
 
* Le dossier d'installation global n'est pas reconnu par défaut par Node.js. Pour utiliser un paquet global, une des solutions est de créer la variable d'environnement <code>NODE_PATH</code> avec le contenu <code>%AppData%/npm/node_modules</code>
  
 +
== Aides locales ==
  
 
+
-  [[Cours:Node#Mettre à jour Node.js|Mettre à jour Node.js]]
  
 
== Ressources externes ==
 
== Ressources externes ==

Version du 1 décembre 2023 à 10:07

S5/S5 - AII - Objets connectés (IoT) : génération, transmission, traitement et analyse de données distribuées

Syllabus

Comment acquérir des données distribuées (d'objets connectés ou de serveurs), les analyser (détecter), les traiter (ie les modifier) et le redistribuer, tout ceci en temps réel.

Programme National

S5

  • Architectures IoT (Extreme edge/edge/mist/fog/cloud, passerelle);
  • Communication indirecte orientée message (Publier/Souscrire, broker, MQTT);
  • Gestion de la qualité de service (QoS);
  • Notions d’API (déclaration, appel de services);
  • Tableau de bord (node-red, grafana...).
  • Big Data et Cloud computing : définition et technologies;
  • Relations entre IoT, Cloud et Big Data;
  • Applications aux systèmes automatisés.

S6

  • Développer un programme permettant de transmettre des données issues d’un ou plusieurs nœuds de capteurs (clients) vers un serveur afin de réaliser des applications diverses : stockage de données dans une base SQL, génération d’une page web pour l’affichage des données, ainsi que des fenêtres de commande graphique ou de supervision (utilisation des protocoles de communication liés à l’internet des objets, création de tableaux de bord pour la visualisation de données);
  • Développer un programme, coté objet (cible microcontrôleur de type ESP32), pour générer des données utiles (basées sur la récupération d’informations fournies par des capteurs, après mise en forme).
  • Présentation du concept de l’IIoT en automatisation industrielle;
  • Exemples d’IoT industriels;
  • Apprentissage des bases d’un langage de programmation classique de l’IoT;
  • Génération de données à l’aide d’une cible microcontrôleur.

Volumes horaires

  • S5 - Informatique Spécialisée : 12h = 3h CM + 9h TD
  • S6 - Industrie du futur : 19,5h = 4,4h CM + 9h TD + 6h TP

Contenu/progression sur les deux semestres

S5

  • Contexte Objets Connectés
  • MQTT : envoyer/recevoir des données
  • Javascript => Node.js => NodeRed
  • analyser des données temps réel : détection d'anomalies ponctuelles (type abberation) par approche statistique
  • traiter des données temps réel : filtrage

S6 (prévision)

  • Génération de données avec capteurs et SBC
  • appareils Zigbee
  • Tableau de bord/Supervision : HomeAssistant (visualisation / scénarios)
  • lien base de données
  • approfondissement : Traitement et analyse de données
    • Multicapteurs
    • approches Apprentissage Artificiel : classification supervisée / non-supervisée (clustering)


Évaluations

  • ...

Élements de Cours Magistral

Travaux Dirigés / Pratiques

S5


Note sur l'installation de paquets avec npm

  • L'installation d'un paquet par npm install mqtt est locale à un module (donc à un emplacement de dossier). Le paquet est installé dans le dossier node_module du dossier où la commande est lancée.
  • L'installation d'un paquet par npm install -g mqtt est globale. Le paquet est installé dans le dossier %APPDATA%/npm/node_modules.
  • Le dossier d'installation global n'est pas reconnu par défaut par Node.js. Pour utiliser un paquet global, une des solutions est de créer la variable d'environnement NODE_PATH avec le contenu %AppData%/npm/node_modules

Aides locales

- Mettre à jour Node.js

Ressources externes