Je dédie ce mémoire, [601484]

1

Je dédie ce mémoire,
à tous ceux et toutes celles qui
m’ont accompagné et soutenu
durant ces deux année de formation

2

Remerciements

E n tout premier lieu, je remercie mon Dieu ALLAH de m’avoir donné le courage, la santé,
la volonté et la patience de pouvoir terminer ce projet.
L’accomplissement de ce projet n’aurait pu se faire sans le support et la participation de
plusieurs personnes que je dois à présent remercier.

Je veux d’abord remercier ma famille qu i m’a toujours soutenue, et en particulier,
mes parents et mes frère s pour leur générosité, leur discernement et leur soutien
inconditionnel, ainsi que mon conjoint pour sa patience, sa compréhension et ses co nseils
durant ces cinque dernières années.
Je leur dédie mes réussites passées et à venir .

Je tiens à adresser mes vifs remerciements à mon encadrant Mr. EL MHAMDI Jamal pour sa
présence, son encadrement, ses conseils fournis de façon efficace , tout au long de la
période de réalisation de ce projet .

Mes remerciements s’adressent également aux membres du Jury qui me fo nt l'honneur de
participer à ma soutenance.

3

Résumé

Ce mémoire relate la c onception et la réalisation d’une maison intelligente « Smart
Home » contrôlé v ia interface w eb ayant pour but l’automatisation d’un habitat pour plus de
confort, de sécurité e t d’assistance . La création d’une solution domotique pour le particulier
s’est révélée être indispensable pour combler l’insatisfactio n du public en quête de services
et de fonctions facilitant sa vie quotidienne à domicile. Par l’intermédiaire d’une interface
web, l’utilisateur commande, surveille, contrôle les dispositifs dom otiques localement ou à
distance . L’usager peu t commander sa maison de n’importe quel dispositif connecté à internet.
L’arrosage des plantes se fait d’une manière automatique, aussi le remplissage du château d’eau.
Concernant la communication, l e propriétaire est informé de toutes informations utiles au sujet
de la maison par l’interface web . Notre système domotique assure la sécurité de l’habitat en cas
de déclenchement d’un incident (incendie, inondation ou fuite de gaz toxique) peut limiter ou
éliminer les dégâts . Aussi il envoie un message SMS au résident (service concerné) pour
l’informer de l’état de son f oyer. L’accès à la résidence peut se faire d’une manière automatique
en présentant son identifiant présent dans le tag RFID.

MOTS -CLÉS: automatique , arrosage, contrôle, commande, intelligence, interface, web, RFID,
surveillance, GSM, Raspberry, GrovePi+, Arduino, Raspbian, capteurs.

4
Sommaire
Remerciements ………………………….. ………………………….. ………………………….. ………………………….. …………. 2
Résumé ………………………….. ………………………….. ………………………….. ………………………….. ……………………. 3
Liste des sigles ………………………….. ………………………….. ………………………….. ………………………….. ………… 10
Introduction Générale ………………………….. ………………………….. ………………………….. ………………………….. . 11
Chapi tre I : Présentation générale ………………………….. ………………………….. ………………………….. …………… 12
Introduction : ………………………….. ………………………….. ………………………….. ………………………….. ………….. 13
I. Le système domotique: ………………………….. ………………………….. ………………………….. ……………………… 13
I.1. Qu’est -ce que la domotiq ue? ………………………….. ………………………….. ………………………….. ………… 13
I.2. Pourquoi la domotique ? ………………………….. ………………………….. ………………………….. ……………… 14
I .2.1. Le confort : ………………………….. ………………………….. ………………………….. …………………………. 14
I.2.2. La sécurité : ………………………….. ………………………….. ………………………….. …………………………. 14
I .2.3. La gestion d’énergie: ………………………….. ………………………….. ………………………….. ……………. 15
Conclusion : ………………………….. ………………………….. ………………………….. ………………………….. ……………. 15
Chapitre II : Cahier des charges ………………………….. ………………………….. ………………………….. …………….. 16
Introduction : ………………………….. ………………………….. ………………………….. ………………………….. ………….. 17
I. Cahier des charges : ………………………….. ………………………….. ………………………….. ……………………… 17
II. Les Objectifs à réaliser: ………………………….. ………………………….. ………………………….. ………………… 18
III. Contraintes : ………………………….. ………………………….. ………………………….. ………………………….. ….. 18
IV. Structure générale de projet : ………………………….. ………………………….. ………………………….. ……….. 19
Conclusion : ………………………….. ………………………….. ………………………….. ………………………….. ……………. 19
Chapitre III : Architecture du projet, De scription de matériel et logiciel utilisée ………………………….. …… 20
I. Architecture du projet: ………………………….. ………………………….. ………………………….. ………………………. 21
II. Description de matériel: ………………………….. ………………………….. ………………………….. …………………… 21
II.1 Raspberry Pi 2: ………………………….. ………………………….. ………………………….. ………………………….. 21
II.1.1 Raspberry Pi 2, Présentation: ………………………….. ………………………….. ………………………….. …. 22
II.1.2. Raspberry Pi 2, caractéristiques : ………………………….. ………………………….. ……………………….. 22
II.1.3. Raspberry Pi 2, Que peut -on faire? ………………………….. ………………………….. …………………….. 23
II.2. GrovePi pour Raspberry Pi : ………………………….. ………………………….. ………………………….. ………. 25
II.2.1. GrovePi, Description : ………………………….. ………………………….. ………………………….. ………… 26
II.2.2. GrovePi, Avan tages: ………………………….. ………………………….. ………………………….. ……………. 27
II.2.3. GrovePi, Inconvénients: ………………………….. ………………………….. ………………………….. ……….. 28
II.3. Arduino uno : ………………………….. ………………………….. ………………………….. ………………………….. .. 28
II.3.1. Arduino uno : caractéristiques techniques : ………………………….. ………………………….. …………. 28
II.4. Le Shield GSM/GPRS: ………………………….. ………………………….. ………………………….. ………………. 29

5
II.4.1. Caractéristiques techniques: ………………………….. ………………………….. ………………………….. …. 29
II.5. Relai : ………………………….. ………………………….. ………………………….. ………………………….. ………….. 30
II.6. Le module DHT11 : ………………………….. ………………………….. ………………………….. …………………… 30
II.6.1. Caractéristiques: ………………………….. ………………………….. ………………………….. ………………….. 31
II.7. La sonde HC -SR04 : ………………………….. ………………………….. ………………………….. ………………….. 31
II.7.1. Principe de fonctionnement de la sonde HC -SR04 ………………………….. ………………………….. .. 31
II.7.2. Mesure de distance par ultrasons ………………………….. ………………………….. ……………………….. 32
II.8. Le moteur pas à pas : ………………………….. ………………………….. ………………………….. …………………. 32
II.8.1. Caractéristiques techniques ………………………….. ………………………….. ………………………….. …… 33
II.9. Le servomoteur Tower Pro : ………………………….. ………………………….. ………………………….. ……….. 33
II.9.1. Fonctionnement d’un servomoteur: ………………………….. ………………………….. ……………………. 33
II.9.2. Caractéristiques techniques : ………………………….. ………………………….. ………………………….. … 34
II .10. Le capteur infrarouge PIR : ………………………….. ………………………….. ………………………….. ……… 34
II.10.1. Caractér istiques de PIR : ………………………….. ………………………….. ………………………….. …….. 35
II.10.2. Les capteurs de gazes MQ -X : ………………………….. ………………………….. …………………………. 35
II.11. Détecteur de flamme : ………………………….. ………………………….. ………………………….. ………………. 37
II.11.1. Caractéristiques ………………………….. ………………………….. ………………………….. …………………. 37
II.12. Détecteur de lumière : ………………………….. ………………………….. ………………………….. ………………. 37
II.13. Les LEDs : ………………………….. ………………………….. ………………………….. ………………………….. …. 38
II.14. Les afficheurs à cristaux liquide(LCD): ………………………….. ………………………….. ………………….. 38
II.14.1. Le pilotage via le bus I2C : ………………………….. ………………………….. ………………………….. …. 39
II.15. La camera du Raspberry Pi : ………………………….. ………………………….. ………………………….. ……… 39
II.15.1. Caractéris tiques techniques : ………………………….. ………………………….. ………………………….. . 40
II.16. Le Système RFID : ………………………….. ………………………….. ………………………….. ………………….. 40
II.16.1. Qu'est -ce qu'un système RFID ? ………………………….. ………………………….. ………………………. 40
II.16.2. Comment fonctionne un système RFID ? ………………………….. ………………………….. ………….. 41
II.17. Le Capteur d’eau : ………………………….. ………………………….. ………………………….. …………………… 41
II.17.1. Caractéristiques techniques: ………………………….. ………………………….. ………………………….. .. 41
II.18. Pompe : ………………………….. ………………………….. ………………………….. ………………………….. ……… 42
II.19. Electrovanne : ………………………….. ………………………….. ………………………….. …………………………. 43
II.19.1. Caractéristiques techniques ………………………….. ………………………….. ………………………….. …. 43
II.20 Ventilateu r : ………………………….. ………………………….. ………………………….. ………………………….. .. 44
II.21. Contraintes matériels : ………………………….. ………………………….. ………………………….. ……………… 44
III. Description des logiciels : ………………………….. ………………………….. ………………………….. ………………. 46
III.1.1. HTML ………………………….. ………………………….. ………………………….. ………………………….. ….. 46
III.1.2. CSS ………………………….. ………………………….. ………………………….. ………………………….. ……… 46

6
III.1.3. PHP ………………………….. ………………………….. ………………………….. ………………………….. ……… 47
III.1.4. JavaScript ………………………….. ………………………….. ………………………….. …………………………. 47
III.1.4. Python ………………………….. ………………………….. ………………………….. ………………………….. ….. 48
III.1.5. Langage Arduino ………………………….. ………………………….. ………………………….. ……………….. 48
Chapitre III : Développent et Réalisation ………………………….. ………………………….. ………………………….. … 49
I. Préparation de l’environnement Raspberry Pi 2 ………………………….. ………………………….. ………………… 50
I.1. Préparation matériel : ………………………….. ………………………….. ………………………….. ………………….. 50
I.2. Préparation logiciels ………………………….. ………………………….. ………………………….. ……………………. 51
I.2.1. Préparation de la carte SD ………………………….. ………………………….. ………………………….. …………. 51
I.2.1.1. Téléchargement des prérequis ………………………….. ………………………….. ………………………….. 51
I.2.1.2. Déployer l’image sur la carte SD ………………………….. ………………………….. ……………………… 51
I.2.2. Installation et configuration de Raspbian : ………………………….. ………………………….. ……………….. 54
I.2.2.1. Installation de Raspbian: ………………………….. ………………………….. ………………………….. …….. 54
I.2.2.2. Configura tion de Raspbian : ………………………….. ………………………….. ………………………….. .. 54
I.2.2.2.1. Étendre le stockage : ………………………….. ………………………….. ………………………….. ……….. 54
I.2.3. Se connecter en SSH au Raspberry pi : ………………………….. ………………………….. ……………………. 55
I.2.3.1. Activation du SSH : ………………………….. ………………………….. ………………………….. …………… 56
I.2.3.2. SSH sous Windows : ………………………….. ………………………….. ………………………….. ………….. 59
I.2.4. Connexion à la Raspberry Pi sur un poste distant (VNC) : ………………………….. ……………………… 60
I.2.4.1. Le client VNC : ………………………….. ………………………….. ………………………….. ………………… 61
I.2.4.2. Démarrer VNC directement au démarrage ………………………….. ………………………….. …………. 62
I.2.5. Installation et configuration WIFI : ………………………….. ………………………….. …………………………. 63
I.2.5.1. Préparation du Raspberry Pi : ………………………….. ………………………….. ………………………….. 63
I.2.5.2. Installation de wpasupplicant et wpagui: ………………………….. ………………………….. …………… 63
I.2.5.3. Configuration du Wifi : ………………………….. ………………………….. ………………………….. ………. 64
I.2.6. La vidéo -surveillance en ligne avec la Raspberry Pi et caméra USB : ………………………….. ……… 67
I.2.6.1. Motion, un logiciel pour la surveillance vidéo et l’accès en ligne : ………………………….. ……. 67
I.2.6.2. Installation de motion sur le Raspberry Pi : ………………………….. ………………………….. ……….. 67
I.2.6.3. Configurer Motion sur le Raspberry Pi : ………………………….. ………………………….. ……………. 67
I.2.6.4. Affichage de la vidéo -surveillance :………………………….. ………………………….. ………………….. 69
I.2.7. Installation d’un serveur web sur le Raspberry Pi : ………………………….. ………………………….. ….. 70
I.2.7.1. Installation des paquets requis : ………………………….. ………………………….. ……………………….. 70
I.2.7.2. Démarrer le serveur Apache2 : ………………………….. ………………………….. ………………………… 70
I.2.7.3. Accéder au serveur : ………………………….. ………………………….. ………………………….. …………… 71
I.2.7.3. Vérifier que PHP fonctionne ………………………….. ………………………….. ………………………….. .. 71
I.2.8. Installation de wiringPi : ………………………….. ………………………….. ………………………….. …………… 72

