sensor node architecture - Distributed Embedded Systems

Transcription

sensor node architecture - Distributed Embedded Systems
SENSOR NODE ARCHITECTURE [NES] Winter 2014/2015 Sensor Node Architecture 1 System Aspects ²  MicaZ ²  iPhone ª  8 MHz ª  1-­‐2 GHz ª  250 kbit/s (ZigBee) ª  1 Gbit/s (WiFi) ª  4 kB RAM ª  128-­‐1024 MB RAM ª  128 kB Flash ª  16-­‐128 GB Flash [NES] Winter 2014/2015 Sensor Node Architecture 2 Sensor Node Architecture ² 
² 
² 
² 
Sensors Radio transceiver Processor (and memory) BaQery Sensor 1
…
Radio
transceiver
Microcontroller
Sensor n
Memory
Storage
Battery
[NES] Winter 2014/2015 Sensor Node Architecture 3 “TelosB” Mote PlaCorm GPIO
Blocks
Internal
Antenna
Temp / RH
Sensor
Reset
Button
IR / Light
Sensors
User
Button
CC2420
USB TX
LED
Antenna
connector
JTAG
connector
R/G/B
LEDs
USB RX
LED
[NES] Winter 2014/2015 Sensor Node Architecture 4 Ad hoc node architecture ² 
² 
Core: essenTally the same But: Much more addiTonal equipment ª 
² 
Hard disk, display, keyboard, voice interface, camera, … EssenTally: a laptop-­‐class device [NES] Winter 2014/2015 Sensor Node Architecture 5 Controller ² 
Main opTons Microcontroller – general purpose processor, opTmized for embedded applicaTons, low power consumpTon ª  DSPs – opTmized for signal processing tasks, not suitable here ª  FPGAs – may be good for tesTng ª  ASICs – only when peak performance is needed, no flexibility ª 
² 
Tasks ª 
ª 
ª 
ª 
ExecuTon of (Tme sensiTve) tasks Control of communicaTon protocols ExecuTon and control of the primary applicaTon program Energy management §  MulTple operaTon modes (acTve, idle, listen, sleep, …) [NES] Winter 2014/2015 Sensor Node Architecture 6 Microcontroller Controller
Atmega128
TI MSP430
PIC 18F720
ARM920T
RAM
4 KB
10 KB
4 KB
512 KB
Flash
128 KB Program
512 KB Serial
48 KB
128 KB Program
512 KB
Filesystem
1KB EEPROM
4 MB
Clock rate
8 MHz
8 MHz
20 MHz
180 MHz
Energy
consumption
Active: 8 mA
Sleep: <15 uA
Active: 1.8 mA
Sleep: 5.1 uA
Active: 8 mA
Active: 25-90 mA
Sleep: 32 uA
Plattform
MicaZ
TelosB
Particle
SunSPOT
Costs
~ 12 Euro
[NES] Winter 2014/2015 ~ 5 Euro
Sensor Node Architecture 7 Microcontroller  
MSP430 F1611 (Texas Instruments)  
 
 
Ultra-­‐Low-­‐Power MCU 200 μA / MIPS; standby mode available Highly integrated device Frequency Flash SRAM GPIO DAC Resolution Timers 16-bit Watchdog Brown Out Reset SVS Voltage Check USART DMA Multiplier Comparators Temp Sensor ADC 12-bit ADC Channels [WSN-­‐PS] Winter 2013/2014 Hardware 8 MHz 48 KB 10240 B 48 12 Bit 2 Yes Yes Yes Yes Yes 16x16 Yes Yes SAR 8 8 CommunicaDon device ² 
Which transmission medium? ª 
ª 
ª 
² 
ElectromagneTc at radio frequencies? ElectromagneTc, light? Ultrasound? ü
Radio transceivers transmit a bit-­‐ or byte stream in form of a radio wave ª 
Receive it, convert it back into bit-­‐/byte stream [NES] Winter 2014/2015 Sensor Node Architecture 9 Transceiver characterisDcs ² 
CapabiliTes ª 
ª 
² 
Interface: bit, byte, packet level? Supported frequency range? §  Typically, somewhere in 433 MHz – 2.4 GHz, ISM band ª 
ª 
ª 
² 
MulTple channels? Data rates? Range? ª 
ª 
ª 
ª 
ª 
ª 
ª 
Power consumpTon to send/
receive data? Time and energy consumpTon to change between different states? Transmission power control? Power efficiency (which percentage of consumed power is radiated?) [NES] Winter 2014/2015 ª 
ª 
Energy characterisTcs ª 
Radio performance Sensor Node Architecture ª 
ª 
ª 
ModulaTon? (ASK, FSK, …?) Noise figure? NF = SNRI/SNRO Gain? (signal amplificaTon) Receiver sensiTvity? (minimum S to achieve a given Eb/N0) Blocking performance (achieved BER in presence of frequency-­‐
offset interferer) Out of band emissions Carrier sensing & RSSI characterisTcs Frequency stability (e.g., towards temperature changes) Voltage range 10 Transceiver states ² 
Transceivers can be put into different operaTonal states, typically: ª 
ª 
ª 
Transmit Receive Idle – ready to receive, but not doing so §  Some funcTons in hardware can be switched off, reducing energy consumpTon a liQle ª 
Sleep – significant parts of the transceiver are switched off §  Not able to immediately receive something §  Recovery 5me and startup energy to leave sleep state can be significant ² 
Research issue: Wakeup receivers – can be woken via radio when in sleep state (seeming contradicTon!) [NES] Winter 2014/2015 Sensor Node Architecture 11 Example radio transceivers ² 
² 
Almost boundless variety available Some examples ª 
916 or 868 MHz 400 kHz bandwidth Up to 115,2 kbps On/off keying or ASK Dynamically tuneable output power Maximum power about 1.4 mW Low power consumpTon Chipcon CC1000 §  Range 300 to 1000 MHz, programmable in 250 Hz steps §  FSK modulaTon §  Provides RSSI [NES] Winter 2014/2015 Sensor Node Architecture Chipcon CC 2400 § 
§ 
§ 
§ 
RFM TR1000 family § 
§ 
§ 
§ 
§ 
§ 
§ 
ª 
ª 
ª 
Implements 802.15.4 2.4 GHz, DSSS modem 250 kbps Higher power consumpTon than above transceivers Infineon TDA 525x family §  E.g., 5250: 868 MHz §  ASK or FSK modulaTon §  RSSI, highly efficient power amplifier §  Intelligent power down, “self-­‐
polling” mechanism §  Excellent blocking performance 12 Radio ² 
CC2420 (Chipcon, TI) ª 
ª 
ª 
ª 
ª 
single-­‐chip 2.4 GHz IEEE 802.15.4 compliant RF transceiver Data rate: 250 kbps Digital RSSI / LQI support Programmable output power “low power”: 18.8 / 17.4 mA (RX/TX) [NES] Winter 2014/2015 Sensor Node Architecture 13 Example radio transceivers for ad hoc networks ² 
² 
Ad hoc networks: Usually, higher data rates are required Typical: IEEE 802.11 a/b/g/n is considered Up to 450 MBit/s ª  RelaTvely long distance (100s of meters possible, typical 10s of meters at higher data rates) ª  Works reasonably well (but certainly not perfect) in mobile environments ª  Problem: expensive equipment, quite power hungry ª 
[NES] Winter 2014/2015 Sensor Node Architecture 14 Wakeup receivers ² 
Major energy problem: RECEIVING ª 
² 
When to switch on a receiver is not clear ª 
ª 
² 
Idling and being ready to receive consumes considerable amounts of power ContenTon-­‐based MAC protocols: Receiver is always on TDMA-­‐based MAC protocols: SynchronizaTon overhead, inflexible Desirable: Receiver that can (only) check for incoming messages ª 
ª 
ª 
When signal detected, wake up main receiver for actual recepTon Ideally: Wakeup receiver can already process simple addresses Not clear whether they can be actually built, however [NES] Winter 2014/2015 Sensor Node Architecture 15 OpDcal communicaDon ² 
² 
OpTcal communicaTon can consume less energy Example: passive readout via corner cube reflector Laser is reflected back directly to source if mirrors are at right angles ª  Mirrors can be “Ttled” to stop reflecTng à Allows data to be sent back to laser source ª 
[NES] Winter 2014/2015 Sensor Node Architecture 16 Ultra-­‐wideband communicaDon ² 
Standard radio transceivers: Modulate a signal onto a carrier wave ª 
² 
AlternaTve approach: Use a large bandwidth, do not modulate, simply emit a “burst” of power ª 
ª 
ª 
ª 
ª 
² 
Requires relaTvely small amount of bandwidth Forms almost rectangular pulses Pulses are very short InformaTon is encoded in the presence/absence of pulses Requires Tght Tme synchronizaTon of receiver RelaTvely short range (typically) Advantages ª 
ª 
ª 
PreQy resilient to mulT-­‐path propagaTon Very good ranging capabiliTes Good wall penetraTon [NES] Winter 2014/2015 Sensor Node Architecture 17 Sensors as such ² 
Main categories ª 
Any energy radiated? Passive vs. acTve sensors Sense of direcTon? OmidirecTonal? ª 
Passive, omnidirecTonal ª 
§  Examples: light, thermometer, microphones, hygrometer, … ª 
Passive, narrow-­‐beam §  Example: Camera ª 
AcTve sensors §  Example: Radar ² 
Important parameter: Area of coverage ª 
Which region is adequately covered by a given sensor? [NES] Winter 2014/2015 Sensor Node Architecture 18 Sensors ² 
Digital Temperature/Humidity Sensor ª 
ª 
ª 
ª 
² 
Sensirion SHT11 Low power: 80 μW (typ.) -­‐40 … +125°C 0 … 100% RH Visible Light / IR Sensor ª 
ª 
ª 
ª 
Hamamatsu S1087 & S1087-­‐01 Low dark current (10 pA) 320 … 730 nm 320 … 1100 nm [NES] Winter 2014/2015 Sensor Node Architecture 19 ENERGY SUPPLY [NES] Winter 2014/2015 Sensor Node Architecture 20 Energy supply of mobile/sensor nodes ² 
Goal: provide as much energy as possible at smallest cost/
volume/weight/recharge Tme/longevity ª 
² 
In WSN, recharging may or may not be an opTon OpTons Primary baQeries – not rechargeable ª  Secondary baQeries – rechargeable, only makes sense in combinaTon with some form of energy harvesTng ª 
² 
Requirements include ª 
ª 
ª 
ª 
ª 
ª 
Low self-­‐discharge Long shelf life Capacity under load Efficient recharging at low current Good relaxaTon properTes (seeming self-­‐recharging) Voltage stability (to avoid DC-­‐DC conversion) [NES] Winter 2014/2015 Sensor Node Architecture 21 BaRery examples ² 
Energy per volume (Joule per cubic cenTmeter): Primary batteries
Chemistry
Zinc-air
Lithium
Alkaline
Energy (J/cm3)
3780
2880
1200
Secondary batteries
Chemistry
Lithium
NiMHd
NiCd
Energy (J/cm3)
1080
860
650
[NES] Winter 2014/2015 Sensor Node Architecture 22 Energy scavenging ² 
How to recharge a baQery? ª 
ª 
² 
A laptop: easy, plug into wall socket in the evening A sensor node? – Try to scavenge energy from environment Ambient energy sources Light à solar cells – between 10 µW/cm2 and 15 mW/cm2 ª  Temperature gradients – 80 µ W/cm2 @ 1 V from 5K difference ª  VibraTons – between 0.1 and 10000 µ W/cm3 ª  Pressure variaTon (piezo-­‐electric) – 330 µ W/cm2 from the heel of a shoe ª  Air/liquid flow (MEMS gas turbines) ª 
[NES] Winter 2014/2015 Sensor Node Architecture 23 Energy scavenging – overview [NES] Winter 2014/2015 Sensor Node Architecture 24 Energy consumpDon ² 
A “back of the envelope” esTmaTon ² 
Number of instrucTons ª 
ª 
ª 
² 
LifeTme ª 
ª 
² 
Energy per instrucTon: 1 nJ Small baQery (“smart dust”): 1 J = 1 Ws Corresponds: 109 instrucTons! Require a single day operaTonal lifeTme = 24 x 60 x 60 = 86400 s 1 Ws / 86400s ~ 11.5 µW as max. sustained power consumpTon! Not feasible! [NES] Winter 2014/2015 Sensor Node Architecture 25 MulDple power consumpDon modes ² 
Way out: Do not run sensor node at full operaTon all the Tme ª 
ª 
² 
Typical modes ª 
ª 
² 
If nothing to do, switch to power safe mode QuesTon: When to throQle down? How to wake up again? Controller: AcTve, idle, sleep Radio mode: Turn on/off transmiQer/receiver, both MulTple modes possible, “deeper” sleep modes ª 
ª 
ª 
Strongly depends on hardware TI MSP 430, e.g.: four different sleep modes Atmel ATMega: six different modes [NES] Winter 2014/2015 Sensor Node Architecture 26 Some energy consumpDon figures ² 
Microcontroller ª 
TI MSP 430 (@ 1 MHz, 3V): §  Fully operaTon 1.2 mW §  Deepest sleep mode 0.3 µW – only woken up by external interrupts (not even Tmer is running any more) ª 
Atmel ATMega §  OperaTonal mode: 15 mW acTve, 6 mW idle §  Sleep mode: 75 µW [NES] Winter 2014/2015 Sensor Node Architecture 27 Switching between modes ² 
² 
Simplest idea: Greedily switch to lower mode whenever possible Problem: Time and power consumpTon required to reach higher modes not negligible ª 
ª 
² 
² 
Introduces overhead Switching only pays off if Esaved > Eoverhead Example: Event-­‐triggered wake up from sleep mode Scheduling problem with uncertainty Pactive
Psleep
t1
[NES] Winter 2014/2015 Eoverhead
Esaved
Sensor Node Architecture τdown
tevent
time
τup
28 AlternaDve: Dynamic voltage scaling ² 
² 
Switching modes complicated by uncertainty how long a sleep Tme is available AlternaTve: Low supply voltage & clock ª 
² 
Dynamic voltage scaling (DVS) RaTonale: ª 
Power consumpTon P depends on §  Clock frequency §  Square of supply voltage §  P / f V2 ª 
ª 
ª 
Lower clock allows lower supply voltage Easy to switch to higher clock But: execuTon takes longer [NES] Winter 2014/2015 Sensor Node Architecture 29 Memory power consumpDon ² 
Crucial part: FLASH memory ª 
² 
Power for RAM almost negligible FLASH wriTng/erasing is expensive ª 
ª 
ª 
Example: FLASH on Mica motes Reading: ~ 1.1 nAh per byte WriTng: ~ 83.3 nAh per byte [NES] Winter 2014/2015 Sensor Node Architecture 30 TransmiRer power/energy consumpDon for n bits ² 
Amplifier power: Pamp = αamp + βamp Ptx ª 
ª 
ª 
² 
² 
In addiTon: transmiQer electronics needs power PtxElec Time to transmit n bits: n / (R * Rcode) ª 
² 
Ptx radiated power αamp, βamp constants depending on model Highest efficiency (η = Ptx / Pamp ) at maximum output power R nomial data rate, R
coding rate code
To leave sleep mode ª 
Time Tstart, average power Pstart à Etx = Tstart Pstart + n / (R * Rcode) (PtxElec + αamp + βamp Ptx) ²  SimplificaTon: ModulaTon not considered [NES] Winter 2014/2015 Sensor Node Architecture 31 Receiver power/energy consumpDon for n bits ² 
Receiver also has startup costs ª 
² 
² 
² 
Time Tstart, average power Pstart Time for n bits is the same n / (R * Rcode) Receiver electronics needs PrxElec Plus: energy to decode n bits EdecBits à Erx = Tstart Pstart + n / (R * Rcode) PrxElec + EdecBits ( R ) [NES] Winter 2014/2015 Sensor Node Architecture 32 Some transceiver numbers [NES] Winter 2014/2015 Sensor Node Architecture 33 Controlling transceivers ² 
Similar to controller, low duty cycle is necessary Easy to do for transmiQer – similar problem to controller: when is it worthwhile to switch off ª  Difficult for receiver: Not only Tme when to wake up not known, it also depends on remote partners ! Dependence between MAC protocols and power consumpTon is strong! ª 
² 
Only limited applicability of techniques analogue to DVS Dynamic ModulaTon Scaling (DSM): Switch to modulaTon best suited to communicaTon – depends on channel gain ª  Dynamic Coding Scaling – vary coding rate according to channel gain ª  CombinaTons ª 
[NES] Winter 2014/2015 Sensor Node Architecture 34 ComputaDon vs. communicaDon energy cost ² 
Tradeoff? Directly comparing computaTon/communicaTon energy cost not possible ª  But: put them into perspecTve! ª  Energy raTo of “sending one bit” vs. “compuTng one instrucTon”: Anything between 220 and 2900 in the literature ª  To communicate (send & receive) one kilobyte = compuTng three million instrucTons! ª 
² 
² 
Hence: try to compute instead of communicate whenever possible Key technique in WSN – in-­‐network processing! ª 
Exploit compression schemes, intelligent coding schemes, … [NES] Winter 2014/2015 Sensor Node Architecture 35