Title: EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems
1EENG 460a / CPSC 436 / ENAS 960Networked
Embedded Systems Sensor Networks
- Andreas Savvides
- andreas.savvides_at_yale.edu
- Office AKW 212
- Tel 432-1275
- Course Website
- http//www.eng.yale.edu/enalab/courses/eeng460a
2Welcome to EENG 460a!
- Course Overview
- Embedded Systems
- Sensor Networks Applications
- Course details
- Requirements Grading
- Logistics
- Lecture format
- Topics covered
3Why take this course?
- Learn the basics of embedded systems design
- Learn about sensor networks and emerging
technologies - Undergraduates
- Good opportunity to exercise many of the things
you learned in your previous classes - Learn things that will help you with your senior
design projects - Get ready for graduate school or industry
- Graduate students
- Good breadth topic, good chance to jump-start
your research project - Get some hands-on experience on tools and
platforms to support your research
4Why networked embedded systems?
- Technology is reaching a point where it can
significantly impact our everyday lives - Low power processors and radios, MEMs and other
sensors - Enable orthogonal spikes of progress in many
other fields - Medical applications, understanding nature more
- Intelligent environments, smart offices,
optimized assembly lines etc - Many opportunities with existing technologies,
many things up to your imagination - An interface to other disciplines
5Applications in All Aspects of Life
Slide from Intel Presentation
6What are Embedded Systems?
7More Examples...
- Signal processing systems
- radar, sonar, real-time video, set-top boxes, DVD
players, medical equipment, residential gateways - Mission critical systems
- avionics, space-craft control, nuclear plant
control - Distributed control
- network routers switches, mass transit systems,
elevators in large buildings - Small systems
- cellular phones, pagers, home appliances, toys,
smart cards, MP3 players, PDAs, digital cameras
and camcorders, sensors, smart badges
8Why do we care?Some Market Tidbits...
- Specialized devices and information appliances
are replacing the generalist PC - variety of forms set-top boxes, fixed-screen
phones, smart mobile phones, PDAs, NCs, etc. - IDC predicts that by 2002 gt 50 of inter access
devices will be such into appliances and not PCs - In 1997, 96 of internet access devices sold in
the US were PCs - By 2004, unit shipments will exceed those of PCs
- Traditional systems becoming dependent on
computation systems - Modern cars up to 100 processors running
complex software - engine emissions control, stability traction
control, diagnostics, gearless automatic
transmission - http//www.howstuffworks.com/car-computer.htm
- An indicator where are the CPUs being used?
9Where are the CPUs?
- Estimated 98 of 8 Billion CPUs produced in 2000
used for embedded apps
10Typical Characteristics of Embedded Systems
- Part of a larger system
- not a computer with keyboard, display, etc.
- HW SW do application-specific function not
G.P. - application is known a priori
- but definition and development concurrent
- Some degree of re-programmability is essential
- flexibility in upgrading, bug fixing, product
differentiation, product customization - Interact (sense, manipulate, communicate) with
the external world - Never terminate (ideally)
- Operation is time constrained latency,
throughput - Other constraints power, size, weight, heat,
reliability etc. - Increasingly high-performance (DSP) networked
11Key Recent Trends
- Increasing computation demands
- e.g. multimedia processing in set-top boxes, HDTV
- Increasingly networked
- to eliminate host, and remotely monitor/debug
- embedded Web servers
- e.g. Mercedes car with web server
- e.g web servers on wireless cameras
- embedded Java virtual machines
- e.g. Java ring, smart cards, printers
- cameras, disks etc. that sit directly on networks
- Increasing need for flexibility
- time-to-market under ever changing standards!
- Need careful co-design of h/w s/w!
12Traditional Software Embedded Systems CPU
RTOS
13Traditional Hardware Embedded Systems ASIC
- ASIC Features
- Area 4.6 mm x 5.1 mm
- Speed 20 MHz _at_ 10 Mcps
- Technology HP 0.5 mm
- Power 16 mW - 120 mW (mode dependent) _at_ 20 MHz,
3.3 V - Avg. Acquisition Time 10 ms to 300 ms
- A direct sequence spread spectrum (DSSS) receiver
ASIC (UCLA)
14Modern Embedded Systems?
- Embedded systems employ a combination of
- application-specific h/w (boards, ASICs, FPGAs
etc.) - performance, low power
- s/w on prog. processors DSPs, ?controllers etc.
- flexibility, complexity
- mechanical transducers and actuators
15Course Goals
- Learn the basics of embedded systems
- Learn how to program an embedded processor
- Learn the basics of embedded OS
- Find out about new technologies that are out
there - Apply this knowledge in the context of sensor
networks - This knowledge allow you
- Complete projects from beginning to end in
shorter time - Design and implement complex systems to support
your research or industry career - An opportunity to utilize the knowledge you
acquired from previous engineering courses
16What about Sensor Networks?
- Networks of small devices equipped with sensors
- Embedded systems become more powerful when they
are networked! - From a networking and computing perspective
- Device-to-device communication instead of
person-to-device - Want to have massive distributed systems of
low-cost collaborative devices to achieve large
tasks - Such as?
17Large Diversity in Platforms
18Design Lineage of Motes
- COTS dust prototypes (Kris Pister et al.)
- weC Mote (30 produced)
- Rene Mote (850 produced)
- Dot (1000 produced)
- Mica node ( 5000 produced)
- Mica2 (Current)
- Spec (Prototype)
Ack Jason Hill, UC Berkeley
19Sensor Node Energy Roadmap
10,000 1,000 100 10 1 .1
Rehosting to Low Power COTS (10x)
Average Power (mW)
-System-On-Chip -Adv Power Management Algorithms
(50x)
2000 2002 2004
Source ISI DARPA PAC/C Program
20Comparison of Energy Sources
With aggressive energy management, ENS might live
off the environment.
Source UC Berkeley
21Traffic/Load/Event Models Dimensions
- Frequency (spatial, temporal)
- Commonality of events in time and space
- Locality (spatial, temporal)
- Dispersed vs. clustered/patterned
- Mobility
- Rate and pattern
- Diversity
22Example early adopter applications CENS Systems
under design/construction
- Biology/Ecosystems
- Microclimate monitoring
- Triggered image capture
- Canopy-net (Wind River Canopy Crane Site)
- Contaminant Transport
- County of Los Angeles Sanitation Districts
(CLASD) wastewater recycling project, Palmdale,
CA - Seismic monitoring
- 50 node ad hoc, wireless, multi-hop seismic
network - Structure response in USGS-instrumented Factor
Building w/ augmented wireless sensors
23Systems Challenges and Services
- Resource constrained nodes (energy, comm,
storage, cpu) - Irregular deployment and environment
- Dynamic network topology
- Hand configuration will fail
- Scale, variability, maintenance
Localization Time Synchronization
Calibration
- Routing and transport in a Tiered architecture
- Channel/connectivity characterization
- Time synchronization and Localization services
- In Network Processing
- Programming model
In Network Processing
Programming Model
Event Detection
24Tiered Architecture for scalability, longevity
- One size does not fit all.Combine heterogeneous
devices as in memory hierarchies - Small battery powered Motes (Mica2 8 bit
microcontrollers, TOS, 10s of Kbps, 600kbytes
storage) hosting in situ sensors - Larger solar powered Microservers (32-bit
processors, linux OS, 10s of Mbps, 100 Mbytes
storage) - Data centric routing/transport at both levels
- Pub/sub bus over 802.11 to Databases,
visualization, analysis - Tinydiffusion multihop transport, tasking over
duty-cycling MAC
25 Network Architecture Can we adapt Internet
protocols and end to end architecture?
- Internet routes data using IP Addresses in
Packets and Lookup tables in routers - Humans get data by naming data to a search
engine - Many levels of indirection between name and IP
address - Works well for the Internet, and for support of
Person-to-Person communication - Embedded, energy-constrained (un-tethered,
small-form-factor), unattended systems cant
tolerate communication overhead of indirection
26Sensors
- Passive elements seismic, acoustic, infrared,
strain, salinity, humidity, temperature, etc. - Passive Arrays imagers (visible, IR),
biochemical - Active sensors radar, sonar
- High energy, in contrast to passive elements
- Technology trend use of IC technology for
increased robustness, lower cost, smaller size - COTS adequate in many of these domains work
remains to be done in biochemical
27What are the challenges?
- Sensors are not perfect
- Sensor measurements are affected by changes in
surrounding conditions and obstacles affect
propagation characteristics - Need to understand and combine multipoint
measurements - Power consumption always an issue
- Numerous issues associated with the
programmability and management of sensor devices
28Two Main Components
Understanding sensor measurements and emerging
behaviors
Architectural optimizations, Small form factors,
low power
Tiered/Heterogenous/Integrated Sensor
Networks Dependencies on both new algorithms and
technological components
29How can networked embedded systems scale?
- Make them self-configuring
- Position and time
- Calibrate sensors to a common base
- New ways of addressing and administering
- Not interested in the temperature reading of
sensor X, we are interested in the temperature of
a specific place or room - Nodes should autonomously organize themselves
into groups, understand their environments and
respond to changes in the environment - Programmability requirements change
30In Network ProcessingDistributed
Representation, Storage, Processing
- In network interpretation of spatially
distributed data - Statistical or model based filtering
- In network event detection and reporting
- Direct queries towards nodes with relevant data
- Trigger autonomous behavior based on events
- Expensive operations high end sensors or
sampling - Robotic sensing, sampling
- Support for Pattern-Triggered Data Collection
- Multi-resolution data storage and retrieval
- Index data for easy temporal and spatial
searching - Spatial and temporal pattern matching
- Trigger in terms of global statistics (e.g.,
distribution) - Exploit tiered architectures
31Multidisciplinary Nature
- Networked embedded systems create opportunities
to utilize, blend and create knowledge from other
disciplines - Statistical Signal Processing
- Information Theory
- Communication Theory
- Operating Systems and Languages
- Databases
- VLSI systems and MEMS
- Many more
32Sample Layered Architecture
User Queries, External Database
Resource constraints call for more tightly
integrated layers Open Question Can we define
anInternet-like architecture for such
application-specific systems??
In-network Application processing, Data
aggregation, Query processing
Data dissemination, storage, caching
Adaptive topology, Geo-Routing
MAC, Time, Location
Phy comm, sensing, actuation, SP
33Networked Info Mechanical Systems (NIMS)
- NIMS Architecture Robotic, aerial access to full
3-D environment - Enable sample acquisition
- Coordinated Mobility
- Enables self-awareness of Sensing Uncertainty
- Sensor Diversity
- Diversity in sensing resources, locations,
perspectives, topologies - Enable reconfiguration to reduce uncertainty and
calibrate - NIMS Infrastructure
- Enables speed, efficiency
- Low-uncertainty mobility
- Provides resource transport for sustainable
presence - (Kaiser, Pottie, Estrin, Srivastava, Sukhatme,
Villasenor)
34XYZ Sensor Node
- Sensor node created for experimentation
- Low cost, low power, many peripherals
- Integrated accelerometer, light and temperature
sensor - Uses an IEEE 802.15.4 protocol
- Chipcon 2420 radio
- OKI ARM Thumb Processor
- 256KB FLASH, 32KB RAM
- Max clock speed 58MHz, scales down to 2MHz
- Multiple power management functions
- Powered with 3AA batteries has external
connectors for attaching peripheral boards - Designed at Yale Enalab and Cogent computer
systems, will be used as the main platform for
the course
35Em Software environment for developing and
deploying wireless sensor networks
Collaborative Sensor Processing Application
Domain Knowledge
3d Multi- Lateration
State Sync
Reusable Software
(Flexible Interconnects not a strict stack)
Topology Discovery
Acoustic Ranging
Neighbor Discovery
Reliable Unicast
Leader Election
Time Sync
Radio
Sensors
Audio
Hardware
36Em Supports A Slow Descent into Reality
- EmStar allows the same Linux code to be used
- In a pure (low-fidelity) simulation
- Mostly simulated, but using a real wireless
channel - In a real testbed, small-scale but
high-visibility - Deployed, in-situ, at scale -- but low
visibility - Advantage over traditional simulators the
debugged code itself, not just the high-level
concepts, flow from simulation into the real
world - To maintain high visibility, we trade scale for
reality
37Systems Taxonomy Dimensions
- Spatial and Temporal Scale
- Sampling interval
- Extent
- Density (of sensors relative to stimulus)
- Variability
- Ad hoc vs. engineered system structure
- System task variability
- Mobility (variability in space)
- Autonomy
- Multiple sensor modalities
- Computational model complexity
- Resource constrained
- Energy, BW
- Storage, Computation
38Course Logistics
- Text
- Principles of Embedded Network Design by
Kaiser and Pottie Available at TYCO on Broadway
St - Wireless Sensor Networks, an Information
Processing Approach by Zhao and Guibas order
online - Both texts are on reserve at the Engineering
Library - Lab lab and software used for the course
available in CO-40. - My office hours Wed 1100am 1200pm by
appointment - TA Dimitrios Lymberopoulos (dimitrios.lymberopoul
os_at_yale.edu) -
39Who should take this course?
- Senior students
- Combine with senior design project
- Get some hands-on experience before entering
industry or graduate school - Start early so that you have something to show
for when you start with your applications - Graduate students
- Build up background in wireless embedded systems
- Use the course to jump-start or support your
research - Graduate students will be graded on a different
curve and would have slightly different
requirements
40Requirements and Grading
- Class requirements
- Attendance is mandatory
- Class Discussion Participation 5
- Homeworks 25
- 2 Midterms 30
- Final Project 40
- Students must have taken EENG 350 or CS 323 or
operating systems - Senior or graduate standing
- Be motivated and be willing to work independently
41Course Policies
- You cannot reuse the same material from other
courses, projects or independent studies for this
course - You must turn in the homework at the deadline
- Cheating and Plagiarism will not be tolerated
42Homeworks and Programming Assignments
- Three basic programming exercises to get you
going with embedded processors - 3 homework problems
- 1 in class presentation in class
- 2 midterm exams
43Course Projects
- Opportunity to go deeper in a specific area on
your own - Lectures and homework will give you broader
coverage, the project will be more focused - Project should have a novelty component
- Does not have to be nobel price but you should
add your own flavor to the project - Project proposal due by
- Topic suggestions will be online at the end of
Week 2 but I also encourage you to pick your own
topic - Come and talk to me about projects
- Project goal
- Pick something that you can realistically do in a
semester - Keep focused and aim for high quality
44More about Projects
- Project may have one or more components
- A theoretical or evaluation project
- Detailed simulation or optimization of a specific
algorithm or protocol - Evaluation or building of new hardware
- Data collection and analysis of sensor
measurements - Design new sensor interfaces
45Lecture Organization
- At the beginning full lecture will cover new
material by me - Later on, some of the lectures will be split in 2
- First half will cover new material
- Second half will be one of the following
- Follow-up discussions on embedded system problems
- Topic presentations
- Guest lecture presentation (e.g Prof.
Cullurciello sensors, Prof. Koser MEMS, Prof.
Ganesan Emstar, query processing)
46Topics and Tentative Lecture Schedule
- Week 1
- Intro
- Week 2
- Motivating applications and embedded systems
intro - Week 3
- Embedded Programming
- Weeks 4 5
- Study case Location Discovery
- Week 6
- Sensor and Radio Technologies
- Week 7
- MAC and Routing Protocols
- Week 8
- Data Aggregation, Storage and Clustering
- Week 9
- Mobility and Collaborative Control
- Week 10
- Learning in Sensor Networks
- Week 11
- Collaborative Signal Processing
- Week 12
- Security and Data Integrity
- Week 13
- Misc Topics
47Some neat Applications
- CodeBlue Project at Harvard
- Networked Cows at Dartmouth MIT
- Great Duck Island Habitat Monitoring (initiated
by UC Berkeley) - Boundary Estimation at Yale
- Elder Home Monitoring by Intel
-
- For more details take a look at the WAMES2005
Program at - http//lcawww.epfl.ch/luo/WAMES20200420-20Progr
am.htm
48Reading for this week
- D. Tennenhouse, Proactive Computing
- Kaiser Pottie, Wireless Sensor Networks
- Articles posted on the course website
- http//www.eng.yale.edu/enalab/courses/eeng460a/
- To order the book Go to TYCO and place your
order. Ask for EENG460a text, Prof. Savvides - The book will be ready for you to pick up on the
next day