Vous êtes sur la page 1sur 70

Abonnez-vous à DeepL Pro pour traduire des fichiers plus volumineux.

Visitez www.DeepL.com/pro pour en savoir plus.

Module : OBJETS CONNECTES ET SYSTEMES


INTELLIGENTS
EM : Objets Connectés (Connecetd
Devices)
Pr Atman JBARI
Département de génie électrique, ENSAM, Rabat
Email : atman.jbari@ensam.um5.ac.ma
Resp :
Id 1
O
Identification : M55A-1 : Objets connectés IOT

❑ Objectifs :
• Décrire les concepts liés à l'internet des objets et aux objets connectés et découvrir
leur mise en pratique
• Mettre en ouvre un projet sur les objets connectés relativement à un service.
• Définir un système intelligent et toutes ses composantes.
• Programmer des algorithmes de fonctions intelligentes d'un système.
❑ Volume horaire :
Cours : 8h ; TD : 6h ; TP : 8h ; AP : 2h ; Evaluation : 2h
❑ Évaluation
:
Note du module n = 0,5 x n1+ 0,5 x n2
;
ni = 0,25 x nCCi + 0,15 x nAPi + 0,2 x nTPi + 0,4 x nExi
❑ Évaluation
:
La note minimale Mod : 12/20 ; La note minimale EM : 06/20.
Id 2
O
Références

✓ Livre : " Internet-of-Things (IoT) Systems Architectures, Algorithms,


Methodologie ", Dimitrios Serpanos , Marilyn Wolf, s. ISBN 978-3-319-
69714-7 ISBN 978-3-319-69715-4 (eBook). Springer International Publishing
AG 2018.
✓ Lombardi, M. ; Pascale, F. ; Santaniello, D. Internet des objets : Un aperçu
général des architectures, des protocoles et des applications.
Information 2021, 12, 87. https://doi.org/10.3390/info12020087.
✓ Rosilah Hassan , Faizan Qamar , Mohammad Kamrul Hasan , Azana Hafizah
Mohd Aman, et Amjed Sid Ahmed, Internet des objets et ses applications :
A Comprehensive Survey, Symmetry 2020, 12, 1674.
✓ Wi-Fi : Vue d'ensemble de la couche physique 802.11 et mesures des
émetteurs, www.tektronix.com/wifi
✓ Chapitre 1, Introduction to IoT, Site web du livre : http://www.internet-of-
things-book.com Bahga& Madisetti, © 2015
✓ Une introduction en douceur aux protocoles IoT : MQTT, CoAP, HTTP &
WebSockets ; Antonio Almeida et Jaime González-Arintero ; 14 juin 2017

Id 3
O
Schéma
:
I. Définitions et architecture de l'IdO

II. Modèles et technologie des dispositifs IdO

III. Protocoles de communication IoT :


I. HTTP
II. Message Queuing Telemetry Transport (MQTT)
III. WebSockets

IV. Technologies de communication IoT :


Wifi, BlueTootch, ZigBee, RFID (identification par radiofréquence)

V. Laboratoires IoT

Id 4
O
Définitions

❑ Objet connecté : Objet physique possédant une adresse IP


qui se connecte pour recevoir et envoyer des données via
un réseau de communication.
❑ Internet des objets (IoT) :
✓Un ensemble d'objets disposant de capteurs et
échangeant de l'information via un réseau.
✓un réseau de réseaux qui permet, via des systèmes
d'identification électronique normalisés et sans fil,
d'identifier et de communiquer numériquement avec des
objets physiques afin de pouvoir mesurer et échanger des
données entre les mondes physiques et virtuels.

Id 5
O
Définition de
l'IdO
✓ Le paradigme de l'internet des objets (IdO) désigne un système
d'appareils interconnectés, dotés d'une capacité de calcul (objets
intelligents), identifiables et capables de transférer des données
sur un réseau, sans intervention humaine.
l'interaction.
✓ Une infrastructure de réseau mondiale dynamique dotée de
capacités d'auto-configuration basées sur des protocoles de
communication normalisés et interopérables, où les "objets"
physiques et virtuels ont des identités, des attributs physiques et
des personnalités virtuelles et utilisent des technologies
intelligentes.
et sont intégrés de manière transparente dans le réseau
d'information, communiquent souvent des données associées
aux utilisateurs et à leur environnement.
✓ L'internet des objets (IoT) constitue un réseau de dispositifs
intégrés qui intègrent des capteurs et des fonctions de
communication.
Id 6
O
Architecture de
l'IdO

