L’Internet des Objets

L’Internet des Objets

1.3 Architecture IoT

Page précédente Page suivante

La mise en place des IoT peut se faire de multiples façons. Certains poussent à un début de normalisation pour une architecture spécifique à ce domaine. La figure 11.1 présente l’architecture de ce domaine.

(image)

Fig. 1.1 : Architecture de l’IoT.

Cette figure présente l’architecture globale. Nous avons donc :

  • 1. l’objet à connecter (écran, capteur, actionneur) ;

  • 2. une passerelle qui relie l’objet à Internet ;

  • 3. le réseau Internet (non sécurisé) ;

  • 4. un serveur MQTT ;

  • 5. un serveur d’applications ;

  • 6. des applications web ou spécifiques ;

  • 7. de la supervision ;

  • 8. des applications mobiles MQTT ;

  • 9. des applications mobiles liées aux serveurs applicatifs.

Nous avons donc, pour commencer un objet destiné à la connexion. Cet objet peut être minuscule (une caméra espion) ou gigantesque (un panneau publicitaire sur Time square).

La connexion entre l’objet et sa passerelle peut être filaire ou sans fil. Nous pouvons ainsi avoir un bus I\( ^2 \)C, une liaison série, un câble Ethernet, une fibre optique ; du WiFi, Bluetooth, LoRaWAN ou spécifique ISM (comme une télécommande de portail).

La passerelle, exemple 32 (qui peut être dans le même boîtier que l’objet) permet d’interagir avec Internet ou un sous ensemble.

Le serveur MQTT (par exemple : mosquitto 23.1.2) permet de découpler les objets et les applications en simplifiant le code embarqué. Les données produites par l’objet peuvent être utilisées par de nombreuses applications indépendantes.

Ensuite, les applications peuvent être nombreuses à consulter et enregistrer les données. Il est ainsi possible d’avoir une application qui conserve les données de températures toutes les dix minutes pour les deux dernières semaines et une qui conserve définitivement les valeurs maximale, moyenne et minimale, Avoir des applications distinctes diminue les risques de bugs et favorise l’interropérabilité, donc la longévité des matériels.

Nous identifions plusieurs domaines techniques spécifiques pour le développement :

  • 1. Création de l’objet ;

  • 2. Communication de l’objet ;

  • 3. Passerelle vers Internet ;

  • 4. Serveur réseau ;

  • 5. Serveur applicatif ;

  • 6. Interfaces ;

  • 7. Bases de données ;

  • 8. Applications.

1.3.1 Création de l’objet

L’objet doit être fabriqué. Cette partie fait intervenir plusieurs techniques.

L’objet peut agir sur l’environnement ou capter une information depuis son environnement. L’action peut se faire directement (diode, buzzer, écran…) ou indirectement, souvent par un relais. La détection d’une information peut se faire soit par un contact électrique simple soit par la lecture d’une information électrique (souvent une tension) obtenue après conversion d’une mesure physique (thermorésistance, diode photodétectrice, mesure d’une valeur chimique…).

Il y a donc une composante liée à la transformation d’un processus physique ou chimique vers une valeur électrique. Du point de vue informatique, il faut transformer cette valeur électrique en une information. Cette information peut être lue à intervales plus ou moins réguliers ou générer une interruption.

Au delà du prototype permettant de valider le concept, la mise en production pose des problèmes spécifiques. Le coût marginal de l’objet peut devenir important si l’objet doit être déployé à plusieurs millions d’exemplaires. Dans ce contexte, la consommation énergétique peut devenir un facteur bloquant. Cette consommation est aussi un élément à prendre en compte si l’accès aux objets est difficile. Par exemple, les détecteurs d’incendie disséminés dans une forêt.

Enfin, l’objet dispose de capacités de traitement numérique. Ce peut être un microcontrôleur ou un ordinateur. Comme un des points fondamentaux de la sécurité, c’est la possibilité de mise à jour fréquente, celle ci doit être planifiée pour ces objets. Ces mises à jour doivent, bien sûr, s’effectuer de manière aussi sécurisée que possible.

1.3.2 Communication de l’objet

L’objet doit communiquer avec le réseau (sinon, ce n’est pas de l’IoT). Pour de nombreuses raisons, les objets ne disposeront pas tous des capacités de traitement suffisantes pour la connexion IP. Le coût de la communications IP peut se traduire en resources processeur, mémoire et consommation d’énergie.

Néanmoins cet objet disposera de capacité de communication numérique. Si l’objet ne dispose pas d’adresse IP, alors il faudra une passerelle pour faire la liaison entre les deux réseaux. Les canaux classiquement utilisés sont :

WiFi

cette communication est très répandue dans les domiciles et les entreprises. Elle est facile à mettre en œuvre pour des personnes peu qualifiées. L’accès à Internet est direct.

Bluetooth

et surtout BLE (Bluetooth Low Energy) sont utilisés pour des communications point à point très locale. Une forme de réseau est possible, mais il faut une passerelle pour communiquer avec Internet.

Ethernet

Certains objets disposent nativement d’un port Ethernet, la connexion IP est donc prévue.

Réseaux embarqués

, aussi appelés réseau de terrain ou industriels, comme l’I\( ^2 \)C, le SPI ou le CAN (automobile). Ces bus sont présent à l’intérieur des ordinateurs ou des voitures. De nombreux composants sont disponibles avec une interface de ces réseaux. Les ordinateurs spécialisés (comme le Raspberry-Pi) ou microcontrôleurs (comme l’Arduino) disposent de ces interfaces.

Bandes ISM

Ces bandes de fréquences hertziennes sont considérées comme libres. C’est à dire qu’elles peuvent être utilisées sans demande d’autorisation ou déclaration. Elles sont néanmoins soumises à réglementation, en particulier pour la puissance d’émission.

