A Vision-Based Navigation System for Perching Aircraft

This paper presents the investigation of the use of position-sensing diode (PSD) - a light source direction sensor - for designing a vision-based navigation system for a perching aircraft. Aircraft perching maneuvers mimic bird’s landing by climbing for touching down with low velocity or negligible impact. They are optimized to reduce their spatial requirements, like altitude gain or trajectory length. Due to disturbances and uncertainties, real-time perching is realized by tracking the optimal trajectories. As the performance of the controllers depends on the accuracy of estimated aircraft state, the use of PSD measurements as observations in the state estimation model is proposed to achieve precise landing. The performance and the suitability of this navigation system are investigated through numerical simulations. An optimal perching trajectory is computed by minimizing the trajectory length. Accelerations, angular-rates and PSD readings are determined from this trajectory and then added with experimentally obtained noise to create simulated sensor measurements. The initial state of the optimal perching trajectory is perturbed, and by assuming zero biases, extended Kalman filter is implemented for aircraft state estimation. It is shown that the errors between estimated and actual aircraft states reduce along the trajectory, validating the proposed navigation system.


Introduction
Aircraft perching can be described as an unconventional maneuver, with an objective of mimicking bird's landing by touching down with near-zero velocity, but without flapping wings. The aircraft achieves this by executing a climb maneuver [25], where most of its kinetic energy is converted into potential energy, while the rest is lost due to drag. The reduction in velocity can also be achieved by rapid pitching of aircraft to high angles-of-attack for sudden increase in aerodynamic drag [6,13,18], or by performing a momentum reversal maneuver [1]. However, near-zero velocity landing cannot be achieved by these strategies, Fig. 1 Illustration of perching maneuver of aerodynamic and parameter uncertainties, as well as external disturbances, these open-loop type control inputs, without any corrections, lead to the deviation of aircraft from the desired landing point as perching maneuvers are unstable [22]. The problem can be addressed by the use of feedback controllers [5,22] to bring back the aircraft to its nominal optimal trajectory. For real-time perching, the performance of such controllers highly depends on the estimated aircraft state. Due to the precise landing requirements of this maneuver, a high accuracy of the estimated state is desired. Motion capture systems provide precise navigation, with sub-millimeter and sub-millidegree accuracy in position and attitude, respectively, but they are very expensive and the maneuver has to be confined to indoor environments. For outdoor perching, the widely used civilian Global Positioning System (GPS) can be employed, but it has a horizontal accuracy of 3 m and a vertical accuracy of 5 m. Depending on the availability, augmented positioning systems, like differential GPS, real-time kinematic and precise point positioning, provide sub-decimal accuracy, but they all have a low update rate, which makes them unsuitable for perching navigation. An interesting navigation system has been proposed by Moore and Tedrake [15,16] for the localization of a glider to perch on a power line. The glider is equipped with a magnetometer, which senses the magnetic field induced by the alternating current passing through the power line. By predicting the state of the aircraft using the glider's dynamics, and using the magnetic field observation model, the state -position, velocity, and orientation -of the aircraft can be estimated recursively along the trajectory. Alternatively, vision can also be used for the determination of the state of a perching aircraft. In particular, this paper focuses on investigating the use of position-sensing diodea light source direction sensor -for providing navigation to the perching aircraft. This sensor has been successfully used for providing relative navigation to aerospace problems, like autonomous air refueling [20], spacecraft rendezvous [10] and formation flying [2]. If there are a minimum of three light sources with known location, the aircraft's position and orientation, relative to the light sources, can be easily determined. The light-weight, low computational load for measurement signal processing and high precision [19] are the salient features for the selection of this sensor in this paper.
To find the use of PSD for providing navigation to a perching aircraft, this paper probes its suitability as follows. An optimal perching trajectory, confining to the longitudinal plane of motion, is computed, and is considered as a reference trajectory. Accelerations and angular velocities of the aircraft along this trajectory are determined, and then corrupted by adding experimentally obtained noise containing biases to create simulated sensor measurements. Three light sources, acting as beacons, are assumed to be placed near the landing point, as illustrated in Fig. 2. The aircraft is equipped with a PSD, placed at the tip of the right wing. Directions of the light sources are determined for all the three beacons in a normalized vector form, Fig. 2 Illustration of the observation model along the trajectory, and then added with Gaussian noise to generate simulated PSD measurements. The aircraft equations of motion in the body-axis frame of reference [17,24], with attitude kinematics represented by quaternion [7], are discretized using the first-order Euler method, and are considered as the state-space model. The three PSD sensor measurements are treated as the observations. By perturbing the initial state of the optimal perching trajectory and assuming zero biases, aircraft state estimation is carried out by implementing extended Kalman filter [28] using the defined state and observation models, and simulated sensor measurements. It is shown that the errors between the actual and estimated states reduce along the trajectory, supporting the use of PSD for providing a vision-based navigation system to a perching aircraft.
The rest of this paper proceeds as follows. In Section 2, background on the aircraft equations of motion, sensors of the navigation system, state and observation models, and extended Kalman filter is provided. Section 3 presents the computation of reference perching trajectory, determination of simulated sensor measurements and observations, results and discussion of aircraft state estimation. Finally, Section 4 concludes the paper.

