Platinum Sponsors

SUN

ELCA

Gold Sponsors

AdNovum

Credit-Suisse

Silver Sponsors

SAP

SyBOR AG

Partners

Netcetera AG

JUGS - Java User Group Switzerland

Stadt Zürich Wirtschaftsförderung

cR Kommunikation

Eveni AG

LiSoG - Linux Solutions Group e.V.

Star Alliance

ICTnet

simsa

Creatronic Media Supply

Media Partners

Netzwoche

inside-it.ch

javamagazine

InfoWeek

IT Reseller

JavaSPECTRUM

APRESS

Olivier Liechti

Olivier Liechti

David Johannot

David Johannot

(1380) Managing Wireless Sensor Networks with Java

Work-in-Progress

Wednesday, 2007-06-27, 12:10 - 12:50, Arena 5

  • Olivier Liechti - University of Applied Sciences / HEIG-VD (speaker)
  • David Johannot - University of Applied Sciences / HEIG-VD (co-speaker)
  • Pierre Métrailler
  • Stephan Robert
  • Karl Baumgartner

Topics

Download the presentation

Abstract

In this session, we report on the progress of a project, which aims to develop 
an end-to-end management platform for wireless sensor networks in Java. This 
project is a joint effort between Shockfish SA and the University of Applied 
Sciences Western Switzerland (HEIG-VD). It is supported by the Swiss 
Confederation’s Innovation Promotion Agency (CTI).

After a brief introduction to wireless sensor networks, we explain how Java 
technologies have been used throughout the entire system: from the wireless 
nodes (Java ME), through the middleware layer and up to the management console 
(Java EE). The open source components (frameworks, graphical libraries, tools, 
etc.) that provide a foundation for the system are also described.

During the presentation, we cover a number of themes, including 1) the overall 
system architecture, 2) the features and design of the middleware layer (remote 
communication, event management, logging, security, etc.), 3) the management 
console (remote operations and notifications, data extraction, visualization 
techniques, etc.).

The talk is illustrated with the presentation of TinyNode, which is a wireless 
sensor network platform suited for both academic projects and industrial 
applications. TinyNode is designed and produced by Shockfish SA, a start-up 
company based in Lausanne, Switzerland.

Participants interested in the field of wireless sensor networks will receive 
all the information they need to get started with their own projects.


4. OBJECTIVES
-------------
- introduce the field of wireless sensor networks to the audience
- provide the information required to get started on a wireless sensor network 
project
- describe the architecture of a management platform for wireless sensor 
networks
- show how Java technologies and open source frameworks (AppFuse, Spring, 
Hibernate) have been used to build the management platform


5. TARGET AUDIENCE
------------------
- people interested in wireless sensor networks and more generally in ubiquitous 
computing
- people interested to see how popular application frameworks have been used to 
build a distributed management system
- people interested in data visualization


5. AGENDA
---------
A. Introduction to wireless sensor networks
A.1. Definitions
A.2. Application domains

B. The TinyNode Platform
B.1. Design goals
B.2. Architecture and features

C. The Wireless Sensor Network Management Platform
C.1. System architecture
C.1. Embedded software components (Java ME)
C.2. Middleware layer (communication management, event management, logging, 
etc.)
C.3. Management console (submission of commands, data analysis, information 
visualization, etc.)

D. Future work & conclusions


4. SUMMARY
----------

4.1. Wireless Sensor Networks
-----------------------------
Since a couple of years, the term "Internet of Things" is used to 
describe the increasingly seamless interactions between the physical and the 
digital world. A wide range of technologies have been developed to transform 
this vision into reality. Radio Frequency IDentification (RFID) is a good 
example and has received a lot of attention from the media. In this talk, we 
look at another very promising technology: wireless sensor networks.

Wireless sensor networks are distributed systems, in which autonomous devices 
collect environmental data (location, speed, temperature, humidity, sound level, 
etc.). The data is collected across the network, aggregated and fed into 
business applications. Sensor networks are an enabler for very different 
applications: environmental monitoring, agricultural monitoring, medical 
monitoring, habitat monitoring, military surveillance, etc.

4.2. The Architecture of a Wireless Sensor Network Deployment
-------------------------------------------------------------
The architecture of a wireless sensor network deployment essentially consists of 
the following components:

1) The sensor nodes. They are autonomous hardware modules with embedded software 
components. A sensor node is equipped with various sensors (depending on the 
application) and is able to forward the collected data up to one of the control 
nodes (using its peers as relays). Power consumption on sensor nodes is 
critical. For this reason, sensor nodes only have local conversations and do not 
have direct connection with the Internet.

2) The control nodes. They are also hardware modules. However, they have more 
energy at their disposal and can have conversations across mobile networks (SMS, 
GPRS, etc.). Hence, they provide the interface between the wireless sensor 
network and the Internet. Their first function is to gather and consolidate the 
data collected by surrounding sensor nodes, before forwarding it to back-end 
systems. Their second function is to receive commands from back-end systems and 
to relay them to the sensor nodes.

3) The middleware layer. Wireless sensor networks need to be managed remotely. 
The amount of collected information, the dynamic nature of the network, the 
occurrence of temporary and lasting failures are some of the challenges that 
need to be addressed by the supporting middleware. The facilities that have to 
be provided include the management of communication, the management of events 
(filtering, aggregation, correlation, routing), the logging and auditing of 
activity, the security, etc.

4) The management console. The characteristics of wireless sensor networks 
described above also have implications at the user interface level. The role of 
the management console is to allow end-users to interact with the sensor network 
(send commands, query status, etc.). Another function of the console is to 
support the analysis of the sensor data, by providing extraction and 
visualization features.

5) The business applications. Whatever the application domain, the reason for 
deploying a sensor network is to process the collected data according to some 
business logic. The business logic is defined in an external system (that we 
call here a "business application"). Sometimes, this application 
already exists (e.g. it is the ERP used by a logistics company). Hence, what 
needs to be provided by the middleware layer is a mechanism to forward 
information and events from the sensor network to the business application. 

4.3. Using Java to Manage a Wireless Sensor Network
---------------------------------------------------

Shockfish SA has designed a wireless sensor network platform, with the goal to 
support both academic and industrial projects. This platform is called 
"TinyNode" and provides both sensor nodes (TinyNode 584) and control 
nodes (MamaBoard). The building blocks can be used to create sensor networks, 
with basic management capabilities. Initially, the tool set made it possible to 
send commands to a control node via Short Message Service (SMS), and to receive 
data over GPRS.

The goal of the project, that we present in this session, was to build a more 
sophisticated management infrastructure. Hence, it was to implement the 
middleware layer and the management console described in the previous paragraph. 
This work has been done in collaboration between Shockfish and the University of 
Applied Sciences Western Switzerlnd (HEIG-VD).

Java technology has been used throughout the entire system. The control nodes 
provide a Java Micro Edition (Java ME) runtime environment. Some components have 
been implemented and deployed in this environment. On the back-end system, 
several open source frameworks have been integrated to create the middleware 
layer and the management console. Specialized libraries have also been used to 
develop the data visualization features.