1 Introduction

Photoelectric pods mounted on aircraft for detection and tracking tasks and as inertial navigation platforms with laser interference are important components of UAVs [1, 2]. The traditional inertial navigation platform structure is a two-axis, two-gimbal or three-gimbal structure that unfortunately possesses self-locking and control problems [3, 4]. With the development of advanced digital technology, a large number of advanced control methods have been provided in the field of automatic control; however, more than 90% of the industrial controllers currently being implemented are based on PID algorithms to expand [5, 6]. The adaptive fuzzy PID controller has been applied to the two-axis tracking platform. Only the transient response has been verified via simulation, and situations suitable for application in practical engineering have not been noted [7, 8]. The cascading, fractional-order, internal model PID controller is only suitable for fractional-order control objects and cannot be applied to integer-order photoelectric pod control systems [9]. To improve the anti-interference ability of a system, some studies have put forward sliding mode control. Although a sliding mode controller has a strong anti-interference ability, the chattering phenomenon exists on the sliding surface [10,11,12,13]. The velocity loop with a disturbance observer has been proposed in recent years. The design of the disturbance observer is attributed to the Q-filter design. It enhances the system anti-interference performance; however, the phase seriously lags, resulting in a low damping characteristic [14]. According to the above references, the PID control method is too simple or even less than ideal in terms of the control effect, and other control methods are not conducive to project realization. Thus, the control method adopted in this paper is the lag–lead control method. The 5-parameter lag–lead controller is used for convenient project implementation for the control object approximation of a two-order element, and its design is simple, enabling it to resist disturbances. The LMS algorithm is introduced to the inner gimbal position loop to compensate for the camera delay time. Compared with that in [15], its compensation ability is improved by two frames. The outer gimbal analog regulator control method and the inner gimbal lag-lead controller are applied; the linkage mode is that the outer gimbal follows the movement of the inner gimbal, the characteristics of which are simple structure and convenient control. Simultaneously, the FSM system is introduced, and a 6-DOF (degrees of freedom) compound axis control is established. The beam control precision is slightly higher than 3 μrad according to the literature [16]. In this paper, the two axes considered are the azimuth axis and the pitch axis, and the four gimbals studied are the outer azimuth gimbal, outer pitch gimbal, inner azimuth gimbal and inner pitch gimbal. LOS is the sight axis.

2 TV miss-distance compound axis control algorithm

2.1 Normalized LMS adaptive filtering algorithm

In an actual photoelectric pod system, because the TV tracking miss-distance needs to undergo photoelectric conversion, signal processing, image recognition and other elements, the output of the miss-distance increases the target imaging time, resulting in delay. Thus, the actual position loop contains a pure time-delay element, i.e., three frames. The delay unit severely reduces the phase margin of the system and constrains the position loop gain and bandwidth, which affects the stability and tracking precision; meanwhile, the tracking velocity is also restrained. The error mean square value of the filter output signal and the desired signal is the optimization indices, and the linear combination of the filter weights can be adjusted automatically, which has the advantages of simple structure and good filtering performance. It is suitable for the situation where the statistical characteristics and prior knowledge of the signal and noise are insufficient. A structure diagram of the LMS adaptive filter is shown in Fig. 1.

Fig. 1
figure 1

LMS filter diagram

where \(x(n)\) is the input signal at time \(n\), \(W(i)\) is the weight of \(x(n - i)\), \(i = 0,\;\;1,\; \ldots ,\;m - 1\), \(y(n)\) is the filter output signal at time \(n\), \(x(n)\) and \(W(i)\) are linear combinations of \(m\) number of input signals, \(d(n)\) is the desired filter output signal at time \(n\), and \(e(n)\) is the error of the output signal and desired signal. Define,

$$X(n)\; = \;\left[ {x(n),\;x(n - 1), \ldots ,\;x(n - m + 1)} \right]^{T} ,$$
$$W(n)\; = \;[w(0),\;w(1), \ldots ,\;w(m - 1)]^{T} .$$

Then,

