Robotics and Autonomous Systems 57 (2009) 1006–1011
Contents lists available at ScienceDirect
Robotics and Autonomous Systems journal homepage: www.elsevier.com/locate/robot
Energy based control of a hydromechanical system Bernhard Ramsebner a,∗ , Karl Rieger a,b a
Johannes Kepler University of Linz, Institute of Automatic Control and Control Systems Technology, Altenberger Street 69, 4040 Linz, Austria
b
Austrian Center of Competence in Mechatronics, Altenberger Street 69, 4040 Linz, Austria
article
info
Article history: Available online 26 July 2009 Keywords: Energy based control Passivity based control Nonlinear control Hydraulic system Under-actuated system
abstract This contribution deals with an energy based controller design for an under-actuated mechanical system with a hydraulic piston actuator. In particular, the example consists of a single acting piston actuator and a rigid mass between two springs. For the resulting system a static feedback control is designed based on energy consideration. Since the control algorithm requires the velocities, which are not measurable in this application, it is extended by a reduced observer. In addition, the stability of the desired equilibrium of the closed loop system is proven and the results are illustrated by simulation. © 2009 Elsevier B.V. All rights reserved.
1. Introduction
2. Mathematical model
This work is focused on the energy based control of an underactuated hydromechanical system as depicted in Fig. 1; for the nomenclature see Table 1. It consists of a single acting piston which is connected to a so-called load system, represented by a mass m2 and a spring. This mass is again connected by a spring to a wall. Especially the control objective is to stabilize the mass m2 at a predefined position x2 . As a result a system is obtained which is described by four linear and one nonlinear differential equations. Hence, after a suitable nonlinear input transformation a linear system is achieved, which leads to a simplified controller design. For the final control algorithm a combination of input transformation and the method of IDA-PBC (interconnection and damping assignment — passivity based control), see, e.g., [1,2], is applied to derive a static feedback law. In the discussed application the velocities are not measurable; therefore a Luenberger velocity observer, see, e.g., [3,4], is applied. The stability of the closed loop system is shown by a stability criterion for cascaded systems. The contribution is organized as follows. In Section 2 the mathematical model for the hydromechanical system is derived, which is reformulated as a Port-Hamilton system in Section 3. The energy based controller design is discussed in Section 4 and in Section 5 an observer is presented for the estimation of the velocities. Section 6 shows the proof of stability of the closed loop system. Finally, in Section 7 some simulation results are shown.
Let us consider the mechanical system as shown in Fig. 1. The mass density %oil of oil depends on the pressure p and on the temperature ϑ . In the literature, see, e.g., [5], the so-called isothermal bulk modulus Eoil of oil can be found, which reads as 1
=−
Eoil
1
V
∂ V ∂ p ϑ=const.
(1)
with the total volume V and the pressure p. Further, equation (1) can be rewritten in the form 1
=
Eoil
1
%oil
∂%oil . ∂ p ϑ=const.
(2)
It is assumed that the mass density %oil is only a function of the pressure. Then the conservation of mass for the chamber of the actuator is described by the differential equation d dt
(%oil (p (t )) (V0 + Ax1 (t ))) = %oil (p (t )) Q (t ) ,
(3)
where the internal and external leakages are neglected. By means of (3) we yield the relation
∂%oil d p (t ) (V0 + Ax1 (t )) + %oil (p (t )) Av1 (t ) = %oil (p (t )) Q (t ) ∂ p dt and using (2) it follows that
∗
Corresponding author. Tel.: +43 0 732 2468 9736; fax: +43 0732 2468 9734. E-mail addresses:
[email protected] (B. Ramsebner),
[email protected] (K. Rieger). URL: http://www.regpro.jku.at/ (B. Ramsebner). 0921-8890/$ – see front matter © 2009 Elsevier B.V. All rights reserved. doi:10.1016/j.robot.2009.07.015
p˙ =
Eoil V0 + Ax1
(Q − Av1 )
d with the velocity v1 (t ) = dt x1 (t ) of the piston. Here, the servo valve is an ideal critical center valve that is rigidly connected to a
B. Ramsebner, K. Rieger / Robotics and Autonomous Systems 57 (2009) 1006–1011
1007
Fig. 1. Mechanical System, for nomenclature see Table 1.
constant pressure pump. The flow through the valve is described by
√
Kv,1 xv √pS − p Kv,2 xv p − pT
Q =
xv > 0 xv ≤ 0
(4)
with the supply and the tank pressures pS and pT , respectively, the valve displacement xv and the coefficients Kv,i ∈ R, i = 1, 2. Since the valve displacement xv can be expressed as a function of the flow Q by considering (4) and the servo-valve dynamics is assumed to be neglectable, the flow Q can be directly used as the control input of the plant. The effective force of the single acting hydraulic piston actuator is given by Fh = Ap − Ar pr , is constant. By choosing x = x1 v1 state the equations of motion read as
x2
v2
In the next step the mathematical models (6) and (8) are rewritten in the form
c1
x1 − x1,off − x2 − x2,off
m2
Eoil V0 + Ax1
J ij (x) − Rij (x) ∂j H (x) +
m X
τ =1
j =1
Giτ (x) uτ ,
(9)
d i x dt
− d1 v1
Hamiltonian H is an element of the set of the smooth functions C ∞ (X) defined on X. The map J is skew symmetric and R is symmetric and positive semidefinite. The notation J ij , Rij and
1
n X
x˙ i =
with i, j = 1, . . . , n, τ = 1, . . . , m,
x1 − x1,off − x2 − x2,off
(6)
− c2 x2 − x2,off − d2 v2 p˙ =
3. Port-Hamilton (PH) description
p as the system
x˙ 2 = v2
v˙ 2 =
Volume of the chamber for x1 = 0 Piston position Position of the mass m2 Maximal lift of the actuator Flow from the valve to the chamber Spring constants
V0 x1 x2 h Q c1 , c2
= x˙ i , the abbreviation ∂i = ∂∂xi , the system state x ∈ X and the system input u ∈ U. The
Ap − Ar pr − c1
m1
Effective piston area Rod side area Chamber pressure Pressure rodside, const. Rigid connected piston masses Rigid mass
T
x˙ 1 = v1
v˙ 1 =
A Ar p pr m1 m2
(5)
where it is assumed that the pressure pr in the chamber rod side
1
Table 1 Nomenclature for Fig. 1.
(Q − Av1 )
d
with the viscous friction coefficients d1 and d2 of the masses and the offset-lengths x1,off and x2,off defining the preload of the springs. Applying the following nonlinear input transformation
Giτ is a matrix representation of the maps J, R and G, respectively, and the elements Rij , J ij and Giτ are elements of C ∞ (X). For an autonomous system in PH description with a positive definite Hamiltonian its stability in the sense of Lyapunov follows naturally, because the time derivative of H is then given by
dt
H (x (t )) =
n X
∂i H (x (t )) x˙ i
i =1
=
n X n X
−∂i H (x (t )) Rij ∂j H (x (t )) ,
(10)
i =1 j =1
Q =
V0 + Ax1 Eoil
u + Av1
(7)
and the state transformation z1 = x1 − x1,off , z2 = x2 − x2,off , p∗ = p − AAr pr to system (6) leads to a linear system given by z˙1 = v1
v˙ 1 =
1 m1
Ap∗ − c1 (z1 − z2 ) − d1 v1
H (x) =
z˙2 = v2
v˙ 2 =
1 m2
which is negative semidefinite. In order to represent system (6) as PH-system (9), the choice for the Hamiltonian is identified by the total energy, which is the sum of the kinetic and potential energy of the mechanical part and the internal energy of the hydraulic fluid. Concretely, we choose the Hamiltonian 1 2
m1 (v1 )2 +
(8)
×
p˙ ∗ = u
∗ T
with the state z = z1 v1 z2 v2 p and the new control input u. In the next section a Port-Hamiltonian formulation of the systems (6) and (8) is provided, which represent the basis for the controller design via the IDA-PBC-method in Section 4.
Eoil
2
m2 (v2 )2 +
2
1 2
Eoil
0
x2 − x2,off
1
A
with the minimum at the point x = x1,off
c1
2 + c2 x2 − x2,off + (V0 + Ax1 ) 2 ! ! ! p − AAr pr Ar exp − 1 − p − pr ,
− x1 − x1,off
(c1 (z1 − z2 ) − c2 z2 − d2 v2 )
1
x2,off
0
Ar A
T pr
,
1008
B. Ramsebner, K. Rieger / Robotics and Autonomous Systems 57 (2009) 1006–1011
i.e., where the mechanical system and the actuator is forceless. Then, the maps J, R and G follow as
1
0
1 − m1 ij J = 0 0
0
0
0
0
0
0
−
0
−
0
0
Eoil A
m1 (V0 + Ax1 ) 0 , 0
0 0
0
0
0
0
0
0
0
0
0
0
0 d2
0
0
(m1 )
0
1 m2
Eoil A
1
0 2
0
m2
0
m1 (V0 + Ax1 )
0 d1
0 ij R = 0 0
0
m1
i
0
m X
0
T
Eoil V0 + Ax1
1
0
0 ij 0 R = 0 0
0
0
0
0
1
0 d1
0
0
0
0
0
0 d2
−
1 2m1
0
2m1 0 , 0
0
−
(m2 )
0 0 1
2m1 0
0 0
and Giτ = 0
0
0
0
T
1
.
In the next section a controller is derived by energy considerations for the linear system (8) and its PH formulation. 4. Controller design Before the actual controller design a transformation to the displacement-coordinates x = z − z˘ z1 − z˘1 x1 v 1 v1 x z − z˘ 2 = 2 2 v 2 v2 p∗ p∗ − p˘∗
Giτ (x) uτ =
(11)
n X
ij
ij
Jdes (x) − Rdes (x) ∂j Hdes (x)
j =1
(12) ij
are fulfilled, with the unknown expressions Jdes (x), Rdes (x) and the Hamiltonian Hdes (x). It is worth mentioning that in Eq. (11) no affine terms appear. The solvability of (12) depends inherently on a suitable selection of Jdes , Rdes , Hdes . Here, the desired Hamiltonian is chosen to Hdes (x) =
1
0
2
0
0
m2
0
0
(m1 )2
ij ij Jdes (x) − Rdes (x) ∂j Hdes (x) ,
ij
1
m2
0
n X
.
0
0
2m1
τ =1
Giτ (x) uτ ,
− J ij (x) − Rij (x) ∂j H (x)
0
1
−
0
−
0
0
0
m1
1 − m1 ij J = 0 0
m X
or, equivalently,
Whereas for the mathematical model (8) we choose the Hamiltonian 1 1 1 H (z ) = m1 (v1 )2 + m2 (v2 )2 + c1 (z2 − z1 )2 2 2 2 2 1 1 + c2 (z2 )2 + A p∗ , 2 2 and the maps J, R, and G of the form
0
0
0
J ij (x) − Rij (x) ∂j H (x) +
j =1
τ =1
0
n X j =1
=
(m2 )2
Gτ = 0
i
x˙ =
0
and
is performed, whereby z˘ denotes the desired equilibrium for the system (8). In particular, the method of IDA-PBC is applied which has the main objective that the closed loop system is given again in PH formulation. For a detailed description of this method the interested reader is referred to, e.g., [1,2]. The feedback control law is derived by comparing the original system with a desired system such that the following so-called matching conditions are obtained
1
1 1 2 m2 (v 2 )2 + c1 (x2 − x1 ) 2 2 2 1 1 + c2 (x2 )2 + A p∗ , 2 2 2
m1 (v 1 )2 +
which is positive definite and has its minimum at the desired equilibrium x = 0 resp. z = z˘ . Further the maps Jdes and Rdes are given by
1
0
0
0
0
0
0
0
m1
1 − h i m1 ij Jdes = 0 0 k1
0
−
0 k2 −
1 2m1
1 m2
k3
−k1
− k2 2m1 −k3 −k4 1
1 m2 0 k4
0
and
0 0 h i 0 ij Rdes = 0 −k1
0 d1
0 0
0
0
0
0
0
0 d2
(m1 )2
−
1 2m1
− k2
−k3
−k1
0
(m2 )2 −k4
−
1
− k2 −k4
2m1 −k3
k5
with the constants ki ∈ R, i = 1, . . . , 5, which have to be determined such that Rdes is positive semidefinite. Finally, the control law has the form u = 2k1 (c1 x1 − c1 x2 ) + 2k2 m1 v 1
+ 2k3 ((c1 + c2 ) x2 − c1 x1 ) − k5 Ap∗ + 2k4 m2 v 2 ,
B. Ramsebner, K. Rieger / Robotics and Autonomous Systems 57 (2009) 1006–1011
(a) Position x1 .
1009
(b) Position x2 .
(d) Estimation error of velocity v1 .
(c) Input: Q.
Fig. 2. Simulation results: vi,0 = 0.
with the control parameters ki , which corresponds to a general linear feedback control law. It is worth noting that in contrast to the original configuration, see Section 3, now there are couplings between the dynamics of x1 and p, x2 and p, v2 and p, respectively.
In the next step a velocity observer will be introduced which is represented by a Luenberger observer, because it is assumed that in this application the velocities are not available by measurement. A detailed explanation of the observer design can be found in, e.g., [3,4]. Henceforth, it is assumed that the positions x1 and x2 as well as the hydraulic pressure p are available by measurement. Extracting the equations for the velocities v1 and v2 from (6), we have
v˙ 2 =
1 m1 1 m2
Ap − Ar pr − c1 c1
x1 − x1,off − x2 − x2,off
x1 − x1,off − x2 − x2,off
− d1 v1
λ1 −
d1 m1
d1 w1 − λ1 − λ1 x1 m1
Ap − Ar pr + x2 − x2,off − x1 − x1,off + m m1 1 d2 d2 w ˙ 2 = λ2 − w2 − λ2 − λ2 x2
i = 1, 2
m2
+
c1 m2
x1 − x1,off −
m2 c1 + c2 m2
x2 − x2,off
(15)
is obtained. Now a trivial observer with the state w ˆ can be designed with the estimation error e˜ O = w − w ˆ and the error system
d1 λ1 − m1 e˙˜ O = 0
0
d2 e˜ O = AO e˜ O ,
λ2 −
(16)
m2
which is asymptotically stable in the sense of Lyapunov for a suitable choice of the constants λi . Finally the estimated velocities can be calculated by the equations
On the basis of (13) a state transformation
λi ∈ R,
(13)
− c2 x2 − x2,off − d2 v2 .
wi = vi + λi xi
w ˙1 =
c1
5. Observer
v˙ 1 =
is performed, where the corresponding dynamics depends on the constants λi . In that way the system
vˆ 1 = w ˆ 1 − λ1 x1 (14)
vˆ 2 = w ˆ 2 − λ2 x2 .
(17)
1010
B. Ramsebner, K. Rieger / Robotics and Autonomous Systems 57 (2009) 1006–1011
(a) Position x1 .
(b) Position x2 .
(d) Estimation error of velocity v1 .
(c) Input: Q.
Fig. 3. Simulation results: vi,0 6= 0.
1 v˙˜ 2 =
6. Stability In this section a proof of stability for the closed loop system is presented. The closed loop system can be written as x˙ = f x1 , v1 , x2 , v2 , p, w ˆ 1, w ˆ2
(18)
˙ˆ = AO w w ˆ + bO (x1 , x2 , p) , by means of a suitable coordinate transformation x, w ˆ
x˜ , e˜ O
T
T
7→
x˜ x x 1 1 1 v˜ 1 v1 v1 x˜ 2 x2 x2 v˜ 2 = v2 = v2 , p˜ p p e˜ O ,1 w1 − w ˆ1 v1 − vˆ 1 e˜ O ,2 w2 − w ˆ2 v2 − vˆ 2
m1
x˙˜ 2 = v˜ 1
Ap˜ − Ar pr − c1
m2 − c2 x˜ 2 − x2,off − d2 v˜ 2
+ 2k2 m1 v˜ 1 − k5 A p˜ − p˘ + 2k4 m2 v˜ 2 + 2k3 (c1 + c2 ) x˜ 2 − x˘ 2 − c1 x˜ 1 − x˘ 1
p˙˜ = 2k1 c1 x˜ 1 − x˘ 1 − c1 x˜ 2 − x˘ 2
−
Eoil A V0 + Ax˜ 1
e˜ O ,1 − 2k2 m1 e˜ O ,1 − 2k4 m2 e˜ O ,2
e˙˜ O = AO e˜ O is obtained, where the System x˙˜ = f˜ x˜ 1 , v˜ 1 , x˜ 2 , v˜ 2 , p˜ , e˜ O ,1 , e˜ O ,2 is driven by e˜ O = AO e˜ O . For the proof the stability of the system (18) no separation theorem exists due the nonlinearities. Thus, a related criterion for interconnected system is applied, see, e.g., [6, p.17, Corollary 10.3.2.]. The autonomous system x˙˜ = f˜ x˜ 1 , v˜ 1 , x˜ 2 ,
v˜ 2 , p˜ , 0, 0 (without estimation error) as well as the error system (16) are both asymptotically stable and the required Lipschitz conditions are fulfilled. Thus, the equilibrium of the cascaded system is also asymptotically stable. 7. Simulation results
a cascaded system
v˙˜ 1 =
x˜ 1 − x1,off − x˜ 2 − x2,off
, given by
x˙˜ 1 = v˜ 1 1
c1
x˜ 1 − x1,off − x˜ 2 − x2,off
− d1 v˜ 1
In the following the simulation results of the controlled system with and without the observer (16) are shown. For close-to-reality simulations the system states are assigned with an appropriate amount of measurement noise (∼ ±0.5 mm for the position signals, ∼ ±200 Pa for the pressure signal). In the Fig. 2(a), (b),
B. Ramsebner, K. Rieger / Robotics and Autonomous Systems 57 (2009) 1006–1011
(c) the solid line, labeled ‘‘exact’’, represents the results for the controlled system with fully measured states and without noise. Whereas the dash-dotted line, labeled ‘‘measured’’ represents the results with noisy velocity measurements. Further, the dashed line, labeled ‘‘observer’’, represents the simulation results with the additional usage of the velocity observer under identical conditions. Thereby, the simulation parameters are chosen with respect to the physical limits (p > 0, x1 ≥ 0). In the first simulation the initial conditions of the plant are set to x1,0 = 0.2 m, v1,0 = 0 m/s, x2,0 = −0.1 m, v2,0 = 0 m/s, p0 = 50E5 Pa and the system parameters are A = 0.12 π4 m2 ,
Ar = A2 , c1 = 1.5 kN/m, c2 = 1 kN/m, d1 = 8 Ns/m, d2 = 3 Ns/m, x1,off = −1.333m, x2,off = −0.8m, pr = 100E5 Pa, Eoil = 1.6E9 N/m2 , m1 = 35 kg, m2 = 10 kg and V0 = 314E–6 m3 . For the observer λ1 = λ2 = −70 and the initial conditions w ˆ i,0 = λi xi,0 , i = 1, 2 are chosen. With respect to the controller we choose k1 = 1.9449E3, k2 = −1.1386E4, k3 = −8.1431E3, k4 = 5.5511E4, k5 = 4.3890E3, where x˘ 2 = 0.5 m is the desired mass (m2 ) position. As a consequence the equilibrium follows to x˘ 1 = 0.8333 m, x˘ 2 = 0.5 m, p˘ = 51.655E5 Pa. As shown in Fig. 2(d), the estimated velocities are different to the real ones due to the presence of noise which verifies the different behaviors of the simulations. Nevertheless, the equilibrium is reached and the closed loop behavior is stable. In the second simulation only different initial conditions are used, namely x1,0 = 0.2 m, v1,0 = −5E–3 m/s, x2,0 = −0.1 m, v2,0 = 0.3 m/s, p0 = 50E5 Pa. As one can see in Fig. 3(d) the initial velocities are not equal to zero and, thus, there are estimation errors at the beginning. The simulation results shown in the Fig. 3(a), (b), (c) outline the stability of the closed loop system. 8. Conclusion In this contribution an approach for a closed loop control of an under-actuated hydromechanical system was proposed. The main parts of the work were represented by the linearisation of the pressure equation, the design of an energy based control law and the development of a reduced velocity observer. The stability of the closed loop system was proven and in addition, the results were illustrated by simulation.
1011
Acknowledgments We gratefully acknowledge the financial support from the Austrian Center of Competence in Mechatronics. References [1] R. Ortega, A.J. van der Schaft, B. Maschke, G. Escobar, Interconnection and damping assignment passivity-based control of port-controlled Hamiltonian systems, Automatica 38 (2002) 585–596. [2] R. Ortega, M. Spong, F. Gómez-Estern, G. Blankenstein, Stabilization of a class of underactuated mechanical systems via interconnection and damping assignment, Institute of Electrical and Electronics Engineers Transactions on Automatic Control 47 (2002) 1218–1233. [3] G. Grabmair, Port Hamiltonian description and control of hydraulic mechanical systems, Ph.D. Thesis, Johannes Kepler University of Linz, 2006. [4] K. Schlacher, K. Zehetleitner, Control of hydraulik devices, an internal model approach, in: A. Astolfi, L. Marconi (Eds.), Analysis and Design of Nonlinear Control Systems, Springer Verlag, London, 2008, pp. 207–221. [5] H. Murrenhoff, Grundlagen der Fluidtechnik, Shaker Verlag, Aachen, 2005. [6] A. Isidori, Nonlinear Control Systems II, Springer Verlag, London, 1999.
Bernhard Ramsebner has been a member of the scientific and teaching staff of the Institute of Automatic Control and Control Systems Technology at the Johannes Kepler University Linz, Austria, since 2008. He received his Dipl.Ing. degree with distinction in 2008 and currently he is working on his Ph.D. thesis on the area of nonlinear control theory.
Karl Rieger, M.Sc. has been a member of the scientific and teaching staff of the Institute of Automatic Control and Control Systems Technology at the Johannes Kepler University Linz, Austria, since 2006. He visited a postgraduate program at the Loughborough University and received his M.Sc. degree in 2004, his Dipl.-Ing. degree at the Johannes Kepler University in Linz in 2005 and his Ph.D. in 2008, all with distinction. His research areas are modelling, analysis and the control of distributed parameter systems in particular the analysis of the accessibility, observability and stability.