# Passivity-Based Control for Rocket Launcher Position Servo System Based on ADRC Optimized by IPSO-BP Algorithm

Authors: Rong-lin Wang; Bao-chun Lu; Yuan-long Hou; Qiang Gao
Journal: Shock and Vibration
 (2018)

---

## Abstract

In order to achieve better motion accuracy and higher robustness of the shipborne rocket launcher position servo system driven by a permanent magnet synchronous motor (PMSM), a passivity-based controller based on active disturbance rejection control (ADRC) optimized by improved particle swarm optimization-back propagation (IPSO-BP) algorithm is proposed in this paper. The convenient method of interconnection and damping assignment and passivity-based control (IDA-PBC) is adopted to establish the port controlled Hamiltonian system with dissipation (PCHD) model of PMSM. To further enhance the robustness and adaptability of traditional ADRC, an BP algorithm is introduced to on-line update the proportional, integral, and derivative gains of ADRC. Furthermore, to improve the learning capability, the improved PSO algorithm is adopted to optimize the learning rates of the back propagation neural networks. The results of numerical simulation and prototype test indicate that the proposed IPSO-BP-ADRC-PBC controller has better static and dynamic performance than the ADRC-PBC and BP-ADRC-PBC controller with fixed learning rate.


---

## Body

## 1. Introduction

Due to the merits of strong firepower, high firing rate and far gunshot, shipborne rocket launchers are gaining more and more momentum as an indispensable and important oppressive armament in naval warfare [1, 2]. Basically, the response rate and firing accuracy depend on the rocket launcher position servo system [3]. However, on the technology shipborne rocket launchers are not equivalent to ordinary rocket launchers; the stability of firing accuracy is influenced not only by the nonlinearity and strong uncertainty of rocket launcher position servo system but also by the ship swing [4, 5]. In order to improve the accuracy and robustness of the rocket launcher, some well performance and high precision alternative current servo systems are studied with intelligent control algorithms in many articles [6–8].With the advantages of simple mechanical structure, high torque-to-inertia ratio, high efficiency, small torque ripple, and ease of control, permanent magnet synchronous motor (PMSM) has been widely used in some fields of high performance and high precision, like numerical control tools, industrial robots, rocket launchers, and so on [9–11]. The strong robustness and the high accuracy of position are considered as two the most important factors of high-performance position servo system [8, 12]. However, the presence of nonlinearities and uncertainties such as variable load, strong impact moment, nonlinear friction moment, and variable parameters induced by varying working conditions badly limits the performance of rocket launcher position servo system. Due to the unavoidable uncertainties and inherent nonlinearities of rocket launcher position servo system, it is not easy to improve the field oriented vector control performance only adopting the traditional PID controller [13, 14].In recent years, with the development of nonlinear control theory, many advanced control theories have already been developed and applied to the position servo system of PMSM, like predictive functional control, sliding mode control, robust control, fuzzy-sliding mode control, adaptive control, recurrent Elman neural network, particle swarm optimization, and so on [15–21]. However, these advanced control methods as mentioned above have the advantages and drawbacks, respectively. Generally, the robustness of control system can be significantly improved at the cost of its motion accuracy and vice versa. For example, the robustness of sliding mode control comes at the expense of the proverbial chattering and the phase delay.In order to achieve high tracking accuracy and excellent dynamic performance, a novel and effective strategy is required to resolve the conflicts between the tracking accuracy and robustness of the servo control system. Fortunately, the active disturbance rejection control (ADRC) technique is a new type method, which has been successfully applied to the motor drive system for many years [8, 22–25]. ADRC has many advantages, including high robust, fast response speed and good control precision, which can be designed without accurate mathematics model. However, more than about ten parameters of an ADRC controller should be adjusted to achieve good control performances and strong robustness during the control process, which result in poor operation. Nowadays, the ADRC-based control solutions for PMSM have been reported in many control research literatures, like sliding mode-adaptive disturbance rejection control, fuzzy-adaptive disturbance rejection control, and so on [13, 25].The interconnection and damping assignment passivity-based control (IDA-PBC) controller is firstly designed for PMSM by Petrovic, et al. [26]. The IDA-PBC methodology, also called a passivity-based control (PBC) theory, is firstly and systemically developed by Ortega et al. [27]. For its “almost” global stability, it is very easy to analysis and realize the stability and position tracking of servo control system with a PBC method. Presently, the passive control method has received more and more attention [28, 29].Particle swarm optimization (PSO) algorithm is a global optimization algorithm, which has a strong ability to find the global optimal solution. However, the PSO algorithm has some defects, such as slow convergence speed and easily falling into local minima. The back propagation (BP) algorithm, on the contrary, has a strong ability to find local optimal solution; but its ability to find the global optimal solution is very weak [7, 30]. Taking advantages of PSO and BP, a PSO-BP controller is designed to further enhance the robustness and adaptability of traditional ADRC. For increasing the BP learning capability, the improved PSO algorithm is adopted to optimize the learning rates of back propagation neural networks [31, 32]. In order to improve the convenience and performance of the ADRC controller, an improved ADRC strategy based PSO-BP algorithm is designed to on-line update the proportional, integral, and derivative gains of the nonlinear state error feedback.In order to achieve better motion accuracy and higher robustness of the shipborne rocket launcher position servo system, a passivity-based controller based on ADRC optimized by IPSO-BP algorithm for the shipborne rocket launcher is proposed in this article. The remaining parts of the paper are organized as follows: a certain rocket launcher position servo system is introduced in Section2. The port controlled Hamiltonian system with dissipation (PCHD) model of PMSM is established in Section 3. The primary concept of active disturbance rejection is briefly introduced in Section 4. The inside loop PBC controller is built in Section 5. In Section 6, an improved ADRC-PBC strategy is established for the rocket launcher position servo system; aiming to enhance the control performance, an on-line IPSO-BP controller is adopted to adaptively optimize the adjusting parameters of ADRC. In Section 7, the proposed approach is verified by using MATLAB/Simulink. The effectiveness of the proposed method is verified by a series of tracking experiments, which are conducted on the semiphysical simulation platform in Section 8. Finally, some conclusions are presented in the Section 9.


## 2. Certain Rocket Launcher Position Servo System

The principle block diagram of shipborne rocket launcher position servo system is shown in Figure1. The system is mainly composed of fire control computer, Servo control computer, D/A converter, Servo amplifier, AC motor drive, PMSM, Reduction ratio (i), Shaft angel sensor, RDC model, and so on. Its working principle is that the elevation angle and azimuth angle of rocket launcher are sent to the servo control computer, which are obtained by the fire control computer via ballistic calculation unit; according to the setting target angle value and practical target angle value, the digital signal control voltage is calculated with the control algorithm by the servo control computer; the practical target angle value is measured by the shaft angel sensor; after being conversed by D/A, the corresponding analog control signals are sent to the servo amplifier; after the isolation and enlargement by the power circuit of the servo amplifier and AC servo controller, these signals can drive the permanent magnet synchronous motor; finally, the mechanical power is transferred to the variable load through the reducer, so as to make the rocket launcher work under control.Figure 1
The principle block diagram of shipborne rocket launcher position servo system.


## 3. The PCHD Model of PMSM

### 3.1. The PCHD System

The position servo system of shipborne rocket launcher is a strong nonlinearity and uncertainty control object, which is deeply influenced by working conditions, disturbances, or environmental changes. Meanwhile, taking account of parameter variations shift with temperature, all kinds of losses such as the copper loss, iron loss, and so on, the PMSM model is a strong coupling, time-varying, and nonlinear system. However, the stability of firing accuracy is influenced not only by the strong nonlinearity and uncertainty of rocket launcher position servo system, but also by the ship swing. It is difficult to reach excellent control performance for PMSM with traditional vector control methods.PCHD system is a new kind of passive system. For its “almost” globally stabilization objectives, the schemes based on energy-shaping and port controlled Hamiltonian (PCH) have attracted more and more concerns [32]. The PCH system can be defined as(1)x˙=Jx∂Hx∂x+gxu,y=gTx∂Hx∂x.When the energy dissipation is introduced into the PCH framework by means of terminating some ports with resistive elements, the PCHD system can be described as(2)x˙=Jx-Rx∂Hx∂x+gxu,y=gTx∂Hx∂x,where x∈Rn is the state vector and u,y∈Rm is the input and output vector, respectively. Rx is the dissipation matrix, Jx is matrix of internal interconnection, and Jx=-JTx,Hx is the stored energy function.


