Crossbow

advertisement
Crossbow:
Smarter Sensors in Silicon
Johann Ammerlahn
Crossbow Platform Review
Overview and Goals
 History
 Design Approach
 Current System

– Hardware
– Software

Future Directions
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
2
Overview and Goals

Big Idea: Ubiquitous sensing
 How?
– Necessarily “cheap”
• This is the military. Cheap is relative.
– Necessarily small
• (more survivable, low profile, etc.)
– Necessarily many
• (economies of scale, higher measurement
granularity, lower power comms, etc.)
– Necessarily robust
• Common case: no maintenance
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
3
Crossbow Mote History
$$ +
Network Embedded
Systems Technology
Program
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
4
Hardware Development Cycle
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
5
Current Design Analysis: Mica Series

Integrate sensors, computation and
communication in single unit
– Basic board has radio, processor, memory
– Sandwich sensor boards in layers
– “Just like the rock…great cleavage”

Open-source hardware/software concept
– Software is TinyOS (TOS) and TinyDB (TDB)
– Hardware design and Intel networking
technology is licensed to Crossbow

Modular design allows fast development
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
6
Available Mote Designs: MICA






Crossbow 2nd generation wireless sensor, 4th from Berkeley Labs
Atmel ATMEGA103/128L
– 4 Mhz 8-bit CPU
– 128KB Instruction Memory
– 4KB SRAM and EEPROM
4 Mbit flash (AT45DB041B)
– SPI interface
– 1-4 uj/bit r/w
RFM TR1000 Radio (916/433 MHz)
– 50 kb/s – ASK
– Focused hardware acceleration
– 1 to 300 ft. range, RSSI
51-pin connector
– Analog ADC & comparators, I2C, SPI, interrupts, PWM, ext.
SRAM, UART
$100-400 depending upon configuration
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
7
Available Mote Designs: MICA

Three low-power modes
– Idle: Processor is turned off
– Power Down: Everything but the
watch-dog is turned off
– Power Save: Only asynchronous
timer powered on
51-Pin I/O Expansion Connector
Digital I/O
DS2401 Unique ID

8 Analog I/O
8 Programming
Lines
Atmega103 Microcontroller
100 mW power consumption
Transmission
Power Control

Hardware
Accelerators
30 uW power consumption
– All components asleep
TR 1000 Radio Transceiver
SPI Bus
– Processors, radio, typical sensor load
Coprocessor
4Mbit External Flash
Power Regulation MAX1678 (3V)
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
8
Available Mote Designs: MICA2
Crossbow 3rd generation wireless sensor
 Design changes to MICA:
 Processor now offers standalone boot-loader
 New radio (Chipcon 1000)

–
–
–
–
–
–
–



500 to 1000 ft. range, 38.4 Kbaud
Better noise immunity, linear RSSI
FM modulated (vs Mica AM)
Digitally programmable output power
Built-in Manchester encoding
Software programmable freq.
hopping within bands
Tiny OS v. 1.0 - improved network stack, debugging
Wireless remote programming
512 Kb serial flash
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
9
Available Mote Designs: MICA2DOT







Crossbow 3rd generation wireless sensor
Similar feature set to MICA2
Degraded I/O capabilities: 18 pins vs. 51
– 6 analog inputs, digital bus,
serial or UART
Integrated temperature and battery
voltage sensors, status LED
Battery is 3V coin cell instead of AA x 2
25 mm diameter, 6 mm height
Compatible with MICA2
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
10
Next Generation Mote: Spec











Single-chip mote
2 mm x 2.5 mm
RISC core
3k Memory
8-bit on-chip ADC
FSK 19.2 kbps RF transmitter
Paged memory
SPI, RS232 compatible UART
4-bit input/4-bit output port
Hardware support for comms encryption
Hardware OEM costs: Under $1 in quantity (w/o antenna
and sensors)
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
11
Next Generation Mote: Spec (Cont.)
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
12
Sensor & External Modules


Each sensor has individual power control
MTS300
– Light, temperature, acoustic, sounder

MTS310
– 2-axis accelerometer, 2-axis magnometer, MTS300 feature set

MTS101
– Thermistor, light sensor/photocell, 24-point general
prototyping area

