INFORMATIQUE EMBARQUEE
ET OBJETS CONNECTES

Introduction

Un système électronique traite des signaux d'entrée pour produire des signaux de sortie. Si les systèmes câblés étaient très communs autrefois, ils ont tendance à être remplacés par des systèmes programmés, plus flexibles et économiques.

Définitions

Informatique embarquée

Selon la définition de Wikipédia, on désigne sous le terme informatique embarquée les aspects logicielsse trouvant à l'intérieur des équipements n'ayant pas une vocation purement informatique. L'ensemble logiciel, matériel intégré dans un équipement constitue un système embarqué. L'informatique embarquée est omniprésente : Appareils électroménager, téléphone portable, automobile...

En résumé : Un système embarqué est un objet, autre qu'un ordinateur personnel (PC), à l'intérieur duquel on a placé de l'informatique pour le contrôler.

Objets connectés

Un objet connecté est un système embarqué relié à un réseau lui permettant de communiquer avec d'autres systèmes informatiques. Au lieu de dire système embarqué connecté, on dit plus simplement objet connecté.

Avec le développement d'Internet, les systèmes embarqués sont avantageusement mis en réseau. Ils peuvent ainsi se commander à distance ou communiquer entre eux.

Repères historiques

DateEvènement
1967 Guidage par un système embarqué lors de la mission lunaire Apollo.
1971 Premier microprocesseur, l'Intel 4004.

Informatique embarquée

Structure d'un système embarqué

Dans sa forme basique, un système embarqué comporte quatre parties :

L'ajout d'une IHM (interface homme-machine) permet à un utilisateur de dialoguer avec le système embarqué.

Unités de traitement

L'unité de traitement est le système qui envoie des données aux préactionneurs en fonction des données provenant des capteurs et, le cas échéant, de l'IHM. Elle est basée sur un circuit intégré (ou puce électronique) qui peut être :

Solutions classiques de prototypage

L'exemple de programme ci-dessous, en C++, sert à générer un signal rectangulaire sur le connecteur 3 d'une carte Arduino UNO.

void setup() {
  pinMode(3, OUTPUT);
}

void loop() {
  digitalWrite(3, HIGH);
  delay(1000); // Attendre 1000 millisecondes
  digitalWrite(3, LOW);
  delay(500); // Attendre 500 millisecondes
}

Explications :

Elément de programmeDescription
voidDéfinit une fonction ne retournant aucune valeur
setup()Fonction exécutée une seule fois
loop()Fonction exécutée en boucle
pinMode(3, OUTPUT);Le connecteur 3 est défini en sortie
digitalWrite(3, HIGH);Le connecteur 3 délivre une tension de 5 V
digitalWrite(3, LOW);Le connecteur 3 délivre une tension de 0 V
delay(1000);Le programme se met en pause pendant 1000 ms soit 1 s
//Il s'agit d'un commentaire destiné au programmeur

Capteurs

Un capteur mesure une grandeur physique (pression, tension, courant, fréquence...) pour la convertir en un signal électrique compréhensible par l'unité de traitement.

La grandeur physique :

Selon l'emplacement de l'élément à mesurer, un capteur peut être :

Selon le signal de sortie, un capteur peut être :

Actionneurs et préactionneurs

L'unité de traitement traite des signaux de très faible puissance. Elle ne peut alimenter directement les actionneurs qui consomment une forte puissance. Le préactionneur sert d'intermédiaire entre l'unité de traitement et l'actionneur. Il distribue l'énergie de puissance vers l'actionneur selon le signal de commande qu'il reçoit.

Actionneur

Système qui convertit l'énergie de puissance en une énergie utile pour la machine.

Préactionneur

Système qui distribue l'énergie disponible vers un actionneur selon le signal de commande.

Exemples

Energie de puissanceActionneurPréactionneur
ElectriqueMoteur électriqueContacteur
Transistor
Pneumatique
Hydraulique
VérinDistributeur

Moteurs électriques usuels

Source d'énergie

Elle alimente en énergie le système embarqué. Elle peut être :

Courant électrique

C'est un flux d'électrons (charges négatives) au sein d'un matériau conducteur. Par convention, il circule de la borne positive du générateur électrique vers sa borne négative.

Loi d'Ohm

Lorsque le courant traverse une résistance, la loi d'Ohm donne la relation entre la tension, l'intensité, la valeur R de la résistance en Ω :