7
I.2.10. Communicati on par USB entre Raspberry Pi et Arduino : ………………………….. ……………………. 75
I.2.10.1. Installation de la bibliothèque pyserial : ………………………….. ………………………….. ………….. 75
I.2.11. Installation de Flask (Framework) : ………………………….. ………………………….. ………………………. 75
II. Réalisation et test: ………………………….. ………………………….. ………………………….. ………………………….. .. 76
II.1. Arrosage automatique des plantes : ………………………….. ………………………….. ……………………… 77
II.2. Remplissage automatisé du château d’eau ………………………….. ………………………….. ……………… 78
II.3. Allumage automatique de la lampe du couloir par détection de mouvement : ……………………… 79
II.4. Automatisation de la porte de la maison : ouverture/fermeture par RFID ………………………….. .. 79
II.5. Lecture des déférents capteurs de la maison et afficher les mesures captés dans un afficheur
LCD. ………………………….. ………………………….. ………………………….. ………………………….. ………………. 80
II.6. Envoi d’un message SMS pour informer l’utilisateur que la température est très élevée: ……… 81
II.7. Envoi d’un message SMS pour informer l’utilisateur qu’il y a une fuite de gaz: ………………….. 83
II.7. Développement web : ………………………….. ………………………….. ………………………….. …………….. 85
II.7.1. Interface web principale : ………………………….. ………………………….. ………………………….. …….. 85
II.7.2. Interface web pour commander l’éclairage : ………………………….. ………………………….. ……….. 85
II.7.4. Interface web pour la vidéosu rveillance : ………………………….. ………………………….. ……………. 87
II.7.5. Interface web pour contrôler les paramètres de la maison : ………………………….. ………………… 87
II.8. les interfaces Web sous Android : ………………………….. ………………………….. ………………………….. .. 88
II.9. Exécution de tous les programmes réalisés en arrière -plan : ………………………….. …………………….. 90
Conclusion : ………………………….. ………………………….. ………………………….. ………………………….. ………… 90
Conclusion Générale: ………………………….. ………………………….. ………………………….. ………………………….. . 91
Bibliographies: ………………………….. ………………………….. ………………………….. ………………………….. ……….. 92
Webographie: ………………………….. ………………………….. ………………………….. ………………………….. …………. 92

Liste des figures

Figure 1: Structure générale de projet ………………………….. ………………………….. ………………………….. …….. 19
Figure 2: Architecture de projet ………………………….. ………………………….. ………………………….. …………….. 21
Figure 3: Raspberry Pi 2 ………………………….. ………………………….. ………………………….. ……………………….. 21
Figure 4: GrovePi+ ………………………….. ………………………….. ………………………….. ………………………….. ….. 25
Figure 5: Capteurs de GrovePi+ ………………………….. ………………………….. ………………………….. …………….. 26
Figure 6: Montage des capteurs avec GrovePi+ ………………………….. ………………………….. ……………………. 27
Figure 7: Montage de GrovePi+ avec Raspberry Pi 2 ………………………….. ………………………….. ……………. 27
Figure 8: Shield GSM/GPRS de RPi ………………………….. ………………………….. ………………………….. ………. 29
Figure 9: Relai ………………………….. ………………………….. ………………………….. ………………………….. ………… 30
Figure 10: Capteur de température et humidité(DHT11) ………………………….. ………………………….. ……….. 30
Figure 11: Capteur ultrason (HC -SR04) ………………………….. ………………………….. ………………………….. ….. 31
Figure 12: P rincipe de mesure de distance pas ultrasons ………………………….. ………………………….. ……….. 32

8
Figure 13: Moteur pas à pas ………………………….. ………………………….. ………………………….. ………………….. 32
Figure 14: Servomoteur Tower Pro ………………………….. ………………………….. ………………………….. ………… 33
Figure 15: Capteur infrarouge PIR ………………………….. ………………………….. ………………………….. …………. 34
Figure 16: Capteur de gaz MQ -X ………………………….. ………………………….. ………………………….. …………… 35
Figure 17: Détecteur de flamme ………………………….. ………………………….. ………………………….. …………….. 37
Figure 18: Détecteur de lumière ………………………….. ………………………….. ………………………….. …………….. 37
Figure 19: LEDs ………………………….. ………………………….. ………………………….. ………………………….. ……… 38
Figure 20: Afficheur à cristaux liquide(LCD) ………………………….. ………………………….. ……………………… 38
Figure 21: Bus I2C ………………………….. ………………………….. ………………………….. ………………………….. ….. 39
Figure 22: Caméra de Raspberry Pi ………………………….. ………………………….. ………………………….. ………… 39
Figure 23: Système RFID ………………………….. ………………………….. ………………………….. ……………………… 40
Figure 24: Capteur D'eau ………………………….. ………………………….. ………………………….. ………………………. 41
Figure 25: Pompe ………………………….. ………………………….. ………………………….. ………………………….. ……. 42
Figure 26: Electrovanne ………………………….. ………………………….. ………………………….. ……………………….. 43
Figure 27: Ventilateur ………………………….. ………………………….. ………………………….. ………………………….. 44
Figure 28: Shield GSM Raspberry ………………………….. ………………………….. ………………………….. …………. 44
Figure 29 : Shield GSM arduino ………………………….. ………………………….. ………………………….. ……………. 44
Figure 30: Camera Raspberry ………………………….. ………………………….. ………………………….. ………………… 45
Figure 31: Camera USB Logitech ………………………….. ………………………….. ………………………….. ………….. 45
Figure 32:Pompe (Arduino, Raspberry) ………………………….. ………………………….. ………………………….. ….. 45
Figure 33: Pompe d'essuie -glace ………………………….. ………………………….. ………………………….. ……………. 45
Figure 34: Electrovanne (Arduino) ………………………….. ………………………….. ………………………….. ………… 45
Figure 35: Pompe machine à lave ………………………….. ………………………….. ………………………….. ………….. 45
Figure 36: Clé WIFI R aspberry ………………………….. ………………………….. ………………………….. ……………… 45
Figure 37: Clé WIFI TP -Link ………………………….. ………………………….. ………………………….. ………………… 45
Figure 38: Extraire l’image de Raspbian ………………………….. ………………………….. ………………………….. …. 52
Figure 39: Déployer Raspbian avec Win32 Disk Imager ………………………….. ………………………….. ……….. 52
Figure 40: Démarrer l’écriture des données sur la carte microSD ………………………….. ……………………….. 53
Figure 41: Transfert des données sur la carte microSD ………………………….. ………………………….. ………… 53
Figure 42: Transfert de données est terminé ………………………….. ………………………….. ………………………… 53
Figure 43: Interface graphique de Raspbian ………………………….. ………………………….. …………………………. 54
Figure 44: Etendre le stockage ………………………….. ………………………….. ………………………….. ………………. 55
Figure 45: Réseau local ………………………….. ………………………….. ………………………….. ………………………… 55
Figure 46: Connexion en SSH ………………………….. ………………………….. ………………………….. ……………….. 56
Figure 47: Démarrer raspi -config ………………………….. ………………………….. ………………………….. …………… 57
Figure 48: Menu raspi -config ………………………….. ………………………….. ………………………….. ………………… 57
Figure 49: Valider le serveur SSH ………………………….. ………………………….. ………………………….. ………….. 58
Figure 50: Serveur SSH est valide ………………………….. ………………………….. ………………………….. ………….. 58
Figure 51: Interface puTTy ………………………….. ………………………….. ………………………….. …………………… 59
Figure 52: F enêtre SSH ………………………….. ………………………….. ………………………….. ………………………… 60
Figure 53: Fenêtre VNC ………………………….. ………………………….. ………………………….. ………………………. 61
Figure 54:Demande mot de pass e………………………….. ………………………….. ………………………….. …………… 62
Figure 55: Contrôle de Raspberry pi à distance depuis ordinateur ………………………….. ……………………….. 62
Figure 56: Fenêtre wpa -gui ………………………….. ………………………….. ………………………….. …………………… 64
Figure 57: R éseaux détectés par notre clé. ………………………….. ………………………….. ………………………….. . 65
Figure 58: Saisie de mot de passe ………………………….. ………………………….. ………………………….. …………… 65
Figure 59: RPi est connecté en wifi ………………………….. ………………………….. ………………………….. ………… 66
Figure 60: Enregistre ment de configuration ………………………….. ………………………….. …………………………. 66

9
Figure 61: Vidéo surveillance en ligne ………………………….. ………………………….. ………………………….. ……. 69
Figure 62:Accède à serveur apache ………………………….. ………………………….. ………………………….. ………… 71
Figure 63 Tableau g énéré par la commande phpinfo sur une raspberry . ………………………….. ………………. 72
Figure 64: Installation de git ………………………….. ………………………….. ………………………….. ………………….. 72
Figure 65: Vérification si GrovePi+ est connecté ………………………….. ………………………….. …………………. 74
Figure 66: Programme pour faire clignoter une LED ………………………….. ………………………….. …………….. 75
Figure 67: Test de l'arrosage ………………………….. ………………………….. ………………………….. …………………. 77
Figure 68: Test de l’éclairage par détection de mouvement ………………………….. ………………………….. ……. 79
Figure 69: Test automatisation de porte de garage ………………………….. ………………………….. ………………… 80
Figure 70: Affichage des déférents paramètres de la ma ison. ………………………….. ………………………….. … 81
Figure 71: Test envoi de SMS si la température est très élevée (cuisine et douche). ………………………….. . 82
Figure 72: Message SMS pour informer l’usager que la température est très enlevée. ……………………….. 83
Figure 73: Te st envoi de SMS s’il y a une fuite de gaz (cuisine et douche). ………………………….. …………. 84
Figure 74: Message SMS pour informer l'usager qu'il y a une fui te de gaz ………………………….. …………… 84
Figure 75: Interface web principale ………………………….. ………………………….. ………………………….. ………… 85
Figure 76: Interface web pour commander l'éclairage ………………………….. ………………………….. …………… 86
Figure 77: Interface web pour commander les portes et les volets ………………………….. ………………………. 86
Figure 78: Interface web pour la surveillance en ligne ………………………….. ………………………….. ………….. 87
Figure 79: Interface web pour contrôler les paramètres de la maison ………………………….. …………………… 87
Figure 80: Interfaces web principale sous Android ………………………….. ………………………….. ……………….. 88
Figure 81 : Interfaces web pour commander l’éclairage sous Android ………………………….. …………………. 88

Liste des tableaux :

Tableau 1 : Les caractéristiques techniques de Raspberry Pi 2 ………………………….. ………………………….. . 23
Tableau 2 : Les caractéristiques techniques d’Arduino uno ………………………….. ………………………….. ……. 29
Tableau 3 : Les capteurs MQ -X ………………………….. ………………………….. ………………………….. …………….. 37
Tableau 4 : Changement de matériels ………………………….. ………………………….. ………………………….. …….. 45
Tableau 5 : Matériel pour pouvoir utiliser le RPi ………………………….. ………………………….. ………………….. 51

10

Liste des sigles

CO Monoxyde de carbone
CSI Camera Serial Interface
CSS Cascading Style Sheets
GPIO General Purpose Input/Output
GPRS General Packet Radio Service
GSM Groupe spécial mobile
HDMI High Definition Multimedia Interface
HTM L Hypertext Markup Language
I2C Inter -Integrated Circuit
LCD Liquid Crystal Display
LED Light-emitting diode
MMS Multimedia Messaging Service
PHP Hypertext Preprocessor
PIR Passive Infrared
RFID Radio frequency identification
RRi Raspberry Pi
SMS Short Message Service
Soc System on a chip
SPI Serial Peripheral Interface
SSH Secure Sh ell
USB Univ ersal Serial Bus
VNC Virtual Network Computing

11

Introduction G énérale

A vec la démultiplication des appareils électroniques dans les foyers, la possibilité de diriger
ceux -ci à distance devient de plus en plus intéressante. Pouvoir régler son chauffage avant
d’arriver chez soi, ou déclencher la mise en route automatique de sa cafetière le matin , devient
accessibles au plus grand nombre d’usagers . Les principaux acteur s actuels du marché de la
domotique proposent des gammes performantes, mais à des prix excessivement élevés.
Aujourd’hui, avec l’avènement des mini -ordin ateurs embarqués (Raspb erry, Beagleb one,
pcDuino …), la domotique bon marché s’ouvre à un large public, mais nécessite tout de même
une certaine base de connaissance en électronique, informat ique, etc.
C’est ici qu’intervient notre p rojet de fin d’études intitulé « Conception et Réalisation d’une
Maison Intelligente (Smart Home) Contrôlé via Interface Web .
L’objectif ici, est de synthétiser à travers une interface web simple et accessible depu is
n’importe où, les principales fonctions domotiques que l’on cherche à contrôler (éclairage ,
vidéosurveillance, ouvertures /fermeture …). Celles -ci, exploitées depuis un système
embarqué à base de processeurs ARM et système d’exploitation Linux embarqué.
Ce rapport, décrit étape par étape, les méthodes employées permettant l’aboutissement d’un
tel projet, du cahier des charges, aux phases finales de test.

12

Chapitre I : Présentation générale

13
Intro duction :
La réalisation de notre projet nécessite une étude approfondie sur certaines notions qui
touchent non seulement le cadre général du projet, mais aussi son implémentation. Pour bien
assimiler ces différentes notions, nous détaillons, dans ce chapitre , la notion de la
domotique et le confort .
I. Le système domotique :
Avec le développement des équipements électriques du logement, un nombre de plus en
plus grand des systèmes électriques permettent de piloter de façon simple et
confortable l’ensemble de ces équipements notamment l’éclairage, le climatiseur, les
ouvrants, l’arrosage et le système s alarme. On appelle ces systèmes « la domotique ».
Les progrès technologiques, notamment l'informatique, l es télécommunication s et
l'électronique ont permis le développement de s systèmes de transmission, d e la
commande à distance et favoris e l'éclosion d'une offre abon dante de nouveaux services pour
les occupants des logements .
I.1. Qu’est-ce que la domotique?
Les systèmes do motiques visent à assurer des fonctions de sécurité, de confort, de
gestion d'énergie et de communications. Les appareils de la maison sont intégrés au
sein des systèmes qui doivent communiquer entre eux afin de gérer des automati smes .
La domotique s’agit d’un système électrique qui permet de communiquer avec des
télécommandes ou des boutons poussoirs ou d’une manière vocale afin de rendre le contrôle
de la maison plus facile.
Les systèmes domotiques permettent de comm ander d’un simple geste une ou plusieurs
actions (Exemples: baisse du chauffage, réglage de l’éclairage, descente des volets
motorisés…).
Une application domotique nécessite, pour son fonctionnement, de pouvoir capter
une information et d'actio nner par la suite une commande. Pour cela, il faut pouvoir
faire transférer l'information entre différents dispositifs.

