1 Introduction

Reluctance actuators are electromechanical devices that feature high force density, good efficiency, and high tolerance to faults. These features make these actuators a promising choice for high-speed high-precision applications [1] such as antivibration systems [2] or equipment for the semiconductor manufacturing industry [3], among others. On the other hand, they are also the ideal actuation system for commercial switching devices that require a modest performance [4] because of their compactness, low cost, and low energy consumption. In particular, electromechanical relays and solenoid valves are devices whose operation is based on the force created by a small single-coil reluctance actuator with a limited range of motion.

Essentially, a single-coil reluctance actuator is an electromagnet with a specifically designed moving component commonly known as armature (see Fig. 1). When the coil is energized, the magnetic force that appears in the air gap pulls the armature towards the yoke. Since this force is always attractive, the opposing force is generally produced by a spring. Commonly, commercial switching devices are activated using a constant voltage. This policy, however, leads to a continuously accelerated motion which ultimately results in impacts, bouncing, mechanical wear, and a clicking noise that may be undesirable in some applications.

Fig. 1
figure 1

Diagram of a single-coil reluctance actuator

Several control methods have been already applied to improve the performance of electromechanical switching devices. Starting with the early works of the 1990s [5,6,7], the literature contains proposals based on sliding-mode control [7,8,9], optimal open-loop control [10, 11], or iterative techniques [12, 13], among others. The common goal of all these works is to achieve soft landing, i.e., a controlled movement by which the armature reaches the final position with zero velocity [14], thus avoiding impacts and bouncing. The benefits of this strategy are evident: the devices would suffer less degradation and therefore have a longer service life, and they would also be quieter. The solution, however, is far from obvious, as these actuators exhibit hybrid, nonlinear and very fast dynamics.

In this work, a new control approach to achieve soft landing in electromechanical switching devices is presented. The main contribution is the joint design of the feedback controller and the soft-landing trajectory, which includes a pre-movement stage to deal with the hybrid dynamics of the system. The controller is based on feedback linearization, a common approach for nonlinear systems that has been successfully applied to single-coil [15], double-coil [16], and permanent-magnet [17] electromagnetic actuators. Despite these works, there is still scope of improvement in the design of the reference trajectory and its effects on the controller performance. In the paper, a hybrid dynamical model of the system including magnetic saturation, eddy currents, flux fringing and the bouncing phenomenon is firstly presented. Then, the equations of the control law are derived and the design method for the reference trajectory, based on optimal control theory, is described. Finally, the proposal is validated through several simulations, in which we compare both the controller and the trajectory designs with other alternatives from the literature. It is assumed that measurements of all the state variables are available. State observers [18, 19] could be used to address the problem if only electrical measurements—voltage and current—are available.

2 System dynamics

A diagram of a reluctance actuator is represented in Fig. 2. This figure, which shows the coil, part of the core, and the air gap of a generic single-coil linear-motion actuator, will be used to explain the model presented in this section. The position of the armature is defined by the gap length, z, which is physically limited between \(z_\mathrm {min}\) and \(z_\mathrm {max}\), \(0 \le z_\mathrm {min} < z_\mathrm {max}\). The coil is wrapped around the iron core and has N turns. When it is supplied with power, the electrical current i that flows through the wire creates the magnetic flux \(\phi \) and the equivalent eddy current \(i_\mathrm {ec}\). Note that this diagram can be used to describe most geometric designs, such as E-core or plunger-type actuators.

Fig. 2
figure 2

Diagram of a single-coil linear-motion reluctance actuator. The sign convention adopted for i, \(\phi \), and \(i_\mathrm {ec}\) is indicated by arrows

2.1 Free motion dynamics

When the armature is moving between the two position boundaries, i.e., \(z_\mathrm {min}< z < z_\mathrm {max}\) the dynamics of the system can be described by a set of continuous nonlinear differential equations. Two fundamental equations describe the electromagnetic dynamics. Firstly, the electrical equation of the coil,

$$\begin{aligned} u = R\, i + N {\dot{\phi }}, \end{aligned}$$
(1)

where u is the voltage applied to the coil terminals—and input of the system—and R is the internal resistance. Recall that the magnetic flux is the integral of the flux density \({\mathbf {B}}\) on the cross section of the magnetic circuit.

$$\begin{aligned} \phi = \iint {\mathbf {B}}\cdot \mathrm {d}{\mathbf {s}} \end{aligned}$$
(2)

The second equation results from applying Ampère’s law on the surface \(\Sigma \) (see Fig. 2),

$$\begin{aligned} \oint _{\partial \Sigma } {\mathbf {H}} \cdot \mathrm {d} {\mathbf {l}} = \iint _\Sigma {\mathbf {J}} \cdot \mathrm {d} {\mathbf {s}}, \end{aligned}$$
(3)

where \({\mathbf {H}}\) is the magnetic field intensity, \({\mathbf {J}}\) is the current density, and \({\partial \Sigma }\) is the contour of \(\Sigma \), selected to match the main path of the flux. Assuming that the relation between the field intensity and the flux density can be described by means of the magnetic permeability \(\mu \) as \({\mathbf {H}} = {\mathbf {B}}/\mu \), the previous equation can be simplified [20] into

$$\begin{aligned} \phi \, {\mathcal {R}}(z,\phi ) = N\,i + i_\mathrm {ec}, \end{aligned}$$
(4)

where \({\mathcal {R}}(z,\phi )\) is the reluctance of the magnetic system, which is in general a function of the armature position and the magnetic flux. Several methodologies can be used to obtain such function, including numerical methods [2] and analytical expressions [21]. Without loss of generality, the reluctance of a single-coil actuator can be divided into two terms,

$$\begin{aligned} {\mathcal {R}}(z,\phi ) = {\mathcal {R}}_\mathrm {gap}(z) + {\mathcal {R}}_\mathrm {core}(\phi ), \end{aligned}$$
(5)

