83
ESIEA 2006 Vislab MEMOIRE William PAGNON 1 MEMOIRE DE FIN D’ETUDES ESIEA VisLab, SPS & ITEE Sensor Network Implemented on the Great Barrier Reef Réseau de capteurs implémenté sur la grande barrière de corail Par William Pagnon Jury : Jean-Baptiste Renard (parrain) Mr Durouchoux (président) Dr Nicole Bordes (chef de projet) Sigature parrain : Signature chef de projet : Date de soutenance : 23/08/2006

MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 1

MEMOIRE DE FIN D’ETUDES ESIEA

VisLab, SPS & ITEE

Sensor Network Implemented on the Great Barrier Reef

Réseau de capteurs implémenté sur la grande

barrière de corail

Par William Pagnon

Jury : Jean-Baptiste Renard (parrain)

Mr Durouchoux (président) Dr Nicole Bordes (chef de projet)

Sigature parrain : Signature chef de projet :

Date de soutenance : 23/08/2006

Page 2: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 2

Table of Contents List of figures / Liste des Figures............................................................................................... 3 Acknowledgements / Remerciements........................................................................................ 5 Résumé....................................................................................................................................... 6 Abstract ...................................................................................................................................... 8 Chapter Outline / Survole des Chapitres.................................................................................. 10 Stage Environment / Environement du Stage.......................................................................... 12 State of the Project at the Start of the Training Course / Etat d’Avencement du Projet à l’Arrivé du Stagiaire................................................................................................................. 15 State of Art / Etat de l’Art ........................................................................................................ 17

The Great Barrier Reef / La Grande Barrière de Corail ....................................................... 17 The Coral and its Environment / Le Corail et son Environment.......................................... 18 The Scientific Communities Around the GBR / La Comunitée Scientific Autour de la GBC.............................................................................................................................................. 19 Method of Monitoring the Coral / Méthode de Surveillance du Corail ............................... 20 What is Threatening the Great Barrier Reef? / Qu’est-ce qui Menace la GBC?................. 24 The Sensor Network and its Applications / Réseau de Capteurs et leur Applications......... 25 The Sensors / les Capteurs ................................................................................................... 27 Wireless Propagation Theory / Theorie de la Propagation sans Fil ..................................... 30 Google map API ................................................................................................................... 31

Technical Dimension of the Project / Dimension Technique du Projet ................................... 33 Overview / Vue Generale..................................................................................................... 33 Data used in the project / Données utilisées dans le projet .................................................. 34

Archived data / données archivées................................................................................... 34 Live Data Capture / Capture de Données Temps Reel .................................................... 35

Project Architecture / Architecture de projet ....................................................................... 35 The Protocol / Le Protocole ................................................................................................. 38 The Server / Le Serveur ....................................................................................................... 40 The Database / La base de Donées....................................................................................... 40 The GUI / L’ Interface Utilisateur......................................................................................... 42 The Console Mode / Le Mode Console ............................................................................... 44 Architecture of the Python Programs / Architecture des Programmes Python.................... 45 The Website / Le Site Web .................................................................................................. 46 Example of Data mining Extraction Through the Presented System / Example d’Extraction de données à travers ce System............................................................................................ 49 Conclusion of the Technical Part / Conclusion de la Partie Technique............................... 54

Human and Management Dimensions Internal to the Company / Dimension Humaine et Managerial interne à la companie............................................................................................ 55 Discussion ................................................................................................................................ 57 References................................................................................................................................ 64 Annexes.................................................................................................................................... 66

Annexe 1: Glossary .............................................................................................................. 67 Annexe 2: Colour Scale of HotSpot and DHW.................................................................... 69 Annexe 3: Class from SensorNet_GUI.py with there function:........................................... 70 Annexe 4: Classes from the other python program:............................................................. 72 Annexe 5: Package installation............................................................................................ 74 Annexe 6: Installation instruction: ....................................................................................... 75 Annexe 7: website bookmarks used for the project ............................................................. 76 Annexe 8: Example of python program, Class_com.py....................................................... 79

Page 3: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 3

List of figures Figure 1 : Station météorologique ou bouée sur le récif Davis, AIMS...................................... 7 Figure 2 : weather station or buoy on Davies reef, photo courtesy of AIMS............................ 9 Figure 3 : internal architecture of the University of Queensland............................................. 12 Figure 4 : Internal Human Structure Of The Vislab Laboratory Hierarchy............................. 13 Figure 5 : Architecture of QPSF .............................................................................................. 14 Figure 6 : Presentation of the area (straight line) cover by the GBRMP [4] ............................ 18 Figure 7 : Amount of COTS observed during the Broadscale Manta surveys [5] ................... 20 Figure 8 : Example of COTS specimen feed on coral [7] ........................................................ 21 Figure 9 : Maximum temperature observed in the world after the El Nino phenomenon [9] .. 22 Figure 10 : The Degree Heating per weeks observed for the last 90 days for the same period [9] ............................................................................................................................................. 22 Figure 11 : Maximum temperature observed nowadays [9] .................................................... 22 Figure 12 : The Degree Heating per weeks observed for the last 90 days nowadays [9] ........ 23 Figure 13 : Effect of degree heating per month over the past and the future on the coral (a) [5].................................................................................................................................................. 25 Figure 14 : Effect of natural catastrophe per decade over the past and the future on the coral (b) [5] ............................................................................................................................................. 25 Figure 15 : Poster representing the different technologies involve’ in the Security network sensor project of US [12].......................................................................................................... 26 Figure 16 : Cut of the tunnel view where a sensornet cable in optic fibber is installed [14] ... 27 Figure 17 : graph of the sensor cable monitoring [14] ............................................................. 27 Figure 18 : Thermocouple with its storage and communication system desired for the SensorNet project [11] ............................................................................................................. 29 Figure 19 : Representation of the method of faking electromagnetic waves for different frequencies from subrefraction (low frequencies) to trapping (high frequencies) [1] ............. 30 Figure 20 : Example of use of Google Map in the website developed during the project....... 32 Figure 21 : Overview of the data streaming from buoys to final users.................................... 33 Figure 22 : Map of the existing monitoring site on the GBR, PNG and West Australia......... 34 Figure 23 : Weeder electronic board that capture data from thermocouple [17] ..................... 35 Figure 24 : Scheme of the stream of the data from the thermocouple to the computer that simulate the buoy ..................................................................................................................... 35 Figure 25 : Technical architecture of the SensorNet software project..................................... 37 Figure 26 : Protocol of the network dialogue between the buoy and the server ...................... 39 Figure 27 : Database scheme................................................................................................... 41 Figure 28 : Connexion panel of the GUI interface................................................................... 42 Figure 29 : Selection panel with the customised or assisted tool and its mouse interactive grid selection.................................................................................................................................... 43 Figure 30 : Presentation of an example of graphic generated by the mouse interactive grid selection.................................................................................................................................... 43 Figure 31 : 3D graphic selection and map of the GBR with buoys plot on from the latitude and longitude selected..................................................................................................................... 44 Figure 32 : Program architecture of the python programs....................................................... 46 Figure 33 : Website architecture.............................................................................................. 47 Figure 34 : First part of the webpage displayed when all the options are selected.................. 48 Figure 35 : Second part of the web site with all the options selected ...................................... 48 Figure 36 : Full webpage generated for the case study ............................................................ 49 Figure 37 : Graphic generated on the GUI for the case study.................................................. 50 Figure 38 : Saved picture file of the graph on PNG format for the case study........................ 51

Page 4: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 4

Figure 39 : Example of mathematical operation in SQL from the GUI................................... 52 Figure 40 : Graph from the website of the simulated buoy sensors for live data..................... 52 Figure 41 : graph from the GUI of the simulated buoy sensors for live data........................... 53 Figure 42 : zoom in of the graph from the GUI of the simulated buoy sensors for live data..53 Figure 43 : photo of Vislab with the Access Grid node environment with multi conversation and software utility running through 3 power wall projectors................................................. 56 Figure 44 : presentation of the website used for archaeological data instead those of the GBR.................................................................................................................................................. 57 Figure 45 : example of the GUI used for archaeological data instead of those from GBR ..... 58 Figure 46 : XYZ Stage developed as Access Grid physical tool possibility example.............. 59 Figure 47 : Chart of the trend estimate of employed persons in Australia............................... 62 Figure 48 : Chart of the trend unemployment rate in Australia............................................... 62

Page 5: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 5

Acknowledgements

My deep gratitude for the following people without whom this thesis would not have been

possible:

- Nicole Bordes for allowing me to work on the SensorNet project

- Bernard Pailthorpe for his advice and orientation in the project

- David Gwynne for his precious advice in programming

- Chris Willing for his advice and his explanation of the project and its structure

- Jean Baptiste Renard for his advice during my internship

- Jean-Baptiste Bérard for the information provided on the Marine Biology of the

coral.

- Andreas Vaszolyi for his help in the grammar correction of this thesis

Page 6: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 6

Résumé

La conservation de la biodiversité marine est fondamentale pour maximiser les avantages

sociaux et économiques à long terme de la planète. La Grande Barrière de Corail (GBC) est

considéré un des environnements les plus riches au monde. Sa conservation est devenue une

préoccupation mondiale. Pour mieux comprendre l'évolution de cet environnement unique, un

projet à long terme de réseau de capteurs déployé sur la GBC a été élaboré par l'Université du

Queensland (UQ) de Brisbane, l'Université James Cook (JCU) de Townsville et l'Institut

Australien de la Science Marine (AIMS) sous l’union de la fondation du Queensland pour les

sciences parallèles (QPSF).

Dans ce projet, mon objectif était de fournir une approche et un développement de logiciel qui

consistera à rendre disponible à des utilisateurs finals des données venant d’un réseau de

sondes qui pourront être visualisées et manipulées grâce à plusieurs outils se connectant à

une base de données. Ce logiciel servira de structure de base pour développer l'application

finale qui sera employée par les scientifiques pour extraire des connaissances à partir de ce

réseau de capteur. Ce logiciel donne également une bonne idée des possibilités que peut

fournir une telle structure générale pour n'importe quelles données spatiales temporelles

rassemblées par l'intermédiaire d'un réseau de capteurs comme par exemple, astronomique ou

archéologique. Le but final de ce projet est de développer une surveillance totale de la GBC

par le biais d'un réseau de capteurs qui fournira tout type d'informations sur la qualité de l'eau,

des températures aussi bien qu'une visualisation constante de la GBC par capteurs CCD. Les

sondes seront essayées à l'avenir sur le récif Davies ; où une station météorologique est déjà

installée. Le récif Davies est situé dans la GBC à latitude 18°50'S, longitude 147°41'E à

environ 70km de Townsville.

Précédemment, la communication sans fil basé sur des micro-ondes de 10.5 GHz avait été

testée avec succès sur ce même récif. Ce serra certainement cette technologie qui sera

employée pour créer un réseau en Ad Hoc entre les bouées et les serveurs. Pour simuler les

données récoltées par les bouées, j'ai utilisé une base de données de AIMS qui représente les

températures de différentes Stations météorologiques situées sur la GBC et récoltées toutes les

30 minutes depuis 10 ans. Ces données ont été régulièrement récupérées par bateau ou par une