La périphérie comporte des dispositifs ; le nuage comporte des serveurs


Id 7
O
Applications

Source : https://iot-analytics.com/top-10-iot-applications-in-2020/
Id 8
O
IdO - Capteurs

IdO - Surveillance de
l'environnement

Énergie commerciale

IdO - Applications dans le domaine de la santé

La sonde portable ClearProbe connectée


appareil à ultrasons
Id 9
O
modifie pour
mieux informer les conducteurs et
prévenir les embouteillages ou les
accidents

IdO - Applications dans le


domaine des transports

Ce panneau routier intelligent reçoit des données et


Id
les 10
O
IdO - Applications dans le domaine de l'éducation
Intégrer des puces RFID dans les cartes d'identité pour suivre
la présence des étudiants.

Id 11
O
Caractéristiques de
l'IdO
✓ Dynamique et auto-adaptation
✓ Auto-configuration
✓ Protocoles de communication interopérables
✓ Identité unique
✓ Intégré au réseau d'information

Id 12
O
Conception physique
de l'IdO
• Le terme "objets" dans l'IdO fait généralement
référence à des dispositifs IdO dotés d'une identité
unique et capables de détecter, d'actionner et de
contrôler à distance.
• Les appareils IoT peuvent :
• échanger des données avec d'autres appareils et applications
connectés (directement ou indirectement), ou
• collecter des données à partir d'autres appareils et les traiter
localement ou
• Envoyer les données à des serveurs centralisés ou à une application
en nuage
les back-ends pour le traitement des données, ou
Id 13
O
• Exécuter certaines tâches localement et d'autres au sein
de l'infrastructure IdO, en fonction des contraintes
temporelles et spatiales.

Id 14
O
Organisation d'un système
IdO

Id 15
O
Organisation d'un système
IdO
• L'usine ou l'environnement est le système physique avec lequel l'IdO
Le système interagit. Nous utiliserons ces deux termes de manière
interchangeable.
• Un ensemble de dispositifs constitue les feuilles du réseau. Un
nœud peut comprendre des capteurs et/ou des actionneurs, des
processeurs et une mémoire. Chaque nœud possède une interface
réseau. Un nœud peut ou non utiliser le protocole Internet.
• Les concentrateurs assurent une connectivité de premier niveau entre les
nœuds et le reste du réseau.
le réseau. Les concentrateurs fonctionnent généralement sur IP.
• Les processeurs de brouillard effectuent des opérations sur des
ensembles locaux de nœuds et de concentrateurs. Le fait de
rapprocher certains serveurs des nœuds permet de réduire les temps
de latence. Cependant, les dispositifs de brouillard peuvent ne pas
avoir autant de puissance de calcul que les serveurs en nuage. Les
dispositifs de brouillard posent également des problèmes de gestion
du système.
• Les serveurs en nuage fournissentIddes services informatiques au 16
O
système IdO. Les bases de données stockent les données et les
résultats des calculs. Le nuage peut fournir une variété de services qui
servent d'intermédiaires entre les nœuds et les utilisateurs.

Id 17
O
Architecture de l'internet des
objets (IoT)

Id 18
O
Architecture basée sur l'informatique de pointe

L'informatique en périphérie est une


architecture horizontale qui fournit :

✓ L'informatique distribuée,
✓ Stockage des données,
✓ et de contrôle.
Avantages : Réduit la latence, permet
d'économiser la bande passante, résout
certains problèmes de sécurité.

IdO 16
Architecture Cloud-IoT de haut niveau à
trois niveaux

Id 17
O
Architectures IoT les plus courantes

• Perception : la couche physique des


objets et regroupe toutes les
caractéristiques ;

• Réseau : la couche de
communication responsable de la
transmission des données à la couche
d'application par l'intermédiaire de
diverses technologies et protocoles ;

• Application : la couche d'application


dans laquelle le logiciel offrant un
service spécifique est effectivement
mis en œuvre.

