You are on page 1of 18

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/323123181

Comparison of Human-Robot Interaction Torque Estimation Methods in a


Wrist Rehabilitation Exoskeleton

Article  in  Journal of Intelligent & Robotic Systems · June 2019


DOI: 10.1007/s10846-018-0786-8

CITATIONS READS

15 376

3 authors, including:

Mohammad Hossein Saadatzi Ozkan Celik


Colorado School of Mines 37 PUBLICATIONS   789 CITATIONS   
31 PUBLICATIONS   181 CITATIONS   
SEE PROFILE
SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Force/torque estimation in a wrist rehabilitation robot View project

Workspace and Kinematic Sensitivity Analysis of Parallel Robots View project

All content following this page was uploaded by Mohammad Hossein Saadatzi on 28 March 2018.

The user has requested enhancement of the downloaded file.


Journal of Intelligent & Robotic Systems
https://doi.org/10.1007/s10846-018-0786-8

Comparison of Human-Robot Interaction Torque Estimation Methods


in a Wrist Rehabilitation Exoskeleton
Mohammadhossein Saadatzi1 · David C. Long1 · Ozkan Celik1

Received: 2 June 2017 / Accepted: 30 January 2018


© Springer Science+Business Media B.V., part of Springer Nature 2018

Abstract
In this paper, experimental implementation and comparative accuracy evaluation of five methods for estimation of human-
robot interaction torques are presented. These methods vary from the simplest case of using solely commanded motor
torques, to partial consideration of the robot dynamics, to advanced methods considering full robot dynamics such as inverse
dynamics (ID) and nonlinear disturbance observer (NDO) based algorithms. Dynamic and friction models of the exoskeleton
were developed and their parameters were identified using an evolutionary optimization algorithm to ensure high parameter
accuracy. When used with accurate model parameters, ID method led to 20 to 22% average error, while NDO method
generated 12 to 18% average error, as evaluated in experiments with a force sensor. These values compare to average error
values of up to 132% for using motor torques only, and between 25 to 69% when partial dynamics were used. A sensitivity
analysis of the ID and NDO methods to inaccuracies in model parameter estimations revealed considerable sensitivity of
these advanced methods to model parameter variations. A summary is provided for the typical estimation accuracy levels
that can be expected of these methods and discuss the limitations and considerations that should be taken into account for
their use.

Keywords Nonlinear disturbance observer · Force estimation · System identification · Sensitivity analysis · Friction
modeling · Exoskeletons

1 Introduction Since the initiation of rehabilitation robots in late 1990s,


they have found an increasing number of applications in
In the United States, stroke and spinal cord injury (SCI) are therapy protocols due to a variety of advantages they offer
major causes of long term adult disability. Approximately [8, 9, 12, 24, 28]. These advantages include increasing
795,000 stroke incidents take place every year, leading to an patient motivation and engagement in therapy (thereby
estimated combined direct and indirect cost of $68.9 billion improving therapy outcomes), and enabling quantitative and
[30]. With close to 12,000 incidents per year, SCI leads to objective measures of motor function improvement level [8,
estimated annual direct and indirect costs of $14.5 billion 12, 28].
and $5.5 billion, respectively [6]. Repetitive movement Interaction forces or torques in physical human-robot
exercises help re-establish part of the lost motor function for interaction scenarios are critical variables for ensuring
both impairments [10, 25, 34]. safety of the user and achieving fluid human–robot
interaction [11, 15]. For rehabilitation exoskeletons in
particular, interaction torques between the robot and the
 Ozkan Celik patient provide valuable information for motor function
ocelik@mines.edu
assessment, and for planning and adaptation of exercises
Mohammadhossein Saadatzi
msaadatz@mines.edu
in robot-aided therapy protocols. The golden standard with
force/torque sensors these applications significantly adds to
David C. Long
dalong@mines.edu device cost. They generally also add to device complexity
and weight, unless custom, miniaturized force sensing
1 Department of Mechanical Engineering, Colorado School of structures are integrated into existing device components.
Mines, Golden, CO 80401, USA Use of force sensors becomes prohibitively expensive,
J Intell Robot Syst

especially for rehabilitation robots intended for use at home. systems, but limited to planar kinematic configurations with
Accurate estimation of interaction forces/torques in physical revolute joints [14]. Chen et al.’s formulation has been
human–robot interaction carries the promise to address the widely adopted for a variety of applications and purposes,
limitations imposed by force sensors. including reducing cost and improving performance of
In literature, methods of varying complexity levels have force-feedback devices. More recently, Mohammadi et al.
been proposed and used for interaction force/torque estimation. [33] extended Chen et al.’s nonlinear DO formulation to
These methods range from those relying solely on comman- cover multi-DOF serial manipulators with non-planar conf-
ded actuation torques (motor currents) [22, 32] to those that igurations as well as with both prismatic and revolute joints.
take into account identified complete device dynamics [2, Gupta and O’Malley adapted and implemented DO for
16, 19, 36]. In research spanning the last two decades, force/ estimation and closed-loop control of user interaction forces
torque estimation using device dynamics were pursued for in a single-DOF haptic interface [21]. They showed that
industrial manipulators [1, 20, 23, 26, 35, 37]. Application the DO-based closed-loop control of interaction forces
of these methods for interaction force/torque estimation in improved the fidelity of the haptic interaction, as quantified
exoskeletons was pursued more recently by Ugurlu et al. by an increase in transparency bandwidth. In a rehabilita-
[44, 45], where disturbance observers were used. tion exoskeleton application, Ugurlu et al. proposed using
In this paper, the focus is on a comparative evalua- independent joint-based disturbance observers in combina-
tion of five forces/torque estimation methods in physical tion with feedforward cancelation of joint gravity and fric-
human-robot interaction and an accuracy evaluation of each tion effects, to obtain an estimation of interaction torques
as tested on a two-DOF wrist rehabilitation exoskeleton. between a user and a shoulder-elbow exoskeleton [44, 45].
Although individual studies that report force/torque estima- Ugurlu et al. used a formulation based on that of Murakami
tion using one of these algorithms exist in the literature, a et al., while Gupta and O’Malley used the formulation
comparative evaluation of them in a single study has not introduced by Chen et al. Gupta and O’Malley’s experi-
been previously provided. ments were limited to a single DOF device that did not
The first method makes use of only commanded motor include gravitational effects or coupled dynamic effects.
currents (torques). The second method adds consideration Although Ugurlu et al.’s implementation considered gravi-
of gravitational effects, while the third adds that of friction tational forces and involved multiple DOF, the independent
effects, in addition to gravity. In the fourth method, the joint-based implementation excluded consideration of cou-
required force/torque necessary for a given motion of the pled multi-DOF effects.
robot is calculated using the full inverse dynamic model of In earlier work [40], a dynamic model of a wrist and
the system. Then, this force/torque is subtracted from the forearm rehabilitation exoskeleton, with inertial parameters
input torque/force driving the robot joints. The fifth and estimated from SolidWorks and friction parameters esti-
final method uses a nonlinear disturbance observer. mated through experiments, was presented. Also presented
The contributions of this paper are the following: (1) were initial implementation of a NDO for torque estimation,
Implementation of a nonlinear disturbance observer (NDO) and verification of its estimates by comparing them with
algorithm that is able to handle coupled, multi-DOF the torques predicted by the friction model in an unloaded
dynamics for estimation of interaction torques between movement scenario. The current manuscript significantly
a user and an exoskeleton is presented for the first expands and this work to include estimation accuracy evalu-
time. (2) An experimental comparison of said NDO ation via dynamic payload and force sensor (dynamic load-
algorithm and an inverse dynamics (ID) approach, as ing) experiments; improvement of model parameter identifi-
well as other simpler approaches, using a single testing cation accuracy via evolutionary algorithms, and sensitivity
platform, where accuracy of estimations for each method analyzes for the ID and NDO estimators with simulations
are experimentally quantified, is provided. (3) Sensitivity considering variations in model parameter values.
analyzes and corresponding simulations for the ID and NDO The paper is structured as follows. In Section 2, a
methods, quantifying and comparing their sensitivity to brief description of the rehabilitation exoskeleton used
model identification errors, are presented. as the test bed is provided, as well as its dynamic and
Disturbance observers were proposed by Ohnishi et al. friction models, the identification protocol that is used
and Lee et al. for improving closed-loop control performan- to improve the accuracy of the models, and torque/force
ce in motion control systems [29, 38]. Murakami et al. estimation algorithms implemented. In Section 3, results
proposed a linear DO formulation for sensorless reaction and discussion of model identification, torque estimation,
torque estimation and control in a multi-DOF industrial and sensitivity analyzes and simulations are presented.
manipulator [35]. Chen et al. presented a nonlinear DO Section 4 concludes the paper.
formulation that extended the linear stability proof for the For the convenience of readers all the symbols used in
DO provided by Murakami et al., to nonlinear multi-DOF this paper are defined in Table 1. he paper is structured as
J Intell Robot Syst

