Robot control method and device, electronic equipment and storage medium

By acquiring the robot's default motion parameters and instructions, and calculating safe motion parameters, the problem of lagging feasibility assessment of robot motion parameters is solved, achieving a balance between safety and efficiency, and is applicable to industrial robots and autonomous vehicles.

CN121374601APending Publication Date: 2026-01-23GREE ELECTRIC APPLIANCE INC OF ZHUHAI
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511732381.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-24
Publication Date
2026-01-23

AI Technical Summary

Technical Problem

The lack or lag in the feasibility assessment mechanism for target motion parameters in existing technologies leads to significant safety hazards, especially in precision assembly operations where it is difficult to meet the requirements for high precision and high stability.

Method used

By acquiring the robot's default motion parameters and motion commands, the type of motion command is determined, and the second motion parameter is determined based on the type and the first motion parameter. The third motion parameter for safe motion is calculated based on the first motion parameter and the default motion parameter. Finally, the safe motion parameter is determined based on the comparison result, and the robot's motion is controlled.

Benefits of technology

It effectively ensures the safety of robot operation, takes into account the requirements of high precision and high efficiency, reduces the risk of failure, and is suitable for a variety of application scenarios such as industrial robots and autonomous vehicles.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121374601A_ABST
    Figure CN121374601A_ABST
Patent Text Reader

Abstract

The invention relates to a robot control method and device, electronic equipment and a storage medium, and the method comprises the steps: obtaining a default motion parameter and a motion instruction of a robot; wherein the motion instruction comprises one or more first motion parameters used for controlling the robot to move; determining the type of the motion instruction, and determining a second motion parameter finally set for the user according to the type and the first motion parameter; determining a third motion parameter of the safe motion based on the first motion parameter and the default motion parameter; and determining a final safe motion parameter according to a comparison result of the second motion parameter and the third motion parameter, and controlling the robot based on the safe motion parameter. Through the method and the device, the problem of relatively large potential safety hazards caused by lack or lag of a feasibility evaluation mechanism for the target motion parameters in the prior art is solved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of robot control, and particularly relates to a robot control method and device, electronic equipment and a storage medium. BACKGROUND

[0002] In modern intelligent manufacturing, robots have been widely applied to welding, spraying, assembly and other operation scenarios. A robot control system usually presets a series of motion parameters such as speed, acceleration, deceleration and the like. Generally, a user can adjust the speed through a teach pendant or an upper computer to adapt to different application requirements. However, in some scenarios with high precision requirements, such as precision assembly operations, it is difficult to meet the process requirements by only adjusting the speed, and fine adjustment of motion parameters such as acceleration and deceleration is also required. If the motion parameters preset by the system are directly modified to achieve high precision and high stability, although the operation quality can be improved, the motion efficiency of the robot after leaving the assembly area may be affected, thereby adversely affecting the overall production rhythm. At the same time, the existing robot lacks a feasibility evaluation mechanism for target motion parameters or the mechanism is lagging behind, which has a large safety hazard.

[0003] In view of the above technical problems in the prior art, there is currently no effective solution. SUMMARY

[0004] The present application provides a robot control method and device, electronic equipment and a storage medium to solve the problem of the lack of a feasibility evaluation mechanism for target motion parameters in the prior art, which leads to a large safety hazard.

[0005] In a first aspect, the present application provides a robot control method, comprising: obtaining default motion parameters of a robot and a motion instruction; wherein the motion instruction comprises one or more first motion parameters for controlling the motion of the robot; determining the type of the motion instruction, and determining second motion parameters finally set by a user according to the type and the first motion parameters; determining third motion parameters of safe motion based on the first motion parameters and the default motion parameters; determining final safe motion parameters according to the comparison result of the second motion parameters and the third motion parameters, and controlling the robot based on the safe motion parameters.

[0006] Optionally, determining the second motion parameter set for the user finally according to the type and the first motion parameter comprises: in the case that the type of the motion instruction is a motion instruction for setting optional parameters, determining that the first motion parameter is an optional motion parameter, and setting the second motion parameter based on the first motion parameter; in the case that the type of the motion instruction is a motion instruction for setting global parameters, determining that the first motion parameter is a global motion parameter, and setting the second motion parameter based on the first motion parameter; in the case that the type of the motion instruction is neither a motion instruction for setting global parameters nor a motion instruction for setting optional parameters, determining that the default motion parameter is the second motion parameter.

[0007] Optionally, determining the third motion parameter of the safe motion based on the first motion parameter and the default motion parameter comprises: comparing the first motion parameter with the default motion parameter; and according to the comparison result, selecting a corresponding calculation formula for the first motion parameter and the default motion parameter to obtain the third motion parameter.

[0008] Optionally, in the case that the motion parameter is linear acceleration, comparing the first motion parameter with the default motion parameter comprises: comparing the speed and acceleration in the first motion parameter with the maximum speed and maximum acceleration in the default motion parameter respectively; wherein the linear acceleration is obtained by combining the speed and acceleration.

