Tải bản đầy đủ (.pdf) (67 trang)

Développement dapplications mobiles utilisant la géolocalisation en intérieur = phát triển ứng dụng di động sử dụng vị trí địa lý trong nhà luận văn ths công nghệ thông tin

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.31 MB, 67 trang )

UNIVERSITE NATIONALE DU VIETNAM, HANOI
INSTITUT FRANCOPHONE INTERNATIONAL

NGUYỄN QUỐC KHẢI

DÉVELOPPEMENT D'APPLICATIONS MOBILES
UTILISANT LA GÉOLOCALISATION EN INTÉRIEUR
PHÁT TRIỂN ỨNG DỤNG DI ĐỘNG SỬ DỤNG VỊ TRÍ
ĐỊA LÝ TRONG NHÀ

MÉMOIRE DE FIN D’ÉTUDES DU MASTER INFORMATIQUE

HANOI – 2016


UNIVERSITE NATIONALE DU VIETNAM, HANOI
INSTITUT FRANCOPHONE INTERNATIONAL

NGUYỄN QUỐC KHẢI

DÉVELOPPEMENT D'APPLICATIONS MOBILES
UTILISANT LA GÉOLOCALISATION EN INTÉRIEUR
PHÁT TRIỂN ỨNG DỤNG DI ĐỘNG SỬ DỤNG VỊ TRÍ
ĐỊA LÝ TRONG NHÀ

Spécialité : Réseaux & Systèmes Communicants
Code : Programme pilote
MÉMOIRE DE FIN D’ÉTUDES DU MASTER INFORMATIQUE

Sous la direction de :
Maître de conférences, Dr. Besma ZEDDINI


Maître de conférences, Dr. Julien MERCADAL

HANOI – 2016


ATTESTATION SUR L’HONNEUR
J’atteste sur l’honneur que ce mémoire a été réalisé par moi-même et que les
données et les résultats qui y sont présentés sont exacts et n’ont jamais été publiés
ailleurs. La source des informations citées dans ce mémoire a été bien précisée.

LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi.
Các số liệu, kết quả nêu trong Luận văn là trung thực và chưa từng được ai công
bố trong bất kỳ công trình nào khác. Các thông tin trích dẫn trong Luận văn đã
được chỉ rõ nguồn gốc.

Nguyễn Quốc Khải


REMERCIENTS

Durant mon stage, j'ai bénéficié du soutien moral et technique de plusieurs
personnes ce qui a rendu mon environnement de travail très agréable.
J'adresse mes remerciements à mes encadrants : Mme. Besma ZEDDINI chargée
de la direction de l’équipe, co-responsable de l'option Smart Systems et M. Julien
MERCADAL encadrant du projet qui, par ses accueils, ses expériences, ses don
d’écoute et ses tolérances, ont guidé mon activité tout en préservant mon esprit
d’initiative, durant toute la période de la réalisation mon stage.
Je tiens à remercier vivement mon professeur : M. Nguyen Hong Quang,
responsable de l’option Réseaux & Système Communicant à l’Institut

Francophone International au Vietnam qui m’a offert de meilleures conditions
afin d’apprendre et de trouver ce stage.
Je remercie également toute l'équipe du laboratoire L@RIS et les personnes à
l’École Internationale des Sciences du Traitement de l'Information pour leur
accueil et leur esprit d'équipe.
Enfin, je tiens à remercier toutes les personnes qui m'ont conseillé et relu lors de
la rédaction de ce rapport de stage. Toutes ces personnes ont contribué, par leur
disponibilité et leur bonne humeur, à rendre mon stage enrichissant et motivant.




4


Table des matières
RÉSUMÉ..........................................................................................................................7
INTRODUCTION.............................................................................................................8
ENVIRONNEMENT DE TRAVAIL..............................................................................10
ÉTAT DE L’ART............................................................................................................12
1.1.Systèmedelagéolocalisationenintérieur..........................................................................13
1.1.1. Technologies.......................................................................................................................13
1.1.2. Mobile Crowd Sensing......................................................................................................19
1.1.3. Algorithmes........................................................................................................................21
1.2.Plate-formepédagogiquel’AREL.........................................................................................24
1.3.Introductiondel’applicationiOS.........................................................................................25
MÉTHODOLOGIE ET OUTILS...................................................................................27
2.1.Leplusprochecapteur–UneaméliorationdelaméthodeTrilateration.............................28
2.2.GoogleMapsSDKetMapboxSDK.......................................................................................29
2.3.Xcode..................................................................................................................................34