Table 1 Nomenclature: a detailed explanation of the parameters are that is used to improve the accuracy of the models,
provided within the text when they are used for the first time and torque/force estimation algorithms implemented. In
Symbols Explanation Section 3, results and discussion of model identification,
torque estimation, and sensitivity analyzes and simulations
Dynamic model parameters are presented. Section 4 concludes the paper.
M Matrix of inertial terms
mi Links’ mass
ixx , iyy , izz , ixy , ixz , iyz Links’ inertial parameters 2 Methods
C Matrix of Coriolis and centrifugal terms
cix , ciy , ciz Links’ center of mass location
2.1 Device Description
G Vector of gravity terms
τa Actuation torques vector
The torque estimation algorithms are implemented and
τ dyn Dynamics of mechanism (torque vector)
τd Disturbance torque vector
tested on Wrist Gimbal 2 DOF (WG2), a wrist and
τ int Interaction (exogenous) torque vector forearm rehabilitation exoskeleton, shown in Fig. 1. WG2
τ f ri Joint friction vector has two active DOF: forearm pronation/supination (PS)
Friction model parameters and wrist flexion/extension (FE). The PS and FE joints
aij Linear friction model slope are actuated using brushed DC motors (by Maxon) and
bij Linear friction model y-intercept cable drive mechanisms with 15:1 and 16:1 gear ratios,
Differential Evolution algorithm parameters respectively. Motor shafts directly drive the sector pulleys
xi (t) Parent vector i at iteration t (drums) through the cable drive transmissions, and no
xi (t) Offspring vector i at iteration t additional gearboxes (or ratios) are used, enabling a highly
ui (t) Trial vector i at iteration t backdrivable system. Control software is implemented
Nonlinear disturbance observer parameters in Matlab/Simulink (by MathWorks Inc.) and QuaRC
L Observer gain matrix (by Quanser Inc.). Control loop rate was 1 kHz for
z, p Auxiliary vectors
all experiments reported in this paper. Additional device
Sensitivity analysis parameters
specifications can be found in [31].
τ dN DO Disturbance estimated using NDO method
τ dI D Disturbance estimated using ID method
S dN DO , S dI D Estimated disturbance sensitivity
2.2 Device Dynamics
α Arbitrary robot parameter
Figure 2 depicts a CAD of WG2 together with the
coordinate frames assigned to the robot for analysis.
follows. In Section 2, a brief description of the rehabilitation Denavit-Hartenberg convention has been followed to extract
exoskeleton used as the test bed is provided, as well as the kinematic and dynamic equations of the robot [41].
its dynamic and friction models, the identification protocol Frame {0} represents the ground (base) frame for the

Fig. 1 Wrist Gimbal 2 DOF (WG2) is a two-degree-of-freedom wrist target position matching task. The first joint/DOF is indicated. b WG2
and forearm exoskeleton for motor rehabilitation of stroke and spinal side view with a user strapped in and holding the robot’s handle. The
cord injury patients. a WG2 front view with a visual interface for a second joint/DOF is indicated
J Intell Robot Syst

2.3 Friction Model

An initial friction model was completed separately for


each joint using a methodology similar to that presented
in [7]. Later, the friction model parameters were optimized
as part of the system identification process (details of
which is covered in the next subsection). For the initial
friction model, the robot was oriented in a configuration
that eliminated effects of gravity for the joint of interest,
Fig. 2 Coordinate frame assignment based on Denavit-Hartenberg and the joint was driven under PD feedback control to
convention [41]. θ1 is the joint variable for the rotation of frame {1} track constant velocity trajectories. During the motion of
w.r.t. frame {0}, along z0 . θ2 is the joint variable for the rotation of
frame {2} w.r.t. frame {1}, along z1 each joint, applied motor torque was recorded, and Coriolis
torque computed via Eq. 2 was subtracted to isolate friction
torques. The average applied torque during the rotations
mechanism. Frames {1} and {2} are attached to the ends of was considered as the friction torque. Each joint has a
the first and second links, respectively. D-H parameters for limited range of rotation. To ensure consideration of only
the robot are provided in Table 2. Following Newton-Euler constant velocity movement along these ranges of motion,
formulation [41], joint torques due to the dynamics of the data corresponding to the initiation and termination of the
mechanism (τdyn ) can be written as joint motion were excluded. Based on observation of the
experimental data, a piecewise linear function with four
τ dyn = M(θ)θ̈ + C(θ, θ̇ )θ̇ + G(θ). (1)
pieces for the first joint, and two pieces for the second joint
In this equation, θ is the vector of joint displacements were considered (see Fig. 5 for friction modeling results).

(θ1 is the forearm displacement and θ2 is the wrist ⎪
⎪ a13 θ̇1 + b13 θ̇1 > 0.5

flexion/extension displacement, see Figs. 1 and 2 ). M is a11 θ̇1 + b11 0 < θ̇1 < 0.5
τ̂f ri,1 = (4)
the matrix of inertial terms, C is the matrix of Coriolis ⎪
⎪ a12 θ̇1 + b12 −0.5 < θ̇1 < 0

and centrifugal terms, and G is the vector of gravity terms. a14 θ̇1 + b14 θ̇1 < −0.5
Elements of these three matrices and complete dynamic 
a21 θ̇2 + b21 θ̇2 > 0
equations of the system are provided in Appendix. The τ̂f ri,2 = (5)
relation between actuator (input) torques vector, robot a22 θ̇2 + a22 θ̇2 < 0
dynamics and disturbance torque vector, is given by The values of parameters a and b are identified
experimentally as discussed in the following sections. As it
τ a = τ dyn − τ d . (2) is evident in Fig. 5, the friction models have a discontinuity
at zero velocity, which makes them extremely sensitive to
Also, noise for small velocity values. For a more gradual change
τ int = τ d − τ f ri . (3) at zero velocity, the models were smoothed by addition of a
steep transition passing through the origin, and connecting
In these equations, τ f ri represents the joint friction the line segments at θ̇ = ±0.2 rad/s.
vector, τ int represents the exogenous (interaction) torques
on the robot joints, τa represents the actuation torques 2.4 System Identification
and τd represents the disturbance torques. Calculation of
interaction torques by employing this equation requires the For model parameter identification, torques applied by the
dynamic model of the robot (M, C and G), the friction motors (calculated from motor currents) to the joints were
model of the robot, input torques and angular kinematics of recorded during a swept-sine position reference trajectory
the system. The model parameters can be found using either tracking scenario under PD control, simultaneously for
CAD software and/or system identification techniques. joints 1 and 2. The duration of the recording was 12 seconds
and the frequency range for the swept-sine signal was 0.38–
Table 2 Link parameters for Wrist Gimbal 2 DOF (WG2) wrist and
1.22 Hz for joint 1, and 0.48–1.62 Hz for joint. Frequency
forearm rehabilitation exoskeleton ranges were selected to be appropriate for rehabilitative
movements, and to avoid device torque saturation. The data
Link ai αi di θi was downsampled to 100 Hz to speed up the optimization
1 0 - π2 d1 θ1 − π2
procedure for parameter identification.
2 a2 0 0 −θ2 − π Recorded torques were compared to estimated torques
2
by feeding the position and velocity data to the robot
J Intell Robot Syst