14
Le système permet de programmer des automatismes sources de confort de
sécurité et d'économie d'énergie : l’ ouverture et la fermeture automatique des volets,
l’arrosage automatique en fonction du climat, la mise en sécurité des stores en cas de vent
violent, la gestion de l’éclairage en fonction de la pré sence et de la luminosité, etc …
I.2. Pourquoi la do motique ?
La domotique est l'automatisation des fonctions techniques à des fins d'économie
d'énergie, d'augmentation du confort, de la sécurité e t de la mobilité pour les
constructions nouvelle s comme pour les rénovations .
I .2.1. L e confort :
L'accroissement du niveau de confort des habitations a été le premier objectif de
la domotique. Les fonctions de commande à distance simples et qui agissent sur différents
types d'appareils sont maintenant banalisées.
En effet, i l est possible d'activer à distance des fonctions qui a pour but de recréer une
ambiance ou un état prédéfinis dans la maison. Il est donc facile d'imaginer un
nombre illimité des fonctions qui pourraient faciliter le confort quotidien d ans la maison (par
exemple la cafetière s'allume et les volets s'ouvrent à 7h tous les matins).
I.2.2. La sécurité :
En cas de menace pour la sécurité de la maison, tout composant domotique est capable
d'émettre un message sur l'installation qui sera rep ris et traité par un module spécialisé pour
la surveillance. Ce module peut alors déclencher n'importe quel composant présent
dans l'installation afin de simuler une présence (lumière qui s'allume, télévision, musique) ou
bien renforcer la sécu rité (verrouillage de toutes les serrures, déclenchement des
alarmes). Ces actions peuvent se faire selon un choix particulier, selon une durée ou
un nombre de détections ou bien directement par téléphone ou par un ordinateur à dista nce.
Ces actions peu vent être aussi diverses que :
 Enclenchement de certaines lumières intérieurs pour simuler une présence (des
centaines de combinaisons aléatoires sont possibles)
 Enclenchement d’un signal acoustique destiné à décourager les « visiteurs »

15
 Création et envois d’un SMS sur votre portable
 Composition d’un numéro de téléphone afin d’activer un service de sécurité
I .2.3. La gestion d’énergie:
Un système domotique peut diminuer de 40% à 70% la facture d'énergie du domicile sans
toucher au confort de vie. La domotique va influencer la dépense d'énergie sur deux
éléments :
 La suppression de la conso mmation électrique inutile : L'économie d'énergie, c'est
avant tout supprimer une énergie dépensée alors qu'elle n'es t pas utilisée. En effet, le
gaspillage d'énergie peut être limité avec des produits domotiques afin de ne pas avoir de
lampe oubliée à la cave pendant plusieurs jours, un éclairage surdimensionné ou
une lampe allumée en plein jour.
 La distr ibution de chaleur dans les pièces : Une régulation « intelligente » de l’énergie
dans les pièces est essentielle, non seulement pour les factures d’énergie, mais aussi pour
le confort de vie. Le réglage de température est simple et visuel, chaque pièce pe ut
bénéficier d’un réglage qui lui est propre (absence/présence, jour/nuit) et une
commande à distance par téléphone est possible afin de mettre la maison sur «confort» ou
bien « économie » lors de l'absence des habitants.
Conclusion :
Dans ce chapitre, nous avons décrit les bases théoriques des modules à développer
dans notre projet.

16

Chapitre II : Cahier des charges

17
Introduction :
La constitution du cahier des charges est l’étape numéro 1 du projet. Il rassemble les
principales fonctions de notre système, les objectifs à réalisées , les contraintes , ainsi que la
structure générale de notre système.
I. Cahier des charges :
Notre projet « Conception et Réalisation d’une Maison Intelligente (Smart Home)
Contrôlé via Interface Web » a été réalisé dans le but de répondre à un ensemble de
besoins qui spécifient précisément les services demandés et attendus par l’u sager . Ces
services, qu i sont regroupés sous le terme « domotique », concerne nt principalement le
confort (commande à distance d'appareils ou équipements,..), la sécurité ( la surveillance,
protection contre les intrusions, détection d'incendie , détection de gaz, détection de CO, ),
l'économie d'énergie (gestion du climati seur, d’éclairage …).
En effet, notre système permet de commander de façon simple et confortable
l’ensemble de s équipements électriques notamment l’éclairage, les climatiseurs, les
ouvrants, l’arrosage et le système d’alarme et de contrôle r l’ensemble de s paramètres tel que
la température, l’humidité, les gazes , le n iveau d’eau dans le château…
De plus l’utilisateur a bes oin d’un tel système de commande , lorsqu’il est engagé dans
son travail. Par exemple, lorsqu’il part le matin de son logement, il peut oublier de désactiver
le climatiseur ou d’ouvrir les fenêtres. En outre, lorsque l’utilisateur sort en
déplacement inattendu, il peut oublier aussi d’activer le système d’alarme et il ne peut pas
faire l’arrosage.
Donc, le but de no tre projet est de surmonter ces problèmes en offrant le service
«Contrôle via Interface Web » avec lequel il peut par une simple interface web de
son smartphone ou bien son PC de contrôler les paramètres de la maison, commander les
équipements électriques, et la vidéosurveillance de son domicile à distance.

18
II. Les O bjectifs à réaliser:
 Automatisation de l’arrosage des plantes.
 Automatisation de remplissage du château d’eau.
 Allumage automatique de la lampe de couloir par détectio n de mouvement.
 Automatisation de l a porte de garage : ouverture/ fermeture par RFID.
 Lecture d es déférents capteurs de la maison et afficher les mesures captés dans un
afficheur LCD.

 Si la température est anormale ou s’il y a une fuite de gaz :
 Envoi d’un message SMS pour informer l’utilisateur .
 Lancement de ventilation .
 Déclenchement de système d’alarme .

 Développement d’une interface web principale qui inclue les quatre interfaces web
suivantes :
 Une interface web pour commander l’éclairage.
 Une interfa ce web pour commander des portes et des volets.
 Une interface web pour la vidéo surveillance.
 Une interface web pour contrôler les déférents capteurs de la maison tel que la
température, l’humidité, butane de cuisine, monoxyde de carbone (CO) de
douche, le niveau d’eau dans le château…
 Exécution de tous les programmes en arrière -plan.
III. Contraintes :
 Ce projet de fin d’études est à réaliser durant une période de six mois.
 Rédaction de rapport de PFE .

19
IV. Structure générale de projet :

Figure 1: Structure générale de projet
Le fonctionnement du système est simple, il suffît d’ouvrir l’ interface web sur le
smartphone ou bien un ordinateur pour commander ou contrôler les déférents équipements
électrique s de la maison intelligente .
Conclusion :
Tout au long de ce chapitre, nous avons pu situer le cahier des charges de notre projet de
fin d’études, les objectifs à réalis er, les contraintes et dernièrement la structure générale de
notre projet .
Dans le chapitre suivant, nous donnerons une idée sur le matériel utilisés.

20

Chapitre III : Architecture du projet, Description de
matériel et logiciel utilisée

21
I. Architecture du projet:
Le diagramme ci -dessous résume l’architecture géné rale de notre projet sous forme d‘un
schéma :

Figure 2: Architecture de projet
Pour une question de lisibilité et de compréhension, l’intégralité du fonctionnement
logiciel sera exprimée dans les paragraphes suivants.
II. Descri ption de matériel :
II.1 Raspberry Pi 2:

Figure 3: Raspberry Pi 2

22
II.1.1 Raspberry Pi 2, Présentation:
Raspberry Pi 2 est une carte mère d’un mini -ordinateur qui peut être branchée à
n’importe quel périphérique (souris, clavi er…). Cette carte est fabriquée pour aider à étudier les
ordinateurs et pour représenter un moyen d’apprentissage de la programmation informatique en
plusieurs langages (python, java, PHP …) .Elle est aussi capable de lire les vidéos à haute
définition et même à installer des jeux vidéo.
L’intérêt d’utiliser le Raspberry PI 2 est sa capacité d’interaction avec le monde extérieur
et d’exécuter plusieurs variantes du système d'exploitation libre (GNU/Linux, Raspbian
Debian …) et des autres logiciels compatibles.
II.1.2. Raspberry Pi 2, caractéristiques :
On va faire un petit résumé de chacune de ces caractéristiques.
Voici tableau récapitulatif !

Raspberry Pi 2 type B
35€
Ram 1Go
Nombre de processeur 4
Processeur ARMv7 (~6x plus puissant)
Cadenc e du processeur 900 Mhz
Ports 4 USB 2.0
1 port RJ45 (Ethernet 10/100)
1 port HDMI
1 audio Jack 3,5 mm
GPIO 40 broches

23
Puissance 600 mA (3,5 W)
Stockage Carte MicroSD
GPIO 40 broches
Tableau 1 : Les caractéristiques techniqu es de Raspberry Pi 2
II.1.3. Raspberry Pi 2, Que peut -on faire?
L’une des grandes forces du Raspberry Pi, c’est qu’il peut être utilisé dans une grande
variété de projets. C’est une plate -forme souple, de divertissement, de travail ou
d’expérimentation, vo us permettant aussi bien de regarder des vidéos et de surfer sur le Web, que
de bidouiller, d’apprendre ou de réaliser des montages électroniques. Voici quelques -unes de ses
applications.
1. Un véritable ordinateur
Il ne faut pas oublier que le Raspberry Pi e st avant tout un ordinateur et qu’il peut donc
être utilisé com me tel. Après son installation , vous pouvez choisir de le démarrer dans un
environnement de bureau graphique incluant un navigateur web, ce qui constitue la manière la
plus courante d’utiliser un ordinateur de nos jours. Au -delà du Web, vous pouvez installer une
grande variété de logiciels libres et gratuits comme la suite bureautique LibreOffice qui permet
de travailler sur des documents texte et des feuilles de calculs quand vous n’avez pas de
connexion à Internet.
2. Un support d’apprentissage de la programmation
Le Raspberry Pi étant à l’origine un outil pédagogique pour encourager l’apprentissage
de l’informatique, il est fourni avec des interpréteurs et des compilateurs pour différents langages
de programmation. En particulier, pour le débutant, il y a Scratch, un langage de programmation
graphique créé par le MIT. Mais si vous voulez commencer à coder tout de suite, le langage de
programmation Python est un bon moyen de vous lancer : vous en trouverez les bases au chapitre
précédent. Vous pouvez également programmer sur votre Raspberry Pi dans d’autres langages
tels que C, Ruby, Java ou Perl. Une plate -forme pour interagir avec le monde physique

24
Le Ra spberry Pi se différencie d’un ordinateur standard non seulement par son prix et sa
taille mais aussi par sa capacité à s’intégrer dans des projets électroniques. Dans le chapitre
suivant , nous vous montrerons co mment utiliser le Raspberry Pi.
3. Un outil ind ispensable pour les makers
Les makers et bidouilleurs disposent déjà d’un très grand choix de plates -formes et de
briques électroniques pour construire des projets utilisant les nouvelles technologies. Les cartes à
microcontrôleur comme Arduino sont récemm ent devenues très populaires grâce à leur
simplicité d’utilisation. Mais les nouvelles plates -formes à base de System on a Chip (SoC)
comme le Raspberry Pi diffèrent des microcontrôleurs traditionnels sur de nombreux points. En
réalité, un Raspberry Pi par tage plus de caractéristiques avec votre ordinateur qu’avec Arduino.
Cela ne veut pas dire que le Raspberry Pi est mieux qu’un microcontrôleur traditionnel,
ils sont tout simplement différents. Par exemple, si vous voulez réaliser un simple thermostat, il
sera probablement plus approprié d’utiliser un Arduino Uno ou un microcontrôleur similaire,
pour des raisons de simplicité, de coût et de consommation. Mais si vous souhaitez pouvoir
modifier les paramètres de ce thermostat par le Web et télécharger son hi storique dans un fichier,
le Raspberry Pi constituera un meilleur choix.
Le choix de l’un ou l’autre dépend des spécifications et des contraintes de votre projet,
mais vous n’êtes pas nécessairement obligé de chois ir entre les deux. Au chapitre suivant , vous
verrez comment utiliser le Raspberry Pi pour programmer Arduino et comment les faire
communiquer ensemble.
4. Un lecteur multimédia
Grâce à ses sorties vidéo (HDMI et composite), le Raspberry Pi peut être facilement
branché sur un téléviseur. Il est aussi doté d’une puissance processeur suffisante pour décoder
une vidéo haute définition en plein écran. Tirant parti de ces avantages, les contributeurs
de XBMC , un lecteur multimédia libre et open source, ont porté leur pro jet sur le Raspberry Pi.
Ce lecteur, qui supporte de nombreux formats multimédias, offre une interface avec de grands
boutons et de gros caractères, ce qui le rend facile à utiliser depuis votre canapé. Il transforme
votre Raspberry Pi en un home cinéma en tièrement personnalisable.

