Logo ÉTS
Session
Cours
Responsable(s) Tony Wong

Se connecter
 

Sauvegarde réussie
Echec de sauvegarde
Avertissement
École de technologie supérieure

Responsable(s) de cours : Tony Wong


PLAN DE COURS

Automne 2024
GPA788 : Conception et intégration des objets connectés (3 crédits)





Préalables
Programme(s) : 6557,7485,7885
             
  Profils(s) : Tous profils  
             
    GPA434    
             
Unités d'agrément
Total d'unités d'agrément : 58,8 66,7 % 33,3 %




Qualités de l'ingénieur

Qn
Qualité visée dans ce cours  
Qn
  Qualité visée dans un autre cours  
  Indicateur enseigné
  Indicateur évalué
  Indicateur enseigné et évalué



Descriptif du cours
À la fin de ce cours, l’étudiante ou l'étudiant sera en mesure de : concevoir des systèmes constitués d’éléments physiques connectés à des services infonuagiques; intégrer des modules de mise en forme du signal, d’acquisition et transferts de données; appliquer des techniques de traitement prédictif aux données enregistrées; générer des indicateurs de performance et des tableaux de bord.

Microcontrôleur « open source » Arduino : caractéristiques matérielles et méthode d’échantillonnage. Système sur une puce Raspberry PI : techniques d’interfaçage, gestion des signaux d’interruption et d’entrée/sortie; Le contrôle des opérations par sketch, python et la technologie orientée-objet; Les techniques d’accès aux services infonuagiques à l’aide des protocoles de données : REST et MQTT. L’application des méthodes prédictives dans le traitement des données : partitionnement, classification et estimation.

Séances de laboratoire : œuvrer, au sein d’une équipe, dans des projets de conception, réalisation et implantation intégrant modules d’acquisition des signaux, microcontrôleur Arduino, système Raspberry PI et services infonuagiques ThinkSpeak de MATLAB; application et comparaison des méthodes prédictives dans le forage des données.



Objectifs du cours

Les séances de cours et de laboratoire seront dédiées à la réalisation du projet de session. Cette approche permettra aux étudiants d’apprendre et d’appliquer les étapes de conception dans la réalisation des systèmes d'objets connectés. Plus spécifiquement, au terme de ce cours, les étudiants devront être capables :

  • De reconnaître les éléments d’un système IIoT (Internet industriel des objets);
  • De réaliser les interconnexions matérielles et logicielles;
  • D’adapter des techniques du domaine des systèmes embarqués;
  • De concevoir des objets connectés selon le paradigme orienté-objet;
  • D’interagir avec des services infonuagiques;
  • D’implanter des solutions utilisant l’apprentissage automatique.



Stratégies pédagogiques

39           heures de cours

24           heures de laboratoires

3 heures de travail personnel par semaine

 

La lecture des notes de cours est obligatoire pour la réussite de ce cours.

 

Trois (3) heures de cours par semaine. Les séances de cours sont des moments privilégiés pour présenter et expérimenter différentes techniques de conception. Les difficultés rencontrées et les approches de contournement seront discutées afin d’identifier les solutions les plus efficientes.

 

Deux (2) heures de laboratoire par semaine serviront à poursuivre l’expérimentation et l’application des techniques de conception. Les solutions identifiées en classe seront déployées. Les résultats obtenus seront analysés et discutés.

 




Utilisation d’appareils électroniques

Pas d'enregistrement audio/vidéo sans autorisation de l'enseignant.




Horaire
Groupe Jour Heure Activité
01 Lundi 13:30 - 17:00 Activité de cours
Jeudi 13:30 - 15:30 Laboratoire



Coordonnées du personnel enseignant le cours
Groupe Nom Activité Courriel Local Disponibilité
01 Tony Wong Activité de cours Tony.Wong@etsmtl.ca A-3633
01 Tony Wong Laboratoire Tony.Wong@etsmtl.ca A-3633



Cours
Séance Sujets traités Heures

(1)

Objets connectés
  • Mise en contexte;
  • Processus industriels et modèles;
  • Sécurité.

Présentation du projet à réaliser

 

3

(2)

Modules μContrôleur
  • Matétiel d'Arduino;
  • Environnement de développement d'Arduino.