liaison haute fréquence de 3.3MHz (qui n'a pas prouvé son efficacité) sur 149 bouées au total

Page 7: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 7

répandues sur la GBC. Ainsi, dans ce projet, il a été décidé lorsque l’ implémentation viendra

de recevoir les données directement par une liaison sans fil de 10.5 GHz de la bouée à la

station terrestre, où les données peuvent circuler par toutes les bouées ou les serveurs (selon le

meilleur chemin) pour être finalement stockées dans une base de données. Pour simuler les

données en temps réel, une carte électronique, déjà disponible dans le laboratoire, fournira

quatre mesures de thermocouples placés derrière différents ventilateurs dans la salle

d’ordinateurs de Vislab. Au final, l’envoie des données a été mis en application avec succès

d’une bouée à la base de données par l'intermédiaire de logiciel serveur et client.

Sur la base de données ont été développés trois utilitaires pour manipuler les données : Une

interface graphique qui fournit une table des données choisie par une commande SQL avec un

outil de sélection des données via la souris pour produire à souhait des graphiques. Un mode

console a été développé pour accéder aux données sans avoir besoin d’autre chose qu'un Shell.

Finalement, un site Web a été développé pour que toute personne puisse s'informer sur les

températures de la GBC durant les 10 dernières années. Ce site Web inclut une carte

implémentée via Google Map, des graphiques et une table de Meta information concernant les

bouées et leurs capteurs. La prochaine étape de ce projet consistera à employer plusieurs

cartes électronique de capteurs afin de simuler plus d'une bouée et ainsi pouvoir simuler un

réseau complet avec la gestion temps réel par multi tâche de plusieurs bouées et le routage

dynamique des données par ring buffer.

Figure 1 : Station météorologique ou bouée sur le récif Davis, AIMS

Page 8: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 8

Abstract The conservation of marine biodiversity is fundamental to maximizing long-term social and

economic prosperity and sustainability. The Great Barrier Reef (GBR) is considered one of

the richest environments in the world and its preservation has become a global concern. To

better understand the evolution of this unique environment, a long term project involving a

sensor network installed on the GBR was conducted by the University of Queensland (UQ),

Brisbane, James Cook University (JCU) from Townsville and the Australian Institute of

Marine Science (AIMS) under the Queensland Parallel Science Foundation (QPSF).

On this project, my objective was to provide an approach of a software implementation to

stream the data from the sensors to the final users, who will be able to visualize and

manipulate the data with several tools through a database. This software will serve as a basic

structure in developing the final application that the scientists will use to extract data from the

sensor network. It will also provide an idea of the possibilities of a general structure for any

spatio-temporal data collected via a Sensor Network (like astronomical or archeological data).

The final aim of this project is to develop a total monitoring of the GBR using a sensor

network to provide information about water quality and temperature as well as a constant

video visualization of the GBR. The sensors will be tested in the future at Davies Reef, where

a weather station is already installed. Davies Reef is located on the GBR at latitude 18°50'S,

longitude 147°41'E, about 70km from Townsville.

Previous tests of the reef with wireless connection based on microwaves have been

successfully conducted and will certainly be the technology used to link the network. To test

the computer program, I have used data from AIMS of the last 10 years from a previous

project, which was to store the temperature from the buoys every 30 minutes. Those data were

regularly collected by boat or by a low DataStream HF radio (that did not prove its efficiency)

from 159 buoys spread on the GBR. Thus, in this project, it was decided (for the final

implementation) to receive the data directly with a 10.5 GHz wireless network from the buoy

on the earth station, where the data can be streamed from all the buoys or the servers to be

stored on a database. To simulate live data, a sensor board from Weeder Technology, already

available in the lab, will provide four temperature sensor measurements, placed behind

Page 9: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 9

different fans of computers in the computer room of Vislab. As a result, the stream of data

was successfully transferred from a buoy to a database via a software server.

Three ways have been developed to manipulate the data. Firstly, a GUI that provides a grid of

data selected by an SQL command and where the data displayed are ergonomically selectable

to generate the desired graph. Secondly, a console mode has been developed to access data

using only a shell. Finally, there is a website providing information about the temperature of

the GBR over the past 10 years. This website includes a map navigation tool, Google Map,

graphs and tables of meta-information about the buoys and the sensors. The next step in this

project will be to use several boards to simulate more than one buoy and deal with them in

multithread with different scenarios to obtain a dynamic routing of the data.

Figure 2 : weather station or buoy on Davies reef, photo cour tesy of AIMS

Page 10: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 10

Chapter Outline Stage Environment: Here I will present the different organisations involved in this project and the links between

them as well as the internal human architecture of the Vislab laboratory and its field of

activity.

State of the Project at the Start of the Training Course: I will present studies done before the start of the training course and the objectives from this

project attributed to JCU and myself for UQ.

State of Art: In this section I will approach the different aspects of the GBR and the SensorNet project.

Firstly I will provide information about the GBR as such, before dealing with the coral and its

environment. I will then describe the different organisations undertaking research on the GBR

in Australia and around the World, before explaining the method of monitoring the coral with

examples gathered through diving, boat and satellite observation of the coral. Specifically, I

will describe the threat to the coral on the GBR. Next, I will turn to some examples of sensor

network applications already in use, before explaining the constraints upon building sensors.

The wireless propagation theory experimented last year on the GBR which will certainly be

used to stream the data will be explained. Finally, I will finish this part with a brief

presentation of the Google Map tool used for the website.

Technical View of the Project: This is the technical part of the report where the application developed during this training

course will be presented. An overview of the project will be followed by a description of the

data used to validate the software and a description of the project architecture. I will then

elaborate the various parts of the project by describing the protocol, the server, the database,

the GUI, the console mode and the website. I will finish this part by giving a case study that

will lead us to the main function of the applications and a conclusion for the technical part.

Page 11: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 11

Human and Management Dimensions Internal to the Company: I will explain the environment in which I worked, and the relation I had with the staff of the

laboratory and JCU the partner of the project.

Discussion: Here I will explore possible improvements to the project, and a side project involving an XYZ

stage. Then the different aspect concerning my ESIEA formation and the place of the

communication in our societies will be discussed. I will finish by briefly describing my

eighteen months in Australia.

Page 12: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 12

Stage Environment

The training course was conducted at the University of Queensland (UQ) in the Vislab

Laboratory located in the Information Technology and Electrical Engineering (ITEE) building.

This laboratory is part of the School of Physical Science (SPS) which is itself a part of the

Faculty of Engineering, Physical Sciences and Architecture (EPSA). EPSA is one of seven

faculties at UQ. UQ was founded in 1910 and is one of the top eight universities in Australia

[22]. It is also well recognized at an international level for its strengths in teaching and

research. The following tree shows the position of Vislab in the university’s structure.

Figure 3 : internal architecture of the University of Queensland Vislab is a University research and development laboratory created in 2003 by Bernard

Pailthorpe, Nicole Bordes and Chris Willing. This research centre specialises in data

analysis, computational and experimental science as well as grid and data computing. They

constantly engage in projects at the cutting edge of technology like e-archaeology, Kepler

workflows, molecular modelling or high resolution displays. These are just few examples of

this laboratory’s work. Some of these projects are done by the staff of the laboratory but most

of them are the main projects of graduate or undergraduate students (in an internship position

like me or as thesis student from the University).

Page 13: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 13

Another Vislab Laboratory was created previously at the University of Sydney in 1992 by

Bernard Pailthorpe. This laboratory is still active at the University of Sydney. See below

the laboratory’s hierarchy, with status are from lowest to highest. Professor Bernard

Pailthorpe and Nicole Bordes established the laboratory, with Chris Willing, who manages

the lab. Doug Kosovic manages the informatics maintenance service of the lab. David

Gwynne is the data specialist of the team and it is with him that I began to conceive and

develop the project. Terry Simmich arrived two months before the end of my training course,

his main task is to coordinate and develop tools for archaeological research. Two new people

are expected to manage their main project Access Grid, a multi application management tool

for videoconferencing. The staff contracts are generally for one year renewable. My position

is as an occupational trainee responsible for the SensorNet project. Several students who are

doing occupational training or doing their thesis for UQ work on small research and

development projects.

Figure 4 : Internal Human Structure Of The Vislab Laboratory Hierarchy The SensorNet project was proposed by QPSF. QPSF is an incorporated body established in

October 2000, consisting of seven Queensland public universities. The organisation was

funded by the Department of State Development, Trade and Innovation of the Queensland

Government. This foundation has several projects in which some or all the universities work

together. To increase the possibilities of this foundation the universities have made a strong

investment in High Performance Computing Infrastructure (HPCI) since its inception in 2001.

Page 14: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 14

QPSF's major HPC facilities are housed at, and maintained by UQ however each university

also houses HPC facilities. Those facilities allow the QPSF members to share resources for

work on data projects such as the SensorNet project. They also use the Access Grid (multi

application management tool for videoconferencing) to communicate and share applications

in real time. See below the architecture of this foundation.

Figure 5 : Architecture of QPSF

Page 15: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 15

State of the Project at the Start of the Training Course

The main project I worked on during this training course was SensorNet. The aim of this

project was to develop, in collaboration with JCU, a sensor network system deployed in

buoys around all the GBR to monitor different parameters like temperature, chemical

properties of the water. In the future a camera will capture pictures of the ecosystem of the

GBR.

The project was created three years ago but the technical approach was developed only last

year. When I am arrived, a thesis made the previous year by Jared Sanderson called Data

Capture and the Management of Data Streaming from a Network of Sensors [17] helped me

by providing a temperature database recording by AIMS. This project dealt with the sharing

and the storage of a large archival collection of data across a connected grid of computers.

This was achieved using the Storage Resources Broker (SBR) system to spread the data

potentially to several databases on a networked grid of computers. The development of a new

wireless communication using wave propagation through the upper layer of the sea level was

successfully tested by Stuart Kininmonth, et al, in 2005 [1]. Some coding to experiment on

the sensor boards was done in Python to capture data and display it in a graph on a web page.

Those tests were done by Chris Willing and David Gwynne. During this training course, I

was responsible for the aspects of the project involving the software development, under the

guidance of David Gwynne. We used the videoconference system Access Grid (originally

developed by Argonne National Laboratory [21]) to communicate with JCU which is

currently working on their own hardware and software implementation.

JCU was initially only in charge of the hardware implementation for the buoys and the

different relays with an ad-Hoc network which sends the data stream to the database (as will

be described later in this thesis). Their aim is to find a hardware solution capable of resisting

the extreme conditions to which the buoys and the relay are exposed on the GBR. For instance,

the microprocessor and associated electronics must be resistant to temperatures greater than

50°C because they are fully exposed to the elements. The buoys must utilise solar and wind

power to ensure extended autonomy, providing a use-time for the buoys. Other concerns

about the sensors include diverse aggression (such as shark attack) and other factors which

Page 16: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 16

can compromise the result or destroy the sensors; e.g. organic deposits like algae on the

sensors. The communication system between the buoys and the final server involves ad-hoc

wireless at a frequency of 10.5GHz that will use the surface layer of the sea to guide the

signal to the relay server or the final server. This specific wireless communication was

developed in 2005 (as mentioned before) and will be explained in the State of Art section.

My laboratory directed the system’s software implementation, from buoys to user. As the

hardware was not already chosen, we developed a software solution as generic as possible to

allow implementation in a wide range of embedded systems ranging from the simplest

processor to the most sophisticated. In order to develop and test our solution we used an

external electronic board sensor from Weeder Technology [2]. This board provides the values

of four temperature probes to a computer by a serial connection. We will see further the

criteria of this board in detail. The programs of the buoy, the server, the GUI and the console

mode have been developed in Python to maintain compatibility with the rest of the system if

necessary. Driver in C language, for the Weeder board, has been developed to provide the

possibility to create a C program for the system in the buoys and in the relay or server. The

software in C language for the buoy and server is currently being developed by David

Gwynne and will be available in the future. This version will decrease the size of the code

and the processing time to increase the routing time. These conditions are necessary in order

to implement the program in a low consumption system in terms of memory, electricity and

processing. We use a PostgreSQL database system to store the data where indexation and

primary key have been used to increase its efficiency. The GUI interface and the console

mode will be used by the final scientific user to manipulate the data in the Database. Finally,

the website is tailored for a wide range of users, utilising PHP for the web server and

JavaScript for the client using Google Map to provide interactive information.

Page 17: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 17

State of Art

The Great Barrier Reef: The GBR World Heritage Area is located three quarters of the way to the northern tip of

Queensland on the East cost of Australia, ranging from the south of the Tropic of Capricorn to

the coastal waters of Papua New Guinea. This area cover about 2300 km and lies between

24°30’N-10°41’S and 145°00’ -154°00’E [3].

The GBR is the largest World Heritage area with its 33,126,500 ha of Marine Park and the

most extensive coral reef in the world. It was declared World Heritage in 1981. The GBR

comprises some 2,800 individual reefs including 750 fringing reefs, which range in size from

under 1ha to over 1,000 ha [3]. The GBR is only two million years old and evolved during the

quaternary period when ice formed and melted in higher latitudes causing major sea level

fluctuations. The shape of each reef is quite different and is classified into three categories:

the Barrier Reef (or Wall Reef), most northerly of the GBR; the Platform Reefs, which

comprise the majority of the reefs (ovular shaped and found between seaward side of the

continental shelf and the mainland); and the Fringing reefs, found growing out from the

shores of continental islands and the mainland.

At its conclusion, this project will provide precious information on the complexity of the

water circulation and quality in those areas, which has created a complex ecosystem. The

properties of the Coral Sea, land run-off, evaporation, southeast trade winds, forced

upwellings due to strong tidal currents in narrow reef passages, and coastal water including

mangroves, are all affecting the water circulation and thus the coral stability. The impact of

people on water quality is also not well known. These complex parameters must be monitored

and compared in order to understand their influence on such a fragile ecosystem. The map

below presents the GBR Marine Park area described here.

Page 18: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 18

Figure 6 : Presentation of the area (straight line) cover by the GBRMP [4]

The Coral and its Environment: The Coral reefs flourish, apart from rare exceptions, mainly in the tropical latitudes 30° north

or south of the equator. In the ecosystem of the GBR, there are approximately 356 reef

building corals belonging to about 60 genera. They represent almost 75% of the known

genera in the entire Indo-Pacific region [3]. Only the southernmost of reefs show a significant

reduction in the number of species. Although many of the populations probably receive

recruits only from neighbouring ones, they are part of a vast interconnected network in which

larvae drifting from reef to reef and island to island ensure that populations are not isolated.

Coral cover decreases and increases quite dramatically because of cyclones, Crown of Thorns

Starfish (COTS), and coral bleaching, but there are no long-term declines in coral cover or

diversity. Even on inshore Fringing reefs, where human impacts are highest, there are no

indications of any general decline since the El Niño event in 1998 [5].

The GBR contains over 300 species of coral, creating an environment for more than 1,500

species of fish, 4,000 species of molluscs plus a great diversity of sponges, anemones, marine

Page 19: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 19

worms, crustaceans, algae and finally a wide range of marine mammals [5]. Coral live in

symbiosis with fish providing them a nutritious and protective environment. COTS is a

parasite that feeds on the coral and can be damaging for the reef if in overpopulation. Coral

also maintains a special symbiotic relationship with a microscopic organism (algae),

especially zooxanthallae [6].�These organisms provide their hosts with oxygen and a portion

of the organic compounds they produce through photosynthesis. When stressed, many reef

inhabitants have been observed expelling their zooxanthallae in large amounts. Coral is an

important component of our ecosystem and must be preserved at all costs to keep the

equilibrium the coral reef provides. In addition the ocean provides oxygen thanks to this

ecosystem of coral and other different animals, and vegetal that affects life from the ocean to

the earth.

The Scientific Communities Around the GBR : Scientific research on the GBR started with the GBR Committee (now called the Australia

Coral Reef Society) in 1922 and the British GBR Expedition in 1928-29. Nowadays, for local

and visiting overseas scientists, field stations are operated by UQ at Heron Island, The

University of Sydney at One Tree Island, the Australian Museum at Lizard Island, JCU at

Orpheus Island and AIMS in Townsville [3]. The latter two have extensive coral reef research

programs that cover the full ambit of science disciplines.

Increasingly, these communities have lobbied the industries and the stakeholders around the

Queensland coast to sponsor the monitoring and educational project on the GBR. The

Australian Government has also developed Reef Check training to accredit volunteer teams on

the preservation of the GBR [5]. Most of the financial support for this operation is provided

from the dive tourism industry and other commercial businesses around the GBR.

Globally, the International Coral Reef Initiative (ICRI) established in 1994 and the Global

Coral Reef Monitoring Network (GCRMN, founded in 1996) plays an important role in the

preservation of coral in the international domain. Their objectives are to link existing

organisations and people to monitor ecological and social, cultural and economic aspects of

coral reefs within interacting regional networks. A significant example of their action is the

rezoning of the GBR World Heritage Area where 33% of the total area has since 2004 become

protected from extractive industries such as fishing and collecting [5].

Page 20: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 20

Method of Monitoring the Coral:

Monitoring the coral is a challenge that will lead us to a better understanding of the

complexity of the ocean system by realising the importance of the coral in this area. This kind

of study leads to more precise climatic model as well as a better evaluation of the human

impact on the Earth and the natural evolution of the coral. The GBR is one of the most

monitored coral sites in the world but nonetheless, information gathering covers only about

5% of it (some 2,800 reefs) [5]. I will now present various examples of monitoring systems in

order to demonstrate the spectrum covered by this field of studies.

The AIMS long-term monitoring program is designed to provide information about key groups

of organisms on appropriate spatial scales. Broadscale Manta Tow surveys [19 and 23] have

now been carried out through 11 latitudinal sectors over 21 years (1985-2006) and played a

significant role in the understanding of the interaction of the coral with its environment,

especially for the COTS phenomenon [5] which is a good indicator of the state of a reef. Each

year, the perimeters of 100 reefs are monitored. To make this survey, a diver is towed by a

small boat around each reef where it stops every 2 minutes to allow the diver to count the

number of COTS. The density of COTS at which coral damage is likely corresponds to 0.22

COTS per two-minute tow and if this rate is greater than 1, the reef is definitely damaged. An

interesting result of this study shows that some reefs have been unaffected by COTS since the

beginning of the monitoring program in 1985 which is the start of the study [5].

Figure 7 : Amount of COTS observed dur ing the Broadscale Manta surveys [5]

Page 21: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 21

You can observe in the preceding charts the mean coverage of hard coral by this study over

the years. Each chart represents a part of the GBR coverage from a. to d. that splits the GBR in

four parts respectively from north to south. The right vertical scale represents the average of

COTS observed per tow. Below is an example of COTS feeding on a coral reef. The COTS

can also feed on different encrusting organisms when coral is scarce, such as algae,

gorgonians and even other COTS.

Figure 8 : Example of COTS specimen feed on coral [7] AIMS also has two vessels which conducted 50 research trips between them in 2002-2003 and

operated for an average of 257 days. Their laboratories enable research such as DNA analysis,

cell culture, microbiology, chemical isolation and fermentation etc... [8] The shortcomings of

this kind of monitoring rest with the use of a boat to collect samples from the GBR and the

evident problem of regularity when the sample is not taken for climatic or human reasons.

Nevertheless, it is still useful to study the different organisms that populate the GBR. In the

future, the SensorNet project will certainly turn to sensors incorporating a micro chemical lab

that will regularly test certain properties of micro organisms.

Coral reefs are predominantly monitored by satellite, which provides a precise picture of the

extent of coral bleaching and can detect anomalies with special filters. It also monitors the

temperature of the ocean with infrared radiometers installed on the satellite. One of those

projects developed by NOAA Satellite and Information Service, called HotSpot provides twice

weekly a map of the state of coral bleaching around the world [9].

Page 22: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 22

Figure 9 : Maximum temperature observed in the wor ld after the El Nino phenomenon [9]

Figure 10 : The Degree Heating per weeks observed for the last 90 days for the same per iod [9]

Figure 11 : Maximum temperature observed nowadays [9]

Page 23: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 23

Figure 12 : The Degree Heating per weeks observed for the last 90 days nowadays [9]

NOAA operates two polar-orbiting satellites, each with an infrared sensor that detects the

temperature of the ocean’s surface. Because the satellites constantly orbit the earth, they

measure the water temperature around the entire globe each day [9]. The maps displayed here

present respectively for the period of El Niño in 1998 and nowadays in June 2006, the state of

the seas’ temperatures around the world compared to their normal average and the

accumulation of overheating during the last 12 weeks (The colour scales are explained in

Annex 2). If the monthly average temperature is increase more than one degree and if the

Degree Heating per Weeks (DHW) is greater than four, the coral starts to show stress due to

the rise in temperature. During El Niño 1997-1998 [24], high levels of stress everywhere in

the world coincide with high temperatures, particularly in the GBR where temperature

increased by an average of 2.5 degrees along the whole GBR for DHW indices of 16 at certain

areas, which is the maximum on the scale. Currently, the state of the GBR and the coral

around the world in general is not affected by this stress of temperature with no increase of

temperature (less than four degrees on the scale of accumulation of over heating).

Nevertheless it’s periodically increase and the coral healthiness can become dramatic (at short

term) in the next 50 years.

The data of those studies and more have been stored in a database of AIMS. To develop

interest in the GBR, the Conservation and Biodiversity Group launched (in 2002-2003) a new

research tool called Coral Id [10] to improve understanding of the migration of coral by the

current or by fish population for professionals as well as for amateurs. The user can thus

Page 24: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 24

interrogate a large database by describing the characteristics of the species and understand its

evolution from data already captured over the years.

What is Threatening the Great Barrier Reef? The major threat to coral is bleaching. This phenomenon can be described as a decline of the

pigmentation of the polyps of the coral, which makes them appear nearly transparent, with its

white skeleton. The presence of Zooxanthallae (explained above) is very important to its

survival during and after a bleaching event. The major stresses that cause bleaching are

natural; Cyclones and big storms cause major damage to the reefs with the increase of

temperature involved in causing extensive bleaching of both hard and soft corals (as observed

in 1998 with the El Niño phenomenon )[5]. The effect of the climate change also has a real

impact on the coral even if we are not yet able to understand it well enough. The human

pressures on this environment is not yet well know, but the change of the water quality of

terrestrial run-off is one of the significant human impacts (sediment and nutrient input to the

reef from terrestrial discharge has increased fourfold in the last 150 years) [5]. The other

major issue identified is the effect of fishing in the Marine Park. This has caused the

population of dugongs to decrease by 50% over the past eight years [5], for instance, while

various turtle populations are still considered to be under threat.

Page 25: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 25

Figure 13 : Effect of degree heating per month over the past and the future on the coral (a) [5] Figure 14 : Effect of natural catastrophe per decade over the past and the future on the coral (b) [5]

According to the Status of Coral Reefs of the World [5] the state of the GBR was stable

between 2001 and 2004. However there was a algal bloom (Chrysocystis fragilis) at many

sites in the Cairns and Townsville regions in 2004 perhaps due to the over activity of tourism

in those regions as agriculture. The first chart above shows the degree of heating per month

observed since 1850 to its forecast in 2100. Mass bleaching events occur when the DHM is

over one degree (at 4 degrees most of the coral will not recover from this bleaching).

Forecasts including a global warming scenario due to the greenhouse effect predict that coral

reefs will be at risk as shown in Figure 14. Extinction of the coral might happen around 2050

with more than 9 events per decade if those forecasts are correct. This does not leave much

time to better understand how the coral evolves and its role in our environment.

The Sensor Network and its Applications:

A sensor network consists of a number of sensors spatially distributed across an area. Sensors

can be used to monitor or detect events at a location, for instance, temperature changes or

motion detection. Each sensor should be small and inexpensive using little energy to operate

and transmit a stream of data over a wireless network.

Page 26: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 26

Wireless sensor networks cause many dilemmas for practical implementation. In this project,

the deployment of sensors in a marine environment caused additional problems: Saltwater is

corrosive and tropical waters encourage the growth of biological life on the surfaces of

sensors (P. Ridd and M. Heron [11] will develop experimental sensors for this project and

will test it on the GBR to overcome those problems).

The sensor net concept has expanded to find many different applications. For instance, several

companies have been endeavouring to provide the industry with better monitoring of

machines especially for temperature and material strain. Several applications are found across

diverse fields: health care, manufacturing, environmental protection, transport, agriculture and

every field of research science. Another important field involves security monitoring by

spreading millions of micro-sensors on a special painting to fix it on the wall or spread from

the sky to detect the chemical presence of dangerous products like explosives.

A security sensor network is currently being tested in Tennessee (USA) as new protection

against terrorism [12]. As with every source of information, there is the possibility of

authorities monitoring people against their will with total discretion. Ultimately they will be

able to monitor a whole country (as shown below). The new generation of tiny microchips are

increasingly accessible along with nanotechnologies developed to give new perspectives in

information acquisition. The network sensor provides such an important source of information

that it must be used in a particularly ethical and reasonable way, like the GBR observation

project.

Figure 15 : Poster representing the different technologies involve’ in the Secur ity network sensor project of US [12]

Page 27: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 27

Many businesses are developed around monitoring technology, like the company FollowUs,

which provides tracking of a family member or employee from its mobile phone [13]. So

sensor networks must be used as all science with many precautions to avoid restrictions of

liberty. Another example of the project is the lake tunnel built in China, where a sensor

network was installed in 2005 to monitor temperature by linking all the sensors with optic

fibre along the tunnel [14].

Figure 16 : Cut of the tunnel view where a sensornet cable in optic fibber is installed [14] Figure 17 : graph of the sensor cable monitor ing [14]

In the United States at least, the export of underlying technology (Sensor Network) is

controlled and has to be declared to the Department of Commerce or the Department of State

[12]. Currently, there is no norm in the sensor network because of compromises, but with

more development will emerge new standards. As described above, the sensor network

technology is already developing new markets with huge applications. According to

Commsdesign [15]: “The total market will rise to at least 50 million units, or $1 billion, per

year by 2008.” . These examples are just a little sample of the numerous projects already

running or in preparation in the world.

The Sensors

Constructing these micro sensors for a governmental security project has required 200

scientists from various fields: Electrical, mechanical, chemical engineers; physicists, material

scientists; chemists; photonics designers; and meteorologists. They construct measurement

systems using ultrasonic, no contact temperature, optics, electro-optics, radiofrequency,

microwaves, microelectromachanical systems (MEMS), nanoelectromechanical, micro-

fluidics (lab on a chip) and wireless technologies [12].

Page 28: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 28

In our application, AIMS are devising and implementing the type of sensor for the GBR [11].

Those sensors will integrate the wireless communication system as well as capture and store

the data. Figure 18 shows a schematic of the sensor. The sensor will hold several temperature

probes at different depths which will capture the data and send them to an A/D converter

before being processed by the system, which will store them in a buffer and a text file. The

data will be sent by an 802.11b wireless to the nearest server or sensor by an aerial antenna.

For this purpose, a modem is also installed to communicate with the other sensors or the

server.

They will also include a compact Flash GPS to give their position and a serial or USB

connection to download and upload data onsite. The power supply under consideration is a

coupling of sun and wind power to stay operational without a heavy battering of the sensor by

day or night. A pure copper housing prevents the sensors from degradation in this

environment hostile to electronics, especially due to salty water. The sensors could be cleaned

every six months to avoid the deposit of organic systems like algae, which will falsify the

measurements. Despite this, the individual sensors are not expensive, the real efficiency of a

such sensor network can only be reached by spreading a large amount of them along the GBR,

considerably increasing the cost. The cost may be reduced, however, by mass producing

sensors. Those sensors will not need miniaturisation as in the American project, despite that

they have to fit on the existing weather stations.

Page 29: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 29

Figure 18 : Thermocouple with its storage and communication system desired for the SensorNet project [11]

AIMS wants to develop sensors for monitoring all the aspects of the environment including

chemicals, water current pressure, fauna and flora, as well as spread of the coral. Ultimately,

AIMS plans to use video cameras, in addition to sensors, that can scan the evolution of an

environment of two cubic meters per camera.

Page 30: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 30

Wireless Propagation Theory:

Initially, AIMS communicated with their weather stations using a 3.3 MHz HF Radio spread

along the GBR for the nearest reefs and a mobile phone network for distant stations [1]. The

HF propagation relied on ground wave diffractions and was thus unreliable for horizontal

propagation in the ocean. The previous system stored data up to 21 days in text files until the

communication was established or downloaded on site. However, low maximum data as well

as a non stable connection can lead to lost data during long term weather perturbations.

A new approach based on microwave propagation has lead to interesting results. The

principle applied here is to use the evaporation duct just above the ocean to provide a suitable

means to guide signals well beyond the optical horizon [1]. The frequency providing the best

effectiveness in term of distance of transmitting, path loss and size of antenna is 10.5 GHz.

This band of frequency is licensed free in Australia. The noise ratio with conventional radio

equipment is estimated 40db and the height of antennas should be between 3 to 4 meters to

minimize the path loss [1]. However if the path loss is increased by an additional 20dB the

communication will fail. The system shows that communication will work most of the time

but cannot be expected to be 100% reliable. Figure 19 shows how the electromagnetic waves

are propagated by refraction depending on their frequency. With the microwave concept, the

wave is trapped in this evaporation duct layer at the surface of the ocean and thus bonds to the

ocean surface following the curve of the earth as, for instance, the Ionosphere is used as a

reflector channel for electromagnetic waves.

Figure 19 : Representation of the method of faking electromagnetic waves for different frequencies from subrefraction (low frequencies) to trapping (high frequencies) [1]

Page 31: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 31

Ultimately, the aim is to create an ad hoc network where the sensors will be able to transmit

data directly to the main server, or if communication is impossible, on behalf other sensors.

This wireless system was tested at Davies Reef in December 2004 by S. Kinninmonth and I .

Atkinson [1]. For a traveling distance of approximately 70 Km, the signal to noise ratio was

>20dB most of the time and up to 25 dB. 34 Mbps transmissions were achieved with Code

Division Multiple Access (CDMA). This wireless system will be, in the future, used with the

software applications presented in this report. A ring buffer [25] will probably be added to the

system, as well as an SRB sharing system data to make a database transparent to the user

whatever where the data have been stored by finding the best path to reach the database and

prevent loss of data.

Google map API

The Google Maps API was created by Google to facilitate developers integrating Google

Maps into their web sites, with their own data points. It is a free service that currently does

not contain ads, but Google states in their terms of use [16] that they reserve the right to

display ads in the future. By using the Google Maps API you can embed the full Google Maps

on an external web site. The identification to access to the client Google Map is an API Key

that is bound to the web site and directory you enter when creating the key. Creating your

own map interface involves adding the Google JavaScript code to your page, and then using

JavaScript functions to add points to the map. Some plug-in libraries are also available to

display labels, for instance the Tlabel plug-in, which is used in the project.

We will use Google Maps as an interactive map to enable the use of satellites, road or hybrid

maps to locate precisely a particular place in the world. You can add to this tool an icon and

label interactive click to make a website visually interesting. For a project like the GBR it was

particularly helpful to be able to locate the buoys with the precision of a satellite photo

providing visual information on the shape of the reef and, of course, its location. This map is

particularly important because SensorNet is a map that itself evaluates in real time by

following changes in measurements of the environment to provide an accurate and up-to-date

map revealing the evolution of this natural and complex system.

Page 32: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 32

Figure 20 : Example of use of Google Map in the website developed dur ing the project.

Page 33: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 33

Technical Dimension of the Project

Overview

As described above, SensorNet is a project that aims to provide the infrastructure for

monitoring the GBR. It will be used to capture environmental data at numerous locations and

to create a map in real time of the parameters which can affect the fragile environment of the

coral reef. Buoys that will ultimately contain a variety of sensors and a GPS will be spread

along the GBR. Possible uses for the sensors include monitoring changes in temperature,

salinity, carbon dioxide and calcium levels, light intensity, and the presence of pollutants.

Cameras may also be deployed to allow real time observations of the reef environment by

researchers.

Due to the distances involved and constraints on the equipment used in the sensors it will be

necessary to route by wireless the information produced by the sensors, which is destined for

storage, via intermediate servers. The device ultimately storing the sensors’ data will store it

directly in a database for use by researchers. The user will then access the data via another

server which will manage the access right to the database from a GUI, a console mode and a

website. Below is a schematic description of what the whole system is supposed to be.

Figure 21 : Overview of the data streaming from buoys to final users

Page 34: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 34

Data Used in the Project The usefulness of the data depends on the accuracy and precision of the collection process in

the field as well as effective archiving and reporting.

Archived Data

In 2005 Jared Sanderson [17] collected data from AIMS. Those data cover the past ten years

of temperature data recorded by 149 buoys spread along the GBR by AIMS. Originally, those

data were stored in a Microsoft Access database with more than 1.5 million entries. Stuar t

Kininmonth from AIMS provided the data for Jared Sanderson’s project. He transferred

them to a PostgreSQL database in order to remove the limitations that Microsoft Access

database has with concurrency issues and its inability to operate within a Linux environment.

I have transferred those data from his PostgreSQL Scheme to my PostgreSQL scheme

(available in the Database section).

The next map shows the current monitoring site on the GBR. There are in total 149 weather

stations spread over various important reefs.

Figure 22 : Map of the existing monitor ing site on the GBR, PNG and West Australia

Page 35: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 35

Live Data Capture

Several thermocouples were wired to a Thermocouple Input Module created and

manufactured by Weeder Technologies [18]. The thermocouples were placed behind the fans

of several computers to measure fluctuations in temperature, and connected to the Weeder

module. This input module was connected to a Linux machine (known as the client or buoy)

via an RS-232 serial port. The module converts the data from analogue to digital. Software

running on the server machine applied trivial manipulation by averaging the sampled data for

each thermocouple and logging the results for the set period. Figure 23 and 24 present

respectively the Weeder board and how temperature data are collected as described above.

Figure 23 : Weeder electronic board that capture data from thermocouple [17] Figure 24 : Scheme of the stream of the data from the thermocouple to the computer that simulate the buoy

Project Architecture

The architecture of the project describes how the data are streamed and integrated

from the buoy and integrated into the database. This description will be aided by the

schematics on the next page. We will consider one element of the whole network from the

sensor to the database as an example, but the principle is applicable for the whole system.

On the Node (buoy), the data from four sensors (in our experimental case) are collected

periodically at certain intervals of time. Each measurement is stored with the ID of the

relevant probe, the state of the probe (to give a degree of reliability of the measurement), the

time when the measurement was taken, and finally its value. Every data also has the ID of the

sensor to which it belongs. All the sensors are identified by their ID, type, name, location in

Page 36: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 36

three dimensions, and serial number. On the upper layer of the node is the embedded PC

which interrogates the sensors and stores the measurements it receives in return with all the

labels described above. The embedded PC is identified by an ID that refers to a particular

node, an English name, an IP address, a location and a session ID which will serve to keep

track of the stream of data.

Following identification to the server relay (see the protocol following), the node sends (at

each nominated discretion of time) the data stored and erases the data sent once it has

acknowledgement of reception from the server relay. The data are stored in the server relay

and sent to the main server on the earth’s surface. This server treats the raw data to make it

understandable to humans, stores and sends them to the database. Once the data are stored in

the database the server erases them. The Database is accessible from the web, a specific GUI

interface or a command line console.

Page 37: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 37

���

������� ��������

���

���

������ �����

��������������� �������

������

��������

��������

�����

���� � ����� ���

���

���������

����������

������������������

����������

��������

���������

������

������

������

������

���

������

�� ��������������������

��������

�������

������

����

������������������

������������ !���

�������������

!�����������

������

������

������

������

�� ���������

������

������

������

������

��� ������

����� ��

Figure 25 : Technical architecture of the SensorNet software project.

Page 38: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 38

The Protocol

The protocol has two parts: the Node (the device with sensors on the reef) and the

Server (the software that turns sensor data into something that can be stored in the DataBase).

The protocol uses TCP/IP, and can use a standard IP network to communicate. The Server

can be considered a normal network daemon since it will sit listening sockets waiting for

connections from the Nodes.

The Node opens a session with the server by connecting and immediately sending a “hello”

message. The only content of the hello packet is a session ID. The node’s IP address and its

session ID uniquely identify the set of readings that it will be sending to the Server. Upon

receiving the session ID the server will check if there is a session number already registered

for the IP address of the client. If so, the server sends a Resume message that identifies the

last reading successfully received by the server. If the session ID is unknown to the server it

will send a Start message to the Node.

When a Node receives a Start message from the Server it is required to send information

about its configuration to the Server. This information is described by the Host and Sensor

packets. The Host packet contains the Host’s name and the number of sensors the node has.

For each sensor a sensor message is sent describing its ID, type, description (what they are

measuring) and serial number (to find, if necessary, information on the product).

After a Resume, or after the required Host and Sensor messages are sent, the Node may send

all the readings it has collected that the Server has not yet received. The readings message

contains the sensor ID from which this measurement was taken, an ID for this reading, a

status for the reading, the time the measurement was taken, the location at which it was taken,

and the value of the reading itself.

Page 39: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 39

���� ������� �� ������

��� ������ ����� ��

����

�� ��������

����

�������������

����� �

���������

��������

����������

�������

�������

���������

�����������

�������

���������

�����������

���� ���

�����

���

!�����

���

��"������������

�#���������������

��������$���������

���#��

���%�

����

�������#����

���������

���������������

��������

�������������������

��#�����������

&����������'

&�������������

�����������

���(((�

��� ��������������

���������

��������������������������

Figure 26 : Protocol of the network dialogue between the buoy and the server At any point after the Resume or Host/Sensor messages the Server may send messages that

update the operation of the Node. For example, the Server may require more frequent

measurements. To achieve this it would send an update message with the necessary

information.

If the TCP connection is interrupted, the Node will continue to take measurements and cache

them in memory as long as possible. Upon reconnection it will relay these readings to the

Server from the last reading that the server received.

Page 40: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 40

The Server

The Server will be materialised by the antenna relay which will be the intermediary to

the final server. The data protocol between the antenna and the server on the ground is the

same as with the node and the intermediate server. The server stores the data until it is sent to

the Database. To reduce space, the data received by the server are mostly integers which are

then translated into English before being sent to the database. For instance, the type of the

temperature sensor will be recognised by a 0 in the packet area which describes the type of the

sensor. The values read off the sensors are transmitted over the network as integers (as

opposed to binary floating point values). To avoid a loss of precision the values need to be

scaled before and after entering the network. However, the values will be stored in more

readable formats in the database.

The Database

The Database is made with the Object-Relational Database Management System (ORDBMS)

PostgreSQL developed at the University of California at Berkeley Computer Science

Department [26]. The choice of this ORDBMS was simply imposed by the fact that Vislab use

it, and thus it will resolve many problems of compatibility in future applications of this

project. The scheme of our Database consists of four tables. The first one is called NODE and

contains the node information. A META data table provides extra information about the node

like when it was built, deployed, serviced, and so on. The third table, SENSORS, contains all

the information about the sensors and finally the READ table contains the measurement

information.

Page 41: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 41

����

���)��*�������+��

����)���#�),--**

��./����)���*�0�1��

������.���)��*

