Robot arm control method, robot, and control terminal

CN116945182BActive Publication Date: 2026-08-11SHENZHEN PENGXING INTELLIGENT RES CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-08-08
Publication Date
2026-08-11

AI Technical Summary

Technical Problem

[0003]鉴于此,本申请实施例提供一种机器人的机械臂控制方法、机器人及控制终端,旨在解决如何优化机械臂末端的移动轨迹的问题

Benefits of technology

[0003]鉴于此,本申请实施例提供一种机器人的机械臂控制方法、机器人及控制终端,旨在解决如何优化机械臂末端的移动轨迹的问题。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116945182B_ABST
    Figure CN116945182B_ABST
Patent Text Reader

Abstract

This application discloses a robot arm control method, a robot, and a control terminal, relating to the field of robotics technology, and aims to solve the problem of optimizing the movement trajectory of a robot arm's end effector. The robot arm control method includes: planning a movement path based on the starting and ending points of the robot arm's end effector; selecting at least two first path points on the movement path; calculating a velocity-energy balance trajectory that satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of at least two arm joints based on the upper speed limits corresponding to each of the at least two first path points; and obtaining control commands for the robot arm's end effector based on the velocity-energy balance trajectory, which are used to control the robot arm's end effector to move along the velocity-energy balance trajectory. This application enables the robot arm's end effector to simultaneously meet the requirements of faster movement, lower energy consumption, and smoother motion.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robotics, specifically to a robotic arm control method, a robot, and a control terminal. Background Technology

[0002] With the development of robotics technology, robotic arms are increasingly being used in production and daily life, which in turn places demands on the trajectory planning of robotic arm end effectors to achieve faster movement, lower energy consumption, and smoother motion. However, the trajectory planning of robotic arm end effectors cannot yet simultaneously meet these requirements, which is inconsistent with actual needs and has limitations. Summary of the Invention

[0003] Therefore, embodiments of this application provide a robotic arm control method, a robot, and a control terminal, aiming to solve the problem of how to optimize the movement trajectory of the robotic arm's end effector.

[0004] The first aspect of this application provides a robot arm control method. The robot arm includes an end effector and at least two joints. The method includes: planning a movement path based on the start and end points of the end effector; selecting at least two first path points on the movement path; calculating a velocity-energy balance trajectory that satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of the at least two joints based on the upper speed limit values ​​corresponding to each of the at least two first path points; and obtaining control commands for the end effector based on the velocity-energy balance trajectory, wherein the control commands are used to control the end effector to move along the velocity-energy balance trajectory.

[0005] In this embodiment, since the speed-energy balance trajectory can simultaneously satisfy the joint angular acceleration constraint, joint torque constraint, and joint torque change rate constraint of at least two arm joints, the joint angular acceleration constraint is used to optimize the speed of the robotic arm end effector movement, the joint torque constraint is used to optimize the stability of the robotic arm end effector movement, and the joint torque change rate constraint is used to optimize the energy consumption of the robotic arm end effector movement, thereby enabling the robotic arm end effector movement to simultaneously meet the requirements of faster movement, lower energy consumption, and smoother motion.

[0006] A second aspect of this application provides a robot, comprising: a body; at least one robotic arm connected to the body, the robotic arm including an end effector and at least two joints; and a control system communicating with the body, the control system including a controller and a memory, the controller executing instructions stored in the memory to cause the robot to perform the following operations: planning a movement path based on the start and end points of the robotic arm end effector; selecting at least two first path points on the movement path; calculating a velocity-energy balance trajectory that satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of the at least two joints based on the upper speed limit values ​​corresponding to each of the at least two first path points; and obtaining control instructions for the robotic arm end effector based on the velocity-energy balance trajectory, the control instructions being used to control the robotic arm end effector to move along the velocity-energy balance trajectory.

[0007] A third aspect of this application provides a robot control terminal, comprising: a terminal communication module for communicating with the robot, the robot including at least one robotic arm, the robotic arm including an end effector and at least two joints; and a terminal control module for communicating with the terminal communication module, the terminal control module including a terminal controller and a terminal memory, the terminal controller executing instructions stored in the terminal memory to cause the control terminal to perform the following operations: planning a movement path based on the start and end points of the robotic arm end effector; selecting at least two first path points on the movement path; calculating a velocity-energy balance trajectory that satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of at least two joints based on the upper speed limit values ​​corresponding to each of the at least two first path points; obtaining control instructions for the robotic arm end effector based on the velocity-energy balance trajectory, the control instructions being used to control the robotic arm end effector to move along the velocity-energy balance trajectory; and sending control instructions to the robot.

[0008] It is understood that the specific implementation methods and beneficial effects of the robot control terminal provided in the second aspect and the robot provided in the third aspect of the embodiments of this application are largely the same as the specific implementation methods and beneficial effects of the robot robotic arm control method provided in the first aspect, and will not be repeated here. Attached Figure Description

[0009] Figure 1 This is a hardware structure block diagram of a robot provided in one embodiment of this application.

[0010] Figure 2 This is a schematic diagram of the structure of a robotic arm provided as an example.

[0011] Figure 3 yes Figure 2 A schematic diagram of each axis of the robotic arm.

[0012] Figure 4 This is a schematic diagram of the hardware structure of a robot provided in another embodiment of this application.

[0013] Figure 5 This is a schematic diagram of the mechanical structure of a robot provided in one embodiment of this application.

[0014] Figure 6 This is a flowchart of a robotic arm control method for a robot provided in one embodiment of this application.

[0015] Figure 7 This is a schematic diagram of the planned movement trajectory of the end effector of a robotic arm according to one embodiment of this application.

[0016] Figure 8 This is a schematic diagram of several reference state points corresponding to target state points that satisfy joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints, provided by one embodiment of this application.

[0017] Figure 9 This is a flowchart of a robotic arm control method for a robot provided in another embodiment of this application.

[0018] Figure 10 This is a schematic diagram of the structure of a control terminal provided in one embodiment of this application. Detailed Implementation

[0019] It should be noted that in the embodiments of this application, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone, where A and B can be singular or plural. The terms "first," "second," etc. (if present) in the specification, claims, and drawings of this application are used to distinguish similar objects, not to describe a specific order or sequence.

[0020] It should also be noted that the methods disclosed in the embodiments of this application or the methods shown in the flowcharts include one or more steps for implementing the method. Without departing from the scope of the claims, the execution order of multiple steps can be interchanged, and some steps can also be deleted.

[0021] The robot described in the embodiments of this application will be described below.