25
5. Un outil de programmation bas niveau
La plupart des développeurs écrivent des programmes qui tournent sur un système
d’exploitation comme Windows, Mac OS, ou, dans le cas de Raspberry Pi, Linux. Mais si vous
écriviez du code qui s’exécute directement sur le processeur sans passer par un système
d’exploitation ? Avec votre Raspberry Pi, vous pouvez même écrire votre propre système
d’exploitation à partir de rien si cela vous branche. Le laboratoire d’informatique de l’université
de Cambridge a ainsi publié un cours gratuit en ligne qui vous guide dans l’écriture de votre
propre système d’exploitation en langage machine.
6. Linux et Raspberry Pi
Un ordinateur stan dard fonctionne avec un système d’exploitation comme Windows, OS
X ou Linux. C’est ce système qui démarre quand vous allumez votre machine et qui fournit à vos
logiciels un accès aux fonctionnalités matérielles de votre ordinateur. Par exemple, si vous cod ez
une application qui utilise Internet, vous pouvez, pour ce faire, utiliser les fonctions fournies par
le système d’exploitation. Vous n’avez pas besoin de comprendre et d’écrire du code pour
chaque modèle d’interface Ethernet ou Wi -Fi disponible.
Comme tous les autres ordinateurs, le Raspberry Pi utilise un système d’exploitation.
Celui fourni par défaut est une version de GNU/Linux appelée Raspbian. GNU/Linux est idéal
pour le Raspberry Pi car il est libre et open source. Non seulement il rend la plate -forme bon
marché, mais aussi très souple et personnalisable. Et vous n’êtes pas limité à Raspbian puisqu’il
existe d’autres versions (encore appelées distributions) différentes de Linux que vous pouvez
charger dans le Raspberry Pi. Quelques systèmes non L inux sont également disponibles .
II.2. GrovePi pour Raspberry Pi :

Figure 4: GrovePi+

26
Le GrovePi pour Raspberry Pi est un système de matériel qui n ous aide à connecter,
programmer et commander des capteurs de contrôle pour n ous permettre de construire n os
propres dispositifs intelligents. Il est conçu pour fonctionner avec toutes les versions du
Raspberry Pi.
II.2.1. GrovePi, Description :
 Vous aide à construire vos propres dispositifs intelligents
 Vous permet d'être rapidem ent opérationnel avec le GrovePi
 Peut connecter, programmer, et commander des capteurs pour vous permettre de
construire vos propres dispositifs intelligents

Figure 5: Capteurs de GrovePi+
La carte GrovePi se connecte à Raspberry Pi et au système de capteur GrovePi. Ce kit
nous permet de connecter facilement des centaines de capteurs au Raspberry Pi. Il suffit de
brancher un câble du GrovePi à n otre capteur et d'écrire des programmes sur n otre ordinateur
Raspberry Pi pour contrôle r et automatiser tout dispositif.

27

Figure 6: Montage des capteurs avec GrovePi+
La carte d’extension se monte facilement sur le Raspberry Pi.

Figure 7: Montage de GrovePi+ avec Raspberry Pi 2
Elle conti ent un microcontrôleur de chez Atmel, l’ Atmega 328 . Celui -ci est relié via les
bus I2C et SPI au Raspberry Pi. On peut du coup depuis le Raspberry Pi :
 reprogrammer le microprogram me de l’Atmega 328.
 communiquer via i2c.
Le microprogramme de base est assez bien fait et permet d’interfacer pratiquement tous les
capteurs/actuateurs de la famille Grove Pi. On peut le télécharger depuis GitHub, en plus il y a
des exemples d’interfaces avec plusieurs langages de programmation comme Python.

II.2.2. GrovePi, Avantages:
 Codes sources d’exemples souvent disponibles

28
 Connecteur « standard » permettant de relier facilement un capteur avec une carte
GrovePi
 Un nombre important de capteurs différents existe, ce qui permet d’éviter de sortir le fer
à souder pour évaluer un capteur spécifique.
II.2.3. GrovePi, Inconvénients:
 le connecteur « standard » est tout sauf standard, no us trouverons beaucoup de
discussions sur les forums pour trouver un connecteur compatible dont la source serait
plus co nnue. Mais cela ne devrait pas nous concerner à moins que nous voulions
développer n os propres modules Grove.
II.3. Arduino uno :
La car te ARDUINO UNO est une carte microcontrôleur basée sur l’ATmega328. Elle est
dotée de 14 broches Entrées/Sorties numériques dont 6 en PWM et 6 configurables en entrées
analogiques, d'un oscillateur à quartz 16 MHz, d'une connexion USB, d'un jack d'alimenta tion,
d'un support ICSP et d'un bouton reset.
La carte ARDUINO UNO est livrée prête à fonctionner, il suffit de la connecter à un
ordinateur par le câble USB et de l'alimenter à l'aide d'un adaptateur USB ou de piles.
II.3.1. Arduino uno : caractéristiques techniques :
Arduino uno
Microcontrôleur ATmega328
Tension de fonctionnement 5V
Tension d'alimentation 7 à 12V
Mémoire flash 32ko dont 0.5ko pour le boot loader
SRAM 2ko

29
EEPROM 1ko
Fréquence d'horloge 16MHz
Entrées / sorties numériques 14 dont 6 PWM/ 40mA max. par sortie
Entrées analogiques 6
Courant de sortie 3.3V/50mA
Dimension 69x54mm
Tableau 2 : Les caractéristiques techniques d’Arduino uno
II.4. Le Shield GSM/GPRS:

Figure 8: Shield GS M/GPRS de RPi
Le shield GSM/GPRS est basé sur un module SIM900 de SIMCOM, il est compatible
avec toutes les versions de Raspberry . Le shield GPRS permet à votre RPi de co mmuniquer en
utilisant le réseau GSM. Ce shield permet d'envoyer ou recevoir des SMS, MMS, GPRS et
d’Audio.
II.4.1. Caractéristiques techniques :
 Shield adapté aux Raspberry P i A, B et B+
 GPIO du Raspberry -pi (26) reportés sur le shield
 Inclus une alimentation 5v 4A qui alimente à la fois le shield et le Raspberry -pi
 Inclus un câble court M icro-USB – USB pour la synchronisation 3G

30
 Entrée/Sorte jack audio
 GPIO du chipset SL8082T accessibles
 Bus 22C et SPI du chipset SL8082T accessibles
 Leds d’état
II.5. Relai :

Figure 9: Relai
Le relais permet, une fois connecté à un Raspberry Pi ou bien une Arduino de contrôler
divers appareils électriques.
Dans notre projet, nous utilisons des relais pour contrôler toutes les appareilles qui
demande un courant électrique important ( la pompe , le moteur pas à pas ).
II.6. Le module DHT11 :

Figure 10: Capteur de température et humidité(DHT11)
Ce module multifonction vous renseigne à la fois sur la température et sur l'humidité
relative. Il utilise un capteur de type DHT11 qui peut répondre à un large spect re de besoins de
mesures. Il fournit une lecture fiable lorsque le degré d'hygrométrie ambiante est compris entre
20 % RH et 90 % RH, et lorsque la température est comprise entre 0°C et 50°C, ce qui couvre les
besoins de la plupart des foyers et des activi tés quotidiennes ne présupposant pas de conditions
extrêmes.

31
II.6.1. Caractéristiques :
 Alimentation : 3,3 à 5V
 Plage de mesure :
 Humidité : 20% – 90% RH
 Température : 0% à 50°C
 Précision :
 Humidité : ±5% RH
 Température : ±2°C
 Sensibilité :
 Humidité : ±1% R H
 Température : 1°C
 Période de collecte du signal : 2S
II.7. La sonde HC -SR04 :

Figure 11: Capteur ultrason (HC -SR04)
II.7.1. Principe de fonctionnement de la sonde HC –
SR04
La sonde HC -SR04 est à la fois un émetteur et un récep teur d'ultrasons (des sons dont la
fréquence est trop élevée pour être perçus par l'oreille humaine).

Le pin "Trig" du HC -SR04 est une entrée: lorsqu'on soumet brièvement cette entrée à une
tension de 5 V (ou 3,3 V), la sonde émet une brève impulsion ultras onore. Si un objet se trouve
devant la sonde, une partie des ultrasons sera réfléchie vers la sonde. Lorsque la sonde détecte
cet écho, la sortie "Echo" (qui est habituellement à une tension de 0 V) prend la valeur 5 V
pendent une durée égale au temps éc oulé entre l'émission de l'ultrason et la réception de l'écho.

32
II.7.2. Mesure de distance par ultrasons
La circuiterie du HC -SR04 facilite les choses à l’utilisateur, puisqu’elle délivre un
créneau de tension 5V qui démarre juste après l’émission du train d’ondes ultrasonores, pour
s’arrêter lorsque le récepteur détecte les ondes en retour.

Figure 12: Principe de mesure de distance pas ultrasons
Il reste à mesurer le temps que dure ce créneau pour déterminer la distance de l’obst acle…
II.8. Le moteur pas à pas :

Figure 13: Moteur pas à pas
Ce moteur pas à pas 5 -wire 4 -phase peut être entraîné par la puce ULN2003, qui vient
avec ce moteur pas à pas. Avec fil et connecteur, ce moteur pas à pas peut être ut ilisé avec la
carte de développement directement.

33
II.8.1. Caractéristiques techniques
 Moteur pas -à-pas unipolaire avec un connecteur 5 broches ayant empattement
2.54mm. Idéal pour Arduino et Raspberry pi.
 48 pas par révolution (hors réducteur)
 Réducteur à engrenage 1/16
 Tension suggérée: 5V -12V DC
 Poids: 37 gr.
 Dimensions: 28mm de diamètre, 20mm d'épaisseur + 9mm d'axe ayant un diamètre
de 5mm.
 Câble de 23 cm de long
 Couple à l'axe sous 12 Volts: 2.5 N*cm = 25 N*mm = 0.025 N*m (0.255 kg*cm )
 Axe: 5mm de di amètre aplat .
II.9. Le servomoteur Tower Pro :

Figure 14: Servomoteur Tower Pro

II.9.1. Fonctionnement d’un servomoteur:
Tout d’abord, il faut s’avoir qu’un servomoteur permet d’effectuer des déplacements en
translation ou en r otation. De nombreux objets du quotidien utilisent des servomoteurs: voitures
télécommandées, drône, électroménager, …
Les différents types de servomoteurs se distinguent par 3 caractéristiques:
 leur vitesse de rotation par seconde
 leur course en degré
 leur couple exprimé en kg.cm

34
Le fonctionnement d’un servomoteur est relativement simple. Il suffit d’envoyer une
impulsion dont la durée est comprise entre 0,5ms et 2,5ms au servomoteur. Cette impulsion
déterminera la position du guide du servomoteur. Ainsi l a valeur de 1,5ms donne
au servomoteur la position centrale.
Ces impulsions doivent être envoyées de manière périodique, généralement toutes les 50ms.
Il n’y a rien de compliquer pour brancher un servomoteur. Les servomoteurs ont
généralement 3 fils:
 un ro uge: qui doit être branché au 5V (ou 12V suivant votre servomoteur)
 un noir : qui doit être branché à la masse
 un orange (ou autre couleur) : qui est le fil de tension de commande 0 -5V
C’est donc via le fil orange que les commandes seront passées à n otre servomote ur.
II.9.2. Caractéristiques techniques :
 Type : TowerPro SG90
 Dimensions : 22 x 11,5 x 27 mm
 Poids : 9g
 Vitesse: 0.12 sec/60° sous 4.8V
 Couple: 1.2Kg/cm sous 4.8V
 Tension: 4.8V – 6V
 Prise type Graupner UNI
II .10. Le capteur infrarouge PIR :

Figure 15: Capteur infrarouge PIR
Les capteurs infrarouges PIR ( Passive Infrared ) fournissent des solutions très simples
pour la détection de mouvement.

35
Tous les éléments sur terre émettent un faible niveau de radiation infrarouge, cependant
tout corps exposé à une source de chaleur émet davantage de radiation.
Les capteurs PIR sont capables de détecter tout changement de niveau de radiation à
l'intérieur de leur zone de détection. Par exemple, lorsqu'une personne entre dans une piè ce, le
capteur détecte le changement du niveau de radiation.
II.10.1. Caractéristiques de PIR :
 Capteur de mouvement type infrarouge avec carte de contrôle
 La sensibilité et le temps de détection est réglable
 Distance de détection : environ 7m
 Angle de dét ection : moins de 100°
 Alimentation : de 4,5V à 20V
 Consommation en veille : moins de 50µA
 Signal de détection : 3,3V HIGH , 0V LOW
 Trigger configurable : 1 coup ou répétition
 Taille : 3.3cm x 2.5cm x 2.5cm
II.10.2. Les capteurs de gazes MQ-X :

Figure 16: Capteur de gaz MQ -X

Les capteurs MQ -X sont des capteurs physicochimiques permettant de détecter une
grande variété des gaz, polluants et fumées dans l’atmosphère. Ce tableau liste les principales
informations techniques.

36
Remarqu e. Avant de fonctionner et délivrer une mesure correcte, certains capteurs doivent être
préchauffés. C’est le cas par exemple des MQ -131, MQ -135, MQ -137 qui nécessitent 24h de
préchauffage. Le MQ -137 nécessite même 48h
Nous trouverons également certain cap teurs « nus », c’est à dire qu’il faudra nous occuper n ous-
même de l’intégration électronique.
Attention. Le capteur chauffe après quelques minutes d’utilisation. C’est normal, c’est le
principe même de fonctionnement de tous les capteurs physicochimiques.

