1 / 22

Implementing Software on Resource-Constrained Mobile Sensors: Experiences with Impala and ZebraNet

Implementing Software on Resource-Constrained Mobile Sensors: Experiences with Impala and ZebraNet. Ting Liu, Christopher M. Sadler, Pei Zhang and Margaret Martonosi Princeton Univ. Appears in MobiSYS’04 Presented by: Lei Yang. Outline. About ZebraNet Hardware & constraints

aqua
Download Presentation

Implementing Software on Resource-Constrained Mobile Sensors: Experiences with Impala and ZebraNet

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Implementing Software on Resource-Constrained Mobile Sensors: Experiences with Impala and ZebraNet Ting Liu, Christopher M. Sadler, Pei Zhang and Margaret Martonosi Princeton Univ. Appears in MobiSYS’04 Presented by: Lei Yang

  2. Outline • About ZebraNet • Hardware & constraints • Impala layers and interfaces • Impala operation scheduling • Impala event handling model • Impala network interface • Conclusions

  3. Princeton ZebraNet Project • Energy-aware mobile sensor network • Track zebra migrations in Africa • Status • January, 2004: 7 test collars deployed on zebras in Kenya. First data received: 1/19/2004 • Next Step • Refine collar design; switch to lower-energy GPS, merge Impala software update code into final collars

  4. ZebraNet System Hardware Microcontroller TI MSP430F149 16-bit RISC 2KB RAM 60KB ROM 8MHz/32KHz dual clock FLASH ATMEL AT45DB041B 4Mbit 78 days data capacity SPI 667Kbps USART 38.4Kbps Radio MaxStream 9Xstream 902-928MHz 19.2Kbps over-the-air 0.5-1mile transmit range GPS µ-blox GPS-MS1E 10-20s position fix time USART 38.4Kbps 5V 3.3V Power supplies Charging circuits Solar modules

  5. Hardware-Imposed Constraints on Software • Components power consumption measured at 4.0 V • Constrains on system software • Memory constraint • Energy constraint • Device access constraint • Radio packet size constraint • FLASH storage constraint • GPS sensing time constraint

  6. Software adaptation for sensor network performance • Software update for sensor network deployment • Operation scheduling for regular operations • Event handling for irregular events • Network support for sensor network communications This Paper Implemented on ZebraNet PPoPP 2003 Prototyped on iPAQs Impala Overview • ZebraNet’s middle layer, light weight OS • Must support: Adapter Updater Operation Scheduler Event Filter Network Support

  7. Impala Layers and Interfaces Application 1 Application 2 Application 3 Application 4 Async. Network Transmission Protected FLASH Access Application Timer Control System Clock Time Read GPS Data Event Handler Application Timer Event Handler Network Packet Event Handler Network Send Done Event Handler Adapter Updater Operation Scheduler Event Filter Network Support GPS Data Event Radio Packet Event Timer Event Access and Control to All Devices CPU Radio GPS FLASH Timer WDT

  8. Static Memory Requirement • Each node has • 2 KB RAM and 60 KB Flash, internal • 4 Mbit (500KB) Flash, external

  9. Impala Regular Operation Scheduling • Use timers to trigger operations • Node iterates through a cycle of send/receive data -> obtain GPS position -> sleep 1 2 7 8 4 5 3 6 Networking Period Sleep Period GPS Sensing Period 1 5 CPU wake up/Radio, FLASH power on GPS power on 2 6 Radio transmitting / receiving start GPS sensing time 3 7 Network communication time GPS power off / FLASH power on 4 8 Radio power off/FLASH power off CPU sleep / FLASH power off

  10. Impala Regular Operation Scheduling, Cont. • Hardware attributes & constraints • GPS-aided time calibration • Simplifies operation synchronization • Prohibited simultaneous device operations • Voltage regulation • GPS and radio operations MUST alternate • Non-trivial radio wake-up time • Affects network communication schedule • Potentially long GPS sensing time • Async. Sensing operation • Components port sharing • GPS and Flash can’t simultaneously • Stringent energy budget • Battery can support 1 to 3 days • Solar cell limited • Low-energy, sleep phase • Scheduling skips networking/GPS if low on energy

  11. Scheduling Overhead

  12. Issue One: Event Abstraction Issue Two: Concurrency Abstract Application Events Short / atomic hardware interrupts Impala Long / preemptive software events Idle Miscellaneous Hardware Interrupts Issue Three: Event Prioritization High Priority Events Event Handler Event Signaler Low Priority Events Impala (Irregular) Event Handling

  13. Impala (Irregular) Event Handling Four types of abstract events

  14. Issue Two: Concurrency Issue One: Event Abstraction Short / atomic hardware interrupts Abstract Application Events Impala Long / preemptive software events Idle Miscellaneous Hardware Interrupts Issue Three: Event Prioritization High Priority Events Event Handler Event Signaler Low Priority Events Impala (Irregular) Event Handling Cont.

  15. Issue Two: Concurrency Issue One: Event Abstraction Short / atomic hardware interrupts Abstract Application Events Impala Long / preemptive software events Idle Miscellaneous Hardware Interrupts Issue Three: Event Prioritization High Priority Events Event Handler Event Signaler Low Priority Events Impala (Irregular) Event Handling Cont.

  16. Event Handling Overhead

  17. Impala Network Interface • P2P communication • Pairwise store-n-forward routing • Session-based message model • Session-based transport control • A session can be 1 to 32KB • Unicast, multicast, broadcast • Data from FLASH or RAM • Acknowledgment or not • Connectionless • Asynchronous • Send session queue • Receive session queue

  18. B acks packet 1-8 C acks packet 1-4 D silent B acks packet 9-16 C acks packet 1-4 D acks packet 9-16 B acks packet 1-8 C acks packet 1-4 D acks packet 1-8 D D A B C D A B C A B C A gives up C and sends packet 9-16 A sends packet 1-8 to B, C, and D A sends packet 1-8 Impala Network Interface, Cont. • MAC & Transport control • MAC: round-robin timeslots (w/ GPS-aided time synchronization) • Transport control: detect packet loss and retransmit • Unified: reduce data copy and overhead across protocol layers

  19. Network Interface Performance • Packet reception processing overhead • Packet transmission processing overhead By system components

  20. Network Interface Performance • Communication overhead by packet headers Header size and payload size for different packet types

  21. Network Interface Performance • Communication latency in reliable multicast Observed data delivery latencies for different number of destinations and different packet loss rates

  22. Conclusions • Hardware -> Impala middle layer -> applications • Regular operation scheduling, • Achieve maximum energy conservation • Irregular event handling, • Ensure activity concurrency and prioritization • Efficient network interface • Large messages transferred over small radio packets • Support multiple message models • Concrete experience with real system and application • Software design challenges with hardware constraints • Valuable to other wireless sensor network research

More Related