**1. Introduction**

Shake table testing constitutes a widespread method of laboratory vibration testing due to its intrinsic ability of capturing dynamic behavior of the structure under test (SuT) [1]. Despite the fact that this structural testing approach originated within the Earthquake Engineering field, it is commonly employed nowadays in the Automotive, Railway and Aerospace industries, on a complete system or component basis, both for homologation and research purposes [2,3].

These testing facilities reproduce a controlled motion in a very stiff platform, onto which the SuT is installed, in one or more degrees of freedom (DoF), depending on the particular geometric configuration of the actuators that drive the table. Target motion is frequently defined in terms of acceleration time histories. These systems are very often powered by hydraulic servoactuators owing to their high performances in terms of stroke, velocity, specific force and frequency range. Actuators' rod kinematics is governed by high performance servovalves. Normally, advanced features, such as

hydraulic rod bearings, close-coupled accumulators and adjustable backlash swivels, are equipped in actuators to enhance their performance and controllability.

Nevertheless, the use of hydraulic actuation systems leads to a challenging associated motion control problem. This fact is due to (i) the inherent non-linearity associated to hydraulic components, (ii) the low resonant frequency associated to oil column [4], usually falling within the operation frequency range, (iii) the high frequency range of the target acceleration time histories due to scaling issues [5], and (iv) the tight tolerances allowed for acceleration tracking.

Control approaches employed in shake table testing fall within two main groups, i.e., time domain methods and frequency domain methods. Useful reviews of shake table control algorithms can be found in [4,6]. Time domain methods range from Proportional Integral Derivative (PID) controllers, with constant or variable control gains [7], to sophisticated Model Based Control (MBC) architectures, which make use of a feedforward term which models the (inverse) dynamics between the control order received by the servovalve and the resultant controlled kinematic variable [8–13]. Repetitive control approaches are also used in shake table control when simple oscillatory waveforms are to be reproduced [14,15]. Other remarkable examples of time domain methods are the Three Variable Control (TVC) algorithm which includes feedback and feedforward control loops for displacement, velocity and acceleration [16,17] and the Minimal Control Synthesis (MCS) algorithm, which aims at matching actual system response with that of a reference system [18,19]. Figure 1 shows a block diagram describing a generic time domain control architecture for shake tables; the output of the feedforward controller *uFF*, which is calculated from the desired acceleration, *are f* , is added to the output of the feedback controller, *uFB*, to yield the total voltage to be injected into the servovalve *uSV*. The feedback controller in this example calculates its control order accounting for the actual values of table displacement, *xt*, and acceleration, .. *xt*.

**Figure 1.** Generic time domain control architecture for shake table.

Frequency domain methods, on the other hand, are iterative in nature and constitute the industry standard for vibration tests [4]. This approach relies on identifying, at a first stage, the Frequency Response Function (FRF) which relates the resultant acceleration measured at the control point to the control order sent to the servovalve. For this purpose, several blocks of excitation signal are output by the controller while simultaneously acquiring system response. Excitation and output blocks are transformed into frequency domain by means of Fast Fourier Transform (FFT) and the FRF is estimated through an averaging process. Later on, this FRF is inverted to obtain the Impedance Function (IF), which is multiplied by the required output of the system, transformed into frequency domain, therefore yielding an initial estimate of the drive signal, *d*. The worked out drive must, of course, be transformed back into time domain prior to being injected into the system; this is accomplished by means of an Inverse Fast Fourier Transform (IFFT) process. This initially obtained drive block is refined, usually at a low level testing stage, by an iterative scheme, which accounts for error in prior iteration, *e*, and may update the IF, until a satisfactory control order is found [4,20]. When frequency domain methods are used in servohydraulic testing systems, the identification and iterative schemes are implemented in