### 3.2. The PCHD Model of PMSM

Irrespective of hysteresis losses, friction coefficient, and damping torque coefficients, the mathematical model of PMSM can be represented in a synchronously rotatingd-q reference frame as(3)Lddiddt=-Rsid+npωrLqiq+ud,Lqdiqdt=-Rsiq-npωrLdid-npωrψa+uq,Jdωmdt=τe-τL=npψfiq+Ld-Lqidiq-τL,where ud,uq are the stator voltages of the d- and q-axes components, respectively; id and iq are the stator currents of the d- and q-axes components, respectively; Ld and Lq are the rotor inductance of the d- and q-axes components, respectively; ψf is the rotor flux of the permanent magnet; Rs is the stator winding resistance; np is the polar pair; ωm is the mechanical angle velocity of PMSM; τe is the electromagnetic torque; J is the rotor inertia; τL is the load torque.The stator flux equation is(4)ψd=Ldid+ψf,ψq=Lqiq,where ψd and ψq are the stator flux of the d- and q-axes components, respectively.By Substituting formula (4) into formula (3), the mathematical model of PMSM can be also described as formula (5):(5)
d
ψ
d
d
t
d
ψ
q
d
t
=
-
R
s
L
d
ω
e
-
ω
e
-
R
s
L
q
ψ
d
ψ
q
+
u
d
+
ψ
f
L
d
R
s
u
q
,
J
n
p
d
ω
e
d
t
=
τ
e
-
τ
L
=
n
p
ψ
d
i
q
-
ψ
q
i
d
-
τ
L
,where ωe=npωm is the electrical angle velocity of PMSM.The input and output state vector of the PMSM system can be defined as follows:(6)x=x1x2x3=LdidLqiqJωr=Didiqωe,u=uduq,y=idiq,ξ=00-1npτL,D=diagLd,Lq,Jnp2.The system state space representation is described as(7)x˙=-Rs0ψq0-Rs-ψd-ψqψd0idiqωe+100100uduq+00-1npτL,y=idiqT.The energy of the PMSM system is described as(8)Hx=121Ldx12+1Lqx22+np2Jx32,∂Hx∂x=idiqωeT.The PCHD model of PMSM can be obtained by formula (2), which is given as (9)x˙=Jx-Rx∂Hx∂x+gxu+ξ,y=gTx∂Hx∂x=idiqT,whereJx=00ψq00-ψd-ψqψd0, Rsx=-Rs-Rs0, gx=100100.


## 3.1. The PCHD System

The position servo system of shipborne rocket launcher is a strong nonlinearity and uncertainty control object, which is deeply influenced by working conditions, disturbances, or environmental changes. Meanwhile, taking account of parameter variations shift with temperature, all kinds of losses such as the copper loss, iron loss, and so on, the PMSM model is a strong coupling, time-varying, and nonlinear system. However, the stability of firing accuracy is influenced not only by the strong nonlinearity and uncertainty of rocket launcher position servo system, but also by the ship swing. It is difficult to reach excellent control performance for PMSM with traditional vector control methods.PCHD system is a new kind of passive system. For its “almost” globally stabilization objectives, the schemes based on energy-shaping and port controlled Hamiltonian (PCH) have attracted more and more concerns [32]. The PCH system can be defined as(1)x˙=Jx∂Hx∂x+gxu,y=gTx∂Hx∂x.When the energy dissipation is introduced into the PCH framework by means of terminating some ports with resistive elements, the PCHD system can be described as(2)x˙=Jx-Rx∂Hx∂x+gxu,y=gTx∂Hx∂x,where x∈Rn is the state vector and u,y∈Rm is the input and output vector, respectively. Rx is the dissipation matrix, Jx is matrix of internal interconnection, and Jx=-JTx,Hx is the stored energy function.


## 3.2. The PCHD Model of PMSM

Irrespective of hysteresis losses, friction coefficient, and damping torque coefficients, the mathematical model of PMSM can be represented in a synchronously rotatingd-q reference frame as(3)Lddiddt=-Rsid+npωrLqiq+ud,Lqdiqdt=-Rsiq-npωrLdid-npωrψa+uq,Jdωmdt=τe-τL=npψfiq+Ld-Lqidiq-τL,where ud,uq are the stator voltages of the d- and q-axes components, respectively; id and iq are the stator currents of the d- and q-axes components, respectively; Ld and Lq are the rotor inductance of the d- and q-axes components, respectively; ψf is the rotor flux of the permanent magnet; Rs is the stator winding resistance; np is the polar pair; ωm is the mechanical angle velocity of PMSM; τe is the electromagnetic torque; J is the rotor inertia; τL is the load torque.The stator flux equation is(4)ψd=Ldid+ψf,ψq=Lqiq,where ψd and ψq are the stator flux of the d- and q-axes components, respectively.By Substituting formula (4) into formula (3), the mathematical model of PMSM can be also described as formula (5):(5)
d
ψ
d
d
t
d
ψ
q
d
t
=
-
R
s
L
d
ω
e
-
ω
e
-
R
s
L
q
ψ
d
ψ
q
+
u
d
+
ψ
f
L
d
R
s
u
q
,
J
n
p
d
ω
e
d
t
=
τ
e
-
τ
L
=
n
p
ψ
d
i
q
-
ψ
q
i
d
-
τ
L
,where ωe=npωm is the electrical angle velocity of PMSM.The input and output state vector of the PMSM system can be defined as follows:(6)x=x1x2x3=LdidLqiqJωr=Didiqωe,u=uduq,y=idiq,ξ=00-1npτL,D=diagLd,Lq,Jnp2.The system state space representation is described as(7)x˙=-Rs0ψq0-Rs-ψd-ψqψd0idiqωe+100100uduq+00-1npτL,y=idiqT.The energy of the PMSM system is described as(8)Hx=121Ldx12+1Lqx22+np2Jx32,∂Hx∂x=idiqωeT.The PCHD model of PMSM can be obtained by formula (2), which is given as (9)x˙=Jx-Rx∂Hx∂x+gxu+ξ,y=gTx∂Hx∂x=idiqT,whereJx=00ψq00-ψd-ψqψd0, Rsx=-Rs-Rs0, gx=100100.


## 4. A Preliminary to ADRC

Active disturbance rejection control (ADRC) is a novel robust control frame, which is systematically proposed by Professor Han and his research group. In order to overcome the shortcomings of traditional PID controller, the ADRC controller is optimized and improved to be independent of system model, which can automatically compensate for internal and external disturbance estimations [33, 34]. The conventional ADRC controller is composed of three parts: tracking differentiator (TD), extended state observer (ESO), and nonlinear state error feedback (NLSEF) control law. The schematic diagram of ADRC is illustrated in Figure 2.Figure 2
Schematic diagram of the ADRC.


### 4.1. Nonlinear Tracking Differentiator

In order to avoid the rapid fluctuations of the control signal and get the smooth regulation of tracking reference signal, the tracking differentiator is adopted to acquire the tracking signal and corresponding differentiator signal. The NTD controller is improved based on the traditional TD. Compared to the traditional TD controller, the NTD controller can better improve the quality of differential signal. The definition of NTD process can be described as(10)x1k+1=x1k+hx2k,x2k+1=x2k+hfstx1k-ydk,x2k,r,h0,whereydk is the desired trajectory of control system; r is the speed factor; h0 is the filtering factor; h is the sampling step; x1k and x2k track ydk and y˙dk, respectively.Generally, largeh0 can help reduce noise and big r can help raise tracking efficiency. The function of fst∙ is a nonlinear operator, which can be expressed as(11)fstx1k,x2k,r,h=-rad,a≤d-rsgna,a>d,a=x2k+a0-d2sgnyk,yk>d0x2k+ykh,yk≤d0,d=rh,d0=dh,a0=d2+8ryk,yk=x1k+hx2k.