������.�������)��*

!������)���*

!�� �����)���*

����#�)���*

��/�

��.�������)��*�2��� ��+��

���)��*�������+��

������)���#�)34**

����)���*

���.����)�������*

�������

��.�����)��*�2��� ��+��

���)��*�������+��

�����)���#�)34**

����)���#�)34**

����.�������)���#�)34**�0�1��

����%��)���#�)-44**�

!������)���*

!�� �����)���*

����#�)���*

&��/

��.�����)��*�2��� ��+��

����)���#�)34**

!������)���#�)5-4**

����)���#�)34**

���.�����)���#�)34**

�������)���#�)34**

!��.��������������)�������*

��������.���)���#�)34**

2���.���������)�������*

�����)���#�)34**

�����.���)���#�)544**

��������.���)���#��)544**

5(((�

5(((�5

Figure 27 : Database scheme The Database efficiency has been improved by providing Primary keys for data that have a

unique value, such as the ID Node and the ID Sensor. Foreign keys are extracted from them to

link the other tables. Thus a node can have N sensors and a sensor can have N measurements.

An indexation (that functions with Beta tree algorithm) of the main columns of each table has

also been added to improve the speed of the research when a query is sent. This indexation

increases the efficiency of ordering the data in a certain way but also records statistics from

the queries to increase its efficiency. Those indexes are constantly improving time displaying

of data on the GUI, console mode and the website (where there is a time restriction of 30

seconds on the PHP functions). Currently, the read table contains around 1.5 million entries

which represent a size total of the database of 200 Mb. This increase as fast as the new live

data are stored in the database.

Page 42: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 42

The GUI

The GUI is built upon the Database with the GUI library Wx Python. The GUI is able

to interrogate the database and comprises three data manipulation tools. The Interface has two

panels: the parameters of the connection and the data manipulation panel. The parameters of

the connection panel include respectively the Database name, username, name of the

computer host, port where the Database is connected and name of the table on which we want

to work. A control board displays the information about the connection with the Database and

the cause of an error if it happens. A special Python Library called Psycopg was implemented

to interact with the Database. I have made, in turn, a special library containing functions to

send requests of connection with the protocol required to use it in different programs of the

project. This panel is illustrated below.

Figure 28 : Connexion panel of the GUI inter face Once connected to the Database, the researchers are able to query it with the Data_Graph

panel. On this panel one can type any queries on the Database or use the custom SQL query

tool that provides the main SQL command possibilities with multi choice select buttons. Here

is an example of a part of the table where all the sensors of buoy 138 have been selected from

Page 43: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 43

the sensor table ordered by latitude from the second one to a maximum 30 sensor. The

language used to do the selection is standard SQL as defined by the PostgreSQL RDBMS

(which is the backend to this program).

Figure 29 : Selection panel with the customised or assisted tool and its mouse interactive gr id selection From this table, we can select one or more columns of numerical data to be displayed

graphically. One can select the columns to display and (or) the specific data from those

columns to be observed. Figure 30 is an example of the data one can plot; the SQL command

selects all the measurements from table READ with an offset of 3 million and a limit of

display on the grid of 1 million. From the grid have been selected the column value and

date_time by clicking on its label and repeatedly pressing the Ctrl key. At this stage, the graph

of the temperatures at random are displayed against there dates. When you click on the

desired sensors to display, by keeping as well the Ctrl key on, (as shown in the next figure) all

the values of the sensors selected will appear in different colours.

Figure 30 : Presentation of an example of graphic generated by the mouse interactive gr id selection

Page 44: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 44

One can also display data in 3D scatter or full line by selecting three columns. If the columns

latitude and longitude are selected, which represent the GPS coordinates of the buoys; one can

observe their position on a map beside the graph.

Figure 31 : 3D graphic selection and map of the GBR with buoys plot on from the latitude and longitude selected One can also interact between the two tools by selecting a point on the map which causes it to

appear on the graph. Another possibility is to get the temperature graph and observe on the

map the variation in different areas by different colours or contours. The precise value can be

displayed on the top of the screen by clicking with the mouse on the map or on the graph. I

have used this to make the graph of a python library called Matplotlib, extracted from the well

knows Matlab software.

.

The Console Mode The console mode was developed in addition to the GUI to allow scientists to consult the

Database from a low rate network or a small computer without involving too much memory.

One cannot play on the graph or on the map with the database as with the GUI but one can

consult the database at a distance and use the SQL command to ask queries and receive the

result using only the shell console.

Page 45: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 45

Architecture of the Python Programs

Most of the software has been made with python although a C driver for the weeder board has

been developed as well as a C client and server to increase the speed and the embeddability in

the buoys. The C client and server are unfinished, so only the python version will be

presented here.

The Scheme presented in figure 32 shows how the different programs interact with each other.

Firstly, the buoy programme (Com_class.py) reads and stores in a buffer and a CSV file the

data from the Weeder board at regular intervals with a thread timer. During this time, the

com_class tries to connect itself with the server (Server_final) by the network and send the

data with the protocol previously described. The Server_final.py tries in turn to connect to the

database and send information with the function in the library DB_Con.py . If the Database is

not reachable after a certain time, the server sends the data accumulated in the buffer on a

CSV file and will try to resend it when it is less busy. DB_Con.py uses the package psyco.py

for the specific functions that allow us to dialogue with a PostgreSQL database. Once the data

is entered in the database, they are accessible by the GUI or the console mode by asking

queries to the database with the same library DB_Con.py. The GUI is developed with

functions and objects belonging to Wxpython. The graphic are generated by the functions and

objects of Matplotlib which was previously a library of matlab functions adapted to Wx

python. The Matplotlib library requires the installation of other packages not displayed here

but which are essential for specific functions rendering graphs in 3D or mathematic functions

(see class architecture in annex 3). The function image is also needed to display the map and

to incorporate it in a canvas which can also be used to plot the spot representing the buoys.

The console mode requires only DB_con.py to run. This reproduces most of the behaviour

possible on the PostgreSQL console and displays the information in tables. Python is a simple

object language to use (but nevertheless powerful) that avoids a lot of syntax error due to the

simplicity of its syntax, which does not require (like most of the programming languages)

commas or other controls, although the structure it is still identical to other programme

objects like Java. The codes of the different programs are on the CD. NB: that for the website,

the functions to connect to the database are already integrated in the default library of PHP.

Page 46: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 46

�/�/6/��

�6.���(��

������.���(�����������.70�(��

��������(��

������.�������(�� ���.����(��8�����(��

89���#��(��

Figure 32 : Program architecture of the python programs

The Website:

The website was created to allow people outside the scientific community to explore through

Google Map the different data recorded by the different buoys with meta information and

graphs with different time scales available. One can explore the map and select desired buoys

by clicking on the icon located on the desired latitude and longitude. The number of the buoy

is then displayed and if more information is required, one can click on the message box on the

link to display a table giving the main information on the buoy. Two graphs are displayed to

show the data associated to the buoy. The first one represents the display of all the sensors of

the buoy in one graph and the second represents each sensor in a separate graph. One can

keep the charts of one buoy to compare them with another one by clicking on the button keep

graph. Once the information and the charts of one buoy are displayed, one can also select in

list form a sensor to get more detail about its state and characteristics. Figure 33 describes

how the website is structured.

Page 47: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 47

��������

7��#,(�#�

#���'::�� (����(�1(���(�: �� .�;(�#�

7��#;(�#� &��� ��#(�#�

6������������

)�����<�*

=�������

�#��������

������7�� ���

&��6������������

)�����<�*

&��� ��#,(�#�

+�����#������

)�����,<�*

+���� ��#�

������

&����������

���������������������� ����

����#�������������#����

������� ��# /��������� ��#/��������� ��# ������� ��#

����'

����������

����'

�����������

)������<�*

�������

�������

������

���� � ��� � � � �� �� � �

���� � ���� � � �� � �� � � � � � �

�� � �

���� � ���� � � �� � �� � �� � ��

� � � �

Figure 33 : Website architecture This website is made on one webpage that names different script pages in PHP place on the

web page as different image objects. The main page

Http://dlg.vislab.uq.edu.au/goog_api3.php (This page is not accessible for the moment from

outside of the lab) displays when the Google Maps is launched along with all the buoys from

the Database that the main webpage requests to display in JavaScript to the client “Google

Map” by sending it the longitude and latitude of each of them extracted from the Database.

The main page also asks the Google Maps client to return the position of the center of the map

and the selected buoy if the user clicks on the link in the information bubble. The position

information allows the user to find a buoy near a certain longitude and latitude. The

information of the selected beacon displays the info buoy table which is in the HTML body of

the main page and the two graphs that display the sensor measurement curves. Those graphs

are implemented in separate PHP scripts that are generated by reading the value of the

Page 48: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 48

selected buoy in the variable situated in the web address that I have called beacon. To access

those variables, we use what is called a GET function. If the user clicks on the button form

keep graph, another web address variable is created by the instruction POST that I have called

beacon2 which keeps in memory the graphic of the buoy in which the user was interested.

The graphs have been done with the library Pear. Another web address variable is created

when the user uses the list form to display information from the database from a particular

sensor. All the different PHP scripts present different queries to the database as illustrated in

the web site map.

Figure 34 : First part of the webpage displayed when all the options are selected

Figure 35 : Second par t of the web site with all the options selected

Page 49: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 49

Example of Data mining Extraction Through the Presented System

This part shows an example application of this software. This simple example is going to lead

us through the website and some of the software utilities. We will suppose that we want to

observe the temperature variations between two buoys situated at two different latitudes at a

certain period in time. Firstly, we select the two buoys on the website to observe the

difference between buoy 132 situated on the north cap of Australia at the latitude -10.58 and

buoy 149 situated near Brisbane at the latitude -24.81.

Figure 36 : Full webpage generated for the case study In the first screenshot we can observe the first graph kept from the buoys near Brisbane with

only one sensor in service from 09/07/1998 to 1999/04/24 and the second graph which

displays all the sensors of buoy 132 (which were more regularly active than the first) visible

in the middle of the map as the selected one with its meta information on the left table. We

can observe that the sensors change regularly every year and half on average. Occasionally,

Page 50: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 50

there is a gap in the graph which represents a certain period of time when the sensor was not

replaced. From the graph, we can deduce that there is approximately an average of 10°C

difference between the two buoys for a difference of around 14 in latitude.

At the end of the webpage, we can see the graphs of sensors in detail. And we can also check

if the state of the sensor was operational by clicking on the desired one, in our case, sensor

n°340. We can observe here that the fluctuations of temperatures during the years 1998-1999

have the same shape and approximately the same variations. The small map on the side is a

zoom out of the main map to give a better idea of our location in Australia.

For more precision, we can use the GUI to explore the data. We first enter the SQL command

manually or by the pre selection tool that will select the data of those two sensors. This SQL

command is the following:

SELECT * FROM read WHERE id_sensor =… OR id_sensor = …. ORDER BY date_time;

The grid of data is displayed and you select the column value and date_time by clicking on

the label of the column and keeping ctrl key on to select the second column and then the cells

that contain the ID of the desired sensors in the id_sensor column. The graph displays those

two sensors information in two different colors.

Figure 37 : Graphic generated on the GUI for the case study

Page 51: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 51

The graph can be saved in PNG format as shown in Figure 38. Obviously, the temperature

variation of temperature is higher between winter and summer at least for the year 1998-1999.

In order to ascertain whether it is an isolated case due to El Niño or a general behavior, we

need a chronological comparison over years of observations of areas proximate to those buoys.

Clicking on the graph of the desired point displays on the top of the graph the exact date and

value at its plot. You can also zoom in, out, and travel on the graph with the tool bar

implemented in the graph window.

Figure 38 : Saved picture file of the graph on PNG format for the case study Taking two temperatures for each sensor at the same period of time at six month intervals

yielded 7.34 °C for the first Measure and 1.87 °C for the second one. Given this temperature

another SQL command obtains the average of both sensors during the same period of time and

their max and min values. The SQL command is the following:

SELECT avg(value) FROM read where (id_sensor = …. OR …) AND date_time<’…’ AND

>’…’.

Page 52: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 52

Figure 39 : Example of mathematical operation in SQL from the GUI One repeats the procedure for the max and min values by substituting them for avg. This

simple case study has presented a part of the software’s capabilities. This tool can be,

improved but it can be used to extract scientific data. It also displays obvious or small

differences between the website to the GUI where the data can be scanned one by one or by

meaningful groups selected via an SQL command. Selection in the grid of those groups of

data is intuitive and offers many possibilities for displaying specific graphs as desired. Thus,

this tool facilitates the tracking of climate change or following the implementation of sensors

other than temperature sensors, e.g. for water quality; It also opens the possibility of crossing

different graphs with different scales to yield additional information.

Let see now what happened to the life data recorded over two months. To show the evolution

of data taken in laboratory environment, see below the graph from the website where the

average of all the sensors measurements from the buoy TEST are shown, as well as the graph

from the GUI which represents all singular data.

Figure 40 : Graph from the website of the simulated buoy sensors for live data

Page 53: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 53

From the graph of the Website, we can notice a steady temperature for each of the four probes

presented behind fan of server computers on all the time. Thus sensor 800 gets a steady value

of 30 °C when the 3 others are around 25 °C.

Figure 41 : graph from the GUI of the simulated buoy sensors for live data

On the second graph, we can observe that during this period of time each probe records a

variation of ± 1°C around the average value described from the website

graph.

Figure 42 : zoom in of the graph from the GUI of the simulated buoy sensors for live data

Figure 42 is a zoom in of five days of observation from the sensor 950. We can see here more

clearly the peak of ± 1°C that occurs for 3h30 for the first and less than 30mn for the second

one. We can conclude from those graphs that the peak variation depends on the processor

Page 54: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 54

work of each PC. The servers’ room is temperature regulated and thus the environment

temperature does not affect the peak phenomenon.

Conclusion of the Technical Part

I explained here the different technical aspect of the project at different levels of

comprehension. I have as well tried to not be too technical, so as to offer a wide

comprehension of the project by keeping the reader focused on the important points. The class

architecture of the python program is available in the annexe. The codes of the python

programs as well as the PHP are not available on this report as they contain about 5000 lines:

they are included in the CD accompanying this report. The functions in the code are not

individually presented here but are well commented in the code. To display an example of

python code, the program of the buoy, which is the smallest, is provided in annexe 6.

This is a fantastic tool to read and manipulate data in a way I think useful. The wide diversity

of the program utility presented in this part to develop this project has provided me a

significant experience in programming which has increased my previous knowledge. The GUI

and website are the main tools to manipulate data. The practical case shown us the different

possibilities offer by the system to analyse data. We have thus seen how generic those tools

can be.

Page 55: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 55

Human and Management Dimensions

Internal to the Company

The university environment with its campus of 31,800 student (12 % of them are overseas

students) makes it a virtual township (restaurant, optician, dentist, pharmacy, post office,

sports complexes, theatre, cinema etc…). The Vislab laboratory is part of EPSA which is one

of the seven faculties of UQ.

This Research Centre where I performed my training course is friendly. The laboratory is

composed by Professor Bernard Pailthorpe helped by Nicole Bordes who gave me the

directions of the project. They find new projects for the students and supervise them. They

also give Magisterial courses in Scientific Computing from 1st year to 4th year level. They also

travel around the world to give conferences and informed themselves about the breakthroughs

in Scientific Computing that colleagues around the world have done. Three people work in

the lab: Chris Willing, David Gwynne and Terry Simmich who arrived few months before

the end of my training courses to work on archaeological computing. Chris helped me when I

arrived, with understanding the material, explaining to me the previous work on the project

and teaching me the bases of Linux with a great passion. David Gwynne advised me on how

to structure the project, the different development tools that exist and also with solutions

when I had difficulties resolving a mistake in my code or in developing certain functions.

These two people have a lot of experience in Linux, Python, Networking, Databases and

Websites.

The lab is also developed and uses the videoconference system Access Grid originally

developed by Argonne National Laboratory. Everybody works independently on their own

project and questions are encouraged. There are also thesis students who work on different

projects in the lab. My greatest impression of this research laboratory was of people’s

professionalism and open mindedness towards original projects and solutions for them. Every

week, there is a lab meeting with the staff where everybody discusses their progress with their

projects. Recently, the lab has decided to update its website to make it more interactive and to

showcase past and new projects.

Page 56: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 56

Figure 43 : photo of Vislab with the Access Grid node environment with multi conversation and software utility running through 3 power wall projectors

The fact that the objective of JCU changed in the middle of the project forced me to work

independently and not in collaboration as was expected at the start. Nevertheless, the success

of the project realisation will perhaps change their point of view and make them consider the

usefulness of a partner. From my point of view, this project which concerns environmental

preservation must not concern the self satisfaction of a University. This ethical project is the

occasion to point out how often projects are considerate first of all for there economic interest

instead of their usefulness for people and their environment. You have of course to consider

the economical part of a project, but this part should always go after the purpose of the project

itself. Personally, I will never accept a project in my career that goes against my own beliefs

whatever the personal economic interest involved.

Page 57: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 57

Discussion The SensorNet project is not only applicable on the GBR but is also a tool in other

applications involving displaying and manipulating other types of geospatial and temporal

data with this general approach. The GUI is already a fantastic tool to visualise the data of any

database. The versatility of this software has been proved by integrating archaeological data

instead of the data from the GBR. Figure 44 present the archaeological site of two different

type’s representation on the web site of two different archaeological types with database

information on the left. You can as well see the data in the GUI by selecting the database and

table that contain the archaeological data. GUI is versatile for all kinds of spatial and temporal

data.

Figure 44 : presentation of the website used for archaeological data instead those of the GBR

Page 58: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 58

Figure 45 : example of the GUI used for archaeological data instead of those from GBR

A lot of improvement can be added to this project; on the one hand the implementation of

other tools e.g.: Google Earth, to replace the simple picture where the position of the buoys is

represented to make it even more interactive. As an example, a mix of the map from the data

satellite and the sensor network can be considered. NOAA [9] has already implemented

satellite data in Google Earth. This could be done for this project.

Another step includes adding an SRB system, which provides on top of the Database a file

system management allowing a physical split of data stored in different places in the world.

Indeed, data streaming projects generate with time a massive amount of data which are often

spread in different HPC that belong to the creator of the project. The ring buffer

implementation can also improve the efficiency of the network.

The ergonomics of the GUI interface needs to be improved by providing intermediate visual

tools to make possible mathematic manipulation of the data without using the SQL language

as it is currently done. Adding more tools on the website would allow the user to not only

visualise the graph but also to interact with the data to satisfy anybody’s curiosity.

Page 59: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 59

A side project of my thesis has been to develop an XYZ stage concept to prove the viability of

remote instrumentation through the Access Grid. The aim was to prove that Access Grid users

could control the stage a microscope and receive the pictures of what was being observed in

real-time. This will give an interesting tool to the access grid to manipulate physical

experiments via videoconference or simply make action on the real work with a feed back

from the other side of the word. To do this, I used a microscope and built around an XYZ

stage in Lego Mindstorm. This was chosen mainly because of access to a side ITEE laboratory

and because of the ease of building a device without having the workshop making one

(which costs a certain amount of money even if its part of the university, every section of the

university work as small company). Figure 46 shows a photograph of the final realisation.

Figure 46 : XYZ Stage developed as Access Gr id physical tool possibility example

This project has been a real pleasure because of its ethical dimension as well as the manifold

applications of the tool development; I had to use: SQL, PHP, HTML, JavaScript, Linux and

Python as computer languages. I have also developed a C driver for the sensor card. The

impact that this project can provide on the GBR is immeasurable. If the project is continued

as expected, the next person will get good software architecture to make a professional and

really useful monitoring tool.

Page 60: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 60

This Internship has been an interesting experience, as well, in Human relations, technical

involvement and personal experience in this multicultural country which is Australia. The

environment where I worked has provided me a wide field to satisfy my curiosity. The

development of a tool that monitors our environment and provides intelligible data to

interested people has improved my knowledge of the man-machine relationship environment

as well as a better control of Linux and number of programming languages. This has

improved my knowledge in the range of programming languages I already know. This

completes my engineering degree that has provided me, not only a grasp of general

formations but accurate skills in computer science, electronics, robotics and human formation.

Working on and managing several projects as taught at ESIEA has allowed me to get a

significant experience in project management which includes team management. Through the

different internships I have done during my studies (3 from the ESIEA formation, 8 in total) I

have acquired the base of work experience in several technical and service domains that have

offered me a wide vision of the possibilities that my work provides without being constrained

to a specific field. It is why I have always oriented my internal projects in robotics and

aerospace to manipulate different aspects of science that provide the building of machines that

involve Artificial Intelligence (AI), electromechanical bodies interacting in the environment.

I will always remember the three years I spent at ESIEA Laval, where the relationship

between students and ESIEA Laval staff was open with a lot of clubs to animate the social

and professional life of the student to allow him to express his self as he feels, which allows a

creativity in the project he develops which can exist only if the passion is there, helped by the

well being and the ability of choice of the student. This has been the case for me with the

involvement in a social club of robotics with the participation of two French robotic cups and

the management as secretary which has provided me during two years without counting the

hours a great experience in practical development of projects which has been completed at

UQ by working on the motion of a humanoid robot for the world cup of robotics in Japan.

The knowledge I have found the most sensitive to get is to forecast, in a project, the human

formation which is the art of adapting yourself (and the purpose you lead) through a semi

predictable environment. Indeed, the technical and mathematical part is the easiest, even if it

can take a while to understand the logic. But it is only logic and thus it is more predictable.

The Human relations are in fact logical but through unpredictable interactions that make it

Page 61: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 61

complex to analyse. The understanding of the own personal objectives of each person and

what can affect them, is perhaps the best way to be able to manage the team, by individually

managing each person for their skills and personality rather than as a number. In a company,

you can have the best machine, the best workers, if you do not know how to make cohesion in

the team, you will never get better than an average result.

The communication in a team or in the human society in general is like this sensor network

which collects information from our natural environment. We collect information firstly

through the people that populate our network of relations. Nowadays, that mediation of

information is through the internet, which has considerably improved access of knowledge.

The quality of the information you collect depends on which query you ask. This metaphor

shows how crucial the well spread (or well sharing) of information and human relations are

important to improve our societies based on communication. The importance of how data are

stored and accessed has a decisive influence on the frequency and the facility of accessing.

The information of the world seriously changes the relation we have with life to share a part

of the time on internet to communicate as we would communicate by telephone on the web

network with more senses involved; auditory and visual with some tactile possibilities and

perhaps in the future smelling to access simulated environments’ ambience stimulating our

proper sensors to acquire more experience in miscellaneous domain by convenient way. A

simulation of the real will never replace it. Several projects of sensorial environment are

developed by ESIEA for interactive presentation, leisure development or phobic pathologies

for example.

In the future, the world will be covered more and more by different little networks which will

be linked in turn to other networks forming a complex system in perpetual transformation and

maturation. The understanding of the impact of spreading sensor networks will trigger, by the

way, the transformation of the human environment and habitat like other breakthroughs of

science when the market is favourable. We have seen as well the possibility of an

environmental change previously with the forecast of the greenhouse effect. The coral

environment is like a thermometer of the complex water exchange system with the ocean and

the sky; it can provide important information indirectly or directly about for instance the El

Nino effect for better forecasting. The extreme environment in which the buoys are exposed

gives a challenge to humans and provides a motivation to develop new systems like the

creation of new sensor specially resistant to the corrosion of the salty water or this wireless

Page 62: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 62

study done on Davies Reef [1], which has shown the possibility of using the evaporation layer

of the ocean surface to reflect electromagnetic waves that transmit the information.

The GBR is globally one of the best protected reefs. A lot of people are involved in this

protection voluntarily or by profession. All of those people hope to provide to their children

the same quality of earth that we have inherited. This technical application will perhaps in the

future help people to extract information of better quality, to ameliorate preservation of the

reef, thanks to this monitoring system. The full establishment will also get economic benefits

when they ultimately install cameras to provide live video of the reef as a tourist attraction.

A last word about Australia, this country where I have spent eighteen months doing a Master

of Science in Mechatronics and this internship for Vislab and ESIEA. Australia is an Amazing

country, from its natural (and unique in the world) environmental richness in fauna and flora

to its quality of life. It has huge spaces where the scale of distance changes considerably

compared to Europe, where each major town is separated by 1,000+ Km instead of 250 Km.

The population, which is only 20,588,000 people for a space of 8 million kilometre square, is

in general really optimistic and friendly. Their main phrase is “No Worries” and their sense of

humour is as pretty as their country. Economically, According to the ABS [27], the Labour

Force is growing non-stop, as the illustration obviously shows, from 1996 to today.

Figure 47 : Char t of the trend estimate of employed persons in Australia Figure 48 : Char t of the trend unemployment rate in Australia Income salary for a beginning Engineer is between $35K and $45K and even more depending

on the profile of a new arrival on the market. After 5 years of experience or less, an engineer

can expect around $70K AUD or more. Those incomes are about the same in France

according to INSEE [20] with a +4% of influence in the salary for ESIEA engineer. The

Opportunity to open new markets as well as developing new ideas seems easier in Australia

than in France where the mentality is still often closed to innovation and prefers to stay inside

Page 63: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 63

familiar agenda. This is certainly due to the optimistic point of view of Australian peoples. To

conclude I have decided to stay in Australia for the next five or six years to discover in depth

this country where I have found only advantages until now.

Page 64: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 64

References [1] Chr istopher M. Palazzi, Graham S. Woods Member, IEEE, Ian Atkinson, Member, IEEE, and Stuar t Kininmonth, “ High Speed Over Ocean Radio L ink to Great Barr ier Reef », TENCON, Palazzi, 2005 [2] Weeders Technologies website, “ Thermocouple Input Module,” http://www.weedtech.com/ [3] Bernard Salvat,Jessica Haapkylä, Mur iel Schr imm, “ Coral Reef Protected Areas in international instruments” , World Heritage Convention, World Network of Biosphere Reserves, Ramsar Convention, November 2002 [4] Reef HQ aquar ium website, the Great Barr ier Reef, www.reefhq.com.au/about/GBR.html [5] Clive Wilkinson, Status of Coral Reef of the Wor ld, Global Coral Reef Monitoring Network, 2004 [6] Mar ine Science website, “ the coral animal” , http://www.biosbcc.net/ocean/mar inesci/04benthon/crani.htm [7] AIMS website, “ AIMS long-term monitoring of the Great Barrier Reef” , http://www.aims.gov.au/pages/research/reef-monitor ing/ltm/ltm20000622-gbr.html [8] AIMS Research Plan 2003-2006 [9] NOAA Satellite and Observation website, http://www.osdpd.noaa.gov/PSB/EPS/SST/climohot.html [10] AIMS Coral ID product website, http://www.aims.gov.au/coralidcd/CoralID_Overview.htm [11] Stuar t Kininmonth, Scott Bainbr idge, Ian Atkinson, Er ic Gill, Laure Barral

and

Romain Vidaud, “ Sensor Networking the Great Barr ier Reef” , Spatial Sciences Qld journal, 2005 [12] ORNL SensorNet website, http://www.sensornet.gov/news/sn_news_kn022706.html [13] FollowUs Mobile Phone Tracking website, http://www.followus.co.uk/ [14] Bandweaver Technologie website http://www.sensornet.co.uk/index.cfm?page=98& zone=1& casestudy_id=12& case_studies_action=view_casestudy [15] Commsdesign website http://www.commsdesign.com/showArticle.jhtml?ar ticleID=49900460 [16] Google Maps API website, http://www.google.com/apis/maps/

Page 65: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 65

[17] Jared Sanderson, “ Data Capture and the Management of Data Streaming from a

Network of Sensors” , ITEE (UQ), 26th

October 2005 [18] Weeders Technologies datasheet WTTCI-M “ Thermocouple Input Module” [19] CRC reef research centre website, http://www.reef.crc.org.au/discover/plantsanimals/cots/cotsmanage.html [20] INSEE website, http://www.insee.fr /fr /home/home_page.asp [21] Argonne National Laboratory website, http://www.anl.gov/welcome.html

[22] idp Education Australia website, http://students.idp.com/english/university/queensland/#facilities

[23] AIMS Reef Monitor ing website, http://www.aims.gov.au/pages/research/reef-monitor ing/methods.html#broadscale-surveys

[24] I fremer website, El Niño, http://www.ifremer.fr /lpo/cours/elnino/index.html

[25] Wikipedia, ring buffer definition, http://en.wikipedia.org/wiki/Circular_buffer [26] Berkeley Computer Science Department website, http://db.cs.berkeley.edu/

[27] Australia Bureau of Statistics website, http://www.abs.gov.au/

Page 66: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 66

Annexes

Page 67: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 67

Annexe 1: Glossary

ABS : Australian Bureau of Statistics

AIMS : Australian Institute of Marine Science

APAC : Australian Partnership for Advanced Computing national facility

API : Application Programming Interface

CCD : Charge Coupled Device

CDMA : Code Division Multiple Access

COTS : Crown Of Torn Starfish

CSV : Comma delimited file

ESIEA : Ecole Supérieur d’ Informatique, d’Electronique et d’Automatisme

(Superior school of Informatics, Electronics and Automatisms)

EPSA : faculty of Engineering, physical Science and Architecture

GBR : Great Barrier reef

GPS : Global Positioning System

GRMN : Global Reef Monitoring Network

GUI : Graphical User Interface

HF : High Frequency

HPC : High Performance Computing

INSEE : Institue National de la Statistique et des Etudes Economique

(National Institute of Statistic and Economic studies)

IP : Internet Protocol

ITEE : Information Technology & Electrical Engineering

JCU : James Cook University (Townsville)

NOAA : National Oceanic Atmospheric Administration

NRAVS : Natural Resources, Agriculture & Veterinary Science

ORDBMS : Object Relational Database Management System

ORNL : Oak Ridge National Laboratory (USA)

PHP : Hypertext Preprocessor

PNG : Portable Network Graphic

PNG : Papua New Guinea

QCIF : Queensland Cyber Infrastructure Foundation

QPSF : Queensland Parallel Science Foundation

Page 68: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 68

SBR : Storage Resource Broker

SBS : Social and Behaviour Science

Sc : Science

SGPA : School of Geography, Planning and Architecture

Shell : Human-Computer interface in command line

SPS : School of Physical Science

SQL : Structured Query Language

TCP : Transmission Control Protocol

UQ : University of Queensland

USB : Universal Serial Bus

Page 69: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 69

Annexe 2: Colour Scale of HotSpot and DHW

Status Level Definition Description No Stress HotSpot " 0 corals are not

currently experiencing any thermal stress

Bleaching Watch

0 < HotSpot < 1

temperatures are above normal summer maximum, but corals are not yet stressed

Bleaching Warning

1 " HotSpot and 0 < DHW < 4

corals are experiencing a low-level buildup of thermal stress

Bleaching Alert Level 1

1 " HotSpot and 4 " DHW < 8

corals are currently stressed, accumulating to a level where bleaching is expected

Bleaching Alert Level 2

1 " HotSpot and DHW # 8

corals are currently stressed, accumulating to a level where widespread bleaching and some coral mortality is expected

Reef Shelf Position Tows COTS

COTS per tow

Median % Live

Coral Cover

Median % Dead Coral Cover

Median % Soft

Coral Cover

Reef Status

BEAVER Mid 29 68 2.34 0 to 5 0 to 5 5 to 10 AO ELLISON Mid 59 159 2.69 0 to 5 0 to 5 0 to 5 AO FLORA Mid 51 0 0 0 to 5 0 to 5 0 to 5 RE TAYLOR Mid 60 1090 18.17 0 to 5 0 to 5 0 to 5 AO MOSS Outer 50 0 0 20 to 30 0 to 5 0 to 5 NO POTTER (A) Outer 80 464 5.8 10 to 20 0 to 5 0 to 5 AO

Page 70: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 70

Annexe 3: Class from SensorNet_GUI.py with there function:

Panel Classes:

>�����%.���.��)�������*

>�����$�.��.���)�������*

>����#�.��.���)�������*

>�����$�.����.���)�������*

>����#�.����.���)�������*

>�����$�.#���.���)�������*

>����#�.#���.���)�������*

>�����$�.����.���)�������*

>����#�.����.���)�������*

>�����$�.����.���)�������*

>����#�.����.���)�������*

>7�������)*�'�����

>7�������)*

>�$������������)������'����� *

