Unmanned mechanical arm motion path generation method and device based on B spline curve
By using four non-uniform B-spline curves in the unmanned robotic arm motion path planning, the problem of generating robotic arm motion paths in complex environments is solved, and more stable and efficient motion control is achieved.
Patent Information
- Application Number
- CN202510214066.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-26
- Publication Date
- 2025-03-25
- Estimated Expiration
- 2045-02-26
AI Technical Summary
The prior art is difficult to quickly generate unmanned robotic arm movement paths that meet complex environmental requirements, resulting in shaking and bumping of the robotic arm movement when avoiding obstacles or changing the direction of travel, and the control difficulty and wear level increase.
Using a method based on B-spline curve, four non-uniform B-spline curves are calculated and generated by adjusting the control point position coordinates and node vectors, which are used to characterize the motion path of the unmanned robotic arm. This method calculates the coordinate value of the sampling point through the basic matrix formula, reduces the calculation amount and improves the generation efficiency.
The motion path generated by four non-uniform B-splines can avoid sharp points and inflection points, maintain balance and stability of the movement of the robotic arm, reduce control difficulty and wear, and improve path generation efficiency.
Smart Images

Figure CN119681913A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a method for generating a motion path of an unmanned robotic arm, and in particular to a method and a device for generating a motion path of an unmanned robotic arm based on a B-spline curve. Background Art
[0002] Non-uniform B-spline curve is an important parametric curve, which is widely used in geometric modeling, mechanical manufacturing, path planning and other fields. The currently commonly used non-uniform B-spline curves are quadratic (3rd order) and cubic (4th order) curves. According to the B-spline principle, as the order of B-spline increases, not only the amount of curve calculation increases significantly, but also the shape of the curve becomes more complex and changeable. Therefore, high-order curves above the fourth order (5th order) are less used. In recent years, with the increasing demand for applications such as unmanned robot arm motion path optimization, complex geometric shape construction, and high-dimensional data fitting, the high-order continuity and smoothness of the fourth-order and higher-order B-spline curves have become one of the research hotspots.
[0003] According to the B-spline theory, by adjusting the position coordinates of the control points and the node vectors, it is possible to generate piecewise continuous smooth curves, construct special shapes such as straight lines, tangents, and cusps, and effectively plan to avoid obstacles based on the properties of the convex hull. Therefore, in the motion path planning of unmanned robotic arms, uniform cubic (4th order) B-spline curves are usually used to generate motion paths. However, when avoiding obstacles or changing the direction of travel, in order to maintain the balance and stability of the unmanned robotic arm's movement, it is necessary to adjust the speed in time. When using cubic uniform B-spline curves for path planning, its acceleration is a linear function of the variable u, which is prone to cusps and inflection points, resulting in more obvious speed changes, causing the unmanned robotic arm to jitter and bump, especially when the speed is fast, there are many obstacles, and the travel space is narrow. The situation will become more frequent and may be superimposed and enhanced, increasing the control difficulty and wear of the unmanned robotic arm's movement. It can be seen from this that the existing methods are difficult to quickly and effectively generate the motion path of unmanned robotic arms in complex environments. Summary of the invention
[0004] The technical problem to be solved by the present invention is that the commonly used methods in the prior art are difficult to quickly generate an unmanned robotic arm motion path that meets the requirements of complex environments. In order to solve the above problem, the present invention provides an unmanned robotic arm motion path generation method and device based on B-spline curves.
[0005] The content of the present invention includes: In a first aspect, an embodiment of the present invention provides a method for generating a motion path of an unmanned robotic arm based on a B-spline curve, comprising: In order to make the motion path of the unmanned robot arm avoid surrounding obstacles or target objects, the coordinate values of the control points of the B-spline curve are obtained according to the convexity of the B-spline; Calculate a node vector based on the coordinate values of the control point; Based on the coordinate values of the plurality of control points and the node vectors, a quartic non-uniform B-spline base matrix formula is used to calculate and generate a quartic non-uniform B-spline curve, and the quartic non-uniform B-spline curve is used to characterize the motion path of the unmanned robotic arm.
[0006] Optionally, the step of calculating and generating a quartic non-uniform B-spline curve based on the coordinate values of the plurality of control points and the node vectors using a quartic non-uniform B-spline base matrix formula comprises: Initialization parameters ,index And the order ,in, , , , is the node vector, is the node vector nodes; implement The secondary coordinate values are calculated and obtained in turn. The coordinate values of the sampling points are used to generate a quartic non-uniform B-spline curve. is a positive integer, where The secondary coordinate value calculation includes: According to Parameters corresponding to the calculation of secondary coordinate values , at the node vector Search The node interval where the index is located is updated Satisfy , is less than or equal to A positive integer of ; The quartic non-uniform B-spline basis matrix formula is used to calculate The coordinate values of the corresponding sampling points; The first Parameters corresponding to the calculation of secondary coordinate values The value of is updated to ,in, , is the node vector nodes, is the number of control points.
[0007] Optionally, the quartic non-uniform B-spline basis matrix formula is used to calculate The coordinate values of the corresponding sampling points include: Calculate the value of each element in the basis matrix; based on calculate Base value; Will Multiply the basis values by the basis matrix to obtain basis function values; Calculate based on the coordinate values of the control points and the basis function values The coordinate values of the corresponding sampling points.
[0008] Optionally, the calculate Base values, including: The index The value of ; Calculate the base value : ; in, ; ; .
[0009] Optionally, the The basis function values are obtained by multiplying the basis values by the basis matrix, including: Calculate each The corresponding basis function value , ,in , , is the base value, is the basis matrix No. The element value of the row.
[0010] Optionally, the calculation based on the coordinate values of the control points and the basis function values The coordinate values of the corresponding sampling points include: Calculate each The corresponding coordinate value of the sampling point, ,in: ; ; in, , , is the horizontal coordinate value of the sampling point, is the ordinate value of the sampling point, is the basis function value, For the The horizontal coordinate value of the control point, For the The vertical coordinate value of the control point.
[0011] Optionally, before using the quartic non-uniform B-spline basis matrix formula to calculate the coordinate values of the corresponding sampling points, the method further includes: The index The value of , The initial value of is 0; The quartic non-uniform B-spline basis matrix formula is used to calculate The coordinate values of the corresponding sampling points include: In the index Not equal to In the case of The coordinate values of the corresponding sampling points.
[0012] In a second aspect, an embodiment of the present invention provides a device for generating a motion path of an unmanned robotic arm based on a B-spline curve, comprising: An acquisition module is used to obtain the coordinate values of the control points of the B-spline curve according to the convexity of the B-spline so that the motion path of the unmanned robot arm can avoid surrounding obstacles or target objects; A calculation module, used for calculating the node vector based on the coordinate value of the control point; A generation module is used to calculate and generate a quartic non-uniform B-spline curve based on the coordinate values of the multiple control points and the node vectors using a quartic non-uniform B-spline base matrix formula, wherein the quartic non-uniform B-spline curve is used to characterize the motion path of the unmanned robotic arm.
[0013] In a third aspect, an embodiment of the present invention provides an electronic device, comprising: a memory, a processor, and a program stored in the memory and executable on the processor; the processor is used to read the program in the memory to implement the steps in the method for generating a motion path of an unmanned robotic arm based on a B-spline curve as described in the first aspect.
[0014] In a fourth aspect, an embodiment of the present invention provides a readable storage medium for storing a program, which, when executed by a processor, implements the steps in the method for generating a motion path of an unmanned robotic arm based on a B-spline curve as described in the first aspect.
[0015] In an embodiment of the present invention, according to the convex hull of the B-spline, the coordinates of multiple control points of the corresponding B-spline curve are roughly obtained, thereby determining the coordinate values of the multiple control points; based on the coordinate values of the multiple control points, a parameterization method such as the chord length method or the centripetal method is used to calculate the node vector from the coordinate values of the control points; a four-order non-uniform B-spline curve is calculated and generated in sequence using the basis matrix method; the four-order non-uniform B-spline curve is used to characterize the motion path of the unmanned robotic arm. The beneficial effect of the present invention is that, on the one hand, the embodiment of the present invention characterizes the motion path of the unmanned robotic arm through a four-order non-uniform B-spline curve, which can avoid the occurrence of sharp points and inflection points in the planned path, so that the motion path of the unmanned robotic arm can better maintain balance and stability when avoiding obstacles or changing the direction of travel. On the other hand, compared with the prior art, the embodiment of the present invention greatly reduces the amount of calculation when drawing curves of the same quality, thereby improving the generation efficiency of the motion path of the unmanned robotic arm. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] Attached Figure 1 A flow chart of a method for generating a motion path of an unmanned robotic arm based on a B-spline curve provided in an embodiment of the present invention; Attached Figure 2 A schematic diagram of a device for generating a motion path of an unmanned robotic arm based on a B-spline curve provided in an embodiment of the present invention; Attached Figure 3 A schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0017] In the embodiments of the present application, the term "and / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B may represent: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the objects associated before and after are in an "or" relationship. In the embodiments of the present application, the term "multiple" refers to two or more, and other quantifiers are similar. The terms "first", "second", etc. in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the terms used in this way can be interchangeable under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than those illustrated or described here, and the objects distinguished by "first" and "second" are generally of the same type, and the number of objects is not limited. For example, the first object can be one or more.
[0018] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0019] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of this application and are not intended to limit this application.
[0020] The following first describes the relevant concepts and contents involved in this application.
[0021] According to B-spline theory, a line consisting of Control Points Composed of Order non-uniform The spline curve can be expressed as: ; (1) Among them, the parameters , Defined at the node vector on B-spline basis functions of order .
[0022] Usually, the normalized Order non-uniform Spline basis functions The de Boor-Cox recursion formula can be defined as: ; (2) Any one Basis function can be represented as two adjacent Basis function and Thus, a quartic (5th order) non-uniform B-spline basis function Composed of two cubic (4th order) basis functions and is obtained by linear combination, and The one indicated The non-uniform B-spline curve of order is given by part It is composed of continuous smooth curves, and each curve All by Control Points controlled, .
[0023] Obviously, the above method can calculate the quartic (5th order) non-uniform B-spline curve by recursion. Sampling points The calculation amount of the non-uniform B-spline curve is ,along with As the number of increases, the amount of calculation will also increase accordingly, and the calculation efficiency is low and it is difficult to meet the real-time application.
[0024] Based on this, the embodiment of the present application provides a method and device for generating a motion path of an unmanned robotic arm based on a B-spline curve, aiming to quickly generate a motion path of an unmanned robotic arm that can meet the requirements of complex environments. Figure 1 , Figure 1 The present invention provides a flow chart of a method for generating a motion path of an unmanned robotic arm based on a B-spline curve. The method specifically includes the following steps: Step 101 : To enable the motion path of the unmanned robot arm to avoid surrounding obstacles or target objects, the coordinate values of the control points of the B-spline curve are obtained according to the convexity of the B-spline.
[0025] Step 102: Calculate the node vector based on the coordinate values of the control point.
[0026] Step 103: Based on the coordinate values of the plurality of control points and the node vectors, a quartic non-uniform B-spline base matrix formula is used to calculate and generate a quartic non-uniform B-spline curve, wherein the quartic non-uniform B-spline curve is used to characterize the motion path of the unmanned robotic arm.
[0027] In step 102, the node vector is calculated based on the coordinate values of the control points. Specifically, the node vector can be determined according to the actual situation. In the application of unmanned manipulator motion path planning, a rough route of the unmanned manipulator motion and the coordinate values of several control points are usually obtained according to the scene space, obstacles, and target objects, and then the node vector can be calculated using a parameterized method such as a uniform method, a centripetal method, or a chord length method, and the specific calculation method is not limited here.
[0028] Exemplarily, in some embodiments, the number of control points is , so we can get the control point In specific implementation, the number and coordinates of the control points can be determined according to the actual situation and the unmanned robot arm motion path planning goal, and the specific determination method is not limited here.
[0029] According to the definition of B-spline, a certain segment of non-uniform B-spline curve points is determined only by its corresponding control points. Therefore, in step 103, the current segment of B-spline curve is calculated based on the control points and their corresponding node vector values, and the calculation of each curve point is obtained by matrix multiplication. Optionally, in some embodiments, step 103 includes: Initialization parameters ,index And the order ,in, , , , is the node vector, is the node vector nodes; implement The secondary coordinate values are calculated and obtained in turn. The coordinate values of the sampling points are used to generate a quartic non-uniform B-spline curve. is a positive integer, where The secondary coordinate value calculation includes: According to Parameters corresponding to the calculation of secondary coordinate values , at the node vector Medium investigation Find the node interval and update the index Satisfy , is less than or equal to A positive integer of ; The corresponding Coordinate values of sampling points; The first Parameters corresponding to the calculation of secondary coordinate values The value of is updated to ,in, , is the node vector nodes, is the number of control points.
[0030] Optionally, in some embodiments, the use of a quartic non-uniform B-spline basis matrix formula to calculate the coordinate values of the corresponding sampling points includes: Calculate the value of each element in the basis matrix; based on calculate Base value; Will Multiply the basis values by the basis matrix to obtain basis function values; Calculate based on the coordinate values of the control points and the basis function values The coordinate values of the corresponding sampling points.
[0031] First, based on the definition of B-spline, the formula of the quartic non-uniform B-spline basis matrix is derived: From the B-spline theory, we know that for a segment consisting of Control Points Composed of Non-uniform spline curve , which can be expressed in matrix form as: .
[0032] in, , .
[0033] ; in, It is called non-uniform The recursive basis matrix of the spline function, Constitute a power basis.
[0034] For the quartic (5th order) basis matrix , , , From equation (2), we can deduce the fourth-order (fifth-order) non-uniform The basis matrix of the spline is: ; The parameters are as follows: ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; .
[0035] For uniform B-splines, whose nodes are equidistantly distributed, the formula for the quartic (5th order) uniform B-spline basis matrix is as follows: ; According to the piecewise Bessel ( ) curve and the uniform B-spline curve, let the 5th order The knot vectors of the spline are ,but , Therefore, the basis matrix formula of the 5th-order Bezier curve can be deduced as follows: ; According to the above content, it can be seen that the quartic uniform B-spline curve and the quartic Bezier curve can be regarded as two special cases of the quartic non-uniform B-spline curve. The method provided by the embodiment of the present invention can also generate quartic uniform B-spline curves and quartic Bezier curves, thereby characterizing more diverse and complex unmanned robotic arm motion paths.
[0036] Optionally, in some embodiments, the step of calculating a basis value comprises: The index The value of ; Calculate the base value : ; in, ; ; .
[0037] In specific implementation, the above method can be implemented through the following algorithm: ; Optionally, in some embodiments, the The basis function values are obtained by multiplying the basis values by the basis matrix, including: Calculate each The corresponding basis function value , ,in , , is the base value, is the element value of the th row of the basis matrix.
[0038] In specific implementation, the above method can be implemented through the following algorithm: Optionally, in some embodiments, the calculation based on the coordinate values of the control points and the basis function values The coordinate values of the corresponding sampling points include: Calculate each The corresponding coordinate value of the sampling point, ,in: ; ; in , , is the horizontal coordinate value of the sampling point, is the ordinate value of the sampling point, is the basis function value, For the The horizontal coordinate value of the control point, For the The vertical coordinate value of the control point.
[0039] In specific implementation, the above method can be implemented through the following algorithm:
[0040] Optionally, in some embodiments, before using the quartic non-uniform B-spline basis matrix formula to calculate the coordinate values of the corresponding sampling points, the method further includes: The index The value of , The initial value of is 0; The quartic non-uniform B-spline basis matrix formula is used to calculate The coordinate values of the corresponding sampling points include: In the index Not equal to In the case of The coordinate values of the corresponding sampling points.
[0041] In this embodiment, only in the index Not equal to In the case of The coordinate value of the corresponding sampling point. equal In this case, there is no need to repeat the calculation, which further reduces the amount of calculation.
[0042] As a specific embodiment, the method provided by the embodiment of the present invention can be implemented by the following algorithm: The coordinate value, order , node vector ,node , the number of sampling points , output 5th order non-uniform The coordinate values of all sampling points of the spline curve. The specific process is as follows:
[0043] The specific method of using the basis matrix to calculate the coordinates of the sampling points of the B-spline curve is as follows:
[0044] According to the above content, for Sampling points The method provided in the embodiment of the present application is used to generate a quartic non-uniform B-spline curve, and the calculation amount is , which is much smaller than the de Boor-Cox recursion formula commonly used in the prior art. Moreover, the more sampling points are drawn, the more obvious the time performance advantage of the method provided by the embodiment of the present application is. Similarly, this conclusion also holds true for drawing quartic (5th order) uniform B-spline curves and quartic (5th order) Bezier curves. Compared with the commonly used cubic (4th order) B-spline curves, the quartic B-spline curve can convert the motion acceleration of the unmanned robot arm from a variable The linear function is adjusted to a quadratic function, making the robot arm more stable and safer when changing speed. In addition, compared with the deBoor-Cox method, the basis matrix method can reduce the computational time.
[0045] It should be understood that, in specific implementation, since surface drawing can be regarded as curve drawing in two perpendicular directions of the x-axis and the y-axis, the method of the present invention can also be used to draw quartic uniform / non-uniform B-spline surfaces and quartic (5th order) Bezier surfaces.
[0046] See also Figure 2 The embodiment of the present invention further provides a B-spline curve-based unmanned manipulator motion path generation device 200, comprising: An acquisition module 201 is used to obtain the coordinate values of the control points of the B-spline curve according to the convex hull of the B-spline so that the motion path of the unmanned robot arm can avoid surrounding obstacles or target objects; A calculation module 202, configured to calculate a node vector based on the coordinate values of the control points; The generating module 203 is used to calculate and generate a quartic non-uniform B-spline curve based on the coordinate values of the multiple control points and the node vectors using a quartic non-uniform B-spline base matrix formula, wherein the quartic non-uniform B-spline curve is used to characterize the motion path of the unmanned robotic arm.
[0047] Optionally, the second calculation module 203 includes: Initialization unit, used to initialize parameters ,index And the order ,in, , , , is the node vector, is the node vector nodes; Coordinate value calculation unit, used to perform The secondary coordinate values are calculated and obtained in turn. The coordinate values of the sampling points are obtained and a quartic non-uniform B-spline curve is generated. is a positive integer, where The secondary coordinate value calculation includes: According to Parameters corresponding to the calculation of secondary coordinate values , at the node vector Search The node interval where the index is located is updated Satisfy , is less than or equal to A positive integer of ; The coordinate values of the corresponding sampling points are calculated using the quartic non-uniform B-spline basis matrix formula; The first Parameters corresponding to the calculation of secondary coordinate values The value of is updated to ,in, , is the node vector nodes, is the number of control points.
[0048] Optionally, the quartic non-uniform B-spline basis matrix formula is used to calculate The coordinate values of the corresponding sampling points include: Calculate the value of each element in the basis matrix; based on calculate Base value; Will Multiply the basis values by the basis matrix to obtain basis function values; The coordinate values of the corresponding sampling points are calculated based on the coordinate values of the control points and the basis function values.
[0049] Optionally, the calculate Base values, including: The index The value of ; Calculate the base value : ; in, ; ; .
[0050] Optionally, the The basis function values are obtained by multiplying the basis values by the basis matrix, including: Calculate each The corresponding basis function value , ,in, , , is the base value, is the basis matrix No. The element value of the row.
[0051] Optionally, the calculation based on the coordinate values of the control points and the basis function values The coordinate values of the corresponding sampling points include: Calculate each The corresponding coordinate value of the sampling point, ,in: ; ; in, , , is the horizontal coordinate value of the sampling point, is the ordinate value of the sampling point, is the basis function value, For the The horizontal coordinate value of the control point, For the The vertical coordinate value of the control point.
[0052] Optionally, the quartic non-uniform B-spline basis matrix formula is used to calculate Before the coordinate value of the corresponding sampling point, the method further includes: The index The value of , The initial value of is 0; The quartic non-uniform B-spline basis matrix formula is used to calculate The coordinate values of the corresponding sampling points include: In the index Not equal to In the case of The coordinate values of the corresponding sampling points.
[0053] The unmanned robotic arm motion path generation device 200 based on B-spline curves provided in the embodiment of the present application can execute the above method embodiment, and its implementation principle and technical effects are similar, which will not be repeated in this embodiment.
[0054] It should be noted that the division of units in the embodiments of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation. In addition, each functional unit in each embodiment of the present application may be integrated into a processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0055] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a processor-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions to enable a computer device (which can be a personal computer, server, or network device, etc.) or a processor (processor) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), disk or optical disk and other media that can store program codes.
[0056] like Figure 3 As shown, an embodiment of the present application provides an electronic device 300, including: a memory 302, a processor 301, and a program stored in the memory 302 and executable on the processor 301; the processor 301 is used to read the program in the memory 302 to implement the steps in the method for generating a motion path of an unmanned robotic arm based on a B-spline curve as described above.
[0057] An embodiment of the present application also provides a readable storage medium, on which a program is stored. When the program is executed by a processor, the various processes of the above-mentioned unmanned robotic arm motion path generation method based on B-spline curves are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here. Among them, the readable storage medium can be any available medium or data storage device that can be accessed by the processor, including but not limited to magnetic storage (such as floppy disk, hard disk, magnetic tape, magneto-optical disk (MO), etc.), optical storage (such as compact disk (CD), digital video disk (DVD), Blu-ray Disc (BD), high-definition versatile disc (HVD), etc.), and semiconductor memory (such as read-only memory (ROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read only memory (EEPROM), non-volatile memory (NAND FLASH), solid-state drive (Solid State Disk or Solid State Drive, SSD)), etc.
[0058] It should be noted that, in this article, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprises a ..." does not exclude the existence of other identical elements in the process, method, article or device including the element.
[0059] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, disk, CD), and includes a number of instructions for a terminal (which can be a mobile phone, computer, server, air conditioner, or network equipment, etc.) to execute the methods described in each embodiment of the present application.
[0060] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present application, ordinary technicians in this field can also make many forms without departing from the purpose of the present application and the scope of protection of the claims, all of which are within the protection of the present application.
Claims
1. A method for generating a motion path of an unmanned robot arm based on a B-spline curve, characterized in that: include: In order to make the motion path of the unmanned robot arm avoid surrounding obstacles or target objects, the coordinate values of the control points of the B-spline curve are obtained according to the convexity of the B-spline; Calculate a node vector based on the coordinate values of the control point; Based on the coordinate values of the plurality of control points and the node vectors, a quartic non-uniform B-spline base matrix formula is used to calculate and generate a quartic non-uniform B-spline curve, and the quartic non-uniform B-spline curve is used to characterize the motion path of the unmanned robotic arm.
2. The method according to claim 1, characterized in that: The method of calculating and generating a quartic non-uniform B-spline curve based on the coordinate values of the plurality of control points and the node vectors using a quartic non-uniform B-spline base matrix formula includes: Initialization parameters ,index And the order ,in, , , , is the node vector, is the node vector nodes; implement The secondary coordinate values are calculated and obtained in turn. The coordinate values of the sampling points are used to generate a quartic non-uniform B-spline curve. is a positive integer, where The secondary coordinate value calculation includes: According to Parameters corresponding to the calculation of secondary coordinate values , at the node vector Search The node interval where the index is located is updated Satisfy , is less than or equal to A positive integer of ; The coordinate values of the corresponding sampling points are calculated using the quartic non-uniform B-spline basis matrix formula; The first Parameters corresponding to the calculation of secondary coordinate values The value of is updated to ,in , is the node vector nodes, is the number of control points.
3. The method according to claim 2, characterized in that: The quartic non-uniform B-spline basis matrix formula is used to calculate The coordinate values of the corresponding sampling points include: Calculate the value of each element in the basis matrix; based on calculate Base value; Will Multiply the basis values by the basis matrix to obtain basis function values; Calculate based on the coordinate values of the control points and the basis function values The coordinate values of the corresponding sampling points.
4. The method according to claim 3, characterized in that: The basis calculate Base values include: The index The value of ; Calculate the base value : ; in, ; ; .
5. The method according to claim 3, characterized in that: The The basis function values are obtained by multiplying the basis values by the basis matrix, including: Calculate each The corresponding basis function value , ,in , , is the base value, is the basis matrix No. The element value of the row.
6. The method according to claim 3, characterized in that: The calculation based on the coordinate value of the control point and the basis function value The coordinate values of the corresponding sampling points include: calculate The coordinate value of each corresponding sampling point, ,in: ; ; in, , , is the horizontal coordinate value of the sampling point, is the ordinate value of the sampling point, is the basis function value, For the The horizontal coordinate value of the control point, For the The vertical coordinate value of the control point.
7. The method according to claim 3, characterized in that: The quartic non-uniform B-spline basis matrix formula is used to calculate Before the coordinate value of the corresponding sampling point, the method further includes: The index The value of , The initial value of is 0; The quartic non-uniform B-spline basis matrix formula is used to calculate The coordinate values of the corresponding sampling points include: In the index Not equal to In the case of The coordinate values of the corresponding sampling points.
8. A device for generating motion paths of unmanned manipulators based on B-spline curves, characterized in that: include: An acquisition module is used to obtain the coordinate values of the control points of the B-spline curve according to the convexity of the B-spline so that the motion path of the unmanned robot arm can avoid surrounding obstacles or target objects; A calculation module, used for calculating the node vector based on the coordinate value of the control point; A generation module is used to calculate and generate a quartic non-uniform B-spline curve based on the coordinate values of the multiple control points and the node vectors using a quartic non-uniform B-spline base matrix formula, wherein the quartic non-uniform B-spline curve is used to characterize the motion path of the unmanned robotic arm.
9. An electronic device, comprising: A memory, a processor, and a program stored in the memory and executable on the processor; wherein the processor is used to read the program in the memory to implement the steps in the method for generating a motion path of an unmanned robotic arm based on a B-spline curve as described in any one of claims 1 to 7.
10. A readable storage medium for storing a program, characterized in that: When the program is executed by a processor, the steps in the method for generating a motion path of an unmanned robotic arm based on a B-spline curve are implemented as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Mechanical arm path planning method
CN113084811A
B spline curve-based path planning method, motion control method and system
CN113835423A
Path planning method for six-degree-of-freedom mechanical arm to grab complex parts
CN117047776A
Mechanical arm tail end track planning method for autonomous spraying
CN118927255A
Robot spraying track optimization method based on seven non-uniform B-spline curves
CN118990514A