Motion track planning method, device and system of mechanical arm and storage medium

Through a given spatial speed and gearage time, the drone robotic arm trajectory planning has solved the problem of many traditional algorithm parameters and a long calculation time, realized the smoothness and stability of the motor trajectory of the robotic arm, and improved application efficiency and security.

CN119369383AActive Publication Date: 2025-01-28XIAN INNO AVIATION TECH CO LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202411388242.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-30
Publication Date
2025-01-28
Estimated Expiration
2044-09-30

AI Technical Summary

Technical Problem

Traditional robotic arm trajectory planning algorithms have many parameters and long calculation time, which leads to jitter and repetition during movement, affecting the life of joint motors and the stability of the UAV control system.

Method used

Through a given space speed and gear time, the drone robotic arm trajectory planning is performed to reduce parameter assignment, realize the synchronization of different axis and joints in the joint space, and ensure the continuity and smoothness of the motion trajectory.

Benefits of technology

The position and speed movement trajectory of the robotic arm movement is smooth and small, which improves the application efficiency and security of the drone robotic arm.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119369383A_ABST
    Figure CN119369383A_ABST
Patent Text Reader

Abstract

The invention discloses a motion track planning method, device and system of a mechanical arm and a storage medium, and relates to the technical field of mechanical control. The method comprises the following steps: acquiring an initial waypoint, a tail waypoint and a middle waypoint; calculating an absolute distance from each waypoint to the initial waypoint and a total absolute distance; setting a preset space velocity; calculating total spent time and time for arriving at each waypoint; and the angle vector of the shaft motor in the corresponding joint space and the constant speed section speed and the variable speed section acceleration of the shaft motor in each path section are calculated, the sampling time is preset, the joint acceleration vector real-time value, the velocity vector real-time value and the position vector real-time value of the mechanical arm at each time point are calculated, and the motion trail of the mechanical arm is planned. According to the embodiment of the invention, the accuracy and the working efficiency of the movement of the mechanical arm are improved, shaking and impact are reduced, and the stability and the safety of the movement are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of mechanical control technology, and in particular, relates to a motion trajectory planning method, device, system and storage medium for a robotic arm. Background Art

[0002] With the widespread application of drone-supported low-altitude production services in industries such as industry and agriculture, robotic arms, as important payloads of drones, have received extensive research and attention, further expanding the application scenarios of drones.

[0003] Traditional robotic arm trajectory planning uses three-term polynomial interpolation, five-order polynomial interpolation and Cartesian trajectory planning. It is necessary to assign initial values ​​to the position, velocity and acceleration of each path point. There are many parameters and the calculation time is too long. In addition, jitter and repetition are prone to occur during movement, which affects the life of the joint motor and interferes with the drone control system. It will affect the flight stability of the drone and may even cause a crash.

[0004] Therefore, based on the development of the UAV industry and the shortcomings of the traditional trajectory planning algorithm of the robotic arm, there is an urgent need for an optimization algorithm to control the UAV robotic arm. Summary of the invention

[0005] The purpose of this application is to provide a method, device, system and storage medium for motion trajectory planning of a robotic arm, which performs trajectory planning of a UAV robotic arm by giving a given spatial speed and speed change time, reduces parameter assignment, and realizes synchronization of different axis joints in the joint space, ensures continuity at each path point, and makes the position and speed motion trajectory of the robotic arm smooth and with small jitter during operation, thereby meeting the application requirements of the UAV robotic arm.

[0006] In order to achieve the above objectives, the solution of this application is:

[0007] In a first aspect, an embodiment of the present application provides a motion trajectory planning method for a robotic arm, comprising:

[0008] Get the positions of n path points, including the initial path point, the terminal path point and n-2 intermediate path points; calculate the absolute distance and the total absolute distance from each path point to the initial path point based on the positions of the n path points;

[0009] Set a preset spatial speed, and calculate the total time taken based on the preset spatial speed and the total absolute distance; calculate the time taken to reach each path point based on the absolute distance from each path point to the initial path point, the total absolute distance and the total time taken; set a preset speed change time, and calculate the speed change time required for each path point based on the preset speed change time;

[0010] Calculate the angle vectors of the m-axis motors in the joint space corresponding to the n path points in the Cartesian space of the robot arm and the uniform speed segment speed and variable speed segment acceleration of the m-axis motors in each path segment;

[0011] A sampling time is preset, and the real-time values ​​of the joint acceleration vector, the real-time value of the velocity vector, and the real-time value of the position vector of the robotic arm at each time point are calculated according to the preset sampling time; and the motion trajectory of the robotic arm is planned according to the real-time values ​​of the joint acceleration vector, the real-time value of the velocity vector, and the real-time value of the position vector of the robotic arm at each time point.

[0012] According to the above method of the embodiment of the present application, the following additional technical features may also be provided:

[0013] Furthermore, the absolute distance and the total absolute distance from each path point to the initial path point are calculated according to the positions of the n path points, including:

[0014] Assume that the position coordinates of n path points in Cartesian space are p i (x i ,y i , z i ), where i = 1, 2, ..., n, then the formula for the absolute distance from each path point to the initial path point is as follows:

[0015]

[0016] Total absolute distance d total =d n , the distance vector formula is as follows:

[0017] d=[d1 d2 ... d n ]

[0018] Among them, d i Represents the absolute distance from the initial path point to path point i, d total It represents the total absolute distance from the initial path point to the final path point, and d represents the distance vector.

[0019] Furthermore, the preset space speed is set to S target , then the total time spent is calculated as follows:

[0020] t total =d total / S target

[0021] Among them, t total Indicates the total time spent, S target Indicates the preset space speed;

[0022] The formula for the time to reach each waypoint is as follows:

[0023]

[0024] Among them, t i represents the time to reach path point i;

[0025] The formula for the time vector is as follows:

[0026] t=[t1 t2 ... t n ]

[0027] Here, t represents the time vector.

[0028] Furthermore, a preset speed change time is set, and the speed change time required for each path point is calculated according to the preset speed change time, including:

[0029] Set the preset speed change time to T acc , then the formula for the speed change time required for each path point is as follows:

[0030]

[0031] Among them, T acc Indicates the preset speed change time. When i=1, t acci represents the acceleration time of the initial path point; when i=n, ​​t acci Indicates the deceleration time of the end path point; when 2≤i≤n-1, t acci Indicates the speed change time at the intermediate path points;

[0032] The formula for the speed change time vector is as follows:

[0033] t acc =[t acc1 t acc2 ... t accn ]

[0034] Among them, t acc Represents the speed change time vector.

