people.coins-lab.orgpeople.coins-lab.org/.../encadrement/pfe-isima/contiki-s…  · web viewles...

83
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 SAAD JRAIDI AMEL S outenu le 03/06/2013 devant la commission d'examen: Mr. Riad HADJ M'TIR Président MEMOIRE Développement d’un Système de surveillance de

Upload: trinhdang

Post on 06-Feb-2018

220 views

Category:

Documents


0 download

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

سعد حالب

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

Introduction générale

Introduction générale

Introduction générale

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

CHAPITRE 1 

Les Réseaux de capteurs sans fil : WSNs

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

Figure 2 Domaine d’application d’un réseau de capteur sans fils

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

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 12 Fonctionnalités de la pile uIP

5. Le protocole IPv6

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

Figure 15 Adresse IP version 6 sur Contiki

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

CONCLUSION GENERALE

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 الخالصة

نتج عن التقلبات البئية في العقدين االخيرين تطورات تكنولوجية مكنت من تطوير أنواع جديدة من، هدفهم في الكثير من األحيان مراقبة منطقة رخيصة أجهزة استشعار، مزودة بوسائل إيصال السلكية ،

جغرافية وإصدار إنذار عند وجود حدث غير طبيعي (حرائق،زالزل،براكين، تسونامي )العوامل البئية مثل البسيط من إحداث شبكة استشعار السلكي تعمل على مراقبة هذا العمل خالل تمكنا من

الحرارة والرطوبة و الضوءشبكة األنترنت حيث يتسنى للجميع مشاهدتها في شكل أرقام ومنحنيات يتم رصد المعلومات ثم نشرها عبر

التنبئ بمخاطر المحيط قبل وقوع الكارثة وتسهيل عملية الحماية بسرعة تسمح بيانية