People with Parkinson’s experience extremely a change in their gait (walking pattern). That is to say, they endure difficulty in movements, freezing of gait, and postural instability, which leads to being unstable when doing an activity of daily living and thus; falling. These are disastrously associated with significant motor impairments, hospitalization, and reduced quality of life. That reflexes the importance of maintaining or reducing Falls for PD patients.
Falls have a tendency to appear suddenly when highly rate of change in movements occurs, this infers that when, for instance, PD patient is trying to get up or sit down quickly; he/she is more susceptible to falls.


That is why our aims in this project were to design a system that can detect falls and try to predict them by constantly monitoring the sudden movements. By that this system serves the goal of alarming the responsible (elderly firm or relative) when a fall is detected. And if possible, while detecting sudden movements a signal is cued to the PD patient by an actuator when a fall is highly to be happening. That will help to not only detecting falls but also predicting it.
The system utilizes a microcontroller i.e. Arduino Nano BLE which is an evaluated board from the Arduino series boards. The microcontroller is featured with low power consumption and can process large programs that grant the possibility of running a machine learning application. Additionally, it has a valuable selection of sensors and connectivity peripherals. One amongst these sensors is LSM9DS1 a 9 axes inertial sensor that can provide information about accelerations in all three directions and rotations around each axis. That is why this board is deemed ideal for our application, since we need this data to monitor the body movements.
Regarding the running software, the system will employ two algorithms that work concurrently in order to study the movement of the PD individual and detect fall at high accuracy. The algorithms comprise a simple thresholding algorithm and machine learning algorithm.
The Thresholding algorithm involves basically finding the optimal thresholds of which differentiate between the activity of daily living and falls.


The SVM learning machine algorithm was adopted to increase the accuracy of the thresholding method and secondly because our aim is not only detecting falls, but also predicting them. That would be difficult using only the thresholding method. Therefore, the SVM learning model is trained and tested by MATLAB to select the optimal hyperplane, that separates the activity of daily living and falls. Then a C++ code is generated using MATLAB and adapted it to be suitable to run on the Arduino BLE sense board. That, unfortunately, has not been succeeded due to time constraints.


A quick overview of the achievements which have been laid the foundation of building this proof of concept:
- An Excel made tool to extract the optimal fall thresholds.
- A C++ application which runs on Arduino BLE sense that detects the FALLs and has a Sensitivity of 86.67% and a Specificity of 94.74%. (The application was also tested by the Author which had performed some falls and surprisingly gave these results).
- A MATLAB application that prepares, filters the dataset, and calculates the features, and then applies the SVM model, which results in the optimal hyperplane.
- Date: January 25, 2020
- Categories: C++Machine LearningMatlab
- Client HAN, Activating Parkinson Patients With Sensors