[0035] Furthermore, before calculating the speed change time required for each path point according to the preset speed change time, a time constraint condition is determined. The time constraint condition includes that the speed change time between two path points is less than the time spent between the two path points. The formula is as follows:

[0036]

[0037] After the time constraint is met, the uniform speed and variable speed acceleration of each path segment are calculated.

[0038] Furthermore, the angle vectors of the m-axis motors in the joint space corresponding to the n path points in the Cartesian space of the robot arm and the uniform speed and variable speed acceleration of the m-axis motors in each path segment are calculated, including:

[0039] Obtain the angle vectors θ of the m-axis motors in the joint space corresponding to the n path points in the Cartesian space of the robot arm through inverse calculation i , the formula is as follows:

[0040] θ i =[θ i1 θ i2 ... θ im ]

[0041] Where i = 1, 2, ..., n;

[0042] There are n-1 path segments between n path points, and the speed formula of the m-axis motors in the uniform speed segment of each path segment is as follows:

[0043] v j =[v j1 v j2 ... v jm ]=(θ j+1 -θ j ) / (t j+1 -t j )

[0044] Wherein, j=1, 2, ..., n-1;

[0045] The speed change section of the m-axis motors in each path section includes an acceleration section from the initial path point to the intermediate path point, a deceleration section from the intermediate path point to the final path point, and a speed change section from the first intermediate path point to the last intermediate path point;

[0046] The acceleration vector formula of the m-axis motor from the initial path point to the intermediate path point is as follows:

[0047] a start =[a start1 a start2 ... a startm ]=v1 / t acc1 ;

[0048] The acceleration vector formula of the m-axis motor in the deceleration section from the middle path point to the end path point is as follows:

[0049] a end =[a end1 a end2 ... a endm ]=(0-v n-1 ) / taccn ;

[0050] The acceleration vector formula of the m-axis motor in the speed change section between the first intermediate path point and the last intermediate path point is as follows:

[0051] a middle =[a middle1 a middle2 ... a middlem ]=(v k -v k-1 ) / t acck ;

[0052] Among them, k = 2, 3, ..., n-1.

[0053] Furthermore, a sampling time is preset, and the real-time value of the joint acceleration vector, the real-time value of the velocity vector, and the real-time value of the position vector of the manipulator at each time point is calculated according to the preset sampling time, including:

[0054] Set the preset sampling time to t;

[0055] When the robot moves in the acceleration section from the initial path point to the first intermediate path point and t<t acc1 When , the formula for the real-time value of the joint acceleration vector of the robot arm is as follows:

[0056] a real =[a real1 a real2 ... a realm ] = a start

[0057] The formula for the real-time value of the velocity vector is as follows:

[0058] v real =[v real1 v real2 ... v realm ] = a start ·t

[0059] The formula for the real-time value of the position vector is as follows:

[0060]

[0061] When the robot moves in the uniform speed section from the initial path point to the first intermediate path point and t acc1 ≤t<(t2-t acc2 / 2), the formula for the real-time value of the joint acceleration vector of the robot arm is as follows:

[0062] a real =0

[0063] The formula for the real-time value of the velocity vector is as follows:

[0064] v real =v1

[0065] The formula for the real-time value of the position vector is as follows:

[0066] θ real =θ1+v1·t

[0067] When the robot moves in the speed change section between the two intermediate points and (t i -t acci / 2)≤t<(t i +t acci / 2), when i=2, 3, ..., n-1, the formula of the real-time value of the joint acceleration vector of the robot arm is as follows:

[0068] a real =a middle

[0069] The formula for the real-time value of the velocity vector is as follows:

[0070] v real =v i-1 +a middle ·(tt i +t acci / 2)

[0071] The formula for the real-time value of the position vector is as follows:

[0072]

[0073] When the robot moves in the uniform speed section between the two intermediate points and (t i +t acci / 2)≤t<(t i+1 -t acc(i+1) / 2), when i=2, 3, ..., n-1, the formula of the real-time value of the joint acceleration vector of the robot arm is as follows:

[0074] a real =0

[0075] The formula for the real-time value of the velocity vector is as follows:

[0076] v real =v n-1

[0077] The formula for the real-time value of the position vector is as follows:

[0078] θ real =θ n-1 +v n-1 ·(tt n-1 )

[0079] When the robot moves in the deceleration section from the last intermediate path point to the end path point and (t n -t accn )≤t≤t n When , the formula for the real-time value of the joint acceleration vector of the robot arm is as follows:

[0080] a real =a end

[0081] The formula for the real-time value of the velocity vector is as follows:

[0082] v real =v n-1 +a end ·(tt n +t accn )

[0083] The formula for the real-time value of the position vector is as follows:

[0084]

[0085] In a second aspect, an embodiment of the present application provides a motion trajectory planning device for a robotic arm, comprising:

[0086] The distance calculation module is configured to obtain n path point positions, where the n path point positions include an initial path point, an end path point, and n-2 intermediate path points; and calculate an absolute distance from each path point to the initial path point and a total absolute distance based on the n path point positions;

[0087] The time calculation module is configured to set a preset spatial speed, calculate the total time taken according to the preset spatial speed and the total absolute distance; calculate the time taken to reach each path point according to the absolute distance from each path point to the initial path point, the total absolute distance and the total time taken; set a preset speed change time, and calculate the speed change time required for each path point according to the preset speed change time;

[0088] A speed calculation module is configured to calculate the angle vectors of the m-axis motors in the joint space corresponding to the n path points in the Cartesian space of the robot arm and the uniform speed segment speed and variable speed segment acceleration of the m-axis motors in each path segment;

[0089] The trajectory planning module is configured to preset a sampling time, calculate the real-time values ​​of the joint acceleration vector, the real-time value of the velocity vector and the real-time value of the position vector of the robotic arm at each time point according to the preset sampling time, and plan the motion trajectory of the robotic arm according to the real-time values ​​of the joint acceleration vector, the real-time value of the velocity vector and the real-time value of the position vector of the robotic arm at each time point.

[0090] In a third aspect, an embodiment of the present application provides a motion trajectory planning system for a robotic arm, the system comprising a processor and a memory, the memory storing a computer program, the computer program being loaded and executed by the processor to implement the motion trajectory planning method for the robotic arm provided in the first aspect of the embodiment of the present application.

[0091] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a processor, it is used to implement the motion trajectory planning method of a robotic arm as in the first aspect of the embodiment of the present application.

[0092] Compared with the prior art, the motion trajectory planning method of the robot arm provided by the embodiment of the present application has the following beneficial technical effects:

[0093] The embodiment of the present application obtains n precise path point positions, including the initial path point, the terminal path point and n-2 intermediate path points, to ensure that the robotic arm passes through these points accurately during the movement, thereby achieving high-precision task execution; the path points in Cartesian space are converted into parameters in the joint space, and the precise joint angle vectors are obtained through inverse kinematics calculations, thereby further improving the accuracy of the robotic arm movement.

[0094] The embodiment of the present application can optimize the movement time of the robotic arm and improve work efficiency by setting a preset spatial speed, calculating the total time spent according to the total absolute distance, and allocating the arrival time according to the absolute distance of each path point; by setting a preset speed change time, the robotic arm can smoothly decelerate before reaching each path point and accelerate when leaving, reducing unnecessary energy consumption and time waste.

[0095] The embodiment of the present application calculates the joint acceleration vector, velocity vector and position vector at each time point in real time by presetting the sampling time, thereby ensuring that the robotic arm maintains a smooth trajectory during movement and reducing jitter and impact; by calculating the uniform speed segment and variable speed segment acceleration of each path segment, the movement of the robotic arm can be further smoothed to improve the stability and safety of the movement.

[0096] The embodiment of the present application supports any number of path points, including initial path points, terminal path points and intermediate path points, so that the robotic arm can flexibly respond to various complex motion requirements; the preset spatial speed, speed change time and other parameters can be adjusted according to actual needs to adapt to different working environments and task requirements.

[0097] The embodiment of the present application can effectively avoid collision with the surrounding environment by accurately controlling the motion trajectory and speed of the robotic arm, improve work safety, and ensure the stable operation of the robotic arm. BRIEF DESCRIPTION OF THE DRAWINGS

[0098] Figure 1 A schematic diagram showing a flow chart of a motion trajectory planning method for a robotic arm according to an embodiment of the present application;

[0099] Figure 2 A structural block diagram of a motion trajectory planning device for a robotic arm according to an embodiment of the present application is shown;

[0100] Figure 3 A structural block diagram of a computer device according to an embodiment of the present application is shown;

[0101] Figure 4 A joint position curve diagram of an embodiment of the present application is shown;

[0102] Figure 5 A graph of joint positions for a fifth-order polynomial under the same conditions is shown;

[0103] Figure 6 A joint velocity curve diagram of an embodiment of the present application is shown;

[0104] Figure 7 A graph of joint velocity for a fifth-order polynomial under the same conditions is shown;

[0105] Figure 8 shows a joint acceleration curve diagram of an embodiment of the present application;

[0106] Fig. 9 A graph of joint accelerations for a fifth-order polynomial under the same conditions is shown. DETAILED DESCRIPTION

[0107] In order to make the above-mentioned purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are described in detail below in conjunction with the accompanying drawings. It is to be understood that the specific embodiments described herein are only used to explain the present application, rather than to limit the present application. It should also be noted that, for ease of description, only some structures related to the present application are shown in the accompanying drawings, rather than all structures. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.

[0108] The terms "including" and "having" and any variations thereof in this application are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device comprising a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products or devices.

[0109] Reference to "embodiments" in this application means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described in this application may be combined with other embodiments.

[0110] like Figure 1 As shown, the embodiment of the present application provides a motion trajectory planning method for a robotic arm, comprising the following steps:

[0111] Step 101, obtain n path point positions, the n path point positions include an initial path point, a terminal path point and n-2 intermediate path points; calculate the absolute distance and the total absolute distance from each path point to the initial path point based on the n path point positions.

[0112] Obtaining and processing waypoint locations is a crucial step in path planning for a robot or robotic arm. This process involves determining a series of points (commonly called waypoints) that define the trajectory that the robotic arm or robot needs to follow.

[0113] First, we need to know the specific locations of n path points. These locations are usually defined in three-dimensional space, that is, each path point has an x, y, and z coordinate. These path points can be obtained in a variety of ways, including but not limited to:

[0114] Manual Input: Users can enter the coordinates of each path point directly in the control software.

[0115] Sensor data: If the robot or robotic arm is equipped with corresponding sensors (such as visual sensors, lidar, etc.), it can automatically identify and locate waypoints by sensing the surrounding environment.

[0116] Path planning algorithm: In some cases, a path planning algorithm (such as A* algorithm, RRT algorithm, etc.) can be used to automatically generate a series of path points to meet specific task requirements.

[0117] Once the positions of all the waypoints are obtained, the next step is to calculate the absolute distance of each waypoint to the initial waypoint. The absolute distance refers to the straight-line distance between two points. In three-dimensional space, it can be calculated using the Euclidean distance formula.

[0118] The total absolute distance is the sum of the absolute distances of all waypoints to the initial waypoint. This value can be used to estimate the length of the entire path, or as a basis for calculating the time required for a manipulator or robot to move.

[0119] In this embodiment of the application, the position coordinates of n path points in Cartesian space are assumed to be p i (x i ,y i , z i ), where i = 1, 2, ..., n, then the formula for the absolute distance from each path point to the initial path point is as follows:

[0120]

[0121] Total absolute distance d total =d n , the distance vector formula is as follows:

[0122] d=[d1 d2 ... d n ]

[0123] Among them, d i Represents the absolute distance from the initial path point to path point i, d total It represents the total absolute distance from the initial path point to the final path point, and d represents the distance vector.

[0124] Specifically, the embodiment of the present application is described by taking three path points of a six-axis robotic arm in Cartesian space as an example.

[0125] Assume that the three path points are the initial path point p1 (-0.6, -0.2, 0), the middle path point p2 (-0.6, -0.4, -0.4), and the terminal path point p3 (0.5, -0.4, 0.1). The absolute distances from each path point to the initial path point are: d1 = 0, d2 = 0.4472, d3 = 1.6555, d total =d3=1.6555, distance vector d=[0 0.4472 1.6555].

[0126] Step 102, set a preset spatial speed, calculate the total time taken based on the preset spatial speed and the total absolute distance; calculate the time taken to reach each path point based on the absolute distance from each path point to the initial path point, the total absolute distance and the total time taken; set a preset speed change time, and calculate the speed change time required for each path point based on the preset speed change time.

[0127] In the motion trajectory planning of a manipulator or robot, setting a preset spatial speed, calculating the total time spent, allocating the time to reach each path point, and setting a preset speed change time and calculating the speed change time are key steps to ensure that the manipulator can move smoothly and efficiently along the predetermined trajectory.

[0128] The preset space speed refers to the distance the robot moves in space per second during the uniform motion phase. The selection of this speed needs to take into account factors such as the robot's performance limitations (such as maximum speed and acceleration limits), task requirements (such as accuracy requirements and time limits), and working environment (such as obstacle distribution and space limitations). The preset space speed is usually set in meters per second (m / s).

