Wireless sensor network: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Line 162: Line 162:
! colspan="3" style="background:#ffdead;" | Topics in Wireless Sensor Networks
! colspan="3" style="background:#ffdead;" | Topics in Wireless Sensor Networks
|-
|-
! colspan="3" Software
! colspan="3" | Software
! Hardware
! Hardware
! Conferences
! Conferences

Revision as of 14:57, 7 June 2007

A wireless sensor network (WSN) is a wireless network consisting of spatially distributed autonomous devices using sensors to cooperatively monitor physical or environmental conditions, such as temperature, sound, vibration, pressure, motion or pollutants, at different locations.[1][2] The development of wireless sensor networks was originally motivated by military applications such as battlefield surveillance. However, wireless sensor networks are now used in many civilian application areas, including environment and habitat monitoring, healthcare applications, home automation, and traffic control.[1][3]

In addition to one or more sensors, each node in a sensor network is typically equipped with a radio transceiver or other wireless communications device, a small microcontroller, and an energy source, usually a battery. The size of a single sensor node can vary from shoebox-sized nodes down to devices the size of grain of dust.[1] The cost of sensor nodes is similarly variable, ranging from hundreds of dollars to a few cents, depending on the size of the sensor network and the complexity required of individual sensor nodes.[1] Size and cost constraints on sensor nodes result in corresponding constraints on resources such as energy, memory, computational speed and bandwidth.[1]

In computer science, wireless sensor networks are an active research area with numerous workshops and conferences arranged each year.

Applications

The applications for WSNs are many and varied. They are used in commercial and industrial applications to monitor data that would be difficult or expensive to monitor using wired sensors. They could be deployed in wilderness areas, where they would remain for many years (monitoring some environmental variables) without the need to recharge/replace their power supplies. They could form a perimeter about a property and monitor the progression of intruders (passing information from one node to the next). There are many uses for WSNs.

Typical applications of WSNs include monitoring, tracking, and controlling. Some of the specific applications are habitat monitoring, object tracking, nuclear reactor controlling, fire detection, traffic monitoring, etc. In a typical application, a WSN is scattered in a region where it is meant to collect data through its sensor nodes.

  • Environmental monitoring
  • Habitat monitoring
  • Acoustic detection
  • Seismic Detection
  • Military surveillance
  • Inventory tracking
  • Medical monitoring
  • Smart spaces
  • Process Monitoring
  • Structural health monitoring

Area monitoring

Area monitoring is a typical application of WSNs. In area monitoring, the WSN is deployed over a region where some phenomenon is to be monitored. As an example, a large quantity of sensor nodes could be deployed over a battlefield to detect enemy intrusion instead of using landmines. When the sensors detect the event being monitored (heat, pressure, sound, light, electro-magnetic field, vibration, etc), the event needs to be reported to one of the base stations, which can take appropriate action (e.g., send a message on the internet or to a satellite). Depending on the exact application, different objective functions will require different data-propagation strategies, depending on things such as need for real-time response, redundancy of the data (which can be tackled via data aggregation techniques), need for security, etc.

Characteristics

Unique characteristics of a WSN are:

  • Small-scale sensor nodes
  • Limited power they can harvest or store
  • Harsh environmental conditions
  • Node failures
  • Mobility of nodes
  • Dynamic network topology
  • Communication failures
  • Heterogeneity of nodes
  • Large scale of deployment
  • Unattended operation

Sensor nodes can be imagined as small computers, extremely basic in terms of their interfaces and their components. They usually consist of a processing unit with limited computational power and limited memory, sensors (including specific conditioning circuitry), a communication device (usually radio transceivers or alternatively optical), and a power source usually in the form of a battery. Other possible inclusions are energy harvesting modules, secondary ASICs, and possibly secondary communication devices (e.g. RS232 or USB).

The base stations are one or more distinguished components of the WSN with much more computational, energy and communication resources. They act as a gateway between sensor nodes and the end user.

Platforms

Hardware

The main challenge is to produce low cost and tiny sensor nodes. With respect to these objectives, current sensor nodes are mainly prototypes. Miniaturization and low cost are understood to follow from recent and future progress in the fields of MEMS and NEMS. Some of the existing sensor nodes are given below. Some of the nodes are still in research stage.