[0022] A robot can be any of many types of robots, specifically including, but not limited to, at least one of wheeled robots, legged robots, tracked robots, crawling robots, worm-like robots, or swimming robots. For example, a robot can be a legged robot or a robot combining legs and wheels. Legged robots include monopodial robots, bipodial robots, or multipodial robots. A multipodial robot is a legged robot with three or more legs; for example, a multipodial robot can be a quadrupedal robot. A robot is a machine capable of performing semi-autonomous or fully autonomous tasks. Robots are not limited to humanoid robotic devices; they can also include robots with configurations such as dog-like, horse-like, snake-like, fish-like, or ape-like. For example, a robot can be a quadrupedal robotic horse.

[0023] Figure 1 This is a hardware structure block diagram of a robot provided in one embodiment of this application.

[0024] See also Figure 1 The robot 10 includes a body 110, a robotic arm 120, and a control system 130. The body 110 is connected to at least one robotic arm 120. The robotic arm 120 includes an end effector 121 and at least two arm joints 122. The at least two arm joints 122 connect the body 110 and the end effector 121, and can be connected in series or in parallel. The control system 130 communicates with the body 110 and includes a controller 131 and a memory 132. The controller 131 is connected to the memory 132. The memory 132 is used to store data / instructions. The controller 131 is used to execute the instructions stored in the memory 132, causing the robot 10 to perform corresponding operations to achieve various functions, such as delivering or picking up goods at a predetermined location, or opening or closing doors in a predetermined area.

[0025] In one embodiment, see also Figure 2 and Figure 3 , Figure 2 This is a schematic diagram of the structure of a robotic arm provided as an example. Figure 3 yes Figure 2 A schematic diagram of each axis of the robotic arm. The robotic arm 120 is a six-axis serial robotic arm. The motors of each arm joint 122 (axis) drive the corresponding link movement, ultimately realizing the movement of the robotic arm end effector 121. The controller 131 controls the robotic arm end effector 121 to move along the planned path with predetermined speed and acceleration values ​​according to the instructions, aiming to ensure that the robotic arm end effector 121 moves to the target position in a shorter time and with smoother movements.

[0026] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the robot. In other embodiments, the robot may include more or fewer components than illustrated, or combine some components, or separate some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0027] For example, see also Figure 4 and Figure 5 , Figure 4 This is a schematic diagram of the hardware structure of a robot provided in another embodiment of this application. Figure 5 This is a schematic diagram of the mechanical structure of a robot provided in one embodiment of this application.

[0028] like Figure 4 As shown, robot 30 includes a mechanical unit 301, a communication unit 302, a sensing unit 303, an interface unit 304, a storage unit 305, a display unit 306, an input unit 307, a control module 308, and a power supply 309. The various components of robot 30 can be connected in any way, including wired or wireless connections.

[0029] The following is combined Figure 4 and Figure 5 The robot's various components are described in detail.

[0030] Mechanical unit 301 is the hardware of robot 30. For example... Figure 4 As shown, the mechanical unit 301 may include a drive plate 3011, a motor 3012, and a mechanical structure 3013.

