Keywords

1 Introduction

Solenoids are actuators comprised of a helical coil wrapped around a ferromagnetic core. This core can either be fixed, being used mainly to generate a concentrated electromagnetic field, or free to move in the coil axis. This property of creating force in the presence of electrical current is considered an electromechanical energy conversion, which makes the solenoid useful for many applications such as dialysis machines [1], MRIs [2, 3], Washing Machines [4], Electrical lockers [5], pressurizers [6], controlled brakes [7] in the automotive industry, Solenoid Valves, a switch that control the flux of fluids in hydraulic systems [8], and finally in the Smallsize [9] and MiddleSize [10] Soccer Leagues of Robocup as a “kicking tool”.

This paper was conceived at the “Centro de Robótica Aplicada da Universidade de São Paulo” (CROB), as a study of the research group Warthog Robotics, with the goal of defining the theoretical ground to improve the WRMagic Project (Smallsize) [11] and to develop other projects in soccer and rescue RoboCup categories [12]. The WRMagic is an autonomous football robot that uses a solenoid as actuator to impulse a rigid object, that simulates a kick or pass on a football game. Even though the literature on solenoids is large, studies are focused primarily on industrial [13] and research applications. Their emphasis, therefore, is on limited empirical or simplified models related to Superconducting applications [14,15,16], solenoid’s fabrication [14, 17, 18], physical characteristics [17, 19, 20], maximum force [21], shape [16], inductance [22, 23], self-capacitance [24], hysteresis characteristics [25, 26], robustness [27] and others which do not completely fulfill our purposes. Our solenoids, therefore, are produced based, with adaptations, on another model exposed by us on [28] and some practical knowledge since that model is only valid for simple finite coils, not physical solenoids.

In this research we aim to obtain a complete model of a real generic solenoid so as to relate all variables, from materials to geometry, that influence on the core’s movement. Such complete model will give us the ability to choose the best solenoid configuration for different applications in our projects, as also to develop better control algorithms for them.

This paper is organized as follow: in the introduction, some concepts will be presented, then, using those concepts in the second section the algebraic deduction will be exposed. After that, in the third section, the Simulink’s model construction is explained and finally the results of said simulation are displayed in graphs, that are on the fourth section. The last section is a conclusion based on said accumulated data.

1.1 Solenoid Valve Functioning

It’s well known, by the application of Ampere’s law, that a union of turns when energized by current generate a magnetic field on it’s interior, being this field approximately parallel to the surface of turns [29]:

$$\begin{aligned} \oint _{C} B.dl = \mu _0.I \end{aligned}$$
(1)

where B is the Magnetic Field, dl is an element of the Any Closed Curve (C), \(\mu _0\) is the magnetic permeability and I is the total electrical current in the surface enclosed by the Curve.

When a ferromagnetic material is positioned at the coil axis edge, and there’s electrical current through the coil, a magnetic field is concentrated in the interior of the material creating a magnetic force in the coil axis and pulling the material to the center of the coil, therefore if the magnetic force is controlled via the electric current injection it is possible to create an actuator as in Fig. 1(a).

1.2 Solving Magnetic Circuits

Solving a magnetic circuit can be a difficult task. However Fitzgerald [30] proposes the following hypothesis allow the calculation of a magnetic circuit by an equivalent electric circuit:

  • The inductance outside does not influence on the final magnitude of the field

  • There is no spreading of the magnetic field in the gaps of the solenoid.

  • All the magnetic field is confined in the closed magnetic circuit.

  • The magnetic permeability of the gap is practically equal to the void’s.

  • The Displacement terms of the Maxwell’s equations are insignificant.

  • The Magnetic inductance of the magnetic field strength (H) in the magnetic field flux (B) is insignificant in every point of the system.

  • The Magnetic inductance can be considered Homogeneous.

