SlideShare une entreprise Scribd logo
1  sur  72
Télécharger pour lire hors ligne
1
Mémoire présenté et défendu en vue de
l’obtention du Diplôme de Licence en
Réseaux et télécommunications
Mémoire
REPUBLIQUE DEMOCRATIQUE DU CONGO
ENSEIGNEMENT SUPERIEUR ET UNIVERSITAIRE
E.S.U
INSTITUT SUPERIEUR
D’INFORMATIQUE ET DE GESTION
BP : 841 GOMA
http://www.isig.ac.cd
adresse@email.zz
Année Académique 2016 - 2017
CONCEPTION D’UN SYSTEME DOMOTIQUE
INTERCONNECTE PAR BLUETOOTH SOUS UNE
PLATEFORME ANDROID
« Cas d’une maison d’habitation »
Par : Chris SIMBA MUKASA
E-mail: isiggoma@isig.ac.cd

ISIG - GOMA
Directeur : DAVID FOTUE
Encadreur : Ass2. ISAMUNA NKEMBO Josué
2
EPIGRAPHE
‘‘En informatique, la miniaturisation augmente la puissance de
calcul. On peut être plus petit et plus intelligent’’
Bernard Werber.
Chris SIMBA MUKASA
3
DEDICACE
A nos parents;
A nos Frères et Sœurs ;
A tous nos Camarades ;
A nos Amis et Connaissances.
Chris SIMBA MUKASA
4
REMERCIEMENTS
Nous remercions toutes les autorités de l’ISIG/Goma pour toutes les connaissances
qu’ils nous ont transmises.
Nos reconnaissances et gratitudes s’adressent au Professeur DAVID FOTUE et à
l’Assistant Josué ISAMUNA NKEMBO qui, en dépit de leurs multiples occupations, ont
acceptés de diriger ce travail. Leurs disponibilités inconditionnelles, leurs conseils éclairants
et leurs savoir-faire nous ont permis de mener à bon port ce travail.
Nos remerciements et gratitudes s’adressent à notre père NDUNDU MUKASA Jean-
Pierre et à ma mère CHANTAL MUDERHWA.
Nos reconnaissances s’adressent à toute ma famille, frères et sœurs Adamon NDUNGU
MUKASA, Jack MUHABURA MUKASA, Aline SIFA MUKASA, Isabelle RIZIKI
MUKASA, Rachel NABINTU MUKASA et à NAOMIE MUKASA.
Nous exprimons un sentiment de gratitude et d’amour à la maman de notre fille Aurèlie
BAHATI MIHIGO et à notre fille Gabriella CHANTAL MUKASA pour leurs soutient.
Que nos amis, camarades et tous ceux qui ne sont pas cité dans ce travail, trouvent ici
l’expression de notre gratitude.
Chris SIMBA MUKASA
5
SIGLES ET ABREVIATIONS
A : Ampère
AC: Alternative Current
ACL : Asynchronous Connection Less
BD_ADDR : Bluetooth Device Address
DC: Direct Current
E/S: Entrée ou Sortie
EDR : Enhanced Data Rate
EEPROM : Electrically-Erasable Programmable Read-Only Memory
FTP : File Transfer Profile
GHz : Giga Hertz
GSM : Global System for Mobile communications
HCI : Hardware Control Interface
HS : High Speed
I : Intensité
I2C : Inter-Integrated Circuit
IDE: Integrated Developement Evironement
IEEE : Institute of Electronic and Electronics Engineers
ISM : Industrial, Scientific and Medical
L2CAP : Logical Link Control and Adaptation Protocol
LCD: Liquid Cristal Display
LED : Light Emitting Diode
NTIC : Nouvelles Technologie d’information et de la communication
OLED : Organic Light-Emitting Diode
PAN: Personal Area Network Profile
6
PIO : Power Input Output
PIR : Passive Infra Red
RFCOMM : Radio frequency communication
RFID : Radio Frequency IDentification
RTC : Real Time Clock
RX : Recevoir
SCL : Seriela Clock
SCO : Synchronous Connection Oriented
SDA : Serial Data
SDAP: Service Discovery Application Profile
SDP: Service Discovery Protocol
SIG : Special Interest Group
SMS : Short Message System
SPI : Interface Série Périphérique
SPP : Serial Port Profile
TTL : Time To Live
TWI : Two Wire Interface
TX : Transmettre
U : Tension
UART : Universal Assysnchronous Receiver and Transmiter
UHF : Ultra Hautes Fréquences
USB : Universal Serial Bus
V : Volte
7
INTRODUCTION
1. ETAT DE LA QUESTION
L’avancée de la science et le progrès dans la technologie permet à humanité de limiter
ses efforts quant à ce qui est des tâches manuelles, en lui offrant la possibilité de les
automatiser ou en les actionnant à distance grâce aux Nouvelles Technologies de
l’Information et de la Communication (NTIC).
Il ressort de ce qui précède que plusieurs travaux ont été effectués dans le domaine de la
domotique :
- MUKUMIRO HABAMUNGU Patrick1
, dans son travail, il propose la mise en
place d’une piscine intelligente dans le but de protéger la population contre les
risques liés à la contamination des eaux de piscine.
- TSHIMPANGA BADIBANGA Didi Tyana2
, quant à lui, il a travaillé sur le
pilotage de certaines fonctionnalités de la maison à distance grâce à une
application web et en utilisant le service GSM.
2. PROBLEMATIQUE
La maison est aujourd’hui le lieu de détachement de toute contrainte, de repos et de
sécurité. Il s’avère que nous avons de plus en plus besoin d’accomplir tes tâches juste en
bougeant le petit doigt et en manipulant des petits appareils.
De ces besoins et désires que nous accumulons du jour au lendemain, nous nous
sommes préoccupé d’un certain nombre des questions :
- Comment répondre à un certain nombre de besoins en vue d’effectuer des tâches à
distance et sans effort considérable ?
- Comment donner aux habitants un environnement sécurisé et contrôlé grâce à
l’apport des NTIC ?
1
MUKUMIRO HABAMUNGU Patrick, Système embarqué pour le contrôle de la qualité et la sécurité d’une
piscine, TFC, ULPGL, Electricité Informatique, 2014-2015 (ULPGL).
2
TSHIMPANGA BADIBANGA Didi, Conception et réalisation d’un système embarqué pour une maison
intelligente « Smart House », Mémoire, ULPGL, Génie Informatique, 2014-2015.
8
3. HYPOTHESES
En réalité, répondre à ces questions c’est répondre aux besoins de l’homme en lui
offrant une maison intelligente qui lui fournirait le confort et la sécurité qui lui porteraient
satisfaction. Pour se faire, nous pensons qu’une mise en place d’un système domotique
utilisant la technologie Bluetooth sous une plateforme Android permettrait le contrôle et la
manipulation à distance certains équipements de la maison.
4. OBJECTIFS
Nous avions pris goût à cette technologie car, elle nous rendre capables de concevoir un
système permettant l’interopérabilité entre la télécommunication, l’électronique et la
programmation. Avec ces grands atouts, nous serons capables de réaliser un système qui
aidera le peuple Congolais précisément de la ville de Goma à automatiser les taches
suivantes :
- Gérer toute la maison grâce à une application développée sous la plateforme
Android utilisant la technologie Bluetooth ;
- Contrôler la température en temps réel de la maison ;
- Contrôler l’humidité des pièces de la maison ;
- Gérer les appareils électroniques ;
- Contrôler les entrées et les sorties dans la maison ;
- Contrôler l’ouverture et la fermeture des portes et fenêtres ;
- Contrôler la densité de l’éclairage dans les pièces de la maison ;
- Contrôler la sécurité en détectant la présence d’une personne ;
- Recevoir des alertes grâce à un système d’anti - intrusion.
5. CHOIX ET INTERET DU SUJET
Le choix de ce sujet a été motivé d’un intérêt triple :
- Nous familiariser des aspects liés au cycle de développement des systèmes temps
réel grâce à l’utilisation de la technologie Bluetooth ;
- Analyser, concevoir et implémenter un système domotique en usant d’un Système
d’Exploitation temps réel pour le contrôle et la gestion de la sécurité d’une
maison ;
- Le pilotage à distance de certains équipements d’une maison.
9
Pour arriver aux résultats escomptés, nous proposons de faire une extension de la
technologie Bluetooth sur notre microcontrôleur et se connecter via un téléphone mobile sous
un écran de bord (Dashboard) qui nous montrera toutes les actions liées aux équipements
connectés.
6. METHODES ET TECHNIQUES
6.1. Méthodes
Pour mener à bien notre travail, nous avons utilisé 3 méthodes :
- Méthode Historique : Elle nous a permis de nous imprégner de la technologie
Bluetooth et celle de la domotique ;
- Méthode analytique : Elle nous a permis d’analyser les informations ainsi que
des données récoltées ;
- Méthode comparative : Elle nous a permis de comparer les valeurs reçues par
nos capteurs électroniques de celles prélevées manuellement dans le cas de la
température et de l’humidité.
6.2. Technique
Les techniques sont des outils, des moyens, des résultats dont le chercheur utilise à
chaque étape de la recherche. Elles sont utilisées pour récolter les données.
Ainsi, pour atteindre notre objectif, nous avons fait recours aux techniques suivantes :
- La technique documentaire : Elle nous a permis d’approfondir nos recherches
en fréquentant les bibliothèques pour la lecture des livres, travail de fin de cycle,
mémoires afin de nous inspirer des expériences des travaux précédents ;
- La technique d’observation : Elle nous a permis de constater les faits tel qu’ils
ses déroulent, d’acquérir une connaissance claire et précise, concentrée sur notre
objet d’étude.
7. DELIMITATION DU SUJET
L’objectif de notre travail est de se focaliser sur l’interactivité d’une maison intelligente
utilisant la technologie Bluetooth. Nous nous sommes en plus intéressés à quelques tâches
manuelles quotidiennes ; telles que l’ouverture des portes, l’allumage des lampes, vérification
de la température d’une pièce et la sécurité de l’habitation.
10
8. DIFFICULTES RENCONTREES
Au cours de la réalisation de ce travail, nous avons été confrontés à plusieurs difficultés,
notamment :
- L’impossibilité de trouver les matériaux notamment les capteurs et actionneurs
dont nous avions besoins pour la réalisation de notre projet ;
- Le manque des moyens financiers pour l’achat des équipements utiles pour nos
configurations ;
- La contrainte de temps avec la durée de livraison de matériaux trop longue.
9. ORGANISATION DU RESTE DU MEMOIRE
Le reste du mémoire est divisé en trois principaux chapitres :
- Le Chapitre I présente les thèmes de notre projet, plus précisément ceux liés à la
technologie Bluetooth, à la Domotique et au Microcontrôleur.
- Le Chapitre II présente le cahier de charge, le planning prévisionnel, les
matériels qui seront utilisé en vue de réaliser le projet, la configuration du système
qui contiendra différents schémas électroniques, et les différentes configurations
ainsi que la présentation des différentes interfaces logiciels coté utilisateur.
- Le Chapitre III parle de l’implication de notre système dans son milieu
d’exécution qui est la maison d’habitation, on parlera des discutions et des
recommandations.
11
CHAPITRE 1: GENERALITE ET CHAMP D’APPLICATION
1.1. GENERALITES
Lorsque nous parlons de la technologie Bluetooth, on sous-entend l’échange des medias
ou des fichiers, seulement, cette technologie ne se limite pas que sur ces taches, elle fait
encore plus mieux. En ce sens qu’elle peut maintenant intégrer l’échange de données internet,
elle peut faire une communication sécurisé en échangeant des données chiffrées et intègre
désormais un taux de transfert plus enlevé et une sécurité plus ou moins performante.
1.2. DEFINITION DU THEME
- Réseau : Un réseau est un ensemble d'objets interconnectés les uns avec les
autres. Il permet de faire circuler des éléments entre chacun de ces objets selon
des règles bien définies [1].
- Architecture réseaux : est l'organisation d'équipements de transmission, des
logiciels, de protocoles de communication et d'infrastructure filaire ou
radioélectrique permettant la transmission des données entre les différents
composants [2].
- Interconnexion : on entend par interconnexion la liaison physique et logique des
réseaux ouverts au public exploités par le même operateur ou un opérateur
diffèrent afin de permettre aux utilisateurs d’un opérateur de communiquer avec
les utilisateurs d’un même operateur ou d’un autre, ou bien d’accéder aux services
fournis par un autre operateur [3].
1.3. CONCEPT DE BASE
1.3.1. Le Bluetooth
Bluetooth est un standard de communication permettant l’échange bidirectionnel de
données à courte distance en utilisant des ondes radio UHF [4] sur une bande de fréquence de
2.4GHz.
Son objectif est de simplifier les connexions entre les appareils électroniques en
supprimant des liaisons filaires. Elle peut remplacer par exemple les câbles entre ordinateurs,
tablettes, téléphones mobiles, imprimantes, jeux vidéo, scanneurs, etc.
12
Bluetooth est une suite de protocoles sans-fil de faible portée (habituellement 10-15m),
opérant dans la bande des 2.4 GHz et offrant des débits nominaux de l'ordre de 720 Kbps
(normes v1.1 et v1.2) jusqu'à 3 Mbps (norme 2.0 + EDR).
Ce protocole permet de relier des périphériques à un hôte principal ou des hôtes entre
eux, formant ainsi un "piconet". Les applications utilisant ce type de connexions sont:
- Provision de services locaux type impressions ;
- Connexion de périphériques locaux, types claviers, souris, écouteurs, etc. ;
- Synchronisation de données et/ou d'applications, types agendas, contacts, etc.
Les hôtes typiques utilisant la technologie Bluetooth sont les petits appareils portables;
la faible portée du protocole rend en effet la consommation énergétique peu importante, ce qui
permet d'utiliser Bluetooth dans la plupart des téléphones, oreillettes, casques, micros, etc.
1.3.1.1.Origine
Le nom « Bluetooth » est directement inspiré du surnom anglicisé du roi
danois Harald à la dent bleue (en danois Harald Blåtand, en anglais Harald Bluetooth), connu
pour avoir réussi à unifier les tribus danoises au sein d'un même royaume, introduisant du
même coup le christianisme.
Ce nom a été proposé en 1996 par Jim Kardach d'Intel, un ingénieur travaillant alors sur
le développement d'un système qui allait permettre aux téléphones cellulaires de
communiquer avec des ordinateurs.
a) Historique
- 1994 : Création par le fabricant suédois Ericsson à Lund,
- 1996 : Premier téléphone Bluetooth.
- 1998 : Plusieurs grandes sociétés (IBM, Intel, Nokia et Toshiba) s'associent avec
Ericsson pour former le Bluetooth Special Interest Group (SIG),
- Juillet 1999 : Sortie de la spécification 1.0,
Figure 1 : Le logo de Bluetooth, inspiré des initiales en
alphabet runique de Harald Blatand
13
- Décembre 1999 : Le groupe Bluetooth SIG compte neuf sociétés après
que 3Com, Lucent Technologies, Microsoft, Motorola l'ont rejoint.
- 2004 : Apparition du Bluetooth 2.0 et de l'EDR (Enhanced Data Rate) qui permet
d'obtenir un meilleur débit.
- 28 Mars 2006 : Le « Bluetooth Special Interest Group » (SIG) annonce la
deuxième génération de la technique sans fil Bluetooth V2.0 (puis V2.1 en 2007),
qui sont capable d'assurer des débits de crête 3 fois supérieurs à l'ancienne
version, passant donc de 1 Mb/s à 3 Mb/s.
- 2009 : Le SIG met au jour le Bluetooth 3.0 et le HS (High Speed)
- 2010 : Apparition du Bluetooth 4.0 encore plus performant et moins gourmand en
énergie. Cette nouvelle génération apparait comme une révolution et permet une
large démocratisation d'appareils connectés en tout genre.
- décembre 2013 : Sortie de la version 4.1
- décembre 2016 : Annonce de la version 5
b) Normes
Les versions publiées de Bluetooth sont les suivantes :
- Bluetooth v1.0 et v1.0B ;
- Bluetooth v1.1, normalisé en 2002 sous le nom IEEE 802.15.1-2002 ;
- Bluetooth v1.2, normalisé en 2005 sous le nom IEEE 802.15.1-2005 ;
- Bluetooth v2.0 + EDR, rendue publique en 2004 ;
- Bluetooth v2.1 + EDR, rendue publique en 2007 ;
- Bluetooth v3.0 + HS, rendue publique en 2009 ;
- Bluetooth v4.0, rendue publique en 2010 ;
- Bluetooth v4.1, rendue publique en 2013 ;
- Bluetooth v4.2, rendue publique le 2 décembre 2014 (mise à jour matérielle) ;
- Bluetooth v5, rendue publique en décembre 2016.
Les éléments fondamentaux d'un produit Bluetooth sont définis dans les deux premières
couches protocolaires :
1. La couche radio ;
2. La couche bande de base.
14
Ces couches prennent en charge les tâches matérielles comme le contrôle du saut de
fréquence et la synchronisation des horloges.
 La Couche Radio
La couche radio (la couche la plus basse) est gérée au niveau matériel. C'est elle qui
s'occupe de l'émission et de la réception des ondes radio. Elle définit les caractéristiques telles
que la bande de fréquence et l'arrangement des canaux, les caractéristiques du transmetteur,
de la modulation, du récepteur, etc.
Le système Bluetooth opère dans les bandes de fréquences ISM (Industrial, Scientific
and Medical) 2,4 GHz dont l'exploitation ne nécessite pas de licence vu la faible puissance
d'émission et le risque faible d'interférences. Cette bande de fréquences est comprise entre
2 400 et 2 483,5 MHz.
Les 79 canaux RF sont numérotés de 0 à 78 et séparés de 1 MHz en commençant
par 2 402 MHz.
Il existe trois classes de modules radio Bluetooth sur le marché :
Classes Puissance Portée
1 100mW (20 dBm) 100 mètres
2 2.5 mW (2 dBm) 10 à 20 mètres
3 1 mW (0 dBm) Quelques mètres
 La Bande de Base
La bande de base (ou baseband en anglais) est également gérée au niveau matériel.
C'est au niveau de la bande de base que sont définies les adresses matérielles des
périphériques. Cette adresse est nommée BD_ADDR (Bluetooth Device Address) et est codée
sur 48 bits. Ces adresses sont gérées par l’IEEE Registration Authority [5].
C'est également la bande de base qui gère les différents types de communication entre
les appareils. Les connexions établies entre deux appareils Bluetooth peuvent être synchrones
ou asynchrones, ces connexions sont appelées « Liens Logiques » (Logical Link).
La bande de base peut donc gérer deux types majeurs de liens logiques :
 Les liens SCO (Synchronous Connection Oriented) : Le lien SCO est une liaison
symétrique point-a-point entre le maitre et un périphérique esclave spécifique. Le lien SCO
réserve des intervalles entre le maitre et l’esclave et peut donc être considérer comme
15
fournissant une connexion à commutation de circuit. Ce lien est habituellement utilisé pour
supporter des informations temporelles. Par exemple la Voix, car les paquets SCO critique ne
sont jamais retransmis.
 Le lien ACL (Asynchronous Connection Less) : Ce lien est utilisé lorsque les donnes
sont plus importantes que d’éviter la latence (temps nécessaire à un paquet de données pour
passer de la source a la destination à travers un réseau). Dans ce type de lien, si une charge
utile encapsulée dans le cadre est corrompue, elle est retransmise. Un second renvoie d’une
trame ACL dans l’emplacement impaire disponible et si seulement si l’emplacement
précédent lui a été adressé. L’ACL peut utiliser un, trois ou plusieurs emplacements et peut
atteindre un débit de données maximum de 721 kbit/s. le lien ACL sont utilisé que pour les
données.
 Le format d’un paquet
Les données transportées sur ces liens logiques sont sous forme de paquets. Il existe
divers types de paquets et peuvent être utilisés par les deux liens logiques ou seulement par un
seul type de lien. Chaque paquet est composé globalement de la même manière.
Les paquets sont constitués de trois éléments : un code d'accès, un en-tête et la charge
utile. Un paquet peut aussi n'être composé que d'un code d'accès et d’un en-tête mais sans
charge utile.
 Type de paquets