dynamic and friction models. Similar comparisons were Based on the dynamic equations provided in Appendix, 14
previously reported by An et al. [4] to evaluate effective- variable parameters appear in the dynamic model:
ness of an inertial parameter estimation method for robotic
manipulators. Differential Evolution (DE) [39, 43], an evo- Mass of the links: m1 , m2
lutionary optimization technique, was used to reduce the Center of mass location of the links: c1x , c1z , c2x , c2y , c2z
error between the input motor torques and model estimated
torques through changing the parameter values of the mod- Inertial parameters: i1yy , i2xx , i2yy , i2zz , i2xy , i2xz , i2yz
els at every optimization iteration. Differential Evolution Values estimated using SolidWorks were used as initial
(DE), in comparison with other Evolutionary Algorithms values for these parameters. In order to obtain physically
(EA), such as genetic algorithms and evolutionary strat- reasonable or valid values for these parameters, following
egy [18], differs significantly in the sense that distance and ranges of variation (parameter bounds) were considered in
direction information from a population are used to guide optimization:
the search process. Details of the DE algorithm are provided
in the following subsections. – Mass of the links to change in the range 0.5x to 1.5x of
their initial values obtained from SolidWorks.
2.4.1 Differential Evolution Algorithm – Mass moments of inertia parameters to change in the
range 0x to 2x of their initial values.
In evolutionary algorithms (EA), variation from one – Center of mass and mass products of inertia parameters
generation to the next is usually achieved by applying to change in the range − 2x to + 2x of their initial
crossover and/or mutation operators [18]. In DE, mutation values.
is applied first to generate a trial vector, which is then In the second set, in addition to the parameters of the
used within the crossover operator to produce one offspring. dynamics model, the following parameters of the friction
The DE mutation operator produces a trial vector for each models in Eqs. 4 and 5 were also considered:
individual of the current population by mutating a target
vector with a weighted differential. This trial vector then First joint friction parameters: a11 , b11 , a12 , b12 , a13 , a14
gets used by the crossover operator to produce an offspring. Second joint friction parameters: a21 , b21 , a22 , b22
For each parent xi (t), a trial vector ui (t) is generated as
Note that the friction model of the first joint is
follows: Select a target vector, xi1 (t), from the population.
continuous at θ̇1 = ±0.5 rad/s. Hence, instead of
Then, randomly select two individuals, xi2 and xi3 , from the
considering independent parameters (genes) for b13 and b14
population. The corresponding trial vector is given by:
as optimization parameters, they were computed using the
following equations, which ensure continuity of the friction
ui (t) = xi1 (t) + β(xi2 (t) − xi3 (t)), (6) model at θ̇1 = ±0.5 rad/s
b13 = 0.5(a11 − a13 ) + b11 (7)
where β ∈ [0, ∞] is the scale factor, controlling the
amplification of the differential variation. The DE crossover
operator implements a discrete recombination of the trial b14 = −0.5(a12 − a14 ) + b12 (8)
vector ui (t) with the parent vector xi (t) to produce Parameter values from the original friction models obtained
the offspring xi (t). In this paper, DE with (random) experimentally were used for the initiation of optimization
best population chromosome as target vector and binary routines.
crossover is used to identify the parameters of the dynamic
and friction models [18]. 2.5 Torque Estimation using Commanded Motor
A weighted combination of the torque error in both Torques and Inverse Dynamics
joints was considered as the objective function. The weights
were chosen empirically to reduce the error in both joint The simplest approach for interaction torque estimation
torques properly. After empirical tuning, a weighting factor builds on the assumption that device dynamics have a
of six was considered for the error of second joint, while a negligible effect on the actuated torques, so that they get
weighting factor of one was used for joint one. displayed to the user without being “filtered out” by the
device inherent dynamics [22, 32]. This approach can lead
2.4.2 System Parameters to reasonable estimates if (1) the motors are driven under
closed-loop current control, and (2) the device has low
For optimization, two sets of genes were considered. The inertia, low damping/friction and moves with relatively
first set included only the parameters of the dynamic model. small accelerations.
J Intell Robot Syst

Fig. 3 Block diagram for a inverse dynamics (ID) method and b nonlinear disturbance observer (NDO) method for torque estimation

Motor current-based estimations can be improved by at the joints of the robot (τ fri ) and the torque applied to
adding parts of the device dynamics, gradually approaching the robot by the patient/user (τ int ), which is the interaction
a full inverse-dynamics scenario. For robots that do not have torque of interest. Subtracting the estimation of the fric-
passive gravity balancing, the gravitational torque effects tion torque (τ̂ fri ), based on a friction model, from the total
can be significant. With the knowledge of the robot’s Jaco- disturbance, provides the interaction torque. The nonlinear
bian and link mass values, gravitational torques can be cal- disturbance observer algorithm allows τˆd to track τd .
culated and accounted for in the interaction torque estima- For the disturbance observer algorithm, the recent design
tions. These estimations can be further improved by an ex- method proposed by Mohammadi et al. [33] was used.
perimentally identified friction model for each joint that can In this section, a brief description of this formulation is
account for both linear and nonlinear joint friction effects. provided, and readers are referred to [33] for a complete
If one obtains the complete robot dynamics, also formulation and discussion of this NDO algorithm.
including the identified inertia matrix and the Coriolis There are multiple sources of disturbance. The goal of the
terms, then an Inverse Dynamics-based estimation method disturbance observer is to provide a way to estimate a single
is obtained. A block diagram for use of Inverse Dynamics lumped disturbance term which will include contributions
(ID) for interaction torque estimation is provided in Fig. 3a. from all disturbance sources. The disturbance observer
In the ID-based method, the required torque necessary proposed by Mohammadi et al. [33] takes the following
for observed motion of the robot is calculated using the form:
τ̂˙d = −Lτ̂ d + L{M̂(θ)θ̈ + Ĉ(θ, θ̇ )θ̇ + Ĝ(θ) − τ a }
complete inverse dynamic model of the system (1) and input
(9)
(actuator) torque driving the robot joints and the friction
torque is subtracted from this torque, as shown in Eqs. 2 where L is the observer gain matrix. It can be seen in this
and 3. Recent examples for implementation of this method formulation that acceleration measurements θ̈ are needed. In
for torque/force estimation include Wahrburg et al. [46] and robotic systems, typically only joint angles (displacements)
Stolt et al. [42]. are measured, and various differentiation techniques are
To implement the ID-based estimator, numerical differ- used to compute joint velocities [5, 13]. Differentiation of
entiation was used to compute θ̇ and θ̈ . After computation position signals more than once is usually problematic and
of θ̇ , a 5th order Butterworth low-pass filter with a cut-off avoided. To overcome this limitation, Mohammadi et al.
frequency of 30 Hz, was used to remove the noise. θ̈ was proposes the following re-formulation that makes it possible
computed and filtered in a similar fashion. to eliminate the need for acceleration measurements:
ż = −L(θ, θ̇ )z + L(θ, θ̇ ){Ĉ(θ, θ̇ )θ̇ + Ĝ(θ) − τ a − p(θ, θ̇ )} (10)
2.6 Torque Estimation with a Nonlinear Disturbance
Observer
τ̂ d = z + p(θ, θ̇ ) (11)
A block diagram depicting user interaction torque estima-
tion using a disturbance observer is provided in Fig. 3b. The d
p(θ, θ̇ ) = L(θ, θ̇ )M̂(θ)θ̈ (12)
total disturbance torque applied to the robot handle, τd , is dt
estimated using a nonlinear disturbance observer. The total The auxiliary variable z, and the vector p(θ , θ̇ ) are
disturbance torque estimation τˆd includes both the friction introduced to remove the need for the acceleration θ̈
J Intell Robot Syst

measurement. Given this final disturbance observer design, affect the comparative sensitivity. The disturbance torque
the vector p(θ, θ̇ ) and the matrix L(θ, θ̇ ) should be estimated using the ID method (2), is rewritten here as:
determined to complete the algorithm. The following
disturbance observer gain matrix was proposed [33], which τ dI D = τ dyn − τ a . (17)
makes L solely a function of θ : In this equation τdyn represents the torque necessary
−1 to move the robot when it is not interacting with the
L(θ ) = X−1 M̂ (θ) (13)
environment. Similarly, the disturbance torque estimated
where X is a constant invertible n × n matrix to be using the NDO method, based on Eq. 9, can be rewritten as:
determined. So by substituting Eq. 13 into Eq. 12, the vector
p is obtained as a function of only θ̇ : τ̇ dN DO = −Lτ dN DO + L(τ dyn − τ a ) (18)

