Title: Integrating and Testing the Performance of the Wireless Sensor Networks Integrated into the C6 Virtual Reality Environment
1Integrating and Testing the Performance of the
Wireless Sensor Networks Integrated into the C6
Virtual Reality Environment
2Outline
- Acknowledgments
- Introduction
- Current System
- Proposed Solution
- WSN Communication Architecture
- Mote Hardware
- Mote Software Environment
- Packet Delivery Issues Physical layer
- Packet Delivery Issues MAC sub-layer
- Packet Delivery Issues Error control sub-layer
- Conclusions
- References
3Acknowledgments
- The CRCD project is sponsored by the NSF
Engineering Education and Centers (EEC) project
number 00-88071 - I would like to thank
- Dr. Dickerson for giving me the opportunity to be
part of the CRCD project - All of the students and professors that also
participated in the CRCD project - The faculty and staff of the Virtual Reality
Application Center (VRAC)
4Introduction
- The C6 is a fully enclosed VR environment,
therefore all of the devices must be wireless. - One of the goals for the NSF Combined Research
Curriculum Development (CRCD) project was to
design and implement a low-power wireless
communication system for virtual environments. - We utilized the emerging technology of Wireless
Sensor Networks (WSNs), to provide a unified
communication system between the sensing devices
and the VR applications.
5Current System
6Proposed Solution
7WSN Communication Architecture 46
- The current design utilizes a single-hop network
- Focus was placed on the physical and data link
layers of the Motes. - Physical layer
- Frequency selection, carrier frequency
generation, signal detection, modulation, data
encryption, etc. - Data link layer MAC and Error Control sub-layers
- MAC sub-layer
- Channel allocation, collision avoidance,
fairness, low-power listening - Error Control sub-layer
- Detection and possible recovery of erroneous
packets ( message reliability)
8Mote Hardware Components
9Motes Evolution2425
- The Mica2 and Mica2Dot Motes operating in the
900 MHz ISM band were integrated into the C6 VR
environment.
10Mote Radio
- Radio ChipCon CC1000 RF transceiver
- FSK modulation
- Data rates 38.4 Kbps (def.) or 19.2 Kbps
(Manchester encoding) - Digitally programmable output power 5dBm to -20
dBm - Software programmable frequency 902 928 MHz
- 50 channels ( FCC reg.)
- 500 ft. LOS outdoor coverage range
Mica2Dot Mote
Mica2 Mote
11Mote Microprocessor
Mica2Dot Mote
Mica2Dot Mote
- Microprocessor Atmega 128
- 4 MHz clock
- UART baud rate 19200 baud
- 6 10-bit ADC channels
- Vcc 3V
- Other
- 19 pin interface
- Battery 3V coin cell
- Single programmable LED
- Microprocessor Atmega 128
- 7.3728 MHz clock
- UART baud rate 57600 baud
- 8 10-bit ADC channels
- Vcc 3V
- Other
- 51 pin interface
- Battery 2 AA 1.5V batteries
- Three programmable LEDs
12Mote Software Environment
13TinyOS 2436
- Open-source event-driven OS developed by UC
Berkeley, to support Mote WSN platforms - TinyOS applications are written in nesC a C-like
syntax programming language - TinyOS uses a set of reusable system components,
that link together to form an executable - The component library contains sensor drivers,
communication layer protocols, and DAQ tools - Component types
- Tasks computational functions
- Event Handlers respond to hardware interrupts
14UC Berkeleys Communications Stack (I)3637
- GenericComm AMStandard
- Defines Dest. Address, Handler ID, Group ID,
Msg. length - Hand off packet over the radio or UART Comm.
Channel - CC100Control
- Manages features of the radio
- Tx. power
- Tx. operating frequency
- Rx. Operating frequency
- Motes 902 928 MHz
- Channel spacing 500 kHz
- -20 dBm Tx. power 5 dBm
TinyOS v.1.1.0 release
15UC Berkeleys Communications Stack (II)40
- CC1000RadioIntM
- Byte level interface between MCU and radio
- Provides Tx. and Rx. Data transfer using the
default CSMA/CA scheme - Tx. data
- Carrier sensing using RSSI and preamble from
other nodes (SPI port) - Random back off mode if nodes senses a signal
- Rx. data
- Preamble detection, synchronization, CRC check (
SPI port) - Reject packet bad CRC, or mismatched Group ID
- Low-power listening
- Timer components toggle Tx. and Rx. periods
16Default TinyOS Message Structure38
- Default packet length 36 bytes ( 288 bits)
- Header
- Dest. address 2 bytes ( Radio/UART)
- Handler ID 1 byte
- Group ID 1 byte
- Msg. length 1 byte
- Payload
- Source address 2 bytes ( Node ID)
- Sample counter 2 bytes
- ADC channel 2 bytes
- ADC data readings 10 readings _at_ 2 bytes each
17BMAC ( Evolved MAC protocol)41
- Default contention based MAC for TinyOS v1.1.3
and beyond - Provides several features as parameters to the
upper layers of the network stack ( developers
trade-off) - Preamble length
- Left at 5 bytes, TinyOS v1.0 28 bytes
- Modified back-off mechanism
- Modified initial and congestion back-off
mechanisms
18ECC Communications Stack 3031
- Mirrors the network stack of the older Mica
Motes, modified for the Mica2Dot Motes - RadioCRCPacket
- Tx. Calculates CRC of Tx. data and appends it as
a trailer packet - Rx. Calculates CRC and checks for mismatches
- RFCommM
- Controls settings and parameters of radio
- ChannelMonEccC/ ChannelMonC
- Carrier sensing, preamble packet detection
- ChannelMonEccC calls SecDedEncoding the ECC
module
TinyOS v.1.0 modification
19Packet Delivery Issues Physical Layer
20Experiments Setup
- Experimental Model
- One event and one base station node connect to
the CPU. - Maximum distance 25 feet
- Opt. freq. 918 MHz
- Performance metrics
- Packet acceptance rate (PAR)
- RSSI
- Communication range
- Experiments
- In C6 with a LOS, vary Tx. power and distance.
- In C6 w/o a LOS, propagate through users body (
fixed Tx. power and distance). - Look at relationship between RSSI and PAR.
21LOS Varying distance and Tx. power
- Parameters
- Event sensor transmit at a rate of 1 pkts/sec
- PAR calculated by disregarding the corrupted
packets that do not pass the CRC and Group ID
checks. 46 - Results obtained after 250 packets were received.
- Conducted three times and took the average.
- Comments
- VR applications require a highly reliable comm.
system - High PERs increase latency and degrades user
interaction - Trade-off between energy efficiency and
performance - Developer must determine acceptable PERs
- Multi-hop network use lower Tx. power and more
relay sensor nodes
22Non-LOS Experiments
- Current design will require the base station
Mote to be attached to the wearable CPU on a
user worn back pack. - Event sensor nodes will have to propagate
through the users body. - Parameters are the same as the LOS experiments,
except will only consider Tx. power of 5 dBm, and
distance of 5 feet.
23Received Signal Strength Experiments (I)
- Look at the cross layer interactions between the
physical layer and the upper layer of the Mote
network stack - The MAC sub-layer of the Motes uses a carrier
sensing mechanism to determine channel state - The CC1000 transceiver generates an analog signal
(ADC channel 0), to determine the strength of the
received signal - The signal ranges from 0 to 1.2 V ( 0 strongest
possible signal strength) - In the 900 MHz ISM band the RSSI is calculated by
34
- The theoretical noise floor/ receiver
sensitivity is 105.5 dBm - Need to determine if there is a direct
correlation between the RSSI and PAR.
24Received Signal Strength Experiments (II)
- Setup
- In the Anechoic Chamber
- 5dBm Tx. power ( new battery)
- Data rate 15 pkts/sec
- Opt. freq. 918 MHz
- Dist. 5 feet
- Used the HP 8594E Spectrum Analyzer (9 kHz to
2.9 GHz), to determine the RSS. - Nodes rotated in 10 degree intervals until all 36
readings were obtained. - Two experiments
- LOS
- Non-LOS Human propagation
- Note
- 1 foot -38.25 dBm
25Received Signal Strength Experiments (III)
- Comments
- High RSSI may not guarantee a high PAR, but a low
RSSI will usually relate to a low PAR for the
sensor nodes - Event sensor node may be transmitting data but
the base station node may detect it as noise/
corrupted data ( RSSI ltlt noise floor)
26Packet Delivery Issues MAC Sub-layer
27MAC features and Tradeoffs for the C6
- Collision Avoidance
- Collision are energy inefficient and decrease
data throughput - Retransmission degrade user interaction in VR
applications - Latency
- Def. Total delay time between user-enforced
action and system response displayed on VR
application. - Latency degrades user interaction, and can cause
cyber sickness - Protocol Overhead
- Control packets and MAC headers required to
synchronize reception and transmission of payload
data - Long protocol overhead viewed as energy
inefficient and they decrease the channel
utilization - Low Power Listening
- Idle listening and overhearing energy
inefficient - Low power listening enforce a low duty cycle to
increase network lifetime ( sleep, idle, active
modes) - Tradeoff will increase latency and decrease
max. achievable data rate
28Fairness and Throughput (I)
- Setup
- Each sensor node was assigned a unique node ID.
- 5 foot radius
- Three experiments were conducted at various
workloads - 4 pkts/sec
- 10 pkts/sec
- 15 pkts/sec
- Each experiment was conducted three time to
obtain an average of the results
29Fairness and Throughput (II)
30Fairness and Throughput (III)
31Fairness and Throughput Comments
- Results are crucial for VR application developers
to understand especially when several sensor
nodes will be utilized - Configuring nodes to transmit at higher packet
rates can reduce the overall system latency, but
it degrades the ability to utilize multiple nodes
in the same channel - Ideas
- Need to interface more sensor onto the same event
sensor node - Use more than one channel for each user
- Alternative
- Developers determine minimum packet rate that
would still allow user to effectively interact
with the VR app. - Will not have to use higher packet rates which
may saturate channel
32Conclusions
- Physical layer
- It was determined that the 5 dBm was optimal
transmit power - Reduces network lifetime but improves PAR and
reliability - To use lower output power might require the use
of a multiple hop network - RSSI drops when signal has to propagate through
the user, could consider changing the location of
the base station node or multi-hop network - MAC sub-layer
- Multiple users can operate in the same channel,
different Group IDs, need to determine maximum
threshold - Reducing overhead control packets and back off
mechanism can increase the throughput and channel
utilization - Workload affected BMACs channel allocation and
fairness capabilities - More sensors on node
33Conclusions
- MAC sub-layer (cont.)
- More than one channel per user
- Developers need to be smart when the program
the nodes - Could look at other emerging MAC protocols for
WSNs, SMAC 43, PRIME 42. - Error control sub-layer
- Need to find a low complexity coding scheme that
can correct multiple or burst bit errors - Accurate models of the Motes network stack can
help to determine performance of coding schemes - Hybrid schemes might be useful but they may
require over the air reprogramming
34References