An overview of commonly used sensor network platforms, components, technology and related topics is available in the SNM - Sensor Network Museumtm.

Standards

Software

Energy is the scarcest resource of WSN nodes, and it determines the lifetime of WSNs. WSNs are meant to be deployed in large numbers in various environments, including remote and hostile regions, with ad-hoc communications as key. For this reason, algorithms and protocols need to address the following issues:

  • Lifetime maximization
  • Robustness and fault tolerance
  • Self-configuration

Amongst the hot topics in WSN software, the following can also be pointed out:

  • Security
  • Mobility (when sensor nodes or base stations are moving)
  • Middleware: the design of middle-level primitives between the software and the hardware

Operating systems

Operating systems for wireless sensor network nodes typically are less complex than general-purpose operating systems both because of the special requirements of sensor network applications and because of the resource constraints in sensor network hardware platforms. For example, sensor network applications are usually not interactive in the same way as applications for PCs. Because of this, the operating system does not need to include support for user interfaces. Furthermore, the resource constraints in terms of memory and memory mapping hardware support make mechanisms such as virtual memory either unneeded or impossible to implement.

Wireless sensor network hardware is not different from traditional embedded systems and it is therefore possible to use embedded operating systems such as eCos or uC/OS for sensor networks. However, such operating systems are often designed with real-time properties. Unlike traditional embedded operating systems, however, operating systems specifically targeting sensor networks often do not have real-time support.

TinyOS[4] is perhaps the first[citation needed] operating system specifically designed for wireless sensor networks. Unlike most other operating systems, TinyOS is based on an event-driven programming model instead of multithreading. TinyOS programs are composed into event handlers and tasks with run to completion-semantics. When an external event occurs, such as an incoming data packet or a sensor reading, TinyOS calls the appropriate event handler to handle the event. Event handlers can post tasks that are scheduled by the TinyOS kernel some time later. Both the TinyOS system and programs written for TinyOS are written in a special programming language called nesC which is an extension to the C programming language. NesC is designed to detect race conditions between tasks and event handlers.

There are also operating systems that allow programming in C. Examples of such operating systems include Contiki,[5] MANTIS,[6] BTnut,[7] SOS[8] and Nano-RK.[9] Contiki is designed to support loading modules over the network and supports run-time loading of standard ELF files[10]. The Contiki kernel is event-driven, like TinyOS, but the system supports multithreading on a per-application basis[11]. Furthermore, Contiki includes protothreads that provide a thread-like programming abstraction but with a very small memory overhead[12]. Unlike the event-driven Contiki kernel, the MANTIS and Nano-RK kernels are based on preemptive multithreading[13][14]. With preemptive multithreading, applications do not need to explicitly yield the microprocessor to other processes. Instead, the kernel divides the time between the active processes and decides which process that currently can be run which makes application programming easier. Nano-RK is a real-time resource kernel that allows fine grained control of the way tasks get access to CPU time, networking and sensors. Like TinyOS and Contiki, SOS is an event-driven operating system[15]. The prime feature of SOS is its support for loadable modules. A complete system is built from smaller modules, possibly at run-time. To support the inherent dynamism in its module interface, SOS also focuses on support for dynamic memory management[16]. BTnut[17] is based on cooperative multi-threading and plain C code, and is packaged with a developer kit and tutorial[18]

Middleware

There is a need and considerable research efforts currently invested in the design of middleware for WSN's. There are various research efforts in developing middleware for wireless sensor networks.[3] In general approaches can be classified into distributed database, mobile agents, and event-based.[19]

Programming languages

Programming the sensor nodes is difficult when compared to the normal computer systems. The resource constrained nature of these nodes gives rise to new programming models.

  • c@t (Computation at a point in space (@) Time )
  • DCL (Distributed Compositional Language)
  • galsC
  • nesC
  • Protothreads
  • SNACK
  • SQTL

Algorithms

