Next Article in Journal
Self-Adaptive Approximate Mobile Deep Learning
Next Article in Special Issue
Nonlinear Time Series Analysis in Unstable Periodic Orbits Identification-Control Methods of Nonlinear Systems
Previous Article in Journal
A Methodology to Produce Augmented-Reality Guided Tours in Museums for Mixed-Reality Headsets
Previous Article in Special Issue
SPSO Based Optimal Integration of DGs in Local Distribution Systems under Extreme Load Growth for Smart Cities
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Model-Based Design of an Improved Electric Drive Controller for High-Precision Applications Based on Feedback Linearization Technique

by
Pierpaolo Dini
and
Sergio Saponara
*,†
Department of Information Engineering, University of Pisa, Lungarno Antonio Pacinotti, 43, 56126 Pisa, Italy
*
Author to whom correspondence should be addressed.
Authors equally contributes to this article.
Electronics 2021, 10(23), 2954; https://doi.org/10.3390/electronics10232954
Submission received: 9 November 2021 / Revised: 24 November 2021 / Accepted: 24 November 2021 / Published: 28 November 2021
(This article belongs to the Special Issue Operation and Control of Power Systems)

Abstract

:
This paper presents the design flow of an advanced non-linear control strategy, able to absorb the effects that the main causes of torque oscillations, concerning synchronous electrical drives, cause on the positioning of the end-effector of a manipulator robot. The control technique used requires an exhaustive modelling of the physical phenomena that cause the electromagnetic torque oscillations. In particular, the Cogging and Stribeck effects are taken into account, whose mathematical model is incorporated in the whole system of dynamic equations representing the complex mechatronic system, formed by the mechanics of the robot links and the dynamics of the actuators. Both the modelling procedure of the robot, directly incorporating the dynamics of the actuators and the electrical drive, consisting of the modulation system and inverter, and the systematic procedure necessary to obtain the equations of the components of the control vector are described in detail. Using the Processor-In-the-Loop (PIL) paradigm for a Cortex-A53 based embedded system, the beneficial effect of the proposed advanced control strategy is validated in terms of end-effector position control, in which we compare classic control system with the proposed algorithm, in order to highlight the better performance in precision and in reducing oscillations.

1. Introduction

In this paper, we propose a non-linear control technique that absorbs the negative effects of the torque ripple delivered by permanent magnet synchronous motor (PMSM), which affect the accuracy of rotor axis position control. As a case study, the position control of the end-effector of a manipulator robot is considered. This allows us to assess the complexity of the development of the control system using our technique, in the context of a fairly complex mechatronic system.
The development of a control technique able to absorb this type of intrinsic non-linearity associated with the use of electric drives based on PMSM is an application of industrial interest. It is certainly well known that PMSM are the most efficient from the point of view of energy and the relationship between inertia and electromagnetic torque delivered. The problems in using PMSM for precision applications are mainly related to the complexity of driving, since an inverter and an efficient modulation algorithm are necessarily required, and to the intrinsic interaction between permanent magnets and stator structure, which overlaps with electromechanical conversion effects, especially at low rotor speeds. In this work, we focus on the development of a control strategy capable of absorbing the main sources of disturbance to the electromagnetic torque.
The contribution of this work is to apply the non-linear control strategy, capable of significantly reducing the effects of electromagnetic torque disturbances, in the context of a mechatronic system of relatively high complexity, such as a robot manipulator with two degrees of freedom. The validation of the strategy proposed in this work involves a very accurate modelling of all physical and architectural aspects. In particular, a high degree of detail is taken into account in the virtual representation of the electrical drives, in which the modulation and supply aspects through three-phase inverter of the control voltages are modelled. In the modelling of synchronous motors, the model of the main sources of torque ripple is included. In particular, models of the Cogging Torque and Stribeck Torque phenomena are included.
The objective is also to show operationally how to develop and validate efficient control algorithms able to compensate for intrinsic non-linearity effects of the controlled physical process, in the case of strong industrial interest of mechatronic systems of electro-mechanical nature, through accurate modelling and/or mathematical formalisation. The case study is that of a simple manipulator robot, but the procedure we show in this paper is not limited to the case study itself, and could be applied in different industrial applications such as the control of industrial technological processes and assisted driving control of vehicles. Hereafter, the rest of the paper is organized as follows. Section 2 reviews the cogging and Stribeck effects and the related work at the state of art. Section 3 presents the electric drive system modeling. Section 4 deals with advanced control system design. Processor in the loop verification when the proposed technique is implemented on Cortex-A53 processor is reported in Section 5. Conclusions and future works are addressed in Section 6.

2. Review of Cogging and Stribeck Effects and Related Works

2.1. Brief Explanation of the Cogging and Stribeck Effects

