Next Article in Journal
Energy Harvesting Based on a Novel Piezoelectric 0.7PbZn0.3Ti0.7O3-0.3Na2TiO3 Nanogenerator
Next Article in Special Issue
Active Vibration Control of Swash Plate-Type Axial Piston Machines with Two-Weight Notch Least Mean Square/Filtered-x Least Mean Square (LMS/FxLMS) Filters
Previous Article in Journal
Watching the Smoke Rise Up: Thermal Efficiency, Pollutant Emissions and Global Warming Impact of Three Biomass Cookstoves in Ghana
Previous Article in Special Issue
Performance of an Energy Efficient Low Power Stepper Converter
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Global Energy-Optimal Redundancy Resolution of Hydraulic Manipulators: Experimental Results for a Forestry Manipulator

Laboratory of Automation and Hydraulic Engineering, Tampere University of Technology, P.O. Box 589 (Korkeakoulunkatu 6), FIN-33101 Tampere, Finland
*
Author to whom correspondence should be addressed.
Energies 2017, 10(5), 647; https://doi.org/10.3390/en10050647
Submission received: 15 March 2017 / Revised: 13 April 2017 / Accepted: 3 May 2017 / Published: 6 May 2017
(This article belongs to the Special Issue Energy Efficiency and Controllability of Fluid Power Systems)

Abstract

:
This paper addresses the energy-inefficiency problem of four-degrees-of-freedom (4-DOF) hydraulic manipulators through redundancy resolution in robotic closed-loop controlled applications. Because conventional methods typically are local and have poor performance for resolving redundancy with respect to minimum hydraulic energy consumption, global energy-optimal redundancy resolution is proposed at the valve-controlled actuator and hydraulic power system interaction level. The energy consumption of the widely popular valve-controlled load-sensing (LS) and constant-pressure (CP) systems is effectively minimised through cost functions formulated in a discrete-time dynamic programming (DP) approach with minimum state representation. A prescribed end-effector path and important actuator constraints at the position, velocity and acceleration levels are also satisfied in the solution. Extensive field experiments performed on a forestry hydraulic manipulator demonstrate the performance of the proposed solution. Approximately 15–30% greater hydraulic energy consumption was observed with the conventional methods in the LS and CP systems. These results encourage energy-optimal redundancy resolution in future robotic applications of hydraulic manipulators.

1. Introduction

Hydraulic loaders are powerful, typically 4-degrees-of-freedom (4-DOF) manipulators, that are used for heavy-duty material handling on mobile machines, such as trucks and forest forwarders. Currently, hydraulic loaders are predominantly operated by humans, but loader manufacturers are interested in diversifying their offerings through robotic functionality to remain competitive. On the research side, and in the industry, subjects dealing with reducing reliance on the expertise of human operators in loader control have consequently received much attention. Several next-generation robotic semi-automated approaches, for example, have been proposed to help alleviate the operator’s workload by automating the repetitive work tasks that would normally be the operator’s responsibility [1,2]. On one hand, these semi-automated approaches discuss closed-loop control, and on the other hand, they involve redundancy resolution because hydraulic loaders are typically kinematically redundant. Although both problems are important, it is safe to estimate that redundancy resolution of hydraulic manipulators has received less and too little interest in academia in relation to the importance of redundancy resolution compared to closed-loop control problems. This is probably because so many different types of redundancy resolutions [3,4,5,6,7,8,9] have been proposed for general systems that the general understanding is that these redundancy resolutions can effectively reduce the energy consumption of hydraulic manipulators, for example, through the minimum velocity norm or weighted pseudo-inverse solutions [10]. One of the aims in this paper is to show that these general redundancy resolutions can be sub-optimal at the valve-controlled hydraulic system level.
Moreover, because there are many different redundancy resolution strategies for different objectives, choosing the most compelling objective for a hydraulic manipulator is not always straightforward. Looking at the handful of redundancy resolutions dealing with specific problems and objectives pertaining to hydraulic manipulators, however, it becomes evident that global energy-optimal redundancy resolutions are lacking. To explain the importance of global energy-optimal redundancy resolution, system energy inefficiency is a major problem in hydraulic manipulators [11]. Therefore, to address this problem, we resolve the redundancy in a highly desirable hydraulic energy-optimal manner and effectively treat the inherently limited joint motions of hydraulic manipulators by enforcing important actuator position, velocity and acceleration limits in our solution.

1.1. Literature Review

In the literature, Mettin et al. [12], Löfgren [13] and Ortiz Morales et al. [1] addressed the joint-limited minimum-time redundancy resolution of hydraulic manipulators, and Löfgren [13] has also studied redundancy resolution which maximises load capacity. Furthermore, Beiner and Mattila [10] have derived a pseudo-inverse method for redundancy resolution in the hydraulic manipulator’s actuator space to minimise the cylinder velocity norm or the weighted kinetic energy instantaneously. In addition, Flacco et al. [9] have proposed a joint-limited pseudo-inverse-based algorithm, which is also suitable for hydraulic applications, that saturates joint velocities in the null space. These different solutions, however, do not discuss hydraulic energy-optimality. In addition, generally minimising the energy consumption of actuators, as proposed by Vukobratovic and Kircanski [14] as a local solution and developed by Hirakawa and Kawamura [15] as an optimal control problem, can be a sub-optimal strategy for hydraulic manipulators. This is a direct consequence of the fact that the actuators’ energy consumption does not equate to the energy consumption of the typical valve-controlled load-sensing (LS) and constant-pressure (CP) hydraulic systems because the pressure losses encountered in these systems are not considered. It is important to derive energy-optimal redundancy resolutions for these commonly used systems. Whereas LS systems are predominantly used in hydraulic commercial manipulators in general, CP systems are used mostly in robotic closed-loop controlled applications and next-generation energy-efficient secondary-controlled applications because of the systems’ superior damping and simplicity compared with the LS systems [16,17,18].

1.2. Paper Contribution and Organization

In this paper, we minimise the energy consumption of the widely used LS and CP hydraulic systems through redundancy resolution to address the major problem of energy-inefficiency in hydraulic manipulators. This solution is in stark contrast to known conventional methods that are not energy-optimal at the valve-controlled actuator and hydraulic power system interaction level. To summarise, our redundancy resolution entails moving the manipulator hydraulic cylinders in an energy-optimal manner while the manipulator’s end-effector follows a prescribed path, and actuator limits at the position, velocity and acceleration levels are satisfied. To address both of these hydraulic systems optimally, we propose a tailored cost function of the energy consumption for each. For example, the simpler CP system is shown to require minimisation of the pump flow rate. This objective leads to our effective solution in which the cylinder’s effective areas scale the cylinder velocities in a discontinuous manner. Minimising the CP system energy cost, hence, intuitively amounts to minimising the cylinder volumes displaced in the solution. The cylinder areas among the manipulator’s hydraulic cylinders, including the different piston and rod-side areas of the asymmetric cylinders, render minimisation of the CP system’s energy consumption, in particular, a highly tractable objective.
With the objectives in place, the redundancy could obviously be resolved by formulating the optimal control problem so that the motions of all the joints are optimised subject to specific motion constraints. However, that approach would result in a high-dimensional problem, which would be unsuitable for a global dynamic programming (DP) solution and generally inconvenient. To reduce the problem dimensionality and computational complexity, in this study, only the motion of the redundant extension cylinder is directly optimised. The optimal non-redundant joint motions are, instead, resolved by employing non-singular inverse kinematics, motivated by the formulation used by Choi [19] and Flacco et al. [20]. Moreover, in the present study, hydraulic system properties are incorporated in the cost functions proposed in steady-state equations. This approach results in our desirable minimum-state problem, which requires only two states and one control and which uses the computational resources available much more sparingly than the approach of simultaneously optimising all of the joint motions. However, because of the modelling simplifications in our problem formulation, a natural concern that could arise is whether significant hydraulic aspects of the problem are neglected. Thus, extensive experiments, which compare the energy consumptions of the redundancy resolutions proposed in this study against other global and instantaneous strategies in the LS and CP systems is presented.
This energy-optimal solution is primarily suitable as an offline approach, much like the minimum-time solutions that were proposed by Ortiz Morales et al. [1] and Mettin et al. [12], and it is practical as such. Extensive measurements by Ortiz Morales et al. [1], Mettin et al. [12] and Westerberg [2] have shown that the typical workspace activity for 4-DOF manipulator is concentrated on specific areas, which consequently means that there are in practice a limited number of significant point-to-point movements to optimise with respect to energy consumption. However, at the implementation stage, it might be feasible to pre-compute the energy-optimal trajectories over a few time horizons for all of these significant point-to-point movements so that it would be possible to choose between slower and faster energy-optimal trajectories in real-time. Furthermore, with our proposed methodology, one significant implication is that only the redundant joint’s trajectories are necessary for real-time applications. If having more storage space were considered more important than having more computational power reserve, then the non-redundant motion trajectories could be resolved online from the remaining non-singular inverse kinematics.
This paper is an extension of our previous work [21]. As an extension of previous work, redundancy resolution is expanded from vertical plane three-degrees-of-freedom (3-DOF) serial-link hydraulic manipulators to complex 4-DOF serial-link hydraulic manipulators, which include boom base motion. The system model proposed for the energy-optimal solution is also systematically presented in this study. A third contribution of this paper compared to our previous simulation study concerning 3-DOF serial-link hydraulic manipulators is the extensive field experimental evaluation of the redundancy resolution proposed for 4-DOF serial-link hydraulic manipulators and its comparison to existing conventional methods. In this experimental evaluation, the performance of the proposed DP solution is compared to a “bootstrapped” DIDO solution [22] by employing the proposed problem formulation. The performance of the globally hydraulic energy-optimised redundancy resolution has not been previously experimentally evaluated.
This paper is organized as follows. First, the test system, which is a commercial forestry hydraulic manipulator, is described in Section 2. Second, a simplified mathematical model of this complex manipulator is presented in Section 3. In Section 4, the hydraulic manipulator’s optimal control problem is reduced to the bare essentials with the minimum-state formulation. The problem’s desirable global dynamic programming solution is discussed in Section 5. Finally, we experimentally evaluate the proposed redundancy resolution by comparing its performance to that of conventional methods in Section 6. The experimental results are from the real test-bed introduced in Section 2. Conclusions are provided in Section 7.

2. Test-Bed

Our test-bed is the K70M hydraulic manipulator on the Ponsse Caribou S10 8-wheel forest forwarder (Figure 1). In the following, we describe this manipulator in more detail.

2.1. System Description