Aircraft Equations of Motion
The nonlinear, six degree-of-freedom aircraft equations of motion in the body-axis frame of reference [7,17,27] are given by ⎡ where u, v and w are velocities, p, q and r are angular rates in the x, y and z directions of the body-axis frame of reference, respectively; X, Y and Z are coordinates of the aircraft in the inertial frame of reference; q 1 , q 2 , q 3 and q 4 are elements of quaternion vector, which represents the attitude of the aircraft; s is the trajectory length; m is the mass of the aircraft and g is gravity. R b i and R i b are the attitude matrices, where i and b denote inertial and body frames. For R b i the subscript i and superscript b means that it transforms a vector from the inertial frame of reference to the body-axis frame of reference. The attitude matrices are related to each other, and to the quaternion elements as where C L , C D , and C Y are lift, drag and yaw coefficients, respectively; α is the angle-of-attack; β is the sideslip; V is the total velocity; ρ is the air density; and S is the reference surface area. Quaternion is used for attitude representation to avoid singularity that arises in attitude dynamics when the pitch angle becomes 90 • . The Euler angles, yaw (ψ), pitch (θ ) and roll (φ), are related to the quaternion elements through the following equations senses the difference between acceleration and gravity of the aircraft in the body axis frame of reference. The accelerations, a x , a y and a z along the x, y and z axes of the body, respectively, in terms of the aircraft state variables, aerodynamic forces and thrust are given as [8] where F x , F y and F z are given in Eq. 3a-c, b a x , b a y and b a z are biases in x, y and z axes, respectively. Gyroscope senses the aircraft's angular rates, which are also in the body frame of reference. The angular rates, ω x , ω y and ω z along the x, y and z axes of the body, are given in terms of the aircraft state variables as where b ω x , b ω y and b ω z are biases in x, y and z axes, respectively. PSD sensor senses the direction of the light sources. The sensor comprises a two-dimensional array of light sensing diodes placed on a flat surface. This surface is placed in the focal plane of a wide angle lens. When an infrared light beacon emits light, it passes through the lens, and is incident at a single point on the array of diodes. Due to photoelectric effect, there will be a change in the electrical current from which the point of incidence on the surface is determined. Figure 3 provides an illustration of the working of the sensor. If χ and γ are the coordinates of the light incidence on the diode, and f is the focal length, then the normalized vector form of line-of-sight observation b norm is given as The normalized vector form of line-of-sight observations are the PSD sensor measurements.

State and Observation Models
The equations of motion presented in Eq. 1a-d comprise the state model. However, for the implementation of EKF, the differential form of equations of motion are transformed into a discrete form using first-order Euler method [3].
In addition to the states, the dynamics of biases of accelerometer and gyroscope are modeled aṡ The observation model comprises the PSD sensor measurements, which give the directions of the light sources in the body-axis frame of reference. An illustration is provided in Fig. 2. To derive the observation model, let us consider the locations of light source and aircraft center of gravity in the inertial frame of reference as X i b and X i cg , respectively. Corresponding locations in the bodyaxis frame of reference can be denoted by X b b and X b cg , respectively. The vectors between the light source and aircraft CG in the two frames of reference are related to each other through the attitude matrix in Eq. 2a,b as Let r b and v b be the vectors between the PSD sensor and aircraft CG, and the light source and PSD sensor in the body-axis frame of reference, respectively. By the triangle law, all the vectors are related to each other as By substituting (10) in the above equation, and rearranging the terms, we get Normalization of the preceding equation leads to the observation model

Extended Kalman Filter
Extended Kalman filter [28] is used in this paper for aircraft state and biases estimation. This nonlinear filtering technique can be used for state, parameter and dual estimation problems. To implement EKF, the discretized state-space form of aircraft equations of motion and the observation model can be expressed together in a generalized form as where w and v are Gaussian noises with zero mean and covariances Q and R, respectively; subscripts i and i + 1 indicate time; x, u and y are state, control and observation vectors given as Let us define the following matrices The first step in the implementation of EKF comprises a priori estimation of state and observations as In the second step, corrections are made to the a priori estimation, which is defined as posteriori estimation where K i+1 is the Kalman gain, which is given by for which The a priori and posteriori estimations for P x in the Eq. 20a,b are given by

Reference Perching Trajectory
The nominal perching trajectory, which will be used later for state estimation, is confined to the longitudinal plane of motion only. It is generated by minimizing the trajectory length of the maneuver [22], with level-flight trim and perched states as initial and terminal boundary conditions, respectively. The geometric model of the aircraft is taken from Ref. [14], which has a conventional tractor-type fixedwing configuration. The aircraft's mass and other relevant properties are provided in Table 1. It should be noted that the mass of the aircraft is increased from 0.8 to 1.2 kg to account for the additional sensors weight. Aerodynamics of the aircraft is modeled using the approach followed in Ref. [23], where the steady-state aerodynamics is approximated using nonlinear vortex correction method [11] and the unsteady aerodynamics is approximated using Leishman's statespace model [12] of Wagner's function [9]. The required sectional aerodynamic data is taken from Ref. [14], where it has been obtained from wind tunnel experiments. During the maneuver, the aircraft state and control input variables are subjected to the bounds presented in Table 2. The computed flight-path, time histories of aircraft states and control inputs of the reference optimal perching trajectory are presented in Figs. 4, 5 and 6, respectively. However, the time histories of the lateral state variables, v, ψ and φ, are