2.4.Langagesdeprogrammation...............................................................................................34
2.4.1. Swift....................................................................................................................................34
2.4.2. Objective-C........................................................................................................................35
2.5.Bibliothèquessupplémentaires...........................................................................................36
2.5.1. Alamofire............................................................................................................................36
2.5.2. SwiftyJSON........................................................................................................................37
2.5.3. Reachability.......................................................................................................................37
2.5.4. RNCryptor.........................................................................................................................38
2.5.5. Google Maps SDK.............................................................................................................38
2.5.6. Bibliothèques de l’interface..............................................................................................38
IMPLÉMENTATION ET RÉSULTATS........................................................................41
3.1.Architecturedel’application...............................................................................................42
3.1.1. Fonctionnement.................................................................................................................42
3.1.2. Spécification de l’application............................................................................................44
3.1.3. Exigences fonctionnelles et non fonctionnelles de l’application.....................................45
3.2.Localisationdelapositiondel’utilisateur...........................................................................48
3.2.1. Détecter l’étage de l’utilisateur........................................................................................50
3.2.2. Récupérer les signaux iBeacons autour de l’utilisateur.................................................50
3.2.3. Calculer la position de l’utilisateur..................................................................................51
3.2.4. Mettre à jour la position de l’utilisateur..........................................................................51
3.3.Échangededonnéesavecleserveur...................................................................................52
3.3.1. Mettre à jour la position de l’utilisateur..........................................................................52
3.3.2. Rechercher le chemin entre deux points..........................................................................52
3.3.3. Évaluer une salle préférée.................................................................................................52
3.3.4. Compter le nombre de personnes dans une salle............................................................52
3.3.5. Trouver la position actuelle d’une personne...................................................................52
3.4.APIAREL.............................................................................................................................53
3.4.1. Authentification.................................................................................................................53
3.4.2. API AREL..........................................................................................................................55
3.4.3. Implémentation (application iOS)....................................................................................59

3.5.RSSdusite....................................................................................................60
CONCLUSION&PERSPECTIVES.........................................................................................64
BIBLIOGRAPHIE..........................................................................................................66



5


Table des figures
Figure 1 - Exemple : Détection de la proximité d'un magasin............................ 17
Figure 2 - Méthode de Trilateration 01 ............................................................... 21
Figure 3 - Méthode de Trilateration 02 ............................................................... 22
Figure 4 - Méthode de Trilateration 03 ............................................................... 23
Figure 5 - Page d'accueil de la plate-forme d'AREL .......................................... 24
Figure 6 - L'architecture du projet ...................................................................... 25
Figure 7 - Le proche capteur 01 .......................................................................... 28
Figure 8 - Le proche capteur 02 .......................................................................... 29
Figure 9 - L'idée d'utiliser une carte avec plusieurs couches .............................. 30
Figure 10 - La couche Maps SDK ...................................................................... 30
Figure 11 - Ajouter l'environnement ................................................................... 31
Figure 12 - Carte complète avec des objets ........................................................ 33
Figure 13 - Swift - Langage de programmation.................................................. 34
Figure 14 - Objective-C - Langage de programmation ....................................... 35
Figure 15 - Alamofire: un bibliothèque du réseau .............................................. 37
Figure 16 - SwiftyJSON: un bibliothèque de traiter des données JSON ............ 37
Figure 17 - Google Maps SDK ........................................................................... 38
Figure 18 - FoldingTabBar bibliothèque ............................................................ 39
Figure 19 - PopupController bibliothèque .......................................................... 39
Figure 20 - PasswordTextField bibliothèque ...................................................... 40

Figure 21 - PageMenu bibliothèque .................................................................... 40
Figure 22 - L'architecture d'application iOS ....................................................... 42
Figure 23 - Le flux de données ........................................................................... 43
Figure 24 - Le diagramme de cas d’utilisation ................................................... 45
Figure 25 - L'interface d'application ................................................................... 45
Figure 26 - Localisation d'utilisateur .................................................................. 48
Figure 27 - Diagramme de la localisation d’une personne ................................. 49
Figure 28 - L'intégration l'API AREL................................................................. 53
Figure 29 - Modèle de base de l’OAuth2............................................................ 54
Figure 30 - Créer un clé privée afin d'authentification ....................................... 59
Figure 31 - Les nouvelles d'école ....................................................................... 61
Figure 32 - Diagramme de flux RSS................................................................... 62




6


RÉSUMÉ
L’Internet des objets (IoT) est une des tendances très développé dans ces dernières
années. Connecter, gérer et contrôler tous les appareils (smartphone, lampe, TV,
…), puis analyser des données récupérées dans les centres de données sur nuage
sont le future des réseaux informatiques. Des nouveaux termes comme : « Smart
Home », « Smart Building », « Smart City » [2], … sont mentionnés souvent dans
des séminaires, des conférences.
Dans le cas de « Smart Building », « Smart Home », pour réaliser une plate-forme
de l’IoT, une des parties importantes est de construire un système qui nous permet
de localiser la position de l’utilisateur [2][4]. Des recherches dans le domaine de
la géolocalisation en intérieur dans le but de trouver des algorithmes (Trilateration

[5][6][7][8], Fingerprinting, …), des techniques (Beacon, NFC, …), des
entreprises ont commencé de supporter d’afficher, de naviguer dans une carte en
intérieur (Google Maps, Mapbox, …) [9].
Le stage s’inscrit dans le cadre du projet « Smart Engineering School » dont
l’objectif est de développer une application mobile qui implémente des
algorithmes de géolocalisation en intérieur et aussi des fonctionnes ajoutées afin
d’échanger des informations avec AREL – Plate-forme d’e-learning de l’EISTI
(École International des Sciences de Traitement de l’Information).
Mots clés : IoT, Internet des objets, géolocalisation en intérieur, indoor location,
smart building, beacon, trilateration.




7


