développement d'un système de gestion d'objets connectés
TRANSCRIPT
République Algérienne Démocratique et Populaire
Ministre de L’Enseignement Supérieur et de la Recherche Scientifique
Université Larbi Ben M’hidi -Oum El Bouaghi
Faculté : sciences et sciences appliquées
Département : Génie Electrique
Filière : Electronique
En Vue de L’obtention du diplôme de Master
Spécialité : Electronique des systèmes embarqués
Développement d'un système de gestion
d'objets connectés
Présenté par : Dirigé par :
HAMDI Wissam Dr. LAMAMRA Kheireddine
Dr. BENELHADJ Mohamed El Hadi
Juré par :
Pr. KHAMEDJA Mohamed Dr. MOITSI Souheil
I
Je remercie ALLAH, le tout puissant, le miséricordieux,
De m’avoir donné le courage, la volonté et la patience de
Mener à terme ce présent travail.
J’exprime mes profondes gratitudes à mes parents pour leurs
encouragements, leur soutien et pour les sacrifices qu'ils ont endurés.
Je tiens à remercier mes encadreurs Dr. LAMAMRA Kheireddine et
Dr. BENELHADJ Mohamed El Hadi (université Constantine 2)
pour avoir d’abord proposé ce thème et pour leurs aides ses
remarques et ses conseils
Je remercie le chef de département de génie électrique
Dr. DJEBABLA Ali de leur encouragement.
Je remercie Mr. BOURAMOUL Imed pour leur aide ses remarques
et ses conseils
Je remercie également les membres de jury d’avoir accepté de juger
ce travail.
Mes remerciements vont aussi à tous les enseignants de filière
d’électronique qui ont contribué à notre formation.
Enfin, je tiens à exprimer mes reconnaissances à tous mes amis et
collègues pour le soutien moral et matériel.
II
A ceux qu’ont faits de moi une femme mes très
chers parents mon père : Belgacem et ma mère :
Hayat.
A grand-mère : nana Wiza
A Mes frères : Chems Eddine, Manel, Boutheina,
Nedjma, Romaisssa, Randa, Oussama.
A les enfons : Salsabile, Baraa, Tasnime, Sirine,
Dhio, Jouri, Iline.
A toutes la famille Hamdi.
A mon encadreur : Lamamra Kheireddine.
A ma cher amie : Rahma.
A mes amies et collègues : Wafa, Thedja, Wissam,
Nousseiba, Kawther, Aziza, Khawla, Imen, Seif
Eddine, Amar, Lazhar, Hachem, Walid, Akram,
Mehdi, Mohammed, Ahmed, Abd Elhamide, Nadhir.
A tous mes enseignants de filière d’électronique
III
Remerciements ............................................................................................................... I
Dédicaces ..................................................................................................................... II
Sommaire .................................................................................................................... III
Liste des figures ........................................................................................................ VII
Liste des tableaux ..................................................................................................... VIII
Liste d’abréviations .................................................................................................... IX
Introduction générale .....................................................................................................1
Chapitre I : Les objets connectés ...................................................................................3
I.1. Introduction : .......................................................................................................4
I.2. Les objets connectés ............................................................................................4
I.2.1. Définition ......................................................................................................4
I.2.2. Statistiques des objets connectés ....................................................................4
I.3. L’internet des objets (IoT : Internet of Things) .....................................................5
I.3.1. Définition ......................................................................................................5
I.3.2. Domaines d’applications de l’IoT ..................................................................6
I.4. Les habitats intelligents (la domotique) ................................................................6
I.4.1. La sécurité .....................................................................................................7
I.4.2. Cinéma maison ..............................................................................................8
I.4.3. Appareils électriques .....................................................................................8
I.4.4. Loisirs et jardin .............................................................................................8
I.4.5. Assistance à la vie quotidienne ......................................................................8
I.4.6. La santé .........................................................................................................8
I.5. Internet de Tout les objets (IoE) ...........................................................................9
I.5.1. Définition ......................................................................................................9
I.5.2. Les villes intelligentes (Smartes Citys) ........................................................ 10
IV
I.5.2.1. Définition............................................................................................. 10
I.6. Les avantages et les inconvénients d’IOT ........................................................... 10
I.6.1. Les avantages .............................................................................................. 10
I.6.2. Les inconvénients ........................................................................................ 10
I.7. Conclusion ......................................................................................................... 11
Chapitre II : Circuits de commande et protocoles ......................................................... 12
II.1. Introduction : .................................................................................................... 13
II.2. La carte Arduino :............................................................................................. 13
II.2.1. Définition : ................................................................................................. 13
II.2.2. Description technique :............................................................................... 13
II.2.2.1. Matériel (hardware) : .......................................................................... 13
II.2.2.1.1. Le microcontrôleur :..................................................................... 13
II.2.2.1.2. Alimentation et signaux d’entrée/sortie : ...................................... 14
II.2.2.1.3. Mémoire : .................................................................................... 14
II.2.2.2. Logiciel (Software) : ........................................................................... 15
II.2.3. Les types d’Arduino : ................................................................................. 15
II.2.4. La plate-forme NodeMCU (ESP8266) :...................................................... 16
II.2.4.1. Définition : ......................................................................................... 16
II.2.4.2. Description technique : ....................................................................... 16
II.3. Les protocoles de communication : ................................................................... 17
II.3.1. Introduction : ............................................................................................. 17
II.3.2. Définition : ................................................................................................. 17
II.3.3. Protocoles TCP, UDP et IP : ...................................................................... 18
II.3.4. Protocole HTTP : ....................................................................................... 19
II.3.4.1. La requête http : .................................................................................. 19
II.3.4.2. La repense : ........................................................................................ 20
II.3.5. Protocole MQTT : ...................................................................................... 20
II.3.5.1. Fonctionnement du MQTT : ............................................................. 21
V
II.3.6. Protocol XMPP : ........................................................................................ 21
II.3.6.1. L’architecture : ................................................................................... 22
II.3.6.2. Exemples des applications : ................................................................ 22
II.4. Conclusion : ..................................................................................................... 23
Chapitre III : Outils de développement ........................................................................ 24
III.1. Introduction..................................................................................................... 25
III.2. Partie 1 : Simulation d'un système de réception et de commande à distance ..... 25
III.2.1. Présentation du simulateur Packet Tracer de Cisco .................................... 25
III.2.2. Détection de mouvement et vidéo surveillance à distance.......................... 25
a) Configuration du récepteur distant : Le Smartphone ................................. 25
b) Configuration des capteurs : La caméra IP et le détecteur de mouvement . 26
III.2.3. Détection de fumée et déclenchement de l'arroseur et la sirène .................. 27
III.2.4. Système d'arrosage automatique de pelouse pour jardin ............................ 28
III.2.5. Contrôle à distance d’un smart home ........................................................ 29
III.3. Partie 2 : Réalisation d'un système de réception et de commande à distance .... 32
III.3.1. Introduction .............................................................................................. 32
III.3.2. Partie Hardware : ...................................................................................... 32
III.3.2.1. Capteur de gaz MQ2 .......................................................................... 32
III.3.2.2. Capteur Ultrason HC-SR04 ............................................................... 33
III.3.2.3. Le servomoteur.................................................................................. 34
III.3.2.4. Capteur température et d'humidité DHT11 ......................................... 35
III.3.2.5. Le Buzzer .......................................................................................... 35
III.3.3. Partie Software : ....................................................................................... 37
III.3.3.1. Le service web IFTTT ....................................................................... 37
III.3.3.2. Alerter à distance ............................................................................... 37
III.3.3.2.1. Recevoir un e-mail ...................................................................... 37
III.3.3.2.2. Recevoir un SMS ........................................................................ 38
III.3.3.5. Contrôler des objets à distance ........................................................... 39
VI
III.3.4. Réalisation de la Smart Home ................................................................... 42
III.3.4.1. Le montage globale ........................................................................... 44
III.3.4.2. Mise en marche du système ............................................................... 44
III.4. Conclusion ...................................................................................................... 46
Conclusion générale .................................................................................................... 47
Références ................................................................................................................... 49
Annexe 1 ..................................................................................................................... 51
Annexe 2 ..................................................................................................................... 53
Annexe 3 ..................................................................................................................... 59
Résumé ....................................................................................................................... 62
Mots clés ..................................................................................................................... 63
VII
Figure I. 1 : représentation de la relation entre le monde physique et le réseau informatique ...4
Figure I. 2 : statistique d'objets connectés dans le monde [7] ..................................................5
Figure I. 3 : comparaissant entre le monde avant et après l'internet des objets .........................6
Figure I. 4 : représentation d’un smart home ...........................................................................7
Figure I. 5 : représentation de l'Internet of Evrything ..............................................................9
Figure I. 6 : représentation de smart city ............................................................................... 10
Figure II. 1 : Description des entrées/sorties de la carte Arduino Uno ................................... 15
Figure II. 2 : Description des pines de la carte NodeMCU..................................................... 17
Figure II. 3 : L’architecture des protocoles OSI et TCP/IP .................................................... 18
Figure II. 4 : Représentation de protocole HTTP ................................................................... 19
Figure II. 5 : Représentation de fonctionnement de protocole MQTT .................................... 21
Figure III. 1 : les éléments pour système d'alarme ................................................................. 25
Figure III. 2 : Test de fonctionnement de système d'alarme ................................................... 26
Figure III. 3 : les éléments pour un système de détection de fumée ....................................... 27
Figure III. 4 : test de fonctionnement pour le système de détection de fumée ........................ 28
Figure III. 5 : les éléments pour un système d'arrosage.......................................................... 28
Figure III. 6 : test de fonctionnement du système d'arrosage ................................................. 29
Figure III. 7 : les éléments pour contrôle à distance d’un smart home ................................... 30
Figure III. 8 : les éléments du smart home après les configurations ....................................... 30
Figure III. 9 : liste des éléments du smart home dans le smartphone...................................... 31
Figure III. 10 : test de fonctionnement du smart home .......................................................... 32
Figure III. 11 : Capteur de gaz MQ2 ..................................................................................... 33
Figure III. 12 : Branchement du capteur MQ2 avec la carte de commande NodeMCU .......... 33
Figure III. 13 : capteur Ultrason ............................................................................................ 33
Figure III. 14 : Fonctionnement de capteur Ultrason ............................................................. 34
Figure III. 15 : Branchement du capteur Ultrason avec la carte de commande NodeMCU ..... 34
Figure III. 16 : Servomoteur ................................................................................................. 34
Figure III. 17 : Branchement du Servomoteur avec la carte de commande NodeMCU .......... 35
Figure III. 18 : Branchement du capteur DHT11 avec la carte de commande NodeMCU ...... 35
Figure III. 19 : Branchement du Buzzer avec la carte de commande NodeMCU ................... 36
Figure III. 20 : Représentation du fonctionnement d’IFTTT .................................................. 37
Figure III. 21 : Les étapes pour prendre la clé ....................................................................... 38
VIII
Figure III. 22 : La clé de Webhooks ...................................................................................... 38
Figure III. 23 : Liens entre les plates-formes ......................................................................... 39
Figure III. 24 : La clé de l'application ................................................................................... 40
Figure III. 25 : la dernière étape pour l'IFTTT ....................................................................... 40
Figure III. 26 : présentation de site Dashboard ...................................................................... 41
Figure III. 27 : La configuration entre les utilisable et les fonctions ...................................... 42
Figure III. 28 : Organigramme globale de système ................................................................ 43
Figure III. 29 : Représentation de montage globale par Fritzing ............................................ 44
Figure III. 30 : Image réelle de montage ............................................................................... 44
Figure III. 31 : présentation du recevoir des emails ............................................................... 45
Figure III. 32 : commande des capteurs à distance par Messenger ......................................... 45
Figure III. 33 : Représentation du commande de servomoteur et recevoir des SMS ............... 46
Tableau 1 : comparaison entre la carte Arduino Uno et NodeMCU ..................................... 16
IX
IoT : Internet of Things
IoE : Internet of Everything
IDE : Integrated Development Environment
ROM : Read-Only Memory
SRAM : Static Random Access Memory
EEPROM : Electrically-erasable programmable read-only memory
TCP : Transmission Control Protocol
IP : Internet Protocole
UDP : User Datagram Protocol
HTTP : Hyper Text Transfer Protocol
MQTT : Message Queuing Telemetry Transport
XMPP : Extensible Messaging and Presence Protocol
IFTTT : IF This Then That
Introduction générale
A l'apparition du réseau informatique et l'internet, son concept était liés aux ordinateurs
connectés seulement, après, les téléphones portables se sont développés et sont devenus
connectés eux aussi à l’internet, et ainsi les tablettes. Cependant actuellement, le concept des
réseaux et d’internet a été évasé pour englober toutes les choses et occupé tous les domaines.
L'internet des objets intègre les objets du quotidien dans un réseau qui assure l'échange de
données entre les éléments qui le composent, la communication et la coordination entre les
appareils fournit une plus grande commodité pour les utilisateurs.
L'Internet des objets (connu de nom IoT : Internet of Things) a trouvé sa diffusion
rapidement en raison des nombreux avantages et le confort qu’elle offre. Tel que ; l'amélioration
des services public comme le transport et les parkings, augmenter la sécurité humaine, la
surveillance et maintenance des lieux privés et publics, réduire le temps perdu et économiser
l'énergie consommée, etc. Son nom est associé beaucoup plus aux maisons et villes
intelligentes.
Dans ce travail, nous présentons une étude générale sur les objets connectés et la
réalisation d'un système de Smart Home (maison intelligente) basé sur l’internet des objets et
réalisé à base de la carte électronique NodeMCU (esp8266) qui possède un module Wifi. Le
système réalisé permet de restituer des données et de délivrer des commandes à distance via
internet. Une partie de simulation d'une maison intelligente avec objets connectés est également
effectuée par le logiciel Packet Tracer de Cisco.
Dans ce mémoire nous présentons dans le 1èr chapitre les objets connectés et leurs
domaines d'utilisation, avec un aperçu sur les maisons et les villes intelligentes. Le 2ème chapitre
présente le circuit de commande qui est basé sur la carte électronique NodeMCU qui fait partie
de la famille des cartes Arduino. Nous présentons ses caractéristiques ainsi que les protocoles
de communications utilisés. Dans le 3ème chapitre nous présentons la partie simulations de la
maison intelligente suivie par la partie réalisation de notre application qui est un Smart Home
contrôler via internet en utilisant des sites populaires tels que Gmail et Messenger de Facebook
pour recevoir les notifications en cas d’alerte et pour commander les objets de la maison à
distance. Enfin, nous terminons ce mémoire avec une conclusion générale qui résume l’intérêt
de notre étude, les remarques et les résultats obtenus, ainsi que les difficultés rencontrées dans
l’expérimentation et tout en traçant des perspectives pour l’amélioration de l’application au
future.
Chapitre I Les objets connectés
4
I.1. Introduction :
Un Système embarqué est un système autonome, généralement fortement connecté. Ces
systèmes offrent des services qui nous facilitent la vie et parfois nous la sauvent. Ils existent
dans la maison intelligente, la défense, le contrôle de processus industriel, le transport, les
infrastructures critiques tel que le nucléaire ou l’énergie, les loisirs, smartphones, drones, robots
jouets, systèmes d’aide à la conduite automobile, cœur artificiel, dispositifs de surveillance à
distance du domicile ...etc.
Un système embarqué est destiné pour réaliser une tâche bien précise, fonctionne très
souvent en temps réel et intègre des éléments matériel et logiciel, il est intégré au dispositif
physique dont il assure le contrôle et dont il partage les contraintes d'environnement, pour cela,
il devra satisfaire des objectifs de fiabilité, robustesse et sécurité, ainsi qu’un ensemble de
contraintes réglementaires [1]. Avec l'avancée technologique rapide dans le domaine de
l'électronique et l'informatique embarquée, les objets connectés sont devenus très utilisés dans
divers domaines. Ces derniers sont présentés dans la section suivante.
I.2. Les objets connectés
I.2.1. Définition
Un objet connecté est un objet physique équipé de capteurs ou d’une puce qui lui
permettent d'assurer une tache précise. Il s’agit d’un matériel électronique capable de
communiquer avec un ordinateur, un Smartphone ou une tablette, etc., via un réseau sans fil qui
le relie à Internet ou à un réseau local [2]. Les objets connectés produisent de grandes quantités
de données dont le stockage et le traitement entrent dans le cadre de ce que l'on appelle les Big
data. [3]
Figure I. 1 : représentation de la relation entre le monde physique et le réseau informatique
I.2.2. Statistiques des objets connectés
‒ Environ plus de 1.5 milliard d’appareils connectés sont utilisés dans les ‘Smart City’ en
2017.
Chapitre I Les objets connectés
5
‒ 8,4 milliards d’objets connectés à Internet, un chiffre en hausse de 31 % en un an
‒ 35 milliards d’appareils seront connectés de manière globale d’ici 2020
‒ 2 voitures sur 5 dans le monde auront une forme de connexion au réseau sans fil d’ici 2020
[4]
Figure I. 2 : statistique d'objets connectés dans le monde
I.3. L’internet des objets (IoT : Internet of Things)
I.3.1. Définition
L'Internet des objets ou IoT (Internet of Things en anglais), est un scénario dans lequel
les objets, les animaux et les personnes se voient attribuer des identifiants uniques, ainsi que la
capacité de transférer des données sur un réseau sans la nécessité d'aucune interaction humain-
à-humain ou humain-à-machine.
Dans l'IoT, un « objet » peut être une personne équipée par exemple d'un pacemaker
(stimulateur cardiaque), un animal de ferme qui porte une puce (transpondeur), une voiture qui
embarque des capteurs pour alerter le conducteur lorsque la pression des pneumatiques est trop
faible, ou encore tout objet naturel ou fabriqué par l'être humain auquel peuvent être attribuées
une adresse IP et la capacité de transférer des données sur un réseau. [5] [6]
Chapitre I Les objets connectés
6
Figure I. 3 : comparaissant entre le monde avant et après l'internet des objets
L’Internet des Objets est un réseau de réseaux qui permet, via des systèmes
d’identification électronique normalisés et unifiés, et des dispositifs mobiles sans fil,
d’identifier directement des entités numériques et des objets physiques et de pouvoir récupérer,
stocker, transférer et traiter les données s’y rattachant sans discontinuité entre le monde
physique et virtuel [7].
I.3.2. Domaines d’applications de l’IoT
a) Ville intelligente : circulation routière intelligente, transports intelligents, collecte des
déchets, cartographies diverses (bruit, énergie, etc.).
b) Environnements intelligents : prédiction des séismes, détection d’incendies, qualité de
l’air, etc. La technologie IoT permet aux usines d'améliorer l'efficacité de ses opérations,
d'optimiser la production et d'améliorer la sécurité des employés, etc.
c) Sécurité et gestion des urgences : radiations, attentats, explosions.
d) Contrôle industriel : mesure, pronostic et prédiction des pannes, dépannage à distance.
e) Santé :
‒ Les hôpitaux utilisent l'analyse de données distantes pour déterminer les patients qui
sont les plus à risque afin de pouvoir réagir plus rapidement aux événements mettant
leur vie en danger.
‒ À l'aide des solutions d'intelligence artificielle, de l'apprentissage automatique et des
systèmes de raisonnement, l'analyse prédictive étudie les données historiques afin de
créer des idées pour l'avenir.
f) Agriculture intelligente, domotique, applications ludiques etc. [7] [8]
I.4. Les habitats intelligents (la domotique)
La domotique est l’ensemble des techniques de l’électronique, de physique du bâtiment,
d’automatisme, de l’informatique et des télécommunications utilisées dans les bâtiments et
Chapitre I Les objets connectés
7
permettant de centraliser le contrôle des différents systèmes de la maison et de l’entreprise
(chauffage, volets roulants, porte de garage, portail d’entrée, prises électriques, etc.).
La domotique vise à apporter des solutions techniques pour répondre aux besoins de
confort (gestion d’énergie, optimisation de l’éclairage et du chauffage), de sécurité (alarme) et
de communication (commandes à distance, signaux visuels ou sonores, etc.) que l’on peut
retrouver dans les maisons, les hôtels, les lieux publics, etc. [9]
Figure I. 4 : représentation d’un smart home I.4.1. La sécurité
Lorsqu' on quitte son domicile on souhaite qu’elle reste surveillée afin d'éviter les
intrusions, les tentatives de violations, intempéries en plus de l'incendie, l'inondation, la fuite
de gaz, etc. dans la domotique plusieurs types capteurs sont utilisés pour détecter : des
mouvements, des inondations, le bris de verre, les vibrations, l'ouverture de porte et fenêtre, la
fumée et le feu, l’humidité, la tempête, etc. Une autre forme de sécurité de la maison est le fait
d'être capable d’agir sur sa maison à distance. Il va ainsi être possible de bloquer ou libérer les
serrures à distance et on peut être alerté en cas de détection de problèmes de défaillance. Pour
cela, de nombreux systèmes sont envisageables :
Une caméra vidéo et un code personnel pour contrôler et faciliter les entrées.
Des détecteurs de présence qui, à l'approche d'un intrus, vont mettre en mouvement les
fermetures de la maison et/ou simuler une présence (en allumant une lumière, par
exemple).
Un « bip » d’ouverture automatique de la porte et éventuellement l'ouverture au moyen
d’une carte magnétique ou d’un dispositif de reconnaissance vocale.
Chapitre I Les objets connectés
8
En cas de tentative d’intrusion, une synthèse vocale et un système de lumières peuvent
être déclenchés ; un appel téléphonique automatique peut contacter alors le propriétaire
et/ou une entreprise de sécurité.
Et il existe d'autres systèmes tels que le tapis contact, les radars de détection, etc.
I.4.2. Cinéma maison
La diffusion d’information permet, par l’intermédiaire d’un réseau domestique relié à
Internet, d’accéder à différentes informations par tous les supports vidéo de la maison
(télévision, écrans, téléphone portable…).
I.4.3. Appareils électriques
La domotique permet à partir d'une seule commande de mettre en route ou éteindre les
éclairages et le chauffage, de gérer l’ouverture ou la fermeture partielle ou totale des volets
roulants, d'activer ou désactiver les systèmes d'alarme et aussi des appareils électroménagers
tels que les machines à laver, etc.
I.4.4. Loisirs et jardin
La domotique peut permettre la gestion et le contrôle d'arrosage via Internet.
I.4.5. Assistance à la vie quotidienne
Des robots d'assistance à la vie quotidienne ou à des malades ou handicapés sont à l'étude
dans de nombreux laboratoires de recherche. Ces robots domestiques prennent parfois forme
humaine et peuvent se déplacer en évitant tous les obstacles. Ils disposent généralement de
dispositifs de sécurité leur retirant toute force mécanique dès qu’ils entrent en contact avec une
personne par exemple.
Des chercheurs travaillent pour permettre au robot d'acquérir les mêmes possibilités
d'apprentissage que les humains. Quelques robots d'assistance à domicile sont déjà
commercialisés, tel Akamaru, lancé en 2005 par Mitsubishi Heavy Industries, qui peut remplir
plusieurs services, comme rappeler un rendez-vous important, se connecter à Internet par le Wi-
Fi pour aller y chercher de l'information et la retransmettre grâce à sa voix ou surveiller la
maison.
La domotique pourrait permettre divers usage telle que : ménage ; cuisine intelligente ;
Mail/Messagerie instantanée relié au système central ; système de surveillance synchronisé ;
guide de visiteurs, etc.
I.4.6. La santé
Cette application de la domotique est essentiellement prévue pour le suivi des personnes
fragiles (Personnes âgées, Handicap lourd, Malentendants ou sourds…). On peut imaginer
Chapitre I Les objets connectés
9
qu’un équipement installé sur une personne ou dans son domicile contrôle un certain nombre
de paramètres comme : son rythme cardiaque, sa température corporelle, son taux de glycémie,
la qualité de l’air et on peut également imaginer un capteur sensoriel qui permet de détecter la
perte de connaissance. En fonction des résultats, il va être possible de remonter des alertes vers
des organismes compétents : services d’urgence ou les proches. [10] [11]
I.5. Internet de Tout les objets (IoE)
I.5.1. Définition
L’Internet des Objets (Internet of Things), se résume à tous ces produits dits connectés,
et suivis par des applications mobiles : montres, bracelets, brosses à dent, réfrigérateurs, etc.
L’Internet of Everything (L’internet de Tout) signifie qu’il va bien au-delà des «Things »
(objets connectés). Il s’agit en fait d’une expression inventée et promue par un rapport de Cisco,
un des leaders mondiaux en infrastructure réseau. L’Internet of Everything (IoE) comprend non
seulement l’Internet des Objets, mais également les données, les processus et les gens,
etc. (via leurs smartphones et leurs réseaux sociaux). Elle repose sur la collecte des informations
que nous partagerons individuellement et collectivement. Cette collecte sera organisée par des
sociétés privées capables de traiter des Big Data, et chargées d’en retirer des bénéfices, en les
revendant soit à des agences publicitaires ou marketing, soit aux organismes publics soucieux
d’optimiser leurs services et territoires, soit aux sociétés privées d’intérêt public (transports,
énergie, travaux, gestion des déchets, etc.) [12]
Figure I. 5 : représentation de l'Internet of Everything
Chapitre I Les objets connectés
10
I.5.2. Les villes intelligentes (Smartes Citys)
I.5.2.1. Définition
La ville intelligente désigne une ville utilisant les technologies de l'information et de la
communication et divers dispositifs physiques connectés au réseau (l'Internet des objets ou
IOT) pour optimiser l'efficacité des opérations et des services urbains et se connecter aux
citoyens afin d'améliorer la qualité des services urbains [11].
Figure I. 6 : représentation de smart city I.6. Les avantages et les inconvénients d’IOT
I.6.1. Les avantages
Les avantages des IoT sont nombreux, en plus de ce qui a été cité ci-dessus nous pouvons
ajouter les avantages suivants :
Améliorer les services traditionnels généraux comme le transport et les parkings
La surveillance et maintenance des lieux publics
Suivi le taux de la validité des instructions pour le travail
Réduire le temps perdu dans les transactions administratives dans la ville.
L’organisation et l’amélioration de la qualité d’Airlines
Economiser la consommation de l’énergie dans la ville
L’éclairage intelligent pour la ville ...etc.
I.6.2. Les inconvénients
La protection des données, la vie privée et la sécurité sont souvent les principales
inquiétudes des sceptiques de l'IOT. Pour calmer ces inquiétudes, il serait utile de
donner aux clients les informations relatives au lieu de stockage et à la nature des
données qui les concernent. [13]
Les objets connectés sont coûteux.
Chapitre I Les objets connectés
11
I.7. Conclusion
Dans ce chapitre nous avons présenté l’internet des objets qui est un nouveau concept
pour notre façon de vivre et la gestion de nos affaires avec l’utilisation de l’internet. Avec l'IoT,
des objets, des animaux et des personnes sont connectés via un réseau afin d'assurer une
meilleure gestion et contrôle et un meilleur confort et sécurité.
Chapitre II Circuits de commande et protocoles
13
II.1. Introduction :
Dans ce chapitre nous présentons le circuit de commande que nous avons conçu afin
de restituer des informations à partir de capteurs distants et contrôler certains dispositifs, ce
circuit est basé sur une carte Arduino de type NodeMCU (ESP8266). Nous présentons
également les protocoles de communication utilisés dans ce travail.
II.2. La carte Arduino :
II.2.1. Définition :
Arduino est une plate-forme open-source utilisée pour la construction de projets
électroniques. Arduino se compose à la fois d'une carte de circuit programmable physique
(souvent appelée microcontrôleur) et d'un logiciel, ou IDE (Integrated Development
Environment) utilisé pour écrire et télécharger du code informatique sur la carte physique.
II.2.2. Description technique :
II.2.2.1. Matériel (hardware) :
Une plateforme Arduino est généralement construite autour d'un microcontrôleur
Atmel AVR (ATmega328 ou ATmega2560 pour les versions récentes, ATmega168 ou
ATmega8 pour les plus anciennes), et de composants complémentaires qui facilitent la
programmation et l'interfaçage avec d'autres circuits. Le microcontrôleur est préprogrammé
avec un boot-loader de façon à ce qu'un programmateur dédié ne soit pas nécessaire.
Arduino utilise des entrées/sorties pour l'interfaçage avec les autres circuits. Le
modèle Diecimila par exemple, possède 14 entrées/sorties numériques, dont 6 peuvent
produire des signaux PWM, et 6 entrées analogiques. Les connexions sont établies à travers
de connecteurs situés sur le dessus de la carte, les modules d'extension venant s'empiler sur
l'Arduino [14]. Les modules sont généralement programmés via une connexion série RS-
232.
II.2.2.1.1. Le microcontrôleur :
Un microcontrôleur est une puce (ou circuit) électronique rassemblant un
microprocesseur, une mémoire ROM pour stocker un programme, une mémoire vive pour
stocker des états de variables et d'une interface d’entrées/sorties. Sa fréquence est de
quelques MHz et sa consommation électrique et ses dimensions sont plus faibles que pour
un ordinateur et n'a pas besoin d'aucun système d’exploitation pour le faire fonctionner, on
lui charge un programme et celui-ci s’exécute seul [15].
Chapitre II Circuits de commande et protocoles
14
II.2.2.1.2. Alimentation et signaux d’entrée/sortie :
L’Arduino peut fonctionner avec une source de tension continue allant de 6 à 20 Volt
(entre 7 et 12 recommandé) ou en USB, que l’on peut classer en deux catégories, les filaires
(via un câble USB) et les autonomes (via une pile 9v).
Le Nombre des entrées/sorties disponibles est différent selon la carte, par exemple
dans la carte Arduino UNO possède 14 Entrées/Sorties, dont 6 pouvant produire du PWM.
La particularité de ces broches est que nous pouvons les configurer (via le programme)
comme étant des entrées ou des sorties. Les 6 broches pouvant produire du PWM signifie
que parmi ces 14 broches, 6 sont capables de générer une sortie analogique. La carte Arduino
UNO dispose également six entrées analogiques [15]. La tension des entrées analogiques est
comprise entre 0 et 5V et les sorties analogiques peuvent admettre des valeurs (entre 0 et
1024 exactement) analogiques comprises entre 0 et 5 Volts. Les connecteurs d'entrées/sorties
ne peuvent pas fournir en sortie un courant supérieur à 40 mA. Le signe tilde (~) sur les
connecteurs 3, 5, 6, 9 10 et 11 signifie que ces broches possèdent la fonction PWM [16].
II.2.2.1.3. Mémoire :
Les trois types de mémoires qui existent dans une carte Arduino Uno à
base ATmega328 sont :
‒ La mémoire FLASH : Sert à stocker les programmes à exécuter. Elle est de 32 kilos
(d’où la référence 32..8 ) pour l’atmega 328.
‒ La mémoire SRAM (Static Random Access Memory) : Sert à stocker des données
temporaires (les variables de programme par exemple). Elle est de taille de 2kilos
(Arduino Uno).
‒ La mémoire EEPROM : (Electrically-Erasable Programmable Read-Only Memory ou
mémoire morte effaçable électriquement et programmable) : Elle permet le stockage par
le programme et les données permanentes. Sa taille dans un circuit Atmega 328 est de 1
kilooctet.
Chapitre II Circuits de commande et protocoles
15
Figure II. 1 : Description des entrées/sorties de la carte Arduino Uno
II.2.2.2. Logiciel (Software) :
Le logiciel de programmation des modules Arduino est une
application Java, libre et multiplateformes, il fonctionne sur Mac, Windows et Linux et
servant d'éditeur de code et de compilateur, et qui peut transférer le firmware et le
programme au travers de la liaison série (RS-232, Bluetooth ou USB selon le module).
Le langage de programmation utilisé est le C++ et il est lié à la bibliothèque de
développement Arduino [14].
Il est possible de programmer le comportement de la carte Arduino de deux manières
différentes : en programmation script (en langage C) ou en programmation par blocs [17].
II.2.3. Les types d’Arduino :
Il existe plusieurs types de cartes Arduino, nous citons par exemples :
‒ Arduino UNO
‒ Arduino pro
‒ Seeeduino
‒ Arduino mega2560
‒ Duinomite-mega
‒ Arduino Mini Pro
‒ Arduino Nano
‒ Arduino Yun
‒ Arduino Wifi Shield
‒ Arduino UNO Wifi
Ces cartes sont présentées en figures dans l'annexe 2.
Chapitre II Circuits de commande et protocoles
16
II.2.4. La plate-forme NodeMCU (ESP8266) :
II.2.4.1. Définition :
L'ESP8266 est le nom d'un microprocesseur conçu par Espressif Systems qui est une
société chinoise basée à Shanghai. Il est considéré comme étant une solution de réseau wifi
autonome et comme un pont entre les microprocesseurs existants et le wifi afin de gérer des
applications autonomes [18]. Un bref historique de ce microprocesseur est présenté à
l'annexe 2 de ce mémoire.
II.2.4.2. Description technique :
Les spécifications principales de l'ESP8266 sont : Protocole 802.11 b/g/n ; Wi-Fi direct
(P2P)1, soft-AP ; une pile de protocole TCP/IP intégrée ; processeur 32 bits intégré de faible
puissance [19]. Le tableau ci-dessous montre une comparaison entre une carte Arduino UNO
R3 et une carte NodeMCU.
Arduino UNO R3 NodeMCU
Power 5V 3.3V
fréquence 16MHz 80MHz
Microcontrôleur ATmega328 ESP8266
Flash Memory 32KB 4MB
SRAM 2kB 64KB / 96KB DRAM
EEPROM 1KB Non, utiliser Flash
External Power Port Oui Non
USB Oui Oui
Pins 32 22
GPIO 14 16 (11 Digital I/O)
Analog I/O 6 1
PWM 6 9
Wifi Non Oui
SPI / I2C Oui Oui
Tableau 1 : comparaison entre la carte Arduino Uno et NodeMCU
1 P2P : Raccourci pour des gens aux gens (en anglais : people to people)
Chapitre II Circuits de commande et protocoles
17
Figure II. 2 : Description des pines de la carte NodeMCU
Dans ce travail nous avons utilisé des protocoles de communication afin de restituer à
distance des données et délivrer à distance également des commandes. Dans la section
suivante nous présentons les protocoles de communication les plus importants.
II.3. Les protocoles de communication :
II.3.1. Introduction :
L'Internet comprend aujourd'hui des milliards de connexions et d'échanges qui en font
un outil puissant pour le partage de l'information. Internet est devenu le moteur de profondes
transformations dans la vie des entreprises, des individus et des institutions. La perspective
est celle d'un monde de connexion encore plus dense, entre les hommes mais aussi avec les
objets [20]. Pour le bon fonctionnement de tout cela, des règles (ou protocoles) sont utilisées
pour réussir une communication fiable entre les différents composants d'un réseau de
communication.
II.3.2. Définition :
Un protocole est une méthode standard qui permet la communication entre des
processus (s'exécutant éventuellement sur différentes machines). C'est un ensemble de règles
et de procédures à respecter pour émettre et recevoir des données sur un réseau. Il en existe
plusieurs selon ce que l'on attend de la communication. Certains protocoles seront par
exemple spécialisés dans l'échange de fichiers, d'autres pourront servir à gérer simplement
l'état de la transmission et des erreurs, etc. [21]
Chapitre II Circuits de commande et protocoles
18
II.3.3. Protocoles TCP, UDP et IP :
TCP/IP désigne communément une architecture réseau, mais cet acronyme désigne en
fait 2 protocoles étroitement liés : un protocole de transport, TCP (Transmission Control
Protocol) et un protocole réseau, IP (Internet Protocol). Ce qu’on entend par « modèle
TCP/IP », c’est en fait une architecture réseau en 4 couches (figure II.3) dans laquelle les
protocoles TCP et IP jouent un rôle prédominant, car ils en constituent l’implémentation la
plus courante. Par abus de langage, TCP/IP peut donc désigner deux choses : le modèle
TCP/IP et la suite de deux protocoles TCP et IP. Dans ce qui suit nous présentons les
protocoles TCP et IP et non pas le modèle de référence qui est décrit à l'annexe 2 de ce
mémoire.
Figure II. 3 : L’architecture des protocoles OSI et TCP/IP
Entant que protocole, TCP fait partie de la couche transport des deux modèles (de
référence et OSI). En effet cette couche comprend les deux protocoles : TCP (Transmission
Control Protocol) et le protocole UDP (User Datagram Protocol). Le TCP est un protocole
fiable, orienté connexion, qui permet l’acheminement sans erreur de paquets issus d’une
machine à une autre machine. Son rôle est de fragmenter le message à transmettre de manière
à pouvoir le faire passer sur la couche internet. A l’inverse, sur la machine destination, TCP
replace dans l’ordre les fragments transmis sur la couche internet pour reconstruire le
message initial. Le protocole TCP s’occupe également du contrôle de flux de la connexion.
Le protocole UDP est en revanche un protocole plus simple que TCP : il est non fiable
et sans connexion. Son utilisation présuppose que l’on n’a pas besoin ni du contrôle de flux,
ni de la conservation de l’ordre de remise des paquets. Par exemple, on l’utilise lorsque la
couche application se charge de la remise en ordre des messages. Dans le modèle OSI,
Chapitre II Circuits de commande et protocoles
19
plusieurs couches ont à charge la vérification de l’ordre de remise des messages. Une autre
utilisation d’UDP : la transmission de la voix. De manière plus générale, UDP intervient
lorsque le temps de remise des paquets est prédominant.
Concernant le protocole IP (appelé également Protocole inter-réseau) il est
responsable de la récupération des segments formatés à partir du protocole TCP, de leur
encapsulation en paquets, de l’affectation des adresses appropriées et de la sélection du
meilleur chemin vers l’hôte de destination.
II.3.4. Protocole HTTP :
Le protocole HTTP (Hyper Text Transfer Protocol) est le protocole le plus utilisé sur
Internet. La version 0.9 était uniquement destinée à transférer des données sur Internet (en
particulier des pages Web écrites en HTML. La version 1.0 du protocole permet désormais
de transférer des messages avec des en-têtes décrivant le contenu du message.
Le but du protocole HTTP est de permettre un transfert de fichiers (essentiellement au
format HTML) localisés grâce à une chaîne de caractères appelée URL (Uniform Resource
Locator, 'localisateur uniforme de ressource') entre un navigateur (le client) et un serveur
Web.
Figure II.4 : Représentation de protocole HTTP
II.3.4.1. La requête http :
Une requête HTTP est un ensemble de lignes envoyé au serveur par le navigateur. Elle
comprend :
‒ Une ligne de requête : Précisant le type de document demandé, la méthode qui doit être
appliquée, et la version du protocole utilisée. Elle comprend trois éléments séparés par
un espace : la méthode ; l’URL ; la version du protocole utilisé par le client
(généralement HTTP/1.0).
‒ Les champs d'en-tête de la requête : Un ensemble de lignes facultatives permettant de
donner des informations supplémentaires sur la requête et/ou le client (Navigateur,
Chapitre II Circuits de commande et protocoles
20
système d'exploitation, ...). Chacune de ces lignes est composée d'un nom qualifiant le
type d'en tête, suivi de deux points (:) et de la valeur de l'en-tête.
‒ Le corps de la requête : Ensemble de lignes optionnelles devant être séparées des lignes
précédentes par une ligne vide et permettant par exemple un envoi de données par une
commande POST lors de l'envoi de données au serveur par un formulaire.
II.3.4.2. La repense :
Une réponse HTTP est un ensemble de lignes envoyées au navigateur par le serveur.
Elle comprend :
‒ Une ligne de statut : Précisant la version du protocole utilisé et l'état du traitement de
la requête à l'aide d'un code et d'un texte explicatif. Elle comprend trois éléments devant
être séparés par un espace : la version du protocole utilisé ; le code de statut ; la
signification du code
‒ Les champs d'en-tête de la réponse : Ensemble de lignes facultatives permettant de
donner des informations supplémentaires sur la réponse et/ou le serveur. Chacune de ces
lignes est composée d'un nom qualifiant le type d'en tête, suivi de deux points (:) et de la
valeur de l'en-tête.
‒ Le corps de la réponse : il contient le document demandé. [22]
II.3.5. Protocole MQTT :
MQTT (Message Queuing Telemetry Transport) est un protocole de connectivité
(machine-to-machine (M2M) / "Internet of Things") basé sur le protocole TCP/IP. Il a été
conçu comme un transport de messagerie de publication. Il est utile pour les connexions avec
des emplacements distants où une empreinte de code réduite est requise et/ou si la bande
passante du réseau est prioritaire.
MQTT est efficace pour les applications mobiles en raison de sa petite taille, de sa
faible consommation d'énergie, de la réduction des paquets de données et de la distribution
efficace des informations à un ou plusieurs récepteurs.
Il est devenu très utilisé surtout avec la croissance exponentielle de l'Internet des
objets, et la nécessité de se connecter et de communiquer entre les appareils intelligents de
faible puissance. MQTT a été conçu pour être un protocole à faible surcharge qui tenait
compte de la bande passante et des limitations du processeur. Il a été conçu avec la capacité
de fonctionner dans un environnement intégré où il constituerait une voie de communication
fiable et efficace. [23]
Chapitre II Circuits de commande et protocoles
21
II.3.5.1. Fonctionnement du MQTT :
MQTT offre un mécanisme de messagerie Souscription/Publication très léger. Il est
très utile pour se connecter aux sites distants, sur lesquels l'empreinte hardware est très
légère. MQTT utilise le principe de "Publisher/Subscriber" pour connecter les systèmes entre
eux. Il assure ce fonctionnement en segmentant totalement l'émetteur (Publisher) du
récepteur (Subscriber). L'émetteur transmet un message à un système central (appelé aussi
Broker MQTT) auquel s'abonne tous les systèmes souhaitant récupérer des données
provenant des émetteurs (figure II.5). Les Publishers et Subscribers sont totalement
autonomes, ils n'ont pas besoin de s'identifier respectivement pour échanger des données.
[24] [25]
Figure II. 5 : Représentation de fonctionnement de protocole MQTT
Plusieurs applications utilisent actuellement le MQTT tel que : Facebook Messenger
et les dernières versions du système de contrôle de signalisation d’IECC (Integrated
Electronic Control Centre).
II.3.6. Protocol XMPP :
XMPP (eXtensible Messaging and Presence Protocol, protocole extensible de
présence et de messagerie), est un ensemble de protocoles standards ouverts de l’Internet
Engineering Task Force (IETF) pour la messagerie instantanée, et plus généralement une
architecture décentralisée d’échange de données. XMPP est également un système de
collaboration en quasi-temps-réel et d’échange multimédia par son extension Jingle, dont
la voix sur réseau IP (téléphonie sur Internet), la visioconférence et l’échange de fichiers
sont des exemples d’applications.
XMPP est constitué d'un protocole TCP/IP basé sur une architecture client-
serveur permettant les échanges décentralisés de messages instantanés ou non, entre clients,
Chapitre II Circuits de commande et protocoles
22
au format Extensible Markup Langage (XML). XMPP est en développement constant et
ouvert. [24]
II.3.6.1. L’architecture :
XMPP fonctionne sur une architecture client/serveur. De ce fait, toutes les données
envoyées d'un client à un autre passent nécessairement par un serveur Jabber (serveur de
communication). Le client établit une connexion TCP avec le serveur en utilisant le port.
La connexion ainsi établie perdure durant toute la durée de la communication, ce qui
évite au client de demander confirmation au serveur de la réception des messages.
Si le client est toujours connecté : Tous les messages destinés au client en question
lui sont directement adressés.
Si le client n'est plus connecté : Le serveur mémorise les messages qui lui sont
adressés afin de pouvoir les lui transmettre lors de la prochaine connexion
‒ Les clients Jabber : Dans une architecture Jabber, le client n'a que très peu de
restrictions. En effet, un client Jabber est simple à mettre en œuvre. Il doit simplement
être capable :
D'établir une connexion TCP avec un serveur XMPP
D'analyser les messages XML qu'il reçoit afin de pouvoir les interpréter
Supporter les types de données de bases de XMPP, tel que la présence par exemple.
‒ Les serveurs Jabber : La flexibilité est une composante cruciale du protocole XMPP.
Ainsi, sur un serveur Jabber, les administrateurs ont la possibilité d'ajouter des
fonctionnalités au serveur d'origine. Dans le cas d'ajout de tels composants, la simplicité
du serveur en lui-même n'est pas affectée. [26] [6]
II.3.6.2. Exemples des applications :
Le Jabber un serveur libre permettant aux logiciels clients de se connecter pour
discuter. Ce serveur permet soit de créer un réseau Jabber privé (derrière un pare-feu), soit
de rejoindre d’autres serveurs publics fédérés sur Internet, pour dialoguer en ligne avec ses
correspondants. De très nombreuses applications Jabber peuvent être créées :
‒ Messagerie instantanée et présence
‒ Notifications
‒ Diffusion par push
‒ Transferts de fichiers
‒ Travail collaboratif en temps-réel
‒ Echange de données
‒ Jeux en ligne
Chapitre II Circuits de commande et protocoles
23
Grâce à Jingle, extension multimédia de XMPP, il est possible d’étendre les flux à tout
contenu binaire : téléphonie sur Internet, visioconférence, etc. [27]
II.4. Conclusion :
La communication par internet a besoin de certains matériels et de protocoles. En IoT
les protocoles les plus utilisés sont HTTP et MQTT et pour réaliser un système d’objets
connectés nous avons besoin de circuit pour communiquer va internet. Dans ce chapitre nous
avons présentés des exemples de circuits qui peuvent communiquer sans fil et plus
particulièrement nous avons présenté la carte NodeMCU (esp8266) que nous avons utilisé
dans notre réalisation pratique. Dans le prochain chapitre nous présentons en détail le
système réalisé avec les différents composants matériels et logiciels.
24
Chapitre III Outils de développement
25
III.1. Introduction
Dans ce travail nous avons réalisé un système de réception de données à distance via
internet et délivrer des commandes également à distance via internet. La réalisation de ce travail
a demandé la lecture et la maitrise de plusieurs notions et protocoles liés aux concepts de
communication et de contrôle à distance via internet et la domotique. Dans ce chapitre nous
présentons la partie réalisation ainsi que la partie simulation effectuée par le logiciel Packet
Tracer de Cisco. La réalisation pratique est effectuée en utilisant une carte électronique de type
« NodeMCU, ESP8266».
III.2. Partie 1 : Simulation d'un système de réception et de commande à distance
III.2.1. Présentation du simulateur Packet Tracer de Cisco
Un bref aperçu du simulateur Packet Tracer est présenté dans l'annexe 3 de ce mémoire.
III.2.2. Détection de mouvement et vidéo surveillance à distance
Dans cette partie nous simulant un système d’alarme domestique qui détecte un
mouvement et qui déclenche automatiquement le fonctionnement de la caméra IP (webcam)
qui transmet les images en temps réel au Smartphone pour informer le propriétaire de la
personne intruse. Pour cela nous avons besoin des éléments suivants : Détecteur de Mouvement,
Caméra IP (Webcam), Smartphone et Passerelle Maison (Home Gateway) (figure III.1).
a) Configuration du récepteur distant : Le Smartphone
Pour configurer le Smartphone nous avons suivi les étapes suivant :
‒ Cliquez sur ‘Home Gateway’ puis sur ‘Config’ puis ensuite sur ‘Wireless’.
‒ Copier le ‘SSID’ et fermer la fenêtre puis cliquez sur ‘Smartphone’ puis ‘Config’.
‒ On peut changer le nom de Smartphone, cependant il est nécessaire de choisir le
mode d’adressage en DHCP.
Figure III. 1 : les éléments pour système d'alarme
Chapitre III Outils de développement
26
‒ Cliquez sur ‘wireless0’ et collez le SSID du ‘Home Gateway’ et fermez la fenêtre.
b) Configuration des capteurs : La caméra IP et le détecteur de mouvement
Pour ces deux capteurs les étapes de configuration sont mêmes :
‒ Cliquez sur ‘Webcam’ (ou ‘Motion Detector’) et encore sur ‘Config’.
‒ On peut changer le nom du Webcam et confirmée que le mode d’adressage en
‘DHCP’ et IoT server en ‘Home Gateway’ puis cliquez sur ‘Advanced’ et sur ‘I/O
Config’ et dans la fenêtre qui apparaît changez le Network Adapter au ‘PT-IOT-
NM-1W’ et fermer la fenêtre.
‒ Cliquez sur le Smartphone et puis sur ‘Desktop’ et encore sur ‘IoT Monitor’.
‒ Dans la fenêtre qui apparaît cliquez sur ‘login’ ensuit sur Conditions.
‒ Donner un nom à l’action qui ouvre la Webcam puis mettre la condition ‘IF’ « if
‘Motion detector’ ‘on’ is ‘true’ then ‘Webcam’ ‘on’ to ‘true’ » comme montré dans
la figure et puis cliquez sur OK.
‒ Cliquez sur ‘Add’ et ajoutez la condition pour éteindre la Webcam : « if ‘Motion
detector’ ‘on’ is ‘false’ then ‘Webcam’ ‘on’ to ‘false’ » et puis cliquez sur OK.
Test de fonctionnement : Pour vérifier la présence d'un mouvement, cliquez sur ‘Home’,
si c'est le cas, la couleur du point rouge devient vert et une image apparaît sur la ‘Webcam’
(figure III.2). Appuyez sur le bouton ‘Alt’ du clavier et déplacez la souris sur le détecteur de
mouvement afin de simuler un mouvement.
Figure III.2 : Test de fonctionnement de système d'alarme
Chapitre III Outils de développement
27
III.2.3. Détection de fumée et déclenchement de l'arroseur et la sirène
Dans cette partie nous simulons un système de détection d’incendie avec une action de
déclenchement automatique de la sirène et de l'arroseur afin d'éteindre la fumée avec contrôle
à distance du système. Pour cela nous utilisons les éléments suivants : détecteur de fumée,
Passerelle maison, arroseur et une sirène et un Smartphone (figure III.3).
Figure III. 3 : les éléments pour un système de détection de fumée
La configuration de la sirène, le détecteur de fumée et l'arroseur est pratiquement
identique de celle de la ‘Webcam’ présentée ci-dessus. De même, la configuration de
‘Smartphone’ est la même, la différence réside seulement aux 'conditions'. Afin de lier le
détecteur de fumée avec la sirène et l’arroseur nous avons utilisé les conditions suivantes :
‒ Déclenchement de la sirène: IF ‘Smoke Detector’ ‘Level’>=0.15 then ‘siren’ ‘on’
to ‘true’.
‒ Arret de sirène: IF ‘Smoke Detector’ ‘Level’ < 0.15 then ‘siren’ ‘on’ to ‘false’.
‒ Déclenchement de l’arroseur: IF ‘Smoke Detector’ ‘Level’ >= 0.17 then ‘sprinkler’
‘on’ to ‘true’.
‒ Arret de l'arroseur: IF ‘Smoke Detector’ ‘Level’ < 0.17 then ‘sprinkler’ ‘on’ to
‘false’.
Test de fonctionnement : Pour vérifier le bon fonctionnement de notre système, nous
avons ajouté un élément 'car' (véhicule) proche du détecteur afin de simuler la présence de la
fumée, en appuyant sur 'Alt' et la souris, la fumée est dégagée, lorsqu'elle dépasse le niveau
0.15, la sirène se déclenche, et si elle dépasse le niveau 0.17, l’arroseur se déclenche également.
Les deux s'arrêtent dans le cas contraire (figure III.4).
Chapitre III Outils de développement
28
Figure III. 4: test de fonctionnement pour le système de détection de fumée
III.2.4. Système d'arrosage automatique de pelouse pour jardin
Dans cette partie nous simulons un système d'arrosage automatique de pelouse d'un jardin
avec contrôle de niveau d'eau, le système est contrôlé également à distance. Pour cela nous
utilisons les éléments suivants : un Moniteur de niveau d'eau (relié avec un détecteur de niveau
d'eau), Passerelle maison, Évacuateur d'eau, Arroseur de pelouse et un Smartphone (figure
III.5).
Figure III. 5 : les éléments pour un système d'arrosage
La configuration des éléments de ce système est identique de ce qui est présenté
précédemment seulement les 'conditions' de fonctionnement changent comme suit.
‒ Déclenchement et arête de l'évacuateur d'eau:
IF ‘Level Monitor’ ‘Water Level’ >= 10cm then ‘Water Drain’ ‘on’ to ‘true’.
Chapitre III Outils de développement
29
IF ‘Level Monitor’ ‘Water Level’ <= 5cm then ‘Water Drain’ ‘on’ to ‘false’.
‒ Déclenchement et arête de l’arroseur:
IF ‘Level Monitor’ ‘Water Level’ <= 3cm then ‘sprinkler’ ‘on’ to ‘true’.
IF ‘Level Monitor’ ‘Water Level’ > 10cm then ‘sprinkler’ ‘on’ to ‘false’.
Test de fonctionnement : Pour vérifier le bon fonctionnement du système, nous
déclenchons l'arroseur à partir du Smartphone via la passerelle maison et nous vérifions le
niveau d'eau, lorsqu'il atteint un niveau de 10 cm, l'évacuateur s'ouvre et l'arroseur se met à
l'arrêt et si le niveau d'eau devient inférieur à 5 cm, l'évacuateur se ferme, lorsqu'il atteint 3 cm
ou moins l'arroseur se démarre. Tout le processus peut être contrôlé à distance via le
Smartphone (figure III.6).
Figure III. 6 : test de fonctionnement du système d'arrosage
III.2.5. Contrôle à distance d’un smart home
Le regroupement des systèmes précédent avec l'ajout de certains éléments nous a permis
de concevoir une maison intelligente avec un système de commande à distance en plus de la
commande de porte, de fenêtre, d'une machine à café, d'un ventilateur, d'une veilleuse et d'un
volet de garage. Pour nous avons ajouté les éléments suivants : une porte, une fenêtre, un volet
de garage, une lampe et un ventilateur de plafond (figure III.7).
Chapitre III Outils de développement
30
Figure III. 7 : les éléments pour contrôle à distance d’un smart home
Après configuration de tous les éléments (comme il a été présenté précédemment), la
commande de la maison intelligente est faite par un Smartphone via la passerelle maison
(figures III.8, figure III.9).
Figure III. 8 : les éléments du smart home après les configurations
Chapitre III Outils de développement
31
Figure III. 9 : liste des éléments du smart home dans le smartphone
Test de fonctionnement : les tests que nous avons effectués ont montrés le bon
fonctionnement de notre système, en effet tous les éléments peuvent être contrôlés à distance
en plus de fonctionnement automatique à savoir l'ouverture et la fermeture de la porte. La
fenêtre et du volet de garage, le contrôle de la machine à café, le contrôle de l'éclairage et du
ventilateur en plus de la détection de mouvement, de fumée et la vidéo surveillance avec
déclenchement de l'arroseur et l'alarme par la sirène (figure III.10).
Chapitre III Outils de développement
32
Figure III. 10 : test de fonctionnement du smart home
III.3. Partie 2 : Réalisation d'un système de réception et de commande à distance
III.3.1. Introduction
Dans cette partie nous allons concevoir un système d'objets connectés et le commander
via internet pour configurer et faire fonctionner une procédure IoT réelle. Ce système peut être
exploité dans le domaine de la domotique pour une maison intelligente. Dans ce qui suit, nous
allons présenter la mise en œuvre d'un système de réception de données et un système de
commande à distance via internet. Les composants utilisés pour la réception des données sont :
Un capteur de fuite de gaz et de la fumée, un capteur ultrason et capteur de température et
d'humidité. La commande à distance concerne un servomoteur, l'activation d'une alarme sonore
et visuelle (ici Buzer et Leds) en plus de l'activation et la désactivation des capteurs. Le circuit
de commande est à base de la carte NodeMCU (esp8266) présentée dans le chapitre précédent.
La réalisation de ce système comprend deux parties, Matériel et Logiciel.
III.3.2. Partie Hardware :
III.3.2.1. Capteur de gaz MQ2
Le capteur de gaz analogique MQ-2 (figure III.11) est utilisé dans les équipements de
détection de fuite de gaz. Ce capteur est adapté pour détecter le GPL, l’i-butane, le propane, le
méthane, l’alcool, de l’hydrogène, de la fumée. Il dispose une sortie analogique et d’un réglage
de la sensibilité par potentiomètre. Les Caractéristiques techniques de ce capteur sont
présentées à l'annexe 3 de ce mémoire.
Chapitre III Outils de développement
33
Figure III. 11 : Capteur de gaz MQ2
Figure III. 12 : Branchement du capteur MQ2 avec la carte de commande NodeMCU
III.3.2.2. Capteur Ultrason HC-SR04
Un capteur à ultrasons HC-SR04 (figure III.12) émet à intervalles réguliers de courtes
impulsions sonores à haute fréquence. Ces impulsions se propagent dans l’air à la vitesse du
son. Lorsqu’elles rencontrent un objet, elles se réfléchissent et reviennent sous forme d’écho au
capteur qui calcule ainsi la distance le séparant de la cible sur la base du temps écoulé entre
l’émission du signal et la réception de l’écho [28]. Les Caractéristiques de ce capteur sont
présentées à l'annexe 3 de ce mémoire.
Figure III. 13 : capteur Ultrason
Chapitre III Outils de développement
34
Figure III. 14 : Fonctionnement de capteur Ultrason
Figure III. 15 : Branchement du capteur Ultrason avec la carte de commande
NodeMCU
III.3.2.3. Le servomoteur
Un servomoteur (figure III.16) est un système qui a pour but de produire un mouvement
précis en réponse à une commande externe. Les composants du servomoteur utilisé sont : un
moteur à courant continu ; un axe de rotation ; un capteur de position de l’angle d’orientation
de l’axe et une carte électronique pour le contrôle de la position de l’axe et le pilotage du moteur
à courant continu [29]. Ses avantages sont présentés dans l'annexe 3 de ce mémoire.
Figure III. 16 : Servomoteur
Chapitre III Outils de développement
35
Figure III.17 : Branchement du Servomoteur avec la carte de commande NodeMCU
III.3.2.4. Capteur température et d'humidité DHT11
Le DHT11 est un capteur de température et d'humidité simple à mettre en œuvre et son
coût relativement faible. Sa programmation est facile à l'aide aux librairies disponibles pour
l'Arduino, le Raspberry Pi et l'ESP8266 [30]. Ses caractéristiques sont présentées à l'annexe 3.
Figure III. 18 : Branchement du capteur DHT11 avec la carte de commande NodeMCU
III.3.2.5. Le Buzzer
Le Buzzer est un composant électromécanique ou électronique qui produit un son quand
on lui applique une tension. Dans ce travail nous l'avons utilisé pour remplacer une sirène en
cas d’alerte.
Chapitre III Outils de développement
36
Figure III. 19 : Branchement du Buzzer avec la carte de commande NodeMCU
III.3.2.6. Les Leds
Les diodes lumineuses sont utilisées dans ce travail pour servir d'alerte visuelle. La LED
verte indique que tout va bien alors que et la LED rouge indique l'existence de problème.
Chapitre III Outils de développement
37
III.3.3. Partie Software :
Afin de faire fonctionner les objets connectés à distance, nous avons besoin d’une
interface qui connecte à distance le circuit de commande avec l’utilisateur. Dans ce travail nous
avons utilisé le service web IFTTT (If This, Then, That : Si Ceci Alors Cela) qui fonctionne
avec le protocole Http pour la réception d’une information. Pour la commande à distance, nous
avons besoin d'une plateforme qui fonctionne avec le protocole MQTT telle que Adafruit,
Raspberry, Mosquito, etc. dans ce travail nous avons utilisé l'Adafruit avec le software IDE de
l’Arduino.
III.3.3.1. Le service web IFTTT
IFTTT est un service web gratuit permettant à ses utilisateurs de créer des chaînes
d'instructions simples appelées applets. Une applet est déclenchée par des changements qui
interviennent au sein de services web tels que Gmail, Facebook, Instagram ou Pinterest. Par
exemple une applet peut envoyer un e-mail si l'utilisateur Tweete avec un Hashtag donné, ou
encore sauvegarder les photos publiées sur Facebook dans un service de stockage comme le
Dropbox, ou bien envoyer un mail pour avertir qu'il va pleuvoir demain.
IFTTT a renommé en 2015 l'application d'origine IF et a publié une nouvelle suite
d'applications appelée Do qui permet aux utilisateurs de créer des raccourcis d'applications et
des actions [31].
III.3.3.2. Alerter à distance
Comme le site IFTTT nous fournit le service de lier des objets entre eux, nous avons relié
notre circuit électronique avec les services SMS et Gmail (figure III.20).
Figure III. 20 : Représentation du fonctionnement d’IFTTT
III.3.3.2.1. Recevoir un e-mail
Pour recevoir un e-mail en cas d’alerte suivez ces étapes :
‒ Accédez au site web https://ifttt.com et créer un compte.
‒ Cliquez sur ‘My Applets’ et dans la fenêtre qui apparaît cliquez sur ‘New Applet’.
‒ Cliquez sur ‘this’ et cherchez sur ‘Webhooks’
‒ Ensuite cliquez sur ‘Webhooks’ et encore sur ‘Receive a web request’
‒ Sélectionnez un nom pour événement et cliquez sur ‘Create trigger’
Chapitre III Outils de développement
38
‒ Cliquez sur ‘that’ et cherchez sur ‘Gmail’
‒ Ensuite cliquez sur ‘Gmail’ et encore sur ‘Send an email’
‒ Dans la case ‘To address’ cliquez sur ‘add intredient’ ensuit sur ‘Value1’, puis dans
‘Sabject’ cliquez sur ‘add intredient’ puis ‘Value2’ et dans la case ‘Body’ cliquez
sur ‘add intredient’ puis ‘Value3’, ensuit cliquez sur ‘Create action’.
‒ Confirmez que les notifications sont actives et cliquez sur ‘Finish’
‒ Retourner à la fenêtre précédente et cliquez sur l’application d’e-mail ensuit cliquez
sur ‘Check now’ et encore sur ‘Setting’ (figures III.21)
‒ Copier la clé que vous allez utiliser dans le code Arduino (figures III.22)
Figure III. 21 : Les étapes pour prendre la clé
Figure III. 22 : La clé de Webhooks
III.3.3.2.2. Recevoir un SMS
Pour recevoir un SMS en cas d’alerte suivez ces étapes :
‒ Les premières étapes de la condition ‘this’ sont les mêmes que précédemment.
‒ Dans la deuxième étape, cliquez sur ‘that’, ensuite sélectionnez ‘Android sms’.
Chapitre III Outils de développement
39
‒ Cliquez sur ‘Send an SMS’, ensuite sélectionnez ‘value1’ pour le numéro de
téléphone et ‘value1’ pour le message, puis cliquez sur ‘Create action’
‒ Confirmez que les notifications sont actives et cliquez sur ‘Finish’
‒ Pour la clé, c’est identique que la méthode de recevoir un e-mail.
Remarque : Pour recevoir un SMS nous devons installer une application Android
spéciale d’IFTTT sur le Smartphone. Le SMS peut être reçu directement sur le téléphone sans
avoir besoin d'une application Android, en changeant dans la 2ème étape, au lieu de choisir
‘Android sms’ choisir ‘sms’, mais le nombre de SMS est limité à 100 par mois.
III.3.3.5. Contrôler des objets à distance
Pour contrôler des objets à distance, nous devons faire le lien de trois plateformes web,
la 1ère est ‘io.adafruit’ qui fonctionne avec le protocole MQTT, la 2ème est ‘IFTTT’ qui lie le
circuit de commande avec le site de protocole ‘io.adafruit’ et la 3ème est ‘Dashboard’ qui joue
un rôle d’interface de communication entre le IFTTT et Messenger de Facebook (figure III.23).
Figure III. 23 : Liens entre les plates-formes
a) Etape 1 : Les opérations sur « io.adafruit »
‒ S'inscrire sur le site io.adafruit.com, ensuite cliquez sur ‘Feeds’ et encore ‘Actions’.
‒ Cliquez sur ‘Create a New Feed’, sélectionnez un nom et cliquez sur ‘create’
‒ Cliquez sur le nom de l'application que vous avez créée, ensuite sur ‘View AIO Key’,
Copiez la clé et Garde-la, car elle sera utilisée pour le code Arduino (figure III.24)
Chapitre III Outils de développement
40
Figure III. 24 : La clé de l'application
b) Etape 2 : Les opérations sur « IFTTT»
‒ Allez au site ifttt.com et créer un compte puis cliquez sur ‘My Applets’ et ensuite sur
‘New Applet’, cliquez sur ‘this’ et sur ‘webhooks’ cliquez sur ‘Receive a web request’.
Sélectionnez un nom pour événement et cliquez sur ‘Create trigger’
‒ Cliquez sur ‘that’ et cherchez sur ‘Adafruit’, puis sélectionnez-le.
‒ Cliquez sur ‘Send data to Adafruit IO’, sélectionnez ‘myfeed1’ pour ‘Feed name’ et
‘Value1’ pour ‘Data to save’, ensuite cliquez sur ‘Create action’.
‒ Confirmez que les notifications sont actives et cliquez sur ‘Finish’ (figure III.25)
Figure III. 25 : la dernière étape pour l'IFTTT
c) Etape 3 : les opérations sur « Dashboard»
‒ Après inscription dans le site dashboard.chatfuel.com cliquez sur ‘Create a blank bot’,
ensuite sur ‘CONNECT TO FACEBOOK’.
Chapitre III Outils de développement
41
‒ Sélectionnez une page en cliquant sur ‘CONNECT TO PAGE’, et créé une page en
cliquant sur ‘CEATE FACEBOOK PAGE’ puis revenez à la page précédente (Figure
III.26).
‒ Le message de bienvenue (Welcome message) peut être changé, ensuite cliquez sur
‘ADD SEQUENCE OR GROUP’ et sélectionnez ‘add group’.
‒ Sélectionnez un nom pour le bloc on (ex : blockon), ensuite cliquez sur ‘+’ et choisissez
‘JSON API.
‒ Dans TYPE, sélectionnez ‘POST’ et dans URL coller le lien :
https://maker.ifttt.com/trigger/chat/with/key/(la clé de Webhooks)/?value1=on
‒ Cliquez sur ‘+’ et ajouter le bloc off avec la même manière, ensuite cliquez sur ‘+’ et
ajouter les blocs des textes
‒ Sélectionnez un nom pour le bloc, cliquez sur ‘text’ et ajoutez un texte pour la discussion
sur la page Facebook (ex : blockon text), répétez la même opération avec le message
texte off.
‒ Cliquez sur ‘Set Up AI’ et sélectionnez des messages de la bienvenue, ensuite cliquez
sur ‘BLOCK’ et choisissez ‘Welcome message’
‒ Ensuite cliquez sur ‘ADD AI RULE’ et sélectionnez des mots spéciaux que vous
utiliserez pour le « ON », ensuite clique sur ‘BLOCK’ et choisissez ‘blockon’, cliquez
encore sur ‘BLOCK’ et choisissez ‘blockon text’.
‒ Répétez les mêmes étapes pour le «off» (figures III.27).
Figure III. 26 : présentation de site Dashboard
Chapitre III Outils de développement
42
Figure III. 27 : La configuration entre les utilisable et les fonctions
III.3.4. Réalisation de la Smart Home
Afin de bien expliquer les étapes suivis durant la réalisation pratique de la Smart Home
et le fonctionnement du programme adopté, nous avons présenté un organigramme de
fonctionnement avec :
C1 : le capteur de gaz et fumée
C2 : le capteur ultrason
C3 : le capteur de température
SM : le servomoteur
Chapitre III Outils de développement
43
Figure III. 28 : Organigramme globale de système
Chapitre III Outils de développement
44
III.3.4.1. Le montage globale
Figure III. 29 : Représentation de montage globale par Fritzing
Figure III. 30 : Image réelle de montage
III.3.4.2. Mise en marche du système
Ce système reflète bien le mécanisme de l’internet des objets dans la domotique. Nous
avons utilisé trois types de capteurs. Le premier c’est le capteur de fumée et gaz, qui alerte par
SMS et email en cas une fuite de gaz s'est produite ou s'il y avait du feu. Le deuxième est le
capteur ultrason mis à côté de la porte et contrôlé à travers le Messenger (activation et
désactivation), si le capteur est actif, il alerte par SMS en cas d'ouverture de la porte. Le
Chapitre III Outils de développement
45
troisième est le capteur de température et d'humidité, contrôlé également à travers le Messenger,
s'il est actif, il envoie à l'utilisateur la valeur de température et de l'humidité par email. Nous
avons utilisé aussi un servomoteur afin de contrôler l'ouverture et la fermeture de la porte à
distance également.
Figure III. 31 : présentation du recevoir des emails
Figure III. 32 : commande des capteurs à distance par Messenger
Chapitre III Outils de développement
46
Figure III. 33 : Représentation du commande de servomoteur et recevoir des SMS
III.4. Conclusion
Dans ce chapitre nous avons présenté les étapes de simulation d'une maison intelligente
en utilisant le simulateur Packet Tracer de Cisco, dans cette partie nous avons connecté et
contrôler à distance des objets (capteurs, actionneurs et avertisseurs). Dans la partie réalisation
pratique, nous avons présenté le système conçu d'objets connectés en utilisant la carte
électronique NodeMCU avec des capteurs, actionneurs et avertisseurs. Ces composants
électroniques contrôlés à distance via internet, ne pouvant fonctionner sans la configuration
Soft où nous avons fait appel à trois plates-formes disponibles sur internet afin d'atteindre notre
objectif. Les tests de simulation ainsi que les tests pratiques sont tous montrés le bon
fonctionnement de tous les systèmes et la Smart Home est efficacement gérée via internet en
appliquant ainsi les concepts de l'IoT.
Conclusion générale
48
L’Internet des objets marque le début d’une nouvelle ère en matière de connectivité et de
mobilité, qui transforme les affaires et la vie quotidienne. Grâce à l’Internet des objets, les objets
courants deviennent des actifs intelligents, s’intègrent de façon transparente à un réseau
mondial et sont en mesure de produire et d’échanger des données utiles sans intervention
humaine. L’internet des objets est appliqué beaucoup plus dans les smart homes, mais elle existe
aussi dans d'autres domaines comme l’industrie (IIOT) et l’agriculture.
Dans ce contexte, nous avons développé dans ce travail un système de domotique géré à
instance, il contient un capteur de gaz et de fumé qui détecte plusieurs types de gaz (méthane,
butane…) en cas de fuites, et la présence du fumé en cas de feu avec alerte à distance par email
et SMS. Le système contient également un capteur de température et d’humidité contrôlé par le
Messenger, et il transmit le degré de température par email. Un capteur ultrason est aussi utilisé,
ce dernier est mis à l’entrée de la maison et son activation et désactivation est faite à distance
par Messenger au lieu d’utilisation d’un clavier fixe (Keypade). Une alerte est transmise par
SMS en cas il y a une intrusion de suspect à la maison. Le système réalisé permet aussi de
commander l’ouverture et la fermeture de la porte de maison à distance par Messenger.
Ce projet nous a permis de faire le lien entre l’étude théorique d’un montage électronique
et sa réalisation pratique avec un aspect pluridisciplinaire, de prendre en compte l’ergonomie
de système. Pour développer cette application, nous avons débuté par le développement du
système en simulation puis nous avons passé à la réalisation en utilisant le circuit électronique
NodeMCU et des protocoles de communication utilisés dans les réseaux informatiques et dans
les réseaux IoT. Les tests de simulation et pratiques ont montrés les bons fonctionnements de
tous les systèmes et ont montrés la gestion fiable de la Smart Home via internet par l'utilisation
des techniques et des concepts de l'IoT.
Comme perspectives, nous envisagerons l’amélioration des performances de notre
application par l'utilisation des énergies renouvelables telle que l'énergie solaire afin
d'économiser de plus en plus l'énergie électrique consommée et assurer l'autonomie des
composants qui ne vont pas nécessiter de câblage électrique. Aussi nous pouvons améliorer
notre système pour surveiller et gérer à distance les installations à énergies renouvelables et le
matériel utilisé afin de prédire les pannes avant qu'elles apparaissent et assurer la maintenance
préventive.
49
[1] «Mooc systemes embarques et objets connectes 2016».
[2] «www.smartgrids-cre.fr/index.php?p=objets-connectes-definition».
[3] «www.objetconnecte.com/guide-objets-connectes/quest-ce-quun-objet-
connecte/».
[4] «https://gladiacteur.com/iot-linternet-des-objets/».
[5] Mark Hung, chez Leading the IoT, 2017.
[6] D. Norri, chez Internet of Tings.
[7] «www.cisco.com/c/dam/global/en_ca/solutions/.../internet-of-things-fr».
[8] «www.intel.fr/content/www/fr/fr/internet-of-things/industry-solutions.html».
[9] «www.maison-et-domotique.com/47895-la-domotique-cest-quoi/».
[10
]
«igm.univ-mlv.fr/~dr/XPOSE2007/aessaidi-ndiop_LA-
DOMOTIQUE/intro.htm».
[11
]
«fr.wikipedia.org/wiki/Domotique».
[12
]
«www.panoptinet.com/cybersecurite-decryptee/cest-quoi-linternet-of-
everything-ioe».
[13
]
«www.journaldunet.com/web-tech/expert/62428/avancees-et-avantages-de-l-
internet-des-objets.shtml».
[14
]
«http://dictionnaire.sensagent.leparisien.fr/Arduino/fr-fr/».
[15
]
«http://automacile.fr/definition-arduino-quest-ce-quun-arduino/».
[16
]
«www.techmania.fr/arduino/Decouverte_arduino.pdf».
[17
]
«www.techmania.fr/arduino/Decouverte_arduino.pdf».
50
[18
]
N. Kolban, chez Kolban's book on ESP8266, 2015, p. 14.
[19
]
B. Santos, chez ESP8266 web server with arduino IDE , p. 2.
[20
]
«https://halshs.archives-ouvertes.fr/hal-00405070/».
[21
]
«http://protocole-tcpip.over-blog.com/article-le-protocole-tcp-ip-definition-
69189059.html».
[22
]
«https://edutechwiki.unige.ch/fr/Le_fonctionnement_du_protocole_HTTP».
[23
]
S. S. Sahoo, chez chez Getting Started With MQTT A Practical Guide, p. 5.,
p. 5.
[24
]
S. S. Sahoo, chez Getting Started With MQTT A Practical Guide, p. 5.
[25
]
«https://fr.wikipedia.org/wiki/MQTT».
[26
]
«fr.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol».
[27
]
«https://fr.wikipedia.org/wiki/MQTT».
[28
]
«www.microsonic.de/fr/support/capteurs-%C3%A0-ultrasons/principe.htm».
[29
]
«www.supinfo.com/articles/single/296-qu-est-ce-qu-servomoteur».
[30
]
«https://evola.fr/fr/meteo/824-dht11-capteur-de-temperature-et-d-
humidite.html».
[31
]
«https://fr.wikipedia.org/wiki/IFTT».
[33
]
«www.cisco.com».
[34
]
«https://youpilab.com/capteurs/capteur-de-fumee-mq2.html».
51
[35
]
«https://itechnofrance.wordpress.com/2013/03/12/utilisation-du-module-
ultrason-hc-sr04-avec-larduino/».
[36
]
«https://www.supinfo.com/articles/single/296-qu-est-ce-qu-servomoteur».
[37
]
«https://evola.fr/fr/meteo/824-dht11-capteur-de-temperature-et-d-
humidite.html».
[38
]
«http://dictionnaire.sensagent.leparisien.fr/Arduino/fr-fr/».
[39
]
«http://automacile.fr/definition-arduino-quest-ce-quun-arduino/».
[40
]
«http://on.wonderware.fr/mqtt-iot-industriel».
[41
]
«https://fr.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protoco
l».
[42
]
«https://wapiti.telecom-
lille.fr/commun/ens/peda/options/st/rio/pub/exposes/exposesrio2009/claerhout-
ricord/fonctionnement.html».
[43
]
«https://www.microsonic.de/fr/support/capteurs-%C3%A0-
ultrasons/principe.htm».
[44
]
«MOOC SYSTEMES EMBARQUES ET OBJETS CONNECTES,» 2016.
[45
]
«https://wapiti.telecom-
lille.fr/commun/ens/peda/options/st/rio/pub/exposes/exposesrio2009/claerhout-
ricord/fonctionnement.html».
49
51
Imagination d’une vie à la ville intelligente (smart city) :
‒ chaque jour, tu te réveilles, tu brosses tes dentes avec une brosse à dent intelligent qui
t’informe combien de temps que tu as utilisé, et si tu as bien brosse tes dents avec une
façon correcte ou non.
‒ Tu portes ton smart T-shirt qui contrôle les sécrétions sudorales, et les niveaux de sel
dans votre corps et qu’il va les envoyé au data base utilisé par les médecins
‒ Avant de sortir, tu pause un moment devant ton mémoire intelligent qu’elle va
t’informer sur la météo et l’information sur la route
‒ Dans la route, tu vas stopper chez un café pour prendre un Thé, tu demandes un tasse
de Thé intelligente qui va t’informer que ce qui est versé c’est vraiment du Thé et aussi
il te donne sa concentration-Et à la fin du jour tu obtiens un rapport à propos que tu as
bu toute la journée.
‒ Si tu décides de prendre un bus, tu iras à la station de transit intelligente qui a un écran
d’affichage qui contient tous les rendez –vous des bus, et qui t’informe combien de
temps reste pour l’arrivage de ton bus
‒ Si tu as une voiture spéciale, elle mèchera des routes intelligent, qui sont fournier avec
un éclairage qui détermine et d’évaluer la nature du climat et qui va aussi contrôler la
pollution, et la circulation routière .de plus les feux de circulation intelligentes c’est un
gagné de temps, tu ne vas pas attendre tant sauf dans les rues opposées.
‒ Dès l’accès au travail , tu ne droit pas chercher un endroit pour ton voiture , avec une
application dans ton smartphone , tu trouveras le plus proche coin pour garer ton
voiture
‒ Si tu veux contacter les institutions gouvernementales tu ne droit pas quitter ton bien-c
’est juste d’avoir un smartphone ou la tablette pour transformer les gouvernements aux
systèmes intelligents.
‒ Avant de quitter ton travail, tu fais marcher le climatiseur avec une application du
climatiseur liée avec l’internet dans ton maison
‒ Tu es dans la route, tu vas arrêter chez un supermarché et pour acheter quelque trucs,
des que tu rentres, tu vas recevoir des notifications dans ton smart phone de réductions
de prix et les offres. tu n’es pas sûr qu’il y a suffisamment des œufs dans le réfrigérateur,
52
tu vas ouvrir une application des œufs intelligente qui est liée avec l’internet qui va
t’informer combien des œufs sont restés, et s’il existe d’autre insalubre.
‒ sans oublier les notifications que tu les reçu toute la journée partout dans ton maison
intelligente qui est fournis avec des caméras intelligentes et d’un système de sécurité
intelligent .si tu as un animal domestique dans la maison, tu peux le contrôler et s’il est
besoin de nourriture ou bien il est des que malade avec une puce, liée avec l’internet,
collé sur lui
‒ Des que tu rentres à la maison, un appareil «la mère affectueuse « te donne un résumé
sur ta famille, quand les enfants sont rentres a la maison, qui a brossé ses dents, et si ta
maman a pris leur médicaments ?
‒ après un repos, tu veux pratiquer du gymnastique tu portes ton T-shirt sportif qui sont
fournis par des stéréoscopies qu’elles vont analyser ton performance et ton condit ion
physique cardiaque et respiratoire d’une application spéciale du T-shirt sur ton mobile
‒ Dans ce moment, la femme au foyer prépas le diner, elle utilise un récipient électronique
connecté à l’internet qui va la suggérer des recettes et qu’il va préciser la quantité
propice de chaque plat.
‒ Appris la prière de l’Itcha, des que tu rentres, ton mobile va t’informer sur la poubelle
qui est connectée à l’internet qu’elle est pleine et que tu dois la vider avant de rentrer à
la maison.
‒ Tu t’assis avec la famille pour le diner tu es en train de manger ton plat préféré avec
une fourchette intelligente connectée à l’internet qui va suivre ton style et la façon de
manger et qu’elle va t’aider de manger doucement et sainement .
‒ Maintenant, tu vas dormir, avec ton smartphone, tu vas fermer tous les portes extérieures
qui sont fournis avec serrures électroniques liées à l’internet .qui permettez-nous de
préciser les horaires d’ouverture et de fermeture automatiquement, et d’avertir en cas
une personne essayera d’ouvrir la porte.
53
1. Présentation de quelques modèles de la carte Arduino :
Les figures ci-dessous représentent les cartes Arduino les plus connus :
Arduino UNO
Arduino MEGA
The Arduino WiFi Shield
Arduino pro
Netduino
Maple
54
NodeMCU
Arduino uno wifi
Arduino Due
Arduino nano
Arduino Robot
Arduino GSM
2. Historique du microprocesseur ESP8266
NodeMCU a été créé peu de temps après l'apparition commerciale de l'ESP8266. Le 30
décembre 2013, la société chinoise « Espressif Systems » a commencé la production du
modèle : ESP8266.
L'ESP8266 est un Wi-Fi gratuit intégré à un Tensilica Xtensa LX106 de base, largement
utilisé dans les applications IoT. NodeMCU a commencé le 13 octobre 2014, lorsque Hong a
publié le premier fichier de nodemcu-firmware sur GitHub. Deux mois plus tard, le projet a été
étendu pour inclure une plate-forme ouverte (open-hardware). Dans le mois courant, Tuan PM a
mis à disposition de téléchargement la bibliothèque client MQTT de Connecter vers la plate-
forme ESP8266 et l'a inséré au projet NodeMCU. Dès lors NodeMCU a été en mesure de
supporter le protocol MQTT, à l'aide de Lua pour accéder au broker MQTT.
55
Une autre mise à jour importante a été faite le 30 janvier 2015, lorsque Devsaurus a porté
l’u8glib vers le projet NodeMCU permettant ainsi au NodeMCU de gérer facilement les écrans
LCD, OLED et même des écrans VGA.
Durant l'été 2015, les créateurs ont abandonné ce projet de firmware et un groupe
indépendant de contributeurs a pris le relais. À l'été 2016, le NodeMCU incluait plus de 40
modules différents [32].
3. La raison de choisir l’Arduino :
Arduino a été utilisé dans des milliers de projets et d'applications grâce à ca simple
utilisation. Le logiciel Arduino est facile à utiliser pour les débutants, mais suffisamment
flexible pour les utilisateurs avancés. Les enseignants et les étudiants l'utilisent pour construire
des instruments scientifiques à faible coût, pour prouver les principes de chimie et de physique,
ou pour commencer avec la programmation et la robotique. Les concepteurs et les architectes
construisent des prototypes interactifs, des musiciens et des artistes l'utilisent pour des
installations et pour expérimenter de nouveaux instruments de musique. Les fabricants, bien
sûr, l'utilisent pour construire de nombreux projets exposés à la Maker Faire, par exemple.
Arduino est un outil clé pour apprendre de nouvelles choses. N'importe qui - enfants, amateurs,
artistes, programmeurs - peut commencer à bricoler en suivant les instructions étape par étape
d'un kit, ou en partageant des idées en ligne avec d'autres membres de la communauté Arduino :
Peu coûteux : Les cartes Arduino ainsi que leurs modules sont relativement peu
coûteuses par rapport aux autres plates-formes de microcontrôleurs.
Multiplateformes : Le logiciel Arduino (IDE) fonctionne sur les systèmes d'exploitation
Windows, Macintosh OSX et Linux. La plupart des systèmes de microcontrôleur sont
limités à Windows.
Environnement de programmation simple et clair - Le logiciel Arduino (IDE) est facile
à utiliser pour les débutants, mais suffisamment flexible pour que les utilisateurs
avancés puissent en profiter. Pour les enseignants, il est idéalement basé sur
l'environnement de programmation Processing, donc les étudiants qui apprennent à
programmer dans cet environnement seront familiers avec le fonctionnement de l'IDE
Arduino.
Logiciels open source et extensibles - Le logiciel Arduino est publié en tant qu'outil open
source, disponible pour extension par des programmeurs expérimentés. Le langage peut être
étendu à travers des bibliothèques C ++, et les personnes voulant comprendre les détails
techniques peuvent faire le saut d'Arduino au langage de programmation AVR C sur lequel il
56
est basé. De même, vous pouvez ajouter le code AVR-C directement dans vos programmes
Arduino si vous le souhaitez.
Matériel Open Source et matériel extensible - Les plans des cartes Arduino sont publiés
sous licence Creative Commons, de sorte que les concepteurs de circuits expérimentés peuvent
créer leur propre version du module, l'étendre et l'améliorer. Même les utilisateurs relativement
inexpérimentés peuvent construire la version maquette du module afin de comprendre comment
cela fonctionne et économiser de l'argent.Source spécifiée non valide.
4. Le Modèle de référence TCP/IP
4.1. Bref historique du protocole TCP/IP
Le modèle TCP/IP, s’est progressivement imposé comme modèle de référence en lieu et
place du modèle OSI. Cela tient tout simplement à son histoire. En effet, contrairement au
modèle OSI, le modèle TCP/IP est né d’une implémentation ; la normalisation est venue
ensuite. Cet historique fait toute la particularité de ce modèle, ses avantages et ses
inconvénients.
L’origine du modèle TCPIP remonte au réseau ARPANET. ARPANET est un réseau de
télécommunication conçu par l’ARPA (Advanced Research Projects Agency), l’agence de
recherche du ministère américain de la défense (le DOD : Department of Defense). Outre la
possibilité de connecter des réseaux hétérogènes, ce réseau devait résister à une éventuelle
guerre nucléaire, contrairement au réseau téléphonique habituellement utilisé pour les
télécommunications mais considéré trop vulnérable. Il a alors été convenu qu’ARPANET
utiliserait la technologie de commutation par paquet (mode datagramme), une technologie
émergeante promettant. C’est donc dans cet objectif et ce choix technique que les protocoles
TCP et IP furent inventés en 1974. L’ARPA signa alors plusieurs contrats avec les constructeurs
(BBN principalement) et l’université de Berkeley qui développait un Unix pour imposer ce
standard, ce qui fut fait.
4.2. Les couches du modèle de référence
Le but d'un système en couches est de séparer le problème en différentes parties (les
couches) selon leur niveau du concept. Chaque couche du modèle communique avec une
couche adjacente (celle du dessus ou celle du dessous). Chaque couche utilise ainsi les services
des couches inférieures et en fournit à celle de niveau supérieur. Source spécifiée non valide.
TCP/IP, un modèle en 4 couches :
57
Le modèle TCP/IP peut en effet être décrit comme une architecture réseau à 4 couches
(figure II.3) :
Le modèle OSI (Open System Interconnection) a été mis à côté pour faciliter la
comparaison entre les deux modèles.
a) La couche Accès au réseau (hôte réseau)
Cette couche (appelée également hôte réseau) semble regrouper les couches physiques et
liaison de données du modèle OSI. Elle permet à un hôte d’envoyer des paquets IP sur le réseau.
Cette couche contrôle les périphériques matériels et les supports qui constituent le réseau.
b) La couche internet
Cette couche réalise l’interconnexion des réseaux (hétérogènes) distants sans connexion.
Son rôle est de permettre l’injection de paquets dans n’importe quel réseau et l’acheminement
de ces paquets indépendamment les uns des autres jusqu’à destination. Comme aucune
connexion n’est établie au préalable, les paquets peuvent arriver dans le désordre ; le contrôle
de l’ordre de remise est éventuellement la tâche des couches supérieures.
Du fait du rôle imminent de cette couche dans l’acheminement des paquets, le point
critique de cette couche est le routage. C’est en ce sens que l’on peut se permettre de comparer
cette couche avec la couche réseau du modèle OSI.
La couche internet possède une implémentation officielle : le protocole IP (Internet
Protocol).
Remarquons que le nom de la couche (« internet ») est écrit avec un i minuscule, pour la
simple et bonne raison que le mot internet est pris ici au sens large (littéralement,
« interconnexion de réseaux »), même si l’Internet (avec un grand I) utilise cette couche.
c) La couche transport
Son rôle est le même que celui de la couche transport du modèle OSI : permettre à des
entités paires de soutenir une conversation.
Cette couche n’a que deux implémentations : Le protocole TCP (Transmission Control
Protocol) et le protocole UDP (User Datagram Protocol). TCP est un protocole fiable, orienté
connexion, qui permet l’acheminement sans erreur de paquets issus d’une machine d’un internet
à une autre machine du même internet. Son rôle est de fragmenter le message à transmettre de
manière à pouvoir le faire passer sur la couche internet. A l’inverse, sur la machine destination,
58
TCP replace dans l’ordre les fragments transmis sur la couche internet pour reconstruire le
message initial. TCP s’occupe également du contrôle de flux de la connexion.
UDP est en revanche un protocole plus simple que TCP : il est non fiable et sans
connexion. Son utilisation présuppose que l’on n’a pas besoin ni du contrôle de flux, ni de la
conservation de l’ordre de remise des paquets. Par exemple, on l’utilise lorsque la couche
application se charge de la remise en ordre des messages. On se souvient que dans le modèle
OSI, plusieurs couches ont à charge la vérification de l’ordre de remise des messages. C’est là
un avantage du modèle TCP/IP sur le modèle OSI, mais nous y reviendrons plus tard. Une autre
utilisation d’UDP : la transmission de la voix. En effet, l’inversion de 2 phonèmes ne gêne en
rien la compréhension du message final. De manière plus générale, UDP intervient lorsque le
temps de remise des paquets est prédominant.
d) La couche application
Contrairement au modèle OSI, c’est la couche immédiatement supérieure à la couche
transport, tout simplement parce que les couches présentation et session sont apparues inutiles.
On s’est en effet aperçu avec l’usage que les logiciels réseau n’utilisent que très rarement ces 2
couches, et finalement, le modèle OSI dépouillé de ces 2 couches ressemble fortement au
modèle TCP/IP.
Cette couche contient tous les protocoles de haut niveau, comme par exemple Telnet,
TFTP (trivial File Transfer Protocol), SMTP (Simple Mail Transfer Protocol), HTTP
(HyperText Transfer Protocol). Le point important pour cette couche est le choix du protocole
de transport à utiliser. Par exemple, TFTP (surtout utilisé sur réseaux locaux) utilisera UDP, car
on part du principe que les liaisons physiques sont suffisamment fiables et les temps de
transmission suffisamment courts pour qu’il n’y ait pas d’inversion de paquets à l’arrivée. Ce
choix rend TFTP plus rapide que le protocole FTP qui utilise TCP. A l’inverse, SMTP utilise
TCP, car pour la remise du courrier électronique, on veut que tous les messages parviennent
intégralement et sans erreurs.
59
1. Présentation du simulateur Packet Tracer de Cisco
Comme les systèmes réseaux continuent d'évoluer en complexité, des programmes
d'études et les outils pédagogiques émergent pour faciliter l'enseignement et apprendre sur la
technologie de réseautage le réseau de Cisco.
Le programme Academy est conçu pour suivre l'évolution des réseaux en fournissant des
programmes d'études innovants et des outils pédagogiques qui aident les élèves à comprendre
les complexités des technologies de l'information et de la communication (TIC). Dans ce cadre,
le logiciel e-learning Cisco Packet Tracer était développé pour aider les étudiants de
Networking Academy à acquérir compétences en technologie de réseautage dans un
environnement en évolution rapide.
Les étudiants à la recherche de compétences en TIC peuvent désormais bénéficier de
l'accessibilité des programmes d'études en ligne et de nouvelles possibilités d'apprentissage
social, de collaboration, et la concurrence.
Cisco Packet Tracer est un puissant programme de simulation de réseau qui permet aux
étudiants d'expérimenter le comportement du réseau et de demander "what if" des questions.
En tant que partie intégrante de l'Académie de réseautage expérience d'apprentissage complète,
Packet Tracer fournit simulation, visualisation, création, évaluation et collaboration capacités
pour faciliter l'enseignement et l'apprentissage de complexes concepts technologiques Fiche
technique de Cisco Packet Tracer.
Packet Tracer complète l'équipement physique dans la salle de classe en permettant aux
étudiants de créer un réseau avec un nombre presque illimité nombre d'appareils, encourageant
la pratique, la découverte et le dépannage.
L'environnement d'apprentissage basé sur la simulation aide les élèves développent des
compétences du 21ème siècle telles que la prise de décision, pensée créative et critique, et
résolution de problèmes.
Packet Tracer complète les cursus de la Networking Academy, permettant aux
instructeurs d'enseigner et de démontrer facilement concepts techniques et conception de
systèmes de réseaux. Instructeurs peut personnaliser des activités individuelles ou multi-
utilisateurs, en fournissant leçons pratiques pour les étudiants qui offrent de la valeur et de la
60
pertinence leurs salles de classe. Les étudiants peuvent créer, configurer et dépanner réseaux
utilisant un équipement virtuel et des connexions simulées, seul ou en collaboration avec
d'autres étudiants. Packet Tracer offre un environnement efficace et interactif pour apprendre
le réseautage concepts et protocoles. Plus important encore, Packet Tracer aide les étudiants et
les instructeurs créent leurs propres «mondes réseau» virtuels pour l'exploration,
l'expérimentation et l'explication du réseautage concepts et technologies. [33]
2. Caractéristiques techniques du capteur MQ-2 :
Capteur de gaz et de fumée
Puce principale : LM393, ZYMQ-2 détecteur de gaz
Haute sensibilité et bonne sélectivité
Tension de fonctionnement : 5V DC
Tension de sortie analogique : 0 ~ 5V
Plage de détection : 200 à 10000ppm
Longue durée de vie et stabilité fiable
Connexions :
VCC : alimentation positive (5V)
GND : alimentation négative
DO : sortie du signal du commutateur TTL
AO : sortie du signal analogique
Quatre trous de vis pour un positionnement facile
Dimensions : 32 x 22 x 27mm [34]
3. Caractéristiques techniques du capteur Ultrason HC-SR04
Pratiquement tous les matériaux qui reflètent le son peuvent être détectés par ce capteur
et ce, quelle que soit leur couleur. Même les matériaux transparents ou les feuilles minces ne
représentent aucun problème pour un capteur à ultrasons. Les capteurs à ultrasons peuvent voir
à travers l'air chargé en poussières et les brouillards d'encre. Même les dépôts minces sur la
membrane du capteur ne nuisent pas à son fonctionnement
Alimentation : 5v.
Consommation en utilisation : 15 mA.
Gamme de distance : 2 cm à 5 m.
Résolution : 0.3 cm.
Angle de mesure : < 15°. [35]
61
4. Avantages du servomoteur
Un servomoteur est capable d'attendre des positions prédéterminées dans les
instructions qui lui on était donné, puis de les maintenir.
Le servomoteur à l’avantage d’être asservi en position angulaire, cela signifie que
l’axe de sortie du servomoteur respectera la consigne d’instruction que vous lui avez
envoyée en son entrée.
Le fil signale à faible courant peut être raccordé directement à une sortie du PIC, pas
besoin de circuit d'interface
On peut commander l'arrêt, la marche, le sens de rotation et la vitesse du servomoteur
à l'aide d'un seul fil, Economie d'E/S
Le servomoteur tourne à la bonne vitesse pour notre robot
Le servomoteur offre un couple important sous un volume réduit [36]
5. Caractéristiques du capteur température et d'humidité DHT11
Alimentation : 3-5.5V DC
Signal de Sortie : Signal Numérique via single-bus
Capteur : Résistance Polymère
Plage de Mesure : Humidité : 20-90%RH ; Température : 0-50°C
Précision : Humidité +-4%RH (Max +-5%RH) ; Température +-2.0°C
Résolution : Humidité 1%RH ; Température 0.1°C
Dimensions : 12x15.5x5.5mm [37]
62
Dans ce projet, nous présentons une étude sur les objets connectés et nous réalisation d'un
système de Smart Home il contient un capteur de gaz et de fumé en cas de fuites ou en cas de
feu avec alerte à distance par email et SMS. Le système contient également un capteur de
température et d’humidité contrôlé par le Messenger, et il transmit le degré de température par
email. Un capteur ultrason est aussi utilisé, ce dernier est mis à l’entrée de la maison et son
activation et désactivation est faite à distance par Messenger. Une alerte est transmise par SMS
en cas il y a une intrusion de suspect à la maison. Le système réalisé permet aussi de commander
l’ouverture et la fermeture de la porte de maison à distance par Messenger.
نظام المنزل الذكي الذي يحتوي على من خلالها احققنالتي انترنت الاشياءدراسة حول ناقدم، مشروعفي هذا ال
أو في حالة نشوب حريق عن طريق البريد الإلكتروني والرسائل للغاز حدوث تسربمع تنبيه عند مستشعر غاز ودخان في
جة ، وينقل درالماسنجر المستخدم عن طريق فيه يتحكم القصيرة. يحتوي النظام أيضًا على مستشعر درجة حرارة ورطوبة
يتم وضع هذا الأخير في مدخل المنزلي، ما يستخدم جهاز استشعار فوق صوتيالحرارة عن طريق البريد الإلكتروني. ك
. يتم إرسال تنبيه عبر الرسائل القصيرة في حالة وجود أي تدخل مريب باستعمال الماسنجرعن بعد تفعيله وإلغاء تنشيطه
الماسنجر. ية التحكم في فتح وإغلاق باب المنزل عن بعُد بواسطةفي المنزل. كما يتيح النظام المتحقق إمكان
In this project, we present a study on Internet of
Things and we realize a Smart Home system it contains
a gas and smoke sensor in case of leaks or in case of fire
with remote alert by email and SMS. The system also
contains a temperature and humidity sensor controlled by the Messenger, and it transmits the
degree of temperature by email. An ultrasonic sensor is also used, the latter is put at the entrance
of the house and its activation and deactivation is done remotely by Messenger. An alert is sent
by SMS in case there is a suspicious intrusion at home. The realized system also makes it
possible to control the opening and closing of the home door remotely by Messenger.
ملخص
63
Arduino, NodeMCU, MQ2, DHT11, HC-SR04, Servomoteur, http, MQTT, IFTTT, IoT.