| Literature DB >> 22219675 |
Wen Hu1, Quanjun Chen, Peter Corke, Damien O'Rourke.
Abstract
We introduce an energy-efficient Rate Adaptive Media Access Control (RA-MAC) algorithm for long-lived Wireless Sensor Networks (WSNs). Previous research shows that the dynamic and lossy nature of wireless communications is one of the major challenges to reliable data delivery in WSNs. RA-MAC achieves high link reliability in such situations by dynamically trading off data rate for channel gain. The extra gain that can be achieved reduces the packet loss rate which contributes to reduced energy expenditure through a reduced numbers of retransmissions. We achieve this at the expense of raw bit rate which generally far exceeds the application's link requirement. To minimize communication energy consumption, RA-MAC selects the optimal data rate based on the estimated link quality at each data rate and an analytical model of the energy consumption. Our model shows how the selected data rate depends on different channel conditions in order to minimize energy consumption. We have implemented RA-MAC in TinyOS for an off-the-shelf sensor platform (the TinyNode) on top of a state-of-the-art WSN Media Access Control Protocol, SCP-MAC, and evaluated its performance by comparing our implementation with the original SCP-MAC using both simulation and experiment.Entities:
Keywords: energy efficient; performance evaluation; rate adaptive; wireless sensor networks
Mesh:
Year: 2010 PMID: 22219675 PMCID: PMC3247720 DOI: 10.3390/s100605548
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Mathematical notations and their values used in theoretical analysis and experiment.
| PRR | Packet Reception Rate | Varying | Varying |
| BER | Bit Error Rate | Varying | Varying |
| SNR | Signal to Noise Ratio | Varying | Varying |
| RSSI | Receiver Signal Strength Indicator | Varying | Varying |
| Date frame size in bits | 272 | 272 | |
| ACK frame size in bits | 64 | 64 | |
| The average energy per bit | Varying | Varying | |
| Noise power spectral density | Varying | Varying | |
| Data bit rate | 1.2 to 152 kbps | 9.6, 20, 38, 76 kbps | |
| Channel bandwidth | Varying | Varying | |
| Channel noise power | Varying | Varying | |
| Boltzmann’s constant | 1.38 × 10−23 J/K | 1.38 × 10−23 J/K | |
| Effective temperature in Kelvin | Varying | Varying | |
| Node energy consumption | Varying | Varying | |
| The number of neighbors | 10 | 1 | |
| Power in listening | 2.85 mA | 2.85 mA | |
| Power in transmitting | 25.4 mA | 25.4 mA | |
| Power in receiving | 15.1 mA | 15.1 mA | |
| Listening time | 11 ms | 11 ms | |
| Polling time | 12 ms | 12 ms | |
| One hop link reliability requirement | 1 | 1 |
Figure 1.Network energy consumption vs. RSSI values at different data rates. (Note the Y-axis log scale).
Pseudo-code for transmitting a data packet
| 1: | |
| 2: | |
| 3: | |
| 4: | Estimate
|
| 5: | Calculate |
| 6: |
|
| 7: | |
| 8: | |
| 9: | |
| 10: | |
| 11: | |
| 12: | |
| 13: | |
| 14: | |
| 15: | Transmit packet at data rate |
| 16: |
Pseudo-code for receiving a data packet
| 1: | |
| 2: | Collect |
| 3: | Calculate CRC |
| 4: | Stat ⇐ (CRC correct) ? 1:0 |
| 5: | |
| 6: | |
| 7: | Transmit ACK packet with RSSI and |
| 8: | |
| 9: |
Pseudo-code for receiving an ACK packet
| 1: | |
| 2: |
|
| 3: | |
| 4: | |
| 5: | |
| 6: | Stat = 1 |
| 7: | |
| 8: | |
| 9: | |
| 10: | |
| 11: | Stat = 0 |
| 12: | |
| 13: | |
| 14: | |
| 15: | |
| 16: |
Figure 2.RA-MAC. L: Polling (11 ms). T: Tone(12 ms). R: Data rate (1 byte). Pre: preamble(6 bytes). F: data frame (34 bytes). A: Acknowledgement (6 bytes). RSSI: (1 byte). PRR (1 byte).
Figure 3.RA-MAC components in TinyOS.
Figure 4.The network radio duty cycles at different traffic loads—note the log scale in Y-axis.
Figure 5.High traffic load (one packet every 2s).
Figure 6.One segment of the transmission data rate value stamps.
Figure 7.Low traffic load (one packet every 20s).
Figure 8.Two hops network (one packet every 4s).
Figure 9.RA-MAC vs. ARF.