[0031] like Figure 5 As shown, the mechanical structure 3013 may include a body 3014, extendable legs 3015, foot end 3016, rotatable head structure 3017, wobbly tail structure 3018, cargo-carrying structure 3019, saddle structure 3020, and camera structure. Figure 5 (not shown in the image) and an extendable robotic arm ( Figure 5 (not shown in the image) etc. The robotic arm includes an end effector and at least two joints.

[0032] It should be noted that the number of each component of the mechanical unit 301 can be one or more, which can be set according to the specific situation. For example, there can be 4 legs 3015, and each leg 3015 can be configured with 3 motors 3012, resulting in 12 motors 3012.

[0033] The communication unit 302 can be used for receiving and transmitting signals, and can also communicate with networks and other devices. For example, it can receive instructions from a remote control or other robots to move in a specific direction at a specific speed according to a specific gait, and then transmit these instructions to the control module 308 for processing. The communication unit 202 may include units such as WiFi, 4G, 5G, Bluetooth, and infrared.

[0034] The sensing unit 303 is used to acquire information data about the environment surrounding the robot 30 and monitor parameter data of various components inside the robot 20, and sends this data to the control module 308. The sensing unit 303 includes various sensors, such as sensors for acquiring information about the surrounding environment: monocular camera, lidar (for remote object detection, distance determination, and / or velocity determination), millimeter-wave radar (for short-range object detection, distance determination, and / or velocity determination), Global Navigation Satellite System (GNSS), etc. Sensors for monitoring various components inside the robot 30 include: inertial measurement unit (IMU) (for measuring velocity, acceleration, and angular velocity values), foot sensors (for monitoring the position of the foot's contact point, foot posture, magnitude and direction of the contact force), temperature sensors (for detecting component temperature), etc. Other sensors that can be configured on the robot 30, such as load sensors, touch sensors, motor angle sensors, and torque sensors, will not be detailed here.

[0035] The interface unit 304 can be used to receive input information (e.g., data information, power, etc.) from external devices and transmit the received input information to one or more components within the robot 30, or it can be used to output information (e.g., data information, power, etc.) to external devices. The interface unit 304 may include a power port, a data port (such as a USB port), a memory card port, a port for connecting a device with an identification unit, an audio input / output (I / O) port, and a video I / O port, etc.

[0036] Storage unit 305 is used to store software programs and various data. Storage unit 305 mainly includes a program storage area and a data storage area. The program storage area can store operating system programs, motion control programs, application programs (such as text editors), etc. The data storage area can store data generated by the robot 20 during use (such as various sensor data acquired by the sensing unit 303, log file data, etc.).

[0037] The display unit 306 is used to display information input by the user or information provided to the user. The display unit 306 may include a display panel 3061, which may be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like.

[0038] Input unit 307 can be used to receive input numerical or character information. Specifically, input unit 307 may include touch panel 3071 and / or other input devices 3072. Touch panel 3071, also known as touch screen, can collect user touch operations (such as operations performed by the user using their palm, fingers, or suitable accessories on or near touch panel 3071) and drive corresponding connected devices according to a pre-set program. Touch panel 3071 may include touch detection device 3073 and touch controller 3074. Touch detection device 3073 detects the user's touch position and the signal generated by the touch operation, and transmits the signal to touch controller 3074. Touch controller 3074 receives touch information from touch detection device 3073, converts it into touch point coordinates, and sends it to control module 308. It can also receive and execute instructions from control module 308. In addition to touch panel 3071, input unit 307 may also include other input devices 3072, such as remote control handles, which are not limited here.

[0039] Furthermore, the touch panel 3071 can cover the display panel 3061. When the touch panel 3071 detects a touch operation on or near it, it transmits the information to the control module 308 to determine the type of touch event. Subsequently, the control module 308 provides corresponding visual output on the display panel 3061 according to the type of touch event. Although in Figure 4 In this embodiment, the touch panel 3071 and the display panel 3061 are two independent components that implement input and output functions respectively. However, in some embodiments, the touch panel 3071 and the display panel 3061 can be integrated to implement input and output functions. The specific implementation is not limited here.

[0040] The control module 308 is the control center of the robot 30. It connects various components of the robot through various interfaces and lines. It controls the robot 30 as a whole by running or executing software programs stored in the storage unit 305 and calling data stored in the storage unit 305.

[0041] Power supply 309 is used to supply power to various components. Power supply 309 may include a battery and a power control board. The power control board is used to control battery charging and discharging, and to implement power consumption management functions. Figure 4In the illustrated embodiment, power supply 309 is connected to control module 308. In other embodiments, power supply 309 may also be electrically connected to sensing unit 303 (such as camera, radar, speaker, etc.) and motor 3012. It should be noted that each component may be connected to a different power supply 309, or may be powered by the same power supply 309.

[0042] In some embodiments, the control terminal can control the robot 30. Specifically, the control terminal is communicatively connected to the robot 30. When communicating with the robot 30, the control terminal can send control commands to the robot 30. The robot 30 can receive the control commands through the communication unit 302 and, upon receiving the control commands, can transmit them to the control module 308, so that the control module 308 can perform the corresponding functions according to the control commands. The control terminal includes, but is not limited to, mobile phones, tablet computers, servers, personal computers, wearable smart devices, and other electronic devices.

[0043] Control commands can be determined based on preset conditions. In one embodiment, the sensing unit 303 can generate control commands based on the current environment of the robot 30. The control module 308 can determine whether the current speed and acceleration values ​​of the robotic arm end effector meet the corresponding preset conditions based on the control commands. If the preset conditions are met, the robotic arm end effector will maintain its current speed and acceleration values. If the preset conditions are not met, a target speed and target acceleration value will be determined based on the corresponding preset conditions, thereby controlling the robotic arm end effector to move at the target speed and target acceleration values. The communication between the sensing unit 303 and the control module 308 can be wired or wireless. Wireless communication methods include, but are not limited to, wireless networks, mobile communication networks (3G, 4G, 5G, etc.), Bluetooth, and infrared.

[0044] With the development of robotics technology, robotic arms are increasingly used in production and daily life, leading to demands for faster, less energy-consuming, and smoother movements in the trajectory planning of robotic arm end effectors. However, current trajectory planning for robotic arm end effectors cannot simultaneously meet these requirements, falling short of practical needs and exhibiting limitations. Specifically, S-shaped trajectory planning is commonly used for robotic arm control, but this method struggles to fully utilize the end effector's motion capabilities, making it difficult to achieve faster movements. Furthermore, S-shaped trajectory planning is not ideal for achieving lower energy consumption, requiring integration with intelligent algorithms such as genetic algorithms. However, this approach consumes significant computational resources and is unsuitable for controlling real-time components like robotic arms. Moreover, convex optimization-based robotic arm trajectory planning methods can achieve time-optimal planning with relatively low computational resource consumption, obtaining the time-optimal trajectory of the end effector. However, the trajectory obtained using this method contains abrupt acceleration changes, resulting in less smooth movement of the end effector along this trajectory, and this method does not consider the requirement for lower energy consumption. Based on this, introducing jerk constraints into convex optimization problems can eliminate sudden acceleration changes. However, the robustness of this method is reduced, and it suffers from the defect of having no solution for trajectory planning problems. It is also difficult to achieve the requirement of lower energy consumption.

[0045] Based on this, embodiments of this application provide a robotic arm control method, a robot, and a control terminal, aiming to solve the problem of how to optimize the movement trajectory of the robotic arm's end effector.

[0046] The robotic arm control method of the robot according to the embodiments of this application will be described in detail below.

[0047] The robotic arm control method can be applied to either the robot or the control terminal. The following explanation uses a robot as the executing entity, for example... Figure 1 Robot 10 shown, or Figure 4 The robot 30 shown.

[0048] Figure 6 This is a flowchart of a robotic arm control method for a robot provided in one embodiment of this application.

[0049] like Figure 6 As shown, the robot's robotic arm control method includes the following steps:

[0050] S601 plans the movement path based on the starting and ending points of the robotic arm's end effector.

[0051] In this embodiment, the starting point and ending point of the robotic arm's end effector are the same reference point selected by the robot on the end effector. Specifically, from a first moment to a second moment, the robot controls the movement of the robotic arm's end effector. At the first moment, this reference point on the end effector is the starting point. At the second moment, this reference point on the end effector is the ending point. The starting point of the robotic arm's end effector is determined by the robot based on its own position, and the ending point is determined by the robot based on a predetermined target position.

[0052] The movement path is the path taken by the end effector of the robotic arm from the starting point to the ending point. This application does not limit the specific method for planning the movement path.

[0053] S602, sample several initial path points on the moving path.

[0054] In this embodiment, the planned movement path is a Cartesian space path. A path parameter s is used to represent the Cartesian space path, where 0 ≤ s ≤ 1. The path parameter s from 0 to 1 represents the Cartesian space path from the starting point to the ending point. The path parameter s is discretized at equal intervals to obtain the sequence S = [s1, s2, ..., s...]. M-1 ,s M ], where M is a positive integer. Each element in sequence S corresponds to a distance along a path in Cartesian space.

[0055] For example, suppose the Cartesian space path is discretized into 5 distance segments, each segment being 1 / 5 the length of the Cartesian space path, then the sequence S = [0.2, 0.4, 0.6, 0.8, 1].

[0056] Sample several initial path points along the Cartesian space path. The sampling method can be random sampling or sampling at predetermined intervals.

[0057] S603 transforms several initial path points into their respective joint paths through inverse kinematics transformation.

[0058] In this embodiment, the joint path is the joint space path corresponding to the Cartesian space path. Through inverse kinematic transformation, several initial path points in Cartesian space are converted into several initial path points corresponding to the joint space. Using the sequence S as the joint vector and the several initial path points corresponding to the joint space as interpolation points, the continuous joint path q(s) is calculated using the cubic spline interpolation method, where q is the joint angle vector.

[0059] S604: Based on the joint paths corresponding to the initial path points, map the joint constraints corresponding to the initial path points to the phase plane.

[0060] The joint constraints include the upper and lower limits of the joint angular velocity, the upper and lower limits of the joint angular acceleration, and the upper and lower limits of the joint torque.

[0061] In this embodiment, based on the joint angle vector q on the phase plane, equations as shown in formulas (1) to (3) are listed.

[0062]

[0063]

[0064]

[0065] in, These are the first and second derivatives of the path parameter s with respect to time t, respectively. q and q″ are the first and second derivatives of the joint angle vector q with respect to time t, respectively, and q′ and q″ are the first and second derivatives of the joint angle vector q with respect to the path parameter s, respectively.

[0066] The joint constraints mapped onto the phase plane are shown in equations (4) to (6).

[0067]

[0068]

[0069]

[0070] in, These are the lower and upper limits of the joint angular velocity, respectively. These are the lower and upper limits of joint angular acceleration, respectively. These are the lower and upper limits of the joint angle acceleration, respectively.

[0071] S605, under the constraint of the phase plane, calculate the upper and lower limits of the velocities corresponding to several initial path points.

[0072] In this embodiment, the joint angular velocity constraint shown in the above formula (4) is substituted into the equation shown in the above formula (1) to calculate the lower limit and upper limit of the velocity corresponding to the initial path point as shown in formulas (7) and (8).

[0073]

[0074]

[0075] Where n is the joint number and m is the initial path point number, under joint angular velocity constraints... These are the lower and upper limits of the joint angular velocity corresponding to joint n in the phase plane, respectively. These are the lower and upper limits of the velocity corresponding to the initial path point m on the phase plane, respectively.

[0076] It is understandable that the upper and lower limits of the velocities corresponding to the initial path points calculated by the above formulas (7) and (8) only consider the joint angular velocity constraints. Furthermore, by adding joint angular acceleration constraints and joint torque constraints, the upper and lower limits of the velocities corresponding to the initial path points calculated by the above formulas (7) and (8) are optimized to obtain the upper and lower limits of the velocities corresponding to the initial path points under the joint angular velocity constraints, joint angular acceleration constraints, and joint torque constraints.

[0077] In this embodiment, based on several initial path points, from the second-to-last initial path point to the first initial path point, the optimization problem shown in formulas (9) and (10) is solved sequentially at each initial path point, with the optimization variable x m The values ​​are used to calculate the lower and upper limits of the velocity at each initial path point. The lower and upper limits of the velocity at the penultimate initial path point are the predetermined lower and upper limits of the end velocity at the end of the robotic arm.

[0078] Specifically, the joint angular acceleration constraint shown in the above formula (5) is substituted into the equation shown in the above formula (2), and the joint torque constraint is added to list the equation set as shown in formulas (9) and (10).

[0079]

[0080]

[0081] in, Δ m =s m+1 -s m , x m , They are respectively The lower and upper bounds at the initial path point m will be... The lower and upper bounds at the initial path point m+1 x m+1 , As a constraint at the initial path point m τ , These are the lower and upper limits of the joint torque, respectively. m b m c mThis is the dynamic parameter matrix of the robotic arm, calculated using methods derived from the Lagrange equations. 'a' is a constant; when the value of 'a' is sufficiently small (e.g., a = 10), it is considered a constant. -8 When considering speed constraints, the main factor is the speed constraint.

[0082] The joint torque can be calculated according to formula (11).

[0083]

[0084] Where M(q) is the inertial parameter, C(q) is the Coriolis force and centrifugal force parameter, G(q) is the gravity parameter, and τ is the calculated joint torque.

[0085] Substituting the above formulas (1) and (2) into formula (11) accordingly, the joint torque on the phase plane as shown in formula (12) is calculated.

[0086]

[0087] Among them, a(s)=M(q(s))q′(s), b(s)=M(q(s))q″(s)+q′(s) T C(q)q′(s), c(s)=G(q(s)), τ(s)=τ(q(s)).

[0088] It is understandable that both the upper and lower limits of speed can be positive or negative. For example, when the end effector of a robotic arm accelerates, assuming the initial speed is negative, the upper limit of speed can be either positive or negative. When the end effector of a robotic arm decelerates, assuming the initial speed is positive, the lower limit of speed can be either positive or negative.

[0089] S606: Based on the upper and lower limits of the speed corresponding to each of the initial path points, obtain the high-speed trajectory corresponding to the movement path of the robotic arm end effector.

[0090] In this embodiment, based on several initial path points, from the first initial path point to the second-to-last initial path point, the system of equations shown in formula (13) is solved sequentially at each initial path point to optimize the variable x. m The value is used to calculate the high-speed trajectory that satisfies the joint angular velocity constraint, joint angular acceleration constraint, and joint torque constraint of the robotic arm end effector.

[0091]

[0092] Wherein, the lower and upper limits of the velocity corresponding to the first initial path point are the predetermined lower and upper limits of the velocity at the starting point of the robotic arm's end effector, respectively. The optimization variable x at the initial path point m+1... m The value can be calculated based on the optimization results at the initial path point m, as shown in formula (14).

[0093] x m+1 =2Δ m u m +x m (14)

[0094] Based on the optimization results at each initial path point, calculate x. m By interpolating the squared value with the sequence S, the high-speed trajectory on the phase plane is obtained.

[0095] It can be understood that the speed corresponding to each initial path point on the high-speed trajectory is greater than or equal to a preset speed threshold, and the speed threshold is less than or equal to the minimum of the upper speed limits corresponding to each initial path point, and greater than the maximum of the lower speed limits corresponding to each initial path point. When the speed corresponding to each initial path point on the high-speed trajectory is the upper speed limit, the robotic arm end effector moves at the maximum speed along the high-speed trajectory, and the motion time is the shortest.

[0096] S607, sample several reference path points on the movement path.

[0097] In this embodiment, reference path points can be obtained either by random sampling along the movement path or by sampling initial path points. On the high-speed trajectory, the upper speed limit of each initial path point is the upper speed limit corresponding to the reference path point sampled along the movement path.

[0098] In one embodiment, compared to the initial path point sampling, the reference path point sampling discretizes the path parameters s at larger intervals, resulting in a sparser sequence S of path parameters s. sparse =[s1,s2,…,s I-1 ,s I ], where I is a positive integer.

[0099] S608: Based on the speed limit values ​​corresponding to at least two reference path points, obtain several reference state points corresponding to at least two reference path points.

[0100] In this embodiment, the upper limit of the speed corresponding to the reference path point is used as a constraint. The speed corresponding to the reference path point is discretized from 0 to this upper limit, resulting in several reference state points corresponding to the reference path point. For example, a reference state point is... This represents the j-th reference state point corresponding to the i-th reference path point.

[0101] S609, interpolate the interval between two adjacent reference path points based on several reference state points corresponding to each of the two adjacent reference path points, and obtain several interpolation points.

[0102] In this embodiment, sequence S sparseIt includes I reference path points, and the distance between any two adjacent reference path points is defined as an interval. Correspondingly, the sequence S... sparse It includes I-1 intervals. Interpolation can be performed sequentially from interval 1 to interval I-1, or from interval I-1 to interval 1, to obtain several interpolation points. The interpolation points of an interval are located between the reference state points to the left and right of that interval.

[0103] In one embodiment, interpolation is performed sequentially on each interval from the (I-1)th interval to the first interval. Interpolation occurs between any two intervals' left and right reference state points. For example, in the (I-1)th interval, there are J reference state points on the left and only one reference state point on the right, representing the speed corresponding to the end point of the movement path; therefore, this interval has J×1 interpolations. From the (I-2)th interval to the second interval, each interval has J reference state points on the left and J reference state points on the right, thus each interval has J×J interpolations. In the first interval, there is only one reference state point on the left, representing the speed corresponding to the starting point of the movement path, and J reference state points on the right; therefore, this interval has J×1 interpolations.

[0104] Specifically, in the (I-1)th interval, assume the reference state point on the left side of the interval is... The reference state point on the right side of the interval is Then, based on the reference state point on the left side of the interval, corresponding to s i and The relationship between the reference state point on the right side of the interval and the corresponding s i+1 and The relationship can be used to formulate two sets of equations, from which second-order polynomial interpolation can be performed in this interval. The case of the first interval is roughly the same as that of the (I-1)th interval, and second-order polynomial interpolation will also be performed. From the (I-2)th interval to the third interval, assume that the reference state point on the left side of the interval is... The reference state point on the right side of the interval is Then, based on the reference state point on the left side of each interval, s corresponds to... i and The relationship between the reference state point on the right side of the interval and the corresponding s i+1 , and The relationship can be used to formulate three sets of equations, from which third-order polynomial interpolation can be performed in each interval. In the second interval, assume the reference state point on the left side of the interval is... The reference state point on the right side of the interval is Then, based on the reference state point on the left side of the interval, corresponding to s i , and The relationship between the reference state point on the right side of the interval and the corresponding s i+1 , and The relationship can be used to formulate four sets of equations, from which fourth-order polynomial interpolation can be performed in this interval.

[0105] S610, by sampling the interpolation points, at least one target state point is obtained.

[0106] In this embodiment, the target state point may be the same as or different from the interpolation point. For example, in the interval [s] i ,s i+1 In the above, based on several interpolation points, the path parameters s corresponding to the interval are discretized to obtain the sequence S of path parameters s. check =[s i ,…,s k ,…,s i+1 ]. Sequence S check Each element in the interval [s] corresponds to a specific range. i ,s i+1 A distance within [the sequence S]. check Sample the interpolation points corresponding to at least one element to obtain at least one target state point.

[0107] S611, determine whether at least one target state point satisfies the joint angular acceleration constraint, joint torque constraint, and joint torque change rate constraint of at least two arm joints.

[0108] In this embodiment, the target state point can be judged to satisfy the joint angular acceleration constraint, joint torque constraint and joint torque change rate constraint by substituting the velocity, acceleration and jerk corresponding to the target state point into the above formulas (1) to (6).

[0109] It is understood that a change in joint angular jerk will cause a corresponding change in the rate of change of joint torque. In one embodiment, it is also possible to determine whether the target state point satisfies the joint angular jerk constraint by substituting the jerk corresponding to the target state point into the above formulas (3) and (6).

[0110] If at least one target state point satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque rate of change constraints of at least two arm joints, then proceed to steps S612 to S613. If there is a target state point that does not satisfy the joint angular acceleration constraints, joint torque constraints, and joint torque rate of change constraints of at least two arm joints, then return to step S607.

[0111] S612, select several reference state points that correspond to the target state point that satisfies the joint angular acceleration constraint, joint torque constraint and joint torque change rate constraint.

[0112] In this embodiment, based on the determination of whether each target state point satisfies the joint angular acceleration constraint, joint torque constraint, and joint torque rate of change constraint, target state points that satisfy these constraints can be selected. The interval containing the target state points that satisfy these constraints corresponds to several reference state points, thereby allowing for the selection of corresponding reference state points. For example, assuming sequence S... check If the target state points corresponding to each element satisfy the joint angular acceleration constraint, joint torque constraint, and joint torque change rate constraint, then the storage interval [s] is saved. i ,s i+1 The two corresponding reference state points.

[0113] S613, calculate the average value of the joint angular velocities of at least two arm joints corresponding to the two reference state points in the corresponding interval.

[0114] In this embodiment, the average value of the joint angular velocities of at least two arm joints corresponding to the two reference state points in the corresponding interval is used to measure the speed at which the end effector of the robotic arm moves in the corresponding interval.

[0115] S614, calculate the rate of change of joint torque based on the path difference between the two reference state points in the corresponding interval, the average value of the joint angular velocity, and the joint torque of at least two arm joints.

[0116] In this embodiment, the joint torque change rate of at least two arm joints is used to measure the energy consumption of the robotic arm end effector moving in the corresponding range.

[0117] S615, calculate the cost function value based on the average joint angular velocity and the joint torque change rate.

[0118] In this embodiment, the cost function value is used to determine the reference state point that meets the energy consumption and speed requirements. The cost function value is calculated as shown in formula (15).

[0119]

[0120] in, Reference state point and The average joint angular velocity of at least two arm joints. Δ is the rate of change of joint torque for at least two arm joints. i Reference state point and The path difference between them, τ i For the joint torque of at least two arm joints. Δ i =s i+1 -si k1 and k2 are preset coefficients.

[0121] S616, based on the cost function value, determines whether several reference state points corresponding to the target state point that satisfies the joint angular acceleration constraint, joint torque constraint, and joint torque change rate constraint meet the energy consumption and speed requirements.

[0122] In this embodiment, since an interval can correspond to several reference state points, the interval can correspond to multiple cost function values. The reference state point corresponding to the maximum cost function value can be used as the reference state point that satisfies the energy consumption and speed requirements of the interval.

[0123] If several reference state points corresponding to the target state point that satisfy the joint angular acceleration constraint, joint torque constraint, and joint torque change rate constraint meet the energy consumption and speed requirements, then proceed to steps S617 to S619. If several reference state points corresponding to the target state point that satisfy the joint angular acceleration constraint, joint torque constraint, and joint torque change rate constraint do not meet the energy consumption and speed requirements, then return to step S607.

[0124] S617, selects reference state points that meet the energy consumption and speed requirements.

[0125] In this embodiment, based on the judgment of whether each reference state point meets the energy consumption and speed requirements, reference state points that meet the energy consumption and speed requirements can be selected. Reference state points that meet the energy consumption and speed requirements can be selected sequentially in each interval, from interval 1 to interval I, or from interval I to interval 1.

[0126] S618, save the cost function value at one reference state point in the corresponding interval and the state point number at another reference state point.

[0127] In this embodiment, the state point number is used to determine the corresponding reference state point at the reference path point in each interval. The cost function value and the state point number at the reference state point on the left side of each interval can be stored, or the cost function value and the state point number at the reference state point on the left side of each interval can be stored. For example, at the reference state point on the left side of the first interval, the cost function value corresponding to the first interval and the state point number at the reference state point on the right side of the interval are stored. At the reference state point on the right side of the first interval, the cost function value and the state point number at the reference state point on the right side of the interval corresponding to the second interval are stored.

[0128] S619 forms a speed-energy balance trajectory based on a reference state point that meets energy consumption and speed requirements and its corresponding target state point.

[0129] In this embodiment, the speed-energy balance trajectory consists of at least two reference path points, each corresponding to a reference state point that meets the energy consumption and speed requirements, and a target state point corresponding to it.

[0130] For example, see [link to relevant documentation] Figure 7 and Figure 8 , Figure 7 This is a schematic diagram of the planned movement trajectory of the end effector of a robotic arm according to one embodiment of this application. Figure 8 This is a schematic diagram of several reference state points corresponding to target state points that satisfy joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints, provided by one embodiment of this application. Figure 7 and Figure 8 The horizontal axis of the coordinate system represents the path parameter s, and the vertical axis represents the first derivative of the path parameter s with respect to time t.

[0131] exist Figure 7 In the sequence S = [s1, s2, ..., s7, s8], curve S1 is the calculated high-speed trajectory that satisfies the joint angular velocity constraint, joint angular acceleration constraint, and joint torque constraint of the robotic arm end effector, and curve S2 is the calculated speed-energy balance trajectory that satisfies the energy consumption and speed requirements. Point A is a reference state point corresponding to the sampled reference path point. Point B is a reference state point corresponding to the sampled reference path point. Points A and B are both located below curve S1 and above curve S2, respectively. They both satisfy joint angular velocity constraints, joint angular acceleration constraints, and joint torque constraints, but do not satisfy joint torque change rate constraints or joint angular acceleration constraints. Target state points that satisfy the joint angular acceleration, joint torque, and joint torque change rate constraints, along with their corresponding reference state points, form several connecting lines between each interval. Based on the judgment of whether each reference state point meets the energy consumption and speed requirements, reference state points that meet the energy consumption and speed requirements are selected. The connecting lines formed by these reference state points and their corresponding target state points constitute a speed and energy consumption balance trajectory along the entire movement path.

[0132] exist Figure 8 In the interval [s] i ,s i+1 In the diagram, point C is the reference state point on the left side of the interval. Points D, E, and F are the reference state points on the right side of the interval. and The target state points on the connecting lines formed by point C and points D, E and F are checked sequentially to determine whether each target state point satisfies the joint angular acceleration constraint, joint torque constraint and joint torque rate of change constraint of at least two arm joints. In this way, several reference state points corresponding to the target state points that satisfy the joint angular acceleration constraint, joint torque constraint and joint torque rate of change constraint are selected.

[0133] S620 obtains control commands for the end effector of the robotic arm based on the speed and energy consumption balance trajectory, so as to control the end effector of the robotic arm to move along the speed and energy consumption balance trajectory.

[0134] In this embodiment, based on the calculated velocity-energy balance trajectory, the robot can generate corresponding control commands for the robotic arm end effector. These control commands are used to control the robotic arm end effector to move along the velocity-energy balance trajectory. Because the velocity-energy balance trajectory can simultaneously satisfy the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of at least two arm joints, the movement of the robotic arm end effector can simultaneously meet the requirements of faster movement, lower energy consumption, and smoother motion.

[0135] Figure 9 This is a flowchart of a robotic arm control method for a robot provided in another embodiment of this application.

[0136] like Figure 9 As shown, the robot's robotic arm control method includes the following steps:

[0137] S901 plans the movement path based on the starting and ending points of the robotic arm's end effector.

[0138] The specific implementation method of step S901 and Figure 6 The steps shown in step S601 are the same and will not be repeated here.

[0139] S902, Select at least two reference path points on the movement path.

[0140] In this embodiment, reference path points can be obtained by randomly sampling along the movement path.

[0141] S903, based on the upper limit of velocity corresponding to at least two reference path points, calculate the velocity-energy balance trajectory that satisfies the joint angular acceleration constraint, joint torque constraint, and joint torque change rate constraint of at least two arm joints.

[0142] In this embodiment, several reference state points corresponding to at least two reference path points are obtained based on their respective upper velocity values. Interpolation is performed on the interval between two adjacent reference path points based on the several reference state points corresponding to each of the two adjacent reference path points, and several interpolation points are obtained. At least one target state point is obtained by sampling the interpolation points. It is determined whether at least one target state point satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of at least two arm joints. If at least one target state point satisfies these constraints, several reference state points corresponding to the target state point satisfying these constraints are selected. It is determined whether the several reference state points corresponding to the target state point satisfying these constraints meet energy consumption and speed requirements, and reference state points meeting these requirements are selected. The speed-energy balance trajectory is composed of the reference state points corresponding to at least two reference path points that meet the energy consumption and speed requirements and their corresponding target state points.

[0143] The process of determining whether two reference state points within a corresponding interval meet the energy consumption and speed requirements includes: calculating the average joint angular velocities of at least two arm joints corresponding to each of the two reference state points within the corresponding interval; calculating the rate of change of joint torque based on the path difference between the two reference state points within the corresponding interval, the average joint angular velocities, and the joint torques of at least two arm joints; and calculating a cost function value based on the average joint angular velocities and the rate of change of joint torque. This cost function value is used to determine the reference state points that meet the energy consumption and speed requirements.

[0144] In another embodiment, after selecting reference state points that meet the energy consumption and speed requirements, the robot's robotic arm control method further includes: storing the cost function value at one reference state point within a corresponding interval and the state point number at another reference state point. The state point number is used to determine the corresponding reference state point at the first path point in each interval.

[0145] S904 obtains control commands for the end effector of the robotic arm based on the speed and energy consumption balance trajectory, so as to control the end effector of the robotic arm to move along the speed and energy consumption balance trajectory.

[0146] The specific implementation method of step S904 and Figure 6 The steps shown in step S620 are the same and will not be repeated here.

[0147] In one embodiment, prior to step S902, the robot arm control method further includes: sampling a plurality of initial path points on the movement path. Based on the upper and lower limits of the joint angular velocities, joint angular accelerations, and joint torques of at least two arm joints corresponding to each of the plurality of initial path points, the upper and lower limits of the speeds corresponding to the end effector at each of the plurality of initial path points are obtained. Based on the upper and lower limits of the speeds corresponding to each of the plurality of initial path points, a high-speed trajectory corresponding to the movement path of the end effector is obtained. On the high-speed trajectory, the upper limit of the speed at each initial path point is the upper limit of the speed corresponding to a reference path point subsequently sampled on the movement path.

[0148] Specifically, based on the upper and lower limits of the joint angular velocities, joint angular accelerations, and joint torques of at least two arm joints corresponding to several initial path points, the upper and lower limits of the velocities corresponding to the robotic arm end effector at each of the several initial path points are obtained. This includes: converting the several initial path points into joint paths corresponding to each initial path point through inverse kinematics transformation; mapping the upper and lower limits of the joint angular velocities, joint angular accelerations, and joint torques corresponding to each of the several initial path points onto a phase plane based on the joint paths; and calculating the upper and lower limits of the velocities corresponding to each of the several initial path points under the constraints of the phase plane.

[0149] The following section describes the robot's robotic arm control method in conjunction with the robot's control terminal.

[0150] Figure 10 This is a schematic diagram of the structure of a control terminal provided in one embodiment of this application.

[0151] like Figure 10As shown, the control terminal 20 includes a terminal communication module 210 and a terminal control module 220. The terminal communication module 210 communicates with the robot, which includes at least one robotic arm, with an end effector and at least two joints. The terminal control module 220 communicates with the terminal communication module 210 and includes a terminal controller 221 and a terminal memory 222. The terminal memory 222 stores data / instructions. The terminal controller 221 executes the instructions stored in the terminal memory 222, causing the control terminal 20 to perform the following operations: planning a movement path based on the start and end points of the robotic arm end effector; selecting at least two reference path points on the movement path; calculating a velocity-energy balance trajectory that satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of at least two joints based on the upper speed limits corresponding to each of the at least two reference path points; obtaining control instructions for the robotic arm end effector based on the velocity-energy balance trajectory; and sending control instructions to the robot to control the robotic arm end effector to move along the velocity-energy balance trajectory.

[0152] The specific implementation methods of the above operations are as follows: Figure 9 The process shown is roughly the same, so it will not be repeated here.

[0153] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the control terminal. In other embodiments, the control terminal may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0154] This application also provides a computer-readable storage medium for storing instructions that, when executed by a processor, cause a computer to execute the robotic arm control method of this application.