[0009] Optionally, the third motion parameter is determined according to a comparison result of the first motion parameter and the default motion parameter, including: in a case that a speed in the first motion parameter is less than or equal to a maximum speed in the default motion parameter, and an acceleration in the first motion parameter is less than or equal to a maximum acceleration in the default motion parameter, determining a sum value between a product result of a first preset parameter and the acceleration in the first motion parameter, and a product result of a second preset parameter and the speed in the first motion parameter as the third motion parameter; in a case that the speed in the first motion parameter is greater than the maximum speed in the default motion parameter, and the acceleration in the first motion parameter is less than or equal to the maximum acceleration in the default motion parameter, determining a sum value between a product result of the first preset parameter and the acceleration in the first motion parameter, and a product result of the second preset parameter and the maximum speed in the default motion parameter as the third motion parameter; in a case that the speed in the first motion parameter is less than or equal to the maximum speed in the default motion parameter, and the acceleration in the first motion parameter is greater than the maximum acceleration in the default motion parameter, determining a sum value between a product result of the first preset parameter and the maximum acceleration in the default motion parameter, and a product result of the second preset parameter and the speed in the first motion parameter as the third motion parameter; in a case that the speed in the first motion parameter is greater than the maximum speed in the default motion parameter, and the acceleration in the first motion parameter is greater than the maximum acceleration in the default motion parameter, determining a sum value between a product result of the first preset parameter and the maximum acceleration in the default motion parameter, and a product result of the second preset parameter and the maximum speed in the default motion parameter as the third motion parameter.

[0010] Optionally, the final safe motion parameter is determined according to a comparison result of the second motion parameter and the third motion parameter, including: in a case that the second motion parameter is less than the third motion parameter, determining the second motion parameter as the final safe motion parameter; in a case that the second motion parameter is greater than or equal to the third motion parameter, determining the third motion parameter as the final safe motion parameter.

[0011] Optionally, the robot is controlled based on the safe motion parameter, including: controlling the robot to perform an interpolation motion based on the safe motion parameter.

[0012] In a second aspect, the present application provides a control device of a robot, comprising: an acquisition module configured to acquire default motion parameters of the robot and a motion instruction; wherein the motion instruction comprises one or more first motion parameters for controlling motion of the robot; a first processing module configured to determine a type of the motion instruction, and determine second motion parameters set by a user finally according to the type and the first motion parameters; a determination module configured to determine third motion parameters of safe motion based on the first motion parameters and the default motion parameters; and a second processing module configured to determine final safe motion parameters according to a comparison result of the second motion parameters and the third motion parameters, and control the robot based on the safe motion parameters.

[0013] In a third aspect, the present application provides an electronic device, comprising: at least one communication interface; at least one bus connected with the at least one communication interface; at least one processor connected with the at least one bus; and at least one memory connected with the at least one bus, wherein the processor is configured to execute the control method of the robot according to the first aspect of the present application.

[0014] In a fourth aspect, the present application further provides a computer storage medium storing computer executable instructions for executing the control method of the robot according to the first aspect of the present application.

[0015] The above technical solution provided by the embodiments of the present application has the following advantages compared with the prior art: the method provided by the embodiments of the present application first acquires default motion parameters of the robot and a motion instruction, then determines a type of the motion instruction, and determines second motion parameters set by a user finally according to the type and the first motion parameters, further determines third motion parameters of safe motion based on the first motion parameters and the default motion parameters, and finally determines final safe motion parameters according to a comparison result of the second motion parameters and the third motion parameters, and controls the robot based on the safe motion parameters. It can be seen that in the embodiments of the present application, while receiving motion parameters set by a user through an instruction, safe and feasible motion parameters (third motion parameters) are calculated based on the current motion instruction and the default motion parameters, and the final usable motion parameters are determined through a multi-level arbitration mechanism, and are then used for motion control of the robot, thereby effectively guaranteeing safety of motion of the robot. BRIEF DESCRIPTION OF DRAWINGS

[0016] The accompanying drawings, which are incorporated herein and form part of the specification, illustrate embodiments consistent with the present application and, together with the description, further serve to explain the principles of the application.

[0017] In order to more clearly illustrate the technical solutions of the embodiments of the present application or the prior art, the following will briefly introduce the drawings needed to be used in the embodiments or prior art description. Obviously, for those skilled in the field, other drawings can also be obtained based on these drawings without any creative effort.

[0018] One or more embodiments are illustrated by way of example with reference to the drawings, which are not necessarily drawn to scale, and which are not intended to limit the embodiments to the arrangements shown, unless so expressly indicated. Like reference numerals can be used to denote like elements throughout the drawings.