Capteur Sensible à
MQ-2 Méthane, Butane, GPL et fumées
MQ-3 Alcool, Ethanol et fumées
MQ-4 Méthane (CH4). De 300 à 10000 ppm
MQ-5 Gaz naturel, GPL. De 300 à 50000 ppm. Temps de réponse inférieur à 10s
MQ-6 GPL, butane. De 200 à 10000 ppm
MQ-7 Mono xyde de carbone (CO). De 20 à 2000 ppm
MQ-8 Hydrogène. De 100 à 10000 ppm
MQ-9 Monoxyde de carbone, méthane (CH4)
MQ131 Ozone
MQ135 Qualité de l’air
MQ136 Sulfure d’hydrogène gazeux (H2S). De 1 à 1000 ppm
MQ137 Ammoniac. De 5 à 500ppm
MQ138 Benzène , Toluène, Alcool, Acétone, Propane, Formaldéhyde, Hydrogène. De 10 à
1000ppm sauf pour NH3, de 10 à 3000 ppm
MQ214 Méthane (de 3000ppm à 20000ppm), GPL et propane (500ppm à 10000ppm, butane
(500ppm à 10000ppm)
MQ216 Gaz naturel, gaz de houille, Propane, CH4
MQ303A Alcool, Ethanol, fumées
MQ306A GPL, butane
Identique au MQ -6 mais avec une tension de chauffage plus basse (0.9V)
MQ307A Monoxyde de carbone (CO)
Identique au MQ -7 mais avec une tension variant de 0.2 à 0.9V

37
MQ309A Monoxyde de carbone, gaz inflammables
Identique au MQ -9 mais avec une tension variant de 0.2 à 0.9V

Tableau 3 : Les capteurs MQ -X
II.11. Détecteur de flam me :

Figure 17: Détecteur de flamme
Ce détecteur d'infra -rouges permet d e capter la présence de flammes ou d'autres lumières
comprises entre 760nm et 1100nm de longueur d'onde.
II.11.1. Caractéristiques
 Interface analogique
 Alimentation: 5V CC
 Angle de détection: 60 degrés
 Distance de détection: 20cm (4.8V) ~ 100cm (1V)
 Tempér ature de fonctionnement: de -25 à 85 degrés Celsius
II.12. Détecteur de lumière :

Figure 18: Détecteur de lumière

38
Une photorésistance est un composant dont la résistivité dépend de la luminosité
ambiante. Pour faire simple, c'est une résistance dont la valeur change en fonction de la lumière
qu'elle reçoit.
Il existe différents types de photorésistances, chacune ayant des valeurs de résistance
différentes en fonction de la luminosité ambiante. Le type le p lus classique de photorésistances
est de 1M ohms (obscurité) / 12K ohms (pleine lumière). C'est ce genre de photorésistance qui
est employé plus bas dans ce tutoriel.
Qu'importe le diamètre de la photorésistance, sa valeur dans l'ombre ou en pleine lumière ,
quand une photorésistance est illuminée, sa résistance diminue. On peut donc utiliser une
photorésistance pour mesurer la luminosité ambiante.
II.13. Les LEDs :

Figure 19: LEDs
Une diode électroluminescente, plus connue sous l' appellation Del ou Led ( light-emitting
diode) , désigne un composant optoélectronique qui permet
l'émission de lumière monochromatique.
II.14. Les afficheurs à cristaux liquide (LCD):

Figure 20: Afficheur à cristaux liquide (LCD)

39
Les afficheurs LCD alphanumériques présentent une solution facile d’emploi et bon
marché de doter votre projet d’une interface indépendante de votre PC.
Vu de l’extérieur, les écrans LCD alphanumér iques sont essentiellement
caractérisés par leur taille.
Deux modèles se rencontrent très fréquemment et sont les meilleurs marché, celui ayant 2
lignes et 16 colonnes d’affichage et celui ayant 4 lignes et 20 colonnes d’affichage.
II.14.1. Le pilota ge via le bus I2C :

Figure 21: Bus I2C
Il existe également de petits modules permettant d’interfacer un écran LCD avec
un bus I2C. Cette solution peut être intéressante si on manque désespérément de broches sur la
carte RPi comme dans notre projet puisqu’au lieu de monopoliser 6 à 7 broches, l’écran n’en
utilisera plus que 2.
Toutefois, le module que l’on rencontre le plus souvent est construit autour du
PCF8574P de NXP, un circuit permettant d’augment er le nombre d’entrées sorties numériques
via l’I2C.
II.15. La camera du Raspberry Pi :

Figure 22: Caméra de Raspberry Pi

40
C’est un module miniature avec une définition de 5 Mégapixels et 1080p en vidéo. La
camér a se branche sur le connecteur CSI existant sur la carte Raspberry Pi. Elle convient pour
Raspberry Pi modèle A ou B.
II.15.1. Caractéristiques techniques :
 Capteur Omni vision 5647 avec objectif à focale fixe
 Capteur 5 Mégapixels
 Résolution photo : 2592 x 1944
 Résolut ion vidéo maximum : 1080p
 Images par seconde maximum : 30fps
 Taille du module : 20 x 25 x 10mm
 Connexion par câble plat à l’interface 15 -pin MIPI Camera Serial Interface (CSI)
(Connecteur S5 du Raspberry Pi)
II.16. Le Système RFID :

Figure 23: Système RFID
Le système RFID (Radio Frequency Identification) est une technologie très attractive
pour l'entreprise qui offre la possibilité d'une gestion automatique du nombre conséquent
d'informations qu'elle doit traiter . Les équipements adaptés à ce système permettent de
synchroniser les flux physiques avec les flux d'informations.
II.16.1. Qu'est -ce qu'un système RFID ?
Le terme RFID englobe toutes les technologies qui utilisent les ondes radio pour
identifier automatiq uement des objets ou des personnes.

41
Le système RFID autrement dit l'identification par radio -fréquence est une technologie
qui permet de mémoriser et de récupérer des informations à distance grâce à une étiquette qui
émet des ondes radio.
II.16.2. Comment fonctionne un système RFID ?
Le système RFID fonctionne de la manière suivante :
 L'étiquette RFID (ou transpondeur ou tag) est elle -même équipée d'une puce reliée à
une antenne, l'antenne per met à la puce de transmettre les informations (numéro de
série, poids…) qui peuvent être lues grâce à un lecteur émetteur -récepteur.
 Une fois les informations transmises au lecteur RFID équip ée d'une antenne intégrée
ou externe, celui -ci n'a plus qu'à convertir les ondes -radios en données et celles -ci
pourront être lues par un logiciel RFID .
II.17. Le Capteur d’ eau :

Figure 24: Capteur D'eau
Capteur de niveau d'eau facile à utiliser . L'utilisation des pistes parallèles sur la board
permettent de détecter le niveau d'eau de manière analogique, facile à convertir en numérique
pour la Raspber ry pi.
II.17.1. Caractéristiques techniques :
 Tension de fonctionnement: 3 -5Vdc
 Courant en fonctionnement: moins de 20mA
 Type de capteur: analogique
 Dimension de la zone de détection: 40 x 16mm
 Carte de type: FR4 double face HASL
 Température de fonctionneme nt: 10 -30°

42
 Humidité ambient: 10 -90% (Sans condensation)
 Taille de la carte: 62mmx20mmx8mm
 Connexions:
 Vcc
 GND
 Signal
II.18. Pompe :

Figure 25: Pompe
Voici une pompe 12v différentes de ses congénères. En plus d'être petite, c'est une pompe
péristaltique pre -équipée d'un tube en silicone.
Une pompe péristaltique presse un tube en silicone contena nt le liquide pour le mettre en
mouvement. Cette pompe n'aspire donc pas directement le liquide comme les pompes
traditionnelles.
L'avantag e? La pompe n'entre jamais en contact avec le fluide… ce qui en fait un excellent choix
pour les projets de pompages de nourriture/boisson/éléments stériles.

La pompe est actionnée par un moteur continu, elle dispose donc de beaucoup de couple.
La po mpe est équipée d'une mécanique d'entrainement utilisant des galets organisés en trèfle.
Lorsque le moteur tourne, le trèfle presse sur le tube pour pousser le liquide dans le tube. La
pompe n'a pas besoin d'être amorcée et peu facilement s'amorcer avec de l'eau située à un demi –
mètre en amont.
Vous pouvez contrôler la vitesse du moteur en PWM pour augmenter ou diminuer le débit du
liquide… si les connexions électriques sont inversées, la pompe déplace le liquide dans l'autre
sens.

43
Fonctionne impeccablem ent lorsqu'elle est pilotée à l'aide de transistor de
puissance (comme celui -ci) pour un contrôle en tout ou rien OU à l'aide d'un Pont -H tel que
le L293D .
II.19. Electrovanne :

Figure 26: Electrovanne
Cette électrovanne permet de contrôler électriquement un débit d’eau. Fermée
automatiquement, elle s’ouvre si on lui applique une tension minimale de 6Vdc, idéalement
12Vdc.
II.19.1. Caractéristiques techniques
 Raccord : 1/2'' NPS
 Pression de fonctionnement : 0.2 à 8 Bar
 Température de fonctionnement : 1°C à 75°C
 Temps de réponse (ouvert) : 0.15s
 Temps de réponse (fe rmé) : 0.3s
 Tension d’activation : 12Vdc (min. 6Vdc)
 Endurance : > 50 millions de cycles
 Dimensions : 76.2×57.2×5.1mm
 Poids : 122g

44
II.20 Ventilateur :

Figure 27: Ventilateur
La domotique s’applique également au chauffage et à la ventilation, des éléments
indispensables au sein d’un logement. La solution est la régulation du chauffage, c’est -à-dire
programmer un degré de température adapté à chaque pièce et notamment en fonction de
moments de la journée, nuit et jo ur. du côté fraîcheur, une installation domotique dédiée
permettra de programmer les aspirations et extractions d’air, notamment à des endroits
stratégiques et nécessaires comme la salle de bains, connue pour sa grande humidité.
Dans notre projet, on a modélisé le ventilateur par un simple ventilateur de
l’ordinateur.
II.21. Contraintes matériels :
A cause de l’indisponibilité de matériels dans notre marché « Maroc » ou bien leurs coûts
qui sont élevée s. On a adapté les matériels d’arduino avec le Raspberry Pi. Le tableau suivant
résume le remplacement effectué .
Matériel Remplacé par

Figure 28: Shield GSM Raspberry

Figure 29 : Shield GSM arduino

45

Figure 30: Camera Raspberry

Figure 31: Camera USB Logitech

Figure 32:Pompe ( Arduino , Raspberry)

Figure 33: Pompe d'essuie -glace

Figure 34: Electrovanne (Arduino)

Figure 35: Pompe machine à lave

Figure 36: Clé WIFI Raspberry

Figure 37: Clé WIFI TP -Link
Tableau 4 : Changemen t de matériels

46
III. Description des logiciels :
III.1.1. HTML
L'HTML est un langage informatique utilisé sur l'internet. Ce langage est utilisé pour
créer des pages web. L'acronyme signifie HyperText Markup Language, ce qui signifie en
français "langage de balisage d'hypertexte". Cette signification porte bien son nom
puisqu'effectivement ce langage permet de réaliser de l'hypertexte à base d'une structure de
balisage.
Ce n'est pas à proprement parlé un langage de programmation, mais plutôt un langage qu i
permet de mettre en forme du contenu. Les balises permettent de mettre en forme le texte et de
placer des éléments interactif, tel des liens, des images ou bien encore des animations. Ces
éléments ne sont pas dans le code source d'une page codé en HTML m ais "à côté" et la page en
HTML ne fait que reprendre ces éléments .
Pour visualiser une page en HTML il est nécessaire d'utiliser un navigateur web .
La plupart du temps d'autres langages informatiques sont associés à une page codé en HTML.
Par exemple le CSS, qui permet de mettre en forme le contenu d'une page codé en HTML. Il y a
également des langages informatiques qui dépendent entière ment du HTML, tel le JavaScript .
III.1.2. CSS
Le terme CSS est l'acronyme anglais de Cascading Style Sheets qui peut se traduire par
"feuilles de style en cascade". Le CSS est un langage informatique utilisé sur l'internet pour
mettre en forme les fichiers HTML ou XML . Ainsi, les feuilles de style, aussi appelé les fichiers
CSS, comprennent du code qui permet de gérer le design d'une page en HTML .
Bien que l' HTML puisse être mis en forme à l'aide de balises prévus à cet effet, de nos
jours il est plus judicieux d'utiliser le CSS et de n'ut iliser le XHTML que pour le contenu.
L'avantage de l'utilisation d'un fichier CSS pour la mise en forme d'un site réside dans la
possibilité de modifier tous les titres du site en une seule fois en modifiants une seule partie du
fichier CSS. Sans ce fichie r CSS, il serait nécessaire de modifier chaque titre de chaque page du
site (difficilement envisageable pour les énormes sites de plusieurs milliers de pages).
D'autre point fort sont perceptible . Il est par exemple possible de créer une feuille de style
spécifique pour l'impression des documents, ce qui permet de retirer tous les effets de style et
toutes les parties inutile lors de l'impression. De même, une feuille de style peut être utilisée pour

