Académique Documents
Professionnel Documents
Culture Documents
MEMOIRE
présenté à
en vue de l’obtention du
Diplôme de Master Professionnel en :
systémes Embarqués
Option :
Systèmes Embarqués
par
Sayari Marwa
Au Dieu tout puissant notre créateur. A mon père, en signe d’amour, de reconnaissance et De
gratitude pour tous les soutiens et les sacrifices dont Ils ont fait preuve à mon égards. A mon
mères, notre raison d’être, notre raison de vivre, la Lanterne qui éclaire notre chemin et nous
illumine de Douceur et d’amour. A mon chères frères et sœurs. A mon amis, et à tous mon
proches.
ISIMG Page i
REMERCIEMENT
Avant d’entamer la presentation de notre travail nous voulons exprimer avec beaucoup de
plaisir notre profonde gratitude, notre fidele reconnaissance, nos respects et nos
remerciements.
Nous tenons à remercier egalement notre encadreur «Turki Mariem» pour ses conseils et
ses remarques constructive qu’il nous a donné pour l’elaboration de ce travail.
Nous avons l’honneur d’exprimer nos vifs remerciements à tous ceux qui ont contribute
de prés ou de loin à l’elaboration de ce projet. Nos remerciements les plus sinceres aux
members de jury qui ont voulu accepter de juger notre travail.
Enfin, nous ne pourrons terminer sans remercier tous nos enseignants pour leurs efforts
tout au long de nos etudes universitaires.
ISIMG Page ii
TABLE DES MATIÈRES
INTRODUCTION GÉNÉRALE 1
1 L’EVOLUTION D’IOT 2
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
1.2 Internet des objets (IoT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
1.2.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
1.2.2 Avantages de l’iot . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
1.2.3 Architecture loT typique . . . . . . . . . . . . . . . . . . . . . . . . .4
1.2.4 Fonctionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
1.2.5 Les technologies de communication . . . . . . . . . . . . . . . . . . .6
1.3 LoRa :(Long Range – réseau étendu à longue portée) . . . . . . . . . . . . . .7
1.3.1 Définition LoRaWAN . . . . . . . . . . . . . . . . . . . . . . . . . .7
1.3.2 L’architecture de lora . . . . . . . . . . . . . . . . . . . . . . . . . . .7
1.3.2.1 Les gateway LoRaWAN . . . . . . . . . . . . . . . . . . .8
1.3.2.2 Mode de fonctionnement . . . . . . . . . . . . . . . . . . .8
1.3.3 Les caractéristiques de lora . . . . . . . . . . . . . . . . . . . . . . . .9
1.4 Les protocoles d’applications . . . . . . . . . . . . . . . . . . . . . . . . . . .10
1.4.1 MQTT(Message Queuing Telemetry Transport) . . . . . . . . . . . . .10
1.4.2 CoAP(Constrained Application Protocol) . . . . . . . . . . . . . . . .11
1.4.3 Comparaison MQTT et CoAP . . . . . . . . . . . . . . . . . . . . . .11
1.5 Problématique et solution proposée . . . . . . . . . . . . . . . . . . . . . . . .12
1.5.1 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
1.5.2 Solution proposée . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
1.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
3 Réalisation et expérimentations 27
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
3.2 Configuration des composants du système . . . . . . . . . . . . . . . . . . . .28
3.2.1 Description du système complet . . . . . . . . . . . . . . . . . . . . .28
3.2.2 Configuration du serveur Thingspeak . . . . . . . . . . . . . . . . . .28
3.2.2.1 Création d’un compte . . . . . . . . . . . . . . . . . . . . .29
3.2.2.2 Application MQTTX . . . . . . . . . . . . . . . . . . . . .33
3.2.3 Configuration du Nœud LoRa shield et Arduino . . . . . . . . . . . .34
3.2.3.1 Installation Radio-Head . . . . . . . . . . . . . . . . . . . .35
3.2.3.2 Ajout des autres bibliothèques . . . . . . . . . . . . . . . .35
3.2.4 Configuration de la passerelle Dragino LG01-N . . . . . . . . . . . .36
3.2.4.1 Connexion de LG01-N à l’internet . . . . . . . . . . . . . .36
3.2.4.2 Configuration dans thingSpeak Serveur . . . . . . . . . . .38
3.2.4.3 Editer Dragino par Putty . . . . . . . . . . . . . . . . . . .39
3.3 Développement des applications du système . . . . . . . . . . . . . . . . . . .41
3.3.1 Nœud LoRa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
3.3.2 Validation des résultats . . . . . . . . . . . . . . . . . . . . . . . . . .43
3.3.3 Application mobile . . . . . . . . . . . . . . . . . . . . . . . . . . . .44
3.3.3.1 Les interfaces de l’application mobile . . . . . . . . . . . .44
3.3.3.2 Code d’ application mobile . . . . . . . . . . . . . . . . . .45
3.4 Experimentations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
ISIMG Page iv
TABLE DES MATIÈRES
3.5 Conclusion.............................................................................................................47
CONCLUSION GÉNÉRALE 48
BIBLIOGRAPHIE 48
ISIMG Page v
LISTE DES FIGURES
ISIMG Page vi
LISTE DES FIGURES
Le protocole LoRa est particulièrement adapté à de tels projets car il permet une
communication longue distance (jusqu’à 15 km en champ libre) avec une faible consommation
d’énergie. Cela rend le système particulièrement adapté aux applications IoT (Internet des objets)
et aux réseaux
de communication de machine à machine, tels que la gestion de l’éclairage public.
Pour mettre en œuvre ce système, des capteurs et actionneurs LoRa doivent être
développés pour contrôler l’éclairage et détecter les défauts. Ces capteurs et actionneurs seront
connectés à un réseau de passerelles LoRa, qui relayeront les données vers un serveur de
gestion central. Le serveur sera responsable de la collecte et du traitement des données, et
fournira aux opérateurs une interface de gestion et de contrôle.
ISIMG Page 1
Chapitre
1
L’EVOLUTION D’IOT
Sommaire
1.1 Introduction........................................................................3
1.2 Internet des objets (IoT)....................................................3
1.2.1 Définition.....................................................................................3
1.2.2 Avantages de l’iot.........................................................................4
1.2.3 Architecture loT typique.............................................................4
1.2.4 Fonctionnement...........................................................................5
1.2.5 Les technologies de communication..........................................6
1.3 LoRa :(Long Range – réseau étendu à longue portée)..........7
1.3.1 Définition LoRaWAN...................................................................7
1.3.2 L’architecture de lora..................................................................7
1.3.3 Les caractéristiques de lora........................................................9
1.4 Les protocoles d’applications..............................................10
1.4.1 MQTT(Message Queuing Telemetry Transport)........................10
1.4.2 CoAP(Constrained Application Protocol)...................................11
1.4.3 Comparaison MQTT et CoAP.................................................11
1.5 Problématique et solution proposée....................................12
1.5.1 Problématique..............................................................................13
1.5.2 Solution proposée........................................................................13
1.6 Conclusion..........................................................................13
ISIMG Page 2
L’EVOLUTION D’IOT
1.1 Introduction
La partie 2 illustre les différentes technologies utilisées dans notre projet et particulièrement le
protocole LoRa ainsi que le protocole d’application MQTT. Finalement, nous allons présenter
quelques problématiques affrontées dans les villes intelligentes ainsi que la solution que nous
proposons dans ce contexte.
1.2.1 Définition
L’Internet of Things (IoT) ou Internet des objets a été défini de plusieurs façons depuis sa
création. Il peut être considéré comme « un réseau qui relie et combine les objets avec
l’Internet, en suivant les protocoles qui assurent leurs communication et échange des
informations à travers une variété de dispositifs. »[1]
L’IoT peut se définir aussi comme étant un réseau de réseaux qui permet, via des système
d’identification électroniques normalisés et unifiés, et des dispositifs mobiles sans fil,
d’identifier directement et sans ambiguïté des entités numériques et des objets physiques et
ainsi , de pouvoir récupérer, stocker, transférer et traiter les données sans discontinuité entre
les mondes physiques et virtuels. »[2]
ISIMG Page 3
L’EVOLUTION D’IOT
Pour l’industrie ainsi que de nombreux domaines, l’IoT représente un virage technologique
qui facilite l’automatisation des systèmes classiques et précédemment manuellement
contrôlables. Ainsi, l’Internet des objets présente les avantages et les caractéristiques suivantes...
• Une faible consommation d’énergie
• Une faible puissance de calcul
• Une petite taille
• Un prix bas
L’architecture IoT se compose de plusieurs systèmes IoT connectés pour garantir que les
données d’objet générées par les capteurs sont collectées, stockées et traitées dans l’entrepôt
de données volumineuses, et que les actionneurs d’objet exécutent les commandes envoyées
via l’application utilisateur.C’est un cadre qui définit les composants physiques,
l’organisation fonctionnelle et la configuration du réseau, les procédures d’exploitation et les
formats de données à utiliser.
Cependant, il n’existe pas d’architecture de référence standard unique pour l’IoT car elle
englobe plusieurs technologies. Cela signifie qu’il n’y a pas de modèle unique que toutes les
ISIMG Page 4
L’EVOLUTION D’IOT
implémentat-
ISIMG Page 5
L’EVOLUTION D’IOT
1.2.4 Fonctionnement
Les capteurs enregistrent les valeurs mesurées, par exemple la température, la pression, la
géographie Place...
Les mesures effectuées par les capteurs sont envoyées à la passerelle. Le rôle de la passerelle
est d’établir la communication entre réseaux (publics ou privés, généralement des nuages) et
des objets. Parfois, les fonctions intelligentes intégrées à la passerelle peuvent Non seulement
contrôle la fonctionnalité de l’objet, mais garantit également le stockage et traitement de
l’information. Pour les protocoles courte portée (Zigbee, Z-Wave, Wifi...), la passerelle est locale,
généralement connectée à l’hôte du FAI.
ISIMG Page 6
L’EVOLUTION D’IOT
Les objets connectés font désormais partie de notre quotidien : montres connectées,
balances connectées, trackers d’activité, etc. De nombreuses applications ont vu le jour dans le
domaine de la santé et du bien-être, mais cela ne représente qu’une partie du marché futur. Les
solutions IoT tournent autour des applications, des objets électroniques, des serveurs
d’applications. Cependant, afin d’interconnecter des objets avec des serveurs, une infrastructure
réseau spécifique à l’IoT et au M2M doit être déployée. Les trois principales technologies à ce
jour sont Sigfox, LoRa et LTE-M/NB-IoT. La localisation de ces technologies dépend plus du
"business model" que de la technologie sous-jacente, on peut donc déjà citer trois principales
différences : SigFox, la technologie du même nom, se positionne comme l’opérateur de
"l’internet des objets".
ISIMG Page 7
L’EVOLUTION D’IOT
LoRa (Long Range) est un spectre étalé de modulation fabriqué par la société Semtech.
C’est un dérivé de Chirp Spectre étalé (CSS). La couche physique LoRa peut être utilisée
avec n’importe quelle couche MAC ; cependant, LoRaWAN est le MAC actuellement
proposé qui exploite un réseau dans une simple topologie en étoile.
ISIMG Page 8
L’EVOLUTION D’IOT
Les passerelles utilisent le backhaul IP pour envoyer des données aux serveurs Web avec une
grande capacité de transmission. Architecture LoRa typique illustrée à la figure 2.
Les appareils utilisant la technologie LoRa se connectent à Internet via une passerelle.
Concrètement, pour déployer un réseau LoRaWAN, les opérateurs publics ou privés installent
des stations de base équipées d’antennes fabriquées par des équipementiers télécoms. Ces
appareils doivent être connectés à Internet afin d’envoyer les données qu’ils reçoivent sur le
web afin qu’elles puissent être consultées par les entreprises et les particuliers utilisant les
objets LoRa Connect. Les appareils intelligents situés à proximité de ces antennes sont
équipés de puces LoRa, leur permettant de se connecter périodiquement au réseau pour
envoyer ou recevoir des informations. Selon Semtech, plus d’un million de passerelles sont
déployées dans le monde.
ISIMG Page 9
L’EVOLUTION D’IOT
récepteur. Si la transmission échoue, elle sera réémise après un certain temps. Cette
transmission est suivie de 2 fenêtres de réception très courtes. La Gateway peut alors
transmettre pendant la fenetre de reception 1« RX Slot 1 » ou la fenetre de reception 2 « RX
Slot 2 » (sur le même canal de transmission), mais pas les deux. Le Slot RX1 et RX2 sont
programmés respectivement par défaut à 1 et 2 seconde +/ 20 s après la fin de l’émission
Uplink.
Classe B (Beacon) Scheduled Receive Slot Les Devices de classe B ont le même
comportement que les Devices de classe A, mais d’autres fenêtres de réceptions sont
programmées à des périodes précises. Afin de synchroniser les fenêtres de réception du
Device LoRa, la Gateway doit transmettre des balises (Beacons) de façon régulière.
=> Un Device LoRa de classe B est joignable régulièrement sans qu’il soit nécessairement
obligé d’émettre. En revanche, il consomme plus qu’un Device de classe A.
Classe C (Continuous) : Continuously Listening Les Devices de classe C ont des fenêtres
de réception constamment ouvertes entre 2 Uplinks. Ces Devices consomment donc beaucoup
plus.
=> Un Device LoRa de classe C est joignable en permanence. En revanche, c’est la classe de
Device qui est la plus énergivore.
Un réseau LoRa est une technologie plus économe en énergie que le cellulaire. Elle
permet aux appareils d’avoir une autonomie plus longue (les batteries peuvent facilement
atteindre 10 ans).
• Les taux de transmission de données avec LoRa sont plus lents qu’avec le
cellulaire, mais cela peut être suffisant pour de nombreuses applications IoT telles
que les parkings, l’agriculture. . .
• La technologie LoRa fonctionne dans des bandes sans licence, ce qui signifie qu’il
n’est pas nécessaire d’acheter ou de louer des licences de spectre.
• Les modules LoRa sont moins chers que les modules cellulaires.
• Lora est plus adaptée aux zones rurales et éloignées où la couverture cellulaire est
limitée.
ISIMG Page 10
L’EVOLUTION D’IOT
L’Internet des objets (IoT) est un vaste réseau de différents appareils intelligents. L’IoT
permet aux objets de collecter et d’échanger des données, et communiquer entre eux. Pour
assurer cette communication ainsi que la communication entre les passerelles et la couche
application, il est possible d’utiliser différents protocoles tels que le protocole web CoAP et
le protocole de messagerie MQTT.
Un client, appelé publisher, établi dans un premier temps une connexion de type ‘publish’
avec le serveur MQTT, appelé broker. Puis, le publisher transmet les messages au broker sur
un canal spécifique, appelé topic. [3]
.
ISIMG Page 11
L’EVOLUTION D’IOT
Protocole optimisé pour la bande passante et les réseaux contraints, conçu pour une
capacité de connexion limitée par les appareils dans un cadre de communication de machine à
machine. CoAP est aussi un protocole de transport qui fonctionne sur le protocole UDP (User
Datagram Protocol).[4]
Pour transférer des données, le client envoie une requête CoAP au serveur, où L’un d’eux est :
le type du message, l’identifiant du message (mid) et une action (GET, POST, PUT ou
DELETE) après que le serveur aura renvoyé une réponse. [3]
Il est possible de dire que les deux protocoles sont utiles en tant que protocole IoT de la
couche application, mais il existe des différences fondamentales.
et ça en utilisant moins de bande passante ce qui rend ce protocole idéal pour les
environnements de réseau local dans le quelle les périphériques doivent se parler rapidement.
CoAP MQTT
Protocole de couche Fonctionne sur UDP, Fonctionne sur TCP,
de transport TCP peut être utilisé UDP peut être utilisé (MQTTSN)
Mécanisme de fiabilité CON, ACK, NON, RST Les 3 niveaux de qualité de service
Modèle de communication Demande/Réponse Publication/Abonnement
En-tête 4 Octets 2 Octets
Mode de messagerie Utilise à la fois le mode Utilise uniquement
asynchrone et synchrone. le mode asynchrone
Nombre de types 4 16
de messages utilisés
TABLE 1.2 – différences majeures entre MQTT et COAP
-> MQTT est plus adapté pour les applications de gestion de données nécessitant un haut
débit et une fiabilité élevée, comme les systèmes de surveillance industrielle.
Dans cette partie, nous allons décrire la problématique posée pour notre projet ainsi que la
solution que nous proposons.
ISIMG Page 13
L’EVOLUTION D’IOT
1.5.1 Problématique
Dans les villes intelligentes, les différentes composantes doivent communiquer ensemble
afin de fournir les services les plus optimisés et les plus performants. Dans ce contexte, la
gestion de l’éclairage est une fonctionnalité primordiale qui permet d’une part d’économiser
la consommation énergétique et d’autres part de présenter le meilleur service aux conducteurs
passant par une zone particulière.
Pour remédier à ce problème, nous présentons une solution qui comporte deux volets :
• Un volet matériel comportant des nœuds basés sur la technologie LoRa qui permettent
de détecter la présence des voitures dans un endroit particulier afin de contrôler l’état
des lampes dans la rue à proximité. L’information sera transmise au serveur cloud (flux
Uplink) puis au serveur application (mobile).
—Au niveau des nœuds qui sont alimentés avec des batteries en utilisant le protocole
LoRa
—Au niveau des lampes qui sont allumées uniquement en cas de besoin
• Supervision de l’état des voitures à distance afin de déterminer les zones actives et à
forte congestion.
1.6 Conclusion
Dans ce chapitre, nous avons présenté l’Iot et nous avons montré que cette technologie
a contribué efficacement au développement de notre quotidien. puis, Nous avons décrit les
ISIMG Page 14
L’EVOLUTION D’IOT
techniques de communication. Ensuite, nous avons regardé LoRa à titre d’exemple d’IoT, son
architecture et son fonctionnement... Enfin, nous avons parlé des protocoles de
communication. En effet, nous avons décrit Les protocoles MQTT et CoAP et leurs
différences.
ISIMG Page 15
Chapitre
2
Conception du système de contrôle
Sommaire
2.1 Description générale du projet...........................................16
2.2 Description de la partie matérielle.....................................17
2.2.1 La présentation du kit Lora IoT.................................................17
2.2.2 PasserelleLG01-N........................................................................18
2.2.3 LoRa Shield + Arduino UNO......................................................19
2.2.4 LoRa/GPS Shield + Arduino UNO............................................20
2.2.5 Arduino Uno................................................................................21
2.2.6 Capteur de presence....................................................................21
2.3 Description de la conception logicielle..............................22
2.3.1 Application de gestion de l’éclairage.........................................22
2.3.2 IDE arduino.................................................................................23
2.3.3 The ThingSpeak..........................................................................24
2.3.4 Le protocole MQTT.....................................................................25
2.3.5 App inventor...............................................................................26
2.4 CONCLUSION.....................................................................26
ISIMG Page 15
CONCEPTION DU SYSTÈME DE CONTRÔLE
Introduction
Le kit Dragino Lora IoT est conçu pour aider les débutants et les développeurs à
apprendre rapidement la technologie LoRa et IoT. Il est facile à programmer, créer et
connecter les objets n’importe où. Un certain nombre d’opérateurs de télécommunications
déploient actuellement des réseaux, mais comme LoRa fonctionne dans le spectre ouvert, il est
possible également de configurer un réseau LoRa personnel.
Dans ce chapitre, nous présentons le kit Dragino ainsi que les protocoles utilisés pour la
transmission de données de bout en bout.
En appui au projet "Smart City" en Tunisie, nous visons de développer un système intelligent
de gestion de l’éclairage public dans une ville intelligente comme le montre la figure 2.1.
ISIMG Page 16
CONCEPTION DU SYSTÈME DE CONTRÔLE
Ainsi, comme le montre la figure 2, notre projet inclus un certain nombre de couches qu’il
est possible de divisé principalement en deux parties :
• Une composante matérielle qui comprend un nœud basé sur la technologie LoRa
qui peut détecter la présence d’une voiture à un emplacement spécifique. Les
éclairages à proximité seront allumés pendant une durée bien déterminée. Les
informations sur l’état des lampes seront transmises à la passerelle puis au serveur
de données thingspeak (flux montant) puis au serveur applicatif. Ces données
seront utiles pour visualiser à distance l’état des lampes.
• Une composante logicielle qui permet le développement d’une interface
permettant de visualiser l’état d’une lampe (allumée ou éteinte).
Dans cette partie, nous allons décrire les composants matériels utilisés pour la mise en place
de notre solution proposée.
Tout d’abord, nous introduisons la composition du kit LoRa dans la figure 2.3.
ISIMG Page 17
CONCEPTION DU SYSTÈME DE CONTRÔLE
Dans le kit Dragino LoRa IOT, nous avons trouvé 21 composants ; Parmi eux, il intègre
une passerelle LG01-N avec son antenne et son chargeur d’alimentation. LoRa Shield et LoRa
GPS Shield sont livrés avec une carte arduino Uno, une antenne et un câble USB pour le
téléversement du code.
De plus, divers capteurs tels que des buzzers, des relais, des capteurs de flamme, des
capteurs à ultrasons et DHT11 sont encore présents dans le kit.
2.2.2 PasserelleLG01-N
Le kit a une passerelle générique et simple avec des composants de base mise en place de
cette architecture. La figure 2.3 illustre l’architecture intérieure de la passerelle qui contient
principalement retrouve les éléments décrits dans la table 2.1
La communication entre la partie MCU et la partie Linux se fait avec une transmission UART.
ISIMG Page 18
CONCEPTION DU SYSTÈME DE CONTRÔLE
Il s’agit d’un Arduino Shield avec la technologie LoRa® et basé sur des bibliothèques
open source. Ce bouclier, présenté par la figure 2.4, permet aux utilisateurs d’envoyer des
données à des débits de données faibles et d’atteindre des distances extrêmement longues tout
en minimisant la consommation d’énergie.
Le rôle principal de la carte Arduino est de faire l’acquisition des données à partir des
capteurs reliés à cette carte. Le shield LoRa se charge de transmettre ces données à la
passerelle LoRa en utilisant une fréquence spécifique transmise et reçue à travers des antennes
reliées à la shield aussi bien qu’à la passerelle.
ISIMG Page 19
CONCEPTION DU SYSTÈME DE CONTRÔLE
Le LoRa/GPS Shield est une carte d’extension pour LoRa™/GPS qui peut être utilisée
avec Arduino. Ce produit est destiné aux personnes intéressées par le développement de
solutions LoRa™/GPS. Comme le montre la figure2.5, LoRa/GPS Shield se compose de la
carte mère LoRa/GPS Shield et de LoRa BEE.
ISIMG Page 20
CONCEPTION DU SYSTÈME DE CONTRÔLE
Arduino® est un ensemble matériel et logiciel qui permet d’apprendre l’électronique tout
en apprenant la programmation informatique.
Arduino est open source. Il est possible donc de télécharger les schémas originaux et créer des
cartes personnelles destinées à la vente sans payer de royalties.
Un capteur de présence peut détecter un mouvement dans son champ de vision grâce à
l’infrarouge. Il s’agit d’un capteur numérique, également appelé capteur PIR. Les caractéristiques
techniques du capteur sont :
• Dimensions : 32 x 24 x 27H mm
• Tension : 5-12VDC
• Sortie : 3,3V TTL
• Distance de détection : 3-7mt (approx, ajustable)
• Sensibilité : 5-200s (adjustable
Déclenchement :
L –> déclencheur non répétable
ISIMG Page 21
CONCEPTION DU SYSTÈME DE CONTRÔLE
H –> déclencheur
La figure 2.8 représente une vue générale du capteur de position PIR.
Dans cette partie, nous allons décrire toutes les composantes logicielles de notre solution
proposée.
Tout d’abord, nous présentons les différentes fonctionnalités générales de notre projet. La
figure montre l’organigramme décrivant le séquencement des étapes de notre application.
ISIMG Page 22
CONCEPTION DU SYSTÈME DE CONTRÔLE
Lorsqu’un véhicule est détecté dans un endroit particulier, seules les lumières de cette
zone sont allumées pendant 2 minutes. En effet, nous considérons que 2 minutes sont
suffisantes au véhicule pour s’éloigner de cette zone. De cette manière pas besoin de laisser
les lumières allumées toute la nuit et une économie optimale de l’énergie est obtenue. L’état
des lumières (allumées ou pas) sera transmis au serveur de données avant d’être affiché par
une application mobile.
Les créateurs d’Arduino ont développé un logiciel qui rend la programmation des cartes
Arduino intuitive, facile et complète.
Un IDE, qui signifie environnement de développement intégré ou environnement de
développem- ent "intégré" en français (d’où le nom IDE).
L’IDE affiche une fenêtre graphique avec un éditeur de texte et tous les outils nécessaires aux
activités de programmation.
Il est possible donc de saisir le programme, le sauvegarder, le compiler, le vérifier, le transférer
sur la carte arduino...
Au moment de la rédaction de cette page, la dernière version de l’IDE Arduino est la 1.8.19.
Chaque plate-forme (Windows, Mac et Linux) se ressemble à peu près. L’image ci-dessous 2.9
ISIMG Page 23
CONCEPTION DU SYSTÈME DE CONTRÔLE
ThingSpeak est une plateforme IoT qui collecte, affiche, analyse et réagisse aux données
en temps réel. L’application source a été initialement lancée par ioBridge en 2010. Il aide à
construire des systèmes IoT sans configurer d’éléments supplémentaires serveur. L’échange de
données avec thinkspeak peut etre assuré par l’utilisation de l’API REST ou MQTT. L’analyse
et la visualisation des données utilisentl’outil MATLAB. [6]
ISIMG Page 24
CONCEPTION DU SYSTÈME DE CONTRÔLE
Dans l’exemple ci-dessus, un éditeur, à savoir un capteur de température, publie des valeurs
de température dans le broker via un topic ou "topic" nommé "température". Un Smartphone
ou un PC peut se connecter au courtier en tant qu’abonné et demander s’il y a une valeur dans
la rubrique "température". À ce stade, le courtier enverra leur température relative.
ISIMG Page 25
CONCEPTION DU SYSTÈME DE CONTRÔLE
App Inventor est un IDE qui permet de créer des applications pour le système Android
(téléphones, tablettes...). App Inventor est une application développée par Google. Elle est
actuellement maintenue par le Massachusetts Institute of Technology (MIT).[7]
. L’IDE App Inventor se présente sous la forme d’une application en ligne, accessible depuis le
site Web d’App Inventor, et il permet de créer des projets tout en exécutant les étapes suivantes :
• Créer la page graphique de la future application : les objets nécessaires à l’installation
de l’application sur la page de travail.
• Création du programme : association de blocs liés à des objets préalablement
définis. Le programme permet également de télécharger l’application sur le
support souhaité (tablette, téléphone, etc.)
2.4 CONCLUSION
ISIMG Page 26
Chapitre
3
Réalisation et expérimentations
Sommaire
3.1 Introduction.......................................................................28
3.2 Configuration des composants du système.........................28
3.2.1 Description du système complet................................................28
3.2.2 Configuration du serveur Thingspeak.......................................28
3.2.3 Configuration du Nœud LoRa shield et Arduino......................34
3.2.4 Configuration de la passerelle Dragino LG01-N......................36
3.3 Développement des applications du système......................41
3.3.1 Nœud LoRa..................................................................................41
3.3.2 Validation des résultats..............................................................43
3.3.3 Application mobile......................................................................44
3.4 Experimentations...............................................................46
3.5 Conclusion..........................................................................47
ISIMG Page 27
RÉALISATION ET EXPÉRIMENTATIONS
3.1 Introduction
Dans ce chapitre, nous décrivons les différentes étapes réalisées lors de la mise en place
de notre système de gestion de l’éclairage public. Dans un premier temps, l’installation des
différents logiciels et bibliothèques est détaillée. Ensuite, les étapes de configuration, de
collecte et de transfert des données sont expliquées.
Dans cette partie, nous décrivons les phases de réalisation du projet, notamment la partie
matérielle et la partie logicielle.
Dans cette partie, nous allons décrire les étapes de configuration du serveur Thingspeak
afin d’assurer la communication avec la passerelle Dragino.
ISIMG Page 28
RÉALISATION ET EXPÉRIMENTATIONS
Pour créer un compte sur le serveur ThingSpeak, il faut suivre les étapes à suivantes :
• Un e-mail de confirmation sera généré avec un lien à cliquer pour activer le compte.
Ainsi, le compte sera créé comme le montre la figure 3.2. Par la suite, il faut cliquer sur le
bouton "New Channel" en haut à droite de la page d’accueil pour créer une nouvelle
chaîne/canal. La chaine (ou le canal) servira pour la récupération des données à partir des
capteurs.
ISIMG Page 29
RÉALISATION ET EXPÉRIMENTATIONS
Pour créer un canal (channel) sur ThingSpeak, il faut suivre les étapes suivantes :
• Saisir le nom du canal et une description (facultatif) dans les champs correspondants.
• Définir les paramètres du canal, tels que le nombre de champs à afficher, le type de
données (numérique, texte, etc.), et les options de partage et de publication.
Une fois que le canal est créé, il est possible d’y envoyer des données en utilisant l’API
ThingSpeak ou l’une des nombreuses options de connexion proposées, telles que les
bibliothèques de clients ou les connecteurs de services tiers. Il est possible également de
configurer les notifications et des alertes, afficher les données sur des graphiques et utiliser les
différentes fonctionnalités proposées par le service.
ISIMG Page 30
RÉALISATION ET EXPÉRIMENTATIONS
FIGURE 3.5 – Interface de visualisation des données après quelques minutes d’exécution
Dans notre projet, nous allons effectuer une transmission de données entre la passerelle
Dragino et le serveur Thingspeak en utilisant le protocole MQTT. Par conséquent, nous allons
configurer les paramètres de cette communication dans thingspeak. Pour cela, il suffit de
suivre les étapes suivantes :
• Cliquer sur le bouton "Ajouter un appareil" dans le coin supérieur droit de l’écran.
• Donner un nom à l’appareil et entrer son identifiant (un nom unique choisi pour l’appareil).
ISIMG Page 31
RÉALISATION ET EXPÉRIMENTATIONS
Cette page affiche les informations de connexion MQTT pour le canal sélectionné, notamment
l’ID du canal, l’identifiant de l’utilisateur et le mot de passe.
Une fois que l’appareil est enregistré, il est possible d’utiliser MQTT pour publier des
données sur le canal ThingSpeak à partir de cet appareil. Il est possible également de
configurer des notifications pour recevoir des alertes lorsque de nouvelles données sont
publiées sur notre canal.
ISIMG Page 32
RÉALISATION ET EXPÉRIMENTATIONS
• Ouvrir MQTTX et cliquer sur l’onglet "connections" dans le menu de gauche, puis
"new connection".
• Entrer les informations de connexion pour le serveur MQTT, telles que l’adresse IP ou
le nom d’hôte, le port et les identifiants d’utilisateur et de mot de passe (le cas échéant).
• Donner l’ID de chaîne du canal thingspeak et entrer le sujet (topic) MQTT auquel nous
souhaitons publier des données.
ISIMG Page 33
RÉALISATION ET EXPÉRIMENTATIONS
Il est possible maintenant d’utiliser MQTTX pour publier des données sur le canal MQTT
ou souscrire à des sujets pour recevoir des notifications lorsque de nouvelles données sont
publiées.
Dans cette partie, nous allons détailler les étapes de configuration et de programmation du
nœud LoRa : Le shield LoRa+ Arduino.
Préparation de l’environnement
Après avoir installé l’IDE Arduino, le gestionnaire de carte correspondant doit être ajouté.
Il est nécessaire donc de démarrer l’IDE Arduino. Puis dans le menu "Fichier", cliquer sur
Préférences et ajouter le lien suivant dans l’icône URL du gestionnaire de cartes d’extension :
http ://www.dragino.com/downloads/downloads/YunShield/package-dragino-yun-test-index.json
ISIMG Page 34
RÉALISATION ET EXPÉRIMENTATIONS
Pour assurer une communication réussie entre LORA et Arduino, il est fortement recommandé
d’utiliser la bibliothèque Radio-Head.La bibliothèque peut être téléchargée à partir de cette référence.
[7]
Pour inclure cette bibliothèque dans l’IDE Arduino, il faut suivre simplement les étapes
illustrées à la Figure 3.15. Après avoir lancé l’IDE Arduino, dans le menu d’esquisse,
sélectionnons Inclure une bibliothèque et cliquons sur « ajouter la bibliothèque.ZIP ».
Le projet nécessite également plusieurs autres bibliothèques. Les exemples que nous donnons
sont Arduino -LMIC, LoRa-Raw, Tinygps, . ThingSpeak, SPI,LoRa. Pour la bibliothèque
Arduino-
ISIMG Page 35
RÉALISATION ET EXPÉRIMENTATIONS
LMIC, qui est utilisée pour la configuration EndNode, le LoRa-Raw garantit que les données
sont transmises et visualisées sur le réseau LoRa,.
Pour nous assurer que le LG01-N est connecté à Internet, nous suivons les étapes ci-dessous :
• Accéder au LG01-N : À l’aide du câble de données RJ45, nous nous assurons que le
PC est connecté au "port LAN" du LG01-N. Le port Ethernet du PC est configuré sur le
DHCP "Dynamic Host Configuration Protocol", et l’IP du LG01-N est obtenu par le
PC.
Cela ouvre une interface d’autorisation, comme illustré à la Figure 3.16. Nous avons juste besoin
d’entrer les données suivantes pour passer à l’étape suivante.
ISIMG Page 36
RÉALISATION ET EXPÉRIMENTATIONS
Une fois un wifi approprié est identifié, cliquer simplement sur " Join Network " pour se
connecter. Cette tâche est illustrée à la Figure 3.17.
Ouvrir l’interface de saisie du nom de réseau et du mot de passe. Entrer simplement les
données recommandées et cliquer sur " Submit ", comme illustré à la Figure 3.18.
ISIMG Page 37
RÉALISATION ET EXPÉRIMENTATIONS
Pour vérifier que le réseau a été ajouté avec succès, regarder simplement le menu réseau et
accéder à Présentation du réseau sans fil. Cette section nous permet de voir le nom du réseau,
la vitesse et l’adresse physique.
Après avoir connecté la LG01-N à l’internet, il faut configurer le serveur « The ThingSpeak
». En effet, nous avons suivis les étapes suivantes :
Etape 1 : Paramètres du serveur LoRaWAN.
Dans la figure suivant nous avons modifié les paramètres suivantes :
Service IdO : Transfert serveur LoRaRaw vers le serveur MQTT
Adresse du serveur : mqtt3.thingspeak.com
Adresse mail : marwa.sayari@isimg.tn
ISIMG Page 38
RÉALISATION ET EXPÉRIMENTATIONS
• Dans le champ "Host Name" (Nom d’hôte), saisir l’adresse IP de la carte Dragino. Par
exemple, saisir "10.130.1.1" dans ce champ.
• Cliquer sur le bouton "Open" pour ouvrir une session de terminal avec la carte Dragino.
ISIMG Page 39
RÉALISATION ET EXPÉRIMENTATIONS
Désormais, il est possible d’envoyer des commandes à l’aide du terminal. Il suffit de consulter
la documentation de la carte Dragino pour obtenir plus d’informations sur les différentes
commandes et fonctionnalités disponibles.
ISIMG Page 40
RÉALISATION ET EXPÉRIMENTATIONS
Dans cette partie, nous détaillerons les différentes applications développées afin de mettre
en place notre solution proposée.
Dans cette partie, nous présentons les parties principales du programme implémenté dans le
nœud LoRa. Il s’agit principalement d’un code en C utilisé et exécuté par la carte Arduino.
• Bibliothèque
—Le fichier "ThingSpeak.h" est une bibliothèque Arduino qui simplifie le processus
d’envoi de données aux canaux ThingSpeak.
—Le fichier "SPI.h" est une bibliothèque Arduino qui permet de gérer la
communication SPI (Serial Peripheral Interface) sur la carte Arduino.
—Le fichier "LoRa.h" est une bibliothèque Arduino qui permet de gérer les
communications LoRa (Long Range) sur notre carte Arduino.
• Communication matérielle
ISIMG Page 41
RÉALISATION ET EXPÉRIMENTATIONS
server Name : est une chaîne de caractères contenant l’adresse du serveur MQTT à
utiliser. char *node-id :Le canal local sur MQTT.
Lorsqu’une voiture est détectée, le capteur de mouvement donne une valeur= ‘1’. Dans ce cas,
la lampe à proximité est allumée et son état est envoyé vers l’application mobile à travers le
LoraWAN. Cette lampe reste allumée pendant 3 secondes puis elle est éteinte. Une fois la
lampe est éteinte, son état est envoyé à l’application mobile.
ISIMG Page 42
RÉALISATION ET EXPÉRIMENTATIONS
L’évaluation des performances a été réalisée par la passerelle Dragino LG01-N, qui utilise
un seul canal de communication LoRa pour recevoir les messages des capteurs. Tout d’abord,
moniteur série a été utilisé pour visualiser l’heure à laquelle le capteur envoie le message.
Ensuite, entrer les commandes pour transferts les données à travers ThingSpeak.
ISIMG Page 43
RÉALISATION ET EXPÉRIMENTATIONS
Depuis l’interface thingSpeak, nous pouvons voir les données envoyées à travers la passerelle.
La figure 3.33 présente un exemple de transmission des données
Dans cette partie, nous allons présenter les différentes interfaces de notre application mobile.
La première figure 3.34 représente l’écran d’accueil de notre application. Dans cette interface,
l’utilisateur peut choisir s’il veut consulter l’état des sources d’éclairage.
ISIMG Page 44
RÉALISATION ET EXPÉRIMENTATIONS
A travers cette interface il est possible faire l’appel au lien du canal avec la boucle « baca »
et puis lire la valeur de l’état de la lampe à travers une requette HTTP.
ISIMG Page 45
RÉALISATION ET EXPÉRIMENTATIONS
3.4 Experimentations
La figure 3.36 représente le câblage de notre système. Le choix des différents pins a été
effectué en respectant les différentes contraintes des capteurs utilisés. La connexion entre le
capteur et pins est détaillé dans le tableau ci-dessous.
ISIMG Page 46
RÉALISATION ET EXPÉRIMENTATIONS
3.5 Conclusion
Dans ce chapitre, nous avons détaillé les différentes étapes de la mise en œuvre matérielle
et logicielle du système. Dans la section matérielle, les différentes étapes de configuration
sont décrites. Dans la section des applications logicielles, différents outils et logiciels ainsi
que des codes sont développés pour présenter l’application mobile.
ISIMG Page 47
CONCLUSION
GÉNÉRALE
Le projet de développement d’un système de gestion de l’éclairage public utilisant le protocole
LoRa est une opportunité de mettre en pratique les connaissances acquises en matière de
communication sans fil et de développement de capteurs et d’actionneurs IoT. Le choix du
protocole LoRa
s’est avéré être un choix judicieux en raison de sa longue portée et de sa faible consommation
d’énergie, ce qui le rend idéal pour de telles applications.
Le système a été testé en conditions réelles et s’est avéré fiable et efficace, permettant un
contrôle efficace de l’éclairage public et une détection rapide des pannes. Le développement
de ce système met en évidence le potentiel du protocole LoRa pour de telles applications et
ouvre de nouvelles possibilités pour développer des systèmes de gestion de l’éclairage public
utilisant la technologie IoT.
ISIMG Page 48
BIBLIOGRAPHIE
-applicatifs-utiliser-1-2/
[5]https ://www.positron-libre.com/electronique/arduino/arduino.php
[7][7]https ://github.com/dragino/RadioHead/archive/master.zip
ISIMG Page 49