XYZ: A Motion-Enabled, Power Aware Sensor Node Platform for Distributed Sensor Node Applications...

18
XYZ: A Motion-Enabled, Power Aware Sensor Node Platform for Distributed Sensor Node Applications Dimitrios Lymberopoulos and Andreas Savvides Embedded Networks and Applications Lab ENALAB Yale University http://www.eng.yale.edu/enalab Research Supported by:
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    226
  • download

    3

Transcript of XYZ: A Motion-Enabled, Power Aware Sensor Node Platform for Distributed Sensor Node Applications...

XYZ: A Motion-Enabled, Power Aware Sensor Node Platform for Distributed Sensor Node

Applications

Dimitrios Lymberopoulos and Andreas Savvides

Embedded Networks and Applications Lab

ENALAB

Yale University

http://www.eng.yale.edu/enalab

Research Supported by:

The XYZ Sensor Node

Sensor node created for experimentation– Low cost, low power, many peripherals– Integrated accelerometer, light and

temperature sensor

IEEE 802.15.4 compliant radio– Chipcon CC2420 radio

OKI ARM Thumb Processor– 256KB FLASH, 32KB RAM– 2 Mbits External RAM– Max clock speed 57.6MHz, scales down

to 1.8 MHz– Multiple power management functions– Rich set of peripherals

Powered with 3 AA batteries Long term sleep modes

Why do we need a new platform?

Research and education node to do tasks not doable with existing nodes

– Need for 32 bit computation for distributed signal processing protocols

• E.g Localization protocol stacks and optimizations

– Need to be closer to the Sensors• Do fast sampling and processing close to the sensors

– E.g real-time acceleration or gyro measurements– Acoustic sampling and correlation – need memory, peripherals and processing to be

close to the computation resource – simplifies programming– Capture, process & transmit video images

– Accommodate custom form factors and interfaces for experimenting with mobile computing applications

• Mobility support interfaces (stronger connectors, output for motor controllers)

• Wearable applications – small package

– Full control of our experiments• Fully flexible and open platform at all levels

– Low power, long term sleep modes• Need to sleep for extended time periods

XYZ’s Playground: Enalab’s 3-D Testbed

Initial uses:• Localization, time synch and calibration• Ultrasonic localization, inertial tracking• Motion coordination• Sensor fusion and intelligent information harvesting

Processor choice: OKI ARM ML67500x

ARM7TDMI

Acoustic Detection on XYZ

Prototype status– Can recognize specific sound signatures– Continuous sampling and processing of

acoustic events up to 40KHz– Uses a 512-Point FFT that runs in

O(1.8ms) on XYZ

Dominant Frequency vs. Time for a Ringed Plover Bird Chirp on the XYZ

0

500

1000

1500

2000

2500

3000

Time (ms)

Fre

qu

ency

(H

z)

XYZ’s Architecture

XYZ’s Multiple Operational Modes

Frequency scaling 6 different operating frequencies. 1.8MHz – 57.6MHz

Radio management 8 discrete transmission power levels. Sleep mode. Turn on/off.

Individual peripherals I/O clock is different than the CPU clock enable/disable internal clock divider.

Sleep modes STANDBY

• Clock oscillation is stopped.• Only an external interrupt can cause CPU to exit this mode.• Wait for clock to stabilize after waking up.

HALT• Clock oscillation is not stopped.• Clock signal is blocked to specific blocks.• Any interrupt (internal or external) can cause the CPU to exit this mode• No need to wait for the clock to stabilize after waking up

Deep Sleep mode

XYZ is turned off! Only the Real Time Clock is operational.

Only the Real Time Clock can wake up the node.

Current drawn: ≈30μΑ

XYZ’s Deep Sleep mode: Supervisor Circuitry

Step 1: Turn on the node.

Step 2: The μC takes control of the Enable pin of the voltage regulator.

Step 3: Turn the power switch to the STBY position.

Step 4: The μC selects the total time that wants to be turned off and programs the DS1337 accordingly, through the 2-wire serial interface.

Step 5: The DS1337 disables the voltage regulator and uses its own crystal to keep the notion of time. The entire sensor node is turned off!

Step 6: The DS1337 enables the voltage regulator after the programmed amount of time has elapsed.

Step 7: The μC takes control of the Enable pin of the voltage regulator

OKI μC

RTC

DS1337

Voltage Regulator

3 x AA batteries

2.5V

3.3V

I2C

WAKEUP

Enable

Interrupt (SQW)

GPIO

INT_1

INT_2

ON

STBY

XYZ: Power Characterization

Frequency Scaling

Current consumption varies from 15.5mA(1.8MHz) to 72mA(57.6MHz) Disabling all the peripherals (except the timers) results to a reduction of 0.5mA (1.8MHz) to 12mA(57.6MHz) Peripherals cause most of the overhead

SOS and Zigbee MAC layer overhead: 2 schedulers 4 hardware timers 1 software timer 20 mA @ maximum frequency

0 10 20 30 40 50 600

10

20

30

40

50

60

70

80

FREQUENCY (MHz)

CU

RR

EN

T (m

A)

CPU CORETOTALRADIOCPU I/Oonly timers enabledall I/O enabled

0 10 20 30 40 50 600

10

20

30

40

50

60

70

80

FREQUENCY (MHz)C

UR

RE

NT

(mA

)

CPU CoreTotal

SOS and Zigbee active

IDLE (SOS and Zigbee loaded)

IDLE (SOS and Zigbee NOT loaded)