47
les utilisateurs d'un téléphone portable, ce qui permet d e mieux gérer la mise en forme
particulièrement pour les petits écrans de ces appareils.
III.1.3. PHP
Le PHP est un langage informatique utilisé sur l'internet. Le terme PHP est un acronyme
récursif de "PHP: Hypertext Preprocessor".
Ce langage est principa lement utilisé pour produire un site web dynamique. Il est courant
que ce langage soit associé à une base de données, tel que MySQL.
Exécuté du côté serveur (l'endroit où est hébergé le site) il n'y a pas besoin aux visiteurs d'avoir
des logiciels ou plugi ns particulier. Néanmoins, les webmasters qui souhaitent développer un site
en PHP doivent s'assurer que l'hébergeur prend en compte ce langage.
Lorsqu'une page PHP est exécuté par le serveur, alors celui -ci renvois généralement au
client (aux visiteurs du site) une page web qui peut contenir du HTML ,
XHTML, CSS,JavaScript …
III.1.4. JavaScript
Le JavaScript est un langage informatique utilisé sur les pages web. Ce langage à la
particularité de s'activer sur le poste client, en d'autres mots c'est votre ordinateur qui va recevoir
le code et qui devra l'exécuter. C'est en opposition à d' autres langages qui sont activé côté
serveur. L'exécution du code est effectuée par votre navigateur internet tel que Firefox ou
Internet Explorer.
L'une des choses primordiale à savoir est de bien se rendre compte que le JavaScript n'a
aucun rapport avec le Java qui est un autre langage informatique.
La particularité du JavaScript consiste à créer des petits scripts sur une page HTML dans
le but d'ajouter une petite animation ou un effet particulier s ur la page. Cela permet en général
d'améliorer l'ergonomie ou l'interface utilisateur, mais certains scripts sont peu utile et servent
surtout à ajouter un effet esthétique à la page. L'intérêt du JavaScript est d'exécuté un code sans
avoir à recha rger une nouvelle fois la page.

48
III.1.4. Python
Python est un langage de programmation structuré et orienté objet. Il est doté d'un typage
dynamique fort, d'une gestion automatique de la mémoire par ramasse -miettes et d'un système de
gestion d'exceptions. Il est conçu pour optimiser la productivité des programmeurs en offrant des
outils de haut niveau et une syntaxe simple à utiliser.
III.1.5 . Langage Arduino
Le langage de programmation qui permet de programmer une carte Arduino se nomme le
langage C .

49

Chapitre III : Développent et Réalisation

50
Dans ce chapitre, nous détaillons les tâches que nous avons réalisées ainsi que les
différents tests de validation.
I. Préparation de l’environnement Raspberry Pi 2
I.1. Préparation mat ériel :
Les objets présentés dans le tableau ci -dessous sont indisp ensables, sans eux n ous ne
pouv ons pas utiliser n otre R Pi.

Chargeur mini-USB (au moins 1.5A)

Carte micro SD

Data show HDMI

Souri USB

51

Clavier US B

Tableau 5 : Matériel pour pouvoir utiliser le RPi
On commence par raccorde r les périphériques:
 La prise RJ45 pour le réseau internet ,
 Clavier -USB,
 Souris -USB,
 la sortie graphique HDMI du data show
I.2. Préparation logiciels
I.2.1. Préparation de la carte SD
I.2.1 .1. Téléchargement des prérequis
Pour préparer la carte micro SD, nous commençons par télécharger le système
d’exploitation Raspbian et le logiciel Win32 Disk Manager qui nous permettre de déployer
l’image Raspbian sur la cart e micro SD.
 Raspbian (dernière version) .
 Win32 Disk Manager
I.2.1.2 . Déployer l’i mage sur la carte SD
Commençons par extraire le fichier .img contenu dans l’archive .zip de Raspbian, cela est
nécessaire pour l’utiliser avec le logiciel Win32 Disk Manager.

52

Figure 38: Extraire l’image de Raspbian
Dès que c’est fait, on installe le logiciel Win32 Disk Manager qui s’installer par défaut
dans le répertoire « C:\Program Files (x86) \ImageWriter ».
On exécute le logiciel en tant qu’administrateur (via un clic droit). Le champ « Image
File » doit contenir le chemin ver s le fichier .img de Raspbian, on clic sur l’icône en forme de
dossier pour aller chercher le fichier. En ce qui concerne le champ « Device », on sélectionne la
lettre de lecteur correspondante à n otre carte micro SD.

Figure 39: Déployer Raspbian avec Win32 Disk Imager
On clique sur « Write » pour démarrer l’écriture des données sur la carte micro SD. Un
message d’avertissement apparaît, validez avec « Yes » pour démarrer l’opération

53

Figure 40: Démarrer l’écriture des données sur la carte microSD
Pendant le transfert des données…

Figure 41: Transfert des données sur la carte microSD
Lorsque c’est terminé, un pop-up « Write Successful » apparaît à l’écran, comme ceci :

Figure 42: Transfert de données est terminé
La carte micro SD est prête et éq uipée de Raspbian, on va passe r à l’installation de Raspbian.

54
I.2.2. Installation et configuration de Raspbia n :
I.2.2.1. Installation de Raspbian :
Maint enant que la carte SD est prête à l'emploi, on l'insère dans le RPi, on raccorde les
périphériques (la prise RJ45 pour le réseau internet , clavier -USB, souris -USB, la sortie
graphique HDMI de data show). Le démarrage se fait en alimentant le RPi en mini -USB.
En basculant sur la source HDMI. Le Raspbian s’installe tout seul.
C'est le grand moment 

Figure 43: Interface graphique de Raspbian
I.2.2.2. Configuration de Raspbian :
On va donc effectuer une configuration de base pour rendre notre Raspberry Pi
opérationnel !
I.2.2.2.1. Étendre le stockage :
On va commencer par uti liser la fonction « expand_rootfs » qui permet de s’assurer que
Raspbian utilise bien tout l’espace disponible sur la micro SD. On positionne sur
« expand_ro otfs » et on appuie sur Entrée.
On obtient le message de validation suivant :

55

Figure 44: Etendre le stockage
I.2.3. Se connecter en SSH au Raspberry pi :

Figure 45: Réseau local
Dans cette partie, no us allons télécommander notre Raspberry Pi sur notre réseau local en
utilisant le SSH.

56

Figure 46: Connexion en SSH
Une raison courante de contrôler à distance notre Raspberry pi à partir d’un autre
ordinateur est que nous pouv ons utiliser uniquement notre PC pour contrôler le R aspberry pi et
donc nous n’aurons pas besoin d’un clavier, d’une souris ou d’un moniteur.
I.2.3.1. Activation du SSH :
Secure Shell (SSH) est une fonctionnalité de Linux qui nous permet d’ouvrir une sessio n
de terminal sur notre Raspberry Pi à par tir d’une ligne de commande de n otre ordinateur hôte.
Pour utiliser SSH, il faut d’abord l’activer pour l’utiliser. La meilleure façon est d’utiliser la
méthode suivante :
On démarre Raspi Config par la commade :
 sudo raspi -config

57

Figure 47: Démarrer raspi -config
On Faite s défiler jusqu’à l’option « ssh ».

Figure 48: Menu raspi -config
On faites la touche Entrée, puis sélectionnons « Enable »

58

Figure 49: Valider le serveur SSH
Un script s’exécute puis vous verrez une confirmation :

Figure 50: Serveur SSH est valid e
Remarque : SSH est maintenant activé par défaut sur les nouvelles versions de Raspbian

59
I.2.3. 2. SSH sous Windows :
Maintenant on passe à l’ordinateur à partir duquel nous souhaitons contrôler notre pi.
Premièrement, nous aurons besoin de télécharger un prog ramme gratuit appelé « puTTY ».
Après avoir téléchargé et installé puTTY (c’est un fichier u nique appelé putty.exe), nous
exécutons le programme.
Un double clic sur putty.exe, une fenêtre apparaît à l’écran, comme ceci :

Figure 51: Interface puTTy
Nous saisons l’adresse IP de RPi qu’on a trouvée en utilisant la comman de « sudo
ifconfig » et cliquons sur «Open». Cela vous donnera un avertissement (la première fois ).
La fenêtre ssh sera alors prêt à être utilisé.

60

Figure 52: Fenêtre SSH
I.2.4. Connexion à la Raspberry Pi sur un poste
distant (VNC ) :

Dans cette partie nous allons télécommander notre Raspberry pi à distance grâce à
VNC (Virtual Network Connection ),
La différence entre SSH et VNC est que SSH ne gère p as d’interface graphique il ne n ous
permet que d’exécuter des commandes dan s le termin al, contrairement à VNC qui va n ous
donner la possibilité de contrôler notre Raspberry pi de manière graphique avec la souris et le
clavier.
Nous allons donc commencer par installer un serveur VNC, il en existe plusieurs, mais
celui qu e nous uti lisons est tightvnc.
Pour l’installer on ouvre le terminal et on exécute les commandes ci -dessous :
 sudo apt -get update

61
 sudo apt -get install tightvncserver
Une fois que tightvnc est installé on exécute la commande
 vncserver :1
Cette commande démarrera le serveur VNC, la première fois que nous exécut ons cette
commande le système nous demandera notre mot de passe « raspberry ».
I.2.4.1. Le client VNC :
Pour accéder à n otre bureau en VNC, nous téléchargeons un logiciel (un client VNC) qui
nous perme ttra de p rendre le contrôle de n otre Raspberry pi.
Il exis te beaucoup de clients, mais nous utilisons VNC Viewer (qui est aussi
disponible sur Android , voir sur le Play Store , et sur iOS), une fois installé sur n otre ordinateur
on le exécute, il m’affiche la fenêtre comme ça .

Figure 53: Fenêtre VNC
Dans le champ VNC Server on entre l’adres se IP de n otre Raspberry pi (on peut la
trouver en tapant la commande ifconfig dans le terminal) suivi de :1 on cliqu e ensuite sur
« Connect »..
Nous recevons un message d’avertissement mais on clique sur continuer. La fenêtre
suivante nous demande n otre mot de passe

62

Figure 54:Demande mot de passe
Le bureau de n otre Raspberry pi est apparaitr e. Nous sommes maintenant en mesure
d’utiliser la souri s et le clavier pour contrôler n otre Raspberry pi à distance.

Figure 55: Contrôle de Raspberry pi à distance depuis ordinateur
I.2.4.2. Démarrer VNC directement au démarrage
Pour démarrer le serveur VNC au démarrage automatiquement, on faites ces toutes ces
commandes séparément dans l’ordre :
 cd /home/pi
 cd .config
 mkdir autostart

63
 cd autostart
 sudo nano tightvnc
Un fichier vide s’ouvre, on saisit le code suivant :
[Desktop Entry]
Type=Application
Name=tightVNC
Exec=vncserver :1
StartupNotify =false
On sauvegarde le fichier et on quitte puis on redémarre ensuite n otre Raspberry pi.
 sudo reboot
I.2.5. Installation et configuration WIFI :

I.2.5 .1. Préparation du Raspberry Pi :
Pour commencer, on connecte le Raspberry -Pi en Ethernet afin de préparer la machine à
l’installation et la configuration de WiFi.
On branche l’adaptateur WiFi. Et on connecte maintenant à RPi en SSH.
I.2.5.2. Installation de wpasupplicant et wpagui:
On commence par l’installation de mise à jour de Raspbian
 sudo apt -get update
 sudo apt -get upgrade
On lance la commande suivante pour s’assurer que le paquet est bien installé sur notre
distribution.

64
 sudo apt -get ins tall wpasupplicant
 sudo apt -get install wpagui

I.2.5. 3. Configuration du Wifi :
Maintenant, on va passer à la configuration. On commence par récupérer l’interface
wpa_gui avec la commande suivante :
 wpa-gui
Une fenêtre comme ça apparaitre :

Figure 56: Fenêtre wpa -gui
On clique sur le bouton Scan, là une fen être s’ouvre. Cette fenêtre affiche tous les réseaux
détectés par n otre clé .

65

Figure 57: Réseaux détectés par notre clé.
Un d ouble clic sur n otre réseau Wifi puis on indique dans la fenêtre qui s’ouvre n otre clé
WEP à côté de Key 0 (Key 0 soit bien cocher). Puis on valide, cliquons sur Add.

Figure 58: Saisie de mot de passe
Maintenant notre RPi est connecté en wifi 

66

Figure 59: RPi est connecté en wifi
Il ne reste de le sauvegarder en cliquant sur « file » puis « save configuration ».

Figure 60: Enregistrement de configuration

67
I.2.6 . La vidéo -surveillance en ligne avec la Raspberry
Pi et caméra USB :
Nous avons déjà parlé de sécurité et plus précisément de vidéosurveillance et de
diffusion de vidéo -surveillance en ligne et en direct (bref du streaming).
Au cours de cette partie nous allons utiliser le logiciel M otion pour Raspbian, qui se
chargera de transformer notre Raspberry Pi en véritable petit détecteur d’intrusion.
I.2.6 .1. Motion, un logiciel pour la surveillance vidéo et
l’accès en ligne :
La fonction première de Motion est de faire de la vidéo -surveilla nce avec diffusion en
ligne, en temps réel, via une ou plusieurs caméras ! Motion permet également de faire de la «
motion capture », c’est -à-dire, que Motion est capable de comparer la dernière image prise avec
la nouvelle pour faire de la détection de mo uvements.
Motion est un logiciel très simple d’utilisation, disponible pour Raspbian et parfaitement
adapté à la vidéo -surveillance avec le Raspberry Pi.
I.2.6 .2. Installation de motion sur le Raspberry Pi :
L'application motion est packagée Debian , donc c omme nous utilisons une distribution
Raspbian, une simple ligne de commande suffit à l'installer :
 sudo apt -get install motion
Motion est maintenant installée sur n otre Raspberry Pi, nous allons donc pouvoir passer à
l’étape suivante.
I.2.6 .3. Configurer Motion sur le Raspberry Pi :
Dans le terminal on entre « sudo nano /etc/default/motion » et on modifie la lig ne «
start_motion_daemon » en start_motion_daemon=yes # exécuter Motion en arrière -plan

68
Maintenant, nous modifions un certain nombre de points de l a configuration de
Motion, afin de régler au mieux notre système de vidéo -surveillance.
Pour cela, on entre dans le terminal « sudo nano /etc/motion.conf », dans certains cas ce
fichier se trouvera plutôt dans « /etc/motion/motion.conf ».
On modifie certain es lignes de ce fichier de façon à ce qu’elles correspondent aux lignes
ci-dessous :
#On active le daemon
daemon on
#On utilise le fichier /tmp/motion.log pour stocker les logs
logfile /tmp/motion.log
#On règle la résolution (adapter la résolution à celle de votre camera. Ici, nous
avons réglé pour la caméra de la raspberry pi)
width 1280
height 720
#On règle le nombre d'images prises par seconde
framerate 2
#On règle le nombre d'images enregistrées avant et après un mouvement (ici 2
avant 2 après)
pre_capt ure 2
post_capture 2
#On règle le code, pour une lecture sur de nombreux médias
ffmpeg_video_codec msmpeg4