### 4.2. Extended State Observer

An extended state observer (ESO) is designed to measure and compensate for the total disturbances in real time. All the unknown factors are regarded as the unknown disturbances. The ADRC controller can make an otherwise unknown plant to run like a nominal one. A commonly employed third order ESO can be described as(12)ek=z1k-yk,z1k+1=z1k-hz2k-β01ek,z2k+1=z2k+hz3k-β02falek,α1,δ0+b0uk,z3k+1=z3k-hβ03falek,α2,δ1,where z1k and z2k represents the tracking signal of yk and the differentiation of z1k, respectively; z3k is the extended state, which represents the estimated total disturbance. α1, α2, δ0, δ1 and b0 are the parameters decided by control system. The nonlinear function falek,α,δ can be defined as(13)falek,α,δ=ekαsgnek,ek>δ,ekδ1-α,ek≤δ.Under three orders, β01,β02 and β03 are the observer gains, which can be determined according to the forms (14) [22].(14)β01=1,β02=12h,β03=252h1.2.


### 4.3. Nonlinear State Error Feedback Controller

With different functions of NTD and ESO, the NLSEF controller is adopted to drive the state error to zero point. the NLSEF controller is a nonlinear PD controller, which can be described as(15)e1k+1=x1k+1-z1k+1,e2k+1=x2k+1-z2k+1,u0k+1=β1fale1k+1,α3,δ2+β2fale2k+1,α4,δ3,where β1 and β2 are the proportional and derivative gains, respectively. α3, α4, δ2 and δ3 are the parameters decided by the control system.


## 4.1. Nonlinear Tracking Differentiator

In order to avoid the rapid fluctuations of the control signal and get the smooth regulation of tracking reference signal, the tracking differentiator is adopted to acquire the tracking signal and corresponding differentiator signal. The NTD controller is improved based on the traditional TD. Compared to the traditional TD controller, the NTD controller can better improve the quality of differential signal. The definition of NTD process can be described as(10)x1k+1=x1k+hx2k,x2k+1=x2k+hfstx1k-ydk,x2k,r,h0,whereydk is the desired trajectory of control system; r is the speed factor; h0 is the filtering factor; h is the sampling step; x1k and x2k track ydk and y˙dk, respectively.Generally, largeh0 can help reduce noise and big r can help raise tracking efficiency. The function of fst∙ is a nonlinear operator, which can be expressed as(11)fstx1k,x2k,r,h=-rad,a≤d-rsgna,a>d,a=x2k+a0-d2sgnyk,yk>d0x2k+ykh,yk≤d0,d=rh,d0=dh,a0=d2+8ryk,yk=x1k+hx2k.


## 4.2. Extended State Observer

An extended state observer (ESO) is designed to measure and compensate for the total disturbances in real time. All the unknown factors are regarded as the unknown disturbances. The ADRC controller can make an otherwise unknown plant to run like a nominal one. A commonly employed third order ESO can be described as(12)ek=z1k-yk,z1k+1=z1k-hz2k-β01ek,z2k+1=z2k+hz3k-β02falek,α1,δ0+b0uk,z3k+1=z3k-hβ03falek,α2,δ1,where z1k and z2k represents the tracking signal of yk and the differentiation of z1k, respectively; z3k is the extended state, which represents the estimated total disturbance. α1, α2, δ0, δ1 and b0 are the parameters decided by control system. The nonlinear function falek,α,δ can be defined as(13)falek,α,δ=ekαsgnek,ek>δ,ekδ1-α,ek≤δ.Under three orders, β01,β02 and β03 are the observer gains, which can be determined according to the forms (14) [22].(14)β01=1,β02=12h,β03=252h1.2.


## 4.3. Nonlinear State Error Feedback Controller

With different functions of NTD and ESO, the NLSEF controller is adopted to drive the state error to zero point. the NLSEF controller is a nonlinear PD controller, which can be described as(15)e1k+1=x1k+1-z1k+1,e2k+1=x2k+1-z2k+1,u0k+1=β1fale1k+1,α3,δ2+β2fale2k+1,α4,δ3,where β1 and β2 are the proportional and derivative gains, respectively. α3, α4, δ2 and δ3 are the parameters decided by the control system.


## 5. The Inside Loop PBC Controller of PMSM

### 5.1. The Inner Loop PBC Controller

It is a convenient way to take control of the PCHD system with the interconnection and damping assignment and passivity-based control (IDA-PBC) method. In order to be asymptotically stable at the desired equilibrium of PMSM control system, the original closed loop energy functionHx is transformed into the desired closed loop energy function by adding the interconnection and damping assignment. The injection of interconnection and damping assignment is applied to accelerate the system energy dissipation and make the system quickly to converge to the equilibrium point x0. After adding the feedback control rate law u=βx, the state space function of the closed loop system can be described as(16)x˙=Jdx-Rdx∂Hdx∂x,where Jdx=Jax+Jx and Rdx=Rax+Rx; Jdx is the desired matrix of internal interconnection; Jdx=-JdxT,Rdx is the desired dissipation matrix.In particular, we define the desired matrix of internal interconnectionJax and the desired dissipation matrix Rax as(17)Jax=0J12J13-J120J23-J13-J230,Rax=r1r20,where J12, J13, J23 and r1, r2 are the indeterminate parameters of internal interconnection and dissipation, respectively.As we all know, it isLd=Lq to the implicit permanent magnet synchronous motor. When the control strategy of id∗=0 is adopted, according to the principle of maximum torque per ampere (MTPA), the desired equilibrium of the PMSM system (3) can be computed as(18)x∗=x1∗x2∗x3∗T=0Lqiq∗Jnp2ωe∗T.The desired closed loop energy function Hdx is described as(19)Hdx=12x-x∗TD-1x-x∗.According to the theory of energy formation and the principle of interconnection and damping configuration, we can get formula (20) as(20)-Jdx-RdxD-1x∗=-Jax-RaxD-1x+gxβx+ξ.In particular, we setJ12=1, J13=-ψq, J23=ψd-ψf. According to formula (17), the passive controller can be designed as(21)ud=-r1id+iq-iq∗-Lqiqωe,uq=-id+r2iq∗-iq+ψfωe∗+Ldidωe+Rsiq∗.


### 5.2. Stability Analyses

The concepts of PBC can be conveniently employed to explore the stability of control system.First, according to formula (19),(22)Hdx=12x-x∗TD-1x-x∗≥0,we can obtain that Hdx∗=0, if and only if x=x∗.Second, according toJdx=Jax+Jx,Jdx=-JdxT, Rdx=Rax+Rx,Rdx=RdxT, Hdx=Hx+Hax≥0Hdx∗=0, and formula (16), we can get(23)x˙=Jx-Rx∂Hx∂x+Jax-Rax∂Hx∂x+Jdx-Rdx∂Hax∂x=Jdx-Rdx∂Hdx∂x,Hdx˙=∂THdx∂xx˙=∂THdx∂xJdx-Rdx∂Hdx∂x=∂THdx∂xJdx∂Hdx∂x-∂THdx∂xRdx∂Hdx∂x.As Rdx is a positive definite matrix and Jdx is an antisymmetric matrix, we can know that(24)∂THdx∂xJdx∂Hdx∂x=0,∂THdx∂xRdx∂Hdx∂x≥0.Then, we can obtain that∂THdx/∂xRdx∂Hdx/∂x=0, if and only if ∂Hdx/∂x=0.But above all,Hdx˙=-∂THdx/∂xRdx∂Hdx/∂x≤0. At last, according to formula (19), we can get(25)∂Hdx∂x=D-1x-x∗,∂2Hdx∂x2=D-1.So, we can obtain thatHdx∗˙=0 at x=x∗ and the Hessian matrix of Hdx: ∂Hd2x∗/∂x2>0.By above study, we can get these conclusions as①
Hdx≥0,Hdx∗=0, if and only if x=x∗;②
Hdx˙≤0,Hdx∗˙=0, if and only if x=x∗;③
The Hessian matrix∂Hd2x∗/∂x2>0.In conclusion,x∗ is the global desired stable equilibrium of the closed loop system; basing on the La Salle invariant set principle, the closed loop system is asymptotically stable at equilibrium point.