Power Mode Transitioning Overheads

Frequency (MHz)

STANDBY HALT

Sleep Wake up Sleep Wake up

Time(μs) Energy(μJ) Time(ms) Energy(mJ) Time(μs) Energy(μJ) Time(μs) Energy(μJ)

57.6 300 22.49 24.2 1.53 204 37.43 552 105.41

57.6/4 320 20.63 23.8 1.47 60 5.35 400 36.7

57.6/32 320 18.39 1.4 0.1 40 2.38 148 9.54

Power Consumption in the HALT mode depends on the previous operating mode! The reason is that most of the peripherals are active in the HALT mode!

Waking up the node takes orders of magnitude more time than putting it into sleep mode. This time is not software-controlled and can vary from 10 to 24ms for the maximum operating frequency. The time that is required to wake up the processor depends on the next operating mode!

Transistion from (MHz)

STANDBY HALT

Current (mA)

Core Total Core Total

57.6(radio IDLE) ≈ 0 4.1 32.2 43.76

57.6/32(radio IDLE) ≈ 0 3.5 2.02 13.93

57.6(radio listening) ≈ 0 23.62 32.24 63.2

57.6/32(radio listening) ≈ 0 23.62 2.3 34.85

XYZ: Power Characterization

-25 -20 -15 -10 -5 00

5

10

15

20

25

TX POWER (dbm)

CU

RR

EN

T (

mA

)

y = 0.00064*x3 + 0.042*x2 + 0.99*x + 18

Radio ListeningRadio IDLERadio Transmitting Cubic Polynomial FitRadio IDLERadio Listening

Radio’s Power Consumption

The current drawn by the radio while listening the channel is higher than the current drawn when the radio is transmitting packets at the highest power level

Level TX Power(dBm)

Power Consumed (mW)

0(max) 0 57.2

1 -1 55.41

2 -3 50.02

3 -5 44.2

4 -7 41.9

5 -10 36.4

6 -15 33.93

7(min) -25 28.6

XYZ: Software Infrastructure

SOS Operating System

IEEE 802.15.4 MAC

Low Power API

Application Layer

Dynamic Loadable Binary Modules

CPU and Radio APIs Zigbee MAC protocol

Operating System Hardware Drivers

Software Infrastructure: SOS

Hardware Abstraction

Module

Communication MemoryManager

Static SOS Kernel

Dynamic LoadableBinary Modules

Dynamic LoadableBinary Modules

Module-based SOS operating system Message passing communication Intertask communication Virtual Delta Timers (Software timers) Supports module insertion/deletion Event driven sensing interface Cross Platform

Easy to use Applications are written in pure C Minimum use of macros Clean implementation Reduces the application development

time

XYZ is moving! The XYZ ZipMote

Adding mobility to the XYZ sensor node– An add-on board was designed to support

the mobility mechanism– A geared motor is used for moving the

sensor node on a string.– 2 HBRIDGEs are used to drive the geared

motor with 5V.

Experimental results while carrying a servo motor and a camera:

– Average speed: 0.14m/s – Total distance traveled before battery death:

165 meters

Integrated ultrasonic and mobility board– 3 Ultrasonic transducers – Multiplexed TX/RX functionality on each

transducer– 12 channels / 10-bit resolution ADC for

interfacing more sensors

XYZ meets Ragobot @ http://www.ragobot.com

NECK INTERFACENECK INTERFACE(RFID, UID, USB)(RFID, UID, USB)

Integrated 3D Integrated 3D CompassCompass

Integrated 2D Integrated 2D AccelerometerAccelerometer

Edge detector prevents Edge detector prevents falls from cliffsfalls from cliffs(not shown)(not shown)

Self-docking power transfer platesSelf-docking power transfer platesfor automatic battery rechargefor automatic battery recharge

HEAD INTERFACEHEAD INTERFACE(Video, Audio, IR “Weapons”)(Video, Audio, IR “Weapons”)

IRMAN IRMAN programming programming headerheader

Six-element, full-coverage, IR obstacle Six-element, full-coverage, IR obstacle detection and short-range communications detection and short-range communications arrayarray

Power robot and Power robot and recharge battery recharge battery from DC wall supplyfrom DC wall supply

Battery charger withBattery charger withunder-voltage, under-voltage, over-voltage, over-voltage, reverse polarity, reverse polarity, over-load, over-load, and regulation and regulation ProtectionProtection

Battery monitor Battery monitor (on underside of PCB)(on underside of PCB)

Plug-and-play support for allPlug-and-play support for allxBow Mote compatible devicesxBow Mote compatible devices

……AND MUCH AND MUCH MUCH MORE!MUCH MORE!

XYZ Deployment

Deployment in New Haven Sound High School– Large user community of 320 students

Initial Goal: monitor machine status, fish tanks and algae production (temperature, DO, pH) Machine breakdowns can waist 6-month work Optimize algae production

CONCLUSION

The results of the characterization provide valuable insight on what would be the best way to operate the different modes.

Long term sleep modes as well as ample computation and memory resources are available

An additional board provides mobility and ultrasound ranging capabilities to the node.

A 3-D testbed installed in our lab is the playground for 50 XYZ nodes. http://www.cs.yale.edu/enalab/XYZ/ http://www.ragobot.com http://nesl.ee.ucla.edu/projects/sos

XYZ in class.

XYZ is available to the research community from Cogent Computer Systems Inc. at a cost of $150 per node for a 20 node batch. (http://www.cogcomp.com)