The K70M hydraulic manipulator is a standard log-loader that has a grapple end-effector attached to the crane tip. The manipulator has four principal joints, which consist of the base, lift, tilt and extension joints shown in Figure 1. These joints are actuated by using proportional valve-controlled hydraulic cylinders (see Table 1). The manipulator also has two telescoping links in series to extend its reachability. Measuring from the base to the tip, the manipulator can extend to approximately 9.1 m, and at this distance, its load-carrying capacity is 650 kg.
A two-stage, pressure-compensated Parker K170LS mobile hydraulic valve is used to control the manipulator’s cylinders; see Figure 2, where the valve’s spool types are illustrated. The mobile hydraulic valve also includes very complex in-built hydro-mechanical functionality, such as a standard counter pressure valve, which raises the tank pressure, and anti-cavitation valves in each actuator port (not shown in Figure 2). In the over-running load case, in particular, these anti-cavitation valves allow any fluid flow rate from the tank line to the non-loaded cylinder chamber to exist before the chamber pressure drops to a level below a preset minimum hydraulic cylinder pressure. This hydro-mechanical functionality can be significant since these anti-cavitation valves may reduce pump flow rate requirement.
The manipulator, as an industrial standard, is powered by a LS hydraulic pump; see [23,24,25]. Therefore, an electro-hydraulic CP system was built in parallel to allow comparison to the LS system for the experiments. Hence, the same hydraulic pump and pump LS regulator valve can be used to control the pump displacement. The hydraulic pump is an A11VLO130DRS variable axial piston pump from Bosch Rexroth with a maximum flow rate of 325 d m 3 / min at 2500 rotations per minute (including the charge pump flow) and 21.5 MPa maximum supply pressure.
The LS system’s conventional low-level operating principle, which is reported in [23], is illustrated in Figure 3a. In this system, the maximum driven chamber pressure among the base, lift, tilt and extension cylinders is fed back to the variable displacement pump’s hydro-mechanical controller, which sets the pump supply pressure a LS pressure margin Δ p LS above this feedback value. With the CP electro-hydraulic control method of the hydro-mechanical feedback system shown in Figure 3b, on the other hand, the pressure reference for the variable displacement pump’s hydro-mechanical controller is generated directly from the supply pressure based on the electrical input of the proportional pressure relief valve between the minor (0.7 mm) orifice and the tank-connected pressure valve. This control method is called “remote control” in the Bosch Rexroth catalog [26]. We have simplified the symbol of the metre-in side load control valve and omitted the metre-out side for clarity.

2.2. Instrumentation and Data Acquisition

The hydraulic manipulator was equipped with multiple sensors for the experiments:
(1)
the base angle was measured using an RCC absolute angle resolver from LTN with a resolution of 0.01 ;
(2)
the lift and tilt angles were measured using incremental angle encoders ROD 456–5000 from Heidenhain with resolutions of 0.0072 and 0.0029 , after 10-fold and 25-fold interpolation;
(3)
the extension cylinder position was measured with a DG 60 L incremental position encoder from Stegmann with a resolution of 160 μ m;
(4)
the pump supply pressure and, for identification purposes, cylinder pressures were measured using an NAH250 analogue pressure transducer from Trafag with an accuracy of ±0.1% from full-scale 25 MPa and
(5)
the pump flow rate was measured using a gear type flow meter VC 5 F2 PS from Kracht with a resolution of 0.005 d m 3 and a range of −250 to 250 d m 3 per minute.
The joint encoder installations are shown in Figure 4. These sensor measurements were recorded at a 2 ms sampling rate, and the hydraulic valves were controlled via CAN using a dSPACE MicroAutoBox II processing unit for the experimental evaluation.

3. Model of the Kinematically Redundant Four-Degrees-of-Freedom Hydraulic Manipulator

Next, the test-bed is described in more detail. For redundancy resolution of this test-bed manipulator, the mathematical model of the manipulator is systematically presented in the following, with particular attention paid to the applicability of the model for optimising energy consumption.

3.1. Forward Kinematics in the Joint Space

The hydraulic manipulator is shown in Figure 5. The joint-position vector of this manipulator can be defined as follows:
q = q 1 q 2 q 3 q 4 T
where q 1 denotes the base angle, q 2 denotes the lift angle, q 3 denotes the tilt angle and q 4 is the total extension length (a prismatic joint). These are the principal hydraulically actuated joints. All q i are taken positive counter-clockwise.
The manipulator’s end-effector position can be expressed from the base frame 0 to frame 4 in accordance with the classical Denavit-Hartenberg (DH) convention [27]. By using the DH transformation matrix A i i 1 , which determines the coordinate transformation between successive frames, we get:
A 4 0 = A 1 0 A 2 1 A 3 2 A 4 3
as the overall coordinate transformation expressed in the base frame. The transformation matrix A i i 1 R 4 x 4 used consecutively is defined as:
A i i 1 = c θ i s θ i c α i s θ i s α i a i c θ i s θ i c θ i c α i c θ i s α i a i s θ i 0 s α i c α i d i 0 0 0 1
where, for example, c α i denotes cos ( α i ) and s α i denotes sin ( α i ) . The DH parameters given in Table 2 determine these matrix elements.
By transforming from the base frame to the x w , y w and z w coordinates, which denote the x-, y- and z-positions of the end-effector expressed in the global frame, respectively, we get:
x w = cos ( q 1 ) L 1 cos ( q 2 ) L 2 sin ( q 2 + q 3 ) + ( L 3 + q 4 ) cos ( q 2 + q 3 ) + o x
y w = L 1 sin ( q 2 ) + L 2 cos ( q 2 + q 3 ) + ( L 3 + q 4 ) sin ( q 2 + q 3 ) + o y and
z w = sin ( q 1 ) L 1 cos ( q 2 ) L 2 sin ( q 2 + q 3 ) + ( L 3 + q 4 ) cos ( q 2 + q 3 ) + o x
as the final end-effector position, which we denote with x t = [ x w y w z w ] T . Constants L 1 and L 3 denote the manipulator link lengths, L 2 is an offset between the tilt joint and the extension link and o x and o y are the offsets in the direction of the x- and y-axes, respectively, from the global frame to the lift joint. The workspace of the test-bed manipulator in the vertical plane is depicted in Figure 6 by using the parameters given in Table 2.
Differentiating x t in view of Equations (4)–(6) with respect to time yields the end-effector velocity:
x ˙ t = J ( q ) q ˙ = J 1 q ˙ 1 + J 2 q ˙ 2 + J 3 q ˙ 3 + J 4 q ˙ 4
where x ˙ t = [ x ˙ w y ˙ w z ˙ w ] T , the joint velocity vector q ˙ = [ q ˙ 1 q ˙ 2 q ˙ 3 q ˙ 4 ] T and the Jacobian matrix J ( q ) is the partial derivative of x t with respect to q . This equation was also expressed by using the column vectors J i , for i { 1 , 2 , 3 , 4 } , for future reference. Differentiating x ˙ t once more yields:
x ¨ t = J ˙ ( q , q ˙ ) q ˙ + J ( q ) q ¨
with the end-effector acceleration x ¨ t and the joint acceleration vector q ¨ defined similarly to Equation (7). The elements of the Jacobian time derivative J ˙ can be resolved from:
J ˙ ( q , q ˙ ) j i = J ( q ) j i q q ˙ = n = 1 4 J ( q ) j i q n q ˙ n
over the workspace dimensions j { 1 , 2 , 3 } and the joint dimensions i { 1 , 2 , 3 , 4 } . Because the Jacobian matrix J ( q ) R 3 × 4 is non-square, the inverse kinematics clearly have an infinite number of solutions inside the workspace. Thus, a redundancy resolution is required.

3.2. Joint Space to Actuator Space Transformations

Transformations, which yield the cylinder coordinates as a function of the joints, are presented next. By using the chain rule, we obtain:
c i = c i ( q i ) ,
v i = c i ( q i ) q i q ˙ i = r i q ˙ i and
a i = r i q i q ˙ i 2 + r i q ¨ i
as the general equations, where c i ( q i ) , for the actuator index i { 1 , 2 , 3 , 4 } , is the cylinder length, v i is the cylinder (piston) velocity, a i is the cylinder (piston) acceleration, not to be confused with the DH parameter, and r i is the cylinder torque arm. The joint space to actuator space transformations of the test-bed are presented in the following.
Firstly, the base cylinder has a constant torque arm r 1 because a rack-and-pinion mechanism, as illustrated in Figure 7, is used (Equation (11)). Furthermore, the torque arm r 2 of the lift cylinder can be written as:
β 13 = q 2 β 11 β 12 + π / 2 r 2 ( q 2 ) = L 11 L 12 sin β 13 c 2 = L 11 L 12 sin β 13 L 11 2 + L 12 2 2 L 11 L 12 cos β 13
as a function of the lift angle q 2 and the lift cylinder length c 2 . The constants L 11 , L 12 , β 11 and β 12 and the joint angle q 2 are illustrated in Figure 8a.
The four-bar linkage of the tilt cylinder is governed by more complex kinematic equations. These equations, from the tilt angle q 3 to tilt cylinder length c 3 , can be written as follows:
α 23 = π + q 3 + α 21 + α 22 L 26 = L 22 2 + L 23 2 2 L 22 L 23 cos ( α 23 ) β 23 = asin L 23 / L 26 sin ( α 23 ) β 24 = acos ( L 25 2 + L 26 2 L 24 2 ) / ( 2 L 25 L 26 ) β 22 = π β 21 β 24 + β 23 + α 21 c 3 ( q 3 ) = L 21 2 + L 25 2 2 L 21 L 25 cos ( β 22 ) s 5 q 3 5 + s 4 q 3 4 + s 3 q 3 3 + s 2 q 3 2 + s 1 q 3 + s 0 = f q ( s , q 3 ) ,
where α 21 , α 22 , β 21 , L 21 , L 22 , L 23 , L 24 and L 25 are the constants and β 22 , β 23 , β 24 and L 26 are the variables (see Figure 8b, where q 3 is negative). Laws of cosines and sines were used. A quintic function f q ( s , q 3 ) , with s R 6 as the coefficient vector, can be fitted to the c 3 data to simplify the equation of the tilt torque arm r 3 . Hence, differentiating c 3 with respect to time in view of Equation (11) yields:
v 3 = f q ( s , q 3 ) q 3 q ˙ 3 = ( 5 s 5 q 3 4 + 4 s 4 q 3 3 + 3 s 3 q 3 2 + 2 s 2 q 3 + s 1 ) q ˙ 3 = r 3 ( q 3 ) q ˙ 3
as the tilt cylinder’s piston velocity. Multiplication by minus one considers the opposite signs of the piston and angular velocities. The “torque arm” r 4 of the telescoping extension mechanism is 1 / 2 because the extension cylinder velocity is half of the joint velocity due to the telescope’s mechanical multiplier.

3.3. Cylinder Forces