## 5.1. The Inner Loop PBC Controller

It is a convenient way to take control of the PCHD system with the interconnection and damping assignment and passivity-based control (IDA-PBC) method. In order to be asymptotically stable at the desired equilibrium of PMSM control system, the original closed loop energy functionHx is transformed into the desired closed loop energy function by adding the interconnection and damping assignment. The injection of interconnection and damping assignment is applied to accelerate the system energy dissipation and make the system quickly to converge to the equilibrium point x0. After adding the feedback control rate law u=βx, the state space function of the closed loop system can be described as(16)x˙=Jdx-Rdx∂Hdx∂x,where Jdx=Jax+Jx and Rdx=Rax+Rx; Jdx is the desired matrix of internal interconnection; Jdx=-JdxT,Rdx is the desired dissipation matrix.In particular, we define the desired matrix of internal interconnectionJax and the desired dissipation matrix Rax as(17)Jax=0J12J13-J120J23-J13-J230,Rax=r1r20,where J12, J13, J23 and r1, r2 are the indeterminate parameters of internal interconnection and dissipation, respectively.As we all know, it isLd=Lq to the implicit permanent magnet synchronous motor. When the control strategy of id∗=0 is adopted, according to the principle of maximum torque per ampere (MTPA), the desired equilibrium of the PMSM system (3) can be computed as(18)x∗=x1∗x2∗x3∗T=0Lqiq∗Jnp2ωe∗T.The desired closed loop energy function Hdx is described as(19)Hdx=12x-x∗TD-1x-x∗.According to the theory of energy formation and the principle of interconnection and damping configuration, we can get formula (20) as(20)-Jdx-RdxD-1x∗=-Jax-RaxD-1x+gxβx+ξ.In particular, we setJ12=1, J13=-ψq, J23=ψd-ψf. According to formula (17), the passive controller can be designed as(21)ud=-r1id+iq-iq∗-Lqiqωe,uq=-id+r2iq∗-iq+ψfωe∗+Ldidωe+Rsiq∗.


## 5.2. Stability Analyses

The concepts of PBC can be conveniently employed to explore the stability of control system.First, according to formula (19),(22)Hdx=12x-x∗TD-1x-x∗≥0,we can obtain that Hdx∗=0, if and only if x=x∗.Second, according toJdx=Jax+Jx,Jdx=-JdxT, Rdx=Rax+Rx,Rdx=RdxT, Hdx=Hx+Hax≥0Hdx∗=0, and formula (16), we can get(23)x˙=Jx-Rx∂Hx∂x+Jax-Rax∂Hx∂x+Jdx-Rdx∂Hax∂x=Jdx-Rdx∂Hdx∂x,Hdx˙=∂THdx∂xx˙=∂THdx∂xJdx-Rdx∂Hdx∂x=∂THdx∂xJdx∂Hdx∂x-∂THdx∂xRdx∂Hdx∂x.As Rdx is a positive definite matrix and Jdx is an antisymmetric matrix, we can know that(24)∂THdx∂xJdx∂Hdx∂x=0,∂THdx∂xRdx∂Hdx∂x≥0.Then, we can obtain that∂THdx/∂xRdx∂Hdx/∂x=0, if and only if ∂Hdx/∂x=0.But above all,Hdx˙=-∂THdx/∂xRdx∂Hdx/∂x≤0. At last, according to formula (19), we can get(25)∂Hdx∂x=D-1x-x∗,∂2Hdx∂x2=D-1.So, we can obtain thatHdx∗˙=0 at x=x∗ and the Hessian matrix of Hdx: ∂Hd2x∗/∂x2>0.By above study, we can get these conclusions as①
Hdx≥0,Hdx∗=0, if and only if x=x∗;②
Hdx˙≤0,Hdx∗˙=0, if and only if x=x∗;③
The Hessian matrix∂Hd2x∗/∂x2>0.In conclusion,x∗ is the global desired stable equilibrium of the closed loop system; basing on the La Salle invariant set principle, the closed loop system is asymptotically stable at equilibrium point.


## 6. The Improved ADRC-PBC Controller

### 6.1. The Outside Loop ADRC Controller

In the double loop of control system, a PBC controller is used in the current inside loop and an ADRC controller is adopted in the position outside loop. The structure of the ADRC-PBC controller is shown in Figure3. In a synchronously rotating reference frame, when the control strategy of id∗=0 is adopted, the dynamic mathematical model of PMSM position control loop can be described as(26)d2θotdt2=-BJω-τLJ+1.5npψfJiq∗,Figure 3
Diagram of the ADRC-PBC controller.whereθi∗t is the input rotor position; iq∗ is the input stator currents of q-axes component; θot is the rotor position; τL is the load torque; ψf is the rotor flux of the permanent; np is the polar pair; iq is the stator currents of q-axes component; J is the rotor inertia; B is the friction coefficient.Letx1=θot,x2=dθot/dt=ω,f0x1,x2=-B/Jω,f1x1,x2,t=-τL/J,b=1.5npψf/J,u=iq.The state equations of the position loop are given as(27)x1˙=x2=dθotdt,x2˙=d2θotdt2=f0x1,x2+f1x1,x2,t+bu,y=x1=θot,where x1 is the tracking signal of θi∗t; x2 is the differential of x1; f0x1,x2 is the known disturbance of the control system; f1x1,x2,t is the unknown external disturbance; wt=f0x1,x2+f1x1,x2,t is the total disturbance.The structure of the ADRC-PBC controller is shown in Figure4. In the ADRC controller, a smooth tracking signal x1 and its differential x2 can be obtained by the NTD controller. The system state values z1, z2 and the total disturbance z3 are estimated by the ESO controller. The tracking error is e1=x1-z1. The integral and differential of tracking error are e0=∫e1dt and e2=x2-z2, respectively. As we can see from Figure 4, we can get formula (28):(28)iq∗=β0fale0,α5,δ4+β1fale1,α1,δ1+β2fale2,α2,δ2-z3+f0z1,z2b,where β0, β1 and β2 are the e0, e1 and e2 gains of NLSEF, respectively.Figure 4
Diagram of the ADRC-PBC controller.By reasonable setting relativeβ0, β1 and β2 of NLSEF, the control capability of the system on disturbance can be well enhanced and the accuracy of position tracking servo system can be better improved.


### 6.2. The Improved ADRC-PBC Controller

In order to achieve better motion accuracy and higher robustness of the shipborne rocket launcher position servo system, a passivity-based controller based on ADRC optimized by IPSO-BP algorithm for the shipborne rocket launcher is developed in this article. The structure of the improved ADRC-PBC controller is shown in Figure5.Figure 5
Diagram of the improved ADRC-PBC controller.


#### 6.2.1. BP Algorithm