In this work, the two most important effects are considered as intrinsic non-linearity representing the torque ripple affecting the performance of the positioning control: Cogging Torque and Stribeck Torque.
Cogging torque arises from the magnetic interaction between the permanent magnets on the rotor surface and the teeth of the stator slots. This interaction results in magnetic forces that alternately attract and repel the two parts in the direction of rotation of the rotor axis [1]. Figure 1 shows how, depending on the relative position between a permanent magnet and a stator tooth, the interaction force changes from being in favour of the direction of rotation (Figure 1a) to being against the direction of rotation (Figure 1b).
The alternation of the phases of attraction and repulsion means that the Cogging Torque can be represented in closed form as an additive disturbance on the electromagnetic torque with the peculiarity of being zero averaged and with a frequency that depends on the internal structure of the machine, in terms of the number of stator teeth and the number of permanent magnets arranged on the rotor [2,3]. In this work, we refer to the formulation given in Equation (1).
T c o g = i = 1 N h T i sin i θ θ c o g + α i
In the expression of T c o g , θ represents the rotation of the rotor axis, N h the number of harmonics needed to exhaustively represent the phenomenon, T i and α i are the modulus and phase coefficients of the ith harmonic and θ c o g represents the angular period of the Cogging phenomenon. Furthermore, it has been shown that a limited number of harmonics (in this paper we limit the analysis to four harmonics) provides a sufficiently detailed representation of the phenomenon.
The second phenomenon we take into account when modelling electromagnetic torque ripple is the Stribeck torque. As shown in Figure 2 the Stribeck model, whose expression is given in Equation (2), is a generalisation of the viscous friction force model, which would instead depend only on the velocity (and its sign) [4].
T s t r = T c o u l + T s t a t T c o u l e ω ω s t r 2 + β ω s i g n ω
In Equation (2), T c o u l represents the level of torque required to balance the constant friction at each angular velocity, T s t a t is the peak torque of the static friction to be balanced at nearly zero velocity, β is the coefficient of viscous friction and ω s t r is the angular velocity at which the actual Stribeck phenomenon is triggered. In essence, the Stribeck phenomenon is the transient that links static friction with the classical model of viscous friction with a model linearly dependent on angular velocity. Note the importance of including Stribeck’s model when studying phenomena at relatively low speeds, such as in robotic applications where a certain amount of precision in positioning the end-effector is required.

2.2. Related Work

The authors of [5] propose the reduction of torque ripple by means of an exhaustive analysis of inverter commutations, in electric drives in which a brushless DC motor is used for applications in which it is required to maintain a constant electromagnetic torque at a constant medium speed. Compared to that work, we present several contributions, including a much more exhaustive modelling of the electric motor dynamics, and having considered a complex mechatronic system as a use case, not limiting the analysis to the control of the actuator alone.
The authors in [6] propose the use of jerk estimation to limit the effect of torque ripple during angular acceleration and deceleration of the rotor axis, for position control in robotic applications. The paper lacks a comprehensive description of the synchronous motor model used, and the authors assume that the robot is comparable to an ideal load modelled as a second-order system. In doing so, motions of non-linearity effects due to the robot mechanics are neglected. With respect to this work, we propose a modelling of the mechatronic system with a high degree of detail, so that the quality of the control obtained can be effectively assessed.
In [7], the particularity of the braking torque control is illustrated at first. Then, the speed ranges where the commutation torque ripple can be reduced are derived under the nine common braking PWM strategies. In order to simplify the process of the theory derivation, the corresponding relations between the nine braking PWM strategies and the different pairs of switch states are fully utilized. Finally, a braking control method is proposed to slow down the BLDCM smoothly and stably. Compared to ours, the problem with this work is that the solution found is not generally suitable for position control, and the dynamics of the mechanical load are not considered.
An adaptive nonlinear technique for controlling the angular velocity of a simple BLDC motor for mechatronic applications is proposed in [8]. The algorithm proposed by the authors involves the on-line estimation of some parameters of the electric motor model and the use of a lookup table to approximate the back e.m.f from the angular position measurement and the result of the angular speed control loop. In addition, in this the reduction of the torque ripple is subordinate to the writing of a mathematical model of it. Compared to our proposed work, besides not considering the insertion of the electric drive within the context of complex mechatronic systems, the presence of adaptive algorithms weighs down the computational cost of the algorithm, which may not be adequate for low-cost embedded systems.
The authors in [9] propose a control strategy based on Fuzzy PID logic, for DC motors in a Cartesian Robot, with the aim of absorbing the harmful effects of the Stribeck phenomenon. In contrast to our work, the robot model is represented by a second-order mechanical system and does not take into account the presence of the electric drive. Moreover, the authors’ results only show how their strategy is better than a classical PID with regard to the angular positioning of the motor, without showing how the robot’s end-effector behaves in the working plane.
In [10], an innovative Adaptive controller is presented that exploits learning paradigm within a novel control architecture, in order to reduce Stribeck effect in a BLDC electric drive. In this work, it is presented the validation based on an exhaustive modelling of electric drive and motor limiting the analysis to only the Stribeck ripple effect without consider a complex mechatronic system architecture, as instead is presented in this paper.
The authors of [11] presents a control algorithm able to suppress the phenomenon of cogging torque in high power brushless motors, while [12] shows an anti-cogging control strategy inserted in the context of a Sensor-less control architecture using an extended Kalman filter. In [13], the authors propose also the validation of the proposed algorithm exploiting the paradigms of the Co-Simulation and Formal methods. The contribution with respect to these articles is to propose an algorithm suitable for absorbing the effects due to more than one source of torque ripple, and to place the control strategy in the context of a complex mechatronic system of industrial interest.

3. System Modelling

3.1. Robot Dynamics