[0155] Computer-readable storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules or other data). Storage media include, but are not limited to, random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tapes, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and is accessible to a computer.

[0156] The embodiments of this application have been described in detail above with reference to the accompanying drawings. However, this application is not limited to the above embodiments. Within the scope of knowledge possessed by those skilled in the art, various changes can be made without departing from the spirit of this application.

Claims

1. A robot arm control method of a robot, the robot arm including an arm tip and at least two arm joints, characterized by, The method includes: The movement path is planned based on the starting point and ending point of the robotic arm end. Several initial path points are sampled on the movement path; Based on the upper and lower limits of the joint angular velocity, the upper and lower limits of the joint angular acceleration, and the upper and lower limits of the joint torque of the at least two arm joints corresponding to the plurality of initial path points, the upper and lower limits of the velocity of the robotic arm end effector at each of the plurality of initial path points are obtained. Based on the upper and lower limits of the speed corresponding to each of the initial path points, a high-speed trajectory corresponding to the movement path of the robotic arm end is obtained; on the high-speed trajectory, the upper limit of the speed of each initial path point is the upper limit of the speed corresponding to the reference path point sampled on the movement path subsequently. Select at least two reference path points on the movement path; Based on the upper velocity limit values ​​corresponding to each of the at least two reference path points, calculate the velocity-energy balance trajectory that satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of the at least two arm joints. The control command for the end effector of the robotic arm is obtained based on the speed-energy balance trajectory, and the control command is used to control the end effector of the robotic arm to move along the speed-energy balance trajectory.

