Sie sind auf Seite 1von 8

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

net/publication/308648024

A fast pick-and-place prototype robot: design and control

Conference Paper · September 2016


DOI: 10.1109/CCA.2016.7588005

CITATIONS READS
6 3,689

6 authors, including:

Catalin Stefan Teodorescu Bruno Depraetere


University College London Flanders Mechatronics Technology Centre
19 PUBLICATIONS   27 CITATIONS    32 PUBLICATIONS   188 CITATIONS   

SEE PROFILE SEE PROFILE

Jan Anthonis Armin Michael Steinhauser

44 PUBLICATIONS   123 CITATIONS   
KU Leuven
11 PUBLICATIONS   34 CITATIONS   
SEE PROFILE
SEE PROFILE

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

robotic harvesting View project

control and design: robotic arm: application in agriculture View project

All content following this page was uploaded by Catalin Stefan Teodorescu on 26 March 2018.

The user has requested enhancement of the downloaded file.


A fast pick-and-place prototype robot: design and control
C.S. Teodorescu1 , S. Vandenplas1 , B. Depraetere1 , J. Anthonis2 , A. Steinhauser3 and J. Swevers3

Abstract— This article focuses on a newly built research


platform (a robot). Using its vision system, it can identify round
objects that are randomly scattered on a table. Then, using its
gripper they are picked and placed inside a basket. The control
system is tuned such that, the succession of operations runs fast
and safe. In this paper we present how this has been achieved:
going from concepts to design, validation in simulation and
eventually experimental validation. Lessons learned can save
time for other parties interested in building prototype robots.