p(θ̇ ) = X−1 θ̇ (14) Combining the two equations gives

Hence, eliminating the need for acceleration (θ̈ ) measure- τ̇ dN DO = −Lτ dN DO + Lτ dI D (19)
ment.
Note that at steady state (when the disturbance applied on
Consider the disturbance observer given by Eqs. 10–12
the robot handle is not changing), τ̇dN DO becomes zero, and
with the disturbance observer gain matrix L(θ ) defined in
based on Eq. 13), L always is full rank and can be dropped
equation (13) and the disturbance observer auxiliary vector
from both sides. Hence,
p defined in Eq. 14. The disturbance tracking error τd is
globally uniformly ultimately bounded if: τ dN DO = τ dI D . (20)
1. The matrix X is invertible, Also, based on Eq. 19, the difference in the transient
2. There exists a positive definite and symmetric matrix Γ behavior between τ dN DO and τ dI D can be thought of as
such that a filtering action. To show this, the scenario where L is
˙ constant1 is considered. This equation can be rewritten
X + XT − XT M̂(θ )X ≥ Γ (15)
using the Laplace notation as:
3. The rate of change of the lumped disturbance is
bounded, i.e., ∃κ > 0 such that  τ̇ d < κ for all t > 0. τ d = (sI + L)−1 L(τ dyn − τ a ) (21)
and also when the robotic manipulator is subject to slowly- Next, the sensitivity of the ID and NDO methods
varying disturbances, i.e., τ̇d ≈ 0, then the disturbance to variations in dynamic system model parameters is
tracking error converges exponentially to 0 for all τd (0) ∈ considered. Computing the derivative of Eq. 17 with respect
n . to an arbitrary system parameter α yields:
According to the above formulation, the disturbance
∂ ∂τdyn
observer design problem reduces to finding a constant τd = . (22)
∂α ∂α
invertible matrix X such that the inequality (15) is satisfied.
Define the matrix Y = X−1 and assume that an upper bound Note that the input torque τ a is not a function of α.
˙ ∂
∂α τ dI D
is defibed as the sensitivity of the inverse dynamic
of  M̂(θ)  is ζ . The inequality (15) holds if the following
Linear Matrix Inequality (LMI) is satisfied: (ID) method, S I D . Taking the derivative of the Eq. 19 yields
  ∂L ∂L
Y + YT − ζ I YT Ṡ NDO = − τ dN DO − LS NDO + τ d + LS I D (23)
≥ 0. (16) ∂α I D
Y Γ −1 ∂α
The above equation represents the relationship between
Note that the LMI toolbox of MATLAB can be used to solve
the sensitivity of the two methods. At steady state
this LMI simultaneously for Y and Γ when Γ is not known.
conditions, term Ṡ NDO drops, and based on the Eq. 20, the
above equation can be simplified as:
2.7 Comparison and Sensitivity Analysis
of the ID and NDO Methods S NDO = S I D (24)

In this section, an analytical approach is pursued to establish The steady-state equality of the sensitivity of the two
a basis for comparative discussion of the ID and NDO methods can be interpreted to indicate that the differences
methods. Only these two methods are considered for the between the two would be mainly observed as time/phase
analysis since only they take into account the full device delays and in noise characteristics.
dynamics. Also worth noting is that the friction torques
(τf ri ) are neglected in the analysis that follows, since their 1 L is a function of θ ; a constant scenario corresponds to a specific

impact on the methods is identical, therefore they do not operating point/configuration for the robot.
J Intell Robot Syst

Fig. 4 a Experimental setup for


the accuracy evaluation
experiments using a single
degree-of-freedom (DOF) force
sensor, b A closer view of the
setup, where the Futek force
sensor is visible on the string.
String is overlaid with a yellow
line to improve visibility. This
setup enables multi-DOF
loading on the robot handle
using a single-DOF sensor

2.8 Experiments 3 Results and Discussion

In order to verify the accuracy of all torque estimation 3.1 Dynamic and Friction Model Identification
algorithms, two different experiments were completed,
where ground truth torque values were compared to torque Figure 5 presents the results for friction modeling. It is clear
estimates. In the first experiment (dynamic loading), a that majority of the friction is due to dry (Coulomb) friction
payload was attached to the handle of the exoskeleton and and the effect of velocity on friction torques is much smaller.
provided dynamic loading during multi-DOF movements. The slight difference between the optimized friction model
The dynamic loading effects were predictable via a and the original friction model mainly comes from changes
calculated dynamic model of the payload (based on a point in the cable tension of the cable drive mechanism. It is
mass assumption) and the identified friction model. These important to note that the contribution of friction to total
effects constituted the ground truth values for estimator torques is substantial, even in a low-friction prototype using
accuracy evaluation. The dynamic effects due to the payload
can be calculated by using the dynamic model of the robot.
Mohammadi et al. [33] considered only the static effects First joint

of a payload using the Jacobian of their system. Here, Experimental data


Torque (Nm)

0.1 Original friction model


the complete dynamic effects of the payload is instead Identified (optimized) friction
considered, by setting all parameters of the dynamic model 0

to zero, except for the mass and center of mass of the second −0.1
link with payload:
−2 −1.5 −1 −0.5 0 0.5 1 1.5 2
dθ /dt (rad/sec)
m2 = 300g, c2x = 10.2cm, c2y = c2z = 0. (25) 1
Second joint
0.1

In the second experiment (force sensor), a single-DOF


Torque (Nm)

0.05
force sensor (Futek LSB200 load cell) was used to apply 0
directly measured multi-DOF loading on the exoskeleton’s
−0.05
handle during a dynamic motion scenario. This multi-DOF
loading was achieved by attaching the force sensor to the −0.1
−2 −1.5 −1 −0.5 0 0.5 1 1.5 2
handle via a string, and hanging a counter weight to the end dθ /dt (rad/sec)
2
of the string after it was routed through a pulley mounted on
the ceiling (> 2.5 m), as displayed in Fig. 4. As the robot’s Fig. 5 Friction modeling results. Experimental data points (black
circles) are from the initial individual joint-based data collection
handle moved while the robot completed multi-DOF move- protocol. A piecewise linear function was fitted to this data (blue
ments, the direction of the measured force stayed always lines). Friction model, as identified as part of the differential evolution
upward, with a maximum deviation from vertical of 2.65◦ . optimization algorithm, is also shown (red dash-dot line)
J Intell Robot Syst