Bluetooth définit plusieurs types de paquets :
o Paquet ID : ce paquet est constitué uniquement d'un code d'accès, il est utilisé dans les
processus d'inquiry et de paring, afin de contacter un voisin.
o Paquet NULL : ce paquet n'a pas de charge utile, il est utilisé lorsqu'un périphérique
doit envoyer un acquittement et n'a pas d'informations à transmettre.
o Paquet POLL : ce paquet est similaire au paquet NULL, mais il est utilisé par le
maître pour donner la parole à l'esclave désigné dans l'en-tête.
o Paquet FHS : c'est un paquet de synchronisation qui contient les informations
nécessaires aux esclaves pour se synchroniser au maître. Il est envoyé à l'établissement
de la connexion, puis périodiquement.
o Paquet DMx (Data Medium rate) d’où x=1, 3 ou 5 : c'est un paquet de données
utilisant un code correcteur à 2/3 (un tiers des bits émis est utilisé par le code
correcteur). Il peut avoir une longueur de 1, 3 ou 5 slots.
16
o Paquet DHx (Data High rate) d’où x=1, 3 ou 5: c'est un paquet de données sans
correction d'erreur.
Type de Réseaux
- Le Picoréseau
Un picoréseau (on emploie également l'anglicisme piconet) est un mini-réseau qui se
crée de manière instantanée et automatique quand plusieurs périphériques Bluetooth sont
dans un même rayon. Un picoréseau est organisé selon une topologie en étoile : il y a un
« maître » et plusieurs « esclaves ».
Un périphérique « maître » peut administrer jusqu'à :
 7 esclaves « actifs » ;
 255 esclaves en mode « parked ».
La communication est directe entre le « maître » et un « esclave ». Les « esclaves » ne
peuvent pas communiquer entre eux. Tous les « esclaves » du picoréseau sont synchronisés
sur l'horloge du « maître ». C'est le « maître » qui détermine la fréquence de saut pour tout le
picoréseau.
- L’Inter-réseau Bluetooth
Figure 2: Piconet
Figure 3: Inter-réseau
Bluetooth (scatternt)
17
Les périphériques «esclaves » peuvent avoir plusieurs « maitres », les différents
piconets peuvent donc être relier entre eux. Le réseau ainsi formé est appelé un scatternet
(littéralement « réseau dispersé »).
 Le Contrôleur de Liaisons
Il encode et décode les paquets Bluetooth selon la charge utile et les paramètres lies au
canal physique, transport logique et liaison logique.
 Le Gestionnaire de Liaisons
Il crée, gère et détruit les canaux L2CAP pour le transport des protocoles de services et
les flux de données applicatives. Il utilise le protocole L2CAP pour interagir avec son
homologue sur les équipements distants.
C'est le gestionnaire de liaisons qui implémente les mécanismes de sécurité comme :
 l'authentification ;
 l'appairage (l'association) ;
 la création et la modification des clés ;
 et le chiffrement.
 L’interface de contrôle de l’hôte (HCI)
Cette couche fournit une méthode uniforme pour accéder aux couches matérielles. Son
rôle de séparation permet un développement indépendant du matériel et du logiciel.
Les protocoles de transport supportés sont Universal Serial Bus (USB); RS-232
[6] ; UART [6].
HCI permet un transfert de données à débit maximum, soit 720 kbit/s pour la norme 1.2,
et un débit trois fois plus élevé pour la norme 2.0+EDR.
 La couche L2CAP
La couche L2CAP (Logical Link Control & Adaptation Protocol) fournit les services de
multiplexage des protocoles de niveau supérieur, la segmentation et le réassemblage des
paquets ainsi que le transport des informations de qualité de service.
L2CAP est donc un protocole dont le rôle est de fournir une couche réseau complète
aux couches supérieures et aux applications.
 Les services
- RFCOMM : « Radio frequency communication (en) ». Ce service est basé sur les
spécifications RS-232, qui émule des liaisons séries. Il peut notamment servir à faire
passer une communication IP par Bluetooth. il est utilisé lorsque le débit des données
n'atteint pas plus de 360 kbit/s (par exemple, téléphones mobiles).
18
- SDP: « Service Discovery Protocol ». Ce protocole permet à un appareil Bluetooth de
rechercher d'autres appareils et d'identifier les services disponibles.
 Les profils
Un profil correspond à une spécification fonctionnelle d'un usage particulier. Les profils
peuvent également correspondre à différents types de périphériques.
Les profils ont pour but d'assurer une interopérabilité entre tous les appareils Bluetooth.
Ils définissent :
 la manière d'implémenter un usage défini
 les protocoles spécifiques à utiliser
 les contraintes et les intervalles de valeurs de ces protocoles
Exemples :
1. SDAP : Service Discovery Application Profile
2. SPP : Serial Port Profile
3. HS Profile : Headset Profile
4. FTP : File Transfer Profile
5. PAN : Personal Area Network Profile
1.3.2. Notion sur la Domotique
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.
La domotique est un contexte nouveau dans la technologie actuelle. En titre
d’information, la domotique vient du latin « domus » signifiant une maison, c’est-à-dire
l’ensemble des technologies utilisées pour gérer une maison d’habitation [7].
Figure 4: Représentation graphique
schématique d’items relatifs a « l'habitat
intelligent »
19
1.3.3. Notion sur les microcontrôleurs
Un microcontrôleur est un circuit intégré rassemblant dans un même boitier un
microprocesseur, plusieurs types de mémoires et des périphériques de communication
(Entrées-Sorties) [9].
Figure 5: Image d'un microcontrôleur
1.3.3.1. Structure d’un microcontrôleur
Pour qu’un microprocesseur fonctionne, il a besoin de certains éléments comme:
 la mémoire morte dite ROM (principalement pour stocker le programme) ;
 la mémoire vive dite RAM (pour stocker les variables) ;
 des périphériques (pour l’interaction avec le monde extérieur) ;
 une horloge pour le cadencer (principalement à quartz).
Ces différents blocs sont reliés par 3 bus qui sont le bus d’adresse, le bus des données et le
bus de contrôle.
o le bus d'adresse permet au microprocesseur de sélectionner la case mémoire ou le
périphérique auquel il veut accéder pour lire ou écrire une information (instruction
ou donnée) ;
20
o le bus de données permet le transfert des informations entre les différents blocs ;
ces informations seront soit des instructions soit des données en provenance ou à
destination de la mémoire ou des périphériques ;
o le bus de contrôle celui-ci indique si l'opération en cours est une lecture ou une
écriture, si un périphérique demande une interruption etc.
1.3.3.2. Fonctionnement
À la mise en route du système, le microprocesseur va chercher dans la mémoire à
l'adresse 0 la première instruction à exécuter puis il stocke cette instruction dans un
registre interne appelé registre d'instructions, en suite il exécute cette instruction, puis en
consultant le registre pointeur d'instruction, il va chercher l'instruction suivante, etc.
Les microcontrôleurs améliorent l'intégration et le coût (lié à la conception et à la
réalisation) d'un système à base de microprocesseur en rassemblant ces éléments essentiels
dans un seul circuit intégré.
On peut dire que les périphériques sont des circuits électroniques intégrés au microcontrôleur
capables d'effectuer des tâches spécifiques.
Par exemple :
- Les convertisseurs Analogique/Numérique qui donnent un nombre binaire a partir
d’une tension électrique.
- Les convertisseurs Numérique/Analogique qui font opération inverse.
- Les générateurs de signaux à modulation de largeur d'impulsion (PWM pour Pulse
Width Modulation).
- Les timers qui sont des compteurs de temps ou d'événements.
- les comparateurs qui comparent deux tensions électriques.
- les contrôleurs de bus comme l’UART.
- les oscillateurs qui servent de base de temps aux timers.
Le fonctionnement des périphériques peut être paramétré et commandé par le
programme et/ou les entrées-sorties. Parfois les périphériques peuvent générer une
21
interruption qui contraint le processeur à quitter le programme principal pour effectuer une
routine d'interruption.
1.3.4. Notion sur l’Arduino
Arduino est un circuit imprimé en matériel libre sur lequel se trouve un microcontrôleur
qui peut être programmé pour analyser et produire des signaux électriques, de manière a
effectué des taches très diverses comme le contrôle des appareils domestiques, l’éclairage,
chauffage, le pilotage d'un robot, etc.
Le système Arduino donne la possibilité d'allier les performances de la programmation
et de la télécommunication à celles de l'électronique. Plus précisément, pour programmer des
systèmes électroniques. Le gros avantage de l'électronique programmée c'est qu'elle simplifie
grandement les schémas électroniques et par conséquent, le coût de la réalisation, mais aussi
la charge de travail à la conception d'une carte électronique.
Le système Arduino permet de :
- Contrôler les appareils domestiques ;
- Fabriquer son propre robot ;
- Faire un jeu de lumières ;
- Communiquer avec l'ordinateur ;
- Télécommander et concevoir des drones, etc.
La carte Arduino repose sur un circuit intégré (un mini-ordinateur appelé également
microcontrôleur) associée à des entrées et sorties qui permettent à l'utilisateur de brancher
différents types d'éléments externes.
Figure 6 : Composition matérielle de la Carte Arduino "UNO" [10]
22
1.3.4.1. Les types de cartes
Il y a trois types des cartes :
- Les dites « officielles » qui sont fabriquées en Italie par le fabricant officiel : Smart
Project.
- Les dites « compatibles » qui n’est pas fabriquées par Smart Project, mais qui sont
totalement compatibles avec les Arduino officielles.
- Les « autres » fabriquées par diverse entreprise et commercialisées sous un nom différent
(Freeduino, Seeduino, Femtoduino, ...).
1.3.4.2. Le Schéma électronique
Toutes les cartes Arduino (officielle, compatible ou clone) reposent sur un composant
principal appelé microcontrôleur comme dit ci-haut. Pour la carte Arduino UNO c’est le
ATmega8 voir la figure suivante. La carte est alimentée avec une tension comprise entre de 5
à 9 Volts, la tension de 5V est utilisée pour l’expérimentation afin d’éviter de griller les
éléments du montage.
Figure 7: La tête du μ Circuit Intégré ATmega8 [11]
1.3.4.3. Le logiciel
L'environnement de programmation Arduino (IDE en anglais) est une application écrite
en Java inspirée du langage Processing. L'IDE permet d'écrire, de modifier un programme
appelé aussi SKETCH et de le convertir en une série d'instructions compréhensibles pour la
carte. Le logiciel permet de programmer la carte Arduino.
Cette carte va nous aider à interagir avec notre environnement électronique. Tous nos
capteur, actionneurs et modules y serons rattachés. C’est cette carte qui va lire les instructions
23
envoyés depuis notre Application Android via son adaptateur Bluetooth vers le module
Bluetooth HC-05 (Nous en parlerons bientôt) qui lui va le transmettre à la carte Arduino et lui
a son tour va exécuter les instructions relatives à cette information reçue et enfin, les
actionneurs vont être déclenché.
L’interface environnementale de développement (IDE) d’Arduino ressemble à ceci :
Figure 8: IDE Arduino [12]
Synthèse des caractéristiques
Caractéristiques Descriptions
Microcontrôleur ATmega328
Tension de fonctionnement 5V
Tension d'alimentation (recommandée) 7-12V
Tension d'alimentation (limites) 6-20V
Broches E/S numériques 14 (dont 6 disposent d'une sortie PWM)
24
Broches d'entrées analogiques 6 (utilisables en broches E/S numériques)
Intensité maxi disponible par broche E/S (5V) 40 mA
Intensité maxi disponible pour la sortie 3.3V 50 mA
Intensité maxi disponible pour la sortie 5V Fonction de l'alimentation utilisée - 500
mA max si port USB utilisé seul
Mémoire Programme Flash 32 KB dont 0.5 KB sont utilisés par le
bootloader
Mémoire SRAM (mémoire volatile) 2 KB
Mémoire EEPROM (mémoire non volatile) 1 KB
Vitesse d'horloge 16 MHz
a) L’Alimentation
Figure 9: Brochage de la carte Arduino Uno [13]
La carte Arduino Uno peut-être alimentée soit via la connexion USB (qui fournit 5V
jusqu'à 500mA) ou à l'aide d'une alimentation externe. La source d'alimentation est
sélectionnée automatiquement par la carte.
La carte peut fonctionner avec une alimentation externe de 6 à 20 volts. Cependant, si la
carte est alimentée avec moins de 7V, la broche 5V pourrait fournir moins de 5V et la carte
pourrait être instable. Si on utilise plus de 12V, le régulateur de tension de la carte pourrait
chauffer et endommager la carte. Aussi, la plage idéale recommandée pour alimenter la carte
Uno est entre 7V et 12V.
25
b) Entrées et Sorties numériques
Chacune des 14 broches numériques de la carte UNO (numérotées des 0 à 13) peut être
utilisée soit comme une entrée ou soit comme une sortie numérique, en utilisant les
instructions pinMode(), digitalWrite() et digitalRead() du langage Arduino dans le
compilateur Arduino IDE.
De plus, certaines broches ont des fonctions spécialisées :
- Communication Série: Broches 0 (RX) et 1 (TX). Utilisées pour recevoir (RX) et
transmettre (TX) les données séries de niveau TTL.
- SPI (Interface Série Périphérique): Broches 10 (SS), 11 (MOSI), 12 (MISO), 13
(SCK). Ces broches supportent la communication SPI disponible avec la librairie pour
communication SPI [14]. Les broches SPI sont également connectées sur le connecteur ICSP
qui est mécaniquement compatible avec les cartes Mega.
- I2C: Broches 4 (SDA) et 5 (SCL). Supportent les communications de protocole I2C
(ou interface TWI (Two Wire Interface - Interface "2 fils"), disponible en utilisant la librairie
Wire/I2C (ou TWI - Two- Wire interface - interface "2 fils") [15].
- LED: Broche 13. Il y a une LED incluse dans la carte connectée à la broche 13.
Lorsque la broche est au niveau HAUT, la LED est allumée, lorsque la broche est au niveau
BAS, la LED est éteinte.
c) Entrées et Sorties Analogiques
La carte Uno dispose de 6 entrées analogiques (numérotées de 0 à 5), chacune pouvant
fournir une mesure d'une résolution de 10 bits (c’est-à-dire. sur 1024 niveaux soit de 0 à
1023) à l'aide de la fonction analogRead() du langage Arduino. Par défaut, ces broches
mesurent entre le 0V (valeur 0) et le 5V (valeur 1023).
Note : les broches analogiques peuvent être utilisées en tant que broches numériques : elles
sont numérotées en tant que broches numériques de 14 à 19.
d) Autres broches
Il y a deux autres broches disponibles sur la carte :
- AREF : Tension de référence pour les entrées analogiques (si différent du 5V).
Utilisée avec l'instruction analogReference().
- Reset : Mettre cette broche au niveau BAS entraîne la réinitialisation (= le
redémarrage) du microcontrôleur. Typiquement, cette broche est utilisée pour
ajouter un bouton de réinitialisation sur le circuit qui bloque celui présent sur la
carte.
26
e) La programmation
La carte Arduino Uno peut être programmé par avec le logiciel Arduino IDE que nous avions
déjà parlé impeux plus haut.
Il suffit de sélectionner "Arduino Uno" dans le menu Tools > Board (en fonction du
microcontrôleur présent sur votre carte).
Le microcontrôleur ATmega328 présent sur la carte Arduino Uno est livré avec un
bootloader (petit programme de démarrage) préprogrammé qui vous permet de transférer le
nouveau programme dans le microcontrôleur sans avoir à utiliser un matériel de
programmation externe.
1.3.5. Le Module Bluetooth (HC-05)
Le HC-05 module est simple pour utiliser le Bluetooth SPP (Serial Port Protocol),
fabriqué pour la communication sans fils de la connexion au port série.
Le port série du module Bluetooth à une version V2.0+EDR (Enhanced Data Rate) de
3Mbps avec une modulation complète de 2.4GHz du transceiver (transmetteur récepteur)
radio de la bande de base.
Figure 10: Emetteur-récepteur Bluetooth [16]
1.3.5.1. Le hardware
- Sensibilité : -80dBm
- Puissance de Transmission : plus de +4dBm
- Courant d’utilisation minimale: 1.8v
- Courant Recommandé : 3.3 a 5v I/O
- PIO (Power Input Output) contrôle (BLUETOOTH HC-05)
- Interface UART programmable avec baud rate
- Antenne intégré
27
1.3.5.2. Le software
 Défaut baud rate : 9600
 Défaut type : Esclave
 Bits de données : 8
 PIO9 et PIO8 peuvent être connectés aux LEDs bleu et rouge séparément. Lorsque le
maitre et l’esclave sont appariés, la LED rouge et bleu clignotent 1x toutes le 2s
d’intervalle, tant que le module est déconnecté, seule la LED bleu clignote toutes les
2s.
 Connexion automatique au dernier appareil connecté par défaut.
 Permet l’appariement de l’appareil pour la connexion par défaut.
 Le code de connexion par défaut est le « 1234 »
 Reconnexion automatique âpres 30min si la déconnexion était dû au out range area.
