Monitoring Wireless Sensor Networks by ... - Semantic Scholar

2 downloads 137676 Views 262KB Size Report
Jan 29, 2004 - handheld devices can be good enabling devices that collect real-time data from ... groupware for the wireless sensor network monitoring in details. Finally ... consumptions, and reliability in terms of packet lost-free. Preliminary ...
Sicon/04 – Sensors for Industry Conference New Orleans, Louisiana, USA, 27-29 January 2004

Monitoring Wireless Sensor Networks by Heterogeneous Collaborative Groupware Liang Cheng, Tian Lin, Yuecheng Zhang, and Qing Ye Laboratory Of Networking Group (LONGLAB, http://long.cse.lehigh.edu) Department of Computer Science and Engineering, Lehigh University 19 Memorial Drive West, Bethlehem, PA 18015, USA Phone: +1-610-758-5941, Fax: +1-610-758-4096 [email protected], [email protected], [email protected], [email protected] Abstract – This paper presents a pioneer work on using heterogeneous collaborative groupware to monitor wireless sensor networks. The prototype implementation illustrates that wireless sensor networks can be integrated into a larger scale, heterogeneous, collaborative groupware to enable complicated and/or geographically unbounded applications that require inputs from sensors, intelligent agents, and human participants.

I. INTRODUCTION Recent developments of low-cost, low-power, multifunctional sensors have been made viable by advances in micro-electro-mechanical-system (MEMS) technology, wireless communications, and digital electronics. Sensors or sensor nodes used in this research, which have sensing, data processing, and communication functionalities, illustrated in Fig. 1, are small in size. A wireless sensor network (WSN) is composed of a large number of sensor nodes that are deployed (sometime densely and randomly) either inside the phenomenon or very close to it [1]. Sensing Unit

Processing Unit

Comm. Unit

Sensor/ADC

Processor/Storage

Transceiver

Power Unit Fig. 1. Essential components of a sensor node.

A. WSN Applications and Requirements Wireless sensor networks can be used in both civilian and military applications, such as smart medical home, inventory management, surveillance, detecting the presence of hazardous material, 4CI system (command, control, communications, computing, and intelligence system), and etc. Monitoring wireless sensor networks in such scenarios using heterogeneous collaborative groupware is desirable. Consider a fire-fighting scenario. A building on fire could either be a “smart” building that has a number of sensors pre-installed and wirelessly connected, such as temperature sensors and air-quality sensors, or an “on-the-fly-smart” one

by having firefighters distributing above-mentioned sensors as they move into the building. It will be helpful for the firefighters in the building to access the real-time data reported by the sensor nodes so that they can plan the rescue routes accordingly. Obviously it is not convenient for a firefighter to carry a laptop into the building as the device to get the sensor data even though other firefighters outside the building can use laptops for information retrieving and processing. However, handheld devices can be good enabling devices that collect real-time data from wireless sensors in the building. Also it is crucial to have the firefighters inside and outside the building to share the information and collaborate on the rescue tasks through discussions and illustrations. Therefore it is desirable to develop collaborative groupware to monitor wireless sensor networks and distribute sensor data to participants of collaborative sessions using heterogeneous devices such as desktops, laptops, and handheld devices. B. Related Work There are a number of groupware systems that enable computer supported cooperative work. Initially most collaborative applications target at working environment and platforms of workstations and desktops. Recently, with the development of the small portable computing devices, e.g., PDAs (Personal Data Assistant), there are increasing needs to run the collaboration applications over heterogeneous platforms and devices [2-5]. Since these computing devices have heterogeneous computing, display, and communication capabilities and some may have limitations of memory and storage resources, both the collaboration data and their presentation may need to be transformed according to specific platforms [5]. However, none of them has included wireless sensor networks in their collaborative framework. There are systems that support sensor data collection and analysis [1][6-8], and thus monitor WSN. However, none of them have integrated sensor data into a heterogeneous collaborative system. To the best of our knowledge, this is the first research that utilizes the heterogeneous collaborative groupware to monitor wireless sensor networks. The goal of this research is to illustrate how wireless sensor networks can be integrated into a larger scale, heterogeneous, collaborative groupware in order to enable complicated and/or

geographically unbounded applications that require inputs from sensors, intelligent agents, and human participants. This paper will be structured as follows. In Section II, we will describe important protocol components that enable the monitoring of wireless sensor networks, which include routing and time synchronization protocols. In Section III, we will illustrate the architecture of the heterogeneous collaborative groupware for the wireless sensor network monitoring in details. Finally Section IV concludes the paper.

procedure, we design a simple zero-overhead resource-aware routing protocol. It has the advantages of flexibility in delay-power tradeoff, affordability in terms of resource consumptions, and reliability in terms of packet lost-free. Preliminary simulation results show that a range of optimal operating points considering delay and power consumption tradeoff can be found with user-customized cost functions.

II. WIRELESS SENSOR NETWORKS

We have designed a robust routing protocol, self-nominating, for wireless sensor networks. In the self-nominating, a time-based and self-maintained mechanism is used to improve the routing robustness under high node-failure ratio working environments. It guarantees one and only one of the most promising next-hop nodes to relay broadcasted data packets. And it is designed based on an idea that each sensor node should decide its own activity in the routing process according to the real-time working status instead of letting the sender of each hop to make the decision based on the most recently exchanged information to achieve resource-aware routing. The protocol has the advantages of flexibility in adopting different routing decision algorithms and robustness under harsh working environments. Preliminary analyses as well as simulation results show that, comparing with existing approaches, the new framework presented in this paper provides better performance under high node-failure ratio conditions.

Fig. 2 shows general deployment architecture of a wireless sensor network. A sensor network is a self-organizing cooperative ad hoc network so that a certain monitoring task assigned and triggered by a manager node involves multiple sensor nodes in the network via routing and each sensor node is capable of sensing phenomena, collecting and processing data, and reporting/routing the data back via a data sink to the manager node through the Internet.

Sensor Field

internetworks

Manager node

Data Sink

Users Sensor

Fig. 2. A general deployment of a sensor network monitoring system.

To monitor a wireless sensor network, there are a number of routing protocols available that can be deployed to fulfill the functionality of distributing tasks from data sinks to sensor nodes and routing sensor data from the sensor nodes back to the data sinks [1]. For simplicity and robustness of the routing, we have developed protocols in this research to distribute the query information from the data sinks to the sensor nodes, namely flossiping [9], and to route monitoring data from the sensor nodes to data sinks, namely self-nomination [10]. Since details of both flossiping and self-nominating can be retrieved from published materials, we will briefly introduce them in this paper. However, for real-time monitoring tasks, time synchronization among wireless sensors is also important and more details will be illustrated here.

B. Self-nomination

C.

Time Synchronization

1.

Problems in existing time-sync approaches

By nature, the hardware clock time ti at sensor node i does not follow the Universal Coordinated Time (UCT) t provided by National Institute of Standards and Technology (NIST) in an exact way as shown in Fig. 3.

A. Flossiping Flossiping is developed as an enhancement to existing flooding and gossiping [11] routing approaches by using a single branch gossiping with low-probability random selective relaying in order to achieve a better overall performance of information dissemination in wireless sensor networks. By letting each sensor node decide its own activity in the routing

Fig. 3. Hardware clock time vs. UCT time.

Eq. (1) shows the linear relationship between them in theory, in which a is the clock skew, t0 is the initial clock offset, and Drift(t) is the variation of clock drift at t based on

environmental conditions. In an ideal case, a equals to 1, t0 and Drift are equal to none. ti(t)=at+t0+Drift(t)

schemes, the D part has been removed by round-trip time and the Drift has been estimated by a formula. However, the P, A, and R parts have not been taken into account.

(1)

There are approaches to make a as accurate as possible, such as using precise clock board or a radio clock receiving time code transmitted from the GPS or radio stations by NIST. However, these approaches are too costly with price ranging from hundred to thousand dollar a piece, and their sizes are not suitable for general sensor nodes. Network Time Protocol is the Internet standard for time synchronization, which synchronizes computer clocks in a hierarchical way by using primary and secondary time servers. Based on multiple data points, clock skew, offset, and drift can be estimated for time synchronization. However, this kind of multi-tier server architecture implementation is too heavy-weight to be supported by sensor nodes.

Fig. 4. Referenced time synchronization.

2. Adjuster based time synchronization Considering the limitations of the previous approach, we have designed a lightweight time synchronization protocol to achieve higher accuracy and less packet exchange for global time synchronization in the wireless sensor networks. We have used a level discovery mechanism to enable the global time synchronization. The level discovery phrase is performed at the initial time when a wireless sensor network is deployed. A sink is assigned a level 0 and broadcasts level discovery packets to its neighbors. The nodes who receive this packet will be assigned a level 1 and broadcasts such packets which contain the value of its level to other nodes. A node may receive several level discovery packets and it only accepts the one with the lowest level as its ancestor and takes that value plus 1 as its own level. In this way, every node in the network will know its own level. A node at an upper level means that it is closer to the sink in terms of number of hops. In our protocol, each node only believes the clocks at its upper level nodes being accurate and always synchronizes with them. Every node in the upper level broadcasts time-stamped synchronization packets at a controllable frequency. When a node at the lower level receives this packet, it will adjust its local clock by referencing to the received and local timestamps. In this way, all the nodes will synchronize with the sink eventually.

In wireless sensor networks, the ad hoc network topology implies referenced synchronization, which is illustrated by Fig. 4 and Eq. (2). The new PADR component include the P part as Processing time, the A part as Access time, the D part as the Delay time, and the R part as Receiving time. The Drift component is the drift of hardware clock at node R during the above four time periods. tr=aRSts+t0+PSASDSRRR+DriftR

(2)

There are existing approaches for time synchronization in wireless sensor networks, such as Post-facto sync [12], RBS [13], Tiny sync and mini-sync [14]. The Post-facto sync and RBS are based on the time synchronization in a neighborhood. In post-facto sync, the drift is assumed to be eliminated by a GPS or NTP clock, and the D part has been assumed to be zero. No consideration about the P, A, and R parts in the synchronization. In RBS, the P and A parts have been eliminated by using a reference packet. D and R are assumed to be zero. Drift has been calculated and handled by the algorithm. However, every node has to exchange packets among its neighborhood and maintain a table about the estimated parameters such as offset and drift accordingly, which affect its energy and memory consumption performance in a negative way. The tiny-sync and mini-sync keep synchronization between any two nodes. In tiny and mini sync

Fig. 5. Adjuster based time-sync mechanism.

Our approach also takes into account of decreasing the effect of PADR on the synchronization accuracy by introducing an adjuster node. Fig. 5 presents a two-level localized view of the time synchronization in the wireless sensor networks. The adjuster node is selected among neighborhood nodes within the same level. The sender is located at the upper level. It broadcasts time sync packets to its neighbors, including the adjuster and the receivers. Once the adjuster gets a time sync packet, it will send a reply packet back to the sender right away. Then the sender will calculate PADR and broadcast the PADR estimation to its neighbors for their local time synchronizations. Analysis and simulation results show that the new time synchronization protocol consumes less packet exchanges and thus battery power. For example, in a 1 sender 20 receiver

two-level synchronization case, the total number of packets used by the new protocol is only 30% of that in the RBS case. The accuracy achieved is about 150 us. III.

HETEROGENEOUS COLLABORATIVE GROUPWARE

A. Architecture We have developed a collaborative system with three kinds of input interface: a human-computer interface for human beings communicating with the groupware system, a sensor-computer interface for sensors exchanging real-time sensing data with the system, and a handheld-system interface for handheld devices serving as clients with limited functionality for data presentation and control. The heterogeneous collaboration is based on HabaneroTM [15] that provides a generic server and a set of APIs for development of collaborative applications. We have enabled the display of the data collected by sensors and the collaboration between multiple users. Also, the data are accessible by handhelds, such as PDAs and other kinds of mobile wireless devices that support JavaTM. The architecture of the monitoring system is depicted as Fig. 6. Two new modules, which are integrated into HabaneroTM ColDrawTest, work together with a servlet and a J2ME

MIDlet called sensorlet running on handhelds. The first module, data collecting module, is able to read data through the serial port on a laptop from a sink, which relays the data from sensor nodes. With this module, data can be collected and displayed for monitoring. The second module, data distributing module, is able to reply the request from the servlet. When user starts the sensorlet from a handheld, HTTP requests are sent to the servlet. The servlet will ask ColDrawTest for data collected by sensor nodes and updates made by other users. Then the data distributing module will reply the requests. The servlet will process the data (usually render the same images as what are displayed on the laptops) and send them back to the handheld. The handheld device is not directly connected into the collaborative system for the sake of both reliability and efficiency. A special client, along with a servlet program, acts as a gateway for the handheld to collaborate with other entities in the system. It provides two-way communication capability through a well-defined protocol between the handheld and the collaborative system. The wireless sensor network includes sensor nodes as sensing sources and data sinks. Sensing data collected by the sink nodes are inputs into a data-collection client, which updates the collaborative information on the collaboration server so that the customized representation of the new sensing data will be shown at all other collaborative clients when next synchronization happens.

Access Point

Temperature sensor

Acceleration sensor

Laptop

Laptop Habanero API

Habanero Server

PDA

Laptop Habanero client

MIDlet

Habanero client

Hananero API

Socket Connection

Power Based Distance sensor

Sink

Card

Habanero client w/ data collecting

servlet

HTTPConnection

Fig. 6. Architecture of the heterogeneous collaborative system for wireless sensor network monitoring.

[6]

B. Functionality We have implemented the following functionality in the heterogeneous collaborative groupware system for wireless sensor network monitoring: − Collecting and representing sensor data in various formats on the handheld devices: curves, bar graphs, and digits. Raw data as well as primitive analysis results can be shown by viewer’s choice. − Sharing collaborative actions among homogeneous clients: collaborative tasks can be synchronized since any interface update at one client will appear at the interfaces of other active clients. − Sharing collaborative actions between heterogeneous clients such as laptop users and handheld device users. − Controlling the activity of the wireless sensor networks from heterogeneous devices.

[7]

[8] [9] [10]

[11] [12]

IV.

CONCLUSIONS

This paper presents a pioneer work on using heterogeneous collaborative groupware to monitor wireless sensor networks. The prototype implementation illustrates that wireless sensor networks can be integrated into a larger scale, heterogeneous, collaborative groupware to enable complicated and/or geographically unbounded applications that require inputs from sensors, intelligent agents, and human participants.

[13]

[14]

[15]

ACKNOWLEDGMENT This research has been partly financed by a grant from the Commonwealth of Pennsylvania, Department of Community and Economic Development, through the Pennsylvania Infrastructure Technology Alliance (PITA). The authors also wish to thank National Science Foundation for the support. REFERENCES [1] [2] [3]

[4] [5]

I. F. Akyildiz, W. Su, Y. Sankarasubramanian, and E. Cayirci, “A survey on sensor networks,” IEEE Communications Magazine, Vol. 40, No. 8, pp. 102-116, August 2002. J. P. Munson and P. Dewan, “Sync: a system for mobile collaborative applications,” IEEE Computer, Vol. 30, Issue 6, pp. 59–66, 1997. R. Litiu and A. Prakash, “Developing adaptive groupware applications using a mobile component framework,” in the Proceedings of the 2000 ACM Conference on Computer Supported Cooperative Work, pp. 107-116, 2000. J. Roth and C. Unger, “Using handheld devices in synchronous collaborative scenarios”, Personal and Ubiquitous Computing, Vol. 5, Issue 4, pp.243-252, 2001. I. Marsic, “An architecture for heterogeneous groupware applications,” in the Proceedings of the 23rd International Conference on Software Engineering, pp. 475-484, 2001.

D. Estrin, J. Heidemann, R. Govindan, and S. Kumar, “Next century challenges: scalable coordination in sensor networks,” in the Proceedings of the Fifth Annual International Conference on Mobile Computing and Networks (MobiCom’99), Seattle, Washington, pp. 263-270, August 1999. W. R. Heinzelman, J. Kulik, and H. Balakrishnan, “Adaptive protocols for information dissemination in wireless sensor networks,” in the Proceedings of the Fifth Annual International Conference on Mobile Computing and Networks (MobiCom’99), Seattle, Washington, pp. 174-185, 1999. C. Intanagonwiwat, R. Govindan, D. Estrin, J. Heidemann, and F. Silva, “Directed diffusion for wireless sensor networking,” IEEE/ACM Transactions on Networking, Vol. 11, Issue 1, 2003. Y. Zhang and L. Cheng, “Flossiping: a new routing protocol for wireless sensor networks,” accepted by 2004 IEEE International Conference on Networking, Sensing and Control (ICNSC’2004), March 21-24, 2004. Y. Zhang and L. Cheng, “Self-nominating: a robust affordable routing in wireless sensor networks,” in the Proceedings of VTC 2003 - Wireless Ad hoc, Sensor, and Wearable Networks, Orlando, Florida, USA, October 6-9, 2003. S.M. Hedetniemi, S.T. Hedetniemi, and A. Liestman, “A survey of gossiping and broadcasting in communication networks,” Networks, Vol. 18, 1988. J. Elson and D. Estrin, “Time synchronization for wireless sensor networks,” in the Proceedings of the 2001 International Parallel and Distributed Processing Symposium (IPDPS’01), Workshop on Parallel and Distributed Computing Issues in Wireless Networks and Mobile Computing, San Francisco, CA, USA, pp. 1965-1970, April 2001. J. Elson, L. Girod, and D. Estrin, “Fine-grained network time synchronization using reference broadcasts,” in the Proceedings of the Fifth Symposium on Operating Systems Design and Implementation (OSDI’2002), Boston, MA, December 2002. M. L. Sichitiu and C. Veerarittiphan, “Simple accurate time synchronization for wireless sensor networks,” in the Proceedings of the IEEE Wireless Communications and Networking Conference (WCNC’2003), New Orleans, LA, March 2003. A. Chabert, E. Grossman, L. S. Jackson, S. R. Pietrowicz, and C. Seguin, “Java object-sharing in Habanero,” Communications of the ACM, Vol. 41, Issue 6, pp.69-76, 1998.