Table 3 Dynamic and friction model parameters much more closely than the initial model, but there remains
minor errors, particularly for joint 2. It was concluded that
Parameters [Units] Identification method
this remaining error arose from inaccuracies in the friction
A B C model, noticing that joint frictions depended on the ten-
sioning of the cable drive mechanisms. It should be noted
c1x [mm] − 1.6 − 3.1 − 2.9 that cable tensions are not the only factor that can impact
c1z [mm] − 5.9 1.0 1.1 the friction (and can cause the friction model to be inac-
c2x [mm] − 48.7 − 95.9 − 94.1 curate). Additional factors include temperature, lubrication
c2y [mm] − 4.3 − 5.0 − 4.6 and loading [3]. Therefore care should be taken to notice
c2z [mm] 53.3 − 15.7 − 19.4 significant changes in these factors, and if necessary the
i1yy [kg.cm2 ] 326.77 404.20 399.94 friction model identification should be repeated.
i2xx [kg.cm2 ] 8.80 8.65 17.59 In a second cycle of optimization, differential evolution
i2yy [kg.cm2 ] 9.42 2.59 0.00 genes also included the friction model parameters. The
i2zz [kg.cm2 ] 11.74 23.09 23.47 model with optimized dynamic and friction models
i2xy [kg.cm2 ] 0.07 − 0.39 0.11 (parameter set C in Table 3) yielded torques that tracked the
i2xz [kg.cm2 ] − 1.53 1.02 1.01 motor torques with minimal error (Fig. 6), establishing the
i2yz [kg.cm2 ] 0.01 − 0.07 − 0.01 validity of the models and the identification process.
m1 [kg] 2.176 2.838 3.135
m2 [kg] 0.216 0.142 0.142 3.2 Comparison of the Disturbance Estimation
a11 [N.m.s/rad] 0.0523 0.0523 0.0271 Methods via Sensitivity Analysis and Simulations
b11 [N.m] 0.1100 0.1100 0.1310
a12 [N.m.s/rad] 0.0475 0.0475 0.0000 Equations (17) to (21) summarize both the similarities
b12 [N.m] − 0.1010 − 0.1010 − 0.1367 and the differences between disturbance torque estimation
a13 [N.m.s/rad] − 0.0036 − 0.0036 − 0.0035 using the ID and NDO methods. The NDO’s torque
b13 [N.m] 0.1382 0.1382 0.1472 estimations can be considered to be a filtered version of
a14 [N.m.s/rad] − 0.0042 − 0.0042 − 0.0063 ID’s estimations, through a first order low-pass filter whose
b14 [N.m] − 0.1271 − 0.1271 − 0.1399 cut-off frequency is a function of L. This indicates that the
a21 [N.m.s/rad] − 0.0077 − 0.0077 − 0.0016 main difference between the two methods would be one of
b21 [N.m] 0.0527 0.0527 0.0708 noise reduction, and not accuracy. More generally, it can
a22 [N.m.s/rad] − 0.0065 − 0.0065 − 0.0015 be stated that the main advantage DO-based methods offer
b22 [N.m] − 0.0776 − 0.0776 − 0.0775 over ID-based methods is a complex filtering action, while
both methods remain fundamentally open-loop. Despite
m, i, c are mass, inertia and location of center of mass parameters. a, b being counter-intuitive, this observation applies to all DO
are coefficients for the friction model. Column A represents values for architectures, including the linear DO formulation presented
the dynamic model parameters obtained from SolidWorks, and values in [35], the Kalman filter formulation in [26], and the
for the friction model based on the experiment in Section 2.3. Column
nonlinear DO formulations in [14, 27]. The primary
B reports the parameter values from optimizing only dynamic model
parameters. Column C reports values from simultaneous optimization advantage of using the specific NDO method proposed by
of dynamic and friction model parameters [33] (and adopted here) is that it removes the necessity
of computing the acceleration (through using the auxiliary
variable z) which significantly decreases the noise of the
cable drive mechanisms with ball bearing supports at every disturbance estimation.
joint. Next, three sets of simulation results are presented for
Figure 6 and Table 3 present the results of identification the two estimation methods. The first simulation focuses on
of robot dynamic and friction models. In Fig. 6, the ground response to sensor noise. The second simulation looks into
truth for torque is given by the applied motor torques. the performance of the two methods in presence of error
The initial dynamic and friction model (parameter set A in in the dynamic model. The third simulation presents the
Table 3, where the parameter values for the dynamic model sensitivity of the methods to errors in the dynamic model.
were obtained from SolidWorks, and values for the friction Figure 7 presents the result of disturbance torque
model were based on the original friction model) does a estimation for the two different methods. Random noise was
poor job in tracking the motor torques. added to the angular position signals. Performance of both
After a first cycle of optimization, which optimized methods were optimized as much as possible via tuning.
only the dynamic model parameters (paremeter set B in Similar low-pass filters were used in the ID to smooth the
Table 3), the estimated torques track the motor torques velocity and acceleration signals, and in the NDO to smooth
J Intell Robot Syst

Recorded motor torque


Initial dynamic model and original frition model
3 Optimized dynamic model and original friction model

Joint 1 Torque (Nm)


Optimized dynamic and friction Models
2

−1

−2
0 2 4 6 8 10 12

0.6
Joint 2 Torque (Nm)

0.4

0.2

−0.2

−0.4

0 2 4 6 8 10 12
Time (sec)
Fig. 6 Accuracy of identification for robot’s dynamic and friction Optimizing only the dynamic model parameters via differential evolu-
models, evaluated during swept-sine trajectory tracking under PD con- tion significantly improves model accuracy (RMS error is 0.0688 Nm
trol. Recorded motor torque is based on motor currents. Initial dynamic and 0.0550 Nm for the first and second joints respectively). Optimiza-
model (parameter values from SolidWorks) and original friction model tion that also includes friction model parameters slightly enhances the
(parameter values from piecewise linear function fits) provide only accuracy for joint 2 (RMS error is 0.0760 Nm and 0.0333 Nm for the
a rough approximation to the actual device dynamics (RMS error is first and second joints respectively)
0.2336 Nm and 0.1076 Nm for the first and second joints respectively).

the velocity signal. For the NDO, the matrix X (observer kg.m2 , [− 0.0083,0.0048] Nm.s and [− 0.0862,0.1422] Nm,
gain, see Eq. 13) was tuned in a way that it decreased the respectively. Figure 8 illustrates the torque estimation
noise in estimations as much as possible while avoiding a results in this simulation. The two methods produce almost
considerable delay in the response (see Eq. 21). For a fair identical estimations, neither of which is successful in
comparison, the overall torque estimation output of either accurately tracking the simulated disturbance. This result
method was not filtered. is in agreement with the analysis/discussion based on the
As it is evident in Fig. 7, the noise in estimations of the analytical approach.
NDO method is significantly smaller than the noise in that of The last simulation looks into the sensitivity of the
the ID method. It is possible to reduce the noise in ID met- methods to dynamic model errors. The same observer gain
hod using stronger low pass filters within and at the output of Fig. 7 was used, without sensor noise. Symbolic math
of the estimator, but it would result in delay in estimations. toolbox of Matlab was used to compute the terms of the
In the second simulation, performance of the estimation Eqs. 22 and 23. Figure 9 shows the sensitivity of the
methods in presence of error in the dynamic model is methods to variations in parameter m2 , which was chosen
studied. To consider the effect of error in the model in as a representative parameter since its value effects both
isolation, the sensor noise and all relevant filters were joint torques. The sensitivity of the NDO method is only
removed. Also a large observer gain (X) was selected marginally smaller. In a large observer gain scenario (such
to minimize the filtering effect of the NDO method. as in Fig. 8), sensitivity of the two methods will become
To simulate the dynamic model error, the following virtually equal.
constant offsets were added to the elements of the M, It is worth noting that after estimation of the disturbance
C and G matrices, respectively: 0.015 kg.m2 , 0.15 Nm.s torque using either method, the friction needs to be
and 0.15 Nm. For a perspective, the original elements subtracted to compute the interaction force. Hence, any
of these matrices vary in intervals of [− 0.0001,0.0425] error related to the friction model of the system will
J Intell Robot Syst

Fig. 7 Analysis of effect of


Estimated torque using inverse dynamics
sensor noise on the torque
estimated using the ID and NDO Estimated torque using NDO
methods, via simulation 2 Applied disturbance torque

Joint 1 Torque (Nm)


1

−1

−2

0 2 4 6 8 10 12

Joint 2 Torque (Nm) 0.5

−0.5

−1

0 2 4 6 8 10 12
Time (sec)

Fig. 8 Analysis of the effect of


Estimated torque using inverse dynamics
model parameter errors on the
torque estimated using the ID Estimated torque using NDO
1.5
and NDO methods, via Applied disturbance torque
Joint 1 Torque (Nm)

simulation 1
0.5
0
−0.5
−1
−1.5
0 2 4 6 8 10 12

1
Joint 2 Torque (Nm)

0.5

−0.5

−1

0 2 4 6 8 10 12

Time(sec)
J Intell Robot Syst

Fig. 9 Sensitivity of the


Sensitivity of ID method to variations in m parameter
estimated torque using ID and 2
NDO methods to variations in Sensitivity of NDO method to variations in m2 parameter
the mass of the second link (m2 ) 0.4

Sensitivity (m2/s2)
0.2

−0.2

−0.4
0 2 4 6 8 10 12

0.2

Sensitivity (m2/s )
2
0

−0.2

−0.4

0 2 4 6 8 10 12
Time (sec)