[0019] Figure 1 A flow chart of a robot control method provided by the embodiments of the present application; Figure 2 A flow chart of a robot multi-level motion parameter arbitration method provided by the embodiments of the present application; Figure 3 A flow chart of a method for determining motion parameters input to a planning module provided by the embodiments of the present application; Figure 4 A flow chart of a method for determining maximum linear velocity input to a planning module provided by the embodiments of the present application; Figure 5 A robot program schematic diagram for setting global parameters and optional parameters provided by the embodiments of the present application; Figure 6 A structural schematic diagram of a robot control device provided by the embodiments of the present application; Figure 7 A structural schematic diagram of an electronic device provided by the embodiments of the present application. DETAILED DESCRIPTION

[0020] In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the following will combine the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without any creative effort fall within the scope of protection of the present application.

[0021] The following disclosure provides many different embodiments, or examples, for implementing different structures of the present application. For the purpose of simplifying the present application, the components and settings of specific examples are described in the following. Of course, they are only examples, and the purpose is not to limit the present application. In addition, the present application can repeatedly refer to numerals and / or letters in different examples. Such repetition is for the purpose of simplification and clarity, and it does not indicate the relationship between the various embodiments and / or settings discussed.

[0022] To solve the problem of lack of feasibility evaluation mechanism for target motion parameters in the prior art or lag, which leads to a larger safety hazard, the present application provides a control method of a robot, as shown in Figure 1 The steps of the method include: Step 101, obtaining default motion parameters of the robot and motion instructions; wherein the motion instructions include one or more first motion parameters for controlling the motion of the robot; In the embodiments of the present application, the robot will have corresponding default motion parameters under initial conditions, such as a default linear speed, while the motion instructions are the instructions issued by the user to the robot. If the current default motion parameters cannot meet the user's needs, the user can customize the required motion parameters, i.e. the first motion parameters, such as the linear speed of the robot.

[0023] Step 102, determining the type of the motion instructions, and determining the second motion parameters set by the user according to the type and the first motion parameters; In the embodiments of the present application, the type of the motion instructions includes optional parameters and global parameters. The optional motion parameters (D option ) are parameters directly specified in a single motion instruction, and these parameters are optional, used to override the system default value or global parameters. When the optional parameters are set in the motion instructions, the robot uses these parameters as the motion parameters (D set ) set by the user in priority. The global motion parameters (D global ) are parameters set at the system or program level, applicable to all motion instructions, unless overridden by the optional parameters at the instruction level. The global parameters are usually used to define the default behavior of the entire motion process, such as global speed limit or acceleration configuration. If the optional parameters are not set in the motion instructions, the system will check whether there are global parameters, and use them as the motion parameters (D set ) set by the user.

[0024] Step 103, determining the third motion parameters of the safe motion based on the first motion parameters and the default motion parameters; For this, in specific examples, the first motion parameters and the default motion parameters are compared, and the third motion parameters are determined according to the comparison results. The purpose of comparing the two is to obtain more safe motion parameters.

[0025] Step 104, determining the final safe motion parameters according to the comparison results of the second motion parameters and the third motion parameters, and controlling the robot based on the safe motion parameters.

[0026] It should be noted that the manner of controlling the robot based on the safety motion parameter in the step 104 can further be that the robot performs interpolation motion based on the safety motion parameter. The interpolation motion refers to that a robot controller decomposes a continuous path (such as a straight line from point A to point B) into thousands of tiny, discrete time points, and calculates the angle that should be reached by all joints at each time point, so that the robot can accurately move along the path. Specifically, it can include linear interpolation: the robot moves accurately along the straight line between two points. Circular arc interpolation: the robot moves along the circular arc defined by three points. Spline interpolation: for more complex curved paths. During the interpolation calculation process, the controller will consider all the set safety motion parameters in real time. If the calculated speed or acceleration of a certain joint required for the robot to move perfectly along the path exceeds the safety limit, the controller will give priority to the safety parameters, and may ensure safety by reducing the overall robot speed and the like.

[0027] Through the steps 101 to 104, the default motion parameter and the motion instruction of the robot are first acquired, then the type of the motion instruction is determined, the second motion parameter finally set by the user is determined according to the type and the first motion parameter, the third motion parameter of the safety motion is determined according to the first motion parameter and the default motion parameter, the final safety motion parameter is determined according to the comparison result of the second motion parameter and the third motion parameter, and the robot is controlled based on the safety motion parameter. It can be seen that in the embodiments of the present application, while the motion parameter set by the user through the instruction is received, the safety feasible motion parameter (the third motion parameter) is calculated based on the current motion instruction and the default motion parameter, and the final usable motion parameter is determined through the multi-level arbitration mechanism, and is then used for the motion control of the robot, so as to effectively guarantee the safety of the robot operation.

[0028] In the optional implementation of the embodiments of the present application, the manner of determining the second motion parameter finally set by the user according to the type and the first motion parameter in the step 102 can further include: Step 11, in the case where the type of the motion instruction is the motion instruction of setting the optional parameter, determining that the first motion parameter is the optional motion parameter, and determining the second motion parameter based on the first motion parameter; Step 12, in the case where the type of the motion instruction is the motion instruction of setting the global parameter, determining that the first motion parameter is the global motion parameter, and determining the second motion parameter based on the first motion parameter; Step 13, in the case where the type of the motion instruction is neither the motion instruction of setting the global parameter nor the motion instruction of setting the optional parameter, determining that the default motion parameter is the second motion parameter.