69
#On autorise la lecture du flux depuis internet pour permettre l'accès en ligne à la
vidéo -surveillance
stream_localhost off
I.2.6.4 . Affichage de la vidéo -surveillance :
Pour voir le stream de notre caméra, il suffit de nous connecter sur notre Pi.
En d’autres termes, il faut nous connecter depuis un navigateur Web ou depuis
VLC (en cliquant sur Ouvrir un flux réseau ) à l’adresse IP de n otre Raspber ry Pi en
spécifiant le port de webcam server, décidé plus haut dans le fichier de configuration.
Dans notre cas, le stream sera disponible à l’adresse (http://192.168. 250.102:8081 ) en
local

Figure 61: Vidéo surveillance en ligne

70
I.2.7 . Installation d’un serveur web sur le Raspberry
Pi :
Pour contrôler notre maison de n’importe qu el dispositif connecté à internet , nous
install ons le logiciel « apache » dans notre RPi qui nous permettra de développer une interface
web pour le contrôle et la commande de notre maison.
Il existe beaucoup de serveur , mais nous utilisons apache .

I.2.7 .1. Installation des paquets requis :
Il faut avant toutes choses installer les paquets nécessai res au serveur web.
Les paquets requis sont :
 apache2 : Le serveur
 php5 : Pour exécuter des fichiers PHP
 libapache2 -mod -php5 : Sert pour la comptabilité php5 apache
Pour installer tous ces paquets, il faut faire la commande .
 sudo apt -get install apache2 p hp5 libapache2 -mod-php5
I.2.7 .2. Démarrer le serveur Apache2 :

Le serveur démarre automatiquement, mais nous pouvons le faire manuellement
avec cette commande
 sudo service apache2 start

71
I.2.7 .3. Accéder au serveur :
Pour accéder au serveur on entre l’adr esse IP de la Raspberry pi dans l’URL de
notre navigateur. Pour moi l’URL est 192.168. 250.102 , voilà ce que j’obtiens quand je
vais sur le serveur.

Figure 62:Accède à serveur apache
I.2.7.3. Vérifier que PHP fonctionne
Pour savo ir si PHP fonctionne correctement, ce n’est pas très compliqué, et la
méthode est relativement proche de celle employée pour accéder à l’Apache .
Nous allons en premier lieu supprimer le fichier « index.html » dans le répertoire
« /var/www/html ».
 sudo rm / var/www/html/index.html
Puis créons un fichier « index.php » dans ce répertoire, avec cette ligne de commande
 echo "<?php phpinfo(); ?>" > /var/www/html/index.php
Pour vérifier que PHP fonctionne , nous utilisons la même méthode que précédemment .
Voilà ce que j’obtiens quand je vais sur le serveur.

72

Figure 63 Tableau généré par la commande phpinfo sur une raspberry .
I.2.8 . Installation de wiringPi :
WiringPi est un module qui permet d’exploiter les ports d’E/S GPIO du Raspberry.
Nous avons vu dans certains articles que j’utilise un module Python RPi.GPIO dans mes
programmes Python; mais l’inconvénient de celui -ci, nécessite d’être root pour
fonctionner. Or pour mes futurs programmes, j’ai l’intention d’utiliser des
fonctionnalités WE B pour accéder au GPIO et bien sûr sans être root. Pour pallier cet
inconvénient, WiringPi permet de contrôler ces ports GPIO sans être root. Nous allons
voir comment installer et configurer WiringPi.
La première chose est d’installer l’outil ‘ git’ qui per met d’avoir accès au site github :

Figure 64: Installation de git

73
Pour installer WiringPi , nous effectuons les commandes suivantes:
 mkdir test
 cd test
 git clone git://git .drogon.net/wiringPi
 cd wi ringPi
 ./build
Maintenant on va installer WiringPi -python en effectuant les commandes suivantes :
apt-get install python -dev python -setuptools
git clone https://github.com/WiringPi/WiringPi -Python.git
cd WiringPi -Python
git submodule update –init
python setup.py install
Pour tester en ligne de comm ande la librairie WiringPi, on utilise les com mandes
suivantes qui permettre de paramétrer le port GPIO4 (on passe à 1, puis à 0 le port
gpio e xport 4 out
gpio –g mode 4 out
gpio –g write 4 1
gpio –g write 4 0 GPIO4) :
Pour tester le module Python, on a créé un fichier dont voici le contenu qui permettra de
faire clignoter une LED sur le port GPIO4 :
import wiringpi , time
io = wiringpi.GPIO(w iringpi.GPIO.WPI_MODE_SYS)
io.pinMode(4,io.OUTPUT) # initialise GPIO4
while True:
io.digitalWrite(4,io.HIGH) # Allume la LED
time.sleep(2)
io.digitalWrite(4,io.LOW) # Eteint la LED
time.sleep(2)

74
I.2.9 . Configuration de GrovePi + :
La première étape est de configurer le Raspberry Pi. Le GrovePi + ne fonctionnera pas
correctement avec la configuration par défaut. Pour obtenir la communication Grove Pi avec le
Raspberry Pi nous effectuons les commandes suivantes:

Avant de commencer c ette installation, notre Raspberry Pi est connecté à Internet !

On allume le Raspberry Pi, sans GrovePi+ et ouvrant le terminal.
Nous installons le logiciel GrovePi sur le bureau de Raspberry Pi en utilisant les commandes :

 cd /home/pi/Desktop
 sudo git clone https ://github.com/DexterInd/GrovePi
 cd /home/pi/Desktop/GrovePi/Script
 sudo chmod +x install.sh
 sudo ./install.sh

Maintenant, on lance la commande « sudo i2cdetect -y 1 » pour vérifier que le script a
été correctement installé .

Figure 65: Vérification si GrovePi+ est connecté

Pour tester le module GrovePi+, on a créé un fi chier dont voici le contenu qui permettra
de faire clignoter une LED sur le port GPIO4 :

75

Figure 66: Programme pour faire clignoter une LED
I.2.10 . Communication par USB entre Raspberry Pi et
Arduino :
Dans cette partie, nous abordons l'option qui s'avère probablement la pl us simple: la
communication série par l'entremise d'un câble USB: nous allons simplement brancher l'Ar duino
à un des quatre ports USB du Rasp berry Pi, de la même façon que nous le faites lorsque nous
désirons programmer l'Arduino avec un ordinateur conventionnel.
I.2.1 0.1. Installation de la bibliothèque pyserial :
Installons d'abord la bibliothèque « pyserial »dans le Raspberry Pi: elle nous facilitera
grandement la tâche lors de la conception de nos scripts en Python. Pour ce faire, nous utilisons
cette commande pendant que le Raspberry Pi est branché à l'internet:
 sudo apt -get install python -serial

I.2.11. Installation de Flask (Framework) :
On utilise le Framework « Flask » pour pouvoir échanger les informations entre deux
scripts déférents, le premier est écrit en Python et le deuxième est développé en HTML

76

Flask est un framework open -source de développement web en Pytho n. Son but principal
est d'être léger, afin de garder la souplesse de la programmation Python, associé à un système de
templates.
L’installation de paquets est toujours simple.
 sudo apt -get install pip
 sudo pip install flask
II. Réalisation et test:
On commence la réalisation de ce projet en suivant le plan ci –dessous étape par étape :

 Automatisation de l’arrosage des plantes.
 Automatisation de remplissage du château d’eau.
 Allumage automatique de la lampe de couloir par détection de mouvement.
 Automati sation de l a porte de garage : ouverture/ fermeture par RFID.
 Lecture d es déférents capteurs de la maison et afficher les mesures captés dans un
afficheur LCD.

 Si la température est anormale ou s’il y a une fuite de gaz :
 Envoi d’un message SMS pour inform er l’utilisateur.
 Lancement de ventilation .
 Déclenchement de système d’alarme .

 Développement d’une interface web principale qui inclue les quatre interfaces web
suivantes :
 Une interface web pour commander l’éclairage.
 Une interface web pour commander de s portes et des volets.
 Une interface web pour la vidéo surveillance.

77
 Une interface web pour contrôler les déférents capteurs de la maison tel que la
température, l’humidité, butane de cuisine, monoxyde de carbone (CO) de
douche, le niveau d’eau dans le ch âteau…
 Exécution de tous les programmes en arrière -plan.
II.1. Arrosage automatique des plantes :
Pour réaliser l’arrosage automatique des planes on a implémenté dans le RPi une boucle
de régulation non linéaire (commande par hystérésis) .
Le principe est simple , on commence par mesurer la quantité d’eau à l’aide d’un
transmetteur ( capteur d’eau ), on compare l’information de mesure reçue avec les deux seuils de
l’hystérésis (bas et haut).
 Si la quantité d’eau est inférieure à seul bas, on ouvre l’Electrova nne.
 Si la quantité d’eau est supérieure à seul haut, on ferme l’Electrovanne.

Remarque : le programme est développé en Python.

Programme : Annexe 1

Matériels utilisés :
 Electrovanne 220V~
 Capteur de niveau d’eau
 Relais pour commander l’ électrovanne .
 GrovePi+ (Entré analogique).

Test :

Figure 67: Test de l'arrosage

78
II.2. Remplissage automatisé du château d’eau
Ici, on a commandé la pompe par hystérise . La pompe démarre lorsque le niveau d’eau
est inférieur à seuil bas de l’hystérise et s’arrête lorsque le niveau d’eau dépasse le seu il haut de
l’hystérise . Ainsi de suite.

Remarque : le programme est développé en Python.

Programme : Annexe 2

Matériels utilisé :

 Capteur ultrasonique pour mesurer le niveau d’eau.
 Pompe 12 V
 Alimentation stabilisé 12V pour alimenter la pompe
 Relai pour commander la pompe
 LCD pour l’affichage (niveau d’eau)
Test :

Figure 57: Test de remplissa ge automatisé du château d'eau

79
II.3. Allumage automatique de la lampe du couloir par
détection de mouvement :
Si un mouvement est détecté, le Raspberry Pi allume la lumière. Après détection du
dernier mouvement, la lumière reste encore al lumée durant la temporisation d’ extinction r églée
puis s’ éteint automatiquement.

Remarque : le pr ogramme est dév eloppé en Python.

Programme : Annexe 3

Maté riels utilisé :

 LED
 Détecteur de mouvement hc-SR501

Test :

Figure 68: Test de l’éclairage par détection de mouvement
II.4. Automatisation de la porte de la maison :
ouverture/ ferm eture par RFID
On commence par lire le tag RFID connecté à Arduino uno , puis on déci de à réagir selon
le code reçue . L’ouverture ou la fermeture de porte se fait par un moteur pas à pas connecté à
Raspberry Pi. Cette dernière écoute en permanence l’ordre provenant d’Arduino à travers une
communication série (USB) , en ouvrant la porte s’elle est fermée ou en la ferm ant s’elle est
ouverte .

80
Maté riels utilisé :
 Arduino uno
 RFID
 Moteur pas à pas
Remarque :
Ici, nous avons développé deux programme s:
 Le premier programme s’écrit en langage Arduino sert à lire le tag RFID et envoie
l’ordre à R Pi si le code reçue est correct (Annexe 4).
 Le deuxième programme s’écrit en Python sert à écouter en permanence l’ordre
provenant d’Arduino en ouvrant la porte s’elle est f ermée ou en la fermant s’elle est
ouverte (Annexe 5).
Pour assurer la communication par USB entre PRi et Arduino, on a installé le logiciel
« pyseriel ».
Regarder « I.2.10. Communication par USB entre PRi et Arduino, la page 70 »

Test:

Figure 69: Test automatisation de porte de garage
II.5. Lecture des déférents capteurs de la maison et
afficher les mesures captés dans un afficheur LCD.
Puisque les paramètres de la maison ( température , l’humidité, le butane , le monoxyde de
carbone et le remplissage de château d’eau) évaluent lentement et l’afficheur a cristal liquide
(LCD) ne peut pas afficher tous ces paramètres en même temps. O n a proposé de faire une
boucle et afficher tous ces paramètres un à un.
Matériels utilisées :

81
 DHT11 .
 MQ-X
 Capteur ultrasonique
 LCD.

Remarque : le programme est développé en Python.
Programme : Annexe 6

Test :

Figure 70: Affichage de s déférents paramètres de la maison.

II.6. Envoi d’un message SMS pour informe r
l’utilisateur que la température est très élevée :
Comme toujours, on commence par mesurer la température est l’humidité (cuisine, douche), on
compare la température avec une consigne prédéfini, si la température dépasse la consigne, on
déclenche l e systè me d’alarme, on lance le climatiseur et on envoie un message SMS à l’usager .

Matériels :
 DHT11 .
 Buzzer .
 Arduino uno .
 Module GSM.
 LCD.

82
Remarque :
Dans cette partie, nous avons aussi développé deux programmes:
 Le premier programme s’écrit en Python , sert à lire en permanence les déférents
paramètres de la maison . si un paramètre est anormal le RPi envoie un ordre à
l’Arduino pour informer l’usager (Annexe 7) .
 Le deuxième programme implémenté dans la carte Arduino (développé en langage
arduino) , sert à é couter en permanence les ordres provenant de Raspberry Pi et envoie
les message s SMS correspond à ces ordre s (Annexe 8) .

Pour assurer la communication par USB entre Raspberry P i et Arduino, nous avons déjà installé
le logiciel « pyseriel ». Regarder « I.2.10. Communication par USB entre PRi et Arduino, la page
70 »

Test :

Figure 71: Test envoi de SMS si la température est très élevée (cuisine et douche).

Si la température dépasse une consigne prédéfini , le Raspberry Pi e nvoi un ordre à l’ard uino. Ce
dernier analyse l’ordre provenant de RPi et envoie un message SMS à l’usager.

83

Figure 72: Message SMS pour informer l’usager que la température est très enlevée .

II.7. Envoi d’un message SMS pour informer
l’utilisateur qu’il y a une fuite de gaz:
Même chose que la partie précédente, on commence par mesurer la concentration de gaz
(cuisine, douche), on la compare av ec une consigne prédéfini, si la concentration de gaz dépasse
la consigne, on décl enche le système d’alarme, on lance la ventilati on et on envoie un message
SMS au l’usager .

Matériels utilisé :
 MQ2.
 Buzzer.
 Arduino uno.
 Module GSM.
 LCD.
Programme : Annexe 9

Test :

84

Figure 73: Test envoi de SMS s’il y a un e fuite de gaz (cuisine et douche).

Si la concentration de gaz dépasse une consigne prédéfinie, le Raspberry Pi envoie un signe à
l’arduino, cette dernière analyse ce signe et envoie un message SMS à l’usager.

Figure 74: Message SMS pour informer l'usager qu'il y a une fuite de gaz

85
II.7. Développeme nt web :
Pour contrôler notre maison à distance . Nous avons développée avec HTML/CSS une
Interface web principale dispose quatre sous interface
 La première interface dédiée pour commander l’éclairage.
 La deuxième interface réservée pour commander les portes et les volets.
 La troisième interface dédiée pour la vidéo surveillance
 La quatrième interface réservée pour contrôler les paramètres de la maison.
II.7.1. Interfac e web principale :
On commence par développer une interface web principale en utilisant le HTML et le CSS.

Figure 75: Interface web principale
Lorsqu’on veut consulter un service parmi les quatre services disponibles , on clique sur l’icône
correspondant . Une sous interface web s’affiche.
II.7.2. Interface web pour commander l’éclairage :
Le développement de cette interface se fait par l’utilisation de PHP, HTML et CSS.

86

Figure 76: Interface web pour commander l'éclairage

Pour commander l’éclairage on a créé deux scripts python pour chaque lampe , un script pour
allumer la lampe et l’autre pour l’atteindre.
pour exécuter ces script depuis PHP on a utilisé la fonction exec( ).

Remarque :
Pour permett re exécuter des scripts python depuis l’interface web ( sans être root ). On a
installé wiringPi.

II.7.3. Interface web pour commander des portes et
des volets :

Même chose que l’interface web précédente :

Figure 77: Interface web pour commander les portes et les volets
Ici, On a créé deux scripts python, le premier pour commander le moteur pas à pas dans un sens
(ouvrir la porte ) et le deuxième pour le commander dans l’autre sens (fermer la porte ).

87
II.7.4. Interface web pour la vidéosurveillance :
Pour développer cette interface on a utilisé le PHP, HTML et CSS.

Figure 78: Interface web pour la surveillance en ligne

Pour démarrer la vidéo surveillance depuis PHP on a utilisé la commande exec(‘sudo service
motion start’) et exec(‘sudo service motion stop’) pour l’arrêter.

Pour balayer l’espace par la caméra , on a col lé cette dernière avec un servomoteur.
La commande de servomoteur se fait par des flèches en bas de l’interface web.
II.7.5. Interface web pour contrôler les paramètres de
la maison :
Le développement de cette interface se fait par l’utilisation de HTML, CSS et JavaScript.

Figure 79: Interface web pour contrôler les paramètres de la maison

On a utilisé le Framework Flask . Pour afficher les différents paramètres d e notre maison dans
une interface web .
Flask est un Framework nous permet tre d’échanger des données entre un script écrit en pyt hon et
un autre développé en HTML .

88
On a utilisé le fichie r de justGage.com pour animer notre page web.
II.8. les interfaces Web sous Android :
Voici les interf aces web développé sous Android

Figure 80: Interfaces web principale sous
Android
Figure 81 : Interfaces web pour commander
l’éclairage sous Android

89

Figure 71: Interface web pour commander
les portes et les volets
Figure 72: Interface web pour la surveillance
en ligne sous Android

90

Figure 3:Interface web pour contrôler les paramètres de la mais on sous Android
II.9. Exécution de tous les programmes réalisés en
arrière -plan :
La technique est très simple : on ajoute le petit symbole & à la fin de la commande que nous
voulons envoyer en arrière -plan.
Exemple :

 sudo python porte.py &
Conclusion :
Une fois toutes ces phases réalisées avec succès, on peut dire que le système est fiable d’un point
de vue matériel et logiciel.

91

Conclusion Générale :

Les objectifs mentionnés lors du cahier de charge ont été tous atteint s. Bien que certains aient
été modi fiés en cours de réalisation, d’autre part, les possibilités d’améliorations sont quasi
infinies.

Notre mission principale consistait à concevoir et implémenter une interface homme/machine
pour commander, surveiller, contrôler les dispositifs domotiques localement ou à distance en
utilisant le Raspberry Pi 2. Dans un premier temps on a cerné les besoins de l’usager suivant
trois axe le confort , la sécurité, la communication, d’autres par on a trouvé les solutions
technologiques pour répondre à chaque situation .

 Le confort : l’usager peut commander sa maison de n’importe quel dispositif connecté à
internet. L’arrosage des plantes se fait d’une manière automatique , aussi le remplissage
du château d’eau.

 La communication : le propriétaire est informé de toutes informations utiles au sujet de la
maison par l’interface web .

 La sécurité : Notre système domotique en cas de déclenchement d’un incident ( incendie ,
inondation ou fuite de gaz toxique) peut limite r ou élimine r les dégâts , ceci en coupa nt
l’électricité et en ferm ant les vanne s des sources du gaz. Aussi il envoie un message
SMS au propriétaire pour l’informer de l’état de son foyer .

Le résident peut ouvrir ou fermé la porte d’entrée d’une manière automatiqu e en
présentant son identifia nt présent dans le tag RFID.

Ce sujet reste ouvert à de nombreuses améliorations prometteuses, il pose les bases d’une
domotiqu e à coût faible tournant sous Linux.

92
Bibliographies:
[1] Malcolm Maclean, Raspber ry Pi: Measure, Record, Explore, 16/4/2016 .
[2] apprenez à programmer en python : le développement en python n’a jamais été facile.
[3] Mathieu Nebra, Apprenez à créer votre site web avec HTML5 et CSS3 , 06/ 09/ 2013
[4] Ismail Atitallah & Yang Tai, PFE Eclipse IoT pour un scénario domot ique.
[5] Samuel Bar, Steven Bargain , Projet Domotique, Commande, et gestion , 2013/2014.
[6] Paul MEGUEULE, Fabien NOIR, Nicolas ROULLEAU, Florian ROUSSEL RAPPORT DE
PROJET – EI4 AGI PROJET DOMOTIQUE DAIO« Domotique All -In-One » , 2013/2014
[7] Florian Roye r & Jérémy Gondry, Maison Communicante RAPPORT DE PROJET IMA4 –
PROJET N°18 , 15 avril 2014
[8] Mathieu Nebra (Mateo21), Concevez votre site web avec PHP et MySQL , 6/ 09/ 2013
[9] Johann Pardanaud (Nesk) et Sébastien de la Marck (Thunderseb), Dynamisez vos sites web
avec Javascript !, 9/ 12/ 2012
[10] Mathieu Nebra (M@teo21), Reprenez le contrôle à l'aide de Linux !, 04/ 01/ 2013
[11] Jean -Paul Armspach Pierre Colin Frédérique Ostré -Waerzeggers , LINUX Initiation et
utilisation
[12] Marc -Olivier Schwartz, Mon itor Your Home with the Raspberry Pi B+, 2015/ 02
[13] Astalaseven, Eskimon et olyte, Arduino pour bien commencer en él ectronique et en
programmation, 4/ 08/ 2012.
[14] Tom Barbette, PFE: Implémentation d’un Système de Contrôle Domotique , 2012/2013

Webo graphie :

[14] la domoti que. url https://www.linkedin.com/topic/la -domotique?trk=pprofile_topic
[15] Raspberry : Installation et configuration url
http://www.aidewindows.net/materiel_ordinateur -mini-pc-raspberry -configuration.php
[16] Configurer une connexi on WiFi sur le Raspberry -Pi url
http://www.windtopik.fr/configurer -wifi-raspberry -pi/
http://asliceofraspberrypi.blogspot.com/2013/02/setting -up-wireless -networking -part-1.html
[17] grov e_lcd_rgb url https://github.com/Seeed -Studio/Grove_LCD_RGB_Backlight
[18] grove installation et configuration url http://www.dexterindustries.com/GrovePi/get -started –
with-the-grovepi/setting -software/
[19] php on raspberry pi url http://www.raspberry -pi-geek.com/Archive/2014/07/PHP -on-Raspberry -Pi
[20] Programming tutorial url http://kurup87.blogspot.com/2014/09/raspberry -pi-gpio-led-onoff –
wiring -pi.html
[21] lancer progr amme python depuis PHP url https://openclassrooms.com/forum/sujet/pi –
lancer -programme -python -depuis -une-page -web
[22] Tiges de framboisier PI et GPIO: Contrôler la LED depuis une interface web url
http://www.peatonet.com/fr/raspberry -pi-y-los-pines -gpio-controlando -el-led-desde -una-
interfaz -web/
[23] Raspberry et domotique : lecture d'une sonde de température url
http://www.tryptics.com/fr/content/raspberry -et-domotique -lecture -dune -sonde -de-temperature –
1ere-partie

93
[24] Liste de tutoriels Raspberry pi sur l e wiki url http://nagashur.com/blog/2015/04/14/tutoriels –
raspberry -pi/
[25] Temperature monitoring with the Raspberry Pi url http://iada.nl/en/blog/article/temperature –
monitoring -raspberry -pi
[26] Adding a DHT sensor to the Raspberry Pi url http://sharedme morydump.net/adding -a-dht-
sensor -to-the-raspberry -pi
[27] Raspberry Pi. Sensor Ultrasonido. Interfaz Web url
http://riverajefer.blogspot.com/search/label/PHP
[28] Thermometer and Humidity sensor DHT11 url http://www.iknowit.info/other/raspberry –
pi/thermometer -and-humidity -sensor -dht11
[29] Serving Raspberry Pi with Flask url http://mattrichardson.com/Raspb erry-Pi-Flask/
[30] BUILD A PYTHON -POWERED WEB SERVER WITH FLASK url
https://www.raspberrypi.org/learning/python -web-server -with-flask/worksheet/
[31] Faire de la vidéo -surveillance en ligne avec votre Raspberry Pi et sa caméra ! url
http://raspbian -franc e.fr/video -surveillance -raspberry -pi-camera/
[32] Raspberry Pi Streaming video to Ustream url https://support.ustream.tv/hc/en –
us/articles/207852457 -Raspberry -Pi-Streaming -video -to-Ustream
[33] Raspberry Pi : Serveur de surveillance url http://techjp.net/r aspberry -pi-serveur -de-
surveillance/
[34] Webcam Streaming Video On Raspberry Pi via Browser url https://oscarliang.com/webcam –
streaming -video -raspberry -pi-via-browser/
[35] Comment transformer votre Raspberry Pi en serveur webcam ? url
http://www.epingle. info/?p=2682
[36] Python et le port GPIO url
http://deusyss.developpez.com/tutoriels/RaspberryPi/PythonEtLeGpio/
[37] Controle de acesso com módulo RFID RC522 url
http://www.arduinoecia.com.br/2014/12/controle -de-acesso -modulo -rfid-rc522.html
[38] HC-SR04 Ultrasonic Range Sensor on the Raspberry Pi url http://www.modmypi.com/blog/hc –
sr04-ultrasonic -range -sensor -on-the-raspberry -pi
[39] Sensores de humedad y temp eratura DHT11 y DTH22 en la Raspberry Pi url
http://carlini.es/sensores -de-humedad -y-temperatura -dht11 -y-dth22 -en-la-raspberry -pi/
[40] Sensores de humedad y temperatura DHT11 y DTH22 en la Raspberry Pi url
http://carlini.es/sensores -de-humedad -y-temperatu ra-dht11 -y-dth22 -en-la-raspberry -pi/
[41] Contrôler son bureau à distance avec VNC sur le Raspberry pi url http://the –
raspberry.com/vnc
[42] Communication par USB entre Raspberry Pi et Arduino url
http://electroniqueamateur.blogspot.com/2014/05/communication -par-usb-entre -raspberry.html

Similar Posts