Based on those assumptions, the magnetic circuit can be solved by considering the system static at each time step. Therefore the dynamic characteristics will be derived based on Newton’s law and on application of static magnetic calculation at each instant. This makes it possible to approximate, the magnetic circuit to an equivalent one-dimensional electric circuit that can be analyzed using basic circuit theory. This equivalent electric circuit obeys the following rules:

  1. 1.

    As said in the first hypothesis, the passage of magnetic flux (equivalent to current) exists only in the ferromagnetic material and the gap.

  2. 2.

    The reluctance is substituted by analogue resistors.

  3. 3.

    Coils are substituted by voltage sources, being its voltage equivalent to the number of turns times their electric Current.

2 Model Deduction

2.1 Algebraic Approach

To model the solenoid’s plunger, it will be used the concepts exposed in Sect. 1.2 and the basics of newtonian mechanics. The problem will be approached with two basic equations: the electrical and the mechanical, that is, the equation that rules the voltage in the coil’s terminals and the equation of force balance in the coil axis. The first equation is represented as follows:

$$\begin{aligned} V = \frac{\partial \lambda _{(x,i)}}{\partial t}+R.i_{(t)} \end{aligned}$$
(2)

being the voltage on the coil equal to the Ohm’s law \(R.i_{(t)}\) plus the Voltage from Len’s Law \(\frac{\partial \lambda _{(x,i)}}{\partial t}\). And the second approach:

$$\begin{aligned} F_{res} = F_{mag} + F_{hooke} + P_{x} - F_{\mu } - F_{vis} \end{aligned}$$
(3)

the sum of forces on the coil axis which contains the magnetic force, Hooke’s force, a component of weight, friction and viscosity force. Also, the magnetic permeability will be considered constant to any given magnetic flux.

2.2 Magnetic Circuit Analysis

As the Solenoid’s Resistance is a constant and the current function is not trivial to describe, the analysis begins with the description offlux linkage [\(\lambda \)]:

$$\begin{aligned} \lambda _{(x,i)} = N.\varPhi \end{aligned}$$
(4)

where N represents the number of turns in the coil and \(\varPhi \) represents the Magnetic Flux.

The magnetic flux is a variable which depends on the magnetic circuit, formed in this case by the coil, plunger, iron core magnetic path and gap. When transformed into to a electric circuit, the magnetic circuit of the Fig. 1(a) can be displayed as in Fig. 1(b), in which \(\mathfrak {R}_{1}\) and \(\mathfrak {R}_{3}\) are the reluctance of the effective path traveled by the flux in the iron core and \(\mathfrak {R}_{2}\) is the sum of the reluctance of the plunger and gap. Its possible to simplify the circuit in Fig. 1(b) applying the relation of parallelism between \(\mathfrak {R}_{1}\) and \(\mathfrak {R}_{3}\) which results in \(\mathfrak {R}_{ic}\), the iron core reluctance. Its also interesting for the analysis to separate \(\mathfrak {R}_{2}\) in the sum of \(\mathfrak {R}_{0}\) and \(\mathfrak {R}_{pl}\) resulting in a new circuit, represented by Fig. 1(c).

Fig. 1.
figure 1

Typical representations of a solenoid valve: (a) physical component, extracted from [31], (b) equivalent electrical circuit and (c) simplified equivalent electrical circuit

Therefore, based on the relation 5, that determines the reluctance [30]:

$$\begin{aligned} \mathfrak {R}= \frac{l}{\mu _{r}.\mu _{0}.A} \end{aligned}$$
(5)

the following equations are defined:

$$\begin{aligned} \mathfrak {R}_{ic} = \frac{l_{ic}}{\mu _{ic}.\mu _{0}.A_{pl}} \end{aligned}$$
(6)
$$\begin{aligned} \mathfrak {R}_{pl} = \frac{x_{(t)}+l_{pl}}{\mu _{pl}.\mu _{0}.A_{pl}} \end{aligned}$$
(7)
$$\begin{aligned} \mathfrak {R}_{0} = \frac{l_{0} - x_{(t)}}{\mu _{0}.A_{ic}} \end{aligned}$$
(8)

To relate the linkage flux and the reluctance its possible to pursue the path:

$$\begin{aligned} N.i_{(t)}&= \mathfrak {R}_{n}.\varPhi \\ N.i_{(t)}&= (\mathfrak {R}_{ic} + \mathfrak {R}_{pl} + \mathfrak {R}_{0}).\varPhi \\ N^2.i_{(t)}&= (\mathfrak {R}_{ic} + \mathfrak {R}_{pl} + \mathfrak {R}_{0}).\varPhi .N \\ N^2.i_{(t)}&= (\mathfrak {R}_{ic} + \mathfrak {R}_{pl} + \mathfrak {R}_{0}).\lambda \end{aligned}$$
$$\begin{aligned} \lambda _{(x,i)} = \frac{N^2.i_{(t)}}{\mathfrak {R}_{ic} + \mathfrak {R}_{pl} + \mathfrak {R}_{0}} \end{aligned}$$
(9)

As represented on Fig. 1(a), \(A_{pl}\) is identical to \(A_{0}\). It’s possible to simplify these formulas and sum the total reluctance:

$$\begin{aligned} \small \varSigma \mathfrak {R}= \frac{l_{ic}.A_{0}.\mu _{pl} + l_{pl}.A_{ic}.\mu _{ic} + l_{0}.A_{ic}.\mu _{ic}.\mu _{pl} + x_{(t)}.(A_{ic}.\mu _{ic} - A_{ic}.\mu _{ic}.\mu _{pl})}{A_{ic}.A_{0}.\mu _{0}.\mu _{pl}.\mu _{ic}} \end{aligned}$$
(10)

Which finally results in the linkage flux in the form of:

$$\begin{aligned} \small \lambda _{(x,i)} = \frac{A_{ic}.A_{0}.\mu _{0}.\mu _{pl}.\mu _{ic}.N^2.i_{(t)}}{l_{ic}.A_{0}.\mu _{pl} + l_{pl}.A_{ic}.\mu _{ic} + l_{0}.A_{ic}.\mu _{ic}.\mu _{pl} + x_{(t)}.A_{ic}.\mu _{ic}.(1 - \mu _{pl})} \end{aligned}$$
(11)

Therefore its possible to find a formula that rules \(\lambda \)’s behavior in function of the position(x), the intended model output, and current(i) that was previously added to the model in Eq. 2. Nevertheless, the Eq. 2 needs the linkage flux derivative in time, and as \(\lambda \) depends on two variables both function of time, the derivative follows the chain’s rule of the implicit derivative in Eq. 2.

$$\begin{aligned} V = \frac{\partial \lambda _{(x,i)}}{\partial i_{(t)}}.\frac{\partial i_{(t)}}{\partial t} + \frac{\partial \lambda _{(x,i)}}{\partial x_{(t)}}.\frac{\partial x_{(t)}}{\partial t} + R.i_{(t)} \end{aligned}$$
(12)

So it is needed to partially derive the Eq. 11 in \(x_{(t)}\) and \(i_{(t)}\).

$$\begin{aligned} \small \frac{\partial \lambda _{(x,i)}}{\partial x_{(t)}} = \frac{-N^2.\mu _{fr}^2.\mu _{vl}.\mu _{0}.A_{fr}^2.A_{0}.(1 - \mu _{vl}).i_{(t)}}{{(l_{fr}.A_{0}.\mu _{vl} + l_{vl}.A_{fr}.\mu _{fr} + l_{0}.A_{fr}.\mu _{fr}.\mu _{vl} + x_{(t)}A_{fr}.\mu _{fr}.(1 - \mu _{vl}))^2}} \end{aligned}$$
(13)
$$\begin{aligned} \small \frac{\partial \lambda _{(x,i)}}{\partial i_{(t)}} = \frac{A_{fr}.A_{0}.\mu _{0}.\mu _{vl}.\mu _{fr}.N^2}{l_{fr}.A_{0}.\mu _{vl} + l_{vl}.A_{fr}.\mu _{fr} + l_{0}.A_{fr}.\mu _{fr}.\mu _{vl} + x_{(t)}.A_{fr}.\mu _{fr}.(1 - \mu _{vl})} \end{aligned}$$
(14)

The equation above seems to be complicated, however, it is possible to simplify the visualization with some new definitions of global constants.