$$Y(n)\; = \;W^{T} (n)\; \times \;X(n),$$
(1)
$$e(n)\; = \;d(n) - Y(n)\; = \;d(n) - W^{T} (n)\; \times \;X(n),$$
(2)

where the updating weight equation is

$$W(n + 1)\; = \;W(n)\; + \;X(n)\; \times \;e(n)\; \times \;\mu /\left( {a\; + \;\left\| {X(n)} \right\|^{2} } \right),$$
(3)

where \(a\) is a small positive constant and \(0 < \mu < 2\). We used the LMS algorithm to compensate for the TV miss-distance delay element (\({\text{e}}^{ - \tau s}\)). After compensating for the TV miss-distance delay, it is sent to the position of the second-order controller to obtain the velocity reference signal. The velocity reference signal and velocity feedback signal undergo different operations to send the velocity of the second-order controller to obtain the velocity output. After it is sent to the plant, the integral operation is performed to obtain the position output, which comprises the inner gimbal position and velocity double closed-loop control system with normalized LMS, as shown in Fig. 2.

Fig. 2
figure 2

Inner gimbal control system diagram

In Fig. 2, the inner gimbal velocity loop feedback signal is collected by the VG910 optic fiber gyroscope. The gyroscope output analog velocity signal is converted to a digital signal. Finally, the DSP operation constitutes a velocity closed loop. The angle between the inner gimbal and outer gimbal is used to obtain the feedback signal, which constitutes a position closed loop.

2.2 The compound control technology for improving laser beam control accuracy

The two-axis, four-gimbal outer gimbal control system and the FSM control system are similar to the inner gimbal control system in that they are also position and velocity double closed-loop control systems. The compound control structure is shown in Fig. 3.

Fig. 3
figure 3

Compound control diagram

In Fig. 3, \(\theta_{i} - \theta_{\text{Los}}\) is the TV miss-distance (the inner gimbal portion is shown in Fig. 2), \(\theta_{0}\) is the outer gimbal output angle and \(\theta_{\text{P0S}}\) is the output value of the TV miss-distance. The working principle of the system is as follows: After the image processing system captures the target, it provides a TV miss-distance value to the inner gimbal control system. Then, the TV miss-distance, compensated for by the LMS filter, is sent to the inner gimbal control system, which locks the target in the crosshair on the image screen. Finally, the TV miss-distance is sent to the FSM system to improve the laser beam control accuracy. The signal relation of each signal is listed below:

Inner gimbal control system The inner gimbal optic fiber gyroscope collects the azimuth and pitch angle velocity information. The inner gimbal position feedback is composed of the grating \(\theta_{0}\) and resolver (\(\theta_{\text{LOS}} - \theta_{0}\)). The TV miss-distance (\(\theta_{i} - \theta_{\text{Los}}\)), transmitted from the main control computer, and the inner gimbal feedback angle, composed of the grating and the resolver, undergo the differential operation, the outcome of which is used as the input of the position controller to obtain the output of the position controller, which will serve as the input of the velocity loop. The input of the velocity loop and the gyroscope feedback velocity undergo the differential operation to yield the input of the velocity controller, which is used to obtain the output of the velocity controller. Finally, we obtain the inner gimbal LOS angle \(\theta_{\text{LOS}}\) by performing the integral operation to constitute the inner gimbal control system.

Outer gimbal analog control A resolver is installed between the inner and outer gimbal to measure the error \(\theta_{\text{LOS}} - \theta_{ 0}\) between the inner and outer gimbal; it can also measure the outer gimbal angle velocity simultaneously. In this paper, the outer gimbal movement follows the inner gimbal movement. When the inner gimbal moves, the angle error between the inner and outer gimbal is collected and then converted into an analog signal by the DA, which sends the signal to the outer gimbal position controller to obtain the outer gimbal velocity input. This input is subtracted from the resolver feedback velocity to obtain the velocity error, which is sent to the velocity controller. Finally, we obtain the outer gimbal angle position after performing the integral operation, allowing us to follow the inner gimbal movement. The outer gimbal angle \(\theta_{0}\) can be collected by the circular grating.