Manipulator dynamics are considered through the hydraulic cylinder forces, which can be resolved from the inverse rigid-body dynamics as follows:
F = R 1 ( M ( q ) q ¨ + G ( q ) + F f ( q , q ˙ ) τ )
where the cylinder force vector F equals [ F 1 F 2 F 3 F 4 ] T , τ is the corresponding cylinder torque vector, M ( q ) R 4 x 4 denotes the positive definite, symmetric inertia matrix at joint position q , G ( q ) R 4 denotes the gravitational torque vector and F f ( q , q ˙ ) R 4 includes the hydraulic cylinder and joint friction forces. The inertia matrix and the gravitational load vector can be resolved via well-known Lagrangian conventions by summing the dynamical contributions of each link in the global frame [27]. Resolving these components regarding our test-bed is mostly standard practice, with the exception that the extension cylinder’s gravitational component must be doubled to consider the mechanical disadvantage of the telescope mechanism (The mechanism doubles the extension cylinder stroke). Because the centrifugal and Coriolis forces are in low magnitude, their effects can be omitted. Conventional exponential friction force models can be primarily exploited (see [28]), but the extension joint’s friction force is shown to be accurately represented by using the developed unconventional model (see Appendix B for the test-bed’s cylinder force modelling results).
The inverse torque arm matrix is defined as in:
R 1 = 1 / r 1 0 0 0 0 1 / r 2 0 0 0 0 1 / r 3 0 0 0 0 1 / r 4
Consequently, these positive matrix elements, denoted by r i 1 , are the inverses of the hydraulic cylinder torque arms. However, r 4 1 is a non-physical multiplier because the fourth joint is prismatic.

3.4. Steady-State Cylinder Pressures Using a Mobile Hydraulic Valve

Finally, moving on to the hydraulic system equations, we introduce simplifications to keep the system dimensionality at a manageable level for optimisation purposes. To introduce our subsequent simplifications, firstly, consider the pressure dynamics of the hydraulic cylinders denoted by [29]:
p ˙ A = B eff V 0 A + x p A A Q A v A A and
p ˙ B = B eff V 0 B + ( L max x p ) A B Q B + v A B
where B eff is the effective bulk modulus, V 0 A and V 0 B are the dead volumes, x p is the piston position, v is the piston velocity, A A is the piston-side area, A B is the rod-side area and Q A and Q B are the flow rates to the cylinder chambers. Actuator indices were omitted for brevity. Solving the steady-state cylinder velocity from Equations (18) and (19) yields:
v ss = Q A / A A = Q B / A B
Now, we omit these hydraulic system dynamics and focus on deriving the hydraulic system’s steady-state pressure equations by utilising Equation (20). Because the flow rates to the hydraulic cylinders are controlled by using the mobile hydraulic valve’s two vastly different spools, as shown in Figure 2, we derive the steady-state cylinder pressures in both cases.

3.4.1. Typical Pressure-Compensated Non-Differential Spool Valve

Firstly, for the asymmetric spool valve shown in Figure 2a, which is another typical pressure-compensated, hydro-mechanical valve, the turbulent flow equations are given by [29]:
Q A = K vPA ( I ) Δ p c , if I 0 ( cylinder extends ) K vAT ( I ) p A p T , if I < 0 ( cylinder retracts )
Q B = K vBT ( I ) p B p T , if I 0 ( cyl . ext . ) K vPB ( I ) Δ p c , if I < 0 ( cyl . ret . )
where I is the valve’s control current, Δ p c is the constant pressure drop across the main spool due to the pressure compensation, p T is the tank pressure and K vPA , K vAT , K vBT and K vPB are the flow coefficients of the P-A, A-T, B-T and P-B control edges, respectively. The flow coefficients K vPA ( I ) and K vBT ( I ) are monotonically increasing positive functions for a valve current I greater than a positive dead zone current I DZ ( + ) . Otherwise, they have a value of zero. The flow coefficients K vAT ( I ) and K vPB ( I ) are similarly defined as monotonically increasing positive functions for a current I less than a negative dead zone current I DZ ( ) . Here, ideal pressure compensation was assumed, and reversed flow was neglected to simplify analysis.
Utilising Equations (20)–(22) and the external force (which equals the cylinder force F = p ssA A A p ssB A B ) to resolve the steady-state pressures yields [30]:
p ssA = F / A A + A B A A p ssB , for I > I DZ ( + ) K vPB A A K vAT A B 2 Coeff . Δ p c + p T , for I < I DZ ( )
p ssB = K vPA A B K vBT A A 2 Coeff . Δ p c + p T , for I > I DZ ( + ) F / A B + A A A B p ssA , for I < I DZ ( )
Interestingly, the cylinder back-pressures can be approximated by multiplying the pressure compensator’s constant pressure drop with a momentarily constant coefficient (labelled). These equations apply regardless of the load force direction. If the cylinder back-pressure is non-existent, as in single-acting lift cylinders, then these steady-state pressure approximations can be easily simplified.

3.4.2. Typical Pressure-Compensated Differential Spool Valve

The second spool type is the pressure-compensated differential spool valve (Figure 2b). Because of the spool’s differential position, the fluid flows are regenerative from the cylinder chamber B to cylinder chamber A via the valve’s P port in the cylinder extension case. This differential position reduces Q p , the required pump flow rate, to Q A | Q B | . Hence, the actuator flow rates can be written as:
Q A = K vPA ( I ) Δ p c Q p + | K vBP ( I ) | p B p A Δ p c | Q B |
Q B = K vBP ( I ) p B p A Δ p c
where I > 0 and K vPA and K vBP are defined as positive functions of current, Δ p c is a constant-pressure drop over the control edge P-A due to the pressure compensation and the sum of p A and Δ p c equals the pressure in the valve’s P port, omitting some pressure losses ( Q B denotes the flow rate over the control edge B-P). Using Equations (20), (25) and (26), the steady-state cylinder chamber pressures can be resolved, yielding:
p ssB = F A A A B + K vPA 2 A B 2 A A K vPB 2 ( A A A B ) 3 + A A A A A B Δ p c
p ssA = F / A A + p ssB A B A A
Here, the flow coefficients and the external force are again momentarily constant. Pressure losses in pipes, hoses and filters were omitted. In contrast to the non-differential case, the cylinder back-pressure p ssB depends on the cylinder force. None of these derived steady-state pressures, however, depend explicitly on the supply pressure because of the pressure compensation.

4. Problem Formulation

Let us formulate our inherently continuous-time optimal control problem in discrete-time for numerical solution. By dividing the fixed optimisation time t f , which corresponds to the desired duration of the end-effector path, into N intervals of length t f / N , our optimal control problem can be expressed in discrete-time as follows:
min π u π U k = 0 N 1 P h , k ( q k , q ˙ k , q ¨ k ) + k ( q k , q ˙ k , q ¨ k )
subject to:
x ¯ k + 1 = F ¯ k = x ¯ k + T s , F k ( x ¯ k , u ¯ k )
where π u denotes the control policy and π U denotes the admissible control policies. The hydraulic power P h , k , defined at each time stage k { 0 , 1 , 2 , , N 1 } , is the principal cost to be minimised, and the term k , which can be replaced by standard inequality constraints, penalises violations of actuator limits. For the performance cost P h , k , effective functions which minimise hydraulic energy consumption are proposed because the conventional cost functions may be sub-optimal.
In the above, the system dynamics have been discretised using the Euler method and T s as the integration step corresponding to the interval length t f / N . The state vector x ¯ k = [ c ¯ 4 , k v ¯ 4 , k ] T , with initial state x ¯ 0 , contains the extension cylinder position and velocity. The extension cylinder acceleration a ¯ 4 , k is used as the control u ¯ k . To optimise movements of the extension cylinder at the acceleration level, we create a double integrator system F k ( x ¯ k , u ¯ k ) , denoted with:
F k ( x ¯ k , u ¯ k ) = 0 v 4 , max / c 4 , max 0 0 x ¯ k + 0 a 4 , max / v 4 , max u ¯ k
where the maximum extension cylinder position, velocity and acceleration, c 4 , max , v 4 , max and a 4 , max , respectively, have been applied to normalise the physical units for the cylinder’s position, velocity and acceleration. These normalised units can be transformed into conventional physical units by employing scaling equations x k = diag ( c 4 , max , v 4 , max ) x ¯ k and u k = a 4 , max u ¯ k . These extension cylinder coordinates can also be converted into joint coordinates by multiplying the cylinder motion by 1 / r 4 , in view of Equations (10)–(12). This final transformation is required for the next stage.

4.1. Using Inverse Kinematics to Resolve the Motion of Non-Redundant Joints

Because our convenient method directly provides only the extension cylinder and joint motions for the cost functions, the method we propose includes the application of inverse kinematics to resolve the motions of the non-redundant joints. These motions are included in the vector:
x k ( r ) = q k ( r ) q ˙ k ( r ) q ¨ k ( r ) T
For example, the positions of the base, lift and tilt joints (the non-redundant joints) are denoted with q k ( r ) = [ q 1 , k q 2 , k q 3 , k ] T at time stage k. Because the extension joint’s motion is known, these non-redundant joint positions can be resolved directly by inverting Equations (4)–(6), which yields [27]:
q k ( r ) = [ arctan ( z w d , k / x w d , k ) h 2 h 3 ] T
Here, z w d , k and x w d , k denote the components of the end-effector’s desired position x td at time stage k in the direction of the z- and x-axes, respectively, in the global frame. The lengthy inverse kinematic functions h 2 and h 3 are omitted for brevity.
At the velocity level, the approach requires that we subtract the contribution of the extension joint from the desired end-effector velocity x ˙ td , k . Then, the joint velocities in q ˙ k ( r ) can be obtained by inverting Equation (7) as in:
q ˙ k ( r ) = J 1 ( q k ) J 2 ( q k ) J 3 ( q k ) 1 x ˙ td , k J 4 ( q k ) q ˙ 4 , k
because the partial Jacobian inverse matrix J 1 ( q k ) J 2 ( q k ) J 3 ( q k ) 1 is non-singular. This matrix can be symbolically computed in advance to possibly decrease the computational complexity.
Similarly, accelerations of the non-redundant joint can be resolved by inverting Equation (8):
q ¨ k ( r ) = J 1 ( q k ) J 2 ( q k ) J 3 ( q k ) 1 x ¨ td , k J ˙ ( q k , q ˙ k ) q ˙ k J 4 ( q k ) q ¨ 4
where the right-hand term in the parentheses contains the Cartesian acceleration required from the non-redundant joints to maintain the desired end-effector acceleration x ¨ td , k . The Jacobian time derivative J ˙ ( q , q ˙ ) can be symbolically computed in advance using Equation (9). We are now in a position to apply the cylinder coordinate transformations presented to obtain the necessary motions of the cylinders of the non-redundant joints for the proposed cost functions.
The proposed method optimises the dynamical motions of all the cylinders. However, our method reduces computational complexity by only computing the necessary extension cylinder motion to optimise the dynamical motions of all the cylinders. This is possible because the motion of the extension cylinder in the 4-DOF manipulator determines the motion of the base, lift and tilt cylinders along a certain end-effector path. We could have also chosen to directly optimise the motion of the lift or tilt cylinder and use the motion of that cylinder to compute the required optimal dynamical motions of the base, lift/tilt and extension joints for the cost functions.