[0129] The total time taken is the total time required for the robot to move from the initial waypoint to the final waypoint, based on the preset spatial speed and the total absolute distance (i.e. the sum of the straight-line distances between all waypoints).

[0130] After the total time is determined, the time to reach each waypoint needs to be allocated based on the absolute distance from the initial waypoint. This is usually done by multiplying the total time by the ratio of the absolute distance of each waypoint to the total absolute distance.

[0131] The preset speed change time is the time required for the robot to decelerate before reaching each path point and accelerate when leaving. The setting of this time needs to take into account the acceleration limit of the robot and the smoothness requirements during the speed change process. The preset speed change time is usually set in seconds (s).

[0132] Although in actual applications, the speed change time may vary depending on the dynamic characteristics and control strategy of the robot, it can generally be assumed that a fixed speed change time is assigned before and after each waypoint. This means that before each waypoint, the robot will start to decelerate and drop to zero (or close to zero) when reaching the waypoint; then, when leaving the waypoint, the robot will start to accelerate until it reaches the preset spatial speed.

[0133] In this embodiment of the present application, the preset space speed is set to S target , then the total time spent is calculated as follows:

[0134] t total =d total / S target

[0135] Among them, t total Indicates the total time spent, S target Indicates the preset space speed;

[0136] The formula for the time to reach each waypoint is as follows:

[0137]

[0138] Among them, t i represents the time to reach path point i;

[0139] The formula for the time vector is as follows:

[0140] t=[t1 t2 ... t n ]

[0141] Here, t represents the time vector.

[0142] Set the preset speed change time to T acc , then the formula for the speed change time required for each path point is as follows:

[0143]

[0144] Among them, T acc Indicates the preset speed change time. When i=1, t acci represents the acceleration time of the initial path point; when i=n, ​​t acci Indicates the deceleration time of the end path point; when 2≤i≤n-1, t acci Indicates the speed change time at the intermediate path points;

[0145] The formula for the speed change time vector is as follows:

[0146] t acc =[t acc1 t acc2 ... t accn ]

[0147] Among them, t acc Represents the speed change time vector.

[0148] Specifically, the preset space speed S target =0.1, the preset speed change time is T acc =0.8, the total time t total =d total / S target =1.6555 / 0.1=16.555, the time to reach each path point is t1=0, t2=4, t3=16.555, t=[0 4 16.555], the speed change time required for each path point is t acc1 =0.4, t acc2 =0.8, t acc3 =0.4, t acc =[0.4 0.80.4], where t acc1 Only the initial acceleration time, t acc3 Includes only the deceleration time at the end stage, t acc2 It is the speed change time between the two uniform speed sections of the paths (both acceleration and deceleration are possible).

[0149] Before calculating the speed change time required for each path point according to the preset speed change time, the embodiment of the present application also needs to perform a time constraint judgment. The time constraint condition includes that the speed change time between two path points is less than the time spent between the two path points. The formula is as follows:

[0150]

[0151] After the time constraint is met, the uniform speed and variable speed acceleration of each path segment are calculated.

[0152] The formula of the time constraint in this embodiment is as follows:

[0153]

[0154] The time constraint expressed in the above formula holds.

[0155] Step 103, calculating the angle vectors of the m-axis motors in the joint space corresponding to the n path points in the Cartesian space of the robot arm and the uniform speed segment speed and variable speed segment acceleration of the m-axis motors in each path segment.

[0156] In the motion trajectory planning of the robot arm, converting the path points in Cartesian space into parameters in joint space is a key step. Joint space refers to the space formed by the angles or positions of each joint of the robot arm, which directly determines the position and posture of the end effector of the robot arm (such as gripper, welding gun, etc.) in Cartesian space.

[0157] For a robot with m joints, each joint has a corresponding angle or position parameter. When the robot moves through n path points in Cartesian space, we need to calculate the angle vector in the joint space corresponding to each path point. This angle vector is an array containing m elements, each element represents the angle value of a joint.

[0158] The calculation of these angle values ​​usually involves solving inverse kinematics (IK). Inverse kinematics is an important concept in robotics, which refers to the inverse deduction of the angles or positions of each joint of the robot arm based on the position and posture of the end effector of the robot arm in Cartesian space. Solving inverse kinematics may involve complex mathematical operations and algorithms, such as numerical methods, analytical methods, etc.

[0159] During the movement of the robot arm, a constant speed section and a variable speed section are usually set. The constant speed section refers to the stage where the robot arm moves at a constant speed, while the variable speed section refers to the stage where the speed of the robot arm changes, including acceleration and deceleration.

[0160] Uniform speed: In the uniform speed section, the speed of the motors of each axis of the robot arm remains unchanged. This speed value can be set according to factors such as task requirements, robot arm performance and working environment. In the joint space, this speed value will be converted into the rate of change of the angular velocity of each joint.

[0161] Speed ​​change acceleration: In the speed change section, the robot needs to accelerate or decelerate to reach or leave the speed of the constant speed section. This acceleration or deceleration process needs to be smooth and controllable to avoid excessive impact or vibration to the robot. Therefore, the acceleration of the speed change section needs to be calculated to ensure that the robot can smoothly transition to the next speed stage. The calculation of acceleration is usually based on the dynamic characteristics and control strategy of the robot.

[0162] The embodiment of the present application obtains the angle vectors θ of the m-axis motors of the robot arm in the joint space corresponding to the n path points in the Cartesian space by inverse calculation. i , the formula is as follows:

[0163] θ i =[θ i1 θ i2 ... θ im ]

[0164] Where i = 1, 2, ..., n;

[0165] There are n-1 path segments between n path points, and the speed formula of the m-axis motors in the uniform speed segment of each path segment is as follows:

[0166] v j =[v j1 v j2 ... v jm ]=(θ j+1 -θ j ) / (t j+1 -t j )

[0167] Wherein, j = 1, 2, ..., n-1;

[0168] The speed change section of the m-axis motors in each path section includes an acceleration section from the initial path point to the intermediate path point, a deceleration section from the intermediate path point to the final path point, and a speed change section from the first intermediate path point to the last intermediate path point;

[0169] The acceleration vector formula of the m-axis motor from the initial path point to the intermediate path point is as follows:

[0170] a start =[a start1 a start2 ... a startm ]=v1 / t acc1 ;

[0171] The acceleration vector formula of the m-axis motor in the deceleration section from the middle path point to the end path point is as follows:

[0172] a end =[a end1 a end2 ... a endm ]=(0-v n-1 ) / t accn ;