Id 18
O
Couche
application
• Comprend tous les logiciels nécessaires pour offrir un service spécifique.
• Les données des niveaux précédents sont stockées, agrégées, filtrées
et traitées, et des bases de données, des logiciels d'analyse, etc. sont
utilisés.
• L'informatique en nuage, où des services tels que le stockage ou le
traitement des données sont fournis à partir d'un ensemble de
ressources préexistantes, configurables et disponibles à distance sous la
forme d'une architecture distribuée ;
• L'informatique périphérique, où le traitement des données est
partiellement distribué sur les nœuds périphériques du réseau afin
d'augmenter les performances des systèmes IoT.

• Plates-formes IoT : Amazon AWS, Microsoft Azure, Xively, Firefox


WebThings Gateway, etc.

Id 19
O
Architecture de
l'intergiciel
• Il sert de lien entre les applications, les données et les utilisateurs.
• Les avantages sont les suivants
• 1. Assistance pour diverses applications ;
• 2. Fonctionne sur différents systèmes d'exploitation et plates-formes ;
• 3. Informatique distribuée et interaction des services entre
réseaux, appareils et applications hétérogènes ;
• 4. Prise en charge des protocoles standard ;
• 5. Fournir des interfaces standard, assurer la portabilité et des
protocoles standard pour permettre l'interopérabilité, et faire en
sorte que les logiciels intermédiaires jouent un rôle important dans
la normalisation ;
• 6. Fournit une interface stable de haut niveau pour les applications.

Id 20
O
Architectures basées sur
l'informatique en nuage
• La grande quantité de données générées par les objets est stockée, traitée et présentée
à l'utilisateur par le biais de services disponibles dans le nuage.

• Exemples : Amazon Web Services AWS d'Amazon, Azure de Microsoft, Xively de


Google, etc.
• Composants AWS :
✓ Le Device Gateway : intermédiaire entre les appareils connectés et les services en nuage.
par le biais du protocole Message Queue Telemetry Transport (MTTQ).

✓ Le registre : il est chargé d'attribuer un identifiant unique à chaque appareil


connecté et de stocker des métadonnées sur les appareils connectés afin d'en
assurer le suivi.

✓ Le moteur de règles : le moteur de règles traite les messages entrants et les distribue à
d'autres appareils ou services en nuage.

✓ L'ombre du dispositif : représentations virtuelles d'objets physiques. Ces représentations