directly appear in the estimated interaction torque, and the presented due to similar reasons. The signals obtained from
estimation algorithms do not affect it. Variations to other the ID and NDO-based estimation algorithms agree better
parameters led to similar sensitivity results, which are not with the force sensor data when compared to with the results
presented due to space and redundancy considerations. from the other methods. This experiment, which provides
a more direct assessment of accuracy of estimations due to
3.3 Accuracy of Torque Estimations use of an external force sensor for direct measurement of
torques on the device, indicated higher accuracy for ID and
3.3.1 Dynamic Loading NDO-based estimations than those observed in the dynamic
payload experiment reported in Fig. 10. Most possibly, part
Figure 10 presents the torque estimations together with of the error in the dynamic payload experiment is due to the
the dynamic loading effects of the attached load, during lumped mass assumption.
a sinusoidal trajectory tracking scenario under PD control. The higher frequency component of the loading effect in
Estimations using motor torques only are not presented in Fig. 11 (that was not present in the previous experiment)
this plot due to the excessively high error they exhibited is due to oscillations in the pulley and string system that
(they are however included in a comparative summary of carries the load cell. This high frequency effect, however,
accuracy evaluations presented later). In general, the ID and is still part of the external load applied on the robot and
NDO-based methods (Fig. 10b) produce estimations that are is successfully captured by the ID and NDO methods. It is
more accurate than the other methods considered (Fig. 10a). worth noting that high frequency noise in estimations by the
In this test, the mass attached to the handle of the robot (a ID method is more prevalent in this experiment and NDO
clamp) was assumed to be a point mass. As it is evident in method performs substantially better in this regard.
Fig. 10, use of the NDO for torque estimation vs. ID leads Average absolute values of the error, and relative errors
to estimations that exhibit less high frequency noise. This as compared to the average absolute value of the true
result is in agreement with the results of the analytical and signal, are summarized in Table 4 for both experiments
simulation analyzes. and all estimation algorithms. Calculations for this Table
excluded the first 1-sec of data in Figs. 10 and 11 to
3.3.2 Force Sensor avoid effects of movement and observer initiation. This
table provides the overall summary of experimental results
Figure 11 presents the results obtained from the estimation quantifying the accuracy level of interaction force/torque
algorithms along with the results obtained using the force estimation methods that can be achieved using various
sensor. Estimations using motor torques only are again not algorithms.
J Intell Robot Syst

a Torque due to dynamic load and friction effects


a Torque calculated from force sensor data
Estimated torque considering gravitational effects
Estimated torque considering gravitational effects Estimated torque considering gravitational & friction effects

Joint 1 Torque (Nm)


Estimated torque considering gravitational & friction effects 1
Joint 1 Torque (Nm)

0.5

0.5
0

0
-0.5
0 2 4 6 8 10 12
0 2 4 6 8 10 12

0
0.4

Joint 2 Torque (Nm)


Joint 2 Torque (Nm)

0.3 -0.1

0.2
-0.2
0.1

0 -0.3

-0.1 0 2 4 6 8 10 12
0 2 4 6 8 10 12
Time (sec)
Time (sec)

b Torque due to dynamic load and friction effects


b Torque calculated from force sensor data
Estimated torque using inverse dynamics
Estimated torque using inverse dynamics Estimated torque using NDO
0.8
Joint 1 Torque (Nm)
Joint 1 Torque (Nm)

Estimated torque using NDO


0.4
0.6
0.2

0 0.4

-0.2
0.2
-0.4
0
-0.6 0 2 4 6 8 10 12
0 2 4 6 8 10 12

0
Joint 2 Torque (Nm)
Joint 2 Torque (Nm)

0.3
-0.1

0.2
-0.2
0.1

0 -0.3

0 2 4 6 8 10 12
0 2 4 6 8 10 12
Time (sec)
Time (sec)
Fig. 11 Accuracy of torque estimation algorithms evaluated using a
Fig. 10 Accuracy of torque estimation algorithms evaluated in a force sensor during sinusoidal trajectory tracking under PD control. a
dynamic loading scenario (an external known load attached to the Torque estimations using motor torques and gravitational effects (blue)
robot’s handle) during sinusoidal trajectory tracking under PD control. and using friction effects in addition (magenta), in comparison with
Black lines in both plots provide the ground truth that takes into ground truth (black). b Inverse-dynamics-based (red) and the nonlinear
account robot’s friction model and the dynamic model of the attached disturbance observer (NDO)-based (green) torque estimations, in
load. a Torque estimations using motor torques and gravitational comparison with ground truth. Note the difference in y axis scaling in
effects (blue) and using friction effects in addition (magenta), the top two plots. Similar to Fig. 10, NDO-based algorithm is observed
in comparison with ground truth. b Inverse-dynamics-based (red) to be less prone to high frequency noise
and the nonlinear disturbance observer (NDO)-based (green) torque
estimations, in comparison with ground truth. NDO-based estimator
exhibits less high frequency noise methods need the calculation of the integral presented in
Eq. 10. However, computations are algebraic for 2 × 2
It is noteworthy that computations of the ID estimation matrices, and from the implementation viewpoint both of
methods and the NDO method implemented in this paper the methods were simple to compute and run in real-time.
are performed using Simulink and MATLAB on a typical Algorithms that are simpler in implementation (such
desktop computer. In comparison to ID methods, the NDO as motor current-only) lead to significant errors in
J Intell Robot Syst

Table 4 Comparison of relative accuracy for the torque estimation algorithms

Average absolute value of error in nm (percent error)


Experiment Joint I G G+Fri ID NDO

Dynamic loading 1st 0.159 (121%) 0.131 (99%) 0.100 (76%) 0.066 (50%) 0.044 (33%)
2nd 0.101 (62%) 0.073 (44%) 0.048 (29%) 0.044 (27%) 0.040 (25%)
Force sensor 1st 0.327 (78%) 0.291 (69%) 0.286 (68%) 0.093 (22%) 0.051 (12%)
2nd 0.271 (132%) 0.072 (35%) 0.051 (25%) 0.041 (20%) 0.037 (18%)

Average absolute values of error in Nm for both experiments are reported. Values in parentheses are percent error with respect to average absolute
value of true signal. Calculations excluded the first 1-sec of data in Figs. 10 and 11 to avoid effects of movement and observer initiation. I: Motor
current only-based estimation. G: Torque estimation considering the effect of gravity. G+Fri: Torque estimation considering gravity and friction.
ID: Inverse Dynamics-based estimator. NDO: Nonlinear Disturbance Observer-based estimator