1.3.5.3.Configuration de pins (sorties et entrées)
Figure 11: HC-05, vu du dos [17]
Connexion du module HC-05 avec le microcontrôleur Arduino
Figure 12: HC-05 et Arduino Uno [18]
28
1.3.6. Le Module RTC
Ce module est utilisé pour des applications telles que l’enregistrement de données en
rapport avec le temps, les applications des synchronisations. Il gère le temps (jour, mois,
année, heur, minute, secondes et tierces).
Comme le module est autoalimenté, les données de temps sont maintenues même si
l’Arduino est hors tension. C’est qui permettra de construire un système à faible puissance qui
peut fonctionner pendant une longue période sans changer des piles.
Figure 13: Real Time Clock Modul [19]
1.3.7. Le Module RFID
Radio Fréquence Identification, ce système est compose d’un Tag (carte) et d’un
lecteur (antenne) qui communiquent grâce à un champ magnétique qui est émis par la carte et
qui sera capter par la carte grâce à son antenne intégrée et qui alimentera la puce de la carte
qui contient les informations relatives à la carte.
Figure 14: Radio Frequency IDentification
29
1.3.8. Le Module LCD [20]
Un écran à cristaux liquides (liquid cristal display, LCD, en anglais) utilise un mode
d'affichage numérique sur un écran plat. Le mode d’éclairage va permettre d’offrir des
fonctionnalités de réglages avancées.
Cet écran est composé de 16 colonnes et 2 lignes et utilise 6 broches numériques et deux
broches pour l’alimentation (3.3v ou 5v).
Figure 15:Liquid Crystal Display
1.3.9. Le Capteur le mouvement/ Présence (PIR) [21]
Passive Infrared, ce capteur permet de détecter le mouvement d’un humain se déplaçant
dans la zone de couverture du capteur. Il capte le niveau de rayonnement infrarouge, tout
corps émet un rayonnement de faible niveau, et plus le corps et chaud, plus le son
rayonnement est grand.
Son détecteur de mouvement est divisé en deux, la raison est que nous voulons détecter
un mouvement et non un rayonnement IR, alors les deux moitiés sont câblées afin qu’ils
s’annulent mutuellement, si une moitié capte plus ou moins de rayonnement que l’autre, la
sortie basculera vers le haut ou vers le bas (HIGH/ LOW). Il possède 3 broches : Vcc (5v +),
Out (vers Arduino), Gnd (5v -).
Figure 16:Passive Infra Red
30
1.3.10. Le Capteur de Température (DHT) [22]
Pour arriver à avoir la température ambiante, nous avons eu à utiliser le capteur DHT11.
Ce capteur ne fournit pas seulement la température mais aussi l’humidité de la pièce où il se
trouve. Ce capteur peut se brancher sur une bronche analogique ou digitale d’une carte
Arduino. Alimenté avec une tension de +5V. Il possède 3 broches : Vcc (5v +), Out (vers
Arduino), Gnd (5v -). Il fonctionne sous une température allant de 0 à 50° avec erreur de +/- 2
et humidité de 20 – 90% avec une erreur de 5%.
Figure 17:Temperature Modul
1.3.11. Le Module GSM/GPRS [23]
Le module nous fournira le support d’alerte via le réseau cellulaire du téléphone pour recevoir
des notifications téléphoniques (Appels, Messages) lors du déclanchement d’alarme.
Ce module fourni trois services :
- Short Message Service (SMS)
- Appel Audio
- GPRS Service (Service Internet)
Il est compatible avec toutes les cartes Arduino, et est configuré par le service UART
(Universal Assynchronous Receiver and Transmeter) en utilisant les AT commandes. Il est
basé sur le SIM900 module.
31
Figure 18:GSM Shield
1.3.12. Le Module FINGERPRINT [24]
Le traitement des empreintes digitales inclut deux parties : l’enregistrement des
empreintes et la correspondance entre elles. Lors de l’inscription, l’utilisateur doit entrer le
doigt deux fois et le système traite deux fois les images des doigts, puis génère un modèle de
doigt basé sur le résultat de traitement et stock le model en lui attribuant un numéro
d’identification.
Lors de l’appariement, l’utilisateur met le doigt sur le capteur optique et le système
génère un modèle de doigt et le compare avec les modèles de la bibliothèque des doigts prés-
enregistrés.
Figure 19 : Fingerprint Modul
1.3.13. Le Servomoteur [25]
Le servomoteur est composé d’un moteur électrique relié mécaniquement à un
potentiomètre. L’électronique à l’intérieur du servo traduit la largeur de l’impulsion dans une
position. Lorsque le servo est commandé en rotation, le moteur est alimenté jusqu'à ce que le
potentiomètre atteigne la valeur correspondante à la position commandée. Il possède l’angle
de rotation de 0 - 180°.
32
Figure 20: Servo motor
1.3.14. Le Relais [26]
Ce module est alimenté le DC et le AC, et est utilisé pour commander les appareils à
moyenne tension (Maximum 250Vac ou 30Vdc et supporte un courant de 10A). Un relais
peut être couplé avec un transistor (NPN ou PNP) pour être utiliser sur un microcontrôleur qui
fournît 5v.
Figure 21: Relay
1.3.15. La LED
La Diode Electro Luminescente en Français (DEL) et Light-Emitting Diode en Anglais
(LED), est un dispositif capable d’émettre de la lumière lorsqu’elle est parcourue par un
courant électrique.
Elle est utilisée dans la construction des écrans plats de télévision : pour le rétro
éclairage des écrans à cristaux liquides ou comme source d'illumination principale dans les
télévisions à OLED.
33
Figure 22: Diode Electro Luminescente
1. CHAMP D’APPLICATION
1.1. Présentation du milieu
La maison d’habitation est un lieu par défaut de sécurité et de confort, nous avions
orienté notre travail sur elle pour la rendre ses qualités et pour aussi la rendre encore plus
agréable à vire.
La maison que nous avions choisie pour ce projet et la nôtre, elle est situé au dans la
ville de Goma dans la commune de Goma, Quartier HIMBI 2, Avenue de la mission numéro
138.
1.2. Observation fonctionnelle du SI existant de la Maison
Notre maison d’étude possède deux sources d’alimentations, la SNEL et l’énergie
solaire, comme la majorité, elle est gérée manuellement c.-à-d. en entrée de la porte
principale, nous devons avoir des clefs pour différents cadenas et serrures afin d’accéder dans
la maison.
Nous avions remarqué que la gestion d’énergie était mal faite, aussi l’accès dans la
maison n’était pas contrôlé, la gestion des appareils électroniques et électroménagers est plus
ou moins mal organisée du fait que par exemple lorsqu’on oublié d’éteindre le réchaud ou si
on laissé la télévision allumée lors de la coupure de courant, a son retour, s’il y a personne à la
maison, il aura consommation d’énergie électrique qui sera facturée évidement à la fin du
mois.
34
CHAPITRE 2: ANALYSE ET CONCEPTION DU NOUVEAU SYSTEME
2.1. ANALYSE PROPREMENT DITE
Le système que nous avions conçu a été baptisé « Smart House » en hommage des
différentes tâches et services qu’il offre à son utilisateur. Cela c’est en se basant sur la
définition d’un système qui est un ensemble d’éléments matériels et immatériels en
interaction transformant par un processus, les éléments en d’autres (les entrées aux sorties)
avec une composition des sous-systèmes relié entre-deux pour la prise de décision et la
sauvegarde des informations.
2.1.1. Elaboration du cahier de charge
Nous allons lister tous les matériels que nous avions utilisés dans Smart House avec leurs
caractéristiques.
Num Qte Matériels Rôles Caractéristiques
1 2 Arduino Mega 2560
Assurent la fonction des
contrôleurs (la partie
intelligente)
Avec une mémoire de 512k et 54
broches digitales, 4 ports série
15 broches analogiques
2 1
Module Bluetooth
HC-05
Servira d’antenne pour
nos microcontrôleurs en
établissant la connexion
avec le téléphone mobile
Codé sur 8 bit avec une vitesse
de transmission de 3Mbts sous la
version du Bluetooth 3.0. avec
un champ de couverture d’~ 12m
3 1 Module GSM
Assure le rôle d’alerte
par le bais du réseau
cellulaire, une connexion
internet et un service
d’alerte par appel et
message
Ce module supporte la 2G
(900MHz), GPRS, Appels et
Messages
4 1 Le Module RTC
Assure le rôle d’alerte
par le bais du réseau
cellulaire, une connexion
internet et un service
d’alerte par appel et
message
Il possède un une pile CMOS
pour la sauvegarde du temps
(seconde, minute, heure, jours,
mois, année) et possède aussi
une puce pour de capteur de
température.
35
5 1 Le Module LCD
Jouera le rôle d’afficheur
des informations comme
la température de
l’intérieure comme celle
de l’extérieure, le date et
t’état de l’alarme
Il est composé de 16 colonnes et
2 lignes, alimenté par 6 broches
numériques.
6 1 Le Module RFID
Nous permettra l’accès
dans la maison avec
carte.
Il est composé d’un tag qui
contient une puce avec un id et
d’un lecteur.
7 5
Le Capteur de
Présence (PIR)
Servira au capteur de
présence dans différente
pièces de la maison.
Possède deux capteurs de
rayonnement infrarouge.
8 1
Le Capteur de
Température (DHT)
Va servir de capteur de
température et
d’humidité
Ce module est alimenté avec du
3.3v
9 1
Le Module
FINGERPRINT
Jouera le rôle du scanner
d’empreinte.
Ce module est alimenté avec du
3.3v
10 5 Le Servomoteur
Va jouer le rôle
d’actionneur
Il a une rotation de 0 – 180
degrés
11 1 Le Relais
Va nous aider dans la
partie puissance (gestion
de 12vdc et 220vac)
Alimenté par 12v et supporte un
courant de 10A.
12 4 La LED Servirons des lampes
témoins.
Alimenté par 3.3vdc, 5vdc et
12vdc
13 1 KeyPad
Il va jouer le rôle
d’activateur, de
désactivateur d’alarme et
la gestion de mot de
passe
Possède 8 broches
14 1 Buzzer
Il va jouer le rôle du
baffle pour l’alarme
sonore
Possède 2 broches
36
2.1.2. Planning prévisionnel
Cette partie traite de la manière dont le travail a été élaboré tout en y incluant les
contraintes liées au temps et au coût des tâches à effectuer.
A. Tableau d’identification et dénombrement des tâches
Codes
taches
Désignation des taches Durée/Jour
Contraintes
d’antériorité
A
Récolte et analyse des données sur le fonctionnement du
microcontrôleur, Bluetooth et autres composants
électroniques
30 -
B Plan de conception du nouveau système 5 A
C Analyse du nouveau système 15 B
D
Installation et configuration des logiciels pour la
programmation et la configuration des matériels
électroniques. (Arduino IDE, Visual Studio Code,
Sublime Text 3, Fritzing, Proteus, PlateformIO et
Atome)
3 C
E
Développement de l’application Android (Android
studio 3.0)
35 D
F
Préparation et configuration du module Bluetooth et du
microcontrôleur
12 E
G Test de la configuration 3 F
H Test de l’application Android 2 G
I Configuration des capteurs 7 H
J Configuration des modules et actionneurs 10 I
K
Test de la configuration des capteurs, modules et
actionneurs
2 J
L
Configuration de la sécurité réseau (Algorithme de
CESAR)
2 K
M
Test préliminaire de tout le système et correction
d’erreurs éventuelles
7 L
N Test final 5 M
37
O
Formation des membres de la famille sur l’utilisation de
Smart House
7 N
38
B. Diagramme de Gantt
Permet de faire figurer l'enchaînement dans un calendrier afin de montrer la durée d’exécution des tâches.
Figure 23: Diagramme de Gantt
39
C. Estimation des coûts pour la réalisation du projet
Num Matériels PU en $ Qté Transport($) PT en $
1 Arduino Mega 2560 22 2 12 56
2 Module Bluetooth HC-05 15 1 5 20
3 Module GSM 32 1 12 44
4 Le Module RTC 14 1 5 19
5 Le Module LCD 10 1 6 16
6 Le Module RFID 25 1 7 32
7 Le Capteur de Présence (PIR) 10 5 10 60
8
Le Capteur de Température
(DHT)
8 1 4 12
9 Le Module FINGERPRINT 21 1 5 26
10 Le Servomoteur 9 6 6 60
11 Le Relais 4 16 7 71
12 La LED 1 4 0 4
13 KeyPad 9 1 4 13
14 Buzzer 2 1 1 3
15 Fil connecteurs 20
1
Boite
7 27
16 Téléphone Androïde 200 1 20 220
TOTAL 684
40
2.2.CONCEPTION DU NOUVEAU SYSTEME
2.2.1. Présentation des diagrammes
7
8
9
10
4
2
1
5
6
3
11
12
13
LEGEND
1. Application Android
2. Module Bluetooth (HC-05)
3. Arduino Mega
(Microcontrôleur)
4. Ecran LCD
5. Module RTC
6. Module FRID
7. Capteurs des présences
8. Capteur de Température
9. Module GSM
10. Module Fingerprint
11. Servomoteur
12. Relay
13. Led
41
2.2.2. Implémentation du projet
Vu que notre projet consiste à faire une gestion de la maison d’habitation via un
téléphone mobile en utilisant la technologie Bluetooth, nous aurons des configurations à
faire :
A. Topologie logique
Dans cette partie nous allons parler du mécanisme de la communication des
informations depuis le téléphone (Android) jusqu’au HC-05 connecté au microcontrôleur.
A.1. Cadre théorique
 Premièrement, pour que le téléphone établisse une connexion avec le module
Bluetooth, il va faire appel au protocole RFCOMM qui va se charger d’émuler
une connexion série avec le module Bluetooth grâce à son BD_ADDR, étant
donné que le module est configuré par défaut en mode discovery
(découverte/visibilité), la RFCOMM va lancer le scan des périphériques et va
se connecter au module HC-05 et récupérer son adresse.
 Deuxièmement, la RFCOMM ayant déjà l’adresse du module, va faire appel
au Socket qui, permettra l’ouverture d’un canal de communication qui sera
sécurisé (pour éviter des interférences avec d’autres modules comme le Wi-Fi
ou le Xbee qui utilisent aussi la fréquence de 2.4GHz) en utilisant un UUID
(Universal Unique IDentify). Cette clef étant unique au monde et est codée sur
64 Bits hexadécimaux.
Le socket va aussi faire appel au protocole UART (Universal
Assynchronous Receiver and Transmeter) pour permettre la réception et
l’émission dans la bande de 2.4GHz.
Le va envoyer un message d’avertissement au module, ce paquet
contiendra l’UUID et le BD_ADDR. Si le module lui répond avec ce même
UUID (qui est bien-sûre configurer d’avance dans le paramètre du module),
c’est que les deux périphériques ses reconnaissent et le RFCOMM va établir la
connexion proprement dite et sécurisée.
 Troisièmement, ayant déjà le BD_ADDR et un canal de communication
ouverte et sécurisé, nous allons maintenant échanger des informations avec le
module et vice-versa. Seulement voilà, il nous manque encore quelque chose
pour envoyer et recevoir, la RFCOMM va faire encore appel au Socket qui va a
son tour faire appel à ses sous classes : OutputStream() et InputStream().
42
Ces deux sous classes vont nous permettre d’écrire et de lire dans le canal en utilisant
l’UART.
Pour augmenter la sécurité dans nos communications avec le module, nous avions fait
appel à l’algorithme de CESAR. Ce dernier utilise le chiffrement asymétrique : la clef de
chiffrement sera la clef de déchiffrement.
A.2. Représentation
 Overview
Dans cette partie, nous allons faire la configuration du module Bluetooth et une
représentation schématique de notre architecture.
Etant donné que nos capteurs ne possédant pas toutes les particularités pour être
appeler RCSF (Réseaux de Capteurs Sans Fil), nous allons les faire partager la même énergie
et la même radio. Pour ce qui concerne l’espace de stockage et le microprocesseur, ils en
possèdent.
 Configuration du Module Bluetooth
Les commandes AT [26]
Les commandes Hayes, parfois appelées commandes AT, constituent un langage de
commandes développé à l’ origine pour les modems Hayes Smartmodem300. Elles permettent
de composer un numéro de téléphone, commandent le raccordement du modem a la ligne
(décrocher un appel téléphonique), spécifient le type de transmission et le protocole de liaison
à utiliser.
Avec ces commandes, nous parviendrons à configurer notre module enfin qu’il se
connecte avec notre Application mobile via son adaptateur Bluetooth.
Pour entrer dans l’AT MODE, on doit suivre les étapes suivantes :
1. Connecter le pin KEY du module au pin VCC (5v out) d’Arduino
2. Envoyer le courant dans le module. A ce stade, le module entrera
automatiquement dans l’AT MODE. Dans ce mode on aura à utiliser le baud rate
(la vitesse de transmission de données) de 38400. Dans ce cas, l’utilisateur doit
changer aussi son baud rate pour le mode ESCLAVE et MAITRE dans
l’application mobile.
43
1. Tester de commande
Commandes Résultats Paramètres
AT OK None
2. Restaurer
Commandes Résultats Paramètres
AT+RESET OK None
3. Voir la version du logiciel
Commandes Résultats Paramètres
AT+VERSION ? +VERSION :<Param>
OK
Param : Version du module
Exemple : AT+VERSION ?rn
+VERSION : 2.0-20100601
OK
4. Restaurer à la configuration d’origine
Commandes Résultats Paramètres
AT+ORGL OK None
Etat par défaut : Slave mode, pin code : 1234, device name: H-C-2010-06-01,
Baud 38400bits/s.
5. Voir l’adresse du module
Commandes Résultats Paramètres
AT+ADDR ? +ADDR :<Param>
OK
Param : Bluetooth Address
(BD_ADDR)
Exemple : AT+ADDR ?rn
+ADDR : 1234 :56 :abcdef
OK
6. Set/Check le nom du module :
Commandes Résultats Paramètres
AT+NAME=<Param> OK Param : Bluetooth Device name
Default : HC-05
(Défaut : HC-05)
AT+NAME ? +NAME :<Param>
OK (/FAIL)
Exemple :
AT+NAME=HC-05rn
OK
AT+NAME=Smart Housern
OK
AT+NAME? rn
+NAME: Smart House
OK
44
7. Set/Check le mode du module
Commandes Résultats Paramètres
AT+ROLE=<Param> OK Param : 0. Slave role
1. Master role
2. Slave-Loop role
Default : 0
+ROLE :<Param>
OK
Note :
 Slave : connexion passive
 Slave-Loop : Passive connexion, reçois les données du périphérique
Bluetooth distant (du Master) et les renvois au Master
 Master : lance la requête pour trouver les SPPs périphériques de
Modules Bluetooth Slave, amorce la connexion, et développe une
transmission transparente des données entre lui et les Slave
périphériques.
8. Set/Check la classe du périphérique :
Commandes Résultats Paramètres
AT+CLASS=<Param> OK Param : Device type.
Le type de périphériques
Bluetooth est de 32-bit. Ce
paramètre indique le type du
périphérique et les quels peuvent
être supporté.
AT+CLASS ? +CLASS :<Param>
1. OK
2. FAIL
9. Set/Check le code Pin :
Commandes Résultats Paramètres
AT+PSWD=<Param> OK Param : Code PIN
Défaut : 1234
AT+PSWD? +PSWD : <Param>
OK
10. Set/Check le paramètre Serie :
Commandes Résultats Paramètres
AT+UART=<Param>,<Param>,
<Param>
OK Param 1: Baud rate
Param2 : Stop bit
Param3 : Parity
AT+UART? +UART :
<Param>,<Param>,<Param>
OK
Exemple :
AT+UART=115200, 1, 2rn
OK
45
AT+UART ?
+UART : 115200, 1, 2
OK
11. Set/Check le mode de connexion (Connexion mode) :
Commandes Résultats Paramètres
AT+CMODE=<Param> OK Param :
0- connecté sur une adresse
fixe
1- connecté sur n’importe
quelle adresse
2- Boucle-Esclave
AT+CMODE? +CMODE : <Param>
OK
12. Set/Check le paramètre de scan :
Commandes Résultats Paramètres
AT+IPSCAN=<Param1>,<Param2>,
<Param3>,<Param4>
OK Param 1: Query time interval
Param2 : Query duration
Param3 : Paging interval
Param4 : Call durationAT+IPSCAN? +IPSCAN :<Param>,<Param2>,
<Param3>,<Param4>
OK
Exemple :
AT+IPSCAN=1234, 500, 1200, 250 rn
OK
AT+IPSCAN ? : 1234, 500, 1200, 250
13. Set/Check le paramètres SNIFF (Energie Shaving Mode) :
Commandes Résultats Paramètres
AT+SNIFF=<Param1>,<Param2>,
<Param3>,<Param4>
OK Param 1: Max time
Param2 : Min time
Param3 : Retry time
Param4 : Time outAT+SNIFF? +POLAR =<Param>,<Param2>,
<Param3>,<Param4>
OK
Note : Le mode SNIFF est un autre mode de conservation de la consommation d’énergie
utilisé par le Bluetooth. Ce mode est par défaut désactivé, et la radio est activé constamment
lorsque le Bluetooth est connecté (presque 25-30 mA). Par contre, dans le mode SNIFF, la
radio s’allume à un temps spécifique et bien déterminé, et fonctionne avec une faible
consommation d’énergie (dans le 2 mA). Ce mode ne peut qu’appartenir qu’à une
connexion active. Lorsque la connexion est établie, le Maitre et l’Esclave doivent supporter le
46
mode SNIFF, contrairement à la radio qui restera dans le full active mode. Le temps max
autorisé est ~20secondes.
14. Suppression de périphériques Authentifiés :
Commandes Résultats Paramètres
AT+PMSAD=<Param> OK Param 1: adresse du
périphérique déjà authentifié
Exemple : AT+PMSAD=1234, 56, abcdefrn
OK
15. Suppression de tous les périphériques Authentifiés
Commandes Résultats Paramètres
AT+AMAAD OK -
16. Rechercher du périphérique Authentifié :
Commandes Résultats Paramètres
AT+FSAD=<Param> 1- OK
2- FAIL
Param : Device Address
17. Voir le nombre de périphériques Authentifiés :
Commandes Résultats Paramètres
AT+ADCN ? +ADCN :<Param>
OK
Param : Device count
18. Voir les récents périphériques utilisés :
Commandes Résultats Paramètres
AT+MRAD ? +MRAD :<Param>
OK
Param : Recently Authenticated
device Address
47
19. Voir l’état de fonctionnement du Module Bluetooth :
Commandes Résultats Paramètres
AT+STATE ? +STATE :<Param>
OK
Param :
 INITALISED
 READY
 PAIRABLE
 PAIRED
 INQUIRING
 CONNECTING
 CONNECTED
 DISCONNECTED
 UNKNOWN
