Research Collection
Student Paper
Hybrid Contact Detection and Force Estimation during Compliant Manipulation
Author(s):
Wang, Tianlu Publication Date:
2021
Permanent Link:
https://doi.org/10.3929/ethz-b-000463448
Rights / License:
In Copyright - Non-Commercial Use Permitted
This page was generated automatically upon download from the ETH Zurich Research Collection. For more information please consult the Terms of use.
ETH Library
Hybrid Contact Detection and Force Estimation during Compliant Manipulation
Author: Tianlu Wang
Supervisors: Martin Wermelinger, Jan Carius, and Prof. Marco Hutter
Abstract— This work introduces a hybrid framework of sensorless contact detection and external force estimation for robotic arms with general manipulation tasks. Firstly, the fast contact detection based on conditional probability, which is used to observe the existence of contact, is derived. Secondly, the method of accurate external force estimation based on time-varying signal tracking is illustrated. Combining those two methods, a hybrid algorithm is formulated and experi- mentally tested on ANYpulator, a 6 DoF robot arm composed of series elastic actuators. The accuracy, precision, and time response of the proposed algorithm are analyzed in detail and evaluated with benchmark measurements provided by a 6-axis force/torque sensor. Two force tracking tasks are shown to further verify the effectiveness of the algorithm.
I. INTRODUCTION
Contact detection and external force estimation are essen- tial for robots during manipulation and locomotion tasks.
Reliable feedback of contact force amplitude and direc- tion are important information for control and planning.
Furthermore, fast detection of external forces can assure safe interaction and effective collaboration with objects and humans nearby. For traditional industrial robots and most commercial robots, contact detection and force estimation by force/torque sensors are still mostly applied, and various commercial products are available on the market. However, limited by space, the installation of sensors might not be applicable for all robots. Furthermore, sensor readings are often prone to drift caused by sharp temperature or humidity variation in manipulation environments.
To avoid such sensors but still give robots a way to perceive contacts, the concept of sensorless contact detection and force estimation was introduced by De Luca et.al. [1]
for manipulators. Here, ‘sensorless’ refers to the fact that there is no extra force/torque sensor needed at the point of contact to measure the external wrench (force and torque), although measurements of joint torques are still required.
They designed a first-order low pass filter of a so-called residual, which is the effect of external forces felt at the joint level. This idea is widely used in recent applications with
This work was supported in part by the Swiss National Science Founda- tion (SNF) and the National Centre of Competence in Research Digital Fabrication. The study was carried out as a semester thesis at Robotic Systems Lab (RSL), ETH Zurich.
Tianlu Wang is now with the Department of Information Technology and Electrical Engineering, ETH Zurich, Switzerland, and Max Planck Institute for Intelligent Systems, Stuttgart, Germany (email: tiawang@ethz.ch ).
Martin Wermelinger, Jan Carius, and Marco Hutter are with Robotic Systems Lab (RSL), ETH Zurich, Switzerland (email: {martiwer, jan.carius}@mavt.ethz.ch and mahutter@ethz.ch).
Fig. 1. The 6 DoF robot arm ANYpulator, composed of series elastic actuators, is used for the experimental verification. At the end-effector there is a 6 DoF force sensor, used only as a reference benchmark.
robot arms. The estimator has been extended to a second- order one to further eliminate the noise, and several appli- cations like hand-guided teaching have been demonstrated [2], [3]. Another trend is to use a probabilistic framework to regard contact detection as a classification problem, that is, contact or no contact. This concept is quite recent, and most applications are towards gait phases switching for quadrupedal robots, like ANYmal [4] and HyQ [5].
For convenience of illustration, we summarize relevant concepts into detection and estimation. Contact detection observes the existence of contact, and estimation is aimed at external force approximation. In former works, the pre- cision, accuracy, and time delay issues of estimation have not been analyzed in detail properly, compared with force sensor readings, for example (precision here refers to the degree of noise, and accuracy refers to the deviation from the benchmark values). Moreover, while the residual-based estimation provides a good approximation of the interaction force in a contact situation, it is prone to model errors and introduces an inherent time delay. It is therefore not suitable as a fast indicator to decide if a contact occurs during a dynamic motion. We therefore combine estimation through residuals with a detection method using the probabilistic framework and use their complementing pieces of informa- tion to ultimately estimate the contact state.
Since both former works on a probabilistic framework
are designed in particular for walking robots that touch the
ground cyclically, we generalize this formulation to imple-
ment our robust hybrid algorithm in the context of general robotic manipulators. Specifically, we make the following contributions:
• Proposal and implementation of the hybrid algorithm, which is composed of two parts, contact detection by conditional probability and contact force estimation by time-varying signal tracking;
• Analysis of the algorithm’s precision, accuracy and time response;
• Demonstration of force tracking experiments, showing the applicability of the proposed algorithm for manipu- lators.
II. R ELATED W ORK
Major related research on sensorless contact detection and estimation focuses on the detection part. Methods can be categorized into residuals approach and probabilistic frame- works.
A. Residuals Approach
The most widely used ideas on sensorless contact detection originate from De Luca’s work on the DLR robotic arm [1].
He introduces residuals, which are regarded as an estima- tor to observe the external force at the joint level. When transferred to Laplacian frequency domain, the estimator can also be seen as a first-order low pass filter, which eliminates some amounts of noise during the detection. Compared with the direct calculation by the system dynamics equation, the formulation is motivated by the fact that joint accelerations are not explicitly required. From the application side, the contact detection has been used to trigger fast collision reaction, and the safe interaction between human and robot has also been demonstrated.
In the recent two years, the applications of residuals are further explored. In Sang-Duck’s work [2], a force guiding controller based on residual computation has been verified on a 6 DoF arm.
B. Probabilistic Framework
The idea of probabilistic contact detection originates from the problem of force sensor’s unreliability on fast contact detection on quadrupedal robots. Under field operations, dust, temperature change, humidity variation, and unexpected collision lead to noisy and drifting sensor data. Therefore, Hwangbo et.al. have developed a method based on a HMM (Hidden Markov Model) [4] to estimate the contact state between foot and ground. The model used can be sepa- rated into measurement model and transition model. The measurement model focuses on the kinematics, differential kinematics, and dynamics of the robot, and the transition model focuses on the transition from the former state to the current one. Their method has been tested on the quadrupedal ANYmal [6] and achieved reliable results. Another method is based on logistic classifier [5]. The classifier tries to learn the Ground Reaction Force (GRF) threshold, which has the highest probability to minimize the base velocity error.
Moreover, the algorithm also merges individual legs’ velocity
contributions to create the new measurement update for the combined filter. The method has been tested successfully on the quadrupedal HyQ. Unfortunately, the probabilistic frameworks cannot provide estimations for the external force (value approximation) yet.
To the best of our knowledge, there is no former work on probabilistic contact detection implemented and tested.
III. M ETHOD
The task of hybrid sensorless contact detection and force estimation can be summarized into two sequential steps. The first step is to detect the existence of contact by a fast response algorithm. Then, the force/torque amplitude and direction from the contact is estimated by a signal tracking algorithm. The two steps and the combined algorithm are illustrated in the following part. Our derivation is based on the assumption that the external force is only applied to the end-effector.
A. Contact Detection through Conditional Probability The objective of contact detection is to compute the probability of the contact state X t based on the current state of the robot. The contact state X t is binary, X t ∈ {C, N}, where C and N represent ‘in contact’ and ‘not in contact’, respectively. The probability of ‘contact’ then can be expressed as conditional probability
P (X t = C|q, q, ˙ ¨ q), (1) where q, q ˙ and ¨ q represent generalized coordinate, gen- eralized velocity and generalized acceleration of the robot arm. The state of the robot is uniquely given by the pair {q, q}, which can be obtained from joint encoder readings. ˙ By Bayes’ rule, we expand the conditional probability to
P (X t |q, q, ˙ ¨ q) = P (q, q, ˙ ¨ q|X t )P (X t ) P
X
t∈{C,N} P(q, q, ˙ ¨ q|X t )P (X t ) . (2) Through conditioning and chain rule, the term P (q, q, ˙ ¨ q|X t ) can be further represented as
P (q, q, ˙ ¨ q|X t ) = P (¨ q|X t , q, q) ˙
| {z }
Dynamics
P ( ˙ q|X t , q)
| {z }
Diff. Kinematics
P (q|X t )
| {z }
Kinematics
. (3)
Therefore, this term is build up from dynamics, differential kinematics, and kinematics contributions. The differential kinematics term P ( ˙ q|X t , q) highly depends on the specific trajectory of the robot arm. Moreover, the kinematics term P(q|X t ) depends on the trajectory and the prior information of the manipulation environment. Therefore, to generalize the model for robotic arms manipulated under arbitrary trajectory, we only consider the dynamics term in our work and assume the other terms are uniform:
P(q, q, ˙ ¨ q|X t ) ∝ P (¨ q|X t , q, q). ˙ (4) This results in P(X t ) and P (¨ q|X t , q, q) ˙ being the only terms that are required for computing the probability of contact.
The computation approach is illustrated in the following.
1) P (¨ q|X t = N, q, q): ˙ In the case the arm moves in the air without contact, the dynamics can be summarized as
M(q, q)¨ ˙ q + C(q, q) ˙ ˙ q + g(q) = τ j , (5) where M(q, q) ˙ represents the mass matrix, C(q, q) ˙ ˙ q repre- sents the nonlinear term, g(q) represents the gravity term and τ j represents the joint torques. When noise is considered in the model, the estimated acceleration given no contact ˆ ¨ q N can be computed as
ˆ ¨
q N = M −1 (q, q)(τ ˙ j − C(q, q) ˙ ˙ q − g(q) + ω d ) + ω q ¨ , (6) where ω q ¨ is the estimation noise in acceleration and ω d is the combined noise from other sources. They are assumed to be independent variables. To simplify the estimation model, we assume ω q ¨ and ω d are Gaussian distributed with zero mean:
ω q ¨ ∼ N (0, σ q ¨ ) , ω d ∼ N (0, σ τ ) , (7) where the variances are diagonal matrices of appropriate dimension. Therefore, the estimated acceleration given no contact ˆ ¨ q N is also Gaussian distributed due to linearity
ˆ ¨
q N ∼ N (M −1 (q, q)(τ ˙ j − C(q, q) ˙ ˙ q − g(q)),
M −1 (q, q)σ ˙ τ (M −1 (q, q)) ˙ T + σ ¨ q ) . (8) We can then label the probability density function as
f ˆ ¨ q
N(¨ q) := P(¨ q|X t = N, q, q), ˙ (9) where f ˆ ¨ q
Nis the probability density function, and the gener- alized acceleration ¨ q can be computed from the generalized velocity q ˙ by numerical differentiation.
2) P (¨ q|X t = C, q, q): ˙ In the case the arm is in contact, the dynamics can be represented as
M(q, q)¨ ˙ q + C(q, q) ˙ ˙ q + g(q) + J T c F e = τ j . (10) where J c represents the contact Jacobian matrix and F e
represents external wrench to the end-effector. The contact wrench can be written as a function of the joint torque
F e = (J c M −1 J T c ) −1 [ ˙ J c q ˙ + J c M −1 (τ j − C q ˙ − g)]. (11) This equation originates from contact constraints
˙
r c = J c q ˙ = 0, (12) where r ˙ c represents the velocity of end-effector in base frame. We assume that the constraint (12) is still satisfied when the acceleration of the end-effector is small. The estimated acceleration given contact ˆ ¨ q c can then be computed similar as Equation (6):
ˆ ¨
q C = M −1 (τ j − C q ˙ − g + ω d − J T c F e + J T c ω f ) + ω ¨ q , (13) where the additional noise ω f is from the contact force estimation, which is assumed to be independent from the other two noise sources, and F e can be substituted through Equation (11). ω f is also Gaussian distributed with zero mean:
ω f ∼ N (0, σ F
e) . (14)
Through linearity, we can get the distribution of estimated acceleration given there is a contact:
ˆ ¨
q C ∼ N (M −1 (τ j − C˙ q − g − J c F e ), M −1 J T c σ F
eJ −1 c (M −1 ) T + M −1 σ τ (M −1 ) T + σ ¨ q ) . (15) Therefore, the conditional probability can be computed as
f ˆ ¨ q
C(¨ q) := P(¨ q|X t = C, q, q). ˙ (16) 3) P(X t = N) and P (X t = C): The prior probability of contact or not contact is highly dependent on the predefined trajectory of the robot. In our case, we assume no prior knowledge about the trajectory and set the probability for contact as well as not contact to 0.5.
B. Contact Force Estimation through Reference Signal Tracking
Computation of external wrench by Equation (10) directly introduces noise due to double differentiation of the joint positions. This is why De Luca et.al’s work [1] uses the in- tegral over a generalized momentum to avoid the use of joint accelerations. Their residual approach can also be interpreted as signal tracking with only integral term, thereby inherently introducing a phase shift. We extend this formulation by also adding a proportional term to have a tunable trade-off between noise and delay. The approach can be summarized as
˜
τ = K p (τ e − τ ˜ ) + K I Z
(τ e − τ ˜ )dt, (17) where τ e is the resulting torque at joint level from an external wrench F e . τ e can be represented by the system dynamics.
As shown in Equation (10),
τ e = J T c F e = τ j − M(q, q)¨ ˙ q − C(q, q) ˙ ˙ q − g(q). (18) The integration term of Equation (17) acts as an first order low pass filter, which assures that, τ ˜ is less noisy than τ e . However, the term also introduces time delay. The propor- tional term can be used to eliminate time delay partly, but there is always a trade-off between time delay and precision.
C. Hybrid Approach of Contact Detection and Force Esti- mation
While the estimation by reference signal tracking provides a good approximation of the interaction force in a contact sit- uation, it is prone to model errors and introduces an inherent time delay. Therefore it is not suitable to decide if a contact occurs during a dynamic motion. The probabilistic contact detection on the other hand can identify a contact situation but provides no information on the corresponding force.
Therefore it is reasonable to unify it with the estimation approach. This hybrid method results in fast detection and accurate estimation of contact forces.
A possible hybrid approach we propose for the task of
desired end-effector force tracking is summarized in the
pseudo code of Algorithm 1, which can be used for sensor-
less force tracking. It provides a set of rules on how to switch
between pose and force control modes. p c is the probability
of contact, which is a scalar value and c p represents its
Fig. 2. Labeled joint configuration of ANYpulator.
threshold value. F c represents the contact force at the end effector from the reference signal tracking, and c y is its threshold value. Specific threshold values can be selected for different application scenarios.
When the robotic arm is manipulated under pose tracking mode, as soon as the contact is detected by conditional probability, the controller switches to force tracking mode.
This mode remains as long as the criteria of contact satisfied by detection, or estimation. However, when both criteria are not satisfied, then the control mode switches back to pose tracking mode. The relevant experiment is shown in Section IV-C.
Algorithm 1 Pseudo code of the hybrid algorithm for force tracking application
1: update p c and F c
2: if control mode == pose control then
3: if p c > c p then
4: control mode ← f orce control
5: τ j ← f orce tracking controller
6: end if
7: else
8: if p c < c p and |F c | < c y then
9: control mode ← pose control
10: τ j ← pose tracking controller
11: end if
12: end if
13: set τ j
IV. E XPERIMENTS AND R ESULTS
In this section we present two experiments performed on a robot arm to verify the effectiveness of the proposed algorithms. The first one focuses on the precision, accuracy and time delay issues of the hybrid algorithm. The second aims at the force tracking application without the use of any extra force/torque sensors. All experiments are based on the fact that the external force is only applied to the end-effector.
TABLE I
N
OISEC
HARACTERISTICS FORI
NDIVIDUALJ
OINTS(
STARTS FROM SHOULDER)
noise standard deviation
ω
q¨25 rad/s
2, 25 rad/s
2, 25 rad/s
2, 25 rad/s
2, 25 rad/s
2, 25 rad/s
2ω
d0.15 Nm, 0.3 Nm, 0.3 Nm, 0.3 Nm, 0.3 Nm, 0.3 Nm ω
f20 Nm, 30 Nm, 30 Nm, 30 N, 30 N, 30 N
TABLE II
C
OMPARISON BETWEENH
YBRIDA
LGORITHM ANDF
ORCES
ENSORR
EADINGFactors Hybrid Algorithm Accuracy(deviation) ±10 %
Precision(noise) ±1.0 Time Response(delay) 0.1 s
A. Experiment Setup
The test platform used is ANYpulator, a 6 DoF lightweight robot arm developed by the Robotic Systems Lab at ETH Zurich, which is an extension of the work of [7]. The arm is equipped with six series elastic actuators (SEA).
The joint configuration of the arm is shown in Figure 2.
Due to the special mechanical design of the SEA, the joint torque can be acquired through measurement of the internal spring deflection. A 6 DoF force sensor, which can measure the 6 DoF wrench applied, is installed at the end of the link connected to the last actuator, providing benchmark measurements. It is important to note that ‘sensorless’ here means the external wrench applied to the end-effector is only measured for benchmarking, but not used for contact detection or force estimation. The system overview is shown in Figure 1. The noise parameters at joint level used for the probabilistic distributions during contact detection are shown in Table I.
B. Precision, Accuracy and Time Response Analysis In this section, the precision, accuracy and time response of the proposed algorithm are analyzed on the platform. The analysis is divided into two parts. Firstly, we compare esti- mation by time-varying signal tracking with the benchmark measurements provided by the force/toque sensor. Secondly, we focus on the time response issues. An overview of the comparison is shown in Table II.
1) Precision and Accuracy: During this experiment, forces are applied to the end-effector by hand. The compar- ison between time-varying signal tracking and force sensor readings is shown in Figure 3. It can be observed that the estimation provides relatively accurate approximation of the wrench, with reasonable noise amplitude of around ±1 (note the different scales for the force plots). The obvious noise in the plot of the momentum around the y−axis originates from the increased compliance in this direction due to the arm configuration.
2) Time Response: In terms of time response, the analysis
is based on the hand guiding experiments, whose details are
explained in Section IV-C. From Figure 5, we can see that
5 10 15 20 25 Time [s]
-60 -40 -20 0
Contact Force [N]
Fx
5 10 15 20 25
Time [s]
-20 0 20
Contact Force [N]
Fy
5 10 15 20 25
Time [s]
-10 0 10
Contact Force [N]
Fz
Sensor Measurement Estimation
5 10 15 20 25
Time [s]
-20 0 20
Contact Torque [Nm]
Mx
5 10 15 20 25
Time [s]
-20 0 20
Torque [Nm]
My
5 10 15 20 25
Time [s]
-20 0 20
Torque [Nm]
Mz
Sensor Measurement Estimation
Fig. 3. Comparison between sensor readings and force estimation by reference signal tracking. All six motors of ANYpulator are in ‘freeze’
mode for this experiment.
the force sensor responds faster than the estimation through signal tracking and the probabilistic contact detection. How- ever, the estimated value for the contact force varies with the manipulator’s motion even under no contact, due to model inaccuracies (see from 10 s to 14 s in Figure 4). Therefore, the threshold value for contact detection has to be set larger than 5 N. The higher threshold value we set, the slower the contact detection by signal tracking becomes compared to the conditional probability response. In this manner, contact detection by conditional probability responds faster than estimation by signal tracking.
To conclude, the hybrid algorithm can detect contact with a response delay of approx. 0.1 s compared to force sensor readings. Using the redundancy of the probabilistic contact detection improves the response latency due to thresholding of the contact force estimation through signal tracking. In the next section, its application on compliant force tracking will be demonstrated.
C. Force Tracking
The force tracking task is an application of the hybrid algorithm. Traditionally, the task is demonstrated by force control based on force sensor feedback. In this work, the task
10 12 14 16 18 20 22 24
Time [s]
-5 0 5 10 15 20
Fx [N]
Conditional Probability Signal Tracking Estimation Desired Force Force Sensor Measurement
Fig. 4. Force tracking test on ANYpulator during hand guiding. Upper:
Four periods of the experiment, (1) Motion control (pose control mode); (2) Contact detection; (3) Force control to track the desired end-effector force (force control mode); (4) Contact released and keeping the current pose (pose control mode). Lower: The desired end-effector force applying to the hand is set to 15 N. Observed oscillation of measurements and estimation originate from hand guiding. The variance of estimation at start originates from the manipulator’s motion before contact.
11 12 13 14 15 16 17
Time [s]
-5 0 5 10 15 20
Fx [N]
Conditional Probability Signal Tracking Estimation Desired Force Threshold of Estimation Force Sensor Measurement
Fig. 5. Details of force tracking test on ANYpulator during hand guiding.
When the threshold value of estimation is considered, contact detection by
conditional probability is actually faster.
10 15 20 25 30 35 Time [s]
-2 0 2 4 6 8 10 12 14
Fx [N]
Conditional Probability Signal Tracking Estimation Desired Force Force Sensor Measurement
15 20 25 30 35
time [s]
-1 -0.8 -0.6 -0.4 -0.2 0 0.2
SHROT [Nm]
SHROT Conditional Probability Estimation Torque Desired Torque
15 20 25 30 35
time [s]
-0.5 0 0.5 1 1.5
SHFLE [Nm]
SHFLE
15 20 25 30 35
time [s]
-1.5 -1 -0.5 0 0.5
ELFLE [Nm]
ELFLE
15 20 25 30 35
time [s]
-0.6 -0.4 -0.2 0 0.2
WRFLE [Nm]
WRFLE
15 20 25 30 35
time [s]
-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1
WRDEV [Nm]
WRDEV
15 20 25 30 35
time [s]
-1 -0.5 0 0.5 1
WRPRO [Nm]
WRPRO