As a local approximation approach, the learning algorithm of back propagation (BP) neural network has a good ability of approach to arbitrary nonlinear mapping and generalization. Due to the characteristic of inherent adaptive learning, processing data in parallel, high fault-tolerance and good robustness, BP neural network is applicable to the modeling and control of complex nonlinear systems. The learning of BP neural network can be performed to the parameters of optimal control law.The back propagation (BP) neural network is a feedforward network, which consists of three layers: the input layer, hidden layer, and output layer. According to the system operation state, BP neural network is employed to on-line regulate the NLSEF parameter ofβ0, β1 and β2. The structure of BP neural network is illustrated in Figure 6.Figure 6
Diagram of the BP neural network.The three inputs of the BP neural network are the input rotor positionθi∗t, the output rotor position θot, and the tracking deviation signal e1.(29)oj1=xjj=1,2,3.The number of hidden layer nodes is 4. The input and output of hidden layer are described as(30)neti2k=∑j=0Mwij2oj1,oi2k=fneti2ki=1,2,3,4,wherewij2 is the weight coefficients of hidden layer. It represents the weight coefficients of the hidden layer ith neuron to the input layer jth neuron. The superscripts 1, 2, and 3 of Chapter 6 indicate that the input layer, hidden layer, and output layer, respectively. The activation function of hidden layer neurons can be used for the sigmoid function of positive and negative symmetry.(31)fx=ex-e-xex+e-x.The input and output of output layer are described as follows:(32)
n
e
t
l
3
k
=
∑
i
=
0
Q
w
l
i
3
o
i
2
k
,
o
l
3
k
=
g
n
e
t
l
3
k
l
=
1,2
,
3
,
o
1
3
k
=
β
1
,
o
2
3
k
=
β
0
,
o
3
3
k
=
β
2
,where wli3 is the weight coefficients of output layer, which represents the weight coefficients of the output layer lth neuron to the hidden layer ith neuron.The activation function of output layer neurons can be used for the nonnegative sigmoid function.(33)gx=exex+e-x.The performance index of BP for its weight adjustments is defined as(34)Ek=12rk-yk2.With the gradient descent approach, the iterative functions for the weights of the BP are calculated as(35)Δwli3k=-η∂Ek∂wli3+αΔwli3k-1,where η is the learning factor; α is the momentum factor.(36)∂Ek∂wli3=∂Ek∂yk·∂yk∂Δuk·∂Δuk∂Ol3k·∂Ol3k∂netl3k·∂netl3k∂wli3,∂netl3k∂wli3=Oi2k,where uk is the output of the NLSEF.For the unknown of∂yk/∂Δuk, it is approximately replaced by the symbolic function of sgn∂yk/∂Δuk and the effect from inaccurate approximate value can be compensated by adjusting the learning rate η.(37)∂Ek∂wli3=∂Ek∂yk·∂yk∂Δuk·∂Δuk∂Ol3k·∂Ol3k∂netl3k·∂netl3k∂wli3.According to the formula (28) and (30), we can get(38)∂Δuk∂O13k=fale1,α1,δ1,∂Δuk∂O23k=fale0,α5,δ4,∂Δuk∂O33k=fale2,α2,δ2.Based on the above analysis, the learning algorithm of the output layer weight coefficients can be described as(39)Δwli3k=αΔwli3k-1+ηδl3Oi2k,errork=rk-yk,δi3=errork·sgn∂yk∂Δuk·∂Δuk∂Ol3k·g′netl3k,l=1,2,3.In the same way, the learning algorithm of the hidden layer weight coefficients can be described as(40)Δwij2k=αΔwij2k-1+ηδi2Oj1k,δi2=f′netl3k∑l=13δl3wli3ki=1,2,3,4,where g′x=2gx1-gx, f′x=1-f2x/2.


#### 6.2.2. The Particle Swarm Optimization Algorithm

Particle swarm optimization (PSO) is a swarm intelligence technique, which is presented by Dr. Eberhart and Dr. Kennedy. It has more superior performance on convergence speed and global optimization. The PSO algorithm can be adopted to optimize the weight coefficients of BP neural network [30, 33]. It can overcome the merits in BP neural network such as slow convergence rate, running into local minimum value easily and so on.Particle swarm optimization is a kind of random search optimization algorithm. A solution to the problem is looked as a particle. The particle is flying in the space and its velocity is constantly dynamically adjusted according to its best positionPbest and the global extreme value gbest. Finally, an optimal solution is searched out. The position and velocity of each particle are updated by the formula as(41)vidi+1=ω×vidi+c1×rand×Pbest-xidi+c2×rand×gbest-xidi,(42)xidi+1=xidi+vidi,where vidi is the current particle velocity; vidi+1 is the updated particle velocity; xidi is the current particle position; xidi+1 is the updated particle position; ω is the inertia weight; rand is a random number between 0 to 1; c1 and c2 are the learning factors.Each particle is determined by the fitness value of the target function. In order to avoid the larger control energy and overshoot, the fitness function is defined as(43)F=∫0∞ω1et+ω2u2tdt,where et is the systematic errors; ut is the input of controller;ω1 and ω2 are the weight values.Once the overshoots are generated, the fitness function is defined as(44)F=∫0∞ω1et+ω2u2t+ω3etdt,where et<0; ω3 is the weight values ω3≫ω1; in general, ω1=0.999,ω2=0.001 and ω3=100.


#### 6.2.3. The Improved PSO-BP Algorithm

As the same inertia weight is used to update the velocity of particles, the traditional PSO algorithm cannot adapt to the complex and nonlinear optimization process. The adjustment of the inertia weight can effectively change the search scopes and convergence velocity of PSO. Generally, largerω can enlarge the ability of global search scopes, while smaller ω can enlarge the ability of local search scopes [2]. In order to achieve a self-adaptive adjustment of global search ability and local search capabilities, the on-line updating inertia weight formula of each particle is described as(45)ωk=ωstart-ωstart-ωend∗khmax,where ωk is the current inertia weight; ωstart and ωend are the maximum and minimum of current inertia weight, respectively; hmax is the maximum iteration step; k is the current iteration times.Taking the advantages of the improved PSO global optimization and the BP local accurate searching performance, a new algorithm to combine a BP network and IPSO is developed to overcome the disadvantages of the BP network. The improved PSO algorithm can be adopted to optimize the weight coefficients of BP neural network. Each particle represents the weight of the BP structure, which is defined as(46)particlei=w112,w122,w132,…,w323,w333,w343,particlesmatrix=particle1,…,particlem,where m is the number of the total particles, i=1,2,3,…,m.The flow chart of using IPSO algorithm to optimize the weights of BP neural network is shown in Figure7.Figure 7
Flowchart of using IPSO algorithm to optimize the weights of BPNN.


## 6.1. The Outside Loop ADRC Controller

In the double loop of control system, a PBC controller is used in the current inside loop and an ADRC controller is adopted in the position outside loop. The structure of the ADRC-PBC controller is shown in Figure3. In a synchronously rotating reference frame, when the control strategy of id∗=0 is adopted, the dynamic mathematical model of PMSM position control loop can be described as(26)d2θotdt2=-BJω-τLJ+1.5npψfJiq∗,Figure 3
Diagram of the ADRC-PBC controller.whereθi∗t is the input rotor position; iq∗ is the input stator currents of q-axes component; θot is the rotor position; τL is the load torque; ψf is the rotor flux of the permanent; np is the polar pair; iq is the stator currents of q-axes component; J is the rotor inertia; B is the friction coefficient.Letx1=θot,x2=dθot/dt=ω,f0x1,x2=-B/Jω,f1x1,x2,t=-τL/J,b=1.5npψf/J,u=iq.The state equations of the position loop are given as(27)x1˙=x2=dθotdt,x2˙=d2θotdt2=f0x1,x2+f1x1,x2,t+bu,y=x1=θot,where x1 is the tracking signal of θi∗t; x2 is the differential of x1; f0x1,x2 is the known disturbance of the control system; f1x1,x2,t is the unknown external disturbance; wt=f0x1,x2+f1x1,x2,t is the total disturbance.The structure of the ADRC-PBC controller is shown in Figure4. In the ADRC controller, a smooth tracking signal x1 and its differential x2 can be obtained by the NTD controller. The system state values z1, z2 and the total disturbance z3 are estimated by the ESO controller. The tracking error is e1=x1-z1. The integral and differential of tracking error are e0=∫e1dt and e2=x2-z2, respectively. As we can see from Figure 4, we can get formula (28):(28)iq∗=β0fale0,α5,δ4+β1fale1,α1,δ1+β2fale2,α2,δ2-z3+f0z1,z2b,where β0, β1 and β2 are the e0, e1 and e2 gains of NLSEF, respectively.Figure 4
Diagram of the ADRC-PBC controller.By reasonable setting relativeβ0, β1 and β2 of NLSEF, the control capability of the system on disturbance can be well enhanced and the accuracy of position tracking servo system can be better improved.


