Gait monitoring on instrumented walkers: a proposal based on force and inertial sensors ACTA IMEKO ISSN: 2221-870X December 2018, Volume 7, Number 4, 33 - 41 ACTA IMEKO | www.imeko.org December2018 | Volume 7 | Number 4 | 33 Application of force and inertial sensors to monitor gait on legacy walkers Vítor Viegas1,2, J. M. Dias Pereira1,2, Octavian Postolache1,3, Pedro Silva Girão1,4 1 Instituto de Telecomunicações, 1049-001 Lisboa, Portugal 2 ESTSetúbal, 3CDP2T, Instituto Politécnico de Setúbal, 2910-761 Setúbal, Portugal 3 ISCTE – Instituto Universitário de Lisboa, 1600-077 Lisboa, Portugal 4 Instituto Superior Técnico, Universidade de Lisboa, 1049-001 Lisboa, Portugal Section: RESEARCH PAPER Keywords: force measurement; load cell; IMU; walker assistive device; gait analysis Citation: Vítor Viegas, J. M. Dias Pereira, Octavian Postolache, Pedro Silva Girão, Gait monitoring on instrumented walkers: a proposal based on force and inertial sensors, Acta IMEKO, vol. 7, no. 4, article 7, December 2018, identifier: IMEKO-ACTA-07 (2018)-04-07 Editor: Vilmos Pálfi, Budapest University of Technology and Economics, Hungary Received March 28, 2018; In final form June 22, 2018; Published December 2018 Copyright: © 2018 IMEKO. This is an open-access article distributed under the terms of the Creative Commons Attribution 3.0 License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited Funding: This work was supported by Fundação para a Ciência e Tecnologia, project PTDC/DTP-DES/6776/2014. Corresponding author: Vítor Viegas, e-mail: vitor.viegas@estsetubal.ips.pt 1. INTRODUCTION Assistive walking devices play an important role in extending the autonomy of elderly people and in preventing accidental falls. This is especially important in modern societies, where the population is aging fast: in North America, 25 % of the population is estimated to be over the age of 65 years by the year 2025 [1-2]; and in the EU, by the year 2060, the life expectancies of women and men are anticipated to be around 89 and 84.5 years, respectively [3]. Assistive walking devices are also key in recovering the mobility of people affected by locomotion disabilities (due to amputation, injuries to the spine, muscular dystrophies, or other causes). The use of walking aids is, in general, positive because it improves the user’s confidence levels during long-term rehabilitation therapies. A study published by Vogt et al. [4] showed that the use of rollators (walkers with wheels) does not interfere with rehabilitation outcomes and, in some cases, may be highly useful in reducing rehabilitation times. It is consensual that the proper use of mobility aiding devices contributes to the sustainability of healthcare systems [5-6], but the very same devices, if used inappropriately, can be harmful and cause serious injuries [7-8]. The safety margin could be improved if users were educated on how to use the equipment properly, and if artificial intelligence was incorporated on the devices to detect and avoid risky situations. In many rehabilitation processes, the evaluation of the user’s balance and motor coordination is usually based on subjective data acquired through human observations. The decisions of the physiotherapist could be improved if they were based on objective metrics obtained from sensed data. ABSTRACT Walker assistive devices play an important role in extending the autonomy of elderly people and in recovering the mobility of people affected by locomotion disabilities. The next generation of walkers are hoped to include embedded sensors and data processing capabilities that will allow for the extraction of objective metrics (about gait and body posture) to assist the work of physiotherapists and to enable the self-control nature of walker usage. The paper presents the Andante, our latest proposal of a smart walker intended to monitor and analyze gait in real time. The system makes use of e-textile electrodes to sense the heart rate of the user, load cells to measure the forces applied on the walker legs, and an inertial measurement unit to sense motion and orientation. These signals are sampled locally and transferred over a Bluetooth link to a remote host, where they are processed in real time. Data processing includes the detection, classification, and characterization of the steps. A rich set of parameters is presented for each step, including estimates of balance and motor coordination, step length and azimuth, and lift of the walker frame. This information can be used by physiotherapist to objectively assess the physical condition of the user and tune rehabilitation therapy if needed. The proposed solution can be easily integrated into any commercial walker without any loss of functionality. mailto:vitor.viegas@estsetubal.ips.pt ACTA IMEKO | www.imeko.org December2018 | Volume 7 | Number 4 | 34 To address these problems, several instrumented walkers have been proposed to monitor and analyze gait [9-10]. Load measurements are usually done by placing force sensors on the walker hand grips or on the walker legs [11-15]. Kinematic parameters related with human gait are often measured using accelerometers or inertial motion units (IMUs) attached to the walker frame. In this case, long-term drifts and persistent DC components must be filtered out so as not to affect the time integration of the signals [16]. Solutions based on RADAR measurements are also considered in the relevant literature [17-18], and they are successful concerning the identification of gait patterns. However, they are not particularly efficient in obtaining accurate measurements about walking distance measurements. Ultrasounds can also be used for obtaining distance measurements [19], but they are not directional and are affected by environmental factors such as temperature and humidity. Several works [20-21] have also considered the usage of image processing techniques to monitor gait. The main advantages of these methods are related to their non-invasiveness, but they have strong limitations concerning camera positioning, and it is not possible, at all, to acquire data concerning force intensities. Our team has been working on smart walkers over recent years [22-25]. We have tried a broad set of sensors, including force sensing resistors and load cells to measure force, and LIDAR and microwave Doppler RADAR to measure distance and velocity. Our work has two main purposes: first, to monitor (and eventually correct) the usage of assistive gait devices and second, to extract objective gait metrics to assist physiotherapists in their work. In this paper, we present the Andante, our latest proposal for a smart walker and the evolution of the prototype presented in [25]. It includes e-textile electrodes for capturing the heart rate of the user, load cells to measure the forces applied on the walker legs, an IMU to sense motion and orientation, and software to bind all the above together. Care was taken to preserve the native functionality of the device and to reduce the upgrade costs. The paper is organized as follows: Section II defines the geometry and metrics used in the paper; section III describes the implemented measurement system; section IV presents experimental results; and section V draws conclusions from the results. 2. PRELIMINARY DEFINITIONS A Cartesian coordinate system is established to represent the walker frame, and two indicators are defined to characterize user’s gait. 2.1. Balance The coordinate system illustrated in Figure 1 is used to study the forces applied on the walker frame. The walker legs are numbered from 1 to 4 (as quadrants) and the y-axis points to the forward direction. According to this arrangement, the centre of forces (COF) is given by: 𝐶𝑂𝐹𝑥 = 𝑊12(𝐹1−𝐹2)+𝑊43(𝐹4−𝐹3) 2(𝐹1+𝐹2+𝐹3+𝐹4) (1) 𝐶𝑂𝐹𝑦 = 𝐿(𝐹1−𝐹4)+𝐿(𝐹2−𝐹3) 2(𝐹1+𝐹2+𝐹3+𝐹4) , (2) where Fk represents the force applied on the kth leg, W12, and W43 represents the distance between the front and rear legs, corresponding roughly to the mean walker width W. L represents the distance between the front and rear legs, corresponding to the walker length. In the present case, we use a Ayudas Dinámicas, model AD230 walker [26], with the dimensions W12 = 51 cm, W43 = 53 cm, L = 45 cm, and weight = 2.5 kg. The relative deviation of the COF in relation to the geometrical centre of the walker polygon is a measure of imbalance. Conversely, the complement to one is an indicator of balance B: 𝐵(%) = 100 × (1 − √(𝐶𝑂𝐹𝑥) 2+(𝐶𝑂𝐹𝑦) 2 √(𝑊/2)2+(𝐿/2)2 × 𝛼) (3) Alpha () is a weighting factor that gives significance to B only when the user is loading the walker. It takes values from 0 to 1 depending on whether the walker is resting or is fully loaded with the user weight, as follows: 𝛼 = 𝐹1+𝐹2+𝐹3+𝐹4 𝐹𝑈 = 𝐹𝑇 𝐹𝑈 , (4) where FT represents the total force applied on the walker legs, and FU represents the user weight. 𝑷𝟏 = (+ 𝑾𝟏𝟐 𝟐 ;+ 𝑳 𝟐 ) 𝑷𝟐 = (− 𝑾𝟏𝟐 𝟐 ;+ 𝑳 𝟐 ) 𝑷𝟑 = (− 𝑾𝟒𝟑 𝟐 ;− 𝑳 𝟐 ) 𝑷𝟒 = (+ 𝑾𝟒𝟑 𝟐 ;− 𝑳 𝟐 ) Figure 1. Coordinate system of the walker frame: (a) instrumented walker (b) Cartesian plane, dimensions, and coordinates. y x W43 P1P2 P3 P4 W12 L ACTA IMEKO | www.imeko.org December2018 | Volume 7 | Number 4 | 35 2.2. Motor coordination Motor coordination refers to the correct sequence of movements needed to complete a step. Consider the state machine illustrated in Figure 2, where the states represent the gait phases, GPs, and the continuous arrows represent normal transitions between states [27-28]. If the user completes a step passing through all the gait phases, the step is classified as good; otherwise is classified as bad. The number of good steps G in the last N is an indicator of motor coordination MC: 𝑀𝐶(%) = 100 × 𝐺 𝑁 . (5) 3. MEASUREMENT SYSTEM The measurement system includes a wireless data acquisition module, an IMU, a heart rate sensor, four load cells, and software to bind all the above together. 3.1. Data acquisition Data acquisition was performed by a Shimmer3 module from Shimmer Sensing [29], including an embedded IMU, four external analog inputs (AI1-AI4) and a Bluetooth link. Wiring was passed through the tubular structure of the walker to connect the sensors to the analog inputs. Samples from all sensors (IMU and external) were acquired at a rate of 51.2 S/s and sent wirelessly to a remote host. This rate is well beyond the expected Nyquist frequency for physical movements, but not too high that it could overload the transmission and processing chain. The value itself is pre-defined in the Shimmer3 firmware. 3.2. Inertial sensors The embedded IMU is used to sense motion and orientation. It has nine degrees of freedom (9DoF) given by a 3-axis accelerometer (model KXRB5-2042, Kionix), a 3-axis gyroscope (model MPU-9150, Invensense), and a 3-axis magnetometer (model LSM303DLHC, STMicroelectronics). The IMU is placed horizontally, with its coordinate system aligned to that of the walker (shown in Figure 1). This way, the acceleration across the y axis gives motion in the forward- backward direction, and the acceleration across the z axis, subtracted by 1 g, gives motion in the vertical direction. The Shimmer3 module is also able to know the orientation by fusing the data provided by the IMU in a so-called “gradient descent algorithm [30].” The algorithm gives orientation in absolute ENU coordinates (local East-North-Up) with a delay of a few tenths of a second. The IMU must be calibrated in advance to cancel offset errors and tune gain matrices. The calibration procedure [31] is executed once, in situ, and the results are saved into a non- volatile memory. 3.3. Heart rate sensor Heart rate is sensed by a pair of dry e-textile electrodes placed over the handgrips of the walker, tied with a tiny Velcro strip. They are removable, washable, and seem like ordinary fabric, thus not causing undue stress to the user. The ECG signal is conditioned by an analog front end based on the AD8232. The signal passes through a two-pole band-pass filter, with cut-off frequencies at 7 Hz and 24 Hz, followed by an amplifier with 1000 gain. The narrow-band filter eliminates motion artefacts and line noise, but distorts the ECG waveform significantly, making it suitable only for heart rate detection. The output signal is connected to the first analog input, AI1, of the data acquisition module. 3.4. Force sensors The forces applied on the walker legs are sensed by four load cells. Each cell is attached to the extremity of a leg, using a dedicated plastic adapter grown on a low-cost 3D printer, as shown in Figure 3a. The cell contains four strain gauges fixed to a small bending beam (55.3 x 12.7 x 12.7 mm) that supports 20 kgf. Other characteristics include: nominal output sensitivity = 1 mV/V, non-linearity = 0.05 % FS (full-scale) and hysteresis = 0.05 % FS. Bending beam cells were preferred to inline/axial cells because they are much cheaper. Some engineering had to be undertaken to fit the four load cells into the three analog inputs available: • Referring to the auxiliary axes p and q, passing over the load cell pairs 1 & 3 and 2 & 4 respectively, as shown in Figure 3b, the pair (p, q) is not perfectly orthogonal because the mean walker width W is not equal to the walker length L. Nevertheless, the pair is almost orthogonal, with a rotation angle that is near to +45 ° relative to (x, y). • Each load cell is supplied at 3 V and conditioned by an instrumentation amplifier with 100 gain. The voltages are combined in pairs, subtracted from each other (1-3 and 2-4), amplified by 4 and biased around 1.5 V, as shown in Figure 3c. The result is a voltage that varies linearly between 0.3 V and 2.7 V for forces applied along the axes p and q, between -D/2 and +D/2, where 𝐷 = √𝐿2 + 𝑊2 is the walker diagonal. The COF coordinates over the auxiliary axes are given as: 𝐶𝑂𝐹𝑝 = ( 𝐷 2.4 ) × (𝑉𝐴I2 − 1.5) (6) 𝐶𝑂𝐹𝑞 = ( 𝐷 2.4 ) × (𝑉AI3 − 1.5) (7) Figure 2. Gait phases (GPs) during a walker step (the polygon delimits the support area). GP0: the walker is resting on the floor; GP1: the walker is flying; GP2: the walker is on the floor waiting for the injured foot to move forward; GP3: the injured foot is moving forward; GP4: waiting for the healthy foot to move forward; GP5: the healthy foot is moving forward. ACTA IMEKO | www.imeko.org December2018 | Volume 7 | Number 4 | 36 where VAIX represents the voltage acquired at analog input 2 or 3, in Volt. • The conversion from (p, q) to (x, y) coordinates is undertaken by applying a rotation matrix with  = -45 °: [ 𝐶𝑂𝐹𝑥 𝐶𝑂𝐹𝑦 ] = [ cos𝜃 sin𝜃 −sin𝜃 cos𝜃 ][ 𝐶𝑂𝐹𝑝 𝐶𝑂𝐹𝑞 ] (8) • Additionally, the signals from all load cells are summed together and injected in the analog input AI4 to get the total load applied on the walker. The resulting voltage varies linearly between 0 and 1.2 V for a total load between 0 and 80 kgf, thus giving: 𝐹𝑇 = ( 80 1.2 ) × 𝑉𝐴𝐼4 (9) Playing with the walker symmetry, together with some basic geometry, we were able to fit everything into just three analog inputs. 3.5. Software The samples arriving at the host are handled by the Andante application, which acts as the interface for the physiotherapist. The application was developed using Visual Studio 2012 and makes use of Shimmer C# API [32] to interact with the Shimmer3 module. The Andante application records its state on a relational database designed in Microsoft Access©. The database makes it possible to see how certain factors evolve over time (e.g., querying the performance of a given user during several therapy sessions) and to trace actions (e.g., querying which therapist assisted a given user in a given session). The database is composed in the form of five relevant tables, as shown in Figure 4 and described below: • Physiotherapists: A list of physiotherapists registered in the application. Each physiotherapist has a unique ID associated with their name. • Users: A list of users registered in the application. Each user is described according to their ID, name, age, weight, and injury (left or right limb). • Walkers: A list of four-legged instrumented walkers registered in the application. Each walker is characterized by its ID, brand, model, serial number, the width between the front legs (W12), the width between the rear legs (W43), the distance between the front and rear legs (L), and offset errors. • Sessions: A list of physiotherapy sessions overseen by the application. Each session is characterized by its ID, physiotherapist, user receiving treatment, walker in use, timestamp, and location. • Steps: The list of steps detected during a given physiotherapy session. Each step is characterized by its ID, gait metrics computed by the measurement system, and free comments added by the physiotherapist. The information in the tables of physiotherapists, users, and walkers must be edited in advance, outside of the Andante application, using Microsoft Access© tools, for instance. The other tables are updated by the Andante application in runtime. a) b) c) Figure 3. Load cells attached to the walker legs: a) photo b) auxiliary axes c) signal conditioning. Figure 4. Main window of the Andante application. y x LC1LC2 LC3 LC4 pq - COF COFy COFx D/2 1.5V AI4 100 + AI2 AI1ECG front end E-textile electrodes (c) (a) Power supply +3 V LCX: Load Cell X; Blocks based on: a) AD 8232; b) AD623; c) MCP6272. 100 (b) (b) - + 4 + + (b) LC1 LC3 1.5V 100 AI3 100 (b) (b) - + 4 + + (b) LC2 LC4 ACTA IMEKO | www.imeko.org December2018 | Volume 7 | Number 4 | 37 The main window of the Andante application has five buttons that give access to the following options (see Figure 5): • Login: Selecting this option opens a dialog box into which the physiotherapist enters the data needed to create a new physiotherapy session (the physiotherapist in charge, user receiving treatment, and walker in use). • Connect: Selecting this option establishes a Bluetooth connection with the instrumented walker. • Calibrate Sensors: A dialog box is opened to extract the offset errors of the measurement system. With the walker resting on the floor, with no external force applied, the physiotherapist is instructed to register the COF coordinates and the weight of the walker frame. These residues are stored in the database in the record corresponding to the walker, columns COFx0, COFy0, and F0. Later, during data streaming, these residues are subtracted from Equations (1) and (2) and from the numerator of Equation (4). • Stream Data: A child window is opened, and the physiotherapist can monitor the usage of the walker (see section 3.5.1). • Disconnect: The Bluetooth connection with the instrumented walker is closed. 3.5.1. Stream data child window The Stream Data child window opens a high-speed communication link to transfer data from the instrumented walker to the host (the link is unidirectional). The window launches two threads: a high-priority thread that stores the fast- arriving samples into a buffer and a low-priority thread that runs every 200 ms to process the buffered data and update the user interface. The buffer contains a variable number of samples, from 10 to a few more, depending on the computer load. An update rate of 5 frames/s is enough to give the application good responsiveness and fluidity. The buffered samples are processed sequentially in the same order in which they arrived. The processing includes the following main tasks: 1. Computation of the heart rate from the signal connected to AI1. A simple Schmitt-trigger algorithm, with fixed thresholds at 0.5 V and 1 V, is executed to detect the heart beats. The time between beats is used to compute the heart rate. 2. Computation of COFx and COFy from the signals connected to AI2 and AI3. This is done by solving Equations (6), (7), and (8) in that order. 3. Computation of the balance indicator B considering the signal connected to AI4. This is done by solving Equations (9), (4), and (3) in that order. 4. Detection of good steps by running the state machine presented in Figure 6. 5. Computation of the motor coordination indicator MC by solving Equation (5). The state machine illustrated in Figure 6 is a key element of the instrumented walker because it classifies steps as either good or bad. States 0 to 5 represent the gait phases (as in Figure 2) and state 10 represents a waiting state to rearm the machine. Transitions between states (Tfrom,to) are triggered by sensor measurements as follows: • T0,1 is enabled if FT < WEIGHT_TH. This transition occurs when the total force measured by the load cells falls below a given threshold (below the walker weight). In other words, it occurs at the beginning of a new step when the walker is lifted in the air. • T1,2 is enabled if FT > WEIGHT_TH. This transition occurs when the walker touches the floor again. • T2,3 is enabled if COFx > RIGHT_TH or COFx < LEFT_TH depending on the injury (left or right limb, respectively). This transaction occurs when the user moves forward the injured limb and applies force on the opposite side. The injured limb is the first to move forward. The type of disability must be defined in advance to determine the threshold value. • T3,4 is enabled if COFx < RIGHT_TH or COFx > LEFT_TH depending on the injury (left or right limb, respectively). This occurs when the user alleviates the force previously applied on the walker, making COFx return to the origin. Figure 5. Main window of the Andante application. Figure 6. State machine used to classify steps as good or bad. 0 T0,1 1 T1 ,2 2 T2 ,3 3 T3 ,4 4 T4,5 5 T5,0 T2,0T4,0 10 T10,0 T4,10 T2,10 ACTA IMEKO | www.imeko.org December2018 | Volume 7 | Number 4 | 38 • T4,5 is enabled if COFx < LEFT_TH or COFx > RIGHT_TH depending on the injury (left or right limb, respectively). This transaction occurs when the user moves forward the healthy limb and applies force on the opposite side. The healthy limb shall be the last to move forward. • T5,0 is enabled if COFx > LEFT_TH or COFx < RIGHT_TH depending on the injury (left or right limb, respectively). This transaction occurs when COFx returns to the origin. • T2,0 and T4,0 are enabled if COFx moves to the wrong side, i.e., if the user moves the wrong limb forward. The machine returns to state 0 and waits for a new step. • T2,10 and T4,10 are enabled if FT < WEIGHT_TH. This transition occurs if the user lifts the walker before finishing the step. In other words, it occurs if the user aborts the step. • T10,0 is enabled if FT > WEIGHT_TH. This transition occurs when the walker touches the floor again. The machine returns to state 0 and waits for a new step. A step is marked as good if the machine passes through all the states from 0 to 5. A step is marked as bad if the user aborts it or moves forward the wrong limb. The threshold WEIGHT_TH is equal to half of the weight of the walker frame. The thresholds RIGHT_TH and LEFT_TH are dynamic and computed as follows: { 𝐿𝐸𝐹𝑇_𝑇𝐻(0) = − 𝑊 6 𝐿𝐸𝐹𝑇_𝑇𝐻(𝑘) = 𝑚𝑖𝑛𝐶𝑂𝐹𝑥(𝑘−1) 2 If (𝐿𝐸𝐹𝑇_𝑇𝐻(𝑘) > −50 mm) 𝐿𝐸𝐹𝑇_𝑇𝐻(𝑘) = −50 mm (10) { 𝑅𝐼𝐺𝐻𝑇_𝑇𝐻(0) = + 𝑊 6 𝑅𝐼𝐺𝐻𝑇_𝑇𝐻(𝑘) = 𝑚𝑎𝑥𝐶𝑂𝐹𝑥(𝑘−1) 2 If (𝑅𝐼𝐺𝐻𝑇_𝑇𝐻(𝑘) < +50 mm) 𝑅𝐼𝐺𝐻𝑇_𝑇𝐻(𝑘) = +50 mm (11) where k represents the kth good step, and min/maxCOFx(k-1) represents the minimum/maximum value reached by COFx during the previous (k - 1) good step. The processed data is shown in the graphical interface shown in Figure 7, which contains four panels: • Panel 1: The instantaneous value of the heart rate. This is useful for estimating the effort and stress felt by the user. • Panel 2: The COF is computed, and the result is presented as a cross, moving over an XY graph. When the user loads his left side, the cross moves toward negative values of X; otherwise, the cross moves toward the positive values of X. The same applies to the front/back direction over the Y axis, much like a joystick. A vertical slider gives the instantaneous value of balance B. • Panel 3: A set of six LEDs is turned on sequentially while the state machine moves forward from state 0 to state 5. If the user passes through all the gait phases successfully, all the LEDs light up and the step is marked as good. If the user violates any gait phase, the machine is reset to state 0 and the step is marked as bad. The number of good and bad steps is registered. A vertical slider gives the instantaneous value of the motor coordination MC. • Panel 4: A list of all steps detected. For each step, the following information is provided: - Step#: Index of the step. - Timestamp: Date and time of the step. - Heart rate: Last value of heart rate measured during the step. - Balance: Minimum value of balance B measured during the step. - Motor coordination: Value of motor coordination MC considering the current step. - Quality: Classification of the step (good or bad). - Lift: Lift of the walker frame while moving forward, in millimeters. The lift is estimated by double integrating the acceleration across the z axis, subtracted by 1 g = 9.81 m s-2. Prior to integration, the acceleration samples, collected only during state 1, are smoothed to remove high-frequency noise and are subtracted from the baseline to remove drift. Figure 7. Graphical interface of the Stream Data child window. ACTA IMEKO | www.imeko.org December2018 | Volume 7 | Number 4 | 39 - Step length: Length of the step, in millimeters. The distance is estimated by double integrating the acceleration across the y axis. Prior to integration, the acceleration samples, collected only during state 1, are bandpass filtered, as described above. - Azimuth: Azimuth of the walker frame, in degrees. The values 0°, 90°, 180°, and 270° correspond to north (magnetic), east, south, and west, respectively. - Failure: Details the quality of the step according to the following enumeration: none, step aborted, injured foot failed to move forward, or healthy foot failed to move forward. The physiotherapist can also add free comments to each step. The list can be saved to the database (into the Steps table) by clicking on a button. 4. EXPERIMENTAL RESULTS The experimental tests were undertaken using a standard four-leg walker, Ayudas Dinámicas model AD230 [26], with dimensions W12 = 51 cm, W43 = 53 cm, L = 45 cm, and weight = 2.5 kg. The first test was intended to evaluate the accuracy of the COF measurements. The four walker legs were placed over four digital scales, model Spider 1S-60S from Mettler Toledo, and load was applied on the walker frame to move the COF to the 2nd quadrant. The COF coordinates were computed knowing the geometry of the walker, and the weights were indicated by the scales (with a resolution of 20 gf). The COF coordinates measured by the Andante application were compared against the COF coordinates computed from the scales (the scales serve as a reference). The experiment was repeated, rearranging the load to move the COF to the 4th quadrant. Table 1 shows the COF coordinates measured by both systems (Andante and scales) in both arrangements (2nd and 4th quadrants). The distances to the origin r are also shown, as well as the corresponding relative errors . The values obtained, below 10 %, are acceptable considering that the load cells are low cost and their alignment is not perfectly orthogonal (as explained in section 3.4). The second test was undertaken in order to understand how the COF swings to the right and to the left during a good step. Figure 8 shows precisely that, together with the value of balance B. Both are related, with the balance falling whenever the COF moves away from the origin. The curves are explained as follows: • State 0 was omitted because it is a waiting state. • State 1 begins when the walker is lifted in the air and ends when the walker touches the floor again. • State 2 is a waiting state that ends when the user moves the injured limb forward (making COFx cross LEFT_TH). • During state 3, the user loads his left side to compensate for the lack of support on the injured limb. COFx then returns to the origin and the machine moves to the next state. • State 4 is another waiting state that ends when the user moves the healthy limb forward (making COFx cross RIGHT_TH). • During state 5, the user transfers part of his weight to the right. The load applied during state 5 is lower than that applied on state 3 because the healthy limb moves more easily than the injured limb. The step ends when both feet stay side- by-side, making COFx return to the origin and restart the state machine. The third test was undertaken with the help of a user with impaired gait caused by an injury in the right lower limb. The user was instructed to follow an imaginary straight line, first in an early stage of the therapy Figure 9a) and then some weeks later in a later stage of the therapy (Figure 9b). The XY graphs cover 12 steps, with each step represented by a line segment. The length and angle of the segment represent the traveled distance and azimuth of the walker. The user moves from the origin (0, 0) to the periphery. Table 2 summarizes the metrics obtained for both experiments. The averages and standard deviations cover the 12 steps, except for the motor coordination MC, which considers only the final value. The user followed a trajectory that was almost linear in both experiments, with mean squared errors equal to 9.3 cm and 2.2 cm, in the early and final stages of the therapy, respectively. In fact, all metrics show that the physical condition of the user has improved: balance and motor coordination increased, the total Table 1. Comparison between the Andante and a reference system regarding the computation of COF coordinates. Experiment COF coordinates Distance to origin r Andante Scales Andante Scales  2nd quadrant (-122; 78) mm (-126; 96) mm 145 mm 158 mm 8.2 % 4th quadrant (180; -44) mm (194; -45) mm 185 mm 199 mm 7.0 % Figure 8. Synchronized plots of COFx and balance (B) during a good step. The numbered circles have correspondence with the states of Figure 6. Table 2. Gait metrics acquired while the user was following an imaginary straight line. Experiment Quantity Sub-quantity Early stage Final stage Balance B (%) average 49 78 MC (%) final 60 90 Walker lift (cm) average 1.3 6.5 std 1.2 1.5 Step length (cm) average 21.2 33.6 std 9.4 8.9 Total travelled distance (m) ----- 2.54 4.03 0 10 20 30 40 50 60 70 80 90 100 -250 -200 -150 -100 -50 0 50 100 150 0 0,5 1 1,5 2 2,5 3 3,5 4 4,5 5 B a la n ce ( % ) C O Fx ( m m ) Time (s) COFx Balance 1 2 3 4 5 ACTA IMEKO | www.imeko.org December2018 | Volume 7 | Number 4 | 40 distance traveled also increased, steps became longer and more regular, and the walker began to be handled more easily (as indicated by higher lifts). 5. CONCLUSION The experimental results show that the Andante is able to detect and classify steps on a standard four-legged walker. Each step is characterized by a rich set of parameters, including estimates of balance and motor coordination, step length and azimuth, and lift of the walker frame. This record of information can be used by a physiotherapist to objectively assess the physical condition of the user. If these records are saved during multiple sessions, the physiotherapist can look at them, understand how the rehabilitation therapy is progressing over time, and take corrective actions if needed. ACKNOWLEDGEMENT The work was supported by Instituto de Telecomunicações and Fundação para a Ciência e Tecnologia, projects PTDC/DTPDES/1661/2012 and PTDC/DTP-DES/6776/ 2014. REFERENCES [1] C. A. Werner. The older population: 2010. 2010 Census Briefs, U.S. Census Bureau. https://www.census.gov/ prod/cen2010/briefs/c2010br-09.pdf (February 2018) [2] Federal Interagency Forum on Aging-Related Statistics. Older Americans 2008: key indicators of well-being. https://agingstats.gov/docs/PastReports/2008/OA2008.pdf (February 2018). [3] European Commission. The demographic future of Europe – from challenge to opportunity. http://europa.eu/ legislation_summaries/employment_and_social_policy/situation _in_europe/c10160_en.htm (February 2018). [4] L. Vogt, K. Lucki, M. Bach, W. Banzer. Rollator use and functional outcome of geriatric rehabilitation. Journal of Rehabilitation Research & Development 47(2) (2010), pp. 151-156. [5] S. M. Bradley, C. R. Hernandez. Geriatric assistive devices. American Family Physician Journal 15, 84(4) (2011) pp. 405-411. [6] S. R. Faruqui, T. Jaeblon. Ambulatory assistive devices in orthopaedics: uses and modifications. Journal of the American Academy of Orthopaedic Surgeons 18(1) (2010) pp. 41-50. [7] H. Bateni, B. E. Maki. Assistive devices for balance and mobility: benefits, demands, and adverse consequences”. Archives of Physical Medicine and Rehabilitation 86(1) (2005) pp. 134-145. [8] J. A. Stevens, K. Thomas, L. Teh, Al Greenspan, Unintentional fall injuries associated with walkers and canes in older adults treated in U.S. emergency departments. Journal of the American Geriatrics Society 57(8) (2009) pp. 1464-1469. [9] Joel A. DeLisa, Gait analysis in the science of rehabilitation. Rehabilitation Research and Development Service, Department of Veterans Affairs, 1998. [10] A. Muro-de-la-Herran, B. Garcia-Zapirain, A. Mendez-Zorrilla. Gait analysis methods: an overview of wearable and non-wearable systems, highlighting clinical applications. Sensors Review 14(2) (2014) pp. 3362-3394. [11] R. A. Bachschmidt, G. F. Harris, G. G. Simoneau. Walker-assisted gait in rehabilitation: a study of biomechanics and instrumentation. IEEE Transactions on Neural Systems and Rehabilitation Engineering 9(1) (2002) pp. 96-105. [12] M. Alwan, A. Ledoux, G. Wasson, P. Sheth, C. Huang, Basic walker-assisted gait characteristics derived from forces and moments exerted on the walker’s handles: results on normal subjects. Medical Engineering and Physics 29 (2007) pp. 380-389. [13] A. D. C. Chan, J. R. Green. “Smart rollator prototype”, IEEE International Workshop on Medical Measurements and Applications (MeMeA), Ottawa, Canada, May 2008. [14] J. M. Dias Pereira, Octavian Postolache, Vítor Viegas, “A low-cost measurement system to extract kinematic parameters from walker devices”, Proc. of IEEE International Instrumentation and Measurement Technology Conference (I2MTC), May 11-14, 2015, Pisa, Italy, pp. 1991-1996. [15] E. Sardini, M. Serpelloni, M. Lancini, Wireless instrumented crutches for force and movement measurements for gait monitoring. IEEE Transactions on Instrumentation and Measurement 64(12) (2015) pp. 3369-3379. [16] I.-Min Lee, E. J. Shiroma, Using accelerometers to measure physical activity in large-scale epidemiological studies: issues and challenges. British Journal of Sports Medicine 48(3) (2014) pp. 197-201. [17] O. Postolache, P. Silva Girão, G. Postolache, G. Mendes. “Cardio- respiratory and daily activity monitor based on FMCW Doppler radar embedded in a wheelchair”, Proc. of 33rd Annual International Conference of the IEEE Engineering in Medicine and Biology Society, Sept. 2011, Boston, MA, U.S.A, pp. 1917- 1920. [18] G. Postolache, P. Silva Girão, O. Postolache. “Applying smartphone apps to drive greater patient engagement and personalized physiotherapy”, Proc. of IEEE International Symposium on Medical Measurements and Applications (MeMeA), Jun. 2014, Lisbon, Portugal, pp. 1-6. (a) (b) Figure 9. User following a linear trajectory: a) in the early stage of the therapy; b) in a later stage of the therapy. https://www.census.gov/prod/cen2010/briefs/c2010br-09.pdf https://www.census.gov/prod/cen2010/briefs/c2010br-09.pdf https://agingstats.gov/docs/PastReports/2008/OA2008.pdf http://europa.eu/legislation_summaries/employment_and_social_policy/situation_in_europe/c10160_en.htm http://europa.eu/legislation_summaries/employment_and_social_policy/situation_in_europe/c10160_en.htm http://europa.eu/legislation_summaries/employment_and_social_policy/situation_in_europe/c10160_en.htm ACTA IMEKO | www.imeko.org December2018 | Volume 7 | Number 4 | 41 [19] A. Ekimov, J. M. Sabatier. Human motion analyses using footstep ultrasound and Doppler ultrasound. Journal of the Acoustic Society of America 123(6) (2008) pp. 149-154. [20] X. Cai, G. Han, J. Wang, “Assessment of gait parameters during unconstrained straight-line walking using single camera”, Proc. of 7th IEEE International Conference on Awareness Science and Technology (iCAST), Sept. 2015, Qinhuangdao, China, pp. 72-77. [21] X. Cai, G. Han, X. Song, J. Wang. Single-camera-based method for step length symmetry measurement in unconstrained elderly home monitoring. IEEE Transactions on Biomedical Engineering 64(11) (2017) pp. 2618-2627. [22] O. Postolache, P. Girão, J. M. Dias Pereira, G. Postolache. “Smart walker for pervasive healthcare”, Proc. of International Conference on Sensing Technology (ICST) Vol. 1, Dec. 2011, Palmerston North, New Zealand, pp. 1-5. [23] O. Postolache, J. M. Dias Pereira, V. Viegas, P. Silva Girão, “Gait rehabilitation assessment based on microwave Doppler radar embedded in walkers”, Proc. of IEEE International Symposium on Medical Measurement and Applications (MeMeA), May 7-9, 2015, Torino, Italy, pp. 208-213. [24] J. M. Dias Pereira, V. Viegas, O. Postolache, P. Silva Girão, “Combining distance and force measurements to monitor the usage of walker assistive devices”, Proc. of IEEE International Instrumentation and Measurement Technology Conference (I2MTC), May 22-25, 2017, Torino, Italy, pp. 1-6. [25] V. Viegas, J. M. Dias Pereira, O. Postolache, P. Silva Girão, “Application of force and inertial sensors to monitor the usage of walker assistive devices”, Proc. of 22nd IMEKO TC4 International Symposium, Sept. 2017, Iasi, Romania, pp. 189-194. [26] Ayudas Mecánicas, Manual de usuário AD230AD/ AD233AD/ AD232. https://www.ayudasdinamicas.com/caminador-de- incorporacion.pdf (February 2018). [27] D. A. Winter, Biomechanics of normal and pathological gait: implications for understanding human locomotor control. Journal of Motor Behavior 21(4) (1989) pp. 337-355. [28] E. Marder, R. L. Calabrese, Principles of rhythmic motor pattern generation. Physiological Reviews 76(3) (1996) pp. 687-717. [29] Shimmer. SHIMMER3 IMU UNIT. http://www.shimmersensing.com/products/shimmer3-imu- sensor (December 2018). [30] S. O. H. Madgwick, A. J. L. Harrison, R. Vaidyanathan, “Estimation of IMU and MARG orientation using a gradient descent algorithm”, Proc. of the IEEE International Conference on Rehabilitation Robotics, 29 June - 1 July 2011, Zurich, Switzerland, pp. 1-7. [31] Shimmer, 9DoF Calibration Application User Manual Rev. 2.5a, 2014. [32] Shimmer. SHIMMERCAPTURE/SHIMMER C# API. http://www.shimmersensing.com/products/shimmercapture (December 2018). https://www.ayudasdinamicas.com/caminador-de-incorporacion.pdf https://www.ayudasdinamicas.com/caminador-de-incorporacion.pdf http://www.shimmersensing.com/products/shimmer3-imu-sensor http://www.shimmersensing.com/products/shimmer3-imu-sensor http://www.shimmersensing.com/products/shimmercapture