MDA500
– Connects MICA2DOT I/O signals to thru holes

WSC100
– Four-channel “analog” (12-bit digital, 100hz) Bluetooth radios
– Single module dedicated to either input or output
– 100 ft range
Graphics Courtesy Crossbow
3/14/2016
Technologies, Inc. and Berkeley Labs
13
Operating System: TinyOS

Tiny Microthreading Operating System
– Tiny - 4k OS + program memory limit
– Microthreading - processor directly handles
almost all data (radio, sensors, etc.)
– OS - allows platform for future development
- convenient abstractions for hardware

Designed to do the job fast and then turn
off everything allowed
 Open source
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
14
Design Considerations


Make best use of most constrained asset: battery power
Network self-configuration
– Manage complexity, respond to unplanned events

Sensor self-configuration (?)
– “Glue and go”

Real-time
– Limited buffering available

Network robustness and maintenance
– Multiple points of failure, self-healing ability

Heterogeneous end environments
– Application specific rather than general purpose (?)
– Fast creation of efficient, specific applications w/o too much
HW-specific nastiness
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
15
Example Software Layer Structure
sensing application
application
Routing Layer
routing
Messaging Layer
messaging
packet
byte
bit
3/14/2016
Radio Packet
UART Packet
Radio byte
UART byte
RFM
photo
clocks
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
ADC
Temp
SW
i2c
HW
16
Example Memory Allocation
4000
Multihop Router
3500
AM light
AM Temp
3000
AM
Packet
2500
Radio Byte
RFM
2000
Photo
Temp
UART Packet
1500
UART
i2c
1000
Init
TinyOS Scheduler
500
C Runtime
0
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
17
Example Utilization: Radio Receive
Components
Packet reception
work breakdown
Percent CPU
Utilization
Energy (nj/Bit)
AM
0.05%
0.20%
0.33
Packet
1.12%
0.51%
7.58
26.87%
12.16%
182.38
5.48%
2.48%
37.2
66.48%
30.08%
451.17
Radio Reception
-
-
1350
Idle
-
54.75%
-
100.00%
100.00%
2028.66
Radio handler
Radio decode thread
RFM
Total
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
18
TinyOS: Programming

Structural VHDL puts the pieces together
– Schematics are (usually) easier to put
together and understand than code
– Industry standard design model
– Scripts take VHDL description and
compile the resultant code base


Components are aggregated and
easily reused
Low-level component software written
In C and/or assembly
– But, this is largely hidden from view for
standard modules
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
19
TinyOS: Example Code
/* Messaging Component Declaration */
//ACCEPTS:
char TOS_COMMAND(AM_SEND_MSG)(char addr,char type, char* data);
void TOS_COMMAND(AM_POWER)(char mode);
char TOS_COMMAND(AM_INIT)();
//SIGNALS:
char AM_MSG_REC(char type, char* data);
char AM_MSG_SEND_DONE(char success);
//HANDLES:
char AM_TX_PACKET_DONE(char success);
char AM_RX_PACKET_DONE(char* packet);
//USES:
char TOS_COMMAND(AM_SUB_TX_PACKET)(char* data);
void TOS_COMMAND(AM_SUB_POWER)(char mode);
char TOS_COMMAND(AM_SUB_INIT)();
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
20
TinyDB: Overview
•Imposes SQL-like querying ability on nodes
•Treats distributed network like a database (!)
•Allows specification of which data should be
sent, update rate, etc.
•Filters and aggregates before displaying on PC
screen (Java interface)
•Saves bandwidth and power by allowing nodes
to only transmit requested data
•Graphical query-builder
•Download self-configuring runtime to motes,
no C codingGraphics Courtesy Crossbow
3/14/2016
Technologies, Inc. and Berkeley Labs
21
Crossbow Motes Conclusion

Crossbow motes are very cool
 Probably cheap enough for us to buy a
couple for playing with?
– Otherwise, maybe just TinyOS emulation?

Sensor Hardware
– Cheap, publicly-available, modular, integrated,
power-efficient, extensible, tiny

Sensor Software
– Free, open-source, modular, abstract, powerefficient, extensible, small
3/14/2016
Graphics Courtesy Crossbow
Technologies, Inc. and Berkeley Labs
22
Download