A dynamic optimization method for robot scanning pose for detection accuracy

Through the Gaussian process regression model and multi-objective constraint optimization model, the robot scanning pose is optimized, and the problem of positioning error and overlapping areas in complex parts detection is solved, and the detection accuracy and efficiency are improved.

CN118404581BActive Publication Date: 2025-03-14UNIV OF SHANGHAI FOR SCI & TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410560155.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-05-08
Publication Date
2025-03-14
Estimated Expiration
2044-05-08

AI Technical Summary

Technical Problem

The existing robot scanning systems have positioning errors, the impact of hand-eye positioning on scanning accuracy in complex parts detection, and the similarity of point clouds in overlapping areas during multi-angle scanning planning, making scanning accuracy and efficiency difficult to ensure.

Method used

A dynamic optimization method for scanning poses of robots with detection accuracy is proposed. The scanning poses are estimated through Gaussian process regression model, and the scanning pose optimization model with multi-objective constraints is constructed. Considering the robot's pose error, point cloud overlap rate, maximum pose constraints, etc., the scanning poses are optimized to improve detection accuracy.

Benefits of technology

It realizes efficient and autonomous detection coverage path planning for complex components, improves product detection accuracy, reduces scanning errors, and improves scanning efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118404581B_ABST
    Figure CN118404581B_ABST
Patent Text Reader

Abstract

The present invention proposes a robot scanning posture optimization method for detection accuracy, including the steps of scanning random measurement error estimation, scanning posture optimization model construction, scanning posture optimization method based on multi-objective constraints, etc. The present invention can optimize the robot system scanning path in real time while ensuring detection accuracy based on information such as tolerance requirements of the parts to be tested and target positions, realize autonomous generation and dynamic optimization of detection postures of complex parts with high efficiency and high precision, and improve scanning efficiency and accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to a method for optimizing the scanning posture of a robot, and in particular to a method for optimizing the scanning posture of an optical scanner. Background Art

[0002] With the rapid development of 3D scanning technology, high-precision product morphology acquired based on visual sensors has been widely used in the fields of industrial parts inspection, product reverse development, and quality control. However, in the face of complex thin-plate parts of car bodies and large curved components of aircraft, a single visual sensor cannot flexibly and efficiently acquire the full morphology point cloud of the product. Robots, with their high flexibility and high automation, have become the main carrier of visual sensors, and the robot scanning system they form is widely used in industry.

[0003] The existing path planning of robot scanning systems is mainly divided into 1) scanning path planning based on slicing; 2) scanning path planning based on sampling. Among them, the scanning path planning method based on slicing mainly slices the scanned part in a fixed direction, and considers the sensor measurement requirement constraints to perform scanning path planning. For example, Son et al. comprehensively considered parameters such as viewing angle, depth of field, stripe length and occlusion, and proposed a software for automatically measuring free-form surfaces. Similarly, Lee et al. combined the scanner with a three-axis turntable and realized the scanning planning of parts with scanning direction and scanning time as constraints. In addition, Huo et al. classified convex surfaces with curvature as constraints, and further realized scanning planning of different areas with scanning time as constraints. Slicing-based scanning path planning is mainly used in continuous scanning of line laser 3D scanners, while surface structured light 3D scanners can complete the scanning planning of parts through multiple sets of discrete viewpoints, and the scanning efficiency based on sampling is higher. Wang et al. proposed a scanning path planning method with reconstruction quality and path smoothness as evaluation functions, and ensured the smoothness of path points through cubic spline curves. Glorieux et al. searched for the maximum coverage area through an iterative approach and further implemented scanning path planning for sheet metal parts based on a time-optimal greedy algorithm.