[0173] The acceleration vector formula of the m-axis motor in the speed change section between the first intermediate path point and the last intermediate path point is as follows:

[0174] a middle =[a middle1 a middle2 ... a middlem ]=(v k -v k-1 ) / t acck ;

[0175] Among them, k = 2, 3, ..., n-1.

[0176] Specifically, through inverse calculation, the angle vectors of the six-axis motors in the joint space corresponding to the initial path point p1 (-0.6, -0.2, 0), the intermediate path point p2 (-0.6, -0.4, -0.4), and the terminal path point p3 (0.5, -0.4, 0.1) of the six-axis robot in Cartesian space are obtained respectively:

[0177] θ1=[θ 11 θ 12 θ 13 θ 14 θ 15 θ 16 ]=[-3.06 -0.78 -0.05 3.14 2.30 3.06]

[0178] θ2=[θ 21 θ 22 θ 23 θ 24 θ 25 θ 26 ]=[-2.76 0.16 -0.90 3.14 2.40 2.84]

[0179] θ3=[θ 31 θ 32 θ 33 θ 34 θ 35 θ 36]=[-3.58 2.54 -0.11 3.52 -1.70 3.42]

[0180] Among them, θ 12 Indicates the rotation angle of the second axis joint at path point 1, θ 13 Indicates the rotation angle of the third axis joint at path point 1, and so on.

[0181] There are two paths between the three path points, namely path segment a and path segment b. The speed formulas of the six-axis motors in the uniform speed segment of each path segment are as follows:

[0182] v a =[v a1 v a2 v a3 v a4 v a5 v a6 ]=[0.07 0.24 -0.21 0 0.02 -0.06]

[0183] v b =[v b1 v b2 v b3 v b4 v b5 v b6 ]=[-0.07 0.19 0.06 0.03 -0.33 0.05]

[0184] Among them, v a1 represents the uniform speed of the axis joint 1 in the path segment a, v b2 It represents the uniform speed of the axis joint 2 in the path segment b, and so on.

[0185] The speed change section consists of three parts: the initial point acceleration stage, the speed change section between the two uniform speed sections, and the end point deceleration stage. The acceleration formulas of the 6-axis motors in each speed change section are as follows: start =[a start1 a start2 a start3 a start4 a start5 a start6 ]

[0186] =[0.19 0.59 -0.53 0 0.06 -0.14]

[0187] a middle =[a middle1 a middle2 a middle3 a middle4 amiddle5 a middle6 ]

[0188] =[-0.17 -0.06 0.34 0.04 -0.44 0.13]

[0189] a end =[a end1 a end2 a end3 a end4 a end5 a end6 ]

[0190] =[0.16 -0.48 -0.16 -0.08 0.82 -0.12]

[0191] Among them, a start represents the acceleration vector of the initial acceleration segment, a middle represents the acceleration vector of the intermediate speed change section, a end Represents the acceleration vector of the terminal acceleration segment.

[0192] Step 104, preset a sampling time, calculate the real-time value of the joint acceleration vector, the real-time value of the velocity vector and the real-time value of the position vector of the robotic arm at each time point according to the preset sampling time, and plan the motion trajectory of the robotic arm according to the real-time value of the joint acceleration vector, the real-time value of the velocity vector and the real-time value of the position vector of the robotic arm at each time point.

[0193] In the motion control of the robot arm, in order to ensure that the robot arm can move smoothly and accurately according to the predetermined trajectory, a time sampling-based method is used to calculate and adjust the joint parameters of the robot arm in real time. This process involves presetting the sampling time, calculating the real-time values ​​of the joint acceleration vector, velocity vector and position vector, and planning the motion trajectory of the robot arm based on these values.

[0194] The preset sampling time specifies a fixed time interval for periodically collecting data and updating control parameters during the movement of the robot. The selection of this time interval depends on many factors, including the dynamic performance of the robot, the complexity of the control algorithm, and the accuracy and real-time requirements of the task.

[0195] At each sampling time point, the real-time values ​​of the acceleration vector, velocity vector and position vector of each joint of the robotic arm are calculated according to the current state of the robotic arm (such as joint angle, angular velocity, angular acceleration, etc.); based on the calculated real-time values ​​of the joint acceleration vector, velocity vector and position vector of the robotic arm at each time point, the motion trajectory of the robotic arm is planned.

[0196] The present embodiment sets the preset sampling time as t;

[0197] When the robot moves in the acceleration section from the initial path point to the first intermediate path point and t<t acc1 When , the formula for the real-time value of the joint acceleration vector of the robot arm is as follows:

[0198] a real =[a real1 a real2 ... a realm ] = a start

[0199] The formula for the real-time value of the velocity vector is as follows:

[0200] v real =[v real1 v real2 ... v realm ] = a start ·t

[0201] The formula for the real-time value of the position vector is as follows:

[0202]

[0203] When the robot moves in the uniform speed section from the initial path point to the first intermediate path point and t acc1 ≤t<(t2-t acc2 / 2), the formula for the real-time value of the joint acceleration vector of the robot arm is as follows:

[0204] a real =0

[0205] The formula for the real-time value of the velocity vector is as follows:

[0206] v real =v1

[0207] The formula for the real-time value of the position vector is as follows:

[0208] θ real =θ1+v1·t

[0209] When the robot moves in the speed change section between the two intermediate points and (t i -t acci / 2)≤t<(t i +t acci / 2), when i=2, 3, ..., n-1, the formula of the real-time value of the joint acceleration vector of the robot arm is as follows:

[0210] a real =a middle

[0211] The formula for the real-time value of the velocity vector is as follows:

[0212] v real =v i-1 +a middle ·(tt i +t acci / 2)

[0213] The formula for the real-time value of the position vector is as follows:

[0214]

[0215] When the robot moves in the uniform speed section between the two intermediate points and (t i +t acci / 2)≤t<(t i+1 -t acc(i+1) / 2), when i=2, 3, ..., n-1, the formula of the real-time value of the joint acceleration vector of the robot arm is as follows:

[0216] a real =0

[0217] The formula for the real-time value of the velocity vector is as follows:

[0218] v real =v n-1

[0219] The formula for the real-time value of the position vector is as follows:

[0220] θ real =θ n-1 +v n-1 ·(tt n-1 )

[0221] When the robot moves in the deceleration section from the last intermediate path point to the end path point and (t n -t accn )≤t≤t n When , the formula for the real-time value of the joint acceleration vector of the robot arm is as follows:

[0222] a real =a end

[0223] The formula for the real-time value of the velocity vector is as follows:

[0224] v real =v n-1 +a end ·(tt n +t accn )

[0225] The formula for the real-time value of the position vector is as follows:

[0226]

[0227] Specifically, the preset sampling time t<t acc1 When , the formula for the real-time value of the position vector is as follows:

[0228]

[0229] Preset sampling time t acc1 ≤t<(t2-t acc2 / 2), the formula for the real-time value of the position vector is as follows:

[0230] θ real =θ1+v a ·t

[0231] Preset sampling time (t2-t acc2 / 2)≤t<(t2+t acc2 / 2), the formula for the real-time value of the position vector is as follows:

[0232]

[0233] Preset sampling time (t2+t acc2 / 2)≤t<(t3-t acc3 / 2), the formula for the real-time value of the position vector is as follows:

[0234] θ real =θ2+v b ·(t-t2)

[0235] Preset sampling time (t3-t acc3 )≤t≤t3, the formula for the real-time value of the position vector is as follows:

[0236]

[0237] According to the above calculation, we can get Figure 4 From the joint position curve shown, it can be found that in the joint space, each axis has a curve transition with 20 sampling points at the path point, without mutation, and the slope is constant between the path points, which has good stability; Figure 5 For the same path points and the same arrival time, the result of quintic polynomial planning is adopted. In the figure, the rotation angle of joint 6 changes from 3.12 rad to 2.35 rad in the initial stage, and changes from 2.06 rad to 2.41 rad when transitioning to the second path point. The instantaneous change is large, and there will be obvious motor jitter. The slope of the curve changes all the time between the path points, and the joint motor speed is in dynamic change.

[0238] Specifically, the preset sampling time t<t acc1 When , the formula for the real-time value of the velocity vector is as follows:

[0239] v real =[v real1 v real2 v real3 v real4 v real5 v real6 ] = a start ·t

[0240] Preset sampling time (t2-t acc2 / 2)≤t<(t2+t acc2 / 2), the formula of the real-time value of the velocity vector is as follows:

[0241] v real =v a

[0242] Preset sampling time (t2+t acc2 / 2)≤t<(t3-t acc3 / 2), the formula of the real-time value of the velocity vector is as follows:

[0243] v real =v b

[0244] Preset sampling time (t3-t acc3 )≤t≤t3, the formula of the real-time value of the velocity vector is as follows:

[0245] v real =v b +a end ·(t-t3+t acc3 )

[0246] According to the above calculation, we can get Figure 6 The joint speed curve shown is composed of five parts: initial acceleration section, first uniform speed section, intermediate speed change section, second uniform speed section and final deceleration section. During the process, the motor initial and final speeds are both 0, and the uniform speed section is stable. Constrained by the given Cartesian space speed, the maximum positive speed of the six joints is 0.232rad / s, the maximum negative speed is -0.319rad / s, and the responses between the six axes are consistent. Figure 7 The result of the quintic polynomial planning only ensures that the speed of each path point is 0 constraint condition. It accelerates first and then decelerates between the path points, and there is no uniform speed segment. Compared with the planning of Example 1, the maximum positive speed of the joint motor is 0.421rad / s, and the maximum negative speed is -0.6rad / s, which requires a larger output torque and a larger range of joint speed changes.

[0247] Preset sampling time t<t acc1 When , the formula for the real-time value of the joint acceleration vector is as follows:

[0248] a real =0

[0249] Preset sampling time (t2-t acc2 / 2)≤t<(t2+t acc2 / 2), the formula for the real-time value of the joint acceleration vector is as follows:

[0250] a real =a middle

[0251] Preset sampling time (t2+t acc2 / 2)≤t<(t3-t acc3 / 2), the formula for the real-time value of the joint acceleration vector is as follows:

[0252] a real =0

[0253] Preset sampling time (t3-t acc3 )≤t≤t3, the formula for the real-time value of the joint acceleration vector is as follows:

[0254] a real =a end

[0255] According to the above calculation, we can get Figure 8 The joint acceleration curve shown in the figure has three speed change processes, and its response time is determined by the given speed change time. At path point 1, acceleration is completed after 41 sampling points, at path point 2, speed change is completed after 79 sampling points, and at path point 3, deceleration is completed after 40 sampling points. The three speed changes can be completed in a short time. The maximum positive acceleration is 0.813rad / s2, the maximum negative acceleration is -0.53rad / s2, and the other two sections are uniform speed sections with zero acceleration. Fig. 9 It is the result of quintic polynomial planning. It can be found that in addition to the constraint condition that the acceleration of the path points is 0, there is still a situation where the acceleration is 0. In the first path segment, 200 sampling points have positive acceleration and 200 sampling points have negative acceleration. In the second path segment, 639 sampling points have positive acceleration and 639 sampling points have negative acceleration. Compared with the planning result of the embodiment of the present application, the acceleration of the quintic polynomial planning is constantly changing during the whole movement process. The joint motor needs to constantly change the output torque to respond, which inevitably brings jitter problems and affects the stability of the drone.

[0256] Combination Figures 4 to 9The curve analysis of the position, speed, and acceleration of each joint shows that the embodiment of the present application has a relatively fast speed response, a smooth transition of the intermediate point trajectory, and a uniform motion in each path segment, with smooth changes and no obvious position jitter or offset phenomenon, so it has a relatively small impact on the balance control system of the drone. It should be noted that the embodiment of the present application is described with three path points, and the number of path points is not used to limit the protection scope of the embodiment of the present application.

[0257] like Figure 2 As shown, the embodiment of the present application provides a motion trajectory planning device for a robotic arm, including a distance calculation module 201, a time calculation module 202, a speed calculation module 203 and a trajectory planning module 204, wherein:

[0258] The distance calculation module 201 is configured to obtain n path point positions, where the n path point positions include an initial path point, an end path point, and n-2 intermediate path points; and calculate the absolute distance from each path point to the initial path point and the total absolute distance according to the n path point positions;

[0259] The time calculation module 202 is configured to set a preset spatial speed, calculate the total time taken according to the preset spatial speed and the total absolute distance; calculate the time taken to reach each path point according to the absolute distance from each path point to the initial path point, the total absolute distance and the total time taken; set a preset speed change time, and calculate the speed change time required for each path point according to the preset speed change time;

[0260] The speed calculation module 203 is configured to calculate the angle vectors of the m-axis motors in the joint space corresponding to the n path points in the Cartesian space of the robot arm and the uniform speed segment speed and variable speed segment acceleration of the m-axis motors in each path segment;