an Outer Control Loop (OCL) while a faster Inner Control Loop (ICL) directly commands actuator servovalve. This ILC is usually based on a displacement PID but may also include advanced features such as TVC or differential pressure, Δ*P*, feedback [4,6]. The FRF and IF identification procedure employed in this family of methods does not specifically account for non-linearities present in hydraulic actuation system and therefore obtains a FRF corresponding to a linearization around a working point. This circumstance may lead to a high number of iterations to obtain a system response within allowed limits. Figure 2 shows a generic block diagram describing frequency domain methods for shake tables.

**Figure 2.** Generic frequency domain control architecture for shake table.

In this paper, a mixed frequency-time approach for a one horizontal DoF shake table is presented. The suggested methodology is based on the identification of an FRF-IF pair relating the time derivative of the pressure force exerted on actuator's rod to the acceleration measured at control point, is presented. The IF obtained in this way, allows for the synthesis of a target pressure force time derivative drive, that can be directly imposed on cylinder piston rod thanks to a feedback linearization scheme, which approximately cancels out non-linearities present in hydraulic actuation system. The presented procedure requires an initial system's FRF-IF identification stage; however, iterations in test mode are not needed and the non-linearities associated to hydraulic system are excluded from the control loop, having to deal only with those associated to SuT behavior. System usability and tracking performance are thus improved with respect to those of traditional iterative methods. A parallel TVC controller, which accounts for model imperfections and external disturbances, completes the abovementioned architecture and represents the time domain component of the suggested control method. The effectiveness of the proposed procedure has been assessed by means of numerical simulations carried out in electrical noise free and contaminated scenarios and compared to that of the classical iterative schemes traditionally used for shake table control.

The remainder of this paper is organized as follows. Section 2 describes the non-linear model implemented to assess the potential performance of the proposed methodology. Section 3 covers in detail the suggested methodology explaining the implemented feedback linearization and servovalve dynamics inversion algorithms (Section 3.1), the IF and hydraulic parameters identification processes (Section 3.2), the drive calculation procedure (Section 3.3) and the TVC controller (Section 3.4). Section 4 presents the simulation results obtained for a random acceleration target waveform in both noise-free and noise-contaminated cases and a performance comparison between the proposed and the classical iterative control approaches. Finally, Section 5 outlines the main conclusions drawn from this research.

#### **2. Shake Table System Modeling**

This work is focused on a one horizontal DoF shake table system (see Figure 3). Its main components are the table where the SuT is installed, the linear guidance system (based on low friction roller bearings and linear rails), the hydraulic servoactuator (equipped with hydrostatic bearings and adjustable backlash swivels), the servovalve installed on actuator's manifold and the servoactuator reaction structure. A shear building with two identical stories was selected as the SuT selected for the numerical experiments.

**Figure 3.** Shake table system. Courtesy of Vzero Engineering Solutions, SL.

A model of the previously mentioned elements has been implemented to assess the goodness of the proposed control methodology, in what follows, this model is described in detail. Figure 4 shows a scheme of the components of the system which have been modelled, along with the sign criteria adopted.

**Figure 4.** Scheme of the shake table system modeled elements.

The motion of the spool of servo-valve's main stage has been modelled according to a first order linear system [21]:

$$\mathcal{L}\_{sp}\mu\_{\mathfrak{sv}} = \tau\_{sp}\dot{y}\_{sp} + y\_{\mathfrak{sp}\_{\prime}} \tag{1}$$

where *usv* is the voltage injected into the servovalve, *ysp* is servovalve's main stage spool motion, τ*sp* is the time constant of the system and *Csp* is the spool gain.

Flow through servovalve ports has been computed assuming a critically lapped spool with symmetrical and matched orifices [22] and a linear characteristic [23] as shown in the next equations:

$$Q\_1 = \begin{cases} \mathcal{C}\_d K\_{sp} y\_{sp} \text{sgn}(P\_s - P\_1) \sqrt{2|P\_s - P\_1|/\rho} ; \ y\_{sp} \ge 0\\ \mathcal{C}\_d K\_{sp} y\_{sp} \text{sgn}(P\_1 - P\_s) \sqrt{2|P\_1 - P\_R|/\rho} ; \ y\_{sp} < 0 \end{cases} \tag{2}$$