4.2. Proposed Cost Function: Power Consumption of Load-Sensing System

We first propose the power consumption the LS system as the principal cost in view of Equation (29) to be minimised. The cost function of the LS system, at time stage k, can be written as:
P h , k = p s , k Q p , k η k
where p s , k denotes the pump supply pressure, Q p , k is the pump flow rate and η k is the total efficiency of the hydraulic pump and the driving motor, which depends on the operating point, i.e., the displacement, supply pressure and rotational speed of the pump. Thus, the energy consumption of the LS system can be optimised by minimising the hydraulic output power or by increasing the driving system’s efficiency. Since pump and motor efficiency data is not usually available, without loss of generality, we assume the total efficiency is constant.
The pump flow rate, which is a positive function without energy recuperation, can be approximated at time stage k by summing the cylinder flow rates as in:
Q p , k = i = 1 4 v i , k A A i H ( v i , k ) A B i H ( v i , k )
where v i , k is the velocity of cylinder i and H ( v i , k ) denotes the piecewise Heaviside step function. The piston-side area is denoted with A A i and the rod-side area with A B i . For simplicity, the hydraulic fluid is assumed to be incompressible. The rod-side area is negatively signed to enforce a positive pump flow rate when the cylinder is retracting and has negative velocity. The Heaviside step function can be defined using:
H v i , k = 0 if v i , k < 0 1 2 if v i , k = 0 1 if v i , k > 0
which introduces a discontinuity in the objective function. Because having a differentiable objective function is desirable, the discontinuous Heaviside step function can be approximated by a differentiable expression, after some mathematical manipulations:
H v i , k H ^ v i , k = 1 1 + e 2 s v i , k
where s is a real positive number, such as 20,000.
The pump supply pressure, according to the LS system’s operating principle, can be calculated at steady-state at time stage k by using the maximum driven actuator pressure:
p s , k = max p 1 , k , p 2 , k , p 3 , k , p 4 , k + Δ p LS
where p 1 , k , p 2 , k , p 3 , k and p 4 , k denote the chamber pressures of the base, lift, tilt and extension cylinders, respectively. The LS pressure margin Δ p LS is roughly 3 MPa in the test-bed.
The chamber pressure p i , k of cylinder i is taken from the rod- or piston-side depending on the cylinder’s direction of motion. The pressure is zero if the actuator is not driven. Hence, the chamber pressure p i , k at time stage k can be estimated by using:
p i = p ssA , i H ( v i ε ) + p ssB , i H ( v i ε ) H F i v i
where the use of the minor positive constant ε in the Heaviside step functions assures zero chamber pressure when the cylinder is not driven and its velocity v i [ ε , ε ] . Time indices were omitted for clarity. In addition, multiplying by the Heaviside value of the actuator power ensures a non-negative actuator pressure when the cylinder load is over-running. In this over-running load case, the cylinder velocity v i and the cylinder pressure force F i have opposite signs. The steady-state pressure equations are chosen according to the spool type used either from Equations (23)–(24) or Equations (27)–(28).
A discontinuous maximum function has been used in Equation (40). This function can be approximated by applying the equation:
max ( p 1 , p 2 ) = 0 . 5 p 1 + p 2 + | p 1 p 2 |
thrice; i.e., max { p 1 , k , p 2 , k , p 3 , k , p 4 , k } can be computed as max ( max ( max ( p 1 , k , p 2 , k ) , p 3 , k ) , p 4 , k ) . The absolute function, in turn, can be approximated as the square root of ( p 1 p 2 ) 2 + ϵ . This ϵ should be a minor positive constant, such as 10 6 , to improve the accuracy of the approximation. As a result of these approximations, the LS cost is desirably continuously differentiable, which allows us to more easily employ a standard optimal control solver for performance comparison. The pump flow rate and supply pressure modelling results achieved with the test-bed can be found from Appendix C.

4.3. Proposed Cost Function: Power Consumption of Constant-Pressure System

In our second application, we minimise the energy consumption of the CP system. The cost function of the CP system can be written as:
P h , k = p s Q p , k η k
where p s denotes the constant supply pressure and the pump flow rate Q p , k is given by Equation (37). Because of the constant pressure, the energy consumption of the CP system can generally be optimised load-independently without knowledge of manipulator dynamics through minimisation of the pump flow rate. By minimising the pump flow rate, the total volumes displaced by the hydraulic cylinders in the solution end up being minimised. Because the piston and piston-rod-side areas obviously affect the cylinder volumes displaced, minimising the energy consumption of the CP system does not equal to the actuator velocity norm minimisation, e.g., in [10]. The variation of cylinder areas among the manipulator’s hydraulic cylinders, including the different piston and rod-side areas of these conventionally asymmetric cylinders, render the pump flow rate minimisation a highly tractable objective.

4.4. Actuator Limits

Because of the inherent physical limitations of the manipulator’s cylinders, the cylinders’ motions are limited. For this reason, we have introduced a mechanism through the optimal control problem’s term k ( q k , q ˙ k , q ¨ k ) to impose actuator constraints at the position, velocity and acceleration levels by issuing a significant penalty compared to the magnitude of the principal cost if the limits are violated.
Since the position limits depend on the cylinder stroke, they can be expressed effectively either in the joint or actuator space. In contrast, however, the velocity limits should be expressed in the actuator space because these limits cannot be expressed optimally from the perspective of the hydraulic system in the joint space. Based on the influential dimensions of the hydraulic pump and cylinders and the cylinders’ non-constant torque arms these velocity limits are constant only in the actuator space to ensure that the total fluid flow rates for the actuator do not exceed the pump’s maximum flow output. Assuming fluid incompressibility in these computations is the most convenient approach. Notice that by assuming constant velocity limits, the joint velocity limits vary if the torque arm is non-constant (see Equation (11)). Only if a particular cylinder’s torque arm is constant can the corresponding velocity limit be expressed optimally in the joint space. Hence, in the test-bed case, only the velocity limits for base and extension cylinders can be expressed in either space.
Lastly, we choose constant acceleration limits for the cylinders for simplicity. Consequently, the joint acceleration limits vary (see Equation (12)). Selecting the proper acceleration limit magnitudes are important from at least two perspectives: firstly, to limit the occurrence of higher accelerations that might lower the manipulator wear life and secondly, to assure higher controller tracking performance. The actuator limits used in the experiments can be found in Table 3.

5. Dynamic Programming Solution

The complex optimal control problem of the hydraulic manipulator is solved to global optimality using the discrete-time DP algorithm (see Algorithm 1 [31,32,33]). The main advantage of the algorithm is that it can produce this solution considerably more effectively than a brute-force method, whose computational cost grows exponentially with the time stages N. However, the main disadvantage of the algorithm is that its computational cost grows exponentially with the states and controls due to the curse of dimensionality. Hence, our low-dimensional optimal control problem that we have reduced to the bare essentials makes this global DP algorithm applicable. Recall that we have reduced our optimal control problem size to only two states and one control.
The effectiveness of the DP algorithm over the brute-force method results from the principle of optimality, which states that “an optimal policy has the property that whatever the initial state and initial decision (control) are, the remaining decisions must constitute an optimal policy with regard to the state resulting from the first decision” [31]. The Bellman equation, which characterises this principle of optimality, can be written at time stage k, in view of our objective Equation (29), as:
J k x ¯ k = min u ¯ k U P h , k q k , q ˙ k , q ¨ k + k q k , q ˙ k , q ¨ k + J k + 1 F ¯ k ( x ¯ k , u ¯ k )
where the sum P h , k + k represents the running cost and the vector F ¯ k represents the system dynamics (see Equations (30)–(31)). The minimum cost-to-go J k is the minimum sum of the running costs from stage k { 0 , 1 , , N 1 } to the final stage at k = N 1 . This optimal cost-to-go J k x ¯ k is defined for each state vector combination such that x ¯ k 𝕏 = { X 1 × X 2 } and minimised over all possible controls at stage k such that u ¯ k U . Here, X i = { x i ( 1 ) , x i ( 2 ) , , x i ( N x i ) } and U = { u ( 1 ) , u ( 2 ) , , u ( N u ) } denote the discrete-state and control sets, respectively. The variables N x i and N u , in turn, determine the density of the state and control grids, respectively. Sufficiently dense grids are defined to reach the global optimum. These grid sizes, and suitable time-discretisation, can be found through trial and error, taking note that the computational and memory requirements of the algorithm scale linearly with the density of the grids.
The algorithm’s implementation shown in Algorithm 1 entails two consecutive phases: a backwards phase followed by a forward simulation. During the computationally heavier backwards phase, the optimal controls are resolved at each position in the state grid while the algorithm iterates backwards in time. In greater detail, at any given time stage k, the system is simulated (line 5), subsequent computations are performed to evaluate the cost function (lines 6–8), the minimum cost-to-go J k ( x ¯ k + 1 ) computed at the previous iteration is interpolated because the system dynamics have likely transformed into a state unspecified in the grid (line 9) and the cost-to-go J k x ¯ k , u ¯ k is evaluated for all the states and controls by utilising the minimum cost-to-go J k + 1 ( x ¯ k + 1 ) (line 10). From the cost-to-go evaluated at each control, the minimum cost-to-go J k x ¯ k is then stored for the next iteration (line 12) together with the optimal control u k x ¯ k , which minimised the cost-to-go (line 13). The backwards phase iterates in this manner until it reaches the initial time stage. At this point, with our system of two states and one control, the algorithm has produced a two-dimensional state grid at each time stage, and the optimal controls have been stored at each position in the state grid. The algorithm then simulates in the forward direction from the initial time stage and state by following the grid of the optimal controls produced in the backwards phase. Interpolation of the optimal control is used during the forward simulation because is it is unlikely that the optimal controls were evaluated at the optimal states. When the simulation has been completed, the algorithm has produced the optimal control sequence and state trajectories as outputs. In addition to producing the global solution, this algorithm has the significant advantage that different initial configurations of the manipulator can be considered with just a forward simulation. This advantage is in contrast to most other optimisation algorithms where new optimisations from scratch are required.
Algorithm 1 Discrete-time dynamic programming algorithm
1. Backward phase with interpolation