WSNs are composed of a large number of sensor nodes, therefore, an algorithm for a WSN is implicitly a distributed algorithm. In WSNs the scarcest resource is energy, and one of the most energy-expensive operations is data transmission. For this reason, algorithmic research in WSN mostly focuses on the study and design of energy aware algorithms for data transmission from the sensor nodes to the bases stations. Data transmission is usually multi-hop (from node to node, towards the base stations), due to the polynomial growth in the energy-cost of radio transmission with respect to the transmission distance.

The algorithmic approach to WSN differentiates itself from the protocol approach by the fact that the mathematical models used are more abstract, more general, but sometimes less realistic than the models used for protocol design.

Simulators

There are platforms specifically designed to simulate Wireless Sensor Networks, like TOSSIM, which is a part of TinyOS. Traditional network simulators like ns-2 have also been used. An extensive list of simulation tools for Wireless Sensor Networks can be found at the CRUISE WSN Simulation Tool Knowledgebase

Data visualization

The data gathered from wireless sensor networks is usually saved in the form of numerical data in a central base station. There are many programs, like TosGUI and MonSense,GSN that facilitate the viewing of these large amounts of data. Additionally, the Open Geospatial Consortium (OGC) is specifying standards for interoperability interfaces and metadata encodings that enable real time integration of heterogeneous sensor webs into the Internet, allowing any individual to monitor or control Wireless Sensor Networks through a Web Browser.

Conferences

See also