FSM system The error of \(\theta_{i}\) and the inner gimbal position feedback angle are the input of the FSM. Its control method is the same as that for the inner gimbal control method. It is also a double closed-loop control. Its secondary guiding error improves the laser beam pointing accuracy.

3 Implementation of photoelectric interference pod algorithm

3.1 System hardware structure

The system hardware consists of an outer gimbal, an inner gimbal, an optic fiber gyroscope, a resolver, a circular grating, a long focal-length camera and a short focal-length camera. The inner gimbal angle velocity and the angles of the inner and outer gimbals are measured using the gyroscope, resolver and circular grating, respectively. The long focal-length camera is used to track distant small-field targets; conversely, the short focal-length camera is used. The basic structure of the pod with the FSM is shown in Fig. 4.

Fig. 4
figure 4

Schematic diagram of the photoelectric pod structure

From Fig. 4, we can see that the photoelectric interference pod has the outer pitch-inner pitch structure: The outer azimuth gimbal undergoes the roll motion, while the outer pitch gimbal inside the outer azimuth gimbal it plays outside the pitch motion. Inside the outer pitch is the inner pitch gimbal, which adjusts the pitch motion to a small extent. Inside the inner pitch is the inner azimuth gimbal, which has a small range of azimuth movement. The inner azimuth platform, which is equipped with a two-axis FSM fast mirror system, has significant influence on the laser pointing precision. The inner azimuth platform is also equipped with long and short focal-length cameras; the axis of the laser and the LOS are coaxial, which is maintained by the FSM closed-loop control.

3.2 Design of compound axis servo controller

3.2.1 Design of outer gimbal velocity loop controller

Figure 5 shows that \({\text{UP}}\) is the analog voltage signal for the position loop and that \({\text{UV}}\) is a feedback analog voltage signal. Therefore, we can obtain the error signal \(e\;{ = }\;{\text{UP}}\;{ + }\;{\text{UV}}\) as \(R_{156} = R_{157} = 20{\kern 1pt} {\kern 1pt} k\). \({\text{UO}}\) is connected to the SG2731 chip to obtain the PWM wave to the drive outer gimbal voice coil motor. The velocity loop regulator is composed of lag–lead, proportion and inertia elements, as shown in Fig. 5. If the control effect is poor, we substitute the lag–lead element with the proportional element. In this paper, a lag–lead controller is chosen to satisfy the index requirements. Finally, from Fig. 5, we can obtain Eq. (4).

Fig. 5
figure 5

Outer gimbal velocity controller

$$\frac{\text{UO}}{E} = \frac{{R_{159} R_{163} R_{167} R_{170} (W_{{ 1 4 {\text{right}}}} C_{79} s + 1)}}{{R_{157} R_{161} R_{164} R_{168} (R_{159} C_{77} s + 1)[C_{79} s(W_{{ 1 4 {\text{right}}}} + R_{163} ) + 1](R_{170} C_{82} s + 1)}},$$
(4)

where \(R_{156} = R_{157} = R_{159} = R_{158} = 20{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} k\), \(R_{161} = R_{164} = R_{168} = 20{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} k\), \(R_{163} = 150{\kern 1pt} {\kern 1pt} {\kern 1pt} k\), \(R_{167} = {\kern 1pt} {\kern 1pt} 33{\kern 1pt} {\kern 1pt} {\kern 1pt} k\), \(R_{170} = R_{166} = R_{169} = 20{\kern 1pt} {\kern 1pt} {\kern 1pt} k\), \(C_{77} = C_{82} = 10\;{\kern 1pt} {\text{nF}}\) and \(C_{79} = 4.4\;\mu {\text{F}}\).

Regulating the potentiometer \(W_{{ 1 4 {\text{right}}}}\) affects the zero trend of the open-loop amplitude-frequency characteristics and also shifts the zero point to the right, resulting in the system unit step response being gentle and oscillation ratio reduction. Finally, the azimuth and pitch outer gimbal velocity loop controllers, via testing, are determined to be \(G_{\text{av}} (s) = \frac{7.5(0.01608s + 1)}{{(0.781608s + 1)(0.000004s + 1)^{2} }}\) and \(G_{\text{ev}} (s) = \frac{32.175(0.66s + 1)}{{(3.9 \times 10^{ - 6} s + 1)(0.66282s + 1)(2 \times 10^{ - 6} s + 1)}}\), respectively.