where \({\mathcal {R}}_\mathrm {gap}\) is the air gap component, which only depends on z, and \({\mathcal {R}}_\mathrm {core}\) is the iron core part, depending only on \(\phi \). In this paper, these two terms are modeled by means of the following analytical expressions,

$$\begin{aligned} {{\mathcal {R}}_\mathrm {gap}}(z)= & {} \dfrac{\dfrac{z}{\mu _0\,A_\mathrm {core}}}{1+ \dfrac{z}{\sqrt{A_\mathrm {core}}}\,\mathrm {log}\left( \dfrac{2\,l_\mathrm {w}}{z}\right) }, \end{aligned}$$
(6)
$$\begin{aligned} {\mathcal {R}}_\mathrm {core}(\phi )= & {} \frac{{{\mathcal {R}}_\mathrm {core}}_0}{1-\left| \phi \right| /\phi _\mathrm {sat}}, \end{aligned}$$
(7)

where \(A_\mathrm {core}\), \(l_\mathrm {w}\), \({{\mathcal {R}}_\mathrm {core}}_0\), and \(\phi _\mathrm {sat}\) are positive parameters and \(\mu _0\) is the magnetic permeability of vacuum. The air gap reluctance is based on the correction factor proposed by McLyman [22] in order to account for flux fringing effects. In addition, magnetic saturation is incorporated to the model by using the Fröhlich-Kennelly relation [21] in the expression of \({\mathcal {R}}_\mathrm {core}\).

In order to model the currents induced in the iron, it is assumed that the magnetic flux density is uniform across the core section. Under this assumption, the equivalent eddy current is proportional to the time derivative of the magnetic flux [3],

$$\begin{aligned} i_\mathrm {ec} = -k_\mathrm {ec} \,{\dot{\phi }}, \end{aligned}$$
(8)

where \(k_\mathrm {ec}>0\) depends on the electrical conductivity and the geometry of the core. As a result, the presented model includes most of the electromagnetic phenomena that may appear in reluctance actuators [3, 20], i.e., eddy currents, flux fringing, and magnetic saturation.

The armature motion is described by Newton’s second law,

$$\begin{aligned} m \, \ddot{z} = F_\mathrm {mag}(z,\phi ) - F(z,{\dot{z}}), \end{aligned}$$
(9)

where m is the armature mass, \(F_\mathrm {mag}(z,\phi )\) is the magnetic force that produces the motion, and \(F(z,{\dot{z}})\) describes the spring, friction, and gravity forces. The simplest approach to describe this latter force is to consider a linear spring-damper model,

$$\begin{aligned} F(z,{\dot{z}}) = k_\mathrm {s}\,z+c\,{\dot{z}} + F_0, \end{aligned}$$
(10)

where \(k_\mathrm {s}\) is the spring stiffness constant, c is the damping coefficient, and \(F_0\) accounts for gravity and the spring preload force. If necessary, more sophisticated models can be found in the literature [23] that could also be used. On the other hand, the magnetic force can be expressed in terms of the reluctance [21] as

$$\begin{aligned} F_\mathrm {mag}(z,\phi ) = -\frac{1}{2}\,\phi ^2 \,{\mathcal {R}}'_\mathrm {gap}(z), \end{aligned}$$
(11)

where

$$\begin{aligned} {\mathcal {R}}'_\mathrm {gap}(z) = \dfrac{\partial {\mathcal {R}}_\mathrm {gap}(z)}{\partial z} \end{aligned}$$
(12)

is in general a strictly positive function of z for all \(z \ge 0\). In particular, when \({\mathcal {R}}_\mathrm {gap}\) is modeled using (67), its partial derivative with respect to z is given by

$$\begin{aligned} {\mathcal {R}}'_\mathrm {gap}(z) =\dfrac{\dfrac{1}{\mu _0\,A_\mathrm {core}}\left( 1+\dfrac{z}{\sqrt{A_\mathrm {core}}}\right) }{\left( 1+ \dfrac{z}{\sqrt{A_\mathrm {core}}}\,\mathrm {log}\left( \dfrac{2\,l_\mathrm {w}}{z}\right) \right) ^2}. \end{aligned}$$
(13)

A third-order state-space model can then be obtained by combining all the previous equations. If the state is selected as

$$\begin{aligned} x = \left[ \begin{array}{ccc}z&{{v}}&\phi \end{array}\right] ^{\mathsf {T}}, \end{aligned}$$
(14)

where \({{v}}={\dot{z}}\) is the velocity of the armature, the explicit dynamical equations of the system are

$$\begin{aligned} {\dot{z}}&= \varphi _1(x) = {{v}}, \end{aligned}$$
(15)
$$\begin{aligned} \dot{{v}}&= \varphi _2(x) = -\dfrac{{\phi }^2}{2m}\,{\mathcal {R}}'_\mathrm {gap}(z) - \dfrac{F(z,{v})}{m}, \end{aligned}$$
(16)
$$\begin{aligned} {\dot{\phi }}&= \varphi _3(x,u) = -\dfrac{R\, \phi \, {\mathcal {R}}(z,\phi )}{N\,{k_N}} + \dfrac{u}{{k_N}}, \end{aligned}$$
(17)

where

$$\begin{aligned} {k_N} = N + \dfrac{R\,k_\mathrm {ec}}{N}. \end{aligned}$$
(18)

Assuming that \(\phi \) is bounded due to magnetic saturation, i.e., \(\phi \in \left( -\phi _\mathrm {sat},\,\phi _\mathrm {sat}\right) \), where \(\phi _\mathrm {sat}>0\) is the saturation flux, the previous dynamical equations are valid in the domain

