Nomenclature
- Clea
-
clearance between the fork-ear mating surfaces
- Coa
-
coaxiality of the fork-ear intersection holes
- x
-
x-axis
- y
-
y-axis
- z
-
z-axis
- Δx g
-
x g direction deviation
- Δy g
-
y g direction deviation
- Δz g
-
z g direction deviation
- f cv
-
focal lengths of the vertical camera
- f cl
-
focal lengths of the left camera
- f cr
-
focal lengths of the right camera
- Visual min
-
minimum field of visual
- Step min
-
minimum step
- m max
-
maximum iteration number
- try max
-
maximum optimization number
Greek symbol
- $\psi$
-
yaw-angle deviation
- $\varphi$
-
pitch-angle deviation
- θ
-
rolling-angle deviation
- $\delta $
-
congestion factor
- $\alpha$
-
rotation angles of x-axis
- $\beta$
-
rotation angles of y-axis
- $\gamma$
-
rotation angles of z-axis
- $\varGamma$
-
translation vector
- $\varTheta$
-
noise matrix
- $\phi$
-
rotation angle between the inter section holes of the fork joint and the ear joint
Subscripts/Superscripts
- g
-
docking assembly coordinate system
- w
-
world coordinate system
- c
-
camera
- cv
-
vertical camera
- cl
-
left camera
- cr
-
right camera
- las
-
laser tracker
- th
-
theoretical values
- tar
-
target values
Abbreviations
- LAFSA-PF
-
local neighbourhood adaptive artificial fish swarm algorithm optimisation particle filter
1.0 Introduction
With the advent of high-precision digital measurement equipment such as laser radar, laser tracker and iGPS [Reference Mei and Maropoulos1–Reference Wang, Liu, Chen, Xie, Zhang and Wang3], the trajectory of aircraft assembly has veered towards digitisation and automation [Reference Trabasso and Mosqueira4, Reference Mei, Wang and Zhu5]. Consequently, the quality of air-craft assembly has witnessed significant enhancement [Reference Maropoulos, Muelaner, Summers and Martin6, Reference Zhang, Zheng, Yu, Wang and Ke7]. Particularly, the quality of aircraft wing-fuselage docking plays a pivotal role in determining the overall assembly accuracy and the aircraft’s service life [Reference Yu and Du8–Reference Wei, Jiang and Xiao10]. The predominant wing-fuselage junction methods are the frame type and the fork-ear type [Reference Cui and Du11, Reference Cui and Du12]. Owing to its superior connection efficacy and ease of maintenance, the fork-ear type wing-fuselage junction method is widely used in trainer and fighter aircraft.
However, in the docking stage of the fork-ear type wing-fuselage, when using a laser tracker to evaluate the docking quality, challenges arise due to the wing occlusion. This occlusion prevents the direct measurement of the characteristics of the intersection holes of the fork-ear with the laser tracker, resulting in measurements that lack intuitive-ness and precision. With the continuous improvement of the precision of visual inspection equipment, and the continuous progress of deep learning technology, the application of machine vision technology is becoming increasingly widespread [Reference Zheng, Zhao, Zhang and Wang13–Reference Zheng, Tian, Yu, Wang, Elhanashi and Saponara16]. For this reason, several researchers have explored the integration of machine vision to discern the characteristics of fork-ear intersection holes. For instance, Li G et al. [Reference Li, Huang and Li17] proposed a novel self-calibration method using circular points and the Random Sample Consensus (RANSAC) algorithm. Numerical simulations and experiments were performed on the fork-ear intersection holes based on monocular vision, demonstrating the effectiveness of this method in enhancing the detection accuracy of the wing-fuselage docking. However, solely detecting the features of the fork-ear intersection holes isn’t enough to provide a comprehensive assessment of the fork-ear docking quality. There’s also a need to measure the fit clearance of the fork-ear mating surfaces. Addressing this, Zhu Y et al. [Reference Zhu, Zhang, Deng and Liu18] utilised two industrial cameras paired with four laser trackers to dynamically monitor the aircraft wing-fuselage docking assembly process. This approach allows for the detection of both the coaxiality of the intersection holes and the fit clearance of the mating surfaces, enabling dynamic tracking measurements of wing-fuselage docking and real-time deviation corrections. Similarly, Zha Q et al. [Reference Zha, Zhu and Zhang19] introduced a visual and automated wing-fuselage docking method based on heterogeneous equipment. This method, combining an industrial camera with a laser tracker, facilitated the detection of coaxiality, fit clearance and the completion of the automatic docking of aircraft wing-fuselage.
Nevertheless, relying on dual-camera [Reference Wang, Zhang, Chen, Luo and Zheng20, Reference Yang, Dong, Ding, Brighton, Zhan and Zhao21] to oversee the fork-ear docking phase falls short in capturing the precise spatial position of the fork-ear feature points and the intricate contours of the intersection holes. This deficiency hinders a holistic depiction of the fork-ear’s position and orientation deviations, which could compromise the assembly accuracy of wing-fuselage docking. Addressing this, the study introduces multi-camera stereo vision [Reference Xu, Bo and Wang22, Reference Rameau, Park, Bailo and Kweon23], earmarking the fork-ear wing-fuselage docking assembly as the primary research focus. Following the stereo vision calibration of the multi-camera [Reference Liu, Tian, Kuang and Ma24], a multi-camera phase mechanism establishes the stereo vision space point detection model. The spatial pose of the fork-ear is mathematically derived using the elliptical cone [Reference Peng, Xu and Yuan25, Reference Liu, Xie, Zhang, Zhao and Liu26] and the Rodriguez formula [Reference Karlgaard and Schaub27, Reference Amrr, Nabi and Iqbal28]. Subsequently, a mathematical model for adjusting the wing’s pose is formulated, with the pose-adjustment control points of the wing being diligently tracked and measured by the laser tracker. The data harvested from the multi-camera and laser tracker are integrated using an Adaptive Weighted Fusion Algorithm (AWFA) [Reference Zhang, Guo and Zhang29, Reference Cong and Yu30]. Concurrently, the study proposes a Local Neighbourhood Adaptive Artificial Fish Swarm Algorithm Optimisation Particle Filter (LAFSA-PF) to track and forecast the fork-ear feature points, rectifying any detection inaccuracies. In addition, EDLines [Reference Akinlar and Topal31] and EDCircles [Reference Akinlar and Topal32] are deployed to real-time monitor the fit clearance and coaxiality of the fork-ear, ensuring that the accuracy prerequisites of the fork-ear aircraft wing-fuselage assembly quality inspection are met.
2.0 Fork-ear docking assembly quality inspection system
During the wing-fuselage assembly process, the docking stage of the fork-ear is obscured by the wing and fuselage. This occlusion makes it challenging for the laser tracker to directly measure the characteristics of the intersection holes of the fork-ear. The study of the aircraft wing-fuselage docking assembly in this paper comprises four pairs of fork-ear, with the second pair designated as the primary fork-ear, and the assembly precision requirement for the primary fork-ear is extremely stringent. Provided that the accurate assembly of the primary fork-ear is ensured, the assembly precision of the remaining auxiliary fork-ear will also meet the requirements. Consequently, the multiple fork-ear docking mechanisms can be effectively reduced to the analysis of a singular fork-ear model. As a solution, the fork-ear docking assembly quality inspection system depicted in Fig. 1 is constructed.
The fork-ear type wing-fuselage docking process is divided into the following two stages:
-
(1) The stage of wing pose-position adjustment: First, the laser tracker is used for the fuselage pose-position adjustment. Once adjusted, the pose-position of the fuselage is locked. Finally, the laser tracker is employed for the wing pose-position adjustment, ensuring that the ear joint enters the detection range of the multi-camera stereo vision system (Fig. 2).
-
(2) The stage of fork-ear docking: First, the multi-camera stereo vision system is used to capture and obtain the target feature information of both the fork-ear mating surfaces and the intersection holes. Next, the quality of the fork-ear is assessed. Finally, data from the multi-camera and the laser tracker are fused, leading to the corresponding fine-tuning of the wing pose-position.
The quality parameters for fork-ear docking assembly include the fit clearance Clea 1, Clea 2 between the fork-ear mating surfaces, the coaxiality Coa of the fork-ear intersection holes, the position deviations Δx g , Δy g and Δz g of the fork-ear assembly, the yaw-angle deviation $\psi$ , the pitch-angle deviation $\varphi$ , and the rolling-angle deviation θ. The detailed content of the fork-ear assembly quality inspection is illustrated in Fig. 3.
To better inspect the quality of the fork-ear assembly, a multi-camera stereo vision system is employed in a triangular distribution. This system comprises a vertical camera, a left camera and a right camera. To enhance detection accuracy and achieve the unification of the multi-camera world coordinate system with the docking assembly coordinate system, a circular calibration plate is used to implement stereo vision calibration and global calibration of the laser tracker with the multi-camera stereo vision system. The overall layout of this multi-camera stereo vision system is shown in Fig. 4.
In Fig. 4, ${o_g} - {x_g}{y_g}{z_g}$ denotes the docking assembly coordinate system for the wing-fuselage docking assembly. o cv , o cl and o cr represent the optical centres of the vertical camera, the left camera and right camera, respectively. o z is the convergence point where the optical axes of the vertical camera, the left camera and the right camera meet.
3.0 Quality determination of fork-ear docking assembly
3.1 Spatial position solution mathematical model of the fork-ear
The fork-ear features include points such as the centre of the fork-ear intersection holes and the fork-ear feature corner points, and so on, which are used to better detect the fork-ear docking assembly quality. Figure 5 displays the spatial position detection coordinate system for these fork-ear feature points, based on multi-camera stereo vision.
In Fig. 5, ${o_{cv}} - {x_{cv}}{y_{cv}}{z_{cv}}$ ${o_{cl}} - {x_{cl}}{y_{cl}}{z_{cl}}$ , and ${o_{cr}} - {x_{cr}}{y_{cr}}{z_{cr}}$ respectively, represent the camera coordinate systems of the vertical camera, left camera and right camera. ${O_{cv}} - {X_{cv}}{Y_{cv}}$ , ${O_{cl}} - {X_{cl}}{Y_{cl}}$ and ${O_{cr}} - {X_{cr}}{Y_{cr}}$ represent the image coordinate systems of the vertical camera, left camera and right camera, respectively. ${o_{uv}} - {x_{uv}}{y_{uv}}$ , ${o_{ul}} - {x_{ul}}{y_{ul}}$ and ${o_{ur}} - {x_{ur}}{y_{ur}}$ represent the pixel coordinate systems of the vertical camera, left camera and right camera, respectively ${o_w} - {x_w}{y_w}{z_w}$ . represents the world coordinate system of multi-camera stereo vision system. p is any feature point in the world coordinate system, while P v , P l , and P r are the imaging points on the image coordinate system of the vertical camera, left camera and right camera, respectively. The projection coordinates of p in the vertical camera, left camera and right camera coordinate systems are represented by ${p_v}\left( {{x_v},{y_v},{z_v}} \right)$ , ${p_l}\left( {{x_l},{y_l},{z_l}} \right)$ and ${p_r}\left( {{x_r},{y_r},{z_r}} \right)$ , respectively. The homogeneous coordinates of imaging points of p in the vertical, left camera and right image coordinate systems are denoted by ${P_v}{\rm{ }}\left( {{X_v},{Y_v},1} \right)$ , ${P_l}{\rm{ }}\left( {{X_l},{Y_l},1} \right)$ and ${P_r}{\rm{ }}\left( {{X_r},{Y_r},1} \right)$ , respectively. The pixel homogeneous coordinates corresponding to these imaging points are given by ${p_{uv}}\left( {{x_{uv}},{y_{uv}},1} \right)$ , ${p_{ul}}\left( {{x_{ul}},{y_{ul}},1} \right)$ and ${p_{ur}}\left( {{x_{ur}},{y_{ur}},1} \right)$ , respectively. The pixel coordinates of p can be utilised to determine its corresponding image coordinates, as demonstrated in Equation (1).
Where, ${u_{xv}}{u_{yv}}$ , ${u_{xl}}{u_{yl}}$ and ${u_{xr}}{u_{yr}}$ denote the pixel size of vertical camera, left camera and right camera, respectively. $\left( {{x_{v0}},{y_{v0}}} \right)$ , $\left( {{x_{l0}},{y_{l0}}} \right)$ and $\left( {{x_{r0}},{y_{r0}}} \right)$ represent the coordinates of the origins of the image coordinate systems for the vertical camera, left camera and right camera, respectively, in relation to the pixel coordinate system. The corresponding camera coordinates are determined using ${P_v}{\rm{ }}\left( {{X_v},{Y_v},1} \right)$ , ${P_l}{\rm{ }}\left( {{X_l},{Y_l},1} \right)$ and ${P_r}{\rm{ }}\left( {{X_r},{Y_r},1} \right)$ , as shown in Equation (2).
Where ${f_{cv}}$ , ${f_{cl}}$ and ${f_{cr}}$ denote the focal lengths of the vertical camera, left camera and right camera, respectively. The homogeneous transformation matrices ${}_{cv}^{cl}\boldsymbol{M}$ , ${}_{cl}^{cr}\boldsymbol{M}$ and ${}_{cr}^{cv}\boldsymbol{M}$ represent the rotation and translation transformations between the following coordinate systems:
${}_{cv}^{cl}\boldsymbol{M}$ : Between the vertical camera coordinate system and the left camera coordinate system.
${}_{cl}^{cr}\boldsymbol{M}$ : Between the left camera coordinate system and the right camera coordinate system.
${}_{cr}^{cv}\boldsymbol{M}$ : Between the right camera coordinate system and the vertical camera coordinate system.
Where ${}_{cv}^{cl}\boldsymbol{R}$ , ${}_{cl}^{cr}\boldsymbol{R}$ and ${}_{cr}^{cv}\boldsymbol{R}$ represent the rotation matrix between the coordinate systems of each camera, respectively; ${}_{cv}^{cl}\boldsymbol{\varGamma }$ , ${}_{cl}^{cr}\boldsymbol{\varGamma }$ and ${}_{cr}^{cv}\boldsymbol{\varGamma }$ denote the translation vectors between the coordinate systems of each camera. The parameters ${}_{cv}^{cl}\boldsymbol{R}$ , ${}_{cl}^{cr}\boldsymbol{R}$ , ${}_{cr}^{cv}\boldsymbol{R}$ , ${}_{cv}^{cl}\boldsymbol{\varGamma }$ , ${}_{cl}^{cr}\boldsymbol{\varGamma }$ and ${}_{cr}^{cv}\boldsymbol{\varGamma }$ are determined through multi-camera stereo vision calibration. By combining Equation (3) with Equation (2), the relationship between the two image points of in the image coordinate systems of both the left camera and right camera can be solved, as shown in Equation (4).
The relationship between the image points from any two cameras within the multi-camera system can be determined using the aforementioned method. Through Equation (4), we can derive z l , as shown in Equation (5).
The homogeneous transformation matrix representing the relationship between the left camera and the world coordinate system is denoted by ${}_{cl}^w\boldsymbol{M}$ , as illustrated in Equation (6).
Therefore, utilising the coordinate transformation relationship and combining Equation (5) and Equation (6), Equation (7) can be obtained to solve the position coordinates ${p_w}\left( {{x_w},{y_w},{z_w}} \right)$ of point p in the world coordinate system of the multi-camera stereo vision system.
For any pair of cameras within the multi-camera stereo vision system, the position coordinates of the stereo feature points in the world coordinate system can be determined using the method described above. The homogeneous transformation matrix that relates the world coordinate system to the docking assembly global coordinate system is represented ${}_w^g\boldsymbol{M}$ by, as illustrated in Equation (8).
Where $\alpha$ , $\beta$ and $\gamma$ represent the rotation angles of the world coordinate system relative to the global coordinate system around the x-axis, y-axis and z-axis, respectively. By combining Equation (7) and Equation (8), the spatial coordinates of the fork-ear feature points ${p_g}\left( {{x_g},{y_g},{z_g}} \right)$ in the global coordinate system during assembly can be determined, as presented in Equation (9).
The coordinates ${\rm{ }}{p_{g1}}\left( t \right) = \left( {{x_{g1}}\left( t \right),{y_{g1}}\left( t \right),{z_{g1}}\left( t \right)} \right)$ and ${\rm{ }}{p_{g2}}\left( t \right) = \left( {{x_{g2}}\left( t \right),{y_{g2}}\left( t \right),{z_{g2}}\left( t \right)} \right)$ representing the centres of the intersection holes in the fork joint and the ear joint at time t in the assembly global coordinate system can be determined using Equation (9). Due to the pose locking of the fuselage, the pose of the fork joint remains static, leading to a fixed coordinate ${\rm{ }}{p_{g1}}\left( t \right)$ . By setting ${\rm{ }}{p_{g1}}\left( t \right) = \left( {{x_{g1}},{y_{g1}},{z_{g1}}} \right)$ , ${\rm{ }}Coa\left( t \right){\rm{ }}$ the axis of the intersection hole of the fork joint is used as the reference axis to solve the coaxialityof the intersection hole of the fork-ear at time t, as shown in Equation (10).
The spatial position deviations of the intersection hole centre of the ear-type joint at time t are $\Delta {x_{o2}}\left( t \right)$ , $\Delta {y_{o2}}\left( t \right)$ and $\Delta {z_{o2}}\left( t \right)$ , as shown in Equation (11).
Where $x_{o2}^{tar}$ , $y_{o2}^{tar}$ and $z_{o2}^{tar}$ , denote the target position coordinates of the centre in the closing hole of the ear joint. Meanwhile, the position deviations of the fork-ear involution, represented as Δx g , Δy g and Δz g , correspond to ${\rm{ }}\Delta {x_{o2}}\left( t \right)$ , ${\rm{ }}\Delta {y_{o2}}\left( t \right)$ and ${\rm{ }}\Delta {z_{o2}}\left( t \right)$ , respectively.
3.2 Spatial pose determination mathematical model of fork-ear
When both the left camera and right camera are used to observe the intersection holes of the fork-ear, the unique centre and normal vector of the intersection holes of the fork-ear can be determined. This allows for the calculation of the spatial pose of the fork-ear intersection holes, which represents the pose state of the fork-ear. The spatial circular projection of the fork-ear intersection holes is shown in Fig. 6.
In Fig. 6, the optical centres ${\rm{ }}{o_{cl}}{\rm{ }}$ and ${\rm{ }}{o_{cr}}$ , in conjunction with the projection of the fork-ear intersection hole on the image coordinate system, form two elliptical cones. To simplify the equation for the elliptical cone, the coordinate systems of the left and right cameras are rotated using the rotation matrix ${\rm{ }}{\boldsymbol{R}}_c'{\rm{ }}$ to yield the elliptic cone coordinate systems ${\rm{ }}o_{cl}' - x_{cl}'y_{cl}'z_{cl}'{\rm{ }}$ and ${\rm{ }}o_{cr}' - x_{cr}'y_{cr}'z_{cr}'$ .
The equation for the elliptical projection of the fork-ear intersection hole on the coordinate planes of the left and right camera images is presented in Equation (12).
Where c=cl=cr. The elliptic cone Eq. can be obtained by combining Equation (12) with Equation (2):
Equation (13) can be rewritten as Equation (14).
The relationship between the elliptical cone coordinate system and its corresponding camera coordinate is:
Where ${\alpha '}$ , ${\beta '}$ and ${\gamma '}$ ,andrepresent the rotation angles of the camera coordinate systems relative to the elliptic cone coordinate systems around the x-axis, y-axis and z-axis, respectively. Substituting Equation (15) into Eqinto (14), Equation (16) can be obtained.
Since ${\boldsymbol{B}}$ is a real symmetric matrix as depicted in Equation (16), it can be converted into a diagonal matrix ${\boldsymbol{A}}$ using the orthogonal matrix, such as Equation (17).
Equation (17) can be rewritten in standard form as Equation (18).
In the elliptical cone coordinate system, the left and right cameras can derive two distinct normal vectors for the fork-ear intersection holes, as illustrated in Equation (19).
The normal vectors of the fork-ear intersection holes in the world coordinate system are represented as ${}^w{\boldsymbol{n}_{l1}}$ , ${}^w{\boldsymbol{n}_{l2}}$ , ${}^w{\boldsymbol{n}_{r1}}$ and ${}^w{\boldsymbol{n}_{r2}}$ , respectively, as depicted in Equation (19).
In Equation (20), there exists only one set of real solutions, and these solutions are parallel. Consequently, the genuine normal vector ${}^w{{\boldsymbol{n}}_{real}}$ for the intersection holes of the fork-ear can be ascertained using Equation (21).
Where ${\rm{ }}\angle \left( {{}^w{{\boldsymbol{n}}_l},{}^w{{\boldsymbol{n}}_r}} \right)$ represents the angle between the two vectors enclosed in the brackets; $\varepsilon $ denotes the minimum threshold of the vector angle set because the two vectors are not parallel due to the actual measurement error. When combined with Equation (7), the unique normal vector $\mathop n\nolimits_g $ of the intersection hole of the fork ear in the global coordinate system of assembly can be solved. Due to the fuselage pose locking, fork joint pose is fixed, let’s designate the normal vectors of the fork-type joint and the ear-type joint in the global coordinate system of assembly at time t as ${\rm{ }}{{\boldsymbol{n}}_{g1}}\left( t \right) = \left[ {\begin{array}{*{20}{c}}{{n_{x1}}} {}{{n_{y1}}} {}{{n_{z1}}}\end{array}} \right]$ and ${\rm{ }}{{\boldsymbol{n}}_{g2}}\left( t \right) = \left[ {\begin{array}{*{20}{c}}{{n_{x2}}\left( t \right)} {}{{n_{y2}}\left( t \right)} {}{{n_{z2}}\left( t \right)}\end{array}} \right]$ , respectively. The rotation angle ${\rm{ }}\phi \left( t \right)$ between the intersection holes of the fork joint and the ear joint at time t can be computed by Equation (22).
According to the definition of vector cross product, the rotation axis of vectors ${\rm{ }}{{\boldsymbol{n}}_{g1}}\left( t \right)$ and ${{\boldsymbol{n}}_{g2}}\left( t \right)$ is denoted by ${\rm{ }}{\boldsymbol{r}}\left( t \right) = \left[ {\begin{array}{*{20}{c}}{{r_x}\left( t \right)} {}{{r_y}\left( t \right)} {}{{r_z}\left( t \right)}\end{array}} \right]$ .
The rotation matrix ${}_{o1}^{o2}{\boldsymbol{R}}\left( t \right)$ of the fork joint and the ear joint at time t can be solved by the Rodrigues formula, as shown in Equation (24).
Where E represents a ${\rm{ }}3 \times 3{\rm{ }}$ identity matrix. Utilising the rotation matrix of the fork joint and the ear joint, the yaw angle $\psi$ , pitch angle $\varphi$ , and rolling angle θ of the fork-ear engagement can be determined.
4.0 Correction of dynamic detection error of fork-ear docking assembly quality
4.1 Pose-position adjustment mathematical modeling of the wing
To achieve greater accuracy of the fork-ear docking assembly, it is necessary to determine the spatial pose-position of the fork-ear and the wing in the docking assembly coordinate system. Therefore, it is essential to fuse the detection results of multi-camera for the fork-ear with the detection results of the laser tracker for the wing pose-position adjustment control points. So it is necessary to determine the pose adjustment mathematical model of the wing.
T is the adjustment time of the wing. ${f_a} = {\left( {{x_a}{\rm{ }}{y_a}{\rm{ }}{z_a}{\rm{ }}{\theta _a}{\rm{ }}{\varphi _a}{\rm{ }}{\psi _a}} \right)^{\rm{{\rm T}}}}$ is the initial pose-position of the wing. ${f_b} = {\left( {{x_b}{\rm{ }}{y_b}{\rm{ }}{z_b}{\rm{ }}{\theta _a}{\rm{ }}{\varphi _a}{\rm{ }}{\psi _b}} \right)^{\rm{{\rm T}}}}$ is the pose-position of the wing after the pose-position adjustment is completed. In order to ensure that the velocity and acceleration of the wing-fuselage docking process are in a gentle state and improve the alignment accuracy, the fifth-order polynomial is used to plan the wing motion trajectory. $f\left( t \right) = {\left( {x{\rm{ }}y{\rm{ }}z{\rm{ }}\;\theta {\rm{ }}\varphi {\rm{ }}\psi } \right)^{\rm{{\rm T}}}}$ is the trajectory prediction equation.
Substituting the constraint into Equation (25), Equation (26) can be solved.
Let, $\Delta \varphi = {\varphi _b} - {\varphi _a}$ then the Equation (27) can be obtained.
Using the same method of solving Equation (27), the prediction equation of the wing attitude adjustment trajectory before the fork ear is obtained, as shown in Equation (28).
According to the Equation (26), the theoretical coordinate values of the fork-ear feature points and the pose-adjustment control points ${p_i}\left( t \right)$ of wing at time t are solved.
Where ${\rm{ }}{}_a^b{\boldsymbol{R}}\left( t \right) = \left[ {\begin{array}{c@{\quad}c@{\quad}c}{{\mathop{\rm c}\nolimits} {\theta _t}{\mathop{\rm c}\nolimits} {\psi _t}} & {{\mathop{\rm s}\nolimits} {\varphi _t}c{\theta _t}s{\psi _t} - c{\varphi _t}s{\theta _t}} & {{\mathop{\rm c}\nolimits} {\varphi _t}{\mathop{\rm c}\nolimits} {\theta _t}{\mathop{\rm s}\nolimits} {\psi _t} + {\mathop{\rm s}\nolimits} {\varphi _t}{\mathop{\rm s}\nolimits} {\theta _t}}\\{{\mathop{\rm s}\nolimits} {\theta _t}{\mathop{\rm c}\nolimits} {\psi _t}} & {{\mathop{\rm s}\nolimits} {\varphi _t}{\mathop{\rm s}\nolimits} {\theta _t}s{\psi _t} + c{\varphi _t}{\mathop{\rm c}\nolimits} {\theta _t}} & {{\mathop{\rm c}\nolimits} {\varphi _t}{\mathop{\rm s}\nolimits} {\theta _t}{\mathop{\rm s}\nolimits} {\psi _t} - {\mathop{\rm s}\nolimits} {\varphi _t}{\mathop{\rm c}\nolimits} {\theta _t}}\\{ - {\mathop{\rm s}\nolimits} {\psi _t}} & {{\mathop{\rm s}\nolimits} {\varphi _t}{\mathop{\rm c}\nolimits} {\psi _t}} & {{\mathop{\rm c}\nolimits} {\varphi _t}{\mathop{\rm c}\nolimits} {\psi _t}}\end{array}} \right]$ ; $p_i^a\left( t \right)$ is the coordinate of ${p_i}\left( t \right)$ in the wing coordinate system; ${}_a^b{\boldsymbol{\varGamma }}\left( t \right) = {\left( {\begin{array}{*{20}{c}}{{x_g}\left( t \right)} {}{{y_g}\left( t \right)} {}{{z_g}\left( t \right)}\end{array}} \right)^{\rm{T}}}$ . By using Equation (27), the state equation of the wing pose-position adjustment can be established.
Where ${}_a^b{{\boldsymbol{R}}_{t,t - 1}} = {}_a^b{\boldsymbol{R}}\left( t \right) - {}_a^b{\boldsymbol{R}}\left( {t - 1} \right)$ ; ${\boldsymbol{X}}\left( t \right) = {\left( {{\boldsymbol{p}}_i^{th}\left( t \right)} \right)^{\rm{T}}}$ ; ${{\boldsymbol{\varTheta }}_{t,t - 1}}$ is a $3 \times 3$ noise matrix; ${}_a^b{{\boldsymbol{\varGamma }}_{t,t - 1}} = {}_a^b{\boldsymbol{\varGamma }}\left( t \right) - {}_a^b{\boldsymbol{\varGamma }}\left( {t - 1} \right)$ ; ${{\boldsymbol{\Lambda }}_{t - 1}}\left( t \right) = {\left( {\begin{array}{*{20}{c}}{\Delta x\left( {t - 1} \right)} {}{\Delta y\left( {t - 1} \right)} {}{\Delta z\left( {t - 1} \right)}\end{array}} \right)^{\rm{T}}}$ is the dynamic noise at time $t - 1$ .
4.2 Wing pose-position fine-tuning error correction based on LAFSA-PF and AWFA
The docking assembly of the fork-ear is dynamic. There’s a significant time difference, denoted as $\Delta t$ , between the moments the camera captures an image at time ${\rm{ }}{t_0}{\rm{ }}$ and when the image processing concludes with the pose-position adjustment at time ${\rm{ }}{t_1}$ . However, the fork-ear receives the pose-position adjustment value given by the system at time ${\rm{ }}{t_1}$ , which is actually the adjustment needed for the fork-ear’s pose-position at time ${\rm{ }}{t_0}$ .
From Section 4.1, it can be concluded that the wing pose-position adjustment action is a nonlinear non-Gaussian model, and particle filter is needed to solve and predict the model. However, particle filter particle degradation is serious and easy to fall into local optimum, which will affect the real-time and accuracy of prediction. In order to achieve real-time and accurate prediction of the fork-ear involution path, and correct the pose adjustment error value generated within $\Delta t$ time, LAFSA-PF is proposed to track and predict the fork-ear alignment process, and the data of laser tracker and multi-camera are fused to further improve the detection accuracy.
The specific steps of error correction are as follows.
Step (1): During the initial stage of fork-ear docking assembly, the importance of fork-ear feature points is sampled by using the wing pose-position adjustment state equation. This produces N particles denoted as $\left\{ {x_0^i,i = 1,2,3, \ldots, N} \right\}$ , serving as the initial sample set. The importance density function is shown in Equation (31).
Step (2): The importance weight of each fork-ear feature point particle is calculated.
Step (3): The objective function is y:
Where ${z_t}$ is the latest measurement value of the fork ear feature point, and $\hat z_{t|t - 1}^{\left( k \right)}$ is the predicted measurement value; $\zeta _v^2$ is the noise measurement covariance of particles.
Step (4): The local neighbourhood, adaptive visual and step are introduced to optimise the artificial fish swarm:
At time t, the state of the ith artificial fish is defined by ${\rm{ }}\boldsymbol{x}_t^i = \left( {x_t^1,\,x_t^2, \cdot \cdot \cdot, x_t^{\rm{n}}} \right)$ . The algorithm is set with an adaptive visual of ${\rm{ }}Visua{l_i}$ , an adaptive step of ${\rm{ }}Ste{p_i}$ , and a congestion factor of $\delta $ . The corresponding food concentration for this state is represented by $\boldsymbol{Y}_t^i = f\left( {\boldsymbol{x}_t^i} \right)$ . Let the distance between any two fish i and j, be represented as $di{s_{i,j}} = \left\| {x_t^i - x_t^j} \right\|$ .The local neighbourhood is $N = \left\{ {\boldsymbol{x}_t^j|di{s_{i,j}} \lt Visual} \right\}$ , the number of neighbour artificial fish is ${n_{fish}} = 5$ .
Using adaptive visual and step, when all artificial fish are within a local neighbourhood structure, the adaptive visual $Visual_t^i$ and the adaptive step $Step_t^i$ for the artificial fish at time t can be determined as follows:
Where ${K_1}$ and ${K_2}$ represent the limiting factors, which are constants between 0 and 1; $Visua{l_{\min }}$ and $Ste{p_{\min }}$ represent the minimum field of visual and the minimum step, respectively; $\alpha \left( m \right)$ is a function which decreases with the increase of the number of iterations m.; ${m_{\max }}$ is the maximum number of iterations.
Step (5): Artificial fish swarm particles optimised by local neighbourhood adaptive algorithm:
Swarming behaviour, at time t, the centre position of the neighbourhood structure of the ith artificial fish is $\boldsymbol{Cen}_t^i = \left( {cen_t^1,cen_t^2,cen_t^3, \cdot \cdot \cdot, cen_t^n} \right)$
Where $fis{h_k}$ represents the kth neighbour artificial fish within the local neighbourhood of the ith artificial fish. Suppose that the food concentration ${\rm{ }}\boldsymbol{Y}_{Cen}^i = f\left( {\boldsymbol{Cen}_t^i} \right){\rm{ }}$ corresponding to the centre position a at time t. If $\boldsymbol{Y}_{Cen}^i /{{n_{fish}} \gt \delta }\boldsymbol{Y}_t^i$ , then the ith artificial fish moves one step forward to $\boldsymbol{Cen}_t^i$ . Therefore, the position component of the particle at the next moment is calculated according to Equation (36):
Where $Rand\left( {} \right)$ is a random real number between 0 and 1. If ${{\boldsymbol{Y}_{Cen}^i}/{{n_{fish}} \lt \delta }}\boldsymbol{Y}_t^i$ is met, the foraging behaviour is performed.
Foraging behaviour: The ith artificial fish randomly searches for a point within the adaptive visual range $\left[ { - Visual_t^i,Visual_t^i} \right]$ that satisfies ${\boldsymbol{Y}_{rand}} \gt {\boldsymbol{Y}_i}$ and then directly moves to that position. If after $tr{y_{\max }}$ optimisation attempts no point satisfying the requirements is found, a random value within the adaptive step size range $\left[ { - Step_t^i,Step_t^i} \right]$ is taken as the displacement increment for the next moment, and then the trailing behaviour is conducted.
Trailing behaviour: Find the artificial fish $fis{h_{best}}$ with the best position in the local neighborhood. Assume that the current state of $fis{h_{best}}$ is $\boldsymbol{x}_{best}^i = \left( {x_{best}^1,x_{best}^2,x_{best}^3, \cdot \cdot \cdot, x_{best}^n} \right)$ , and the corresponding food concentration $\boldsymbol{Y}_{best}^i = f\left( {\boldsymbol{x}_{best}^i} \right)$ . If ${{{\rm{ }}\boldsymbol{Y}_{best}^i}/{{n_{fish}} \gt \delta }}\boldsymbol{Y}_t^i$ is. met, then the ith artificial fish moves one step forward to $fis{h_{best}}$ . Therefore, the particle position component at the next moment is calculated according to Equation (37). If ${{{\rm{ }}\boldsymbol{Y}_{best}^i}/{{n_{fish}} \gt \delta }}\boldsymbol{Y}_t^i$ is met, return to perform foraging behaviour until the final optimisation result is obtained.
Step (6): The weights of N fork-ear feature point particles obtained by sampling after optimisation are calculated and normalised by the Equation (38):
Step (7): Estimate and output the state of the fork-ear feature points of the notch at time t using Equation (39).
Step (8): Comprehensive error correction:
A joint linear deviation data fusion model, integrating multi-camera and laser tracker data, is constructed to correct the data fusion error:
where ${{\boldsymbol{h}}_{cv}}$ , ${{\boldsymbol{h}}_{cr}}$ , ${{\boldsymbol{h}}_{cl}}$ , and ${{\boldsymbol{h}}_{las}}$ represent the observation matrix of vertical camera, left camera, right camera and laser tracker, $X\left( t \right)$ respectively; represents the position deviation estimator of the fork-ear feature points; ${{\boldsymbol{\varTheta }}_{cv}}\left( t \right)$ , ${{\boldsymbol{\varTheta }}_{cr}}\left( t \right)$ , ${{\boldsymbol{\varTheta }}_{cl}}\left( t \right)$ , and ${{\boldsymbol{\varTheta }}_{las}}\left( t \right)$ represent the measurement noise vector of each device at time t, respectively; $\sigma _{cv}^2$ , $\sigma _{cr}^2$ , $\sigma _{cl}^2$ , and $\sigma _{las}^2$ represent the variance of each equation, and all are normally distributed.
The AWFA is used to optimise the fusion data of the multi-camera and the laser tracker, and the optimal estimation value ${\boldsymbol{p}}_i^{est}\left( t \right)$ of the coordinate data fusion of the fork-ear feature points at time t without filtering:
where ${{\boldsymbol{C}}_{las}}$ , ${{\boldsymbol{C}}_{cv}}$ , ${{\boldsymbol{C}}_{cl}}$ , and ${{\boldsymbol{C}}_{cr}}$ are the covariance matrices of the laser tracker and the vertical camera, left camera and right camera, respectively (Fig. 7).
The wing pose-position estimation at time t is obtained by solving Equation (27). By comparing with the theoretical pose-position, the wing pose-position deviation $\Delta {f_a}\left( t \right) = {\left( {\Delta {x_a}{\rm{ }}\Delta {y_a}{\rm{ }}\Delta {z_a}{\rm{ }}\Delta {\varphi _a}{\rm{ }}\Delta {\theta _a}{\rm{ }}\Delta {\psi _a}} \right)^{\rm{{\rm T}}}}$ at time t is obtained. The pose adjustment error correction value $\Delta p_i^a\left( t \right)$ of the positioner generated within $\Delta t$ time is obtained by $\Delta {f_a}\left( t \right)$ combined with the inverse kinematics solution:
Where $\Delta {\boldsymbol{R}}\left( t \right) = \left[ {\begin{array}{c@{\quad}c@{\quad}c}{{\mathop{\rm c}\nolimits} \Delta {\theta _t}{\mathop{\rm c}\nolimits} \Delta {\psi _t}} & {{\mathop{\rm s}\nolimits} \Delta {\varphi _t}c\Delta {\theta _t}s\Delta {\psi _t} - c\Delta {\varphi _t}s\Delta {\theta _t}} & {{\mathop{\rm c}\nolimits} \Delta {\varphi _t}{\mathop{\rm c}\nolimits} \Delta {\theta _t}{\mathop{\rm s}\nolimits} \Delta {\psi _t} + {\mathop{\rm s}\nolimits} \Delta {\varphi _t}{\mathop{\rm s}\nolimits} \Delta {\theta _t}}\\{{\mathop{\rm s}\nolimits} \Delta {\theta _t}{\mathop{\rm c}\nolimits} \Delta {\psi _t}} & {{\mathop{\rm s}\nolimits} \Delta {\varphi _t}{\mathop{\rm s}\nolimits} \Delta {\theta _t}s\Delta {\psi _t} + c\Delta {\varphi _t}{\mathop{\rm c}\nolimits} \Delta {\theta _t}} & {{\mathop{\rm c}\nolimits} \Delta {\varphi _t}{\mathop{\rm s}\nolimits} \Delta {\theta _t}{\mathop{\rm s}\nolimits} \Delta {\psi _t} - {\mathop{\rm s}\nolimits} \Delta {\varphi _t}{\mathop{\rm c}\nolimits} \Delta {\theta _t}}\\{ - {\mathop{\rm s}\nolimits} \Delta {\psi _t}} & {{\mathop{\rm s}\nolimits} \Delta {\varphi _t}{\mathop{\rm c}\nolimits} \Delta {\psi _t}} & {{\mathop{\rm c}\nolimits} \Delta {\varphi _t}{\mathop{\rm c}\nolimits} \Delta {\psi _t}}\end{array}} \right]$ ; $p_o^a$ is the position of the centre of the locator ball; $\Delta {\boldsymbol{\varGamma }}\left( {{t_k}} \right) = {\left[ {\begin{array}{c@{\quad}c@{\quad}c}{\Delta x\left( t \right)} {\Delta y\left( t \right)} & {\Delta z\left( t \right)}\end{array}} \right]^{\rm{T}}}$ .
Step (9): Evaluate if the fork-ear docking assembly is complete. If condition ${\rm{ }}t \geqslant T$ indicates completion, the process ends. Otherwise, under condition ${\rm{ }}t \lt T$ signaling that the assembly is not finished, continue measuring the coordinates of the fork-ear feature points and revert to Step (2).
5.0 Platform construction and experimental verification of the fork-ear docking assembly quality detection system
5.1 The platform construction of the fork-ear docking assembly quality detection system
The platform construction of the fork-ear docking assembly quality detection system includes a wing-fuselage docking experimental platform, a laser tracker, three industrial cameras, a built-in POE Gigabit industrial camera image acquisition multi-network port network card and a computer that can be equipped with a built-in industrial camera image acquisition multi-network port network card, as shown in Fig. 8.
Taking a certain type of aircraft as an example, the range for the deviation of the fork-ear mating position is set to be $ \pm 0.05$ mm, and the attitude angle deviation is set to be $ \pm 0.1$ °. In the process of wing-fuselage assembly, ${{\boldsymbol{\varTheta }}_{win}}\left( t \right)$ is set to $diag\left\{ {{{0.06}^2}{\rm{; }}\;{{0.06}^2}{\rm{; }}\;{{0.06}^2}} \right\}{\rm{m}}{{\rm{m}}^2}$ . Since all camera models in the multi-camera system are the same, the detection of ${{\boldsymbol{\varTheta }}_c}\left( t \right)$ is set to, $diag\left\{ {{{0.04}^2}{\rm{; }}\;{{0.04}^2}{\rm{; }}\;{{0.04}^2}} \right\}{\rm{m}}{{\rm{m}}^2}$ while the laser tracker detects ${{\boldsymbol{\varTheta }}_{las}}\left( t \right)$ as $diag\left\{ {{{0.02}^2}{\rm{; }}\;{{0.02}^2}{\rm{; }}\;{{0.02}^2}} \right\}{\rm{m}}{{\rm{m}}^2}$ .
The EDLines line detection effect is shown in Fig. 9.
The EDCircles circle detection effect is shown in Fig. 10.
5.2 Analysis of docking assembly quality detection effect of fork-ear based on multi-camera stereo vision
The experiment was conducted using the 5.1 system platform. In terms of performance, the average processing time for multi-camera stereo vision detection was 828 ms, with a peak value of 876 ms, satisfying the criteria for real-time detection of wing-fuselage docking assembly. In the case of AWFA correction, for the LAFSA-PF sampling, the particles were set to 5, 10 and 15 times the number of artificial fish in the local neighbourhood, resulting in sample sizes of 30, 60 and 90 respectively. The minimum visual for LAFSA-PF was set to Visual min = 0.1 mm, the minimum step was Step min = 0.001 mm, and the crowding factor was established at δ = 0.3. When examining the impact of the number of particles on error correction outcomes, both the maximum iteration number m max and the maximum optimisation number try max were set at 50, as depicted in Fig. 11, Table 1.
Figure 12 and Table 2 show that, under the condition of consistent maximum number of iterations, the accuracy of error correction increases with the increase of the number of particles. After reaching 60, the accuracy basically no longer improves. However, as the number of particles increases, the running time will also increase. In order to improve the correction accuracy and ensure real-time performance, the number of particles is selected as 60, and experiments are continued to verify the influence of the number of iterations on the error correction accuracy. The iteration times are taken as 10, 20, 30, 40 and 50, respectively. In order to reduce the inconvenience caused by too many intersections of lines in the image, the absolute values of the fork-ear docking assembly deviations are compared.
Analysis shows that, with the number of particles set to 60, the accuracy of error correction increases as the number of iterations goes up. However, after 30 iterations, this accuracy plateaus and no significant improvements are observed. While increasing iterations can enhance pose correction accuracy, it also risks excessively prolonged running times. To balance correction accuracy and real-time performance, the maximum number of iterations is set to m max = 30 and the maximum number of optimisation times to try max = 30. The average time required for tracking estimation is 566 ms, and the peak value is 606 ms, satisfying the criteria for real-time detection of wing-fuselage docking assembly. Therefore, the filtering correction time interval is set to 1 s.
The wing pose-position adjustment time is set to 60 s. dual-camera and multi-camera are used to perform 30 wing-fuselage alignment experiments on the experimental platform of Fig. 7, and the deviation values of each spatial pose feature of the fork ear after the alignment are detected and recorded. By comparing the detection results of the dual-camera and the multi-camera detection fork ear pose-position without filtering, it is verified whether the detection effect of the multi-camera is improved.
Figure 13 shows that, under the condition of non-filtering, the direction deviation range of the two cameras detection fork-ear is −0.118 mm ∼ 0.141 mm, the multi-camera detection fork-ear is −0.073 mm ∼ 0.071 mm; the pose-angle deviation range of the two cameras detection fork-ear is −0.3046 °∼0.3845°, the multi-camera detection fork-ear is −0.2017 °∼0.2057 °. Therefore, the multi-camera has smaller direction deviation and higher pose-angle accuracy than the two cameras for fork-ear docking assembly.
Figure 14 shows that, under the condition of the inspection of multi-camera, the direction deviation range of the detection fork-ear alignment position without correction for AWFA and LAFSA-PF is −0.078 mm ∼ 0.065 mm, in the case of correction only for AWFA is −0.041 mm ∼ 0.041 mm, in the case where corrections are made only for LAFSA-PF is −0.047 mm ∼ 0.057 mm, and after comprehensive correction with AWFA and LAFSA-PF is -0.032 mm ∼ 0.037 mm. The range of deviation for the fork ear attitude angle without correction for AWFA and LAFSA-PF is from −0.1845° ∼ 0.1815°, in the case of correction only for AWFA is −0.1035° ∼ 0.1016°, in the case where corrections are made only for LAFSA-PF is −0.1099° ∼ 0.1208°, and after comprehensive correction with AWFA and LAFSA-PF is −0.0915° ∼ 0.0963°. Therefore, the direction deviation is effectively reduced after AWFA and LAFSA-PF correction, and the detection accuracy of pose-angle is effectively improved, additionally, AWFA provides better correction results than LAFSA-PF.
6.0 Conclusions
-
(1) The spatial pose-position determination model of the fork-ear docking assembly based on multi-camera stereo vision is proposed. As a result, the direction deviation range of the fork-ear docking assembly is reduced from −0.118 mm ∼ 0.141 mm to −0.073 mm ∼ 0.071 mm and the pose-angle deviation range is reduced from −0.3046 °∼0.3845° to −0.2017 °∼0.2057 °.
-
(2) The wing pose-position fine-tuning error correction model based on AWFA and LAFSA-PF is constructed. The accuracy of direction deviation detection is further improved to -0.032 mm ∼ 0.037 mm, and the accuracy of pose-angle deviation detection is further improved to −0.0915 °∼0.0963 °.
-
(3) The method addresses the issues of incomplete identification of fork-ear pose-position in monocular vision and dual-camera, as well as the inaccuracy in detecting deviation in the intersection holes position of the fork-ear. Furthermore, this method provides certain reference value for multi-fork-ear style wing-fuselage docking.
Acknowledgements
This study was co-supported by National Natural Science Foundation of China [52465060], Aeronautical Science Foundation of China [2024M050056002] and Key Research and Development Plan Project of Jiangxi Province [20243BBG71004].