As far as the mechanical part of the mechatronic system is concerned, reference is made to a serial robot with two rotary joints, which essentially represents the structure (neglecting prismatic part) of a SCARA robot [14]. A schematic of the essential structure is shown in Figure 3.
Table 1 shows the names and meaning of the parameters needed to define the geometry, kinematics and dynamics of the robot model. In order to include the contribution of the actuator dynamics within the differential equations describing the robot dynamics, the Lagrange method [15] is used. Therefore, it is necessary to write the expressions of the velocities of the centres of mass of the links of the robot, as in Equation (3).
V C 1 = V O + ω 1 O C 1 = q ˙ 1 u z a 1 cos q 1 u x + sin q 1 u y V C 2 = V A + ω 2 A C 2 = = 2 q ˙ 1 a 1 sin q 1 + q ˙ 1 + q ˙ 2 a 2 sin q 1 + q 2 u x + + 2 q ˙ 1 a 1 cos q 1 + q ˙ 1 + q ˙ 2 a 2 cos q 1 + q 2 u y
In Equation (3) are reported the expressions of the two mass centers of the robot’s links, C 1 and C 2 , exploiting the fundamental law of the kinematics. The link lengths are denoted by a 1 and a 2 , and are equivalent to the length of the vectors O C 1 and A C 2 , while u x and u y represent the verses of the Cartesian reference system shown as in Figure 3. We denote by q 1 and q 2 the relative angular positions of the robot links and by ω 1 and ω 2 the absolute velocities of the two links.
Consequently, the kinetic and potential energies associated with each element of the kinematic chain are written down in the Equation (4).
K L 1 = 1 2 m 1 V C 1 2 + 1 2 I 1 ω 1 2 = 1 2 I 1 + m 1 a 1 2 q ˙ 1 2 = 1 2 I 1 + m 1 a 1 2 θ ˙ 1 2 r 1 2 K M 1 = 1 2 J 1 θ ˙ 1 2 K L 2 = 1 2 m 2 V C 2 2 + 1 2 I 2 ω 2 2 = = 1 2 I 2 θ ˙ 1 r 1 + θ ˙ 2 r 2 2 + 1 2 m 2 4 θ ˙ 1 2 r 1 2 a 1 2 + θ ˙ 1 r 1 + θ ˙ 2 r 2 2 a 2 2 + 4 θ ˙ 1 r 1 θ ˙ 1 r 1 + θ ˙ 2 r 2 a 1 a 2 cos θ ˙ 2 r 2 K M 2 = 1 2 J 2 θ ˙ 2 2 + 1 2 M 2 V A 2 = 1 2 J 2 θ ˙ 2 2 + 4 M 2 a 1 2 θ ˙ 1 2 r 1 2 U L 1 = m 1 O C 1 g = m 1 a 1 g sin θ 1 r 1 U M 1 = 0 U L 2 = m 2 O C 2 g = m 2 g 2 a 1 sin θ 1 r 1 + a 2 sin θ 1 r 1 + θ 2 r 2 U M 2 = 2 M 2 g a 1 sin θ 1 r 1
In particular, K L 1 , U L 1 are the kinetic and potential energies associated with the first link of the robot, K M 1 , U M 1 are the kinetic and potential energies associated with the motor implementing the first link, K L 2 , U L 2 are the kinetic and potential energies associated with the second link of the robot while K M 2 , U M 2 are the kinetic and potential energies of the motor implementing the second link of the robot.
K = K L 1 + K M 1 + K L 2 + K M 2 = A θ 2 θ ˙ 1 2 + B 0 θ ˙ 2 2 + C θ 2 θ ˙ 1 θ ˙ 2 = A 0 + A 1 cos θ 2 r 2 θ ˙ 1 2 + B 0 θ ˙ 2 2 + C 0 + C 1 cos θ 2 r 2 U = U L 1 + U M 1 + U L 2 + U M 2 = D 1 sin θ 1 r 1 + D 2 sin θ 1 r 1 + θ 2 r 2
The expression of the kinetic and potential energy of the whole mechanical system is given in Equation (5). Where A 0 , A 1 , B 0 , C 1 , D 1 and D 2 are the coefficients whose expression is given in Equation (6). This step allows to write in a fairly compact form the Lagrangian, which will be used to derive the expressions of the robot dynamics. It should be noted that in this context a ‘rigid’ relationship has been imposed between the angular variables of the actuators and those of the links of the type θ k = r k q k , assuming an ideal motion transmission system, without loss of generality of the proposed method.
A 0 = 1 2 I 1 + m 1 a 1 2 r 1 2 + J 1 + I 2 r 1 2 + m 2 4 a 1 2 + a 2 2 r 1 2 A 1 = m 2 a 1 a 2 2 r 1 2 B 0 = I 2 + m 2 a 2 2 2 r 2 2 + J 2 2 C 0 = I 2 + m 2 a 2 2 r 1 r 2 C 1 = m 2 a 1 a 2 2 r 1 r 2 D 1 = m 1 + 2 m 2 + 2 M 2 a 1 g D 2 = m 2 a 2 g
In Equation (7), the definition of the functional is given, which is elaborated according to the criterion of Lagrange’s method mentioned earlier, as given in Equation (8).
L θ 1 , θ 2 , θ ˙ 1 , θ ˙ 2 = def K θ 1 , θ 2 , θ ˙ 1 , θ ˙ 2 U θ 1 , θ 2
d d t L θ ˙ k L θ k = Q k = def i = 1 N F i , e x t r i θ k + τ i ω i θ ˙ k
Applying Lagrange’s method gives the result given in matrix form in Equation (9). Note that this equation can be put into “Standard” form, as given in Equation (10), where M ( θ 1 , θ 2 ) represents the inertia matrix, which as can be seen is symmetric, C ( θ ˙ 1 , θ ˙ 2 , θ 1 , θ 2 ) is the matrix of the centrifugal and Coriolis terms, and is already in the form of Christoffel symbols such that M ˙ 2 C is anti-symmetric, and finally G ( θ 1 , θ 2 ) is the vector of the gravitational and potential terms. The vector [ τ 1 τ 2 ] T represents the vector of link control pairs, the expression of which describes the connection between the electrical and mechanical drive systems of the robot.
2 A 1 cos θ 2 r 2 + A 0 C 1 cos θ 2 r 2 + C 0 C 1 cos θ 2 r 2 + C 0 2 B 0 θ ¨ 1 θ ¨ 2 + A 1 θ ˙ 2 r 2 sin θ 2 r 2 A 1 θ ˙ 1 r 1 + C 1 θ ˙ 2 r 2 sin θ 2 r 2 A 1 θ ˙ 1 r 1 r 2 sin θ 2 r 2 0 θ ˙ 1 θ ˙ 2 + D 1 r 1 cos θ 1 r 1 + D 2 r 2 cos θ 1 r 1 + θ 2 r 2 D 2 r 2 cos θ 1 r 1 + θ 2 r 2 = τ 1 τ 2
M θ 1 , θ 2 θ ¨ 1 θ 2 ¨ + C θ 1 , θ 2 , θ ˙ 1 , θ ˙ 2 θ ˙ 1 θ ˙ 2 + G ( θ 1 , θ 2 ) = τ 1 τ 2

