Autonomous Execution of Reliable Sensor Network Applications on Varying Node Hardware

Autonomous Execution of Reliable Sensor Network Applications on Varying Node Hardware

Steffen Ortmann, Peter Langendoerfer
DOI: 10.4018/978-1-4666-6359-6.ch024
OnDemand:
(Individual Chapters)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

The authors present a user-centric design flow for ease of use for specifying Wireless Sensor Network applications even for heterogeneous hardware. The design flow provides very high abstraction and user guidance to refrain the user from implementation, deployment, and hardware details including heterogeneity of the available sensor nodes. Automatic event configuration is accomplished by using a flexible Event Specification Language (ESL) and Event Decision Trees (EDTs) for distributed detection and determination of real world phenomena. EDTs autonomously adapt to heterogeneous availability of sensing capabilities by pruning and subscription to other nodes for missing information. The authors analyze the approaches in theory and praxis. They present two of numerous simulated scenarios proving the robustness and energy efficiency of the approach while having learnt appropriate configuration properties that are required for correct sensing. They can deal with failing sensors despite performing pretty well in terms of accuracy and number of messages exchanged.
Chapter Preview
Top

Introduction

Pervasive computing significantly increases the human-computer interaction as well as the environment-computer interaction and enables a direct interplay between the real world and the information technology. The vision of pervasive intelligent environments surrounding and serving us at any place and any time will become reality in the near future. Computing devices will be embedded in everyday objects allowing information technology to fade into the background and become nearly invisible to their users. Wireless Sensor Networks (WSNs) are one of the first real world examples enabling pervasive computing. Envisioned to be distributed like “Smart Dust”, these networks support a broad range of applications and may become the perfect service and surveillance tool. Based on their capability to identify physical phenomena, sensor networks can be applied for environmental and structural control, context-awareness for personal services, military applications or pervasive healthcare, to mention a few (Mainwaring, Culler, Polastre, Szewczyk, & Anderson, 2002; Werner-Allen, Johnson, Ruiz, Lees, & Welsh, 2005; Akyildiz, Su, Sankarasubramaniam, & Cayirci, 2002; Aboelaze & Aloul, 2005). To summarize, ambient assisting technology based on WSNs will amazingly increase our quality of life.

Despite of the emerging advantages and potential applications, there are still a lot of challenges and problems to solve before WSNs can be used as consumer technology. WSNs are expected to be deployed with high density in large areas where hundreds or thousands of nodes are used. Due to the pervasiveness of envisioned systems, those are caught in a crossfire of external and internal influences. Sudden changes in operational conditions, varying deployment and hazardous environments adversely affect the reliability of applications. The configuration of a pervasive system is yet hard for experts, which usually customize WSNs manually to application and deployment requirements. It is an obvious fact that most approaches for WSNs hardly consider or even disregard the configuration complexity of a WSN. However, a proper usability is considered essential for WSNs supporting real life applications. Making the programming and deployment of a WSN accessible for non-experts could become the most important issue in order to gain broad consumer acceptance of WSNs.

Pervasive systems are expected to consist of various devices providing different capabilities, hardware and software. Approaches aiming at ease of use for specifying new applications have to autonomously cope with expected and unexpected heterogeneity, fault tolerance and energy efficiency. Provision of means that enable non-professional users to make use of the WSN is required to make them widely accepted. These users are usually short on experience of programming languages and sensor networks. They cannot be asked for applying programming languages or data-base abstractions for WSN configuration. These users require a straightforward method for task definition and sensor node configuration without the need to know about hard- or software or node deployment of the WSN under configuration. Further, the algorithms used for configuration of the sensor nodes must be robust enough to autonomously overcome sudden failures during runtime, such as unavailability of sensing features or of collaborating nodes. Nevertheless, all necessary internal configuration and adaptation processes have to be completely hidden from the user.

Key Terms in this Chapter

Phenomenon: A phenomenon is a physical real world condition that can be measured by sensors, e.g. temperature or humidity. It is described either by single natural conditions or combinations of those.

EDT: An Event Decision Tree (EDT) is the on-node representation of the event specification and the logical structure of the event representation as a state machine.

Event: An event is a software construct announcing a detected phenomenon or that a sensor measurement meets certain condition.

False Negative: A False Negative case appears when an existing phenomenon is not reported or missed respectively, due to any kind of failure.

ESL: The Event Specification Language allows the user to define the “things-in-mind” to be sensed in a pre-defined XML dialect.

Collaboration: Collaboration is the collective term of all actions related to exchange of data and information between single sensor nodes to execute a common task.

False Positive: Is the announcement of an falsified reported event for which the real world phenomenon does not exist. It is therefore triggered due to any kind of failure.

Complete Chapter List

Search this Book:
Reset