2. The robot arm control method according to claim 1, wherein Based on the upper velocity limits corresponding to each of the at least two reference path points, calculate the velocity-energy balance trajectory that satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of the at least two arm joints, including: Based on the upper speed limit value corresponding to each of the at least two reference path points, obtain a plurality of first state points corresponding to the at least two reference path points; Interpolate the interval between the two adjacent reference path points based on the several first state points corresponding to each of the two adjacent first path points, and obtain several interpolation points. By sampling the interpolation points, at least one second state point is obtained; Determine whether the at least one second state point satisfies the joint angular acceleration constraint, the joint torque constraint, and the joint torque change rate constraint of the at least two arm joints; If all at least one second state point satisfies the joint angular acceleration constraint, the joint torque constraint, and the joint torque rate of change constraint, then a plurality of first state points corresponding to the second state points that satisfy the joint angular acceleration constraint, the joint torque constraint, and the joint torque rate of change constraint are selected. Determine whether several first state points corresponding to the second state points that satisfy the joint angular acceleration constraint, the joint torque constraint, and the joint torque change rate constraint meet the energy consumption and speed requirements, and filter out the first state points that meet the energy consumption and speed requirements. The speed energy consumption balance trajectory is composed of the first state points that meet the energy consumption and speed requirements corresponding to each of the at least two reference path points and the second state points corresponding to them.