3.2.2 Design of outer gimbal position loop controller

In Fig. 6, \({\text{UIN}}\) is the angular position error voltage. \({\text{UP}}\) is the analog voltage output. R 146 resistance is used as a reference ground. The outer gimbal position regulator is obtained from the circuit diagram in Fig. 6 as follows:

Fig. 6
figure 6

Outer gimbal position controller

$$\frac{\text{UP}}{\text{UIN}} = - \frac{{R_{147} R_{151} R_{155} \left( {R_{148} C_{68} s + 1} \right)\left( {C_{69} W_{{ 1 2 {\text{right}}}} s + 1} \right)}}{{R_{145} R_{153} \left( {R_{147} C_{67} s + 1} \right)\left( {R_{148} + R_{151} } \right)\left[ {C_{69} \left( {W_{{ 1 2 {\text{right}}}} + R_{151} } \right)s + 1} \right]\left( {\frac{{R_{148} R_{151} }}{{R_{148} + R_{151} }}C_{68} s + 1} \right)}}.$$
(5)

From Eq. (5), the azimuth and pitch outer gimbal position regulators are determined to be \(G_{\text{AP}} (s) = - \frac{1.275}{(0.0012s + 1)(0.051s + 1)}\) and \(G_{\text{EP}} (s) = - \frac{0.11(0.01s + 1)}{(0.002s + 1)}\), respectively.

3.2.3 Design of internal gimbal controller

According to the inner gimbal azimuth motor parameters, the armature resistance is \(R = 7.77\;\varOmega\), the electromagnetic torque is \(K_{\text{m}} = 6\;{\text{N m/A}}\), the moment of inertia is \(J = 0.6\;{\text{kg}}\,{\text{m}}^{ 2}\), and the inductance is \(L = 0.00316{\kern 1pt} \;{\kern 1pt} {\text{H}}\). After calculating, the azimuth motor model is determined to be \(G_{\text{motor}} (s) = \frac{3.6}{(0.6027s + 1)(0.002s + 1)}\). According to the index, the cutoff frequency of the inner gimbal velocity open loop is \(80\;{\text{rad/s}}\), and the cutoff frequency of the position open loop is approximately \(10\;{\text{rad/s}}\). Because the hysteresis characteristic of the CCD camera affects the phase margin of the servo system, the servo system is required to have a high phase margin. Using the SISOTOOL toolbox in MATLAB, the velocity loop regulator is determined to be

\(G_{\text{speed}} (s) = \frac{400(0.088s + 1)(0.0027s + 1)}{(2.5s + 1)(0.0009s + 1)},\)

and the position loop regulator is found to be \(G_{\text{position}} (s) = \frac{250.31(0.5s + 1)(0.023s + 1)}{(11s + 1)(0.0047s + 1)}\). From the MATLAB simulation, we can obtain the position and velocity open-loop BODE figures, as shown in Fig. 7. The designs of the FSM and the pitch regulator are similar to that of the inner gimbal.

Fig. 7
figure 7

BODE picture

Figure 7 shows that the velocity open-loop cutoff frequency is \(82.6{\kern 1pt} {\kern 1pt} \;{\kern 1pt} {\text{rad/s}}\) and that the phase margin is \(85.9{\kern 1pt} {\kern 1pt} {\kern 1pt} \;{\text{rad/s}}\). The position open-loop cutoff frequency is \(12.69{\kern 1pt} {\kern 1pt} \;{\kern 1pt} {\text{rad/s}}\), and the phase margin is \(88.51{\kern 1pt} {\kern 1pt} \;{\kern 1pt} {\text{rad/s}}\).

3.2.4 Stable condition

We present only the stable condition of the inner gimbal control system; the stable conditions of the other systems are similar. The velocity loop of the inner gimbal control system is shown in Fig. 8.

Fig. 8
figure 8

Velocity loop

