CN117075617B - Robot track planning method and device, storage medium and electronic equipment - Google Patents

Robot track planning method and device, storage medium and electronic equipment Download PDF

Info

Publication number
CN117075617B
CN117075617B CN202311316542.5A CN202311316542A CN117075617B CN 117075617 B CN117075617 B CN 117075617B CN 202311316542 A CN202311316542 A CN 202311316542A CN 117075617 B CN117075617 B CN 117075617B
Authority
CN
China
Prior art keywords
robot
speed
sequences
point
path
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311316542.5A
Other languages
Chinese (zh)
Other versions
CN117075617A (en
Inventor
侯人鸾
胡春明
于晓龙
谷宁波
郭昱亮
佟琨
韩冰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Innovation Research Institute of Beihang University
Original Assignee
Hangzhou Innovation Research Institute of Beihang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Innovation Research Institute of Beihang University filed Critical Hangzhou Innovation Research Institute of Beihang University
Priority to CN202311316542.5A priority Critical patent/CN117075617B/en
Publication of CN117075617A publication Critical patent/CN117075617A/en
Application granted granted Critical
Publication of CN117075617B publication Critical patent/CN117075617B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

The application provides a robot track planning method, a robot track planning device, a storage medium and electronic equipment, and relates to the field of automatic control. The electronic equipment acquires an end motion path of the end of the robot; iterating out the expected speed of each discrete point in the tail end motion path through the neural network model; and determining the joint movement track of the robot joint space according to the expected speed of each discrete point. Compared with the prior art, the objective function and the boundary condition in the method do not need to meet strict mathematical forms, so that the optimal solving difficulty is reduced, and the effective convergence of a solving result can be ensured.

Description

Robot track planning method and device, storage medium and electronic equipment
Technical Field
The present invention relates to the field of automatic control, and in particular, to a robot trajectory planning method, a device, a storage medium, and an electronic apparatus.
Background
In robot trajectory planning, we often need to plan the motion trajectory of the robot by an optimization method to meet specific task requirements. This optimization problem involves minimizing certain performance metrics (such as time, energy consumption, or motion smoothness) under given constraints. However, conventional optimization solutions tend to become difficult because these optimization problems often have complex non-convex characteristics.
For example, in multi-axis robot trajectory run-time optimization planning, one common approach is to build a time-minimized objective function that combines robot kinematics and dynamics constraints to solve for trajectory speed. To solve this problem, it is often necessary to use existing optimization solver packages, such as Yalmip and CPLEX, and the like. However, these software requirements for objective functions and boundary conditions are very stringent, and convex optimization, linear programming or quadratic programming forms, even second order cone programming forms, must be met, otherwise viable solutions may not be available.
However, since multiaxial robot kinematics and kinetic parameter boundary conditions are often inequality constraints of higher order coupling forms, this makes the original objective functions and constraints unsatisfactory for a strict mathematical solution form. Therefore, under the condition of multiple constraints, it is a challenging task to obtain an effective solution to the problem of optimizing the motion trajectory of the robot.
Disclosure of Invention
In order to overcome at least one defect in the prior art, the application provides a robot track planning method, a device, a storage medium and electronic equipment, which specifically comprise the following steps:
in a first aspect, the present application provides a method for planning a robot trajectory, the method comprising:
Acquiring a tail end motion path of the tail end of the robot;
iterating out the expected speed of each discrete point in the tail end motion path through a neural network model;
and determining the joint motion track of the robot joint space according to the expected speed of each discrete point.
With reference to the optional implementation manner of the first aspect, the iterating, through a neural network model, the expected speed of each discrete point of the end motion path includes:
acquiring a plurality of groups of speed sequences and a plurality of groups of weight sequences, wherein each group of speed sequences comprises a speed to be optimized of each discrete point in the tail end motion path, and each group of weight sequences comprises a plurality of weights to be optimized of the neural network model;
and according to the multiple groups of speed sequences and the multiple groups of weight sequences, the following multiple iterations are performed until the shortest time spent by moving along the tail end movement path tends to be stable, and the speed sequence corresponding to the shortest time is determined as the expected speed of each discrete point of the tail end movement path:
calculating the multiple groups of speed sequences through the neural network model initialized by each group of weight sequences to obtain multiple groups of first speed sequences;
adjusting the multiple groups of first speed sequences through the multiple groups of speed sequences to obtain multiple groups of new speed sequences;
And updating the multiple groups of weight sequences according to the optimal weight sequences in the multiple groups of weight sequences to obtain multiple groups of new weight sequences.
With reference to the optional implementation manner of the first aspect, updating the multiple sets of velocity sequences based on the operation result of the neural network model initialized by each set of weight sequences on the multiple sets of velocity sequences to obtain multiple sets of new velocity sequences includes:
the multiple groups of speed sequences are operated through the neural network model initialized by each group of weight sequences, and the expression of the multiple groups of first speed sequences is obtained as follows:
in the method, in the process of the invention,indicate->Group first speed sequence,/->Represents the number of iterations, +.>Indicate->Group speed sequence,/->Indicate->Group weight sequence,/->Representing the total number of each of the plurality of sets of velocity sequences and the plurality of sets of weight sequences;
adjusting the multiple groups of first speed sequences through the multiple groups of speed sequences to obtain multiple groups of new speed sequences, wherein the expression is as follows:
in the method, in the process of the invention,indicate->New velocity sequence,/-group>Indicate->Group second speed sequence,/->Representing an optimal speed sequence of said sets of speed sequences, said optimal speed sequence being capable of minimizing the time taken for movement along said end movement path,/- >Representation range->Random numbers within.
With reference to the optional implementation manner of the first aspect, the updating the multiple sets of weight sequences according to the optimal weight sequence in the multiple sets of weight sequences obtains an expression of multiple sets of new weight sequences as follows:
in the method, in the process of the invention,indicate->New set of weight sequences,/->Indicate->A sequence of group weights that is selected from the group consisting of,representing the optimal weight sequence,/->Representation range->In the inner partA random number.
With reference to the optional implementation manner of the first aspect, the acquiring a tip motion path of a robot tip includes:
determining at least one target obstacle in the robot working space, wherein a connecting straight line between a starting point and an ending point of the tail end of the robot needs to pass through the position of the target obstacle;
determining obstacle avoidance key points corresponding to each target obstacle according to the position of each target obstacle, wherein the obstacle avoidance key points avoid the positions of the corresponding target obstacles;
and planning a smooth curve from the starting point to the end point and passing through each obstacle avoidance key point as the tail end motion path.
With reference to the optional implementation manner of the first aspect, the planning a smooth curve from the starting point to the ending point and passing through the obstacle avoidance key point as the end motion path includes:
Acquiring a constraint relation for path planning;
fitting a smooth curve from the starting point to the end point and passing through the obstacle avoidance key points through a high-order smooth Bezier curve according to the starting point, the end point, the obstacle avoidance key points and the constraint relation;
the smooth curve is taken as the end motion path.
With reference to the optional implementation manner of the first aspect, the determining an articulation trajectory of the robot joint space according to the desired speed of each discrete point includes:
for a starting path close to the starting point and an ending path close to the ending point of the ending motion path, fitting an articulation track of the robot articulation space through a first polynomial according to expected speeds of discrete points in the starting path;
fitting an articulation locus of the robot articulation space by the first polynomial according to the desired velocity of each discrete point in the end path;
and for the residual path of the tail end motion path, fitting the joint motion track of the robot joint space through a second polynomial according to the expected speed of each discrete point of the residual path, wherein the order of the first polynomial is higher than that of the second polynomial.
In a second aspect, the present application provides a robot trajectory planning device, the device comprising:
the tail end path module is used for acquiring a tail end motion path of the tail end of the robot;
the speed planning module is used for iterating out the expected speed of each discrete point in the tail end motion path through the neural network model;
and the joint track module is used for determining the joint motion track of the robot joint space according to the expected speed of each discrete point.
With reference to the optional implementation manner of the second aspect, the speed planning module is further specifically configured to:
acquiring a plurality of groups of speed sequences and a plurality of groups of weight sequences, wherein each group of speed sequences comprises a speed to be optimized of each discrete point in the tail end motion path, and each group of weight sequences comprises a plurality of weights to be optimized of the neural network model;
and according to the multiple groups of speed sequences and the multiple groups of weight sequences, the following multiple iterations are performed until the shortest time spent by moving along the tail end movement path tends to be stable, and the speed sequence corresponding to the shortest time is determined as the expected speed of each discrete point of the tail end movement path:
calculating the multiple groups of speed sequences through the neural network model initialized by each group of weight sequences to obtain multiple groups of first speed sequences;
Adjusting the multiple groups of first speed sequences through the multiple groups of speed sequences to obtain multiple groups of new speed sequences;
and updating the multiple groups of weight sequences according to the optimal weight sequences in the multiple groups of weight sequences to obtain multiple groups of new weight sequences.
With reference to the optional implementation manner of the second aspect, the speed planning module is further specifically configured to:
the multiple groups of speed sequences are operated through the neural network model initialized by each group of weight sequences, and the expression of the multiple groups of first speed sequences is obtained as follows:
in the method, in the process of the invention,indicate->Group first speed sequence,/->Represents the number of iterations, +.>Indicate->Group speed sequence,/->Indicate->Group weight sequence,/->Representing the total number of each of the plurality of sets of velocity sequences and the plurality of sets of weight sequences;
adjusting the multiple groups of first speed sequences through the multiple groups of speed sequences to obtain multiple groups of new speed sequences, wherein the expression is as follows:
in the method, in the process of the invention,indicate->New velocity sequence,/-group>Indicate->Group second speed sequence,/->Representing an optimal speed sequence of said sets of speed sequences, said optimal speed sequence being capable of minimizing the time taken for movement along said end movement path,/- >Representation range->Random numbers within.
With reference to the optional implementation manner of the second aspect, the speed planning module is further specifically configured to:
in the method, in the process of the invention,indicate->New set of weight sequences,/->Indicate->A sequence of group weights that is selected from the group consisting of,representing the optimal weight sequence,/->Representation range->Random numbers within.
With reference to the optional implementation manner of the second aspect, the end path module is further specifically configured to:
determining at least one target obstacle in the robot working space, wherein a connecting straight line between a starting point and an ending point of the tail end of the robot needs to pass through the position of the target obstacle;
determining obstacle avoidance key points corresponding to each target obstacle according to the position of each target obstacle, wherein the obstacle avoidance key points avoid the positions of the corresponding target obstacles;
and planning a smooth curve from the starting point to the end point and passing through each obstacle avoidance key point as the tail end motion path.
With reference to the optional implementation manner of the second aspect, the end path module is further specifically configured to:
acquiring a constraint relation for path planning;
fitting a smooth curve from the starting point to the end point and passing through the obstacle avoidance key points through a high-order smooth Bezier curve according to the starting point, the end point, the obstacle avoidance key points and the constraint relation;
The smooth curve is taken as the end motion path.
With reference to the optional implementation manner of the second aspect, the joint track module is further specifically configured to:
for a starting path close to the starting point and an ending path close to the ending point of the ending motion path, fitting an articulation track of the robot articulation space through a first polynomial according to expected speeds of discrete points in the starting path;
fitting an articulation locus of the robot articulation space by the first polynomial according to the desired velocity of each discrete point in the end path;
and for the residual path of the tail end motion path, fitting the joint motion track of the robot joint space through a second polynomial according to the expected speed of each discrete point of the residual path, wherein the order of the first polynomial is higher than that of the second polynomial.
In a third aspect, the present application further provides a storage medium storing a computer program, where the computer program, when executed by a processor, implements the robot trajectory planning method.
In a fourth aspect, the present application further provides an electronic device, where the electronic device includes a processor and a memory, where the memory stores a computer program, and the computer program, when executed by the processor, implements the robot trajectory planning method.
Compared with the prior art, the application has the following beneficial effects:
the application provides a robot track planning method, a robot track planning device, a storage medium and electronic equipment. In the method, electronic equipment acquires an end motion path of the end of a robot; iterating out the expected speed of each discrete point in the tail end motion path through the neural network model; and determining the joint movement track of the robot joint space according to the expected speed of each discrete point. Compared with the prior art, the objective function and the boundary condition in the method do not need to meet strict mathematical forms, so that the optimal solving difficulty is reduced, and the effective convergence of a solving result can be ensured.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the embodiments will be briefly described below, it being understood that the following drawings only illustrate some embodiments of the present application and should not be considered limiting the scope, and that other related drawings can be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a flowchart of a robot trajectory planning method according to an embodiment of the present application;
fig. 2 is a mapping relationship diagram provided in an embodiment of the present application;
FIG. 3 is a diagram of the end motion path of a validation test provided by an embodiment of the present application;
FIG. 4 is a graph of a comparison of the speed of a validation test provided by an embodiment of the present application;
FIG. 5 is a graph of iteration number versus movement time for a verification test provided in an embodiment of the present application;
fig. 6 is a schematic structural diagram of a robot trajectory planning device according to an embodiment of the present application;
fig. 7 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Icon: a 101-end path module; 102-a speed planning module; 103-a joint track module; 201-a memory; 202-a processor; 203-a communication unit; 204-system bus.
Detailed Description
For the purposes of making the objects, technical solutions and advantages of the embodiments of the present application more clear, the technical solutions of the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is apparent that the described embodiments are some embodiments of the present application, but not all embodiments. The components of the embodiments of the present application, which are generally described and illustrated in the figures herein, may be arranged and designed in a wide variety of different configurations.
Thus, the following detailed description of the embodiments of the present application, as provided in the accompanying drawings, is not intended to limit the scope of the application, as claimed, but is merely representative of selected embodiments of the application. All other embodiments, which can be made by one of ordinary skill in the art based on the embodiments herein without making any inventive effort, are intended to be within the scope of the present application.
It should be noted that: like reference numerals and letters denote like items in the following figures, and thus once an item is defined in one figure, no further definition or explanation thereof is necessary in the following figures.
In the description of the present application, it should be noted that the terms "first," "second," "third," and the like are used merely to distinguish between descriptions and are not to be construed as indicating or implying relative importance. Furthermore, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
Based on the above statement, as introduced in the background, since multiaxial robot kinematics and kinetic parameter boundary conditions are usually inequality constraints of higher-order coupling forms, this makes the original objective functions and constraints unable to satisfy strict mathematical solution forms. Therefore, under the condition of multiple constraints, it is a challenging task to obtain an effective solution to the problem of optimizing the motion trajectory of the robot.
Based on the findings of the above technical problems, the inventors have devised the following technical solutions to solve or improve the above problems. It should be noted that the above drawbacks of the prior art solutions and solutions provided for them are the results of the inventor after practice and careful study, and therefore, the discovery process of the above problems and the solutions provided in the embodiments of the present application below for the above problems should be all contributions of the inventor to the present application during the inventive process, and should not be construed as technical matters known to those skilled in the art.
In view of the above, the present embodiment provides a robot trajectory planning method applied to an electronic device. In the method, electronic equipment acquires an end motion path of the end of a robot; iterating out the expected speed of each discrete point in the tail end motion path through the neural network model; and determining the joint movement track of the robot joint space according to the expected speed of each discrete point. Compared with the prior art, the objective function and the boundary condition in the method do not need to meet strict mathematical forms, so that the optimal solving difficulty is reduced, and the effective convergence of a solving result can be ensured.
The electronic device may be implemented as a host computer communicatively coupled to the multi-joint robot, and may be various types of devices, such as a mobile terminal, a tablet computer, a notebook computer, a desktop computer, or a server. The server may be a single server or a server group. The server group may be centralized or distributed. In some embodiments, the server may be local or remote to the user terminal. Further, the server may also be implemented by a cloud platform, which may include, for example, a private cloud, public cloud, hybrid cloud, community cloud, distributed cloud, cross-cloud, multi-cloud, etc., or any combination thereof. In some embodiments, the server may be implemented on an electronic device having one or more components. In addition, the electronic device may also be an embedded device integrated with the robot body. Of course, the electronic device may be another electronic device, and for these forms, the embodiment will not be described in detail.
In conjunction with the foregoing description of the embodiments, in order to make the present solution easier to understand, the method for planning a trajectory of a robot according to the present embodiment is described in detail below with reference to the flowchart of the method shown in fig. 1. It should be understood that the operations of the flow diagrams may be performed out of order and that steps that have no logical context may be performed in reverse order or concurrently. Moreover, one or more other operations may be added to the flow diagrams and one or more operations may be removed from the flow diagrams as directed by those skilled in the art. As shown in fig. 1, the method includes:
S101, acquiring an end motion path of the end of the robot.
Research shows that as the application scene of the industrial robot is gradually complex, a plurality of working procedures are required to be completed in a narrow operation area space in the process of executing tasks by the robot, so that the robot is extremely easy to collide and have safety accidents; in addition, practical production has high requirements on the running efficiency and smoothness of the robot. At present, the continuous running track of a robot to be solved is mainly converted into a discrete numerical iteration optimization problem by the industrial robot obstacle avoidance, and the shortest path formed by a plurality of obstacle avoidance discrete points is searched. However, in the prior art, continuous motion of a robot is decomposed into a plurality of intermittent motions divided by obstacle avoidance discrete points, the robot runs in a straight line path between two discrete points, and as the discrete points are randomly and optimally generated, under the condition of no smooth transition, the direction of a joint motion track vector can frequently change in a step mode, and when the angle of a joint of the robot changes at a high speed, the impact of the joint moment is serious, and an internal motor is easily damaged. Therefore, the robot needs to be decelerated at discrete points to relieve impact caused by adjustment of the joint angle direction, or the robot is decelerated to zero speed to pass through the points, so that the current robot obstacle avoidance operation efficiency is low due to the fact that the robot is started and stopped frequently, and then the operation time is excessively long.
For example, RRT is currently mainly used,Searching and finding obstacle avoidance path points by using methods such as an artificial potential field method and the like to obtain an obstacle avoidance path. When the robot performs multi-section linear motion through multiple points, a path for setting a turning radius transition angular point is generally adopted, and then a polynomial or S-shaped speed planning method is adopted to design the joint speed and acceleration of the robot during operation. Since the polynomial and S-type speed planning expression forms are fixed, the running time can be calculated according to the speed limit of the robot when the multi-axis speeds are designed at the same time, in order to enable the multi-axis synchronous motion, the axes of the whole running time need to be unified, the axes with too high speed need to be slowed down to match the slowest axis running, the maximum capacity of the axes of the robot can not be fully exerted, and the running efficiency of the robot is limited.
In view of this, the present embodiment provides the following alternative implementation of step S101:
s101-1, at least one target obstacle in the robot working space is determined.
Wherein a straight line connecting the start point and the end point of the robot end needs to pass through the position of the target obstacle. In contrast, the present embodimentBased on the depth camera of the multi-joint robot, acquiring the spatial position and posture information of the obstacle under the robot coordinate system. In a specific embodiment, firstly, a camera is calibrated by external parameters, and a world coordinate system where a calibration plate is positioned and a camera coordinate system conversion matrix are established
Then, according to the internal parameters such as the focal length and focal length coordinates of the camera and through affine transformation, obtaining the conversion relation between the image point in the pixel coordinate system of the sampled calibration plate image and the corresponding three-dimensional point in the camera coordinate system:
further, according to an external parameter calibration result, converting the three-dimensional point coordinates in the camera coordinate system into the world coordinate system where the calibration plate is located, and obtaining the corresponding relation between the image point of the image and the three-dimensional point in the world coordinate system:
in the above-mentioned expression, the expression,representing the coordinates of the image point in the image in the pixel coordinate system,/for example>As the focal length of the lens is,for the coordinates of the image point in the imaging plane coordinate system,/->Is the plane of origin coordinate of the imaging plane in the pixel coordinate directionShift amount (or->For rotating matrix +.>Is a translation matrix.
Based on the spatial transformation relation between the coordinate systems obtained in the implementation, the electronic equipment can obtain an object RGB-D image in a visible range through a depth camera, convert the depth image into an image containing three channels of horizontal parallax, ground clearance, local surface normal and gravity direction by adopting HHA (horizontal-axis-Angle) coding, input the image into an example segmentation network model based on an R-CNN deep learning method (for example, a Yolox algorithm), detect and identify an obstacle target, and obtain all image point coordinates in a two-dimensional boundary-box image of the obstacle boundary; finally, according to the transformation relationship between the two-dimensional image point of the image obtained in the embodiment and the three-dimensional point under the world coordinate system, three-dimensional data of the obstacle can be obtained. In this embodiment, for ease of computation, three dimensional AABB (Axis-Aligned Bounding Box, axis aligned bounding box) or OBB (Oriented Bounding Box, directed bounding box) is used to enclose all three dimensional points of the obstacle, thereby yielding a cube representation of the obstacle. Based on the three-dimensional AABB bounding box of the obstacle, the spatial position data of 8 vertexes of the obstacle bounding box can be obtained, an obstacle coordinate system is established, a transformation matrix of the obstacle bounding box under the world coordinate system is calculated, and the spatial attitude information of the obstacle is obtained.
Combining the spatial attitude information of the obstacle under the world coordinate system obtained by the embodiment, and converting the spatial attitude information of the obstacle under the world coordinate system into the robot coordinate system according to the pose conversion relation between the world coordinate system where the calibration vision calibration plate is positioned and the robot coordinate system:
it should be understood that the subsequent calculations in this embodiment are performed under the robot coordinate system, and thus, it is necessary to convert the data under the other coordinate systems to the unified robot coordinate system.
By the embodiment, the pose of all the obstacles in the working space in the robot coordinate system can be obtained. The electronic device further determines whether a connecting straight line between the start point and the end point of the robot end passes through a position where the obstacle in the working space is located. Specifically, a straight line connecting a start point and an end point of the robot end is expressed by an equation, and a straight line parameter equation can be expressed as:
in the method, in the process of the invention,、/>three-dimensional coordinates of the initial and final positions of the end position of the robot, respectively. In a specific embodiment, the electronic device is +.>、/>、/>、/>、/>Calculate line segment and plane->The intersection point is toxoyPosition of plane projection:
And plane surfaceIntersection point:
then, the electronic device judges that the projection coordinates of the intersection points with the two intersection points being relatively close to the absolute distance from the initial point areThe projection coordinate of the farther intersection point is +.>. The projection positions corresponding to the intersection points of the line segments and the other four surfaces are calculated by the same method、/>、/>、/>The method comprises the steps of carrying out a first treatment on the surface of the Finally, it is determined that the robot collides with the obstacle according to the following collision conditions:
in combination with the above collision condition, the colliding obstacle is referred to as a target obstacle, and based on the position of the target obstacle, step S101 further includes:
s101-3, determining obstacle avoidance key points corresponding to each target obstacle according to the position of each target obstacle.
Wherein, the obstacle avoidance key point avoids the position of the corresponding target obstacle. In order to avoid the obstacle avoidance key point from the position of the target obstacle, first, a plane near the start point of the machine end of the 6 planes is set as a projection plane based on the 6 planes of the bounding box of each target obstacle; then, calculating a projection point, namely a projection intersection point, of the end starting point of the robot on the projection surface; then, according to the projection intersection point of the starting point on the projection surface, the position of the tool clamped by the tail end of the offset robot in the normal direction of the projection surface is determined as an obstacle avoidance key point for avoiding the target obstacle.
Illustratively, assuming that the robot tip travel starts at (-0.57612 m, -0.65046m, 0.4638 m), the end point coordinates are (0.13115 m,0.63562m,0.18933 m), and the tip holding tool size offsets in the x, y, z directions are 0.197m, 0.130m, 0.23m, respectively. Thus, the coordinates of the critical obstacle avoidance points are (0.052669 m,0.492912, 0.682150) and (-0.163546 m,0.099752m, 0.682150), respectively.
It should be noted that, compared with the prior artAnd RRT-connect obstacle avoidance path search algorithm, the number of obstacle avoidance key points obtained by the embodiment is obviously reduced. Use->During the algorithm, the robot needs to bypass one side of the target obstacle to avoid the obstacle, and at least 7 obstacle avoidance points (the minimum search step length is 0.2 m) are needed besides a starting point and a finishing point in order to ensure that no interference exists between the robot end tool and the obstacle; however, the obstacle avoidance keypoints obtained in this example are located above the target obstacle, and by bypassing over the target obstacle, the number of obstacle avoidance keypoints is greatly reduced. In addition, the limit of interpolation inverse solution joint track of the robot when the robot executes the motion can be relieved while obstacle avoidance key points are reduced, and the occurrence of singular solutions is avoided to a certain extent. This is because more constraints increase the uniqueness of the joint trajectory solution, which can lead to unusable reversals if joint singularities are present And (5) de-substitution.
S101-4, planning a smooth curve from a starting point to an end point and passing through obstacle avoidance key points as an end motion path.
In an alternative embodiment, the electronic device may obtain a constraint relationship for path planning; fitting a smooth curve from the starting point to the end point and passing through the obstacle avoidance key points through a high-order smooth Bezier curve according to the starting point, the end point, the obstacle avoidance key points and the constraint relation; the smooth curve is taken as the end motion path.
The robot continuous tail end motion path can be obtained by adopting a high-order smooth Bezier curve and combining constraint relations to simulate the obstacle avoidance key points obtained in the embodiment based on a generalized Cartesian space obstacle avoidance geometric path of a high-order self-adaptive function. Wherein the end motion path of the robot can be defined by a series of spatial position coordinatesTo represent and fit the points by a geometric curve function (e.g., cubic Bezier curve or B-spline curve), which may be expressed as:
in the method, in the process of the invention,path argument for the end motion path without equivalent conversion, +.>、/>The obstacle avoidance key points representing the terminal motion paths can be obtained by the following formula:
It should be appreciated that when performing a higher order smooth Bezier curve fit to a Cartesian space path, control points are parameters describing the shape and path of the curve, the position and relative relationship of which determine the change in space of the curve. In the path optimization solving process, in order to improve fitting accuracy, a plurality of discrete points among obstacle avoidance key points are fitted in an interpolation mode on the basis of a given control point.
As shown in fig. 2, for convenience of description in this embodiment, the obstacle avoidance key points and the inserted discrete points are collectively represented asTo represent the firstlCoordinates of the discrete points. At the same time, in order to facilitate the subsequent implementation of the basis functions representing the trajectories in joint space, the equidistant distribution of the generalized trajectory curve parameters +.>Wherein->,/>The method comprises the steps of carrying out a first treatment on the surface of the And establishing discrete points distributed unevenly>Mapping relation between->. It can be understood that each equidistant distribution trace curve parameter +.>Corresponding to one actual discrete point in the tail end motion path, and mapping relation exists between the two points
The research shows that the higher-order polynomial can flexibly approach to the complex joint motion track, and higher representation capability is provided; in addition, a smooth and continuous motion track can be generated based on the fitting of a high-order polynomial, so that the stability and control precision of the robot motion process are ensured; finally, the higher order polynomial has good conductivity, and is convenient for calculating the derivative related parameters such as the speed, the acceleration and the like of the motion trail. For the reasons described above, for the joint motion trajectories of the robot joint space, fitting is often performed using a basis function based on a higher order polynomial. In the robot trajectory planning, it is desirable that the robot smoothly starts from the start point, moves at a certain speed and acceleration, and then smoothly reaches the end point. This requires a relatively gradual change in the speed and acceleration of the start and end points. Therefore, in this embodiment, different higher-order polynomials are respectively adopted as basis functions for the initial path adjacent to the start point, the end path adjacent to the end point, and the remaining paths in addition to the initial path, for fitting the trajectory of the robot joint space.
However, in practice it has been found that in the case of a plurality of trajectory basis functions of different forms, the higher order derivatives of adjacent trajectory functions may have abrupt changes at the junction points. In this embodiment, a preset high-adaptability smooth track interpolation method is provided, track basis function fitting is performed on track fragments by selecting discrete points with different numbers of adjacent points, unknown coefficients in functions are required to be solved, the obtained function form is subjected to discontinuous point derivative solving, the position fitting deviation of the obtained track function at the discontinuous point and the difference value between left and right critical derivatives are smaller than a preset value, the number of selected fitting discrete points is determined, and finally, the basis function expression forms in all sections in the complete track are determined. The polynomial fitting coefficient in the above-mentioned basic function expression is a coefficient to be determined, and needs to be obtained by relying on the solved high-efficiency track, wherein the high-efficiency track represents the joint track with the shortest movement time required for moving from the starting point to the end point of the end movement path.
Based on the above embodiment, the end motion path of the obstacle in the working space is avoided, and in order to determine the solving manner of the efficient track, with continued reference to fig. 1, the robot track planning method provided in this embodiment further includes:
S102, iterating out the expected speed of each discrete point in the tail end motion path through the neural network model.
The above embodiment solves the end motion path of the end of the robot in the cartesian space, and the trajectory planning problem of the robot needs to know the joint motion trajectory of the robot in the joint space in addition to the end motion path of the robot. Wherein the joint motion track of the robot in the joint space is the motion path of the robot in the joint space, and describes the change condition of the position or angle of each joint along with the time change. The robot can change the target position or posture by controlling the joints to move according to the track so as to complete various tasks. Whereas the mapping between the velocity components of the cartesian space and the velocity components of the joint space can be expressed as Jacobian matrices:
in the method, in the process of the invention,representing Jacobian matrix,>representing the velocity component of the robot joint space,a translation velocity vector representing the robot along the cartesian axes x, y, z,is a rotational velocity vector of the robotic end effector about cartesian axes x, y, z.
Therefore, only the terminal speed of the robot at each discrete point of the terminal motion path is required to be solved, and the joint motion track between the discrete points can be expressed as a group of basis functions by using forward substitution of a high-order continuous predefined form, so that a basis is provided for displacement, speed and acceleration solving of the follow-up high-efficiency obstacle avoidance track. The basis functions herein refer to a set of functions for representing the trajectory of the robot joint motion. The shape of the robot articulation trajectory is generally approximately described in a predefined form that is continuous, conductive, and high-order (typically above 3 orders). By means of the basis functions, interpolation can be carried out between discrete points, and continuous joint motion tracks can be obtained. Taking a polynomial basis function as an example, the form is:
In the method, in the process of the invention,the isocenter is the unknown parameter to be solved>Indicating that the robot is at +.>Speed of time of day. By fitting or optimizing methods, the values of these parameters can be determined by minimizing the error between the trajectory and a given control point to obtain the best trajectory fitting result. There are many unknowns in the functions of the adaptive smooth fitting basis functions of the cartesian space path variables and the joint space trajectory, and the solving of these parameters is to obtain the best trajectory fitting and meet the motion requirements. By selecting proper optimization methods and algorithms, the unknown parameters can be efficiently solved, and the robot joint track planning result meeting specific requirements can be obtained.
Therefore, the desired velocity for each discrete point needs to be solved before solving the joint motion trajectories of the robot joint space. In this embodiment, for convenience of calculation, the end motion path is normalized, and the normalized end motion path is in lower caseThe representation is performed. Let->At the time, the tip of the robot is located at the start of the tip movement path,/->When the robot moves from the tail end to the tail end of the tail end movement path, the normalizing treatment is carried out on the tail end movement path to represent the ratio of the position of the robot currently positioned in the tail end movement path in the whole tail end movement path, so that the function relation between the normalized path and time is expressed as- >Then->When (I)>;/>When (I)>
In addition, the present embodiment introduces kinematic and dynamic constraints for the end and joints of the robot. Wherein, in terms of kinematic constraints, the corresponding speed limit constraint for each joint is expressed asWherein->And->The lower and upper limits of joint velocity are respectively. The acceleration limit constraint corresponding to each joint is expressed asWherein->Represents the lower limit of the defined range of variables, +.>Representing the upper limit of the range in which the variable is defined. Whereas the linear and angular speed constraints corresponding to the robotic end effector in Cartesian space are denoted +.>Wherein->Represents the lower limit of the linear velocity,/->Represents the upper limit of the linear velocity,/->Indicating the lower limit of the angular velocity,indicating an upper limit of the angular velocity.
In terms of dynamics, the dynamics constraint is described according to a dynamics equation after parameter identification, expressed as:
,/>
in the method, in the process of the invention,representing a quality matrix->An effect matrix representing coriolis force and centrifugal force, < +.>Representing the gravitational component>Representing viscous friction moment component +.>Representing the coulomb friction moment component,/->Representing the moment vector of the robot joint,/->The angle, angular velocity and angular acceleration variables of the joint are represented in turn.
In combination with the above constraint, it is necessary to minimize the time taken for the robot tip to travel from the start point to the end point, and based on the normalized tip movement path, the movement time can be expressed as
In combination with the description of the foregoing embodiment, in an optional implementation manner provided in this embodiment, step S102 includes:
s102-1, a plurality of groups of speed sequences and a plurality of groups of weight sequences are obtained.
Each group of velocity sequences comprises a velocity to be optimized of each discrete point in the tail end motion path, and each group of weight sequences comprises a plurality of weights to be optimized of the neural network model.
S102-2, according to a plurality of groups of speed sequences and a plurality of groups of weight sequences, the following rounds of iteration are performed until the shortest time spent by moving along the tail end movement path tends to be stable, and the speed sequence corresponding to the shortest time is determined as the expected speed of each discrete point of the tail end movement path:
s102-3, calculating a plurality of groups of speed sequences through the neural network model initialized by each group of weight sequences to obtain a plurality of groups of first speed sequences;
s102-4, adjusting a plurality of groups of first speed sequences through a plurality of groups of speed sequences to obtain a plurality of groups of new speed sequences.
S102-5, updating a plurality of groups of weight sequences according to the optimal weight sequences in the plurality of groups of weight sequences to obtain a plurality of groups of new weight sequences.
In order to solve for the desired speed of each discrete point of the end motion path, the time taken by the robot end from the start point to the end point is minimized under the constraints described above. In this embodiment, the shortest solution time problem is converted into a solutionA series of independent variables +.>Problems, wherein->Representing the number of discrete points +.>Indicate->The speed of the discrete points. For the convenience of description of the subsequent embodiments, the following will be +.>Denoted as->I.e. +.>. At this time, the normalized objective function of the Cartesian space path is expressed as +.>Wherein->Representing the distance between any two adjacent discrete points.
It should be noted that, the conventional neural network model training process includes inputting an input sample into the neural network model, and obtaining an output result through forward propagation calculation. The inverse gradient propagation algorithm is then used to adjust the weights of the neural network by comparing the difference between the output result and the desired result. And repeatedly calculating and adjusting the weight of the neural network through iterating the process, so that the output result of the network is gradually close to the expected result. That is, the input samples are not adjusted throughout the training process. In this embodiment, a plurality of sets of velocity sequences are input as input samples into a neural network model, and the plurality of sets of velocity sequences are iteratively adjusted through the neural network model, and a plurality of sets of weight sequences are iteratively adjusted until the expected velocity of each discrete point of the terminal motion path is obtained.
In the present embodiment, the plurality of sets of velocity sequences are represented as
Wherein,indicate->Group velocity sequence, comprising->The speed of random initialization of discrete points, in common +.>Group velocity sequence. For example, group 1 speed sequence +.>Is->
Representing multiple sets of weight sequences as
Wherein,indicate->Group weight sequence comprising->And a weight value. For example, group 1 weight sequence +.>The method comprises the following steps:
combining the expression modes of the speed sequences and the weight sequences, respectively calculating a plurality of groups of speed sequences through the neural network model initialized by each group of weight sequences to obtain a plurality of groups of expressions of the first speed sequences, wherein:
in the method, in the process of the invention,indicate->Group first speed sequence,/->Represents the number of iterations, +.>Indicate->Group speed sequence,/->Indicate->Group weight sequence,/->Representing the total number of each of the plurality of sets of velocity sequences and the plurality of sets of weight sequences;
adjusting a plurality of groups of first speed sequences through a plurality of groups of speed sequences, and obtaining the expression of a plurality of groups of new speed sequences as follows:
in the method, in the process of the invention,indicate->New velocity sequence,/-group>Indicate->Group second speed sequence,/->Representing an optimal speed sequence of the plurality of sets of speed sequences, the optimal speed sequence being capable of minimizing the time taken for movement along the end movement path, +. >Representation range->Random numbers within.
For the above embodiment, it is now assumed that there are currently 10 sets of weight sequences and10 sets of velocity sequences. Here the vector symbols are ignoredThe 10 sets of weight sequences are denoted +.>And 10 sets of velocity sequences are represented asIt means that 10 neural network models with the same structure but different weights can be obtained. 10 sets of velocity sequences using each neural network model separately +.>Processing, each neural network model obtaining a group of first speed sequences +.>. Then, the 10 sets of weight sequences currently input and the 10 sets of first speed sequences calculated are added in a one-to-one correspondence (e.g.)>And->Added) to obtain 10 sets of second speed sequences +.>
In this embodiment, random numbers are introduced to increase the search efficiencyThe method comprises the steps of carrying out a first treatment on the surface of the In addition, in order to avoid over fitting, the second speed sequences are respectively compared with the optimal sequences in the current 10 groups of speed sequences, and the original second speed sequences are finely adjusted according to the comparison result. Furthermore, assume the currently entered 10 sets of speed sequences +.>Middle group 3->Satisfying the above constraint and being able to move from the start point to the end point of the end movement path in the shortest time, will +. >As an optimal velocity sequence. Here, group 1 second speed sequence +.>For example, it is described how a new speed sequence of group 1 is obtained +.>
Thus, 10 new sets of velocity sequences can be obtained for the next iteration process to input the neural network model.
In the above embodiment, a speed sequence updating manner is described, and multiple sets of weight sequences are updated according to an optimal weight sequence in multiple sets of weight sequences, so as to obtain multiple sets of new weight sequences, where the expression is as follows:
in the method, in the process of the invention,indicate->New set of weight sequences,/->Indicate->A sequence of group weights that is selected from the group consisting of,representing the optimal weight sequence,/->Representation range->Random numbers within.
For the above embodiment, for ease of understanding, the current input 10 sets of speed sequences are assumed to continueMiddle group 3->The constraint condition is satisfied, and the motion from the starting point to the end point of the end motion path can be performed in the shortest time; the current 10 sets of weight sequences +.>Group 3 weight sequences in (3)As the optimal weight sequence. In group 1 weight sequence->For example, it is described how to obtain a new weight sequence of group 1 +.>
Thus, 10 new sets of weight sequences can be obtained for use as weights for the neural network model in the next iteration.
For the above embodiments, actual verification tests were also performed, and the test results verify the performance, effectiveness and feasibility of the above embodiments. As shown in fig. 3, the planned tip movement path in the actual working space is shown. Based on the end motion path, the optimal speed of each discrete point is solved by adopting a commercial software Yalmip optimization solver, and the optimal speed of each discrete point is solved by adopting the embodiment, and the comparison result of the two is shown in fig. 4. The abscissa in fig. 4 is the planned end motion path, the ordinate is the speed of each discrete point, and two curves in the graph can show that the optimal speed of the commercial software Yalmip optimization solver for solving each discrete point is basically consistent with the optimal speed of the embodiment for solving each discrete point. Fig. 5 shows the relationship between the iteration number and the shortest movement time of the neural network model, and it can be seen that as the iteration number increases, the shortest time for the robot end to move from the start point to the end point along the end movement path is stabilized, and as the iteration number increases, the shortest time is stabilized when the iteration number is greater than 330.
In the above embodiment, how to solve the expected speed of each discrete point is described, and with continued reference to fig. 1, the robot trajectory planning method further includes:
S103, determining the joint motion track of the robot joint space according to the expected speed of each discrete point.
In an alternative embodiment of step S103, for the starting path near the starting point and the ending path near the ending point of the ending motion path, fitting the joint motion trajectory of the robot joint space by the first polynomial according to the expected speed of each discrete point in the starting path; fitting the joint motion track of the robot joint space through a first polynomial according to the expected speed of each discrete point in the tail end path; and for the residual path of the tail end motion path, fitting the joint motion track of the robot joint space through a second polynomial according to the expected speed of each discrete point of the residual path, wherein the order of the first polynomial is higher than that of the second polynomial.
In this regard, it was found after the study that the third order polynomial function can meet the position and velocity requirements, but it cannot smoothly control the acceleration of the start point and the end point; the five-order polynomial function can meet the requirements of position, speed and acceleration, has additional degrees of freedom at the starting point and the ending point, can smoothly transition the speed and the acceleration of the initial section and the ending section of the robot, and avoids abrupt change. Thus, for the starting path near the start point and the ending path near the end motion path start point, a fifth order polynomial function is used for fitting, while for the remaining path of the end motion path, a third order polynomial function is used for fitting.
Based on the same inventive concept as the robot trajectory planning method provided in the present embodiment, the present embodiment also provides a robot trajectory planning device, which includes at least one software functional module that may be stored in a memory or cured in an electronic device in the form of software. The processor in the electronic device is configured to execute executable modules stored in the memory, such as software functional modules and computer programs included in the robot trajectory planning device. Referring to fig. 6, functionally divided, the robot trajectory planning device may include:
a terminal path module 101, configured to obtain a terminal motion path of a robot terminal;
a speed planning module 102, configured to iterate out a desired speed of each discrete point in the end motion path through the neural network model;
the joint trajectory module 103 is configured to determine a joint motion trajectory of the robot joint space according to the expected speed of each discrete point.
In this embodiment, the end path module 101 is used to implement step S101 in fig. 1, the speed planning module 102 is used to implement step S102 in fig. 1, and the joint track module 103 is used to implement step S103 in fig. 1. The detailed description of each module may refer to a specific implementation manner of the corresponding step, and this embodiment will not be described in detail. It should be noted that, since the method has the same inventive concept as the robot trajectory planning method in the above embodiment, it means that each module may also be used to implement other steps or sub-steps of the method, and the embodiment is not limited thereto specifically.
In addition, the functional modules in the embodiments of the present application may be integrated together to form a single part, or each module may exist alone, or two or more modules may be integrated to form a single part.
It should also be appreciated that the above embodiments, if implemented in the form of software functional modules and sold or used as a stand-alone product, may be stored on a computer readable storage medium. Based on such understanding, the technical solution of the present application may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution, in the form of a software product stored in a storage medium, including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in the embodiments of the present application.
Accordingly, the present embodiment also provides a computer-readable storage medium storing a computer program which, when executed by a processor, implements the robot trajectory planning method provided by the present embodiment. The computer readable storage medium may be any of various media capable of storing a program code, such as a usb (universal serial bus), a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, or an optical disk.
The embodiment provides an electronic device. As shown in fig. 7, the electronic device may include a processor 202 and a memory 201. The processor 202 and the memory 201 may communicate via a system bus 204. The memory 201 stores a computer program, and the processor reads and executes the computer program corresponding to the above embodiment in the memory 201, thereby realizing the robot trajectory planning method provided in the present embodiment.
With continued reference to fig. 7, in some embodiments, the electronic device further includes a communication unit 203. The memory 201, the processor 202, and the communication unit 203 are electrically connected to each other directly or indirectly through a system bus 204 to achieve data transmission or interaction.
The memory 201 may be an information recording device based on any electronic, magnetic, optical or other physical principle for recording execution instructions, data, etc. In some embodiments, the memory 201 may be, but is not limited to, volatile memory, non-volatile memory, storage drives, and the like.
In some embodiments, the volatile memory may be random access memory (Random Access Memory, RAM); in some embodiments, the non-volatile Memory may be Read Only Memory (ROM), programmable ROM (Programmable Read-Only Memory, PROM), erasable ROM (Erasable Programmable Read-Only Memory, EPROM), electrically erasable ROM (Electric Erasable Programmable Read-Only Memory, EEPROM), flash Memory, or the like; in some embodiments, the storage drive may be a magnetic disk drive, a solid state disk, any type of storage disk (e.g., optical disk, DVD, etc.), or a similar storage medium, or a combination thereof, etc.
The communication unit 203 is used for transmitting and receiving data through a network. In some embodiments, the network may include a wired network, a wireless network, a fiber optic network, a telecommunications network, an intranet, the internet, a local area network (Local Area Network, LAN), a wide area network (Wide Area Network, WAN), a wireless local area network (Wireless Local Area Networks, WLAN), a metropolitan area network (Metropolitan Area Network, MAN), a wide area network (Wide Area Network, WAN), a public switched telephone network (Public Switched Telephone Network, PSTN), a bluetooth network, a ZigBee network, a near field communication (Near Field Communication, NFC) network, or the like, or any combination thereof. In some embodiments, the network may include one or more network access points. For example, the network may include wired or wireless network access points, such as base stations and/or network switching nodes, through which one or more components of the service request processing system may connect to the network to exchange data and/or information.
The processor 202 may be an integrated circuit chip with signal processing capabilities and may include one or more processing cores (e.g., a single-core processor or a multi-core processor). By way of example only, the processors may include a central processing unit (Central Processing Unit, CPU), an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), a special instruction set Processor (Application Specific Instruction-set Processor, ASIP), a graphics processing unit (Graphics Processing Unit, GPU), a physical processing unit (Physics Processing Unit, PPU), a digital signal Processor (Digital Signal Processor, DSP), a field programmable gate array (Field Programmable Gate Array, FPGA), a programmable logic device (Programmable Logic Device, PLD), a controller, a microcontroller unit, a reduced instruction set computer (Reduced Instruction Set Computing, RISC), a microprocessor, or the like, or any combination thereof.
It should be understood that the apparatus and method disclosed in the above embodiments may be implemented in other manners. The apparatus embodiments described above are merely illustrative, for example, flow diagrams and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The foregoing is merely various embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily think about changes or substitutions within the technical scope of the present application, and the changes and substitutions are intended to be covered in the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (7)