[0004] In addition, in order to improve the detection height of complex parts, many studies have taken scanning point cloud data processing into account in path planning, and improved the accuracy of stitching by increasing the overlap rate of multi-view point clouds. Lee et al. inferred the shape of the object from the partial information collected, and further determined the scanning posture based on the idea of ​​NBV, which improved the efficiency and accuracy of product reverse engineering. Phan et al. controlled the overall scanning accuracy by optimizing the overlap rate between two continuous scanning paths. The above studies have conducted a lot of research on the optimization of the sensor's own posture and improved the scanning accuracy. However, the following problems still exist in the existing robot scanning system:

[0005] 1) Existing robot scanning systems rarely consider the impact of robot positioning errors and hand-eye posture on scanning accuracy, which results in increased errors.

[0006] 2) Furthermore, since the positioning error of the robot in the task space and the scanning accuracy of the visual sensor in different postures are highly nonlinear, it is difficult to estimate the optimal scanning posture.

[0007] 3) When multi-angle scanning planning is used for complex parts, the similarity of point clouds in overlapping areas is an issue that cannot be ignored in improving the accuracy of point cloud stitching. Therefore, how to ensure scanning efficiency while ensuring scanning accuracy is another problem that needs to be solved. Summary of the invention

[0008] The purpose of the present invention is to provide a robot scanning posture optimization method taking scanning accuracy into consideration, so as to realize efficient and autonomous detection coverage path planning of complex parts and components, and at the same time improve the detection accuracy of products.

[0009] To achieve the above object, the present invention proposes a robot scanning posture dynamic optimization method for detection accuracy, comprising the following steps:

[0010] S101, taking the sensor posture, scanning height, and scanning incident angle as input quantities and the sensor random measurement error as output quantity, estimating the scanning random measurement error based on the Gaussian process regression model;

[0011] S102, based on the scanning random measurement error, measurement system posture error, scanning path length, and similarity estimation of scanning point clouds under adjacent postures determined in S101 as optimization targets, a scanning posture optimization model with multi-objective constraints is constructed by comprehensively considering robot posture error, point cloud overlap rate, maximum posture constraint, robot singularity constraint, and visibility constraint;

[0012] S103, establishing a feasible scanning domain model based on measurement specifications and measurement uncertainty to narrow the algorithm search space;

[0013] S104, determine the initial scanning direction v 0 , divide the part into regions based on the width of the optimal scanning field of view to determine the initial scanning point V start ;

[0014] S105, according to the given scanning step length ε 0 And the scanning direction determines the next reference scanning point V candi , with the scanning point as the center and r as the radius, determine other candidate scanning points V in the feasible region can_set ;

[0015] S106, V start As the starting point, V can_setThe candidate point in the middle is the end point, and V is determined based on the model established in S102 can_set Check whether the scanned points inside satisfy the constraints and calculate their evaluation functions;

[0016] S107. Sort the evaluation results in S106, and select the scanned point with the smallest evaluation function value as the next scanning pose. If all the scanned points in S106 do not meet the requirements, modify the scanning step size ε 0 = wε 0 , (0 < w < 1) and go back to S105 to re-determine the scanned points;

[0017] S108. Repeat the above steps S105 - S107 until the scanning coverage rate reaches ξ to end the search.

[0018] Furthermore, in S101, the vector X composed of the robot joint information, the included angle between the measurement point and the sensor, and the corresponding measurement point height collected by the calibrated robot scanning system is used as the input matrix of the model, and the scanning error value is used as the corresponding error value Y for each measurement point. The error includes the sensor measurement error and the residual after robot calibration;