I. INTRODUCTION
Based on previous experience [1], at Flanders Make (Bel-
gium), we have recently built a prototype robot that can
execute fast pick-and-place operations (see Fig. 1a). It is
an open research platform intended to be used for testing
advanced control, vision and gripper techniques. This knowl- (a) photo
edge is valuable for companies interested in manufacturing
commercial robots, specifically during prototyping phase. 𝛽
These robots can be used in agriculture as well as industry,
with better capabilities than human operators.
Description of the Experimental Setup
The overall experimental setup was intended to be modular
allowing easiness in replacing each sub-assembly. From a 𝛾
high level overview, it can be divided into:
• robot arm (see Fig. 1a): it has 4 degrees-of-freedom (DOF) 𝛼
𝑧0b
permitting: (i) rotation about an horizontal axis, such that
the arm can execute up-down movement with an angle
α; (ii) rotation of the entire arm about a vertical axis,
with an angle β ; (iii) translation along a linear unit, with (b) CAD drawings with joint variables
distance z0b ; (iv) rotation of the gripper 360◦ , with angle
Fig. 1: The 4-DOF operational robot, able to execute fast
γ. Specifically its gripper is able to pick round objects of
pick-and-place of round objects.
a few centimeters in diameter. In the future, we intend
replacing it with another gripper capable of handling long
regular objects (e.g., cylinder, rectangular box).
• vision system: it consists of: (i) two cameras that are fixed System). It hosts the post-processing software, dealing with
on a rigid frame attached to the ground; they are intended recognition and localization of objects.
to be used for rough localization of objects; (ii) one camera • control system: it consists of: (i) one interface laptop PC
attached on the gripper (see Fig. 1a); it is intended to be running Simulink. It is used for online monitoring and
used for precise recognition of objects; (iii) one dedicated to generate code for (ii) one dedicated Triphase real-time
industrial PC running Ubuntu with ROS (Robot Operating target attached to numerous Beckhoff I/O terminals. The
1 C.S. Teodorescu, S. Vandenplas and B. Depraetere are with latter send out and receive signals to control the motors,
Flanders Make, Celestijnenlaan 300, bus 4027, B-3001 Heverlee, as well as safety.
Belgium {stefan.teodorescu, steve.vandenplas, • safety system: multiple measures have been taken in order
bruno.depraetere}@flandersmake.be to (i) protect the people, as well as to (ii) protect the robot.
2 J. Anthonis is with Octinion, Romeinsestraat 18, B-3001 Heverlee,
Belgium janthonis@octinion.com In Fig. 2 one can see that the robot is placed inside a cage.
3 A. Steinhauser and J. Swevers are with Division of Production, It consists of a reasonably high fence and a door with
Machine Design and Automation (PMA), Department of Mechanical an Euchner MGB locking device mounted on it. During
Engineering, Katholieke Universiteit Leuven, Celestijnenlaan
300B, B-3001 Heverlee, Belgium {armin.steinhauser, operation mode, access inside the cage is forbidden by
jan.swevers}@kuleuven.be keeping the door locked. To unlock it, there are two ways:
(i) by pushing the emergency stop button, which simulta- • dimensioning of electric motors: this topic will be ad-
neously cuts off power to motors, or dressed later on in section II-C.
(ii) by pushing a blue button: it has the meaning of • advanced feedforward model-based control: see later on,
requesting permission to go in. Only when the robot section III-E.
has a safe attitude, e.g. at standstill, will the door be
B. Dynamical model
allowed to unlock. In this situation, motors operation is
only disabled via software, instead of physically cutting For the reasons that will be mentioned earlier, it is impor-
off power as previously. tant to have a dynamical model available that is sufficiently
representative of physical phenomena. To achieve this, we
have used two approaches developed in parallel. Each one
of them has its advantages as well as drawbacks, summarized
in table I.
The first approach was to calculate a simplified dynamical
model using the textbook [2, §7]. From the Euler-Lagrange
equations of motion adding also nonconservative torques, we
derived the following nonlinear system of coupled differen-
tial equations:
M(q)q̈ + (C(q, q̇) + Bd ) q̇ + τC (q̇) + g(q) + τs (q) = R τm (1)
or equivalently, using the linearity in the parameters property
[2, §7.5.3]:
Fig. 2: Safety fence and door lock with emergency stop Y (q, q̇, q̈)θ = R τm (2)
button.
where
Other safety-related hardware actions include a lamp with • q, q̇, q̈ are vectors of dimension n representing joint
multiple colors indicating the operational status of the position, velocity and acceleration, respectively; q =
robot (green, orange, red); various shock absorbers (see (z0b α β γ) is constructed using Denavit-Hartenberg
Fig. 1a): (i) spring-damper systems positioned at the two convention [2, §3];
ends of the linear unit, (ii) deforming metal sheet for • M(q) represents inertia matrix;
the rotation β . Software actions include bypassing control • C(q, q̇) accounts for the Coriolis and centrifugal forces
decisions that might endanger the robot, and using instead contributions;
a safe fallback control. • Bd is a diagonal constant matrix of the cumulated viscous
The paper is organized as follows: section II focuses on damping between motors and links;
dynamic modeling, followed by control design and results in • τC (q̇) is the Coulomb friction torque vector
section III. The paper ends with conclusions in section IV. • g(q) accounts for the gravity forces vector;
• τs (q) stands for the spring effect acting only on α-DOF;
II. D IMENSIONING MECHANICAL AND ELECTRICAL
this spring is visible in Fig. 1a, positioned on the diagonal
COMPONENTS
of the parallelogram frame;
A. Nominal parameters • R is a diagonal positive matrix of cumulated gear ratios.
Advanced mechanical design CAD tools1 are quite valu- These gears are situated between motors and links and used
able for multiple reasons. On the one hand they allow 3D for torque amplification and speed reduction;
visualization of the final product (see Fig. 1b), assembled • τm is the vector of motor torques;
using custom-made parts (some of these components will be • Y (q, q̇, q̈) is the regressor matrix;
laser printed, increasing the total price of the setup) as well • θ is the parameter vector consisting of products and/or
as off-the-shelf ones. On the other hand, the CAD software sums of physical parameters
is able to compute (estimate) quite accurately physical quan- In our previous work [3, Appendix II] we have provided
tities associated to robot links, like the mass, position of the details on the content of aforementionned vectors, matrices,
center of mass, inertia tensor matrix. for a 2-DOF, 2-link robot. Actually that was a simplified
The datasheets publicly available on manufacturers’ web- version of our current 4-DOF robot, where the β and γ-DOF
site provide other parameters like: (i) rotor inertia, torque are fixed once and for all.
constant for motors; (ii) gear ratio, mass moment of iner-
tia for gearboxes; (iii) mass of carriage, conversion factor The second approach was to use a multibody software.
between rotation and translation for linear units. Instead of opting for commercial products (e.g., MapleSim),
All these form the nominal parameters and are necessary we were mainly interested in open source alternatives. After
for building a dynamical model which finds its utility in: careful selection we decided to use Robotran [4]. Using a
high-level interface, the user can easily specify the properties
1 we have used Autodesk Inventor Professional 2015 of links and joints, and the software automatically generates
the dynamical model. An interesting feature is that in the end, 50
200 0.4
the user has access to readily implementable code (Matlab, 40
180
0.3
Phyton but also C/C++). It is based on ODEs after applying 30
160
successive transformations on top of (1). Its main drawbacks 0.2

speed β−motor [rad/s]


140

Power β−motor [W]


20

torque β−motor [Nm]


include: (i) equations are not readily available in symbolic 0.1
120
10
form (1)–(2), which is important for advanced control design 0
100
[2, §8]; (ii) experimental parameter identification is currently 0
80 −0.1
not available; this makes it highly reliable on nominal −10
60
−0.2
parameters. 40
−20
−0.3
20 −30
Manual Multibody −0.4
Criteria textbook software 0
0 0.2 0.4 0.6 0.8 1
−40
0 0.2 0.4 0.6 0.8 1
based (Robotran) Normalized time [−] Normalized time [−]
man effort to obtain the final
weeks days
equations Fig. 3: Dimensioning of β -motor: speed, torque and power
representativeness with respect to
physical phenomena
fair higher curves.
numerical model complexity more
fair (60;
(number of physical parameters; involved
4 × 4)
matrix size) (120; 7 × 7)
fairly
that can withstand the relatively high peak torque of 0.4 Nm.
usage for code generation easy Therefore, we opted for a Maxon EC series brushless motor
accessible
straightforward usage for: rated 250 Watt that can provide the required torque.
(i) dimensioning electric motors;
yes yes
(ii) feedforward model-based D. Experimental identification of robot parameters
control
experimental lumped parameter
yes n/a A key element of (2) is that it relies on physical nominal
identification (2) parameters: the more accurate they can be identified, the
TABLE I: Comparison between two approaches used to more reliable the plant nominal model. As we have explained
obtain a 4-DOF, 6-link, rigid body dynamical model. in section II-A, nominal parameters are issued by CAD
drawings and datasheets. However, there are other aspects
that are not being taken into account by CAD drawings, nor
C. Dimensioning motors by datasheets. For example: (i) friction characteristics; (ii) ca-
Motors should be powerful enough so that the robot can bles are often not included in CAD drawings; especially for
execute reliably the desired operation. In order to calculate lightweight components, their effect might be considerable.
their characteristics, we have used the nominal plant model Therefore, experimental identification is needed in order
of section II-B with the nominal parameters of section II-A to mitigate slight differences that might persist with respect
and the following methodology. to reality.
The first step is to pre-define a typical pick-and-place mo- A first approach would be to take each link of the robot one
tion for this robot. It should be executed in short time (about by one and experimentally identify its mass, center of mass,
1.5 seconds) with the gripper holding quite a heavy object of inertia matrix. This requires dedicated measuring equipment
2 kg: it is required to move between two extreme positions of and personnel capable of mounting and dismounting the
its workspace, situated approximately 2 meters apart. Next, robot. Moreover, when this is performed, it is not always
smooth trajectories q will be pre-defined, together with their possible to correctly take into account the effect of cables
successive higher order derivatives q̇ and q̈. Finally, (1) or and to obtain realistic values for friction parameters e.g.,
(2) are used to calculate motor torques τm . due to coupling effects.
Typically we obtain curves like the one in Fig. 3, for each To overcome these drawbacks, an alternative solution
axis. Next, the selection of motors is done by checking and is proposed in [5], [6]: estimate θ from (2) by fitting a
making sure that these curves comply with motor character- set of experimentally measured data. To do so, we will
istics (taken from datasheets). The most important ones are simultaneously measure quantities q(t), q̇(t), q̈(t) as well
nominal and peak values of the speed, torque and power. as τm (t). For each time instant t, a linear system (2) can
Peak torques may never exceed the maximum reachable be formed. For multiple time instants t an augmented linear
torque, otherwise the trajectories can never be executed. system can be formed and solved using a linear least squares
When the nominal motor speeds are exceeded, the torque of estimation method. The approach taken here was focused on
the motor is reduced below its nominal value. On the other getting a dataset which could be used to efficiently identify
hand, average torque and power are important for estimating the parameters in this model. This means we try to find data
the heating up of the motor. All these considerations need such that the matrix Y (q, q̇, q̈) is well conditioned (such that
to be taken into account during the selection process of the an identification can be done based on a small amount of data
motors. yet still with a high confidence on the estimates, or such that
In particular, the peak power in Fig. 3 suggests a motor for a given test duration the identification can be performed
of 50 Watt would be enough, however we did not find one resulting in as much confidence as possible). Next to this, we
also want to avoid collisions during the data collection (with permitted easy extension of Euler-Lagrange model (1)–(2).
the robot not hitting itself nor its environment), and we want Consequently, the experimental procedure from section II-D
to record data by having the robot move in a manner that is would have allowed to identify the physical parameters.
close to the normal operating regimes (big sweeping motions, A second dynamic friction model that we have investigated
such as shown in Fig. 4). The data is measured in closed- was LuGre. Unfortunately it does not have the linearity in the
parameters property. A comparison between the two models
is given in [9].
In the end, we have abandoned further investigation in
this direction: both Bliman-Sorine and LuGre models exhibit
mathematical artifacts that are not physical, like undesired:
(i) oscillations; (ii) behavior during transitory phase that
is not according to specified tuning parameters. For more
details on this topic, see [9].
III. C ONTROL
In this section we are interested in a control design capable
of executing fast pick-and-place operations. Imposing high
performance will consequently mean that motors run towards
their saturation limit.
At Flanders Make we have a running demo with the
Fig. 4: End-effector trajectory avoiding collisions with rect- robot, which consists of picking objects (yellow balls) that
angular boxes sitting on the floor. Colors illustrate speeds are randomly positioned on a table and placing them inside
associated to specific positions. a basket. The functional diagram of Fig. 6 illustrates the
control system architecture, detailed next.
loop with simple PID independent axis control active, which
tracks a reference qref (t). This reference will be optimized Vision system Feedforward Control
beforehand by taking into account the considerations above Nominal
Plant
(see results in Fig. 5). The optimization will look for the Model
amplitudes and frequencies of a sum of sines and cosines (i.e.
a multi-sine excitation signal), such that their sum maximizes (𝑥c , 𝑦c , 𝑧c )
𝑞 ref (𝑡)
the condition number of the matrix Y (qref , q̇ref , q̈ref ), respects Trajectory
𝑞ሶ ref (𝑡)
Feedback Control ref
𝜏m Real
𝑞ሷ ref (𝑡)
constraints on the allowable movement speeds, avoids colli- planning + Plant

sions and promotes big sweeping motions.


𝑞, 𝑞ሶ

−0.5
Fig. 6: Schematic diagram of the closed-loop control system.
−1
βref(t) [rad]

−1.5 The vision system is used to compute the position


−2 (xc , yc , zc ) of each randomly distributed object. This informa-
−2.5
tion will be used by trajectory planning, which will calculate
0 2 4 6 8 10 a reference path qref (t) from the robot’s current position
Time [s]
towards grabbing each of these objects and then placing
Fig. 5: Sample β ref (t) solution of a nonlinear optimization them inside a basket; qref (t) together with its successive
problem with physical constraints. higher order derivatives q̇ref (t) and q̈ref (t) are used by the
control system: here we propose to use a combination of
The numerical optimization is run using the free OPTI feedforward and feedback control. The former is used for
toolbox [7]. high performance while the latter is used for robustness.
Finally, the computed reference torque τmref (t) is sent to
E. Dynamic friction compensation: an attempt
the real plant, and more precisely to the low level torque
In our early tests we had some difficulties controlling the controller situated inside the servo-drive of each motor. Next,
linear z0b -axis, which were assumed to be due to friction. each block of Fig. 6 will be analyzed in further detail.
Our first reaction was that static friction models used in (1),
namely Coulomb and viscous friction, were not sufficient, A. Vision system
so we looked into the literature for dynamic friction models. In a 3D environment, the vision system computes positions
Among them, the Bliman-Sorine model [8] has the same of objects using stereo vision, intersecting epipolar lines. In
linearity in the parameters property which is valuable in our case all objects are round, of identical color (yellow) and
robotics for facilitating experimental model identification. size, situated quite far away from the two cameras. What the
This was quite interesting for us, since it would have cameras see, on their 2D digital camera images are clouds
of neighbor yellow points. We apply a monochrome mask B. Change of coordinate frames
where black region corresponds to an identified object while For one object sitting on robot’s table, the vision system
white region represents anything else. It is interesting to yields the position vector Pc = (xc , yc , zc , 1) expressed in the
note that by using these monochrome masks from the two camera coordinate frame. In this section we are interested in
cameras, it is not always possible to identify the (xc , yc , zc ) converting Pc into P0 = (x0 , y0 , z0 , 1) expressed with respect
positions of objects, without extra assumptions or knowledge to robot inertial frame. The relation between the two is
about the environment. One of these scenarios is presented
in Fig. 7 and analyzed next. P0 = Hc0 Pc (3)
Fig. 7 presents two situations where the environment This information together with the inverse kinematics solu-
is quite different, although cameras see the same thing: tion is used for trajectory planning (see later on).
by re-positioning the yellow objects to new locations, the A few reasons motivate us in seeking for an automatic
digital image of camera1 remains unchanged from Fig. 7a to procedure for the experimental identification of the transfor-
Fig. 7b; the same holds for camera2. In other words, just by mation matrix Hc0 :
using information from the monochrome masks one cannot
• the robot architecture was intended to be modular. In the
distinguish what is the reality. Extra a priori knowledge
future, we might have to test new vision systems that
on the environment is needed, in order to tell which of
are delivered to us as black box, without any a priori
the two situations occur. Consequently the recognition and
information on their calibration parameters;
localization algorithm will be able to match correctly, e.g. if
• in the future, the robot might need to be moved to another
the left object from image camera1 corresponds to the left
lab.
object from image camera2, or to the right object.
In our case, the extra information is that all yellow objects Therefore, we have installed the yellow led illustrated in
lie on a table, so the zc -axis coordinate is known in advance. Fig 8 and request the robot to execute random movements.
The recorded positions (P0 , Pc ) help us identify Hc0 by using
(3). Only 4 measurements are enough to form a system of
𝑦c
linear equations, since only 12 elements of matrix Hc0 are
𝑥c unknown, while the rest are known [2, §2.7], [10, §2.7]. How-
ever in practice, due to noise and uncertainty, the identified
values lack accuracy as depicted in Fig. 9: we have used 10
randomly measured points, then formed 210 combinations
of linear system equations, each solution being depicted by
a green circle. The red circle illustrates the average value
and in blue we have depicted the standard deviation. The

𝑜𝑐1 𝑜𝑐2

(a) situation1 for placing objects

𝑦c

𝑥c

Fig. 8: Led.
𝑜𝑐1 𝑜𝑐2
conclusion is that randomly positioning the robot was not a
(b) situation2 for placing objects good idea. Probably, better ideas include pre-defining points
in the workspace of the robot, such that when stacking them
Fig. 7: Stereo vision: Example where the algorithm of inter-
together to form 3 by 3 matrices, their determinant is as big
secting epipolar lines will fail to distinguish two different
as possible, or alternatively the condition number is as small
situations and consequently calculate positions of yellow
as possible.
objects. Here we used pinhole lens model: the origins oc1 and
oc2 of the camera coordinates are at the center of projection C. Trajectory planning
[2, §11].
Once the positions of the identified objects that need to
be picked are transformed from the camera frame into robot
5 and provide efficient means to control a wide range of
4 applications.
3 Experimental results show that simple PID control with
2
anti-windup and static friction compensation works quite
1
well for this robot. For tuning purpose, one can recall the
0
analogy with mechanical systems: the P term acts as a virtual
spring, while the D term acts as a damper between desired
−1
and current position.
−2
A straightforward trial-and-error tuning procedure is pre-
−3
sented hereafter. Use a step reference. Start first by adjusting
−4
h(1,1) h(1,2) h(1,3) h(1,4) h(2,1) h(2,2) h(2,3) h(2,4) h(3,1) h(3,2) h(3,3) h(3,4) the P gain, while keeping the I and D gains to zero. Gradually
increase its value until a satisfactory P gain candidate is
Fig. 9: Experimental identification of elements h(i, j) of the found. Now observe the high frequency oscillations around
transformation matrix Hc0 ; i and j correspond to rows and the desired reference. Gradually increase the D gain in order
columns, respectively. In green: identified values; in red: to mitigate these oscillations: the D action is mostly visible
average value; in blue: standard deviation. at high speeds, while negligible at low speeds. A PD control
with high gains is preferable for:
• achieving fast performance
inertial frame, the solution of the inverse kinematics problem • avoiding systematic overshoot: this situation is particularly
can be used to generate time-dependent reference trajectories dangerous at the boundaries of robot’s workspace where
the robot might hit hardware protection systems.
qref (t) = zref ref ref ref

0b (t), α (t), β (t), γ (t)
See results in Fig. 11.
Actually, multiple grabbing positions are possible for some
objects situated on the table.
Smooth point to point trajectories are generated over a 1

finite time horizon: they start from the current position of 0.5
Normalized

βref
position

robot arm and end into the basket. Here, two approaches have 0 β
been studied: using quintic polynomials [3, §IV] and proxi-
−0.5
mate time-optimal servo [11]. The latter has the theoretical
advantage of using the analytic solution of an optimization −1
0 5 10 15 20
problem.
1
In order to validate results in simulation, a virtual environ- τref
m,β
ment has been developed (see Fig. 10). It allows visualization 0.5
Normalized

of robot movement before actually implementing it on the


torque

0
experimental platform.
−0.5
Robot represented in inertial frame
(Denavit−Hartenberg convention) −1
0 5 10 15 20
Time [s]

0.6
Fig. 11: Experimental results using PD control for β -axis.
0.5 z0−axis Normalized value of 1 corresponds to maximum allowed:
0.4 x0−axis
(i) position in the upper figure; (ii) torque in the lower figure.
y0−axis

y0−axis
0.3
prismatic joint
0.2 revolute joint
rigid link Next, the control designer should decide whether to use
0.1 gripper
the I action. It is useful for reducing static error, however at
0
−0.2
the cost of systematic overshoot due to its memory effect.
0
0
0.2
−0.2 To tune it, the I gain is gradually increased making sure
−0.4
0.4 the overshoot is within satisfactory performance. The anti-
x0−axis
z0−axis windup is a must as soon as motors are pushed towards their
maximum capacity, in order to avoid integrator windup (see
Fig. 10: Virtual environment used to test trajectory planning.
[12, §3.5]).
(x0 , y0 , z0 ) represents robot’s inertial frame.
To overcome Coulomb friction effects, notably at higher
speeds, we appended in series the block depicted in Fig. 12.
D. Feedback control Especially, it was necessary for controlling the z0b -axis.
Non-model-based control techniques are often the result It was interesting for us to note that aforementioned PID
of human operator intuition. They are easy to understand control performed quite well. The main reasons were that:
0.15

0.1
model used for feedback control and the real plant, there will
Normalized output [−]
0.05
be a minor offset in the tracking error. To correct it, use the
0 simple feedback parallel action, namely the PID independent
−0.05 axis control presented in section III-D.
−0.1
An alternative to this combined feedback and feedforward
−0.1 −0.08 −0.06 −0.04 −0.02 0 0.02
Normalized input [−]
0.04 0.06 0.08 0.1 control approach is the robust optimal nonlinear control [3].
To understand it, mechanical concepts like (1) are no longer
Fig. 12: Coulomb friction compensation, smoothed around enough, making people that are not familiar enough with
the origin. Normalized value of 1 corresponds to maximum Lyapunov theory uneasy. A reaction and criticism we got
motor torque. from industry was that it is too mathematically involved, to
the level of loosing physical insight. For this reason, this
direction has not been pursued.
• some axes motions were sufficiently decoupled: e.g., the
up-down α-motion has negligible effect on the left-right IV. CONCLUSIONS
β -motion as well as on the z0b linear translation; In this paper we presented the succession of steps that
• on the other axes where coupling effect was non- we followed in order to make available a robotic research
negligible, the existing powerful motors tuned with high platform. Methodology to design, build, control and commis-
gains, ensured efficient attenuation of the coupling ef- sion prototype robots is valuable for companies interested in
fect: e.g., z0b linear translation will consequently generate producing them: we presented the selected tools (including
movement on β ; software) and focused on lessons learned. Consequently, we
• robot is quite sturdy, built with rigid links. believe the value of this paper is that it might be used as a
A few reasons might motivate the usage of advanced guideline for companies, as well as academia interested in
control, where PID are known to perform poorly: developing their own prototypes faster.
• when robot is mechanically built using lighter materials, R EFERENCES
links become flexible and can therefore vibrate; [1] J. Stoev, S. Gillijns, A. Bartic, and W. Symens, “Badminton playing
• when total price of the robot is downsized by a factor robot - a multidisciplinary test case in mechatronics,” in 5th IFAC
5: by downsizing motors and/or replacing current expen- Symposium on Mechatronic Systems, September 2010, pp. 725–731.
[2] M. W. Spong, S. Hutchinson, and M. Vidyasagar, Robot Modeling and
sive mechanical sub-assemblies with low-cost ones, new Control. Hoboken, NJ: John Wiley & Sons, 2005.
control challenges appear: e.g. gearboxes with significant [3] C. S. Teodorescu and S. Vandenplas, “A robust optimal nonlinear
backlash. In general, it is still an open question nowadays control for uncertain systems: Application to a robot manipulator,”
in IEEE Multi-Conference on Systems and Control, Sydney, Australia,
how to design robots that exhibit high performance while September 2015.
still being cheap. [4] J.-C. Samin and P. Fisette, Symbolic Modeling of Multibody Systems,
With these ideas in mind, we address next, the topic of ser. Solid Mechanics and Its Applications. Springer Science &
Business Media, 2003, vol. 112.
advanced feedforward control. [5] J. Swevers, C. Ganseman, D. B. Tükel, J. De Schutter, and
H. Van Brussel, “Optimal robot excitation and identification,” IEEE
E. Feedforward control Transactions on Robotics and Automation, vol. 13, no. 5, pp. 730–740,
Model-based control techniques offer a certain number of October 1997.
[6] J. Swevers, W. Verdonck, and J. De Schutter, “Dynamic model
advantages including: identification for industrial robots,” IEEE Control Systems, vol. 27,
• accounting for coupling effects between axes; no. 5, pp. 58–71, October 2007.
[7] J. Currie and D. I. Wilson, “OPTI: Lowering the barrier between open
• achieve higher precision. source optimizers and the industrial MATLAB user,” in Foundations of
In particular, the flatness-based approach [13, §6.2.2] con- Computer-Aided Process Operations, N. Sahinidis and J. Pinto, Eds.,
Savannah, Georgia, USA, January 2012.
sists of inverting the nominal plant model (2): given a priori [8] P.-A. Bliman and M. Sorine, “Easy-to-use realistic dry friction models
desired trajectories qref (t) together with their higher order for automatic control,” in Proc. 3rd European Control Conf., Roma,
derivatives q̇ref (t) and q̈ref (t), the reference control torques Italy, September 1995.
[9] H. Olsson, K. J. Astrom, C. C. de Wit, M. Gafvert, and P. Lischinsky,
are calculated accordingly: “Friction models and friction compensation,” Eur. J. Control, vol. 4,
no. 3, pp. 176–195, 1998.
τmref (t) = R−1Y (qref (t), q̇ref (t), q̈ref (t))θ (4) [10] L. Sciavicco and B. Siciliano, Modelling and control of robot manip-
ulators, 2nd ed. London: Springer-Verlag, 2000.
where matrix R is always invertible (see section II-B). [11] R. L. Kosut, G. F. Franklin, and M. L. Workman, “Adaptive proximate
A feature that makes this control particularly interesting is time-optimal servomechanisms: Continuous time case,” in Proc. IEEE
the simplified tuning procedure. Actually, tuning parameters American Control Conf., June 1987, pp. 589–594.
[12] K. J. Åström and T. Hägglund, Advanced PID Control. Research
are physical quantities: e.g. if we know beforehand that the Triangle Park, NC: ISA - Instrumentation, Systems, and Automation
gripper is going to handle an object of 1 kg, then we need Society, 2006.
to update accordingly one parameter, corresponding to this [13] J. Lévine, Analysis and Control of Nonlinear Systems: A Flatness-
based Approach, ser. Mathematical Engineering. Berlin, Germany:
mass. Springer, 2009.
This feedforward control block is not intended to work
alone. Due to slight mismatch between the nominal plant

View publication stats

Das könnte Ihnen auch gefallen