torque estimations, even when a low inertia and highly Advanced parameter optimization techniques can be
backdrivable device is used, cautioning against over- used to improve accuracy of torque estimations. Smart
simplification of device dynamics. Gradually increasing algorithms, such as the Differential Evolution algorithm
the accuracy of the device dynamic model by considering implemented here, is one example that can be used for this
additional terms (such as gravity or friction), expectedly, purpose.
gradually improves the accuracy of torque estimations. By It is worth noting that among various parameters of a
looking at the force sensor experiment results (Table 4, robotic system, friction parameters are usually most prone
lower half), it is clear that even though estimations can be to change in time, and the precise knowledge of them
improved by including identified gravitational and friction considerably affect the accuracy of force/torque estimation
models on top of the applied motor torques, the average algorithms. Various methods can be employed for continued
error can still be as high as almost 70%. Achieving an accuracy of estimations. One option is execution of a
average accuracy on the order of 20% requires consideration periodic/regular system identification protocol that can
of full device dynamics, together with the friction model. update system parameters to their most recent values. Such
Finally, reaching estimation errors less that 20% is only methods can be further improved by implementing an auto-
possible with an NDO algorithm. check feature in the system, that would indicate, based on
The amount of the torque estimation error that can an evaluation of the accuracy of its estimations in a known
be tolerated varies based on the requirements of each scenario (such as a no load scenario), when a new system
specific application. Even though a relative average identification routine is necessary.
error of approximately 20% may still be intolerable in A second option is development and use of adaptive
some applications, it should be noted that exoskeleton disturbance observers that can take into account changes in
applications exist where device dynamics and friction are system model parameters as part of normal operation. An
completely neglected and minimal losses in transmission is example for an adaptive observer architecture was recently
assumed. Results presented here have quantified the amount given by Dehghan et al. [17]. Their implementation,
of error such approaches can contain as up to approximately however, neglects friction and considers only the dynamic
130%. When full robot dynamics is considered, the error model. As shown here, the contribution of friction to
can go down to as low as about 22% for ID and about overall forces/torques in the system can be significant
18% for NDO methods, given that accurate robot model and in general should not be neglected. Development
parameters are available. of adaptive disturbance observer architectures that would
The most important factor that contributes to accurate allow simultaneous updates to dynamic and friction models
torque estimations via either method is the highly accurate constitute a promising future research direction.
both friction and system dynamic models of the system.
Every estimation method will suffer from model parameter
inaccuracies. A sensitivity analysis, such as the one 4 Conclusion
presented in this work for ID and NDO methods, enables
additional critical information about the variations that can Results from implementation of five interaction torque
be expected in accuracy of estimations, given ranges of estimation algorithms on a two degree-of-freedom (DOF)
model parameter variation or amplitude of signal noise. wrist and forearm exoskeleton were presented. Robot
J Intell Robot Syst

 
dynamic and friction models were developed. Model g1
parameter identification was carried out using a differential G(θ) = (29)
g2
evolution algorithm to ensure high accuracy in parameter
values. A sensitivity analysis for inverse dynamics (ID) g1 = g(c1x m1 sin(θ1 ) + c1z m1 cos(θ1 ) + c2z m2 cos(θ1 )
and nonlinear disturbance observer (NDO) based methods −c2x m2 sin(θ2 )sin(θ1 ) + c2y m2 cos(θ2 )sin(θ1 ))
was completed. Obtained results indicated that methods
ignoring device dynamics can lead to more than 100%
g2 = gm2 (c2y sin(θ2 )cos(θ1 ) + c2x cos(θ2 )cos(θ1 )). (30)
error in torque estimations. ID and NDO methods can
produce reasonably accurate, multi–DOF interaction torque
estimations; however, their strong reliance on accurate
References
model parameters should not be overlooked. Specific
application requirements and scenarios would dictate
1. Aksman, L.M., Carignan, C.R., Akin, D.L.: Force estimation
applicability and necessity of each method. Development based compliance control of harmonically driven manipulators.
of adaptive disturbance observers can address some of the In: Proceedings of the IEEE International Conference on Robotics
limitations of presented methods and constitutes direction and Automation, pp. 4208–4213 (2007)
for future work. 2. Alcocer, A., Robertsson, A., Valera, A., Johansson, R.: Force
estimation and control in robot manipulators. In: Robot Control
2003 (SYROCO’03): a Proceedings Volume from the 7th IFAC
Symposium, Wrocław, Poland, 1–3 September 2003, vol. 1, p. 55.
Appendix: Dynamic Equations International Federation of Automatic Control (2004)
of the Exoskeleton 3. Altpeter, F.: Friction Modeling, Identification and Compensation.
Ph.D. thesis, Ecole Polytechnique Federale de Lausanne (1999)
4. An, C., Atkeson, C., Hollerbach, J.: Estimation of inertial
τ = M(θ)θ̈ + C(θ, θ̇ )θ̇ + G(θ) (26) parameters of rigid body links of manipulators. In: 24th IEEE
Conference on Decision and Control, pp. 990–995 (1985).
  https://doi.org/10.1109/CDC.1985.268648
m11 m12
M(θ ) = (27) 5. Bélanger, P.R., Dobrovolny, P., Helmy, A., Zhang, X.: Estimation
m21 m22 of angular velocity and acceleration from shaft-encoder measure-
ments. Int. J. Robot. Res. 17(11), 1225–1233 (1998)
m11 = i2xx + i1yy + i2xy sin(2θ2 ) 6. Berkowitz, M.: Spinal Cord Injury: an Analysis of Medical and
+c1x
2
m1 + c2y
2
m2 + c1z
2
m1 Social Costs. Demos Medical Publishing (1998)
7. Bernstein, N.L., Lawrence, D., Pao, L.Y., et al.: Friction
+c2z
2
m2 − i2xx sin(θ2 )2 modeling and compensation for haptic interfaces. In: IEEE
International Conference on First Joint Eurohaptics Conference
+i2yy sin(θ2 )2 + c2x
2
m2 sin(θ2 )2 and Symposium on Haptic Interfaces for Virtual Environment and
−c2y
2
m2 sin(θ2 )2 − c2x c2y m2 sin(2θ2 ) Teleoperator Systems (World Haptics Conference), pp. 290–295
(2005)
8. Brewer, B., McDowell, S., Worthen-Chaudhari, L.: Poststroke
m12 = m21 = −i2yz sin(θ2 ) − i2xz cos(θ2 ) upper extremity rehabilitation: a review of robotic systems and
+c2y c2z m2 sin(θ2 ) + c2x c2z m2 cos(θ2 ) clinical results. Top. Stroke Rehabil. 14(6), 22–44 (2007)
9. Burgar, C.G., Lum, P.S., Shor, P.C., Van der Loos, H.F.M.:
m22 = m2 c2x
2
+ m2 c2y
2
+ i2zz Development of robots for rehabilitation therapy: the Palo Alto
VA/Stanford experience. J. Rehabil. Res. Dev. 37(6), 663–73
  (2000)
c1
C(θ, θ̇ )θ̇ = (28) 10. Bütefisch, C., Hummelsheim, H., Denzler, P., Mauritz, K.H.:
c2 Repetitive training of isolated movements improves the outcome
of motor rehabilitation of the centrally paretic hand. J. Neurol. Sci.
c1 = i2xz θ̇22 sin(θ2 ) − i2yz θ̇22 cos(θ2 ) 130(1), 59–68 (1995)
11. Caputo, J.M., Collins, S.H.: A universal ankle–foot prosthesis
+2i2xy θ̇1 θ̇2 cos(2θ2 ) − i2xx θ̇1 θ̇2 sin(2θ2 ) emulator for human locomotion experiments. J. Biomech. Eng.
+i2yy θ̇1 θ̇2 sin(2θ2 ) − c2x c2z m2 θ̇22 sin(θ2 ) 136(3), 035,002 (2014)
12. Celik, O., O’Malley, M.K., Boake, C., Levin, H.S., Yozbatiran,
+c2y c2z m2 θ̇22 cos(θ2 ) + c2x
2
m2 θ̇1 θ̇2 sin(2θ2 ) N., Reistetter, T.A.: Normalized movement quality measures
−c2y
2
m2 θ̇1 θ̇2 sin(2θ2 ) − 2c2x c2y m2 θ̇1 θ̇2 cos(2θ2 ) for therapeutic robots strongly correlate with clinical motor
impairment measures. IEEE Trans. Neural Syst. Rehabil. Eng.
18(4), 433–444 (2010)
c2 = −i2 xy θ̇12 cos(2θ2 ) + 0.5i2xx θ̇12 sin(2θ2 ) 13. Chawda, V., Celik, O., O’Malley, M.K.: Application of levant’s
−0.5i2yy θ̇12 sin(2θ2 ) − 0.5c2x
2
m2 θ̇12 sin(2θ2 ) differentiator for velocity estimation and increased z-width in
haptic interfaces. In: IEEE World Haptics Conference (WHC
+0.5c2y
2
m2 θ̇12 sin(2θ2 ) + c2x c2y m2 θ̇12 cos(2θ2 ) 2011), pp. 403–408 (2011)
J Intell Robot Syst