20. Initialisation de la librairie du profile SPP :
Commandes Résultats Paramètres
AT+INT 1. OK
2. FAIL
-
21. Information sur le Module Bluetooth :
Commandes Résultats Paramètres
AT+INQ +INQ : <Param1>,<Param2>,
<Param3>
…
OK
Param 1: Address
Param2 : Device Classe
Param3 : RSSI signal strength
AT+POLAR? +POLAR =<Param>,<Param2>
OK
22. Annulation de la demande d’information sur le Module Bluetooth :
Commandes Résultats Paramètres
AT+INQC OK -
23. Connecter un périphérique :
Commandes Résultats Paramètres
AT+LINK=<Param> 1. OK
2. FAIL
Param : Device Address
Exemple :
AT+FSAD=1234, 56, abcdef rn
OK
AT+LINK=1234, 56, abcdef rn
OK
48
24. Déconnecter :
Commandes Résultats Paramètres
AT+DISC=<Param> 1. +DISC : SUCCESS
OK
2. +DISC : LINK_LOSS
OK
3. +DISC : NO_SLC
OK
4. +DISC : TIMEOUT
OK
5. +DISC : ERROR
OK
Param : Device Address
B. Topologie physique
La partie physique va parler de la façon dont nos équipements sont connectés entre-
deux. Nous allons lister quelques schémas électroniques de notre projet.
1. Capteur de température, écran LCD et le Buzzer.
Figure 24: Capteur de température, écran LCD et le Buzzer
49
2. Capteur de présence (PIR)
Figure 25: Capteur de présence (PIR)
3. Arduino Mega, Module Keypad, écran LCD et le Buzzer.
Figure 26: Arduino Mega, Module Keypad, écran LCD et le Buzzer.
50
4. Capteur de lumière et le Buzzer.
Figure 27: Capteur de lumière et le Buzzer.
51
5. Module Bluetooth, Keypad, LCD, Servomoteur, Buttons poussoirs et Buzzer
Figure 28: Module Bluetooth, Keypad, LCD, Servomoteur, Buttons poussoirs et Buzzer
52
6. Schéma global du système Smart House
Figure 29: Schéma global du système Smart House
53
C. Implémentation proprement dite
Cette partie sera consacrée à la programmation du module Bluetooth et des
microcontrôleurs et les autres matériels.
Le code a été fait dans le compilateur SublimeText 3 qui par défaut est un éditeur de
texte mais nous allons lui ajouter un plugin [27] pour qu’ils prennent en charge la
programmation du microcontrôleur.
D. Etapes de configuration partie serveur
1. Importation des librairies et déclaration des variables
2. Structure principale du programme
Cette fonction setup() s’exécutera une seule fois lors du démarrage du microcontrôleur,
on y initialise les variables.
54
3. Structure globale du programme
Ici, on appelle toutes les fonctions qui serons exécuter en boucle avec une vitesse
définie dans le setup() par l’instruction Serial.begin(38400) qui est aussi la vitesse de
transmission du microcontrolleur vers le module Bluetooth
55
4. Configuration du module Bluetooth
Comme on l’avait déjà abordé dans les parties précédentes, le module Bluetooth est
configuré grâce aux commandes AT. Ici on configure le module en mode Maitre ainsi le
téléphone sera l’esclave, puis on lui attribue un nom, un mot de passe, une vitesse de
transmission, etc…
5. Structure globale du programme
La fonction bluetooth() va recevoir les données provenant du téléphone et va les
déchiffrer puis le comparer avec les instructions correspondantes. Lors de la réponse,
cette même fonction va encore chiffrer les données avant de les envoyer
56
6. Structure globale du programme
Cette fonction va être utilisée pour le capteur de présence. Lorsque ce dernier capte
quelque chose la fonction commander le module Gsm pour passer un appel
téléphonique puis elle va raccrocher après 5 secondes.
57
7. Structure globale du programme
Cette fonction traite la réception du message et commande le servomoteur d’ouvrir ou
de fermer la porte et à la fin, de renvoyer le message a téléphone avec l’état de la porte
après réception du message, l’heure et la température de la pièce.
8. Envoie du message
La fonction sms_send() va envoyer un message téléphonique.
58
9. Eclairage crépusculaire
Cette fonction va gérer notre module RTC pour savoir s’il est déjà 18h00 pour que les
lampes projecteurs dès l’extérieures puissent s’allumer et si par contre il est 6h00, les
projecteurs devrons s’éteindre.
10. Ventilateurs
Cette fonction va gérer les ventilateurs dans la maison, si la température dépasse 24.5,
automatiquement les ventilateurs vont commencer à tourner.
59
11. Eclairage dans les escaliers
Lorsqu’une personne passe dans les escaliers et qu’il est déjà 18h, a lampe s’allume et
attend après 15 secondes et s’éteint.
12. Ouverture de la porte
Cette fonction ouvre la porte et allume la Led Verte et éteint la Led Rouge pour signaler
que la porte est ouverte.
60
13. Fermeture de la porte
Cette fonction ferme la porte et allume la Led Rouge et éteint la Led Verte pour
signaler que la porte est fermée.
14. Commande des relays
15. Chiffrement du message
Cette fonction fait appel à l’algorithme de César avec comme clef de chiffrement un
décalage à gauche de 8.
16. Déchiffrement du message
Elle va faire le contraire du chiffrement. Donc si on a chiffré avec une clef de décalage
de 8 à gauche, pour déchiffrer on va faire un décalage de 8 a droite.
61
17. Réglage de la montre pour le RTC
18. Affichage de la date + heure.
Cette fonction va afficher le jour de la semaine, le jour du mois, le mois, l’année,
l’heure, les minutes et secondes.
62
19. Affichage de la date + heure + température
20. Lecture de la temperature dans le module RTC
21. Lecture de l’heure + minutes dans le module RTC
63
E. Etapes de configuration partie Cliente
La partie cliente est sous une plateforme Android, nous allons représenter quelques
interfaces.
1. Ecran d’accueil + connexion
2. Sélection du mode de connexion + liste de périphériques
64
3. Etablissement de la connexion
4. Le Dashboard
65
5. Le menu + le Dashboard des modules
6. La télécommande
66
CHAPITRE 3: DISCUSSION ET RECOMMANDATIONS
A travers ce travail intitulé « conception d’un système domotique interconnecté par
Bluetooth sous une plateforme Androïde », nous nous sommes consacrés à concevoir une
maquette sur laquelle, on gère en de gérer ~85% des activités domestiques liés au confort via
un téléphone.
L’application Androïde a été conçue de façon à tenir compte de l’ergonomie mais aussi
des appareils que les utilisateurs auront à utiliser pour accéder au système Smart House.
Puisqu’aujourd’hui plus de 87% des personnes accèdent des tablettes ou Smartphones ayant
un adaptateur Bluetooth.
Pour la contrainte de la distance entre Smart House et le user, nous avons développé une
librairie pour la commande par SMS. Le projet est réalisé sur la base d’une carte Arduino.
Pour arriver à la réalisation, nous avons fait une conception matérielle, où quelques notions
d’électronique nous ont été très utiles.
Ce système réduit les gaspillages en effort humain et en énergie électrique. Augmente le
confort ainsi la sécurité de l’habitation. Les difficultés rencontrées sont nombreuses, surtout
en ceux qui concernent l’acquisition des matériels sur le marché où nous étions obligé de faire
des achats et on y a constaté des pertes des certains matériels lors du transport. Au vu de ce
qui précède, l’objectif que nous nous sommes fixé au départ à savoir réaliser une maison
autonome et capable être contrôlée depuis un Smartphone via une application Androïde en
utilisant le réseau Bluetooth ou un réseau GSM (commande SMS) a été atteint. Néanmoins
nous regrettons de ne pas avoir eu assez de temps et de moyen pour perfectionner notre
travail, en ajoutant d’autres fonctionnalités.
Les perspectives de poursuite du projet sont multiples mais quelques points nous
semblent vraiment importants pour les versions futures:
- l’ajout d’un réseau de capteurs sans fils dans chaque pièces de la maison en y incluant
une commande vocale (en offline),
67
- l’ajout d’un système solaire dans le but de rendre la maison plus autonome en énergie,
- l’ajout d’un réseau internet pour que le système soit accessible de n’importe où sur
terre.
Nous recommandons a tout ceux qui sont passionné par le progrès de la technologie de
bien vouloir mettre à disposition cette technologie pour leurs rendre une vie paisible, meilleur
et sure.
68
TABLE DES MATIERES
EPIGRAPHE----------------------------------------------------------------------------------------------- 2
DEDICACE ------------------------------------------------------------------------------------------------ 3
REMERCIEMENTS -------------------------------------------------------------------------------------- 4
SIGLES ET ABREVIATIONS-------------------------------------------------------------------------- 5
INTRODUCTION----------------------------------------------------------------------------------------- 7
1. ETAT DE LA QUESTION ---------------------------------------------------------------------- 7
2. PROBLEMATIQUE------------------------------------------------------------------------------ 7
3. HYPOTHESES------------------------------------------------------------------------------------ 8
4. OBJECTIFS---------------------------------------------------------------------------------------- 8
5. CHOIX ET INTERET DU SUJET ------------------------------------------------------------- 8
6. METHODES ET TECHNIQUES--------------------------------------------------------------- 9
6.1. Méthodes----------------------------------------------------------------------------------------- 9
6.2. Technique ---------------------------------------------------------------------------------------- 9
7. DELIMITATION DU SUJET------------------------------------------------------------------- 9
8. DIFFICULTES RENCONTREES-------------------------------------------------------------10
9. ORGANISATION DU RESTE DU MEMOIRE --------------------------------------------10
CHAPITRE 1: GENERALITE ET CHAMP D’APPLICATION ---------------------------------11
1.1. GENERALITES -------------------------------------------------------------------------------11
1.2. DEFINITION DU THEME ---------------------------------------------------------------11
1.3. CONCEPT DE BASE----------------------------------------------------------------------11
1. CHAMP D’APPLICATION--------------------------------------------------------------------33
1.1. Présentation du milieu ---------------------------------------------------------------------33
1.2. Observation fonctionnelle du SI existant de la Maison -------------------------------33
CHAPITRE 2: ANALYSE ET CONCEPTION DU NOUVEAU SYSTEME ------------------34
2.1. ANALYSE PROPREMENT DITE---------------------------------------------------------34
2.1.1. Elaboration du cahier de charge -------------------------------------------------------34
2.1.2. Planning prévisionnel -------------------------------------------------------------------36
A. Tableau d’identification et dénombrement des tâches -----------------------------------36
B. Diagramme de Gantt --------------------------------------------------------------------------38
C. Estimation des coûts pour la réalisation du projet ----------------------------------------39
2.2. CONCEPTION DU NOUVEAU SYSTEME---------------------------------------------40
2.2.1. Présentation des diagrammes-----------------------------------------------------------40
69
2.2.2. Implémentation du projet ---------------------------------------------------------------41
A. Topologie logique -----------------------------------------------------------------------------41
B. Topologie physique ---------------------------------------------------------------------------48
C. Implémentation proprement dite ------------------------------------------------------------53
D. Etapes de configuration partie serveur -----------------------------------------------------53
E. Etapes de configuration partie Cliente------------------------------------------------------63
CHAPITRE 3: DISCUSSION ET RECOMMANDATIONS--------------------------------------66
LISTE DES FIGURES--------------------------------------------------------------------------------70
WEBOGRAPHIE-----------------------------------------------------------------------------------------71
70
LISTE DES FIGURES
Figure 1 : Le logo de Bluetooth, inspiré des initiales en alphabet runique de Harald Blatand ---------- 12
Figure 2: Piconet -------------------------------------------------------------------------------------------------------- 16
Figure 3: Inter-réseau Bluetooth (scatternt)------------------------------------------------------------------------ 16
Figure 4: Représentation graphique schématique d’items relatifs a « l'habitat intelligent »-------------- 18
Figure 5: Image d'un microcontrôleur------------------------------------------------------------------------------- 19
Figure 6 : Composition matérielle de la Carte Arduino "UNO" [10] ----------------------------------------- 21
Figure 7: La tête du μ Circuit Intégré ATmega8 [11]------------------------------------------------------------ 22
Figure 8: IDE Arduino [12] ------------------------------------------------------------------------------------------- 23
Figure 9: Brochage de la carte Arduino Uno [13] ---------------------------------------------------------------- 24
Figure 10: Emetteur-récepteur Bluetooth[16] --------------------------------------------------------------------- 26
Figure 11: HC-05, vu du dos [17]------------------------------------------------------------------------------------ 27
Figure 12: HC-05 et Arduino Uno [18] ---------------------------------------------------------------------------- 27
Figure 13: Real Time Clock Modul [19] --------------------------------------------------------------------------- 28
Figure 14: Radio Frequence IDentification ------------------------------------------------------------------------ 28
Figure 15:Liquid Crystal Display ------------------------------------------------------------------------------------ 29
Figure 16:Passive Infra Red------------------------------------------------------------------------------------------- 29
Figure 17:Temperature Modul---------------------------------------------------------------------------------------- 30
Figure 18:GSM Shield ------------------------------------------------------------------------------------------------- 31
Figure 19 : Fingerprint Modul ---------------------------------------------------------------------------------------- 31
Figure 20: Servo motor------------------------------------------------------------------------------------------------- 32
Figure 21: Relay--------------------------------------------------------------------------------------------------------- 32
Figure 22: Diode Electro Luminescente ---------------------------------------------------------------------------- 33
Figure 23: Capteur de température, écran LCD et le Buzzer --------------------------------------------------- 48
Figure 24: Capteur de présence (PIR)------------------------------------------------------------------------------- 49
Figure 25: Arduino Mega, Module Keypad, écran LCD et le Buzzer. --------------------------------------- 49
Figure 26: Capteur de lumière et le Buzzer. ----------------------------------------------------------------------- 50
Figure 27: Module Bluetooth, Keypad, LCD, Servomoteur, Buttons poussoirs et Buzzer --------------- 51
Figure 28: Schéma global du système Smart House ------------------------------------------------------------- 52
71
WEBOGRAPHIE
ARCHITECTURE RESEAU. [2]. Source: Wikipedia:
https://fr.wikipedia.org/wiki/Architecture_de_r%C3%A9seau
ARDUINO IDE. [2]. Source: MON-CLUB ELEC: http://www.mon-club
elec.fr/pmwiki_reference_arduino/pmwiki.php?
ARDUINO UNO. [3]. Source: ARDUINO: http://arduino.cc/
ATMEGA. [11]. Source: ARDUINO: http://arduino.cc/
BLUETOOTH HC-05. [4]. Source: GOOGLE: http://www.google/image/ Emetteur-récepteur
Bluetooth
BROCHAGE UNO. [13]. Source: MON-CLUB ELEC: BROCHAGE UNO, source : http://www.mon-
club-elec.fr/mes_images/materiel/cartes_arduino/arduino_brochage_20_broches.png
COMMANDS AT.[26]. Source: WIKIPEDIA: https://fr.m.wikipedia.org/wiki/Commandes_Hayes
DHT11. [22]. Source: DFROBOT:
https://www.dfrobot.com/wiki/index.php/DHT11_Temperature_and_Humidity_Sensor
DOMOTIQUE.[7]. Source: Wikipedia: source: https://fr.m.wikipedia.org/wiki/Domotique
FINGERPRINT. [24]. Source: ELECTROSCHEMATICS: https://
www.electroschematics.com/11944/how-to-use-fingerprint-identification-modules
GSM/GPRS. [23]. Source: SPARKFUN: https:// www.sparkfun.com/datasheets/gsm_900
HC-05. [16]. Source: ELECTRONICA60NORTE: https://www.electronica60norte.com
IEEE. [5]. Source: Wikipedia: https://fr.wikipedia.org/wiki/IEEE
INTERCONNEXION. [3]. Source: Marche-publique: https://www.marche-public.fr/Marches-
publics/Definitions/Entrees/interconnexion.htm
LCD. [20]. Source: DFROBOT: https://www.dfrobot.com/product-590.html
MiCROCONTROLLEUR.[9]. Source: TECHNO-SCIENCE: http://www.techno-
science.net/?onglet=glossaire&definition=6737
PIR. [21]. Source: DFROBOT: https://www.dfrobot.com/wiki/index.php/PIR_Passive_Infrared
RELAY. [26]. Source: BUILDCIRCUIT: https:// www.buildcircuit.com/relay
72
RESEAU. [1]. Source: Pedagogie: https://www.pedagogie.ac-aix-
marseille.fr/upload/docs/application/pdf/2012-07/formation_reseau.pdf
RS-232. [6]. Source: Wikipedia: https://fr.wikipedia.org/wiki/RS-232
RTC. [19]. Source: HOBBYIST: https://www.hobbyist.co.nz/?q=real_time_clock
SERVO. [25]. Source: LOGINGEL: https://
www.logingel.com/217/190113/0/ShowProduct/Servo_Motor
SPI. [14]. Source: MON-CLUB ELEC: http://www.mon-club-
elec.fr/pmwiki_reference_arduino/pmwiki.php?n=Main.LibrairieSPI
STINO.[27]. Source: GITHUB : https://gitghub/stino/
TWI.[15]. Source: MON-CLUB ELEC: http://www.mon-club-
elec.fr/pmwiki_reference_arduino/pmwiki.php?n=Main.LibrairieWire
UART. [6]. Source: WHATIS: https://whatis.techtarget.com/definition/UART-Universal-
Asynchronous-Receiver-Transmitter
UHF. [4]. Source: Wikipedia: https://fr.m.wikipedia.org/wiki/Ultra_haute_frequence

Contenu connexe

Tendances

Tendances (20)

Rapport de stage
Rapport de stageRapport de stage
Rapport de stage
 
Présentation intelligent home
Présentation intelligent home Présentation intelligent home
Présentation intelligent home
 
Implémentation d’une solution de supervision de température et d’humidité pou...
Implémentation d’une solution de supervision de température et d’humidité pou...Implémentation d’une solution de supervision de température et d’humidité pou...
Implémentation d’une solution de supervision de température et d’humidité pou...
 
Projet PFE: Réalisation d'une armoire électrique
Projet PFE: Réalisation d'une armoire électriqueProjet PFE: Réalisation d'une armoire électrique
Projet PFE: Réalisation d'une armoire électrique
 
Rapport De PFE
Rapport De PFERapport De PFE
Rapport De PFE
 
Rapport interface terminal
Rapport interface terminalRapport interface terminal
Rapport interface terminal
 
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
 
Rapport PFE Génie Electrique (2016)
Rapport PFE Génie Electrique (2016)Rapport PFE Génie Electrique (2016)
Rapport PFE Génie Electrique (2016)
 
Rapport pfe licence
Rapport pfe licenceRapport pfe licence
Rapport pfe licence
 
Rapport PFE
Rapport PFERapport PFE
Rapport PFE
 
Rapport Projet de fin d'etude sur le parc informatique
Rapport Projet  de fin d'etude sur le parc informatiqueRapport Projet  de fin d'etude sur le parc informatique
Rapport Projet de fin d'etude sur le parc informatique
 
Rapport de stage de fin d'études ISI 2015
Rapport de stage de fin d'études ISI 2015Rapport de stage de fin d'études ISI 2015
Rapport de stage de fin d'études ISI 2015
 
Rapport de projet de fin d'études - SIEMENS 2016
Rapport de projet de fin d'études - SIEMENS 2016Rapport de projet de fin d'études - SIEMENS 2016
Rapport de projet de fin d'études - SIEMENS 2016
 
Conception et Réalisation d’une Plateforme Web de Gestion des achats
Conception et Réalisation d’une Plateforme Web de Gestion des achats Conception et Réalisation d’une Plateforme Web de Gestion des achats
Conception et Réalisation d’une Plateforme Web de Gestion des achats
 
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_webRapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
 
Rapport de PFE - Houssem SAKLI (ISIMM)
Rapport de PFE - Houssem SAKLI (ISIMM)Rapport de PFE - Houssem SAKLI (ISIMM)
Rapport de PFE - Houssem SAKLI (ISIMM)
 
Rapport stage onee-be_2
Rapport stage onee-be_2Rapport stage onee-be_2
Rapport stage onee-be_2
 
Smart house Project - v1.1 - cahier de charge fonctionnel
Smart house Project - v1.1 - cahier de charge fonctionnelSmart house Project - v1.1 - cahier de charge fonctionnel
Smart house Project - v1.1 - cahier de charge fonctionnel
 
Rapport PFE réalisation d’un Framework Kinect
Rapport PFE réalisation d’un Framework KinectRapport PFE réalisation d’un Framework Kinect
Rapport PFE réalisation d’un Framework Kinect
 
Rapport pfe Oumaima AJBARA NAHY (1).pdf
Rapport pfe Oumaima AJBARA NAHY (1).pdfRapport pfe Oumaima AJBARA NAHY (1).pdf
Rapport pfe Oumaima AJBARA NAHY (1).pdf
 

Similaire à Chris memoire fin PDF

Le multimedia domestique
Le multimedia domestiqueLe multimedia domestique
Le multimedia domestique
Lydia Beatrix
 
Le multimedia domestique
Le multimedia domestiqueLe multimedia domestique
Le multimedia domestique
Lydia Beatrix
 
Le multimedia domestique
Le multimedia domestiqueLe multimedia domestique
Le multimedia domestique
Lydia Beatrix
 