[0261] The trajectory planning module 204 is configured to preset a sampling time, calculate the real-time values ​​of the joint acceleration vectors, the real-time values ​​of the velocity vectors and the real-time values ​​of the position vectors of the robotic arm at each time point according to the preset sampling time, and plan the motion trajectory of the robotic arm according to the real-time values ​​of the joint acceleration vectors, the real-time values ​​of the velocity vectors and the real-time values ​​of the position vectors of the robotic arm at each time point.

[0262] The motion trajectory planning device of the robot arm of the embodiment of the present application can be a computer device, or a component in the computer device, such as an integrated circuit or a chip. The computer device can be a terminal, or it can be other devices other than a terminal. Exemplarily, the computer device can be a mobile phone, a tablet computer, a laptop computer, a PDA, a vehicle-mounted computer device, a mobile Internet device (Mobile Internet Device, MID), an ultra-mobile personal computer (Ultra-Mobile Personal Computer, UMPC), a netbook or a personal digital assistant (Personal Digital Assistant, PDA), etc. It can also be a server, a network attached storage (Network Attached Storage, NAS), a personal computer (Personal Computer, PC), etc., which is not specifically limited in the embodiment of the present application.

[0263] The motion trajectory planning device of the robot arm provided in the embodiment of the present application can achieve Figure 1 To avoid repetition, the various processes implemented in the embodiment of the motion trajectory planning method of the robotic arm are not described here.

[0264] The present application also provides a computer device, such as Figure 3 As shown, the computer device includes a processor 301 and a memory 302. The memory 302 stores programs or instructions that can be run on the processor 301. When the program or instructions are executed by the processor 301, the various steps of the above-mentioned robot arm motion trajectory planning method are implemented, and the same technical effect can be achieved. To avoid repetition, they are not repeated here.

[0265] It should be noted that the computer device in the embodiment of the present application includes the above-mentioned mobile computer device and non-mobile computer device.

[0266] The memory 302 can be used to store software programs and various data. The memory 302 may mainly include a first storage area for storing programs or instructions and a second storage area for storing data, wherein the first storage area may store an operating system, an application program or instructions required for at least one function (such as a sound playback function, an image playback function, etc.), etc. In addition, the memory 302 may include a volatile memory or a non-volatile memory, or the memory 302 may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), a static random access memory (SRAM), a dynamic random access memory (DRAM), a synchronous dynamic random access memory (SDRAM), a double data rate synchronous dynamic random access memory (DDRSDRAM), an enhanced synchronous dynamic random access memory (ESDRAM), a synchronous link dynamic random access memory (SLDRAM) and a direct memory bus random access memory (DRRAM). The memory 302 of the embodiment of the present application includes but is not limited to these and any other suitable types of memory.

[0267] The processor 301 may include one or more processing units; optionally, the processor 301 integrates an application processor and a modem processor, wherein the application processor mainly processes operations related to an operating system, a user interface, and application programs, and the modem processor mainly processes wireless communication signals, such as a baseband processor. It is understandable that the modem processor may not be integrated into the processor 301.

[0268] An embodiment of the present application also provides a readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by a processor, each process of the above-mentioned robot arm motion trajectory planning method embodiment is implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.

[0269] An embodiment of the present application also provides a chip, which includes a processor and a communication interface. The communication interface and the processor are coupled, and the processor is used to run programs or instructions to implement the various processes of the above-mentioned robot arm motion trajectory planning method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.

[0270] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.

[0271] An embodiment of the present application also provides a computer program product, which is stored in a storage medium. The program product is executed by at least one processor to implement the various processes of the above-mentioned robot arm motion trajectory planning method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.

[0272] It should be noted that, in the present application, the terms "comprise", "include" or any other variant 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 one..." does not exclude the presence of other identical elements in the process, method, article or device including the element. In addition, it should be noted that the scope of the method and device in the embodiment of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in reverse order according to the functions involved, for example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.

[0273] 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 motion trajectory planning method for a robotic arm, characterized in that: The method comprises: Obtaining n path point positions, the n path point positions including an initial path point, an end path point, and n-2 intermediate path points; calculating an absolute distance and a total absolute distance from each path point to the initial path point according to the n path point positions; A preset spatial speed is set, and a total time spent is calculated according to the preset spatial speed and the total absolute distance; and a time to reach each path point is calculated according to the absolute distance from each path point to the initial path point, the total absolute distance and the total time spent; Setting a preset speed change time, and calculating the speed change time required for each path point according to the preset speed change time; Calculate the angle vectors of the m-axis motors in the joint space corresponding to the n path points in the Cartesian space of the robot arm and the uniform speed segment speed and variable speed segment acceleration of the m-axis motors in each path segment; A sampling time is preset, and the real-time values ​​of the joint acceleration vector, the real-time value of the velocity vector and the real-time value of the position vector of the robotic arm at each time point are calculated according to the preset sampling time; and the motion trajectory of the robotic arm is planned according to the real-time values ​​of the joint acceleration vector, the real-time value of the velocity vector and the real-time value of the position vector of the robotic arm at each time point.

2. The motion trajectory planning method of a robot arm according to claim 1, characterized in that: The calculating the absolute distance and the total absolute distance from each path point to the initial path point according to the positions of the n path points includes: Assume that the position coordinates of n path points in Cartesian space are p i (x i ,y i , z i ), where i = 1, 2, ..., n, then the formula for the absolute distance from each path point to the initial path point is as follows: Total absolute distance d total =d n , the distance vector formula is as follows: d=[d1 d2,...d n ] Among them, d i Represents the absolute distance from the initial path point to path point i, d total It represents the total absolute distance from the initial path point to the final path point, and d represents the distance vector.

3. The motion trajectory planning method of a robot arm as claimed in claim 2, characterized in that: The setting of the preset spatial speed and calculating the total time taken according to the preset spatial speed and the total absolute distance includes: Set the preset space speed to S target , then the total time spent is calculated as follows: t total =d total / S target Among them, t total Indicates the total time spent, S target Indicates the preset space speed; The formula for the time to reach each path point is as follows: Among them, t i represents the time to reach path point i; The formula for the time vector is as follows: t=[t1 t2...t n ] Here, t represents the time vector.

4. The motion trajectory planning method of a robot arm according to claim 1, characterized in that: The setting of the preset speed change time and calculating the speed change time required for each path point according to the preset speed change time include: Set the preset speed change time to T acc , then the formula for the speed change time required for each path point is as follows: Among them, T acc Indicates the preset speed change time. When i=1, t acci represents the acceleration time of the initial path point; when i=n, ​​t acci Indicates the deceleration time of the end path point; when 2≤i≤n-1, t acci Indicates the speed change time at the intermediate path points; The formula for the speed change time vector is as follows: t acc =[t acc1 t acc2 ...t accn ] Among them, t acc Represents the speed change time vector.

