people.coins-lab.orgpeople.coins-lab.org/.../encadrement/pfe-isima/contiki-s… · web viewles...
TRANSCRIPT
République Tunisienne Université de Monastir
Institut Supérieur d’Informatique de Mahdia
Projet de fin d’études N° d’ordre: 114.
Ministère de l’Enseignement Supérieur et de la recherche scientifique
Présenté à
L’institut supérieur de l’informatique Mahdia
En vue de l’obtention
Du Diplôme Nationale De licence Appliqué En Informatique
Par
HALLAB SAADJRAIDI AMEL
Soutenu le 03/06/2013 devant la commission d'examen:
Mr. Riad HADJ M'TIR Président
Mr. Karim baati Membre
Mr. Omar Cheikhrouhou Membre
MEMOIRE
Développement d’un Système de surveillance de
L’environnement à base d’un réseau de
كلمة شكر
Introduction générale
البد لنا ونحن نخطو خطواتنا األخيرة في الحياة الجامعية من وقفة نعودإلى أعوام قضيناها في رحاب الجامعة مع
أساتذتنا الكرام الذين قدموا لنا الكثير باذلين بذلك جهودا كبيرة في بناء جيل الغد لتبعث األمة من جديد
كن عالما .. فإن لم تستطع فكن متعلما، فإن لم تستطع فأحب العلماء، فإن لم تستطع فال تبغضهم
الدكتور عمر الشيخ روحو : الذي نقول له بشراك قول رسول الله صلى الله عليه وسلم
كما اننا نتوجه بشكر خاص إلى من ساعدنا في إتمام هذا العمل
الدكتورة : ألفة قدور وكذلك نشكر كل من ساعد على إتمام هذا
إلى الذين مهدوا لنا طريقإلى جميع العلم والمعرفة
أساتذتنا
إن الحوت في البحر ، والطير في السماء ، " "ليصلون على معلم الناس الخير
البح
Introduction générale
إلى من جرع الكأس فارغاً ليسقيني قطرة حب إلى من كلّت أنامله ليقدم لنا لحظة سعادةإلى من حصد األشواك عن دربي ليمهد لي طريق العلمإلى القلب الكبير
المبروك حالب والدي العزيز إلى من أرضعتني الحب والحنانإلى رمز الحب وبلسم الشفاءإلى القلب الناصع بالبياض أمي الحنونة مسعودة األسيرإلى القلوب الطاهرة الرقيقة والنفوس البريئة إلى رياحين حياتي اخوتي واخواتياآلن تفتح األشرعة وترفع المرساة لتنطلق السفينة في عرض بحر واسع مظلم هو بحر الحياة وفي هذه الظلمة ال يضيء إال قنديل الذكريات ذكريات األخوة البعيدة إلى الذين أحببتهمواحبوني
إلى رفيقتي في كل هذه الرحلة وشريكتي في هذاالعمل
أمال الجرايدي
Introduction générale
SommaireIntroduction générale ................................................................................................................................................................1
1. Contexte de l’étude........................................................................................8
2. Travail demandé............................................................................................9
3. Résultats et fonctionnalités attendus..............................................................9
4. Conclusion...................................................................................................10
Chapitre 1 : les réseaux de capteur sans fils……………….
……………………………………………….11
1. Qu’est-ce que un réaux de capteur sans fil..................................................................12
1.1.Généralité....................................................................................................12
1.2.Architecture..................................................................................................12
2. Domaines d’applications des réseaux de capteurs.........................................13
2.1.Application militaire....................................................................................14
2.2.Application domestiques..............................................................................15
2.3.Les applications industrielles......................................................................15
2.4.Application environnementales....................................................................16
2.5.Applications médicales................................................................................17
3. Système d’exploitation Contiki OS..................................................................................19
3.1.Installation...................................................................................................19
3.2.Fonctionnalité..............................................................................................21
3.3.Le simulateur Cooja.....................................................................................22
3.4.Contiki /TinyOS............................................................................................25
4. Conclusion...................................................................................................26
Introduction générale
Chapitre 2 communications dans Contiki ………………………………..…………………….………………27
1. La modèle OSI.........................................................................................................................28
2. Définition d’une pile protocolaire...................................................................................29
3. La pile protocolaire rime................................................................................30
4. La pile protocolaire uIP......................................................................................................32
5. Le protocole IPv6...................................................................................................................34
6. Conclusion......................................................................................................37
Chapitre 3 : réalisation d'un réseau de capteur sans fils ....................................….38
1. Introduction..............................................................................................................................39
2. Environnement de travail et outils de développements...................................39
3. Extrait de code pour Contiki..............................................................................................40
3.1.Hello Word...................................................................................................40
3.2.Constructeur de graphe à partir d’un fichier texte...............................................42
4. Simulation de réseaux de capteur sans fils...................................................................43
5. Affichage des valeurs et des courbes sur les interfaces web...........................46
6. Où en peut exploiter notre projet....................................................................49
7. Amélioration de projet....................................................................................49
8. conclusion………………………………………………………………………….….49
Conclusion générale…………………………………………………………………………………………………………………..51
Bibliographie………………………………………………………………………………………………………………...….
………..54
Introduction générale
Table de figure
Figure 1 architecture d'un réseau de capteur sans fils..........................................................14
Figure 2 Domaine d’application d’un réseau de capteur sans fils........................................19
Figure 3 démarrage de Contiki sur VMware.........................................................................21
Figure 4 Authentification de Contiki.......................................................................................21
Figure 5 interface graphique (bureau) Contiki......................................................................22
Figure 6 Architecture de Contiki.............................................................................................23
Figure 7 : le simulateur Cooja..................................................................................................25
Figure 8 la modèle OSI.............................................................................................................30
Figure 9 piles protocolaires pour Contiki est leurs fonctionnalités......................................31
Figure 10 Carte générale de pile rime.....................................................................................32
Figure 11 Architecture de ContikiMAC.................................................................................33
Figure 12 Fonctionnalités de la pile uIP..................................................................................34
Introduction générale
Figure 13Utilisation de protocole IPv6....................................................................................35
Figure 14 Schéma de la trame dans IPv6................................................................................36
Figure 15 Adresse IP version 6 sur Contiki............................................................................37
Figure 16 Communication dans Contiki.................................................................................38
Figure 17 Système d’exploitation Contiki...............................................................................41
Figure 18 Description de code de class hello Word................................................................42
Figure 19 Description d’une procédure très important pour Contiki..................................43
Figure 20 Choix du type des nœuds avant faire la compilation de code..............................44
Figure 21 Visionnaire de capteur sur Cooja...........................................................................45
Figure 22 les positions de nœuds sur le plan géographique...................................................45
Figure 23 interface graphique de notre réseau sur le simulateur Cooja..............................46
Figure 24 les valeurs numériques de l’environnement sur Mozilla......................................47
Figure 25 Courbe de luminosité sur le web.............................................................................48
Figure 26 Courbe de température sur le web........................................................................49
Figure 27 Communication entre les nœuds affichées sur le web..........................................49
Figure 28 projet assai en vol chez Airbus............................................................................50
Introduction générale
1. Contexte de l’étude
Le travail présenté ici est dans le cadre du projet de fin d’études dans le
cadre de formation à l’institut supérieur d’informatique de Mahdia
« ISIMA ».
. Il s’agit du développement d’un système de surveillance
d’environnement à base d’un réseau de capteur sans fil.
Dans cette partie nous décrivons brièvement le contexte général de
notre projet.
2. Travail demandé
Ce projet consiste à réaliser un système de surveillance de
l’environnement à base d’un réseau de capteurs sans fil. Il, permet
De :
Simuler plusieurs nœuds capteur
Détecter les paramètres de l’environnement grâce à un nœud
capteur (notamment l’humidité, la température, la luminosité)
Envoyer les données captées via l’interface radio des nœuds
capteurs à un nœud centrale appelé station de base.
Afficher en temps-réel les paramètres de l’environnement reçus.
Afficher de courbe sur une interface web
Introduction générale
3. Résultats et fonctionnalités attendus
Notre projet doit répondre au besoin suivant :
Un utilisateur peut observer les paramètres de l’environnement depuis
un navigateur web en utilisent l’adresse de capteur comme URL.
Ainsi qu’il peut aussi observer les courbes de variation de paramètre en
question.
Un utilisateur peut observer la communication entre les nœuds.
4. Conclusion
Dans ce chapitre nous avons mettrons les contextes générales de notre
étude le travail demandé ainsi les résultats attendus de notre système
de surveillance dans le chapitre prochaine en va détailler les réseaux de
capteur sans fils.
Introduction générale
1. Qu’est-ce que un réaux de capteur sans fil
Aujourd’hui, les réseaux sans fil sont de plus en plus populaires du fait
de leur Facilité de déploiement. Ces réseaux jouent un rôle primordial
au sein des réseaux Informatiques. Ils offrent des solutions ouvertes
pour fournir la mobilité ainsi que des Services essentiels là où
l’installation d’infrastructures n’est pas possible.
1.1. Généralité
Un réseau de capteurs peut être vu comme un réseau de microsystèmes
autonomes disséminés dans un espace donné et communicant entre eux
via une liaison sans fil. L’espace où agissent les capteurs s’appelle un
champ de captage. Ce qui est intéressant dans les réseaux de capteurs,
c’est l’aspect autonome car l’intelligence des capteurs permet de
décentraliser l’intelligence du réseau.
1.2. Architecture
Un réseau de capteur sans fils (WSN) est composé de capteurs ayants
de capacité de détection et de mesure d’évènements, et de calcul, est
munis d’éléments de communication qui donne à un administrateur la
capacité de manipuler ,observer et réagir aux évènements et aux
phénomènes dans un environnement spécifique ,dit champ de captage.
L'administrateur est une entité civile gouvernementale, commerciale ou
industrielle. L'environnement peut être le monde physique, un système
biologique, ou un cadre de technologie informatique.
Introduction générale
Il y a quatre composants de base dans un réseau de capteurs:(1) un
ensemble de capteurs distribues ou localises; (2) un réseau
d'interconnexion (habituellement, mais pas toujours, sans fil); (3) Un
point central appelé puits (Sink) pour le regroupement et le traitement
de l'information et ; (4) un ensemble de ressources
informatiques déployées sur le Sink pour traiter les données, l’évolution
des évènements, le statut requêtes et le data mining.
Figure 1 architecture d'un réseau de capteur sans fils
2. Domaines d’applications des réseaux de capteurs
La taille de plus en plus réduite des micro-capteurs, le coût de plus en
plus faible, la large gamme des types de capteurs disponibles
Introduction générale
(thermique, optique, vibrations,...) ainsi que le support de
communication sans fil utilisé, permettent aux réseaux de capteurs
D’envahir plusieurs domaines d'application. Ils permettent aussi
d'étendre les applications existantes et de faciliter la conception d'autres
systèmes tels que le contrôle et l'automatisation des chaînes de
montage. Les réseaux de capteurs ont le potentiel de révolutionner la
manière même de comprendre et de construire les systèmes physiques
complexes. Ils peuvent aussi se révéler très utiles dans de nombreuses
applications lorsqu'il s'agit de collecter et de traiter des informations
provenant de l'environnement.
Parmi les domaines où ces réseaux peuvent offrir les meilleures
contributions, nous citons les domaines : militaire, environnemental,
domestique, santé, sécurité.
Des exemples d'applications potentielles dans ces différents domaines
sont exposés ci-dessous.
2.1. Application militaire
Comme dans le cas de plusieurs technologies, le domaine militaire a été
un moteur initial pour le développement des réseaux de capteurs. Le
déploiement rapide, le coût réduit, l'auto-organisation et la tolérance
aux pannes des réseaux de capteurs sont des caractéristiques qui
rendent ce type de réseaux un outil appréciable dans un tel domaine.
Comme exemple d'application dans ce domaine, on peut penser à un
réseau de capteurs déployé sur un endroit stratégique ou difficile
d'accès, afin de surveiller toutes les activités des forces ennemies, ou
d'analyser le terrain avant d'y envoyer des troupes (détection d'agents
Introduction générale
chimiques, biologiques ou de radiations). Des tests concluants ont déjà
été réalisés dans ce domaine par l'armée américaine dans le désert de
Californie
2.2. Application domestiques
Avec le développement technologique, les capteurs peuvent être
embarqués dans des appareils, tels que les aspirateurs, les fours à
microondes, Les réfrigérateurs, les magnétoscopes, etc. Ces capteurs
embarqués peuvent interagir entre eux et avec un réseau externe via
Internet pour permettre à un utilisateur de contrôler les appareils
domestiques localement ou à distance. Le déploiement des capteurs de
mouvement et de température dans les futures maisons dites
intelligentes permet d’automatiser plusieurs opérations domestiques
telles que : la lumière s’éteint et la musique s’arrête quand la chambre
est vide, la climatisation et le chauffage s’ajustent selon les points
multiples de mesure, l’alarme est déclenchée par le capteur anti
intrusion quand un étranger veut pénétrer dans la maison
2.3. Les applications industrielles
Les RCSF peuvent donner des indicateurs sur l’état d’une machine ou
sur le fonctionnement de l’ensemble d’une chaîne de production.
Grâce au mode de transmission sans fil, un capteur peut fournir des
données à partir d’emplacements inaccessibles par d’autres moyens. La
tendance actuelle de miniaturisation des capteurs ouvre de nombreuses
perspectives comme celle d’associer un capteur à une pièce pour
obtenir son niveau d’usure au cours du temps.
Introduction générale
En plaçant des capteurs tout au long d’une chaîne de production, on
peut imaginer les informations qui pourraient être consultables en
temps réel. Ces données pourraient concerner la quantité et la qualité de
la production à différents points de la chaîne, indiquer la cause des
retards (pannes, reconfiguration de machine, etc.).
2.4. Application environnementales
Le contrôle des paramètres environnementaux par les réseaux de
capteurs peut donner naissance à plusieurs applications. Par exemple :
Les réseaux de capteurs sans fils aident à l’étude de phénomènes
complexes tels que les tremblements de terre, les éruptions volcaniques,
les ouragans et les tsunamis. Ils fournissent des données permettant
d’établir des modèles de prévision. Pour quelques applications
présentées dans cette section, des systèmes filaires existaient déjà mais
étaient plus difficiles à déployer et n’offraient parfois pas autant de
fonctionnalités
La prévention des risques d’incendie ou d’inondation fait partie des
domaines où les réseaux de capteurs sans fils apportent les plus grandes
perspectives. Dans ce type d’applications, les capteurs sans fil sont en
charge de la détection de tous phénomènes anormaux observés dans
leur périmètre d’action. Il peut s’agir d’une brusque augmentation de la
température ou du taux d’humidité caractéristique d’un début
d’incendie ou d’inondation.
L’observation des animaux dans leur habitat prend une place
importante dans les applications environnementales exemple le projet
[Stojmenovic 2005]. Les capteurs sans fil déployés dans une réserve
Introduction générale
naturelle donnent des informations de localisation sur les animaux, leur
état de santé, sur leur intégration dans un nouvel habitat. Les réseaux de
capteurs sans fils ont permis l’observation d’oiseaux sans troubler leur
habitude en évitant une intervention humaine.
2.5. Applications médicales
Les applications liées à la santé représentent une part importante des
travaux de recherche sur les réseaux de capteurs exemple :
La prévention des risques de chute chez les personnes âgées est un
exemple d’application. Ces chutes sont dans la plupart du temps causes
de fractures (fémur, bassin,…) qui s’accompagnent de longues
semaines d’inactivité ou dans le pire des cas d’invalidités partielles
permanentes. Cette perte d’autonomie oblige la personne à faire appel à
une aide-soignante à domicile ou à intégrer un centre spécialisé.
Dans une première étape, Les capteurs sans fil déterminent le « degré
d’équilibre » de référence de la personne. Il servira d’étalon pour les
mesures effectuées durant les jours suivants afin d’évaluer les risques
de chute et d’en avertir qui de droit.
Les réseaux de capteurs peuvent être utilisés pour assurer une
surveillance permanente des organes vitaux de l’être humain grâce à
des micro-capteurs qui pourront être avalés ou implantés sous la peau
(surveillance de la glycémie, détection de cancers, etc.).
Introduction générale
3. Système d’exploitation Contiki OS
Il existe plusieurs systèmes d’exploitation utilisés au niveau du réseau de capteurs sans fil, parmi lesquels nous citons Contiki, MANTIS et TinyOS. Dans notre projet nous avons travaillé avec le système d’exploitation Contiki OS qui va être présenté dans ce qui suit.Nous avons choisi Contiki car il présente les avantages suivante - simple - open source- programmé en langage c- disponible sur le web- rédaction de la consommation d’énergie
3.1. Installation
Pour l’installation de Contiki :
Il faut télécharger instant Contiki depuis Source forge par exemple, il
s’agit d’un fichier de grande taille presque 2 GB
une fois le téléchargement fini, il faut décompresser le fichier instant
contiki.zip et plassé le nouveau répertoire sur le bureau
Dans une deuxième étape, il faut télécharger et installer la machine
virtuelle VMware Player
Lancer le fichier instant Contiki 2.6.vmx dans VMware Player, et
attendre le démarrage d’Ubuntu linux.
Introduction générale
Figure 3 démarrage de Contiki sur VMware
Connectez-vous à Contiki instantanée. Le mot de passe est : user
Figure 4 Authentification de Contiki
Et voilà Contiki est bien installé sur la machine virtuelle de Windows 7
Introduction générale
Figure 5 interface graphique (bureau) Contiki
3.2. Fonctionnalité
Contiki est un système d’exploitation open-source, multitâches,
Léger, et flexible pour les capteurs des réseaux sans fils, écrits par
Adam Dunkels au groupe des systèmes embarqués en réseau à l'Institut
suédois d’informatique.
Actuellement Contiki est Constituée de seize développeurs de SICS,
SAP AG, Cisco, Atmel, NewAE et Munich TU.
Introduction générale
Contiki contient deux piles de communication : uIP et Rime (détaillées
dans le chapitre suivant).
Contiki est écrit en langage C et est librement disponible étant donné
que la source est ouverte conformément à une licence BSD.
Ainsi qu’il possédé un outille de simulation Cooja en va le revenir dans
la partie suivante
Figure 6 Architecture de Contiki
Introduction générale
3.3. Le simulateur Cooja
Les outils de simulation pour les réseaux de capteurs sans fil sont de
plus en plus utilisés pour étudier les bandes de capteurs et de tester de
nouvelles applications et de protocoles dans ce domaine de recherche
en pleine évolution. Il y a toujours un préoccupant particulièrement lors
de l'utilisation de la simulation que les résultats peuvent ne pas refléter
un comportement précis. Il est donc essentiel de connaître les forces et
les faiblesses de ces simulateurs. Dans cette partie, une étude détaillée
de simulateurs Cooja est présenté.
Pour simuler un réseau de capteur, nous se basons sur une première définition de l’architecture matérielle (organisation du réseau : nombre de nœuds, de routeurs, topologie du réseau, répartition géographique…), à partir de laquelle on va effectuer plusieurs simulations afin d’évaluer différents types des solutions et réglages de paramètres* COOJA est un simulateur pour le système d'exploitation de nœud de capteur Contiki*COOJA combine des simulations de capteur matériel de nœud et simulation du comportement de haut niveau en une seule simulation*COOJA est flexible et extensible en ce que tous les niveaux du système peuvent être modifiés ou remplacés
Introduction générale
* COOJA est une application Java, toutes les interactions avec Code Contiki se fait à travers Java Native Interface (JNI).*COOJA est essentiellement un simulateur de niveau de code pour réseaux constitués de nœuds exécutant Contiki OS. Les nœuds avec différents matériels de simulation et des logiciels embarqués différents peuvent coexister dans la même simulation. Simulation au niveau du code est atteinte par la compilation Contiki noyau, les processus utilisateur et des pilotes spéciaux de simulation de colle en code objet natif de la plate-forme de simulation, puis l'exécution de ce code objet de COOJA. Il est capable d'exécuter des programmes Contiki en deux différentes manières: soit en compilant le code du programme directement sur le processeur hôte, ou le compiler pour le microcontrôleur MSP430. Il peut simuler des réseaux de capteurs simultanément à différents niveaux, y compris là au niveau du système d'exploitation et au niveau du réseau (application)* Les limites de Cooja: Cependant, en raison de son extensibilité, le simulateur a un rendement relativement faible. Simulation de nombreux nœuds avec plusieurs interfaces chacun nécessite beaucoup de calculs, surtout quand les plugins sont commencé et enregistré en tant
Introduction générale
qu'observateurs à ces interfaces. Prend en charge un nombre limité de types de nœuds simultané, le simulateur doit être redémarré une fois le nombre de nœuds dépasse une limite permise.
Figure 7 : le simulateur Cooja
3.4. Contiki /TinyOS
Une expérimentation réalisée par un centre de recherche Brésilien,
compare TinyOS et Contiki lorsqu’ils sont implémentés sur un capteur
de type TelosB. Les tâches sont plus rapidement exécutées avec
Contiki, mais TinyOS est moins consommateur. Pour l’exécution
d’algorithme de sécurité, les résultats des 2 OS sont similaires. Les
tâches de communication fonctionnent mieux sur TinyOS,
probablement en raison d'une utilisation plus efficace de la pile de
communication. Les résultats ont montré que les deux OS peuvent être
optimisés pour réduire la consommation d'énergie lorsqu’ils sont
Introduction générale
paramétrés en conséquence par les développeurs. TinyOS et Contiki
ont été validés sur de multiples plates-formes matérielles. Mais,
l'article précis que généralement TinyOS peut fonctionner avec des
conditions de ressource inférieure liées au fait que le noyau Contiki est
plus complexe. L'article précise aussi que TinyOS est plus adapté
lorsqu'une faible empreinte mémoire est la priorité. Par contre si la
flexibilité est prioritaire, le choix se portera sur Contiki.
Dans le cas d'un scénario d'une ville intelligente où TinyOS et Contiki
sont en concurrence, Contiki est privilégié d'abord parce qu'il est écrit
en C et surtout suite à sa caractéristique majeure: la petite taille de sa
pile uIP
Concernant l'interopérabilité entre les deux OS, elle fonctionne bien,
lorsque la couche ContikiMAC et TinyOS est correctement paramétrée.
Source(http://fr.wikipedia.org/wiki/)
4. Conclusion
A travers ce chapitre nous avons commencé par présenter le réseau de
capteurs sans fil et l’architecture logicielle et matérielle utilisée. Nous
avons aussi présenté le système d’exploitation Contiki ainsi que le
simulateur Cooja. Dans le chapitre suivant nous allons détailler les
méthodes de communication entre les nœuds et les pile protocolaire
pour le système d’exploitation Contiki.
Introduction générale
Chapitre : 2
Communication dansContiki
1. La modèle OSI
Le modèle de référence OSI est le principal modèle pour les
communications en réseau. Bien qu'il existe d'autres modèles,
la majorité des fournisseurs de réseaux relient aujourd'hui leurs
produits au modèle de référence OSI, particulièrement
lorsqu'ils désirent former les utilisateurs à utiliser leurs
produits. Ils le considèrent comme le meilleur outil disponible
pour décrire l'envoi et la réception de données dans un réseau.
Le modèle OSI est un modèle théorique qui comprend
7 couches ayant chacune un rôle précis.
Introduction générale
1. Couche 1 Application
2. Couche2 Présentation
3. Couche3 Session
4. Couche 4 Transport
5. Couche 5 Réseau
6. Couche 6 Liaison de données
7. Couche 7 Physique
Introduction générale
Figure 8 la modèle OSI
2. Définition d’une pile protocolaire
Une pile de protocoles est une combinaison de plusieurs protocoles.
Plusieurs protocoles peuvent collaborer ou coopérer au sein d’une suite
ou d’une « pile de protocoles » (PROTOCOL STACK). Dans une pile
de protocole, les différents protocoles sont organisés, ordonnés,
hiérarchisés, les uns à la suite des autres, afin d’accomplir un ensemble
de tâches correspondant à tout ou partie du modèle OSI. Le
fonctionnement des différents protocoles de la pile doit être coordonné
afin de prévenir les conflits et les opérations inachevées.
Introduction générale
Contiki offre deux types de pile protocolaire :
la couche Rime, elle permet un dialogue vers les capteurs voisins
ainsi que le routage.
la couche uIP (micro IP), orientée Internet, elle offre les services
essentiels du protocole IP mais nécessite plus de ressources que Rime
Figure 9 piles protocolaires pour Contiki est leurs fonctionnalités
3. La pile protocolaire rime
Rime est une légère couche de communication qui réduit la complexité
de uIP.
La pile de communication Rime fournit un ensemble de primitives de
communication légères allant de best-effort anonyme sur la
radiodiffusion locale aux inondations réseau fiables.
Les protocoles de la pile Rime sont disposés dans un mode en couches,
où les protocoles les plus complexes sont implémentés en utilisant les
protocoles moins complexes.
Introduction générale
La pile de Rime prend en charge un seul bond et primitives de
communication multi-hop. Les primitives multi-hop ne précisent pas
comment les paquets sont acheminés à travers le réseau. Au lieu de cela,
le paquet est envoyé sur le réseau, le protocole de couche d'application
ou supérieure est invoquée à chaque nœud pour choisir le prochain saut
suivant. Cela permet de mettre en œuvre des protocoles de routage
arbitraires sur le dessus des primitives multi-hop.
Toutes les communications en Rimes ont identifiées par une chaine de
16 bits.
Figure 10 Carte générale de pile rime
Introduction générale
Par défaut, Contiki utilise ContikiMAC voilà l’architecture
Figure 11 Architecture de ContikiMAC
4. La pile protocolaire uIP
Pour l'envoi et la réception de données via IP, Contiki utilise les
fonctions fournies par le module uIP, mais Contiki ajoute un ensemble
de fonctions de gestion de connexion. Les fonctions de gestion des
connexions assure que les connexions IP, uIP et TCP sont reliés au
processus correct.
Introduction générale
La pile IP, uIP et TCP est destiné à permettre de communiquer en
utilisant la suite de protocoles TCP / IP, même sur de petites
microcontrôleurs 8 bits. En dépit d'être petit et simple, l'UIP ne
nécessite pas de leurs pairs d'avoir des piles complexes, en mode plein
écran, mais il peut communiquer avec des pairs exécutant une pile de
légèreté même. La taille du code est de l'ordre de quelques kilo-octets
et l'utilisation de la RAM peut être configurée pour être aussi faible que
quelques centaines d'octets.
L’implémentation de base uIP TCP permet à chaque connexion TCP
d'avoir un seul segment TCP en vol à un moment donné.
uIP ouvre les processus de connexion TCP est UDP
uIP ouvre les processus de connexion TCP est UDP par exemple :
tcp_connect (), tcp_listen (), udp_new ()
tcpip_event affiché lorsqu'une nouvelle connexion arrive, de nouvelles
données arrivent, la connexion est fermée , etc.
Introduction générale
Figure 13Utilisation de protocole IPv6
Grâce à des adresses de 128 bits au lieu de 32 bits, IPv6 dispose d'un
espace d'adressage bien plus important qu'IPv4. Cette quantité
d'adresses considérable permet une plus grande flexibilité dans
l'attribution des adresses et une meilleure agrégation des routes dans
la table de routage d'Internet. La traduction d'adresse, qui a été rendue
populaire par le manque d'adresses IPv4, n'est plus nécessaire.
IPv6 dispose également de mécanismes d'attribution automatique des
adresses et facilite la renumérotation. La taille du sous-réseau, variable
en IPv4, a été fixée à 64 bits en IPv6. Les mécanismes de sécurité
comme IPsec font partie des spécifications de base du protocole. L'en-
tête du paquet IPv6 a été simplifié et des types d'adresses locales
facilitent l'interconnexion de réseaux privés.
Introduction générale
Le déploiement d'IPv6 sur Internet est compliqué en raison de
l'incompatibilité des adresses IPv4 et IPv6. Les traducteurs d'adresses
automatiques se heurtent à des problèmes pratiques importants. Pendant
une phase de transition où coexistent IPv6 et IPv4, les hôtes disposent
d'une double pile, c'est-à-dire qu'ils disposen.t à la fois d'adresses IPv6
et IPv4, et des tunnels permettent de traverser les groupes
de routeurs qui ne prennent pas encore en charge IPv6.
Pourquoi IPv6 et non IPv5 ? Tout simplement à cause du numéro de version contenu dans les 4 premiers bits indiquant le numéro du protocole. En effet, le numéro 5 correspond au protocole STP.
Figure 14 Schéma de la trame dans IPv6
Introduction générale
Les adresses IPv6 ont pour première mission d'apporter un plus grand nombre d'adresses.Une adresse IPv6 est composée de 128 bits contre 32 bits pour IPv4. Le nombre d'adressesIPv6 disponibles a été estimé entre 1 564 et 3 911 873 538 269 506 102 adresses par mètre carré (océans compris). On peut donc considérer le nombre d'adresse IPv6 comme illimité.La représentation textuelle d'une adresse IPv6 se fait en découpant le mot de 128 bits de l'adresse en 8 mots de 16 bits séparés par le caractère ":", chacun d'eux étant représenté en hexadécimal. Par exemple :Fedc:0000:0000:0000:0400:a987:6543:210fDans un champ, il n'est pas nécessaire d'écrire les 0 placés en tête et plusieurs champs nuls consécutifs peuvent être abrégés par "::". Ce symbole ne peut apparaître qu'une seule fois dans une adresse.
Introduction générale
6. Conclusion
Ce chapitre a pris en charge une étude de communication et les pile
protocolaire dans notre système d’exploitation Contiki OS. Une
description détaillée de la pile de communication Rime et uIP même
une description générale de la modèle iso et le protocole IPv6. Cette
phase permet de comprendre les modes de communication entre les
nœuds et les applications dans un même système d’exploitation. Dans
le chapitre suivant, et en s’appuyant sur la mode de communication
entre les nœuds et les applications ente eux est le protocole IPv6 déjà
décrite nous allons accomplir la phase de la configuration et la
simulation et la réalisation de notre système de surveillance.
Figure 16 Communication dans Contiki
Introduction générale
CHAPITRE 3Réalisation d’un système de surveillance d’environnement à base d’un réseau de capteur sans fils WSNs
Introduction générale
1. Introduction
Après avoir détaillé dans le chapitre précédent les modes de
communication dans le système d’exploitation de réseau de capteur
sans fils WSNs et dans le chapitre précédent en a mise en œuvre les
WSNs ainsi leur utilisation et leur architecture on abordera dans ce
chapitre la dernière phase la réalisation de notre projet.
Nous commençons, dans la première partie, par préciser
l’environnement et les technologies utilisés dans la réalisation. Ensuite,
on s’intéresse à présenter quelques parties de code et des interfaces
pour montrer. Les étapes de la configuration du réseau la simulation, et
les courbes aussi les valeurs numériques, dans une troisième partie en
va montrer commentent en peut accéder au paramètres de
l’environnement enfin en dans une dernière partie en va penser à
améliorer notre projet et leur utilisation
2. Environnement de travail et outils de développements
Notre but étant la réalisation d’un système de surveillance
l’environnement à base d’un réseau de capteur sans fil. De point de vu
matériel nous avons utilisé la plateforme Cooja et le système
d’exploitation Contiki OS, ainsi que le langage de programmation c++
Introduction générale
Figure 17 Système d’exploitation Contiki
3. Extrait de code pour Contiki
3.1. Hello Word
Hello world sont les mots traditionnellement écrits par un programme
informatique simple dont le but est de faire la démonstration rapide
d'un langage de programmation (par exemple à but pédagogique) ou le
test d'un compilateur.
Introduction générale
Certains des programmes imprimant ces mots sont étonnamment
complexes, particulièrement dans un contexte d'interface graphique.
D'autres sont très simples, particulièrement ceux qui utilisent
un interpréteur de ligne de commande pour afficher le résultat. Dans
plusieurs systèmes embarqués, le texte peut être envoyé sur une ou
deux lignes d'un afficheur LCD
Introduction générale
Source (http://fr.wikipedia.org/wiki/Hello_world)
dans la figure suivant en a fait une description du code de cette classe
c++
Figure 18 Description de code de class hello Word
Introduction générale
3.2. Constructeur de graphe à partir d’un fichier texte
Dans la programmation c++ il faut implémenter une procédure pour construire un graphe où un courbe à partir d’un fichier texte pour qu’il soit afficher par suite sur une interface web dans cette projet en à utiliser cette procédure mais en a pas l’implémenter puisque qu’il déjà existe sur les fichiers c++ de Contiki ce pour cella en faire juste la description de cette code dans le figure suivant :
Figure 19 Description d’une procédure très important pour Contiki
Introduction générale
4. Simulation de réseaux de capteur sans fils
Pour la simulation de réseaux de capteur sans fils il faut utiliser l’outil
de simulation de Contiki Cooja.
Dans cette partie if faut fixer l’architecture matérielle
Organisation du réseau nombre de nœuds nombre de routeurs topologie du réseau répartition géographique
Introduction générale
Dans l’outil Cooja en peut fixer toute ce paramètre de réseaux Cooja nous permet de choisir le type de nœud
est le capteur ou routeur.
Figure 20 Choix du type des nœuds avant faire la compilation de code
Introduction générale
Dans ce projet en a un seule routeur et 4 capteurs de l’environnement
Figure 21 Visionnaire de capteur sur Cooja
La répartition géographique de nœud est bien paramétrée sur Cooja puisque il donne une interface pour organiser les nœuds sur le plan réel à trois démentions X, Y, Z
Figure 22 les positions de nœuds sur le plan géographique
Introduction générale
En fin en a un réseau bien simuler sur l’outil Cooja de Contiki il nous permet de voir tous les paramètres d’un capteur ainsi les communications entre les nœuds le figure suivant montre l’interface graphique de notre réseau simulé.
Figure 23 interface graphique de notre réseau sur le simulateur Cooja
Introduction générale
5. Affichage des valeurs et des courbes sur les interfaces web
Pour l’affichage des informations sur une interface web il faut dans une première étape connecter le routeur de Cooja par une commande dans le terminal de Contiki sudo make connect-router-Cooja
Puis il faut ouvrir n’importe navigateur web et écrire l’adresse IP du capteur en question comme URL
Nb : une adresse version 6 et de cette forme [aaaa::212:7405:5:505]
Nb : un courbe est considéré comme un vidéo donc il faut installer adobe flash Player sur votre machine virtuelle
La figure suivant montre les valeurs de l’environnement sur une page web
Figure 24 les valeurs numériques de l’environnement sur Mozilla
Introduction générale
Pour afficher les courbe il faut écrire le mot clé /T _ pour dire le courbe de température et /l pour dire luminosité après chaque adresse
de nœud
Figure 25Courbe de luminosité sur le web
De cette façon en va afficher la courbe de température dans la figure suivant.
Introduction générale
Figure 26 Courbe de température sur le web
En peut aussi afficher les communications entre le routeur et les nœuds si en utilise l’adresse IP de routeur comme URL d’un navigateur web dans le figure suivant en à afficher quelque communication lords de la simulation de réseaux.
Introduction générale
Figure 27 Communication entre les nœuds affichées sur le web
6. Où en peut exploiter notre projet
Dans cette partie en pose la question comment en peut exploiter notre projet et est-ce-que notre projet est réalisable dans la vie pratiqueil y a-t-il des exemples de notre projet dans notre vie technologique.
En effet lords de notre recherche en à trouver que la surveillance de l’environnement à base d’un réseau de capteur sans fils est un projet localisé sur les ailes de l’avions Arbus alors que cette avion ne peut pas partir que lorsque ce système calcule la pression sur ses ailesle projet est appelé assai en vol thèse de doctorat pour Nasreddine Nadim dans l’université de Toulouse entre 2009-2012
Introduction générale
Figure 28 projet assai en vol chez Airbus
7. Amélioration de projet
Toute nos travail dans le projet de fin d’étude pour l’institut supérieur de l’informatique est un petite tache dans un grand projet de surveillance ainsi qu’en peut ajouter des interfaces pour cette application et le paramétrage des nœuds et l’ajout et la suppression des capteurs et des routeurs aussi en ne peut pas s’arrêter à la simulation il faut configurer cette réseaux dans la vie réelle et matérielle en raison de faible cout des capteurs et leur disponibilité.
8. Conclusion
Le long de ce chapitre, nous avons décrit les différentes étapes qui ont
contribué à la réalisation de notre système de surveillance. Nous avons
commencé par la description et la mise en place de l’environnement de
développement. Ensuite, nous avons présenté une petite extrait de code
des principales pour cette système puis nous avons présentons la
Introduction générale
simulation de réseau puis nous avons pensons aux améliorations de
notre projet.
Introduction générale
Ce projet de fin d’études, réalisé au sein du l’institut supérieur de
l’informatique de Mahdia a présenté pour nous l’opportunité de
percevoir de plus près la vie professionnelle ainsi de découvrir la
démarche à suivre pour réaliser un projet. De plus, c’était une occasion
pour maîtriser pas mal de technologies notamment le réseau de capteurs
sans fil.
Les réseaux de capteurs sans fil sont une nouvelle technologie qui a
surgi après les grands progrès technologiques concernant le
développement des capteurs intelligents, des processeurs puissants et
des protocoles de communication sans fil, leurs composants de base.
Ce type de réseau, composé de centaines ou de milliers d’éléments, a
pour but la collecte de données de l’environnement, leur traitement et
leur dissémination vers le monde extérieur.
Actuellement nous sommes en train d’ajouter des interfaces graphiques
c++ pour la gestion des nœuds capteurs. Ce qui permet de la
configuration et la reconfiguration des nœuds capteurs. Plusieurs
améliorations peuvent être effectuées sur l’application tel que la notion
du groupe, la communication multi-hop et la sécurité.
En outre, nous cherchons à améliorer l’application afin qu’elle puisse
être normalisé et la rendre, éventuellement, standards pour tout secteur
d’activité tel que l’agricoles, la médicales, et commerciales.
Introduction générale
Bibliographie
[1] Bhaskar Krishnamachari. Networking Wireless Sensors. Cambridge University Press, 2006.[2] Kamal BEYDOUN. Conception d’un protocole de routage hiérarchique pour les réseaux de capteurs[3] Antoine Gallais, François Ingelrest, Jean Carle, David Simplot-Ryl. Maintien de la couverture de surface dans les réseaux de capteurs avec une couche physique non idéale. FIP, Colloque Francophone sur l'Ingénierie des Protocoles. 2006.[4] Gallais, Antoine. Ordonnancement d’activité dans les réseaux de capteurs: l’exemple de la couverture de surface. Université des sciences et technologies de Lille. 2007. Rapport de these.[5] Cheng, K. Field and Wave Electromagnetics. s.l.: Addison-Wesley, 1989. P 639.[6] Crossbow TELOSB Data sheet. http://www.willow.co.uk/TelosB_Datasheet.pdf[7] I.F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci. Wireless sensor networks: a survey. Computer Networks (Elsevier), vol.38, no.4, pp.393-422, March 2002.[8] E.M. Petriu, N.D. Georganas, D.C. Petriu, D. Makrakis, and V.Z. Groza. Sensor-based information appliances. IEEE Instrumentation Measurement Magazine. December 2000, Vol. 3, 4, pp. 31-35.[9] Andrews, P. Johnson and D.C. Remote continuous monitoring in the home. Telemedicine and Telecare. June 1996, Vol. 2, 2, pp. 107-113.[10] Michael Fitzgerald. Technology Review: Tracking a Shopper's Habits. Technology Review. [En ligne] 04 August 2008. http://www.technologyreview.com/computing/21161/.[11] XUE Yong, AGUILAR Andres, GONZALEZ Andres, BARROUX Mickael, Agrégation de données dans les réseaux de capteurs, http://www.sitenaheulbeuk. com/utbm/sr04/SR04_dossier_WSN.pdf
Introduction générale
[12] http://www.sics.se/contiki/ cite officielle de Contiki [13] http://fr.wikipedia.org/wiki/
Développement d‘un système surveillance de l’environnement à base d’un réseau de capteurs sans fil
HALLAB SAAD
JRAIDI AMEL الخالصة
نتج عن التقلبات البئية في العقدين االخيرين تطورات تكنولوجية مكنت من تطوير أنواع جديدة من، هدفهم في الكثير من األحيان مراقبة منطقة رخيصة أجهزة استشعار، مزودة بوسائل إيصال السلكية ،
جغرافية وإصدار إنذار عند وجود حدث غير طبيعي (حرائق،زالزل،براكين، تسونامي )العوامل البئية مثل البسيط من إحداث شبكة استشعار السلكي تعمل على مراقبة هذا العمل خالل تمكنا من
الحرارة والرطوبة و الضوءشبكة األنترنت حيث يتسنى للجميع مشاهدتها في شكل أرقام ومنحنيات يتم رصد المعلومات ثم نشرها عبر
التنبئ بمخاطر المحيط قبل وقوع الكارثة وتسهيل عملية الحماية بسرعة تسمح بيانية