3. The robot arm control method according to claim 1, wherein The step of obtaining the upper and lower limits of the velocity of the robotic arm end effector at each of the initial path points based on the upper and lower limits of the joint angular velocity, the upper and lower limits of the joint angular acceleration, and the upper and lower limits of the joint torque of the at least two arm joints corresponding to each of the initial path points includes: Through inverse kinematic transformation, the initial path points are converted into joint paths corresponding to each initial path point. Based on the joint paths corresponding to the initial path points, the upper and lower limits of the joint angular velocity, the upper and lower limits of the joint angular acceleration, and the upper and lower limits of the joint torque corresponding to the initial path points are mapped onto the phase plane. Under the constraints of the phase plane, calculate the upper and lower limits of the velocities corresponding to each of the initial path points.

4. The robot arm control method according to claim 2, wherein The step of determining whether several first state points corresponding to the second state points that satisfy the joint angular acceleration constraint, the joint torque constraint, and the joint torque change rate constraint meet the energy consumption and speed requirements includes: Calculate the average value of the joint angular velocities of the at least two arm joints corresponding to the two first state points in the corresponding interval; The rate of change of joint torque is calculated based on the path difference between the two first state points in the corresponding interval, the average value of the joint angular velocity, and the joint torque of the at least two arm joints. The cost function value is calculated based on the average value of the joint angular velocity and the rate of change of the joint torque. The cost function value is used to determine the first state point that satisfies the energy consumption and speed requirements.