## 6.2. The Improved ADRC-PBC Controller

In order to achieve better motion accuracy and higher robustness of the shipborne rocket launcher position servo system, a passivity-based controller based on ADRC optimized by IPSO-BP algorithm for the shipborne rocket launcher is developed in this article. The structure of the improved ADRC-PBC controller is shown in Figure5.Figure 5
Diagram of the improved ADRC-PBC controller.


### 6.2.1. BP Algorithm

As a local approximation approach, the learning algorithm of back propagation (BP) neural network has a good ability of approach to arbitrary nonlinear mapping and generalization. Due to the characteristic of inherent adaptive learning, processing data in parallel, high fault-tolerance and good robustness, BP neural network is applicable to the modeling and control of complex nonlinear systems. The learning of BP neural network can be performed to the parameters of optimal control law.The back propagation (BP) neural network is a feedforward network, which consists of three layers: the input layer, hidden layer, and output layer. According to the system operation state, BP neural network is employed to on-line regulate the NLSEF parameter ofβ0, β1 and β2. The structure of BP neural network is illustrated in Figure 6.Figure 6
Diagram of the BP neural network.The three inputs of the BP neural network are the input rotor positionθi∗t, the output rotor position θot, and the tracking deviation signal e1.(29)oj1=xjj=1,2,3.The number of hidden layer nodes is 4. The input and output of hidden layer are described as(30)neti2k=∑j=0Mwij2oj1,oi2k=fneti2ki=1,2,3,4,wherewij2 is the weight coefficients of hidden layer. It represents the weight coefficients of the hidden layer ith neuron to the input layer jth neuron. The superscripts 1, 2, and 3 of Chapter 6 indicate that the input layer, hidden layer, and output layer, respectively. The activation function of hidden layer neurons can be used for the sigmoid function of positive and negative symmetry.(31)fx=ex-e-xex+e-x.The input and output of output layer are described as follows:(32)
n
e
t
l
3
k
=
∑
i
=
0
Q
w
l
i
3
o
i
2
k
,
o
l
3
k
=
g
n
e
t
l
3
k
l
=
1,2
,
3
,
o
1
3
k
=
β
1
,
o
2
3
k
=
β
0
,
o
3
3
k
=
β
2
,where wli3 is the weight coefficients of output layer, which represents the weight coefficients of the output layer lth neuron to the hidden layer ith neuron.The activation function of output layer neurons can be used for the nonnegative sigmoid function.(33)gx=exex+e-x.The performance index of BP for its weight adjustments is defined as(34)Ek=12rk-yk2.With the gradient descent approach, the iterative functions for the weights of the BP are calculated as(35)Δwli3k=-η∂Ek∂wli3+αΔwli3k-1,where η is the learning factor; α is the momentum factor.(36)∂Ek∂wli3=∂Ek∂yk·∂yk∂Δuk·∂Δuk∂Ol3k·∂Ol3k∂netl3k·∂netl3k∂wli3,∂netl3k∂wli3=Oi2k,where uk is the output of the NLSEF.For the unknown of∂yk/∂Δuk, it is approximately replaced by the symbolic function of sgn∂yk/∂Δuk and the effect from inaccurate approximate value can be compensated by adjusting the learning rate η.(37)∂Ek∂wli3=∂Ek∂yk·∂yk∂Δuk·∂Δuk∂Ol3k·∂Ol3k∂netl3k·∂netl3k∂wli3.According to the formula (28) and (30), we can get(38)∂Δuk∂O13k=fale1,α1,δ1,∂Δuk∂O23k=fale0,α5,δ4,∂Δuk∂O33k=fale2,α2,δ2.Based on the above analysis, the learning algorithm of the output layer weight coefficients can be described as(39)Δwli3k=αΔwli3k-1+ηδl3Oi2k,errork=rk-yk,δi3=errork·sgn∂yk∂Δuk·∂Δuk∂Ol3k·g′netl3k,l=1,2,3.In the same way, the learning algorithm of the hidden layer weight coefficients can be described as(40)Δwij2k=αΔwij2k-1+ηδi2Oj1k,δi2=f′netl3k∑l=13δl3wli3ki=1,2,3,4,where g′x=2gx1-gx, f′x=1-f2x/2.


### 6.2.2. The Particle Swarm Optimization Algorithm

Particle swarm optimization (PSO) is a swarm intelligence technique, which is presented by Dr. Eberhart and Dr. Kennedy. It has more superior performance on convergence speed and global optimization. The PSO algorithm can be adopted to optimize the weight coefficients of BP neural network [30, 33]. It can overcome the merits in BP neural network such as slow convergence rate, running into local minimum value easily and so on.Particle swarm optimization is a kind of random search optimization algorithm. A solution to the problem is looked as a particle. The particle is flying in the space and its velocity is constantly dynamically adjusted according to its best positionPbest and the global extreme value gbest. Finally, an optimal solution is searched out. The position and velocity of each particle are updated by the formula as(41)vidi+1=ω×vidi+c1×rand×Pbest-xidi+c2×rand×gbest-xidi,(42)xidi+1=xidi+vidi,where vidi is the current particle velocity; vidi+1 is the updated particle velocity; xidi is the current particle position; xidi+1 is the updated particle position; ω is the inertia weight; rand is a random number between 0 to 1; c1 and c2 are the learning factors.Each particle is determined by the fitness value of the target function. In order to avoid the larger control energy and overshoot, the fitness function is defined as(43)F=∫0∞ω1et+ω2u2tdt,where et is the systematic errors; ut is the input of controller;ω1 and ω2 are the weight values.Once the overshoots are generated, the fitness function is defined as(44)F=∫0∞ω1et+ω2u2t+ω3etdt,where et<0; ω3 is the weight values ω3≫ω1; in general, ω1=0.999,ω2=0.001 and ω3=100.


### 6.2.3. The Improved PSO-BP Algorithm

As the same inertia weight is used to update the velocity of particles, the traditional PSO algorithm cannot adapt to the complex and nonlinear optimization process. The adjustment of the inertia weight can effectively change the search scopes and convergence velocity of PSO. Generally, largerω can enlarge the ability of global search scopes, while smaller ω can enlarge the ability of local search scopes [2]. In order to achieve a self-adaptive adjustment of global search ability and local search capabilities, the on-line updating inertia weight formula of each particle is described as(45)ωk=ωstart-ωstart-ωend∗khmax,where ωk is the current inertia weight; ωstart and ωend are the maximum and minimum of current inertia weight, respectively; hmax is the maximum iteration step; k is the current iteration times.Taking the advantages of the improved PSO global optimization and the BP local accurate searching performance, a new algorithm to combine a BP network and IPSO is developed to overcome the disadvantages of the BP network. The improved PSO algorithm can be adopted to optimize the weight coefficients of BP neural network. Each particle represents the weight of the BP structure, which is defined as(46)particlei=w112,w122,w132,…,w323,w333,w343,particlesmatrix=particle1,…,particlem,where m is the number of the total particles, i=1,2,3,…,m.The flow chart of using IPSO algorithm to optimize the weights of BP neural network is shown in Figure7.Figure 7
Flowchart of using IPSO algorithm to optimize the weights of BPNN.


## 6.2.1. BP Algorithm

As a local approximation approach, the learning algorithm of back propagation (BP) neural network has a good ability of approach to arbitrary nonlinear mapping and generalization. Due to the characteristic of inherent adaptive learning, processing data in parallel, high fault-tolerance and good robustness, BP neural network is applicable to the modeling and control of complex nonlinear systems. The learning of BP neural network can be performed to the parameters of optimal control law.The back propagation (BP) neural network is a feedforward network, which consists of three layers: the input layer, hidden layer, and output layer. According to the system operation state, BP neural network is employed to on-line regulate the NLSEF parameter ofβ0, β1 and β2. The structure of BP neural network is illustrated in Figure 6.Figure 6
Diagram of the BP neural network.The three inputs of the BP neural network are the input rotor positionθi∗t, the output rotor position θot, and the tracking deviation signal e1.(29)oj1=xjj=1,2,3.The number of hidden layer nodes is 4. The input and output of hidden layer are described as(30)neti2k=∑j=0Mwij2oj1,oi2k=fneti2ki=1,2,3,4,wherewij2 is the weight coefficients of hidden layer. It represents the weight coefficients of the hidden layer ith neuron to the input layer jth neuron. The superscripts 1, 2, and 3 of Chapter 6 indicate that the input layer, hidden layer, and output layer, respectively. The activation function of hidden layer neurons can be used for the sigmoid function of positive and negative symmetry.(31)fx=ex-e-xex+e-x.The input and output of output layer are described as follows:(32)
n
e
t
l
3
k
=
∑
i
=
0
Q
w
l
i
3
o
i
2
k
,
o
l
3
k
=
g
n
e
t
l
3
k
l
=
1,2
,
3
,
o
1
3
k
=
β
1
,
o
2
3
k
=
β
0
,
o
3
3
k
=
β
2
,where wli3 is the weight coefficients of output layer, which represents the weight coefficients of the output layer lth neuron to the hidden layer ith neuron.The activation function of output layer neurons can be used for the nonnegative sigmoid function.(33)gx=exex+e-x.The performance index of BP for its weight adjustments is defined as(34)Ek=12rk-yk2.With the gradient descent approach, the iterative functions for the weights of the BP are calculated as(35)Δwli3k=-η∂Ek∂wli3+αΔwli3k-1,where η is the learning factor; α is the momentum factor.(36)∂Ek∂wli3=∂Ek∂yk·∂yk∂Δuk·∂Δuk∂Ol3k·∂Ol3k∂netl3k·∂netl3k∂wli3,∂netl3k∂wli3=Oi2k,where uk is the output of the NLSEF.For the unknown of∂yk/∂Δuk, it is approximately replaced by the symbolic function of sgn∂yk/∂Δuk and the effect from inaccurate approximate value can be compensated by adjusting the learning rate η.(37)∂Ek∂wli3=∂Ek∂yk·∂yk∂Δuk·∂Δuk∂Ol3k·∂Ol3k∂netl3k·∂netl3k∂wli3.According to the formula (28) and (30), we can get(38)∂Δuk∂O13k=fale1,α1,δ1,∂Δuk∂O23k=fale0,α5,δ4,∂Δuk∂O33k=fale2,α2,δ2.Based on the above analysis, the learning algorithm of the output layer weight coefficients can be described as(39)Δwli3k=αΔwli3k-1+ηδl3Oi2k,errork=rk-yk,δi3=errork·sgn∂yk∂Δuk·∂Δuk∂Ol3k·g′netl3k,l=1,2,3.In the same way, the learning algorithm of the hidden layer weight coefficients can be described as(40)Δwij2k=αΔwij2k-1+ηδi2Oj1k,δi2=f′netl3k∑l=13δl3wli3ki=1,2,3,4,where g′x=2gx1-gx, f′x=1-f2x/2.


## 6.2.2. The Particle Swarm Optimization Algorithm

Particle swarm optimization (PSO) is a swarm intelligence technique, which is presented by Dr. Eberhart and Dr. Kennedy. It has more superior performance on convergence speed and global optimization. The PSO algorithm can be adopted to optimize the weight coefficients of BP neural network [30, 33]. It can overcome the merits in BP neural network such as slow convergence rate, running into local minimum value easily and so on.Particle swarm optimization is a kind of random search optimization algorithm. A solution to the problem is looked as a particle. The particle is flying in the space and its velocity is constantly dynamically adjusted according to its best positionPbest and the global extreme value gbest. Finally, an optimal solution is searched out. The position and velocity of each particle are updated by the formula as(41)vidi+1=ω×vidi+c1×rand×Pbest-xidi+c2×rand×gbest-xidi,(42)xidi+1=xidi+vidi,where vidi is the current particle velocity; vidi+1 is the updated particle velocity; xidi is the current particle position; xidi+1 is the updated particle position; ω is the inertia weight; rand is a random number between 0 to 1; c1 and c2 are the learning factors.Each particle is determined by the fitness value of the target function. In order to avoid the larger control energy and overshoot, the fitness function is defined as(43)F=∫0∞ω1et+ω2u2tdt,where et is the systematic errors; ut is the input of controller;ω1 and ω2 are the weight values.Once the overshoots are generated, the fitness function is defined as(44)F=∫0∞ω1et+ω2u2t+ω3etdt,where et<0; ω3 is the weight values ω3≫ω1; in general, ω1=0.999,ω2=0.001 and ω3=100.


## 6.2.3. The Improved PSO-BP Algorithm

As the same inertia weight is used to update the velocity of particles, the traditional PSO algorithm cannot adapt to the complex and nonlinear optimization process. The adjustment of the inertia weight can effectively change the search scopes and convergence velocity of PSO. Generally, largerω can enlarge the ability of global search scopes, while smaller ω can enlarge the ability of local search scopes [2]. In order to achieve a self-adaptive adjustment of global search ability and local search capabilities, the on-line updating inertia weight formula of each particle is described as(45)ωk=ωstart-ωstart-ωend∗khmax,where ωk is the current inertia weight; ωstart and ωend are the maximum and minimum of current inertia weight, respectively; hmax is the maximum iteration step; k is the current iteration times.Taking the advantages of the improved PSO global optimization and the BP local accurate searching performance, a new algorithm to combine a BP network and IPSO is developed to overcome the disadvantages of the BP network. The improved PSO algorithm can be adopted to optimize the weight coefficients of BP neural network. Each particle represents the weight of the BP structure, which is defined as(46)particlei=w112,w122,w132,…,w323,w333,w343,particlesmatrix=particle1,…,particlem,where m is the number of the total particles, i=1,2,3,…,m.The flow chart of using IPSO algorithm to optimize the weights of BP neural network is shown in Figure7.Figure 7
Flowchart of using IPSO algorithm to optimize the weights of BPNN.


## 7. Simulation Result and Analysis