14. Chen, W.H., Ballance, D.J., Gawthrop, P.J., nReilly, J.: A movements in stroke patients: a preliminary, feasibility study. J.
nonlinear disturbance observer for robotic manipulators. IEEE Neuroeng. Rehabil. 6(1), 1 (2009)
Trans. Ind. Electron. 47(4), 932–938 (2000) 33. Mohammadi, A., Tavakoli, M., Marquez, H., Hashemzadeh, F.:
15. Collins, S.H.: What do walking humans want from mechatronics? Nonlinear disturbance observer design for robotic manipulators.
In: Proceedings of 2013 IEEE International Conference on Control. Eng. Pract. 21(3), 253–267 (2013)
Mechatronics (ICM), pp. 24–27. IEEE (2013) 34. Muir, G.D., Steeves, J.D.: Sensorimotor stimulation to improve
16. Colomé, A., Pardo, D., Alenya, G., Torras, C.: External locomotor recovery after spinal cord injury. Trends Neurosci.
force estimation during compliant robot manipulation. In: 20(2), 72–77 (1997)
Proceedings of the IEEE International Conference on Robotics 35. Murakami, T., Yu, F., Ohnishi, K.: Torque sensorless control in
and Automation, pp. 3535–3540 (2013) multidegree-of-freedom manipulator. IEEE Trans. Ind. Electron.
17. Dehghan, S.A.M., Danesh, M., Sheikholeslam, F.: Adaptive 40(2), 259–265 (1993)
hybrid force/position control of robot manipulators using an 36. Naerum, E., Cornellà, J., Elle, O.J.: Contact force estimation
adaptive force estimator in the presence of parametric uncertainty. for backdrivable robotic manipulators with coupled friction. In:
Adv. Robot. 29(4), 209–223 (2015) IEEE/RSJ International Conference on Intelligent Robots and
18. Engelbrecht, A.P.: Computational Intelligence: an Introduction. Systems, pp. 3021–3027 (2008)
Wiley, New York (2007) 37. Ohishi, K., Miyazaki, M., Fujita, M.: Hybrid control of force
19. Eom, K.S., Suh, I.H., Chung, W.K., Oh, S.R.: Disturbance and position without force sensor. In: Proceedings of the
observer based force control of robot manipulator without force IEEE International Conference on Industrial Electronics, Control,
sensor. In: Proceedings of the IEEE International Conference on Instrumentation, and Automation, pp. 670–675 (1992)
Robotics and Automation, vol. 4, pp. 3012–3017 (1998) 38. Ohnishi, K., Shibata, M., Murakami, T.: Motion control for
20. Garcı́a, J.G., Robertsson, A., Ortega, J.G., Johansson, R.: advanced mechatronics. IEEE/ASME Trans. Mechatron. 1(1),
Generalized contact force estimator for a robot manipulator. In: 56–67 (1996)
Proceedings of the IEEE International Conference on Robotics 39. Price, K., Storn, R.M., Lampinen, J.A.: Differential Evolution: a
and Automation, pp. 4019–4024 (2006) Practical Approach to Global Optimization. Springer Science &
21. Gupta, A., O’Malley, M.K.: Disturbance-observer-based force Business Media, New York (2006)
estimation for haptic feedback. J. Dyn. Syst. Meas. Control. 40. Saadatzi, M., Long, D.C., Celik, O.: Torque estimation in a wrist
133(1), 014,505 (2011) rehabilitation robot using a nonlinear disturbance observer. In:
22. Gupta, A., O’Malley, M.K., Patoglu, V., Burgar, C.: Design, ASME 2015 Dynamic Systems and Control Conference (2015)
control and performance of ricewrist: a force feedback wrist 41. Spong, M.W., Hutchinson, S., Vidyasagar, M.: Robot Modeling
exoskeleton for rehabilitation and training. Int. J. Robot. Res. and Control, vol. 3. Wiley, New York (2006)
27(2), 233–251 (2008) 42. Stolt, A., Linderoth, M., Robertsson, A., Johansson, R.: Force
23. Hacksel, P., Salcudean, S.: Estimation of environment forces and controlled robotic assembly without a force sensor. In: IEEE
rigid-body velocities using observers. In: Proceedings of the IEEE International Conference on Robotics and Automation (ICRA),
International Conference on Robotics and Automation, pp. 931– pp. 1538–1543. IEEE (2012)
936 (1994) 43. Storn, R., Price, K.: Differential evolution–a simple and efficient
24. Hogan, N., Krebs, H.I., Rohrer, B., Fasoli, S., Stein, J., Volpe, heuristic for global optimization over continuous spaces. J. Glob.
B.T.: Technology for recovery after stroke. In: Barnes, M.P., Optim. 11(4), 341–359 (1997)
Dobkin, B.H., Bogousslavsky, J. (eds.) Recovery After Stroke, 44. Ugurlu, B., Nishimura, M., Hyodo, K., Kawanishi, M., Narikiyo,
pp. 604–622. Cambridge University Press (2005) T.: A framework for sensorless torque estimation and control in
25. Jones, T.A., Allred, R.P., Adkins, D.A.L., Hsu, J.E., O’Bryant, wearable exoskeletons. In: 12th IEEE International Workshop on
A., Maldonado, M.A.: Remodeling the brain with behavioral Advanced Motion Control (AMC), pp. 1–7 (2012)
experience after stroke. Stroke 40(3 suppl 1), S136–S138 (2009) 45. Ugurlu, B., Nishimura, M., Hyodo, K., Kawanishi, M.,
26. Jung, J., Lee, J., Huh, K.: Robust contact force estimation for robot Narikiyo, T.: Proof of concept for robot-aided upper limb
manipulators in three-dimensional space. Proc. Inst. Mech. Eng. C rehabilitation using disturbance observers. IEEE Transac-
J. Mech. Eng. Sci. 220(9), 1317–1327 (2006) tions on Human-Machine Systems 45(1), 110–118 (2015).
27. Korayem, M.H., Haghighi, R.: Nonlinear disturbance observer https://doi.org/10.1109/THMS.2014.2362816
for robot manipulators in 3d space. In: Intelligent Robotics and 46. Wahrburg, A., Zeiss, S., Matthias, B., Ding, H.: Contact force
Applications, pp. 14–23. Springer (2008) estimation for robotic assembly using motor torques. In: IEEE
28. Krebs, H.I., Hogan, N., Aisen, M.L., Volpe, B.T.: Robot-aided International Conference on Automation Science and Engineering
neurorehabilitation. IEEE Trans. Rehabil. Eng. 6(1), 75–87 (1998) (CASE), pp. 1252–1257. IEEE (2014)
29. Lee, H.S., Tomizuka, M.: Robust motion controller design for
high-accuracy positioning systems. IEEE Trans. Ind. Electron.
43(1), 48–55 (1996)
30. Lloyd-Jones, D., Adams, R., Carnethon, M., De Simone, G.,
Ferguson, T.B., Flegal, K., Ford, E., Furie, K., Go, A., Greenlund,
K., et al.: Heart disease and stroke statistics–2009 update: a Mohammadhossein Saadatzi is a Ph.D. student in the Mechanical
report from the american heart association statistics committee and Engineering Department of Colorado School of Mines. His academic
stroke statistics subcommittee. Circulation 119(3), e21 (2009) background and interests are in the interdisciplinary fields of Robotics,
31. Martinez, J.A., Ng, P., Lu, S., Campagna, M.S., Celik, O.: Control, and Biomechanics. He has pursued his undergraduate degree
Design of wrist gimbal: a forearm and wrist exoskeleton for in Robotics engineering and his M.Sc. in Mechatronics in Iran. For his
stroke rehabilitation. In: IEEE International Conference on B.Sc. and M.Sc. final projects, he has worked on kinematics, dynamics
Rehabilitation Robotics (ICORR 2013), pp. 1–6 (2013) and design of serial and parallel mechanisms. As his Ph.D. project,
32. Masia, L., Casadio, M., Giannoni, P., Sandini, G., Morasso, P.: Saadatzi is working on design of wearable robots (exoskeletons)
Performance adaptive training control strategy for recovering wrist informed by Biomechanics of human body.
J Intell Robot Syst

David C. Long received an A.A.S. degree in Precision Machining Ozkan Celik received the B.S. and M.S. degrees in mechanical
Technology from Red Rocks Community College in 2012 and sub- engineering from Istanbul Technical University in 2004 and 2006,
sequent B.S. degrees in Mechanical and Electrical Engineering from respectively. He received his Ph.D. degree in mechanical engineering
Colorado School of Mines in 2016. He is currently a manufacturing from Rice University in 2011. He served as an Assistant Professor
engineer at Lockheed Martin, Space Systems Company. His inter- of Mechanical Engineering at San Francisco State University and
ests include process flow, industrial robotics, and incorporating new at Colorado School of Mines. He is currently a Servo Controls
technologies into heritage systems. Engineer at Applied Materials, Inc. His research interests include hap-
tics, mechatronics, system identification, exoskeletons, rehabilitation
robotics and predictive modeling and simulation.

View publication stats

You might also like