$$\begin{aligned} k_{t1} = A_{fr}.A_{0}.\mu _{0}.\mu _{pl}.\mu _{ic}.N^2 \end{aligned}$$
(15)
$$\begin{aligned} k_{t2} = A_{ic}.\mu _{ic}.(1 - \mu _{pl}) \end{aligned}$$
(16)
$$\begin{aligned} k_{t3} = l_{ic}.A_{0}.\mu _{pl} + l_{pl}.A_{ic}.\mu _{ic} + l_{0}.A_{ic}.\mu _{ic}.\mu _{pl} \end{aligned}$$
(17)

Replacing the Eqs. 15, 16 and 17 in 13 and 14. Then, replacing the result of this procedure in the Eq. 12 it’s finally viable to visualize the first differential equation of this model:

$$\begin{aligned} V = \frac{k_{t1}.\frac{\partial i_{(t)}}{\partial t}}{x_{(t)}.k_{t2}+k_{t3}} - \frac{k_{t1}.k_{t2}.i_{(t)}.\frac{\partial x_{(t)}}{\partial t}}{(x_{(t)}.k_{t2}+k_{t3})^2} + R.i_{(t)} \end{aligned}$$
(18)

2.3 Mechanical System Analysis

The objective of this section is to study the equation exposed in Sect. 2.1 and rewrite it in function of our output variables \(i_{(t)}\) and \(x_{(t)}\). Firstly, from the Eq. 3 each term can be expanded in:

$$\begin{aligned} F_{res} = m.\frac{\partial ^2 x_{(t)}}{\partial ^2 t} \qquad \qquad \qquad F_{hooke} = -K.x_{(t)}\qquad \qquad F_{\mu } = m.g.Cos(\theta ).\mu _{\mu } \end{aligned}$$
$$\begin{aligned} F_{mag} = \frac{\partial W'_{(x_{(t)},i_{(t)})}}{\partial x} \qquad \qquad \qquad P_{x} = m.g.Sen(\theta )\qquad \qquad F_{} = \beta .\frac{\partial x_{(t)}}{\partial t} \end{aligned}$$

In those equations its possible to visualize that the only variable that differs from our output is \(W'_{(x_{(t)},i_{(t)})}\), therefore it is needed to deepen in its study. To accomplish that, the following relation [31], will be used.

$$\begin{aligned} W'_{(x_{(t)},i_{(t)})} = \int _{0}^{i_{(t)}}\lambda _{(x_{(t)},i_{(t)})}.di \end{aligned}$$
(19)

Therefore

$$\begin{aligned} F_{mag} = \int _{0}^{i_{(t)}}\frac{\partial \lambda _{(x_{(t)},i_{(t)})}}{\partial x_{(t)}}.di \end{aligned}$$
(20)

Reminding that \(\frac{\partial \lambda _{(x_{(t)},i_{(t)})}}{\partial x_{(t)}}\) is already defined by Eq. 13.

$$\begin{aligned} F_{mag} = - \frac{k_{t1}.k_{t2}.i_{(t)}^2}{2.(k_{t2}.x_{(t)}+k_{t3})^2} \end{aligned}$$
(21)

to simplify the Differential Equation it will be used a new global constant \(k_{t4}\):

$$\begin{aligned} k_{t4} = m.g.Sen(\theta ) + m.g.Cos(\theta ).\mu _{\mu } \end{aligned}$$
(22)

Lastly, replacing all forces and the constant \(k_{t4}\) in the Eq. 3:

$$\begin{aligned} m.\frac{\partial ^2 x_{(t)}}{\partial ^2 t} = - \frac{k_{t1}.k_{t2}.i_{(t)}^2}{2.(k_{t2}.x_{(t)}+k_{t3})^2} - K.x_{(t)} - k_{t4} - \beta .\frac{\partial x_{(t)}}{\partial t} \end{aligned}$$
(23)

2.4 Final Differential Equations

With the equations achieved it’s unlikely that a algebraic solution will be found, but a numeric solution is needed. Then, the Differential Equations must be rearranged in a way that facilitates the construction of a flowchart in the Simulink Application, of the software Matlab.

$$\begin{aligned} \frac{\partial i_{(t)}}{\partial t} = (\frac{x_{(t)}.k_{t2}+k_{t3}}{k_{t1}})(\frac{k_{t1}.k_{t2}.i_{(t)}.\frac{\partial x_{(t)}}{\partial t}}{(x_{(t)}.k_{t2}+k_{t3})^2} - R.i_{(t)} + V) \end{aligned}$$
(24)
$$\begin{aligned} \frac{\partial ^2 x_{(t)}}{\partial ^2 t} = ( - \beta .\frac{\partial x_{(t)}}{\partial t} - K.x_{(t)} - k_{t4} - \frac{k_{t1}.k_{t2}.i_{(t)}^2}{2.(k_{t2}.x_{(t)}+k_{t3})^2}).\frac{1}{m} \end{aligned}$$
(25)

3 Simulation

By the Differential Eqs. 24 and 25 the flowchart in the following figures was build. Figure 3 shows the dependencies of each output and also how the input proprieties are transformed into the global constants defined in section 2. Figures 4(b), (c) and (d) show how the constants and variables interact to form the Current Differential Equation. Finally the Fig. 5(a) and (b) form the Differential Equation that rules the valve’s movement (Fig. 2).

Fig. 2.
figure 2

Superficial visualization of simulink

Fig. 3.
figure 3

Input constants to global constants transformation

Fig. 4.
figure 4

Current differential equation: (a) model and the terms of the current equation: (b) first term, (c) second term and (d) auxiliary term for the first term

Fig. 5.
figure 5

Differential position equation: (a) model and (b) auxiliary term

Fig. 6.
figure 6

(a) Position, (b) velocity and (c) aceleration outputs of the simulation

4 Results

Running the model drew in Sect. 3 for the inputs:

figure a

Where all the geometrical values, and the number of turns, were taken from measures of a real solenoid. The resistance was calculated based on the wires dimensions and the magnetic permissiveness are based on the greatness of normal ferromagnetic material such as iron. The friction coefficient is considered null because of the position in which the solenoid is being analyzed in Fig. 1(a). \(V_{(t)}\) is a Decreasing ramp that varies in initial value from 10,000V to 220,00V for each output graph, and has it’s final value at 0,0100s as 0V. This should simulate a quick non-ideal pulse of voltage. The Simulation outputs behave as shown in Figs. 6(a), (b), (c), 7(a) and (b). It’s seen in those graphs that the response to the stimulus tend to explode into instability, which was expected since the solenoid plunger will only stop when it’s middle reaches the center of the coil but the model assumes, in Eqs. 7 and 8, that the plunger has infinite length and is pursuing a infinite path.

In those graphs, for any variable, the increasing voltage inputs generated ten outputs similar in form and characteristics, and so we must conclude that the Simulink model can be used as a tool to anticipate any solenoid behavior. Although it is impossible to confirm this without the proper validation, all indicates that the flowchart model can be used to develop new solenoids for our projects, if those don’t disobey any of the hypothesis in this paper and also have a limited small path to cross.

Fig. 7.
figure 7

(a) Current and (b) current variation outputs of the simulation

5 Conclusion

Although the literature about this type of model is not as extensive as one would expect, in this paper we achieved the objective to model the solenoid’s plunger motion. Unfortunately this model can only work for the small amount of time that takes for the plunger to achieve the final point of its direct path in the spring direction, which means, the simulation is only valid for the time where \(x_{(t)} < L_{0}\). It is also not considered the variation of the magnetic permeability which can lead to a unfaithfully result if the ferromagnetic material is on its saturated state.

As future works, we plan to overcome the model constraints by changing our approach in the magnetic circuit analysis, its intended to integrate the magnetic field for each point in space, via Biot Savart law, to later find the function that determines exactly how the flux behaves inside the solenoid, and then, find the magnetic force and the coil voltage with said function. But, although our current approach have it’s constraints, it is already a useful tool to analyze solenoids with small, limited, position variations. Its also, in our plans to validate this, and the next model, with data acquired from real solenoids in controlled experiments.