INTRODUCTION
Durant ces dernières années, l’Internet des Objets a été développé dans de
nombreux secteurs d’activité comme : l’aide de la personne, la e-santé, la
surveillance, l’automatisation des chaînes de production, … Les technologies de
l’Internet des Objets telles que celles des capteurs, des RFID, des réseaux mobiles
sont le centre de la recherche actuelle.
Les objets connectés ont des capacités de capture, de traitement et de
communication, leur permettant de collecter et d’échanger des données, ainsi que
d’être contrôlés à distance. L’environnement de déploiement peut être une
maison, un bâtiment, un transport, ou encore des villes [2][9]. L'interconnexion
d'objets communicants forme un smart système, capable de collecter, stocker et
analyser les données partagées par les objets connectés, afin d'en extraire des
informations utiles de l'environnement physique qui seront ensuite utilisées par

diverses applications pour décider des actions à entreprendre sur l'environnement.
La géolocalisation en intérieur (Indoor Location en anglais) est une des parties
importantes de l’IoT, elle nous permet de détecter la position de l’utilisateur et de
suivre son déplacement dans un environnement. Des différentes recherches dans
ce domaine sont abordées des techniques de géolocalisation (GPS, NFC, WPS,
Beacon, …) [11] et ainsi que des algorithmes (Trilateration [5][6][7][8],
Fingerprinting [22], …). Dans ce stage, la géolocalisation en intérieur va être
simuler en utilisant des capteurs Beacons et quelques algorithmes de
géolocalisation en intérieur.
Le Crowd sensing [1] est un autre terme qui est lié à la géolocalisation en intérieur.
Les smartphones actuels ont des capteurs qui ont été installés comme : GPS,
accéléromètre, gyroscope, magnétomètre, … Ils nous donnent des informations
complémentaires pour aider à la géolocalisation en intérieur.
L'objectif du stage est de combiner des capteurs Beacon et des capteurs dans un
smartphone (ou une tablette) afin de construire un système de géolocalisation en
intérieur dans une application mobile. En outre, à partir de la plate-forme
pédagogique AREL de l’EISTI, l’application devra récupérer certaines
informations sur l’utilisateur, puis lui donner des notifications, partager des
informations, …
Le rapport est divisé en trois chapitres :
• Chapitre 1 – État de l’art : une vue générale sur le système de
géolocalisation, ses technologies et ses algorithmes sont abordés.
L’introduction de la plate-forme pédagogique l’AREL et de l’application
iOS sont mentionnés.
• Chapitre 2 – Méthodologie et outils : la méthode Le plus proche capteur



8



est présenté en détail dans ce chapitre, c’est la méthode qui a utilisé dans
ce projet. Ensuite, les outils utilisés et les bibliothèques supplémentaires
sont introduits.
• Chapitre 3 – Implémentation et Résultats : ce chapitre parle de
l’architecture d’application iOS, de la façon afin de localiser l’utilisateur,
de la communication entre l’application et le serveur, de l’API AREL.




9


ENVIRONNEMENT DE TRAVAIL
L’établissement d’accueil
L’École Internationale des Sciences du Traitement de l’Information (EISTI) est
l’une des 210 écoles d’ingénieurs françaises habilitées à délivrer un diplôme
d’ingénieur. Validée depuis 1989, la charte que s'est donnée l’EISTI repose sur
quatre valeurs concrètes : professionnalisme, ouverture, solidarité, éthique.
L'École délivre un diplôme par un parcours d’études personnalisé et progressif
sur 3 ans dans deux spécialités : Génie Mathématique et Génie Informatique.
Situés à Cergy-Pontoise et à Pau, les campus de l’EISTI sont intégrés dans les
campus universitaires de leur ville. Cergy est le campus historique avec près de
900 élèves et trois bâtiments propres à l'école. Le campus de Pau, créé en 2003,
auparavant situé dans l'immeuble Le Piano, accueille depuis la rentrée 2011
quelque 300 étudiants dans un nouveau bâtiment de 4100 m2 situé au cœur du
campus universitaire palois.
Le laboratoire L@RIS est crée au sein de l'EISTI, il privilégie la recherche
appliquée et la recherche finalisée sur contrat, avec le soutien des entreprises et

des principaux organismes nationaux de valorisation de la recherche (ANR,
OSEO, etc.).
Les axes de recherche du L@RIS sont :
• Modélisation, conception et vérification formelle des systèmes complexes
à base de composants (distribués, mobiles, temps réels et hybrides) :
applications aux systèmes mécatroniques, automobiles, aéronautiques et
télécommunications.
• Ingénierie de connaissances et applications : Ontologies et applications aux
web sémantique, e-Learning, intégration sémantique des données,
composition sémantique de services, réseaux sociaux, …
• Architectures et performances de systèmes distribués.
• Simulation et optimisation par contraintes.
Le stage se déroule dans le laboratoire L@RIS sur le campus de Cergy de l’EISTI
pendant 5 mois de 01/04/2016 à 31/08/2016.

Le projet « Smart Engineering School »
a. Objectifs
Le stage vise à développer et déployer une application mobile qui communique
avec un réseau d’objets communicants équipant l’EISTI, afin d’automatiser ou de
simplifier diverses tâches pour ses occupants. L’application se compose des
fonctionnalités suivantes :
• Localiser la position de l’utilisateur,
• Compter le nombre de personnes dans une salle,
• Trouver le chemin entre deux salles, deux personnes,
• Récupérer et notifier les informations aux utilisateurs à partir des capteurs
ou de la plate-forme pédagogique AREL,