>7��/����)*�'�?���������@

A�����

A�

�����!��!"���

Utility Classes :

>�)*

A�����

A�

A��

A����

A��

����# ��

Packages used:

Page 71: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 71

Page 72: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 72

Annexe 4: Classes from the other python program:

Class from db_con.py and its package:

>��)*

>����.����)������.���*

>�����.��)*

>�����.��.��)*

>����.�����)�������*

>������.��.��)������.���*

>������.������.����)*

>������.������.���)*

>������.������.����)*

>������.������.���)*

>�#��%.�����)*

> ��.� �.���)*

> ��.��.����)*

A��.���

A����.���

A#���.���

A����.���

�$!���

Class from Consol_control.py :

>��)*

>����.���)*

>����.������)*

>��������)*

>�����.��)*

������

Functions from server_final.py :

>�$����.��)*

>�$����.��)*

� %

Page 73: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 73

Classes from com_class.py :

Page 74: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 74

Annexe 5: Package installation

module used:

for the GUI interface:

python 2.3

WxPython

for the graph in Wxpython:

matplotlib -0.86.2

numarray -1.5.1

numpy

numeric -24.2

mpl3d

scipy -0.4.6

display map:

imaging

basemap -0.8.2

psychopg (http://initd.org/projects/psycopg1)

postgreSQL 8.1.3

for the website:

php 4

for the graph:

pear

pear/DB.php

Page 75: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 75

Annexe 6: Installation instruction:

t o execut e t he GUI i nt er f ace: l aunch Sensor Net _GUI . py ( db_con. py i s t he l i br ar y t hat make t he di al ogue wi t h t he DB) t o execut e t he consol mode: l aunch consol _cont r ol . py ( db_con. py i s t he l i br ar y t hat make t he di al ogue wi t h t he DB) t o execut e t he ser ver : l aunch ser ver _f i nal . py ( db_con. py i s t he l i br ar y t hat make t he di al ogue wi t h t he DB) def aul t DB par amet er : name_dat abase=" wpagnon" user _db=" wpagnon" host _db=" 130. 102. 78. 171" por t _db=" 5432" t ab=" node" def aul t c l i ent par amet er : HOST_cl = ' ' PORT_cl = 2059 you can change t he def aul t set i ng of t he dat abase name, t he db user , t he db host , t he db por t , and t he def aul t t abl e as wel l as t he c l i ent por t and host name on t he t op of t he pr ogr am. t o execut e t he c l i ent : l aunch com_cl ass ( Weeder . py i s t he l i br ar y t hat cont r ol t he pr obs boar d by RS232) def aul t host : 130. 102. 78. 160 def aul t por t : 2059 t o l aunch t he web si t e: t ype f or t he moment ( f r om t he l ab onl y) : ht t p: / / dl g. v i s l ab. uq. edu. au/ wpagnon/ goog_api 3. php

Page 76: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 76

Annexe 7: website bookmarks used for the project SensorNet: mirror.AARNet.edu.au Home wx: wxPython Online Docs wxWindows 2.4.2: A portable C++ and Python GUI toolkit http://sda.iu.edu/embedding_in_wx3.py wx.EvtHandler Class Tkinter to put a GIF Image on a Canvas (Python) wxGlade user manual Python: Python 2.4.2 Documentation - 28 September 2005 ASPN : Python Cookbook : Use ADO to list field definitions for tables Serpia: Python/MySQL tutorial Python: Index of Modules Python Imaging Library Handbook (2003 Edition) Numerical Python The elementtree Package Dates and Times rs232: Serial Communication via RS-232: bioscom example -ElectroSofts.com Weeder Technologies RS-232 Data Modules Serial Drivers C : Aide en C: Table des matières CPPFrance.com | C / C++ / C++.NET | 4770 sources CPP, C/C++, Source, Code, Programmation, Cours , Tutorial, Tutoriaux etc... mini-HOWTO de programmation des ports d'entrées / sorties sous Linux Programming IP Sockets on Linux, Part One Javascr ipt : JavaScript Guide JavaScript Guide Core JavaScript Guide 1.5: Javascript Basics Part 6

Page 77: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 77

Matplotlib: Matplotlib / pylab - matlab style python plotting (plots, graphs, charts) Matplotlib / pylab - matlab style python plotting (plots, graphs, charts) Matplotlib / pylab - matlab style python plotting (plots, graphs, charts) The Matplotlib User’s Guide matplotlib support Cookbook/Matplotlib - SciPy.org Cookbook/Matplotlib - SciPy.org /networkx/trunk/doc/examples/degree_sequence_matplotlib.py - NetworkX trac - Trac Cookbook/Matplotlib/Maps - SciPy.org Matplotlib / pylab - matlab style python plotting (plots, graphs, charts) SciPy Course Outline Postgresql : PostgreSQL: FTP Browser PostgreSQL 8.1.1 Documentation PsycopgTwoFaq - psycopg - Trac PostgreSQL: Documentation: Manuals: PostgreSQL 7.4: pg_dump Index of file:///home/wpagnon/dl/psycopg2-2.0b8/doc/api/public /psycopg2/trunk/lib/extras.py - psycopg - Trac DISLIN-Manual HTML: Forms in HTML documents HTML and DHTML Reference HTML Commands Tables Cascading Style Sheets, level 1 Cascading Style Sheets, Level 2 Manpage of SEND PHP: PHPBuilder.com, the best resource for PHP tutorials, templates, PHP manuals, content management systems, scripts, classes and more. PHP: pg_fetch_assoc - Manual PHP: pg_fetch_assoc - Manual PHP Classes - Class: RPG Ajax Creator PHP: Manual Quick Reference GraPHPite - Open Source PHP OO Graph Rendering Utility Writing Scripts with PHP's PEAR DB Module adaptive path » ajax: a new approach to web applications JavaScript Client-Side JavaScript Reference JavaScript Arrays JavaScript Tutorials: Complete List

Page 78: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 78

FAQTs - Knowledge Base - View Entry - JavaScript: List: Create: Array: Loop: Dynamically: Can you give overview creating <select><option>? GoogMap: Google Maps API Documentation Google Groups : Google-Maps-API Google Maps API Version 2 Tutorial Google Maps API Custom Markers TLabel: A Google Maps Extension Read This First - GoogleMapki Pear: Manuel PEAR A propos de PEAR pear.veggerby.dk - Image_Graph Samples Linux: linux List of Commands for vi - Unix Editor Linux Tutorial Other : Reef Research: Volume 8 No. 1 March 1998 SensorNet Index of /wpagnon microscope Newport 562-XYZ Multi-Axis Positioners for Sale Penplot/Drill XYZ Table Motorized Positioners & Controllers - Catalog - Opto-Mechanical Products - Standa PI Datasheets / Descr.: C-880 Automation Platform XYZ Tables | Newmark Systems Motorized Products - Examples of linear slides XYZ Tables | Newmark Systems Advanced Lego Mindstorms Programming in Visual C++ LEGO Shop At Home

Page 79: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 79

Annexe 8: Example of python program, Class_com.py #!/usr/bin/python import Weeder import time import socket from threading import Timer import threading import string import sys timer_delay=600.0 time_count=3 time_send=6 #read the data of temperature class thermoRead: def __init__(self): self.termo = None self.all_thermo_sensor=[] self.all_time_measure=[] self.all_data=[] self.number_measure=0 self.all_avg_temp=[] self.last_date=[] self.avg_measure=0 #connect by rs to the board of sensor try: self.termo = Weeder.SimpleThermocouple() except Weeder.WeederException, e: print "Exception msg: ", e.value sys.exit(1) except: print "Couldn't open thermocouple device" sys.exit(2) def time_reception(self): #storage variables self.thsensor=[] self.data='' self.record={ } #wait until the transmition is reddy while self.termo.isOpen() is not True: pass #display misceleniouce info self.dev=self.termo.device self.thtype=self.termo.thermoTypes self.types=self.termo.types self.units=self.termo.getUnits('A') self.module=self.termo.getModuleId() self.allmodules=self.termo.getModuleIds() #print 'the device is:', self.dev #print 'the whole thermo types is:', self.thtype #print 'the curent thermo types is:',self.types #print 'the current prob is:',self.units #print 'all the modules is:', self.allmodules #print 'the curent module is:', self.module #read the sensors chanel for chn in ['A','B','C','D']:

Page 80: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 80

self.value=self.termo.getRead(chn) if self.value=='': return self.thsensor.append(self.value) # print 'value chanel %s:'%chn,self.value self.all_thermo_sensor.append(self.thsensor) #print 'all chanel',self.thsensor #print "all chanel on time", self.all_thermo_sensor #catch the time when it have been measured self.time_measure=time.localtime() self.all_time_measure.append(self.time_measure) #print self.time_measure #print self.all_time_measure self.number_measure=self.number_measure+1 self.somme=0 self.avg_temp=[] if self.number_measure==time_count: self.avg_measure=self.avg_measure+1 for temp_prob in range(4): for avg in range(time_count): self.somme=self.somme+string.atoi(self.all_thermo_sensor[avg][temp_prob]) self.avg_temp.append(self.somme/time_count) self.somme=0 self.all_avg_temp.append(self.avg_temp) self.last_date.append(self.all_time_measure[time_count-1]) self.all_thermo_sensor=[] self.all_time_measure=[] self.number_measure=0 #print"avg ms",self.avg_measure #print self.last_date #function wich send all the data in a string def getdata(self): self.all_data=[] self.name_sensor=["800","900","950","850"] for count in range(self.avg_measure): for dict_temp in range(4): self.data=self.name_sensor[dict_temp]+',...,ok,...,' + `self.all_avg_temp[count][dict_temp]`+',...,'+time.strftime("%Y-%m-%d %H:%M:%S", self.last_date[count])+'@' self.all_data.append(self.data) self.data='' self.avg_measure=0 self.all_avg_temp=[] self.last_date=[] print self.all_data return self.all_data class thread_routine(threading.Thread): def __init__(self,subclass): threading.Thread.__init__(self) self.subclass=subclass def run(self): t = Timer(timer_delay,self.subclass) t.start() t.join() while True: self.tocken=t.isAlive() print "is alive",self.tocken if t.isAlive()==True: t.start() t.join() #send the data to the server class connect_to_server:

Page 81: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 81

def __init__(self,HOST=None,PORT=None): self.client=socket.socket(socket.AF_INET,socket.SOCK_STREAM) self.def_er=0 self.all_data=[] # now connect to the server on port 2059 if HOST is None: self.HOST = '130.102.78.160' else: self.HOST =HOST if PORT is None: self.PORT=2059 else: self.PORT=PORT try: self.client.connect((self.HOST,self.PORT)) except socket.error,ersock: print "error socket",ersock self.def_er=1 self.args=ersock.args self.client.close() except socket.herror,eraddr: print "error address",eraddr self.def_er=2 def send_data(self,data_to_send): try: self.client.send(data_to_send) except socket.error,ersock: print "error socket",ersock self.def_er=1 self.args=ersock.args self.client.close() except socket.herror,eraddr: print "error address",eraddr self.def_er=2 def receive(self,size): try: self.value=self.client.recv(size) return self.value except socket.error,ersock: print "error socket",ersock self.def_er=1 self.args=ersock.args self.client.close() except socket.herror,eraddr: print "error address",eraddr self.def_er=2 def check_error(self): return self.def_er def get_args_err(self): return self.args if __name__ == "__main__": while True: F_client=False F_sensor=False inf=thermoRead() check=1 session_ID=1

Page 82: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 82

F_Hello=False while check!=0: connection=connect_to_server() check=connection.check_error() if check==0: print "connected" else: print "not connected" while True: if F_Hello is not True: connection.send_data("Hello")#hello connection print "hello sent" ini=connection.receive(1024) print ini if ini=="begin": while F_client==False: connection.send_data("950,...,TEST,...,196.200.1.3,...,"+`session_ID`+",...,4,...,-24.006,...,159.69,...,0.2")#id host, host name,ip address,session, number of sensor, lat,long,depth inf_client=connection.receive(1024) print "inf client:",inf_client if inf_client=="ok": F_client=True count_sens=0 inf_sensor="unknow" while F_sensor==False: if count_sens==0: connection.send_data("800,...,1,...,prob1,...,1444225,...,-24.009,...,159.69,...,-8")#id sensor 1, type, name, serial number inf_sensor=connection.receive(1024) if inf_sensor=="ok" and count_sens==0: count_sens=1 if count_sens==1: connection.send_data("900,...,1,...,prob2,...,1444226,...,-24.009,...,159.69,...,-6")#"" inf_sensor=connection.receive(1024) if inf_sensor=="ok" and count_sens==1: count_sens=2 if count_sens==2: connection.send_data("950,...,1,...,prob3,...,1444227,...,-24.009,...,159.69,...,-7")#"" inf_sensor=connection.receive(1024) if inf_sensor=="ok" and count_sens==2: count_sens=3 if count_sens==3: connection.send_data("850,...,1,...,prob4,...,1444228,...,-24.009,...,159.69,...,-5")#"" inf_sensor=connection.receive(1024) if inf_sensor=="ok" and count_sens==3: F_Hello=True F_sensor=True else: send_back=ini print send_back t = Timer(timer_delay,inf.time_reception) for i in range(time_send): if t.isAlive()==False: t = Timer(timer_delay,inf.time_reception) t.start() t.join() i=i+1 data=inf.getdata() print"send data",data[0] for send_dt in range(len(data)): connection.send_data(data[send_dt]) check=connection.check_error()

Page 83: MEMOIRE DE FIN D’ETUDES ESIEA · - Andreas Vaszolyi for his help in the grammar correction of this thesis . ESIEA 2006 Vislab MEMOIRE 6 William PAGNON Résumé La conservation de

ESIEA 2006 Vislab

MEMOIRE William PAGNON 83

if check==0: print "sended" else: print "not sended" break