[0029] It can be seen that in the embodiment of the present application, the priority of the motion instruction setting the optional parameter is higher than the motion instruction setting the global parameter, and then other types of motion instructions. That is, if the current user sets the optional parameter and issues it to the robot through the motion instruction, the robot sets the motion parameter in the current motion instruction as the required motion parameter with the highest priority to meet the real-time control of the user on the robot. However, the second motion parameter obtained through the above steps 11 to 13 is not the final safe motion parameter that can be used, and the safe motion parameter needs to be determined in combination with the default motion parameter of the robot.

[0030] Based on this, for the manner of determining the third motion parameter of the safe motion based on the first motion parameter and the default motion parameter in the above step 103, further can include: Step 21, comparing the first motion parameter with the default motion parameter; Step 22, according to the comparison result, selecting the corresponding calculation formula of the first motion parameter and the default motion parameter to obtain the third motion parameter.

[0031] For this, in a specific example, taking the linear acceleration as the motion parameter, since the motion trajectory has unpredictability, the robot needs to perform a look-ahead preprocessing before motion planning interpolation. The look-ahead preprocessing detects whether the joints of the robot exceed their default maximum acceleration during the motion process by simulating the execution of the current instruction. If it exceeds, the linear acceleration is recalculated based on the joint default maximum speed and maximum acceleration, so as to obtain the maximum linear acceleration of the safe motion, thereby avoiding motor current overload.

[0032] It can be seen that in the case of linear acceleration as the motion parameter, for the manner of comparing the first motion parameter with the default motion parameter in the above step 21, further can include: Step 31, comparing the speed and acceleration in the first motion parameter with the maximum speed and maximum acceleration in the default motion parameter respectively; wherein the linear acceleration is obtained by combining the speed and acceleration.

[0033] It can be seen that when comparing the first motion parameter with the default motion parameter, the speed in the first motion parameter is compared with the maximum speed in the default motion parameter, and the maximum acceleration in the first motion parameter is compared with the maximum acceleration in the default motion parameter.

[0034] Further, for the manner of selecting the corresponding calculation formula of the first motion parameter and the default motion parameter according to the comparison result to obtain the third motion parameter in the above step 22, further can include: Step 41, in the case that the speed in the first motion parameter is less than or equal to the maximum speed in the default motion parameter, and the acceleration in the first motion parameter is less than or equal to the maximum acceleration in the default motion parameter, the sum of the product of the first preset parameter and the acceleration in the first motion parameter and the product of the second preset parameter and the speed in the first motion parameter is determined as the third motion parameter; Step 42, in the case that the speed in the first motion parameter is greater than the maximum speed in the default motion parameter, and the acceleration in the first motion parameter is less than or equal to the maximum acceleration in the default motion parameter, the sum of the product of the first preset parameter and the acceleration in the first motion parameter and the product of the second preset parameter and the maximum speed in the default motion parameter is determined as the third motion parameter; Step 43, in the case that the speed in the first motion parameter is less than or equal to the maximum speed in the default motion parameter, and the acceleration in the first motion parameter is greater than the maximum acceleration in the default motion parameter, the sum of the product of the first preset parameter and the maximum acceleration in the default motion parameter and the product of the second preset parameter and the speed in the first motion parameter is determined as the third motion parameter; Step 43, in the case that the speed in the first motion parameter is greater than the maximum speed in the default motion parameter, and the acceleration in the first motion parameter is greater than the maximum acceleration in the default motion parameter, the sum of the product of the first preset parameter and the maximum acceleration in the default motion parameter and the product of the second preset parameter and the maximum speed in the default motion parameter is determined as the third motion parameter.

[0035] For this, in a specific example, it is assumed that in the robot control process, the maximum speed is 2 m / s, the maximum acceleration is 5 m / s², the first preset parameter is 0.6, and the second preset parameter is 0.4. When the actual speed (the speed in the first motion parameter) is 1.5 m / s and the actual acceleration (the acceleration in the first motion parameter) is 3 m / s² (both less than the maximum value), then the third motion parameter = 0.6*1.5 + 0.4*3 = 0.9 + 1.2 = 2.1. When the actual speed is 3 m / s and the actual acceleration is 3 m / s² (the speed is out of limit), then the third motion parameter = 0.6*3 + 0.4*2 = 1.8 + 0.8 = 2.6. In this way, the third motion parameter can be used to control the motion trajectory or torque output of the robot, ensuring smooth operation.