10



• Récupérer et partager des nouvelles de l’EISTI.
b. Grandes étapes
Pour aboutir à une application fonctionnelle et en adéquation avec les demandes,
un processus par étapes est développé. Chronologiquement, le projet a été marqué
par les étapes suivantes :
• Étudier les différences technologies de communication pou l’IoT,
• Étudier les algorithmes de la géolocalisation en intérieur,
• Rechercher des informations sur le Crowd sensing et les capteurs dans un
smartphone actuel,
• Étudier l’API AREL pour récupérer des informations sur les utilisateurs,
• Développer un application iOS qui implémentée des algorithmes de
géolocalisation en les combinant avec des informations récupérées par les
capteurs du smartphone et présentes dans l’API AREL.
c. Équipe
L’équipe de développement s’articule autour d’un noyau de quatre membres :
deux professeurs de l’EISTI et deux stagiaires.
• Les deux professeurs : Mme. Besma ZEDDINI chargée de la direction de
l’équipe, co-responsable de l'option Smart Systems et M. Julien
MERCADAL encadrant du projet, sont des enseignantes-chercheurs en
l’informatique.
• Les deux stagiaires : Quoc Khai NGUYEN développe du côté client et
réalise l’application iOS, et Ba Duong PHU supporte le côté serveur et les
analyses de données.




11



Chapitre 1
ÉTAT DE L’ART
Une vue générale de la géolocalisation en intérieur est nécessaire, c’est la raison
pour laquelle les aspects qui constituent un système de la géolocalisation en
intérieur sont abordés tout d’abord. Ce chapitre mentionne aussi des
informations de base de la plate-forme pédagogique AREL de l’EISTI et à la fin
introduit l’architecture de l’application iOS.




12


1.1. Système de la géolocalisation en intérieur
Les composants qui composent un système de la géolocalisation en intérieur sont :
la technologie, l’algorithme et l’association avec des éléments auxiliaires. Tous
ces facteurs vont être abordés alternativement.

1.1.1. Technologies
Lorsqu’on pense à la géolocalisation en extérieur, on pensera immédiatement au
GPS. Le GPS a fait un excellent travail avec une exactitude extrêmement élevée.
Cependant, dans le domaine de la géolocalisation en intérieur, le GPS peut être
utilisé pour déterminer la localisation dans un appartement, mais son résultat est
très peu exact. Donc, le GPS est impossible dans le but de localiser des objets
dans un bâtiment.
La géolocalisation en intérieur permet d’aider les utilisateurs à déterminer leur
localisation dans un bâtiment, de trouver leur chemin à l’intérieur du bâtiment, de

déclencher des messages et de payer leurs achats en utilisant leur mobile.
Actuellement, de nombreux aéroports, gares, congrès et centres d’exposition
investissent dans ces technologies pour aider les utilisateurs en leur fournissant
des informations utiles.
La géolocalisation en intérieur est un terme général qui se compose de trois grands
types de service :
Type de
No.
Description
service
Aider les utilisateur à trouver leur chemin, d’optimiser
Indoor
leur visite, localiser leurs amis et collègues et fournir
1
location
également une analyse comportementale aux distributeurs
(par exemple : le trajet des visiteurs)
Permettre à ce que les voyageurs, les visiteurs et les
consommateurs interagissent avec des éléments
Microspécifiques : un produit sur une étagère du magasin, une
2
location
œuvre d'art dans un musée. La présence de l’utilisateur est
identifiée seulement quand il est près d’un capteur. Leur
localisation est perdue quand il se déplace loin de lui.
Envoyer des informations spécifiques lorsque les
3
Geofencing
utilisateurs entrent ou sortent d’une zone prédéfinie.
1.1.1.1. Wi-Fi Postioning System (WPS)

Le Wi-Fi Postioning System est utilisé lorsque le GPS ne convient pas. Il permet
de localiser un appareil (par exemple : un smartphone) grâce à la détection d’un
réseau Wi-Fi [5][6][12][13][15].
La technique pour un Wi-Fi point d’accès positionnement est basé sur la mesure



13


de la force du signal reçu (Received Signal Strength – RSS) et sur la méthode de
fingerprinting. Un « fingerprint » comporte le RSS, le SSID du point d’accès et
l’adresse MAC du routeur. Il est nécessaire d’être connecté au réseau.
Puis, l’appareil interroge une base de données à distance pour correspondre au
« fingerprint » avec la position. La précision de la position dépend du nombre de
positions stockées dans la base de données. Les appareils vérifient
périodiquement leur localisation en envoyant leur identifiant, la position GPS et
le Wi-Fi « fingerprint ».
WPS est principalement utilisé pour déterminer les localisations dans les lieux
publics (gares, centres commerciaux, musées, …).
Avantages
• Grâce à UUIDs, la localisation d’un « fingerprint » est absolument unique,
• La base de données de « fingerprint » est très riche,
• Il est possible de localiser les utilisateurs dans la plupart des supermarchés,
des aéroports, des gares …
Inconvénients :
• Faible précision,
• Wi-Fi doit être activé sur le récepteur,
• Nécessite une connexion Internet pour interroger la base de données
correspondant au « fingerprint » et à la localisation.