$$\mathcal{Q}\_{2} = \begin{cases} \mathcal{C}\_{d}K\_{\text{sp}}y\_{\text{sp}}\text{sgn}(P\_{2} - P\_{R})\sqrt{2|P\_{2} - P\_{R}|/\rho}; \; y\_{\text{sp}} \ge 0\\ \mathcal{C}\_{d}K\_{\text{sp}}y\_{\text{sp}}\text{sgn}(P\_{S} - P\_{2})\sqrt{2|P\_{S} - P\_{2}|/\rho}; \; y\_{\text{sp}} < 0 \end{cases} \tag{3}$$

where *Q*<sup>1</sup> and *Q*<sup>2</sup> are the volumetric flow rates across ports 1 and 2 of servovalve, *P*<sup>1</sup> and *P*<sup>2</sup> are the pressures at chambers 1 and 2 of the servoactuator, *PS* and *PR* are supply and return pressures at servoactuator's manifold, *Cd* is the discharge coefficient of inlet orifices to chambers, *Ksp* is the passage area to spool displacement ratio, ρ is hydraulic fluid density and *sgn* represents the sign function.

The evolution of pressures at actuator's chambers has been modelled making use of the Continuity Equation, defining an average mass density per chamber and utilizing the Bulk modulus definition [22]:

$$\dot{\mathbf{P}}\_{1} \left(\mathbf{v}\_{01} + A\_{\text{uv}} \mathbf{x}\_{p}\right) \dot{\mathbf{P}}\_{1}/\beta\_{1} + A\_{\text{uv}} \dot{\mathbf{x}}\_{p} = \left. Q\_{1} - Q\_{1-2} - Q\_{1\text{B}} \right. \tag{4}$$

$$(v\_{02} - A\_w \mathbf{x}\_p) \dot{\mathbf{P}}\_2 / \beta\_2 - A\_w \dot{\mathbf{x}}\_p = -Q\_2 + Q\_{1-2} - Q\_{2B} \tag{5}$$

where *xp* is rod displacement, *Q*1−<sup>2</sup> is the leakage flow between chambers through piston-sleeve annular passage area, *Q*1*<sup>B</sup>* and *Q*2*<sup>B</sup>* are leakage flows between each chamber and its respective hydrostatic bearing, *Aw* is actuator's effective area, *v*<sup>02</sup> and *v*<sup>01</sup> are the initial volumes of chambers and β<sup>1</sup> and β<sup>2</sup> are the equivalent Bulk moduli of each compartment. Overdot notation has been employed to denote time differentiation. Leakage flows are normally assumed to be laminar and their corresponding flow rate is therefore modeled using expressions proportional to the difference of pressures seen by the fluid:

$$Q\_{1-2} = \mathcal{C}\_{l12} (P\_1 - P\_2)\_\prime \tag{6}$$

$$Q\_{i\mathcal{B}} = \mathcal{C}\_{i\mathcal{B}} (P\_i - P\_{\mathcal{B}i})\_\prime \tag{7}$$

where *Cl*<sup>12</sup> and *CiB* represent, respectively, the across-chambers and chamber-bearing leakage coefficients, *PBi* is the operating pressure of each chamber bearing and *i* stands for the related actuator chamber. Nevertheless, due to their reduced values, all leakage flows have been neglected in the ensuing analysis.

The resultant force, *Ft*, exerted on the shake table (including the piston rod in it) can be expressed as:

$$F\_1 = (P\_1 - P\_2)A\_w - F\_{fr, p\prime} \tag{8}$$

in which *Ff r*,*<sup>p</sup>* represents friction force between piston and cylinder sleeve and rod and bearings. The term (*P*<sup>1</sup> − *P*2)*Aw* constitutes the pressure force. Its time derivative, ( . *<sup>P</sup>*<sup>1</sup> <sup>−</sup> . *<sup>P</sup>*2)*Aw* <sup>=</sup> *Aw*<sup>Δ</sup> . *P*, will be later exhaustively referred to. Friction force has been considered viscous and equal to *Cp* . *xp*, where *xp* represents actuator's rod displacement and *Cp* its damping coefficient. This is a common practice when modelling low friction, high performance servoactuators.