1. A method for planning a trajectory of a robot, the method comprising:
acquiring a tip motion path of a robot tip, comprising:
obtaining a depth image in a visual range through a depth camera, converting the depth image into an image containing three channels of horizontal parallax, ground clearance height, local surface normal direction and gravity direction included angle by adopting HHA coding, inputting the image into an example segmentation network model based on an R-CNN deep learning method, detecting and identifying an obstacle, and obtaining coordinates of all image points in an obstacle boundary two-dimensional boundary frame image; finally, obtaining three-dimensional data of the obstacle according to the transformation relation between the two-dimensional image point of the image and the three-dimensional point under the world coordinate system;
judging whether a connecting straight line between a starting point and a finishing point of the tail end of the robot passes through the position of an obstacle in the working space or not, and calling the obstacle with collision as a target obstacle;
Taking a plane, which is close to the starting point side of the tail end of the machine, of the 6 planes as a projection plane according to the 6 planes of the bounding box of each target obstacle; then, calculating a projection point, namely a projection intersection point, of the tail end starting point of the robot on the projection surface;
according to the projection intersection point of the starting point on the projection surface, determining the position of the tool clamped by the tail end of the offset robot in the normal direction of the projection surface as an obstacle avoidance key point for avoiding the target obstacle;
acquiring a constraint relation for path planning;
fitting a smooth curve from the starting point to the end point and passing through the obstacle avoidance key points through a high-order smooth Bezier curve according to the starting point, the end point, the obstacle avoidance key points and the constraint relation;
taking the smooth curve as the tail end motion path;
iterating out the expected speed of each discrete point in the tail end motion path through a neural network model;
determining an articulation trajectory of the robot articulation space according to the desired velocity for each discrete point, comprising:
fitting joint motion tracks of the robot joint space through a fifth-order polynomial function according to expected speeds of discrete points in the initial path for the initial path close to the starting point and the final path of the final motion path;
Fitting an articulation track of the robot articulation space through the fifth-order polynomial function according to the expected speed of each discrete point in the tail end path;
and for the rest paths in the tail end motion paths, fitting the joint motion track of the robot joint space through a third-order polynomial function according to the expected speed of each discrete point in the rest paths.
2. The method of claim 1, wherein iterating the expected speed of each discrete point of the tip motion path through a neural network model comprises:
acquiring a plurality of groups of speed sequences and a plurality of groups of weight sequences, wherein each group of speed sequences comprises a speed to be optimized of each discrete point in the tail end motion path, and each group of weight sequences comprises a plurality of weights to be optimized of the neural network model;
and according to the multiple groups of speed sequences and the multiple groups of weight sequences, the following multiple iterations are performed until the shortest time spent by moving along the tail end movement path tends to be stable, and the speed sequence corresponding to the shortest time is determined as the expected speed of each discrete point of the tail end movement path:
calculating the multiple groups of speed sequences through the neural network model initialized by each group of weight sequences to obtain multiple groups of first speed sequences;
Adjusting the multiple groups of first speed sequences through the multiple groups of speed sequences to obtain multiple groups of new speed sequences;
and updating the multiple groups of weight sequences according to the optimal weight sequences in the multiple groups of weight sequences to obtain multiple groups of new weight sequences.
3. The method for planning a track of a robot according to claim 2, wherein the expression for obtaining the plurality of sets of first velocity sequences by calculating the plurality of sets of velocity sequences through the neural network model initialized by each set of weight sequences is:
in the method, in the process of the invention,indicate->Group first speed sequence,/->Represents the number of iterations, +.>Indicate->Group speed sequence,/->Indicate->Group weight sequence,/->Representing the total number of each of the plurality of sets of velocity sequences and the plurality of sets of weight sequences;
adjusting the multiple groups of first speed sequences through the multiple groups of speed sequences to obtain the expression of the multiple groups of new speed sequences as follows:
in the method, in the process of the invention,indicate->New velocity sequence,/-group>Indicate->A group of second-speed sequences,representing an optimal speed sequence of said sets of speed sequences, said optimal speed sequence being capable of minimizing the time taken for movement along said end movement path,/- >Representation range->Random numbers within.
4. The method for planning a track of a robot according to claim 2, wherein the updating the plurality of sets of weight sequences according to the optimal weight sequence of the plurality of sets of weight sequences, to obtain a plurality of new weight sequences has an expression as follows:
in the method, in the process of the invention,indicate->New set of weight sequences,/->Indicate->A sequence of group weights that is selected from the group consisting of,representing the optimal weight sequence,/->Representation range->Random numbers within.
5. A robot trajectory planning device, the device comprising:
the tail end path module is used for acquiring a tail end motion path of the tail end of the robot; the end path module is further specifically configured to:
obtaining a depth image in a visual range through a depth camera, converting the depth image into an image containing three channels of horizontal parallax, ground clearance height, local surface normal direction and gravity direction included angle by adopting HHA coding, inputting the image into an example segmentation network model based on an R-CNN deep learning method, detecting and identifying an obstacle, and obtaining coordinates of all image points in an obstacle boundary two-dimensional boundary frame image; finally, obtaining three-dimensional data of the obstacle according to the transformation relation between the two-dimensional image point of the image and the three-dimensional point under the world coordinate system;
Judging whether a connecting straight line between a starting point and a finishing point of the tail end of the robot passes through the position of an obstacle in the working space or not, and calling the obstacle with collision as a target obstacle;
taking a plane, which is close to the starting point side of the tail end of the machine, of the 6 planes as a projection plane according to the 6 planes of the bounding box of each target obstacle; then, calculating a projection point, namely a projection intersection point, of the tail end starting point of the robot on the projection surface;
according to the projection intersection point of the starting point on the projection surface, determining the position of the tool clamped by the tail end of the offset robot in the normal direction of the projection surface as an obstacle avoidance key point for avoiding the target obstacle;
acquiring a constraint relation for path planning;
fitting a smooth curve from the starting point to the end point and passing through the obstacle avoidance key points through a high-order smooth Bezier curve according to the starting point, the end point, the obstacle avoidance key points and the constraint relation;
taking the smooth curve as the tail end motion path;
the speed planning module is used for iterating out the expected speed of each discrete point in the tail end motion path through the neural network model;
the joint track module is used for determining the joint motion track of the robot joint space according to the expected speed of each discrete point; the joint track module is also specifically used for:
Fitting joint motion tracks of the robot joint space through a fifth-order polynomial function according to expected speeds of discrete points in the initial path for the initial path close to the starting point and the final path of the final motion path;
fitting an articulation track of the robot articulation space through the fifth-order polynomial function according to the expected speed of each discrete point in the tail end path;
and for the rest paths in the tail end motion paths, fitting the joint motion track of the robot joint space through a third-order polynomial function according to the expected speed of each discrete point in the rest paths.
6. A storage medium storing a computer program which, when executed by a processor, implements the robot trajectory planning method of any one of claims 1-4.
7. An electronic device comprising a processor and a memory, the memory storing a computer program which, when executed by the processor, implements the robot trajectory planning method of any one of claims 1-4.
CN202311316542.5A 2023-10-12 2023-10-12 Robot track planning method and device, storage medium and electronic equipment Active CN117075617B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311316542.5A CN117075617B (en) 2023-10-12 2023-10-12 Robot track planning method and device, storage medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311316542.5A CN117075617B (en) 2023-10-12 2023-10-12 Robot track planning method and device, storage medium and electronic equipment