[0036] By the above steps 41 to 43, by checking the relationship between the first motion parameter and the default motion parameter, automatically switching to the safety value when the parameter is out of limit, preventing the system from being damaged due to overspeed or overacceleration, and reducing the risk of failure. Moreover, according to different situations, the calculation method is dynamically adjusted to avoid performance loss caused by simple truncation of parameters, so that the third motion parameter is more in line with the actual working condition, and the control accuracy and system response ability are improved. In addition, the introduction of the first preset parameter and the second preset parameter allows users to adjust the weight of speed and acceleration according to needs, so that the method is suitable for various application scenarios, such as industrial robots, autonomous vehicles, etc. In addition, the method in the embodiment of the application is based on simple arithmetic operations and conditional judgments, which is easy to implement in embedded systems or real-time control systems, without complex algorithms, saving computing resources.

[0037] In an optional implementation of the embodiment of the application, for the manner of determining the final safety motion parameter according to the comparison result of the second motion parameter and the third motion parameter in the above step 104, further comprising: Step 51, in the case that the second motion parameter is less than the third motion parameter, determining the second motion parameter as the final safety motion parameter; Step 52, in the case that the second motion parameter is greater than or equal to the third motion parameter, determining the third motion parameter as the final safety motion parameter.

[0038] From the above steps 51 and 52, after determining the second motion parameter and the third motion parameter, further comparison is needed to determine the final motion parameter that can be safely performed to ensure the safe operation of the robot.

[0039] The application will be explained and described below in combination with the specific implementation of the embodiment of the application, which provides a robot multi-level motion parameter arbitration method, as shown in Figure 2 The steps of the method include: Step 201, obtaining a system default motion parameter; Step 202, parsing the instruction and selecting the user-set motion parameter; Step 203, obtaining a safety motion parameter calculated by a look-ahead module; Step 204, selecting the available motion parameter to input a planning and interpolation module to control the motion of the robot.

[0040] As can be seen, in the embodiment of the application, the system default motion parameter is first obtained, the instruction is parsed, the user-set motion parameter is selected, the safety motion parameter calculated by the look-ahead module is obtained, and the available motion parameter is selected to input the planning and interpolation module. The robot starts planning and executing interpolation motion.

[0041] To further explain steps 201 to 204 above, this specific implementation also provides a method for determining motion parameters input to the planning module, such as... Figure 3 As shown, the steps of this method include: Step 301: Obtain the system's default motion parameters .

[0042] Step 302: Determine whether the motion command has optional motion parameters set. If so, proceed to step 304.

[0043] Step 303: Determine whether the instruction sets global motion parameters. If yes, proceed to Step 5; otherwise, proceed to Step 306.

[0044] Step 304, optional parameters set by motion commands motion parameters set by the user Then proceed to step 307.

[0045] Step 305, global parameters set by instructions motion parameters set by the user Then proceed to step 307.

[0046] Step 306, using the system default motion parameters motion parameters set by the user .

[0047] Step 307, Obtain safe exercise parameters It is calculated by the look-ahead module based on the current motion command.

[0048] Step 308: Compare the motion parameters set by the user. and safety motion parameters The size, if Less than Proceed to step 309; if Not less than Proceed to step 310.

[0049] Step 309, using user-defined motion parameters Usable motion parameters Proceed to step 311.

[0050] Step 310, using safe motion parameters Usable motion parameters .

[0051] Step 311, the available motion parameters Input into the planning and interpolation module.

[0052] It can be seen that through the above steps 301 to 311, a multi-level motion parameter arbitration method is provided. Based on the multi-level arbitration mechanism, the method realizes flexible configuration of motion parameters under the premise of ensuring the safety of robot operation, effectively taking into account the high-precision and high-efficiency operation requirements.

[0053] For this purpose, the robot motion parameters include joint parameters and linear parameters. The joint parameters include maximum joint speed, maximum joint acceleration, maximum joint deceleration, maximum joint jerk and maximum joint jounce. The linear parameters include maximum linear speed, maximum linear acceleration, maximum linear deceleration, maximum linear jerk and maximum linear jounce. The following describes a method for adjusting the maximum linear acceleration in the motion parameters according to an optional embodiment, as shown in Figure 4 The steps of the method include: Step 401, obtaining the system default maximum linear acceleration The system default motion parameters, including the maximum linear acceleration, are fixed in the controller when the robot is shipped, and the user generally does not need to set them.

[0054] Step 402, judging whether the motion instruction sets the optional parameter of linear acceleration. If yes, jump to step 404. As shown in the attached Figure 5 The motion instruction in the 5th row uses the optional parameter to set the maximum linear acceleration acc_option, which only takes effect when the 5th row motion instruction is executed.

[0055] Step 403, judging whether the instruction sets the global parameter of maximum linear acceleration. If yes, jump to step 405; if not, jump to step 406. As shown in the attached Figure 5 The 2nd row instruction sets the global maximum linear acceleration acc_global, which takes effect on the subsequent motion instructions after the 2nd row instruction is executed.

[0056] Step 404, taking the maximum linear acceleration acc_option set by the motion instruction as the maximum linear acceleration set by the user , and jumping to step 407.

