Telechargé par rodyhamod117

Dynamic Path Tracking of Industrial Robots With High Accuracy Using Photogrammetry Sensor

publicité
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 23, NO. 3, JUNE 2018
1159
Dynamic Path Tracking of Industrial Robots With
High Accuracy Using Photogrammetry Sensor
Tingting Shu
, Sepehr Gharaaty, WenFang Xie , Senior Member, IEEE, Ahmed Joubair,
and Ilian A. Bonev , Senior Member, IEEE
Abstract—In this paper, a practical dynamic path tracking (DPT) scheme for industrial robots is presented. The
DPT scheme is a position-based visual servoing to realize three-dimensional dynamic path tracking by correcting
the robot movement in real time. In the traditional taskimplementation mode for industrial robots, the task planning and implementation are taught manually and hence
the task accuracy largely depends on the repeatability of
industrial robots. The proposed DPT scheme can realize automatic preplanned task and improve the tracking accuracy
with eye-to-hand photogrammetry measurement feedback.
Moreover, an adaptive Kalman filter is proposed to obtain
smooth pose estimation and reduce the influence caused by
image noise, vibration, and other uncertain disturbances.
Due to high repeatability of the photogrammetry sensor,
the proposed DPT scheme can achieve a high path tracking
accuracy. The developed DPT scheme can be seamlessly integrated with the industrial robot controller and improve the
robot’s accuracy without retrofitting with high-end encoder.
By using C-track 780 from Creaform as the photogrammetry sensor, the experimental tests on Fanuc M20-iA with
the developed DPT scheme demonstrate the tracking accuracy is significantly improved (±0.20 mm for position and
±0.10 deg for orientation).
Index Terms—Dynamic path tracking (DPT), industrial
robots, robot accuracy, visual servoing.
I. INTRODUCTION
N INDUSTRIAL manufacturing fields, many tasks, such as
cutting, milling, and lathing, are expected to use robots to
implement operation automatically. According to the standard
I
Manuscript received March 21, 2017; revised October 18, 2017 and
February 5, 2018; accepted March 13, 2018. Date of publication March
30, 2018; date of current version June 12, 2018. Recommended by Technical Editor Prof. Hong Qiao. This work was supported in part by the Natural Sciences and Engineering Research Council of Canada (NSERC),
in part by the Collaborative Research and Development (CRD) program,
and in part by the Consortium for Research and Innovation in Aerospace
in Quebec (CRIAQ). (Corresponding author: WenFang Xie.)
T. Shu is with the Department of Mechanical, Industrial & Aerospace
Engineering, Faculty of Engineering and Computer Science, the
Concordia University, Montreal, QC H3G 1M8, Canada (e-mail:
[email protected]).
S. Gharaaty and W. Xie are with the Concordia University, Montreal,
QC H3G 1M8, Canada (e-mail: [email protected]; wfxie@
encs.concordia.ca).
A. Joubair and I. A. Bonev are with the École de technologie
suprieure, Montreal, QC H3C 1K3, Canada (e-mail: ahmed.joubair.
[email protected]; [email protected]).
Color versions of one or more of the figures in this paper are available
online at http://ieeexplore.ieee.org.
Digital Object Identifier 10.1109/TMECH.2018.2821600
process specifications in the aerospace industry (e.g, Airbus [1]),
the desired accuracy of robot manipulation for manufacturing is
around ±0.20 mm. However, due to the mechanical tolerances
and deflection in the robot structure, the typical difference of a
virtual robot in simulation and a real robot can be 8–15 mm [2],
which is inadequate to meet the precision requirements of many
potential applications. Therefore, the relatively low accuracy
of current robots is the main problem for the industrial manufacturing applications. Especially, it poses a critical obstacle to
use advanced task planning techniques which integrate offline
simulation and computer aided design-based methods.
In the past decades, many researchers have tried to improve
the accuracy of industrial robots. One direct method is to install
secondary high-accuracy encoders at each robot joint [3] and
[4]. Since the encoder installation for each robot needs to be
customized and the price of high-accuracy encoder tends to be
high, this solution is costly and sometimes infeasible for all
the joints. The other solutions may be classified into two main
categories: 1) static calibration [5], [6] and [7]; and 2) dynamic
position or pose (i.e., position and orientation) adjustment [8],
[9] and [10]. The static calibration is mostly based on kinematic
models. Sometimes a partial dynamic model may be involved
as well, such as joint or link compliance, or backlash. Because
the static calibration considers factors that are time invariant, it
can only increase the robot accuracy to a limited extent under
static or quasi-static conditions. In a robot application where
a high-precision tracking of various trajectories is demanded,
dynamic continuous strategies for enhancing real-time tracking
accuracy become necessary. Hence, visual servoing is the main
approach to meet the demand.
Visual servoing for industrial robots is based on the visual
measurement feedback of the end-effector or reference objects.
Visual servoing is a multidisciplinary research topic involving computer vision, robotic kinematics, nonlinear dynamics,
control theory, as well as real-time systems. According to the
features extracted as feedback of controller, visual servoing can
be classified into three categories:
1) position-based visual servoing (PBVS) [8] and [11];
2) image-based visual servoing [12];
3) hybrid visual servoing [13].
According to the location of the vision system, the configuration of visual seroving is classified as either eye-to-hand
or eye-in-hand. In PBVS, the actual pose of the related object
in Cartesian space is estimated according to the feature points
on the image plane. Correspondingly, the control input for the
1083-4435 © 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.
See http://www.ieee.org/publications standards/publications/rights/index.html for more information.
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
1160
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 23, NO. 3, JUNE 2018
robots is based on the errors between the current pose and desired pose of the end-effector. In this paper, since dynamic path
tracking (DPT) aims at correcting the end-effector’s pose in the
industrial applications by using a photogrammetry sensor, an
eye-to-hand PBVS scheme is adopted.
In PBVS, the pose measurements are computed from the
current image information of the feature points, which tend to
include distortion, blur, and other uncertain noise. In the recent decades, Kalman filter has been widely applied in robot
vision for optimal or suboptimal estimation [14] and [15], and
has started to be used in coordinate measuring machine (CMM)
[16]. Normally, a linear dynamic process model is required, and
a priori statistical information of the process and measurement
noise are assumed to be known. However, industrial robots’
mechanism is highly nonlinear and the pose estimation from
image information captured by the eye-to-hand cameras is a
nonlinear computation. In order to apply Kalman filter to estimate the pose of industrial robots, an extended Kalman filter
(EKF) was employed by many researchers [8], [17]. A comprehensive comparison on various Kalman filter schemes for vision
system is carried out in [17]. However, the optimality of EKF
depends on the accuracy of dynamic process model, which is
hard to obtain. Recently, the adaptive Kalman filter (AKF) has
attracted more and more attention from researchers attempting
to overcome the problems and adapting to complicated situations without knowing the certain system model and precise
priori information about the noises [14], [18]. For industrial
robots, the process and measurement noises are time variant as
the robots move at different speeds, with various configurations,
and along different trajectories. The Kalman filter method for
metrology tool with application to CMM in [16] has not considered this time-varying effect. In this paper, an effective AKF
is proposed to achieve the smooth pose estimation considering
both the noise features from photogrammetry sensor and the
vibration during robot movement. The proposed AKF can optimize the measurement-noise covariance according to the current
velocity of the industrial robot and the process-noise covariance
by using an adaptive method.
A lot of research work has been dedicated to using visual
information to improve the robot accuracy. For example, an offline compensation method is presented in [19], which measures
the sources of robot error and applies them to predict reference
path off-line by using Nikon K-Series optimal CMM. Although
it is reported that the robot accuracy can be increased within
0.2 mm, this method needs experts to carry out extensive tests
to predict the reference path for each different path and robot.
An on-line compensation method is demanded, which does not
need off-line reference path prediction. In [20], a feed-forward
torque control cascaded with an iterative learning control (ILC)
is proposed to enhance the path accuracy of industrial robots.
The experimental results on a KUKA KR 6-2 are provided only
in position errors and the maximum error on single axis can
be up to 2.0 mm, which apparently cannot satisfy the aforementioned accuracy for manufacturing in aerospace industry.
Moreover, both position and orientation accuracy, i.e., pose accuracy, are sought after by industrial manufacturers. In [21], an
ILC combined with a PD feedback control is applied to improve
the tracking performance of an industrial robot. The accuracy
Fig. 1. Definition and relation of the coordinate reference frames in the
workspace.
is demonstrated in joint space and maximum error of the joint
angle is larger than 0.1 deg. In addition, pose accuracy is not
equivalent to the joint angle accuracy, which is based on the
kinematic model with both geometric and nongeometric errors.
In this paper, motivated by the industrial need for high accuracy, we propose the DPT scheme to improve the accuracy of
industrial robots up to 0.2 mm in distance error and 0.05 deg in
orientation error on-line, and adapt to different paths automatically. The DPT scheme can be seamlessly integrated with robot
controller and the low-cost CMM photogrammetry sensor, i.e.,
C-track 780 from Creaform. The stability of the DPT scheme
is proved by using Lyapunov stability theory. The successful
application on industrial Fanuc M20-iA using C-track 780 as
visual measurement sensor demonstrates the effectiveness of
the proposed DPT scheme.
The rest of this paper is organized as the following. In
Section II, the workspace description and problem statement are
provided. Section III presents the complete process to obtain the
pose estimation of the end-effector from the dual-cameras image
information. Then, Section IV describes an adaptive Kalman
filter to reduce the noise influence from the pose estimation.
Section V introduces the basic control configuration of the DPT
scheme, tracking control-law design and stability analysis. The
simulation results on Puma 560 are provided to prove the robustness of the DPT scheme. The experimental results on Fanuc
M20-iA are presented in Section VI. Finally, the concluding
remarks and future work are summarized in Section VII.
II. WORKSPACE DESCRIPTION AND PROBLEM STATEMENT
A. Workspace Description
Consider a 6-DOF industrial robot with an end-effector in
Fig. 1. Generally, the default tool frame is defined at the center
of the flange of Joint 6, P0 . A tool frame FE with origin at
the tool center point (TCP) can be defined by offsetting the
default tool frame to the TCP with the known relative position
information. Assume that the end-effector can reach anywhere
in the reachable workspace WR of the robot. In the workspace,
a user frame FU R for the robot can be defined with respect to
the base frame FB .
On another note, when a task is given, the task space WT
(WT ⊂ WR ) can be defined. In the task space, a user frame
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
SHU et al.: DYNAMIC PATH TRACKING OF INDUSTRIAL ROBOTS WITH HIGH ACCURACY USING PHOTOGRAMMETRY SENSOR
FU T for the task can be defined. Correspondingly, the path
planned for this task can be represented in FU T . The task path
is used as the desired trajectory which the TCP should follow
precisely.
Moreover, in terms of the three-dimensional (3-D) visual
measurement instrument (VMI), there is default sensor frame
FS whose origin is at the center of VMI. User frame FU T can
be calibrated by using VMI to be represented in FS . In order to
locate TCP during any movement, the end-effector should be in
the field-of-view (FOV) of VMI. The pose of TCP in FS is represented by the pose of the tool frame FE in FS . Therefore, the
S
homogeneous transform matrix UST H from FU T to FS and EH
from FS to FE at any time can be obtained. The homogeneous
UT
transformation matrix E H from FU T to FE can be obtained as
follows:
UT
E
H = UST H EH.
S
achieved by first mapping FE in FS and then projecting them
onto the image plane. Since a dual-camera sensor C-track 780
is employed as the visual tacking instrument, the pose estimation principle about binocular vision is presented in this section. C-track 780 can provide continuous image acquisition and
transmission in real time. Moreover, C-track 780 can track the
reference model, including a rigid set of reflectors, which work
as the feature points. It is assumed that there are n feature
points, n > 3, on the rigid end-effector, and the homogeneous
coordinates of each feature point in sensor frame are denoted as
S
Pi = (xi , yi , zi , 1), i = 1 . . . n, while the projection coordinates of each feature point on the image plane of the jth camera
is represented as C Pij = (uij , vij , 1), i = 1 . . . n and j = 1, 2,
where j is the number of dual cameras. The perspective projection can be given as follows [22]:
C
(1)
In order to set up a relation between FU R and FU T , another equivalent user frame FU E q is introduced. Ideally, there
is only translation and no rotation between FU E q and FU R in
workspace. The main difference is that FU R is represented in
FB while FU E q in FS . FU E q in FS can be defined by using these
three points. The definition and relation of the abovementioned
coordinate frames are illustrated in Fig. 1.
B. Problem Statement
When the industrial robots are designated for cutting, painting, and fiber placement in the aerospace industry, the corresponding finite task path with a start point and end point should
be planned in advance. The robots are expected to move from
the start point to end point by strictly following the task path
with high accuracy.
Traditionally, the task path is planned in robot user frame
FU R by using teach pendant to record the point nodes or to
input the point nodes manually. Between the position nodes, the
path is produced by using certain interpolation of several existing interpolation methods in the robot controller. In this paper,
the task path defined in task user frame FU T is continuously
differentiable and independent of the robot controller so that the
task path can be preplanned in task space WT . Any task path P
in FU T can be described as follows:
px = x(η),
py = y(η),
pz = z(η)
pγ = γ(η),
pβ = β(η),
pα = α(η)
(2)
where η ∈ [0, 1] is a normalized variable. η = 0 corresponds to
the start point on P while η = 1 corresponds to the end point on
P. During 0 < η < 1, continuous position (px , py , pz ) forms the
geometry profile of P while (pγ , pβ , pα ) is the orientation of FE
in FU T . P defined in (2) is served as the desired path. In order
to carry out the task, the control objective is to control the TCP
to track (px , py , pz ) along the desired path with (pγ , pβ , pα )
satisfying the error tolerance.
III. POSE ESTIMATION OF THE END-EFFECTOR
The end-effector pose estimation is the localization of the
tool frame FE with respect to the sensor frame FS . This is
1161
Pij = C Xj S Pi ,
C
Xj = Bj SHj
C
(3)
where j = 1, 2; C Xj , is the projection matrix of each camera;
Bj is the camera matrix, integrating the intrinsic parameters of
C
the jth camera; SHj is the homogeneous transformation matrix
from the sensor frame FS to the jth camera frame. When the
C
dual-cameras’ sensor is calibrated, Bj and SHj are known.
C
Therefore, when Pij is obtained in the image plane, S Pi can
be computed.
Ideally, S Pi computed from each camera should be the same.
However, due to the distortion, calibration errors, and other
noises, there is a difference between two results of S Pi from
dual cameras. The triangulation is the main way to balance the
difference in the results [23]. In order to ensure a matching
pair of points, C Pi1 and C Pi2 , meet in space, the following
constraint should be satisfied:
C
PTi1 GC Pi2 = 0
(4)
where G is the fundamental matrix that can be computed when
dual camera projection matrices, C M1 and C M2 , are given.
Due to the uncertainty of image processing, (4) may not be
satisfied accurately. According to optimal correction principle
of Kanatani [24], the objective function is
ˆ i1 + d C Pi2 , C P
ˆ i2
d C Pi1 , C P
(5)
min
C
ˆ i 2 =0
ˆ i 1T G C P
P
where min(.) represents the minimization function subject to the
ˆ i1 T GC P
ˆ i2 = 0, d(∗, ∗) denotes Euclidean disconstraint C P
ˆ i2 are the estimated points of C Pi1 and
ˆ i1 and C P
tance, C P
C
ˆ i1 and C P
ˆ i2 can be obtained
Pi2 , respectively. As a result, C P
by the following formulas:
C
C
C
ˆ i1 = C Pi1 − Pi1 , G Pi2 VG Pi2
CP
ω
C
C
TC
ˆ i2 = C Pi2 − Pi1 , G Pi2 VG Pi1
CP
ω
C
TC
C
ω = G Pi2 , VG Pi2 + G Pi1 , VGT C Pi1 (6)
where in this paper, the inner product of two vectors a and b
is denoted as (a, b); projection matrix V ≡ diag(1, 1, 0). Then,
by (3), the coordinate of ith feature point in sensor frame, S Pi
can be obtained.
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
1162
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 23, NO. 3, JUNE 2018
After the position information of all the feature points on
the end-effector is prepared, the pose estimation of the endeffector can be developed. Suppose n feature points on the rigid
end-effector are fixed and known from the definition of the
tool frame FE , whose homogeneous coordinates are denoted
as E Pi = (E xi , E yi , E zi , 1). It is assumed the current pose
of FE in FS is denoted as (xc , yc , zc , γc , βc , αc ). (xc , yc , zc )
represents the origin position of FE in FS , while the orientation (γc , βc , αc ) represents the Euler-angle rotation from FE
in FS . With the pose (xc , yc , zc , γc , βc , αc ) of FE in FS , the
S
homogeneous transformation matrix EH from FE to FS can be
formulated as follows:
R(γc , βc , αc ) (xc , yc , zc )T
S
(7)
EH =
000
1
k − 1 is the previous time instant. Suppose that the current state
vector of the industrial robot is represented as follows:
where R(γc , βc , αc ) is rotation matrix from FE to FS . Correspondingly, the transformation equation of ith feature point can
be written as
where A is 12 × 12 state transition matrix which is applied to
the previous state ρ̂k −1,k −1 to obtain the current predicted state
ρ̂k ,k −1 ; Wk ,k −1 is the current prediction of the error covariance
matrix, which is a measure of the accuracy of the state estimate
while Wk −1,k −1 are the previous error covariance matrix; Qk −1
is the process noise covariance computed from the information
at time instant k − 1. All the diagonal elements of A are 1
and Ai,i+6 (i = 1 . . . 6) are equal to the sampling interval Ts
since these items will multiply the covariance of velocity in
Wk −1,k −1 to predict the states. ρ̂0,0 and W0,0 are initialized by
using the static samples before path tracking movement. Second,
the Kalman filter gain Dk is computed as follows:
S
Pi = EH E Pi
S
(8)
which can be unfolded into three nonlinear equations with six
unknown variables (xc , yc , zc , γc , βc , αc ) as follows:
xi = xc + Cγ c Cβ c E xi + (Cγ c Sβ c Sα c − Sγ c Cα c )E yi
+ (Cγ c Sβ c Cα c + Sγ c Sα c )E zi
yi = yc + Sγ c Cβ c E xi + (Sγ c Sβ c Sα c + Sγ c Cα c )E yi
+ (Sγ c Sβ c Cα c − Cγ c Sα c )E zi
zi = zc − Sβ c xi + Cβ c Sα c yi + Cβ c Cα c zi
E
E
E
ρk ,k = (x(k), y(k), z(k), γ(k), β(k), α(k),
ẋ(k), ẏ(k), ż(k), γ̇(k), β̇(k), α̇(k))T
i.e., the pose and velocity of the end-effector at the current
time instant. The current measurement vector obtained from
Section III is denoted as ok = (xc , yc , zc , γc , βc , αc )T . Then, an
adaptive Kalman filter method is given as the following recursive
equations.
First, the prediction equations are given as follows:
ρ̂k ,k −1 = Aρ̂k −1,k −1
Wk ,k −1 = AWk −1,k −1 AT + Qk −1
Dk = Wk ,k −1 (Wk ,k −1 + Ωk −1 )−1
(9)
where in this paper, Ca = cos(a) and Sa = sin(a). In order to
solve (9) for (xc , yc , zc , γc , βc , αc ), at least three noncollinear
feature points are required [8]. However, as indicated in [25],
at least four coplanar feature points are necessary for a unique
solution while the additional noncoplanar feature points can
be used to improve the estimation accuracy with measurement
noise. Since the number of the feature points on the end-effector
n is more than three, (xc , yc , zc , γc , βc , αc ) can be determined
uniquely. By using the proprietary software VXelements provided by Creaform, the end-effector is defined as the tracking
model built based on the selected reflectors on the surface of the
end-effector. The positional and rotational information of the
tracking model with respect to sensor frame can be acquired,
recorded, or displayed simultaneously. Therefore, the computation to obtain the pose of the end-effector is carried out by
VXelements.
IV. ADAPTIVE KALMAN FILTER FOR SMOOTHING ESTIMATED
POSE OF THE END-EFFECTOR
The presence of noise is inevitable in the image information
from the 3-D VMI. Moreover, the movement of the end-effector
is highly likely to cause vibration, blur, and distortion to the
images. Therefore, in this Section, an adaptive Kalman filter is
presented to smooth the estimated pose data of the end-effector.
The sampling interval of the VMI is denoted as Ts . For convenience, k instead of kTs represents the current time instant and
(10)
(11)
(12)
where Ωk −1 is the previous measurement noise covariance.
Third, the estimation updating is formulated as follows:
ρ̂k ,k = ρ̂k ,k −1 + Dk (ok − ρ̂k ,k −1 )
Wk ,k = Wk ,k −1 − Dk Wk ,k −1
(13)
where ρ̂k ,k is produced as the optimal pose of the end-effector
at time instant k.
The proper selection or updating of Qk and Ωk are critical
for the accuracy of filtered pose. Qk and Ωk are symmetric
positive definite matrices. When the robot is stationary, Ωk can
be easily obtained by using the root-mean-square error of the
static measurements from VMI. However, Ωk is a time-varying
matrix when the robot is moving because the higher velocity
will make the delay, blur, vibration, and other uncertain factors
worse.
A new effective method is proposed to update matrix Ωk
based on the velocity of the TCP as follows:
ΔΩk = diag μ1 ẋ(k), μ2 ẏ(k), μ3 ż(k), μ4 γ̇(k),
μ5 β̇(k), μ6 α̇(k) , Ωk = Ω0 + ΔΩk
(14)
where diag[ ] represents a diagonal matrix whose elements are
shown in the bracket; Ω0 is the measurement noise covariance
matrix when the TCP is stationary before starting from the start
point; μi , i = 1, . . . , 6 are the constant weights determining the
influence of variable velocity, which is estimated by analyzing
the stationary measurements of C-track in workspace.
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
SHU et al.: DYNAMIC PATH TRACKING OF INDUSTRIAL ROBOTS WITH HIGH ACCURACY USING PHOTOGRAMMETRY SENSOR
Fig. 3.
Fig. 2.
Basic configuration of dynamic path tracking control.
An adaptive recursive method is presented to optimize Qk
to compensate the prediction error and uncertain dynamic disturbance [18], [26]. The predictor error ˆk can be estimated
adaptively as follows:
ˆk = ρ̂k ,k − Aρ̂k −1,k −1 .
(15)
Additionally, let ΔWk = AWk −1,k −1 AT − Wk ,k . Then, Qk
can be computed recursively as follows:
1
¯k = ¯k −1 + (ˆ
k − ˆk −N )
N
1
((ˆ
k − ¯k )(ˆ
Qk = Qk −1 +
k − ¯k )T
N −1
− (ˆ
k −N − ¯k ) (ˆ
k −N − ¯k )T
+
1
(ˆ
k − ˆk −N )(ˆ
k − ˆk −N )T
N (N − 1)
1
(ΔWk −N − ΔWk )
(16)
N
where N is the length of the past measurements memory for
updating Qk . Moreover, in order to ensure that Qk is a positive
definite, the diagonal elements need to be reset to their absolute
values.
+
V. DYNAMIC PATH TRACKING CONTROL
Since the task path P is not planned in FU R or FB , it is
not compatible in robot controller. Besides, only finite separate
points, not consecutive geometry curves, can be imported into
the robot controller. Most importantly, the low accuracy and
repeatability of the robot cannot guarantee that the TCP will
track the task path accurately with the robot controller.
A. Basic Control Structure
In this paper, a PBVS scheme is presented to realize task path
3-D tracking by correcting the movement of the end-effector in
real time. The basic control configuration consists of four parts
as shown in Fig. 2. The first part includes robot controller and
robot. Normally, each industrial robot comes with its proprietary robot controller. Only through the robot controller can the
robot parameters be accessed and robot movement command be
realized. The second part is the visual measurement part, which
1163
Path analyzing method of dynamic path tracking control.
includes 3-D visual measurement instrument (VMI) and signal
filtering that estimates the pose feedback information. The third
part is the path analyzer, which computes the pose of the closest point on the desired task path according to the current TCP
pose, and decides the next path step. The fourth part is the path
tracking control, which includes the control algorithm to produce the control input for robot controller based on the current
pose error. In Fig. 2, all the functions in the left dashed-line box
are implemented as software modules running on the computer
that is connected to the physical devices in the right dashed-line
box.
B. Pose Error Computation in Equivalent User Frame
When the end-effector is in the FOV of the 3-D VMI, the
current TCP pose information in FS can be obtained. Assume
η1 and η2 are both in (0, 1) and η2 > η1 . if Δη = η2 − η1 is
small enough, the curve segment on the task path P, described
in (2), can be regarded as a straight line segment approximately. During each path segment Δη, the pose information
(x(η2 ), y(η2 ), z(η2 ), γ(η2 ), β(η2 ), α(η2 )) of P at η2 is the current desired pose. A path analyzing method shown in Fig. 3 can
calculate the pose error and decide compensation input of the
next step. In this paper, a fixed control interval is used, which is
denoted as Tc and Tc = Δη, where is positive and relevant
to the tracking speed. At the end of each Tc , the current TCP
pose and velocity estimation, denoted as ρ̂k ,k , is obtained from
the output of Kalman filter.
Given the segment line between (η1 , η2 ) and the current
pose, it is simple to obtain the pose pd (k) of the closest
point from current point to the line. Moreover, pc (k) is used
to denote the pose part of ρ̂k ,k . Therefore, the pose error
ν(k) = (νx (k), νy (k), νz (k), νγ (k), νβ (k), να (k)) can be computed as follows:
ν(k) = pd (k) − pc (k).
(17)
Since the pose error ν(k) is represented in FU T in task
space, it is completely different from the robot user frame
FU R . In Section II-A, an equivalent user frame FU E q is introduced. Both FU T and FU E q are defined in FS . If ν(k) is
transformed into FU E q as a vector ς(k) = (ςx (k), ςy (k), ςz (k),
ςγ (k), ςβ (k), ςα (k)), the translational and rotational errors in
FU E q are the same as those in FU R . Suppose the homogeneous
transformation matrix of FU T and FU E q in FS is denoted as
S
S
U T H and U E q H, respectively. The homogeneous transformation matrix of FU T in FU E q is
UE q
UT
H. The translational part of
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
1164
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 23, NO. 3, JUNE 2018
ς(k) can be computed from ν(k) as follows:
UEq
UT
H = UE q
S
H−1 US T H,
[ςx (k) ςy (k) ςz (k) 1]T = UUETq H [νx (k) νy (k) νz (k) 1]T .
(18)
For the rotational part of ς(k), the equivalent angle-axis
method in [27] is used. Generally, the rotational change is slower
than translational change. From the closest point pd (k) in Fig. 3,
the corresponding homogeneous matrix in FU T is UdT H while
the homogeneous matrix UrT H represents the current TCP pose
pc (k) in FU T . Therefore, the homogeneous matrix rd H that represents the transformation from the current TCP pose to the
closest point can be obtained as follows:
r
dH
= U Tr H−1
UT
dH
(19)
where rd R (3 × 3 matrix) is the left-upper part of rd H. Based on
the equivalent angle φ and axis r K can be derived. The
equivalent axis U E q K defined in FU E q is obtained as follows:
where Δp(k) denotes the small change of the pose of the endeffector in FU R , and Δq(k) is the corresponding change of the
joint position. In this paper, singularities are not considered.
Consequently, the current joint error q̃(k) = qd (k) − q(k),
where qd (k) is the desired joint position, can be obtained by
q̃(k) = J−1 (q(k))ς(k).
sd (k) = [qd (k − 1)T , qd (k)T ]T denotes the desired state at
time instant k. Since the task path P is continuously differentiable, an assumption can be made as
sd (k + 1) = sd (k) + f (k)
=
UE q
UT
U T H r H,
UE q
K=
UE q
r
rR K
where 3 × 3 rotation matrix
is the left-upper part of hoU
mogeneous matrix E qr H.
Corresponding to rotation operation rd R, the equivalent angle
in FU E q is the same as φ. Therefore, the rotation matrix U E q (rd R)
in FU E q can be derived. On the other hand, rotation operation
UE q r
(d R) can be realized by using fixed angles method [27] as
follows:
UE q r
(d R)
= Rotz (ςα (k)) Roty (ςβ (k)) Rotx (ςγ (k))
e(k) = Z(k) ς(k − 1)T , ς(k)T
Z(k) =
(20)
UE q
rR
(21)
where Rotx , Roty , and Rotz are the rotation matrix around xaxis, y-axis, and z-axis of FU E q with fixed angles ςγ (k), ςβ (k),
and ςα (k), respectively [27]. Since U E q (rd R) is known, ςγ (k),
ςβ (k), and ςα (k) can be computed through (21). ςγ (k), ςβ (k),
and ςα (k) are the rotational part of ς(k).
06×6
.
J−1 (q(k))
τ (k) = h(k) + Γe(k) + Λ(e(k) − e(k − 1))
(22)
where ṗ(k) is represented in FU R , and q(k) is the current
joint position. When the changes of the joint angles are very
small, based on (22), the following equations can be deduced
as follows:
(23)
(26)
(27)
where Λ = [diag[Λ1 , Λ2 , Λ3 , Λ4 , Λ5 , Λ6 ], 06×6 ] and Γ = [diag
[Γ1 , Γ2 , Γ3 , Γ4 , Γ5 , Γ6 ], 06×6 ] are control gain matrices; O(k)
h(k) = Y(k). Λi and Γi , i = 1, . . . , 6, are positive constants.
Therefore, according to (38), (25), and (27), e(k + 1) can be
obtained as follows:
e(k + 1) = sd (k + 1) − s(k + 1)
= (I − F(k))sd (k) + f (k) + (F(k) − O(k)Γ
− O(k)Λ)e(k) + O(k)Λe(k − 1)
= ξ1 + ξ2 e(k)
Both the translational and the rotational parts of pose error
ς(k) are prepared for path-tracking control block in Fig. 2. The
objective of path-tracking control block is to produce control
input for the robot controller so that all the six elements of ς(k)
converge to a certain boundary to meet the precision requirement. It is required that the TCP movement along the task path
P is smooth, and the control input is compatible with robot
controller and satisfies the saturation conditions.
According to [27], the Jacobian matrix J(q(k)) can be used
to relate the velocities of the end-effector ṗ(k) and robot joints
q̇(k) as follows:
Δp(k) = J(q(k))Δq(k)
J−1 (q(k − 1))
06×6
T
A control law is designed to stabilize closed-loop system as
follows:
C. Tracking Control Law Design
ṗ(k) = J(q(k))q̇(k)
(25)
where each element of f (k) ∈ R6 is a bounded function.
e(k) denotes the state error at time k as e(k) = sd (k) −
s(k) = [q̃(k − 1)T , q̃(k)T ]T . According to (24), e(k) can be
derived as
r
d R,
UE q
rH
(24)
(28)
where
ξ1 = (I − F(k))sd (k) + f (k) + O(k)Λe(k − 1)
ξ2 = F(k) − O(k)Γ − O(k)Λ.
(29)
Assume that at previous time instant k − 1, the state error
e(k − 1) is bounded. Moreover, sd (k) and f (k) are known to
be bounded. Therefore, ξ1 is bounded. ξ2 is mainly related to
control matrices Λ and Γ.
D. Stability Analysis
In this section, the stability of the proposed control law is
analyzed by using Lyapunov funcion. It is assumed the task
path P is reachable for the robot and visible in the FOV of
the VMI. Since only 6-DOF industrial robot is considered in
this paper, the robot is kinematically nonredundant so that the
Jacobian matrix J(q(k)) can satisfy nonsingularity along P.
Theorem 1: Consider the industrial robot (35) and a photogrammetry sensor C-track with eye-to-hand configuration.
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
SHU et al.: DYNAMIC PATH TRACKING OF INDUSTRIAL ROBOTS WITH HIGH ACCURACY USING PHOTOGRAMMETRY SENSOR
Under the DPT control law (27), the robot can track the path in
the workspace with bounded pose error.
Proof: The Lyapunov function candidate is defined as
V (k) = e(k)T e(k)
1165
TABLE I
SIMULATION RESULTS OF DPT SCHEME ON PUMA 560 WITH SOME
DEVIATIONS ON J(q(k))
(30)
where V (k) ≥ 0 and V (k) = 0 only if e(k) = 0.
The time difference of (30) can be formed as
ΔV (k + 1) = V (k + 1) − V (k)
= e(k + 1)T e(k + 1) − e(k)T e(k)
= (ξ1 + ξ2 e(k))T (ξ1 + ξ2 e(k)) − e(k)T e(k)
≤ 2ξ1T ξ1 + 2(ξ2 e(k))T (ξ2 e(k)) − e(k)T e(k)
(31)
= 2ξ1T ξ1 + e(k)T 2ξ2T ξ2 − I e(k)
where by tuning the parameters of Λ and Γ, 2ξ2T ξ2 − I can be
negative definite. Therefore, ΔV (k + 1) ≤ 0 is satisfied as long
as the following inequality is satisfied:
2ξ1T ξ1 ≤ e(k) I − 2ξ2T ξ2 e(k) ≤ I − 2ξ2T ξ2 e(k)2 .
(32)
Correspondingly
e(k)2 ≥
2ξ1 2
2ξ1T ξ1
=
.
I − 2ξ2T ξ2 I − 2ξ2T ξ2 (33)
Fig. 4.
Then
√
e(k) ≥ 2ξ1 I − 2ξ2T ξ2 .
(34)
From (34), it is clear that e(k) is bounded by √
√
2ξ 1 I−2ξ 2T
ξ2
.
Also, by choosing suitable control parameters of Λ and Γ such
that ξ2T ξ2 is small, then e(k) can be minimized.
VI. SIMULATION AND EXPERIMENTAL RESULTS
In this section, the simulation of the DPT scheme based on
Puma 560 is carried out. Then, the DPT scheme is implemented
on the 6-DOF industrial manipulator, Fanuc M20-iA by using
the C-track 780 as dynamic pose-measuring instrument.
A. Simulation Results
Puma 560 is the first industrial robot, whose parameters are
well known and very similar to those of most of the modern
6-axis industrial robots [28]. The developed DPT scheme has
been implemented on Puma 560 in Matlab and with the help of
the Robotic Toolbox provided by Peter Corke [28]. Small deviations, e.g., 5% error, are imposed on Jacobian matrix J(q(k)).
The simulation results on the line tracking without path correction and with the proposed DPT scheme are presented in
Table I. It is noticed that after applying DPT scheme, the tracking errors resulted from the inaccurate J(q(k)) can be reduced
to ±0.05 mm for position and ±0.05 deg for orientation. Therefore, the simulation results demonstrate that the DPT scheme is
robust to some deviations on J(q(k)).
Experimental setup.
B. Experimental Preparation
The Fanuc M20-iA, shown in Fig. 4, is a 6-axis hollow-wrist
robot that has six revolute joints. The repeatability of Fanuc
M20-iA is 0.08 mm. The Fanuc M20-iA comes with the Fanuc
R30iB controller, which provides dynamic path modification
(DPM) function through Ethernet connection or an analog signal
input or digital input. 3-D pose modification with respect to robot
user frame FU R or tool frame FE can be realized when Fanuc
M20-iA is working in DPM mode. The Fanuc company provides
software package and PCDK toolkit to support the connected
computer to communicate with the robot controller by Ethernet.
The C-track 780 from Creaform Company, shown in Fig. 4, is
a type of dual-camera sensor with dynamic measurement capabilities, which can track the reference model, including a rigid
set of reflectors, and provide continuous image acquisition (3-D
measurements), which are transmitted to the control system in
real time. The reference model can be built by using some simple
passive reflectors that are cheap, adhesive, and magnetic. The
reflectors work as the feature points. The volumetric accuracy of
the C-track 780 is 0.065 mm and the repeatability of the C-track
780 is 0.0025 mm, both of which are given by root-mean-square
value.
In the experiment, an artificial tool with needle tip, as shown
in Fig. 4, is mounted at the center of flange on Joint 6 of Fanuc
M20-iA and is treated as the end effector. Fanuc provides a
built-in 6-points method to define a new tool frame on the tip
of the new tool, which is regarded as the TCP. By using this
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
1166
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 23, NO. 3, JUNE 2018
TABLE II
POSE INFORMATION OF Pd 1 FOR THE END-EFFECTOR IN SENSOR FRAME
FS FOR EXPERIMENTS
method together with Vxelements functions, all the frames in
Fig. 1 can be defined.
The DPT scheme in Section V is implemented by the software
of the DPT module. The DPT module integrates Funuc PCDK
and Vxelements to realize communication with Fanuc R30iB
controller and C-track. The task path P is given as a straight
line in the task space. Since the maximum updating frequency of
C-track tracking data is 29 Hz, the control interval Tc should be
bigger than 34.48 ms(1/29 Hz). The basic interpolation interval
(ITP) of Fanuc M20-iA is 8 ms, the cycle at which the destination
is computed and sent to the motion environment. In DPM mode,
the maximum applicable offset value at each axis is 0.02 mm at
each ITP. In the experiments, the DPT module is running under
the Window 7.0 system on a high-performance computer with
Intel Xeon Processor E5-1650 v3 3.5GHz and NVIDIA Quadro
K2200 professional graphics board. Simultaneously, one teachpendant (TP) program in robot controller is running for actuating
the robot to move along the tool path P . When the robot starts
following the path it will send a digital output signal to the DPT
module so that the DPT module begins dynamic path correction.
When the robot reaches the end point of the path, it will send a
digital output signal to the DPT module as the stop sign for the
dynamic path correction.
C. Error Analysis for Fanuc M20-iA
Before implementing DPT, the error analysis for the Fanuc
M20-iA moving along straight line without using DPT for
path correction has been conducted. The distance error between
the current position and the desired path is defined as
νx (k)2 + νy (k)2 + νz (k)2 , where νx (k), νy (k), and νz (k)
are the position error in (17). The tests are carried out to compare the distance errors with and without pose correction when
the TCP is moving along Pd1 , as described in Table II. Fanuc
provides teach-pendant programming function to perform line
movement of TCP without pose correction. By programming
in teach pendant of Fanuc M20-iA, the two points in Table II
can be set as the start and end point of linear movement command, respectively. Then, the program is run in teach pendant.
The TCP of the end-effector will move in linear motion. The
forward speed and the reverse speed are 25 and 15 mm/s, respectively. Extensive experimental tests on Fanuc M20-iA path
tracking have been carried out. The following summary on the
error patterns during path tracking is drawn. The robot performance is configuration dependent. The distance errors exhibit
different patterns when the robot tracks the same line along
different directions and in different orientations [see Figs. (5)
Fig. 5. Distance error when Fanuc M20-iA moves forward along Pd 1 at
speed 15 mm/s without path correction.
Fig. 6. Distance error when Fanuc M20-iA moves backward along Pd 1
at speed 25 mm/s without path correction.
and (6)]. And when the robot tracks different paths, the distance
errors are different as well. The tracking speed also affects the
distance error. The vibration is observed in the distance error
due to the elasticity and backlash of the joint actuators [20].
Besides, high-frequency noise caused by the noisy measurements from C-Track appears on the distance error, which means
that the measurement from C-Track cannot be directly used as
the feedback in dynamic path tracking control. The distance
error is caused by three major factors: 1) robot nonlinearity,
2) low-frequency vibration of robot movement; and 3) highfrequency noise of C-Track measurement. The AKF aims to
remove the high-frequency noise and the PBVS aims to reduce
the distance error due to the nonlinearity and low-frequency
vibration. Therefore, in order to enhance the accuracy of path
tracking of Fanuc M20-iA, the proposed control scheme with a
proper noise filtering addresses all the above-mentioned factors.
D. Kalman Filter Initialization
According to (10)–(16) proposed in Section IV, the following
variables and parameters should be initialized properly to start
the Kalman filter.
The initial estimation ρ̂0,0 is initialized by using the current
pose estimation and setting velocity zero. The initial covariance
matrix W0,0 is set as a 12 × 12 identity matrix, which affects
the transient convergent speed of the Kalman filter.
The diagonal elements of A are 1 and Ai,i+6 (i = 1, . . . , 6)
is taken as Ts . Ideally, the current pose of the end-effector is
equal to the former six elements of the current state vector
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
SHU et al.: DYNAMIC PATH TRACKING OF INDUSTRIAL ROBOTS WITH HIGH ACCURACY USING PHOTOGRAMMETRY SENSOR
Fig. 7. Distance error in sensor frame FS when Fanuc M20-iA moves
forward along Pd 1 at speed 25 mm/s with path correction.
Fig. 8. Position error of the TCP in sensor frame FS when Fanuc M20iA moves forward along Pd 1 at speed 25 mm/s with path correction.
ρ̂k ,k . Ω0 is 0.001diag(0.15, 0.15, 0.8, 0.158, 0.143, 0.0219),
which are obtained by calculating the root-mean-square error of static measurements for fixed point in WR . The constant weights μi , i = 1, . . . , 6 for updating Ωk with velocity
changes are set as 1.5e − 6. Compared to Ω0 , Qk is initialized
as (1e − 6)diag(1, 1, 10, 1, 1, 1, 1, 1, 10, 1, 1, 2) and the length
N in (16) is 20.
1167
Fig. 9. Orientation error of the TCP in sensor frame FS when Fanuc
M20-iA moves forward along Pd 1 at speed 25 mm/s with path correction.
Fig. 10. Distance error in sensor frame FS when Fanuc M20-iA moves
along Pd 1 backward at speed 25 mm/s with path correction.
TABLE III
RESULTS COMPARISON IN SENSOR FRAME FS WHEN FANUC M20-IA
MOVES FORWARD ALONG Pd 1 AT SPEED 25 MM/ S AFTER 9 s
E. Control Parameters Initialization
The sampling interval Ts for C-Track is 1/29 sec, while 29 Hz
is the maximum frequency of C-track 780. Once the image
information from C-Track 780 is updated, the pose estimation
and AKF will work sequentially to obtain the pose information
with minimum delay. Therefore, the pose updating rate is equal
to 29 Hz. Additionally, the control period Tc for DPT module
is determined by considering Ts , ITP of Fanuc M20-iA and
maximum control step limit of Fanuc R30iB controller. For
the experiments in this research, Tc is set as 300 ms. Γ is set
as [diag(0.3, 0.3, 0.3, 0.15, 0.15, 0.15), 06×6 ], and Λ is set as
[diag(0.04, 0.04, 0.04, 0.02, 0.02, 0.02), 06×6 ].
F. Experimental Results
1) Line Tracking: Two experiments are carried out to obtain
the results of using DPT and AKF when Fanuc robot moves forward and backward along Pd1 at speed 25 mm/s, respectively.
The pose-updating rate of AKF is equal to the sampling rate of
C-track. Figs. (7)–(10) show the results by using DPT for path
correction. For tracking Pd1 , the TCP of Fanuc M20-iA starts at
TABLE IV
RESULTS COMPARISON IN SENSOR FRAME FS WHEN FANUC M20-IA
MOVES ALONG Pd 1 BACKWARD AT SPEED 25 MM/ S AFTER 9 s
the starting point and stops at the end point. Correspondingly,
the TCP accelerates at the beginning segment of the path and
decelerates at the final segment of the path. Due to the influence
of the acceleration, AKF can converge and follow the measured
data after around 3 sec. Then, after around 6 sec, the distance
error will keep less than ±0.2 mm. Tables III and IV show the
comparison results after 9 sec. According to Tables III and IV,
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
1168
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 23, NO. 3, JUNE 2018
TABLE V
CIRCLE CENTER IN SENSOR FRAME FS FOR EXPERIMENTS
Fig. 13. Distance error in sensor frame FS when Fanuc M20-iA moves
along Pd 2 at speed 25 mm/s with path correction.
TABLE VI
RESULTS COMPARISON IN SENSOR FRAME FS WHEN FANUC M20-IA
MOVES ALONG Pd 2 AND Pd 3 AT SPEED 25 MM/ S
Fig. 11. Distance error in sensor frame FS when Fanuc M20-iA moves
along Pd 2 at speed 25 mm/s without path correction.
in terms of distance error and pose error between the TCP pose
and desired one. The experimental tests demonstrate the proposed DPT scheme can compensate for the calibration error,
vibration error, and uncertain model error in real time.
VII. CONCLUSION
Fig. 12. Trajectory of the TCP in sensor frame FS when Fanuc M20-iA
moves along Pd 2 at speed 25 mm/s with path correction.
the line-tracking accuracy is improved obviously by using DPT.
Therefore, the results demonstrate DPT scheme can improve the
line-tracking accuracy up to ±0.1 mm for position accuracy and
±0.05 deg for rotational accuracy, respectively.
2) Circle Tracking: Two groups of experiments are carried
out to compare the tracking accuracy when the TCP of the Fanuc
M20-iA is moving along two half circles at speed 25 mm/s, Pd2
and Pd3 , which have the common circle center in Table V and
different radii, 300 and 400 mm, respectively. Fig. 11 shows the
distance errors when Fanuc robot is moving along Pd2 at speed
25 mm/s without path correction, while Figs. (12) and (13) show
the results of using DPT for path correction. The comparison of
the results is summarized in Table VI where the distance error is
less than ±0.2 mm with path correction. During the circle tracking movement, the orientation of the end-effector is controlled
with respect to the circle center and the rotational accuracy is
up to ±0.1 deg. From the experimental results of both line and
circle tracking, one can see that the developed DPT scheme can
guide the TCP to follow the preplanned path with a high accuracy up to ±0.2 mm for position and ±0.1 deg for orientation.
Compared with the current robot controller without path correction, the path-tracking accuracy has been significantly improved
In this paper, a practical DPT scheme is proposed to command the robot to follow the desired path through the robot
controller. The DPT scheme adopts PBVS strategy and eyeto-hand configuration where a photogrammetry sensor–C-track
can measure the pose of the end-effector in real time. Moreover, in order to reduce the influence from the image noise, blur,
and distortion, an adaptive Kalman filter is proposed to process the pose estimation of the end-effector. The stability of the
DPT scheme is proved by using Lyapunov stability theory. The
experimental tests demonstrate the proposed DPT scheme can
improve the line-tracking accuracy to ±0.1 mm for position and
±0.05 deg for orientation, and the circle-tracking accuracy to
±0.2 mm for position and ±0.1 deg for orientation. The developed DPT scheme renders the industrial high-end robots without
retrofitting the robot with expensive encoders. The future work
includes applying the DPT scheme to other types of path tracking, such as S-shape curve, square, etc., and testing on the other
types of industrial robots, such as ABB and KUKA.
APPENDIX
DISCRETE DYNAMIC MODEL OF 6-LINK MANIPULATORS
The general dynamic model of 6-link manipulators [29] is
described by
M(q(t))q̈(t) + C(q(t), q̇(t))q̇(t) + g(q(t)) = τ (t)
(35)
where t denotes the time; q(t), q̇(t), and q̈(t) ∈ R are the
robot joint position, velocity, and acceleration vectors, respectively; M(q(t)) ∈ R6×6 is a positive-definite, symmetric inertia
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
6
SHU et al.: DYNAMIC PATH TRACKING OF INDUSTRIAL ROBOTS WITH HIGH ACCURACY USING PHOTOGRAMMETRY SENSOR
matrix; C(q(t), q̇(t))q̇(t)) ∈ R6 denotes the vector corresponding to centrifugal and Coriolis forces; g(q(t)) ∈ R6 is
the vector of the gravitational torques; τ (t) ∈ R6 denotes the
control input vector.
Assume that t = kTc . By using forward finite-difference for
discretization, substitute q̇i (t) = (qi (k) − qi (k − 1))/Tc and
q̈i (t) = (qi (k + 1) − 2qi (k) + qi (k − 1))/Tc2 (i = 1, . . . , 6)
into (35), the discrete state equation is formulated as
q(k)
06×6 I6×6
q(k − 1)
=
q(k)
δ(k) ξ(k)
q(k + 1)
+Tc
06×6
ζ(q(k))
τ (k) +
06×6
−ζ(q(k))
g(q(k))
(36)
where
δ(k) = Tc M−1 (q(k))C(q(k), q(k − 1)) − I
ξ(k) = 2I − M−1 (q(k))C(q(k), q(k − 1))
ζ(k) = Tc2 M−1 (q(k))
(37)
I is 6 × 6 identity matrix.
Let s(k) = [q(k − 1)T , q(k)T ]T . Then according to (36), the
state equation can be written as
s(k + 1) = F(k)s(k) − Y(k) + O(k)τ (k)
where
F(k) =
06×6
I6×6
δ(k) ξ(k)
06×6
O(k) = Tc
.
ζ(q(k))
, Y(k) =
06×6
ζ(q(k))
(38)
g(q(k)),
(39)
REFERENCES
[1] N. Holt, “Automotive robots reach for the sky,” 2007. [Online]. Available:
http://www.automotivelogisticsmagazine.com/uncategorized/automotive
-robots-r each-for-the-sky, Accessed on: Sep. 25, 2017.
[2] A. Robotics, “Absolute accuracy industrial robot option,” 2011.
[Online]. Available: https://library.e.abb.com/public/e69d8dd25cd7d36bc
125794400374679/AbsAc cPR10072EN_R6.pdf, Accessed on: Sep. 25,
2017.
[3] R. C. DeVlieg, “Robotic manufacturing system with accurate control,”
US Patent 8 989 898, Mar. 24, 2015.
[4] R. Devlieg and T. Szallay, “Applied accurate robotic drilling for aircraft
fuselage,” SAE Int. J. Aerosp., vol. 3, pp. 180–186, 2010.
[5] A. Joubair and I. A. Bonev, “Nonkinematic calibration of a six-axis serial
robot using planar constraints,” Precis. Eng., vol. 40, pp. 325–333, 2015.
[6] A. Nubiola and I. A. Bonev, “Absolute calibration of an ABB IRB 1600
robot using a laser tracker,” Robot. Comput.-Integr. Manuf., vol. 29, no. 1,
pp. 236–245, 2013.
[7] Y. M. Zhao, Y. Lin, F. Xi, and S. Guo, “Calibration-based iterative learning
control for path tracking of industrial robots,” IEEE Trans. Ind. Electron.,
vol. 62, no. 5, pp. 2921–2929, May 2015.
[8] W. J. Wilson, C. C. W. Hulls, and G. S. Bell, “Relative end-effector control using cartesian position-based visual servoing,” IEEE Trans. Robot.
Autom., vol. 12, no. 5, pp. 684–696, Oct. 1996.
[9] F. Janabi-Sharifi, L. Deng, and W. J. Wilson, “Comparison of basic visual servoing methods,” IEEE/ASME Trans. Mechatronics, vol. 16, no. 5,
pp. 967–983, Oct. 2011.
1169
[10] M. Keshmiri and W.-F. Xie, “Image-based visual servoing using an optimized trajectory planning technique,” IEEE/ASME Trans. Mechatronics,
vol. 22, no. 1, pp. 359–370, Feb. 2017.
[11] D.-H. Park, J.-H. Kwon, and I.-J. Ha, “Novel position-based visual servoing approach to robust global stability under field-of-view constraint,”
IEEE Trans. Ind. Electron., vol. 59, no. 12, pp. 4735–4752, Dec. 2012.
[12] A. Hajiloo, M. Keshmiri, W.-F. Xie, and T.-T. Wang, “Robust online model
predictive control for a constrained image-based visual servoing,” IEEE
Trans. Ind. Electron., vol. 63, no. 4, pp. 2242–2250, Apr. 2016.
[13] L. Deng, F. Janabi-Sharifi, and W. J. Wilson, “Hybrid motion control
and planning strategies for visual servoing,” IEEE Trans. Ind. Electron.,
vol. 52, no. 4, pp. 1024–1040, Aug. 2005.
[14] S. Y. Chen, “Kalman filter for robot vision: A survey,” IEEE Trans. Ind.
Electron., vol. 59, no. 11, pp. 4409–4420, Nov. 2012.
[15] E. V. Cuevas, D. Zaldivar, and R. Rojas, “Kalman filter for vision tracking.”
Freie Universitt Berlin, Inst. Informatik, Berlin, Germany, Tech. Rep. B
05-12, 2005.
[16] G. E. D’Errico, “A la Kalman filtering for metrology tool with application
to coordinate measuring machines,” IEEE Trans. Ind. Electron., vol. 59,
no. 11, pp. 4377–4382, Nov. 2012.
[17] F. Janabi-Sharifi, “Visual servoing: Theory and applications,” Optomechatronic Systems Handbook. Cleveland, OH, USA: CRC Press, 2003.
[18] M. Ficocelli and F. Janabi-Sharifi, “Adaptive filtering for pose estimation
in visual servoing,” in Proc. 2001 IEEE/RSJ Int. Conf. Intell. Robots Syst.,
2001, vol. 1, pp. 19–24.
[19] Nikon, “High accuracy robotics.” 2016. [Online]. Available:
http://www.nikonmetrology.com/en_US/Products/In-processmeasurement/Ada ptive-Robot-Control Accessed on: Sep. 25, 2017.
[20] P. Stückelmaier, M. Grotjahn, and C. Fräger, “Iterative improvement of
path accuracy of industrial robots using external measurements,” in Proc.
2017 IEEE Int. Conf. Adv. Intell. Mechatronics, 2017, pp. 688–693.
[21] T. Hsiao and P.-H. Huang, “Iterative learning control for trajectory tracking of robot manipulators,” Int. J. Autom. Smart Technol., vol. 7, no. 3,
pp. 133–139, 2017.
[22] Y. Shirai, Three-Dimensional Computer Vision. New York, NY, USA:
Springer-Verlag, 2012.
[23] R. I. Hartley and P. Sturm, “Triangulation,” Comput. Vis. Image Understanding, vol. 68, no. 2, pp. 146–157, 1997.
[24] K. Kanatani, Y. Sugaya, and H. Niitsuma, “Triangulation from two views
revisited: Hartley-Sturm versus optimal correction,” in Proc. Brit. Mach.
Conf., vol. 4, 2008, pp. 18.1–18.10.
[25] J. S.-C. Yuan, “A general photogrammetric method for determining object position and orientation,” IEEE Trans. Robot. Autom., vol. 5, no. 2,
pp. 129–142, Apr. 1989.
[26] F. Janabi-Sharifi and M. Marey, “A Kalman-filter-based method for pose
estimation in visual servoing,” IEEE Trans. Robot., vol. 26, no. 5, pp. 939–
947, Oct. 2010.
[27] J. J. Craig, Introduction to Robotics: Mechanics and Control. Upper Saddle
River, NJ, USA: Prentice-Hall, 2005.
[28] P. Corke, Robotics, Vision and Control: Fundamental Algorithms in MATLAB. New York, NY, USA: Springer-Verlag, 2011.
[29] M. W. Spong, S. Hutchinson, and M. Vidyasagar, Robot Modeling and
Control. Hoboken, NJ, USA: Wiley, 2006.
Tingting Shu received the B.Sc. and M.Sc. degrees in computer engineering from the Central China Normal University, Wuhan, China,
in 1998 and 2001, respectively. She has been
working toward the Ph.D. degree in mechatronics from 2014 at Concordia University, Montreal,
QC, Canada.
She was a Researcher with the Flight Control & Management and Visual Reality, Beihang
University, Beijing, China, from 2001 to 2014.
Her research interests include intelligent control,
robotic control, visual servoing, and iterative learning control.
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
1170
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 23, NO. 3, JUNE 2018
Sepehr Gharaaty received the B.Sc degree in
mechanical engineering from Isfahan University
of Technology, Isfahan, Iran, and the M.Sc. degree in mechatronics from Concordia University,
Montreal, QC, Canada, in 2013 and 2016, respectively.
He is currently a Robotic Developer with
Omnirobotic, Montreal, QC, Canada. His research interests include robotics and automation, control, precision, and visual servoing.
Ahmed Joubair received the B.Sc degree in automated manufacturing engineering (AME) from
ÉTS, Montreal, Canada, QC, the M.Sc. degree in
industrial engineering from Montreal University,
Montreal, QC, Canada, and the Ph.D. degree in
AME from ÉTS, in 2005, 2007, and 2012, respectively.
He is a Researcher with the Control and
Robotic Laboratory, ÉTS and a Lecturer with
the Department of Mechanical Engineering and
Automated Manufacturing engineering, ÉTS,
Canada. His research interests include robotics metrology and calibration, collaborative robotics, and advanced manufacturing.
WenFang Xie (SM’12) received the Ph.D. degree in electrical engineering from The Hong
Kong Polytechnic University, Hung Hom, Hong
Kong, in 1999, and the M.Sc. degree in automatic control from Beihang University, Beijing,
China, in 1991.
She is a Professor with the Department
of Mechanical, Industrial, and Aerospace Engineering, Concordia University, Montreal, QC,
Canada. Her research interests include nonlinear control and identification in mechatronics,
visual servoing, model predictive control, neural network, and system
identification.
Ilian Bonev (SM’10) received the Ph.D. and
a postdoctoral fellowship degrees in parallel
robotics from the Université Laval, Quebec City,
QC, Canada, and the M.Sc. degree in mechatronics from Gwangju Institute of Science and
Technology, Gwangju, South Korea.
Since 2004, he has been a Professor with
ÉTS, Montreal, QB, Canada, and a holder of the
Canada Research Chair in Precision Robotics.
He is also Head of the Control and Robotics
Lab, ÉTS (CoRo). His research interests mainly
include the areas of parallel robots, precision robotics, and collaborative
robots.
Authorized licensed use limited to: University of Nantes. Downloaded on April 06,2022 at 09:00:14 UTC from IEEE Xplore. Restrictions apply.
Téléchargement