1.1.1.2. Near Field Communication (NFC)
Near Field Communication est une technologie de communication sans fil avec
une fréquence élevée et une courte portée qui permet aux appareils d’échanger
des données à une distance jusqu’à 10cm. Cette technologie est une extension de
la radio-identification (RFID – Radio Frequency Identification).
Tags NFC peuvent être lié à des informations telles que les pages Web, les réseaux
sociaux et tout autre type de données. D’autres domaines dans lesquels NFC est
en train d’émerger sont les paiements sans contact, le contrôle d’accès de la porte
sécurisée avec des serrures sans contact, la signature sur des ordinateurs, … etc.
Toutes ces actions partagent une exigence commune : vous devez être à proximité
du récepteur NFC.
Principe de fonctionnement :
Pour comprendre comment fonctionne NFC, nous devons commencer par
apprendre un peu plus sur la RFID. Cette technologie permet d’identifier des
objets, suivre leurs déplacements et lire leurs propriétés à distance en utilisant un
tag qui émet des ondes radio et est attaché ou intégré dans l’objet. La technologie
RFID peut lire les tags qui ne sont pas visibles, même à travers des couches
minces de matériaux (peinture, neige, etc.).
Un tag RFID est constitué d’une puce reliée à une antenne, enfermés dans une
étiquette. Il peut être lu par un appareil qui capture et transmet les informations.
En outre, il existe deux grandes familles de RFID tags :
• Active tags : utilisent une source d’énergie intégrée (pile bouton, batterie,



14


etc.). Ces tags offrent de meilleures plages, mais ont un coût plus élevé et
avec une durée de vie plus courte.

• Passive tags : utilisent l’énergie qui se propage à courte distance par le
signal radio de l’émetteur. Ces tags sont moins chers, généralement plus
petits et leur durée de vie est pratiquement illimitée. Cependant, ils
nécessitent une grande quantité d’énergie provenant du lecteur.
Qu’en est-il de NFC ?
NFC utilise des tags passifs avec trois modes de fonctionnement différents :
• Card emulation mode : le terminal mobile se comporte comme une carte
sans contact. La carte SIM du téléphone mobile peut être utilisé pour
stocker et sécuriser les données cryptées. (Ex : le paiement sans contact,
gestion des coupons de réduction, …)
• Reader mode : smartphones NFC peuvent lire les tags pour afficher des
informations utiles ou déclencher des actions automatiques. (par exemple :
visites interactives dans les musées ; automatisation des tâches : changer la
sonnerie ou lancer d’une application dans la portée du NFC ; demander de
l’information dans les magasins, …)
NFC tags peuvent être programmés pour envoyer des informations aux
appareils à portée.
• Peer-to-peer mode : permet à deux appareils NFC d’échanger des
informations. (Ex : transfert de photos entre une tablette et un smartphone,
ouverture des portes de voiture, …)
Applications :
• Paiement : par une carte bancaire sans contact, ou en tapant un smartphone
contre un terminal de paiement approprié
• Billets sans papier pour le transport ou les événements (spectacles,
conférences, concerts, etc.)
• Des coupons de réduction ou des programmes de loyauté
• Visites interactives dans des musées, avec des informations utiles
• Contrôle d'accès aux zones réglementées
• Lecture des cartes de visite électroniques
• Fonctionnalités de la maison intelligente

• Suivi des colis
Avantages :
• NFC est instantanée et ne nécessite aucun effort de l'utilisateur.
• Risque de vol de données est minimisé grâce à la courte portée.
• NFC utilise moins batterie que Bluetooth ou Wi-Fi
• Aucune connexion Internet requise.
Inconvénients :
• La portée est moins de 10cm (ne convient pas pour la géolocalisation et
geofencing)



15


1.1.1.3. Beacon
Les Beacons sont de petites unités qui utilisent la technologie Bluetooth Low
Energy (BLE) et diffusent périodiquement de petites quantités de données, ce qui
permet aux applications mobiles de s’adapter à leur comportement [4][11][13].
Principe de fonctionnement :
Bluetooth Low Energy
Le Bluetooth Low Energy (BLE) est une technologie de transmission sans fil qui
consomme 10 fois moins d'énergie que le bluetooth traditionnel, pour un débit de
données équivalent.
Il ne peut pas envoyer des données complexes, mais il fournira des informations
telles que son identifiant, sa distance (ou plus précisément : la puissance du signal)
et beaucoup plus. L'idée est d'intégrer Bluetooth 4.0 dans des unités portables de
petite taille, qui fonctionnent souvent sur les batteries et ne peuvent pas être
rechargées : moniteurs de fréquence du cœur, montres connectés, télécommandes,
etc.

