Robot spraying trajectory optimization method based on septad non-uniform B-spline curve
Through the spray trajectory optimization method combined with seven-time non-uniform B-spline curves and whale optimization algorithm, the problem of insufficient smoothness in robot spray trajectory planning is solved, and efficient and high-precision spraying of gas turbine blades is achieved.
Patent Information
- Application Number
- CN202411425143.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-12
- Publication Date
- 2025-08-12
- Estimated Expiration
- 2044-10-12
AI Technical Summary
In the prior art, the trajectory planning of robot spraying gas turbine blades has insufficient trajectory smoothness, resulting in large impact vibration during the spraying process, affecting the quality of the spraying, and traditional methods are difficult to meet the needs of personalized and small batch customization.
The spray trajectory optimization method based on seven-time non-uniform B-spline curves is adopted, combined with the whale optimization algorithm, and the spray trajectory is optimized to improve smoothness and accuracy through data acquisition, multi-objective optimization modeling and trajectory interpolation.
It realizes the high smoothness and efficiency of the robot spray trajectory, reduces the energy consumption and impact vibration of the robot arm, improves the quality and accuracy of the spray, and meets the needs of personalized and small batch customization.
Smart Images

Figure CN118990514B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of robot spraying optimization, and in particular relates to a robot spraying trajectory optimization method based on a septad non-uniform B-spline curve. Background Art
[0002] As a high-efficiency heat-to-power conversion power generation equipment, the surface spraying quality of the gas turbine blades, its core component, directly affects the gas compression ratio and operating efficiency of the gas turbine, and thus significantly affects the output power of the gas turbine. Therefore, the research on the spraying process of gas turbine blades is of great significance to the performance of gas turbines. By coating the surface of gas turbine blades with different paints, the high-temperature resistance, oxidation resistance and corrosion resistance of the blades can be significantly optimized, and the service life and conversion efficiency can be significantly improved. However, the traditional manual spraying mode of gas turbine blade spraying has many problems such as long processing time, inability to track product information, and unstable quality. In addition, the working environment at the manual spraying operation site is relatively harsh, and the commonly used spray paints contain harmful ingredients such as chromium trioxide (VI), which can easily pose a risk to the occupational health of operators.
[0003] Therefore, robotic spraying has emerged. One of the key areas of robotic spraying is spray trajectory planning. Existing robotic spraying methods for complex gas turbine blade surfaces typically use cubic or quintic polynomials, or a combination of cubic and quintic polynomials, to plan their trajectory. However, these interpolation methods lack trajectory smoothness and the ability to approximate complex shapes. Due to the non-contact nature of spray robots, current trajectory planning and optimization approaches focus primarily on time and energy optimization, neglecting impact optimization during the spraying process. However, during the actual spraying process, when the robot performs multiple uniform-speed spraying passes, changes in the robot's spatial position due to steering and switching spray paths can cause significant impact vibration and motion jumps on the robot itself. This can easily cause changes in the robot's stiffness and accuracy, impacting the film quality. Third, the traditional multi-objective optimization analysis and solution process for target trajectories is complex and difficult to improve, making it unsuitable for personalized and small-batch customized spraying of gas turbine blades.
[0004] Therefore, how to optimize the existing trajectory planning process of the robot spraying of gas turbine blades, improve the trajectory smoothness of the robot spraying operation, and ensure the high efficiency and high precision of the robot spraying operation of gas turbine blades is a technical problem that needs to be solved urgently. Summary of the Invention
[0005] The purpose of the present invention is to provide a robot spraying trajectory optimization method based on a seven-order non-uniform B-spline curve, which is used to optimize the existing robot spraying trajectory planning process of gas turbine blades, improve the trajectory smoothness of the robot spraying operation, and ensure the high efficiency and high precision of the robot spraying operation of gas turbine blades.
[0006] In order to solve the above technical problems, the technical solutions adopted by the present invention are as follows:
[0007] The robot spraying trajectory optimization method based on the septenary non-uniform B-spline curve includes the following steps:
[0008] S1: The data acquisition module is used to obtain the surface data of the object to be sprayed and construct a three-dimensional model of the object to be sprayed. The over_distance function is used to calculate the film thickness distribution model under the fitting parameters to obtain the film thickness distribution map under the corresponding process, and the optimal overlap distance value is output according to the standard deviation value.
[0009] S2: Specify the values of each key interpolation point according to the optimal overlap distance value, obtain the interpolation point pose information within the range of the surface to be sprayed in the coordinate table passed into the generateQlist2 function and the transition point coordinate values specified in the function, and output the pose time series array of the key interpolation points;
[0010] S3: Perform multi-objective optimization modeling, and calculate the time interval group and fitness value corresponding to the optimal whale individual position based on the whale optimization algorithm, and transmit them to the trajectory planning module;
[0011] S4: performing spray trajectory interpolation based on the seventh-order non-uniform B-spline curve, outputting the interpolated spray trajectory, and transmitting it to the robot, and the robot sprays the surface to be sprayed of the spray object based on the interpolated spray trajectory.
[0012] Preferably, the specific process in step S3 is as follows:
[0013] S3 1: Perform multi-objective optimization modeling, set the number of whale populations, the upper and lower limits of the optimization search, and initialize the position of the whale population;
[0014] S32: Randomly initialize the positions of all whale individuals, each position represents a time interval group, and iteratively update the positions of whale individuals;
[0015] S33: Substitute the time group data into the objFun2 function, calculate the fitness value of the individual whale for the spray optimization function, and determine whether the number of iterations reaches the preset value. If not, update the individual position of the whale population and recalculate the fitness value of the whale population. If so, execute step S34:
[0016] S34: Output the time interval group and fitness value corresponding to the optimal whale individual position and transmit them to the trajectory planning module.
[0017] Preferably, the process of performing multi-objective optimization modeling in step S31 is as follows:
[0018] S311: Create an expression for multi-objective optimization, specifically:
[0019] F(x)=[min f1(x), min f2(x), min f3(x),…, min f n (x)];
[0020] stg i (x)...0, i=1,...,p;h j (x) = 0, j = 1, ..., q;
[0021] Among them, x represents the decision variable, which is equal to x1, x2, x3, ..., x n Any value f in the decision space composed of decision variables i (x) represents the optimization sub-goal, g i (x), f i (x), h j (x) represents the constraint equation that needs to be satisfied during optimization;
[0022] S312: Based on the weights of the three sub-optimization objectives of time value, energy consumption, and pulsation impact value and the overall optimization objective expression, the optimal solution of the robot arm spray trajectory based on time value, energy consumption, and pulsation impact value is obtained; the expressions of the three optimization sub-objectives of time value, energy consumption, and pulsation impact value and the overall optimization objective are as follows:
[0023]
[0024]
[0025]
[0026] E=S1+m1*S2+m2*S3;
[0027] Among them, S1 represents the total time of the robot arm running on the trajectory, t i , t i+1 They represent the time node values of adjacent trajectory points, S2 is used to measure the energy consumption of the robot arm during trajectory operation, and a i represents the angular acceleration of the i-th joint, S3 is used to measure the pulsating impact value of the robot arm during trajectory operation, j irepresents the angular acceleration of the i-th joint, E is the optimization target value, m1 and m2 are the weight coefficients corresponding to the corresponding sub-optimization targets, and the proportion of each optimization target can be adjusted by adjusting the weight coefficient;
[0028] S313: Optimize the trajectory of the robot arm based on the operating constraints of the robot arm in terms of angle, speed, acceleration, and jerk. The specific expression is:
[0029] |q(t)|≤q max ;|v(t)|≤v max |;|a(t)|≤a max ;|j(t)|≤j max ;
[0030] Where q represents the joint angle value, v represents the joint angular velocity value, a represents the joint angular acceleration value, and j represents the joint angular jerk value.
[0031] Preferably, the expression for initializing the position of the whale population in step S31 is:
[0032] x i (0)=[x i1 (0), x i2 (0),…,x iD (0)], i=1,…N;
[0033] Among them, x i (0) represents the position of i whale individuals, D represents the dimension of the search space,
[0034] In step S32, in the iterative update of the whale individual position, other search individuals except the best search agent update their own positions according to the position of the best individual. The position iterative update expression is:
[0035]
[0036]
[0037] in, Represent the individual whale positions and the best whale individual positions, is the coefficient vector, t represents the number of iterations, and the optimal solution is refreshed when The value of will be updated;
[0038] The expression is:
[0039]
[0040]
[0041]
[0042] Among them, t max is the maximum number of iterations set, is a random vector between 0 and 1.
[0043] Preferably, the number of whale populations is set to 30, the upper limit of the optimization search is set to 1, the lower limit of the optimization search is set to 0.05, and the search space dimension is set to 20.
[0044] Preferably, in step S33, the time group data is substituted into the objFun2 function, and the specific process of calculating the fitness value of the individual whale for the spray optimization function is as follows:
[0045] S331: Pass the time interval group to the objFun2 function, and use the generateQlist2 function to obtain the complete interpolation point coordinates and time nodes;
[0046] S332: The interpolation point position time series array is passed to the getSpline7PVAJ2 function to calculate the spatial trajectory pose data after the seventh-order B-spline interpolation;
[0047] S333: passing the spatial trajectory pose data into the InverseSolution function to calculate joint dynamic characteristic parameter data at each moment, wherein the joint dynamic characteristic parameter data includes angle, velocity, acceleration, and jerk arrays;
[0048] S334: Pass the acceleration, jerk and corresponding time series array into the EnergyImpactvalue function to calculate the fitness value of the spray optimization function.
[0049] Preferably, the specific process of performing spraying trajectory interpolation based on the septad non-uniform B-spline curve in step S4 is as follows:
[0050] S41: The expression for defining the K-order B-spline curve is:
[0051]
[0052] Among them, B j,k (u) represents the k-th order B-spline basis function, P j It represents the th control point corresponding to the basis function, and the node vector is defined as:
[0053] U=[u0,u1,…,u k ,u k+1 ,…,u n ,u n+1 ,…,u n+k], U is a non-decreasing node sequence, and the basis function expression can be obtained according to the De Boer-Cox recursion formula, where 0 / 0=0;
[0054] S42: Obtaining the coefficient matrix of the B-spline curve and inversely calculating the control points corresponding to the target position points, so that the B-spline curve passes through the series of target position points;
[0055] S43: The actual angle position of the joint at each node of the B-spline curve is calculated by combining the accumulated chord length and the normalized time node vector.
[0056] The beneficial effects of the present invention include:
[0057] The present invention provides a robot spraying trajectory optimization method based on a seven-order non-uniform B-spline curve, which obtains the surface data of the object to be sprayed through a data acquisition module, calculates the film thickness distribution map under the corresponding process and outputs the optimal overlap distance value; specifies the value of each key interpolation point by the optimal overlap distance value, obtains the interpolation point posture information within the range of the surface to be sprayed and the transition point coordinate value specified in the function, and outputs the posture time series array of the key interpolation point; calculates the time interval group and fitness value corresponding to the optimal whale individual position based on the whale optimization algorithm, and transmits them to the trajectory planning module; performs spraying trajectory interpolation based on the seven-order non-uniform B-spline curve, and outputs the interpolated spraying trajectory, and the robot sprays the surface to be sprayed of the object to be sprayed based on the interpolated spraying trajectory.
[0058] First, the robot spraying trajectory is optimized based on the combination of the whale optimization algorithm and the seventh-order non-uniform B-spline curve. On the one hand, it can achieve a high degree of approximation of complex shapes and a high degree of smoothness of the spraying trajectory in the robot spraying process. On the other hand, it can also realize multi-objective hybrid trajectory optimization of time, energy and impact, significantly improving the spraying quality of the spray robot.
[0059] Secondly, the septad non-uniform B-spline curve is a commonly used path point fitting method in trajectory planning. The curve expression is defined through control points, node vectors, and basis functions. The node vectors determine the division of the curve parameter space, while the basis functions determine how the control points affect the local area of the curve. The node vectors of the non-uniform B-spline are not uniformly distributed, so different node vector densities can be set in different parts of the parameter space. This allows for more precise control of the curve shape by adjusting the arrangement of the node vectors to achieve better fitting expression results.
[0060] Finally, through the process of multi-objective optimization modeling, the weights of the time value, energy consumption and pulsation impact value and the total optimization target expression are combined to obtain a set of trade-off solutions with better comprehensive characteristics in the three aspects of the trajectory, which improves the operating efficiency of the robot arm on the spraying trajectory while reducing the energy consumption of the robot arm, ensuring the smooth operation of the robot arm and reducing the impact pulsation. BRIEF DESCRIPTION OF THE DRAWINGS
[0061] Figure 1 It is a flow chart of the robot spraying trajectory optimization method based on the seventh-order non-uniform B-spline curve of the present invention.
[0062] Figure 2 It is a flow chart showing the spraying path diagram on both sides of the gas turbine blade of the present invention.
[0063] Figure 3 Schematic diagram of the spraying trajectory of the present invention.
[0064] Figure 4 It is the trajectory dynamic characteristic curve of the cubic polynomial trajectory interpolation method in the prior art.
[0065] Figure 5 This is the trajectory dynamic characteristic curve of the quintic polynomial trajectory interpolation method in the prior art.
[0066] Figure 6 It is a trajectory dynamic characteristic curve of the seven-order non-uniform B-spline curve interpolation method in the prior art.
[0067] Figure 7 Schematic diagram of the fitness comparison of PSO, WOA, and MFO algorithms.
[0068] Figure 8 Schematic diagram of the spray gun trajectory curve corresponding to the time interval array optimized by the WOA algorithm.
[0069] Figure 9 Top view of the spray gun trajectory curve corresponding to the time interval array optimized by the WOA algorithm.
[0070] Figure 10 This is an image of the movement speed of the spray gun at the end of the robot arm. DETAILED DESCRIPTION
[0071] The following is combined with Figures 1 to 3 The present invention is described in further detail:
[0072] Example 1
[0073] See attached Figure 1 As shown, the robot spraying trajectory optimization method based on the seven-order non-uniform B-spline curve includes the following steps:
[0074] S1: The data acquisition module is used to obtain the surface data of the object to be sprayed and construct a three-dimensional model of the object to be sprayed. The over_distance function is used to calculate the film thickness distribution model under the fitting parameters to obtain the film thickness distribution map under the corresponding process, and the optimal overlap distance value is output according to the standard deviation value.
[0075] S2: Specify the values of each key interpolation point according to the optimal overlap distance value, obtain the interpolation point pose information within the range of the surface to be sprayed in the coordinate table passed into the generateQlist2 function and the transition point coordinate values specified in the function, and output the pose time series array of the key interpolation points;
[0076] S3: Perform multi-objective optimization modeling, and calculate the time interval group and fitness value corresponding to the optimal whale individual position based on the whale optimization algorithm, and transmit them to the trajectory planning module;
[0077] S4: performing spray trajectory interpolation based on the seventh-order non-uniform B-spline curve, outputting the interpolated spray trajectory, and transmitting it to the robot, and the robot sprays the surface to be sprayed of the spray object based on the interpolated spray trajectory.
[0078] The core planning elements of robotic spraying trajectory planning are trajectory type and trajectory parameters, which include the trajectory overlap distance and trajectory interpolation points. Therefore, by constructing a 3D model of the object to be sprayed, the over_distance function calculates the film thickness distribution map for the corresponding process based on the film thickness distribution model under the fitted parameters, and then obtains the optimal overlap distance value based on the standard deviation.
[0079] This embodiment optimizes the robot spraying trajectory based on the combination of the whale optimization algorithm and the seventh-order non-uniform B-spline curve, achieving a high degree of approximation of complex shapes and a high degree of smoothness of the spraying trajectory for the robot spraying process, while achieving multi-objective hybrid trajectory optimization of time, energy and impact, and significantly improving the spraying quality of the spraying robot. The seventh-order non-uniform B-spline curve is a commonly used path point fitting method in trajectory planning. The curve defines the expression through control points, node vectors and basis functions, where the node vectors determine the division of the curve parameter space, and the basis functions determine how the control points affect the local area of the curve. The node vectors of the non-uniform B-spline are not uniformly distributed, so different node vector densities can be set in different parts of the parameter space, so that it can achieve a better fitting expression effect by adjusting the arrangement of the node vectors to more finely control the curve shape.
[0080] Example 2
[0081] The specific process in step S3 based on Example 1 is as follows:
[0082] S31: Perform multi-objective optimization modeling, set the number of whale populations, the upper and lower limits of the optimization search, and initialize the position of the whale population;
[0083] S32: Randomly initialize the positions of all whale individuals, each position represents a time interval group, and iteratively update the positions of whale individuals;
[0084] S33: Substitute the time group data into the objFun2 function, calculate the fitness value of the individual whale for the spray optimization function, and determine whether the number of iterations reaches the preset value. If not, update the individual position of the whale population and recalculate the fitness value of the whale population. If so, execute step S34:
[0085] S34: Output the time interval group and fitness value corresponding to the optimal whale individual position and transmit them to the trajectory planning module.
[0086] The process of multi-objective optimization modeling in step S31 is as follows:
[0087] S311: Create an expression for multi-objective optimization, specifically:
[0088] F(x)=[min f1(x), min f2(x), min f3(x),…, minf n (x)];
[0089] stg i (x)...0, i=1,...,p;h j (x) = 0, j = 1, ..., q;
[0090] Among them, x represents the decision variable, which is equal to x1, x2, x3, ..., x n Any value f in the decision space composed of decision variables i (x) represents the optimization sub-goal, g i (x), f i (x), h j (x) represents the constraint equation that must be satisfied during optimization. By constructing multiple optimization objectives and constraint equations, a trade-off solution for optimizing these multiple objectives is found. Specifically, trajectory parameters are optimized based on the optimization objectives of spraying operation time efficiency, energy, and impact. This ensures that the robot can meet operational requirements smoothly and efficiently while also extending its service life.
[0091] S312: Based on the weights of the three sub-optimization objectives of time value, energy consumption, and pulsation impact value and the overall optimization objective expression, the optimal solution of the robot arm spray trajectory based on time value, energy consumption, and pulsation impact value is obtained; the expressions of the three optimization sub-objectives of time value, energy consumption, and pulsation impact value and the overall optimization objective are as follows:
[0092]
[0093]
[0094]
[0095] E=S1+m1*S2+m2*S3;
[0096] Among them, S1 represents the total time of the robot arm running on the trajectory, t i , t i+1 They represent the time node values of adjacent trajectory points, S2 is used to measure the energy consumption of the robot arm during trajectory operation, and a i represents the angular acceleration of the i-th joint, S3 is used to measure the pulsating impact value of the robot arm during trajectory operation, j i represents the angular acceleration of the i-th joint, E is the optimization target value, m1 and m2 are the weight coefficients corresponding to the corresponding sub-optimization targets, and the proportion of each optimization target can be adjusted by adjusting the weight coefficient.
[0097] S313: Optimize the trajectory of the robot arm based on the operating constraints of the robot arm in terms of angle, speed, acceleration, and jerk. The specific expression is:
[0098] |q(t)|≤q max ;|v(t)|≤v max ;|a(t)|≤ amx ;|j(t)|≤j max ;
[0099] Where q represents the joint angle, v represents the joint angular velocity, a represents the joint angular acceleration, and j represents the joint angular jerk. The weighted sum of time, energy consumption, and pulsation impact is used as the optimization target equation. The goal is to achieve a well-balanced solution for the trajectory that optimizes these three characteristics. This improves the robot's operating efficiency along the spray trajectory while reducing its energy consumption, ensuring smooth operation, and minimizing impact pulsation.
[0100] Example 3
[0101] Based on Example 1 or Example 2, the expression for initializing the position of the whale population in step S31 is:
[0102] xi (0)=[x i1 (0), x i2 (0),…,x iD (0)], i=1,…N;
[0103] Among them, x i (0) represents the position of i whale individuals, D represents the dimension of the search space,
[0104] In step S32, in the iterative update of the whale individual position, other search individuals except the best search agent update their own positions according to the position of the best individual. The position iterative update expression is:
[0105]
[0106]
[0107] in, Represent the individual whale positions and the best whale individual positions, is the coefficient vector, t represents the number of iterations, and the optimal solution is refreshed when The value of will be updated;
[0108] The expression is:
[0109]
[0110]
[0111]
[0112] Among them, t max is the maximum number of iterations set, is a random vector between 0 and 1.
[0113] In this embodiment, the whale optimization algorithm designs two mechanisms to simulate its behavior: one is the shrinking and surrounding mechanism, which The value range of is adjusted from [-a, a] to [-1, 1] to simulate the process of other whale individual positions approaching the best whale individual position.
[0114] Another mechanism is to update the position in a spiral manner, and the mathematical expression is:
[0115]
[0116] in, It is used to calculate the distance between the individual whale and the prey. b is a constant value used to define the spiral shape. l is a random number between [-1, 1]. Assuming a probability of 0.5, the algorithm selects one of the mechanisms to update the whale's position. The expression is:
[0117]
[0118] when When the value range of falls within [-1,1], the search and encirclement mechanism makes the individual whale position move closer to the best whale individual. When the value range of falls outside, the current whale individual position will move closer to the random whale individual position rather than the optimal whale individual position, that is, the whale is in the process of searching for prey, and its mathematical expression is:
[0119]
[0120]
[0121] in, Represents the position of a random individual whale in the whale group of generation t.
[0122] In this embodiment, the number of whale populations is set to 30, the upper limit of the optimization search is set to 1, the lower limit of the optimization search is set to 0.05, and the search space dimension is set to 20.
[0123] In step S33, the time group data is substituted into the objFun2 function to calculate the fitness value of the individual whale for the spray optimization function. The specific process is as follows:
[0124] S331: Pass the time interval group to the objFun2 function, and use the generateQlist2 function to obtain the complete interpolation point coordinates and time nodes;
[0125] S332: The interpolation point position time series array is passed to the getSpline7PVAJ2 function to calculate the spatial trajectory pose data after the seventh-order B-spline interpolation;
[0126] S333: passing the spatial trajectory pose data into the InverseSolution function to calculate joint dynamic characteristic parameter data at each moment, wherein the joint dynamic characteristic parameter data includes angle, velocity, acceleration, and jerk arrays;
[0127] S334: Pass the acceleration, jerk and corresponding time series array into the EnergyImpactvalue function to calculate the fitness value of the spray optimization function.
[0128] In actual spraying operations, taking the spraying of gas turbine blades as an example, considering the operating characteristics of gas turbine blade spraying, the trajectory and the spray gun running speed need to be kept constant within the blade range. The time interval value of the spray gun running trajectory outside the blade range is taken as the optimization object. At the same time, in order to further improve the comprehensive characteristics of the robot when operating along the expected trajectory, the weighted sum of the trajectory running time, energy consumption and trajectory pulsation impact value is used as the optimization objective function. First, the number of whale populations is specified to be 30, the upper limit of the optimization search is 1, the lower limit is 0.05, and the dimension value is set to 20. After initializing the whale population, the initialization function is used to randomly generate the original whale population. The position of a single whale individual in the population is a set of time interval arrays. Subsequently, the fitness value corresponding to the optimization function is calculated for each whale individual through the optimization algorithm. In each iterative optimization process, the individual position of the next generation of whale populations is continuously updated according to specific rules based on the optimal solution of the previous generation. This iterative method is intended to simulate the clustering behavior of whale populations approaching prey when hunting. When the number of iterations reaches the upper limit, the algorithm will output the location of the whale with the best fitness value. The time interval array corresponding to this location is transmitted to the trajectory planning module through the system. The module completes the trajectory path planning based on the 7-order non-uniform B-spline interpolation method, and then outputs the optimized spraying operation path. At this point, the spraying operation path planning operation is completed, and the optimized spraying operation path has good high-order smoothness.
[0129] The specific process of spraying trajectory interpolation based on the septad non-uniform B-spline curve in step S4 is as follows:
[0130] S41: The expression for defining the K-order B-spline curve is:
[0131]
[0132] Among them, B j,k (u) represents the j-th k-order B-spline basis function, P j Represents the jth control point corresponding to the basis function, and the node vector is defined as:
[0133] U=[u0,u1,…,u k ,u k+1 ,…,u n ,u n+1 ,…,u n+k ], U is a non-decreasing node sequence, and the basis function expression can be obtained according to the De Boer-Cox recursion formula, where 0 / 0=0:
[0134]
[0135] The calculation process of the basis function can be obtained by recursion as follows:
[0136]
[0137] S42: Obtain the coefficient matrix of the B-spline curve and inversely calculate the control points corresponding to the target position points so that the B-spline curve passes through the series of target position points. i (i=k~n+1), it is necessary to inversely calculate the control points corresponding to the target position points by obtaining the coefficient matrix of the B-spline curve, and increase the k-order repetition of the node vector, that is,
[0138] u0=u1=…=u k =0,u n+1 =u n+2 =····u n+k+1 =1;
[0139] The inner node vector is obtained by parameterizing the cumulative chord length using the set time node group and then normalized to obtain the inner node:
[0140]
[0141] In order to make the series of target position points q i have:
[0142]
[0143] Yes, by substituting different points, we can obtain a series of position equations, and we can also add the initial and final position joint velocities v s 、v e Joint acceleration a at the initial and final positions s 、a e , the joint jerk j at the initial and final positions s 、j e , similarly, we can add the corresponding equation:
[0144] p′(u k )=v s , p′(u n+k-1 )=v e ;
[0145] p″(u k )=a s ,p″(u n+k-1 )=a e ;
[0146] p″′(u k )=j s ,p″′(u n+k-1 )=j e .
[0147] Among them, p′, p″, and p″′ refer to the first-order, second-order, and third-order derivatives of the B-spline curve, respectively. The derivatives represent the tangent direction, curvature change, and rate of change of the curvature change of the curve at that point, respectively. By adding the above equations to impose specific first-order derivative constraints, second-order derivative constraints, and third-order derivative constraints on the start and end points of the curve, precise control of the differential characteristics of the start and end positions of the B-spline curve can be effectively achieved. Based on the de Boer-Cox recursion, the expressions of the derivatives of each order can be obtained as follows:
[0148]
[0149]
[0150] The above formula can be used to obtain a set of equations for solving n control points. Combined with the cumulative chord length and the normalized time node vector, the actual angle position of the joint at each node of the B-spline curve can be calculated.
[0151] S43: The actual angle position of the joint at each node of the B-spline curve is calculated by combining the accumulated chord length and the normalized time node vector.
[0152] When planning the robot's trajectory, the specific task requirements of the robot must be met. Different functions determine the movement trajectory and posture changes of the robot's end effector. To meet the process requirements of robotic spraying of gas turbine blades, this embodiment interpolates the intervals between adjacent trajectories based on the optimal overlap distance obtained through analysis and calculation. To obtain individual spray trajectory data, this embodiment analyzes and plans the actual spraying trajectory based on the structural characteristics of the convex and concave surfaces of existing three-dimensional gas turbine blade models. During the spraying operation, to ensure that the paint film thickness and uniformity meet processing requirements, the spray gun at the end of the robot must always be perpendicular to the blade surface or trajectory. Because the curvature of the surface to be sprayed on the gas turbine blade is relatively small, the spray gun is positioned perpendicular to the robot's spray trajectory. On the convex surface of the blade, the spray gun trajectory is obtained by extending the blade cross-section to the spray gun height a preset by the process parameters. Several trajectory interpolation points are selected along the trajectory and corresponding coordinate axes are added, keeping the x-axis perpendicular to the trajectory line. These additional coordinate axes represent the position and posture of the spray gun during spraying. Due to the shape characteristics of the concave side of the blade, the trajectory lines obtained by equidistant offset of the cross-section line intersect each other. Since the curvature of the blade section is small, on the concave side of the blade, the first and last position points of the cross-section are connected and the line segment is equidistantly offset as the concave trajectory line of the spray gun. Similarly, coordinate axes are added at the corresponding trajectory interpolation points to represent the position and posture of the spray gun. The path diagram is as follows Figure 2 As shown, the spray trajectory is shown in Figure 3 shown.
[0153] For the spray trajectory interpolation point data derived from the blade model and the corresponding time node values as the trajectory to be planned, MATLAB software is used to interpolate the angle time series using 3rd, 5th and 7th order polynomials and non-uniform B-spline curves, and the trajectory dynamic characteristic curve is drawn. Figure 4
[0154] High-order smooth motion trajectories are an important basis for evaluating trajectory planning results. They must be continuous and high-order differentiable. When planning trajectories for robotic arms, it is generally necessary to ensure that the trajectory meets velocity continuity, acceleration continuity, and jerk continuity. See Figure 4 、 Figure 5 、 Figure 6 It can be seen that the three interpolation methods can all interpolate points through the trajectory, but there are great differences in the curve motion characteristics. The trajectory obtained by the third-order polynomial interpolation can only maintain the continuity of the position and velocity curves. There are many broken line jump points on the acceleration and jerk curves, and the curve motion characteristics are poor. Compared with the third-order polynomial, the fifth-order polynomial introduces more constraints. The planned trajectory curve has certain improvements in the continuity of acceleration and jerk curves, but there are still many sharp mutation points. The curve planned by the seventh-order non-uniform B-spline interpolation method can well meet the continuity conditions of velocity, acceleration, and jerk. The three motion characteristic curves can ensure smoothness. In order to quantitatively illustrate the advantages and disadvantages of the three planned curves in terms of trajectory continuity, the maximum velocity jump value, maximum acceleration jump value, and maximum jerk jump value are calculated for the three trajectory curves respectively. The jump value is combined with the image to evaluate the continuity and smoothness of the curve. The jump value of each curve is shown in Table 1.
[0155] Table 1 Maximum jump value of each interpolation trajectory
[0156]
[0157] From the table, we can see that the jump values of the cubic polynomial in velocity, acceleration, and jerk are 23.281334, 33.155011, and 978.108665 respectively. Combined with the image, it can be seen that the continuity of the acceleration and jerk curves of the cubic polynomial is poor, and the curves have many corner points. The jump values of the 5th-order polynomial curve are 29.0715, 473.909075, and 4661416.253734 respectively. Combined with the image, the continuity of the acceleration and jerk curves of the 5th-order polynomial is optimized compared with the cubic polynomial curve, but the maximum jump value of the curve is The velocity and acceleration of the gas turbine blades are more smooth while ensuring the continuity of the curve.
[0158] To verify the feasibility and superiority of the proposed multi-objective trajectory optimization method based on the WOA optimization algorithm (whale optimization algorithm), a comparative experiment was designed for validation and analysis. For comparison, the commonly used trajectory optimization methods, moth-to-flame (MFO) and particle swarm optimization (PSO), were introduced for comparative validation. Multi-objective trajectory optimization models were established based on the WOA, MFO, and PSO algorithms, respectively. The time interval between spray gun motions corresponding to adjacent interpolation points outside the blade spray range was optimized, and optimization simulations were performed using MATLAB simulation software.
[0159] The algorithm parameters of the WOA, MFO, and PSO optimization algorithms set in this paper are shown in Table 2 below.
[0160] Table 2 WOA optimization algorithm parameters
[0161] Optimization algorithm parameters Parameter value Search lower limit 007 Search upper limit value 1 Number of individuals in the population 30 Number of iterations 200 Search space dimensions 20
[0162] Table 3 MFO optimization algorithm parameters
[0163] Optimization algorithm parameters Parameter value Search lower limit 0.07 Search upper limit value 1 Number of individuals in the population 30 Number of iterations 200 Search space dimensions 20
[0164] Table 4 PSO optimization algorithm parameters
[0165] Optimization algorithm parameters Parameter value Search lower limit 0.07 Search upper limit value 1 Number of individuals in the population 30 Number of iterations 200 Search space dimensions 20 Individual experience weighting factor 2 Group experience weighting factor 2 Inertia weight value 0.8 Maximum particle speed 0.5 Minimum particle velocity .0.5
[0166] See also Figure 7The fitness value comparison chart of WOA, MFO and PSO algorithms shows that the PSO optimization algorithm falls into the local optimal solution when the number of iterations reaches 180. The fitness value is still as high as 7.197 at 200 generations, and the optimization effect is far inferior to other optimization algorithms. Compared with the WOA algorithm, when the number of iterations is 200 generations, the fitness value of the WOA algorithm is 5.558, while the fitness value of the MFO algorithm is 5.579. The optimization effect only differs by 0.38%, and the final fitness convergence accuracy is not much different. The WOA optimization algorithm is close to convergence when the number of iterations reaches 20 generations, and the fitness value is equal to 5.608 at this time, while the MFO algorithm basically converges at the 150th generation, and the fitness value is 5.602 at this time. Therefore, the whale algorithm is superior to the MFO and PSO algorithms in terms of convergence speed, and the final convergence accuracy is not much different from the MFO algorithm. In summary, this paper chooses the optimized path time interval obtained by the WOA whale algorithm as the gun trajectory operation parameter. The gun trajectory curve corresponding to the time interval array finally optimized by the WOA whale algorithm can be found in Figure 8 and Figure 9 .
[0167] See also Figure 10 , the end spray gun moving speed image, it can be seen that the end spray gun moving speed in the blade spraying area is maintained at the set speed of 800 near the speed, in line with the spray gun speed process parameter setting, from Figure 8 、 9 as well as Figure 10 It can be seen that the optimized trajectory spraying path curve is smooth without any bends. The joint angle and velocity images show that the angle changes continuously without mutations and spikes, indicating that the robot arm can smoothly transition from one posture to another. The acceleration and jerk images are also continuous and smooth without sharp peak mutations, which can ensure that there is no severe vibration shock when the robot arm runs according to the expected trajectory. Therefore, the operating performance of the robot arm corresponding to the optimized trajectory spraying path curve can better meet the needs of actual spraying operations.
[0168] In summary, the robot spraying trajectory optimization method based on the seventh-order non-uniform B-spline curve provided by the present invention obtains the surface data of the object to be sprayed through the data acquisition module, calculates the film thickness distribution map under the corresponding process and outputs the optimal overlap distance value; the optimal overlap distance value is used to specify the value of each key interpolation point, obtains the interpolation point posture information within the range of the surface to be sprayed and the transition point coordinate value specified in the function, and outputs the posture time series array of the key interpolation point; based on the whale optimization algorithm, the time interval group and fitness value corresponding to the optimal whale individual position are calculated and transmitted to the trajectory planning module; the spraying trajectory is interpolated based on the seventh-order non-uniform B-spline curve, and the interpolated spraying trajectory is output, and the robot sprays the surface to be sprayed of the object to be sprayed based on the interpolated spraying trajectory.
[0169] By combining the whale optimization algorithm with a seven-degree non-uniform B-spline curve for robotic spraying trajectory optimization, the team achieved high approximation of complex shapes and smooth spray trajectories. Furthermore, they implemented multi-objective hybrid trajectory optimization for time, energy, and impact, significantly improving the spray quality of the spray robot. Secondly, the seven-degree non-uniform B-spline curve, a commonly used path point fitting method in trajectory planning, defines its expression through control points, knot vectors, and basis functions. The knot vectors determine the partitioning of the curve parameter space, while the basis functions determine how the control points affect local regions of the curve. Because the knot vectors of the non-uniform B-spline curve are not uniformly distributed, different knot vector densities can be set in different parts of the parameter space. This allows for more precise control of the curve shape by adjusting the knot vector arrangement, resulting in better fitting results. Furthermore, through multi-objective optimization modeling, the weights of time, energy consumption, and pulsation impact are combined with the overall optimization objective expression to obtain a set of trajectory solutions that optimally balance these three characteristics. This improves the efficiency of the robot arm along the spray trajectory while reducing its energy consumption, ensuring smooth operation and minimizing impact pulsation.
Claims
1. A robot spraying trajectory optimization method based on a seven-order non-uniform B-spline curve, characterized in that: The following steps are involved: S1: The data acquisition module is used to obtain the surface data of the object to be sprayed and construct a three-dimensional model of the object to be sprayed. The over_distance function is used to calculate the film thickness distribution model under the fitting parameters to obtain the film thickness distribution map under the corresponding process, and the optimal overlap distance value is output according to the standard deviation value. S2: Specify the values of each key interpolation point according to the optimal overlap distance value, obtain the interpolation point pose information within the range of the surface to be sprayed in the coordinate table passed into the generateQlist2 function and the transition point coordinate values specified in the function, and output the pose time series array of the key interpolation points; S3: Perform multi-objective optimization modeling, and calculate the time interval group and fitness value corresponding to the optimal whale individual position based on the whale optimization algorithm, and transmit them to the trajectory planning module; S4: performing spray trajectory interpolation based on a seven-order non-uniform B-spline curve, outputting the interpolated spray trajectory, and transmitting it to the robot, and the robot spraying the surface to be sprayed of the spray object based on the interpolated spray trajectory; The specific process in step S3 is as follows: S31: Perform multi-objective optimization modeling, set the number of whale populations, the upper and lower limits of the optimization search, and initialize the position of the whale population; S32: Randomly initialize the positions of all whale individuals, each position represents a time interval group, and iteratively update the positions of whale individuals; S33: Substitute the time group data into the objFun2 function, calculate the fitness value of the individual whale for the spray optimization function, and determine whether the number of iterations reaches the preset value. If not, update the individual position of the whale population and recalculate the fitness value of the whale population. If so, execute step S34: S34: Output the time interval group and fitness value corresponding to the optimal whale individual position and transmit them to the trajectory planning module; The specific process of spraying trajectory interpolation based on the septad non-uniform B-spline curve in step S4 is as follows: S41: The expression for defining the K-order B-spline curve is: in, Indicates the j indivual k Order B-spline basis function, Indicates the basis function corresponding to the j control points, the node vector is defined as: , U is a non-decreasing node sequence. According to the DeBoer-Cox recursion formula, the basis function expression can be obtained, where 0 / 0=0: ; The calculation process of the basis function can be obtained by recursion as follows: ; S42: Obtain the coefficient matrix of the B-spline curve and inversely calculate the control points corresponding to the target position points so that the B-spline curve passes through the series of target position points. , it is necessary to obtain the coefficient matrix of the B-spline curve to inversely find the control points corresponding to the target position points, and increase the node vector k Order repetition, that is ; The inner node vector is obtained by parameterizing the cumulative chord length using the set time node group and then normalized to obtain the inner node: ; In order to pass through a series of target locations q i have: ; right j Substitute different points to obtain a series of position equations, and add the initial and final position joint velocities v s 、 v e Joint acceleration at initial and final positions a s 、 a e , joint jerk at the initial and final positions j s 、 j e , and similarly set up the corresponding equations: ; ; 。 2. The robot spraying trajectory optimization method based on the seventh-order non-uniform B-spline curve according to claim 1 is characterized in that: The process of multi-objective optimization modeling in step S31 is as follows: S311: Create an expression for multi-objective optimization, specifically: ; ; in, x Represents the decision variable, which is equal to x 1, x 2, x 3. ··· , x n Any value in the decision space composed of decision variables f i ( x ) represents the optimization sub-goal, g i ( x ), f i ( x ), h j ( x ) represents the constraint equation that needs to be satisfied during optimization; S312: Based on the weights of the three sub-optimization objectives of time value, energy consumption, and pulsation impact value and the overall optimization objective expression, the optimal solution of the robot arm spray trajectory based on time value, energy consumption, and pulsation impact value is obtained; the expressions of the three optimization sub-objectives of time value, energy consumption, and pulsation impact value and the overall optimization objective are as follows: ; ; ; ; in, S 1 represents the total time the robot arm runs on the track, t i 、 t i+1 Respectively represent the time node values of adjacent segment trajectory points, S 2 is used to measure the energy consumption of the robot arm during trajectory operation. a i Indicates the i The angular acceleration of each joint, S 3 is used to measure the pulsation impact value of the robot arm during trajectory operation. j i Indicates the i The angular acceleration of each joint, E To optimize the target value, m 1 and m 2 is the weight coefficient corresponding to the sub-optimization goal. By adjusting the weight coefficient, the proportion of each optimization goal can be adjusted; S313: Optimize the trajectory of the robot arm based on the operating constraints of the robot arm in terms of angle, speed, acceleration, and jerk. The specific expression is: ; in, q Indicates the joint angle value ,v Indicates the joint angular velocity value ,a Indicates the joint angular acceleration value ,j Indicates the joint angle acceleration value; The expression for initializing the position of the whale population in step S31 is: ; in, x i (0) means i The location of individual whales, D represents the search space dimension, In step S32, in the iterative update of the whale individual position, other search individuals except the best search agent update their own positions according to the position of the best individual. The position iterative update expression is: ; ; in, 、 Represent the individual whale positions and the best whale individual positions, 、 is the coefficient vector, t Represents the number of iterations, when the optimal solution is refreshed The value of will be updated; 、 The expression is: ; ; ; Among them, t max is the maximum number of iterations set, is a random vector between 0 and 1.
3. The robot spraying trajectory optimization method based on the septad non-uniform B-spline curve according to claim 1 is characterized in that: The number of whale populations is set to 30, the upper limit of the optimization search is set to 1, the lower limit of the optimization search is set to 0.05, and the search space dimension is set to 20.
4. The robot spraying trajectory optimization method based on the septenary non-uniform B-spline curve according to claim 1 is characterized in that: In step S33, the time group data is substituted into the objFun2 function to calculate the fitness value of the individual whale for the spray optimization function. The specific process is as follows: S331: Pass the time interval group to the objFun2 function, and use the generateQlist2 function to obtain the complete interpolation point coordinates and time nodes; S332: The interpolation point position time series array is passed to the getSpline7PVAJ2 function to calculate the spatial trajectory pose data after the seventh-order B-spline interpolation; S333: passing the spatial trajectory pose data into the InverseSolution function to calculate joint dynamic characteristic parameter data at each moment, wherein the joint dynamic characteristic parameter data includes angle, velocity, acceleration, and jerk arrays; S334: Pass the acceleration, jerk and corresponding time series array into the EnergyImpactvalue function to calculate the fitness value of the spray optimization function.
Citation Information
Patent Citations
Optimization method for thickness uniformity of irregular planes and polygonal coating layers by electrostatic spraying robot
CN109332033A
Multi-machine cooperative trajectory optimization method based on quintic non-uniform rational B-spline
CN113296407A