[0057] Step 405, taking the global maximum linear acceleration acc_global set by the instruction as the maximum linear acceleration set by the user , and jumping to step 407.

[0058] Step 406, taking the system default maximum linear acceleration acc_default as the maximum linear acceleration set by the user .

[0059] Step 407: Obtain the maximum linear acceleration for safe motion. These constraint parameters are calculated by the look-ahead module based on the current motion command. Because motion trajectories are unpredictable, the robot system needs to perform a look-ahead preprocessing step before performing motion planning interpolation. This preprocessing simulates the execution of the current command and detects whether each joint exceeds its default maximum acceleration during movement. If the speed exceeds the limit, the look-ahead module will adjust the speed based on the joint's default maximum speed. and maximum acceleration linear acceleration The maximum linear acceleration for safe motion is obtained by recalculating the solution. To avoid overloading the motor current.

[0060]

[0061] in, For Jacobian matrices, Let be the derivative matrix of the Jacobian matrix. For joint velocity, For joint acceleration, Set the joint to its default maximum speed. This is the default maximum acceleration for the joint. It represents linear acceleration.

[0062]

[0063] in, This is the maximum linear acceleration.

[0064] Step 408: Compare the user-defined maximum linear acceleration. and the maximum linear acceleration for safe motion The size, if Less than Proceed to Step 9; if Not less than Proceed to step 410.

[0065] Step 409, using the user-defined maximum linear acceleration Maximum usable linear acceleration Then proceed to step 411.

[0066] Step 410, with the maximum linear acceleration for safe movement. Maximum usable linear acceleration .

[0067] Step 411, determine the maximum usable linear acceleration. Input into the planning and interpolation module.

[0068] In order to more intuitively reflect the adjustment method of the maximum linear acceleration in the specific embodiments, different system default maximum linear accelerations are listed , the maximum linear acceleration set by the motion instruction , the global maximum linear acceleration set by the instruction , and the maximum linear acceleration of the safe motion , the output maximum linear acceleration that can be used , as shown in Table 1: Table 1

[0069] It can be seen that in the embodiments of the present application, the default maximum linear acceleration , the maximum linear acceleration set by the motion instruction , and the global maximum linear acceleration set by the instruction have a priority relationship, the highest priority, second, the lowest priority, and the maximum linear acceleration of the safe motion is the last safety constraint.

[0070] It can be seen that through the specific embodiments of the present application, the user is allowed to set motion parameters including speed, acceleration, deceleration, jerk, and jounce through instructions, and the motion parameters can be set to take effect globally or single-instruction, which has high flexibility and can balance the high-precision and high-efficiency operation requirements of the robot. In addition, through the specific embodiments, while receiving the motion parameters set by the user through the instructions, the system calculates the safe and feasible motion parameters based on the current motion instruction, determines the final usable motion parameters through a multi-level arbitration mechanism, and then uses the motion parameters for robot planning and interpolation motion, thereby effectively ensuring the safety of the robot operation.

[0071] Corresponding to the above Figure 1 , the embodiments of the present application also provide a control device of a robot, as shown in Figure 6 , the device comprises: An acquisition module 602 is configured to acquire default motion parameters of the robot and a motion instruction; wherein the motion instruction comprises one or more first motion parameters for controlling the motion of the robot; A first processing module 604 is configured to determine the type of the motion instruction, and determine second motion parameters finally set by the user according to the type and the first motion parameters; A determination module 606 is configured to determine third motion parameters of a safe motion based on the first motion parameters and the default motion parameters; The second processing module 608 is configured to determine a final safety motion parameter according to a comparison result of the second motion parameter and the third motion parameter, and control the robot based on the safety motion parameter.

[0072] The device provided in the embodiment of the present application first acquires the default motion parameter and the motion instruction of the robot, then determines the type of the motion instruction, and determines the second motion parameter set by the user according to the type and the first motion parameter, further determines the third motion parameter of the safety motion based on the first motion parameter and the default motion parameter, finally determines the final safety motion parameter according to the comparison result of the second motion parameter and the third motion parameter, and controls the robot based on the safety motion parameter. It can be seen that in the embodiment of the present application, while receiving the motion parameter set by the user through the instruction, the safety feasible motion parameter (the third motion parameter) is calculated based on the current motion instruction and the default motion parameter, and the final usable motion parameter is determined through the multi-level arbitration mechanism, and is used for the motion control of the robot, thereby effectively guaranteeing the safety of the robot operation.

[0073] In the optional implementation of the embodiment of the present application, the first processing module in the embodiment of the present application further can include: a first processing unit configured to determine that the first motion parameter is the optional motion parameter and determine the second motion parameter based on the first motion parameter in the case that the type of the motion instruction is the motion instruction of setting the optional parameter; a second processing unit configured to determine that the first motion parameter is the global motion parameter and determine the second motion parameter based on the first motion parameter in the case that the type of the motion instruction is the motion instruction of setting the global parameter; and a third processing unit configured to determine that the default motion parameter is the second motion parameter in the case that the type of the motion instruction is neither the motion instruction of setting the global parameter nor the motion instruction of setting the optional parameter.