Publications (2)

Publication Number Publication Date
CN117075617A CN117075617A (en) 2023-11-17
CN117075617B true CN117075617B (en) 2024-01-26

Family

ID=88704492

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311316542.5A Active CN117075617B (en) 2023-10-12 2023-10-12 Robot track planning method and device, storage medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN117075617B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102122172A (en) * 2010-12-31 2011-07-13 中国科学院计算技术研究所 Image pickup system and control method thereof for machine motion control
JP2012157955A (en) * 2011-02-02 2012-08-23 Sony Corp Device and method for controlling movement, and computer program
CN111399514A (en) * 2020-03-30 2020-07-10 浙江钱江机器人有限公司 Robot time optimal trajectory planning method
CN113341731A (en) * 2021-06-29 2021-09-03 西北工业大学 Space robot trajectory planning method based on sequence convex optimization
CN113414761A (en) * 2021-02-03 2021-09-21 中国人民解放军63920部队 Method for optimizing motion trail of redundant mechanical arm
CN113442140A (en) * 2021-06-30 2021-09-28 同济人工智能研究院(苏州)有限公司 Bezier optimization-based Cartesian space obstacle avoidance planning method
CN114310899A (en) * 2022-01-04 2022-04-12 桂林电子科技大学 Multi-target trajectory planning method for mechanical arm based on NSGA-III optimization algorithm
CN114571469A (en) * 2022-05-05 2022-06-03 北京科技大学 Zero-space real-time obstacle avoidance control method and system for mechanical arm

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10754337B2 (en) * 2016-06-20 2020-08-25 Hypertherm, Inc. Systems and methods for planning paths to guide robots

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102122172A (en) * 2010-12-31 2011-07-13 中国科学院计算技术研究所 Image pickup system and control method thereof for machine motion control
JP2012157955A (en) * 2011-02-02 2012-08-23 Sony Corp Device and method for controlling movement, and computer program
CN111399514A (en) * 2020-03-30 2020-07-10 浙江钱江机器人有限公司 Robot time optimal trajectory planning method
CN113414761A (en) * 2021-02-03 2021-09-21 中国人民解放军63920部队 Method for optimizing motion trail of redundant mechanical arm
CN113341731A (en) * 2021-06-29 2021-09-03 西北工业大学 Space robot trajectory planning method based on sequence convex optimization
CN113442140A (en) * 2021-06-30 2021-09-28 同济人工智能研究院(苏州)有限公司 Bezier optimization-based Cartesian space obstacle avoidance planning method
CN114310899A (en) * 2022-01-04 2022-04-12 桂林电子科技大学 Multi-target trajectory planning method for mechanical arm based on NSGA-III optimization algorithm
CN114571469A (en) * 2022-05-05 2022-06-03 北京科技大学 Zero-space real-time obstacle avoidance control method and system for mechanical arm

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
A Novel Resolution Scheme of Time-Energy Optimal Trajectory for Precise Acceleration Controlled Industrial Robot Using Neural Networks;Renluan Hou,等;MDPI;第1-19页 *
Energy and Peak Power Optimization of Time-Bounded Robot Trajectories;Sarmad Riazi;IEEE;646-657 *
基于 视觉机器人障碍点云映射避障规划及仿真;霍韩淋,等;***仿真学报;1-12 *
基于在线学习的柔性关节机器人自适应神经轨迹跟踪控制;周荣亚,等;机械设计与制造工程;第51卷(第8期);45-49 *