Finally, the motion of the shake table and SuT has been evaluated by:

$$
\begin{bmatrix} M\_l + m\_p & 0 & 0 \\ 0 & M\_z & 0 \\ 0 & 0 & M\_s \end{bmatrix} \begin{pmatrix} \ddot{\mathbf{x}}\_l \\ \ddot{\mathbf{x}}\_{i1} \\ \ddot{\mathbf{x}}\_{i2} \end{pmatrix} + \begin{bmatrix} \mathbf{C}\_{11} & \mathbf{C}\_{12} & \mathbf{C}\_{13} \\ \mathbf{C}\_{21} & \mathbf{C}\_{22} & \mathbf{C}\_{23} \\ \mathbf{C}\_{31} & \mathbf{C}\_{32} & \mathbf{C}\_{33} \end{bmatrix} \begin{pmatrix} \dot{\mathbf{x}}\_l \\ \dot{\mathbf{x}}\_{i1} \\ \dot{\mathbf{x}}\_{i2} \end{pmatrix} + \begin{bmatrix} \mathbf{K} & -\mathbf{K} & \mathbf{0} \\ -\mathbf{K} & 2\mathbf{K} & -\mathbf{K} \\ \mathbf{0} & -\mathbf{K} & \mathbf{K} \end{bmatrix} \begin{pmatrix} \mathbf{x}\_l \\ \mathbf{x}\_{i1} \\ \mathbf{x}\_{i2} \end{pmatrix} = \begin{pmatrix} F\_l - F\_{fc,\mathcal{G}} \\ \mathbf{0} \\ \mathbf{0} \end{pmatrix} \tag{9}
$$

where *xt* is table displacement, considered throughout the subsequent analysis identical to rod displacement, *xp*, *xs*<sup>1</sup> and *xs*<sup>2</sup> are the displacements of shear building stories, *Ff r*,*<sup>g</sup>* is the friction force between linear bearings and rails, *mp* is piston rod mass, *Ms* is the mass of each of the stories and *K* is the stiffness of the pillars of each story. The components of the damping matrix, *Cij*, have been calculated starting from a modal damping matrix in which a damping ratio ζ = 5% has been considered for all the flexible vibration modes. Later on, the damping matrix expressed in problem coordinates has been calculated making use of the change of coordinates matrix formed by the mass-normalized eigenvectors of the system.

The electrical noise affecting sensor signals and servovalve input has been modelled by means of gaussian waveforms characterized by their rms voltage value, *un*,*rms*= 2.8 <sup>×</sup> <sup>10</sup>−<sup>3</sup> V rms, which leads to a noise voltage peak value of *un*,*peak* = 0.01 V (see Section 3.2.1 for considerations on the noise peak value). In order to transform electrical noise into physical quantities influencing model behavior, the value of the noise voltage has been multiplied by the appropriate sensor gains: *gdis*, *gacc*, *gpress*, and *gsp* for the acceleration, displacement, chamber pressures and servovalve spool position sensors respectively and *gsv* for the servovalve input voltage.

Delays in sensor readings have been neglected throughout this paper due to the fact that the frequency range of the sensors commonly used in shake table facilities is sufficiently broader than the frequency range of interest, which in the case under study is up to 100 Hz.

A fixed step solver has been used to perform simulations. A time step, <sup>Δ</sup>*t*, of 1.0 <sup>×</sup> <sup>10</sup>−<sup>4</sup> s has been used for all the simulations in this work. This time step has been selected taking into consideration that it is a loop rate achievable with commercial-off-the-shelf real-time controllers based on Field Programmable Gate Array (FPGA) technology. Finally, Table 1 lists the values of the employed in numerical simulations.


**Table 1.** Values of parameters used in the considered model.

<sup>1</sup> *i* stands for servoactuator chamber number.