[0074] In the optional implementation of the embodiment of the present application, the determination of each module in the embodiment of the present application further can include: a comparison unit configured to compare the first motion parameter and the default motion parameter; and a fourth processing unit configured to select a corresponding calculation formula for the first motion parameter and the default motion parameter according to the comparison result to obtain the third motion parameter.

[0075] In the optional implementation of the embodiment of the present application, in the case that the motion parameter is linear acceleration, the comparison unit in the embodiment of the present application includes: a comparison subunit configured to compare the speed and the acceleration in the first motion parameter with the maximum speed and the maximum acceleration in the default motion parameter respectively; wherein the linear acceleration is obtained by combining the speed and the acceleration.

[0076] In the optional implementation of the embodiment of the present application, the fourth processing unit in the embodiment of the present application includes: the first processing subunit is configured to determine, in a case where the speed in the first motion parameter is less than or equal to the maximum speed in the default motion parameter and the acceleration in the first motion parameter is less than or equal to the maximum acceleration in the default motion parameter, a sum value between a product result of the first preset parameter and the acceleration in the first motion parameter and a product result of the second preset parameter and the speed in the first motion parameter as the third motion parameter; the second processing subunit is configured to determine, in a case where the speed in the first motion parameter is greater than the maximum speed in the default motion parameter and the acceleration in the first motion parameter is less than or equal to the maximum acceleration in the default motion parameter, a sum value between a product result of the first preset parameter and the acceleration in the first motion parameter and a product result of the second preset parameter and the maximum speed in the default motion parameter as the third motion parameter; the third processing subunit is configured to determine, in a case where the speed in the first motion parameter is less than or equal to the maximum speed in the default motion parameter and the acceleration in the first motion parameter is greater than the maximum acceleration in the default motion parameter, a sum value between a product result of the first preset parameter and the maximum acceleration in the default motion parameter and a product result of the second preset parameter and the speed in the first motion parameter as the third motion parameter; the fourth processing subunit is configured to determine, in a case where the speed in the first motion parameter is greater than the maximum speed in the default motion parameter and the acceleration in the first motion parameter is greater than the maximum acceleration in the default motion parameter, a sum value between a product result of the first preset parameter and the maximum acceleration in the default motion parameter and a product result of the second preset parameter and the maximum speed in the default motion parameter as the third motion parameter.

[0077] In an optional implementation of the embodiments of the present application, the determining module in the embodiments of the present application further can include: a first determining unit configured to determine, in a case where the second motion parameter is less than the third motion parameter, the second motion parameter as the final safe motion parameter; and a second determining unit configured to determine, in a case where the second motion parameter is greater than or equal to the third motion parameter, the third motion parameter as the final safe motion parameter.

[0078] In an optional implementation of the embodiments of the present application, the second processing module in the embodiments of the present application includes: a control unit configured to control the robot to perform the interpolation motion based on the safe motion parameter.

[0079] As shown in FIG. 7, Figure 7 the embodiments of the present application provide an electronic device, which includes a processor 711, a communication interface 712, a memory 713 and a communication bus 714, wherein the processor 711, the communication interface 712 and the memory 713 complete mutual communication through the communication bus 714, the memory 713 is configured to store a computer program; In an embodiment of the present application, the processor 711, when executing the program stored in the memory 713, implements the robot control method provided by any one of the foregoing method embodiments, and plays a similar role, which will not be repeated here.

[0080] The embodiment of the present application further provides a computer readable storage medium, which stores a computer program, and the computer program, when executed by a processor, implements the steps of the robot control method provided by any one of the foregoing method embodiments.

[0081] The apparatus embodiments described above are merely illustrative, wherein the units described as separate components can or can not be physically separate, and the components displayed as units can or can not be physical units, i.e., can be located in one place, or can be distributed on a plurality of network units. Part or all of the modules can be selected according to actual needs to achieve the purpose of the embodiment.

[0082] From the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a general hardware platform, and of course can also be implemented by hardware. Based on such understanding, the above technical solutions can be embodied in the form of a software product, which can be stored in a computer readable storage medium, such as a ROM / RAM, a magnetic disk, an optical disk, etc., and includes a plurality of instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) execute the methods described in each embodiment or some parts of the embodiments.

[0083] It should be understood that the terms used herein are for the purpose of describing specific example embodiments only and are not intended to be limiting. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. The terms "comprises", "comprising", "includes", "including" and "has", "having" are inclusive and therefore specify the presence of stated features, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, steps, operations, elements, components, and / or groups thereof. The method steps, processes, and operations described herein are not to be construed as necessarily requiring their performance in the particular order in which they are described or illustrated, unless otherwise specifically noted. It is also to be understood that additional or alternative steps can be employed.

