A Kinematic Calibration Method for Serial Manipulators Based on Improved Vulture Search Algorithm
Through the improved vulture search algorithm, combined with the fitness function of end position and posture error, global optimization is carried out to obtain the optimal estimation of kinematic parameter error of the robot arm, which solves the problem of difficult to effectively consider posture errors and high computing resource consumption in the prior art, and achieves more efficient kinematic calibration.
Patent Information
- Application Number
- CN202310255059.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-16
- Publication Date
- 2025-06-17
- Estimated Expiration
- 2043-03-16
AI Technical Summary
When the existing kinematic calibration methods of robotic arm improve the accuracy of the absolute position of the end, it is difficult to effectively consider posture errors, and the calculation resources of the optimization algorithm are consumed more and have low efficiency.
Using the improved vulture search algorithm, the global optimization is carried out by constructing the fitness function, combining the end position and posture errors, so as to obtain the optimal estimate of kinematic parameter errors. The improved vulture search algorithm adjusts population migration distance parameters during the iteration process to enhance global search capabilities and local search capabilities.
The absolute position accuracy and attitude accuracy at the end of the robot arm are improved, and the algorithm's global optimization ability, convergence performance and time efficiency are improved.
Smart Images

Figure CN116277000B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of robots and intelligent manufacturing, and particularly relates to a kinematic calibration method for a serial manipulator based on an improved vulture search algorithm. Background Art
[0002] With the popularization of intelligent factories, robots are expected to work in unstructured environments. Therefore, the control mode of robots has changed from teaching control to offline programming control, which poses new requirements for the absolute pose accuracy of the robot's end effector. By optimizing the parameters of the kinematic model, robot kinematic calibration can effectively improve the absolute pose accuracy of the robot's end effector. The kinematic parameter optimization method refers to a method that, based on the description of the kinematic model, uses the relationship between the model parameter error and the end effector pose error to optimize the optimal estimation of the kinematic model parameter error by measuring the end effector pose error.
[0003] In the kinematic calibration problem, different kinematic models can be selected, such as those based on the D-H model, the POE model, and the zero-reference model. In these kinematic models, the mapping relationship from the model parameter error to the end effector pose error is non-linear, so various optimization algorithms are often used for inverse solution. These include heuristic search algorithms such as genetic algorithms, particle swarm algorithms, and Nelder–Mead algorithms; and linear optimization algorithms such as the least squares method and the Levenberg-Marquardt (L-M) algorithm. The common feature of the above optimization algorithms is that they require a nominal value that is not much different from the kinematic parameters as the initial point for optimization. The difference lies in whether the forward kinematics of the robot is linearized, that is, whether the Jacobian matrix of the robot's forward kinematics is used.
[0004] According to whether the manipulator kinematic model is linearized, kinematic calibration algorithms are mainly divided into two schemes: model linearization and non-linear models. The advantages of the model linearization method are as follows: 1) The forward kinematic mapping relationship is linearized, and the calculation is simplified; 2) According to the Jacobian matrix obtained by linearization, line search optimization methods with relatively small computational amounts such as the least squares method and the Levenberg-Marquardt method can be used to obtain the kinematic parameter error estimation value; 3) The forward kinematic Jacobian matrix obtained by linearization can select a better manipulator configuration for optimization. Its disadvantages are as follows: 1) The end position can be easily linearized, but since the attitude is not easily linearized, such research only takes the minimization of the end position error as the optimization goal and cannot consider its attitude; 2) Because the linearization operation ignores the non-linear part in the forward kinematics, higher requirements are imposed on the initial value of the optimization solution.
[0005] The method based on the non - linear model has the following disadvantages: 1) The model is highly non - linear and is often combined with heuristic search algorithms, requiring more robot configurations to participate in the search and optimization; 2) The search results are greatly affected by algorithm parameters and the way of algorithm initialization. 3) The search algorithm consumes more computing resources. Some relevant literature uses CUDA parallel computing to speed up the operation efficiency. The advantages of this type of method are: 1) It avoids linearization operations, and the model is closer to the actual manipulator kinematics; 2) The selection of the objective function has a high degree of flexibility, which is simple and direct. This type of method can add an attitude error term to the objective function; it can also, according to the characteristics of different end - effector pose measurement sensors of the manipulator, use the minimum image feature point error and the minimum calibration plate position estimation error. With the continuous increase of computing resources, the method of non - linear model combined with search and optimization has gradually become a better choice due to the high flexibility of its optimization objectives. Summary of the Invention
[0006] The purpose of the present invention is to provide a kinematic calibration method for a serial manipulator based on an improved vulture search algorithm in view of the deficiencies of the prior art. The present invention improves the absolute pose accuracy of the manipulator end - effector. The improved vulture search algorithm has stronger global optimization ability, better convergence performance, and higher time efficiency compared with other search and optimization algorithms that have been applied to the kinematic calibration problem.
[0007] The purpose of the present invention is achieved through the following technical solutions: A kinematic calibration method for a serial manipulator based on an improved vulture search algorithm, the method includes:
[0008] During operation, measure the actual six - degree - of - freedom position and attitude of the serial manipulator end - effector under a set of random configurations, and at the same time calculate the nominal six - degree - of - freedom position and attitude of the serial manipulator end - effector under the same set of manipulator configurations using nominal kinematic parameters;
[0009] Construct a fitness function based on the difference between the actual measured values and the calculated nominal values of the six - degree - of - freedom position and attitude of the serial manipulator end - effector, and transform the kinematic calibration problem into an optimization problem;
[0010] Use the improved vulture search algorithm to search and optimize the kinematic parameter errors, with the goal of minimizing the end - effector position and attitude errors, and obtain the optimal estimate of the kinematic parameter errors; in the vulture search algorithm, improve the fixed - size population migration distance parameter to a variable parameter that monotonically decreases in the form of a concave function with the increase of the iteration number, so as to increase the global search ability in the early stage of the algorithm and the local search ability in the later stage of the algorithm.
[0011] Furthermore, use the NDI 3D Investigator infrared position sensor to measure the six - degree - of - freedom position and attitude of the end - effector flange under a set of randomly selected manipulator configurations.
[0012] Furthermore, a fitness function is constructed based on the average position error and attitude error of the end-effector under a selected set of manipulator configurations; the position error is the Euclidean distance between the actual end-effector position and the nominal end-effector position; the attitude error is the Euclidean distance between the actual end-effector attitude and the nominal attitude represented by Euler angles.
[0013] Furthermore, for the attitude error, considering the angular periodicity, when measuring the gap δθ between angles θ1 and θ2, the following formula is adopted:
[0014]
[0015] Furthermore, all kinematic parameter errors form a one-dimensional parameter error vector Δx. In the high-dimensional space spanned by the Δx vector, the improved vulture search algorithm is used to measure the fitness value of each potential solution Δx with the constructed fitness function, and the optimization objective is to minimize the fitness function value, and the optimal estimate of Δx is iteratively searched.
[0016] Furthermore, the formula of the fitness function is as follows:
[0017]
[0018] where λ is the weight parameter of the end-effector attitude error in the fitness function, δP j and δQ j respectively represent the errors between the end-effector position and attitude obtained by forward kinematics solution after compensating the kinematic nominal parameters by Δx and the actual end-effector pose under the j-th, j = 1, 2, 3..., n configurations of the manipulator.
[0019] Furthermore, when using the improved vulture search algorithm to optimize Δx, the update of the vulture position includes three stages: determining the search area, spiral area search, and dive optimization; the new position Δx generated in each stage i,new needs to be updated through the local optimal position before it can be used as the current position Δx of the next stage i , and at the same time, the optimal position Δx best is updated for the global optimal position in each stage.
[0020] Furthermore, in the first stage of vulture position update, based on the optimal position Δx best generated in the previous iteration and the central position Δx mean of the population, the search area is determined, and the formula is as follows:
[0021] Δx i,new = Δx best + α × r(Δx mean - Δx i )
[0022] α = 1.5 + 0.5 × e-(t / MaxIt)3
[0023] Among them, r is a random number between 0 and 1, α is a population migration parameter that controls the position update distance, t is the current population iteration number, and MaxIt is the maximum population iteration number.
[0024] Furthermore, in the second stage of the vulture position update, the entire population performs a spiral search in the search area selected in the first stage. The formula is as follows:
[0025] Δx i,new = Δx i + y(i)×(Δx i - Δx i+1 ) + x(i)×(Δx i - Δx mean )
[0026]
[0027] xr(i) = r(i)×sin(θ(i)), yr(i) = r(i)×cos(θ(i))
[0028] θ(i) = a×π×rand, r(i) = θ(i) + R×rand
[0029]
[0030] Among them, rand is a random number between 0 and 1, θ(i) and r(i) are the polar coordinate positions of vulture i in the search space, and a and R are parameters that determine the number of turns of the spiral search path and the width of the search path.
[0031] Furthermore, after obtaining the new position in each stage of the vulture position update, determine whether to retain the original position or update it to the new position according to the following formula; then update the optimal position in the population;
[0032]
[0033] The beneficial effects of the present invention are as follows: considering both the position and attitude errors in the fitness function design, the absolute position accuracy and attitude accuracy of the end of the robotic arm are improved; the improved vulture search algorithm in the search optimization stage has stronger global optimization ability, better convergence performance, and higher time efficiency compared with other search optimization algorithms that have been applied to the kinematic calibration problem. BRIEF DESCRIPTION OF THE DRAWINGS
[0034] Figure 1 It is a schematic diagram of the overall input-output structure of the present invention;
[0035] Figure 2Flow chart of the condor algorithm of the present invention;
[0036] Figure 3 Schematic diagram of the kinematic model of the serial manipulator used for the test and evaluation of the present invention;
[0037] Figure 4 Schematic diagram of the method for the test and evaluation of the present invention;
[0038] Figure 5 Comparison of the fitness convergence processes between the present invention and other search and optimization algorithms in the simulation experiment;
[0039] Figure 6 Compensation effect of the present invention on the position and attitude accuracy of the end of the manipulator in the actual experiment. Detailed implementation manners
[0040] To make the above objects, features and advantages of the present invention more obvious and understandable, the following detailed description of the specific implementation manners of the present invention will be given in conjunction with the accompanying drawings.
[0041] In the following description, many specific details are set forth in order to fully understand the present invention. However, the present invention may also be implemented in other ways different from those described herein. Those skilled in the art can make similar extensions without departing from the connotation of the present invention. Therefore, the present invention is not limited by the specific embodiments disclosed below.
[0042] As Figure 1 shown, the kinematic calibration problem is essentially an optimization problem for estimating the kinematic parameter errors. Define x as the kinematic parameter vector of the manipulator, whose nominal value is x nomial , and the true value is x real , and each component represents different kinematic parameters. In the manipulator controller, due to the lack of sensing and measuring means for the end pose, the nominal parameters x nomial are often used to solve the forward kinematics to obtain the nominal end position P nomial and attitude Q nomial as the current end pose. However, due to the inevitable kinematic parameter errors Δx = x real - x nomial generated during the assembly, installation, and joint zeroing of the manipulator, the actual end position P real and attitude Q real of the manipulator are different from the nominal values obtained by the controller, resulting in the absolute end position deviation δP and attitude deviation δQ. When the manipulator is taught to run, as long as the repeatability accuracy is ensured, the absolute end pose deviation will not affect the taught trajectory; while in the offline programming of the manipulator upper computer, the absolute end pose deviation will directly cause the discrepancy between the desired end pose and the actual end pose. Kinematic calibration can well solve this problem.
[0043] Furthermore, in kinematic calibration, the key to applying the optimization algorithm lies in the design of the fitness function. Taking Figure 1 the average end-effector pose error of the n groups of manipulator configurations involved in the optimization in
[0044]
[0045] , the fitness function of each candidate Δx is defined as: j where λ is the weight parameter of the end-effector attitude error in the fitness function, and δP j and δQ nomial respectively represent the errors between the end-effector position and attitude obtained by forward kinematic solution after compensating the kinematic nominal parameter x nomial with Δx and the actual end-effector pose under the j-th (j = 1, 2, 3..., n) group of configurations of the manipulator. The optimization goal is to find an optimal estimate Δx of a set of kinematic parameter errors to minimize the average end-effector pose error under these n groups of manipulator configurations.
[0046] Furthermore, the calculation methods of the end-effector pose errors δP and δQ in Equation (1) are based on the forward kinematic model. For the manipulator to be calibrated, its MDH kinematic model is established. For a serial manipulator with n dof degrees of freedom, from the base coordinate system {0} of the manipulator to the end-effector flange coordinate system {n dof}, the homogeneous coordinate transformation matrices between the fixed coordinate systems {i} at each joint, (i = 1, 2,..., n dof ) are:
[0047]
[0048] where α i , a i , q i , d i respectively represent the link twist angle, link offset, joint angle, and link length. Then the homogeneous transformation relationship from the base coordinate system of the manipulator to the end-effector flange pose is:
[0049]
[0050] where P = [x y z] T , respectively representing the attitude rotation matrix and position coordinates of the end-effector flange of the manipulator in the base coordinate system. Further transform the attitude rotation matrix R into the Euler angle vector Q through Equation (4) to reduce the attitude description parameters. When gimbal lock occurs, set θ r to 0 to ensure the uniqueness of the Euler angle description of the same attitude.
[0051]
[0052] Equations (2), (3), and (4) constitute the forward kinematics mapping F of the robotic arm fkine : x → [P Q], where in the MDH kinematics model, x = [q i d i a i α i (i = 1, 2, 3,..., n dof ) is the vector of robotic arm kinematic parameters
[0053] Furthermore, based on the forward kinematics model, the pose error at the end of the robotic arm is further defined. Define the position deviation at the end of the robotic arm as δP = [δx δy δz] T = P real - P nomial ; the attitude error δQ = [δθ y δθ p δθ r T Due to the periodicity of angles, for example, the subtraction of -180° and 179° has a distance of 359°, but the actual difference between the two is 1°. Measuring their gap cannot directly use simple vector subtraction. Two Euler angle vectors Q nomial , Q real representing the nominal and actual values of the end attitude of the robotic arm, each component of the defined attitude difference δQ is obtained by Equation (5).
[0054]
[0055] where δθ is the gap between the two angles θ1 and θ2
[0056] So far, the design of the fitness function for solving the kinematic calibration problem by the optimization algorithm is completed. Next, the variable parameter vulture search algorithm can be directly used to solve the optimization problem of Δx
[0057] As Figure 2 shown, using the improved vulture search algorithm to solve the optimization problem of Δx mainly includes the initialization step of the vulture search algorithm and the update step of the vulture position. The algorithm is randomly initialized to generate the initial vulture position and obtain the initial optimal vulture position according to Equation (6) to complete the initialization. The update step of the vulture position adopts a phased manner, divided into three stages: 1. Determine the search area (such as Equations (7a), (7b)), 2. Spiral area search (such as Equation (8)), 3. Dive optimization (such as Equation (9)). The new position Δx generated in each stage i,new needs to be locally optimized by Equation (10) to be used as the current position Δx in the next stage i , and at the same time, the optimal position Δx best is globally optimized as shown in Equation (6) in each stage
[0058] Further, similar to other search and optimization algorithms, the Vulture Search Algorithm (VSA) first randomly initializes the position vectors of N vultures, Δx1(t), Δx2(t), …, Δx N (t), where t = 0 is the current iteration number, and calculates the fitness function value f of each position according to Equation (1). cost Then, according to Equation (6), the optimal position is selected as the current optimal position Δx best (0), completing the initialization.
[0059]
[0060] Further, in the first stage of position update, as shown in Equation (7a), the VSA determines the search area based on the optimal position Δx best generated in the previous iteration and the central position Δx mean of the population, transmitting the population position information generated in the previous iteration and realizing a heuristic search process. In Equation (7a), r is a random number between 0 and 1, Δx mean is the central position of all current vultures, and α ∈ [1.5, 2] is the population migration parameter that controls the position update distance, which is a fixed value in the original VSA.
[0061] When α is larger, the current population position is farther from the population position in the previous iteration, indicating stronger global search ability and weaker local search ability, and vice versa. Based on this principle, the present invention designs Equation (7b) to adjust the population migration speed, where t represents the current population iteration number and MaxIt represents the maximum iteration number of the population. This design makes the population migration distance in each iteration a monotonically decreasing concave function with the iteration number, such that the population migration distance is larger in the early stage of iteration, having stronger global search ability, while in the later stage of search, the population migration distance decreases rapidly, increasing the local search ability and obtaining better search results.
[0062] Δx i,new = Δx best + α × r(Δx mean - Δx i ) (7a)
[0063]
[0064] Furthermore, in the second stage of position update, as shown in Equation (8a), the entire population performs a spiral search within the search area selected in the first stage. This spiral search is significantly different from other optimization search algorithms, enhancing the global optimization ability. In Equation (8a), θ(i) and r(i) are the polar coordinate positions of vulture i in the search space, and the parameters a ∈ [5, 10] and R ∈ [0.5, 2] determine the number of turns of the spiral search path and the width of the search path, which are also fixed values in the original algorithm.
[0065] When the parameters a and R are large, the corresponding spiral search path has more turns and a larger width, the population positions are more dispersed, and the global search ability is strong; when the parameters a and R are small, the corresponding spiral search path has fewer turns and a narrower width, the population positions are more concentrated, and the local search ability is strong. Therefore, a variable parameter improvement method of Equation (8b) is designed to have a strong global search ability in the early stage of iteration and a strong local search ability in the later stage of iteration.
[0066]
[0067]
[0068] where rand is a random number between (0, 1).
[0069] Furthermore, in the third stage of position update, as shown in Equation (9), all vultures move towards the optimal position, which can be regarded as performing a local search near the optimal position obtained after the spiral search optimization, further locking in the optimal solution. By iteratively repeating the above process, the optimal solution can be searched out as the optimal estimate of the kinematic parameter error.
[0070]
[0071] After obtaining the new position in each stage, whether to retain the original position or update it to the new position is determined according to Equation (10) for the new position and the original position; then the optimal position in the population is updated according to Equation (6).
[0072]
[0073] Example 1 verifies and evaluates the method proposed in the present invention through simulation.
[0074] As Figure 3 , an MDH kinematic model is established on an elephant P3 robotic arm for verification and evaluation of the kinematic calibration method for serial robotic arms proposed in the present invention. Table 1 shows the nominal kinematic parameters of this type of robotic arm, and q i is the desired joint angle. As Figure 4As shown, the nominal pose of the end effector is obtained through forward kinematics by evaluating the nominal values of the kinematic parameters in Table 1 in the simulation. At the same time, the nominal kinematic parameters are added with a set error to simulate the actual values of the manipulator kinematic parameters, and the end effector pose is calculated through forward kinematics to simulate the pose obtained from actual measurement. Then the end effector pose error can be obtained for the fitness function of the optimization algorithm, and the estimated value of the set parameter error can be obtained through optimized search.
[0075] Table 1 Nominal Values of Kinematic Parameters
[0076] Connecting rod i <![CDATA[α i > <![CDATA[a i-1 (mm)]]> <![CDATA[q i > <![CDATA[d i (mm)]]> 1 0 0 <![CDATA[q1]]> 111 2 90° 0 <![CDATA[q2]]> 123.8 3 0 264 <![CDATA[q3]]> -111.8 4 0 236 <![CDATA[q4]]> 101.8 5 -90° 0 <![CDATA[q5]]> 101.8 6 90° 0 <![CDATA[q6]]> 90.238
[0077] Since the true kinematic model parameters of the actual manipulator are unknown, only the set kinematic parameter error and the estimated parameter error obtained through optimized solution are compared in the simulation. The experiment uses the same randomly initialized population, without considering the end effector pose measurement noise, and compares the optimization effects of the Bald Eagle Search (BES) algorithm, the improved Bald Eagle Search with Varying Parameters (BESVP) algorithm of the present invention, and the existing search optimization algorithms applied in kinematic calibration, such as the Quantum Particle Swarm Optimization (QPSO) algorithm and the Differential Evolution (DE) algorithm.
[0078] As Figure 5 , the convergence speed and the convergence value of the fitness function of the Bald Eagle Search with Varying Parameters (BESVP) algorithm are significantly better than those of the Quantum Particle Swarm Optimization (QPSO) algorithm and the Differential Evolution (DE) algorithm. BESVP only takes 30 iterations to complete convergence, while BES takes 60 generations, and QPSO and DE take 600 generations. Moreover, the fitness function values of the QPSO and DE algorithms show a step-by-step decrease, which is not conducive to determining whether convergence occurs. Since BESVP and BES actually perform 3-stage position updates in each iteration, the time taken for the same number of iterations is about 3 times that of the other two algorithms. However, since the BESVP algorithm can converge earlier, the operation efficiency of the BESVP proposed in the present invention is higher.
[0079] Table 2 Comparison between the Estimated Values of the Optimized Kinematic Parameter Errors and the Set Values in the Simulation (Without Considering the End Effector Pose Measurement Noise) Table 2-1 Joint Angle Zero Bias Error
[0080] rad <![CDATA[Δq1]]> <![CDATA[Δq2]]> <![CDATA[Δq3]]> <![CDATA[Δq4]]> <![CDATA[Δq5]]> <![CDATA[Δq6]]> Set value <![CDATA[1.7453×10 -5 > <![CDATA[1.7453×10 -5 > <![CDATA[1.7453×10 -5 > <![CDATA[1.7453×10 -5 > <![CDATA[1.7453×10 -5 > <![CDATA[1.7453×10 -5 > BESVP optimization result <![CDATA[1.7453×10 -5 > <![CDATA[1.7453×10 -5 > <![CDATA[1.7453×10 -5 > <![CDATA[1.7453×10 -5 > <![CDATA[1.7453×10 -5 > <![CDATA[1.7453×10 -5 > QPSO optimization result <![CDATA[1.8165×10 -5 > <![CDATA[1.5607×10 -5 > <![CDATA[1.9274×10 -5 > <![CDATA[1.8030×10 -5 > <![CDATA[2.0972×10 -5 > <![CDATA[1.8241×10 -5 > DE optimization result <![CDATA[1.4060×10 -5 > <![CDATA[1.9219×10 -5 > <![CDATA[1.5657×10 -5 > <![CDATA[1.9748×10 -5 > <![CDATA[1.7266×10 -5 > <![CDATA[1.9928×10 -5 >
[0081] Table 2-2 Twist Angle Error
[0082]
[0083]
[0084] Table 2-3 Link Length Error
[0085] mm <![CDATA[Δd1]]> <![CDATA[Δd2]]> <![CDATA[Δd3]]> <![CDATA[Δd4]]> <![CDATA[Δd2+Δd3+Δd4]]> <![CDATA[Δd5]]> <![CDATA[Δd6]]> Set value 1.1100 1.2380 -1.1180 1.0180 1.1380 1.0180 2.1024 BESVP optimization result 1.1100 0.3326 0.4646 0.3408 1.1380 1.0180 2.1024 QPSO optimization result 1.1102 -8.9499 3.2419 6.8466 1.1386 1.0194 2.1022 DE optimization result 1.1108 1.8722 -5.3495 4.6151 1.1378 1.0178 2.1030
[0086] Table 2-4 Link Offset Error
[0087] mm <![CDATA[Δa1]]> <![CDATA[Δa2]]> <![CDATA[Δa3]]> <![CDATA[Δa4]]> <![CDATA[Δa5]]> <![CDATA[Δa6]]> Set value 0 0 2.6400 2.3600 0 0 BESVP optimization result <![CDATA[5.1810×10 -14 > <![CDATA[9.9894×10 -15 > 2.6400 2.3600 <![CDATA[1.6039×10 -13 > <![CDATA[-2.6276×10 -12 > QPSO optimization result <![CDATA[-2.5310×10 -4 > <![CDATA[2.9281×10 -4 > 2.6397 2.3601 <![CDATA[1.0035×10 -4 > <![CDATA[-7.7747×10 -4 > DE optimization result <![CDATA[-4.7445×10 -4 > <![CDATA[-1.1843×10 -4 > 2.6404 2.3610 <![CDATA[7.0559×10 -4 > <![CDATA[7.3587×10 -4 >
[0088] Table 2 compares the set values of the kinematic parameter errors in the simulation with the optimized values (i.e., the parameter error estimates). The results show that the kinematic parameter error estimates obtained by BESVP are closer to the set values than those of QPSO and DE, and the optimization effect is stronger. It should be noted that the links corresponding to Δd2, Δd3, and Δd4 are parallel in any configuration due to their mechanical structure characteristics, that is, when d2, d3, and d4 increase or decrease by the same length simultaneously, it will not affect the end pose. In this case, when using the least squares method and the L-M algorithm, the linearization matrix of the forward kinematic model will approach or fall into singularity. Therefore, some articles will adopt other kinematic models, or add the angle of rotation around the y-axis to the DH model as the fifth parameter. When using the search algorithm, although the situation where the matrix approaches or falls into singularity and cannot be solved can be avoided, the individual values of Δd2, Δd3, and Δd4 in the optimization results are not credible, and the sum of the three can affect the compensation effect of the final end pose. As shown in Table 2-3, the sum of the length parameter errors of the three parallel links obtained by BESVP is closer to the set value than those obtained by the other two algorithms.
[0089] Example 2, verify and evaluate the method proposed in the present invention in actual experiments.
[0090] For the measurement of the end pose, contact sensors were used in the early stage. Later, laser trackers and dynamic displacement measurement systems have been widely used in the kinematic calibration of robotic arms due to their high accuracy and large measurement range. The NDI 3D Investigator infrared position sensor used in the experiment can provide the measurement of the end six-degree-of-freedom pose, with a position accuracy of 0.4 mm, which can meet the requirements of the end pose measurement for robotic arm calibration. 100 groups of end poses were collected, and 30 groups were randomly selected for experiments according to Figure 4 the proposed scheme.
[0091] To illustrate the necessity of introducing the end attitude into the fitness function (as shown in Equation (1)), two groups of experiments were set up in the experiment: λ = 0 (without introducing attitude data) and λ = 0.02 (introducing attitude data and setting a reasonable proportion). The kinematic parameter error estimates optimized by the BESVP algorithm were used to compensate the corresponding parameters. The end position and attitude errors under each robotic arm configuration were measured by ||δP|| and ||δQ|| respectively, and the improvement of the end pose error is asFigure 6 as shown
[0092] Before compensation, due to the errors between the actual kinematic parameters and the nominal parameters, the average error of the end - effector positions of 100 configurations is 8.80 mm, and the average error of the attitudes is 6.58°. After compensation, when λ = 0, the average error of the end - effector positions is 1.45 mm, and the average error of the attitudes is 14.03°; when λ = 0.02, the average error of the end - effector positions is 1.42 mm, and the average error of the attitudes is 1.32°. Therefore, when the fitness function does not consider the end - effector attitude, substituting the obtained estimated value of the kinematic parameter error into the compensation will increase the end - effector attitude error, indicating that the obtained estimated value of the kinematic parameter error is more different from the true value; when the fitness function adds the end - effector attitude error term, the obtained estimated value of the kinematic parameter error can better compensate the end - effector attitude error, and the end - effector position error does not increase significantly, indicating that the obtained estimated value of the kinematic parameter error is closer to the true value than when λ = 0.
[0093] The above - mentioned is only the preferred embodiment of the present invention. Although the present invention has been disclosed above with preferred embodiments, it is not intended to limit the present invention. Any person skilled in the art can make many possible changes and modifications to the technical solution of the present invention, or modify it into an equivalent embodiment with equivalent changes, without departing from the scope of the technical solution of the present invention. Therefore, any simple modification, equivalent change and modification made to the above - mentioned embodiments according to the technical essence of the present invention without departing from the content of the technical solution of the present invention still fall within the scope of protection of the technical solution of the present invention.
Claims
1. A kinematic calibration method for a serial manipulator based on an improved vulture search algorithm, characterized in that, Including: Measuring the actual six - degree - of - freedom position and attitude of the end - effector of a serial manipulator under a set of random configurations, and simultaneously calculating the nominal six - degree - of - freedom position and attitude of the end - effector of the serial manipulator under the same set of manipulator configurations using nominal kinematic parameters; Constructing a fitness function based on the differences between the actual measured values and the calculated nominal values of the six - degree - of - freedom position and attitude of the end - effector of the serial manipulator, and transforming the kinematic calibration problem into an optimization problem; Using an improved vulture search algorithm to search for and optimize the kinematic parameter errors, with the goal of minimizing the end - effector position and attitude errors to obtain the optimal estimate of the kinematic parameter errors; in the vulture search algorithm, the population migration distance parameter of a fixed size is improved to a variable parameter that monotonically decreases in the form of a concave function with the increase of the iteration number, so as to increase the global search ability in the early stage of the algorithm and the local search ability in the later stage of the algorithm.
2. The kinematic calibration method for a serial manipulator based on an improved vulture search algorithm according to claim 1, characterized in that, Using an NDI 3DInvestigator infrared position sensor to measure the six - degree - of - freedom position and attitude of the end - flange of a set of randomly selected manipulator configurations.
3. The kinematic calibration method for a serial manipulator based on an improved vulture search algorithm according to claim 1, characterized in that, Constructing a fitness function based on the average position error and attitude error of the end - effector under a selected set of manipulator configurations; the position error is the Euclidean distance between the actual end - effector position and the nominal end - effector position; the attitude error is the Euclidean distance between the actual end - effector attitude and the nominal attitude expressed in Euler angles.
4. The kinematic calibration method for a serial manipulator based on an improved vulture search algorithm according to claim 3, characterized in that, For the attitude error, considering the angular periodicity, when measuring the difference δθ between the angles θ1 and θ2, the following formula is used:
5. The kinematic calibration method for a serial manipulator based on an improved vulture search algorithm according to claim 1, characterized in that, All kinematic parameter errors form a one - dimensional parameter error vector Δx. In the high - dimensional space spanned by the Δx vector, using the improved vulture search algorithm, the fitness value of each potential solution Δx is measured by the constructed fitness function, and with the goal of minimizing the fitness function value, the optimal estimate of Δx is iteratively searched.
6. The kinematic calibration method for a serial manipulator based on an improved vulture search algorithm according to claim 5, characterized in that, The formula of the fitness function is as follows: Among them, λ is the weight parameter of the terminal posture error in the fitness function, δP j and δQ j They represent the errors between the end position and attitude and the actual end position and attitude of the robot arm after the kinematic nominal parameters are compensated by Δx and the forward kinematics is solved in the jth, j=1,2,3...,nth configuration.
7. The kinematic calibration method for a serial manipulator based on an improved vulture search algorithm according to claim 6, characterized in that, Use the improved vulture search algorithm to optimize Δx. The update of the vulture's position includes three stages: determining the search area, spiral area search, and dive optimization; the new position Δx generated in each stage i,new needs to be updated through the local optimal position to be used as the current position Δx in the next stage i , and at the same time, the optimal position Δx best is updated for the global optimal position in each stage.
8. The kinematic calibration method for a serial manipulator based on an improved vulture search algorithm according to claim 7, characterized in that, The first stage of vulture position update is based on the optimal position Δx generated in the last iteration best and the central position of the population Δx mean to determine the search area, with the formula as follows: Δx i,new = Δx best + α × r(Δx mean - Δx i ) α=1.5+0.5×e -(t / MaxIt)3 where r is a random number between 0 and 1, α is the population migration parameter that controls the position update distance, t is the current population iteration number, and MaxIt is the maximum population iteration number.
9. The kinematic calibration method for a serial manipulator based on an improved vulture search algorithm according to claim 8, characterized in that, In the second stage of vulture position update, the entire population performs a spiral search in the search area selected in the first stage, and the formula is as follows: Δx i,new = Δx i + y(i) × (Δx i - Δx i+1 ) + x(i) × (Δx i - Δx mean ) xr(i)=r(i)×sin(θ(i)), yr(i)=r(i)×cos(θ(i)) θ(i)=a×π×rand, r(i)=θ(i)+R×rand where rand is a random number between 0 and 1, θ(i) and r(i) are the polar coordinate positions of vulture i in the search space, and a and R are parameters that determine the number of turns of the spiral search path and the width of the search path.
10. A kinematic calibration method for a serial manipulator based on an improved vulture search algorithm according to claim 9, characterized in that After obtaining the new position in each stage of vulture position update, determine whether to retain the original position or update it to the new position according to the following formula; then update the optimal position in the population;
Citation Information
Patent Citations
Robot kinematics calibration method based on vision measurement and distance error model
CN105773609A
Series robot kinematic parameter calibration method based on dimension-reduction multiple channels per carrier (MCPC) model
CN108656116A