sont persistantes et stockées dans le nuage pour être accessibles à tout moment (même
lorsque l'appareil est hors ligne) par des services en nuage ou d'autres appareils.

Id 21
O
Architecture basée sur un
serveur

✓ les différents appareils sont


connectés à un serveur de
passerelle qui gère
les appareils de l'appareil à
l'internet. à l'internet.

✓ les dispositifs ne sont pas directement


et ne regardent l'internet qu'à
travers la passerelle.

Id 22
O
Conceptio
n de l'IdO
• Les systèmes IdO sont conçus avec deux architectures de
gestion, l'une basée sur le temps et l'autre sur les
événements.
• L'architecture événementielle consiste en des capteurs qui
transmettent des données lorsqu'une activité est détectée,
de la même manière qu'une alarme est activée lorsqu'une
porte est ouverte.
• Dans le cas de l'architecture temporelle, les composants
du système transmettent des données en continu à un
intervalle de temps donné.

Id 23
O
Cycle d'utilisation et consommation
d'énergie
• Le modèle du cycle de service est largement utilisé pour analyser les appareils
IoT.
• Le modèle suppose une activation périodique de l'appareil. Le
coefficient d'utilisation est le pourcentage de temps pendant lequel le
dispositif est activé :

Id 24
O
Des rapports cycliques plus bas signifient une consommation d'énergie plus
faible. Nous pouvons modifier le rapport cyclique en combinant des modifications
de la durée de fonctionnement O et de la période T.

Id 25
O
Cycle d'utilisation et consommation
d'énergie
La consommation d'énergie à l'état passant de l'appareil Pon :
✓ Aucune fuite :

✓ Avec une puissance de fuite de Poff, la consommation moyenne d'énergie


sur le cycle de travail :

✓ Cycle de travail :

Ce modèle a plusieurs implications pour la conception des appareils IoT :


l'appareil doit être capable de tourner au ralenti à faible puissance ; il doit
fournir peu d'énergie et de temps pour s'éteindre et se rallumer.
Id 26
O
Cycle d'utilisation et consommation
d'énergie
• La puissance de communication représente une grande partie de la
puissance totale.
de nombreux appareils IoT.

• De nombreux appareils IoT transmettent de petites quantités de


données pendant la période de fonctionnement.
de leur cycle de travail. Dans ce scénario, les frais généraux liés à
l'établissement d'une communication représentent une part
importante de la puissance de communication totale ;

• De nombreux systèmes de communication sont conçus pour un


service axé sur la connexion, ce qui permet d'amortir les coûts
Id 27
O
d'installation sur une plus longue période de communication.

Id 28
O
IV. Communication IoT
et protocoles
HTTP, MQTT, WebSockets.

Id 29
O
Modèle
OSI
▪ OSI : modèle de référence
pour l'interconnexion des
systèmes ouverts
▪ Le modèle OSI est un
modèle en couches qui
décrit comment
l'information circule d'un
point à un autre.
un programme d'application
fonctionnant sur un ordinateur
en réseau vers un programme
d'application fonctionnant sur
un autre ordinateur en réseau

Id 30
O
Protocoles
IdO
• Couche de liaison
• 802.3 - Ethernet
• 802.11 - WiFi
• 802.16 - WiMax
• 802.15.4 - LR-WPAN
• 2G/3G/4G
• Couche réseau/Internet
IPv4 ; IPv6 ; 6LoWPAN

• Couche transport
TCP ; UDP

• Couche application
HTTP ; CoAP ; WebSocket
MQTT ; XMPP ; DDS ;
AMQP

Id 31
O
Couche communication /
transport

L'IdO 30
Technologies de la
communication

Id 31
O
Technologies de la
communication

Id 32
O
Schéma fonctionnel générique d'un
dispositif IdO
• Un appareil IoT peut être composé de
plusieurs interfaces pour
les connexions à d'autres
appareils, avec ou sans fil.
• Interfaces E/S pour capteurs
• Connectivit pou Internet
é des r
interfaces
• Interfaces et stockage
mémoire
• Interfaces audio/vidéo.

Id 33
O
Conception logique
de l'IdO
• La conception logique d'un système IdO fait référence à une
représentation abstraite des entités et des processus sans entrer
dans les spécificités de bas niveau de la mise en œuvre.
• Un système IdO se compose d'un certain nombre de blocs
fonctionnels qui lui confèrent des capacités d'identification,
de détection, d'actionnement, de communication et de
gestion.

Id 34
O
Modèle de communication demande-
réponse
• Le modèle demande-réponse est un modèle de communication
dans lequel le client envoie des demandes au serveur et le serveur
répond aux demandes.
• Lorsque le serveur reçoit une requête, il décide comment y
répondre, récupère les données, extrait les représentations des
ressources, prépare la réponse et l'envoie au client.

Id 35
O
Modèle de communication Publish-
Subscribe
• Publish-Subscribe est un modèle de communication qui implique des éditeurs, des
courtiers et des
consommateurs.
• Les éditeurs sont la source des données. Les éditeurs envoient les données aux
thèmes qui sont gérés par le courtier. Les éditeurs ne connaissent pas les
consommateurs.
• Les consommateurs s'abonnent aux thèmes gérés par le courtier.
• Lorsque le courtier reçoit de l'éditeur des données relatives à un thème, il les
envoie à
tous les consommateurs abonnés.

Id 36
O
Id 37
O
Le modèle
publication/abonnement

Id 38
O
Le modèle
publication/abonnement
• Un protocole de publication/abonnement nécessite moins de couplage entre le
client et l'utilisateur.
et le serveur.
• Le serveur, appelé éditeur, classe les messages par catégories : Les
clients s'abonnent aux catégories qui les intéressent. Les systèmes
de publication/abonnement sont généralement gérés par des
courtiers qui reçoivent les messages publiés par les éditeurs et les
envoient aux
abonnés.
• Les messages peuvent être organisés par thème ; tous les messages
d'un thème donné sont distribués par les courtiers aux abonnés de ce
thème. Le courtier connaît l'identité des abonnés, mais pas l'éditeur.
Les courtiers peuvent interagir entre eux à l'aide d'un protocole de
pont.
• Un pont permet la publication indirecte de messages, un message
allant de l'éditeur à un premier courtier, puis à un second courtier, et
enfin à des abonnés qui ne sont pas connectés au premier courtier.

Id 39
O
• Exemples : Data Distribution Service (DDS), Real-Time
Publish/Subscribe Protocol (RTPS).

Id 40
O
Modèle de communication Push-
Pull
• Push-Pull est un modèle de communication dans lequel les producteurs
de données poussent les données vers des files d'attente et les
consommateurs tirent les données des files d'attente. Les producteurs
n'ont pas besoin de connaître les consommateurs.

• Les files d'attente permettent de découpler la messagerie entre les


producteurs et les consommateurs.
• Les files d'attente servent également de tampon dans les situations où
il y a un décalage entre le rythme auquel les producteurs envoient des
données et le rythme auquel les consommateurs en extraient.

Id 39
Modèle de communication par
paires exclusives
• La paire exclusive est un
modèle de communication
bidirectionnelle,
entièrement duplex, qui
utilise a
persistante
connexion entre le client et
le serveur.
• Une fois la connexion
établie, elle reste ouverte
jusqu'à ce que le client
envoie une demande de
fermeture de la connexion.
• Le client et le serveur
peuvent s'envoyer des
messages après
l'établissement de la
connexion.
Id 40
O
Application Web ?

HTTP
FTP URL (Uniform Resource Locator)
WebSocket https://sites.google.com/view/atmjbari/home

Id 41
O
Application Web ?

Id 42
O
HTTP

• HTTP est l'acronyme de


Hypertext Transfer Protocol
(protocole de transfert
hypertexte) et est utilisé pour
transférer des données sur le
Web.
• HTTP est un protocole client-
serveur asymétrique de type
demande-réponse.
• HTTP est une couche d'application
protocole
• Recherche de documents pour
le compte d'un programme
d'application du navigateur
• Le protocole HTTP spécifie
les actions à entreprendre à
Id 43
O
la réception de certains
messages.

Id 44
O
Protocole
HTTP
✓ HTTP suppose que les messages peuvent être échangés
directement
entre le client HTTP et le serveur HTTP.
✓ En fait, le client et le serveur HTTP sont des processus qui
s'exécutent sur deux machines différentes à travers
l'internet.
✓ HTTP utilise le service de transfert de flux fiable fourni
par TCP.

Id 45
O
HTTP vs
URL
• http est le protocole de transfert qui permet de transférer
la ressource (page web, image, vidéo, etc.) du serveur au
client.
• L'URL (uniform resource Locator) est utilisé pour les
pages web. C'est un exemple d'URI (uniform resource
indicator).

Id 46
O
Réponses HTTP et codes de réponse

• Chaque demande est accompagnée d'une réponse. La réponse se


compose d'un
• Code STATUS et description
• 1 ou plusieurs en-têtes facultatifs
• Facultatif Le corps du message peut comporter plusieurs
lignes, y compris des données binaires.

• Les codes d'état des réponses sont répartis en cinq


groupes, chacun ayant une signification et un code à
trois chiffres.
• 1xx - Information
• 2xx - Succès
• 3xx - Choix multiple
• 4xx- Erreur du client
Id 47
O
• 5xx - Erreur du serveur

Id 48
O
Exemple de réponse à une
demande

Id 47
O
Types de demandes, méthodes
ou verbes
• Le protocole HTTP prend désormais en charge 8 types
de requêtes, également appelés méthodes ou verbes
dans la documentation :

• GET - Demande d'une ressource au serveur


• POST - soumission d'une ressource à un serveur (par exemple,
téléchargement de fichiers)
• PUT - Comme POST mais en remplaçant une ressource
• DELETE - Supprime une ressource d'un serveur
• HEAD - Comme GET, mais ne renvoie que les en-têtes et non le
contenu.
• OPTIONS -Obtention des options de la ressource
Id 48
O
• PATCH - Appliquer des modifications à une ressource
• TRACE -Réalise une boucle de messages