$$\begin{aligned} D = \left[ z_\mathrm {min},\,z_\mathrm {max}\right] \times {\mathbb {R}} \times \left( -\phi _\mathrm {sat},\,\phi _\mathrm {sat}\right) . \end{aligned}$$
(19)

2.2 Dynamics of switching devices

Reluctance actuators used in high-precision applications [1] operate generally in the continuous regime. However, electromechanical switching devices are specifically designed to switch between \(z_\mathrm {min}\) and \(z_\mathrm {max}\). In that case, the constraints imposed by the position limits lead to hybrid dynamics, i.e., dynamics that combine both continuous and discrete events.

The dynamics of the system when considering these limits can be modeled by the hybrid automaton of Fig. 3. Each transition between dynamic modes is described by its corresponding guard condition (in blue) and reset map (in green), respectively before and after an arrow (\(\Rightarrow \)). The reset map is explicitly presented only for the velocity, which is the only state that may change during jumps. For those transitions that do not imply jumps, only the guard condition is shown. The value of the velocity after a jump is indicated by the use of the superscript \(+\). Functions \(\varphi _1(x)\), \(\varphi _2(x)\), and \(\varphi _3(x,u)\) are those in (15)–(17).

Fig. 3
figure 3

Hybrid automaton that models the dynamics of an electromechanical switching device

The operation of the automaton is as follows. If the armature is moving (Mode 2) and hits any of the limit positions with a low impact velocity (\(0\le |v |\le {v}_\varepsilon \)), the model jumps to the corresponding non-motion dynamic mode (Mode 1 or 3) and v is reset to zero. Then, when \(\varphi _2(x)\) has the right sign to start the movement, the automaton returns to the motion mode. If, on the other hand, the impact occurs with a greater kinetic energy (\( |v |> {v}_\varepsilon \)), the armature bounces as defined by the coefficient of restitution \(\gamma \). The threshold parameter \({v}_\varepsilon \) allows for controlling the level of detail of the bouncing phenomenon in simulation, ranging from \({v}_\varepsilon = 0\) for full bouncing to \({v}_\varepsilon = \infty \) for no bounces.

3 Design of the controller

As stated, the controller proposed in this work is based on exact feedback linearization. This section presents the design of the linearizing law and the tracking controller. For generalization purposes, no particular model of the force F or the reluctance \({\mathcal {R}}\) is considered in the design of the controller.

3.1 Linearizing law

The system (15)–(17) is a single-input affine dynamical system, i.e., it has the form

$$\begin{aligned} {\dot{x}} = f(x) + g(x)\,u, \end{aligned}$$
(20)

with \(x \in D\subset {\mathbb {R}}^3\) given by (14), domain D as defined in (19), and vector fields f and g equal to