In order to validate the control performance of improved ADRC-PBC controller for the rocket launcher, a series of simulations were conducted by using MATLAB/Simulink.The main selected parameters in the AC system are as follows: load converted to the motor output shaft moment of inertia:J=5.556×10-3 kg·m2, friction coefficient of the system is B=1.43×10-4 N·m/(rad/s), friction moment of the load: τf=850 kg·m2, system load disturbing moment: τL=9.32×103 kg·m2, motor torque coefficient: Kt=0.195 N·m/A, reduction ratio i=1039, the stator inductance of the implicit permanent magnet synchronous motor: Ld=Lq=21.24 mH, the PMSM pole pairs: np=3, and motor flux magnetic flux: ψa=0.65 Wb.The parameters in each part of the designed controller are estimated and shown as follows: the NTD parameters:h=0.01, h0=0.1, r=1000; the ESO parameters: α1=0.5, α2=0.25, δ0=0.01, δ1=0.01, β01=1, β02=15.8, β03=318.5, b0=526.5; the preset parameters of NLSEF: β1=10, β2=5, β0=1α3=0.6, α4=0.3, α5=0.2δ2=0.01, δ3=0.01, δ4=0.01; the initial interconnection and damping parameters of the PBC controller: r1=10, r2=8; the BP parameters: η=0.3, α=0.05; the IPSO parameters: ωstart=0.9, ωend=0.4, k=40, hmax=0.001 s, c1=c2=2, m=30. The simulation results are as shown in Figures 8–10.Figure 8
Step response curve with load disturbance.Figure 9
Step dynamic response curves.Figure 10
Tracking error curve of the system.Figure8 compares the step response of the ADRC-PBC, BP-ADRC-PBC, and IPSO-BP-ADRC-PBC controller, through the position response curve added with a 300 Nm step disturbance at 3.0 s. As it can be seen from Figure 8, when there is a load disturbance, using ADRC-PBC control algorithm in response to a larger location offset occurs, the maximum disturbance value of ADRC-PBC reaches 0.61 degrees and it needs 0.79 s to recover the reference position. At the stability and the rapidity, the IPSO-BP-ADRC-PBC relative to BP-ADRC-PBC controller has better improvements, which has the shortest adjustment time and the fastest response speed; when disturbed, it can reach a steady state just in need of 0.049 s, while that of the BP-ADRC-PBC controller is nearly 0.061 s. The maximum disturbance value of BP-ADRC-PBC is 0.39 degrees, while that of the IPSO-BP-ADRC-PBC controller is just 0.16 degrees. The results of experiment indicate that IPSO-BP-ADRC-PBC controller has good interference ability and better robustness.A dynamic system is shown in Figure9 to track the location of random interference, which is added to the response curve. At the stability and the accuracy, when the system parameters are uncertain and external disturbances appear, the tracking errors of ADRC-PBC and BP-ADRC-PBC control are 0.199 and 0.132 degrees, respectively. At the same working condition, the IPSO-BP-ADRC-PBC controller can enable the tracking servo system to reach the reference position and suppress the impact of various uncertainties rapidly by an on-line improved PSO-BP neural network. The maximum tracking errors of IPSO-BP-ADRC-PBC controller are just 0.094 degrees, with an improved tracking accuracy by 40.4% than that of the BP-ADRC-PBC control system. The results of experiment indicate that improved PSO-BP-ADRC-PBC controller has strong anti-interference ability and good dynamic performance.Under the control of the ADRC-PBC, BP-ADRC-PBC and IPSO-BP-ADRC-PBC, the tracking errors in the constant speed tracking of the system are illustrated in Figure10. A sinusoidal disturbance is added to the constant speed reference signal, which has frequency of 0.5 Hz and amplitude of 0.4 degrees. After entering the steady stage, the maximum tracking errors of the ADRC-PBC and BP-ADRC-PBC control system are 0.087 and 0.031 degrees, respectively, while those of the IPSO-BP-ADRC-PBC control system are only about 0.021 degrees, with an improved tracking accuracy by 47.6% than that of the BP-ADRC-PBC control system.


## 8. Semiphysical Simulation Test

In order to investigate the efficiency of the proposed IPSO-BP-ADRC-PBC controller as a strategy in establishing a rocket launcher control system, a semiphysical simulation platform is constructed to simulate the working conditions of the position servo control system. The structure diagram of semiphysical simulation platform is shown in Figure11. The photograph of the semiphysical simulation platform is illustrated in Figure 12. Based on the components illustrated in Figure 12, the platform is composed of seven parts, including test bed, control computer, power amplifier (PA), loading fixture (LF), precision reduction gearbox (PRG), actuating motor (AM), and sensor system for measurement. The loading fixture consists of rotational inertia plate (RIP) and magnetic powder brake (MPB). The function of LF is to simulate the load torque, the rotational inertia, and the frictional resistance moment of the control system. Through changing the RIP, the rotational inertia variations in the loads can be well simulated. Similarly, the frictional resistance moment and the variations in the load torque can be well simulated by controlling the output torque of the MPB.Figure 11
Schematic of the semiphysical simulation platform.Figure 12
Photograph of the semiphysical simulation platform.In order to compare the robustness of the three control strategies against external loading disturbances, the square wave is added as external load disturbance. Figure13 shows the response curve of the system with the input step signal of 50 degrees on the semiphysical simulation platform; when the time is t = 4.0–4.5 s, we add a square disturbance with amplitude of 2 kNm. As shown in Figure 13, the steady-state error in the three cases is in the range of ±0.058 degrees. The maximum angle errors of the ADRC-PBC and BP-ADRC-PBC control system are about 0.382 and 0.191 degrees, respectively, while that of the IPSO-BP-ADRC-PBC control system is only about 0.093 degrees.Figure 13
Positioning error with external loading disturbances.As you can see from Figure13, the ADRC-PBC and BP-ADRC-PBC control system needs 0.75 s and 0.82 s to recover the reference position error band, respectively, while that of the IPSO-BP-ADRC-PBC control system is only about 0.63 s. The figure illustrates that the IPSO-BP-ADRC-PBC control system has a smaller steady-state error and has better robustness.To verify the tracking accuracy of the position servo system with the IPSO-BP-ADRC-PBC control system, the sinusoidal command tracking with a frequency of 0.2656 Hz and amplitude of 45 degrees is also experimented on the semiphysical simulation platform. The corresponding tracking curves of BP-ADRC-PBC and IPSO-BP-ADRC-PBC control system are illustrated in Figure14. As shown in Figure 14, the maximum sinusoidal tracking errors of the ADRC-PBC and BP-ADRC-PBC control system are about 0.182 and 0.115 degrees, respectively, while those of the IPSO-BP-ADRC-PBC control system are only about 0.083 degrees, which can better meet that of the dynamic error indexes for system design requirements 0.216 degrees or 3.6 mil (360°=6000 mil).Figure 14
Sinusoidal tracking error curves.By comparison, the IPSO-BP-ADRC-PBC controller can be able to increase the accuracy and robust of control system effectively, which has a better steady-state and dynamic performance than that of the BP-ADRC-PBC controller.


## 9. Conclusions

In this paper, the IPSO-BP-ADRC-PBC control method has been proposed, due to the inherent nonlinearities and the unavoidable uncertainties of the rocket launcher position servo system.( 1 ) The numerical simulations show that, compared with the ADRC-PBC and BP-ADRC-PBC controller, the IPSO-BP algorithm can better enhance the robustness and accuracy performance of the ADRC-PBC controller. When the step response is affected by a 300 Nm step disturbance, the maximum deviation of the IPSO-BP-ADRC-PBC control system is only about 41.0% of that of the BP-ADRC-PBC control system. In terms of tracking the location of random interference, under the same working conditions the tracking accuracy of the IPSO-BP-ADRC-PBC controller is improved by 40.4% compared to that of the BP-ADRC-PBC controller. When the constant speed tracking is affected by a signal sinusoidal disturbance, the maximum tracking error of the IPSO-BP-ADRC-PBC controller system is only about 67.7% of that of the BP-ADRC-PBC control system.( 2 ) The semiphysical simulation test results show that, compared with the ADRC-PBC and BP-ADRC-PBC controller, the IPSO-BP-ADRC-PBC controller has the best performance of excellent dynamic and steady-state. When we add a square disturbance with amplitude of 2 kNm to the input step signal at t = 4.0–4.5 s, the maximum angle errors of IPSO-BP-ADRC-PBC controller are 0.193 degrees and are only about 48.7% of that of the BP-ADRC-PBC control system. When the employed tracking reference is a sinusoidal with the frequency of 0.2656 Hz and the amplitude of 45 degrees, the maximum sinusoidal tracking error of IPSO-BP-ADRC-PBC controller is 0.083 degrees and is only about 72.2% of that of the BP-ADRC-PBC control system.From the simulation and prototype test results, the IPSO-BP-ADRC-PBC controller has stronger robustness and better steady-state performance. So it is proved that the proposed control scheme in this paper is effective and suitable.



---

*Source: 5801573-2018-05-13.xml*