Analogie avec un circuit hydraulique

IHM

L'interface homme-machine permet à l'utilisateur de dialoguer avec le système embarqué. Elle comporte :

Objets connectés

Structure d'un objet connecté

Une interface réseau, système qui adapte les signaux transmis sur le réseau aux signaux gérés par l'unité de traitement, complète la structure du système embarqué.

Types de connexion

Il existe une multitude de moyens pour connecter un objet à son environnement. On distingue les connexions :

Quelques exemples, accompagnés de valeurs indicatives :

TypeConnexionPortée (m)Débit (Mbit/s ou Mbps) Particularité
FilaireUSB25480 Peut alimenter en énergie
l'objet connecté
355000 à 20000
Ethernetsur câbles de cuivre50100 à 40000 -
sur fibre optiqueIllimitée1000 à 40000
Sans filBluetooth102 Consomme moins d'énergie que le Wi-Fi
Wi-Fi5 GHz201000-
2,4 GHz30500
LoRA, SigFox1000 à 20000Très bas débit Très faible consommation d'énergie
Téléphonie mobile4GIllimitée150 Nécessite un abonnement
5G1000

Le spectre radio est très régulé et la plupart des plages de fréquences sont réservées (police, armée, aéronautique, météorologie, etc.) ou sous licence (téléphonie mobile, etc.). En France, l’ARCEP (autorité de régulation des communications électroniques et des postes) prend en charge de cette régulation. L'ANFR (agence nationale des fréquences), quant à elle, assure la planification, la gestion et le contrôle de l'utilisation des fréquences. Les bandes ISM (industrielle, scientifique et médicale) sont très prisées du fait de leur règlementation peu contraignante :

FréquenceUsage
433 MHzAlarmes, domotique, LoRA
868 MHzDomotique, SigFox, LoRA
2,4 GHzWi-Fi, Bluetooth
5 GHzWi-Fi

Quelques définitions

Internet des objets

L'Internet des objets ou IoT (Internet of things) en anglais désigne l'ensemble des objets reliés au réseau Internet.

Web des objets

Le Web des objets désigne l'ensemble des objets contrôlés via le Web.

Communication de machine à machine

Le M2M (Machine to Machine) désigne la communication directe entre des machines sans intervention humaine.

Domotique

La domotique est l’ensemble des techniques d’automatisation et d’informatisation des tâches dans une maison. Il existe de nombreux objets connectés dans le domaine de la domotique.

Cybersécurité

Les objets connectés à Internet ou à un réseau sans fil ne sont guère protégés que par des mots de passe et du chiffrement. Leur déploiement massif augmente la surface d'attaque des pirates de l'informatique.

Porte dérobée (backdoor en anglais)

C'est une fonctionnalité inconnue de l'utilisateur permettant au fabriquant de prendre le contrôle de l'objet, pour toutes sortes d'usages. Elle peut être matérielle (incorporée au circuit intégré) ou logicielle.

Obsolescence logicielle

C'est une fonctionnalité inconnue de l'utilisateur provoquant un mode dégradé, une panne partielle ou complète de l'objet au bout d'un certain temps ou d'un certain nombre d'utilisations.

Limitation logicielle

C'est une fonctionnalité restreignant l'usage l'objet.

Bug

C'est un défaut de programmation engendrant un dysfonctionnement en certaines circonstances.

Faille de sécurité

C'est une faiblesse de programmation permettant aux pirates de prendre le contrôle de l'objet, pour toutes sortes d'usages (fabrication de bitcoins...).

Mouchard ou logiciel espion (spyware en anglais)

C'est un logiciel permettant aux pirates d'espionner, de tracer l'activité.

Rançongiciel (ransomware en anglais)

Ce logiciel chiffre les données personnelles puis demande à leur propriétaire d'envoyer de l'argent en échange de la clé permettant de les déchiffrer.

Cheval de Troie (Trojan horse en anglais)

C'est un logiciel en apparence légitime, inoffensif, mais qui contient une fonctionnalité malveillante.

Virus

C'est un programme qui se propage et de se duplique en s'insérant dans un fichier hôte.

Ver (worm en anglais)

C'est un programme qui se propage et se duplique, par son propre moyen, sans contaminer un fichier hôte.

Déni de service (Distributed Denial of Service attack ou DDoS attack en anglais)

L'attaque par déni de service consiste à saturer un serveur de requêtes afin d'empêcher son fonctionnement.