\(\omega_{i}\) is the velocity input, \(\omega_{\text{R}}\) is the disturbance, \(\omega_{o}\) is the velocity output, \(G_{\text{Ivc}} (s)\) is the velocity controller transform function, and \(G_{\text{Ip}} (s)\) is the inner plant transform function.

From Fig. 8, we can obtain the following equation:

$$\omega_{o} = \frac{{G_{\text{Ivc}} (s)G_{\text{Ip}} (s)}}{{1 + G_{\text{Ivc}} (s)G_{\text{Ip}} (s)}}\omega_{i} + \frac{1}{{1 + G_{\text{Ivc}} (s)G_{\text{Ip}} (s)}}\omega_{\text{R}} .$$

Therefore, the disturbance can be restrained if and only if \(\left\| {1 + G_{\text{Ivc}} (s)G_{\text{Ip}} (s)} \right\|\rangle \rangle \left\| {\omega_{\text{R}} } \right\|\). The value of \(\left\| {\omega_{\text{R}} } \right\|\) is small in an actual project; consequently, designing a proper controller can result in satisfactory performance. We used the \(G_{\text{speed}} (s) = \frac{400(0.088s + 1)(0.0027s + 1)}{(2.5s + 1)(0.0009s + 1)}\) controller to test disturbance rejecting ability of the velocity step response. The step disturbance is introduced at 2 s, as shown in Fig. 9. The overshoot is less than 10%, and the settling time is less than 0.5 s. We can see that the velocity loop achieves satisfactory performance.

Fig. 9
figure 9

Step response

3.2.5 FSM laser beam control precision resolution

From Fig. 10, we can see that in the assembly precision optical turntable system, the FSM installation angle is 45 degree in the optical path; the position of this FSM angle is defined as the FSM initial position \(\alpha_{1}\). First, the FSM rotates around its azimuth axis by an angle \(\beta\) from position \(\alpha_{1}\) to position \(\alpha_{2}\). Then, it rotates around the pitch axis by an angle \(\gamma\) from position \(\alpha_{2}\) to position \(\alpha_{3}\). \(\beta\) and \(\gamma\) are the attitude angles of the FSM space position. The laser beam incident on the horizontal axis of the turntable is reflected by the FSM and is emitted parallel to the turntable LOS axis direction. Let the FSM azimuth rotation angle be \(\beta\) and the pitch angle be \(\gamma\); then, we can obtain Eqs. (6) and (7):

Fig. 10
figure 10

Attitude angles of FSM and direction of emergent light

$$\beta = \tan^{ - 1} \frac{{\cos E_{\text{FSM}} \cos (45^\circ - A_{\text{FSM}} ) - \cos 45^\circ }}{{\cos E_{\text{FSM}} \sin (45^\circ - A_{\text{FSM}} ) + \sin 45^\circ }},$$
(6)
$$\gamma = \frac{1}{2}\tan^{ - 1} \frac{{tgE_{\text{FSM}} }}{{\cos \left( {A_{\text{FSM}} - \beta + 45^\circ } \right),}}$$
(7)

where \(A_{\text{FSM}}\) is the range of the FSM azimuth angle \(\left( {A_{\text{FSM}} \in [\begin{array}{*{20}c} { - 1^\circ } & {1^\circ } \\ \end{array} ]} \right)\), \(E_{\text{FSM}}\) is the range of the °FSM pitch angle \(\left( {E_{\text{FSM}} \in [\begin{array}{*{20}c} { - 1^\circ } & {1^\circ } \\ \end{array} ]} \right)\), \(\beta\) is the azimuth attitude angle, and \(\gamma\) is the pitch attitude angle. The distribution of attitude angle \(\beta\) in \(A_{\text{FSM}} - E_{\text{FSM}}\) space is shown in Fig. 16. Similarly, the distribution of attitude angle \(\gamma\) in \(A_{\text{FSM}} - E_{\text{FSM}}\) space is shown in Fig. 17.

4 Experiment and analysis

4.1 LMS simulation and experimental analysis