Also Published As

Publication number Publication date
CN117075617A (en) 2023-11-17

Similar Documents

Publication Publication Date Title
CN107490965B (en) Multi-constraint trajectory planning method for space free floating mechanical arm
US11292132B2 (en) Robot path planning method with static and dynamic collision avoidance in an uncertain environment
Kabir et al. Generation of synchronized configuration space trajectories of multi-robot systems
CN113552877A (en) Initial reference generation for robot-optimized action planning
EP4157589A1 (en) A robot path planning method with static and dynamic collision avoidance in an uncertain environment
CN114932549B (en) Motion planning method and device for spatial redundancy mechanical arm
CN110561419B (en) Arm-shaped line constraint flexible robot track planning method and device
CN113119112B (en) Motion planning method and system suitable for vision measurement of six-degree-of-freedom robot
CN114460965B (en) Unmanned aerial vehicle three-dimensional obstacle avoidance method based on improved artificial potential field method
Nigro et al. Assembly task execution using visual 3D surface reconstruction: An integrated approach to parts mating
Fang et al. A sampling-based motion planning method for active visual measurement with an industrial robot
Ramer et al. A robot motion planner for 6-DOF industrial robots based on the cell decomposition of the workspace
Xu et al. Automatic interpolation algorithm for NURBS trajectory of shoe sole spraying based on 7-DOF robot
CN117075617B (en) Robot track planning method and device, storage medium and electronic equipment
Freitas et al. High precision trajectory planning on freeform surfaces for robotic manipulators
Korayem et al. Trajectory planning of mobile manipulators using dynamic programming approach
Birr et al. Oriented surface reachability maps for robot placement
Malhan et al. Finding optimal sequence of mobile manipulator placements for automated coverage planning of large complex parts
CN110948489B (en) Method and system for limiting safe working space of live working robot
Khaksar et al. Multiquery motion planning in uncertain spaces: Incremental adaptive randomized roadmaps
Cella et al. Fueling Glocal: Optimization-Based Path Planning for Indoor Uavs in AN Autonomous Exploration Framework
Dursun et al. Maintaining Visibility of Dynamic Objects in Cluttered Environments Using Mobile Manipulators and Vector Field Inequalities
Zhang et al. Research on dynamic obstacle avoidance method of manipulator based on binocular vision
CN114347036B (en) Method for optimizing joint center distance and joint movement range of mechanical arm
RU2756437C1 (en) Method and system for planning the movement of a manipulator robot by correcting the reference trajectories

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant