Chapter 6 – Discussion
6.2 Angle tracking methods and methods to improve robustness
In this thesis, a FSM controller has been presented that can take signals from accelerometers tracking the movements of up to four different body segments (hand, forearm, upper arm and torso). Accelerometer-based movement sensing methods were used in this system because 1) accelerometers are available at low cost, in very small packages, and with low power consumption, 2) angle relative to gravity can be derived directly from accelerometers, therefore avoiding integration-related drift. These properties make the sensors potentially suitable for long term use in clinical settings (see section 2.5.1.1). In order to fully exploit the output of accelerometers methods for estimating angle relative to gravity were needed. In chapter 2, these methods were reviewed. Three methods were identified from the literature (see section 2.5.2): 1) using single axis accelerometers; 2) using dual axis accelerometers; and 3) using two accelerometers separated by a rigid link. As discussed in section 2.5.2, angle measurement using a single accelerometer (1, 2 or 3-axis) suffers from two main problems. Firstly, the existing methods for processing the accelerometer signals to obtain angle from the vertical all suffer from very poor sensitivity when a sensitive axis approaches the vertical. Secondly, the methods reported rely on the true acceleration being negligible and are, therefore, only suitable for measuring angle under static or low acceleration conditions. Methods that use two accelerometers separated by a rigid rod (see section 2.5.2.3) have been used to overcome the limitation of measuring angle only under low acceleration conditions. However, this only works for rotation around a fixed point (e.g. the knee) or to obtain angular velocity which must then be integrated.
Three different methods were investigated for using an accelerometer to track body segment angle and, hence, to act as a trigger for moving to the next state in an upper
166 limb FES FSM controller. The first uncalibrated method calculates the change in angle during a rotation using the gravity vectors before and after the rotation (see section 3.2). The second uncalibrated method (see section 3.3) calculates the angle between the accelerometer x-axis and the gravity vector. The third calibrated method uses a calibration rotation to define the measurement plane and the positive rotation direction (see section 3.4). This method then calculates the component of rotation that is in the same plane as the calibration rotation. All three methods use an algorithm that switches between using sine and cosine, depending on the measured angle, which overcomes the poor sensitivity problem seen in previous methods.
The second uncalibrated angle tracking method has been incorporated into a flexible FSM controller and tested. The reason for using the second method was that, unlike the first uncalibrated angle tracking method, this method provides a reference orientation (i.e. the angle is zero when the x-axis is vertical). In addition, this method is insensitive to rotation about the x-axis. This property can be usefully exploited if, for example, the accelerometer is aligned with the x-axis oriented along the forearm’s long axis, thereby making the output insensitive to pronation-supination. The approach was found to be accurate, with errors below 1.3° except when the angle was near 0° or 180°. The third, calibrated method, was shown to provide the sign of the angle change, but significant errors were observed when the measured angle was <30° or >150°. Referring to the techniques from the literatures (see section 2.5.2), maximum errors of over 10° were observed for the angle derived using the arccos
function when the sensitive axis approaches vertical. (Baek & Yun, 2010; Kengo et al., 2013). It is also self-evident that the angle derived by using the arcsin function suffers from similar limitations. When using a dual axis accelerometer, angle can be derived by using the arctan function. Although small errors (less than ) have been observed for this method (Pallejà et al., 2010) it suffers from extreme sensitivity near (Pallejà et al., 2010; Rodriguez-Donate et al., 2010).
Like other methods reported in section 2.5.2.1 (Baek & Yun, 2010; Bakhshi et al., 2011; Bourke et al., 2011; Caroselli et al., 2013; Fabera et al., 2013; Ha et al., 2013; Juan et al., 2013; Kengo et al., 2013; Myong-Woo Lee et al., 2010; Lugade et al., 2014; Zhang et al., 2012) and 2.5.2.2 (Coulter et al., 2011; Grzeda & Fichtinger, 2010; Miura et al., 2011; Pallejà et al., 2010; Qilong et al., 2013; Rodriguez-Donate et al.,
167 2010; Vinande et al., 2010; Watanabe et al., 2013), using an accelerometer to measure angle from the vertical relies on the true acceleration being negligible and are, therefore, only suitable for measuring angle under static or low acceleration conditions. Furthermore, there are significant challenges to overcome to make the triggering of state transitions, based on accelerometer derived angles, more robust because of movement variability, sensor misalignment, the true acceleration component, signal noise etc. Therefore, a number of methods that aim to improve the robustness of angle triggering, and hence the usability of the system, have been implemented based on the second uncalibrated angle tracking method. The method of ignoring readings where “the true acceleration is significant in comparison to gravity” provides guarantee of only measurements under static or low acceleration conditions will be used for angle triggering. This method has been shown to remove some unwanted spikes in the signal and thereby improve the robustness of angle triggering (Figure 4.29). Other methods implemented include:
Using the change in angle since entering a state, rather than absolute angle;
Requiring a given number of consecutive or non-consecutive valid readings before triggering a transition.
Using the “change in angle since entering a state” as a trigger for state transitions (rather than absolute angle from the vertical) was found to provide improved robustness to sensor misalignment (Figure 4.25). It is also self-evident that it increases robustness to kinematic variability by resetting the “change in angle” to zero at the start of each state (movement phase). However, while requiring a given number of consecutive or non-consecutive valid readings before triggering a transition reduces the risk of early triggers (Table 4.2), it also introduces delays in triggering (Table 4.3).