Le multimedia domestique
Le multimedia domestiqueLe multimedia domestique
Le multimedia domestique
Lydia Beatrix
 
Bluemix Paris Meetup - Session #9 - 10 juin 2015 - Internet des Objets 3.0
Bluemix Paris Meetup - Session #9 - 10 juin 2015 - Internet des Objets 3.0Bluemix Paris Meetup - Session #9 - 10 juin 2015 - Internet des Objets 3.0
Bluemix Paris Meetup - Session #9 - 10 juin 2015 - Internet des Objets 3.0
IBM France Lab
 
Black berry quand je te tiens
Black berry quand je te tiensBlack berry quand je te tiens
Black berry quand je te tiens
L-A be
 
Rochnel Ticdo Présentation PPTX PFE.pptx
Rochnel Ticdo Présentation PPTX PFE.pptxRochnel Ticdo Présentation PPTX PFE.pptx
Rochnel Ticdo Présentation PPTX PFE.pptx
WAGNEJonathan
 
Rochnel Ticdo Présentation PPTX PFE.pptx
Rochnel Ticdo Présentation PPTX PFE.pptxRochnel Ticdo Présentation PPTX PFE.pptx
Rochnel Ticdo Présentation PPTX PFE.pptx
WAGNEJonathan
 

Similaire à Chris memoire fin PDF (20)

Le multimedia domestique
Le multimedia domestiqueLe multimedia domestique
Le multimedia domestique
 
Le multimedia domestique
Le multimedia domestiqueLe multimedia domestique
Le multimedia domestique
 
Le multimedia domestique
Le multimedia domestiqueLe multimedia domestique
Le multimedia domestique
 
Le multimedia domestique
Le multimedia domestiqueLe multimedia domestique
Le multimedia domestique
 
chap 3 Technologies de communication.pdf
chap 3 Technologies de communication.pdfchap 3 Technologies de communication.pdf
chap 3 Technologies de communication.pdf
 
Outils de prise de contrôle à distance d'ordinateur dans un but d'enseignemen...
Outils de prise de contrôle à distance d'ordinateur dans un but d'enseignemen...Outils de prise de contrôle à distance d'ordinateur dans un but d'enseignemen...
Outils de prise de contrôle à distance d'ordinateur dans un but d'enseignemen...
 
La conception d’un objet connecté démystifiée
La conception d’un objet connecté démystifiéeLa conception d’un objet connecté démystifiée
La conception d’un objet connecté démystifiée
 
Petit déjeuner du 20/11 MDM en mode Cloud Saphelec & Monaco Telecom
Petit déjeuner du 20/11 MDM en mode Cloud   Saphelec & Monaco TelecomPetit déjeuner du 20/11 MDM en mode Cloud   Saphelec & Monaco Telecom
Petit déjeuner du 20/11 MDM en mode Cloud Saphelec & Monaco Telecom
 
Bluemix Paris Meetup - Session #9 - 10 juin 2015 - Internet des Objets 3.0
Bluemix Paris Meetup - Session #9 - 10 juin 2015 - Internet des Objets 3.0Bluemix Paris Meetup - Session #9 - 10 juin 2015 - Internet des Objets 3.0
Bluemix Paris Meetup - Session #9 - 10 juin 2015 - Internet des Objets 3.0
 
Rapport bluetooth
Rapport bluetooth Rapport bluetooth
Rapport bluetooth
 
Rapport home handicap
Rapport home handicapRapport home handicap
Rapport home handicap
 
Maison connectee + Internet des Objets | Tendances 2014
Maison connectee + Internet des Objets | Tendances 2014Maison connectee + Internet des Objets | Tendances 2014
Maison connectee + Internet des Objets | Tendances 2014
 
Black berry quand je te tiens
Black berry quand je te tiensBlack berry quand je te tiens
Black berry quand je te tiens
 
Etude et réalisation d'un dispositif de géolocalisation pour les malades d'Al...
Etude et réalisation d'un dispositif de géolocalisation pour les malades d'Al...Etude et réalisation d'un dispositif de géolocalisation pour les malades d'Al...
Etude et réalisation d'un dispositif de géolocalisation pour les malades d'Al...
 
Presentation big data &amp; prog. para. joseph abena
Presentation big data &amp; prog. para.   joseph abena Presentation big data &amp; prog. para.   joseph abena
Presentation big data &amp; prog. para. joseph abena
 
Comment déployer ses objets connectés en alliant sécurité, maintenance et sup...
Comment déployer ses objets connectés en alliant sécurité, maintenance et sup...Comment déployer ses objets connectés en alliant sécurité, maintenance et sup...
Comment déployer ses objets connectés en alliant sécurité, maintenance et sup...
 
National Instruments - NI Trend Watch 2015
National Instruments - NI Trend Watch 2015National Instruments - NI Trend Watch 2015
National Instruments - NI Trend Watch 2015
 
Rochnel Ticdo Présentation PPTX PFE.pptx
Rochnel Ticdo Présentation PPTX PFE.pptxRochnel Ticdo Présentation PPTX PFE.pptx
Rochnel Ticdo Présentation PPTX PFE.pptx
 
Rochnel Ticdo Présentation PPTX PFE.pptx
Rochnel Ticdo Présentation PPTX PFE.pptxRochnel Ticdo Présentation PPTX PFE.pptx
Rochnel Ticdo Présentation PPTX PFE.pptx
 
Rochnel Ticdo Présentation PPTX PFE.pptx
Rochnel Ticdo Présentation PPTX PFE.pptxRochnel Ticdo Présentation PPTX PFE.pptx
Rochnel Ticdo Présentation PPTX PFE.pptx
 