[0019] The Gaussian process regression model is as follows: Assume that the training set samples follow a Gaussian process distribution, that is: G(X) ~ GP(μ(X), κ(X, X')), where μ(X) = E(G(X)), κ(X, X') = E[(G(X) - μ(X))(G(X') - μ(X'))].

[0020] When solving the mean and covariance, the Gaussian process regression model needs to determine the estimated values through hyperparameters, and these hyperparameters are solved through the exponential kernel function, and its form is as follows: where σ f , σ l are hyperparameters that control the amplitude and length scale.

[0021] Assume that there is the same Gaussian distribution between the training set and the new data set, then the predicted value Y' is calculated through the following conditional distribution:

[0022]

[0023] Furthermore, in S102, the constructed multi-objective optimization function is as follows:

[0024]

[0025] In the formula, n represents the number of scanning poses; m j represents the number of robot scanning points in the j-th pose; w 1 , w 2 , w 3 represents the weight coefficient; Δ b p(θjl (t)) represents the robot posture error; τ j,j+1 represents the robot motion time between the jth and j+1th scanning positions; g 0 (θ j ) represents the upper and lower limit constraint function of the robot joint; θ i,min ,θ i,max represents the minimum and maximum limits of the i-th joint; J(θ j ) represents the Jacobian matrix under the j-th posture; det() represents the determinant value of the matrix; w represents the threshold value, when det() is less than this value, the robot is in a singular position; Indicates the vector direction of the lth scanning point in the jth position; represents the vector direction of the robot in the jth position; f o () represents the area covered by the robot scanning; Γ represents the obstacle space composed of the static environment such as the measured parts and fixtures; d min () represents the minimum distance between the robot and the obstacle space; P represents the area to be detected; ε 1 , ε 2 , ε 3 , ε 4 Indicates the threshold value; Indicates calculating the overlapping area between two frames.

[0026] Further, step S103 includes the following steps: classifying the MPs within the measurement range, when the angle α0 between the MPs and the incident angle is less than the threshold ε1, the MPs are considered to be "visible", otherwise the MPs are considered to be "invisible";

[0027] The feasible scanning domain meets the requirements of scanning depth and scanning field of view, and also meets the maximum incident angle constraint.

[0028] Furthermore, the initial scanning point determination process in step S104 is to determine the {X min ,X max ,Y min ,Y max ,Z min ,Z max}, if the scanning direction is (1, 0, 0), the scanning initial point is (X min +d / 2,Y min ,H) where d is the optimal scanning width and H is the optimal scanning height.

[0029] Furthermore, in step S105, other candidate scanning points are searched for candidate points with r as radius, and a convex body is constructed with the searched candidate points and the feasible domain. If the constructed convex body is still a feasible domain convex body, the candidate point is within the feasible domain, otherwise the candidate point is not within the feasible domain.

[0030] Compared with the prior art, the advantages of the present invention are as follows: the present invention includes the steps of estimating random measurement errors of scanning, constructing a scanning posture optimization model, and a scanning posture optimization method based on multi-objective constraints, etc., performs error analysis on the robot scanning system, establishes a robot posture error and measurement uncertainty estimation model, and constructs a multi-objective optimization model based on this, and further optimizes the algorithm based on the proposed algorithm to achieve high-precision and efficient scanning posture optimization of complex parts. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] Figure 1 Flowchart of the robot scanning pose optimization method considering scanning accuracy.

[0032] Figure 2 Generate a schematic diagram of the scanning sensor measurement principle and the scanning feasible domain.

[0033] Figure 3 Schematic diagram of the scanning pose obtained based on the proposed method.

[0034] Figure 4 The error distribution map of the scanned part is obtained based on the proposed method. DETAILED DESCRIPTION

[0035] The technical solution adopted by the present invention will be further described below in conjunction with the schematic diagram.

[0036] like Figure 1 As shown, this embodiment relates to a robot scanning posture optimization method considering scanning accuracy, comprising the following steps:

[0037] S101, taking the sensor posture, scanning height, and scanning incident angle as input quantities and the sensor random measurement error as output quantity, the estimation of the scanning random measurement error is realized based on the Gaussian process regression model.

[0038] S102. Based on the random measurement error of the scan, the measurement system posture error, the scanning path length, and the similarity estimation of the scan point cloud under adjacent postures determined in S101 as optimization targets, a scanning posture optimization model under multi-objective constraints is constructed by comprehensively considering the robot posture error, point cloud overlap rate, maximum posture constraint, robot singularity constraint, visibility constraint, etc.