RFID / NFC
Infrarouge

l’infrarouge est très utilisé, principalement pour les télécommandes, mais il est aussi possible de l’utiliser des transmissions plus complexes.

Lumière

Elle commence à être utilisée, soit par modulation de puissance pour émettre un code, soit avec des codes de couleurs et même pour des transmissions analogues au WiFi.

CPL

il existe plusieurs protocoles qui utilisent les câbles de transport de l’énergie électrique. C’est utilisé par l’opérateur pour transmettre les impulsions pour modifier le coût horaire ou pour la diffusion d’internet dans les locaux d’une habitation.

Il est possible aussi de classer ces supports de transmission par la technologie utilisée :

filaire
câble métalique
fibre optique

sans fil
hertzien
Infrarouge
lumière

La physique utilisée par chaque support de transmission aura un impact, non seulement sur le coût de fabrication, mais aussi sur les la consommation d’énergie, de capacité ou de sécurité.

Tous les supports émettent des informations en dehors des acteurs prévus. C’est particulièrement vrai pour les communications Hertziennes qui peuvent propager le signal en dehors des zones contrôlées par l’entreprise, mais aussi des communications filaires. Les câbles électriques rayonnent, ainsi la communication entre un clavier et l’ordinateur peut être détectée à plusieurs étages de distance. Les fibres optiques peuvent aussi être espionnées en courbant suffisement la fibre pour qu’une partie de la lumière s’échappe, mais pas suffisement pour couper la communication.

La tentation est alors grande d’utiliser des techniques cryptographiques pour se protéger contre les accès frauduleux. Avec les Objets connectés, la cryptographie pose deux problèmes : la puissance consommée (en termes de charge processeur et d’énergie) et la mise à jour quand le protocole de cryptographie devient obsolète.

La partie physique de la transmission est un élément fondamental. De nombreux problèmes sont liés à cette partie physique. Ainsi, un four à micro-ondes perturbe les transmissions WiFi mais il ne sera pas détecté par les outils d’analyse de réseau wifi simples.

La consommation d’énergie est aussi dépendante de la puissance d’émission. Dans les réseaux de téléphonie mobile, la puissance d’émission des terminaux est adaptée en continu pour augmenter la durée de fonctionnement de la batterie.

Enfin, des informations, comme la puissance de réception peuvent aider à détecter une éventuelle agression. Une technique classique consiste à émettre un signal plus puissant pour masquer le signal légitime. Cette modification de puissance peut déclencher une alerte.

1.3.3 Passerelle vers Internet

Cette passerelle est constituée en général d’un microcontrôleur ou d’un ordinateur disposant du canal de communication numérique avec l’objet connecté d’une part et d’un accès internet d’autre part.

La passerelle peut aussi parfois être considéré comme un objet de l’internet des objets. La distinction est assez floue. Ainsi, un objet, comme un thermomètre I\( ^2 \)C peut utiliser un Raspberry-Pi comme passerelle ou l’ensemble peut être considéré comme un objet connecté.

Cette passerelle peut être un élément construit spécifiquement, comme dans l’exemple précédent ou normalisé comme les gateway Lorawan.

1.3.4 Serveur réseau

Les objets ne disposent pas forcément d’une connexion permanente, d’une capacité de réaction rapide ou d’une mémoire suffisement grande. De plus, l’attente d’un message impose de maintenir une écoute active qui consomme beaucoup d’énergie. Par exemple, une station météo peut émettre une fois par heure ses informations et devenir inactive entre deux émissions. Elle pourra donc se réveiller, prendre ses mesure, les transmettre, les oublier et se rendormir.

Le réseau Lorawan normalise donc un serveur réseau (Network server) qui va conserver les messages sans essayer de les interpréter. Dans le réseau LoraWan (The Thing Network), il s’agit d’un broker MQTT (MQ Telemetry Transport). Le serveur applicatif ou les applications peuvent aussi se connecter à ce serveur pour consulter les messages ou en ajouter.

1.3.5 Serveur applicatif

Le serveur applicatif est le serveur qui va gérer l’ensemble des objets connectés dédiés à un usage. Il pourra s’agir du programme qui surveille les vaches laitières, l’installation de traite, le stockage du lait, etc. Ce serveur pourra utiliser un serveur réseau, des passerelles ou pas. Les objets connectés peuvent aussi être en liaison avec plusieurs serveurs.

1.3.6 Interfaces

Plusieurs interfaces peuvent présenter des aspects distincts. Ce peut être des interfaces qui présentent une interprétation des résultat globaux, comme la carte des températures d’une région, ou des interfaces de supervision qui affichent pour chaque objet l’ensemble de ses paramètres (comme la température, la pression, l’humidité, la position, le type d’objet et la version du firmware.

Ces interfaces peuvent utiliser un client lourd sur une station de travail ou un terminal Android ou un client web qui utilise le navigateur Internet.

1.3.7 Bases de données

Les objets peuvent être nombreux pour une application donnée. Nous pouvons imaginer une solution de supervision de l’énergie qui surveille la température de tous les locaux d’un bâtiment, la consommation électrique de chacune des prises électrique et la consommation de la chaudière. Afin d’optimiser la facture énergétique et le bilan carbonne, il faut pouvoir conserver les données sur de longues périodes pour pouvoir ensuite être interprétées. Ces mesures peuvent donc être enregistrées dans des bases de données.

1.3.8 Applications

Les applications sont un peu similaires aux serveur applicatif. Le serveur applicatif traite les données et attend qu’elles soient utilisées. L’application offre une interaction plus directe avec les objets. Par exemple, c’est une application qui va télécommander l’éclairage d’une habitation ou le volume sonore.

Page précédente Page suivante