Id 49
O
HTTP : Interrupteur hypothétique
RESTful
api.example.com/turnoff
Téléphone Serveur
portable

api.example.com/shoulditurnoff

Non
Dois-je Réponse
l'éteindre au
? processu
s
Oui
Désacti
ver
Commutateur WiFi
Id 50
O
GET vs
POST
• Caractéristiques de GET
• Il est très facile de mettre des données en signet en utilisant la méthode
GET.
• La longueur de la méthode GET est limitée.
• Vous ne pouvez utiliser cette méthode que pour récupérer des
données dans la barre d'adresse du navigateur.
• Cette méthode permet de stocker facilement les données.
• Caractéristiques de POST
• La requête de la méthode POST est alimentée par le corps de la
requête et la chaîne d'interrogation.
• Les données transmises à l'aide de la méthode POST ne seront pas visibles
dans la requête.
dans l'URL du navigateur.
• les paramètres des méthodes POST ne sont pas sauvegardés dans
l'historique du navigateur.
• Il n'y a pas de restriction à l'envoi de la longueur des données.
Id 51
O
• Il vous aide à transmettre en toute sécurité des informations
sensibles et confidentielles telles que les données de connexion
au serveur.

Id 52
O
GET , POST : Exemples

• Exemple de méthode GET


• GET/RegisterStudent.asp?user=valeur1&pass=valeur2
• Exemple de méthode POST
• POST/RegisterStudent.asp HTTP/1.1
• Hôte : www.um5.ac.ma
• user=valeur1&pass=valeur2