[0039] S103. Establish a feasible scanning domain model based on measurement specifications and measurement uncertainty to narrow the algorithm search space.

[0040] S104, determine the initial scanning direction v 0 , further, the part is divided into regions based on the optimal scanning field width to determine the initial scanning point V start .

[0041] S105. Determine the next reference scanning point V according to the given scanning step ε 0 and the scanning direction candi . Further, with this point as the center and r as the radius, determine other candidate scanning points V within the feasible region can_set .

[0042] S106. With V start as the starting point and the candidate points in V can_set as the ending points, determine whether the scanning points within V can_set satisfy the constraints and calculate their evaluation functions based on the model established in S102

[0043] S107. Sort the evaluation results in S106 and select the scanning point with the minimum evaluation function value as the next scanning pose. If the scanning points within S106 do not meet the requirements, modify the scanning step ε 0 = wε 0 , (0 < w < 1) and go back to S105 to re - determine the scanning points

[0044] S108. Repeat the above steps S105 - S107 until the scanning coverage rate reaches ξ to end the search

[0045] Specifically, in step S101, use the vector X composed of the robot joint information, the included angle between the measurement points and the sensors, and the corresponding measured point heights collected by the calibrated robot scanning system as the input matrix of the model, and use the scanning error value as the corresponding error value Y for each measured point. This error includes not only the sensor measurement error but also the residual after robot calibration, thus ensuring the overall error estimation accuracy. The specific Gaussian process regression process is as follows

[0046] 1) Assume that the training set samples follow a Gaussian process distribution, that is: G(X) ∼ GP(μ(X), κ(X, X')), where μ(X) = E(G(X)), κ(X, X') = E[(G(X) - μ(X))(G(X') - μ(X'))]

[0047] 2) When solving the mean and covariance, the Gaussian process regression model needs to determine the estimated values through hyperparameters. These hyperparameters are solved through the exponential kernel function, and its form is as

[0048] where σ f , σ l are hyperparameters that control the amplitude and length scale

[0049] 3) Assume that there is the same Gaussian distribution between the training set and the new data set, then the predicted value Y' is calculated through the following conditional distribution

[0050]

[0051] The multi-objective optimization function constructed in step S102 is as follows:

[0052] Where n represents the number of scanning positions; m j represents the number of scanning points of the robot in the jth position; w 1 ,w 2 ,w 3 Represents the weight coefficient; Δ b p(θ jl (t)) represents the robot posture error; τ j,j+1 represents the robot motion time between the jth and j+1th scanning positions; g 0 (θ j ) represents the upper and lower limit constraint function of the robot joint; θ i,min ,θ i,max represents the minimum and maximum limits of the i-th joint; J(θ j ) represents the Jacobian matrix under the j-th posture; det() represents the determinant value of the matrix; w represents the threshold value, when det() is less than this value, the robot is in a singular position; Indicates the vector direction of the lth scanning point in the jth position; represents the vector direction of the robot in the jth position; f o () represents the area covered by the robot scanning; Γ represents the obstacle space composed of the static environment such as the measured parts and fixtures; d min () represents the minimum distance between the robot and the obstacle space; P represents the area to be detected; ε 1 , ε 2 , ε 3 , ε 4 Indicates the threshold value; Indicates calculating the overlapping area between two frames.

[0053] In step S103, a feasible scanning domain model is established based on the measurement specification and measurement uncertainty. The specific steps are as follows: In order to ensure the validity of the collected point cloud, we propose a more stringent visibility model for line laser collection at different positions under three measurement points (MPs) of red, blue and green based on measurement uncertainty, such as Figure 2 (a). The orange part in the figure is the measurement range of the sensor, and only measurement points can be collected within this range. The green and blue MPs in the figure are both within the measurement range. We classify the MPs within the measurement range. When the angle α0 between the MPs and the incident angle is less than the threshold ε1, the MPs are considered "visible", otherwise the MPs are considered "invisible". Therefore, the blue MP in the figure is invisible even within the measurement range.

