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.

Informatique embarquée

Selon la définition de Wikipédia, on désigne sous le terme informatique embarquée les aspects logiciels se 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é :

Système embarqué

Tout objet, autre qu'un PC, à l'intérieur duquel on a placé de l'informatique pour le contrôler.

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

Elles peuvent être constituées :

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

Unité de traitement

Système qui traite les données échangées avec le système à commander et, le cas échéant, l'utilisateur.

Capteurs

Un capteur mesure une grandeur physique pour la convertir en un signal de nature électrique compréhensible par l'unité de traitement.

La grandeur physique :

Le signal peut être :

Capteur

Système qui convertit une grandeur physique en un signal de nature électrique.

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.

Exemples classiques

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

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.

Source d'énergie

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

Courant électrique

C'est un flux d'électrons au sein d'un matériau conducteur.

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 Ω :

Comparaison avec un circuit hydraulique

IHM

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

IHM

Système qui permet à un utilisateur de dialoguer avec la machine.

Objets connectés

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. Au lieu de dire système embarqué connecté, on dit plus simplement objet connecté.

Objet connecté

Système embarqué relié à un réseau lui permettant de communiquer avec d'autres systèmes informatiques.

Structure d'un objet connecté

Une interface réseau complète la structure du système embarqué.

Interface réseau

Système qui adapte les signaux transmis sur le réseau aux signaux gérés par l'unité de traitement.

Types de connexion

On distingue les connexions filaires ou sans fil, comme le montre les exemples ci-dessous, accompagnés de valeurs indicatives.

ConnexionTypePortée (m)Débit (Mbit/s ou Mbps)Particularité
USB 2Filaire5 480Peut alimenter en énergie
l'objet connecté
USB 35 5000 à 20000
Ethernet sur câbles de cuivre50100 à 40000 -
Ethernet sur fibre optiqueIllimitée1000 à 40000 -
BluetoothSans fil102 -
Wifi 5 GHz201000 -
Wifi 2,4 GHz30500 -
LoRa, Sigfox1000 à 20000Très bas débitTrès faible consommation d'énergie
Téléphonie mobile 4G-150Nécessite un abonnement
Téléphonie mobile 5G-1000

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.

Bug

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

Faille de sécurité

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

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 (programmer l'obsolescence pour inciter au remplacement..).

Mouchard ou logiciel espion (spyware en anglais)

C'est un logiciel qui espionne, trace 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.