Require: Sets 𝕏 and U
1:
Initialisation: set final cost-to-go J N x ¯ N for all x ¯ N 𝕏
2:
for k = N 1 to 0 do
3:
  for all x ¯ k 𝕏 do
4:
    for all u ¯ k U do
5:
      x ¯ k + 1 = F ¯ k ( x ¯ k , u ¯ k ) , see Equations (30) and (31).
6:
     Determine q 4 , k , q ˙ 4 , k and q ¨ 4 , k using Equations (10)–(12).
7:
     Complete q k , q ˙ k a n d q ¨ k using Equations (33)–(35).
8:
     Compute base, lift and tilt cyl. coordinates using Equations (10)–(12).
9:
     Interpolate J k + 1 ( x ¯ k + 1 )
10:
      J k x ¯ k , u ¯ k = P h , k ( q k , q ˙ k , q ¨ k ) + k ( q k , q ˙ k , q ¨ k ) + J k + 1 ( x ¯ k + 1 )
11:
   end for
12:
    J k x ¯ k = min u ¯ k U J k x ¯ k , u ¯ k
13:
    u k x ¯ k = argmin u ¯ k U J k x ¯ k , u ¯ k
14:
  end for
15:
end for
2. Forward simulation with interpolation
Require: u k ( x ¯ k ) for all k { 0 , 1 , , N 1 } and x ¯ k 𝕏
1:
Initialisation: set x ¯ 0
2:
for k = 0 to N 1 do
3:
  Interpolate u k ( x ¯ k )
4:
   x ¯ k + 1 = F ¯ k x ¯ k , u k ( x ¯ k )
5:
end for
6:
Determine q 4 , k , q ˙ 4 , k and q ¨ 4 , k using Equations (10)–(12).
7:
Complete q k , q ˙ k and q ¨ k using Equations (33)–(35).
A demonstratively simple example of the DP algorithm has been presented, e.g., by Nurmi and Mattila [21]. The utilised general Matlab-coded DP algorithm can be found from Sundstrom and Guzzella [32]. Different DP algorithm varieties have been compared by van Berkel et al. [34] and Böhme and Frank [33], and a convergence proof of discrete-time DP has been presented by Shin and McKay [35].

6. Experimental Results

Before diving head-first into the experimental results from the real hydraulic manipulator introduced in Section 2, we describe the testing methodology. Firstly, the optimal control solutions compared consist of:
(1)
the proposed LS cost (36), which is minimised by using the DP algorithm and named DP (LS) according to the naming convention “method (minimised cost)”;
(2)
the proposed LS cost, which is minimised by using the DIDO algorithm [22] and named DIDO (LS);
(3)
the proposed CP cost (43), which is minimised according to DP (CP);
(4)
the proposed CP cost, which is minimised according to DIDO (CP);
(5)
a positive actuator energy cost, which is solved according to DP (A. En.) and which minimises P h , k = i = 1 4 F i , k v i , k for positive work, F i , k v i , k > 0 , and
(6)
an extension cylinder use cost, which is solved according to DP (ext.) and which minimises P h , k = v 4 , k 2 .
Secondly, the instantaneously optimal solutions included in the comparison are
(7)
the joint-limited pseudo-inverse solution by Flacco et al. [20] named P-inv. (j.), which minimises q ˙ T q ˙ , and
(8)
an actuator-limited pseudo-inverse solution named P-inv. (a.), which was derived by combining the solutions of Beiner and Mattila [10] and Flacco et al. [20] to minimise v T v .
The DP solution (A. En.) is formulated with positive actuator work only to obtain the best attainable performance in the test-bed, which did not have the possibility of recovering energy. The solution for minimising use of the extension cylinder is included in the comparison to evaluate whether the solution lowers energy consumption, presumably, by reducing the lift and tilt cylinder forces required.
The DP algorithm was parametrised by dividing the state and control grid into 356 × 101 × 151 ( N x 1 × N x 2 × N u ) discrete values. With this grid size and by using a time discretisation of 0.05 s, we could nearly max out the 8 GB of RAM available. In the evaluation, the performance of the DP algorithm is compared to a “bootstrapped” DIDO solver by employing the proposed problem formulation. This DIDO algorithm is a commercial, pseudospectral and Matlab-based optimal control solver that has been extensively used in the solution for aerospace optimal control problems.
The energy consumption of the LS and CP systems was computed as the performance indices to be compared by measuring the pump supply pressure and the flow rate along three kinds of end-effector paths. The end-effector was controlled without payload along these paths. Firstly, we present the energy consumption in the horizontal and vertical point-to-point paths where the end-effector moves from point A to point B without a payload in a straight line (see Figure 9a). Jazar’s quintic rest-to-rest polynomial algorithm [36] was used to generate the Cartesian motion profile between these points. The horizontal path was driven in 10 s, requiring a maximum end-effector velocity of 0.60 m/s along the x w -axis. The vertical path was driven in 6 s, and it required a higher maximum end-effector velocity of 0.95 m/s along the y w -axis. Secondly, we consider half of the log-loading cycle where the end-effector starts from the load space (or trailer) of the forwarder at point A and moves the empty log grapple back to the logs on the ground at point B (see Figure 9b). A cubic spline was used to generate the desired end-effector path via points in this case (see e.g., Biagiotti and Melchiorri [37]). This path was driven in 15 s, and the maximum end-effector velocity was 0.75 m/s in the x w y w z w -space.
The paths were driven three times using each redundancy resolution from (1) through (8), and the results were averaged. Two initial configurations of the manipulator at the beginning of each path were also considered: firstly, based on the smallest feasible extension cylinder length and subsequently based on the middle point between the smallest and largest feasible extension cylinder lengths. The supply pressure of the CP system was set to 20 MPa in the experiments, and the motion controller used is discussed in Appendix A.

6.1. Horizontal Path

The experimentally obtained energy consumption of the LS system of each redundancy resolution has been sorted by magnitude in Figure 10a. These results demonstrate that the pseudo-inverses clearly have a sub-optimal performance by yielding 25% greater energy consumption than the best proposed hydraulic-energy optimal solution. The DIDO and DP solutions produce comparable results. In this path, minimising the energy consumption of the actuators is also similar to minimising the energy consumption of the LS system. Another important observation is the adequate performance of the CP solution, considering that it is based on a simple model. In addition, because the extension joint use minimising cost yields a poor solution, minimising the use of the extension joint appears to be impractical for our goal of minimising the hydraulic energy consumption.
As can be seen in Figure 10a, the CP system results are comparable to the LS results, but the main difference is the greater energy consumption. The pseudo-inverses, again, have an inferior performance from the perspective of the energy consumption of the CP system, and they require approximately 30% greater energy use than do the hydraulic energy-optimal methods in this case. Inferiority of the pseudo-inverses reinforces the notion that minimising the velocities of the actuators does not minimise the energy consumption of the CP system. In addition, the best solutions here consume the same amount of CP energy as do the pseudo-inverses in the LS case with the same path.
Two of the redundancy resolutions’ joint trajectories and controller performances have been illustrated in Figure 10b,c. The DP joint references, as shown there, were always low-pass filtered (cutoff frequency 5 Hz) to smooth out the trajectories’ slightly jagged edges. This filtering caused no apparent error in the desired end-effector path. The results with the second initial configuration can be found in Appendix D (see Figure A4).

6.2. Vertical Path

Continuing with the results of the vertical path, we firstly compare the sorted LS energy-consumption presented in Figure 11a. As previously, the energy-optimised solutions for the hydraulic manipulators are superior compared to the pseudo-inverses, which require almost twice the energy consumption. However, the DP energy-optimised solutions for hydraulic manipulators have not reached a global optimum because the DIDO method clearly fares better in this case. The DIDO solutions themselves are practically the same. This path also demonstrates that minimising the energy consumption of the actuators does not always minimise the energy consumption of the LS system. The proposed solutions minimising the CP cost, again, have an adequate performance.
The energy-consumptions rates of the CP system presented in Figure 11a are similar, but the energy-consumption rates are approximately double compared to the LS case. The pseudo-inverses, most evidently, have an inferior performance compared to the proposed solutions, which, in contrast, require the lowest energy consumption.
A few optimal and sub-optimal joint trajectories and controller performances are illustrated in Figure 11b,c. Compared to the previous path, the controller tracking performances are slightly worse because the end-effector moves faster. The energy consumption with the second initial configuration is presented in Figure A5 in Appendix D. These energy consumption rates demonstrate that the initial manipulator configuration has a significant impact on the energy consumption. Figure A5 also shows that the algorithms, or DP (CP) specifically in this case, can sometimes yield an average result. We suspect that this result is related to a combination of the DP algorithm’s grid size, closed-loop dynamics and modelling errors.

6.3. Half-Cycle

Finally, we have the “half-cycle” energy consumption. The energy-consumption rates of the LS system presented in Figure 12a demonstrate that the redundancy resolutions’ perform fairly similarly in this case. The minimisation of the actuator energy is also optimal in this case. The joint-limited pseudo-inverse, surprisingly, produces an energy-consumption rate comparable to the consumption obtained using hydraulic energy-optimised redundancy resolutions. Because the simulations (not presented in this paper) predicted a greater difference between these solutions, the smaller difference originates from modelling errors and the behaviour of the closed-loop control. The energy-consumption rates for the CP system presented in Figure 12a differ from the LS results in that the pseudo-inverses are inferior.
Selected optimal and sub-optimal joint trajectories and controller performances from the half-cycle are illustrated in Figure 12b,c. Furthermore, the controller performances of each test case were evaluated according to the ISO 9283 standard, which contains a standardised general method for computing the maximum end-effector path tracking error (see Table 4). The controller performances are superior when the CP hydraulic system is used, particularly over the half-cycle path. This is not surprising because the LS system’s actuator flow dynamics are slower due to the non-constant pressure level. The tracking errors, in general, are sufficiently insignificant and consistent for evaluating the proposed solution. Again, the result with the second initial configuration can be found in Appendix D (Figure A6).
As a conclusion of the evaluation, the pseudo-inverses, in particular, and actuator energy solutions, in some cases, were inferior compared to the proposed hydraulic energy-optimised redundancy resolutions. These inferior solutions should be used with caution when minimising hydraulic energy consumption. The DIDO solutions were, for the most part, comparable to the DP solutions. The CP optimal solutions, in turn, were often comparable to the LS optimal solutions. The vertical and horizontal paths demonstrated the greatest energy savings, but energy savings were also attainable in the half-cycle when energy-optimised redundancy resolution was used. A solution containing both halves of the log-loading cycle could be obtained from a combination of a minimum-time solution for the log-loading part and the energy-optimal solution proposed for this return part. The results were obtained with the assumption of constant pumping efficiency. In the conditions of the experiments, in which the pump flow rate was typically less than 25% of the maximum flow rate of the pump, it might have been advantageous to incorporate the variations in pumping efficiency in the optimisation to improve the results. However, the satisfactory results of our paper suggest that it might not be worthwhile to consider the efficiency map of the pump in the optimisation.

