An Industrial Robot Trajectory Planning Method for Spatial Surfaces
Through the B-spline curve fitting algorithm and attitude algorithm, feature points of the spatial surface are extracted and the trajectory point positions are planned, which solves the approximation error problem when drawing surfaces in 3D models, and realizes the precise planning and attitude control of the robot trajectory.
Patent Information
- Application Number
- CN202210954214.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-10
- Publication Date
- 2025-07-11
- Estimated Expiration
- 2042-08-10
AI Technical Summary
The prior art is prone to large approximation errors when drawing surfaces of 3D models, resulting in pose errors when generating robot trajectory, which is difficult to meet the accuracy requirements.
The B-spline curve fitting algorithm is used to extract the feature points of the outline outline of the spatial surface, determine the location of the trajectory point through the planning algorithm, and add pose information according to the pose algorithm to generate motion instructions executable by the robot to draw the spatial curve trajectory.
It effectively reduces the approximation error in the 3D model's surface drawing process, and realizes the planning of curve trajectory points based on any step value input, meeting the attitude and accuracy requirements of the robot end.
Smart Images

Figure CN115157267B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of robots, and in particular to an industrial robot trajectory planning method for a spatial curved surface. Background Art
[0002] The 3D engine of the robot offline programming software uses triangles to draw curved surfaces. In a 3D model, generally, the more faces (i.e., the number of triangles), the finer the model, and vice versa, the coarser the model. Therefore, a relatively large approximation error is likely to occur during the process of drawing a curved surface by the 3D model. The finer the reconstructed model (i.e., the more triangles), the smaller the approximation error, and vice versa, the larger the approximation error. If a curved surface drawn by a 3D model is directly used to generate a robot trajectory, it will cause a certain pose error. Summary of the Invention
[0003] The object of the present invention is an industrial robot trajectory planning method for a spatial curved surface. For the spatial curved surface reconstructed by the 3D engine, the feature points of the outer contour line of the spatial curved surface are extracted. According to the B-spline curve fitting algorithm, the relevant feature data is extracted, the spatial curve is reproduced, and according to the arbitrary step length information input externally, the planning of the curve is completed. The step length value between the trajectory points of the planned spatial curve is the curve length. Then, according to the spatial curved surface where the spatial curve is located, attitude information is added to the trajectory points of the spatial curve to realize the drawing of the spatial curve trajectory at the end of the robot and meet the corresponding attitude and accuracy requirements.
[0004] The technical solution adopted by the present invention to achieve the above object is: an industrial robot trajectory planning method for a spatial curved surface, including the following steps:
[0005] Establish a robot simulation model and a workpiece model, and import them into a three-dimensional simulation environment;
[0006] For the spatial curved surface to be processed on the workpiece model selected in the three-dimensional simulation environment, plan the robot trajectory composed of the spatial curve trajectory points according to the spatial curved surface, so as to convert it into a motion instruction that the robot can execute, generate a robot executable program to control the action of the robot simulation model.
[0007] The planning of the robot trajectory composed of the spatial curve trajectory points according to the spatial curved surface includes the following steps:
[0008] 1) Extract the feature points of the outer contour line of the spatial curved surface as the shape value points through a fitting algorithm, and convert them into control points and knot vectors;
[0009] 2) Obtain the length of the spatial curve segment through a planning algorithm, and determine the position of the trajectory points;
[0010] 3) Obtain the attitude of the trajectory points through an attitude algorithm.
[0011] The specific steps of step 1) are as follows:
[0012] 3-1) Select a spatial surface, extract the characteristic points of the outer contour line of the spatial surface, and obtain a sequence of profile points P = {p0, p1, …, p t}, and the number of profile points is t + 1;
[0013] Construct a k-th order B-spline curve with t + 1 profile points, and the B-spline curve is characterized by a sequence of control points composed of t + 3 control points and a knot vector composed of t + k + 4 knots;
[0014] The sequence of control points D is expressed as: D = {d0, d1, …, d n}, n = t + 2
[0015] The knot vector U is expressed as: U = {u0, u1, …, u m}, m = t + k + 3
[0016] 3-2) Obtain the knot vector U according to the Foley parameter method;
[0017] 3-3) Obtain the sequence of control points D according to the LU decomposition matrix transformation;
[0018] 3-4) Obtain the B-spline curve expression C i (u) and its first derivative expression C′ i (u) according to the sequence of control points D, the knot vector U, and the de Boor-Cox formula.
[0019] The specific steps of step 2) are as follows:
[0020] 4-1) Estimate the length from the starting point of the curve to each node of the curve according to the composite Simpson's formula;
[0021] 4-2) Plan the curve trajectory points according to the step value, and obtain the sequence of curve u values corresponding to the trajectory points, u = {U0, U1, U2, …}, where U0 = 0, and the step value step is accumulated in turn. When the accumulated step value step ≤ s t ), calculate the curve u value U j corresponding to the trajectory point in turn, where j represents the sequence number of the u value in the sequence of curve u values; st represents the total length of the curve estimated according to the composite Simpson's formula;
[0022] 4-3) Substitute the sequence of curve u values corresponding to the trajectory points, u = {U0, U1, U2, …} into the B-spline curve expression C i (u) to obtain the positions of the trajectory points.
[0023] The specific steps of 4-1) are as follows:
[0024] 5-1) Calculate the length from the starting point of the curve to each node of the curve according to the composite Simpson's rule
[0025] s i-3 =S(0, u i ), i = 3, 4, …, t + 3; u i is the (i + 1)-th curve node in the knot vector U;
[0026] The composite Simpson's rule is as follows:
[0027]
[0028] Where:
[0029]
[0030] a, b represent the independent variables, C′ i (u x ), C′ i (u y ), C′ i (u z ) represent the x-component, y-component, and z-component of the first derivative of the B-spline curve respectively;
[0031] 5-2) Judge S(a, b):
[0032] If the discrimination condition is satisfied: δ is the threshold; then it is considered that S(a, b) can represent the length of the curve segment u = (a, b);
[0033] Otherwise, go to step 5-3);
[0034] 5-3) Divide S(a, b) downward into And return each component obtained by dividing S(a, b) downward to step 5-2) respectively;
[0035] If each component satisfies the discrimination condition, then S(a, b) is the sum of each component, and it is considered that S(a, b) can represent the length of the curve segment u = (a, b);
[0036] Otherwise, each component returns to step 5-3) respectively and continues to be divided downward until all components satisfy the discrimination condition.
[0037] The specific content of 4-2) is as follows:
[0038] i. According to the length s i-3 from the starting point of the curve to each node of the curve, estimate the node interval where the u value U j corresponding to the cumulative step value step is located;
[0039] When it satisfies: s i-3 ≤ step < si-2
[0040] The node interval is estimated to be: u i ≤U j <u i+1
[0041] If the cumulative step value step = s t At this time, the node interval is: u t+2 ≤U j <u t+3
[0042] ii. Determine the node interval according to determination condition 1 and determination condition 2 in sequence:
[0043] Determination condition 1: U j-1 <u i+1
[0044] If determination condition 1 is satisfied, it is considered that the node interval where U is located is u j ≤U i ≤U j <u i+1 ;
[0045] Otherwise: i = i + 1, return to step ii until determination condition 1 is satisfied;
[0046] Determination condition 2: S(U j-1 , u i+1 ) > step value
[0047] If determination condition 2 is satisfied, it is considered that the node interval where U is located is u j ≤U i ≤U j <u i+1 , otherwise: i = i + 1, return to step ii until determination condition 2 is satisfied; the step value is the set value;
[0048] If i = t + 2 and S(U j-1 , u i+1 ) ≤ step value, then U j = 1;
[0049] iii. Approximate S(U j within the node interval where U is located through the binary algorithm to make S(U j-1 , U j ) = step value, and obtain the U j value:
[0050] The discrimination condition of the binary algorithm is: |S(U j-1 , U j ) - step value| < δ, where δ is the threshold value;
[0051] If the discrimination condition is met, then S(U j-1 , U j ) is considered as the step value and the bisection algorithm terminates; otherwise, the bisection algorithm continues until the discrimination condition is met;
[0052] Obtain the curve u value U corresponding to the trajectory point j, .
[0053] The specific steps of step 3) are as follows:
[0054] Substitute the curve u value U corresponding to the trajectory point j, into the first-order derivative expression C′ i (u) of the B-spline curve to obtain the tangent direction of the B-spline curve;
[0055] At each trajectory point, create a plane perpendicular to the tangent direction of the B-spline curve;
[0056] Extract the feature points of the intersection line of the plane and the space surface, obtain the feature point closest to the trajectory point, and obtain the normal direction of the feature point on the space surface to which it belongs;
[0057] Obtain the attitude of the trajectory point through orthogonal calculation.
[0058] Step 3) includes the following steps:
[0059] 8-1) Substitute the sequence of curve u values corresponding to the trajectory points, u = {U0, U1, U2,...} into the first-order derivative formula of the curve to find the tangent direction of the curve at this point, denoted as P N ;
[0060] 8-2) Pass through the trajectory point to establish a plane perpendicular to P N ; Extract the intersection line feature points of this plane and the space surface, calculate the straight-line distance between the feature points and the trajectory point, and screen out the feature point closest to the trajectory point. The normal direction of this feature point is denoted as P A ;
[0061] 8-3) Perform orthogonal calculation. According to P A , P N obtain P O , and then according to P O obtain P A that meets the orthogonality:
[0062] P O = P A × P N
[0063] P A = P N × P O
[0064] 8-4) Attitude assignment to trajectory points: The X direction of the trajectory point is P N , and the Y direction of the trajectory point is P O , and the Z direction of the trajectory point is P A .
[0065] An industrial robot trajectory planning method for a spatial surface further includes the following steps:
[0066] Calibrate the relative positions of the robot simulation model and the workpiece model in a three-dimensional simulation environment to simulate the real relative positions of the robot and the workpiece in reality;
[0067] Conduct simulation detection on the robot simulation model and the workpiece model to adjust the real positions of the robot and the workpiece in reality.
[0068] Post-process the robot executable program and send it to the real robot controller to achieve the spatial curve trajectory planning of the robot.
[0069] An industrial robot trajectory planning device for a spatial surface includes a memory and a processor; the memory is used to store computer programs; the processor is used to implement the industrial robot trajectory planning method for a spatial surface when executing the computer programs.
[0070] The present invention has the following beneficial effects and advantages:
[0071] 1. For the surface drawn by the 3D model, reproduce the algorithm of the spatial curve on this basis. Effectively reduce the approximation error generated during the process of drawing the surface by the 3D model.
[0072] 2. Complete curve planning according to any step value input externally. The step value between the trajectory points of the planned spatial curve is the curve length, meeting the corresponding process requirements.
[0073] 3. Then, according to the spatial surface where the spatial curve is located, attach attitude information to the trajectory points of the spatial curve to realize the drawing of the spatial curve trajectory at the end of the robot and meet the corresponding attitude and accuracy requirements. Description of the Drawings
[0074] Figure 1 A logic flowchart of an industrial robot trajectory planning method for a spatial surface;
[0075] Figure 2 An algorithm flowchart of an industrial robot trajectory planning method for a spatial surface. Detailed Embodiments
[0076] The following further describes the present invention in detail with reference to the drawings and embodiments.
[0077] As Figure 1, Figure 2 As shown, the present invention is as follows:
[0078] I. Establish a robot simulation model, including the kinematics of this type of robot, the limit values of each joint axis of this type of robot, the relevant parameters of the speed planning of this type of robot, etc.
[0079] Import the robot simulation model into the 3D simulation world of the offline programming software. The 3D simulation world supports human-computer interaction, including but not limited to functions such as drag-and-teach, capturing points, lines, and surfaces, and simulating robot actions.
[0080] Import the required workpiece model into the 3D simulation world of the offline programming software, and capture and select the spatial surface on the workpiece to be processed through the 3D simulation world.
[0081] Input the required step value and start the calculation of the spatial curve trajectory points.
[0082] II. Fitting algorithm
[0083] The fitting algorithm is part of the data preprocessing. It is responsible for taking the feature points of the outer contour line of the extracted spatial surface as the shape value points and converting them into control points and knot vectors. It converts the knots and chord lengths into a knot vector through the Foley parameter method; calculates the corresponding basis functions from the knot vector, and obtains the control points corresponding to the knots through the LU decomposition matrix transformation.
[0084] At this point, the curve expression can already be obtained according to the de Boor-Cox formula.
[0085] Specific steps:
[0086] 1) Select the spatial surface, extract the feature points of the outer contour line of the spatial surface, and obtain the shape value point sequence P.
[0087] The shape value point sequence P is expressed as: P = {p0, p1,..., p t}, and the number of shape value points is t + 1.
[0088] A k-th order B-spline curve with t + 1 shape value points is defined by a control point sequence consisting of t + 3 control points and a knot vector consisting of t + k + 4 knots.
[0089] The control point sequence D is expressed as: D = {d0, d1,..., d n}, n = t + 2
[0090] The knot vector U is expressed as: U = {u0, u1,..., u m}, m = t + k + 3
[0091] The multiplicity r of the first and last knots of the knot vector U is k + 1. The values of the first k + 1 knots are 0, and the values of the last k + 1 knots are 1.
[0092] 2) Calculate the knot vector U by back-calculating according to the welfare parameter method
[0093] Taking the third-order B-spline curve (k = 3) as an example, the calculation formula is as follows:
[0094]
[0095] Where:
[0096] Δp i = |p i+1 - p i |
[0097]
[0098]
[0099] 3) Calculate the control point sequence D by back-calculating according to the LU decomposition matrix transformation
[0100] Taking the third-order B-spline curve (k = 3) as an example, the multiplicity of the two endpoints of the third-order B-spline curve is 4 (r = k + 1). Therefore, the first and last control points of the third-order B-spline are the shape points at its first and last ends, that is:
[0101]
[0102] Taking the fixed tangent directions of the first and last endpoints as the boundary conditions, the matrix expression for calculating the control point sequence D by LU decomposition matrix transformation is:
[0103]
[0104] Specifically expanded as:
[0105]
[0106] Where:
[0107] Δu i = u i+1 - u i
[0108]
[0109]
[0110]
[0111]
[0112] The expression of the LU decomposition inverse method is:
[0113]
[0114] The algorithm steps of the LU decomposition inverse method are as follows:
[0115] i. Decompose matrix A into a lower triangular matrix L and an upper triangular matrix U
[0116] L x,x = 1, x = 0, 1, …, t
[0117] U 0,j = A 0,j , j = 0, 1, …, t
[0118]
[0119]
[0120] ii. Invert L and U respectively
[0121] j = 1, 2, …, t
[0122]
[0123]
[0124] iii. A -1 = U -1 * L -1
[0125] 4) Calculate the B-spline curve expression and its first derivative according to the de Boor-Cox formula. Taking the third-order B-spline curve (k = 3) as an example, the i-th segment of the third-order B-spline curve (u i ≤ u < u i+1 ) can be written in the following matrix form:
[0126]
[0127] Specifically, when u = 1, i = t + 2
[0128] The first derivative expression is:
[0129]
[0130] Where:
[0131]
[0132]
[0133]
[0134]
[0135]
[0136]
[0137]
[0138]
[0139]
[0140] m 12 = 1)m 11 -m 13
[0141] m 21 = -3m 11
[0142] m 22 = 3m 11 -m 23
[0143] m 31 = 3m 11
[0144] m 32 = -3m 11 -m 33
[0145] m 41 = -m 11
[0146] m 42 = m 11 -m 43 -m 44
[0147] III. Planning Algorithm
[0148] Obtain the approximate lengths from the starting point of the curve to each node through the composite Simpson's rule, and calculate the node intervals where the corresponding curve u values are located after each step size value interval. Then, within this node interval, approximate the step size value through the composite Simpson's rule to obtain the corresponding curve u value. Determine the trajectory point positions accordingly.
[0149] Specific steps:
[0150] 1) Estimate the lengths from the starting point of the curve to each curve node according to the composite Simpson's rule
[0151] Calculate s according to the composite Simpson's rule i-3 = S(0, u i ), i = 3, 4,..., t + 3
[0152] The composite Simpson's formula is as follows:
[0153]
[0154] Where:
[0155]
[0156] This formula is an approximate value, and the discriminant condition is:
[0157]
[0158] If the discriminant condition is satisfied, it is considered that S(a, b) can represent the length of the curve segment u = (a, b); otherwise:
[0159]
[0160] Until the discriminant condition is satisfied.
[0161] 2) Plan the curve trajectory points according to the step value, and obtain the sequence of curve u values corresponding to the trajectory points, u = {U0, U1, U2,...}, where U0 = 0
[0162] Accumulate the step value step in sequence. When the accumulated step value step ≤ s t At this time, calculate the curve u value U corresponding to the trajectory point in sequence j, (j > 0)
[0163] The algorithm steps are as follows:
[0164] i. According to the length s from the starting point of the curve to each node of the curve i-3 , estimate the node interval where the u value U corresponding to the accumulated step value step is located j .
[0165] When the following condition is satisfied:
[0166] s i-3 ≤ step < s i-2
[0167] The estimated node interval is:
[0168] u i ≤ U j < u i+1
[0169] In particular, if the accumulated step value step = s t At this time, the node interval is:
[0170] u t+2 ≤ U j < u t+3
[0171] ii. Decision node interval
[0172] Decision condition 1:
[0173] U j-1 <u i+1
[0174] If decision condition 1 is satisfied, it is considered that the node interval where U is located is u j ≤U i <u j <u i+1 , otherwise:
[0175] i = i + 1
[0176] Until decision condition 1 is satisfied.
[0177] Decision condition 2:
[0178] S(U j-1 , u i+1 ) > step value
[0179] If decision condition 2 is satisfied, it is considered that the node interval where U is located is u j ≤U i ≤U j <u i+1 , otherwise:
[0180] i = i + 1
[0181] Until decision condition 2 is satisfied.
[0182] Specifically, if i = t + 2 and S(U j-1 , u i+1 ) ≤ step value, then U j = 1
[0183] iii. Approximate S(U j within the node interval where U is located by the bisection method to S(U j-1 , U j ) = step value, and obtain the U j value. The bisection approximation discriminant condition is:
[0184] |S(U j-1 , U j ) - step value| < δ
[0185] If the discriminant condition is satisfied, it is considered that S(U j-1 , U j ) is the step value.
[0186] The U j value is the value sought.
[0187] 3) Substitute the sequence of curve u values corresponding to the trajectory points, u = {U0, U1, U2, ...} into the curve formula to find the positions of the trajectory points.
[0188] IV. Attitude Algorithm
[0189] Take the first derivative of the curve expression to obtain the tangent direction of the curve. At each trajectory point, create a plane perpendicular to the tangent direction of the curve. Extract the characteristic points of the intersection line of the plane and the space surface, calculate the characteristic point closest to the trajectory point, and obtain the normal direction of the characteristic point on the space surface to which it belongs. Obtain the attitude of the trajectory point through orthogonal calculation.
[0190] Specific steps:
[0191] 1) Substitute the sequence of curve u values corresponding to the trajectory points, u = {U0, U1, U2, ...} into the first derivative formula of the curve to find the tangent direction of the curve at this point, denoted as P N 。
[0192] 2) Pass through the trajectory point to create a plane perpendicular to the tangent direction of the curve. Extract the characteristic points of the intersection line of the plane and the space surface, calculate the straight-line distance between the characteristic point and the trajectory point, and screen out the characteristic point closest to the trajectory point. The normal direction of this characteristic point on the space surface to which it belongs is denoted as P A
[0193] 3) Orthogonal calculation
[0194] P O = P A ×P N
[0195] P A = P N ×P O
[0196] 4) Assign attitude to the trajectory point
[0197] The X direction of the trajectory point is P N
[0198] The Y direction of the trajectory point is P O
[0199] The Z direction of the trajectory point is P A
[0200] V. Convert the calculated space curve trajectory points into motion instructions that the robot can execute, and generate an executable program for the robot.
[0201] In the 3D simulation world, simulate the executable program of the robot. Perform collision detection, robot joint axis limit detection, and robot speed limit detection. Adjust the relative position of the robot and the workpiece until all detections are passed.
[0202] According to the relative positions of the robot and the workpiece in the three-dimensional simulation world, layout the positions of the robot and the workpiece in reality.
[0203] Perform a virtual reality calibration algorithm for the relative positions of the robot and the workpiece in reality and in the three-dimensional simulation world. After virtual reality calibration, the relative positions of the robot and the workpiece in the three-dimensional simulation world are the true relative positions of the robot and the workpiece in reality.
[0204] Again, in the three-dimensional simulation world, the simulation robot can execute the program. Perform collision detection, robot joint axis limit detection, and robot speed limit detection. If the detection passes, post-process the robot executable program and send it to the real robot controller; if the detection fails, adjust the relative positions of the robot and the workpiece in the three-dimensional simulation world until all detections pass. At the same time, according to the relative positions of the robot and the workpiece in the three-dimensional simulation world, adjust the position layout of the robot and the workpiece in reality. Perform virtual reality calibration again. Repeat the above steps until the detection passes.
Claims
1. An industrial robot trajectory planning method for a spatial surface, characterized in that, It includes the following steps: Establish a robot simulation model and a workpiece model, and import them into a three-dimensional simulation environment; For the spatial curved surface on the workpiece model selected in the three-dimensional simulation environment that needs to be processed, plan the robot trajectory composed of spatial curve trajectory points according to the spatial curved surface, so as to convert it into a motion instruction that the robot can execute, generate a robot executable program to control the actions of the robot simulation model; The robot trajectory composed of planning spatial curve trajectory points according to the spatial curved surface includes the following steps: 1) Extract the feature points of the outer contour line of the spatial curved surface as the shape value points through a fitting algorithm, and convert them into control points and knot vectors; 2) Obtain the length of the spatial curve segment through a planning algorithm, and determine the position of the trajectory points; 3) Obtain the attitude of the trajectory points through an attitude algorithm; The specific content of step 2) is as follows: 4-1) Estimate the length from the starting point of the curve to each node of the curve according to the composite Simpson formula; 4-2) Plan the curve trajectory points according to the step value, and obtain the sequence of curve u values corresponding to the trajectory points, u ={ U 0 , U 1 , U 2 ,…}, where U 0 = 0, and the step value is accumulated in sequence step , when the accumulated step value , calculate the curve u values corresponding to the trajectory points in sequence U j , j represents the u value serial number in the sequence of curve u values; represents the total length of the curve estimated according to the composite Simpson formula; 4-3) Substitute the sequence of curve u values corresponding to the trajectory points, u = { U 0 , U 1 , U 2 , …} into the B-spline curve expression , and calculate the positions of the trajectory points; The specific content of 4-2) is as follows: i. According to the lengths from the starting point of the curve to each node of the curve , estimate the cumulative step size value step and the corresponding u value U j in the node interval where it is located; When the following conditions are met: ; The node interval is estimated to be: ; If the cumulative step value is as follows, the node interval is: ; ii. Determine the node interval according to determination condition 1 and determination condition 2 in sequence: Determination condition 1: ; If the determination condition 1 is satisfied, it is considered that U j the node interval where it is located is ; Otherwise: , return to step ii until the determination condition 1 is satisfied; Determination condition 2: ; If the determination condition 2 is satisfied, it is considered that U j The node interval where it is located is , otherwise: , return to step ii until the determination condition 2 is satisfied; the step value is the set value; If and , then U j = 1; iii. within U j the node interval where it is located, approximate it through the binary algorithm , and obtain U j value: The discriminant condition of the binary algorithm is: , is the threshold value; If the discrimination condition is satisfied, it is considered that is the step value and the binary algorithm terminates; otherwise, the binary algorithm continues until the discrimination condition is satisfied; Obtain the curve u value corresponding to the trajectory point U j 。 2. The industrial robot trajectory planning method for a spatial surface according to claim 1, characterized in that, The specific content of step 1) is as follows: 3-1) Select a spatial surface, extract the feature points of the outer contour line of the spatial surface, and obtain a sequence of control points P = {p0, p1, …, p t}, and the number of control points is t + 1; Construct a k-th order B-spline curve with t + 1 shape value points, and the B-spline curve is characterized as a control point sequence composed of t + 3 control points and a knot vector composed of t + k + 4 knots; The control point sequence D is represented as: D = { d0, d1, …, d n}, where n = t + 2 The knot vector U is represented as: U = { u0, u1, …, u m}, where m = t + k + 3 3-2) Obtain the knot vector U according to the Foley parameter method; 3-3) Obtain the control point sequence D through LU decomposition matrix transformation; 3-4) Obtain the B-spline curve expression according to the control point sequence D, the knot vector U, and the de Boor-Cox formula and its first derivative expression .
3. The industrial robot trajectory planning method for a spatial surface according to claim 1, characterized in that, The specific content of step 4-1) is as follows: 5-1) Calculate the length from the starting point of the curve to each node of the curve according to the composite Simpson formula ; is the (i + 1)-th curve knot in the knot vector U; The composite Simpson formula is: ; Where: ; represents the independent variable, , , respectively represent the x-component, y-component, and z-component of the first derivative of the B-spline curve; 5-2) Judge as follows: If the discrimination condition is satisfied: , is the threshold; then it is considered that can represent the length of the curve segment . Otherwise, enter step 5-3); 5-3) Divide downward into , and For each component divided downward, return to step 5-2) respectively; If each component satisfies the discrimination condition, then is the sum of each component and is considered to be able to characterize the length of the curve segment; Otherwise, each component returns to step 5-3) respectively, and continues to divide downward until all components meet the discrimination conditions.
4. The industrial robot trajectory planning method for a spatial surface according to claim 1, wherein The specific content of step 3) is as follows: Substitute the curve u value corresponding to the trajectory point U j, into the first derivative expression of the B-spline curve to obtain the tangent direction of the B-spline curve; At each trajectory point, create a plane perpendicular to the tangent direction of the B-spline curve; Extract the feature points of the intersection line of the plane and the spatial curved surface, obtain the feature point closest to the trajectory point, and obtain the normal direction of the feature point on the spatial curved surface to which it belongs; Obtain the attitude of the trajectory point through orthogonal calculation.
5. The industrial robot trajectory planning method for a spatial curved surface according to claim 1, characterized in that, Step 3) includes the following steps: 8-1) Substitute the sequence of curve u values corresponding to the trajectory points, u ={ U 0 , U 1 , U 2 ,…} into the first derivative formula of the curve to obtain the tangent direction of the curve at this point, denoted as ; 8-2) Pass through the trajectory point to establish a plane perpendicular to ; Extract the intersection feature points of this plane and the spatial surface, calculate the straight-line distance between the feature points and the trajectory point, and screen out the feature point closest to the trajectory point. The normal direction of this feature point is denoted as ; Perform orthogonal calculation according to , to obtain , and then according to obtain the that meets the orthogonality: ; ; 8-4) Assigning Attitudes to Trajectory Points: The X direction of the trajectory point is , the Y direction of the trajectory point is , and the Z direction of the trajectory point is .
6. The industrial robot trajectory planning method for a spatial surface according to claim 1, wherein, It also includes the following steps: Calibrate the relative positions of the robot simulation model and the workpiece model in the three-dimensional simulation environment to simulate the real relative positions of the robot and the workpiece in reality; Conduct simulation detection on the robot simulation model and the workpiece model to adjust the real positions of the robot and the workpiece in reality; Post-process the robot executable program and send it to the real robot controller to realize the spatial curve trajectory planning of the robot.
7. An industrial robot trajectory planning device for a spatial surface, characterized in that, It includes a memory and a processor; the memory is used to store a computer program; the processor is used to, when executing the computer program, implement an industrial robot trajectory planning method for a spatial curved surface as described in any one of claims 1-6.
Citation Information
Patent Citations
Method for achieving industrial robot off-line programming based on three-dimensional modeling software
CN103085072A