3.2. Synchronous Motors Modelling

In this work, without any loss of generality, we consider permanent magnets arranged on the rotor surface, with sinusoidal distribution of the counter electro-motor force [16]. This allows to write the typical equations of an isotropic synchronous machine.
Table 2 shows the names and meaning of the coefficients that characterise the dynamics of the actuators. According to the Unified Theory of Electrical Machines [17], the dynamics of an electrical machine can be described by an equivalent electrical and magnetic circuit. For a synchronous motor with permanent magnets (isotropic), this results in circuit equilibrium in Equation (11).
U a , k U b , k U c , k = R k I a , k I b , k I c , k + L k d d t I a , k I b , k I c , k p k d θ k d t λ k sin p k θ k sin p k θ k 2 π 3 sin p k θ k 4 π 3
In Equation (12) the mechanical equilibrium for the rotational axis of each electric motor is given. By k, we denote an index related to the kth motor, T s t r is the Stribeck torque according to Equation (Figure 2), T c o g is the Cogging torque according to Equation (1) and T l o a d is the load torque for the motor.
J k d 2 θ k d t 2 + T s t r , k = T e m , k + T c o g , k T l o a d , k T e m , k = p k λ k I a , k sin p k θ k + I b , k sin p k θ k 2 π 3 + I c , k sin p k θ k 4 π 3
The connection between the electric drive part and the mechanical part of the robot exploits the hypothesis of motion transmission by means of an ideal gearbox, so that between q i and θ i ( i ) there is a congruence relation given by θ i = r i q i , where r i represents the ith reduction ratio. In this way, the power flow at each robot joint is also fully conserved so that we can write the relation θ i = T e m , i ω i , i.e., τ i = r i T e m , i . Hence, the connection between the robot Equations (9) and (10) and the motor Equations (11) and (12).

4. Control System Design

4.1. State Space Representation

As a first step in the control vector design, the dynamic equations of the system are reorganised into state vector form. Furthermore, it is convenient to apply the coordinate transformations given in Equation (13) to the electrical equilibrium equations of the motors.
X α β , k = 1 1 2 1 2 0 3 2 3 2 X a b c , k = B X a b c , k X d q , k = cos θ k sin θ k sin θ k cos θ k X α β , k = P ( θ k ) X α β , k
In Equation (13), the matrix B is called Blondell’s matrix and allows to reduce the number of equations so as to describe a three-phase motor as if it were single-phase, while the matrix P ( θ k ) is called Park’s matrix, and is needed to make the single-phase representation equivalent to a DC motor, eliminating the dependence on θ k in the expression of the electromagnetic torque.
U d , k U q , k = R k I d , k I q , k + L k d d t I d , k I q , k + p k d θ k d t L k I q , k λ k + L k I d k ; T e m , k = 3 2 p k λ k I q , k
Equation (14) represents Park’s model of electrical equilibrium, in which it is noted that the new expression of T e m , k is independent of angular position. The state form obtained is represented in Equations (15) and (16), where it is highlighted that the control variables of an electro-mechanical system are the supply voltages of the motors.
d x d t = f x + G x u = f + k = 1 n u g ( x ) u k f = f i d , 1 f i q , 1 f i d , 2 f i q , 2 f θ 1 f θ 2 f ω = 1 L 1 R 1 I d , 1 + p 1 ω 1 L 1 I q , 1 1 L 1 R 1 I q , 1 p 1 ω 1 λ 1 + L 1 I d , 1 1 L 2 R 2 I d , 2 + p 2 ω 2 L 2 I q , 2 1 L k R 2 I q , 2 p 2 ω 2 λ 2 + L 2 I d , 2 ω 1 ω 2 f ω ; G = 1 L 1 0 0 0 0 1 L 1 0 0 0 0 1 L 2 0 0 0 0 1 L 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
f ω = 2 A 1 cos θ 2 r 2 + A 0 C 1 cos θ 2 r 2 + C 0 C 1 cos θ 2 r 2 + C 0 2 B 0 1 T e m , 1 + T c o g , 1 T s t r , 1 T e m , 2 + T c o g , 2 T s t r , 2 A 1 ω 2 r 2 sin θ 2 r 2 A 1 ω 1 r 1 + C 1 ω 2 r 2 sin θ 2 r 2 A 1 ω 1 r 1 r 2 sin θ 2 r 2 0 ω 1 ω 2 + D 1 r 1 cos θ 1 r 1 + D 2 r 2 cos θ 1 r 1 + θ 2 r 2 D 2 r 2 cos θ 1 r 1 + θ 2 r 2
The state vector is x = I d , 1 , I q , 1 , I d , 2 , I q , 2 , θ 1 , θ 2 , ω 1 , ω 2 while the control vector is given by u = U d , 1 , U q , 1 , U d , 2 , U q , 2 . It is important to note that proceeding with modelling as shown above provides a more accurate and less abstract level of description of the physical process than is often done in the development of control algorithms for robotic applications. Typically, the development of control algorithms, such as computed torque [18] or back-stepping [19], assumes that the control vector is represented by the actuation torques at the robot joints, inherently assuming that the electrical drive is capable of delivering the required torques. This is not only wrong from the point of view of describing the physical system, making the mathematical model too abstract and untrue in representing the link between the system’s inputs and outputs, but it also does not allow strategies to be developed to reduce the non-linearities of the implementation system, as they are directly neglected. This is also an important contribution of the work we have presented, as it makes it possible to develop a deterministic control strategy without having to compensate for deficiencies in mathematical modelling through computationally burdensome tools, such as the use of predictive, adaptive or machine learning control paradigms.

4.2. Application of the Feedback Linearization Technique