5. The robot arm control method according to claim 4, wherein After selecting the first state point that meets the energy consumption and speed requirements, the method further includes: The cost function value and the state point number at another first state point are stored at one of the first state points in the corresponding interval; the state point number is used to determine the corresponding first state point at the reference path point in each interval.

6. A robot, characterized in that include: body; At least one robotic arm connected to the body, the robotic arm including a robotic arm end and at least two arm joints; as well as A control system communicating with the robot body, the control system including a controller and a memory, the controller executing instructions stored in the memory to cause the robot to perform the following operations: The movement path is planned based on the starting point and ending point of the robotic arm end. Several initial path points are sampled on the movement path; Based on the upper and lower limits of the joint angular velocity, the upper and lower limits of the joint angular acceleration, and the upper and lower limits of the joint torque of the at least two arm joints corresponding to the plurality of initial path points, the upper and lower limits of the velocity of the robotic arm end effector at each of the plurality of initial path points are obtained. Based on the upper and lower limits of the speed corresponding to each of the initial path points, a high-speed trajectory corresponding to the movement path of the robotic arm end is obtained; on the high-speed trajectory, the upper limit of the speed of each initial path point is the upper limit of the speed corresponding to the reference path point sampled on the movement path subsequently. Select at least two reference path points on the movement path; Based on the upper velocity limit values ​​corresponding to each of the at least two reference path points, calculate the velocity-energy balance trajectory that satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of the at least two arm joints. The control command for the end effector of the robotic arm is obtained based on the speed-energy balance trajectory, and the control command is used to control the end effector of the robotic arm to move along the speed-energy balance trajectory.