5. The motion trajectory planning method of a robot arm as claimed in claim 4, characterized in that: Before calculating the speed change time required for each path point according to the preset speed change time, a time constraint condition is determined. The time constraint condition includes that the speed change time between two path points is less than the time spent between the two path points. The formula is as follows: After the time constraint is met, the speed of the uniform speed section and the acceleration of the variable speed section of each path section are calculated.

6. The motion trajectory planning method of a robot arm as claimed in claim 4, characterized in that: The method of calculating the angle vectors of the m-axis motors in the joint space corresponding to the n path points of the robot arm in the Cartesian space and the uniform speed segment speed and variable speed segment acceleration of the m-axis motors in each path segment includes: Obtain the angle vectors θ of the m-axis motors in the joint space corresponding to the n path points in the Cartesian space of the robot arm through inverse calculation i , the formula is as follows: i i =[θ i1 i i2 ...i im ] Where i = 1, 2, ..., n; There are n-1 path segments between n path points, and the speed formula of the m-axis motors in the uniform speed segment of each path segment is as follows: v j =[v j1 v j2 …v jm ]=(θ j+1 -θ j ) / (t j+1 -t j ) Wherein, jj=1, 2, ..., n-1; The speed change section of the m-axis motors in each path section includes an acceleration section from the initial path point to the intermediate path point, a deceleration section from the intermediate path point to the final path point, and a speed change section from the first intermediate path point to the last intermediate path point; The acceleration vector formula of the m-axis motor from the initial path point to the intermediate path point is as follows: a start =[a start1 a start2 ,...a startm ]=v1 / t acc1 ; The acceleration vector formula of the m-axis motor in the deceleration section from the middle path point to the end path point is as follows: a end =[a end1 a end2 ,...a endm ]=(0-v n-1 ) / t accn ; The acceleration vector formula of the m-axis motor in the speed change section between the first intermediate path point and the last intermediate path point is as follows: a middle =[a middle1 a middle2 ,...a middlem ]=(v k -v k-1 ) / t acck ; Among them, k = 2, 3, ..., n-1.

7. The motion trajectory planning method of a robot arm according to claim 6, characterized in that: The preset sampling time calculates the real-time value of the joint acceleration vector, the real-time value of the velocity vector and the real-time value of the position vector of the manipulator at each time point according to the preset sampling time, including: Set the preset sampling time to t; When the robot moves in the acceleration section from the initial path point to the first intermediate path point and t<t acc1 When , the formula for the real-time value of the joint acceleration vector of the robot arm is as follows: a real =[a real1 a real2 ...a realm ]=a start The formula for the real-time value of the velocity vector is as follows: in real =[in real1 in real2 ...in realm ]=a start ·t The formula for the real-time value of the position vector is as follows: When the robot moves in the uniform speed section from the initial path point to the first intermediate path point and t acc1 ≤t<(t2-t acc2 / 2), the formula for the real-time value of the joint acceleration vector of the robot arm is as follows: a real =0 The formula for the real-time value of the velocity vector is as follows: v real =v1 The formula for the real-time value of the position vector is as follows: i real =θ1+v1·t When the robot moves in the speed change section between the two intermediate points and (t i -t acci / 2)≤t<(t i +t acci / 2), when i=2, 3, ..., n-1, the formula of the real-time value of the joint acceleration vector of the robot arm is as follows: a real =a middle The formula for the real-time value of the velocity vector is as follows: v real =v i-1 +a middle ·(t-t i +t acci / 2) The formula for the real-time value of the position vector is as follows: When the robot moves in the uniform speed section between the two intermediate points and (t i +t acci / 2)≤t<(t i+1 -t acc(i+1) / 2), when i=2, 3, ..., n-1, the formula of the real-time value of the joint acceleration vector of the robot arm is as follows: a real =0 The formula for the real-time value of the velocity vector is as follows: v real =v n-1 The formula for the real-time value of the position vector is as follows: i real =θ n-1 +v n-1 ·(tt n-1 ) When the robot moves in the deceleration section from the last intermediate path point to the end path point and (t n -t accn )≤t≤t n When , the formula for the real-time value of the joint acceleration vector of the robot arm is as follows: a real =a end The formula for the real-time value of the velocity vector is as follows: v real =v n-1 +a end ·(t-t n +t accn ) The formula for the real-time value of the position vector is as follows:

8. A motion trajectory planning device for a robotic arm, characterized in that: The device comprises: A distance calculation module is configured to obtain n path point positions, wherein the n path point positions include an initial path point, an end path point, and n-2 intermediate path points; and calculate an absolute distance and a total absolute distance from each path point to the initial path point according to the n path point positions; The time calculation module is configured to set a preset spatial speed, calculate the total time taken according to the preset spatial speed and the total absolute distance; calculate the time taken to reach each path point according to the absolute distance from each path point to the initial path point, the total absolute distance and the total time taken; set a preset speed change time, and calculate the speed change time required for each path point according to the preset speed change time; A speed calculation module is configured to calculate the angle vectors of the m-axis motors in the joint space corresponding to the n path points in the Cartesian space of the robot arm and the uniform speed segment speed and variable speed segment acceleration of the m-axis motors in each path segment; The trajectory planning module is configured to preset a sampling time, calculate the real-time value of the joint acceleration vector, the real-time value of the velocity vector and the real-time value of the position vector of the robotic arm at each time point according to the preset sampling time, and plan the motion trajectory of the robotic arm according to the real-time value of the joint acceleration vector, the real-time value of the velocity vector and the real-time value of the position vector of the robotic arm at each time point.

9. A motion trajectory planning system for a robotic arm, the system comprising a processor and a memory, wherein a computer program is stored in the memory, characterized in that: The computer program is loaded and executed by the processor to implement the motion trajectory planning method of the robotic arm as described in any one of claims 1 to 7.

10. A computer-readable storage medium, wherein a computer program is stored in the storage medium, characterized in that: When the computer program is executed by a processor, it is used to implement the motion trajectory planning method of the robotic arm as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Cartesian space linear trajectory planning method and device for five-degree-of-freedom mechanical arm

    CN115837669A

  • Mechanical arm control method, mechanical arm, robot and storage medium

    CN116117813A

  • Mechanical arm trajectory planning method and system with given time and initial and final speeds

    CN116277038A

  • Quaternion-based mechanical arm node attitude speed look-ahead control method and device

    CN116985136A

  • Anchor protection mechanical arm multi-axis synchronous trajectory planning method and system

    CN118219263A