As already mentioned, the control technique selected is Feedback linearization (input-output) [20]. This non-linear control technique allows the contribution given by the a priori knowledge through the mathematical model of the total torque ripple, the sum of the Cogging and Stribeck phenomena, to be inserted directly into the control vector.
h 1 x = 2 a 1 cos θ 1 r 1 + 2 a 2 cos θ 1 r 1 + θ 2 r 2 = h 1 θ 1 , θ 2 h 2 x = 2 a 1 sin θ 1 r 1 + 2 a 2 sin θ 1 r 1 + θ 2 r 2 = h 2 θ 1 , θ 2 h 3 x = i d , 1 h 4 x = i d , 2
In Equation (17) the expressions of the controlled outputs are given, where h 1 and h 2 represent the expressions of the Cartesian coordinates of the robot end-effector, while h 3 and h 4 are the direct axis currents in the Park model of the motors. This choice allows to control the position of the end-effector, which is in fact a function of the angular positions of the motors, and the current of the motors so as to guarantee a certain efficiency in the delivery of the electromagnetic torque, emulating a field-oriented control (FOC) [21].
d h i d t = h i x x t = h i x f + k = 1 n u g k u k = h i x f = L f h i d μ i h i d t μ i = d d t L f μ i 1 = x L f μ i 1 f + k = 1 n u g k u k = L f μ i h i + k = 1 n u L g k L f μ i 1 h i u k
The operative procedure for applying Feedback linearization involves deriving the control outputs as many times as necessary to obtain expressions in which the contributions of the control variables appear. In Equation (18) the expression of the derivative μ i th for the ith control output is given in general form. We denote the relative degree for the output ith by μ i , with the condition that μ i n x .
L f μ 1 h 1 L f μ 2 h 2 L f μ l h l + L g 1 L f μ 1 1 h 1 L g m L f μ 1 1 h 1 L g 1 L f μ 2 1 h 2 L g m L f μ 2 1 h 2 L g 1 L f μ l 1 h l L g m L f μ 1 l h l u = v = Γ ( x ) + Σ ( x ) u u = Σ + ( x ) v Γ ( x ) + I Σ + ( x ) Σ ( x ) λ
Proceeding with the derivation of each control output, in general we obtain the matrix expression given in Equation (19), where with L g i L f h j ( x ) = x h j x f g i is the Lie derivative of the function h j in the directions of the vector fields f and g i respectively.
z ˙ = A 1 0 0 0 0 A 2 0 0 0 0 0 A l z + B 1 0 0 0 B 2 0 0 0 B l v z = z 1 z 2 z l ; z i = h i L f h i L f μ i 1 ; A i = 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 ; B i = 0 0 0 1
The Feedback linearization procedure results in a change of coordinates in which the dynamics of the new state vector is linear, as shown in Equation (20). Note that the state representation in addition to being linear represents a chain of integrators, consequently the pair ( A i , B i ) turns out to be completely reachable/controllable i .
z ˜ = z σ ( x ) w i t h σ ( x ) s . t z ˜ x 0
In general, a change of basis with reduction of the cardinality of the state space is obtained. Formally, this requires that certain mathematical conditions are fulfilled, which define the criterion of zero dynamics [22]. The first condition is given in Equation (21), where we impose that the Jacobian of the base change is formally lawful (invertible). This means that the completion σ ( x ) R n x μ i will have to be constructed appropriately to satisfy the condition.
σ ˙ x = γ z , σ + ξ z , σ v
The completion vector σ ( x ) will in general have a non-linear state representation, dependent on both the new and old state variables and also on the new control vector, as given in Equation (22).
L g k σ i = 0 i , k σ ˙ x = γ z , σ σ ˙ x = γ 0 , σ A . S .
The second condition, given in Equation (23), serves to eliminate the contribution of the new control vector v from the dynamics of the vector σ . In this way it is possible to implement the zero-dynamics criterion, which guarantees us that even in the case of a reduction of the cardinality of the state space, the vector v constructed by means of a Feedback linearization technique is able to asymptotically stabilize even the state variables that serve only to make the base change formally lawful.
d h 3 d t = d I d , 1 d t U d , 1 μ 3 = 1 d h 4 d t = d I d , 2 d t U d , 2 μ 4 = 1 d h i d t = h i θ 1 d θ 1 d t + h i θ 2 θ 2 d t = ϕ 1 ( θ 1 , θ 2 ) ω 1 + ϕ 2 ( θ 1 , θ 2 ) ω 2 = Φ ( θ 1 , θ 2 , ω 1 , ω 2 ) d 2 h i d t 2 = d Φ d t = Φ θ 1 ω 1 + Φ θ 2 ω 2 + Φ ω 1 ω ˙ 1 + Φ ω 2 ω ˙ 2 = Ψ ( θ 1 , θ 2 , ω 1 , ω 2 , I q , 1 , I q , 2 ) d 3 h i d t 3 = d Ψ d t = Ψ θ 1 ω 1 + Ψ θ 2 ω 2 + Ψ ω 1 ω ˙ 1 + Ψ ω 2 ω ˙ 2 + Ψ I q , 1 I ˙ q , 1 + Ψ I q , 2 I ˙ q , 2 U q , i μ i = 3 , i = 1 , 2
As shown in the set of Equation (24), in the case study of our interest, as a result of the choice of control outputs shown above, a “complete” Feedback linearization is obtained in which there is no change in the cardinality of the state space.
d 3 h 1 d t 3 = α 1 ( x ) + β 11 ( x ) U q , 1 + β 12 ( x ) U q , 2 = v 1 d 3 h 2 d t 3 = α 2 ( x ) + β 21 ( x ) U q , 1 + β 22 ( x ) U q , 2 = v 2 d h 3 d t = d I d , 1 d t = α 3 ( x ) + 1 L 1 U d , 1 = v 3 d h 4 d t = d I d , 2 d t = α 3 ( x ) + 1 L 2 U d , 2 = v 4
It is operationally verified by the essential steps given in Equation (25) that the control vector u can be written as in Equation (26).
u = Σ 1 v Γ = 0 0 β 11 β 12 0 0 β 21 β 22 1 L 1 0 0 0 0 1 L 2 0 0 v 1 α 1 v 2 α 2 v 3 α 3 v 4 α 4 = U d , 1 U d 2 U q , 1 U q , 2