Capteurs

  • Température et humidité;
  • Niveau sonore;
  • Tension à CC;
  • Images. 

Extension Arduino pour Visual Studio Code

 

3

(3)

Conception OO sous Arduino (I)
  • Éléments de programmation embarquée;
  • Interruptions matérielles;
  • Étapes de conception.
3

(4)

Conception OO sous Arduino (II)
  • Gestion des interruptions;
  • Conception utilisant le sous-système ADC;
  • Conception utilisant le capteur de niveau sonore.
3

(5)

Réalisation de l'environnement du coordonnateur
  • Survol de Raspberry Pi;
  • Installation du Raspbian;
  • Accès au Pi par le laptop.
3

(6)

Développement de programmes Python sur Pi
  • Langage Python;
  • Visual Studio Code - extension remote development;
  • Déboggage.

Développement à l'aide de Visual Studio Code

 

3

(7)

Communication I2C (Inter-Integrated Circuit)
  • Principe et techniques;
  • Côté Arduino;
  • Côté Pi.
3

(8)

Style REST (REpresentational State Transfer)
  • Point de vue de l'utilisateur;
  • Contraintes;
  • Programmation.

Services infonuatiques ThingSpeak

 

3

 (9)

Techniques d'objets connectés pour le déploiement
  • Exécution au démarrage;
  • Sleep mode et Watchdog;
  • Exécution périodique;
  • Fils d'exécution.
  3

(10)

Apprentissage automatique: outils et  techniques
  • Anaconda;
  • Keras et Tensorflow;
  • CPU et GPU;
  • RNN et LSTM.
3

(11)

Apprentissage automatique pour signaux temporels (I)
  • Étapes d'application;
  • Mesures de performance;
  • Prédiction de séquences.

Anaconda pour l'apprentissage automatique

 

3

(12)

Apprentissage automatique pour signaux temporels (II)
  • Algorithmes LSTM (Long Short Term Memory);
  • Limitations des LSTM;
  • NumPy et Keras.
3

(13)

Apprentissage automatique pour signaux temporels (III)
  • LSTM;
  • Stacked LSTM;
  • CNN LSTM;
  • Encoder-Decoder LSTM.

Révision pour l'examen final

 

3
  Total 39



Laboratoires et travaux pratiques

Durant les séances de laboratoire, les étudians doivent oeuvrer, au sein d’une équipe, dans un projet de conception, realisation et implantation intégrant le montage électronique, modules d’acquisition des signaux, microcontrôleur Arduino, système Raspberry PI,  services infonuagiques ThinkSpeak et apprentissage automatique. Ils doivent appliquer et comparer des méthodes prédictives dans le traitement des données en langage Python.




Utilisation d'outils d'ingénierie
  • Cartes Arduino et Raspberry Pi;
  • Capteurs analogiques et numériques;
  • C/C++, Python 3, Anaconda, Visual Studio Code;
  • Algorithmes d'apprentissage profond.



Évaluation
Activité Description %
Projet de session

Conception d'un système d'objets connectés utilisant des cartes électroniques Arduino et Raspberry Pi. Réaliser l'interconnexion I2C et le transfert des données aux services infonuatiques ThinkSpeak. Étudier et implanter l'analyse prédictive des données temporelles à l'aide des réseaux LSTM. (Livrables exigés tout au long du trimestre sous forme d'articles techniques)

45
Quiz Quatre (4) quiz (5% chacun) portant sur les concepts et techniques de conception présentés. Toute documentation permise. 20
Final L'examen final est d’une durée de trois heures avec documentation permise. L’examen final porte sur l’ensemble des matières vues durant le trimestre. 35



Date de l'examen final
Votre examen final aura lieu pendant la période des examens finaux, veuillez consulter l'horaire à l'adresse suivante : https://www.etsmtl.ca/programmes-et-formations/horaire-des-examens-finaux


Politique de retard des travaux
Tout travail (devoir pratique, rapport de laboratoire, rapport de projet, etc.) remis en retard sans motif valable, c’est-à-dire autre que ceux mentionnés dans le Règlement des études (1er cycle, article 7.2.5/ cycles supérieurs, article 6.5.2) se verra attribuer la note zéro, à moins que d’autres dispositions ne soient communiquées par écrit par l’enseignante ou l’enseignant dans les consignes de chaque travail à remettre ou dans le plan de cours pour l’ensemble des travaux.