[0084] The foregoing is considered as illustrative only of the principles of the application. Numerous modifications and changes will readily occur to those skilled in the art, and the generic principles defined herein can be applied to other embodiments without departing from the spirit or scope of the application. Therefore, the scope of the application is indicated by the appended claims rather than by the foregoing description, and all changes that come within the meaning and range of equivalents are intended to be embraced therein.

Claims

1. A control method of a robot characterized by, The method comprises: obtaining default motion parameters and motion instructions of a robot; wherein the motion instructions comprise one or more first motion parameters for controlling motion of the robot; determining a type of the motion instructions, and determining second motion parameters finally set by a user according to the type and the first motion parameters; determining third motion parameters of safe motion based on the first motion parameters and the default motion parameters; determining final safe motion parameters according to a comparison result of the second motion parameters and the third motion parameters, and controlling the robot based on the safe motion parameters.

2. The method of claim 1, wherein, The method further comprises: in a case where the type of the motion instructions is a motion instruction for setting optional parameters, determining that the first motion parameters are optional motion parameters, and setting the second motion parameters based on the first motion parameters; in a case where the type of the motion instructions is a motion instruction for setting global parameters, determining that the first motion parameters are global motion parameters, and setting the second motion parameters based on the first motion parameters; in a case where the type of the motion instructions is neither a motion instruction for setting global parameters nor a motion instruction for setting optional parameters, determining that the default motion parameters are the second motion parameters.

3. The method of claim 1, wherein, The method further comprises: comparing the first motion parameters and the default motion parameters; selecting corresponding calculation formulas of the first motion parameters and the default motion parameters according to a comparison result, to obtain the third motion parameters.

4. The method of claim 3, wherein, In a case where the motion parameters are linear acceleration, the comparing the first motion parameters and the default motion parameters comprises: comparing a velocity and an acceleration in the first motion parameters with a maximum velocity and a maximum acceleration in the default motion parameters respectively; wherein the linear acceleration is obtained by combining the velocity and the acceleration.

5. The method of claim 4, wherein, The selecting corresponding calculation formulas of the first motion parameters and the default motion parameters according to a comparison result, to obtain the third motion parameters comprises: in a case where the velocity in the first motion parameters is less than or equal to the maximum velocity in the default motion parameters, and the acceleration in the first motion parameters is less than or equal to the maximum acceleration in the default motion parameters, determining a sum value between a multiplication result of a first preset parameter and the acceleration in the first motion parameters, and a multiplication result of a second preset parameter and the velocity in the first motion parameters, as the third motion parameters; in a case where the velocity in the first motion parameters is greater than the maximum velocity in the default motion parameters, and the acceleration in the first motion parameters is less than or equal to the maximum acceleration in the default motion parameters, determining a sum value between a multiplication result of a first preset parameter and the acceleration in the first motion parameters, and a multiplication result of a second preset parameter and the maximum velocity in the default motion parameters, as the third motion parameters; In a case that the speed in the first motion parameter is less than or equal to the maximum speed in the default motion parameter and the acceleration in the first motion parameter is greater than the maximum acceleration in the default motion parameter, a sum value between a product result of the first preset parameter and the maximum acceleration in the default motion parameter and a product result of the second preset parameter and the speed in the first motion parameter is determined as the third motion parameter; In a case that the speed in the first motion parameter is greater than the maximum speed in the default motion parameter and the acceleration in the first motion parameter is greater than the maximum acceleration in the default motion parameter, a sum value between a product result of the first preset parameter and the maximum acceleration in the default motion parameter and a product result of the second preset parameter and the maximum speed in the default motion parameter is determined as the third motion parameter.

6. The method of claim 1, wherein, Determining a final safe motion parameter according to a comparison result of the second motion parameter and the third motion parameter, including: In a case that the second motion parameter is less than the third motion parameter, determining the second motion parameter as the final safe motion parameter; In a case that the second motion parameter is greater than or equal to the third motion parameter, determining the third motion parameter as the final safe motion parameter.

7. The method of claim 1, wherein, Controlling the robot based on the safe motion parameter, including: Controlling the robot to perform interpolation motion based on the safe motion parameter.

8. A control device of a robot characterized by comprising: The method includes: acquiring a default motion parameter of a robot and a motion instruction; wherein the motion instruction includes one or more first motion parameters for controlling motion of the robot; determining a type of the motion instruction and determining a second motion parameter finally set by a user according to the type and the first motion parameter; determining a third motion parameter of safe motion based on the first motion parameter and the default motion parameter; determining a final safe motion parameter according to a comparison result of the second motion parameter and the third motion parameter and controlling the robot based on the safe motion parameter.

9. An electronic device, comprising: The method includes: a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory complete communication with each other through the communication bus; the memory is used to store a computer program; the processor is used to execute the computer program to implement the control method of the robot in any one of claims 1-7.

10. A storage medium having stored thereon a computer program, characterized in that The computer program is executed by the processor to implement the control method of the robot in any one of claims 1-7.