5. Processor-In-the-Loop Simulations

For the validation of the control system described above, the results obtained through a Processor-In-the-Loop (PIL) simulation are reported, in which the control algorithm is implemented on an Embedded platform, a Raspberry Pi 3 model B (RPI3B), with a Broadcom BCM2837 chipset integrating Cortex-A53 @ 1.2 GHz processor, while the model of the drive, synchronous motors and robot mechanics is implemented in the Simulink environment (MATLAB 2018b version). The interface between the embedded system and the simulation environment uses the Raspberry Pi Support from Simulink [23], provided by MathWorks. Figure 4 shows the functional block diagram of the system composed of both the electric drive and the robot dynamics, where it is highlighted that the proposed control system works on the dynamic variables concerning the electric drive and that the trajectory generation system in the robot operating space works on the robot variables. In addition, Figure 4 highlights the division between blocks implemented on the embedded system and functional blocks implemented in the Simulink environment.
Therefore, in order to ensure that the motor control is such that it moves the robot end-effector as desired, it is necessary to introduce a conversion block based on inverse kinematics. In order not to deal with numerical problems and numerical ill-conditioning, the algebraic approach is adopted as given in the set of Equation (27).
C 2 = x 2 + y 2 a 1 2 a 2 2 2 a 1 a 2 S 2 = 1 C 2 2 q 2 = arctan S 2 C 2 q 1 = arctan y x arctan a 2 sin q 2 a 1 + a 2 cos q 2
Using these equations, we calculate the angular position references for the electric motors that actuate the robot joints, from the references defined for the Cartesian variables of the robot. For applications where trajectories are very complicated, in addition to the “conversion” between Cartesian and angular variables, inverse kinematics should be integrated using geometric methods [24]. The control we have developed is compared with the classic FOC control realised with Cascade architecture, which is the algorithm most commonly implemented in motor controllers such as RoboteQ [25] and Curtis Instruments [26].
Figure 5 represents the comparison between the Cascade control and our proposed non-linear control, regarding the tracking of the position reference of the first actuator of the robot.
Figure 6 shows in detail the behaviour of the first actuator, in the application cases of Cascade control and the proposed control, in the “critical” (cusp-shaped) situations. As can be seen, the behaviour of the motor position follows the trajectory more efficiently and also reduces, as expected, the oscillating effect due to the sources of torque ripple. Note that Figure 5 and Figure 6 depict the trend of the same variable. The first one over the whole simulation time interval, while the second one depicts the portion of interest at the cusp management points in the reference signal.
Figure 7 shows the result of the position control of the second robot joint, in terms of rotation of the second robot motor. Again, as shown in more detail in Figure 8, our proposed control is more precise and absorbs almost totally the oscillations due to the torque ripple.
Note that Figure 7 and Figure 8 depict the trend of the same variable. The first one over the whole simulation time interval, while the second one depicts the portion of interest at the cusp management points in the reference signal.
It should be noted that the proposed control does not calculate the supply voltages in such a way as to obtain a desired position for the individual actuator, but instead calculates a supply voltage for each motor such that the mechanical structure moves as desired. In fact, the inverse kinematics block is used precisely to convert the reference signals expressed in terms of a time series into the Cartesian coordinates of the robot’s end-effector. Figure 9 and Figure 10 show the result obtained with the proposed control technique, regarding the tracking of the reference signal on the X-coordinate of the robot’s end-effector. Note that Figure 9 and Figure 10 depict the trend of the X component of the end-effector position. The first one over the whole simulation time interval, while the second one depicts the portion of interest at management of the steady-state condition in the reference signal. As could be expected, from the results related to the angular position control of the single actuator, our proposed control largely absorbs the oscillations on the positioning. Figure 10 shows in detail the phases in which it is required to maintain a constant position and it can be seen that in the Cascade control case (red line) there are ripples with respect to the reference (blue line). Our proposed control (yellow line) has almost no error in the phases in which the reference is constant in time, and is however more precise in the linear phases of the reference.
The same applies to the control of the Y-coordinate of the robot’s end-effector. As can be seen in Figure 11 and Figure 12, in the steady-state phase the control we designed is more efficient and more precise. Note that Figure 11 and Figure 12 depict the trend of the Y component of the end-effector position. The first one over the whole simulation time interval, while the second one depicts the portion of interest at management of the steady-state condition and the two linear transients, in the reference signal.
The trajectory in the required robot workspace is computed in terms of ( X d e s , Y d e s ) such that the end-effector traces on the X Y plane a profile reminding of spectacle frames. For this proof of concept, the slopes of the reference signals were calculated manually to ensure that the simulation had a duration of twelve seconds but of course the simulations can be parameterized to track any profile in the Cartesian plane.
A comparison between the control with classical architecture and the proposed control algorithm is shown in Figure 13. The robot is made to start from a position “far” from the required profile, in order to emulate the transient of reaching the working plane. In Figure 14 are shown in detail how the edge is managed in the case of using the classical control and the proposed control. It is also highlighted that in the upper straight phase of this desired profile, the classical control is not able to compensate in any way the oscillations in the positioning of the robot’s end-effector, due to the torque ripple.

6. Conclusions and Future Work

