Image Processing Reference
In-Depth Information
( MB ROM/ kB RAM). The authors intended to develop a software framework regardless of
present sensor node limitations.
SensorWare developed at the University of California, Los Angeles, aims at the programmability
of an existing sensor network after its deployment. he functionality of sensor nodes can be dynam-
ically modified through autonomous mobile agent scripts. SensorWare scripts can be injected into
the network nodes as queries and tasks. After injection, scripts can replicate and migrate within the
network. Motivation for the SensorWare development was the observation that the distribution of
updates and the download of complete images to sensor nodes are impractical for the following rea-
sons. First, in a sensor network, a special sensor node may not be addressable because of missing node
identifiers. Second, the distribution of complete images through a sensor network is highly energy
consuming. Besides that, other nodes are affected by a download when multihop connections are
necessary.
Updating complete images does not correspond to the low-power requirements of sensor net-
works. As a consequence, it is more practicable to distribute only small scripts. In the following
section, the basic architecture and concepts of SensorWare are described in detail.
12.3.4.1 Basic Architecture and Concepts
SensorWare consists of a scripting language and a runtime environment. he language contains var-
ious basic commands that control and execute specific tasks of sensor nodes. These tasks include,
for example, communication with other nodes, collaboration of sensor data, sensor data filtering, or
moving scripts to other nodes. he language comprises necessary constructs to generate appropriate
control flows.
SensorWare utilizes Tcl as scripting language. However, SensorWare extends Tcl's core commands.
These core extension commands are joined in several API groups, such as Networking-API, Sensor-
API, and Mobility-API (see Figure .).
SensorWare is event-based. Events are connected to special event handlers. If an event is signaled
an event handler serves the event according to its inherent state. Furthermore, an event handler is
able to generate new events and to alter its current state by itself.
The runtime environment shown in Figure . contains fixed and platform-specific tasks. Fixed
tasks are part of each SensorWare application. It is possible to add platform-specific tasks depending
on specific application needs. he script manager task receives new scripts and forwards requests to
the admission control task. he admission control task is responsible for script admission decisions
and checks the overall energy consumption. Resource handlers manage different resources of the
network.
Figure . shows the architecture of sensor nodes with included SensorWare sotware. he Sen-
sorWare layer uses OS functions to provide the runtime environment and control scripts. Static node
applications coexist with mobile scripts. To realize dynamic programmability of a deployed sensor
network a transient user can inject scripts into the network. After injection, scripts are replicated
Core
Core extensions
Tcl script interpreter
Networking-API
Timer-API
Core commands
Sensor-API
Mobility-API
FIGURE .
SensorWare scripting language.
 
Search WWH ::




Custom Search