Simulated Measurements and Observations
During real-time aircraft state estimation, the accelerometer, gyroscope and PSD measurements are obtained from their respective sensors. In our simulations, they are determined from the reference optimal perching trajectory presented in the previous subsection. To make the simulated measurements realistic, they are corrupted by adding noises. The accelerations and angular velocities in the body frame-of-reference are determined by [8]   and The accelerations and angular velocities are added with real noises obtained experimentally from a stationary IMU, BMI055. The time histories of accelerations and angular rates are presented in Figs. 7 and 8, respectively.
The PSD readings, which provide the directions of the beacons, can be determined by Eq. 13. The locations of three beacons, which are placed near the landing point, are chosen as The location of the PSD sensor with respect to CG of the aircraft is chosen as Based on the characteristics of the PSD sensor used in [20], the PSD readings are corrupted with a Gaussian noise of standard deviation 1/2500, and they are presented in Fig. 9. It can be noticed that the actual and corrupted sensor measurements are indistinguishable because of the low noise of PSD sensors. To ensure that all the beacons are in the field-of-view of the PSD sensor, the angle of incidence of light is plotted for all the beacons and presented  Fig. 10. It can be seen that all the beacons are within 60 • field-of-view, which is typical for most of the commercially available lenses.

State Estimation, Results and Discussion
The state estimation is carried out by first perturbing the initial state of the optimal perching trajectory presented in   (27) where I and O are identity and null matrices of appropriate dimensions specified in their subscripts. The covariance matrix P x is initialized as Once the initialization of the aircraft state and other covariance matrices is done, the a priori estimation of the aircraft state is carried out using the discretized statespace model. The simulated accelerations and angular rates required for the evaluation of the a priori state estimation are obtained from Figs. 7 and 8, respectively. The a priori state estimation is followed by the posteriori estimation, which is carried out by using Eq. 18. The Kalman gain required for the evaluation of the posteriori estimation is determined from Eq. 19. The predicted PSD observations are evaluated using (13), where X b and r b are given in Eqs. 25 and 24a-c, respectively. The measured PSD observations are obtained from the plots presented in Fig. 9. Before the evaluation of the next a priori state estimation, the covariance matrices are updated using (20a,b) and (21a,b), for which the Jacobians, F , H , D and B, defined in Eq. 16a-d, are determined numerically. These steps are repeated recursively until the end of the maneuver.
The time-histories of the errors of estimated position, velocity, quaternion, Euler angles and biases are presented in Fig. 11. The use of quaternion for the representation of aircraft orientation is less intuitive. Hence, they are transformed into Euler angles via Eq. 5a-c. The error between actual and estimated quaternions, (Δϑ), is defined as [4] where δq is the quaternion product of actual and conjugate of estimated quaternions given as The time history of quaternion angle error is presented in Fig. 12  observable. The numerical simulations and convergence of errors of all the aircraft states strongly support the proposed vision-based navigation system for a perching aircraft, especially in the outdoor environments. Compared with the expensive image processing-based localization techniques, the computational cost required for signal processing of PSD measurements is negligible. This allows the state estimation algorithms to run at significantly higher update rates. As the control and state estimation algorithms run in tandem with each other, a high update rate of state estimation facilitates the control algorithms to also run at higher update rates, which can lead to increased tracking performance. The reference perching trajectory considered for the simulations in this paper has a maneuver time of around 5 s. Convergence of errors has been achieved within around 1.5 s. If the maneuver time is short such that the desired convergence could not be achieved, the navigation system can be activated during the level-flight phase, prior to the initialization of the maneuver. The evaluation of state and observation models, and the implementation of EKF are all computationally inexpensive. A high accuracy of state estimation is achieved. Considering all these merits, the proposed navigation system establishes itself as a potential candidate for real-time application.

Conclusions
A vision-based navigation system, comprising accelerometers, gyroscopes and a PSD sensor, has been proposed for the estimation of aircraft state during a perching maneuver. The proposed system has a PSD sensor mounted on the aircraft that senses the directions of the light sources placed near the landing point with high accuracy, and the measurements are treated as observations in the state estimation model. The performance of the proposed navigation system is verified through numerical experiments, where simulated measurements are determined from a reference optimal perching trajectory. State estimation is carried out using EKF. Errors of all the estimated aircraft state variables and biases have reduced considerably and then remained bounded. A sub-centimeter, sub-centimeter per second and sub-degree accuracy in position, velocity and attitude, respectively, has been achieved by the end of the maneuver. The use of lightweight PSD sensors, computationally inexpensive state and observation models, and high accuracy of estimated states make the proposed navigation system a potential candidate for real-time perching application.