7. Conclusions and Future Work

This paper addressed the open problem of global energy-optimal redundancy resolution of 4-DOF hydraulic manipulators in robotic control applications, in which the highly repetitive manipulator movements are automated to improve work productivity and operator workload circumstances. To ensure the hydraulic energy-optimality of the redundancy resolution, the solution was formulated at the hydraulic system level by proposing effective cost functions for the commonly used LS and CP hydraulic systems. Furthermore, actuator constraints at the position, velocity and acceleration levels were imposed in the solution. To reduce the computational complexity and problem dimensionality, firstly, only the motion of the redundant extension cylinder was directly optimised. Secondly, hydraulic system properties were incorporated through steady-state equations in the proposed cost functions. The non-redundant actuator motions were resolved via non-singular inverse kinematics to obtain the full manipulator motion state for the cost functions. The global DP algorithm was applicable to our optimal control problem formulation due to the conveniently reduced problem dimensionality. A pseudocode implementation of the DP algorithm used in the optimal control problem solution was presented to discuss the properties of the algorithm and to showcase its relatively simple implementation. Field experiments that were performed on a 4-DOF forestry manipulator demonstrated the significant advantage of the new global optimal control problem solution. Around 15–30% greater hydraulic energy consumption was observed with the conventional solutions in the LS and CP systems. These experiments also showed that the CP system’s cost function for basic energy consumption, most often, also led to minimised energy consumption by the LS system. Overall, these experimental results demonstrate energy-optimal redundancy resolution at the hydraulic system level in the prospective automated robotic applications. The existing practices in redundancy resolution of hydraulic manipulators are, therefore, significantly expanded. Experimental evaluation of the solution performance with an end-effector load was left for future work to limit the study’s scope.

Acknowledgments

This work was funded by the Academy of Finland under project AUTOGRACE, Decision No. 304604. This funding is highly appreciated. The authors are also grateful for the technical help provided by Janne Honkakorpi, Janne Tuominen, Ari Moskari, Soheil Zavari, Anssi Mäenpää and Pauli Mustalahti.

Author Contributions

Jarmo Nurmi developed the redundancy resolution; Jarmo Nurmi conceived, designed and performed the experiments; Jarmo Nurmi also analysed the data to validate the redundancy resolution. Both authors contributed to the writing of this paper.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
CANController Area Network
CPConstant-pressure
DHDenavit-Hartenberg
DOFDegrees-of-freedom
DPDynamic programming
ISOInternational Organization for Standardization
LSLoad-sensing

Appendix A. Motion Controller

A motion controller for each of the hydraulic cylinders was designed to evaluate the proposed redundancy resolution. This meant using the mobile hydraulic valve and the joint encoders of the test-bed in the motion control. This mobile hydraulic valve had a low bandwidth (less than 10 Hz), significant dead-zone (around 53%) and a time-delay greater than 0.15 s. In addition, the time-delay varied because of the hydraulic system dynamics. Therefore, only an adequate position tracking accuracy for the purposes of the evaluation, also considering the basic instrumentation used, was expected.
We designed the motion controller based on a standard feed-forward and dead-zone compensation strategy, where the valve control is inferred from an inverted table. This table compensates for the valve’s dead-zone nonlinearity by matching a valve control signal to a given cylinder velocity (see Figure A1). By omitting the sub-indices denoting the actuator, we can write
I = D Z I ( v d )
where v d is the desired cylinder velocity and D Z I denotes the compensating feed-forward function. This dead-zone compensation is crucial because an uncompensated dead-zone would significantly increase the control error [39]. Since the feed-forward is a static representation of the dynamical system, the controller input is augmented by a P-controller, i.e.,
I = D Z I ( v d + K p e )
to add robustness to disturbances. Here, K p is the P-gain and e is the cylinder position error. Employing this type of controller is standard practice, and it has been found to be surprisingly effective when used in conjunction with a mobile hydraulic valve [30,40]. This effectiveness arises from the dead-zone compensation and from the fact that the pressure-compensated mobile hydraulic valve inherently attenuates the effects of load disturbances on the actuator flows. Thus, a representative cylinder velocity and valve current table can be found regardless of the payload magnitude. Most often, however, the mobile hydraulic valves are equipped with force-feedback spools. For this reason, a combination of the feed-forward and closed-loop control is practically necessary.
Figure A1. Determination of the feed-forward function: the measured lift velocities versus the valve control are illustrated on the left, the inverted feed-forward function D Z I is illustrated on the right. The data point pairs can be matched by using a constant valve input to determine the steady-state cylinder velocity. The cylinder velocities in between the measured points can be interpolated using splines.
Figure A1. Determination of the feed-forward function: the measured lift velocities versus the valve control are illustrated on the left, the inverted feed-forward function D Z I is illustrated on the right. The data point pairs can be matched by using a constant valve input to determine the steady-state cylinder velocity. The cylinder velocities in between the measured points can be interpolated using splines.
Energies 10 00647 g013
Another useful control practice we used was limiting controller activation to avoid unnecessary energy consumption and the signalling of the pump pressure reference through the LS pilot line the of mobile hydraulic valve. We implemented this strategy so that if the absolute value of the cylinder velocity tracking error was less than a minor positive constant ε v , the mobile hydraulic valve would not be controlled (tracking mode). However, if the absolute value of the cylinder position error was greater than a minor positive constant ε p , the controller would activate (regulation mode). Thus, if a minor cylinder velocity were desired, for example due to a numerical imprecision of the optimisation, the cylinder would not be forced to move. This controller is simpler than the nonlinear model-based controllers, for example, by Bu and Yao [41] and Koivumäki and Mattila [42].

Appendix B. Cylinder Forces

The supply pressure computations are based on accurate cylinder force models. The cylinder forces, as given by Equation (16), were identified by using a least squares algorithm. However, because the base cylinder was not subjected to a gravitational force on the level ground of our test area, we approximated the base cylinder force as a constant and focused on the other force models. The modelling errors of the cylinder forces are acceptable, as can be verified from Figure A2a–c.
To achieve the modelling accuracy, we paid attention to the modelling of the friction force of the extension function, which had a high-magnitude compared to the gravitational component. Moreover, the friction force exhibited steps because of the long and slightly flexible telescoping link; see Nielsen [43]. Thus, an unconventional friction force model
F f 4 = tanh ( K q ˙ 4 ) F c 4 total = tanh ( K q ˙ 4 ) ( F c 4 + H f 1 F c 4 ( q 4 q f 1 ) + H f 2 F c 4 ( q f 2 q f 1 ) + H f 3 F c 4 ( q 4 q f 3 ) + H f 4 F c 4 ( q f 4 q f 3 ) )
was fitted to the data. Here, the tanh function, with a constant K of 2000, was used to assure smooth transient over the zero velocity, F c 4 is the Coulomb friction force and F c 4 total is the total friction force (see Figure A2d). The Heaviside step functions
H f 1 = H ( q 4 q f 1 ) + H ( q f 2 q 4 ) 1 , H f 2 = H ( q 4 q f 2 ) , H f 3 = H ( q 4 q f 3 ) + H ( q f 4 q 4 ) 1 and H f 4 = H ( q 4 q f 4 )
were chosen to obtain the behaviour with the steps and plateaus occurring at the positions q f 1 , q f 2 , q f 3 and q f 4 .
Figure A2. Cylinder forces F i (kN) as a function of time (s): (a) Lift cylinder force F 2 ; (b) tilt cylinder force F 3 ; and (c) extension cylinder force F 4 . The designed extension friction force F c 4 total , where the Heaviside functions create the steps, is shown in (d).
Figure A2. Cylinder forces F i (kN) as a function of time (s): (a) Lift cylinder force F 2 ; (b) tilt cylinder force F 3 ; and (c) extension cylinder force F 4 . The designed extension friction force F c 4 total , where the Heaviside functions create the steps, is shown in (d).
Energies 10 00647 g014

Appendix C. Pump Flow Rate and Supply Pressure

The key pump flow rate and supply pressure modelling results and parametrisation of the test-bed are presented in the following. The pump flow rate model, as given by Equation (37), was parametrised with the cylinder dimensions, as given in Table 1. However,
(1)
the rod-side area A B 2 of the lift cylinder was set to zero since the cylinder’s rod-side chamber was connected to the tank and
(2)
the piston-side area A A 4 of the extension cylinder was set to A A 4 A B 4 because the fluid flow rate circulated from the metre-out to the metre-in side.
Moreover, a simple empirical polynomial model, which adjusted “tilt cylinder area” as a function of cylinder velocity when the cylinder load was over-running, was used for the anti-cavitation of the tilt cylinder.
After improving modelling accuracy by taking these measures, the modelled pump fluid flow rate matches the measured flow rate dynamics well (see the uppermost sub-plot of Figure A3). The minor modelling errors are caused by the assumption of the incompressible fluid and the steady-state errors produced by the empirical anti-cavitation model of the tilt cylinder when this model affects the predictions, for example, at 21 and 78 s. However, the modelling errors at these time instants would be significant without the use of the anti-cavitation model.
Figure A3. Pump flow rate Q p ( d m 3 / min ), cylinder velocities v i (m/s) and pump supply pressure p s (MPa) as a function of time (s).
Figure A3. Pump flow rate Q p ( d m 3 / min ), cylinder velocities v i (m/s) and pump supply pressure p s (MPa) as a function of time (s).
Energies 10 00647 g015
The supply pressure model of the pump, as given by Equations (40)–(41), was parametrised using
(1)
0.005 m/s for the constant ε of Equation (41) in the model verification, but ε = 0.002 m/s for the optimisation;
(2)
a zero tank pressure p T ;
(3)
constant flow coefficients and
(4)
pressure-compensated flow rate of the extension cylinder. Although the flow rate of the extension cylinder was not pressure-compensated by a dedicated valve like in the other cylinders, we could use the steady-state pressure model derived for the pressure-compensated differential case because the LS pump operated like a dedicated pressure compensator for the extension cylinder’s high-pressure level.
As can be seen in the lowermost sub-plot of Figure A3, the modelled supply pressure tracks the measured pressure reasonably well (compared to the results presented in [44]). The observed modelling errors are caused mainly by the omitted pressure dynamics, but certain discrepancies originate from the residual oscillation of the input cylinder velocities around the zero velocity, which the model mistakes for a driven velocity, despite the value of ε = 0.005 m/s. Since modelling errors originating from this residual oscillation do not affect the optimisation, we used the smaller value for the ε in the optimisation.

