INTRODUCTION TO WIRELESS SENSOR NETWORKS

Slides:



Advertisements
Similar presentations
How to use TinyOS Jason Hill Rob Szewczyk Alec Woo David Culler An event based execution environment for Networked Sensors.
Advertisements

Decentralized Reactive Clustering in Sensor Networks Yingyue Xu April 26, 2015.
Sensor Network Platforms and Tools
TOSSIM A simulator for TinyOS Presented at SenSys 2003 Presented by : Bhavana Presented by : Bhavana 16 th March, 2005.
Prepared By: Kopila Sharma  Enables communication between two or more system.  Uses standard network protocols for communication.  Do.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Wireless Sensor Networks 2nd Lecture Christian Schindelhauer.
Jason Hill, Robert Szewczyk, Alec Woo Spring 2000 TinyOS Operating System for Networked Sensors Networked SensorsSystem Structure Composing Components.
1 Concurrent and Distributed Systems Introduction 8 lectures on concurrency control in centralised systems - interaction of components in main memory -
Chapter 13 Embedded Systems
Supervisor: Mr. Hai Vortman. The ultimate goal Creating a wireless sensor network using Bluetooth technology.
On the Energy Efficient Design of Wireless Sensor Networks Tariq M. Jadoon, PhD Department of Computer Science Lahore University of Management Sciences.
Wireless Video Sensor Networks Vijaya S Malla Harish Reddy Kottam Kirankumar Srilanka.
Introduction. Why Study OS? Understand model of operation –Easier to see how to use the system –Enables you to write efficient code Learn to design an.
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
Sensor Network Simulation Simulators and Testbeds Jaehoon Kim Jeeyoung Kim Sungwook Moon.
Chapter 4 Processor Management
Low-Power Wireless Sensor Networks
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
Chapter 101 Multiprocessor and Real- Time Scheduling Chapter 10.
System Architecture of Sensor Network Processors Alan Pilecki.
Operating Systems David Goldschmidt, Ph.D. Computer Science The College of Saint Rose CIS 432.
AD-HOC NETWORK SUBMITTED BY:- MIHIR GARG A B.TECH(E&T)/SEC-A.
INFORMATION SYSTEM-SOFTWARE Topic: OPERATING SYSTEM CONCEPTS.
Chapter 2 Processes and Threads Introduction 2.2 Processes A Process is the execution of a Program More specifically… – A process is a program.
Xiong Junjie Node-level debugging based on finite state machine in wireless sensor networks.
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
Adaptive Sleep Scheduling for Energy-efficient Movement-predicted Wireless Communication David K. Y. Yau Purdue University Department of Computer Science.
Computer Simulation of Networks ECE/CSC 777: Telecommunications Network Design Fall, 2013, Rudra Dutta.
Operating Systems: Summary INF1060: Introduction to Operating Systems and Data Communication.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
Software Architecture of Sensors. Hardware - Sensor Nodes Sensing: sensor --a transducer that converts a physical, chemical, or biological parameter into.
Introduction to Mobile-Cloud Computing. What is Mobile Cloud Computing? an infrastructure where both the data storage and processing happen outside of.
CMPS Operating Systems Prof. Scott Brandt Computer Science Department University of California, Santa Cruz.
Case Study #1 Microcontroller System. What is a microcontroller? A microcontroller can be considered a self-contained system with a processor, memory.
Introduction to Operating Systems Concepts
CLOUD ARCHITECTURE Many organizations and researchers have defined the architecture for cloud computing. Basically the whole system can be divided into.
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
COMPSCI 110 Operating Systems
OPERATING SYSTEMS CS 3502 Fall 2017
Resource Management IB Computer Science.
Processes and threads.
TrueTime.
Threads vs. Events SEDA – An Event Model 5204 – Operating Systems.
OPERATING SYSTEMS CS3502 Fall 2017
How SCADA Systems Work?.
Wireless Sensor Network Architectures
Grid Computing.
Part 3 Design What does design mean in different fields?
Energy-Efficient Communication Protocol for Wireless Microsensor Networks by Wendi Rabiner Heinzelman, Anantha Chandrakasan, and Hari Balakrishnan Presented.
Understanding the OSI Reference Model
Introduction to Wireless Sensor Networks
University of Technology
Capriccio – A Thread Model
Computer Simulation of Networks
GEOMATIKA UNIVERSITY COLLEGE CHAPTER 2 OPERATING SYSTEM PRINCIPLES
Threads and Data Sharing
Processor Fundamentals
Software models - Software Architecture Design Patterns
What is Concurrent Programming?
Lecture Topics: 11/1 General Operating System Concepts Processes
Subject Name: Operating System Concepts Subject Number:
Ainsley Smith Tel: Ex
Operating System Introduction.
Introduction and Overview
The Main Features of Operating Systems
Foundations and Definitions
CSE 153 Design of Operating Systems Winter 2019
COMP3221: Microprocessors and Embedded Systems
COMP755 Advanced Operating Systems
Chapter 13: I/O Systems “The two main jobs of a computer are I/O and [CPU] processing. In many cases, the main job is I/O, and the [CPU] processing is.
Presentation transcript:

INTRODUCTION TO WIRELESS SENSOR NETWORKS CHAPTER 2: ANATOMY OF A SENSOR NODE Anna Förster

OVERVIEW Hardware components Power Consumption Operating Systems and Concepts Memory Management Interrupts Tasks, Threads and Events Simulators Communication Stack

HARDWARE COMPONENTS Microcontroller Radio transceiver Sensor External memory Battery Serial adapter Embedded antenna Oscillator Use the test of the section to explain what is what and what the individual components do. Z1 sensor node.

POWER CONSUMPTION Sensor nodes operate on batteries Each component on the sensor node consumes power Measured in Ampere (A, current) or milli Ampere (mA). Power consumption of Z1 sensor nodes

EXERCISE: BATTERIES Explore the batteries in front of you. What is their nominal capacity? Consider a scenario, where the sensor node is working in cycles. Every cycle, the components are working with the following time percentages: Radio: 10% send, 10% receive, 80% sleep Microcontroller: 10% active, 90% sleep Temperature sensor: 5% sense, 95% sleep The other components are always sleeping /inactive. Compute the energy consumption of one cycle with length 1 second. Now assume the active time of all components is halved. What is now the energy consumption of 1 cycle of length 1 second? For both scenarios above, compute the theoretical lifetime of the sensor nodes, considering the battery capacity in front of you. Discuss your results. Let the students first read the explanation of the nominal capacity of batteries on page 13. Prepare beforehand AA batteries of different types and distribute in the class (groups of 2 students are better for cooperation). The parameters above can be easily changed. It is also a good idea to let different groups compute different scenarios and then let them present their results to the other students and discuss.

CONCEPTS OF OPERATING SYSTEMS The tasks of the operating system: Manage software and hardware Allow the user to access easily the hardware Allow several programs to run simultaneously Manage the memory of the system Manage shared resources (memory, CPU, external devices)

Memory Management Static memory management: Reserve all memory at compilation time. Simple, does not need have any overhead for management Inflexible, cannot extend on demand Dynamic memory management: A special memory management software reserves memory on demand. Flexible, uses only memory which is really needed Complex to maintain, can easily overflow on memory-restricted devices (like sensor nodes)

EXERCISE: MANAGE MEMORY Read Section “Memory Management Example” on page 19. Discuss the usage of the Big-O Notation. Explain the different implementations and compare against each other. Do you have other ideas of how to implement the same functionality?

INTERRUPTS Goal: react as fast as possible to an external signal (sensor, user, etc.) Example: ask sensor for data. Problem: sensor does not answer immediately.

TASKS Interrupts are used to control the flow of programs How to enable several programs to run simultaneously? Task: an independent process in the system with its own resources and memory, which works independently from all other processes Memory management unit: makes sure memory is allocated to each process and that processes cannot access/corrupt memory of other processes. Multitasking: the scheduler decides which task is allowed to proceed and which is interrupted. Shared resources: the process needs access to some shared resource/device, e.g. printer or network interface. This access should not be interrupted. Atomic operations: runs until completion and nobody can interrupt it. DISADVANTAGE: tasks are resource-intensive

EVENT BASED PROGRAMMING An alternative to multi-tasking Based on events as opposed to interrupts: events are not necessarily handled immediately (like interrupts) and can be generated also by software components. For example, a lengthy processing job can create intermediate results and signal those by creating events. Each event correspond to one or more event handlers, which process the event. Event-based programming is based on finite state machines. QUESTION: what is a finite state machine? DISADVANTGE: Finite state machines are not trivial to implement and do not scale well.

EXERCISE: PROTOTHREADS Inform yourself on the Contiki website about protothreads. Implement a small application, which uses protothreads Discuss the usage of protothreads in terms of technical efficiency and ease of implementation

SIMULATORS A software system, running on a normal computer, which mimics the behavior of some other system and its interactions Various tools exist: Cooja for the Contiki operating system OMNeT++ for more sophisticated and general-purpose network simulators Many others

SIMULATION MODELS Simulation relies on simulation models, which mimic the behavior of individual real components and properties Wireless propagation models: how does the wireless signal propagates through different environments? Mobility models: how do the mobile nodes move around? Energy expenditure models: how much energy is needed for individual components and/or tasks? Traffic model: how much data is sent and when?

COMMUNICATION STACK Reduced sensor network communication stack (as opposed to OSI)

PROTOCOLS VS. ALGORITHMS Algorithm: a general-purpose, parameter-based computation flow. Protocol: exact implementation of one or more stack layers, parameters are often fixed or a very limited number of options is provided

SUMMARY Sensor node consists of microcontroller, radio transceiver, sensors, serial connection, LEDs, flash memory. Each component needs energy, with radio and flash being the most “hungry” ones. Putting individual components to sleep saves energy. Towards the end of battery lifetime, performance of individual components degrades and might deliver false results. WSN operating systems are simple and usually have only limited dynamic memory and multi-tasking functionalities.