Id 53
O
MQTT :
Publier/S'abonner

Les canaux/sujets dans MQTT fonctionnent comme des chemins d'accès aux fichiers :

Id 54
O
MQTT :
Publier/S'abonner
• Les clients se connectent à un "courtier"
• Les clients s'inscrivent à des thèmes, par exemple
• client.subscribe('toggleLight/1')
• client.subscribe('toggleLight/2')
• client.subscribe('toggleLight/3')
• Les clients peuvent publier des messages sur des thèmes :
• client.publish('toggleLight/1', 'toggle') ;
• client.publish('toggleLight/2', 'toggle') ;

• Tous les clients reçoivent tous les messages publiés


sur les sujets auxquels ils sont abonnés.
• Les messages peuvent être n'importe quoi
• Texte
• Images
• etc.
Id 55
O
Interrupteur hypothétique
MQTT

Téléphone Courti
client.publish('lightSwitch/1', 'toggle')
portable er

'toggle'
(bascul
e)

Interrupteur à
bascule
Commutat
Id eur WiFi 56
O
MQTT : Qualité de
service
La QoS peut être 0, 1 ou 2 :
• QoS0 (au maximum une fois) : Le mode le moins fiable mais
aussi le plus rapide. La publication est envoyée mais la
confirmation n'est pas reçue.
• QoS1 (Au moins une fois) : Assure que le message est
délivré au moins une fois, mais des doublons peuvent être
reçus.
• QoS2 (Exactement une fois) : Le mode le plus fiable mais le
plus consommateur de bande passante. Les doublons sont
contrôlés pour garantir que le message n'est délivré qu'une
seule fois.

Id 57
O
CODES MQTT

Id 58
O
WebSockets

• Les WebSockets permettent au serveur et au client


d'envoyer des messages à tout moment, sans lien avec
une demande antérieure. Un avantage notable de
l'utilisation des WebSockets est que presque tous les
navigateurs supportent les WebSockets.
• WebSocket résout quelques problèmes liés à HTTP :
• Protocole bidirectionnel - chaque client/serveur peut envoyer un
message à l'autre partie (dans le protocole HTTP, la demande est
toujours initiée par le client et la réponse est traitée par le serveur -
ce qui fait du protocole HTTP un protocole unidirectionnel).
• Communication en duplex intégral - le client et le serveur peuvent se
parler.
de manière indépendante et simultanée.
• Connexion TCP unique - Après avoir mis à niveau la connexion
HTTP au début, le client et le serveur communiquent sur cette
même connexion TCP tout au long du cycle de vie de la connexion
Id 59
O
WebSocket.

Id 60
O
WebSockets

Id 61
O

Vous aimerez peut-être aussi