References

  1. ^ a b c d e Römer, Kay (2004). "The Design Space of Wireless Sensor Networks" (PDF). IEEE Wireless Communications. 11 (6): 54–61. {{cite journal}}: Unknown parameter |coauthors= ignored (|author= suggested) (help); Unknown parameter |month= ignored (help)
  2. ^ Thomas Haenselmann (2006-04-05). "Sensornetworks". GFDL Wireless Sensor Network textbook. Retrieved 2006-08-29. {{cite journal}}: Cite journal requires |journal= (help)
  3. ^ a b Hadim, Salem (2006). "Middleware Challenges and Approaches for Wireless Sensor Networks". IEEE Distributed Systems Online. 7 (3). {{cite journal}}: Unknown parameter |coauthors= ignored (|author= suggested) (help) art. no. 0603-o3001.
  4. ^ http://www.tinyos.net/
  5. ^ http://www.sics.se/contiki/
  6. ^ http://mantis.cs.colorado.edu/tikiwiki/tiki-index.php
  7. ^ http://www.btnode.ethz.ch
  8. ^ http://nesl.ee.ucla.edu/projects/sos-1.x/
  9. ^ http://www.nano-rk.org
  10. ^ Adam Dunkels, Niclas Finne, Joakim Eriksson, and Thiemo Voigt. Run-Time Dynamic Linking for Reprogramming Wireless Sensor Networks. In Proceedings of the Fourth ACM Conference on Embedded Networked Sensor Systems (SenSys 2006), Boulder, Colorado, USA, November 2006.
  11. ^ Adam Dunkels, Björn Grönvall, and Thiemo Voigt. Contiki - a Lightweight and Flexible Operating System for Tiny Networked Sensors. In Proceedings of the First IEEE Workshop on Embedded Networked Sensors 2004 (IEEE EmNetS-I), Tampa, Florida, USA, November 2004.
  12. ^ Adam Dunkels, Oliver Schmidt, Thiemo Voigt, and Muneeb Ali. Protothreads: Simplifying Event-Driven Programming of Memory-Constrained Embedded Systems. In Proceedings of the Fourth ACM Conference on Embedded Networked Sensor Systems (SenSys 2006), Boulder, Colorado, USA, November 2006.
  13. ^ S. Bhatti, J. Carlson, H. Dai, J. Deng, J. Rose, A. Sheth, B. Shucker, C. Gruenwald, A. Torgerson, R. Han, MANTIS OS: An Embedded Multithreaded Operating System for Wireless Micro Sensor Platforms, ACM/Kluwer Mobile Networks & Applications (MONET), Special Issue on Wireless Sensor Networks, vol. 10, no. 4, August 2005.
  14. ^ A. Eswaran, A. Rowe and R. Rajkumar, Nano-RK: An Energy-Aware Resource-Centric Operating System for Sensor Networks, IEEE Real-Time Systems Symposium, December 2005.
  15. ^ Chih-Chieh Han, Ram Kumar Rengaswamy, Roy Shea, Eddie Kohler and Mani Srivastava. SOS: A dynamic operating system for sensor networks, Proceedings of the Third International Conference on Mobile Systems, Applications, And Services (Mobisys), 2005.
  16. ^ [Han, C., Kumar, R., Shea, R., Kohler, E., and Srivastava, M. 2005. A dynamic operating system for sensor nodes. In Proceedings of the 3rd international Conference on Mobile Systems, Applications, and Services (Seattle, Washington, June 06 - 08, 2005). MobiSys '05. ACM Press, New York, NY, 163-176.]
  17. ^ http://www.btnode.ethz.ch
  18. ^ BTnode Programming - An Introduction to BTnut Applications
  19. ^ Römer, Kay (2004). "Programming Paradigms and Middleware for Sensor Networks" (PDF). GI/ITG Fachgespräch Sensornetze, Karlsruhe. {{cite journal}}: Unknown parameter |month= ignored (help)

Further reading

  • Wireless Sensor Networks, Cauligi S. Raghavendra (Editor), Krishna M. Sivalingam (Editor), Taieb Znati
  • Wireless Sensor Networks: Architectures and Protocols, Edgar H. Callaway, Jr., CRC Press, August 2003, 352 pages, ISBN 0-8493-1823-8.
  • Wireless Sensor Networks: An Information Processing Approach, Feng Zhao and Leonidas Guibas, Morgan Kaufmann, 2004. ISBN 1-55860-914-8.
  • Handbook of sensor networks; algorithms and architectures, Edited by Ivan Stojmenovic, Wiley-Interscience, 2005, 531 pages.
  • Wireless Sensor Network A Systems Perspective, Nirupama Bulusu, Sanjay Jha, Artech House, Published July 2005, ISBN 1-58053-867-3
  • Protocols and Architectures for Wireless Sensor Networks, Holger Karl, Andreas Willig, ISBN 0-470-09511-3, 526 pages, January 2006
  • Adhoc and Sensor Networks Theory and Applications, Carlos de Morais Cordeiro (Philips Research North America, USA) & Dharma Prakash Agrawal (University of Cincinnati, USA), March 2006.
  • Networking Wireless Sensors, Bhaskar Krishnamachari (University of Southern California), (ISBN-13: 9780521838474 | ISBN-10: 0521838479)
  • Energy Scavenging for Wireless Sensor Networks: With Special Focus on Vibrations, Shad Roundy, Paul Kenneth Wright, Jan M. Rabaey, 232 pages, Kluwer Academic Publishers; (January 1, 2004), ISBN 1-4020-7663-0.
  • Distributed Sensor Networks", S. S. Iyengar, R. R. Brooks, Chapman & Hall/CRC; (October 22, 2004), ISBN 1-58488-383-9 .
  • Handbook of Sensor Networks: Compact Wireless and Wired Sensing Systems, Mohammad Ilyas, Imad Mahgoub, 672 pages CRC Press; (July 16, 2004), ISBN 0-8493-1968-4 .
  • Algorithmic Aspects Of Wireless Sensor Networks (Lecture Notes in Computer Science)", Sotiris Nikoletseas, Jose Rolim, Springer-Verlag; (September 30, 2004), ISBN 3-540-22476-9 .
  • Mobile, Wireless, and Sensor Networks : Technology, Applications, and Future Directions Rajeev Shorey, A. Ananda, Mun Choon Chan, Wei Tsang Ooi, ISBN 0-471-75558-3, 422 pages, March 2006 .
  • Sensornetworks, Thomas Haenselmann, GFDL Wireless Sensor Network textbook
  • Overview of wireless sensor networks David Culler, Deborah Estrin, Mani Srivastava, IEEE Computer, Special Issue in Sensor Networks, Aug 2004

Journals

  • ACM Transactions on Sensor Networks [1]
  • International Journal of Distributed Sensor Networks [2]

External links

  • A WSN wiki Contains some of the material which has been removed from this page for being not enough "general audience" oriented.
  • Industrial Equipment Noise Overview of wireless sensor networks.
Topics in Wireless Sensor Networks
Software Hardware Conferences
Operating Systems Programming Languages Middleware