Wireless Body Area Network Node Localization Using Small-Scale Spatial Information by Geoffrey S. Lo B.A.Sc., The University of British Columbia, 2010 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF APPLIED SCIENCE in The Faculty of Graduate Studies (Electrical & Computer Engineering) THE UNIVERSITY OF BRITISH COLUMBIA (Vancouver) September 2012 c© Geoffrey S. Lo 2012 Abstract Deploying wireless body area networks (WBANs) in the long-term at-home monitoring of a patient’s physiological and bio-kinetic conditions has become increasingly prevalent. However, such WBANs do not typically incorporate mechanisms to detect and correct for the possibility of accidentally switch- ing up wearable wireless sensor nodes (W2SNs), where a node assigned to one limb is placed on another, and vice-versa, leading to possible incorrect prognoses from interpreting the data. In this thesis, we present a new scheme to automatically identify and verify the locations of W2SNs in a WBAN. Using small-scale geospatial information, instantaneous atmospheric air pressures at each node are exam- ined and compared to map and match them in physical space. By enhanc- ing the context-awareness of WBANs, this enhancement enables unassisted sensor node placement, providing a practical solution to obtain and contin- uously monitor node locations at a sufficient resolution to recognize limb placement, without multidimensional fine-grain position information. Only a single atmospheric air pressure sensor (A2PS) is added to each W2SN; compared to existing localization techniques, no beacons or extra nodes are ii Abstract required, enabling an inexpensive and self-contained solution. To quantify and validate the accuracy, consistency and reliability of this localization scheme, a statistical analysis on a set of commercially-available air pressure sensors and an experimental prototype WBAN is conducted to examine the scheme’s performance and limitations. This study has verified that this approach is indeed capable of distinguishing between positions in- dicative of expected separation between different limbs of the patient’s body. Based on a 60cm separation between nodes, the statistical analysis consis- tently exceeded 95% accuracy within the confidence interval (CI), demon- strating great promise for incorporation into commercial WBANs. We also present and experimentally demonstrate an enhancement aiming to reduce false-positive (Type I) errors in conventional accelerometer-based on-body fall detection schemes. Our statistical analysis has shown that by continuously monitoring the patient’s limb positions, the W2SN position in- formation would enable the WBAN to better classify ‘fall-like’ motion from actual falls, where the patient requires remote caregiver assistance. iii Preface Co-Authorship Statement I hereby declare that I am the main contributor and first author of this manuscript, as well as the related papers published [1, 2] written in collabo- ration with Dr. Sergio González-Valenzuela and Prof. Victor C.M. Leung at the University of British Columbia. These papers stemmed from portions of and preliminary findings in parts of Chapters 1 – 3 of this thesis. I also led the efforts in producing a journal manuscript from the research contributions documented in Chapters 1 – 5, also co-authored with Dr. Ser- gio González-Valenzuela and Prof. Victor C.M. Leung, entitled ‘Wireless Body Area Network Node Localization Using Small-Scale Spatial Informa- tion’ and submitted August 2012 to the IEEE Journal of Biomedical and Health Informatics. My primary responsibilities in our collaboration included identifying and formulating the research questions and proposed schemes, performing litera- ture reviews to map out previous works, designing the apparatus and proto- types to support our research, collecting experimental results and data anal- iv Co-Authorship Statement yses, preparing and submitting conference papers and journal manuscripts to peer-review our initial findings and preliminary results, and preparing this thesis manuscript. The contributions of Dr. Sergio González-Valenzuela and Prof. Victor C.M. Leung included refining the research problem formulation, assisting with resolving hardware and software problems pertaining to the prototype, refining the statistical techniques used to analyze the experimental data, and providing invaluable paper and manuscript edits, revisions and suggestions. Geoffrey S. Lo v Table of Contents Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv Table of Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi List of Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . xv Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii Dedication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xviii 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 Research Contributions . . . . . . . . . . . . . . . . . . . . . 5 2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1 Types Of Sensor Networks . . . . . . . . . . . . . . . . . . . . 7 2.1.1 Wired Sensor Networks . . . . . . . . . . . . . . . . . 7 2.1.2 Wireless Sensor Networks (WSNs) . . . . . . . . . . . 8 2.1.3 Wireless Body Area Networks (WBANs) . . . . . . . . 9 2.2 W2SN Localization And Positioning . . . . . . . . . . . . . . 11 2.2.1 The Autonomy Of Current Localization Techniques . . 12 2.2.2 Distance Measurement Techniques . . . . . . . . . . . 15 2.2.3 Localization Algorithms . . . . . . . . . . . . . . . . . 19 2.2.4 Summary Of Localization Techniques . . . . . . . . . 26 2.3 Fall Detection . . . . . . . . . . . . . . . . . . . . . . . . . . 27 vi Table of Contents 2.3.1 On-Body Fall Detection Schemes . . . . . . . . . . . . 27 2.3.2 Off-Body Fall Detection Schemes . . . . . . . . . . . . 29 2.3.3 Summary Of Fall Detection Schemes . . . . . . . . . . 30 3 W2SN Location Recognition Using Small-Scale Atmospheric Air Pressure Differences . . . . . . . . . . . . . . . . . . . . . . 31 3.1 Localization Technique Overview . . . . . . . . . . . . . . . . 31 3.2 Localization Technique Validation & Results . . . . . . . . . 36 3.2.1 Selecting Appropriate Pressure Sensor Sampling Pa- rameters (1 Sensor, 1 Position) . . . . . . . . . . . . . 39 3.2.2 Verifying Assessments of Height Measurements Between Positions (1 Sensor, 2 Positions) . . . . . . . . . . . . 43 3.2.3 Verifying Assessments of Height Measurements Between Nodes (2 Sensors, 1 Position) . . . . . . . . . . . . . . 47 3.2.4 Validating Assessments of Height Measurements in a WBAN (2 Sensors, 2 Positions) . . . . . . . . . . . . . 50 3.3 Localization Technique Discussion & Limitations . . . . . . . 53 4 Enhancing Accelerometer-Based Fall Detection Schemes With Limb Position Tracking . . . . . . . . . . . . . . . . . . . . . . 55 4.1 Fall Detection Overview . . . . . . . . . . . . . . . . . . . . . 56 4.2 Fall Detection Hypothesis Testing . . . . . . . . . . . . . . . 56 4.2.1 Enhancement Scheme Overview . . . . . . . . . . . . . 57 4.3 Fall Detection Enhancement Experimental Approach . . . . . 58 4.4 Fall Detection Enhancement Experimental Results . . . . . . 61 4.4.1 Scenario 1: Walking . . . . . . . . . . . . . . . . . . . 61 4.4.2 Scenario 2: Walking Up/Down Stairs . . . . . . . . . . 64 4.4.3 Scenario 3: Sitting Down . . . . . . . . . . . . . . . . 67 4.4.4 Scenario 4: Lying Down . . . . . . . . . . . . . . . . . 68 4.4.5 Scenario 5: Fall Onto Ground . . . . . . . . . . . . . . 70 4.5 Fall Detection Enhancement Discussion & Limitations . . . . 71 5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 5.1 Summary Of Contributions . . . . . . . . . . . . . . . . . . . 78 5.2 Future Direction . . . . . . . . . . . . . . . . . . . . . . . . . 80 5.3 Final Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 vii Table of Contents Appendices A Experimental Setup . . . . . . . . . . . . . . . . . . . . . . . . 91 B Algorithm Addendum . . . . . . . . . . . . . . . . . . . . . . . 98 viii List of Tables 3.1 Sampling window and number of samples N vs. mean & spread of pressure measurements, and goodness of fit with a Gaussian Distribution, given 1 node at 1 position . . . . . . . . . . . . . 41 3.2 Comparing the measured pressures distribution with 1 sensor at 2 positions, using a two-sample T-test . . . . . . . . . . . . 44 3.3 Baseline comparison of the measured pressures distribution with 1 sensor at the same position . . . . . . . . . . . . . . . . 45 3.4 Comparing the measured pressures distribution with 2 sensors at 1 position, using a two-sample T-test . . . . . . . . . . . . 48 3.5 Comparing the measured pressures distribution with 2 sensors at 2 positions with linear offset correction, using a two-sample T-test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 4.1 Scenario 1: Walking - comparing the measured pressures at the arm and leg (after linear offset correction), using a two- sample T-test . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 4.2 Scenario 2A: Walking Up Stairs - comparing the measured pressures at the arm and leg (after linear offset correction), using a two-sample T-test . . . . . . . . . . . . . . . . . . . . 66 4.3 Scenario 2B: Walking Down Stairs - comparing the measured pressures at the arm and leg (after linear offset correction), using a two-sample T-test . . . . . . . . . . . . . . . . . . . . 66 4.4 Scenario 3: Sitting Down - comparing the measured pressures at the arm and leg (after linear offset correction), using a two- sample T-test . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.5 Scenario 4: Lying Down - comparing the measured pressures at the arm and leg (after linear offset correction), using a two- sample T-test . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 ix List of Tables 4.6 Scenario 5: Falling Onto Ground - comparing the measured pressures at the arm and leg (after linear offset correction), using a two-sample T-test . . . . . . . . . . . . . . . . . . . . 70 4.7 Summary of Tables 4.1–4.6 enabling a comparison between the estimated pressure differences and T-Test p-values of two positions for the ‘fall-like’ scenarios replicated . . . . . . . . . 74 x List of Figures 2.1 An example wireless body area network (WBAN) platform, illustrating possible on-body sensor types and its environment [3] ( c©2009 IEEE) . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.2 An example of the centroid approach, where five location- aware nodes are defining the area to determine location S, approximated as S ′ [4] ( c©2007 IEEE) . . . . . . . . . . . . . 21 2.3 Triangulation and an example showing the impact of measure- ment errors [4] ( c©2007 IEEE). In (a), the three radii of each of the nodes intersect perfectly at location S. However, in (b), when the distance measurements have errors, the three radii do not intersect at one point, thus S is not a unique point, but the region of intersections, thus limiting accuracy. . . . . . 21 2.4 Dividing the body into 10 regions for placement of sensors in time-series analysis and the use of pattern recognition to determine which region the measured signals correspond to [5] ( c©2011 IEEE) . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.5 Example of an on-body fall detection system, where a ‘fall’ is detected by an accelerometer using pre-defined threshold triggers [6] ( c©2007 Elsevier) . . . . . . . . . . . . . . . . . . . 28 2.6 Example of an off-body fall detection system, where a skeleton is extracted from an image of the body with localized joints and limbs [7] ( c©2004 IEEE) . . . . . . . . . . . . . . . . . . . 29 3.1 Visual representation of the change in atmospheric pressure with altitude, described by the hypsometric equation, from http://www.physicalgeography.net/fundamentals/7d.html ( c©2006 Michael Pidwirny). Our proposed scheme operates on the principle of being in the ‘troposphere’ region, between 0- 11km from sea level, where the ISA model assumes a constant L and g. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 xi List of Figures 3.2 Overview of the wearable wireless sensor node (W2SN) loca- tion identification and mapping technique described in Chap- ter 3. (a) First, pressure readings at each W2SN are taken simultaneously by atmospheric air pressure sensors (A2PSs). (b) Next, the pressure readings are compared and mapped in- order to physical space described in Eqn 3.1. Each colored circle in this figure represents a single W2SN; #1 in red and #2 in blue. (c) Given a set of pre-defined W2SNs, (d) the pressure readings are mapped to the patient’s body based on the expected position of his/her limbs. . . . . . . . . . . . . . 34 3.3 Topology of WBAN platform, showing W2SN placements on body, used to experimentally validate node localization tech- nique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 3.4 Photograph of a prototype W2SN and its components con- structed from adapting the digital sensor platform created for Parkinson’s disease tremor measurements [1] . . . . . . . . . . 35 3.5 Expected probability distribution functions (PDFs) of A2PS readings for each of the validation procedures outlined in Sec- tion 3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.6 Expected cumulative distribution functions (CDFs) of A2PS readings corresponding to Figure 3.5 . . . . . . . . . . . . . . 38 3.7 Probability plot showing goodness of fit with a Gaussian Dis- tribution for varying sample window sizes between 1s and 60s 42 3.8 Empirical CDF Plot of measured pressures with 1 sensor at 2 positions, showing that the A2PS can reliably distinguish between the two positions . . . . . . . . . . . . . . . . . . . . 46 3.9 Empirical CDF Plot of measured pressures with 2 sensors at 1 position, showing the offset between two different pieces of hardware which must be accounted for . . . . . . . . . . . . . 49 3.10 Empirical CDF Plot of measured pressures with 2 sensors at 2 positions, corrected relative to Node N2, to enable comparison with the 1-sensor 2-position Empirical CDF (Fig. 3.8) . . . . . 52 4.1 Expected accelerometer and A2PS data behavior under vari- ous typical at-home movement events . . . . . . . . . . . . . . 59 xii List of Figures 4.2 Scenario 1: Walking - Arm and leg acceleration, air pressure, inferred altitude. A2PS readings at the arm and leg nodes remain distinctively different to distinguish between the two traces, despite small localized fluctuations. (Sampling win- dows used for statistical analysis boxed in green) . . . . . . . . 62 4.3 Scenario 2: Walking Up/Down Stairs - Arm and leg accel- eration, air pressure, inferred altitude. While A2PS readings show the wearer gaining and losing altitude to provide con- text, once again, the arm and leg nodes remain distinctively different from each other despite small fluctuations. . . . . . . 65 4.4 Scenario 3: Sitting Down - Arm and leg acceleration, air pres- sure, inferred altitude. From the A2PS readings, the arm and leg nodes move closer together while the wearer sitting down. However, the difference in A2PS readings is still present, im- plying that the sensors are still vertically some distance apart, and that the wearer is not lying down. . . . . . . . . . . . . . 75 4.5 Scenario 4: Lying Down - Arm and leg acceleration, air pres- sure, inferred altitude. The period in which the test subject was lying down can clearly be seen by the overlapping arm and leg node A2PS readings. This overlap suggests that the two nodes are vertically at the same height. . . . . . . . . . . 76 4.6 Scenario 5: Falling Onto Ground - Arm and leg acceleration, air pressure. Once again, the period in which the test subject was lying down can clearly be seen by the overlapping arm and leg node A2PS readings. Since lying down and falling over both result in the wearer’s arm and legs to be horizon- tal, we must analyze the preceding impact detected by the accelerometers, as extensively studied in previous works. . . . 77 A.1 Schematic of the PCB developed for our prototype W2SN to connect the Inter-Integrated Circuit (I2C)-enabled digital sensors to the TelosB mote – GYRO1 to an ITG3200 digital gyroscope, ACC1 to an ADXL345 digital accelerometer, and BMP1 to a BMP085 digital air pressure sensor. Pin configu- rations for each sensor were based on the Sparkfun breakout board designs. Pull up resistors were required for the I2C bus to operate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 xiii List of Figures A.2 PCB layout of the schematic illustrated in Fig. A.1. See Fig. 3.4 for a photograph of an assembled prototype W2SN. . . . . 96 A.3 Screenshot of MATLAB GUI developed for our prototype WBAN to display and capture W2SN readings. On the left, the two colored dots provide a spatial representation of the interpreted node positions. On the right, a time trace is provided from the acceleration or atmospheric air pressure for one of the nodes. 97 xiv List of Abbreviations AoA Angle of Arrival APIT Approximate Point-In-Triangulation Test A2PS atmospheric air pressure sensor BAN body area network CDF cumulative distribution function CRB Cramér-Rao bound CI confidence interval ECG electrocardiography ESD enhanced steepest descent GOF goodness of fit GPS global positioning system I2C Inter-Integrated Circuit MCU microcontroller unit MDS multidimensional scaling MEMS micro-electromechanical systems PDF probability distribution function RF radio frequency RSS received signal strength xv List of Abbreviations SE standard error (of the difference between two means) SVM support vector machine TDoA Time Difference of Arrival ToA Time of Arrival WBAN wireless body area network WPAN wireless personal area network WSN wireless sensor network W2SN wearable wireless sensor node xvi Acknowledgements I wish to extend my deepest thanks to my supervisor Professor Victor C.M. Leung, and my mentor and former post-doctoral fellow Dr. Sergio González- Valenzuela for their continued help, support and inspiration. It would not have been possible to perform and complete this research and thesis without their mentorship and guidance. I also wish to thank Professor Z. Jane Wang and Professor Shahriar Mirabbasi for serving on my M.A.Sc exam committee and providing invaluable feedback. Research performed and documented in this thesis was supported by the National Sciences and Engineering Research Council of Canada (NSERC) under grant 365208-08. My thanks to IEEE, Elsevier and Dr. Michael Pidwirny (UBC Okanagan) for their permission to include figures from their works in this thesis. xvii Dedication I lovingly dedicate this thesis to my family, to whom I am greatly indebted. “It is almost always wrong that the time isn’t ripe to decide something. That is always said of difficult problems.” —Chris Patten xviii Chapter 1 Introduction This manuscript presents and experimentally verifies a new approach to en- able wireless body area networks (WBANs) to automatically and instantly map its wearable wireless sensor nodes (W2SNs) to the limbs of the wearer’s body in physical space. The importance and value of having such contextual information is explained in the remainder of Chapter 1. The extents to which localization techniques are currently applied to WBANs and wireless sensor networks (WSNs), and the development of personal fall-detection systems will be surveyed in Chapter 2. In Chapter 3, our new approach is docu- mented in more depth, and validated experimentally using statistical verifi- cation analyses to ensure applicability, accuracy and feasibility. In Chapter 4, this manuscript explores the benefit of augmenting limb position tracking to the long-term at-home WBAN ambulatory monitoring application of on- body fall detection. Finally, this manuscript shall conclude with a summary of findings and possible future directions in Chapter 5. 1 1.1. Motivation 1.1 Motivation WBANs are becoming increasingly plausible and prevalent solutions for on- body health monitoring and diverse medical applications [8–11]. This can be largely attributed to the decreasing physical size, production costs and power consumption of micro-electromechanical systems (MEMS) sensor technology. Traditional wired body area network (BAN) health monitoring systems ful- fill the aim of being apt for short and long-term use. However, there is a widespread consensus that replacing wired devices with W2SNs, placed specifically on the patient’s body to measure vital signs, is more desirable as per the inherent freedom of movement that the wearer gains, particularly for at-home monitoring applications. These externally-worn nodes often take the form of armbands, leg straps, and adhesive pads to allow for easy re- moval prior to activities such as showering and swimming, where the nodes may interfere or malfunction. However, this added flexibility increases the chance of misplacing W2SNs after a certain activity is finished and they need to be worn again. A patient could muddle up the nodes, causing for example the arm node to record leg motion, and vice versa. Depending on the nature of the long-term monitoring and the frequency at which data is analyzed by the clinician or caregiver, node misplacement could yield conflicting data with the expected patterns at the intended node location. For example, a clinician analyzing arm and leg tremors for dyskinesia symptoms in Parkinson’s disease patients (as described 2 1.1. Motivation in [2]) may collect inconsistent data if the sensors’ physical placements over the patient’s limbs mismatch their correct target locations. Currently, W2SNs are typically manually programmed for collecting data consistent with certain locations of a patient’s body, such as an arm or leg. Sensor nodes have limited self-identification capability, and there are no widely used mechanisms to enable the WBAN to detect node placement. One could argue that nodes could be labelled, color-coded, or specific in- structions could be provided to patients. However, requiring patients to perform complicated setup procedures on a daily basis is impractical, and relying solely on the wearer’s skill to place labeled W2SNs is at best unreli- able – human error, including forgetfulness, inattention, or moral weakness, is a significant cause or contributing factor to erroneous data [12]. Incorrect placement of m-health WBAN sensors could lead to inaccurate or incorrect prognoses. Thus, simplicity is crucial for the ideal self-worn system. For these reasons, designing a system of W2SNs with placement-awareness capabilities to enable seamless integration becomes highly desirable. Our proposed solution lies in adding a MEMS atmospheric air pressure sen- sor (A2PS), a small device similar in size to other MEMS sensors such as accelerometers and gyroscopes and widely used in WBANs today, to each W2SN. A2PSs would enable the WBAN to measure and track the air pres- sure at each W2SN location. Minimal patient intrusiveness is achieved, since the wearer could worry less about the chance of accidentally swapping or muddling up W2SNs – the WBAN would automatically identify placement of 3 1.1. Motivation each W2SN relative to one another in absolute space, each time the nodes are (re)placed, in order to dynamically assign their corresponding tasks. Nodes worn around the body already frequently consist of identical and interchange- able hardware to minimize design and manufacturing cost, so this advantage can be used to eliminate the need to designate specific nodes for specific locations. Many long-term health and medical applications, including rehabilitation and ambulatory monitoring [10, 11], could also greatly benefit from being aware of the locations of its W2SNs. This manuscript explores augmenting on-body accelerometer-based fall detection systems with sensor node loca- tions discussed above. This is to enable the WBAN to make a better decision on whether a fall has occurred – not only based on the characteristics of the impact as detected by accelerometers, but also taking into consideration the patient’s current body position and ‘limb arrangement’ for a more informed picture of his or her condition and situation. The main objective of the research in this thesis is to analyze and report on a newly conceived sensor node localization technique designed to make WBAN more widely accepted, and explore a WBAN application where such a technique would greatly improve the system towards mass adoption. 4 1.2. Research Contributions 1.2 Research Contributions The schemes developed and documented in this manuscript target WBANs used in the long term at-home monitoring of elderly patients, and patients with chronic conditions. The core research contributions of my thesis are: 1. Experimentally verifying a new scheme enabling W2SNs to au- tomatically perform sensor node localization and limb recog- nition, by identifying and tracking the vertical arrangement of WBAN nodes. (Chapter 3) • Currently, localization and ranging techniques cannot provide lo- cation information in absolute and physical space, without pre- placed location beacons, either on-body or off-body. As well, cur- rent pattern recognition techniques often yield inconsistent or un- reliable information, notwithstanding the requirement of extensive offline processing (Section 2.2). • Our new scheme aims to achieve a similar goal by avoiding these limitations. This thesis shall analyze and quantify the perfor- mance of the proposed W2SN placement verification scheme, by ensure that the output of A2PSs used consistently produces ac- curate, consistent and reliable data. The context awareness of WBANs may then be extended to provide enhanced error detec- tion and correction for sensor node placement. 5 1.2. Research Contributions 2. Improving accelerometer-based fall detection performance, by augmenting the extensively studied impact detection mecha- nism with limb position information and patient body state. (Chapter 4) • Once the newly proposed sensor node localization technique in Section 2.2 has been verified, applications in today’s WSN sys- tems can be augmented to further improve the quality of contex- tual information, and enable the system to make a better decision based on a new dimension of data. • Specifically, today’s on-body at-home fall detection and ambu- latory monitoring schemes typically comprise of accelerometers, where a spike in z-axis acceleration signifies a fall or impact. How- ever, routine daily activities could also result in accelerometer spikes with similar characteristics (Section 2.3), generating ‘false- positive’ falls. Thus, such systems could greatly benefit from addi- tional contextual information (the position of the patient, if he or she is standing up or lying down immediately following detected impact) if this enables the system to better preclude whether or not a fall has occured, or reduce the false detection. 6 Chapter 2 Background This chapter reviews the current state-of-the-art techniques surrounding sen- sor node localization and patient fall-detection systems, and discusses oppor- tunities for improvement that have motivated our research. 2.1 Types Of Sensor Networks Sensor networks consist of a group of interconnected and spatially-distributed sensors, deployed to measure and monitor physical and environmental pa- rameters [13]. Typical sensors used in such networks could provide infor- mation such as temperature, kinetic motion (through accelerometers and gyroscopes), ambient light, sound, pressure, and material stress. A data ag- gregator node serves as a gateway and is used to collect data from the sensor nodes for viewing or storing-and-forwarding to a remote system. 2.1.1 Wired Sensor Networks Traditionally, wired sensor networks have been employed to collect informa- tion from different locations, due to the developed technology and higher 7 2.1. Types Of Sensor Networks available bandwidth. For short-term monitoring applications, where sensors are frequently moved around or re-used, a wired multi-node system may be inconvenient. Setup and removal may introduce additional wiring costs and/or error, due to the need to repeatedly attach and remove wires [8]. For long-term applications, such as seismic monitoring in remote locations, it may be impractical to run wires to the desired sensor placement locations. This has led to wireless solutions being preferred for such applications. 2.1.2 Wireless Sensor Networks (WSNs) By employing wireless radios, WSNs each sensor node can communicate with one another without a physical data link connection. Primary design con- siderations include computation, energy and communication (placement for optimum routing and signal quality) constraints [14, 15]. Key developments fueling the large scale adoption of WSNs include wireless personal area net- work (WPAN) protocols such as the Bluetooth R© and ZigBee R© [16], as well as the unified software platforms such as TinyOS R©, a lightweight open-source operating system created by UC Berkeley [13]. Today, typical applications of WSNs include military [17], environmental (such as forest fire detection and earthquake sensing) [17, 18], industrial and agriculture (such as inven- tory tracking) [19], and home automation (including smart environments and ambience control) [20, 21]. The main advantage of implementing a WSN over traditional wired coun- terparts is the lack of wires. Requirements and considerations include indoor- 8 2.1. Types Of Sensor Networks outdoor operation, high power efficiency, high accuracy and reliability, and the ability to make do with existing infrastructure [22] due to cost and/or feasibility. In designing WSNs, one must consider issues such as the tradeoff between power consumption and processing power, coexistence among sen- sor nodes and different networks, and the multiple access of wireless channels [15, 22, 23]. 2.1.3 Wireless Body Area Networks (WBANs) WBANs typically consist of a group of collaborating W2SNs, strategically placed on, near, or within several locations of a human body, or even a combination (Fig. 2.1) [3, 9–11]. W2SNs are primarily deployed to moni- tor human physiological and bio-kinetic conditions and can provide context awareness [3]. A single node may comprise of many different types of sensors to assist in location discovery and enable smarter and more aware sensor networks. Common applications of WBANs include healthcare (such as re- habilitation and ambulatory monitoring) [10], fitness and entertainment [3]. Recent significant traction in on-body medical applications has focused such systems on pervasive long-term patient monitoring scenarios involving the collaboration of physicians, nurses, psychologists and sociologists [3, 8]. The advent of WBANs as a separate class originated from the realization of the differences in the human body compared to traditional applications and environments in which WSNs are used [9, 10, 13, 24]. Whilst many design considerations and challenges are shared with WSNs, sensor nodes 9 2.1. Types Of Sensor Networks Figure 2.1: An example WBAN platform, illustrating possible on-body sensor types and its environment [3] ( c©2009 IEEE) designed for WBANs should also: • Be small and extremely non-intrusive, to maintain patient comfort and minimize inconvenience to maintain appeal [10, 24]. Compared to tra- ditional WSNs, smaller and more energy efficient batteries and designs are often required. Thus, the tradeoff between processing and commu- nication power versus battery life is crucial. 10 2.2. W2SN Localization And Positioning • Contain components bio-compatible with the wearer’s body [3]. For example, in the US, FCC (Federal Communications Commission) cer- tification and FDA (Food and Drug Administration) approval and cer- tification may be required. • Not rely on having tens or hundreds of nodes. Unlike traditional WSNs [25–27], WBANs are usually deploy to measure and monitor vital signs sensors worn on a patient’s body, and typically only have a handful of nodes. • Implement additional system security. For example, more extensive authentication measures may be required to protect sensitive patient information and ensure privacy [10]. In comparison, WSNs used for environmental monitoring may not be recording personal data. • Be self sufficient. Components of the WBAN may be placed less ac- cessibly, for example, implanted into a patient’s body. Thus, the nodes must be reliable and be able to recover from errors by itself as much as possible [24]. 2.2 W2SN Localization And Positioning The importance of accurate node placement is intensified in WBANs, com- pared to other types of WSNs. One reason is that most WSNs are deployed once and remain static in the same physical location for its lifespan. For ex- 11 2.2. W2SN Localization And Positioning ample, WSNs used to monitor seismic activity are expected to remain in the same locations, after installation at predetermined locations, for its entire useful life. In contrast, the nodes of a WBAN with are expected to be placed and removed from a patient quite frequently [8, 10]. Placement errors asso- ciated with this could range from minor positioning errors, such as a node not centered properly on the patient’s wrist, to the muddling up of nodes, such as where a node designed to monitor leg activity was incorrectly placed on the patient’s arm. This section shall provide overviews of the different extents of autonomy regarding node localization (Section 2.2.1), and distance measurement tech- niques (Section 2.2.2) and localization algorithms (Section 2.2.3) currently employed by wireless nodes. 2.2.1 The Autonomy Of Current Localization Techniques The term localization encompasses a set of techniques, mechanisms and al- gorithms used to measure and obtain the spatial relationship of WSNs, with reference to our physical world [22]. One method of classifying localization techniques is by its degree of autonomy in providing location information, for example, automatic, semi-automatic (beacon-assisted), and manual. Au- tomatic localization is where all nodes are able to identify their own location completely by themselves, such as a global positioning system (GPS) re- 12 2.2. W2SN Localization And Positioning ceiver (Section 2.2.2.4). Typically, these systems are fully autonomous and involve no human interaction. Semi-automatic localization involves some sensor nodes in the system being able to discover their own location on their own, known as beacons or anchor nodes, and infers relative location informa- tion to less-capable nodes with no automatic localization capability. Manual localization involves the user or caregiver setting the location information associated with each node by-hand, and such nodes make no effort to verify the user’s input. Alternatively, localization techniques can also be classified as active (using signal-emitting techniques) and passive (non-signal emitting or emitting signals on an alternate channel) [22]. Automatic Localization To support the idea of a fully-autonomous WBAN, sensor nodes should ide- ally be able to identify their own location quickly and accurately. In designing BANs towards the goal of being autonomous and fault-tolerant, the accurate positioning of sensors is one of the most important factors to ensure reliability and accuracy [23]. For example, in one wireless electrocardiography (ECG) system, the placement of the three sensor pads in [28] was shown to have a strong effect on the quality of the 12-lead ECG signal generated. Semi-Automatic (Beacon-Assisted) Localization This approach involves a small number of nodes known as beacons or anchor nodes [29], which can obtain their physical location either autonomously, or 13 2.2. W2SN Localization And Positioning by being placed at predefined locations and location information set man- ually. These beacons then combine this absolute location information with relative distances obtained with other techniques, such as by inferring dis- tance using the received signal power between a beacon and another node as per Section 2.2.2.1. Semi-automatic localization is typically considered an acceptable tradeoff today between location accuracy and feasibility, partic- ularly with larger networks with many nodes where it may not be practical to manually configure each nodes location information prior to each deploy- ment. Manual Localization Traditionally, manual hand placement of sensors has been acceptable for WBAN systems due to relatively few nodes being employed in each system. As well, trained experts and caregivers such as physicians are expected to proficiently setup these system on a patient’s behalf. However, as appli- cations of WBANs extend from in-clinic applications to at-home scenarios where patients are expected to place and take off W2SNs on their own [8], safeguards must be in place to minimize incorrect placements, for example a patient muddling up sensor pads, especially if the W2SNs used in a WBAN could be physically identical and not easily distinguishable from one another. Correct node placement is particularly important for applications like ECG, where even a small misplacement would severely affect results [28]. 14 2.2. W2SN Localization And Positioning 2.2.2 Distance Measurement Techniques Location discovery and awareness techniques have been investigated exten- sively for WSNs in general. However, as explained in Section 2.1, such lo- calization techniques are typically used for to determine node placement to ensure good transmission properties where importance is placed on the rout- ing of network traffic [14, 26, 27, 30], as opposed to mapping and pinpointing physical sensor placement. This section discusses some of today’s most preva- lent distance measurement techniques, their advantages and disadvantages, and explores the feasibility of applying such techniques to perform localiza- tion of WBAN nodes. It is worth noting that most of the techniques dis- cussed, with the exception of GPS in Section 2.2.2.4, provide non-absolute spatial information -- as such, only relative distances can be inferred, not orientation. Radio Signal Strength Measurement One of the most common techniques to estimate the distance between two nodes is by inferring distance d from the measured received signal strength (RSS) of the radio, using the relation RSS = 1/dn where n is the path loss ex- ponent [4, 22]. In open space, n is approximately 2, whereas near the ground, n is closer to 4. Under conditions such as waveguide and corridors, n can be less than that for free space, such as 1.5 [22]. Unfortunately, this method pro- duces distance estimates of relatively low accuracy, as it is highly prone to un- certainty due to the random nature of the wireless channel, caused by effects 15 2.2. W2SN Localization And Positioning including multipath propagation effects, including wave reflection, diffrac- tion and scattering, as well as shadowing [4]. To improve accuracy, studies have been performed; for example, [31] investigates obtaining a Cramér-Rao bound (CRB) to compare minimum attainable variances of unbiased sen- sor location estimators. Nonetheless, since no extra hardware is required, using RSS to infer the approximate range between nodes is simple and inex- pensive, and suffices in situations where merely ‘in-range’ or ‘not-in-range’ measurements are required [22]. For example, given a Bluetooth R© WPAN where a cellular phone is paired to a hands-free wireless headset, to deter- mine whether incoming calls should be routed to the headset or remain on the phone, the RSS of the headset is checked to determine whether or not the headset has come into range. In applications where an exact absolute physical location is required, to place the relative locations obtained using this method in absolute reference, a beacon in the WBAN with its position known can be used together with other nodes to infer relative locations using RSS [32], for example an extra node placed outdoors with GPS capability. However, requiring an extra stationary node may not be practical for mobility reasons, particularly for WBANs. Radio-Based Time Of Flight Measuring the time of flight of a radio signal is also frequently employed. ‘Fine-grained’ techniques such as Time of Arrival (ToA) and Time Differ- ence of Arrival (TDoA) examine the radio signal travel time between the 16 2.2. W2SN Localization And Positioning transmitter and receiver, and are frequently coupled with techniques to re- duce estimation error [4, 23, 29, 32]. Such techniques can be significantly more precise than measuring RSS, as using ToA and TDoA for localization is less sensitive to physical effects compared to measuring and comparing signal strength [23]. However, the main challenges with measuring time of flight involve signal synchronization and obtaining high precision measure- ments of the times. This translates into a tradeoff between distance accuracy and sophisticated hardware requirements; ToA ranging requires a dedicated high speed timer, and powerful microcontroller unit (MCU) for computation. Ultrasound-Based Time Of Flight Instead of applying time of flight techniques radio frequencies used by the nodes for transmission, acoustic techniques such as ultrasound have also been explored as a means to approximate the range between nodes of a WBAN [4, 22]. Due to the relatively slow propagation of sound1, low-cost sensors could be employed to perform the measurement. However, for systems where extra hardware cannot be introduced, this may not be feasible. As well, ac- curate distance measurements using ultrasound would require nodes to be in direct line of sight, which may not be practical if nodes are to be mounted around a patient’s body; for example, some sensors could be on the front side of the body, while others on the back side. Also, the disadvantage of requir- ing a powerful MCU for computation still persists [23]. Another localization 1the speed of sound is approximately 343 m/s in dry air at room temperature 17 2.2. W2SN Localization And Positioning technique exploring ad-hoc node positioning used Angle of Arrival (AoA) [33], where antenna arrays or a series of ultrasound sensors have been com- plemented to improve the accuracy of distance estimations by being able to sense the direction from which signals are received. This method provides not only positioning, but also orientation information of the nodes. However, without an anchor node, the topology generated would still be ‘floating’ and not ‘fixed’ to the earth’s absolute coordinate frame. Global Positioning System Receivers A variation of radio-based time of flight (Section 2.2.2.2) involves the use and multilateration of geosynchronous satellites in the earth’s orbit, instead of relying on other nodes in the WBAN [4]. This can be considered as a form of semi-automatic localization. The use of GPS receivers in recent years has been particularly popular in the area of consumer electronics. These devices utilize GPS satellites to triangulate the user’s location, with applications ranging from portable navigation devices used in automobiles, to Internet- enabled smartphones allowing users to check-in’ to places for coupons and deals. However, the main problem of using GPS receivers in WBANs is that a clear and relatively unobstructed view of the sky is required for maximum accuracy, as satellite triangulation heavily relies on being in an outdoor envi- ronment with satellite line of sight [4, 23, 33]. GPS localization performance is heavily diminished indoors or in urban areas surrounded by skyscrapers. Clearly, a WBAN cannot be expected to be operating outdoors all the time. 18 2.2. W2SN Localization And Positioning Even then, consumer GPS technology is only accurate in the range of 3 to 15 meters. This is insufficient for WBANs, as nodes are placed inches apart; whereby navigation devices operate over cities or continents, WBANs oper- ate over the height of a human body. Coupled with the relative high cost and high power consumption of GPS chipsets [21], the use of GPS receivers to provide location awareness of individual W2SNs is highly unsuitable. 2.2.3 Localization Algorithms From Section 2.2.2, we see that a wide range of algorithms have been de- veloped for WSNs to compute localization information. Some of the main challenges include measurement error, distance measurement range limita- tions and computation cost [4], and these factors would limit their success and effectiveness in being deployed in WBANs, especially when sensor node localization is required to map and pinpoint the physical locations of W2SNs, as opposed to simply determining a logical topology for optimum routing and transmission [14, 26, 27, 30]. The following algorithms outline how to uti- lize the different distance measuring techniques from Section 2.2.2 for node localization: Area-Based Algorithms Area-based algorithms typically estimate sensor positions from wireless radio connectivity, by determining whether or not two nodes are within range of each other. This is easily accomplished using RSS and signal power thresh- 19 2.2. W2SN Localization And Positioning olds, as discussed in Section 2.2.2.1. One method is to employ grid techniques and anchor nodes or beacons [29]. In this semi-autonomous topology, nodes with their locations known are arranged in a relatively densely-distributed grid. The distance of a nearby node is estimated as the center of the poly- gon area of surrounding in-range beacons. This is known as the centroid approach [4], where localization accuracy is determined by the size of the polygon area (Fig. 2.2). Smaller polygons are possible by reducing the transmission power and range, which however, affects how far apart nodes can be placed. Extensions to the centroid approach, such as the Approximate Point-In-Triangulation Test (APIT) algorithm have been developed to im- prove localization accuracy by exploiting beacon redundancy [4, 34]. How- ever, APIT requires a very large number of densely placed nodes [34], and since WBANs typically have fewer nodes than traditional WSNs, this may not be practical. Distance-Based Algorithms Distance-based algorithms utilize the knowledge at each sensor node and compare this knowledge between pairs of nodes. These algorithms can be classified as global optimization algorithms, multilateration algorithms, or recursive algorithms [4]. • Multilateration, an extension and generalization of trilateration, in- volves computing approximate node locations using geometries of spheres and triangles to calculate and map adjacent nodes (Fig. 2.3). Al- 20 2.2. W2SN Localization And Positioning Figure 2.2: An example of the centroid approach, where five location-aware nodes are defining the area to determine location S, approximated as S ′ [4] ( c©2007 IEEE) Figure 2.3: Triangulation and an example showing the impact of measure- ment errors [4] ( c©2007 IEEE). In (a), the three radii of each of the nodes intersect perfectly at location S. However, in (b), when the distance mea- surements have errors, the three radii do not intersect at one point, thus S is not a unique point, but the region of intersections, thus limiting accuracy. 21 2.2. W2SN Localization And Positioning gorithms using multilateration techniques aim to minimize the error between measured and approximated locations using at least three beacons by distance-fitting [4, 21]. Minimization can be performed using techniques such as steepest gradient descent, enhanced steepest descent (ESD) and non-linear conjugate gradient. Multilateration al- gorithms rely heavily on accurate average hop distances and cannot tolerate large distance measurement errors. Unfortunately, the perfor- mance for anisotropic networks or systems with complex topologies is subpar, due to cumulative range error [29]. A multi-hop approach is proposed to estimate the shortest path distance between a node and a beacon multiple hops away, which borrows its iterative computation idea to improve performance from distance vector routing [4, 22]. • Global optimization approaches are frequently advocated in scenar- ios where too few beacons or anchor nodes are immediate neighbors to nodes requiring distance information [4], making recursion infeasible. One suggested approach is the use of multidimensional scaling (MDS) [4, 29], a statistical technique to map sensors in 2D and 3D space. Such algorithms estimate distances by solving an objective function in a minimization problem, and only require a handful of anchor nodes. Different MDS algorithms have been suggested, including the classi- cal optimization problem described above, and a more robust version which can recover the coordinates of nodes without complete distances and with fewer anchor nodes [35]. MDS can perform better than mul- 22 2.2. W2SN Localization And Positioning tilateration approaches, but the tradeoff is its high computation cost. • Recursive algorithms are frequently proposed to overcome short range requirements in previous techniques. Beacons iteratively re- broadcast themselves, after their locations are accurately identified, as new beacons’ to link up with more nearby sensors [4]. However, such algorithms require very accurate individual distance measurements to minimize the cumulative errors could result, and perform very poorly when nodes are placed in straight lines or in a concave area [4]. Radio Transmission Learning Models Kernel-based learning is an example of an approach which, instead of using distance information between pairs of sensor nodes, attempts to utilize dis- tributions of radio signal patterns measured by the beacons [4] to train a sensor localization classification function which makes decisions on whether or not nodes are located in certain regions, similar to techniques commonly used with radio frequency (RF) indoor tracking systems. This approach is deemed more robust, particularly for densely deployed sensor networks, be- cause the classification function incorporates interference in the network’s environment. For enhanced performance, one could set up this technique such that multiple overlapped regions are defined, and a node’s position can be identified as the intersection of such regions [4]. However, accurate results may not be produced using such techniques if the network does not have a sufficient number of nodes, which again, cannot be presumed for WBANs. 23 2.2. W2SN Localization And Positioning Pattern Recognition and Time-Series Analysis An alternative learning approach to measuring relative distances or radio re- ceived signal powers between nodes is through the use of pattern recognition and time series analysis [5]. This technique involves dividing up the patient’s body into pre-defined ‘regions’, and WSNs will be matched to the correct region. In [5], kinetic motion is captured at various locations on the patient’s body using accelerometers (Fig. 2.4), and by using mixed supervised and unsupervised learning time series analysis methods, an support vector ma- chine (SVM) is used to analyze motion patterns and, based on the motion patterns of different limbs, estimate a ‘map’ of W2SNs and their correspond- ing location with a certain degree of confidence. Experimental results were obtained using 25 subjects, and with 30 minutes of data each, an average 89% accuracy was obtained. However, the attained accuracy depended heavily on the limb being measured. For example, the shin area produced nearly perfect results, but identifying the head area was done least accurately. As well, the system is unsuitable for real-time mapping and identification of W2SNs, a key characteristic required by WBANs [10], because it required 30 minutes of motion data plus additional off-body processing and analysis, due to the time period involved and complexity of the SVM. Off-body limb recognition methods have also been explored, where the face and upper-body limbs are recognized and tracked using a video camera in real-time [36, 37]. However, due to the extensive amount of image pro- 24 2.2. W2SN Localization And Positioning Figure 2.4: Dividing the body into 10 regions for placement of sensors in time-series analysis and the use of pattern recognition to determine which region the measured signals correspond to [5] ( c©2011 IEEE) cessing required for limb detection, extensive processing power is required of the MCU to support this approach, and the need for stationary off-body equipment limits this as a solution for WBAN applications. 25 2.2. W2SN Localization And Positioning 2.2.4 Summary Of Localization Techniques Many efforts to improve location detection of W2SNs have been examined, al- though based on the techniques from our literature review in this section, the primary motivation behind the majority of sensor node localization studies pertains to improving data transmission techniques between wireless nodes [31, 38, 39]. These techniques are therefore tailored to general WSNs with tens or hundreds of nodes [25], as opposed to WBANs with a handful of nodes at most [11]. Using geospatial and hypsometric information, that is, the Earth’s at- mospheric air pressure distribution is a common practice for large-scale ap- plicatons such as tracking altitude changes in mountaineering [40]. How- ever, to the best of our knowledge, applying this technique to the small-scale positioning of WBANs sensor nodes placed less than a few meters apart remains unexplored. This is the basis of our sensor node localization ap- proach to provide localization capabilities without the need for stationary off-body hardware. To demonstrate the feasibility, our proposed scheme pre- liminary findings was demonstrated in [1]. We shall continue our analysis of using small-scale geospatial information in WBANs sensor node localization in Chapter 3. 26 2.3. Fall Detection 2.3 Fall Detection On the study of fall detection systems, where an off-site caregiver can be notified if the patient being monitored suffers from a fall, most proposed systems leverage one of two classes of concepts. The first class involves on- body motion sensing, where falling is inferred by characteristic patterns in body acceleration and motion [6, 41–46], as illustrated in Fig. 2.5. The second class involves off-body monitoring using video cameras [36, 37, 47– 50], where limb recognition and tracking is utilized to monitor the patient’s motion, as per Fig. 2.6. Both classes have their own advantages, but also significant drawbacks and deficiencies which have thus far prevented mass end-user adoption [51]. 2.3.1 On-Body Fall Detection Schemes The first class of concepts relies on spikes or patterns in accelerometer and/or gyroscope readings to trigger pre-defined thresholds and deduce falls [6, 41– 44] – however, many common activities, for example heavily sitting down on a chair, could produce false-positives due to similar acceleration character- istics, even though a fall has not occurred [6, 51], limiting the confidence in relying solely on this technique to deduce whether or not a fall has actually occurred. More critically, many papers have demonstrated that such a sys- tem alone would result in a significant quantity of false-negatives, that is, falls that go about undetected. As well, variations of this concept to reduce 27 2.3. Fall Detection Figure 2.5: Example of an on-body fall detection system, where a ‘fall’ is detected by an accelerometer using pre-defined threshold triggers [6] ( c©2007 Elsevier) the false-detection of falls have been attempted. Simple variations include monitoring the patient for seconds or minutes after acceleration spikes to determine if he/she gets up immediately after [52]. However, in a medical emergency situation, waiting this period to deduce falls may be too late. In another variation, machine learning is incorporated along with tagging locations around the body using RF location sensors in [53]. However, the authors acknowledge that this approach is still deficient in differentiating ‘fall-like’ events from slow falls. 28 2.3. Fall Detection Figure 2.6: Example of an off-body fall detection system, where a skeleton is extracted from an image of the body with localized joints and limbs [7] ( c©2004 IEEE) 2.3.2 Off-Body Fall Detection Schemes Concerning the second concept class of off-body video monitoring, while limb recognition has demonstrated a high degree of accuracy [7, 36, 37, 47, 49, 50, 54], despite a somewhat lack of experimental validation specifically for at- home fall detection applications [47]. Aside from computing power consider- ations surrounding video processing which would require off-body equipment [49], limb recognition using video feeds has been dismissed time after time due to privacy issues surrounding the continuous video recording of the pa- tient [55, 56]; studies based on such a system have been rejected even by 29 2.3. Fall Detection focus groups due to being too intrusive. As well, since cameras require off- body installation, the system’s operation is limited to the rooms in which the cameras are installed [48]; thus, such a system cannot follow the patient outside of their home. 2.3.3 Summary Of Fall Detection Schemes As we can see, the two classes of fall detection systems are currently at opposite ends — accelerometer-based systems lack accuracy and reliability due to frequent false-positives and false-negatives, and video camera-based systems are surrounded by significant privacy concerns. Due to the inherent portability advantage of self-contained on-body solutions, there is much value in improving the accuracy of these systems. One approach would be to enable the WBAN to not just detect whether or not body impact has occured, but also to determine the context and state of the patient immediately following any detected impact. By augmenting the known position and orientation of the patient’s body limbs, a simple check of whether the patient is standing up or lying down would enable the system to better preclude whether or not a remote caregiver needs to be informed to assist the patient, without the privacy issues sur- rounding off-body video monitoring techniques. We document our approach in full detail in Chapter 4. 30 Chapter 3 W2SN Location Recognition Using Small-Scale Atmospheric Air Pressure Differences This chapter outlines our new approach on using small-scale geospatial infor- mation to map and recognize W2SN locations, and documents our verification process to ensure the applicability of this approach to WBANs. 3.1 Localization Technique Overview The core of our research contribution is based on experimentally explor- ing and validating geospatial information to the context and size-scale of WBANs. Our new localization technique leverages the geospatial air pressure distribution in the Earth’s atmosphere, described by the following expression of the hypsometric equation [57–59]: p = p0(1− (Lh/T0)(gM/RL)) (3.1) 31 3.1. Localization Technique Overview We measure atmospheric pressure p [Pa] at altitude h [m], given sea level atmospheric pressure p0 [Pa] and other constant parameters 2. The use of Eqn. 3.1 assumes hydrostatic equilibrium. This relation is visually repre- sented in Fig. 3.1. In a nutshell, Eqn. 3.1 and Fig. 3.1 shows that air pressure decreases as altitude increases. The International Standard Atmo- sphere (ISA) model assumes a constant L and g between 0-11km in altitude [59], enabling Eqn. 3.1 to be valid for at-home applications. To overcome the variation of atmospheric air pressure measurements with time and weather, we compare the instantaneous pressures at multiple loca- tions on the body and identify the vertical arrangement and locations of the nodes on a scale relative to the wearer, as described in Fig. 3.2. This is possi- ble by assuming that the intended node positions and ordering in the WBAN are known and remain the same, enabling the WBAN to map the expected locations of nodes with an ordered list of node locations measured. Through sorting the list (such as by using Alg. 1), the node with the highest air pres- sure is identified as the node placed at the lowest position. This procedure is almost instantaneous, and is only required each time the W2SNs are moved – the detection on whether or not W2SNs have been removed or replaced is outside the scope of this investigation, although additional hardware, such as heart rate sensors in each W2SN, can be employed for this purpose. To demonstrate and evaluate our technique against a practical application 2sea-level standard temperature T0, earth-surface gravitational acceleration g, dry air molar mass M , universal gas constant R, temperature lapse rate L. 32 3.1. Localization Technique Overview Figure 3.1: Visual representation of the change in atmospheric pres- sure with altitude, described by the hypsometric equation, from http: //www.physicalgeography.net/fundamentals/7d.html ( c©2006 Michael Pidwirny). Our proposed scheme operates on the principle of being in the ‘troposphere’ region, between 0-11km from sea level, where the ISA model assumes a constant L and g. 33 3.1. Localization Technique Overview Figure 3.2: Overview of the W2SN location identification and mapping tech- nique described in Chapter 3. (a) First, pressure readings at each W2SN are taken simultaneously by A2PSs. (b) Next, the pressure readings are com- pared and mapped in-order to physical space described in Eqn 3.1. Each colored circle in this figure represents a single W2SN; #1 in red and #2 in blue. (c) Given a set of pre-defined W2SNs, (d) the pressure readings are mapped to the patient’s body based on the expected position of his/her limbs. which would benefit from being able to identify W2SN location in real-time for limb recognition, we apply the proposed technique to our WBAN speci- fied in [2], which monitors tremors and dyskinesia symptoms in Parkinson’s disease patients. The WBAN (Fig. 3.3) consists of W2SNs mounted on a patient’s body and a data aggregation base station node, all consisting of standard Crossbow TelosB R© motes (Fig. 3.4) commonly used in WBAN re- search [11]. In addition to sensors required by the primary application of the WBAN (for example, three-axis accelerometers), each W2SN has been fitted 34 3.1. Localization Technique Overview Figure 3.3: Topology of WBAN platform, showing W2SN placements on body, used to experimentally validate node localization technique Figure 3.4: Photograph of a prototype W2SN and its components constructed from adapting the digital sensor platform created for Parkinson’s disease tremor measurements [1] 35 3.2. Localization Technique Validation & Results with Bosch R© BMP085 A2PSs for localization and limb position tracking. This small, low-cost, low-power device can detect air pressure differences of less than 3Pa in ultra-high resolution mode, which translates to approx. 25cm in altitude change, and advertises <1Pa resolution with software averaging [60]. To determine the placement position of each W2SN, each node trans- mits air pressure P and temperature T readings together with data col- lected for the WBAN’s primary application to the base station. In our setup, a MATLAB-enabled PC aggregates all sensor data and perform post- processing. Although pressures can be compared directly for W2SN localiza- tion purposes, altitudes h at each node location can also be deduced using Eqn. 3.1 from p by obtaining p0 from an external source; in our setup, we opted to use Environment Canada’s weather report 3. 3.2 Localization Technique Validation & Results The experimental validation of our technique consists of the following major procedures to evaluate the system’s performance in detecting the changes in height required for W2SN localization and limb position tracking: 1. Selecting appropriate A2PS sampling parameters (1 sensor, 1 position) 3Environment Canada’s current conditions for Vancouver, BC, Canada: http://www. weatheroffice.gc.ca/forecast/city_e.html?bc-74&unit=m 36 3.2. Localization Technique Validation & Results – Section 3.2.1 2. Ensuring that the selected A2PS can accurately and reliably detect small-scale changes in air pressure, applicable along the height of a human body (1 sensor, 2 positions) – Section 3.2.2 3. Examining and correcting for intrinsic differences between two different A2PS, to ensure that readings from one can be compared with readings from another (2 sensors, 1 position) – Section 3.2.3 4. Combining the previous procedures to enable the WBAN to measure the air pressure at two limb locations without reusing the same sensor (2 sensors, 2 positions) – Section 3.2.4 Fig. 3.5 illustrates expected PDFs of atmospheric air pressure readings for each of the aforementioned procedures. The spread is to be quantified further in Section 3.2.1. In Fig. 3.5A, we demonstrate that for the same sensor hardware held at the same position, the characteristics of the A2PS readings distribution remains the same. With this, we demonstrate in Fig. 3.5B that the distributions of readings from two distinct positions must be spread out distinctly along the pressure scale in order for the two sets of readings to be statistically distinguishable from one another. Noting that in a real WBAN, we cannot use the same sensor to simultaneously measure atmospheric air pressure at two physical locations, we determine and account for the offset between readings from two sensors in Fig. 3.5C. Once this offset is accounted for, we can use two sensors to measure atmospheric air pressures 37 3.2. Localization Technique Validation & Results Figure 3.5: Expected PDFs of A2PS readings for each of the validation pro- cedures outlined in Section 3.2 Figure 3.6: Expected CDFs of A2PS readings corresponding to Figure 3.5 38 3.2. Localization Technique Validation & Results at two locations in Fig. 3.5D. Corresponding expected CDFs are illustrated in Fig. 3.6. While data was manually captured at controlled times for the purpose of validating our experiment, we expect a commercial-grade WBAN to continu- ously sample the A2PS and utilize a rolling window to repeatedly perform the statistical testing described in this section to monitor the position of W2SNs in the WBAN. 3.2.1 Selecting Appropriate Pressure Sensor Sampling Parameters (1 Sensor, 1 Position) In this sub-section, we demonstrate that for the same sensor hardware held at the same position, the characteristics of the A2PS readings distribution remains the same. As well, we examine the tradeoffs considered in selecting the appropriate sampling parameters for the A2PSs. The proposed system aims to expedite the process of accurately verifying W2SN placement while reducing power consumption. On one hand, the ac- curacy of the verification process depends on the raw A2PS readings output, whose error margins (noise) in turn depend on the sampling rate. Empir- ical results obtained through our WBAN setup reveal that by employing the highest resolution mode of the A2PS, a 10Hz sampling rate suffices to minimize noise and reduce power consumption by not overloading the MCU through oversampling. However, a suitable sampling time window must be 39 3.2. Localization Technique Validation & Results obtained in order to optimize the accuracy of the W2SN placement verifica- tion assessment. To this effect, we placed one node on a stationary surface and sampled the A2PS readings for one hour. Simple visual inspection and comparison with Environment Canada weather reports corroborated either steady air pressure variations (increasing or decreasing) or a stable output, depending on the current weather conditions. However, our scheme is not impacted by this, because the time scale of the W2SN placement verification process is too short compared to the length of time it takes for atmospheric air pres- sure changes to have any effect on the system’s accuracy. It follows that a placement verification process subject to rapid, artificial changes in atmo- spheric air pressure is prone to inaccuracies because this circumstance skews the PDF of the readings’ error margin. In other words, the proposed scheme enhances location verification reliability by ensuring that the statistical anal- ysis is performed over data samples unambiguously described by a probability distribution, as detailed shortly. By taking 1 hour of pressure data readings where the sea level air pres- sure remained stable, and by examining window sizes (subsets of this data) between 1 second and 60 seconds, the mean and spread of pressure readings remained very similar throughout this range, as depicted in Table 3.1. By characterizing the PDF and CDF of the data samples at hand, we can define confidence intervals (CIs) that can be referenced to determine pertinent data sampling windows that maximize the accuracy of the system’s assessment 40 3.2. Localization Technique Validation & Results Table 3.1: Sampling window and number of samples N vs. mean & spread of pressure measurements, and goodness of fit with a Gaussian Distribution, given 1 node at 1 position Window N Mean StDev p-Value p >0.05? [sec] [samples] [Pa] [Pa] 1 10 99869 4.977 <0.005 No 2 20 99870 3.911 0.099 Yes 3 30 99870 3.986 0.389 Yes 5 50 99869 4.068 0.276 Yes 10 100 99868 3.654 0.110 Yes 15 150 99868 3.983 0.030 No 20 200 99868 4.336 0.017 No 30 300 99867 4.653 0.021 No 60 600 99867 4.313 <0.005 No process. We examine the goodness of fit (GOF) of the data from each win- dow size against a Gaussian distribution with 95% CI. Fitting the data to common distributions using GOF tests showed that a Gaussian distribution had the best fit. From Table 3.1 and the probability plot in Fig. 3.7, we can see that sampling windows of 2 seconds, 3 seconds, 5 seconds and 10 seconds produced readings that could be confidently approximated by a Gaussian distribution, that is, their p-values were >0.05. Furthermore, the 3-second sampling window returned the highest p-value, meaning this sampling win- dow would be most preferable, in order to ensure that the error estimation process corresponds with a Gaussian PDF describing the actual data samples output by the sensor. Otherwise, employing an error estimation scheme for a data stream with mismatching PDF would invalidate the accuracy of our scheme. Repeating this analysis with two more sets of pressure data also 41 3.2. Localization Technique Validation & Results Figure 3.7: Probability plot showing goodness of fit with a Gaussian Distri- bution for varying sample window sizes between 1s and 60s produced the same findings, where the 3-second sampling window gave the highest p-value. The different sampling window trials shown in Table 3.1 and the corre- sponding pressure reading distributions gives us a good reference point to determine the length of the sampling window based on the GOF results. With too short of a sampling window, too few data points are available for an accurate fit. However, if we take measurements for too long, overall fluctuations in atmospheric air pressure due to the weather would skew our readings, thus limiting the accuracy of our proposed scheme. 42 3.2. Localization Technique Validation & Results 3.2.2 Verifying Assessments of Height Measurements Between Positions (1 Sensor, 2 Positions) In this sub-section, we describe the verification process to ensure that our hardware can accurately and reliably detect the small-scale changes in air pressure representative of heights along the human body, in accordance with the results obtained and described in Section 3.2.1. This is achieved by plac- ing one A2PS at two locations spanning a controlled vertical distance apart, and by ensuring that the pressure measurements at the two locations can be distinguished from one another if the obtained measurements statistically remain within the CI. Here, we first utilize only one A2PS to negate the intrinsic hardware differences between two different sensors. We demonstrated this technique and reported preliminary results in [1]. In a practical WBAN, we need two W2SNs to obtain measurements at two positions, as described and examined in the next subsections. We placed the single sensor at two baseline heights, defined as 0cm (Position I), and at 60cm above Position I (Position II) and obtained pressure data at the two positions. The 60cm height difference was selected as a starting point indicative of the typical minimum distance between two limb positions we expect our system to monitor, based on a two- W2SN WBAN with one arm node and one leg node. We examine 3-second data portions using two-sample T-tests. Since identical sensors were used, we assume equal variances between the two sets of data. First, we compare 43 3.2. Localization Technique Validation & Results Table 3.2: Comparing the measured pressures distribution with 1 sensor at 2 positions, using a two-sample T-test Position N Mean StDev SE Mean [samples] [Pa] [Pa] Trial 1 I @0cm 30 101913.87 2.80 0.51 II @60cm 30 101903.47 3.90 0.71 Estimate for difference µ(60cm) - µ(0cm): 10.400 95% CI for difference: (8.645, 12.155) T-Test of difference = 0 (vs not =): T-Value = 11.86 P-Value = 0.000 DF = 58) Trial 2 I @0cm 30 101911.80 2.54 0.46 II @60cm 30 101903.07 3.98 0.73 Estimate for difference µ(60cm) - µ(0cm): 8.733 95% CI for difference: (7.008, 10.459) T-Test of difference = 0 (vs not =): T-Value = 10.13 P-Value = 0.000 DF = 58) Trial 3 I @0cm 30 101913.70 2.83 0.52 II @60cm 30 101903.60 2.92 0.53 Estimate for difference µ(60cm) - µ(0cm): 10.100 95% CI for difference: (8.614, 11.586) T-Test of difference = 0 (vs not =): T-Value = 13.60 P-Value = 0.000 DF = 58) one set of sample data from Position I against a set from Position II, and repeat the test ensure reproducibility. Next, we compare sample data taken from the same position against each other to ensure that same position data is not falsely detected as being different. A small p-value enables us to reject the null hypothesis; that is, there is a statistically significant difference in height estimates at the two positions. From Table 3.2 we can see that for all 3 trials, placing the sensor at 60cm altitude differences returned pressure difference measurements of on 44 3.2. Localization Technique Validation & Results Table 3.3: Baseline comparison of the measured pressures distribution with 1 sensor at the same position Position N Mean StDev SE Mean [#] [Pa] [Pa] Trial 1 vs. 2 I @0cm 30 101913.87 2.80 0.51 I @0cm 30 101911.80 2.54 0.46 Estimate for difference µ(60cm) - µ(0cm): 2.067 95% CI for difference: (0.685, 3.448) T-Test of difference = 0 (vs not =): T-Value = 2.99 P-Value = 0.004 DF = 58) Trial 1 vs. 3 I @0cm 30 101913.87 2.80 0.51 I @0cm 30 101913.70 2.83 0.52 Estimate for difference µ(60cm) - µ(0cm): 0.167 95% CI for difference: (-1.288, 1.622) T-Test of difference = 0 (vs not =): T-Value = 0.23 P-Value = 0.819 DF = 58) Trial 2 vs. 3 I @0cm 30 101911.80 2.54 0.46 I @0cm 30 101913.70 2.83 0.52 Estimate for difference µ(60cm) - µ(0cm): -1.900 95% CI for difference: (-3.289, -0.511) T-Test of difference = 0 (vs not =): T-Value = -2.74 P-Value = 0.008 DF = 58) average 8Pa-10Pa, with an estimated difference of 7Pa-12Pa with a 95% CI. Furthermore, the two-sample T-tests returned p-values of 0.000 for all 3 trials, confirming that the height estimate at Position I are statistically different from that at Position II with >99.9% CI. This means that the sensor readings from Position I differ enough from Position II to enable the system to detect the changes in air pressure, and thus height, that we require. From Table 3.3, comparing pressure data taken from the same positions against each other, the two-sample T-tests for all 3 trials returned p-values >0.000. 45 3.2. Localization Technique Validation & Results Figure 3.8: Empirical CDF Plot of measured pressures with 1 sensor at 2 positions, showing that the A2PS can reliably distinguish between the two positions As expected, that the results are insufficient to falsely identify different height assessments given the same position. Visually, an empirical CDF plot of the trials in Fig. 3.8 were very comparable to the expected CDF (Fig. 3.5B) – the gap between the CDFs of the two positions suggest statistically significant differences between measurements from the two positions, and the similar CDFs among the trials for each position show a high degree of consistency. Repeating this experiment with more data provided agreeable results. Thus, based on these results, we can confidently and reliably distinguish between the two positions using one sensor. 46 3.2. Localization Technique Validation & Results 3.2.3 Verifying Assessments of Height Measurements Between Nodes (2 Sensors, 1 Position) In this subsection, we describe the process of verifying that two different sensors measure the same pressure when placed in the same position. Dur- ing initial experimentation, we discovered that each A2PS, even when placed together at the same altitude, would report pressure readings offset from one another. Moving both sensors to different altitudes produced the same offset. This implies that MEMS hardware response differences between oth- erwise identical A2PSs are due to insufficient precision in the eleven 16-bit factory calibration coefficients different for each sensor, possibly because the sensor was designed for measuring more macro-scale air pressure readings. This realization highlights the importance of understanding the operation of A2PSs for measuring fine-grain, human-scale height differences at the high- est possible resolution. Thus, this calibration process is an important step towards implementing a reliable height-based W2SN placement estimation system. To substantiate this claim, we place two A2PS-equipped W2SNs side-by- side (at the same altitude) and examine the mean and spread of the pressure data from each node. Using the 3-second, 10Hz sample window determined previously, we can see in Table 3.4 that applying a two-sample T-test (assum- ing equal variances) returned differences in measurements between two A2PSs placed at the same position of on average 40Pa-43Pa, with an estimated dif- 47 3.2. Localization Technique Validation & Results Table 3.4: Comparing the measured pressures distribution with 2 sensors at 1 position, using a two-sample T-test Node N Mean StDev SE Mean [samples] [Pa] [Pa] Trial 1 N1 30 101956.33 4.72 0.86 N2 30 101913.87 2.80 0.51 Estimate for difference µ(N2) - µ(N1): 42.47 95% CI for difference: (40.46, 44.47) T-Test of difference = 0 (vs not =): T-Value = 42.37 P-Value = 0.000 DF = 58) Trial 2 N1 30 101954.00 5.07 0.92 N2 30 101911.80 2.54 0.46 Estimate for difference µ(N2) - µ(N1): 42.20 95% CI for difference: (40.13, 44.27) T-Test of difference = 0 (vs not =): T-Value = 40.80 P-Value = 0.000 DF = 58) Trial 3 N1 30 101953.77 5.68 1.00 N2 30 101913.70 2.83 0.52 Estimate for difference µ(60cm) - µ(0cm): 40.07 95% CI for difference: (37.75, 42.39) T-Test of difference = 0 (vs not =): T-Value = 34.58 P-Value = 0.000 DF = 58) ference of 37Pa-45Pa with a 95% CI. Clearly, without offset correction, any comparisons made between different sensor hardware are prone to error, as the offset is approximately four times larger than the change in pressure we saw over a 60cm vertical distance. Visually, if we plot an empirical CDF (Fig. 3.9), we can observe the offset between two different pieces of hardware that must be accounted for. To ensure that we can apply this correction factor just once and be able to meaningfully compare pressure readings between different hardware, we 48 3.2. Localization Technique Validation & Results Figure 3.9: Empirical CDF Plot of measured pressures with 2 sensors at 1 position, showing the offset between two different pieces of hardware which must be accounted for ensure that this offset is indeed a linear offset, that is, the offset does not change with altitude or over time. This was accomplished by repeating the experiment at different altitudes over the height of a typical human body, and examining the pressure offset between the two sensors. Measurements obtained between two nodes at the same location revealed very similar esti- mates, and that the offset for our two particular A2PSs remained at approx- imately 40Pa. This confirms that the offset can be treated as being linear for the purposes of our approach, thereby enabling us to compare pressure measurements between sensors so long as this offset is accounted for. 49 3.2. Localization Technique Validation & Results 3.2.4 Validating Assessments of Height Measurements in a WBAN (2 Sensors, 2 Positions) In this last step, we combined our previous approaches to estimate air pres- sure measurements at two different locations. Because verifying the correct placement of W2SNs on limbs requires the ability to measure the air pressure at each location simultaneously, we must validate that using two sensors to measure pressures at two locations produces data comparable to those de- scribed in Section 3.2.2, where the output of a single sensor was gauged at two positions (one case at a time). Again, we utilize a 3-second sampling window as per the results presented in Section 3.2.1. Using the same two-sample T-test and assuming equal variances as per the procedure in Section 3.2.2, as well as linear offset as per Section 3.2.3, the results displayed in Table 3.5 show that the pressure difference between the two positions is indeed statistically significant, and the test verifies that the two positions are indeed different. Also, the 7Pa-15Pa estimate for the pressure difference at a 95% CI is very comparable to the 7Pa-12Pa estimate for the pressure difference with 95% CI at 60cm apart observed in Section 3.2.2, Table 3.2. Performing more trials produced similar pressure difference estimates. Thus, the test demonstrated that the linear offset correction is successful, and valid comparisons can be made between pressure measure- ments from two nodes. Empirical CDF plots for each of the 3 trials show the 50 3.2. Localization Technique Validation & Results Table 3.5: Comparing the measured pressures distribution with 2 sensors at 2 positions with linear offset correction, using a two-sample T-test Node / Position N Mean StDev SE Mean [#] [Pa] [Pa] Trial 1 N1 @0cm 30 101916.33 4.72 0.86 N2 @60cm 30 101903.47 3.90 0.71 Estimate for difference µ(N2) - µ(N1): 12.87 95% CI for difference: (10.63, 15.11) T-Test of difference = 0 (vs not =): T-Value = 11.50 P-Value = 0.000 DF = 58) Trial 2 N1 @0cm 30 101914.00 5.07 0.92 N2 @60cm 30 101903.07 3.98 0.73 Estimate for difference µ(N2) - µ(N1): 10.93 95% CI for difference: (8.58, 13.29) T-Test of difference = 0 (vs not =): T-Value = 9.29 P-Value = 0.000 DF = 58) Trial 3 N1 @0cm 30 101913.77 5.68 1.00 N2 @60cm 30 101903.60 2.92 0.53 Estimate for difference µ(60cm) - µ(0cm): 10.17 95% CI for difference: (7.83, 12.50) T-Test of difference = 0 (vs not =): T-Value = 8.72 P-Value = 0.000 DF = 58) measured pressure differences between the two nodes at the two positions (60cm apart) in Fig. 3.10 were very comparable to the expected CDF (Fig. 3.5D) – once again, the gap between the CDFs of the two positions suggest statistically significant differences between measurements from the two posi- tions, and the similar CDFs among the trials for each position show a high degree of consistency. By determining and accounting for the differences in sensor hardware in a one-time calibration process, where the A2PSs are placed at the same ver- 51 3.2. Localization Technique Validation & Results Figure 3.10: Empirical CDF Plot of measured pressures with 2 sensors at 2 positions, corrected relative to Node N2, to enable comparison with the 1-sensor 2-position Empirical CDF (Fig. 3.8) tical location, to correct the linear offset analyzed in Section 3.2.3, the same pressures are measured by the two separate W2SNs when placed at the same altitude. Thus, it is possible to draw accurate and meaningful comparisons between the air pressure measurements at each limb, thereby enabling the WBAN to identify and map its W2SNs. This procedure has therefore demon- strated that our new localization approach can be implemented in practice. 52 3.3. Localization Technique Discussion & Limitations 3.3 Localization Technique Discussion & Limitations By examining altitude differences between W2SNs, we introduced and demon- strated our new approach for W2SN localization, to map and recognize the location of nodes in a WBAN, by leveraging fine-grain hypsometric informa- tion of the Earth’s atmosphere. Specifically, this approach targets WBANs since such systems ideally have as few nodes as possible, and not tens or hundreds of nodes, as assumed by traditional WSN localization techniques for data transmission routing, and node placement for signal strength quality concerns [14, 25]. As illustrated in Fig. 3.2, given the physical topology of the WBAN, we can confidently identify which node is attached to which limb based on the altitude information of each W2SN. The placements at each height would correspond to placing W2SNs on the head, arm, and/or leg. This technique is designed to perform localization, or to verify W2SN placement while the patient is upright to maximize the distances between the nodes, and thus improve detection accuracy. We anticipate that this will not limit the real- life usefulness of this system; as discussed in Chapter 3, node localization for limb recognition and tracking is only required each time the patient takes off and replaces the W2SNs from his or her body. In our experiment, we tested W2SNs at 60cm apart, indicative of the minimum expected distance between a patient’s arm/wrist and lower leg. The larger the distance apart, 53 3.3. Localization Technique Discussion & Limitations the higher the accuracy of the system. However, in a commercial WBAN, the selection of the A2PS will have a large effect on the altitude differences detected. In contrast to traditional W2SN localization techniques surveyed in Chap- ter 2, this approach does not rely on having a large number of nodes to perform localization, nor stationary beacon nodes to perform ranging. One limitation of the approach is its constraint of one-dimensional space. For example, this approach is unable to distinguish between different nodes at- tached at the same height on the body, such as a W2SN attached to the left arm and another attached to the right arm. An additional technique would be required to identify and pinpoint nodes in additional dimensions. Notwithstanding this, since the human body is slender, and more W2SNs are typically distributed along the height of a body, by being able to self-identify W2SNs at different heights, we have reduced the number of nodes requiring manual identification to ‘left’ and ‘right’ nodes, which is far more convenient for the patient. 54 Chapter 4 Enhancing Accelerometer-Based Fall Detection Schemes With Limb Position Tracking This chapter describes an enhancement to conventional on-body fall detection schemes, by augmenting the sensor node localization technique described and validated in Chapter 3, with the goal of enhancing the WBAN’s ability to differentiate common ‘fall-like’ (false-positive) events from actual falls. Here, a typical accelerometer-based fall detection WBAN is replicated and incorporated with limb position tracking, and the limb positions deduced from A2PSs are compared against their expected positions based on different at-home scenarios to demonstrate the improvement. 55 4.1. Fall Detection Overview 4.1 Fall Detection Overview In a typical on-body fall detection system, accelerometers are fitted in each W2SN (described in Chapter 3) to capture x, y, and z-axis limb accelera- tion, and elementary fall detection techniques look for ‘falls’ by monitoring acceleration magnitude peaks due to impact [6, 41, 43, 44]. However, as explained in Chapter 2, motion from certain daily activities such as sitting down on a chair often produces large z-direction acceleration spikes and could be mistaken as a ‘fall’ [6]. Since traditional on-body schemes lack contex- tual awareness, the expected detection accuracy based on impact magnitudes alone cannot be entrusted for long-term at-home fall monitoring. 4.2 Fall Detection Hypothesis Testing We define the following fall detection hypotheses: • H0 (null hypothesis) - the system has detected a fall (the two W2SNs are found to be at the same vertical position) • H1 (alternative hypothesis) - the system has not detected a fall (the two W2SNs are not found to be at the same vertical position) These hypotheses aid in describing the 4 possible outcomes: 1. A fall was detected, and there has indeed been a fall (true-positive, desired outcome, accept H0) 56 4.2. Fall Detection Hypothesis Testing 2. A fall was detected, but there was no fall (false-positive, undesired outcome, Type I error from falsely rejecting null hypothesis) 3. A fall was not detected, and there has indeed been no fall (true- negative, desired outcome, reject H0 correctly) 4. No fall was detected, but there was a fall (false-negative, Type II error from falsely not rejecting null hypothesis) The hypotheses are formed in this order to ensure that the system only concludes that no fall has occurred if it can confidently be sure that the null hypothesis can be rejected. This is because an undetected fall (a false- negative) has more fatal consequences than one where no fall has occurred but an alarm is triggered (a false-positive). 4.2.1 Enhancement Scheme Overview We further define the probability that the patient requires assistance and caregiver attention P (H0) as the intersection of P (fall), the probability that an impact or free-fall has occurred as detected by an accelerometer, and P (lyingdown), the probability that the patient is lying down, as detected by A2PSs, in the time immediately following: P (H0) = P (fall) ∩ P (lyingdown) (4.1) In a nutshell, our proposed fall detection enhancement considers both 57 4.3. Fall Detection Enhancement Experimental Approach P (fall) and P (lyingdown), as opposed to traditional on-body systems that rely solely on P (fall). The WBAN makes an assessment based on the oc- currence of A2PSs at the arm and leg reporting similar altitude to estimate P (lyingdown) (implying that the patient is lying down) within a margin of error, given that an accelerometer has indicated a fall event based on the magnitude of impact or free-fall P (fall). Classifying falls based on P (fall) alone have been previously studied in detail in [6, 41, 43, 44]. Thus, this chapter focuses the on the performance of P (lyingdown), and whether or not the WBAN using this information can accurately and reliably detect that a patient is lying down as a result of common daily at-home activities. 4.3 Fall Detection Enhancement Experimental Approach We apply our W2SN placement recognition technique to improve such an on- body WBAN, by introducing limb position awareness to monitor the patient’s condition in the time surrounding detected impact. With our approach, a WBAN continuously tracks and monitors the instantaneous air pressure at each limb to deduce the patient’s physical state, immediately after significant accelerometer activity is detected that could indicate a ‘fall-like’ event. By comparing pressure differences against the known W2SN placement topology, the WBAN can examine the position of the arm node relative to the leg node, and deduce if the user is upright (standing or sitting up, where the nodes are 58 4.3. Fall Detection Enhancement Experimental Approach Figure 4.1: Expected accelerometer and A2PS data behavior under various typical at-home movement events at different vertical positions), or lying down (where the nodes are vertically at the same position). To demonstrate that comparing limb position information before and af- ter any impact detected by accelerometers is beneficial to a fall detection system, we replicate typical at-home user activities to observe how our ap- proach responds in determining the patient’s context, compared to using only accelerometer data. We perform a variety of everyday tasks, including walk- ing, traversing stairs, sitting, and lying down. We also emulate a fall onto the ground. The change in acceleration and air pressure at each W2SN is recorded and examined. We quantify our enhancement’s performance in detecting a patient as ‘ly- ing down’ by sampling 3-second windows of pressure data corresponding to 59 4.3. Fall Detection Enhancement Experimental Approach immediately after the accelerometer observes spikes from the replicated sce- nario, and perform two-sample T-tests between the two W2SNs for each data set (trial). Depending on the scenario, the p-Value should either conclude that the two nodes are at different altitudes (the patient is not lying down), or that the nodes are not at different altitudes, inferring that the patient is lying down. The closer the p-value is to 0.000, the more confident we can be that the patient is not lying down. Qualitatively speaking, we expect the system to respond as illustrated in Fig. 4.1, depending on the scenario. Here, while any vertical jerk or impact (change in acceleration) could trigger a z-direction acceleration spike, if we examine the absolute altitude of the arm and leg with respect to each other, the physical state of the patient can be deduced. The WBAN and experimental configuration in Chapter 3 was reused, consisting of one W2SN attached to the arm, and another attached to the leg (Fig. 3.3). Analog Devices’ ADXL345 digital accelerometers [61] were used to acquire x, y, and z-axis limb acceleration at each W2SN. This is to demonstrate that a Parkinson’s disease limb tremor monitoring system, such as in [2], could be easily upgraded with fall-detection capabilities, without additional W2SNs or moving nodes around. For a pure fall-detection WBAN disregarding primary application sensor placement, it is worth noting that studies on sensor placement to record acceleration due to falls has so far been inconclusive [46]; some have suggested behind the ear [41], the trunk [6] or the head and waist [43] areas as being the optimum locations for a fall sensor. 60 4.4. Fall Detection Enhancement Experimental Results Our proposed approach aims to increase the sensitivity and performance of on-body fall detection and allow the primary application of the WBAN to dictate the placement of W2SNs. 4.4 Fall Detection Enhancement Experimental Results This section documents the performance and response of our proposed scheme as implemented into a prototype WBAN, as described in Section 4.3. Five scenarios representing expected ambulatory motion were performed. In Figs. 4.2–4.6, acceleration plotted is in the z-direction, that is, in the direction of gravitational acceleration. As with the localization measure- ments in Chapter 3, we use the Environment Canada sea level air pressure reading at the time of the data acquisition to infer the altitudes at each node. Sampling windows used for statistical analysis are boxed in green. 4.4.1 Scenario 1: Walking In a fall detection ambulatory monitoring system, aside from staying still, walking is likely the most elementary and common movement type. Our subject replicates typical walking on level ground, representative of ordinary daily activities around the home. Visually examining the response in this scenario, each footstep results in an acceleration spike 0.5g to 2g in magni- 61 4.4. Fall Detection Enhancement Experimental Results Figure 4.2: Scenario 1: Walking - Arm and leg acceleration, air pressure, inferred altitude. A2PS readings at the arm and leg nodes remain distinc- tively different to distinguish between the two traces, despite small localized fluctuations. (Sampling windows used for statistical analysis boxed in green) 62 4.4. Fall Detection Enhancement Experimental Results Table 4.1: Scenario 1: Walking - comparing the measured pressures at the arm and leg (after linear offset correction), using a two-sample T-test Node N Mean StDev SE Mean [#] [Pa] [Pa] Trial 1 N1 (arm) 30 101140.30 3.53 0.65 N2 (leg) 30 101149.10 4.17 0.76 Estimate for difference µ(N2) - µ(N1): 8.800 95% CI for difference: (6.800, 10.800) T-Test of difference = 0 (vs not =): T-Value = 8.82 P-Value = 0.000 DF = 56) Trial 2 N1 (arm) 30 101140.73 3.83 0.70 N2 (leg) 30 101149.80 4.14 0.76 Estimate for difference µ(N2) - µ(N1): 9.07 95% CI for difference: (7.00, 11.13) T-Test of difference = 0 (vs not =): T-Value = 8.80 P-Value = 0.000 DF = 57) Trial 3 N1 (arm) 30 101136.67 3.26 0.60 N2 (leg) 30 101148.50 3.90 0.71 Estimate for difference µ(60cm) - µ(0cm): 11.83 95% CI for difference: (9.973, 13.694) T-Test of difference = 0 (vs not =): T-Value = 12.74 P-Value = 0.000 DF = 56) tude. Ignoring the minute fluctuations as expected from noise and localized pressure differences, we observe that visually, the pressure at the arm and leg nodes remain stable throughout the walking motion and compares favorably with our expectations (Fig. 4.1A). The two-sample T-tests (described in Table 4.1) estimated a 7Pa-14Pa difference in pressure between the two positions, with a p-value of 0.000, indicating with 100% certainty a true-negative case, that null hypothesis can be rejected and that the arm and leg nodes are indeed at different vertical 63 4.4. Fall Detection Enhancement Experimental Results positions., the system can deduce that the patient is upright (from the A2PS data) and moving about (from the accelerometer data) and has not suffered a fall. 4.4.2 Scenario 2: Walking Up/Down Stairs The walking scenario indicative of WBAN ambulatory monitoring and fall detection mechanisms was repeated on a staircase, to recognize that falls while walking are more likely while traversing stairs. Scenario 2A describes the walk up, and Scenario 2B describes the walk down. Performing two-sample T-tests (Tables 4.2 and 4.3) gave a 4Pa-15Pa es- timated difference in pressure between the two positions, with a p-value of 0.000 for both scenarios, once again indicating a true-negative case, that the arm and leg are at different vertical positions, with absolute certainty. The results also infer that the arm and leg are closer together compared to Sce- nario 1, which is valid because of the leg motion involved in climbing stairs. As an aside, while the accelerometer sees similar motion data in both walking scenarios, the difference due to walking up and down a flight of stairs is clearly observed in Fig. 4.3, further aiding in the contextual awareness and determin- ing the patient’s motion pattern. Once again, ignoring minute fluctuations from noise and localized pressure differences, we observe that visually, the pressure at the arm and leg nodes generally remain stable throughout the walking motion despite small changes in the distance between the arm and leg when walking up and down stairs, and again compares favorably with our 64 4.4. Fall Detection Enhancement Experimental Results Figure 4.3: Scenario 2: Walking Up/Down Stairs - Arm and leg acceleration, air pressure, inferred altitude. While A2PS readings show the wearer gaining and losing altitude to provide context, once again, the arm and leg nodes remain distinctively different from each other despite small fluctuations. 65 4.4. Fall Detection Enhancement Experimental Results Table 4.2: Scenario 2A: Walking Up Stairs - comparing the measured pres- sures at the arm and leg (after linear offset correction), using a two-sample T-test Node N Mean StDev SE Mean [#] [Pa] [Pa] Trial 1 N1 (arm) 30 101137.00 4.59 0.84 N2 (leg) 30 101148.90 6.05 1.1 Estimate for difference µ(N2) - µ(N1): 11.90 95% CI for difference: (9.12, 14.68) T-Test of difference = 0 (vs not =): T-Value = 8.58 P-Value = 0.000 DF = 58) Trial 2 N1 (arm) 30 101129.33 4.83 0.88 N2 (leg) 30 101137.07 5.57 1.0 Estimate for difference µ(N2) - µ(N1): 7.73 95% CI for difference: (5.04, 10.43) T-Test of difference = 0 (vs not =): T-Value = 5.74 P-Value = 0.000 DF = 58) Trial 3 N1 (arm) 30 101120.63 6.41 1.2 N2 (leg) 30 101129.33 5.36 0.98 Estimate for difference µ(60cm) - µ(0cm): 8.70 95% CI for difference: (5.65, 11.75) T-Test of difference = 0 (vs not =): T-Value = 5.70 P-Value = 0.000 DF = 58) Table 4.3: Scenario 2B: Walking Down Stairs - comparing the measured pressures at the arm and leg (after linear offset correction), using a two- sample T-test Node N Mean StDev SE Mean [#] [Pa] [Pa] Trial 1 N1 (arm) 30 101109.33 5.54 1.0 N2 (leg) 30 101115.77 4.39 0.80 Estimate for difference µ(N2) - µ(N1): 6.43 95% CI for difference: (3.85, 9.02) T-Test of difference = 0 (vs not =): T-Value = 4.98 P-Value = 0.000 DF = 58) Trial 2 N1 (arm) 30 101119.37 3.91 0.71 N2 (leg) 30 101128.37 5.41 0.99 Estimate for difference µ(N2) - µ(N1): 9.00 95% CI for difference: (6.56, 11.44) T-Test of difference = 0 (vs not =): T-Value = 7.39 P-Value = 0.000 DF = 58) Trial 3 N1 (arm) 30 101128.57 5.52 1.0 N2 (leg) 30 101139.00 6.17 1.1 Estimate for difference µ(60cm) - µ(0cm): 10.43 95% CI for difference: (7.41, 13.46) T-Test of difference = 0 (vs not =): T-Value = 6.90 P-Value = 0.000 DF = 58) expectations (Fig. 4.1A). 66 4.4. Fall Detection Enhancement Experimental Results Table 4.4: Scenario 3: Sitting Down - comparing the measured pressures at the arm and leg (after linear offset correction), using a two-sample T-test Node N Mean StDev SE Mean [#] [Pa] [Pa] Trial 1 N1 (arm) 30 100090.47 4.60 0.84 N2 (leg) 30 100103.43 5.25 0.96 Estimate for difference µ(N2) - µ(N1): 12.97 95% CI for difference: (10.42, 15.52) T-Test of difference = 0 (vs not =): T-Value = 10.18 P-Value = 0.000 DF = 58) Trial 2 N1 (arm) 30 100091.03 4.14 0.76 N2 (leg) 30 100102.87 3.82 0.70 Estimate for difference µ(N2) - µ(N1): 11.83 95% CI for difference: (9.77, 13.89) T-Test of difference = 0 (vs not =): T-Value = 11.50 P-Value = 0.000 DF = 58) Trial 3 N1 (arm) 30 100093.70 4.21 0.77 N2 (leg) 30 100104.30 5.04 0.92 Estimate for difference µ(60cm) - µ(0cm): 10.60 95% CI for difference: (8.20, 13.00) T-Test of difference = 0 (vs not =): T-Value = 8.84 P-Value = 0.000 DF = 58) 4.4.3 Scenario 3: Sitting Down In this scenario, we analyze the response of the system due to sitting down onto a chair, and standing up. Fig. 4.4 shows the data from a user repeatedly sitting down and standing up. Impact between the user and the chair is shown clearly in the accelerometer data, which would be used to trigger the location measurements. Two-sample T-tests (Table 4.4) estimate a 8Pa-16Pa difference in pres- sure between the arm and leg positions, with a p-value of 0.000 for both 67 4.4. Fall Detection Enhancement Experimental Results scenarios, again indicating with very high confidence that we can reject the null hypothesis as desired, as the user is not lying down. As well, from the pressure and inferred altitude, we can differentiate between periods when the user is standing up and sitting down as well, since the distance between the arm and leg nodes narrows significantly when the user sits down. Visually (Fig. 4.4), the pressure at the arm and leg nodes generally remain stable while the patient stood up, and converged slightly without any overlapping during the period in which the patient is sitting down. This resembles and compares favorably with our expected behavior (Fig. 4.1B). 4.4.4 Scenario 4: Lying Down This scenario involves lying down onto a bed or couch from an upright po- sition. The accelerometer trace in Fig. 4.5 illustrates the fall. Examining the pressure data during the period the user is lying down (when the A2PSs from the two W2SNs become placed at the same altitude), we observe a fast response as the two traces converge to the same pressure and altitude read- ings between 7s-15s, resembling the pressure sensor behavior in Fig. 4.1C. The pressure at the arm and leg nodes generally remain stable otherwise. Two-sample T-tests in this region estimate a 0Pa-5Pa difference in pres- sure between the arm and leg positions with 95% CI (Table 4.5), and p-values >0.000 demonstrate that as expected, we cannot from this data statistically reject the null hypothesis (concluding that the arm and leg are at different heights), and thus, the WBAN can be aware that the patient is currently 68 4.4. Fall Detection Enhancement Experimental Results Table 4.5: Scenario 4: Lying Down - comparing the measured pressures at the arm and leg (after linear offset correction), using a two-sample T-test Node N Mean StDev SE Mean [#] [Pa] [Pa] Trial 1 N1 (arm) 30 100096.57 4.61 0.84 N2 (leg) 30 100099.30 5.31 0.97 Estimate for difference µ(N2) - µ(N1): 2.73 95% CI for difference: (0.16, 5.30) T-Test of difference = 0 (vs not =): T-Value = 2.13 P-Value = 0.038 DF = 56) Trial 2 N1 (arm) 30 100096.47 4.34 0.79 N2 (leg) 30 100098.93 4.48 0.82 Estimate for difference µ(N2) - µ(N1): 2.475 95% CI for difference: (0.19, 4.75) T-Test of difference = 0 (vs not =): T-Value = 2.17 P-Value = 0.035 DF = 57) Trial 3 N1 (arm) 30 100094.87 4.09 0.75 N2 (leg) 30 100097.63 3.93 0.72 Estimate for difference µ(60cm) - µ(0cm): 2.775 95% CI for difference: (0.69, 4.84) T-Test of difference = 0 (vs not =): T-Value = 2.67 P-Value = 0.010 DF = 57) lying down. However, simply by examining arm and leg positions does not illustrate how the patient became lying down; whether or not this was the result of a fall or impact. Notwithstanding this, by analyzing the patterns in accelerometer activity as previously studied in on-body fall detection systems and outlined in Section 2.3.1, the system can be better equipped to deter- mine this. Since once the patient stands up, the two A2PS traces revert to their original states, the system can be programmed such that if the patient stands up shortly after perceiving to have fallen, the WBAN can continue 69 4.4. Fall Detection Enhancement Experimental Results Table 4.6: Scenario 5: Falling Onto Ground - comparing the measured pres- sures at the arm and leg (after linear offset correction), using a two-sample T-test Node N Mean StDev SE Mean [#] [Pa] [Pa] Trial 1 N1 (arm) 30 100096.57 4.19 0.77 N2 (leg) 30 100098.93 4.63 0.85 Estimate for difference µ(N2) - µ(N1): 2.37 95% CI for difference: (0.08, 4.65) T-Test of difference = 0 (vs not =): T-Value = 2.08 P-Value = 0.042 DF = 58) Trial 2 N1 (arm) 30 100094.67 4.74 0.87 N2 (leg) 30 100097.97 4.12 0.75 Estimate for difference µ(N2) - µ(N1): 3.30 95% CI for difference: (1.00, 5.60) T-Test of difference = 0 (vs not =): T-Value = 2.88 P-Value = 0.006 DF = 58) Trial 3 N1 (arm) 30 100098.60 4.49 0.82 N2 (leg) 30 100101.97 3.61 0.66 Estimate for difference µ(60cm) - µ(0cm): 3.37 95% CI for difference: (1.26, 5.47) T-Test of difference = 0 (vs not =): T-Value = 3.20 P-Value = 0.002 DF = 58) to monitor the situation, but note to itself that the likelihood that a fall occurred has reduced. 4.4.5 Scenario 5: Fall Onto Ground In this scenario, our test subject replicates a fall onto the ground, from an upright standing position onto a hardwood floor. Already, we notice in Fig. 4.6 that a basic fall detection system which relies solely on acceleration 70 4.5. Fall Detection Enhancement Discussion & Limitations thresholds would not be reliable, as the magnitudes and spikes here are quite similar to those even in the walking case in Fig. 4.2. Two-sample T-tests in 3-second data windows immediately succeeding an accelerometer spike estimate a 0Pa-6Pa difference in pressure between the arm and leg positions with 95% CI (Table 4.7), and p-values >0.000 demonstrate that again, we cannot statistically reject the null hypothesis (conclude that the arm and leg are at different heights), and that there is a possibility that the patient is lying down, consistent with us visually exam- ining Fig. 4.6. This is also consistent with our expected behavior illustrated in Fig. 4.1C. Since the WBAN is no longer confident that the patient is still upright, the system can examine if an accelerometer-detected ‘fall’ triggered preceded this lying down state, to determine if the patient may be lying down. If so, a caregiver can be immediately alerted of this potential fall. Note that the acceleration characteristics preceding these pressure measure- ments must also be analyzed, as a closer examination of both acceleration magnitude and air pressure convergence show strong a similarity to the data obtained by lying down in Scenario 4. 4.5 Fall Detection Enhancement Discussion & Limitations Results from our experiments show that this enhancement to conventional on-body fall detection schemes reliably detects a wearer’s state for deducing 71 4.5. Fall Detection Enhancement Discussion & Limitations P (lyingdown), by using two-sample T-tests; since this is a non-computationally expensive statistical function, it is feasible to instruct the WBAN to contin- uously monitor the patient using rolling window samples. In all of our test cases, the WBAN successfully differentiated between an upright position, versus lying down. Tables 4.1 through 4.6 have been summarized for quick comparisons (Table 4.7. While the A2PSs alone were unable to further dis- tinguish between specific different upright positions (standing vs. sitting), we observe that the usefulness of a contextually-aware WBAN is highlighted in a fall detection application; a much better decision on the patient’s condition can be made simply by knowing if a patient is lying down. As explained previously, in some of these scenarios, relying solely on ac- celerometer data would make it difficult to distinguish between a ‘slow fall’ and other fall-like activity, as in [53]. To further compound the situation, it has been discussed that many elderly people ‘fall’ onto a chair when sitting down due to reduced muscle strength with old age [6]. This results in higher acceleration peaks than analyzing young adults sitting down, who have much greater control over the speed of their body motions; depending on how the patient sits on a chair, the acceleration profile could be similar to an actual fall. With our proposed enhancement, by considering both P (fall) explored extensively in previous works and P (lyingdown), augmenting arm and leg position information clearly shows that after such a ‘fall’ on a chair, the WBAN can now be aware that the patient is still upright and not lying on the ground, thus greatly improving its ability to estimate P (H0) compared 72 4.5. Fall Detection Enhancement Discussion & Limitations to previously studied on-body fall detection systems where P (H0) was solely deduced by P (fall). We can foresee some cases where augmenting limb position information would not help reduce the probability of false-positive detection. From our experimental data, by solely looking at arm and leg position, it would be difficult to distinguish activities for a patient lying down and falling unin- tentionally – comparing the accelerometer data from the arm node at time 4s-6s in Figs. 4.5 and 4.6 with [6, Fig. 1A], both cases generate accelerom- eter responses that would indicate a fall, although lying down on a bed is not actually a fall. With these cases, it is necessary to further analyze the acceleration characteristics outside the scope of this study. To further improve this on-body fall detection enhancement, we could fine tune the T-test parameters using real-world trials. For example, further study of the acceptable p-value threshold at 95% CI with test subjects can be performed. We can also expand the scheme by incorporating more decisions, for example by examining the instantaneous characteristics of the triggering impact acceleration. As well, a wide range of additional sensors could be incorporated, such as heart rate, for deeper contextual information. However, based on the current state of the enhancement, the results from this chapter show great promise in improving the rate of some scenarios which are key sources of false-positive detection classifications in ambulatory monitoring and on-body fall detection WBAN systems. 73 4.5. Fall Detection Enhancement Discussion & Limitations Table 4.7: Summary of Tables 4.1–4.6 enabling a comparison between the estimated pressure differences and T-Test p-values of two positions for the ‘fall-like’ scenarios replicated ∆P ∆P (95% CI) p-Value DF [Pa] [Pa], [Pa] Scenario 1 Trial 1 8.80 6.80, 10.80 0.000 56 Trial 2 9.07 7.00, 11.13 0.000 57 Trial 3 11.83 9.97, 13.70 0.000 56 Scenario 2A Trial 1 11.90 9.12, 14.68 0.000 58 Trial 2 7.73 5.04, 10.43 0.000 58 Trial 3 8.70 5.65, 11.75 0.000 58 Scenario 2B Trial 1 6.43 3.85, 9.02 0.000 58 Trial 2 9.00 6.56, 11.44 0.000 58 Trial 3 10.43 7.41, 13.46 0.000 58 Scenario 3 Trial 1 12.97 10.42, 15.52 0.000 58 Trial 2 11.83 9.77, 13.89 0.000 58 Trial 3 10.60 8.20, 13.00 0.000 58 Scenario 4 Trial 1 2.73 0.16, 5.30 0.038 56 Trial 2 2.47 0.19, 4.75 0.035 57 Trial 3 2.77 0.69, 4.84 0.010 57 Scenario 5 Trial 1 2.37 0.08, 4.65 0.042 58 Trial 2 3.30 1.00, 5.60 0.006 58 Trial 3 3.37 1.26, 5.47 0.002 58 74 4.5. Fall Detection Enhancement Discussion & Limitations Figure 4.4: Scenario 3: Sitting Down - Arm and leg acceleration, air pressure, inferred altitude. From the A2PS readings, the arm and leg nodes move closer together while the wearer sitting down. However, the difference in A2PS readings is still present, implying that the sensors are still vertically some distance apart, and that the wearer is not lying down. 75 4.5. Fall Detection Enhancement Discussion & Limitations Figure 4.5: Scenario 4: Lying Down - Arm and leg acceleration, air pressure, inferred altitude. The period in which the test subject was lying down can clearly be seen by the overlapping arm and leg node A2PS readings. This overlap suggests that the two nodes are vertically at the same height. 76 4.5. Fall Detection Enhancement Discussion & Limitations Figure 4.6: Scenario 5: Falling Onto Ground - Arm and leg acceleration, air pressure. Once again, the period in which the test subject was lying down can clearly be seen by the overlapping arm and leg node A2PS readings. Since lying down and falling over both result in the wearer’s arm and legs to be horizontal, we must analyze the preceding impact detected by the accelerometers, as extensively studied in previous works. 77 Chapter 5 Conclusion 5.1 Summary Of Contributions This manuscript has presented and experimentally verified a new approach to determine and monitor the location of W2SNs mounted along the height of a patient’s body, by measuring and comparing instantaneous air pressures at each node (Chapter 3). This spatial information enables the WBAN to automatically identify and map which limb each of the W2SNs ares mounted on, based on a pre-defined known set of node positions. We believe this scheme is novel because the technique reliably identifies and maps W2SN locations in absolute coordinate space, without an infrastructure of off-body ‘anchor’ or ‘beacon’ nodes, presuming the presence of a large number of nodes as with conventional WSN techniques, or requiring extensive and lengthy offline processing, as outlined in Chapter 2. We have verified the feasibility and practicality of implementing this scheme into an existing WBAN designed for long-term at-home patient mon- itoring. In Chapter 3, we have experimentally shown that commercially- available A2PSs can be utilized to produce reliable and accurate position 78 5.1. Summary Of Contributions information in an absolute reference frame, which enables the matching of W2SNs against their expected positions. Once the W2SNs are located, by continuously tracking the node positions, the WBAN is able to deduce basic daily activities through inferred limb position and movement, for example standing up versus lying down. In Chapter 4, we proposed and experimentally demonstrated an enhance- ment to conventional on-body fall-detection schemes to enable better differ- entiation of ‘fall-like’ motion from actual falls. Specifically, we showed the improvement in outcome classification of our proposed scheme against sev- eral identified scenarios where traditional systems frequently produce false- positive (Type I) errors, such as when a patient sits down on a chair. By analyzing accelerometer behavior alone, the spikes could suggest a ‘fall’, but by also considering arm and leg position, the ambiguity was shown to be mit- igated; clearly, a patient who is not lying down immediately following any detected impact has likely not suffered from a fall. Our results have demon- strated that by incorporating a decision on both P (fall) and P (lyingdown) in determining P (H0), this enhancement has provided more rich contextual information, without the privacy and practicality concerns of video limb recognition-based off-body solutions (Chapter 2). 79 5.2. Future Direction 5.2 Future Direction Our new sensor node scheme studied in this manuscript is able to map and recognize W2SN locations based on a pre-defined set of expected node loca- tions (Chapter 3). However, this scheme does not enable full two-dimensional or three-dimensional sensor node localization. This means that the technique alone is unable to distinguish between W2SNs mounted to limbs at the same vertical altitude of a patient, for example ‘left’ and ‘right’-handed nodes, since such positions would give identical and indistinguishable atmospheric air pressure readings. While our new approach has significantly reduced the number of nodes requiring manual placement, WBANs would without a doubt benefit from a second or third dimension of placement data. While a 60cm separation between two W2SNs has been examined, the granularity of our scheme is limited only by the accuracy and resolution of the A2PS hardware. As sensor technology continues to evolve and higher performance devices are developed, we foresee our approach to benefit from higher resolution pressure data. For example, since creating our prototype W2SN architecture and performing our experimental analyses, Bosch R© has released a new digital pressure sensor, the BMP180, which can detect even smaller pressure and thus altitude differences (2Pa, 0.17m) than the BMP085 digital sensors used in our experimental verification (3Pa, 0.25m) [60]. With- out a doubt, even more precise sensors are just around the corner. For fur- ther A2PS accuracy with existing sensors, filters could be explored to reduce 80 5.3. Final Remarks the noise of A2PS readings, as long as this does not introduce significant MCU overhead, producing a further tradeoff between power consumption and speed. To further optimize power consumption, to facilitate adopting this scheme in a commercial WBAN solution, the scheme could be refined to sample A2PSs at a varying frequencies – higher frequencies could be reserved for only when potential falls or impact are detected by an accelerometer. As well, many MEMS accelerometers, including the Analog Devices R© ADXL345 used in our prototype WBAN feature highly optimized built-in tap detection interrupts [61] which could be utilized to further reduce accelerometer power consumption. On the area of air pressure data overhead, the A2PSs merely requires an extra stream of air pressure data per W2SN, which was easily transmitted over IEEE 802.15.4 in our prototype WBAN platform. Thus, we do not antic- ipate wireless channel limitations problems when implementing this scheme if future applications dictate a WBANs based on other protocols, such as Bluetooth R©and Bluetooth Low-Energy R©. 5.3 Final Remarks Overall, the new scheme described and evaluated in this manuscript has demonstrated a strong promise in delivering accurate, consistent and reli- able results for use in commercial limb recognition and ambulatory monitor- 81 5.3. Final Remarks ing W2SN systems designed for m-health applications. By considering the further refinements discussed in Section 5.2, we believe that the automatic characteristics provided by this scheme will contribute and motivate efforts to reach the levels of seamless and effortless integration expected and required for an even wider-scale adoption of WBANs. 82 Bibliography [1] G. Lo, S. González-Valenzuela, and V. C. M. Leung, “Automatic iden- tification and placement verification of wearable wireless sensor nodes using atmospheric air pressure distribution,” in Consumer Communica- tions and Networking Conference (CCNC), 2012 IEEE, Jan 2012, pp. 32–33. [2] G. Lo, A. Suresh, L. Stocco, S. González-Valenzuela, and V. C. M. Leung, “A wireless sensor system for motion analysis of parkinson’s dis- ease patients,” in Pervasive Computing and Communications Workshops (PERCOM Workshops), 2011 IEEE International Conference on, Mar 2011, pp. 372–375. [3] M. Hanson, H. Powell, A. Barth, K. Ringgenberg, B. Calhoun, J. Aylor, and J. Lach, “Body area sensor networks: Challenges and opportuni- ties,” Computer, vol. 42, no. 1, pp. 58–65, Jan 2009. [4] C. Wang and L. Xiao, “Sensor localization under limited measurement capabilities,” Network, IEEE, vol. 21, no. 3, pp. 16–23, May-June 2007. [5] A. Vahdatpour, N. Amini, and M. Sarrafzadeh, “On-body device local- ization for health and medical monitoring applications,” in Pervasive Computing and Communications (PerCom), 2011 IEEE International Conference on, Mar 2011, pp. 37–44. [6] A. Bourke, J. OBrien, and G. Lyons, “Evaluation of a threshold- based tri-axial accelerometer fall detection algorithm,” Gait & Posture, vol. 26, no. 2, pp. 194 – 199, 2007. [Online]. Available: http://www.sciencedirect.com/science/article/pii/S0966636206001895 [7] G. Mori, X. Ren, A. Efros, and J. Malik, “Recovering human body configurations: combining segmentation and recognition,” in Computer Vision and Pattern Recognition, 2004. CVPR 2004. Proceedings of the 83 Bibliography 2004 IEEE Computer Society Conference on, vol. 2, Jun 2004, pp. 326– 333. [8] S. González-Valenzuela, M. Chen, and V. Leung, “Mobility support for health monitoring at home using wearable sensors,” Information Tech- nology in Biomedicine, IEEE Transactions on, vol. 15, no. 4, pp. 539– 549, Jul 2011. [9] H. Cao, V. Leung, C. Chow, and H. Chan, “Enabling technologies for wireless body area networks: A survey and outlook,” Communications Magazine, IEEE, vol. 47, no. 12, pp. 84–93, Dec 2009. [10] E. Jovanov, A. Milenkovic, C. Otto, and P. C. de Groen, “A wireless body area network of intelligent motion sensors for computer assisted physical rehabilitation,” Journal of NeuroEngineering and Rehabilitation, vol. 2, no. 6, 2005. [Online]. Available: http://www.jneuroengrehab.com/content/2/1/6 [11] A. Milenkovic, C. Otto, and E. Jovanov, “Wireless sensor networks for personal health monitoring: Issues and an implementation,” Computer Communications, vol. 29, no. 1314, pp. 2521–2533, 2006. [Online]. Available: http://www.sciencedirect.com/science/article/pii/ S0140366406000508 [12] J. Reason, “Human error: models and management,” BMJ, vol. 320, no. 7237, pp. 768–770, 3 2000. [13] G.-Z. Yang, in Body Sensor Networks. Springer, 2006. [Online]. Avail- able: http://www.springer.com/computer/hci/book/978-1-84628-272-0 [14] M. Younis and K. Akkaya, “Strategies and techniques for node placement in wireless sensor networks: A survey,” Ad Hoc Networks, vol. 6, no. 4, pp. 621–655, 2008. [Online]. Available: http://www.sciencedirect.com/science/article/pii/S1570870507000984 [15] K. Romer and F. Mattern, “The design space of wireless sensor net- works,” Wireless Communications, IEEE, vol. 11, no. 6, pp. 54–61, Dec 2004. [16] H. Cao, X. Liang, I. Balasingham, and V. C. M. Leung, “Performance analysis of ZigBee technology for wireless body area sensor networks,” 84 Bibliography in Ad Hoc Networks, ser. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering. Springer Berlin Heidelberg, 2010, vol. 28, pp. 747–761. [Online]. Available: http://dx.doi.org/10.1007/978-3-642-11723-7 51 [17] T. Arampatzis, J. Lygeros, and S. Manesis, “A survey of applications of wireless sensors and wireless sensor networks,” in Intelligent Con- trol, 2005. Proceedings of the 2005 IEEE International Symposium on, Mediterrean Conference on Control and Automation, Jun 2005, pp. 719– 724. [18] J. Polastre, R. Szewczyk, A. Mainwaring, D. Culler, and J. Anderson, “Analysis of wireless sensor networks for habitat monitoring,” in Wireless Sensor Networks, C. S. Raghavendra, K. M. Sivalingam, and T. Znati, Eds. Springer US, 2004, pp. 399–423. [Online]. Available: http://dx.doi.org/10.1007/978-1-4020-7884-2 18 [19] N. Wang, N. Zhang, and M. Wang, “Wireless sensors in agriculture and food industryrecent development and future perspective,” Computers and Electronics in Agriculture, vol. 50, no. 1, pp. 1 – 14, 2006. [Online]. Available: http://www.sciencedirect.com/science/article/pii/ S0168169905001572 [20] I. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci, “Wireless sensor networks: a survey,” Computer Networks, vol. 38, no. 4, pp. 393 – 422, 2002. [21] S. Tennina, F. Graziosi, and F. Santucci, “Distributed and cooperative localization algorithms for WSNs in GPS-less environments,” Integration of Navigation with Communication and Remote Sensing Applications, vol. 188, pp. 70–76, June-July 2008. [22] A. Savvides, M. Srivastava, L. Girod, and D. Estrin, “Localization in sensor networks,” in Wireless Sensor Networks, C. S. Raghavendra, K. M. Sivalingam, and T. Znati, Eds. Springer US, 2004, pp. 327–349. [Online]. Available: http://dx.doi.org/10.1007/978-1-4020-7884-2 15 [23] A. Savvides, C.-C. Han, and M. B. Strivastava, “Dynamic fine-grained localization in ad-hoc networks of sensors,” in Proceedings of the 7th annual international conference on Mobile computing and networking, 85 Bibliography ser. MobiCom ’01. New York, NY, USA: ACM, 2001, pp. 166–179. [Online]. Available: http://doi.acm.org/10.1145/381677.381693 [24] M. Chen, S. González, A. Vasilakos, H. Cao, and V. Leung, “Body area networks: A survey,” Mobile Networks and Applications, vol. 16, pp. 171–193, 2011. [Online]. Available: http://dx.doi.org/10.1007/ s11036-010-0260-8 [25] J. Tang, B. Hao, and A. Sen, “Relay node placement in large scale wireless sensor networks,” Computer Communications, vol. 29, no. 4, pp. 490 – 501, 2006. [Online]. Available: http: //www.sciencedirect.com/science/article/pii/S0140366405000459 [26] E. Lloyd and G. Xue, “Relay node placement in wireless sensor net- works,” Computers, IEEE Transactions on, vol. 56, no. 1, pp. 134 –138, Jan 2007. [27] K. Langendoen and N. Reijers, “Distributed localization in wireless sensor networks: a quantitative comparison,” Computer Networks, vol. 43, no. 4, pp. 499–518, 2003. [Online]. Available: http: //www.sciencedirect.com/science/article/pii/S1389128603003566 [28] H. Cao, H. Li, L. Stocco, and V. Leung, “Design and evaluation of a novel wireless three-pad ECG system for generating conventional 12-lead signals,” ser. BodyNets, 2010. [29] X. Ji and H. Zha, “Robust sensor localization algorithm in wireless ad-hoc sensor networks,” in Computer Communications and Networks, 2003. ICCCN 2003. Proceedings. The 12th International Conference on, Oct 2003, pp. 527 – 532. [30] N. Bulusu, D. Estrin, L. Girod, and J. Heidemann, “Scalable coordination for wireless sensor networks: Self-configuring localization systems,” in Proceedings of the 6th IEEE International Symposium on Communication Theory and Application, USC/Information Sciences Institute. IEEE, July 2001. [Online]. Available: http://www.isi.edu/ ∼johnh/PAPERS/Bulusu01c.html [31] N. Patwari and A. O. Hero, III, “Using proximity and quantized rss for sensor localization in wireless networks,” in Proceedings of the 86 Bibliography 2nd ACM international conference on Wireless sensor networks and applications, ser. WSNA ’03. New York, NY, USA: ACM, 2003, pp. 20–29. [Online]. Available: http://doi.acm.org/10.1145/941350.941354 [32] M. Sichitiu and V. Ramadurai, “Localization of wireless sensor networks with a mobile beacon,” in Mobile Ad-hoc and Sensor Systems, 2004 IEEE International Conference on, Oct 2004, pp. 174 – 183. [33] D. Niculescu and B. Nath, “Ad hoc positioning system (APS) using AOA,” in INFOCOM 2003. Twenty-Second Annual Joint Conference of the IEEE Computer and Communications. IEEE Societies, vol. 3, march-3 april 2003, pp. 1734 – 1743 vol.3. [34] T. He, C. Huang, B. M. Blum, J. A. Stankovic, and T. F. Abdelzaher, “Range-free localization and its impact on large scale sensor networks,” ACM Trans. Embed. Comput. Syst., vol. 4, no. 4, pp. 877–906, Nov 2005. [Online]. Available: http://doi.acm.org/10.1145/1113830.1113837 [35] Y. Shang, W. Ruml, Y. Zhang, and M. P. J. Fromherz, “Localization from mere connectivity,” in Proceedings of the 4th ACM international symposium on Mobile ad hoc networking & computing, ser. MobiHoc ’03. New York, NY, USA: ACM, 2003, pp. 201–212. [Online]. Available: http://doi.acm.org/10.1145/778415.778439 [36] M. Siddiqui and G. Medioni, “Robust real-time upper body limb detection and tracking,” in Proceedings of the 4th ACM international workshop on Video surveillance and sensor networks, ser. VSSN ’06. New York, NY, USA: ACM, 2006, pp. 53–60. [Online]. Available: http://doi.acm.org/10.1145/1178782.1178792 [37] I. Cohen and H. Li, “Inference of human postures by classification of 3D human body shape,” in Analysis and Modeling of Faces and Gestures, 2003. AMFG 2003. IEEE International Workshop on, Oct 2003, pp. 74–81. [38] J. Wang, R. Ghosh, and S. Das, “A survey on sensor localization,” Journal of Control Theory and Applications, vol. 8, pp. 2– 11, 2010, 10.1007/s11768-010-9187-7. [Online]. Available: http: //dx.doi.org/10.1007/s11768-010-9187-7 87 Bibliography [39] U. Khan, S. Kar, and J. Moura, “Distributed sensor localization in ran- dom environments using minimal number of anchor nodes,” Signal Pro- cessing, IEEE Transactions on, vol. 57, no. 5, pp. 2000–2016, May 2009. [40] G. Jackson and C. Crocker, “Statistical topics in hillwalking.” [Online]. Available: http://www.hills-database.co.uk/altim.html [41] U. Lindemann, A. Hock, M. Stuber, W. Keck, and C. Becker, “Evaluation of a fall detector based on accelerometers: A pilot study,” Medical and Biological Engineering and Computing, vol. 43, pp. 548–551, 2005, 10.1007/BF02351026. [Online]. Available: http: //dx.doi.org/10.1007/BF02351026 [42] A. Bourke and G. Lyons, “A threshold-based fall-detection algorithm using a bi-axial gyroscope sensor,” Medical Engineering & Physics, vol. 30, no. 1, pp. 84 – 90, 2008. [Online]. Available: http: //www.sciencedirect.com/science/article/pii/S1350453306002657 [43] M. Kangas, A. Konttila, I. Winblad, and T. Jamsa, “Determination of simple thresholds for accelerometry-based parameters for fall detection,” in Engineering in Medicine and Biology Society, 2007. EMBS 2007. 29th Annual International Conference of the IEEE, Aug 2007, pp. 1367–1370. [44] D. Karantonis, M. Narayanan, M. Mathie, N. Lovell, and B. Celler, “Im- plementation of a real-time human movement classifier using a triaxial accelerometer for ambulatory monitoring,” Information Technology in Biomedicine, IEEE Transactions on, vol. 10, no. 1, pp. 156 –167, Jan 2006. [45] D. Naranjo-Hernandez, L. Roa, J. Reina-Tosina, and M. Estudillo- Valderrama, “Personalization and adaptation to the medium and con- text in a fall detection system,” Information Technology in Biomedicine, IEEE Transactions on, vol. 16, no. 2, pp. 264 –271, Mar 2012. [46] P.-K. Chao, H.-L. Chan, F.-T. Tang, Y.-C. Chen, and M.-K. Wong, “A comparison of automatic fall detection by the cross- product and magnitude of tri-axial acceleration,” Physiological Measurement, vol. 30, no. 10, p. 1027, 2009. [Online]. Available: http://stacks.iop.org/0967-3334/30/i=10/a=004 88 Bibliography [47] B. Jansen and R. Deklerck, “Context aware inactivity recognition for visual fall detection,” in Pervasive Health Conference and Workshops, 2006, Dec 2006, pp. 1 –4. [48] C. Doukas and I. Maglogiannis, “Emergency fall incidents detection in assisted living environments utilizing motion, sound, and visual per- ceptual components,” Information Technology in Biomedicine, IEEE Transactions on, vol. 15, no. 2, pp. 277 –289, Mar 2011. [49] E. Auvinet, F. Multon, A. Saint-Arnaud, J. Rousseau, and J. Meunier, “Fall detection with multiple cameras: An occlusion-resistant method based on 3-D silhouette vertical distribution,” Information Technology in Biomedicine, IEEE Transactions on, vol. 15, no. 2, pp. 290 –300, Mar 2011. [50] C. Rougier, J. Meunier, A. St-Arnaud, and J. Rousseau, “Fall detec- tion from human shape and motion history using video surveillance,” in Advanced Information Networking and Applications Workshops, 2007, AINAW ’07. 21st International Conference on, vol. 2, May 2007, pp. 875–880. [51] N. Noury, A. Fleury, P. Rumeau, A. Bourke, G. Laighin, V. Rialle, and J. Lundy, “Fall detection - principles and methods,” in Engineering in Medicine and Biology Society, 2007. EMBS 2007. 29th Annual Interna- tional Conference of the IEEE, Aug 2007, pp. 1663–1666. [52] G. Williams, K. Doughty, K. Cameron, and D. Bradley, “A smart fall and activity monitor for telecare applications,” in Engineering in Medicine and Biology Society, 1998. Proceedings of the 20th Annual In- ternational Conference of the IEEE, vol. 3, Oct 1998, pp. 1151–1154. [53] M. Lutrek, H. Gjoreski, S. Kozina, B. Cvetkovi, V. Mirchevska, and M. Gams, “Detecting falls with location sensors and accelerometers,” 2011. [Online]. Available: http://www.aaai.org/ocs/index.php/IAAI/ IAAI-11/paper/view/2753 [54] A. Balan, L. Sigal, and M. Black, “A quantitative evaluation of video- based 3d person tracking,” in Visual Surveillance and Performance Eval- uation of Tracking and Surveillance, 2005. 2nd Joint IEEE International Workshop on, Oct 2005, pp. 349–356. 89 [55] C. Kidd, R. Orr, G. Abowd, C. Atkeson, I. Essa, B. MacIntyre, E. Mynatt, T. Starner, and W. Newstetter, “The aware home: A living laboratory for ubiquitous computing research,” in Cooperative Buildings. Integrating Information, Organizations, and Architecture, ser. Lecture Notes in Computer Science, N. Streitz, J. Siegel, V. Hartkopf, and S. Konomi, Eds. Springer Berlin / Heidelberg, 1999, vol. 1670, pp. 191–198, 10.1007/10705432 17. [Online]. Available: http://dx.doi.org/10.1007/10705432 17 [56] M. Boyle, C. Edwards, and S. Greenberg, “The effects of filtered video on awareness and privacy,” in Proceedings of the 2000 ACM conference on Computer supported cooperative work, ser. CSCW ’00. New York, NY, USA: ACM, 2000, pp. 1–10. [Online]. Available: http://doi.acm.org/10.1145/358916.358935 [57] J. B. Merriam, “Atmospheric pressure and gravity,” Geophysical Journal International, vol. 109, no. 3, pp. 488–500, 1992. [Online]. Available: http://dx.doi.org/10.1111/j.1365-246X.1992.tb00112.x [58] J. R. Holton and G. J. Hakim, “An introduction to dynamic meteorol- ogy,” in Ad Hoc Networks. Academic Press, 2012, pp. 18–20. [Online]. Available: http://books.google.com/books?id=-ePQ6x6VbjgC [59] Portland State Aerospace Society, “A quick derivation relating altitude to air pressure,” 2004. [Online]. Available: http://psas.pdx.edu/ RocketScience/PressureAltitude Derived.pdf [60] Bosch Sensortec GmbH, “BMP085 digital pressure sensor spec sheet.” [Online]. Available: http://www.bosch-sensortec.com/content/ language1/html/3477.htm [61] Analog Devices Inc., “ADXL345 digital accelerometer spec sheet.” [Online]. Available: http://www.analog.com/en/mems-sensors/ mems-inertial-sensors/adxl345/products/product.html [62] Crossbow Technology, “TelosB.” [Online]. Available: http://bullseye. xbow.com:81/Products/productdetails.aspx?sid=252 90 Appendix A Experimental Setup Details of the hardware and software used to create the prototype WBAN system: Hardware: • Motes: Crossbow TelosB R© Rev. B [62], featuring: – Texas Instruments MSP430 MCU – CC2420 IEEE 802.15.4 Transceiver – Digital Inter-Integrated Circuit (I2C) Bus • A2PS: Bosch R© BMP085 digital air pressure sensor [60] – BMP ADDR (0x77) - BMP085 I2C address defined by factory – BMP OSS: 3 (oversampling setting) • Accelerometer: Analog Devices R© ADXL345 digital 3-axis accelerome- ter [61] – ACC ADDR (0x1D) - ADXL345 I2C address defined by factory – BW RATE (0x2C): 0x19 – DATA FORMAT (0x31): 0x0A – POWER CTL (0x2D): 0x08 – ACC OUT (0x32) - output registers defined by factory Software: • W2SN and aggregator node: TinyOS 2.1.1 on Windows • PC: MATLAB R2009b for Windows 91 Appendix A. Experimental Setup TinyOS: W2SN Packet Structures Packet structures used in each W2SN in our experimental setup to trans- mit data to the aggregator node for forwarding to the MATLAB-enabled PC. Each W2SN employs store-and-forward, where 3 sets of readings are collected and amalgamated into one packet for transmission. The MATLAB interface deconstructs the packets received. NREADINGS = 3; // packet structure for accelerometer data typedef nx_struct packetXYZ { nx_uint16_t id; /* Mote id of sending mote. */ nx_uint16_t sensor_type; /* type of sensor */ nx_uint16_t interval; /* Samping period. */ nx_uint16_t count; /* Samples counted * NREADINGS onwards */ nx_uint16_t readings_x[NREADINGS]; nx_uint16_t readings_y[NREADINGS]; nx_uint16_t readings_z[NREADINGS]; //nx_uint16_t voltage; } packetXYZ_t; // packet structure for air pressure sensor data typedef nx_struct packetPT { nx_uint16_t id; /* Mote id of sending mote. */ nx_uint16_t sensor_type; /* type of sensor */ nx_uint16_t interval; /* Samping period. */ nx_uint16_t count; /* Samples counted * NREADINGS onwards */ nx_int32_t readings_P[NREADINGS]; nx_int16_t readings_T[NREADINGS]; //nx_uint16_t voltage; } packetPT_t; 92 Appendix A. Experimental Setup TinyOS: BMP085 A2PS Initialization Procedure How to read factory calibration values stored on each BMP085 sensor, in TinyOS, as part of each W2SN’s initialization procedure as documented in the spec sheet. Input Variables (read from BMP085 EEPROM through registers): int16_t bmp_AC1, bmp_AC2, bmp_AC3, bmp_B1, bmp_B2; int16_t bmp_MB, bmp_MC, bmp_MD; uint16_t bmp_AC4, bmp_AC5, bmp_AC6; uint32_t bmp_UP, bmp_UT; // uncalibrated P and T Process Variables (used to determine P and T): int32_t bmp_X1, bmp_X2, bmp_B5, bmp_B6, bmp_X3, bmp_B3; uint32_t bmp_B4, bmp_B7; Output Variables (calibrated pressure and temperature): int32_t bmp_P; int16_t bmp_T; // -------- calculate true temperature bmp_X1 = ((long)(bmp_UT - bmp_AC6) * (long)bmp_AC5) >> 15; bmp_X2 = ((long)bmp_MC << 11) / ((long)bmp_X1 + (int32_t)bmp_MD); bmp_B5 = bmp_X1 + bmp_X2; bmp_T = ((long)bmp_B5 + 8) >> 4; // --------- calculate true pressure bmp_B6 = (long)bmp_B5 - 4000; bmp_X1 = ((int32_t)bmp_B2 * ((long)bmp_B6*(long)bmp_B6 >> 12)) >> 11; bmp_X2 = (int32_t)bmp_AC2 * (long)bmp_B6 >> 11; bmp_X3 = bmp_X1 + bmp_X2; bmp_B3 = ((((int32_t)bmp_AC1*4 + bmp_X3) << BMP_OSS) + 2) >> 2; bmp_X1 = (int32_t)bmp_AC3 * (long)bmp_B6 >> 13; bmp_X2 = ((int32_t)bmp_B1 * ((long)bmp_B6*(long)bmp_B6 >> 12)) >> 16; bmp_X3 = (((long)bmp_X1 + (long)bmp_X2) + 2) >> 2; 93 Appendix A. Experimental Setup bmp_B4 = ((uint32_t)bmp_AC4 * (uint32_t)((long)bmp_X3 + 32768)) >> 15; bmp_B7 = ((uint32_t)bmp_UP - (long)bmp_B3)*(50000 >> BMP_OSS); if(bmp_B7 < 0x80000000UL) bmp_P = (bmp_B7 << 1) / bmp_B4; else bmp_P = bmp_B7 / bmp_B4 << 1; bmp_X1 = ((long)bmp_P >> 8) * ((long)bmp_P >> 8); bmp_X1 = ((long)bmp_X1 * 3038) >> 16; bmp_X2 = (-7357 * (long)bmp_P) >> 16; bmp_P = bmp_P + ((bmp_X1 + bmp_X2 + 3791) >> 4); 94 A p p en d ix A . E x p erim en tal S etu p Figure A.1: Schematic of the PCB developed for our prototype W2SN to connect the I2C-enabled digital sensors to the TelosB mote – GYRO1 to an ITG3200 digital gyroscope, ACC1 to an ADXL345 digital accelerometer, and BMP1 to a BMP085 digital air pressure sensor. Pin configurations for each sensor were based on the Sparkfun breakout board designs. Pull up resistors were required for the I2C bus to operate. 95 A p p en d ix A . E x p erim en tal S etu p Figure A.2: PCB layout of the schematic illustrated in Fig. A.1. See Fig. 3.4 for a photograph of an assembled prototype W2SN. 96 A p p en d ix A . E x p erim en tal S etu p Figure A.3: Screenshot of MATLAB GUI developed for our prototype WBAN to display and capture W2SN readings. On the left, the two colored dots provide a spatial representation of the interpreted node positions. On the right, a time trace is provided from the acceleration or atmospheric air pressure for one of the nodes. 97 Appendix B Algorithm Addendum Algorithm 1: Example using a simple recursive quicksort function to produce an ordered list of node pressures, for matching with the known pre-defined list of node positions Data: Measured air pressure readings at W2SNs: I = {p1, p2 ... pn} Result: Ordered list of node pressures 1 function sortPressures(I) 2 if length(I) ≤ 1 then 3 return I; // base case 4 end 5 select and pull pivot from I; 6 foreach pi in I do 7 if pi ≤ pivot then 8 append pi to Iless; 9 else 10 append pi to Igreater; 11 end 12 end 13 return concatenate(quicksort(Iless), pivot, quicksort(Igreater)) 98