[0054] In addition, during the continuous scanning process, ensuring that the robot posture error does not exceed the threshold ε1 is also a condition to ensure that the sensor accuracy meets the requirements. The traditional scanning posture generation method is to calculate the normal vector of the voxelized part and extend the scanning position in the reverse direction of the voxel center for a certain distance. On this basis, we consider the measurement uncertainty in the viewpoint generation to improve the measurement accuracy. The schematic diagram of the feasible domain of the robot scanning position proposed in this paper is shown in the figure. Figure 2 (b) The feasible scanning domain must not only meet the requirements of scanning depth and scanning field of view, but also meet the maximum incident angle constraint. Figure 2 The light blue non-convex body in (b) is the feasible scanning area.

[0055] The initial scanning point determination process in S104 is to determine the {X min ,X max ,Y min ,Y max ,Z min ,Z max}, if the scanning direction is (1, 0, 0) the initial scanning point is (X min +d / 2,Y min ,H) where d is the optimal scanning width and H is the optimal scanning height.

[0056] In S105, other candidate scanning points can be searched for by taking r as the radius, and a convex body is constructed with the searched candidate points and the feasible domain. If the constructed convex body is still a feasible domain convex body, the candidate point is within the feasible domain, otherwise the candidate point is not within the feasible domain.

[0057] The evaluation function described in S106 is shown as F(Θ,τ) in S102, and the optimal scanning posture is further selected based on the steps described in S107.

[0058] To verify the effectiveness of this method, a standard part is optimized. Figure 3 As shown, Figure 4 The error map of the part is obtained by scanning based on the optimized viewpoint.

[0059] Figure 4 The maximum noise is 1.5mm, the overall average scanning error is 0.3674mm, and the mean square error of the scanning error is 0.1036mm, which can effectively improve the scanning accuracy.

[0060] Aiming at the problem of high-precision scanning posture optimization of complex parts, the present invention proposes a scanning posture optimization method based on multi-objective constraints to improve the overall detection accuracy and scanning efficiency.

[0061] The above is only a preferred embodiment of the present invention and does not limit the present invention in any way. Any technician in the relevant technical field, without departing from the scope of the technical solution of the present invention, makes any form of equivalent replacement or modification to the technical solution and technical content disclosed in the present invention, which does not depart from the content of the technical solution of the present invention and still falls within the protection scope of the present invention.

Claims

1. A robot scanning posture dynamic optimization method for detection accuracy, characterized in that: It includes the following steps: S101. Taking the sensor pose, scanning height, and scanning incident angle as input quantities, and the sensor random measurement error as the output quantity, estimate the scanning random measurement error based on the Gaussian process regression model; S102. Taking the scanning random measurement error, measurement system pose error, scanning path length, and similarity of scanned point clouds under adjacent poses determined in S101 as optimization objectives, and comprehensively considering the robot pose error, point cloud overlap rate, maximum pose constraint, robot singularity constraint, and visibility constraint, construct a scanning pose optimization model with multi-objective constraints; S103. Establish a feasible scanning domain model based on the measurement specification and measurement uncertainty to narrow the algorithm search space; S104, determine the initial scanning direction v0, divide the part into regions based on the width of the optimal scanning field of view, and determine the initial scanning point V start ; S105, determine the next reference scanning point V according to the given scanning step length ε0 and scanning direction candi , with the scanning point as the center and r as the radius, determine other candidate scanning points V in the feasible region can_set ; S106, V start As the starting point, V can_set The candidate point in the middle is the end point, and V is determined based on the model established in S102. can_set Whether the inner scanning point meets the constraints and calculates its evaluation function; S107. Sort the evaluation results in S106, and select the scanned point with the smallest evaluation function value as the next scanning pose. If all the scanned points in S106 do not meet the requirements, modify the scanning step size ε0 = wε0, (0 < w < 1) and go back to S105 to re-determine the scanned points; S108. Repeat the above steps S105 - S107 until the scanning coverage rate reaches ξ to end the search.

