Complément 1/Chapitre 1
Architecture fonctionnelle d’une solution IoT
• L‘architecture d‘une solution IoT Plateformes IoT
varie d‘un système à l‘autre en se
basant sur le type de la solution à
mettre en place.
• L’architecture la plus élémentaire est
une architecture à trois couches:
– Niveau1: La couche perception :
possède des capteurs et actionneurs
qui détectent et recueillent des
informations sur l’environnement.
– Niveau 2 : La couche réseau est
responsable de la connexion, du tr2
ansport et du traitement des
données issues des capteurs et
actionneurs.
– Niveau 3 : La couche application
est chargée de fournir à l’utilisateur
des services spécifiques et
applications intelligentes. 2
Architecture fonctionnelle d’une solution IoT
Couche perception Couche Réseau Couche Application
3
Niveau 1 : Les Capteurs
• Capteur : C’est un dispositif utilisé pour détecter un événement ou une grandeur
physique, tels que luminosité, température, humidité du sol, pression, etc. et qui
fournit un signal électrique correspondant.
• Les capteurs IoT sont généralement de petite taille, ont un faible coût et
consomment moins d’énergie.
• Les signaux produits par un capteur sont traités par un microcontrôleur pour
l‘interprétation, l‘analyse et la prise de décision.
4
Niveau 1 : capteurs utilisés en IoT
Détection de mouvement DHT11 (Temp & Humd) Gaz sensor Capteur de Choc
Fin de Course (déplacement) Ultrason de distance
GY-MAX30102 Module IR
Water sensor
Humidité du sol
5
Niveau 1 : Capteurs d’un smart phone
6
Niveau 1 : Les actionneursVentilateur
Moteur pas à pas Servomoteur
Moteur à courant continu
Electrovanne Résistance chauffante
Vérin
OLED Buzzer (mini baffle)
Voyant lumineux (LED) Afficheur 7 segments
7
Architecture d'un système embarqué (Embedded System)
ADC : Analog to Digital Converter DAC : Digital to Analog Converter
• MCU : Un système embarqué est basé sur un microcontrôleur: un circuit intégré qui comprend un
processeur, une mémoire, des périphériques d‘entrée/sortie (I/O), ADC,DAC, des bus de
communications (UART, CAN, USB, Ethernet,…) sur une seule puce.
• Très faible consommation électrique, petite taille (Arduino : 7,4 cm x 5,3 cm), très bon
marché (~ quelques dizaines d'euro). Vitesse de fonctionnement plus faible qu'un PC.
• IP = Intellectual Property Core = circuit intégré (~processeur) dédié à une fonctionnalité.
• Par exemple : contrôleur réseau : ethernet, bus CAN (Controller Area Network) dans les
automobiles, audio : CODEC (codage-décodage) codant et décodant un flux audio.
• FPGA = Field Programmable Gate Array : circuit logique programmable = un circuit intégré logique
qui peut être reprogrammé après sa fabrication.
8
Exemples de cartes Embarqués
Raspberry Pi
Intel galileo
Arduino
Beagleboard
STM32
9
(discovery, Nucleo)
Niveau 2 : Passerelle (GateWay)
• Une passerelle (gateway) est une combinaison de composants matériels et logiciels
utilisés pour connecter un réseau à un autre.
• Les gateways permettent de relier les capteurs ou les noeuds de capteurs avec le
monde extérieur.
• Les gateways sont donc utilisées pour la communication de données en collectant
les mesures effectuées par les noeuds de capteurs et en les transmettant à
l'infrastructure Internet.
• La gateway peut faire des traitements locaux sur les données avant de les relayer
au Cloud.
• Exemples de gateways: Raspberry Pi, beagleboard, ESP8266, ESP32 nodemcu, …
ESP32 nodemcu
ESP8266 10
ESP- WROOM-32 DEVKIT V1 (30 Pins)
• Processeurs : Mémoire : 4, 8, 16 Mo SRAM ;
– CPU : Xtensa double-cœur (ou simple-cœur), Connectivité sans-fil :
microprocesseur LX 32 bits, fonctionnant à 160 Wi-Fi : 802.11 b/g/n ;
ou 240 MHz et fournissant jusqu'à 600 DMIPS ; Bluetooth : v 4.2 BR/EDR et BLE
jusqu'à v 5.0 et v 5.1 ;
– Coprocesseur ultra basse consommation (ULP) ;
11
PINOUT of ESP32 DEVKIT V1
12
Caractéristiques ESP-WROOM 32
ESP32 Peripherals Features :
12-bit SAR ADC up to 18 channels Ethernet MAC interface with
2 × 8-bit DACs dedicated DMA and IEEE 1588
10 × touch sensors (capacitive Precision Time Protocol support
sensing GPIOs) CAN bus 2.0
4 × SPI Infrared remote controller (TX/RX,
2 × I²S interfaces
up to 8 channels)
2 × I²C interfaces
Motor PWM
3 × UART
LED PWM (up to 16 channels)
SD/SDIO/CE-ATA/MMC/eMMC host
Hall effect sensor
controller
Ultra low power analog pre-amplifier
SDIO/SPI slave controller
13
Caractéristiques ESP-WROOM 32
GPIO Pins:
• ESP32 Wroom32 DevKit a en total 25 GPIOs.
Example: To make GPIO22 as input and GPIO23 as
output (dans le Arduino IDE)
• pinMode(22,INPUT);
• pinMode(23,OUTPUT);
Example: To Write HIGH Level on GPIO23
• digitalWrite(23,HIGH);
14
Exemple de code pour ADC
void setup() {
// initialize serial communication at 9600 bits per second between yhe ESP and the PC:
[Link](9600);
}
// the loop routine runs over and over again forever:
void loop() { // read the input on analog ADC1_0:
int sensorValue = analogRead(A0);
// print out the value you read:
[Link](sensorValue);
delay(100); // delay in between reads for stability
}
15
Exemple de Montage et application IoT:
afficher les valeurs de Température et Humidité
16