Système d'Irrigation IoT avec Arduino
Système d'Irrigation IoT avec Arduino
Université Sidi Mohamed Ben Abdellah هللا عبد بن محمد سيدي جامعة
Ecole Supérieure de Technologie - Fès للتكنولوجيا العليا المدرسة- فاس
Avant tout développement concernant notre projet de fin d'étude, il apparaît opportun de
commencer ce rapport de PFE par des remerciements, à ceux qui m’ont beaucoup appris durant mon
projet ainsi que mon cursus de formation.
Nous tenons à présenter notre profond remerciement à toutes les personnes, qui de près ou de
loin, nous ont apporté leur aide et leur soutien.
Nous tenons à remercier dans un premier temps mon encadrant, Monsieur TAOUSSI
MOHAMED, pour l'aide qu'il nous 'a apporté tout au long de notre projet. Aussi pour son précieux
soutien et ses conseils avisés tout au long de la réalisation de ce Projet. Sa disponibilité, sa
patience et ses encouragements ont été d'une grande importance pour nous.
Nous tenons aussi à remercier toute l’équipe pédagogique et les responsables de la filière Génie
Electrique pour avoir assuré notre formation théorique et pratique durant nos deux années d'études
au sein de l'Ecole Supérieure de Technologie de Fès.
Nous sommes reconnaissants envers membres du jury qui m’ont fait l’honneur d’accepter
d’évaluer ce modeste travail, nous vous remercions pour le regard critique. Ce travail est le fruit
d'une collaboration et nous sommes convaincus qu'il nous apportera des éclairages intéressants et
nous permettra de soulever certaines interrogations afin de poursuivre nos réflexions dans des
travaux et recherches futurs.
Enfin nos remerciements s'adressent également à notre famille pour leur soutien moral
et leurs encouragements tout au long de cette année. Leur présence et leur compréhension
ont été d'une grande aide pour nous.
2|P age
Table des métiers
Remerciement ................................................................................................................................ 2
Chapitre 1 : .................................................................................................................................... 6
Chapitre 2 : .................................................................................................................................. 10
A. Introduction : ................................................................................................................. 10
a. Description : .............................................................................................................. 15
A. Description : .............................................................................................................. 16
B. Caractéristique:.......................................................................................................... 17
3|P age
5. Relais : .......................................................................................................................... 18
a. Description : .............................................................................................................. 18
b. Caractéristique:.......................................................................................................... 18
a. Description : .............................................................................................................. 19
b. Caractéristique:.......................................................................................................... 19
2. Blynk: ............................................................................................................................ 21
E. Conclusion ........................................................................................................................... 22
Chapitre 3 : .................................................................................................................................. 23
A. Introduction ................................................................................................................... 23
E. Conclusion : .................................................................................................................. 31
4|P age
CONCLUSION GENERALE : ................................................................................................... 31
5|P age
Chapitre 1 :
INTRODUCTION GENERALE
A. Arrosage automatique :
Aujourd’hui, le secteur agricole est considéré comme un domaine clé pour la survie de
l’humanité vue son rôle primordiale dans la lutte contre la famine, la recherche de l’autosuffisance
alimentaire mais notamment sa présence phare au cœur de l’économie des pays en cours de
développement, de même qu’il représente une large part du produit intérieurbrut de ces derniers.
Cependant, ce secteur fait face à plusieurs obstacles à savoir : le manque d’eau dans certaines régions
due à une mauvaise gestion de celui-ci, ce qui conduit à la sècheresse et donc la famine, en plus
d’un faible rendement agricole, et d’autre part la croissance démographique impliquant
l’augmentation exponentielle des besoins en produits agroalimentaires ce qui nécessite une plus
grande production .Parmi les solutions ingénieuses proposées dans cet axe, se présente les systèmes
d’irrigation automatique qui basique sur le taux d’humidité, car chaque plante a besoin d’un taux
d’humidité spécifique. En effet, c’est le processus d'amener l'eau aux plantes cultivées
artificiellement pour augmenter la production et permettre leur croissance naturelle.
L'irrigation à la main est fastidieuse, en effet ça peut causer une perte en termes de temps et en
gaspillage d’eau. Afin d'assurer que nos plantes restent vertes et saines, pour gagner du temps, pour
l’arroser dans le temps qu’on veut soit à distance ou on laisser l’arrosage automatique, voilà
pourquoi nous réaliserons le projet du système d’arrosage intelligent supervisée à distance, on va
parler brièvement sur l’arrosage automatique donc c’est quoi ce système ???
L'arrosage automatique ou intelligent désigne les systèmes permettant de fournir de l'eau à des
plantes en routine durant un certain temps sans intervention humaine, plutôt par aspersion, mais il
peut s'agir de système de type "goutte-à-goutte". Ce sont la temporisation et le mouvement des jets
qui sont automatisés, et parfois la pression. Donc ce système n'est rien de Plus qu'un système
d'arrosage programmable contrôlé par un programmeur. L'arrosage est exécuté automatiquement
par le programmateur pour le temps programmé, ou selon les facteurs programmés humidité de sol,
niveau d’eau.
6|P age
Figure 1: SYSTEME D'ARROSAGE AUTOMATIQUE
B. Présentation du Project :
Pour réaliser notre système d’irrigation IOT, on a choisi la carte ARDUINO UNO pour faire
le contrôle et la commande d’un relais, une pompe, des capteurs, une carte ESP32 qui permet de le
commander à distance par une application téléphonique s’appelé « Blynk ». Le programme contrôle
automatiquement le cycle d’irrigation.
7|P age
C. Schéma synoptique :
Capteur
D’humidité
De sol Pompe
sol &
Partie
Commande
Capteurs de
température& Relais
Humidité
D. Description du Project :
Ce système d’arrosage intelligente supervisé à distance est un système commandé par carte
Esp32 suivant les considérations suivantes :
Le premier critère à être pris en compte c'est l'humidité du sol. Si son niveau est inférieur à
50%, l'arrosage peut se déclencher automatiquement.
8|P age
Le deuxième critère est la température de l'environnement. Si son degré est inférieur à 20%,
l'arrosage peut se déclencher automatiquement.
Pour la supervision à distance, on prévoit d'utiliser l’application qui permettra la commande et la
supervision du système d'arrosage un Smartphone via
« Blynk».
9|P age
Chapitre 2 :
DESCRIPTION DES RESSOURCES
MATERIELLES ET LOGICIELDU PROJET
A. Introduction :
Dans se chapitre nous présentons les ressources matérielles englobent tout ce qui sera nécessaire
à la réalisation du projet : matériels et équipements (ordinateurs, téléphone, composants, etc.), outils,
machines, matériaux de construction, etc…, ainsi les sources logicielles qu’on va utiliser sont deux
logicielles qui sont : logiciel de programmation « Arduino » pour programmer la carte Arduino
UNO, « Blynk » pour commander notre système à distance
L’Arduino Uno est un microcontrôleur programmable qui permet, comme son nom l’indique,
de contrôler des éléments mécaniques tels que systèmes, lumières, moteurs, etc. Cette carte
électronique permet à son utilisateur de programmer facilement des choses et de créer des
10 | P a g e
mécanismes automatisés, sans avoir de connaissances particulières en programmation. Elle est
un outil pensé et destiné aux inventeurs, artistes ou amateurs qui souhaitent créer leur propre système
automatique en le codant de toute pièce.
la carte Arduino Uno offre aux concepteurs de robots une plateforme de développement
électronique flexible et facile à utiliser pour contrôler les mouvements, les capteurs et les
actionneurs d’un robot, ainsi que pour traiter les données des capteurs et prendre des décisions en
temps réel pour les tâches complexes de la robotique.
b. Caractéristique de l’arduino uno:
La carte Arduino Uno R3 est un excellent point de départ pour s’initier aux microcontrôleurs.
Voici ses principales caractéristiques:
1. Microcontrôleur ATmega328:
o Cadencé à 16 MHz.
o Mémoire Flash de 32 Ko pour la programmation et l’enregistrement de données.
o Mémoire SRAM (mémoire volatile) de 2 Ko.
o Mémoire EEPROM (mémoire non volatile) de 1 Ko.
2. Alimentation:
o Tension de fonctionnement: 5V.
o Tension d’alimentation recommandée: 7-12V.
o Tension d’alimentation limites: 6-20V.
11 | P a g e
3. Broches d’entrées/sorties:
o 14 broches numériques (dont 6 disposent d’une sortie PWM).
o 6 broches d’entrées analogiques (utilisables en tant que broches numériques).
4. Intensité maximale disponible:
o Par broche d’entrée/sortie (5V): 40 mA.
o Pour la sortie 3.3V: 50 mA.
o Pour la sortie 5V: 500 mA max.
La carte Arduino Uno est compacte, pratique et contient tout ce dont vous avez besoin pour
commencer:
14 entrées/sorties numériques (6 peuvent fonctionner en mode PWM).
6 entrées de capteurs analogiques.
Un connecteur USB pour la programmation.
Un connecteur d’alimentation.
2. Carte ESP23:
a. Présentation général :
ESP32 est une série de microcontrôleurs de type système sur une puce (SoC) d'Espressif Systems,
basé sur l'architecture Xtensa LX6 de Tensilica (en), intégrant la gestion du Wi-Fi et
12 | P a g e
du Bluetooth (jusqu'à LE 5.0 et 5.11) en mode double, et un DSP. C'est une évolution d'ESP8266.
Le principal outil de développement est ESP-IDF, logiciel libre développé par Espressif, écrit en C
et utilisant le système temps réel FreeRTOS. Il intègre un nombre important de bibliothèques et on
retrouve dans son écosystème des bibliothèques tierce libres pour différents types de périphériques
liés à l'embarqué et au temps réel.
L’ESP32 est largement utilisé dans le domaine de l’Internet des objets (IOT) en raison de son coût
abordable, de ses capacités et de son intégration croissante dans de nombreux systèmes12. Si vous
connaissez l’ESP8266, l’ESP32 en est l’évolution, avec de nombreuses nouvelles fonctionnalités.
b. Caractéristique de l’ESP23 :
L’ESP32 est une série de microcontrôleurs de type système sur une puce (SoC) développée
par Espressif Systems. Voici quelques caractéristiques clés de l’ESP32:
1. Processeurs:
CPU: Il est équipé d’un microprocesseur Xtensa double-cœur (ou simple-cœur) 32 bits,
fonctionnant à 160 ou 240 MHz et fournissant jusqu’à 600 DMIPS.
Coprocesseur ultra basse consommation (ULP).
13 | P a g e
2. Mémoire:
520 KiO de SRAM (mémoire vive).
448 KiO de ROM (mémoire en lecture seule).
3. Connectivité sans fil:
Wi-Fi: Prend en charge le Wi-Fi 802.11 b/g/n.
Bluetooth: Compatible avec Bluetooth v4.2 BR/EDR et BLE jusqu’à v5.0 et v5.1.
4. Interfaces de périphériques:
ADC (SAR ADC) avec segmentation 12 bits et jusqu’à 18 canaux.
2 × DAC 8 bits.
10 × capteurs de touché (GPIO de capteur capacitif).
4 × SPI.
2 × interfaces I²S.
2 × interfaces I²C.
3 × UART.
Contrôleur hôte pour SD / SDIO / CE-ATA / MMC / eMMC.
Contrôleur esclave pour SDIO/SPI.
Interface MAC Ethernet avec DMA dédié et support du protocole de temps précis IEEE 1588.
Bus de données CAN 2.0.
Contrôleur infrarouge distant (TX/RX, jusqu’à 8 canaux).
Moteur PWM.
LED PWM (jusqu’à 16 canaux).
Capteur à effet Hall.
Préamplificateur analogique ultra-basse consommation.
5. Sécurité:
Support complet des normes de sécurité IEEE 802.11, incluant WPA/WPA2 et WAPI.
Démarrage sécurisé (secure boot).
Chiffrement de la Flash.
Accélération matérielle du chiffrement pour AES, SHA-2, RSA, cryptographie sur les courbes
elliptiques (ECC) et générateur de nombres aléatoires (RNG).
14 | P a g e
L’ESP32 est largement utilisé dans le domaine de l’Internet des objets (IoT) en raison de son coût
abordable, de ses capacités et de son intégration croissante dans de nombreux systèmes12. Si vous
connaissez l’ESP8266, l’ESP32 en est l’évolution, avec de nombreuses nouvelles fonctionnalités.
a. Description :
DHT22 est un capteur de température et d'humidité avec des caractéristiques très proches
de la haute précision. Vous pouvez facilement le trouver dans les magasins spécialisés ou les
grands magasins, où Aucun produit trouvé. Cela permet de ne pas avoir à dépendre séparément
d'un capteur de température et d'un capteur d'humidité, mais d'avoir tout intégré dans le même
appareil.
Vous pouvez le trouver lâche ou dans des modules spécialement conçus pour Arduino c'est-à-
dire le DHT22 monté sur une carte PCB prête à l'emploi, sans avoir à ajouter de résistances de
pull-up, etc. Jusqu'à présent, tout ressemble beaucoup à DHT11. Et vous aurez également une
fiabilité et une stabilité élevées dans les mesures grâce au signal numérique étalonné qu'il utilise.
b. Caractéristiques de DHT22:
Ses caractéristiques techniques les plus importantes sont:
Alimentation 3,3v à 6v
15 | P a g e
Consommation de courant de 2,5 mA
Signal de sortie numérique
Plage de température de -40 ° C à 125 ° C
Précision pour mesurer la température à 25 ° C de variation de 0.5 ° C
La résolution pour mesurer la température est de 8 bits, 0,1 ° C
L'humidité peut mesurer de 0% HR à 100% HR
Humidité précise de 2 à 5% HR pour des températures comprises entre 0 et 50 ° C
La résolution est de 0,1% HR, il ne peut pas capter des variations inférieures à cela
Taux d'échantillonnage de 2 échantillons par seconde: 2Hz
A. Description :
Ce capteur d'humidité du sol est une simple carte de dérivation pour mesurer le sol. Les deux
sondes concernées comme une variable de résistance. Lorsque le sol est sec, la tension de sortie est
plus élevée. Cela fonctionne selon deux modes : Le mode numérique qui détecte simplement la
présence d'eau et un signal numérique haut (1) et un mode analogique qui est plus précis. Les
applications de ce capteur regroupent les systèmes d'arrosage automatique et plus encore. Connectez
16 | P a g e
les broches VCC et GND à votre Arduino ou à tout microcontrôleur que vous utilisez et connectez
la broche A0 à une broche analogique de votre microcontrôleur.
La carte LM393 IC : Le comparateur LM393 est utilisé comme comparateur de tension dans ce
module de capteur d'humidité. La broche 2 du LM393 est connectée à la présélection (Pot 10KΩ)
tandis que la broche 3 est connectée à la broche du capteur d'humidité. Le circuit intégré
comparateur comparera la tension de seuil définie à l'aide du préréglage (broche 2) et de la broche
du capteur (broche 3)
B. Caractéristique:
17 | P a g e
5. Relais :
a. Description :
Un module de relais 5V est un module de relais monocanal ou multicanal qui fonctionne avec
une tension de déclenchement de bas niveau de 5V DC. La tension d'entrée peut provenir de
n'importe quel microcontrôleur ou puce logique qui émet un signal numérique.
Comme la plupart des autres relais, le module de relais 5V est un interrupteur électromagnétique
à commande électrique qui peut être utilisé pour allumer ou éteindre un circuit. Il se compose de
deux parties : le relais lui-même et le module de commande.
Le relais contient la bobine qui crée le champ magnétique, l'armature qui se déplace pour
terminer ou déconnecter un circuit, et les contacts qui s'ouvrent et se ferment pour actionner
l'interrupteur de charge.
Le module de contrôle de relais est l'interface ou la partie du module de relais avec laquelle
l'utilisateur interagit. Il contient les bornes d'entrée pour la connexion au microcontrôleur, ainsi que
les bornes de sortie pour la connexion à la charge.
Le module de commande contient également Indicateurs LED pour l'alimentation et l'état et
d'autres dispositifs tels que la diode de protection, le transistor, la résistance et d'autres dispositifs à
semi-conducteurs nécessaire à son fonctionnement.
b. Caractéristique:
Tension normale : 5 V CC
18 | P a g e
Courant normal : 70mA
Courant de charge maximum : 10A/250V AC, 10A/30V DC
Tension de commutation maximale : 250 V CA, 30 V CC
Temps de fonctionnement : 10 ms
Temps de relâchement : ≤ 5ms
Cc + : alimentation positive (VCC)
Cc- : alimentation négative (GND)
IN : peut-être un relais de contrôle de niveau haut ou bas
6. Pompe d’eau:
a. Description :
Une pompe à eau est un appareil qui utilise un moteur électrique ou un moteur à essence pour
pomper des liquides à travers un tuyau. Elle est utilisée dans de nombreuses applications, telles que
l’irrigation, la distribution d’eau, le refroidissement et le transfert de liquides.
b. Caractéristique:
Tension de Fonctionnement : Cette pompe fonctionne sous une tension de 5V
Capacité de Débit : Avec une capacité de 120 L/H
Puissance Nominale : La puissance nominale de 5 W indique sa capacité à fonctionner de
manière efficace tout en économisant de l’énergie électrique.
19 | P a g e
Type de Moteur : Le moteur utilisé est généralement un moteur électrique à courant continu, et sa
conception sans balais lui confère une durée de vie prolongée.
Diamètre à l’extérieur de sortie d’eau : 7,5mm
Diamètre à l’intérieure de sortie d’eau : 5mm
20 | P a g e
2. Blynk:
21 | P a g e
Facilité d’intégrer et ajouter de nouvelles fonctionnalités en utilisant les broches
virtuelles.
Communication Périphérique-à-Périphérique en utilisant le widget Bridge envoi
d’emails, de notifications push
E. Conclusion
Dans ce chapitre, nous avons faire une étude détaillée de toutes les composants et les logiciels
qu’on a utilisé pour programmer notre système, cette étude nous aide à comprendre les
caractéristiques et le principe de fonctionnement de chaque composant.
22 | P a g e
Chapitre 3 :
REALISATION D’UN SYSTEME
D’IRRIGATION INTELIGENT
A. Introduction
Ces quelques dernières années, l’IoT est devenu l’une des technologies les plus importantes du
21ème siècle. Maintenant que nous pouvons connecter des objets du quotidien (appareils
électroménagers, voitures, thermostats, interphones bébés) à Internet par l’intermédiaire de
terminaux intégrés. Il est donc logique que l’IoT trouve son application dans l’irrigation et, en tant
que tel, en améliore considérablement presque toutes les facettes.
Pour ce chapitre, Il s’agit de concevoir et de réaliser un système d’irrigation intelligente,
commandée par un Smartphone en basant sur les composants et les logiciels qu’on a déjà situés dans
le chapitre précédent dans cette partie nous allons expliquer toutes les étapes suivie pour réaliser et
créer notre projet en présentant les résultats expérimentaux finals
C. Principe de fonctionnement :
Dans notre système d’irrigation, nous avons utilisé capteurs tels que capteur de l'humidité du
sol, le capteur DHT22 sont connectés aux broches d'entrée du microcontrôleur Arduino qui est un
microcontrôleur elle s’agit comme un cerveau pour l'ensemble du système.
23 | P a g e
Les valeurs détectées par les capteurs sont affichées sur le Moniteur du logiciel Arduino. Si la
valeur détectée dépasse les valeurs de seuil définies dans le programme, la pompe sera
automatiquement activée/désactivée par le circuit de relais et elle est connectée au circuit de
commande qui aide à commuter la tension.
Dans notre projet et pour rendre le système connectée et commandable à distance nous avons le
choix de travailler soit avec une carte wifi pour Arduino ou un module Bluetooth, ce dernier a une
zone de commande inférieure à 15 mètres, ce qui nous a obligé d’utiliser le module (WI-FI)
l'ESP32. Cette carte de commande permettra de recevoir les commandes et de les exécuter puis
envoyer les états des différents capteurs et actionneurs.
Dans notre projet, cette carte assure :
Le contrôle de l'arrosage.
Le bon fonctionnement de la pompe.
La lecture des données reçues à partir des capteurs d'humidité de sol et DHT22
Moniteur serie
Smartphone
DHT 22
ESP 32
Arduino
Uno
Chapt Humidité Sol
Alimentation
Relais La pompe
24 | P a g e
D. Etapes de réalisation de notre projet :
1. Partie 1 : réalisation de tout le système avec Arduino Uno :
a. Circuit du branchement :
DHT 22 se brancher avec l’Arduino par 1 fil (D2) + VCC, GND.
Capteur d’humidité du sol se brancher avec l’Arduino par 1fil (A0) +VCC, GND.
Relay de pompe se brancher avec l’Arduino par 1 fil (D1) + VCC,
b. Logiciel et programmation :
Notre réalisation a besoin de la partie software, la figure ci-dessous décrit celle-ci, et pour plus de
détaille sur la programmation des différents composants
25 | P a g e
Figure 18: Arduino IDE
c. Test pratique :
Avant de faire le test final. Chaque capteur est monté et testé séparément pour facilite le montage
du système global et éviter les problèmes de compilation du programme final et les valeurs obtenues
sont afficher dans le moniteur série de logiciel Arduino. Ensuite, après avoir expérimenté les
composants selon le schéma de la figure précédente, nous les avons réalisés et testés.
26 | P a g e
Figure 19: Test de système avec arduino
27 | P a g e
b. Configuration et Création d’un projet Blynk :
Tout d’abord, pour commencer il faut :
o Un système embarqué (ESP32 ,arduino…….)
o Un environnement de développement (IDE) pour votre système embarqué avec la
bibliothèque Blynk
o Un accès Internet ou un serveur privé
o Un smartphone (iOS ou Android)
Et suivie les étapes suivantes
1. Télécharger l’application Blynk (Android ou iOS)
2. Installer la bibliothèque Blynk pour votre IDE
3. Créer un compte Blynk : Un compte Blynk est nécessaire afin de sauvegarder les projets.
4. Créer un nouveau Projet : Il faut tout d’abord se connecter avec son compte Blynk
o Créer un nouveau projet Blynk.
o Nommer le projet.
o Choisir la carte de communication.
o Valider le projet.
5. Ajouter des widgets : Le grille de projet est vide, en ajoutant des boutons, des gauges…
Appuyez n’importe où sur la grille pour ouvrir la liste des Widgets. Tous les widgets
disponibles comme la figure qui suit :
28 | P a g e
Figure 22: Configuration de l’application Blynk
29 | P a g e
Figure 23:Programme final Arduino IDE
c. Teste pratique :
30 | P a g e
E. Conclusion :
Dans ce chapitre nous avons décrit les étapes et les procédures que nous avons menées
pour réaliser le système proposé et afin d’atteindre notre objectif qui est la conception
d'un système d'irrigation et remplit les objectifs souhaités. Le matériel et les logiciels
utilisés remplissaient correctement leur fonction pour produire le résultat souhaité qui
est requis pour les agriculteurs dans le domaine de l'irrigation
CONCLUSION GENERALE :
Ce projet de fin d'études a porté sur l'étude et l'analyse d'un système d'irrigation supervisé à
distance. Il nous a permis d'approfondir nos connaissances et d'acquérir une expérience concrète
dans la conception de cartes électroniques. Avec la réalisation d'un module destiné à être connecté
à la carte ESP32. Ce module étant constitué :
D'une interface d'acquisition des données météorologiques.
Une interface de sortie pour la commande de l'irrigation.
Une interface de communication via l’application Blynk.
Ce projet nous a permis d'acquérir de nouvelles connaissances et de développer des compétences
dans plusieurs domaines :
Protocoles de communication: Nous avons appris à utiliser les protocoles et wifi pour la
Communication entre le module Shield et les différents périphériques.
31 | P a g e
Du point de vue travail en équipe, est une compétence essentielle pour la réussite individuelle et
collective. En apprenant à travailler efficacement avec les autres, nous pouvons augmenter nos
chances de succès dans tous les domaines de notre vie.
Concernant enfin les perspectives futures d'amélioration de notre travail, on peut Travailler sur une
meilleure supervision à distance avec la mise en place d'une application.
32 | P a g e
33 | P a g e