2. The method for dynamic optimization of robot scanning posture for detection accuracy according to claim 1, characterized in that: In S101, the vector X composed of the robot joint information, the angle between the measurement point and the sensor, and the corresponding measurement point height collected by the calibrated robot scanning system is used as the input matrix of the model, and the scanning error value is used as the corresponding error value Y of each measurement point. The error includes the sensor measurement error and the residual after robot calibration; The Gaussian process regression model is as follows: Assume that the training set samples follow a Gaussian process distribution, that is: G(X) ∼ GP(μ(X), κ(X, X')), where, μ(X) = E(G(X)), κ(X, X') = E[(G(X) - μ(X))(G(X') - μ(X'))]; When solving the mean and covariance, the Gaussian process regression model needs to determine the estimated values ​​through hyperparameters. These hyperparameters are solved by exponential kernel functions, which are as follows: where σ f ,σ l are hyperparameters that control the amplitude and length scale; Assume that there is the same Gaussian distribution between the training set and the new data set, then the predicted value Y' is calculated through the following conditional distribution:

3. The robot scanning posture dynamic optimization method for detection accuracy according to claim 1 is characterized in that: In S102, the constructed multi-objective optimization function is as follows: Where n represents the number of scanned positions; m j represents the number of robot scanning points in the jth position; w1, w2, w3 represent weight coefficients; Δ b p(θ jl (t)) represents the robot posture error; τ j,j+1 represents the robot motion time between the jth and j+1th scanning positions; g0(θ j ) represents the upper and lower limit constraint function of the robot joint; θ i,min ,θ i,max represents the minimum and maximum limits of the i-th joint; J(θ j ) represents the Jacobian matrix at the jth position; det() represents the determinant of the matrix; w represents the threshold value, when det() is less than this value, the robot is in a singular position; Indicates the vector direction of the lth scanning point in the jth position; represents the vector direction of the robot in the jth position; f o () represents the area covered by the robot scanning; Γ represents the obstacle space composed of the static environment such as the measured parts and fixtures; d min () indicates the minimum distance between the robot and the obstacle space; P indicates the area to be detected; ε1, ε2, ε3, ε4 indicate thresholds; Indicates calculating the overlapping area between two frames.

4. The method for dynamic optimization of robot scanning posture for detection accuracy according to claim 1, characterized in that: Step S103 includes the following steps: Classify the MPs within the measurement range. When the angle α0 between the MPs and the incident angle is less than the threshold ε1, the MPs are considered "visible", otherwise the MPs are considered "invisible"; The feasible scanning domain meets the requirements of scanning depth and scanning field of view, and also meets the maximum incident angle constraint.

5. The robot scanning posture dynamic optimization method for detection accuracy according to claim 1 is characterized in that: The initial scanning point determination process in step S104 is to determine the {X min ,X max ,Y min ,Y max ,Z min ,Z max }, if the scanning direction is (1, 0, 0), the scanning initial point is (X min +d / 2,Y min ,H) where d is the optimal scanning width and H is the optimal scanning height.

6. The robot scanning posture dynamic optimization method for detection accuracy according to claim 1 is characterized in that: In step S105, other candidate scanning points are searched for candidate points with a radius of r, and a convex body is constructed with the searched candidate points and the feasible domain. If the constructed convex body is still the convex body of the feasible domain, the candidate points are within the feasible domain, otherwise the candidate points are not within the feasible domain.

Citation Information

Patent Citations

  • Curved surface scanning trajectory generation and optimization method based on measurement accuracy

    CN110017790A

  • Optical viewpoint optimization and coverage path planning method for free-form surface detection for detection feature scanning uncertainty

    CN112734619A