Appendix D. Energy Consumption Using the Second Initial Configuration of the Manipulator

The following are experimental energy consumptions from the real test-bed using the second initial configuration of the manipulator at the beginning of each path. This configuration was computed based on the middle point between the smallest and largest feasible extension cylinder lengths.
Figure A4. Horizontal path energy consumption replicated using middle feasible extension cylinder length at the beginning of the path.
Figure A4. Horizontal path energy consumption replicated using middle feasible extension cylinder length at the beginning of the path.
Energies 10 00647 g016
Figure A5. Vertical path energy consumption replicated using middle feasible extension cylinder length at the beginning of the path.
Figure A5. Vertical path energy consumption replicated using middle feasible extension cylinder length at the beginning of the path.
Energies 10 00647 g017
Figure A6. Half-cycle energy consumption replicated using middle feasible extension cylinder length at the beginning of the path.
Figure A6. Half-cycle energy consumption replicated using middle feasible extension cylinder length at the beginning of the path.
Energies 10 00647 g018

References

  1. Ortiz Morales, D.; Westerberg, S.; La Hera, P.X.; Mettin, U.; Freidovich, L.; Shiriaev, A.S. Increasing the level of automation in the forestry logging process with crane trajectory planning and control. J. Field Robot. 2014, 31, 343–363. [Google Scholar] [CrossRef]
  2. Westerberg, S. Semi-Automating Forestry Machines: Motion Planning, System Integration, and Human-Machine Interaction. Ph.D. Thesis, Umeå Universitet, Umeå, Sweden, 2014. [Google Scholar]
  3. Whitney, D.E. Resolved motion rate control of manipulators and human prostheses. IEEE Trans. Man Mach. Syst. 1969, 10, 47–53. [Google Scholar] [CrossRef]
  4. Liegeois, A. Automatic supervisory control of the configuration and behavior of multibody mechanisms. IEEE Trans. Syst. Man. Cybern. 1977, 7, 868–871. [Google Scholar]
  5. Hollerbach, J.M.; Suh, K. Redundancy resolution of manipulators through torque optimization. IEEE J. Robot. Autom. 1987, 3, 308–316. [Google Scholar] [CrossRef]
  6. Suh, K.; Hollerbach, J.M. Local versus global torque optimization of redundant manipulators. In Proceedings of the 1987 IEEE International Conference on on Robotics and Automation (ICRA), Raleigh, NC, USA, 31 March–3 April 1987; Volume 4, pp. 619–624. [Google Scholar]
  7. Chan, T.F.; Dubey, R.V. A weighted least-norm solution based scheme for avoiding joint limits for redundant joint manipulators. IEEE Trans. Robot. Autom. 1995, 11, 286–292. [Google Scholar] [CrossRef]
  8. Deo, A.; Walker, I. Minimum effort inverse kinematics for redundant manipulators. IEEE Trans. Robot. Autom. 1997, 13, 767–775. [Google Scholar]
  9. Flacco, F.; de Luca, A.; Khatib, O. Control of redundant robots under hard joint constraints: Saturation in the null space. IEEE Trans. Robot. 2015, 31, 637–654. [Google Scholar] [CrossRef]
  10. Beiner, L.; Mattila, J. An improved pseudoinverse solution for redundant hydraulic manipulators. Robotica 1999, 17, 173–179. [Google Scholar] [CrossRef]
  11. Mattila, J.; Koivumaki, J.; Caldwell, D.; Semini, C. A Survey on Control of Hydraulic Robotic Manipulators with Projection to Future Trends. IEEE/ASME Trans. Mechatron. 2017, 31, 637–654. [Google Scholar] [CrossRef]
  12. Mettin, U.; Westerberg, S.; Shiriaev, A.S.; La Hera, P.X. Analysis of human-operated motions and trajectory replanning for kinematically redundant manipulators. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), St. Louis, MO, USA, 10–15 October 2009; pp. 795–800. [Google Scholar]
  13. Löfgren, B. Kinematic Control of Redundant Knuckle Booms with Automatic Path Following Functions. Ph.D. Thesis, Royal Institute of Technology (KTH), Stockholm, Sweden, 2009. [Google Scholar]
  14. Vukobratovic, M.; Kircanski, M. A dynamic approach to nominal trajectory synthesis for redundant manipulators. IEEE Trans. Syst. Man Cybern. 1984, SMC-14, 580–586. [Google Scholar] [CrossRef]
  15. Hirakawa, A.R.; Kawamura, A. Trajectory planning of redundant manipulators for minimum energy consumption without matrix inversion. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Albuquerque, NM, USA, 25 April 1997; Volume 3, pp. 2415–2420. [Google Scholar]
  16. Vael, G.E.; Achten, P.A.; Fu, Z. The Innas Hydraulic Transformer—The Key to the Hydrostatic Common Pressure Rail; Technical Report; Society of Automotive Engineering, Inc. (SAE): Warrendale, PA, USA, 2000. [Google Scholar]
  17. Linjama, M.; Vihtanen, H.; Sipola, A.; Vilenius, M. Secondary controlled multi-chamber hydraulic cylinder. In Proceedings of the 11th Scandinavian International Conference on Fluid Power (SICFP), Linköping, Sweden, 2–4 June 2009. [Google Scholar]
  18. Xue, Y.; Yang, J.; Shang, J.; Xie, H. Design and optimization of a new kind of hydraulic cylinder for mobile robots. Proc. Inst. Mech. Eng. Part C J. Mech. Eng. Sci. 2015. [Google Scholar] [CrossRef]
  19. Choi, M.H. Redundancy resolution by minimization of joint disturbance torque for independent joint controlled manipulators. In Proceedings of the IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM), Atlanta, GA, USA, 19–23 September 1999; pp. 392–397. [Google Scholar]
  20. Flacco, F.; De Luca, A.; Khatib, O. Motion control of redundant robots under joint constraints: Saturation in the null space. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Saint Paul, MN, USA, 14–18 May 2012; pp. 285–292. [Google Scholar]
  21. Nurmi, J.; Mattila, J. Global energy-optimised redundancy resolution in hydraulic manipulators using dynamic programming. Autom. Constr. 2017, 73, 120–134. [Google Scholar] [CrossRef]
  22. Ross, I.M.; Karpenko, M. A review of pseudospectral optimal control: From theory to flight. Annu. Rev. Control 2012, 36, 182–197. [Google Scholar]
  23. Krus, P. On Load Sensing Fluid Power Systems: With Special Reference to Dynamic Properties and Control Aspects. Ph.D. Thesis, Linköping University, Linköping, Sweden, 1988. [Google Scholar]
  24. Wu, D.; Burton, R.; Schoenau, G.; Bitner, D. Establishing operating points for a linearized model of a load sensing system. Int. J. Fluid Power 2002, 3, 47–54. [Google Scholar] [CrossRef]
  25. Jayaraman, G.P.; Lunzman, S.V. Modeling and analysis of an electronic load sensing pump. In Proceedings of the IEEE International Conference on Control Applications (CCA), Denver, CO, USA, 28–30 September 2011; pp. 82–87. [Google Scholar]
  26. BR-Pump-Data. Available online: https://tinyurl.com/#kzbbksj (accessed on 6 May 2017).
  27. Sciavicco, L.; Siciliano, B. Modelling and control of robot manipulators; Springer Science & Business Media: London, UK, 2000. [Google Scholar]
  28. Armstrong-Hélouvry, B.; Dupont, P.; de Wit, C.C. A survey of models, analysis tools and compensation methods for the control of machines with friction. Automatica 1994, 30, 1083–1138. [Google Scholar] [CrossRef]
  29. Merritt, H.E. Hydraulic control Systems; John Wiley & Sons: New York, NY, USA, 1967. [Google Scholar]
  30. Aranovskiy, S.; Losenkov, A.; Vazquez, C. Position control of an industrial hydraulic system with a pressure compensator. In Proceedings of the 22nd Mediterranean Conference of Control and Automation (MED), Palermo, Italy, 16–19 June 2014; pp. 1329–1334. [Google Scholar]
  31. Kirk, D.E. Optimal Control Theory: An Introduction; Courier Dover Publications: Mineola, NY, USA, 2012. [Google Scholar]
  32. Sundstrom, O.; Guzzella, L. A generic dynamic programming Matlab function. In Proceedings of the IEEE Control Applications (CCA) & Intelligent Control (ISIC), St. Petersburg, Russia, 8–10 July 2009; pp. 1625–1630. [Google Scholar]
  33. Böhme, T.J.; Frank, B. Dynamic programming. In Hybrid Systems, Optimal Control and Hybrid Vehicles; Springer: Cham, Switzerland, 2017; pp. 199–214. [Google Scholar]
  34. van Berkel, K.; de Jager, B.; Hofman, T.; Steinbuch, M. Implementation of dynamic programming for optimal control problems with continuous states. IEEE Trans. Control Syst. Technol. 2015, 23, 1172–1179. [Google Scholar] [CrossRef]
  35. Shin, K.G.; McKay, N.D. A dynamic programming approach to trajectory planning of robotic manipulators. IEEE Trans. Autom. Control 1986, 31, 491–500. [Google Scholar] [CrossRef]
  36. Jazar, R.N. Theory of Applied Robotics: Kinematics, Dynamics, and Control; Springer: New York, NY, USA, 2010. [Google Scholar]
  37. Biagiotti, L.; Melchiorri, C. Trajectory Planning for Automatic Machines and Robots; Springer Science & Business Media: Berlin, Germany, 2008. [Google Scholar]
  38. ISO-9283. Manipulating Industrial Robots – Performance Criteria and Related Test Methods. 1998. [Google Scholar]
  39. Fortgang, J.D.; George, L.E.; Book, W.J. Practical implementation of a dead zone inverse on a hydraulic wrist. In Proceedings of the ASME International Mechanical Engineering Congress and Exposition (IMECE), New Orleans, LA, USA, 17–22 November 2002; pp. 149–155. [Google Scholar]
  40. Vazquez, C.; Aranovskiy, S.; Freidovich, L.; Fridman, L. Second order sliding mode control of a mobile hydraulic crane. In Proceedings of the IEEE 53rd Annual Conference on Decision and Control (CDC), Los Angeles, CA, USA, 15–17 December 2014; pp. 5530–5535. [Google Scholar]
  41. Bu, F.; Yao, B. Nonlinear adaptive robust control of hydraulic actuators regulated by proportional directional control valves with deadband and nonlinear flow gains. In Proceedings of the IEEE American Control Conference, Chicago, IL, USA, 28–30 June 2000; Volume 6, pp. 4129–4133. [Google Scholar]
  42. Koivumäki, J.; Mattila, J. High performance nonlinear motion/force controller design for redundant hydraulic construction crane automation. Autom. Constr. 2015, 51, 59–77. [Google Scholar] [CrossRef]
  43. Nielsen, B.K. Controller Development for a Separate Meter-in Separate Meter-Out Fluid Power Valve for Mobile Applications. Ph.D. Thesis, Institut for Energiteknik, Aalborg Universitet, Aalborg, Denmark, 2005. [Google Scholar]
  44. Pedersen, H.C.; Andersen, T.O.; Nielsen, B.K. Comparison of Methods for Modeling a Hydraulic Loader Crane With Flexible Translational Links. J. Dyn. Syst. Meas. Control 2015, 137, 101012. [Google Scholar] [CrossRef]