Chris memoire fin PDF

  • 1. 1 Mémoire présenté et défendu en vue de l’obtention du Diplôme de Licence en Réseaux et télécommunications Mémoire REPUBLIQUE DEMOCRATIQUE DU CONGO ENSEIGNEMENT SUPERIEUR ET UNIVERSITAIRE E.S.U INSTITUT SUPERIEUR D’INFORMATIQUE ET DE GESTION BP : 841 GOMA http://www.isig.ac.cd adresse@email.zz Année Académique 2016 - 2017 CONCEPTION D’UN SYSTEME DOMOTIQUE INTERCONNECTE PAR BLUETOOTH SOUS UNE PLATEFORME ANDROID « Cas d’une maison d’habitation » Par : Chris SIMBA MUKASA E-mail: isiggoma@isig.ac.cd  ISIG - GOMA Directeur : DAVID FOTUE Encadreur : Ass2. ISAMUNA NKEMBO Josué
  • 2. 2 EPIGRAPHE ‘‘En informatique, la miniaturisation augmente la puissance de calcul. On peut être plus petit et plus intelligent’’ Bernard Werber. Chris SIMBA MUKASA
  • 3. 3 DEDICACE A nos parents; A nos Frères et Sœurs ; A tous nos Camarades ; A nos Amis et Connaissances. Chris SIMBA MUKASA
  • 4. 4 REMERCIEMENTS Nous remercions toutes les autorités de l’ISIG/Goma pour toutes les connaissances qu’ils nous ont transmises. Nos reconnaissances et gratitudes s’adressent au Professeur DAVID FOTUE et à l’Assistant Josué ISAMUNA NKEMBO qui, en dépit de leurs multiples occupations, ont acceptés de diriger ce travail. Leurs disponibilités inconditionnelles, leurs conseils éclairants et leurs savoir-faire nous ont permis de mener à bon port ce travail. Nos remerciements et gratitudes s’adressent à notre père NDUNDU MUKASA Jean- Pierre et à ma mère CHANTAL MUDERHWA. Nos reconnaissances s’adressent à toute ma famille, frères et sœurs Adamon NDUNGU MUKASA, Jack MUHABURA MUKASA, Aline SIFA MUKASA, Isabelle RIZIKI MUKASA, Rachel NABINTU MUKASA et à NAOMIE MUKASA. Nous exprimons un sentiment de gratitude et d’amour à la maman de notre fille Aurèlie BAHATI MIHIGO et à notre fille Gabriella CHANTAL MUKASA pour leurs soutient. Que nos amis, camarades et tous ceux qui ne sont pas cité dans ce travail, trouvent ici l’expression de notre gratitude. Chris SIMBA MUKASA
  • 5. 5 SIGLES ET ABREVIATIONS A : Ampère AC: Alternative Current ACL : Asynchronous Connection Less BD_ADDR : Bluetooth Device Address DC: Direct Current E/S: Entrée ou Sortie EDR : Enhanced Data Rate EEPROM : Electrically-Erasable Programmable Read-Only Memory FTP : File Transfer Profile GHz : Giga Hertz GSM : Global System for Mobile communications HCI : Hardware Control Interface HS : High Speed I : Intensité I2C : Inter-Integrated Circuit IDE: Integrated Developement Evironement IEEE : Institute of Electronic and Electronics Engineers ISM : Industrial, Scientific and Medical L2CAP : Logical Link Control and Adaptation Protocol LCD: Liquid Cristal Display LED : Light Emitting Diode NTIC : Nouvelles Technologie d’information et de la communication OLED : Organic Light-Emitting Diode PAN: Personal Area Network Profile
  • 6. 6 PIO : Power Input Output PIR : Passive Infra Red RFCOMM : Radio frequency communication RFID : Radio Frequency IDentification RTC : Real Time Clock RX : Recevoir SCL : Seriela Clock SCO : Synchronous Connection Oriented SDA : Serial Data SDAP: Service Discovery Application Profile SDP: Service Discovery Protocol SIG : Special Interest Group SMS : Short Message System SPI : Interface Série Périphérique SPP : Serial Port Profile TTL : Time To Live TWI : Two Wire Interface TX : Transmettre U : Tension UART : Universal Assysnchronous Receiver and Transmiter UHF : Ultra Hautes Fréquences USB : Universal Serial Bus V : Volte
  • 7. 7 INTRODUCTION 1. ETAT DE LA QUESTION L’avancée de la science et le progrès dans la technologie permet à humanité de limiter ses efforts quant à ce qui est des tâches manuelles, en lui offrant la possibilité de les automatiser ou en les actionnant à distance grâce aux Nouvelles Technologies de l’Information et de la Communication (NTIC). Il ressort de ce qui précède que plusieurs travaux ont été effectués dans le domaine de la domotique : - MUKUMIRO HABAMUNGU Patrick1 , dans son travail, il propose la mise en place d’une piscine intelligente dans le but de protéger la population contre les risques liés à la contamination des eaux de piscine. - TSHIMPANGA BADIBANGA Didi Tyana2 , quant à lui, il a travaillé sur le pilotage de certaines fonctionnalités de la maison à distance grâce à une application web et en utilisant le service GSM. 2. PROBLEMATIQUE La maison est aujourd’hui le lieu de détachement de toute contrainte, de repos et de sécurité. Il s’avère que nous avons de plus en plus besoin d’accomplir tes tâches juste en bougeant le petit doigt et en manipulant des petits appareils. De ces besoins et désires que nous accumulons du jour au lendemain, nous nous sommes préoccupé d’un certain nombre des questions : - Comment répondre à un certain nombre de besoins en vue d’effectuer des tâches à distance et sans effort considérable ? - Comment donner aux habitants un environnement sécurisé et contrôlé grâce à l’apport des NTIC ? 1 MUKUMIRO HABAMUNGU Patrick, Système embarqué pour le contrôle de la qualité et la sécurité d’une piscine, TFC, ULPGL, Electricité Informatique, 2014-2015 (ULPGL). 2 TSHIMPANGA BADIBANGA Didi, Conception et réalisation d’un système embarqué pour une maison intelligente « Smart House », Mémoire, ULPGL, Génie Informatique, 2014-2015.
  • 8. 8 3. HYPOTHESES En réalité, répondre à ces questions c’est répondre aux besoins de l’homme en lui offrant une maison intelligente qui lui fournirait le confort et la sécurité qui lui porteraient satisfaction. Pour se faire, nous pensons qu’une mise en place d’un système domotique utilisant la technologie Bluetooth sous une plateforme Android permettrait le contrôle et la manipulation à distance certains équipements de la maison. 4. OBJECTIFS Nous avions pris goût à cette technologie car, elle nous rendre capables de concevoir un système permettant l’interopérabilité entre la télécommunication, l’électronique et la programmation. Avec ces grands atouts, nous serons capables de réaliser un système qui aidera le peuple Congolais précisément de la ville de Goma à automatiser les taches suivantes : - Gérer toute la maison grâce à une application développée sous la plateforme Android utilisant la technologie Bluetooth ; - Contrôler la température en temps réel de la maison ; - Contrôler l’humidité des pièces de la maison ; - Gérer les appareils électroniques ; - Contrôler les entrées et les sorties dans la maison ; - Contrôler l’ouverture et la fermeture des portes et fenêtres ; - Contrôler la densité de l’éclairage dans les pièces de la maison ; - Contrôler la sécurité en détectant la présence d’une personne ; - Recevoir des alertes grâce à un système d’anti - intrusion. 5. CHOIX ET INTERET DU SUJET Le choix de ce sujet a été motivé d’un intérêt triple : - Nous familiariser des aspects liés au cycle de développement des systèmes temps réel grâce à l’utilisation de la technologie Bluetooth ; - Analyser, concevoir et implémenter un système domotique en usant d’un Système d’Exploitation temps réel pour le contrôle et la gestion de la sécurité d’une maison ; - Le pilotage à distance de certains équipements d’une maison.
  • 9. 9 Pour arriver aux résultats escomptés, nous proposons de faire une extension de la technologie Bluetooth sur notre microcontrôleur et se connecter via un téléphone mobile sous un écran de bord (Dashboard) qui nous montrera toutes les actions liées aux équipements connectés. 6. METHODES ET TECHNIQUES 6.1. Méthodes Pour mener à bien notre travail, nous avons utilisé 3 méthodes : - Méthode Historique : Elle nous a permis de nous imprégner de la technologie Bluetooth et celle de la domotique ; - Méthode analytique : Elle nous a permis d’analyser les informations ainsi que des données récoltées ; - Méthode comparative : Elle nous a permis de comparer les valeurs reçues par nos capteurs électroniques de celles prélevées manuellement dans le cas de la température et de l’humidité. 6.2. Technique Les techniques sont des outils, des moyens, des résultats dont le chercheur utilise à chaque étape de la recherche. Elles sont utilisées pour récolter les données. Ainsi, pour atteindre notre objectif, nous avons fait recours aux techniques suivantes : - La technique documentaire : Elle nous a permis d’approfondir nos recherches en fréquentant les bibliothèques pour la lecture des livres, travail de fin de cycle, mémoires afin de nous inspirer des expériences des travaux précédents ; - La technique d’observation : Elle nous a permis de constater les faits tel qu’ils ses déroulent, d’acquérir une connaissance claire et précise, concentrée sur notre objet d’étude. 7. DELIMITATION DU SUJET L’objectif de notre travail est de se focaliser sur l’interactivité d’une maison intelligente utilisant la technologie Bluetooth. Nous nous sommes en plus intéressés à quelques tâches manuelles quotidiennes ; telles que l’ouverture des portes, l’allumage des lampes, vérification de la température d’une pièce et la sécurité de l’habitation.
  • 10. 10 8. DIFFICULTES RENCONTREES Au cours de la réalisation de ce travail, nous avons été confrontés à plusieurs difficultés, notamment : - L’impossibilité de trouver les matériaux notamment les capteurs et actionneurs dont nous avions besoins pour la réalisation de notre projet ; - Le manque des moyens financiers pour l’achat des équipements utiles pour nos configurations ; - La contrainte de temps avec la durée de livraison de matériaux trop longue. 9. ORGANISATION DU RESTE DU MEMOIRE Le reste du mémoire est divisé en trois principaux chapitres : - Le Chapitre I présente les thèmes de notre projet, plus précisément ceux liés à la technologie Bluetooth, à la Domotique et au Microcontrôleur. - Le Chapitre II présente le cahier de charge, le planning prévisionnel, les matériels qui seront utilisé en vue de réaliser le projet, la configuration du système qui contiendra différents schémas électroniques, et les différentes configurations ainsi que la présentation des différentes interfaces logiciels coté utilisateur. - Le Chapitre III parle de l’implication de notre système dans son milieu d’exécution qui est la maison d’habitation, on parlera des discutions et des recommandations.
  • 11. 11 CHAPITRE 1: GENERALITE ET CHAMP D’APPLICATION 1.1. GENERALITES Lorsque nous parlons de la technologie Bluetooth, on sous-entend l’échange des medias ou des fichiers, seulement, cette technologie ne se limite pas que sur ces taches, elle fait encore plus mieux. En ce sens qu’elle peut maintenant intégrer l’échange de données internet, elle peut faire une communication sécurisé en échangeant des données chiffrées et intègre désormais un taux de transfert plus enlevé et une sécurité plus ou moins performante. 1.2. DEFINITION DU THEME - Réseau : Un réseau est un ensemble d'objets interconnectés les uns avec les autres. Il permet de faire circuler des éléments entre chacun de ces objets selon des règles bien définies [1]. - Architecture réseaux : est l'organisation d'équipements de transmission, des logiciels, de protocoles de communication et d'infrastructure filaire ou radioélectrique permettant la transmission des données entre les différents composants [2]. - Interconnexion : on entend par interconnexion la liaison physique et logique des réseaux ouverts au public exploités par le même operateur ou un opérateur diffèrent afin de permettre aux utilisateurs d’un opérateur de communiquer avec les utilisateurs d’un même operateur ou d’un autre, ou bien d’accéder aux services fournis par un autre operateur [3]. 1.3. CONCEPT DE BASE 1.3.1. Le Bluetooth Bluetooth est un standard de communication permettant l’échange bidirectionnel de données à courte distance en utilisant des ondes radio UHF [4] sur une bande de fréquence de 2.4GHz. Son objectif est de simplifier les connexions entre les appareils électroniques en supprimant des liaisons filaires. Elle peut remplacer par exemple les câbles entre ordinateurs, tablettes, téléphones mobiles, imprimantes, jeux vidéo, scanneurs, etc.
  • 12. 12 Bluetooth est une suite de protocoles sans-fil de faible portée (habituellement 10-15m), opérant dans la bande des 2.4 GHz et offrant des débits nominaux de l'ordre de 720 Kbps (normes v1.1 et v1.2) jusqu'à 3 Mbps (norme 2.0 + EDR). Ce protocole permet de relier des périphériques à un hôte principal ou des hôtes entre eux, formant ainsi un "piconet". Les applications utilisant ce type de connexions sont: - Provision de services locaux type impressions ; - Connexion de périphériques locaux, types claviers, souris, écouteurs, etc. ; - Synchronisation de données et/ou d'applications, types agendas, contacts, etc. Les hôtes typiques utilisant la technologie Bluetooth sont les petits appareils portables; la faible portée du protocole rend en effet la consommation énergétique peu importante, ce qui permet d'utiliser Bluetooth dans la plupart des téléphones, oreillettes, casques, micros, etc. 1.3.1.1.Origine Le nom « Bluetooth » est directement inspiré du surnom anglicisé du roi danois Harald à la dent bleue (en danois Harald Blåtand, en anglais Harald Bluetooth), connu pour avoir réussi à unifier les tribus danoises au sein d'un même royaume, introduisant du même coup le christianisme. Ce nom a été proposé en 1996 par Jim Kardach d'Intel, un ingénieur travaillant alors sur le développement d'un système qui allait permettre aux téléphones cellulaires de communiquer avec des ordinateurs. a) Historique - 1994 : Création par le fabricant suédois Ericsson à Lund, - 1996 : Premier téléphone Bluetooth. - 1998 : Plusieurs grandes sociétés (IBM, Intel, Nokia et Toshiba) s'associent avec Ericsson pour former le Bluetooth Special Interest Group (SIG), - Juillet 1999 : Sortie de la spécification 1.0, Figure 1 : Le logo de Bluetooth, inspiré des initiales en alphabet runique de Harald Blatand
  • 13. 13 - Décembre 1999 : Le groupe Bluetooth SIG compte neuf sociétés après que 3Com, Lucent Technologies, Microsoft, Motorola l'ont rejoint. - 2004 : Apparition du Bluetooth 2.0 et de l'EDR (Enhanced Data Rate) qui permet d'obtenir un meilleur débit. - 28 Mars 2006 : Le « Bluetooth Special Interest Group » (SIG) annonce la deuxième génération de la technique sans fil Bluetooth V2.0 (puis V2.1 en 2007), qui sont capable d'assurer des débits de crête 3 fois supérieurs à l'ancienne version, passant donc de 1 Mb/s à 3 Mb/s. - 2009 : Le SIG met au jour le Bluetooth 3.0 et le HS (High Speed) - 2010 : Apparition du Bluetooth 4.0 encore plus performant et moins gourmand en énergie. Cette nouvelle génération apparait comme une révolution et permet une large démocratisation d'appareils connectés en tout genre. - décembre 2013 : Sortie de la version 4.1 - décembre 2016 : Annonce de la version 5 b) Normes Les versions publiées de Bluetooth sont les suivantes : - Bluetooth v1.0 et v1.0B ; - Bluetooth v1.1, normalisé en 2002 sous le nom IEEE 802.15.1-2002 ; - Bluetooth v1.2, normalisé en 2005 sous le nom IEEE 802.15.1-2005 ; - Bluetooth v2.0 + EDR, rendue publique en 2004 ; - Bluetooth v2.1 + EDR, rendue publique en 2007 ; - Bluetooth v3.0 + HS, rendue publique en 2009 ; - Bluetooth v4.0, rendue publique en 2010 ; - Bluetooth v4.1, rendue publique en 2013 ; - Bluetooth v4.2, rendue publique le 2 décembre 2014 (mise à jour matérielle) ; - Bluetooth v5, rendue publique en décembre 2016. Les éléments fondamentaux d'un produit Bluetooth sont définis dans les deux premières couches protocolaires : 1. La couche radio ; 2. La couche bande de base.
  • 14. 14 Ces couches prennent en charge les tâches matérielles comme le contrôle du saut de fréquence et la synchronisation des horloges.  La Couche Radio La couche radio (la couche la plus basse) est gérée au niveau matériel. C'est elle qui s'occupe de l'émission et de la réception des ondes radio. Elle définit les caractéristiques telles que la bande de fréquence et l'arrangement des canaux, les caractéristiques du transmetteur, de la modulation, du récepteur, etc. Le système Bluetooth opère dans les bandes de fréquences ISM (Industrial, Scientific and Medical) 2,4 GHz dont l'exploitation ne nécessite pas de licence vu la faible puissance d'émission et le risque faible d'interférences. Cette bande de fréquences est comprise entre 2 400 et 2 483,5 MHz. Les 79 canaux RF sont numérotés de 0 à 78 et séparés de 1 MHz en commençant par 2 402 MHz. Il existe trois classes de modules radio Bluetooth sur le marché : Classes Puissance Portée 1 100mW (20 dBm) 100 mètres 2 2.5 mW (2 dBm) 10 à 20 mètres 3 1 mW (0 dBm) Quelques mètres  La Bande de Base La bande de base (ou baseband en anglais) est également gérée au niveau matériel. C'est au niveau de la bande de base que sont définies les adresses matérielles des périphériques. Cette adresse est nommée BD_ADDR (Bluetooth Device Address) et est codée sur 48 bits. Ces adresses sont gérées par l’IEEE Registration Authority [5]. C'est également la bande de base qui gère les différents types de communication entre les appareils. Les connexions établies entre deux appareils Bluetooth peuvent être synchrones ou asynchrones, ces connexions sont appelées « Liens Logiques » (Logical Link). La bande de base peut donc gérer deux types majeurs de liens logiques :  Les liens SCO (Synchronous Connection Oriented) : Le lien SCO est une liaison symétrique point-a-point entre le maitre et un périphérique esclave spécifique. Le lien SCO réserve des intervalles entre le maitre et l’esclave et peut donc être considérer comme
  • 15. 15 fournissant une connexion à commutation de circuit. Ce lien est habituellement utilisé pour supporter des informations temporelles. Par exemple la Voix, car les paquets SCO critique ne sont jamais retransmis.  Le lien ACL (Asynchronous Connection Less) : Ce lien est utilisé lorsque les donnes sont plus importantes que d’éviter la latence (temps nécessaire à un paquet de données pour passer de la source a la destination à travers un réseau). Dans ce type de lien, si une charge utile encapsulée dans le cadre est corrompue, elle est retransmise. Un second renvoie d’une trame ACL dans l’emplacement impaire disponible et si seulement si l’emplacement précédent lui a été adressé. L’ACL peut utiliser un, trois ou plusieurs emplacements et peut atteindre un débit de données maximum de 721 kbit/s. le lien ACL sont utilisé que pour les données.  Le format d’un paquet Les données transportées sur ces liens logiques sont sous forme de paquets. Il existe divers types de paquets et peuvent être utilisés par les deux liens logiques ou seulement par un seul type de lien. Chaque paquet est composé globalement de la même manière. Les paquets sont constitués de trois éléments : un code d'accès, un en-tête et la charge utile. Un paquet peut aussi n'être composé que d'un code d'accès et d’un en-tête mais sans charge utile.  Type de paquets Bluetooth définit plusieurs types de paquets : o Paquet ID : ce paquet est constitué uniquement d'un code d'accès, il est utilisé dans les processus d'inquiry et de paring, afin de contacter un voisin. o Paquet NULL : ce paquet n'a pas de charge utile, il est utilisé lorsqu'un périphérique doit envoyer un acquittement et n'a pas d'informations à transmettre. o Paquet POLL : ce paquet est similaire au paquet NULL, mais il est utilisé par le maître pour donner la parole à l'esclave désigné dans l'en-tête. o Paquet FHS : c'est un paquet de synchronisation qui contient les informations nécessaires aux esclaves pour se synchroniser au maître. Il est envoyé à l'établissement de la connexion, puis périodiquement. o Paquet DMx (Data Medium rate) d’où x=1, 3 ou 5 : c'est un paquet de données utilisant un code correcteur à 2/3 (un tiers des bits émis est utilisé par le code correcteur). Il peut avoir une longueur de 1, 3 ou 5 slots.
  • 16. 16 o Paquet DHx (Data High rate) d’où x=1, 3 ou 5: c'est un paquet de données sans correction d'erreur. Type de Réseaux - Le Picoréseau Un picoréseau (on emploie également l'anglicisme piconet) est un mini-réseau qui se crée de manière instantanée et automatique quand plusieurs périphériques Bluetooth sont dans un même rayon. Un picoréseau est organisé selon une topologie en étoile : il y a un « maître » et plusieurs « esclaves ». Un périphérique « maître » peut administrer jusqu'à :  7 esclaves « actifs » ;  255 esclaves en mode « parked ». La communication est directe entre le « maître » et un « esclave ». Les « esclaves » ne peuvent pas communiquer entre eux. Tous les « esclaves » du picoréseau sont synchronisés sur l'horloge du « maître ». C'est le « maître » qui détermine la fréquence de saut pour tout le picoréseau. - L’Inter-réseau Bluetooth Figure 2: Piconet Figure 3: Inter-réseau Bluetooth (scatternt)
  • 17. 17 Les périphériques «esclaves » peuvent avoir plusieurs « maitres », les différents piconets peuvent donc être relier entre eux. Le réseau ainsi formé est appelé un scatternet (littéralement « réseau dispersé »).  Le Contrôleur de Liaisons Il encode et décode les paquets Bluetooth selon la charge utile et les paramètres lies au canal physique, transport logique et liaison logique.  Le Gestionnaire de Liaisons Il crée, gère et détruit les canaux L2CAP pour le transport des protocoles de services et les flux de données applicatives. Il utilise le protocole L2CAP pour interagir avec son homologue sur les équipements distants. C'est le gestionnaire de liaisons qui implémente les mécanismes de sécurité comme :  l'authentification ;  l'appairage (l'association) ;  la création et la modification des clés ;  et le chiffrement.  L’interface de contrôle de l’hôte (HCI) Cette couche fournit une méthode uniforme pour accéder aux couches matérielles. Son rôle de séparation permet un développement indépendant du matériel et du logiciel. Les protocoles de transport supportés sont Universal Serial Bus (USB); RS-232 [6] ; UART [6]. HCI permet un transfert de données à débit maximum, soit 720 kbit/s pour la norme 1.2, et un débit trois fois plus élevé pour la norme 2.0+EDR.  La couche L2CAP La couche L2CAP (Logical Link Control & Adaptation Protocol) fournit les services de multiplexage des protocoles de niveau supérieur, la segmentation et le réassemblage des paquets ainsi que le transport des informations de qualité de service. L2CAP est donc un protocole dont le rôle est de fournir une couche réseau complète aux couches supérieures et aux applications.  Les services - RFCOMM : « Radio frequency communication (en) ». Ce service est basé sur les spécifications RS-232, qui émule des liaisons séries. Il peut notamment servir à faire passer une communication IP par Bluetooth. il est utilisé lorsque le débit des données n'atteint pas plus de 360 kbit/s (par exemple, téléphones mobiles).
  • 18. 18 - SDP: « Service Discovery Protocol ». Ce protocole permet à un appareil Bluetooth de rechercher d'autres appareils et d'identifier les services disponibles.  Les profils Un profil correspond à une spécification fonctionnelle d'un usage particulier. Les profils peuvent également correspondre à différents types de périphériques. Les profils ont pour but d'assurer une interopérabilité entre tous les appareils Bluetooth. Ils définissent :  la manière d'implémenter un usage défini  les protocoles spécifiques à utiliser  les contraintes et les intervalles de valeurs de ces protocoles Exemples : 1. SDAP : Service Discovery Application Profile 2. SPP : Serial Port Profile 3. HS Profile : Headset Profile 4. FTP : File Transfer Profile 5. PAN : Personal Area Network Profile 1.3.2. Notion sur la Domotique 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. La domotique est un contexte nouveau dans la technologie actuelle. En titre d’information, la domotique vient du latin « domus » signifiant une maison, c’est-à-dire l’ensemble des technologies utilisées pour gérer une maison d’habitation [7]. Figure 4: Représentation graphique schématique d’items relatifs a « l'habitat intelligent »
  • 19. 19 1.3.3. Notion sur les microcontrôleurs Un microcontrôleur est un circuit intégré rassemblant dans un même boitier un microprocesseur, plusieurs types de mémoires et des périphériques de communication (Entrées-Sorties) [9]. Figure 5: Image d'un microcontrôleur 1.3.3.1. Structure d’un microcontrôleur Pour qu’un microprocesseur fonctionne, il a besoin de certains éléments comme:  la mémoire morte dite ROM (principalement pour stocker le programme) ;  la mémoire vive dite RAM (pour stocker les variables) ;  des périphériques (pour l’interaction avec le monde extérieur) ;  une horloge pour le cadencer (principalement à quartz). Ces différents blocs sont reliés par 3 bus qui sont le bus d’adresse, le bus des données et le bus de contrôle. o le bus d'adresse permet au microprocesseur de sélectionner la case mémoire ou le périphérique auquel il veut accéder pour lire ou écrire une information (instruction ou donnée) ;
  • 20. 20 o le bus de données permet le transfert des informations entre les différents blocs ; ces informations seront soit des instructions soit des données en provenance ou à destination de la mémoire ou des périphériques ; o le bus de contrôle celui-ci indique si l'opération en cours est une lecture ou une écriture, si un périphérique demande une interruption etc. 1.3.3.2. Fonctionnement À la mise en route du système, le microprocesseur va chercher dans la mémoire à l'adresse 0 la première instruction à exécuter puis il stocke cette instruction dans un registre interne appelé registre d'instructions, en suite il exécute cette instruction, puis en consultant le registre pointeur d'instruction, il va chercher l'instruction suivante, etc. Les microcontrôleurs améliorent l'intégration et le coût (lié à la conception et à la réalisation) d'un système à base de microprocesseur en rassemblant ces éléments essentiels dans un seul circuit intégré. On peut dire que les périphériques sont des circuits électroniques intégrés au microcontrôleur capables d'effectuer des tâches spécifiques. Par exemple : - Les convertisseurs Analogique/Numérique qui donnent un nombre binaire a partir d’une tension électrique. - Les convertisseurs Numérique/Analogique qui font opération inverse. - Les générateurs de signaux à modulation de largeur d'impulsion (PWM pour Pulse Width Modulation). - Les timers qui sont des compteurs de temps ou d'événements. - les comparateurs qui comparent deux tensions électriques. - les contrôleurs de bus comme l’UART. - les oscillateurs qui servent de base de temps aux timers. Le fonctionnement des périphériques peut être paramétré et commandé par le programme et/ou les entrées-sorties. Parfois les périphériques peuvent générer une
  • 21. 21 interruption qui contraint le processeur à quitter le programme principal pour effectuer une routine d'interruption. 1.3.4. Notion sur l’Arduino Arduino est un circuit imprimé en matériel libre sur lequel se trouve un microcontrôleur qui peut être programmé pour analyser et produire des signaux électriques, de manière a effectué des taches très diverses comme le contrôle des appareils domestiques, l’éclairage, chauffage, le pilotage d'un robot, etc. Le système Arduino donne la possibilité d'allier les performances de la programmation et de la télécommunication à celles de l'électronique. Plus précisément, pour programmer des systèmes électroniques. Le gros avantage de l'électronique programmée c'est qu'elle simplifie grandement les schémas électroniques et par conséquent, le coût de la réalisation, mais aussi la charge de travail à la conception d'une carte électronique. Le système Arduino permet de : - Contrôler les appareils domestiques ; - Fabriquer son propre robot ; - Faire un jeu de lumières ; - Communiquer avec l'ordinateur ; - Télécommander et concevoir des drones, etc. La carte Arduino repose sur un circuit intégré (un mini-ordinateur appelé également microcontrôleur) associée à des entrées et sorties qui permettent à l'utilisateur de brancher différents types d'éléments externes. Figure 6 : Composition matérielle de la Carte Arduino "UNO" [10]
  • 22. 22 1.3.4.1. Les types de cartes Il y a trois types des cartes : - Les dites « officielles » qui sont fabriquées en Italie par le fabricant officiel : Smart Project. - Les dites « compatibles » qui n’est pas fabriquées par Smart Project, mais qui sont totalement compatibles avec les Arduino officielles. - Les « autres » fabriquées par diverse entreprise et commercialisées sous un nom différent (Freeduino, Seeduino, Femtoduino, ...). 1.3.4.2. Le Schéma électronique Toutes les cartes Arduino (officielle, compatible ou clone) reposent sur un composant principal appelé microcontrôleur comme dit ci-haut. Pour la carte Arduino UNO c’est le ATmega8 voir la figure suivante. La carte est alimentée avec une tension comprise entre de 5 à 9 Volts, la tension de 5V est utilisée pour l’expérimentation afin d’éviter de griller les éléments du montage. Figure 7: La tête du μ Circuit Intégré ATmega8 [11] 1.3.4.3. Le logiciel L'environnement de programmation Arduino (IDE en anglais) est une application écrite en Java inspirée du langage Processing. L'IDE permet d'écrire, de modifier un programme appelé aussi SKETCH et de le convertir en une série d'instructions compréhensibles pour la carte. Le logiciel permet de programmer la carte Arduino. Cette carte va nous aider à interagir avec notre environnement électronique. Tous nos capteur, actionneurs et modules y serons rattachés. C’est cette carte qui va lire les instructions
  • 23. 23 envoyés depuis notre Application Android via son adaptateur Bluetooth vers le module Bluetooth HC-05 (Nous en parlerons bientôt) qui lui va le transmettre à la carte Arduino et lui a son tour va exécuter les instructions relatives à cette information reçue et enfin, les actionneurs vont être déclenché. L’interface environnementale de développement (IDE) d’Arduino ressemble à ceci : Figure 8: IDE Arduino [12] Synthèse des caractéristiques Caractéristiques Descriptions Microcontrôleur ATmega328 Tension de fonctionnement 5V Tension d'alimentation (recommandée) 7-12V Tension d'alimentation (limites) 6-20V Broches E/S numériques 14 (dont 6 disposent d'une sortie PWM)
  • 24. 24 Broches d'entrées analogiques 6 (utilisables en broches E/S numériques) Intensité maxi disponible par broche E/S (5V) 40 mA Intensité maxi disponible pour la sortie 3.3V 50 mA Intensité maxi disponible pour la sortie 5V Fonction de l'alimentation utilisée - 500 mA max si port USB utilisé seul Mémoire Programme Flash 32 KB dont 0.5 KB sont utilisés par le bootloader Mémoire SRAM (mémoire volatile) 2 KB Mémoire EEPROM (mémoire non volatile) 1 KB Vitesse d'horloge 16 MHz a) L’Alimentation Figure 9: Brochage de la carte Arduino Uno [13] La carte Arduino Uno peut-être alimentée soit via la connexion USB (qui fournit 5V jusqu'à 500mA) ou à l'aide d'une alimentation externe. La source d'alimentation est sélectionnée automatiquement par la carte. La carte peut fonctionner avec une alimentation externe de 6 à 20 volts. Cependant, si la carte est alimentée avec moins de 7V, la broche 5V pourrait fournir moins de 5V et la carte pourrait être instable. Si on utilise plus de 12V, le régulateur de tension de la carte pourrait chauffer et endommager la carte. Aussi, la plage idéale recommandée pour alimenter la carte Uno est entre 7V et 12V.
  • 25. 25 b) Entrées et Sorties numériques Chacune des 14 broches numériques de la carte UNO (numérotées des 0 à 13) peut être utilisée soit comme une entrée ou soit comme une sortie numérique, en utilisant les instructions pinMode(), digitalWrite() et digitalRead() du langage Arduino dans le compilateur Arduino IDE. De plus, certaines broches ont des fonctions spécialisées : - Communication Série: Broches 0 (RX) et 1 (TX). Utilisées pour recevoir (RX) et transmettre (TX) les données séries de niveau TTL. - SPI (Interface Série Périphérique): Broches 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Ces broches supportent la communication SPI disponible avec la librairie pour communication SPI [14]. Les broches SPI sont également connectées sur le connecteur ICSP qui est mécaniquement compatible avec les cartes Mega. - I2C: Broches 4 (SDA) et 5 (SCL). Supportent les communications de protocole I2C (ou interface TWI (Two Wire Interface - Interface "2 fils"), disponible en utilisant la librairie Wire/I2C (ou TWI - Two- Wire interface - interface "2 fils") [15]. - LED: Broche 13. Il y a une LED incluse dans la carte connectée à la broche 13. Lorsque la broche est au niveau HAUT, la LED est allumée, lorsque la broche est au niveau BAS, la LED est éteinte. c) Entrées et Sorties Analogiques La carte Uno dispose de 6 entrées analogiques (numérotées de 0 à 5), chacune pouvant fournir une mesure d'une résolution de 10 bits (c’est-à-dire. sur 1024 niveaux soit de 0 à 1023) à l'aide de la fonction analogRead() du langage Arduino. Par défaut, ces broches mesurent entre le 0V (valeur 0) et le 5V (valeur 1023). Note : les broches analogiques peuvent être utilisées en tant que broches numériques : elles sont numérotées en tant que broches numériques de 14 à 19. d) Autres broches Il y a deux autres broches disponibles sur la carte : - AREF : Tension de référence pour les entrées analogiques (si différent du 5V). Utilisée avec l'instruction analogReference(). - Reset : Mettre cette broche au niveau BAS entraîne la réinitialisation (= le redémarrage) du microcontrôleur. Typiquement, cette broche est utilisée pour ajouter un bouton de réinitialisation sur le circuit qui bloque celui présent sur la carte.
  • 26. 26 e) La programmation La carte Arduino Uno peut être programmé par avec le logiciel Arduino IDE que nous avions déjà parlé impeux plus haut. Il suffit de sélectionner "Arduino Uno" dans le menu Tools > Board (en fonction du microcontrôleur présent sur votre carte). Le microcontrôleur ATmega328 présent sur la carte Arduino Uno est livré avec un bootloader (petit programme de démarrage) préprogrammé qui vous permet de transférer le nouveau programme dans le microcontrôleur sans avoir à utiliser un matériel de programmation externe. 1.3.5. Le Module Bluetooth (HC-05) Le HC-05 module est simple pour utiliser le Bluetooth SPP (Serial Port Protocol), fabriqué pour la communication sans fils de la connexion au port série. Le port série du module Bluetooth à une version V2.0+EDR (Enhanced Data Rate) de 3Mbps avec une modulation complète de 2.4GHz du transceiver (transmetteur récepteur) radio de la bande de base. Figure 10: Emetteur-récepteur Bluetooth [16] 1.3.5.1. Le hardware - Sensibilité : -80dBm - Puissance de Transmission : plus de +4dBm - Courant d’utilisation minimale: 1.8v - Courant Recommandé : 3.3 a 5v I/O - PIO (Power Input Output) contrôle (BLUETOOTH HC-05) - Interface UART programmable avec baud rate - Antenne intégré
  • 27. 27 1.3.5.2. Le software  Défaut baud rate : 9600  Défaut type : Esclave  Bits de données : 8  PIO9 et PIO8 peuvent être connectés aux LEDs bleu et rouge séparément. Lorsque le maitre et l’esclave sont appariés, la LED rouge et bleu clignotent 1x toutes le 2s d’intervalle, tant que le module est déconnecté, seule la LED bleu clignote toutes les 2s.  Connexion automatique au dernier appareil connecté par défaut.  Permet l’appariement de l’appareil pour la connexion par défaut.  Le code de connexion par défaut est le « 1234 »  Reconnexion automatique âpres 30min si la déconnexion était dû au out range area. 1.3.5.3.Configuration de pins (sorties et entrées) Figure 11: HC-05, vu du dos [17] Connexion du module HC-05 avec le microcontrôleur Arduino Figure 12: HC-05 et Arduino Uno [18]
  • 28. 28 1.3.6. Le Module RTC Ce module est utilisé pour des applications telles que l’enregistrement de données en rapport avec le temps, les applications des synchronisations. Il gère le temps (jour, mois, année, heur, minute, secondes et tierces). Comme le module est autoalimenté, les données de temps sont maintenues même si l’Arduino est hors tension. C’est qui permettra de construire un système à faible puissance qui peut fonctionner pendant une longue période sans changer des piles. Figure 13: Real Time Clock Modul [19] 1.3.7. Le Module RFID Radio Fréquence Identification, ce système est compose d’un Tag (carte) et d’un lecteur (antenne) qui communiquent grâce à un champ magnétique qui est émis par la carte et qui sera capter par la carte grâce à son antenne intégrée et qui alimentera la puce de la carte qui contient les informations relatives à la carte. Figure 14: Radio Frequency IDentification
  • 29. 29 1.3.8. Le Module LCD [20] Un écran à cristaux liquides (liquid cristal display, LCD, en anglais) utilise un mode d'affichage numérique sur un écran plat. Le mode d’éclairage va permettre d’offrir des fonctionnalités de réglages avancées. Cet écran est composé de 16 colonnes et 2 lignes et utilise 6 broches numériques et deux broches pour l’alimentation (3.3v ou 5v). Figure 15:Liquid Crystal Display 1.3.9. Le Capteur le mouvement/ Présence (PIR) [21] Passive Infrared, ce capteur permet de détecter le mouvement d’un humain se déplaçant dans la zone de couverture du capteur. Il capte le niveau de rayonnement infrarouge, tout corps émet un rayonnement de faible niveau, et plus le corps et chaud, plus le son rayonnement est grand. Son détecteur de mouvement est divisé en deux, la raison est que nous voulons détecter un mouvement et non un rayonnement IR, alors les deux moitiés sont câblées afin qu’ils s’annulent mutuellement, si une moitié capte plus ou moins de rayonnement que l’autre, la sortie basculera vers le haut ou vers le bas (HIGH/ LOW). Il possède 3 broches : Vcc (5v +), Out (vers Arduino), Gnd (5v -). Figure 16:Passive Infra Red
  • 30. 30 1.3.10. Le Capteur de Température (DHT) [22] Pour arriver à avoir la température ambiante, nous avons eu à utiliser le capteur DHT11. Ce capteur ne fournit pas seulement la température mais aussi l’humidité de la pièce où il se trouve. Ce capteur peut se brancher sur une bronche analogique ou digitale d’une carte Arduino. Alimenté avec une tension de +5V. Il possède 3 broches : Vcc (5v +), Out (vers Arduino), Gnd (5v -). Il fonctionne sous une température allant de 0 à 50° avec erreur de +/- 2 et humidité de 20 – 90% avec une erreur de 5%. Figure 17:Temperature Modul 1.3.11. Le Module GSM/GPRS [23] Le module nous fournira le support d’alerte via le réseau cellulaire du téléphone pour recevoir des notifications téléphoniques (Appels, Messages) lors du déclanchement d’alarme. Ce module fourni trois services : - Short Message Service (SMS) - Appel Audio - GPRS Service (Service Internet) Il est compatible avec toutes les cartes Arduino, et est configuré par le service UART (Universal Assynchronous Receiver and Transmeter) en utilisant les AT commandes. Il est basé sur le SIM900 module.
  • 31. 31 Figure 18:GSM Shield 1.3.12. Le Module FINGERPRINT [24] Le traitement des empreintes digitales inclut deux parties : l’enregistrement des empreintes et la correspondance entre elles. Lors de l’inscription, l’utilisateur doit entrer le doigt deux fois et le système traite deux fois les images des doigts, puis génère un modèle de doigt basé sur le résultat de traitement et stock le model en lui attribuant un numéro d’identification. Lors de l’appariement, l’utilisateur met le doigt sur le capteur optique et le système génère un modèle de doigt et le compare avec les modèles de la bibliothèque des doigts prés- enregistrés. Figure 19 : Fingerprint Modul 1.3.13. Le Servomoteur [25] Le servomoteur est composé d’un moteur électrique relié mécaniquement à un potentiomètre. L’électronique à l’intérieur du servo traduit la largeur de l’impulsion dans une position. Lorsque le servo est commandé en rotation, le moteur est alimenté jusqu'à ce que le potentiomètre atteigne la valeur correspondante à la position commandée. Il possède l’angle de rotation de 0 - 180°.
  • 32. 32 Figure 20: Servo motor 1.3.14. Le Relais [26] Ce module est alimenté le DC et le AC, et est utilisé pour commander les appareils à moyenne tension (Maximum 250Vac ou 30Vdc et supporte un courant de 10A). Un relais peut être couplé avec un transistor (NPN ou PNP) pour être utiliser sur un microcontrôleur qui fournît 5v. Figure 21: Relay 1.3.15. La LED La Diode Electro Luminescente en Français (DEL) et Light-Emitting Diode en Anglais (LED), est un dispositif capable d’émettre de la lumière lorsqu’elle est parcourue par un courant électrique. Elle est utilisée dans la construction des écrans plats de télévision : pour le rétro éclairage des écrans à cristaux liquides ou comme source d'illumination principale dans les télévisions à OLED.
  • 33. 33 Figure 22: Diode Electro Luminescente 1. CHAMP D’APPLICATION 1.1. Présentation du milieu La maison d’habitation est un lieu par défaut de sécurité et de confort, nous avions orienté notre travail sur elle pour la rendre ses qualités et pour aussi la rendre encore plus agréable à vire. La maison que nous avions choisie pour ce projet et la nôtre, elle est situé au dans la ville de Goma dans la commune de Goma, Quartier HIMBI 2, Avenue de la mission numéro 138. 1.2. Observation fonctionnelle du SI existant de la Maison Notre maison d’étude possède deux sources d’alimentations, la SNEL et l’énergie solaire, comme la majorité, elle est gérée manuellement c.-à-d. en entrée de la porte principale, nous devons avoir des clefs pour différents cadenas et serrures afin d’accéder dans la maison. Nous avions remarqué que la gestion d’énergie était mal faite, aussi l’accès dans la maison n’était pas contrôlé, la gestion des appareils électroniques et électroménagers est plus ou moins mal organisée du fait que par exemple lorsqu’on oublié d’éteindre le réchaud ou si on laissé la télévision allumée lors de la coupure de courant, a son retour, s’il y a personne à la maison, il aura consommation d’énergie électrique qui sera facturée évidement à la fin du mois.
  • 34. 34 CHAPITRE 2: ANALYSE ET CONCEPTION DU NOUVEAU SYSTEME 2.1. ANALYSE PROPREMENT DITE Le système que nous avions conçu a été baptisé « Smart House » en hommage des différentes tâches et services qu’il offre à son utilisateur. Cela c’est en se basant sur la définition d’un système qui est un ensemble d’éléments matériels et immatériels en interaction transformant par un processus, les éléments en d’autres (les entrées aux sorties) avec une composition des sous-systèmes relié entre-deux pour la prise de décision et la sauvegarde des informations. 2.1.1. Elaboration du cahier de charge Nous allons lister tous les matériels que nous avions utilisés dans Smart House avec leurs caractéristiques. Num Qte Matériels Rôles Caractéristiques 1 2 Arduino Mega 2560 Assurent la fonction des contrôleurs (la partie intelligente) Avec une mémoire de 512k et 54 broches digitales, 4 ports série 15 broches analogiques 2 1 Module Bluetooth HC-05 Servira d’antenne pour nos microcontrôleurs en établissant la connexion avec le téléphone mobile Codé sur 8 bit avec une vitesse de transmission de 3Mbts sous la version du Bluetooth 3.0. avec un champ de couverture d’~ 12m 3 1 Module GSM Assure le rôle d’alerte par le bais du réseau cellulaire, une connexion internet et un service d’alerte par appel et message Ce module supporte la 2G (900MHz), GPRS, Appels et Messages 4 1 Le Module RTC Assure le rôle d’alerte par le bais du réseau cellulaire, une connexion internet et un service d’alerte par appel et message Il possède un une pile CMOS pour la sauvegarde du temps (seconde, minute, heure, jours, mois, année) et possède aussi une puce pour de capteur de température.
  • 35. 35 5 1 Le Module LCD Jouera le rôle d’afficheur des informations comme la température de l’intérieure comme celle de l’extérieure, le date et t’état de l’alarme Il est composé de 16 colonnes et 2 lignes, alimenté par 6 broches numériques. 6 1 Le Module RFID Nous permettra l’accès dans la maison avec carte. Il est composé d’un tag qui contient une puce avec un id et d’un lecteur. 7 5 Le Capteur de Présence (PIR) Servira au capteur de présence dans différente pièces de la maison. Possède deux capteurs de rayonnement infrarouge. 8 1 Le Capteur de Température (DHT) Va servir de capteur de température et d’humidité Ce module est alimenté avec du 3.3v 9 1 Le Module FINGERPRINT Jouera le rôle du scanner d’empreinte. Ce module est alimenté avec du 3.3v 10 5 Le Servomoteur Va jouer le rôle d’actionneur Il a une rotation de 0 – 180 degrés 11 1 Le Relais Va nous aider dans la partie puissance (gestion de 12vdc et 220vac) Alimenté par 12v et supporte un courant de 10A. 12 4 La LED Servirons des lampes témoins. Alimenté par 3.3vdc, 5vdc et 12vdc 13 1 KeyPad Il va jouer le rôle d’activateur, de désactivateur d’alarme et la gestion de mot de passe Possède 8 broches 14 1 Buzzer Il va jouer le rôle du baffle pour l’alarme sonore Possède 2 broches
  • 36. 36 2.1.2. Planning prévisionnel Cette partie traite de la manière dont le travail a été élaboré tout en y incluant les contraintes liées au temps et au coût des tâches à effectuer. A. Tableau d’identification et dénombrement des tâches Codes taches Désignation des taches Durée/Jour Contraintes d’antériorité A Récolte et analyse des données sur le fonctionnement du microcontrôleur, Bluetooth et autres composants électroniques 30 - B Plan de conception du nouveau système 5 A C Analyse du nouveau système 15 B D Installation et configuration des logiciels pour la programmation et la configuration des matériels électroniques. (Arduino IDE, Visual Studio Code, Sublime Text 3, Fritzing, Proteus, PlateformIO et Atome) 3 C E Développement de l’application Android (Android studio 3.0) 35 D F Préparation et configuration du module Bluetooth et du microcontrôleur 12 E G Test de la configuration 3 F H Test de l’application Android 2 G I Configuration des capteurs 7 H J Configuration des modules et actionneurs 10 I K Test de la configuration des capteurs, modules et actionneurs 2 J L Configuration de la sécurité réseau (Algorithme de CESAR) 2 K M Test préliminaire de tout le système et correction d’erreurs éventuelles 7 L N Test final 5 M
  • 37. 37 O Formation des membres de la famille sur l’utilisation de Smart House 7 N
  • 38. 38 B. Diagramme de Gantt Permet de faire figurer l'enchaînement dans un calendrier afin de montrer la durée d’exécution des tâches. Figure 23: Diagramme de Gantt
  • 39. 39 C. Estimation des coûts pour la réalisation du projet Num Matériels PU en $ Qté Transport($) PT en $ 1 Arduino Mega 2560 22 2 12 56 2 Module Bluetooth HC-05 15 1 5 20 3 Module GSM 32 1 12 44 4 Le Module RTC 14 1 5 19 5 Le Module LCD 10 1 6 16 6 Le Module RFID 25 1 7 32 7 Le Capteur de Présence (PIR) 10 5 10 60 8 Le Capteur de Température (DHT) 8 1 4 12 9 Le Module FINGERPRINT 21 1 5 26 10 Le Servomoteur 9 6 6 60 11 Le Relais 4 16 7 71 12 La LED 1 4 0 4 13 KeyPad 9 1 4 13 14 Buzzer 2 1 1 3 15 Fil connecteurs 20 1 Boite 7 27 16 Téléphone Androïde 200 1 20 220 TOTAL 684
  • 40. 40 2.2.CONCEPTION DU NOUVEAU SYSTEME 2.2.1. Présentation des diagrammes 7 8 9 10 4 2 1 5 6 3 11 12 13 LEGEND 1. Application Android 2. Module Bluetooth (HC-05) 3. Arduino Mega (Microcontrôleur) 4. Ecran LCD 5. Module RTC 6. Module FRID 7. Capteurs des présences 8. Capteur de Température 9. Module GSM 10. Module Fingerprint 11. Servomoteur 12. Relay 13. Led
  • 41. 41 2.2.2. Implémentation du projet Vu que notre projet consiste à faire une gestion de la maison d’habitation via un téléphone mobile en utilisant la technologie Bluetooth, nous aurons des configurations à faire : A. Topologie logique Dans cette partie nous allons parler du mécanisme de la communication des informations depuis le téléphone (Android) jusqu’au HC-05 connecté au microcontrôleur. A.1. Cadre théorique  Premièrement, pour que le téléphone établisse une connexion avec le module Bluetooth, il va faire appel au protocole RFCOMM qui va se charger d’émuler une connexion série avec le module Bluetooth grâce à son BD_ADDR, étant donné que le module est configuré par défaut en mode discovery (découverte/visibilité), la RFCOMM va lancer le scan des périphériques et va se connecter au module HC-05 et récupérer son adresse.  Deuxièmement, la RFCOMM ayant déjà l’adresse du module, va faire appel au Socket qui, permettra l’ouverture d’un canal de communication qui sera sécurisé (pour éviter des interférences avec d’autres modules comme le Wi-Fi ou le Xbee qui utilisent aussi la fréquence de 2.4GHz) en utilisant un UUID (Universal Unique IDentify). Cette clef étant unique au monde et est codée sur 64 Bits hexadécimaux. Le socket va aussi faire appel au protocole UART (Universal Assynchronous Receiver and Transmeter) pour permettre la réception et l’émission dans la bande de 2.4GHz. Le va envoyer un message d’avertissement au module, ce paquet contiendra l’UUID et le BD_ADDR. Si le module lui répond avec ce même UUID (qui est bien-sûre configurer d’avance dans le paramètre du module), c’est que les deux périphériques ses reconnaissent et le RFCOMM va établir la connexion proprement dite et sécurisée.  Troisièmement, ayant déjà le BD_ADDR et un canal de communication ouverte et sécurisé, nous allons maintenant échanger des informations avec le module et vice-versa. Seulement voilà, il nous manque encore quelque chose pour envoyer et recevoir, la RFCOMM va faire encore appel au Socket qui va a son tour faire appel à ses sous classes : OutputStream() et InputStream().
  • 42. 42 Ces deux sous classes vont nous permettre d’écrire et de lire dans le canal en utilisant l’UART. Pour augmenter la sécurité dans nos communications avec le module, nous avions fait appel à l’algorithme de CESAR. Ce dernier utilise le chiffrement asymétrique : la clef de chiffrement sera la clef de déchiffrement. A.2. Représentation  Overview Dans cette partie, nous allons faire la configuration du module Bluetooth et une représentation schématique de notre architecture. Etant donné que nos capteurs ne possédant pas toutes les particularités pour être appeler RCSF (Réseaux de Capteurs Sans Fil), nous allons les faire partager la même énergie et la même radio. Pour ce qui concerne l’espace de stockage et le microprocesseur, ils en possèdent.  Configuration du Module Bluetooth Les commandes AT [26] Les commandes Hayes, parfois appelées commandes AT, constituent un langage de commandes développé à l’ origine pour les modems Hayes Smartmodem300. Elles permettent de composer un numéro de téléphone, commandent le raccordement du modem a la ligne (décrocher un appel téléphonique), spécifient le type de transmission et le protocole de liaison à utiliser. Avec ces commandes, nous parviendrons à configurer notre module enfin qu’il se connecte avec notre Application mobile via son adaptateur Bluetooth. Pour entrer dans l’AT MODE, on doit suivre les étapes suivantes : 1. Connecter le pin KEY du module au pin VCC (5v out) d’Arduino 2. Envoyer le courant dans le module. A ce stade, le module entrera automatiquement dans l’AT MODE. Dans ce mode on aura à utiliser le baud rate (la vitesse de transmission de données) de 38400. Dans ce cas, l’utilisateur doit changer aussi son baud rate pour le mode ESCLAVE et MAITRE dans l’application mobile.
  • 43. 43 1. Tester de commande Commandes Résultats Paramètres AT OK None 2. Restaurer Commandes Résultats Paramètres AT+RESET OK None 3. Voir la version du logiciel Commandes Résultats Paramètres AT+VERSION ? +VERSION :<Param> OK Param : Version du module Exemple : AT+VERSION ?rn +VERSION : 2.0-20100601 OK 4. Restaurer à la configuration d’origine Commandes Résultats Paramètres AT+ORGL OK None Etat par défaut : Slave mode, pin code : 1234, device name: H-C-2010-06-01, Baud 38400bits/s. 5. Voir l’adresse du module Commandes Résultats Paramètres AT+ADDR ? +ADDR :<Param> OK Param : Bluetooth Address (BD_ADDR) Exemple : AT+ADDR ?rn +ADDR : 1234 :56 :abcdef OK 6. Set/Check le nom du module : Commandes Résultats Paramètres AT+NAME=<Param> OK Param : Bluetooth Device name Default : HC-05 (Défaut : HC-05) AT+NAME ? +NAME :<Param> OK (/FAIL) Exemple : AT+NAME=HC-05rn OK AT+NAME=Smart Housern OK AT+NAME? rn +NAME: Smart House OK
  • 44. 44 7. Set/Check le mode du module Commandes Résultats Paramètres AT+ROLE=<Param> OK Param : 0. Slave role 1. Master role 2. Slave-Loop role Default : 0 +ROLE :<Param> OK Note :  Slave : connexion passive  Slave-Loop : Passive connexion, reçois les données du périphérique Bluetooth distant (du Master) et les renvois au Master  Master : lance la requête pour trouver les SPPs périphériques de Modules Bluetooth Slave, amorce la connexion, et développe une transmission transparente des données entre lui et les Slave périphériques. 8. Set/Check la classe du périphérique : Commandes Résultats Paramètres AT+CLASS=<Param> OK Param : Device type. Le type de périphériques Bluetooth est de 32-bit. Ce paramètre indique le type du périphérique et les quels peuvent être supporté. AT+CLASS ? +CLASS :<Param> 1. OK 2. FAIL 9. Set/Check le code Pin : Commandes Résultats Paramètres AT+PSWD=<Param> OK Param : Code PIN Défaut : 1234 AT+PSWD? +PSWD : <Param> OK 10. Set/Check le paramètre Serie : Commandes Résultats Paramètres AT+UART=<Param>,<Param>, <Param> OK Param 1: Baud rate Param2 : Stop bit Param3 : Parity AT+UART? +UART : <Param>,<Param>,<Param> OK Exemple : AT+UART=115200, 1, 2rn OK
  • 45. 45 AT+UART ? +UART : 115200, 1, 2 OK 11. Set/Check le mode de connexion (Connexion mode) : Commandes Résultats Paramètres AT+CMODE=<Param> OK Param : 0- connecté sur une adresse fixe 1- connecté sur n’importe quelle adresse 2- Boucle-Esclave AT+CMODE? +CMODE : <Param> OK 12. Set/Check le paramètre de scan : Commandes Résultats Paramètres AT+IPSCAN=<Param1>,<Param2>, <Param3>,<Param4> OK Param 1: Query time interval Param2 : Query duration Param3 : Paging interval Param4 : Call durationAT+IPSCAN? +IPSCAN :<Param>,<Param2>, <Param3>,<Param4> OK Exemple : AT+IPSCAN=1234, 500, 1200, 250 rn OK AT+IPSCAN ? : 1234, 500, 1200, 250 13. Set/Check le paramètres SNIFF (Energie Shaving Mode) : Commandes Résultats Paramètres AT+SNIFF=<Param1>,<Param2>, <Param3>,<Param4> OK Param 1: Max time Param2 : Min time Param3 : Retry time Param4 : Time outAT+SNIFF? +POLAR =<Param>,<Param2>, <Param3>,<Param4> OK Note : Le mode SNIFF est un autre mode de conservation de la consommation d’énergie utilisé par le Bluetooth. Ce mode est par défaut désactivé, et la radio est activé constamment lorsque le Bluetooth est connecté (presque 25-30 mA). Par contre, dans le mode SNIFF, la radio s’allume à un temps spécifique et bien déterminé, et fonctionne avec une faible consommation d’énergie (dans le 2 mA). Ce mode ne peut qu’appartenir qu’à une connexion active. Lorsque la connexion est établie, le Maitre et l’Esclave doivent supporter le
  • 46. 46 mode SNIFF, contrairement à la radio qui restera dans le full active mode. Le temps max autorisé est ~20secondes. 14. Suppression de périphériques Authentifiés : Commandes Résultats Paramètres AT+PMSAD=<Param> OK Param 1: adresse du périphérique déjà authentifié Exemple : AT+PMSAD=1234, 56, abcdefrn OK 15. Suppression de tous les périphériques Authentifiés Commandes Résultats Paramètres AT+AMAAD OK - 16. Rechercher du périphérique Authentifié : Commandes Résultats Paramètres AT+FSAD=<Param> 1- OK 2- FAIL Param : Device Address 17. Voir le nombre de périphériques Authentifiés : Commandes Résultats Paramètres AT+ADCN ? +ADCN :<Param> OK Param : Device count 18. Voir les récents périphériques utilisés : Commandes Résultats Paramètres AT+MRAD ? +MRAD :<Param> OK Param : Recently Authenticated device Address
  • 47. 47 19. Voir l’état de fonctionnement du Module Bluetooth : Commandes Résultats Paramètres AT+STATE ? +STATE :<Param> OK Param :  INITALISED  READY  PAIRABLE  PAIRED  INQUIRING  CONNECTING  CONNECTED  DISCONNECTED  UNKNOWN 20. Initialisation de la librairie du profile SPP : Commandes Résultats Paramètres AT+INT 1. OK 2. FAIL - 21. Information sur le Module Bluetooth : Commandes Résultats Paramètres AT+INQ +INQ : <Param1>,<Param2>, <Param3> … OK Param 1: Address Param2 : Device Classe Param3 : RSSI signal strength AT+POLAR? +POLAR =<Param>,<Param2> OK 22. Annulation de la demande d’information sur le Module Bluetooth : Commandes Résultats Paramètres AT+INQC OK - 23. Connecter un périphérique : Commandes Résultats Paramètres AT+LINK=<Param> 1. OK 2. FAIL Param : Device Address Exemple : AT+FSAD=1234, 56, abcdef rn OK AT+LINK=1234, 56, abcdef rn OK
  • 48. 48 24. Déconnecter : Commandes Résultats Paramètres AT+DISC=<Param> 1. +DISC : SUCCESS OK 2. +DISC : LINK_LOSS OK 3. +DISC : NO_SLC OK 4. +DISC : TIMEOUT OK 5. +DISC : ERROR OK Param : Device Address B. Topologie physique La partie physique va parler de la façon dont nos équipements sont connectés entre- deux. Nous allons lister quelques schémas électroniques de notre projet. 1. Capteur de température, écran LCD et le Buzzer. Figure 24: Capteur de température, écran LCD et le Buzzer
  • 49. 49 2. Capteur de présence (PIR) Figure 25: Capteur de présence (PIR) 3. Arduino Mega, Module Keypad, écran LCD et le Buzzer. Figure 26: Arduino Mega, Module Keypad, écran LCD et le Buzzer.
  • 50. 50 4. Capteur de lumière et le Buzzer. Figure 27: Capteur de lumière et le Buzzer.
  • 51. 51 5. Module Bluetooth, Keypad, LCD, Servomoteur, Buttons poussoirs et Buzzer Figure 28: Module Bluetooth, Keypad, LCD, Servomoteur, Buttons poussoirs et Buzzer
  • 52. 52 6. Schéma global du système Smart House Figure 29: Schéma global du système Smart House
  • 53. 53 C. Implémentation proprement dite Cette partie sera consacrée à la programmation du module Bluetooth et des microcontrôleurs et les autres matériels. Le code a été fait dans le compilateur SublimeText 3 qui par défaut est un éditeur de texte mais nous allons lui ajouter un plugin [27] pour qu’ils prennent en charge la programmation du microcontrôleur. D. Etapes de configuration partie serveur 1. Importation des librairies et déclaration des variables 2. Structure principale du programme Cette fonction setup() s’exécutera une seule fois lors du démarrage du microcontrôleur, on y initialise les variables.
  • 54. 54 3. Structure globale du programme Ici, on appelle toutes les fonctions qui serons exécuter en boucle avec une vitesse définie dans le setup() par l’instruction Serial.begin(38400) qui est aussi la vitesse de transmission du microcontrolleur vers le module Bluetooth
  • 55. 55 4. Configuration du module Bluetooth Comme on l’avait déjà abordé dans les parties précédentes, le module Bluetooth est configuré grâce aux commandes AT. Ici on configure le module en mode Maitre ainsi le téléphone sera l’esclave, puis on lui attribue un nom, un mot de passe, une vitesse de transmission, etc… 5. Structure globale du programme La fonction bluetooth() va recevoir les données provenant du téléphone et va les déchiffrer puis le comparer avec les instructions correspondantes. Lors de la réponse, cette même fonction va encore chiffrer les données avant de les envoyer
  • 56. 56 6. Structure globale du programme Cette fonction va être utilisée pour le capteur de présence. Lorsque ce dernier capte quelque chose la fonction commander le module Gsm pour passer un appel téléphonique puis elle va raccrocher après 5 secondes.
  • 57. 57 7. Structure globale du programme Cette fonction traite la réception du message et commande le servomoteur d’ouvrir ou de fermer la porte et à la fin, de renvoyer le message a téléphone avec l’état de la porte après réception du message, l’heure et la température de la pièce. 8. Envoie du message La fonction sms_send() va envoyer un message téléphonique.
  • 58. 58 9. Eclairage crépusculaire Cette fonction va gérer notre module RTC pour savoir s’il est déjà 18h00 pour que les lampes projecteurs dès l’extérieures puissent s’allumer et si par contre il est 6h00, les projecteurs devrons s’éteindre. 10. Ventilateurs Cette fonction va gérer les ventilateurs dans la maison, si la température dépasse 24.5, automatiquement les ventilateurs vont commencer à tourner.
  • 59. 59 11. Eclairage dans les escaliers Lorsqu’une personne passe dans les escaliers et qu’il est déjà 18h, a lampe s’allume et attend après 15 secondes et s’éteint. 12. Ouverture de la porte Cette fonction ouvre la porte et allume la Led Verte et éteint la Led Rouge pour signaler que la porte est ouverte.
  • 60. 60 13. Fermeture de la porte Cette fonction ferme la porte et allume la Led Rouge et éteint la Led Verte pour signaler que la porte est fermée. 14. Commande des relays 15. Chiffrement du message Cette fonction fait appel à l’algorithme de César avec comme clef de chiffrement un décalage à gauche de 8. 16. Déchiffrement du message Elle va faire le contraire du chiffrement. Donc si on a chiffré avec une clef de décalage de 8 à gauche, pour déchiffrer on va faire un décalage de 8 a droite.
  • 61. 61 17. Réglage de la montre pour le RTC 18. Affichage de la date + heure. Cette fonction va afficher le jour de la semaine, le jour du mois, le mois, l’année, l’heure, les minutes et secondes.
  • 62. 62 19. Affichage de la date + heure + température 20. Lecture de la temperature dans le module RTC 21. Lecture de l’heure + minutes dans le module RTC
  • 63. 63 E. Etapes de configuration partie Cliente La partie cliente est sous une plateforme Android, nous allons représenter quelques interfaces. 1. Ecran d’accueil + connexion 2. Sélection du mode de connexion + liste de périphériques
  • 64. 64 3. Etablissement de la connexion 4. Le Dashboard
  • 65. 65 5. Le menu + le Dashboard des modules 6. La télécommande
  • 66. 66 CHAPITRE 3: DISCUSSION ET RECOMMANDATIONS A travers ce travail intitulé « conception d’un système domotique interconnecté par Bluetooth sous une plateforme Androïde », nous nous sommes consacrés à concevoir une maquette sur laquelle, on gère en de gérer ~85% des activités domestiques liés au confort via un téléphone. L’application Androïde a été conçue de façon à tenir compte de l’ergonomie mais aussi des appareils que les utilisateurs auront à utiliser pour accéder au système Smart House. Puisqu’aujourd’hui plus de 87% des personnes accèdent des tablettes ou Smartphones ayant un adaptateur Bluetooth. Pour la contrainte de la distance entre Smart House et le user, nous avons développé une librairie pour la commande par SMS. Le projet est réalisé sur la base d’une carte Arduino. Pour arriver à la réalisation, nous avons fait une conception matérielle, où quelques notions d’électronique nous ont été très utiles. Ce système réduit les gaspillages en effort humain et en énergie électrique. Augmente le confort ainsi la sécurité de l’habitation. Les difficultés rencontrées sont nombreuses, surtout en ceux qui concernent l’acquisition des matériels sur le marché où nous étions obligé de faire des achats et on y a constaté des pertes des certains matériels lors du transport. Au vu de ce qui précède, l’objectif que nous nous sommes fixé au départ à savoir réaliser une maison autonome et capable être contrôlée depuis un Smartphone via une application Androïde en utilisant le réseau Bluetooth ou un réseau GSM (commande SMS) a été atteint. Néanmoins nous regrettons de ne pas avoir eu assez de temps et de moyen pour perfectionner notre travail, en ajoutant d’autres fonctionnalités. Les perspectives de poursuite du projet sont multiples mais quelques points nous semblent vraiment importants pour les versions futures: - l’ajout d’un réseau de capteurs sans fils dans chaque pièces de la maison en y incluant une commande vocale (en offline),
  • 67. 67 - l’ajout d’un système solaire dans le but de rendre la maison plus autonome en énergie, - l’ajout d’un réseau internet pour que le système soit accessible de n’importe où sur terre. Nous recommandons a tout ceux qui sont passionné par le progrès de la technologie de bien vouloir mettre à disposition cette technologie pour leurs rendre une vie paisible, meilleur et sure.
  • 68. 68 TABLE DES MATIERES EPIGRAPHE----------------------------------------------------------------------------------------------- 2 DEDICACE ------------------------------------------------------------------------------------------------ 3 REMERCIEMENTS -------------------------------------------------------------------------------------- 4 SIGLES ET ABREVIATIONS-------------------------------------------------------------------------- 5 INTRODUCTION----------------------------------------------------------------------------------------- 7 1. ETAT DE LA QUESTION ---------------------------------------------------------------------- 7 2. PROBLEMATIQUE------------------------------------------------------------------------------ 7 3. HYPOTHESES------------------------------------------------------------------------------------ 8 4. OBJECTIFS---------------------------------------------------------------------------------------- 8 5. CHOIX ET INTERET DU SUJET ------------------------------------------------------------- 8 6. METHODES ET TECHNIQUES--------------------------------------------------------------- 9 6.1. Méthodes----------------------------------------------------------------------------------------- 9 6.2. Technique ---------------------------------------------------------------------------------------- 9 7. DELIMITATION DU SUJET------------------------------------------------------------------- 9 8. DIFFICULTES RENCONTREES-------------------------------------------------------------10 9. ORGANISATION DU RESTE DU MEMOIRE --------------------------------------------10 CHAPITRE 1: GENERALITE ET CHAMP D’APPLICATION ---------------------------------11 1.1. GENERALITES -------------------------------------------------------------------------------11 1.2. DEFINITION DU THEME ---------------------------------------------------------------11 1.3. CONCEPT DE BASE----------------------------------------------------------------------11 1. CHAMP D’APPLICATION--------------------------------------------------------------------33 1.1. Présentation du milieu ---------------------------------------------------------------------33 1.2. Observation fonctionnelle du SI existant de la Maison -------------------------------33 CHAPITRE 2: ANALYSE ET CONCEPTION DU NOUVEAU SYSTEME ------------------34 2.1. ANALYSE PROPREMENT DITE---------------------------------------------------------34 2.1.1. Elaboration du cahier de charge -------------------------------------------------------34 2.1.2. Planning prévisionnel -------------------------------------------------------------------36 A. Tableau d’identification et dénombrement des tâches -----------------------------------36 B. Diagramme de Gantt --------------------------------------------------------------------------38 C. Estimation des coûts pour la réalisation du projet ----------------------------------------39 2.2. CONCEPTION DU NOUVEAU SYSTEME---------------------------------------------40 2.2.1. Présentation des diagrammes-----------------------------------------------------------40
  • 69. 69 2.2.2. Implémentation du projet ---------------------------------------------------------------41 A. Topologie logique -----------------------------------------------------------------------------41 B. Topologie physique ---------------------------------------------------------------------------48 C. Implémentation proprement dite ------------------------------------------------------------53 D. Etapes de configuration partie serveur -----------------------------------------------------53 E. Etapes de configuration partie Cliente------------------------------------------------------63 CHAPITRE 3: DISCUSSION ET RECOMMANDATIONS--------------------------------------66 LISTE DES FIGURES--------------------------------------------------------------------------------70 WEBOGRAPHIE-----------------------------------------------------------------------------------------71
  • 70. 70 LISTE DES FIGURES Figure 1 : Le logo de Bluetooth, inspiré des initiales en alphabet runique de Harald Blatand ---------- 12 Figure 2: Piconet -------------------------------------------------------------------------------------------------------- 16 Figure 3: Inter-réseau Bluetooth (scatternt)------------------------------------------------------------------------ 16 Figure 4: Représentation graphique schématique d’items relatifs a « l'habitat intelligent »-------------- 18 Figure 5: Image d'un microcontrôleur------------------------------------------------------------------------------- 19 Figure 6 : Composition matérielle de la Carte Arduino "UNO" [10] ----------------------------------------- 21 Figure 7: La tête du μ Circuit Intégré ATmega8 [11]------------------------------------------------------------ 22 Figure 8: IDE Arduino [12] ------------------------------------------------------------------------------------------- 23 Figure 9: Brochage de la carte Arduino Uno [13] ---------------------------------------------------------------- 24 Figure 10: Emetteur-récepteur Bluetooth[16] --------------------------------------------------------------------- 26 Figure 11: HC-05, vu du dos [17]------------------------------------------------------------------------------------ 27 Figure 12: HC-05 et Arduino Uno [18] ---------------------------------------------------------------------------- 27 Figure 13: Real Time Clock Modul [19] --------------------------------------------------------------------------- 28 Figure 14: Radio Frequence IDentification ------------------------------------------------------------------------ 28 Figure 15:Liquid Crystal Display ------------------------------------------------------------------------------------ 29 Figure 16:Passive Infra Red------------------------------------------------------------------------------------------- 29 Figure 17:Temperature Modul---------------------------------------------------------------------------------------- 30 Figure 18:GSM Shield ------------------------------------------------------------------------------------------------- 31 Figure 19 : Fingerprint Modul ---------------------------------------------------------------------------------------- 31 Figure 20: Servo motor------------------------------------------------------------------------------------------------- 32 Figure 21: Relay--------------------------------------------------------------------------------------------------------- 32 Figure 22: Diode Electro Luminescente ---------------------------------------------------------------------------- 33 Figure 23: Capteur de température, écran LCD et le Buzzer --------------------------------------------------- 48 Figure 24: Capteur de présence (PIR)------------------------------------------------------------------------------- 49 Figure 25: Arduino Mega, Module Keypad, écran LCD et le Buzzer. --------------------------------------- 49 Figure 26: Capteur de lumière et le Buzzer. ----------------------------------------------------------------------- 50 Figure 27: Module Bluetooth, Keypad, LCD, Servomoteur, Buttons poussoirs et Buzzer --------------- 51 Figure 28: Schéma global du système Smart House ------------------------------------------------------------- 52
  • 71. 71 WEBOGRAPHIE ARCHITECTURE RESEAU. [2]. Source: Wikipedia: https://fr.wikipedia.org/wiki/Architecture_de_r%C3%A9seau ARDUINO IDE. [2]. Source: MON-CLUB ELEC: http://www.mon-club elec.fr/pmwiki_reference_arduino/pmwiki.php? ARDUINO UNO. [3]. Source: ARDUINO: http://arduino.cc/ ATMEGA. [11]. Source: ARDUINO: http://arduino.cc/ BLUETOOTH HC-05. [4]. Source: GOOGLE: http://www.google/image/ Emetteur-récepteur Bluetooth BROCHAGE UNO. [13]. Source: MON-CLUB ELEC: BROCHAGE UNO, source : http://www.mon- club-elec.fr/mes_images/materiel/cartes_arduino/arduino_brochage_20_broches.png COMMANDS AT.[26]. Source: WIKIPEDIA: https://fr.m.wikipedia.org/wiki/Commandes_Hayes DHT11. [22]. Source: DFROBOT: https://www.dfrobot.com/wiki/index.php/DHT11_Temperature_and_Humidity_Sensor DOMOTIQUE.[7]. Source: Wikipedia: source: https://fr.m.wikipedia.org/wiki/Domotique FINGERPRINT. [24]. Source: ELECTROSCHEMATICS: https:// www.electroschematics.com/11944/how-to-use-fingerprint-identification-modules GSM/GPRS. [23]. Source: SPARKFUN: https:// www.sparkfun.com/datasheets/gsm_900 HC-05. [16]. Source: ELECTRONICA60NORTE: https://www.electronica60norte.com IEEE. [5]. Source: Wikipedia: https://fr.wikipedia.org/wiki/IEEE INTERCONNEXION. [3]. Source: Marche-publique: https://www.marche-public.fr/Marches- publics/Definitions/Entrees/interconnexion.htm LCD. [20]. Source: DFROBOT: https://www.dfrobot.com/product-590.html MiCROCONTROLLEUR.[9]. Source: TECHNO-SCIENCE: http://www.techno- science.net/?onglet=glossaire&definition=6737 PIR. [21]. Source: DFROBOT: https://www.dfrobot.com/wiki/index.php/PIR_Passive_Infrared RELAY. [26]. Source: BUILDCIRCUIT: https:// www.buildcircuit.com/relay
  • 72. 72 RESEAU. [1]. Source: Pedagogie: https://www.pedagogie.ac-aix- marseille.fr/upload/docs/application/pdf/2012-07/formation_reseau.pdf RS-232. [6]. Source: Wikipedia: https://fr.wikipedia.org/wiki/RS-232 RTC. [19]. Source: HOBBYIST: https://www.hobbyist.co.nz/?q=real_time_clock SERVO. [25]. Source: LOGINGEL: https:// www.logingel.com/217/190113/0/ShowProduct/Servo_Motor SPI. [14]. Source: MON-CLUB ELEC: http://www.mon-club- elec.fr/pmwiki_reference_arduino/pmwiki.php?n=Main.LibrairieSPI STINO.[27]. Source: GITHUB : https://gitghub/stino/ TWI.[15]. Source: MON-CLUB ELEC: http://www.mon-club- elec.fr/pmwiki_reference_arduino/pmwiki.php?n=Main.LibrairieWire UART. [6]. Source: WHATIS: https://whatis.techtarget.com/definition/UART-Universal- Asynchronous-Receiver-Transmitter UHF. [4]. Source: Wikipedia: https://fr.m.wikipedia.org/wiki/Ultra_haute_frequence