Beacon
Beacons sont des appareils « intelligents » qui diffusent un signal en utilisant
Bluetooth Low Energy. Ils contiennent des informations d'identification unique :
• proximity UUID
• major
• minor
Ce sont les valeurs modifiables qui permettent de différencier les beacons. Il est
également possible d'ajuster la puissance d'émission, qui définit avec précision la
zone couverte par le beacon.
iBeacon
Le terme iBeacon est inventé par l’Apple, il respecte tous les certifications de
Beacon. Par conséquent, tout appareil avec Bluetooth 4.0 (par exemple, un
smartphone Android) peut communiquer avec un iBeacon.
Applications :
Une application mobile est nécessaire pour répondre aux signaux envoyés par des
Beacons. Bluetooth doit également être activé sur l'appareil de réception.
Le point essentiel à comprendre est que l'appareil mobile sera en charge de la
détection de la présence d'un Beacon dans l’environnement, mais la façon dont
nous voulons que le téléphone de l'utilisateur réponde est gérée par l’application.
En principe, le Beacon est uniquement destiné à annoncer sa présence (via la
diffusion) et il ne contient pas de données d'application, mais seulement ses
identifiants.




16


Figure 1 - Exemple : Détection de la proximité d'un magasin

Avantages
• La vie de la batterie de l'appareil est prolongée grâce à BLE.
• Facile à mettre en place et programmer.
• Le risque de recevoir des notifications par erreur est proche de zéro
• La portée est de 70 mètres.
Inconvénients
• Généralement, requiert une connexion Internet pour faire correspondre
l'identifiant à l'information. (Dans certains cas, les informations peuvent
être stockées dans une application mobile.)
• Bluetooth doit être activé sur le récepteur.
• La portée de Beacon ne convient pas aux micro-location.
• Il n'y a pas de plan pour mettre en œuvre le traitement des paiements par
Beacon et BLE.
• Nécessite l'installation d'une application de suivi. (tracking app)
1.1.1.4. Magnétique de Positionnement (Magnetic Positioning)
Une autre solution qui peut être utilisée pour déterminer un endroit où aucun
signal GPS disponible est les champs magnétiques et les utiliser pour dessiner une
carte du bâtiment. Le béton armé et la structure en acier sont un des nombreux
matériaux de construction modernes qui ont une empreinte magnétique
caractéristique. Les animaux, et en particulier les pigeons voyageurs et les
homards, sont capables de détecter des variations magnétiques et de les utiliser
pour trouver leur chemin.
Chaque bâtiment, étage, couloir ou l'ascenseur produit une perturbation
distinctive. En lisant ces anomalies, le système peut générer une carte de la
localisation. Ceci est une technologie très intéressante, car elle ne nécessite pas
de périphériques externes et fournit une précision de 10 cm.
Application
Positionnement magnétique est principalement utilisé pour déterminer les




17


emplacements dans les lieux publics (aéroports, gares, musées ...).
Cette technologie est encore utilisée et ses applications actuelles sont
généralement limitées à un positionnement dans les lieux publics. Mais la force
de positionnement magnétique consiste à la variété des utilisations possibles. Sa
grande précision le rend approprié pour la géolocalisation, ainsi que les
utilisations geofencing, ce qui peut se révéler très utile pour les applications de
géo-marketing.
Avantages
• Pas besoin d'une connexion Wi-Fi ou Bluetooth (récepteur autonome)
• Exactitude
• Variété des usages (géolocalisation et geofencing)
Inconvénients
• Peu utilisé (quelques API, nombre limité de cartes à ce moment)
• Prend plus de temps à mettre en place que beacons
• Généralement, requiert une connexion Internet pour faire correspondre
l'empreinte à la position. (Dans certains cas, les informations peuvent être
stockées dans une application mobile.)
Conclusion
Indoor location

Geofencing

Micro-location

Indoor location


Geofencing

Micro-location

Wi-Fi Positionning
NFC
Beacons
Magnetic Positionning

Wi-Fi Positionning

NFC

Très bon, mais la La précision est La localisation
précision limitée trop limité pour prévu par wifi
cet usage
ne permet pas
d'échange
de
données
La portée de NFC La gamme de Excellent
ne convient pas NFC est trop
pour
la courte pour cette
géolocalisation
utilisation

Beacons




18


Nécessite un très Beacons restent la La portée de
grand nombre de technologie
la Beacon est trop
Beacons
plus appropriée élevé pour cet
pour geofencing usage
L’exactitude
excellente

est Très bon, mais La localisation
pas
largement prévu par le
utilisé et plus de champ
temps à mettre en magnétique ne
place que beacons permet
pas
d'échange
de
données

Magnetic Positionning

Beacons est actuellement la solution la plus largement adoptée pour geofencing.
Cette technologie est particulièrement bien adaptée pour définir le périmètre et il
peut être utilisé pour une large gamme d'applications commerciales. C’est la
raison pour laquelle, il a été décidé pour ce projet d’utiliser cette technologie afin

de mettre en œuvre un système de la géolocalisation en intérieur.