This work shows how to develop a control algorithm that is able to compensate for the intrinsic non-linearities of a complex mechatronic system. The approach introduced envisages a rather accurate mathematical modelling, both regarding the mechanical system, represented in this case by the two links of the robot, and the actuation system composed of the electric drive and the PMSM. The operational procedure to efficiently derive the expression (in closed form) of the control vector is shown. The validation of the control strategy described in the Processor-In-the-Loop context is presented, exploiting SW tools typical of the Model-Based Design approach, such as the automatic generation of low-level code and the HW support provided by MathWorks for the implementation on a Cortex-A53 based embedded platform. The results obtained are promising and the proposed procedure can be generalised in different mechatronic applications such as assisted driving of vehicles or industrial processes. The algorithmic solution we have developed improves the performance of electric drives for manipulator robots and is certainly of great industrial interest, for example in smart manufacturing applications [27], where technological innovation based on advanced research is gaining ground, thanks to the foresight of many industrial partners on the international scene.

Author Contributions

P.D. and S.S. contributed equally. All authors have read and agreed to the published version of the manuscript.

Funding

This work was funded by MIUR through project Dipartimenti di Eccellenza Crosslab.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Gieras, J.F. Electrical Machines: Fundamentals of Electromechanical Energy Conversion; CRC Press: Boca Raton, FL, USA, 2016. [Google Scholar]
  2. Ou, J.; Liu, Y.; Qu, R.; Doppelbauer, M. Experimental and theoretical research on cogging torque of PM synchronous motors considering manufacturing tolerances. IEEE Trans. Ind. Electron. 2017, 65, 3772–3783. [Google Scholar] [CrossRef]
  3. Boroujeni, S.T.; Jalali, P.; Bianchi, N. Analytical modeling of no-load eccentric slotted surface-mounted PM machines: Cogging torque and radial force. IEEE Trans. Magn. 2017, 53, 1–8. [Google Scholar] [CrossRef]
  4. Shir Guran, A.; Pfeiffer, F.; Popp, K. Dynamics with Friction: Modeling, Analysis and Experiment; World Scientific: Singapore, 2001; Volume 2. [Google Scholar]
  5. Shi, T.; Cao, Y.; Jiang, G.; Li, X.; Xia, C. A torque control strategy for torque ripple reduction of brushless DC motor with nonideal back electromotive force. IEEE Trans. Ind. Electron. 2017, 64, 4423–4433. [Google Scholar] [CrossRef]
  6. Shin, S.C.; Choi, C.H.; Youm, J.H.; Lee, T.K.; Won, C.Y. Position control of PMSM using jerk-limited trajectory for torque ripple reduction in robot applications. In Proceedings of the IECON 2012-38th Annual Conference on IEEE Industrial Electronics Society, Montreal, QC, Canada, 25–28 October 2012; pp. 2400–2405. [Google Scholar]
  7. Shi, T.; Niu, X.; Chen, W.; Xia, C. Commutation torque ripple reduction of brushless DC motor in braking operation. IEEE Trans. Power Electron. 2017, 33, 1463–1475. [Google Scholar] [CrossRef]
  8. Boroujeni, M.S.; Markadeh, G.A.; Soltani, J. Torque ripple reduction of brushless DC motor based on adaptive input-output feedback linearization. ISA Trans. 2017, 70, 502–511. [Google Scholar] [CrossRef] [PubMed]
  9. Wang, C.; Wan, Y.; Liang, X. Model establishment with Stribeck friction and fuzzy PID control for Cartesian picking robot system. In Proceedings of the 2017 Chinese Automation Congress (CAC), Jinan, China, 20–22 October 2017; pp. 3070–3074. [Google Scholar]
  10. Dini, P.; Saponara, S. Design of Adaptive Controller Exploiting Learning Concepts Applied to a BLDC-Based Drive System. Energies 2020, 13, 2512. [Google Scholar] [CrossRef]
  11. Dini, P.; Saponara, S. Cogging torque reduction in brushless motors by a nonlinear control technique. Energies 2019, 12, 2224. [Google Scholar] [CrossRef] [Green Version]
  12. Dini, P.; Saponara, S. Design of an observer-based architecture and non-linear control algorithm for cogging torque reduction in synchronous motors. Energies 2020, 13, 2077. [Google Scholar] [CrossRef]
  13. Bernardeschi, C.; Dini, P.; Domenici, A.; Palmieri, M.; Saponara, S. Formal Verification and Co-Simulation in the Design of a Synchronous Motor Control Algorithm. Energies 2020, 13, 4057. [Google Scholar] [CrossRef]
  14. Adept. Datasheet Adept Cobra i600 SCARA Robot. Available online: https://manualzz.com/download/10047191 (accessed on 9 October 2021).
  15. DIRK, J. Introduction to Classical Mechanics: Solutions to Problems; World Scientific: Singapore, 2020. [Google Scholar]
  16. Hughes, A.; Drury, B. Electric Motors and Drives: Fundamentals, Types and Applications; Newnes: London, UK, 2019. [Google Scholar]
  17. Gerling, D. Electrical Machines; Springer: Berlin/Heidelberg, Germany, 2016. [Google Scholar]
  18. Pereira, A.; Althoff, M. Safety control of robots under computed torque control using reachable sets. In Proceedings of the 2015 IEEE International Conference on Robotics and Automation (ICRA), Seattle, WA, USA, 26–30 May 2015; pp. 331–338. [Google Scholar]
  19. Guo, Q.; Zhang, Y.; Celler, B.G.; Su, S.W. Neural adaptive backstepping control of a robotic manipulator with prescribed performance constraint. IEEE Trans. Neural Netw. Learn. Syst. 2018, 30, 3572–3583. [Google Scholar] [CrossRef] [PubMed]
  20. Boufadene, M. Nonlinear Control Systems Using MATLAB®; CRC Press: Boca Raton, FL, USA, 2018. [Google Scholar]
  21. Jang, D.; Choe, G.; Ehsani, M. Vector control of three-phase AC machines: System development in the practice. In Power Systems, 2nd ed.; Springer: Berlin/Heidelberg, Germany, 2015. [Google Scholar]
  22. Astolfi, A.; Marconi, L. Analysis and Design of Nonlinear Control Systems; Springer: Berlin/Heidelberg, Germany, 2008. [Google Scholar]
  23. MathWorks. Raspberry Pi Support from Simulink. Available online: https://it.mathworks.com/hardware-support/raspberry-pi-simulink.html (accessed on 9 October 2021).
  24. Božek, P.; Lozkin, A.; Gorbushin, A. Geometrical method for increasing precision of machine building parts. Procedia Eng. 2016, 149, 576–580. [Google Scholar] [CrossRef] [Green Version]
  25. RoboteQ. RoboteQ Official Site Web. Available online: https://www.roboteq.com/index.php (accessed on 9 October 2021).
  26. Curtis Instruments. Curtis Instrument Official Site Web. Available online: https://www.curtisinstruments.com/products/motor-controllers/ (accessed on 9 October 2021).
  27. IFM Electronic. Processes in Automotive Industry. Available online: https://www.ifm.com/download/files/ifm-processes-in-the-automotive-industry-gb/\protect\T1\textdollarfile/ifm-processes-in-the-automotive-industry-gb.pdf (accessed on 9 November 2021).