7. The robot of claim 6, wherein, The operation of calculating the velocity-energy balance trajectory that satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of the at least two arm joints based on the velocity upper limit values ​​corresponding to the at least two reference path points includes: Based on the upper speed limit value corresponding to each of the at least two reference path points, obtain a plurality of first state points corresponding to the at least two reference path points; Interpolate the interval between two adjacent reference path points based on the first state points corresponding to each of the two adjacent reference path points, and obtain a number of interpolation points. By sampling the interpolation points, at least one second state point is obtained; Determine whether the at least one second state point satisfies the joint angular acceleration constraint, the joint torque constraint, and the joint torque change rate constraint of the at least two arm joints; If all at least one second state point satisfies the joint angular acceleration constraint, the joint torque constraint, and the joint torque rate of change constraint, then a plurality of first state points corresponding to the second state points that satisfy the joint angular acceleration constraint, the joint torque constraint, and the joint torque rate of change constraint are selected. Determine whether a plurality of first state points corresponding to the second state points that satisfy the joint angular acceleration constraint, the joint torque constraint, and the joint torque change rate constraint meet the energy consumption and speed requirements, and filter out the first state points that meet the energy consumption and speed requirements. The speed and energy consumption balance trajectory is composed of the first state points that meet the energy consumption and speed requirements corresponding to each of the at least two reference path points and the second state points corresponding to them.

8. The robot of claim 6, wherein, The operation of obtaining the upper and lower limits of the velocity of the robotic arm end effector at each of the initial path points based on the upper and lower limits of the joint angular velocity, the upper and lower limits of the joint angular acceleration, and the upper and lower limits of the joint torque of the at least two arm joints corresponding to the initial path points includes: Through inverse kinematic transformation, the initial path points are converted into joint paths corresponding to each initial path point. Based on the joint paths corresponding to the initial path points, the upper and lower limits of the joint angular velocity, the upper and lower limits of the joint angular acceleration, and the upper and lower limits of the joint torque corresponding to the initial path points are mapped onto the phase plane. Under the constraints of the phase plane, calculate the upper and lower limits of the velocities corresponding to each of the initial path points.

9. The robot of claim 7, wherein, The operation of determining whether a plurality of first state points corresponding to the second state point that satisfies the joint angular acceleration constraint, the joint torque constraint, and the joint torque change rate constraint meet the energy consumption and speed requirements includes: Calculate the average value of the joint angular velocities of the at least two arm joints corresponding to the two first state points in the corresponding interval; The rate of change of joint torque is calculated based on the path difference between the two first state points in the corresponding interval, the average value of the joint angular velocity, and the joint torque of the at least two arm joints. The cost function value is calculated based on the average value of the joint angular velocity and the rate of change of the joint torque. The cost function value is used to determine the first state point that satisfies the energy consumption and speed requirements.

10. The robot of claim 9, wherein, After selecting the first state point that meets the energy consumption and speed requirements, the following operations are also performed: The cost function value and the state point number at another first state point are stored at one of the first state points in the corresponding interval; the state point number is used to determine the corresponding first state point at the reference path point in each interval.

11. A control terminal of a robot, characterized by, include: A terminal communication module that communicates with the robot, the robot including at least one robotic arm, the robotic arm including a robotic arm end effector and at least two arm joints; as well as A terminal control module communicates with the terminal communication module. The terminal control module includes a terminal controller and a terminal memory. The terminal controller executes instructions stored in the terminal memory to cause the control terminal to perform the following operations: The movement path is planned based on the starting point and ending point of the robotic arm end. Several initial path points are sampled on the movement path; Based on the upper and lower limits of the joint angular velocity, the upper and lower limits of the joint angular acceleration, and the upper and lower limits of the joint torque of the at least two arm joints corresponding to the plurality of initial path points, the upper and lower limits of the velocity of the robotic arm end effector at each of the plurality of initial path points are obtained. Based on the upper and lower limits of the speed corresponding to each of the initial path points, a high-speed trajectory corresponding to the movement path of the robotic arm end is obtained; on the high-speed trajectory, the upper limit of the speed of each initial path point is the upper limit of the speed corresponding to the reference path point sampled on the movement path subsequently. Select at least two reference path points on the movement path; Based on the upper velocity limit values ​​corresponding to each of the at least two reference path points, calculate the velocity-energy balance trajectory that satisfies the joint angular acceleration constraints, joint torque constraints, and joint torque change rate constraints of the at least two arm joints. The control command for the end effector of the robotic arm is obtained based on the speed-energy consumption balance trajectory. The control command is used to control the end effector of the robotic arm to move along the speed-energy consumption balance trajectory. Send the control commands to the robot.