1.1.2. Mobile Crowd Sensing
1.1.2.1. Introduction
Les smartphones sont devenus essentiels dans notre vie quotidienne. Ils sont
normalement équipés d'un riche ensemble de capteurs, y compris le GPS, le
microphone, l’appareil photo, l’accéléromètre, le gyroscope, la luminosité. En
conséquence, tout le monde peut facilement recueillir et partager l'information
captée [1][2].
Le « Mobile Crowd sensing » (MSC) signifie l'intégration des capteurs qui
peuvent être utilisés afin de collecter des informations matérialiste ou nonmatérialiste, les gens peuvent utiliser ces capteurs et évidemment leur
participation globale [14][16].
Le MSC émerge comme un paradigme de détection à grande échelle où la collecte
des données est généralement effectuée par les smartphones. Il est une des
technologies les plus importantes qui contribue à la santé, la surveillance, de la
logistique et de l'organisation dans les futures villes intelligentes.
« MCS est de compter sur la foule pour effectuer des tâches de détection à travers
des appareils qui ont les capteurs activés »
1.1.2.2. Capteurs
Capteurs dans un smartphone
No Capteur
Description
Détecter les changements dans l'orientation du
1 Accéléromètre smartphone par rapport au point de référence et d'ajuster
l'orientation à des poursuites l'angle de vue de l’utilisateur.



19



2

Gyroscope

3

Compas

4

GPS

5

Proximité

6

Luminosité

7

BackIlluminated

Maintenir et contrôler la position, le niveau ou
l'orientation fondé sur le principe du moment angulaire.
Donner la bonne direction par rapport au pôle nord-sud de
la Terre par l'utilisation du magnétisme.
Permettre de suivre la cible ou «naviguer» les choses par

carte ou une image.
Détecter la proximité de l'écran de votre smartphone par
rapport à votre corps.
Optimiser la lumière de l'écran quand il exposé à la
lumière normale avec une intensité différente, ajuster la
luminosité de l'écran pour prolonger la vie de la batterie.
Un type de capteur d'image numérique qui change ou
augmente la lumière capturée en capturant une
photographie.

1.1.2.3. Applications
• Ville intelligentes [1]: une gestion urbaine efficace est une tâche difficile
car la densité de population élevée et un très grand nombre de
interconnectées. Un système de ville intelligents améliore l'efficacité de la
ville en déployant des réseaux plus intelligents est un exigence critique. Le
MCS peut réduire les coûts associés à la grande échelle de capteurs et en
même temps fournir des données supplémentaires. Les MCS engagent
directement les citoyens dans la gestion de leur ville. Les gens peuvent
participer activement à des campagnes pour rendre leur ville plus sûre et
plus propre.
• Transport routier [1]: des données des schémas de trafic dans le pays en
utilisant l’emplacement et des données de la vitesse sont fournies par des
capteurs GPS embarqués dans les voitures. Ensuite, ces données peuvent
être utilisées pour l’ingénierie du trafic, la construction de nouvelles routes,
… Les conducteurs peuvent recevoir des informations de trafic en temps
réel fondée sur les données collectées à partir de smartphones. Les
conducteurs peuvent également bénéficier de données de stationnement en
temps réel recueillies par les voitures équipées de capteurs ultrasons. Les
organismes de transport ou les municipalités peuvent collecter
efficacement des données de nids de poule en utilisant le GPS et

l'accéléromètre des capteurs afin de réparer rapidement les routes …
• Santé & Bien-être [1]: les capteurs portés par des personnes pour la
surveillance de la fréquence cardiaque et la surveillance de la pression
sanguine peuvent communiquer leurs informations aux smartphones.
Généralement, cela se fait à la fois en temps réel et à long terme pour suivre
de la santé des individus. La détection mobile peut tirer profit de ces
données existantes dans les études de soins de santé à grande échelle qui
recueillent de façon transparente des données à partir de divers groupes de



20