Figure 1. Schematic representation of the magnetic stator-rotor interaction. The interaction force changes from being in favour of the direction of rotation (a) to being against the direction of rotation (b).
Figure 1. Schematic representation of the magnetic stator-rotor interaction. The interaction force changes from being in favour of the direction of rotation (a) to being against the direction of rotation (b).
Electronics 10 02954 g001
Figure 2. Qualitative representation of the friction phases.
Figure 2. Qualitative representation of the friction phases.
Electronics 10 02954 g002
Figure 3. Schematic representation of a 2R planar robot.
Figure 3. Schematic representation of a 2R planar robot.
Electronics 10 02954 g003
Figure 4. High level Description of the System Architecture.
Figure 4. High level Description of the System Architecture.
Electronics 10 02954 g004
Figure 5. First joint trajectory tracking result.
Figure 5. First joint trajectory tracking result.
Electronics 10 02954 g005
Figure 6. Zoom in the “cuspide” point managing.
Figure 6. Zoom in the “cuspide” point managing.
Electronics 10 02954 g006
Figure 7. Second joint trajectory tracking result.
Figure 7. Second joint trajectory tracking result.
Electronics 10 02954 g007
Figure 8. Zoom in a “cuspide” point managing.
Figure 8. Zoom in a “cuspide” point managing.
Electronics 10 02954 g008
Figure 9. Trajectory tracking result for X component of end-effector position.
Figure 9. Trajectory tracking result for X component of end-effector position.
Electronics 10 02954 g009
Figure 10. Zoom in a “steady-state” transitory.
Figure 10. Zoom in a “steady-state” transitory.
Electronics 10 02954 g010
Figure 11. Trajectory tracking result for Y component of end-effector position.
Figure 11. Trajectory tracking result for Y component of end-effector position.
Electronics 10 02954 g011
Figure 12. Zoom in a “steady-state” transitory.
Figure 12. Zoom in a “steady-state” transitory.
Electronics 10 02954 g012
Figure 13. Obtained trace on end-effector work plane.
Figure 13. Obtained trace on end-effector work plane.
Electronics 10 02954 g013
Figure 14. Zoom of previous figure.
Figure 14. Zoom of previous figure.
Electronics 10 02954 g014
Table 1. Parameters of the dynamic Robot model.
Table 1. Parameters of the dynamic Robot model.
Variables NameMeaning
m 1 , m 2 mass of robot’s links
M 1 , M 2 mass of the Synchronous motors
I 1 , I 2 inertia moments of the Robot’s links
J 1 , J 2 inertia moments of the actuator rotors
a 1 , a 2 semi-lengths of the Robot’s links
r 1 , r 2 reduction ratios
q 1 , q 2 , q ˙ 1 , q ˙ 2 relatives angular positions and speed
θ 1 , θ 2 , ω 1 , ω 2 absolutes angular positions and speed
Table 2. Parameters of the Dynamic Actuators model.
Table 2. Parameters of the Dynamic Actuators model.
Variables NameMeaning
R 1 , R 2 stator resistances
L 1 , L 2 stator inductances
λ 1 , λ 2 magnetic flux coefficients
p 1 , p 2 pole pairs
β 1 , β 2 friction coefficients
T i , k ; α i , k Cogging Torque Fourier Series coefficients
T c o u l , k ; T s t a t , k coulomb and static friction torque model
ω s t r Stribek rotary speed limit
θ 1 , θ 2 , Ω 1 , Ω 2 absolutes angular position and speed
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Dini, P.; Saponara, S. Model-Based Design of an Improved Electric Drive Controller for High-Precision Applications Based on Feedback Linearization Technique. Electronics 2021, 10, 2954. https://doi.org/10.3390/electronics10232954

AMA Style

Dini P, Saponara S. Model-Based Design of an Improved Electric Drive Controller for High-Precision Applications Based on Feedback Linearization Technique. Electronics. 2021; 10(23):2954. https://doi.org/10.3390/electronics10232954

Chicago/Turabian Style

Dini, Pierpaolo, and Sergio Saponara. 2021. "Model-Based Design of an Improved Electric Drive Controller for High-Precision Applications Based on Feedback Linearization Technique" Electronics 10, no. 23: 2954. https://doi.org/10.3390/electronics10232954

APA Style

Dini, P., & Saponara, S. (2021). Model-Based Design of an Improved Electric Drive Controller for High-Precision Applications Based on Feedback Linearization Technique. Electronics, 10(23), 2954. https://doi.org/10.3390/electronics10232954

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