$$\begin{aligned} f(x)= & {} \left[ \begin{array}{c} {{v}} \\ -\dfrac{{\phi }^2}{2m}\,{\mathcal {R}}'_\mathrm {gap}(z) - \dfrac{F(z,{v})}{m} \\ -\dfrac{R\, \phi \, {\mathcal {R}}(z,\phi )}{N\,{k_N}} \end{array}\right] , \end{aligned}$$
(21)
$$\begin{aligned} g(x)= & {} \left[ \begin{array}{c} 0 \\ 0 \\ 1/{k_N} \end{array}\right] . \end{aligned}$$
(22)

In order to be feedback linearizable, there must exist an output function \( h : D \rightarrow {\mathbb {R}}\) such that the system has relative degree three. That is, we must be able to find a function h that satisfies

$$\begin{aligned} {\mathcal {L}}_g \, h(x)&= \dfrac{1}{{k_N}}\,\dfrac{\partial h}{\partial \phi }(x) = 0, \end{aligned}$$
(23)
$$\begin{aligned} {\mathcal {L}}_g\,{\mathcal {L}}_f\, h(x)&= -\dfrac{\phi \,{\mathcal {R}}'_\mathrm {gap}(z)}{m\,{k_N}}\,\dfrac{\partial h}{\partial {{v}}}(x) = 0, \end{aligned}$$
(24)
$$\begin{aligned} {\mathcal {L}}_g\,{\mathcal {L}}_f^{2}\, h(x)&= -\dfrac{\phi \,{\mathcal {R}}'_\mathrm {gap}(z)}{m\,{k_N}}\,\dfrac{\partial h}{\partial z}(x) \ne 0, \end{aligned}$$
(25)

where \({\mathcal {L}}_f\) and \({\mathcal {L}}_g\) denote the Lie derivatives with respect to f and g, respectively, and \({\mathcal {L}}^2_{f}={\mathcal {L}}_{f}{\mathcal {L}}_{f}\).

Assuming that \({\mathcal {R}}'_\mathrm {gap}(z)\) is strictly positive for all \(z \in \left[ z_\mathrm {min},\,z_\mathrm {max}\right] \), two conclusions can be drawn from the previous expressions. Firstly, that the system cannot be feedback linearized when \(\phi =0\) because (25) is not satisfied in that case. And secondly, that the output function h must satisfy

$$\begin{aligned} \dfrac{\partial h}{\partial \phi }(x) = 0, \quad \dfrac{\partial h}{\partial {{v}}}(x) = 0, \quad \dfrac{\partial h}{\partial z}(x) \ne 0, \end{aligned}$$
(26)

i.e., it must depend only on z.

Since the variable to be controlled is in fact the position of the armature, z, let the output function h be simply selected as

$$\begin{aligned} y = h(x) = z. \end{aligned}$$
(27)

Note that, by simple inspection of the equations (15)–(17) it can be seen that z is indeed a flat output of the system. Firstly, if z and its derivatives are known, (16) constitutes a differential equation from which \(\phi \) can be obtained. Then, using (17), the input u of the system could also be calculated in terms of the position, velocity, acceleration, and jerk of the armature. Thus, all the time-dependent variables of the system can be parameterized in terms of z and its derivatives up to order three.

As a remark note that, using (27) as output function, the system satisfies the conditions (23)–(25) in the regions

$$\begin{aligned} D_0^+ =&\left\{ x\in D \mid \phi >0 \right\} , \end{aligned}$$
(28)
$$\begin{aligned} D_0^- =&\left\{ x\in D \mid \phi <0 \right\} , \end{aligned}$$
(29)

i.e., for all \(x \in D\) such that \(\phi \ne 0\). Thus, it is feedback linearizable in either \(D_0^+\) or \(D_0^-\). In this paper, \(D_0^+\) is arbitrarily chosen as the working domain.

The existence of an output function h that satisfies conditions (23)–(25) implies that the dynamics of the system can be expressed as

$$\begin{aligned} \dfrac{\mathrm {d}^3 z}{\mathrm {d} t^3} = {\mathcal {L}}_f^3\, h(x) + {\mathcal {L}}_g\,{\mathcal {L}}_f^{2}\, h(x)\, u, \end{aligned}$$
(30)

where \({\mathcal {L}}^3_{f}={\mathcal {L}}_{f}{\mathcal {L}}^2_{f}\). Besides, since \({\mathcal {L}}_g\,{\mathcal {L}}_f^{2}\, h(x) \ne 0\), it is possible to define a feedback linearizing law

$$\begin{aligned} u = \alpha (x) + \beta (x)\,w, \end{aligned}$$
(31)

where

$$\begin{aligned} \alpha (x) =&-\dfrac{{\mathcal {L}}_f^3\, h(x)}{{\mathcal {L}}_g\,{\mathcal {L}}_f^{2}\, h(x)},&\beta (x) =&\, \dfrac{1}{{\mathcal {L}}_g\,{\mathcal {L}}_f^{2}\, h(x)}, \end{aligned}$$
(32)

that transforms the system into a third-order integrator,

$$\begin{aligned} \dfrac{\mathrm {d}^3 z}{\mathrm {d} t^3} = w. \end{aligned}$$
(33)

Considering (21), (22), and (27), the functions \(\alpha \) and \(\beta \) of the linearizing control law are given by

$$\begin{aligned} \alpha (x) =&\, \dfrac{R\,\phi \,{\mathcal {R}}(z,\phi )}{N} -\dfrac{{k_N}\, {{v}}\,\phi \, {\mathcal {R}}''_\mathrm {gap}(z)}{2\,{\mathcal {R}}'_\mathrm {gap}(z)} \nonumber \\&-\dfrac{{k_N}\, F_z(z,{v}) \,{{v}}}{\phi \,{\mathcal {R}}'_\mathrm {gap}(z)} + \dfrac{{k_N}\,F_{v}(z,{v})\,\phi }{2\, m} \nonumber \\&+ \dfrac{ {k_N}\,F_{v}(z,{v})\,F(z,{v})}{m\,\phi \,{\mathcal {R}}'_\mathrm {gap}(z)} , \end{aligned}$$
(34)
$$\begin{aligned} \beta (x) =&-\dfrac{m\,{k_N}}{\phi \,{\mathcal {R}}'_\mathrm {gap}(z)}, \end{aligned}$$
(35)

where

$$\begin{aligned} {\mathcal {R}}''_\mathrm {gap}(z)= & {} \dfrac{\partial ^2 {\mathcal {R}}_\mathrm {gap}(z)}{\partial {z}^2}, \end{aligned}$$
(36)
$$\begin{aligned} F_z(z,{v})= & {} \dfrac{\partial F(z,{v})}{\partial {z}}, \quad F_{v}(z,{v}) = \dfrac{\partial F(z,{v})}{\partial {{v}}}. \end{aligned}$$
(37)

The feedback law (31) results in the LTI system (33), which can be expressed in Brunovsky canonical form, i.e.,

$$\begin{aligned} {\dot{\xi }} = A\,\xi + B\,w, \end{aligned}$$
(38)

where \(w \in {\mathbb {R}}\) is the input, \(\xi \) consists of the position, velocity, and acceleration of the armature,

$$\begin{aligned} \xi = \left[ \begin{array}{c@{}c@{}c} \xi _1&\xi _2&\xi _3 \end{array} \right] ^{\mathsf {T}} = \left[ \begin{array}{c@{}c@{}c} z&\dfrac{\mathrm {d} z}{\mathrm {d} t}&\dfrac{\mathrm {d}^{2} z}{\mathrm {d} t^{2}} \end{array} \right] ^{\mathsf {T}}, \end{aligned}$$
(39)

and the state and input matrices are

$$\begin{aligned} A&= \left[ \begin{array}{ccc} 0 &{} 1 &{} 0 \\ 0 &{} 0 &{} 1 \\ 0 &{} 0 &{} 0 \end{array}\right] ,&B&= \left[ \begin{array}{c} 0 \\ 0 \\ 1 \end{array}\right] . \end{aligned}$$
(40)

The linearizing state is related to the original state (14) by the change of coordinates

$$\begin{aligned} \xi = T(x) = \left[ \begin{array}{c} z \\ {{v}} \\ -\dfrac{{\phi }^2}{2m}\,{\mathcal {R}}'_\mathrm {gap}(z) - \dfrac{F(z,{v})}{m} \end{array}\right] . \end{aligned}$$
(41)

Furthermore, considering that \(x \in D_0^+\), the inverse transformation is given by

$$\begin{aligned} x = T^{-1}(\xi ) = \left[ \begin{array}{c} \xi _1 \\ \xi _2 \\ \sqrt{\dfrac{-2\big (m\,\xi _3 + F(\xi _1,\xi _2)\big )}{{\mathcal {R}}'_\mathrm {gap}(\xi _1)}} \end{array}\right] , \end{aligned}$$
(42)

and it has no singularities given that \({\mathcal {R}}'_\mathrm {gap}>0\).

3.2 Trajectory tracking controller

Once the system (15)–(17) is linearized and transformed into an equivalent LTI system, position controllers can be designed using classical linear techniques. In particular, the main goal is to design a controller such that the position of the armature follows a predefined soft-landing reference trajectory \(z_r(t)\). Since the linearizing state \(\xi \) is composed of the position, velocity, and acceleration of the armature, the desired position trajectory can be used to define a time-dependent reference for the entire state vector. This state reference, \(\xi _r(t)\), is composed of \(z_r(t)\) and its first two time derivatives.

$$\begin{aligned} \xi _r(t) = \left[ \begin{array}{c@{}c@{}c} z_r(t)&{\dot{z}}_r(t)&\ddot{z}_r(t) \end{array} \right] ^{\mathsf {T}} \end{aligned}$$
(43)

Let the tracking error be defined as \({\tilde{\xi }} = \xi _r-\xi \). Considering (38), the error dynamics is given by

$$\begin{aligned} \dot{{\tilde{\xi }}} = {{\dot{\xi }}}_r - {\dot{\xi }} = {{\dot{\xi }}}_r+ A\,{\tilde{\xi }}-A\,\xi _r -B\,w . \end{aligned}$$
(44)

Since the equivalent LTI system is a chain of integrators, with A and B in the form of (40), it can be shown that

$$\begin{aligned} {{\dot{\xi }}}_r-A\,\xi _r = B\, {z}^{(3)}_r, \end{aligned}$$
(45)

where

$$\begin{aligned} {z}^{(3)}_r = \dfrac{\mathrm {d}^3 z_r}{\mathrm {d}t^3}. \end{aligned}$$
(46)

Consequently, the error dynamics can be reformulated as

$$\begin{aligned} \dot{{\tilde{\xi }}} = A\,{\tilde{\xi }} -B\left( w -{z}^{(3)}_r\right) . \end{aligned}$$
(47)

Then, by using the feedback-feedforward control law

$$\begin{aligned} w = K\,{\tilde{\xi }} + {z}^{(3)}_r, \end{aligned}$$
(48)

where \(K \in {\mathbb {R}}^{1\times 3}\), the closed-loop error dynamics becomes

$$\begin{aligned} \dot{{\tilde{\xi }}} = \left( A-BK\right) {\tilde{\xi }}. \end{aligned}$$
(49)

By choosing K such that \(A-BK\) is Hurwitz, the error dynamics can be made exponentially asymptotically stable at the origin and, thus, the actuator will track the predefined trajectory with an exponentially decreasing error.

This final step completes the design of the nonlinear controller for the actuator via feedback linearization. The complete control law to track the reference \(z_r(t)\) can be obtained by combining all the previous expressions.

$$\begin{aligned} u(x,t) \!=\! \alpha (x) \!+\! \beta (x)\left( K\Big (\xi _r(t)-T(x)\Big )+{z}^{(3)}_r(t)\right) \nonumber \\ \end{aligned}$$
(50)

4 Design of the trajectory

The soft-landing reference trajectory proposed for the actuator has the form

$$\begin{aligned} z_r(t) = \left\{ \begin{array}{l@{}l@{}c} z_{0}, &{} \text {if} &{} 0 \le t < t_0, \\ z_m(t), &{} \text {if} &{} t_0 \le t \le t_\mathrm {f}, \\ z_\mathrm {f}, &{} \text {if} &{} t > t_\mathrm {f}, \end{array}\right. \end{aligned}$$
(51)

where \(z_0\) is the initial position, \(z_\mathrm {f}\) is the final position, and \(z_m(t)\) is the position trajectory for the movement stage. Two different cases are considered: the trajectory for the closing operation, where \(z_0=z_\mathrm {max}\) and \(z_\mathrm {f}=z_\mathrm {min}\), and that for the opening, where \(z_0=z_\mathrm {min}\) and \(z_\mathrm {f}=z_\mathrm {max}\).

In order to achieve soft landing at \(t=t_\mathrm {f}\), the reference trajectory must be such that

$$\begin{aligned} z_m(t_\mathrm {f}) = z_\mathrm {f}, \quad {\dot{z}}_m(t_\mathrm {f}) = 0, \quad \ddot{z}_m(t_\mathrm {f}) = 0, \end{aligned}$$
(52)

i.e., it must arrive at \(z=z_\mathrm {f}\) at \(t=t_\mathrm {f}\) with zero velocity and acceleration. Note that the acceleration condition is necessary in order for the mover to stay at the final position for \(t>t_\mathrm {f}\) (see Fig. 3). Assuming that the armature is at rest at \(z=z_0\) and \(t=t_0\)—a logical assumption in switching devices—it is advantageous that the reference trajectory also satisfies

$$\begin{aligned} z_m(t_0) = z_0, \quad {\dot{z}}_m(t_0) =0, \quad \ddot{z}_m(t_0) = 0. \end{aligned}$$
(53)

In that case, the tracking error at \(t=t_0\) will be identically zero, i.e., \({\tilde{\xi }}(t_0)=\left[ \, 0\ 0\ 0\,\right] ^{\mathsf {T}}\). Thus, considering that the error dynamics is given by (49), where \(A-BK\) is Hurwitz by design, the tracking error will be equal to zero during the entire trajectory. As a consequence, the controller will achieve perfect tracking in the nominal case, unless the input saturates or the state moves out of the linearizable region.

When perfect tracking is accomplished, \(\xi (t)=\xi _r(t) \ \forall \, t\). Thus, if the input u is limited between \(u_\mathrm {min}\) and \(u_\mathrm {max}\), where \(u_\mathrm {min}< u_\mathrm {max}\), the condition to avoid input saturation during the motion can be derived from (31) and (38)–(40) as

$$\begin{aligned} u_\mathrm {min} \le \alpha (x_r) + {z}^{(3)}_m\,\beta (x_r) \le u_\mathrm {max}, \quad \forall \, t\in \left[ t_0,\,t_\mathrm {f}\right] , \nonumber \\ \end{aligned}$$
(54)

where

$$\begin{aligned} x_r = x_r(t) = T^{-1}\big (\xi _r(t)\big ) \end{aligned}$$
(55)

is the reference trajectory in the original state space. The conditions to keep the state inside the linearizable region \(D_0^+\) can be also obtained by means of the inverse transformation. Using (19) and (28), these are given by

$$\begin{aligned}&-\dfrac{\phi _\mathrm {sat}^{\,2}}{2}< {\dfrac{m\,\ddot{z}_m+ F\big (z_m,{\dot{z}}_m\big )}{{\mathcal {R}}'_\mathrm {gap}\big (z_m\big )}} < 0, \quad \forall \, t\in \left[ t_0,\,t_\mathrm {f}\right] , \nonumber \\ \end{aligned}$$
(56)
$$\begin{aligned}&z_\mathrm {min} \le z_m \le z_\mathrm {max}, \quad \forall \, t\in \left[ t_0,\,t_\mathrm {f}\right] . \end{aligned}$$
(57)

Several approaches can then be used to find a trajectory that satisfies all the previous conditions. The simplest alternative is to define \(z_m(t)\) as a fifth degree polynomial whose coefficients are chosen such that the trajectory satisfies the conditions in (52) and (53). Without much difficulty, it can be shown that the resulting polynomial is monotone in \(\left[ t_0,\,t_\mathrm {f}\right] \), so the condition in (57) is directly met. The conditions in (54) and (56), on the other hand, can be satisfied by a proper choice of the length of the interval \(\left[ t_0,\,t_\mathrm {f}\right] \). Polynomial trajectories are indeed the standard solution in the design of soft-landing feedback controllers for electromechanical devices [17, 24,25,26]. In this paper, however, an energy-optimal reference trajectory is obtained using optimal control theory [10, 27]. Considering the model (15)–(17), the dynamic optimization problem is formulated as

$$\begin{aligned} \underset{u(t)}{\text {min.}}& J = \int _{t_0}^{t_\mathrm {f}} u^2 \, \mathrm {d}t, \end{aligned}$$
(58)
$$\begin{aligned} \text {s. t.}& {\dot{x}}_r = \left[ \ \varphi _1(x_r) \ \ \varphi _2(x_r) \ \ \varphi _3(x_r,u) \ \right] ^{\mathsf {T}}, \end{aligned}$$
(59)
$$\begin{aligned}& u_\mathrm {min} \le u \le u_\mathrm {max}, \end{aligned}$$
(60)
$$\begin{aligned}& x_r(t_f) = T^{-1}\left( \, [ \ z_\mathrm {f} \ \ 0 \ \ 0 \ ]^{\mathsf {T}} \,\right) , \end{aligned}$$
(61)
$$\begin{aligned}& x_r(t_0) = T^{-1}\left( \, [ \ z_0 \ \ 0 \ \ 0 \ ]^{\mathsf {T}} \,\right) . \end{aligned}$$
(62)

Note that the two last conditions are equivalent to (52) and (53). A solution is then found by means of the Pontryagin method. Firstly, the Hamiltonian is built as

$$\begin{aligned}&{\mathcal {H}}\left( {x_r},{p},u\right) = u^2 + {p}_1\, \varphi _1\left( {x_r}\right) \nonumber \\&\quad + {p}_2 \,\varphi _2\left( {x_r}\right) + {p}_3\, \varphi _3\left( {x_r},u\right) , \end{aligned}$$
(63)

where \({p}=\left[ \,{p}_1 \ {p}_2 \ {p}_3 \,\right] ^{\textsf {T}}\) is the costate. Then, the expression for the optimal input is obtained by applying the Pontryagin principle,

$$\begin{aligned} {\mathcal {H}}\left( {x}^*_r,{p}^*,u^*\right) \le {\mathcal {H}}\left( {x}^*_r,{p}^*,u\right) \!\! \ \ \forall u \!\in \! \!\left[ u_\mathrm {min},u_\mathrm {max}\!\right] \!, \end{aligned}$$
(64)

where \({x}^*_r\), \({p}^*\) and \(u^*\) are respectively the optimal trajectory, costate, and input. By using (63) and (15)–(17), the expression for the optimal input is obtained.

$$\begin{aligned} u^*&= u^*({x}^*_r,{p}^*) = \underset{ u \in \left[ u_\mathrm {min},u_\mathrm {max}\right] }{\mathrm {arg\,min}} \left( u^2 + \dfrac{{p}_3^*\,u}{{k_N}}\right) \nonumber \\&= \left\{ \begin{array}{c@{}c@{}c} u_\mathrm {max} &{} \mathrm {if} &{} {p}_3^*<-2\,{k_N}\,u_\mathrm {max} \\ -\dfrac{{p}_3^*}{2\,{k_N}} &{} \mathrm {if} &{} -2\,{k_N}\,u_\mathrm {max} \le {p}_3^* \le -2\,{k_N}\,u_\mathrm {min} \\ u_\mathrm {min} &{} \mathrm {if} &{} {p}_3^*>-2\,{k_N}\,u_\mathrm {min} \end{array}\right. \end{aligned}$$
(65)

Note that, since \(\varphi _3\left( {x},u\right) \) is input-affine, the Hamiltonian is convex in u, which makes \(u^*\) the global minimum of \({\mathcal {H}}\). The equations of the Hamiltonian system are then obtained as

$$\begin{aligned} {\dot{x}}_r^*(t)&= + \frac{\partial {\mathcal {H}}^*}{\partial {p}^*},&{\dot{p}}^*(t)&= -\frac{\partial {\mathcal {H}}^*}{\partial {x}_r^*}, \end{aligned}$$
(66)

where \({\mathcal {H}}^*={\mathcal {H}}\big ( {x}^*_r,{p}^*,u^*({x}^*_r,{p}^*)\big )\) and, finally, the trajectory is numerically computed solving the boundary value problem (BVP) with (61) and (62) as boundary conditions.

A remaining issue in the design of the trajectory (51) is the purpose of the interval \(\left[ 0,\,t_0\right) \). In this regard, it must be noted that the system has hybrid dynamics and it is assumed to be initially at either Mode 1 or Mode 3 (see Fig. 3). Thus, the linearizing state \(\xi _3\) at \(t=0\) does not actually represent the armature acceleration, which is equal to zero. Instead, as described by (41), it is the sum of the magnetic, elastic, friction, and gravity forces divided by the armature mass. In other words, it does not include the contact force that appears at the limit positions. The goal of the aforementioned period is that, regardless of the initial magnetic flux, the controller forces the system to reach a stationary state at some \(t<t_0\) such that \(F_\mathrm {mag}\) and F are in balance at \(t=t_0\), i.e., \({\xi }_3(t_0)={\tilde{\xi }}_3(t_0)=0\). By a proper choice of \(t_0\), this interval prepares the actuator for takeoff and allows the movement to start immediately at \(t=t_0\). Otherwise, \({\tilde{\xi }}_3(t_0)\) may be nonzero and thus perfect tracking would not be guaranteed. An alternative procedure to overcome this problem [17] consists in designing a reference trajectory for \({\xi }_3\) during the pre-movement stage, but the proposal of this paper is simpler and leads to very similar results.

5 Results and discussion

In this section, the nonlinear soft-landing controller is validated by simulation. With the aim of incorporating the effects of the position limits, the evaluation is performed using the hybrid automaton of Fig. 3. Table 1 presents the parameter values used in the simulations. The voltage is limited between \(u_\mathrm {min}=-24\) V and \(u_\mathrm {max}=+24\) V. The simulations have been carried out for the two possible operations—closing and opening—of any electromechanical switching device. In all the cases, the proportional gain K of the controller has been selected to achieve a settling time of 1 ms.

Table 1 Model parameters

5.1 Nominal results

We first analyze the results in the nominal case, i.e., when the controller and trajectory proposed in the previous sections are jointly applied to control the actuator motion. The trajectory used in this case corresponds to \(t_0 = 1\) ms and \(t_\mathrm {f}=6\) ms and has been obtained by solving the BVP using the MATLAB function bvp4c [28]. This function implements a collocation method that requires an initial solution. For this purpose, we take advantage of the fact that the Hamiltonian system is differentially flat in z [26], which allows us to propose an initial sub-optimal soft-landing trajectory for the position and, from this, to obtain the corresponding trajectory for all the remaining state variables. Thanks to the initially supplied solution, the algorithm requires less than 2 seconds of computation on a 9th generation Intel Core i5 processor. In order to highlight the advantages of optimally-designed trajectories over polynomial ones, the optimal arcs have been obtained for an input bounded between -20 V and +20 V. This results in a more robust design, since there is still an available 4-volt band that can be used by the feedback term of the controller to correct deviations with respect to the nominal situation.

Fig. 4
figure 4

Results corresponding to closing (left) and opening (right) operations using the designed energy-optimal reference trajectory. From top to bottom, linearizing states (\(\xi _1=z\), \(\xi _2={{v}}\), and \(\xi _3\)), magnetic flux \(\phi \), and input u

As shown in Fig. 4, the results are in accordance with the theoretical analysis of the previous section: The controller achieves perfect tracking of the proposed trajectory and soft landing is achieved. The errors in the position (\(z=\xi _1\)) and velocity (\({{v}}=\xi _2\)) are identically zero during the entire simulation. By contrast, an initial error has been considered in \(\xi _3\) in order to analyze the performance of the controller during the interval \(\left[ 0,\,t_0\right) \). Note that, although the position error is zero for all \(t<t_0\), the controller still forces the magnetic flux to reach a value for which \(F_\mathrm {mag}\) and F are in equilibrium. Since \(t_0\) is large enough, the tracking error at \(t=t_0\) is equal to zero and thus the motion starts immediately. In this regard, any available information about the initial value of \(\phi \) could be used to estimate the initial error \({{\tilde{\xi }}}_3(0)\) and, hence, to set a proper value for \(t_0\). As expected, the state stays inside the linearizable region \(D_0^+\).

Fig. 5
figure 5

Results corresponding to closing (left) and opening (right) operations using a piecewise polynomial reference trajectory. In this case, the input u saturates in the interval \(\left[ t_0,\,t_\mathrm {f}\right] =\left[ 1,\,6\right] \) ms, which results in loss of perfect tracking

Fig. 6
figure 6

Results corresponding to closing (left) and opening (right) operations using a piecewise polynomial reference trajectory. In this case, the state escapes from the linearizable region \(D_0^+\), which results in loss of perfect tracking and input chattering (shaded region, the solid line indicates the average value)

5.2 Trajectory comparison

In order to emphasize the importance of a proper trajectory design, Figs. 5 and 6 present additional results of cases where the conditions to ensure perfect tracking are not satisfied. In these simulations, piecewise polynomial functions are used as reference trajectories. For comparative purposes, these have been also defined between \(t_0 = \) 1 ms and \(t_\mathrm {f}=\) 6 ms. On the one hand, Fig. 5 presents two cases where the condition (54) does not hold, i.e., the input saturates in some parts of the interval \(\left[ t_0,\,t_\mathrm {f}\right] \). As can be seen, the desired trajectories require high variations of the acceleration which cannot be given by the controller and, thus, tracking errors appear during the motion. On the other hand, the results of Fig. 6 correspond to cases where perfect tracking is lost because the state escapes from the linearizable region. More specifically, the condition (56) does not always hold because the acceleration required in some parts of the desired trajectory is incompatible with the physics of the system. Note that, as the magnetic flux approaches zero, the action given by (50) increases and results in input saturation, so (54) is not met either during these periods. Furthermore, when \(\phi \) reaches and crosses the zero level, the state jumps between the linearizable regions \(D_0^+\) and \(D_0^-\). As a result, the control adopts a high-frequency switching behavior between \(u_\mathrm {min}\) and \(u_\mathrm {max}\) (shaded region in the figure), similarly as in a sliding-mode controller.

The results presented in these two latter figures show that the loss of perfect tracking may lead to two different scenarios with regard to soft landing. When it occurs at the beginning of the motion, the controller may be able to eliminate the error before the end of the trajectory and thus soft landing may still be accomplished (see the closing operation in Fig. 5, and the opening operation in Fig. 6). However, if the tracking error appears near the end of the trajectory, the actuator will probably arrive to the final position with a nonzero impact velocity and bouncing will appear (opening operation in Fig. 5, and closing operation in Fig. 6). Thus, in order to achieve soft landing in reluctance actuators, it can be concluded that it is advantageous to define reference trajectories which are less demanding—in terms of control—as the armature approaches the final position.

5.3 Controller comparison

Besides the trajectory design, the other critical part of the proposed control is the feedback linearization technique. In order to show the advantage of this method, it is compared with an alternative controller. It follows the general structure of the sliding-mode controller previously proposed in  [8] for reluctance actuators.

Firstly, the sliding surface is defined by the scalar equation \(s=0\), where, for a third-order system, s is

$$\begin{aligned} s = (\mathrm{d}/ \mathrm{d}t + \lambda )^2 \, (z_{r} - z), \end{aligned}$$
(67)

in which \(\lambda \) is a constant that determines the settling time of the position when \(s=0\). Then, the control law is defined as

$$\begin{aligned} u = - U \, \mathrm {sgn}(s), \end{aligned}$$
(68)

where U is another constant, which must be large enough to ensure that the sliding surface is reached in finite time. In order to be consistent with the specification of the feedback linearization, the constants are selected so that the settling time is 1 ms and the maximum voltage is 24 V (i.e., \(\lambda =~4745\,\mathrm{s}^{-1}\), \(U=24\,\mathrm{V}\)).

Both controllers are tested and compared for different sampling rates. To evaluate the tracking performance, the root mean square error of the position during motion is obtained as follows:

$$\begin{aligned} \mathrm {RMSE}_z = \frac{1}{t_f-t_0} \, \int _{t_0}^{t_f} \big (z(t)-z_r(t)\big )^2 \, \mathrm{d}t. \end{aligned}$$
(69)

Given the soft landing objective, another important performance index are the impact velocities. Thus, for each operation, an equivalent velocity is calculated as

$$\begin{aligned} v_\mathrm {eq} = \sqrt{\sum _i{{v_i}^2}}, \end{aligned}$$
(70)

where \(\{v_i\}\) is the set of impact velocities. Note that it corresponds to the same kinetic energy as the combination of every impact velocity. Thus, it accounts for multiple impacts caused by bouncing.

The main results are presented in Fig. 7. It depicts the root mean square errors and equivalent velocities for different sampling periods \(T_\mathrm {s}\) ranging from 1 to 100 \(\upmu \)s. Notice the logarithmic scale in the plots. The proposed controller based on feedback linearization proves to track better the desired position for every tested sampling rate, as the root mean square errors are consistently smaller. Consequently, the soft-landing performance is better, as the equivalent velocities demonstrate.

Fig. 7
figure 7

Control performance comparison as a function of the sampling period: root-mean-square errors of the tracked position (top) and equivalent velocities (bottom) in closing (left) and opening (right) operations

Fig. 8
figure 8

Results corresponding to closing (left) and opening (right) operations using our control proposal with a sampling rate of 10 kHz (\(T_s=100\) \(\upmu \)s)

Fig. 9
figure 9

Results corresponding to closing (left) and opening (right) operations using the alternative sliding-mode controller with a sampling rate of 10 kHz (\(T_s=100\,\upmu \)s). Note the impact velocity and the big bounce at the end of the closing operation

In order to further illustrate the improvement of the proposed solution with respect to the sliding-mode controller, the full control results are shown for a particular case. The worst-case scenario of the studied cases has been chosen, which corresponds to a sampling period of 100 \(\upmu \)s. Fig. 8 presents the results using our proposal. In this scenario, the input saturates frequently, which causes tracking errors in the linearizing states and the magnetic flux. Still, the tracking performance is very good, particularly at the end of the operations. Thus, the impact velocities are very small. In contrast, Fig. 9 presents the results using the sliding-mode controller. In this case, the tracking errors are appreciably larger, which leads to significant impact velocities, especially in the closing operation.

6 Conclusion

This paper has considered the design of a nonlinear feedback controller to achieve soft landing in electromechanical switching devices. As shown, the controller is able to track the reference trajectory with zero error thanks to the joint design of the tracking controller and a soft-landing trajectory that satisfies certain conditions also given in the paper. As a result, the device is able to switch between the two possible states without impacts or bounces. Special attention has been paid to emphasize the importance of the trajectory design. It has been shown that, even when working with a nominal model, a wrong design of the desired trajectory may lead to undesired results with respect to soft landing. Apart from minimizing the energy required for the motion, the use of optimal control theory is also advantageous because it permits more flexibility in the design of the trajectory. The controller has been designed for a generic reluctance actuator independently of its specific design or final application, so it may also be applied to control the motion—or the force—of other reluctance actuators used in high-precision systems. Future work will focus on the evaluation of the controller on perturbed systems and the use of state observers based only on measurements of the electrical variables.