personnes, qui peuvent être sélectionnés en fonction de l'emplacement,
l'âge, etc. Le MCS peut tirer profit des données existantes pour des études
de santé à grande échelle qui collecte des données de divers groupes de
personnes (trier par l’âge, l’emplacement, …)
• Marketing / Publicité [1]: localisation en temps réel ou la mobilité des
traces/schémas peut être utilisée par les vendeurs/annonceurs afin de cibler
certaines catégories de personnes. Puis, ils peuvent exécuter des enquêtes
sensibles au contexte (fonction de l'emplacement, le temps, etc.).
Conclusion
Les capteurs dans un smartphone nous donnent des informations utiles qui nous
aident à améliorer l'efficacité d’un système de géolocalisation en intérieur. Dans
le cas où les smartphones sont devenus un appareil indispensable dans la vie
quotidienne, une combinaison entre l’iBeacon et le MSC est une solution efficace
afin de construire un système de géolocalisation en intérieur.

1.1.3. Algorithmes

La « Trilatertion », le « Fingerprint », la « Triangulation », … sont des algorithmes
qui nous permettent de localiser une position dans un environnement.
Actuellement, la recherche pour l’amélioration des algorithmes existants ou
l’invention de nouveaux algorithmes est une tendance très développée. Ainsi,
choisir un algorithme efficace et assez facile à réaliser dans la programmation est
une des choses importantes dans le développement d’un projet.
1.1.3.1. Trilateration
Méthode de trilateration mettre le problème de géolocalisation en intérieur sur un
problème de géométrie.

Figure 2 - Méthode de Trilateration 01
Imaginez un plan avec des points. Chaque capteur est un point qui a une longitude
et une latitude comme coordonnées. De la même façon, la position de l’utilisateur



21


est un point aussi. Maintenant, le problème de calcul est devenu :
(x – x1)2 + (y – y1)2 = d12
(x – x2)2 + (y – y2)2 = d22
(x – x3)2 + (y – y3)2 = d32
Après avoir fini de résoudre ce problème, on va avoir les coordonnées (longitude,
latitude) de l’utilisateur.

Figure 3 - Méthode de Trilateration 02
Les calculs mathématiques donnent toujours le résultat exact dans le cas où les
paramètres entrés sont exacts aussi. Mais, les distances (d1, d2, d3) mesurées par
les signaux iBeacons ne sont pas toujours exactes. Pourquoi ? À cause des murs

entre un iBeacon et l’utilisateur. Le problème est qu’un signal devient incorrect
quand il doit être passé à travers le mur et la précision est diminuée quand le
nombre de murs augmente.
S’il y a trois murs entre l’utilisateur et un iBeacon et que la distance entre
l’utilisateur et ce iBeacon est de 5m. En réalité, au lieu de recevoir un signal
concernant à 5m, on va récupérer un signal concernant à 15m. Ça va beaucoup
impacter le résultat!




22


Figure 4 - Méthode de Trilateration 03
Avantages :
• Se réalise facilement.
• Donne le résultat exact (dans le cas des paramètres entrés exacts).
Inconvénient :
• Le résultat est trop incorrect quand il y a des murs entre l’utilisateur et un
iBeacon.
• Il faut avoir au moins trois capteurs iBeacons pour le calcul.
1.1.3.2. Fingerprinting
Le Fingerprinting algorithme utilise les valeurs de RSSI afin d’estimer la position
d’un appareil. Il suit deux phases :
• Phase offline : diviser une zone (ex : une salle) en des petites pièces avec
ses coordonnées respectives (longitude, latitude). Ensuite, des échantillons
RSSI dans chaque petite pièce sont stockés dans une base de données.
• Phase online : collecter des échantillons RSSI d’une position inconnue pour
faire le positionnement. Ces valeurs de RSSI sont comparées aux valeurs

stockées dans la base de données et un algorithme qui correspond à la
valeur réelle avec le fingerprint obtenue dans la phase offline afin de
localiser l’appareil avec ses coordonnées.
Avantages :
• Règle le problème de mûr.
Inconvénient :
• La phase offline prend du temps et aussi le calcul est dur.
• L’algorithme pour correspondre des valeurs doit exécuter de nombreux
calculs dans le cas où l’environnement est grand ou le nombre de pièces est
grand.



23


Conclusion :
Les méthodes et les algorithmes de géolocalisation en intérieur sont en train d’être
développés. Il n’y a pas une solution parfaite aujourd’hui. Puis, le problème des
murs n’a pas de solution efficace non plus. Il faut continuer de faire des recherches
et développer de nouvelles techniques (Bluetooth 5.0 avec la puissance plus forte
par exemple) afin de trouver des moyens qui nous permettent d’avoir une méthode
de géolocalisation en intérieur plus exacte, plus efficace, …

1.2. Plate-forme pédagogique l’AREL
L’AREL (Atelier de Ressources E-Learning) est la plate-forme intranet de
l’École Internationale des Sciences de l’Information (EISTI) qui nous permet de
retrouver l’emploi du temps des différents acteurs de l’école et un ensemble de
ressources d’apprentissage en ligne.


Figure 5 - Page d'accueil de la plate-forme d'AREL
En outre, AREL fournit une API REST pour que les développeurs puissent
récupérer ses données. Dans ce projet, cette API va être utilisée afin de récupérer
certaines informations sur les utilisateurs comme :
• L’emploi du temps d’une personne,
• Les statuts des salles de l’école,
• Les événements actuel,
• Les programmes et les matières de l’école,
• Les notes d’un étudiant et ses cours,
L’objectif de l’intégration d’API AREL avec la géolocalisation en intérieur est
que grâce aux informations reçues, l’application peut donner des
recommandations ou des notifications à l’utilisateur. C’est une des tâches qui



24


permet de construire une application intelligente afin de s'adapter aux exigences
du sujet « Smart Engineering School ».

1.3. Introduction de l’application iOS
L’application iOS est une combinaison de toutes les choses ci-dessus : une
technologie de la géolocalisation en intérieur, le Mobile Crowd Sensing, un
algorithme de la géolocalisation en intérieur, l’API AREL et encore d’autres
fonctionnalités supplémentaires. D’un côté, tous les travaux ci-dessus sont la
partie théorique du projet. D’un autre côté, le développement d’application iOS
est la partie pratique du projet.
Les fonctionnalités principales de l’application :
• Détecter et récupérer les signaux iBeacons des capteurs,

• Calculer la position de l’utilisateur grâce aux les signaux récupérés,
• Échanger les données de la position de l’utilisateur avec le serveur,
• Envoyer les requêtes au serveur et traiter sa réponse,
• Récupérer des données de l’utilisateur sur AREL,
• Donner des recommandations et aussi des notifications à l’utilisateur.

Figure 6 - L'architecture du projet
L’architecture du projet se compose en quatre parties :
• Application iOS : le cœur du système qui communique avec les autres
parties afin d’échanger les données dans le système.
• Réseau des capteurs iBeacons : un réseau qui utilise Bluetooth Low Energy



25


×