In Fig. 2, the input angle commands are as follows: the sinusoidal signal amplitude is \(20^\circ\) and the frequency is \(0.1{\kern 1pt} {\kern 1pt} {\kern 1pt} {\text{Hz}}\). The time delay that occurs when the LMS algorithm is not used is obvious in Fig. 11, whereas no time delay can be observed in Fig. 12 for the case in which the LMS algorithm is utilized. The convergence factor is 0.2, and the filter order \(m\) is 20.

Fig. 11
figure 11

Time delay between input and output signal without LMS

Fig. 12
figure 12

Time delay between input and output signal with LMS algorithm

Figure 12a shows that the input angle position signal completely coincides with the output angle position signal; thus, both the TV camera time-delay unit and the inner gimbal phase margin are simultaneously compensated for.

Similar to the simulation, the actual sinusoidal signal of the main control computer inputs, which is the miss-distance code value, can be obtained from Fig. 12b. The green curve is the actual input signal, while the purple curve is the actual output signal for the case in which the LMS algorithm is utilized. From Fig. 12b, we can see that the actual delay time is nearly compensated.

4.2 Analysis of improvement in laser beam compound control precision

The TV camera stable tracking target is shown in Fig. 13. The target altitude is 1200 m, and the velocity is \(2500{\kern 1pt} {\kern 1pt} {\kern 1pt} {\text{km/h}}\). The main control computer records the azimuth and pitch miss-distance code values for 1884 frames, and the sampling frequency is \(400{\kern 1pt} {\kern 1pt} {\kern 1pt} {\text{Hz}}\). The raw data of the 1884 frames are input into MATLAB, yielding Figs. 14 and 15. Because the dynamic target performs a periodic action, a periodic ingredient is included in Figs. 14 and 15.

Fig. 13
figure 13

Typical target

Fig. 14
figure 14

Azimuth error

Fig. 15
figure 15

Pitch error

From Figs. 14 and 15, we can see that the azimuth maximum angle error is \(\pm 3.55^{\prime }\) and that the pitch is \(\pm 1.32^{\prime }\). The FSM work range of the azimuth \(\pm 1{\kern 1pt}^\circ\) and that of the pitch \(\pm 1{\kern 1pt}^\circ\) are substituted into Eqs. (6) and (7), after which we obtain the FSM attitude angles in the \(A_{\text{FSM}} - E_{\text{FSM}}\) space, as shown in Figs. 16 and 17.

Fig. 16
figure 16

Distribution of attitude angle \(\beta\) in the \(A_{\text{FSM}} - E_{\text{FSM}}\) space

Fig. 17
figure 17

Distribution of attitude angle \(\gamma\) in the \(A_{\text{FSM}} - E_{\text{FSM}}\) space

Under the same conditions, the photoelectric interference pod with the FSM system corrects the laser light path. The main control computer records the data of 1788 frames and inputs it into MATLAB, after which we obtain the azimuth and pitch angle errors shown in Figs. 18 and 19.

Fig. 18
figure 18

Azimuth error

Fig. 19
figure 19

Pitch error

Figures 18 and 19 show that the azimuth maximum angle error is \(0.23^{\prime }\) and that the pitch error is \(0.44^{\prime }\). We can see that the tracking accuracy is improved by \(3.32^{\prime }\) and that the pitch is improved by \(0.88^{\prime }\). Thus, the azimuth and pitch beam control accuracies are more than 15 and 3 times greater compared to those of the conventional photoelectric pod. In fact, we find that the azimuth is a slightly jetter tracking target; thus, the gain of the azimuth inner gimbal position controller is reduced, resulting in different control accuracies for the azimuth and the pitch.

5 Conclusions

The existence of the TV element in the traditional photoelectric interference pod, which lacks a secondary correction beam system, affects the beam control precision. In view of the above shortcomings, the LMS algorithm is applied in the inner gimbal position loop to compensate for the camera delay time and to avoid position loop loss of the phase margin. Thus, system stability is improved. To further improve the photoelectric interference pod beam control accuracy, the FSM system is integrated into the control system to constitute a compound axis control. The simulation results show that the TV delay time is compensated. The experimental results show that the azimuth beam control accuracy is improved by \(3.32^{'}\) and that the pitch control accuracy is improved by \(0.88^{'}\).