Dispositions additionnelles

Une pénalité de 10 % par jour sera imposée à tous travaux en retard.




Absence à une évaluation

Afin de faire valider une absence à une évaluation en vue d’obtenir un examen de compensation, l’étudiante ou l’étudiant doit utiliser le formulaire prévu à cet effet dans son portail MonÉTS pour un examen final qui se déroule durant la période des examens finaux ou pour tout autre élément d’évaluation surveillé de 15% et plus durant la session. Si l’absence concerne un élément d’évaluation de moins de 15% durant la session, l’étudiant ou l’étudiante doit soumettre une demande par écrit à son enseignante ou enseignant.

Toute demande de validation d’absence doit se faire dans les cinq (5) jours ouvrables suivant la tenue de l’évaluation, sauf dans les cas d’une absence pour participation à une activité prévue aux règlements des études où la demande doit être soumise dans les cinq (5) jours ouvrables avant le jour de départ de l’ÉTS pour se rendre à l’activité.

Toute absence non justifiée par un motif majeur (voir articles 7.2.6.1 du RÉPC et 6.5.2 du RÉCS) entraînera l’attribution de la note zéro (0).




Infractions de nature académique
Les clauses du « Règlement sur les infractions de nature académique de l’ÉTS » s’appliquent dans ce cours ainsi que dans tous les cours du département. Les étudiantes et les étudiants doivent consulter le Règlement sur les infractions de nature académique (www.etsmtl.ca/a-propos/gouvernance/secretariat-general/cadre-reglementaire/reglement-sur-les-infractions-de-nature-academique) pour identifier les actes considérés comme étant des infractions de nature académique ainsi que prendre connaissance des sanctions prévues à cet effet. À l’ÉTS, le respect de la propriété intellectuelle est une valeur essentielle et tous les membres de la communauté étudiante sont invités à consulter la page Citer, pas plagier ! (www.etsmtl.ca/Etudiants-actuels/Baccalaureat/Citer-pas-plagier).

Systèmes d’intelligence artificielle générative (SIAG)
L’utilisation des systèmes d’intelligence artificielle générative (SIAG) dans les activités d’évaluation constitue une infraction de nature académique au sens du Règlement sur les infractions de nature académique, sauf si elle est explicitement autorisée par l’enseignante ou l’enseignant du cours.



Documentation obligatoire
  • Notes de cours et vidéos disponibles sur le site Moodle du cours



Ouvrages de références

Internet Industriel des objets

  • Veneri, G., Capasso, A. (2018). Hands-On Industrial Internet of Things: Create a powerful Industrial IoT infrastructure using Industry 4.0, Packt Publishing, 556 pages, ISBN-13 ? : ? 978-1789537222.

Arduino

  • Steven Barrett, (2009), Embedded System Design with the Atmel AVR Microcontroller: Part I," in Embedded System Design with the Atmel AVR Microcontroller: Part I, Morgan & Claypool.
  • Richard Blum, (2014), Arduino Programming in 24 Hours, Sams Teach Yoursel, Sams Publishing.

Raspberry Pi

  • Derek Malloy, (2016), Exploring Raspberry Pi: Interfacing to the Real World with Embedded Linux, Wiley.  
  • Richard Blum, Christine Bresnahan,  (2015), Python Programming for Raspberry Pi, Sams Teach Yourself in 24 Hours, Sams Publishing.

REST et MQTT

  • Gastón Hillar, (2018), Hands-On MQTT Programming with Python: Work with the lightweight IoT protocol in Python, Packt Publishing.
  • Sam Ruby, Leonard Richardson, (2007), RESTful Web Services, O'Reilly.

Apprentissage automatique

  • Aurélien Géron, (2017), Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems, O'Reilly.
  • Andreas C. Müller, Sarah Guido, (2016), Introduction to Machine Learning with Python: A Guide for Data Scientists, O'Reilly

D'autres références (en-ligne) sont citées sur le site Moodle du cours.




Adresse internet du site de cours et autres liens utiles

Site Moodle du cours: https://ena.etsmtl.ca/

 




Autres informations

Ne s'applique pas