Figure 1. Kinematically redundant K70M hydraulic manipulator on Ponsse Caribou S10 forwarder, with log grapple end-effector.
Figure 1. Kinematically redundant K70M hydraulic manipulator on Ponsse Caribou S10 forwarder, with log grapple end-effector.
Energies 10 00647 g001
Figure 2. Mobile hydraulic spool valves of the test-bed manipulator: (a) Typical mobile hydraulic spool, used with the base, lift and tilt cylinders; and (b) differential spool (see position on the left) used with the extension cylinder.
Figure 2. Mobile hydraulic spool valves of the test-bed manipulator: (a) Typical mobile hydraulic spool, used with the base, lift and tilt cylinders; and (b) differential spool (see position on the left) used with the extension cylinder.
Energies 10 00647 g002
Figure 3. Hydraulic systems of the test-bed manipulator: (a) Conventional load-sensing system; and (b) electro-hydraulic constant-pressure system.
Figure 3. Hydraulic systems of the test-bed manipulator: (a) Conventional load-sensing system; and (b) electro-hydraulic constant-pressure system.
Energies 10 00647 g003
Figure 4. Joint encoders installed at the principal joints of the hydraulic manipulator: (a) Base angle ( q 1 ) encoder; (b) lift angle ( q 2 ) encoder; (c) tilt angle ( q 3 ) encoder; and (d) extension length ( q 4 ) encoder.
Figure 4. Joint encoders installed at the principal joints of the hydraulic manipulator: (a) Base angle ( q 1 ) encoder; (b) lift angle ( q 2 ) encoder; (c) tilt angle ( q 3 ) encoder; and (d) extension length ( q 4 ) encoder.
Energies 10 00647 g004
Figure 5. 4-DOF kinematically redundant hydraulic manipulator, with coordinate frames attached to the links based on the classical Denavit-Hartenberg convention.
Figure 5. 4-DOF kinematically redundant hydraulic manipulator, with coordinate frames attached to the links based on the classical Denavit-Hartenberg convention.
Energies 10 00647 g005
Figure 6. Theoretical reachable workspaces of the K70M hydraulic manipulator in this vertical plane. Reachable workspaces with maximum ( q 4 = 3.7 m) and minimum extension ( q 4 = 0 m) have been presented.
Figure 6. Theoretical reachable workspaces of the K70M hydraulic manipulator in this vertical plane. Reachable workspaces with maximum ( q 4 = 3.7 m) and minimum extension ( q 4 = 0 m) have been presented.
Energies 10 00647 g006
Figure 7. Rack-and-pinion mechanism at the test-bed manipulator’s base controlled using pressure- compensated proportional valve.
Figure 7. Rack-and-pinion mechanism at the test-bed manipulator’s base controlled using pressure- compensated proportional valve.
Energies 10 00647 g007
Figure 8. Joint actuation mechanisms of the test-bed manipulator: (a) Lift joint and associated variables; and (b) tilt joint and associated variables, with a close-up.
Figure 8. Joint actuation mechanisms of the test-bed manipulator: (a) Lift joint and associated variables; and (b) tilt joint and associated variables, with a close-up.
Energies 10 00647 g008
Figure 9. Test paths: (a) Horizontal and vertical paths; and (b) return half of log-loading cycle.
Figure 9. Test paths: (a) Horizontal and vertical paths; and (b) return half of log-loading cycle.
Energies 10 00647 g009
Figure 10. Horizontal path: (a) Experimental constant-pressure and load-sensing system energy consumptions (smallest feasible extension cylinder length at the initial configuration); (b) load-sensing system: energy-optimal DP (LS) joint trajectories (―) and controller tracking performance (●). Sub-optimal P-inv. (j.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001); and (c) Constant-pressure system: energy-optimal DIDO (CP) joint trajectories (―) and controller tracking performance (●). Sub-optimal P-inv. (a.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001).
Figure 10. Horizontal path: (a) Experimental constant-pressure and load-sensing system energy consumptions (smallest feasible extension cylinder length at the initial configuration); (b) load-sensing system: energy-optimal DP (LS) joint trajectories (―) and controller tracking performance (●). Sub-optimal P-inv. (j.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001); and (c) Constant-pressure system: energy-optimal DIDO (CP) joint trajectories (―) and controller tracking performance (●). Sub-optimal P-inv. (a.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001).
Energies 10 00647 g010
Figure 11. Vertical path: (a) Experimental constant-pressure and load-sensing system energy consumptions (smallest feasible extension cylinder length at the initial configuration); (b) load-sensing system: energy-optimal DIDO (CP) joint trajectories (―) and controller tracking performance (●). Sub-optimal DP (A. En.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001); and (c) constant-pressure system: energy-optimal DIDO (LS) joint trajectories (―) and controller tracking performance (●). Sub-optimal P-inv. (a.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001).
Figure 11. Vertical path: (a) Experimental constant-pressure and load-sensing system energy consumptions (smallest feasible extension cylinder length at the initial configuration); (b) load-sensing system: energy-optimal DIDO (CP) joint trajectories (―) and controller tracking performance (●). Sub-optimal DP (A. En.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001); and (c) constant-pressure system: energy-optimal DIDO (LS) joint trajectories (―) and controller tracking performance (●). Sub-optimal P-inv. (a.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001).
Energies 10 00647 g011aEnergies 10 00647 g011b
Figure 12. Half-cycle: (a) Experimental constant-pressure and load-sensing system energy consumptions (smallest feasible extension cylinder length at the initial configuration); (b) load-sensing system: energy-optimal DP (LS) joint trajectories (―) and controller tracking performance (●). Sub-optimal P-inv. (a.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001); and (c) constant-pressure system: energy-optimal DP (CP) joint trajectories (―) and controller tracking performance (●). Sub-optimal P-inv. (j.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001).
Figure 12. Half-cycle: (a) Experimental constant-pressure and load-sensing system energy consumptions (smallest feasible extension cylinder length at the initial configuration); (b) load-sensing system: energy-optimal DP (LS) joint trajectories (―) and controller tracking performance (●). Sub-optimal P-inv. (a.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001); and (c) constant-pressure system: energy-optimal DP (CP) joint trajectories (―) and controller tracking performance (●). Sub-optimal P-inv. (j.) joint trajectories (– –) and controller tracking performance ( Energies 10 00647 i001).
Energies 10 00647 g012
Table 1. Hydraulic cylinder dimensions of the test-bed manipulator.
Table 1. Hydraulic cylinder dimensions of the test-bed manipulator.
i A A i / A B i − Stroke [mm]Explanation
1 2 × 115 / 115 720 Base cylinders
2 120 / 70 610 Lift cylinder
3 115 / 60 725 Tilt cylinder
4 70 / 45 1850 Extension cylinder
Table 2. Denavit-Hartenberg parameters of the 4-DOF hydraulic manipulator.
Table 2. Denavit-Hartenberg parameters of the 4-DOF hydraulic manipulator.
Frame No. a i [ m ] α i [ rad ] d i [ m ] θ i [ rad ]
1 o x = 0.208 π / 2 o y = 1.605 q 1
2 L 1 = 3.504 00 q 2
3 L 2 = 0.376 π / 2 0 q 3 + π / 2
40 π / 2 L 3 + q 4 = 2.13 + q 4 0
Table 3. Actuator/joint limits of the test-bed manipulator.
Table 3. Actuator/joint limits of the test-bed manipulator.
iJoint Pos.Cyl. Vel. [m/s]Cyl. Acc. [m 2 /s]
1 [ π , π ] rad [ 0.10 , 0.10 ] [ 0.4 , 0.4 ]
2 [ 0.425 , 1.097 ] rad [ 0.15 , 0.15 ] [ 0.4 , 0.4 ]
3 [ 2.75 , 0.25 ] rad [ 0.15 , 0.15 ] [ 0.4 , 0.4 ]
4 [ 0 , 2 × 1.85 ] m [ 0.40 , 0.40 ] [ 0.4 , 0.4 ]
Table 4. Maximum end-effector path tracking errors in each redundancy resolution computed according to ISO 9283 standard [38].
Table 4. Maximum end-effector path tracking errors in each redundancy resolution computed according to ISO 9283 standard [38].
PathSolutionTrack. Err. (m)
Load-Sensing SystemConstant-Pressure System
HorizontalDP (CP)0.0880.070
DP (LS)0.0760.073
DP (A. En.)0.0640.064
DP (ext.)0.1460.140
P-inv. (a.)0.1270.069
P-inv. (j.)0.0570.052
DIDO (CP)0.0640.041
DIDO (LS)0.0630.049
VerticalDP (CP)0.0980.091
DP (LS)0.0930.087
DP (A. En.)0.0760.085
DP (ext.)0.0850.086
P-inv. (a.)0.1080.095
P-inv. (j.)0.0980.101
DIDO (CP)0.0770.080
DIDO (LS)0.0790.081
Half-cycleDP (CP)0.3460.129
DP (LS)0.2650.117
DP (A. En.)0.2320.111
DP (ext.)0.2100.155
P-inv. (a.)0.2000.219
P-inv. (j.)0.3430.207
DIDO (CP)0.2770.148
DIDO (LS)0.2450.179

Share and Cite

MDPI and ACS Style

Nurmi, J.; Mattila, J. Global Energy-Optimal Redundancy Resolution of Hydraulic Manipulators: Experimental Results for a Forestry Manipulator. Energies 2017, 10, 647. https://doi.org/10.3390/en10050647

AMA Style

Nurmi J, Mattila J. Global Energy-Optimal Redundancy Resolution of Hydraulic Manipulators: Experimental Results for a Forestry Manipulator. Energies. 2017; 10(5):647. https://doi.org/10.3390/en10050647

Chicago/Turabian Style

Nurmi, Jarmo, and Jouni Mattila. 2017. "Global Energy-Optimal Redundancy Resolution of Hydraulic Manipulators: Experimental Results for a Forestry Manipulator" Energies 10, no. 5: 647. https://doi.org/10.3390/en10050647

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop