Residual vibration control method, apparatus, and device, and storage medium
By obtaining the trajectory type of the robot's current moment, using the input shaper to perform shaping, determine the positioning posture and control the speed and acceleration, the problems of low residual vibration control accuracy and cross-space fusion path shaping are solved, and the control accuracy and practicality are improved.
Patent Information
- Application Number
- PCT/CN2024/102911
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-02-07
- Filing Date
- 2024-07-01
- Publication Date
- 2025-08-14
AI Technical Summary
The existing robot residual vibration control methods have problems such as low residual vibration control accuracy and inability to achieve shaping across spatial fusion paths, resulting in low practicality.
By obtaining the trajectory type of the robot's current moment, determining the first motion rate planning value and the first joint angle, shaping is performed using an input shaper, determining the position of the robot's current moment based on the first Cartesian position and the second Cartesian position, and controlling the velocity and acceleration according to the posture to achieve suppression of residual vibration.
The accuracy and practicality of residual vibration control are improved, and the problems of low residual vibration control accuracy and inability to achieve shaping across space fusion paths in the prior art are solved, thereby achieving more efficient residual vibration control.
Smart Images

Figure CN2024102911_14082025_PF_FP_ABST
Abstract
Description
Residual vibration control method, device, equipment and storage medium
[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on February 7, 2024, with application number 202410174468.6. The entire contents of the above application are incorporated by reference into this application. Technical Field
[0002] The embodiments of the present application relate to the field of robotics technology, and in particular to a residual vibration control method, apparatus, device, and storage medium. Background Art
[0003] During robot motion, significant residual vibration is generated during its start-up and stop phases. This residual vibration significantly impacts the robot's motion accuracy and control performance. Currently, commonly used methods for controlling residual vibration in robots are mostly offline vibration control methods or path-based input shaping methods.
[0004] However, current residual vibration control methods generally have the problems of low residual vibration control accuracy and inability to achieve cross-space fusion path shaping, resulting in low practicality.
[0005] Summary of the Invention
[0006] The present application provides a residual vibration control method, apparatus, device and storage medium to solve the problems of low practicality caused by the low residual vibration control accuracy and the inability to achieve shaping of cross-space fusion paths in current residual vibration control methods.
[0007] According to one aspect of the present application, a residual vibration control method is provided, comprising:
[0008] Get the robot's current trajectory type;
[0009] If the trajectory type at the current moment is a first motion trajectory type, determining a first motion rate planning value and a first joint angle, wherein the first motion trajectory type includes a Cartesian rotation joint fusion motion trajectory type and / or a joint rotation Cartesian fusion motion trajectory type;
[0010] Shaping the first motion rate planning value and the first joint angle by an input shaper to obtain a first motion rate shaping value and a first angle shaping value;
[0011] determining a current pose of the robot based on a first Cartesian pose and a second Cartesian pose, wherein the first Cartesian pose is determined based on the first angle shaping value, and the second Cartesian pose is determined based on the first motion rate shaping value;
[0012] According to the current posture, the current speed and acceleration of the robot are determined to control the residual vibration of the robot.
[0013] According to another aspect of the present application, there is provided a residual vibration control device, comprising:
[0014] Type acquisition module, set to obtain the robot's current trajectory type;
[0015] a data determination module configured to determine a first motion rate planning value and a first joint angle if the trajectory type at the current moment is a first motion trajectory type, wherein the first motion trajectory type includes a Cartesian rotation joint fusion motion trajectory type and / or a joint rotation Cartesian fusion motion trajectory type;
[0016] a shaping value determining module configured to shape the first motion rate planning value and the first joint angle through an input shaper to obtain a first motion rate shaping value and a first angle shaping value;
[0017] a pose determination module configured to determine a pose of the robot at a current moment based on a first Cartesian pose and a second Cartesian pose, wherein the first Cartesian pose is determined based on the first angle shaping value, and the second Cartesian pose is determined based on the first motion rate shaping value;
[0018] The speed determination module is configured to determine the speed and acceleration of the robot at a current moment according to the posture at the current moment, so as to control the residual vibration of the robot.
[0019] According to another aspect of the present application, there is provided a residual vibration control device, comprising:
[0020] at least one processor; and
[0021] a memory communicatively connected to the at least one processor; wherein,
[0022] The memory stores a computer program that can be executed by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the residual vibration control method described in any embodiment of the present application.
[0023] According to another aspect of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the residual vibration control method described in any embodiment of the present application when executed.
[0024] The technical solution provided by the embodiment of the present application obtains the trajectory type of the robot at the current moment; if the trajectory type at the current moment is the first motion trajectory type, determines the first motion rate planning value and the first joint angle, wherein the first motion trajectory type includes a Cartesian rotation joint fusion motion trajectory type and / or a joint to Cartesian fusion motion trajectory type; shapes the first motion rate planning value and the first joint angle through an input shaper to obtain a first motion rate shaping value and a first angle shaping value; determines the posture of the robot at the current moment based on the first Cartesian pose and the second Cartesian pose, wherein the first Cartesian pose is determined based on the first angle shaping value, and the second Cartesian pose is determined based on the first motion rate shaping value; determines the speed and acceleration of the robot at the current moment according to the posture at the current moment to control the residual vibration of the robot. Through the above technical solution, if the trajectory type at the current moment is the first motion trajectory type, wherein the first motion trajectory type includes a Cartesian rotation joint fusion motion trajectory type and / or a joint rotation Cartesian fusion motion trajectory type, after calculating the first motion rate planning value and the first joint angle of the first motion trajectory type, the first motion rate planning value and the first joint angle are shaped using an input shaper, and the first Cartesian posture and the second Cartesian posture are determined based on the shaping result, thereby effectively avoiding the problem of trajectory deformation and improving the accuracy of posture determination, and then realizing cross-space fusion of the trajectory through the first Cartesian posture and the second Cartesian posture, effectively improving the residual vibration control accuracy and practicality, and solving the problems of low residual vibration control accuracy and inability to achieve cross-space fusion path shaping in current residual vibration control methods, resulting in low practicality.
[0025] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present application, nor is it intended to limit the scope of the present application. Other features of the present application will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0027] FIG1 is a flow chart of a residual vibration control method provided in Example 1 of the present application;
[0028] FIG2 is a flow chart of a residual vibration control method provided in Example 2 of the present application;
[0029] FIG3 is a schematic structural diagram of a residual vibration control device provided in Example 3 of the present application;
[0030] FIG4 is a schematic structural diagram of a residual vibration control device provided in Example 4 of the present application. DETAILED DESCRIPTION
[0031] In order to enable those skilled in the art to better understand the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of this application.
[0032] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in a sequence other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0033] Example 1
[0034] FIG1 is a flow chart of a residual vibration control method provided in Example 1 of the present application. This embodiment is applicable to controlling the residual vibration of a robot. The method can be executed by a residual vibration control device, which can be implemented in the form of hardware and / or software and can be configured in a residual vibration control device. As shown in FIG1 , the method includes:
[0035] S110: Obtain the trajectory type of the robot at the current moment.
[0036] In this embodiment, the robot is an intelligent machine capable of semi-autonomous or fully autonomous operation. The robot can perform tasks such as work or movement through programming or automatic control. The trajectory type may include a joint motion trajectory type, a joint-to-joint fusion motion trajectory type, a Cartesian motion trajectory type, a joint-to-Cartesian fusion motion trajectory type, a Cartesian-to-joint fusion motion trajectory type, and a Cartesian-to-Cartesian fusion motion trajectory type. Among them, the joint motion trajectory type can be understood as a trajectory type based on joint space planning. The Cartesian motion trajectory type can be understood as a trajectory type based on Cartesian space planning. The Cartesian-to-joint fusion motion trajectory type can be understood as an intermediate trajectory type transitioning from the Cartesian motion trajectory type to the joint motion trajectory type. The joint-to-Cartesian fusion motion trajectory type can be understood as an intermediate trajectory type transitioning from the joint motion trajectory type to the Cartesian trajectory type. The joint-to-joint fusion motion trajectory type can be understood as an intermediate trajectory type transitioning from the joint motion trajectory type to the joint motion trajectory type. The Cartesian-to-Cartesian fusion motion trajectory type can be understood as an intermediate trajectory type transitioning from the Cartesian motion trajectory type to the Cartesian motion trajectory type.
[0037] Specifically, in industrial production, robots often need to move quickly and precisely position themselves. However, due to the presence of flexible structures such as harmonic reducers and belts in the robots themselves, severe residual vibrations will occur at the end of the robot after the movement, seriously affecting production efficiency and positioning accuracy. Therefore, it is necessary to suppress the residual vibration. First, the robot's current trajectory type is obtained to accurately control different trajectory types. This technical solution can collect the robot's trajectory type in real time during the robot's movement to achieve real-time online suppression of residual vibrations in the robot's trajectory.
[0038] This embodiment does not limit the method of obtaining the trajectory type, which can be directly input or calculated based on relevant data of the robot.
[0039] S120: If the trajectory type at the current moment is a first motion trajectory type, determine a first motion rate planning value and a first joint angle, wherein the first motion trajectory type includes a Cartesian rotation joint fusion motion trajectory type and / or a joint rotation Cartesian fusion motion trajectory type.
[0040] In this embodiment, the first motion trajectory type includes a Cartesian joint rotation fusion motion trajectory type and / or a joint-to-Cartesian fusion motion trajectory type. The first motion rate planning value includes a robot pose calculated using a trajectory planning algorithm based on certain motion constraints, generally expressed as a one-dimensional scalar. The first joint angle includes joint angles corresponding to a preset number (e.g., six) of the robot's joints calculated using the trajectory planning algorithm.
[0041] Specifically, considering that the Cartesian joint rotation fusion motion trajectory type and / or the joint to Cartesian fusion motion trajectory type involve trajectory fusion across Cartesian space and joint space, if it is determined that the trajectory type at the current moment is the first motion trajectory type, that is, the trajectory type at the current moment is the Cartesian joint rotation fusion motion trajectory type and / or the joint to Cartesian fusion motion trajectory type, then it is necessary to further calculate the first motion rate planning value and the first joint angle corresponding to the first motion trajectory type. Among them, the first joint angle can be calculated by a trajectory planning algorithm and a kinematic inverse solution algorithm. This embodiment does not limit the method of calculating the first motion rate planning value and the first joint angle.
[0042] S130 , shaping the first motion rate planning value and the first joint angle through an input shaper to obtain a first motion rate shaping value and a first angle shaping value.
[0043] In this embodiment, the input shaper includes a pre-designed shaper, and the time domain expression of the shaper is as follows:
[0044] Among them, A i and t i are the amplitude of the shaped pulse sequence and its corresponding time delay, respectively, calculated from the robot's vibration frequency and damping. n is the number of pulses input to the shaper. σ represents the input shaper value function. i represents the pulse number. c(t) represents the final shaped value.
[0045] Specifically, after obtaining the first motion rate shaping value and the first angle shaping value, the first motion rate planning value and the first joint angle can be directly shaped using the input shaper to obtain the first motion rate shaping value and the first angle shaping value. However, some current technologies use the input shaper to shape the robot's current posture after calculating it, which often results in trajectory deformation. The embodiments of the present application can effectively avoid this situation and lay the foundation for accurately determining the robot's posture.
[0046] S140. Determine the current posture of the robot based on a first Cartesian posture and a second Cartesian posture, wherein the first Cartesian posture is determined based on the first angle shaping value, and the second Cartesian posture is determined based on the first motion rate shaping value.
[0047] In this embodiment, the first Cartesian pose is calculated based on the first angle shaping value using a forward kinematic solution algorithm and can be represented as P1. The second Cartesian pose is calculated based on the first kinematic rate shaping value using a trajectory planning algorithm and can be represented as P2. The current pose refers to the robot's position and posture in a specified spatial coordinate system at that moment.
[0048] Specifically, after obtaining the first motion rate shaping value and the first angle shaping value through the input shaper, considering that the motion rate speeds corresponding to the joint space and the Cartesian space are generally not synchronized, which may cause speed jumps, it is necessary to calculate the first Cartesian pose based on the first angle shaping value, and calculate the second Cartesian pose based on the first motion rate shaping value, and then determine the current pose of the robot by reasonably fusing the first Cartesian pose and the second Cartesian pose. The current pose can be expressed as P -res , thereby achieving a smooth transition between the joint space and the Cartesian space. It is worth noting that this embodiment does not limit the fusion calculation method of the first Cartesian pose and the second Cartesian pose.
[0049] S150. Determine the velocity and acceleration of the robot at the current moment according to the posture at the current moment to control the residual vibration of the robot.
[0050] Specifically, by performing a differential operation on the current posture and the posture at the previous moment, the speed at the current moment can be obtained, and then by performing a differential operation on the current speed and the speed at the previous moment, the acceleration at the current moment can be obtained, and then the residual vibration of the robot can be controlled using the current speed and acceleration.
[0051] The technical solution provided in Example 1 of the present application obtains the trajectory type of the robot at the current moment; if the trajectory type at the current moment is the first motion trajectory type, determines the first motion rate planning value and the first joint angle, wherein the first motion trajectory type includes a Cartesian rotation joint fusion motion trajectory type and / or a joint to Cartesian fusion motion trajectory type; shapes the first motion rate planning value and the first joint angle through an input shaper to obtain a first motion rate shaping value and a first angle shaping value; determines the posture of the robot at the current moment based on the first Cartesian pose and the second Cartesian pose, wherein the first Cartesian pose is determined based on the first angle shaping value, and the second Cartesian pose is determined based on the first motion rate shaping value; determines the speed and acceleration of the robot at the current moment according to the posture at the current moment to control the residual vibration of the robot. Through the above technical solution, after obtaining the first motion rate planning value and the first joint angle of the first motion trajectory type, the first motion rate planning value and the first joint angle are shaped by using an input shaper, and the first Cartesian pose and the second Cartesian pose are determined based on the shaping result, which effectively avoids the problem of trajectory deformation and improves the accuracy of pose determination. Furthermore, cross-space fusion of the trajectory is achieved through the first Cartesian pose and the second Cartesian pose, which effectively improves the residual vibration control accuracy and practicality, and solves the problems of low residual vibration control accuracy and inability to achieve cross-space fusion path shaping, resulting in low practicality, which are common in current residual vibration control methods.
[0052] In some embodiments, if the trajectory type at the current moment is the first motion trajectory type, the first motion rate planning value is determined, including: if the trajectory type at the current moment is a joint-to-Cartesian fusion motion trajectory type, the first motion rate instruction value is used as the first motion rate planning value, wherein the first motion rate instruction value is determined by a trajectory planning algorithm; if the trajectory type at the current moment is a Cartesian-to-joint fusion motion trajectory type, the motion rate planning value corresponding to the end moment of the previous Cartesian motion trajectory type is added to the second motion rate instruction value corresponding to the trajectory type at the current moment to obtain the first motion rate planning value, wherein the second motion rate instruction value is determined by the trajectory planning algorithm.
[0053] Specifically, if the trajectory type at the current moment is a joint-to-Cartesian fusion motion trajectory type, the first motion rate instruction value can be directly calculated through the trajectory planning algorithm, and then the first motion rate instruction value is used as the first motion rate planning value.
[0054] If the trajectory type at the current moment is a Cartesian rotational joint fusion motion trajectory type, the second motion rate instruction value corresponding to the trajectory type at the current moment is calculated through the trajectory planning algorithm, and then the motion rate planning value corresponding to the end moment of the previous Cartesian motion trajectory type is added to the second motion rate instruction value corresponding to the trajectory type at the current moment to obtain the first motion rate planning value.
[0055] For example, the previous trajectory type of the Cartesian joint rotation fusion motion trajectory type is a Cartesian motion trajectory type, and the motion rate planning value corresponding to the end moment of the Cartesian motion trajectory type is 100. In order to ensure the continuity of the input shaper, when calculating the first motion rate planning value corresponding to the Cartesian joint rotation fusion motion trajectory type, the motion rate planning value 100 corresponding to the end moment of the previous Cartesian motion trajectory type should be added to the second motion rate instruction value corresponding to the Cartesian joint rotation fusion motion trajectory type at the current moment. After obtaining the first motion rate planning value, the input shaper is used for shaping.
[0056] Through the above method, different methods are used to calculate the first motion rate planning value for different first motion trajectory types, which effectively improves the accuracy of determining the first motion rate planning value and lays the foundation for further improving the accuracy of posture determination.
[0057] In some embodiments, the residual vibration control method also includes: if the trajectory type at the current moment is the second motion trajectory type, then the motion rate planning value corresponding to the end moment of the previous Cartesian motion type is added to the third motion rate instruction value corresponding to the second motion trajectory type to obtain the second motion rate planning value, wherein the second motion trajectory type includes a Cartesian to Cartesian fusion motion trajectory type, and the third motion rate instruction value is determined by a trajectory planning algorithm; the second motion rate planning value is shaped by the input shaper to obtain a second motion rate shaping value; based on the third Cartesian pose, the posture of the robot at the current moment is determined, wherein the third Cartesian pose is determined based on the second motion rate shaping value.
[0058] Specifically, if the trajectory type at the current moment is the second motion trajectory type, that is, the Cartesian to Cartesian fusion motion trajectory type, it can be known that the trajectory type of the previous segment is the Cartesian motion trajectory type. First, the trajectory planning algorithm is used to calculate the third motion rate instruction value corresponding to the second motion trajectory type at the current moment, and then it is added to the motion rate planning value corresponding to the end moment of the previous Cartesian motion type to obtain the second motion rate planning value corresponding to the trajectory type at the current moment. Then, the second motion rate planning value is input to the shaper to obtain the second motion rate shaping value. Then, the third Cartesian posture is determined based on the second motion rate shaping value through the planning trajectory algorithm, and the third Cartesian posture is used as the posture of the robot at the current moment. Through the above technical solution, the robot posture is determined for different trajectory types, and the accuracy of posture determination is effectively improved.
[0059] In some embodiments, the residual vibration control method also includes: if the trajectory type at the current moment is the third motion trajectory type, then when the previous trajectory type is the first motion trajectory type or the second motion trajectory type, the motion rate planning value corresponding to the end moment of the previous trajectory type is added to the fourth motion rate instruction value corresponding to the third motion trajectory type to obtain a third motion rate planning value, wherein the third motion trajectory type includes a Cartesian motion trajectory type, and the fourth motion rate instruction value is determined by a trajectory planning algorithm; the third motion rate planning value is shaped by the input shaper to obtain a third motion rate shaping value; based on the fourth Cartesian posture, the posture of the robot at the current moment is determined, wherein the fourth Cartesian posture is determined based on the third motion rate shaping value.
[0060] Specifically, if the trajectory type at the current moment is the third motion trajectory type, that is, the Cartesian motion trajectory type, then it is necessary to consider the impact of the previous trajectory type on the trajectory type at the current moment. If the previous trajectory type is the first motion trajectory type or the second motion trajectory type, it is necessary to add the motion rate planning value corresponding to the end moment of the previous trajectory type and the fourth motion rate instruction value calculated by the trajectory planning algorithm to obtain the third motion rate planning value, and then use the input shaper to shape the third motion rate planning value to obtain the third motion rate shaping value, and use the trajectory planning algorithm to determine the fourth Cartesian pose based on the third motion rate shaping value, and then use the fourth Cartesian pose as the robot's current pose. Through the above technical solution, the robot pose is determined for different trajectory types, effectively improving the accuracy of pose determination.
[0061] Optionally, if the previous trajectory type is neither the first motion trajectory type nor the second motion trajectory type, the fourth motion rate instruction value calculated by the trajectory planning algorithm may be directly used as the third motion rate planning value.
[0062] In some embodiments, the residual vibration control method further includes: if the trajectory type at the current moment is a fourth motion trajectory type, shaping the second joint angle through the input shaper to obtain a second angle shaping value, wherein the fourth motion trajectory type includes a joint motion trajectory type and a joint-joint fusion motion trajectory type, and the second joint angle is determined by a trajectory planning algorithm; based on a fifth Cartesian pose, determining the pose of the robot at the current moment, wherein the fifth Cartesian pose is determined based on the second angle shaping value.
[0063] Specifically, if the current trajectory type is the fourth motion trajectory type, namely the joint motion trajectory type and the joint-rotation fusion motion trajectory type, the trajectory planning algorithm calculates the second joint angle, and then uses the input shaper to shape the second joint angle to obtain the second angle shaping value. Based on the second angle shaping value, the kinematic forward solution algorithm can be used to calculate the fifth Cartesian pose, which can then be directly used as the robot's current pose. Through this technical solution, the robot pose is determined for different trajectory types, effectively improving the accuracy of pose determination.
[0064] In some embodiments, the input shaper includes a joint shaper and a motion rate shaper, wherein the joint shaper is used to shape the joint angle, and the motion rate shaper is used to shape the motion rate planning value.
[0065] Specifically, in order to effectively improve the shaping efficiency of the input shaper, this embodiment uses the same parameters to design two sets of input shapers, including a joint shaper and a motion rate shaper, wherein the joint shaper is used to shape the joint angle, and the motion rate shaper can be used to shape the motion rate planning value.
[0066] Example 2
[0067] FIG2 is a flow chart of a residual vibration control method provided in Example 2 of the present application. This embodiment optimizes and expands upon the aforementioned optional embodiments. This embodiment further illustrates how to determine the current posture of the robot based on the first Cartesian posture and the second Cartesian posture. As shown in FIG2 , the method includes:
[0068] S210: Obtain the trajectory type of the robot at the current moment.
[0069] S220: If the trajectory type at the current moment is a first motion trajectory type, determine a first motion rate planning value and a first joint angle, wherein the first motion trajectory type includes a Cartesian rotation joint fusion motion trajectory type and / or a joint rotation Cartesian fusion motion trajectory type.
[0070] S230 , shaping the first motion rate planning value and the first joint angle through an input shaper to obtain a first motion rate shaping value and a first angle shaping value.
[0071] S240 , using a quintic polynomial programming algorithm to determine a first transition parameter and a second transition parameter.
[0072] In this embodiment, the quintic polynomial programming algorithm is a smooth trajectory planning method that can continuously change the acceleration and curvature of the robot during motion to achieve smooth and stable control. The first transition parameter and the second transition parameter both have a value range of [0, 1].
[0073] Specifically, considering that the movement rate speeds in the joint space and the Cartesian space are not synchronized, which may cause speed jumps, a transition factor is introduced in this embodiment, that is, the first transition parameter and the second transition parameter are determined by using a fifth-order polynomial programming algorithm to achieve a smooth transition between the joint space and the Cartesian control.
[0074] S250: Calculate a first product of the first transition parameter and the first Cartesian pose, wherein the first Cartesian pose is determined based on the first angle shaping value.
[0075] Specifically, the kinematics forward solution algorithm is used based on the first angle shaping value J 1-resThe first Cartesian pose P1 is calculated, and then the first product is calculated by the following formula: T1 = K1 * P1
[0076] Wherein, T1 represents the first product, and K1 represents the first transition parameter.
[0077] S260: Calculate a second product of the second transition parameter and the second Cartesian pose, wherein the second Cartesian pose is determined based on the first motion rate shaping value.
[0078] Specifically, the trajectory planning algorithm is based on the first motion rate shaping value U 1-res The second Cartesian pose P2 is calculated, and the second product is calculated by the following formula: T2 = K2*P2
[0079] Wherein, T2 represents the second product, and K2 represents the second transition parameter.
[0080] S270. Determine the sum of the first product and the second product as the posture at the current moment.
[0081] Specifically, the current position can be determined by the following method: -res =T1+T2
[0082] S280: Determine the velocity and acceleration of the robot at the current moment according to the posture at the current moment, so as to control the residual vibration of the robot.
[0083] The technical solution provided in Example 2 of the present application introduces the first transition parameter and the second transition parameter through a fifth-order polynomial programming algorithm when determining the posture at the current moment, and calculates the first product of the first transition parameter and the first Cartesian posture, as well as the second product of the second transition parameter and the second Cartesian posture. The sum of the first product and the second product is then determined as the posture at the current moment, thereby achieving a smooth transition between the joint space and the Cartesian space and effectively improving the accuracy of posture determination.
[0084] Exemplary, suppose that there are three sections of tracks continuously, be followed by Cartesian straight line track, Cartesian-Cartesian fusion track, Cartesian straight line track.Three sections of tracks carry out track planning separately, and motion rate command value is all 0-100.In this scheme, first section track Cartesian straight line track can be normally planned, and motion rate command value 0-100 is directly sent to shaper as motion rate planning value; Cartesian-Cartesian fusion track, the motion rate command value of normal track planning is 0-100, for the continuity of shaper, the motion rate command value of the track planning result of second section track will all be added 100, thus what second section track finally sends to input shaper is motion rate planning value 100-200; Third section track Cartesian straight line track, the motion rate command value of normal track planning is 0-100, because last track is fusion motion (motion rate planning value when last track ends is 200), so the motion rate command value of the track planning result of third section track all adds 200, then what is sent to shaper is motion rate planning value 200-300.
[0085] For example, assume that there are three consecutive trajectories, namely Cartesian straight line trajectory, Cartesian straight line trajectory, and Cartesian straight line trajectory, and the three trajectories are planned separately. The motion rate command values are all 0-100. Because there is no fusion motion, the motion rate command values of the three trajectories do not need to be processed and can be directly sent to the input shaper as motion rate planning values.
[0086] For example, assume that there are three continuous trajectories, namely, Cartesian straight line trajectory, Cartesian-articular fusion trajectory, and joint trajectory. The motion rate instruction values for the Cartesian straight line trajectory and the Cartesian-articular fusion trajectory for trajectory planning are both 0-100. The first trajectory is executed normally, and the motion rate instruction value of 0-100 is sent to the input shaper as the motion rate planning value; the motion rate instruction value of the normal trajectory planning of the second trajectory is 0-100. In order to ensure the continuity of the shaper, the motion rate instruction value of the Cartesian-articular fusion trajectory will be added with 100, so that the value sent to the shaper of the second trajectory becomes the motion rate planning value 100-200. After shaping, this value obtains the second Cartesian posture P2. According to the original planning, the first joint angle can be obtained by correct solution. After the first joint angle is shaped, the kinematic correct solution is performed to obtain the first Cartesian posture P1, and the fifth-order polynomial programming algorithm is used to transition between P1 and P2; the third trajectory directly shapes the joint angle.
[0087] Example 3
[0088] FIG3 is a schematic diagram of the structure of a residual vibration control device provided in Example 3 of the present application. As shown in FIG3 , the device includes:
[0089] Type acquisition module 31, used to obtain the trajectory type of the robot at the current moment;
[0090] a data determination module 32 configured to determine a first motion rate planning value and a first joint angle if the trajectory type at the current moment is a first motion trajectory type, wherein the first motion trajectory type includes a Cartesian rotation joint fusion motion trajectory type and / or a joint rotation Cartesian fusion motion trajectory type;
[0091] a shaping value determining module 33, configured to shape the first motion rate planning value and the first joint angle through an input shaper to obtain a first motion rate shaping value and a first angle shaping value;
[0092] a posture determination module 34, configured to determine a posture of the robot at a current moment based on a first Cartesian posture and a second Cartesian posture, wherein the first Cartesian posture is determined based on the first angle shaping value, and the second Cartesian posture is determined based on the first motion rate shaping value;
[0093] The speed determination module 35 is used to determine the speed and acceleration of the robot at the current moment according to the posture at the current moment, so as to control the residual vibration of the robot.
[0094] The technical solution provided in Example 3 of the present application effectively improves the accuracy and practicality of residual vibration control, and solves the problems of low practicality caused by the current residual vibration control methods, such as low residual vibration control accuracy and inability to achieve shaping of cross-space fusion paths.
[0095] Optionally, the data determination module 32 includes:
[0096] a first determining unit, configured to use a first motion rate instruction value as a first motion rate planning value if the trajectory type at the current moment is a joint-to-Cartesian fusion motion trajectory type, wherein the first motion rate instruction value is determined by a trajectory planning algorithm;
[0097] The second determination unit is used to add the motion rate planning value corresponding to the end moment of the previous Cartesian motion trajectory type to the second motion rate instruction value corresponding to the trajectory type at the current moment to obtain the first motion rate planning value if the trajectory type at the current moment is a Cartesian rotation joint fusion motion trajectory type, wherein the second motion rate instruction value is determined by the trajectory planning algorithm.
[0098] Optionally, the posture determination module 34 includes:
[0099] a parameter determination unit, configured to determine a first transition parameter and a second transition parameter using a quintic polynomial programming algorithm;
[0100] a first product calculation unit, configured to calculate a first product of the first transition parameter and the first Cartesian pose;
[0101] a second product calculation unit, configured to calculate a second product of the second transition parameter and the second Cartesian pose;
[0102] The posture determination unit is used to determine the sum of the first product and the second product as the posture at the current moment.
[0103] Optionally, the residual vibration control device further comprises:
[0104] a second planning value determination module configured to, if the trajectory type at the current moment is a second motion trajectory type, add a motion rate planning value corresponding to the end moment of a previous Cartesian motion type to a third motion rate command value corresponding to the second motion trajectory type to obtain a second motion rate planning value, wherein the second motion trajectory type includes a Cartesian-to-Cartesian fusion motion trajectory type, and the third motion rate command value is determined by a trajectory planning algorithm;
[0105] a second shaping value determining module, configured to shape the second motion rate planning value through the input shaper to obtain a second motion rate shaping value;
[0106] The second posture determination module is used to determine the posture of the robot at a current moment based on a third Cartesian posture, wherein the third Cartesian posture is determined based on the second motion rate shaping value.
[0107] Optionally, the residual vibration control device further comprises:
[0108] a third planning value determination module, configured to, if the trajectory type at the current moment is the third motion trajectory type, then, when the previous trajectory type is the first motion trajectory type or the second motion trajectory type, add the motion rate planning value corresponding to the end moment of the previous trajectory type to the fourth motion rate instruction value corresponding to the third motion trajectory type to obtain a third motion rate planning value, wherein the third motion trajectory type includes a Cartesian motion trajectory type and the fourth motion rate instruction value is determined by a trajectory planning algorithm;
[0109] A third shaping value determining module, configured to shape the third motion rate planning value through the input shaper to obtain a third motion rate shaping value;
[0110] The third posture determination module is used to determine the posture of the robot at a current moment based on a fourth Cartesian posture, wherein the fourth Cartesian posture is determined based on the third motion rate shaping value.
[0111] Optionally, the residual vibration control device further comprises:
[0112] an angle shaping value determining module, configured to, if the trajectory type at the current moment is a fourth motion trajectory type, shape the second joint angle using the input shaper to obtain a second angle shaping value, wherein the fourth motion trajectory type includes a joint motion trajectory type and a joint-rotation-joint fusion motion trajectory type, and the second joint angle is determined by a trajectory planning algorithm;
[0113] The fourth posture determination module is used to determine the posture of the robot at a current moment based on a fifth Cartesian posture, wherein the fifth Cartesian posture is determined based on the second angle shaping value.
[0114] Optionally, the input shaper includes a joint shaper and a motion rate shaper, the joint shaper is used to shape the joint angle, and the motion rate shaper is used to shape the motion rate planning value.
[0115] The residual vibration control device provided in the embodiment of the present application can execute the residual vibration control method provided in any embodiment of the present application, and has the corresponding functional modules and beneficial effects of the execution method.
[0116] Example 4
[0117] FIG4 is a schematic diagram of the structure of a residual vibration control device provided in Example 4 of the present application. The residual vibration control device can be an electronic device, intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present application described and / or required herein.
[0118] As shown in FIG4 , the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 and a random access memory (RAM) 13, that is communicatively connected to the at least one processor 11. The memory stores a computer program that can be executed by the at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 into the random access memory (RAM) 13. Various programs and data required for the operation of the electronic device 10 can also be stored in the RAM 13. The processor 11, ROM 12, and RAM 13 are connected to each other via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0119] Multiple components in the electronic device 10 are connected to the I / O interface 15, including an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a magnetic disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.
[0120] The processor 11 can be any general-purpose and / or specialized processing component with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various specialized artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any other suitable processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as the residual vibration control method.
[0121] In some embodiments, the residual vibration control method can be implemented as a computer program that is tangibly contained in a computer-readable storage medium, such as the storage unit 18. In some embodiments, part or all of the computer program can be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the residual vibration control method described above can be performed. Alternatively, in other embodiments, the processor 11 can be configured to perform the residual vibration control method in any other appropriate manner (e.g., by means of firmware).
[0122] Various embodiments of the systems and techniques described herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0123] Computer programs for implementing the methods of the present application may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when the computer program is executed by the processor, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The computer program may be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.
[0124] In the context of the present application, a computer-readable storage medium can be a tangible medium that can contain or store a computer program for use by an instruction execution system, device or equipment or used in combination with an instruction execution system, device or equipment. A computer-readable storage medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium can be a machine-readable signal medium. A more specific example of a machine-readable storage medium can include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0125] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device that has: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0126] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0127] A computing system may include clients and servers. The clients and servers are typically remote from each other and typically interact via a communication network. This client-server relationship arises through computer programs running on the respective computers, creating a client-server relationship. The server may be a cloud server, also known as a cloud computing server or cloud host. This server is a hosting product within the cloud computing service ecosystem that addresses the management difficulties and limited scalability of traditional physical hosting and VPS services.
[0128] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in this application can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solution of this application can be achieved. This is not limited herein.
[0129] The above specific embodiments do not constitute a limitation on the scope of protection of this application. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application shall be included within the scope of protection of this application.
Claims
1. A residual vibration control method, comprising: Get the robot's current trajectory type; If the trajectory type at the current moment is a first motion trajectory type, determining a first motion rate planning value and a first joint angle, wherein the first motion trajectory type includes a Cartesian rotation joint fusion motion trajectory type and / or a joint rotation Cartesian fusion motion trajectory type; Shaping the first motion rate planning value and the first joint angle by an input shaper to obtain a first motion rate shaping value and a first angle shaping value; determining a current pose of the robot based on a first Cartesian pose and a second Cartesian pose, wherein the first Cartesian pose is determined based on the first angle shaping value, and the second Cartesian pose is determined based on the first motion rate shaping value; According to the current posture, the current speed and acceleration of the robot are determined to control the residual vibration of the robot.
2. The method according to claim 1, wherein If the trajectory type at the current moment is the first motion trajectory type, determining the first motion rate planning value includes: If the trajectory type at the current moment is a joint-to-Cartesian fusion motion trajectory type, the first motion rate instruction value is used as the first motion rate planning value, wherein the first motion rate instruction value is determined by a trajectory planning algorithm; If the trajectory type at the current moment is a Cartesian rotational joint fusion motion trajectory type, the motion rate planning value corresponding to the end moment of the previous Cartesian motion trajectory type is added to the second motion rate instruction value corresponding to the trajectory type at the current moment to obtain a first motion rate planning value, wherein the second motion rate instruction value is determined by the trajectory planning algorithm.
3. The method according to claim 1, wherein Determining the current posture of the robot based on the first Cartesian posture and the second Cartesian posture includes: Determining a first transition parameter and a second transition parameter using a quintic polynomial programming algorithm; Calculating a first product of the first transition parameter and the first Cartesian pose; calculating a second product of the second transition parameter and the second Cartesian pose; The sum of the first product and the second product is determined as the posture at the current moment.
4. The method according to claim 1, further comprising: If the trajectory type at the current moment is the second motion trajectory type, the motion rate planning value corresponding to the end moment of the previous Cartesian motion type is added to the third motion rate instruction value corresponding to the second motion trajectory type to obtain the second motion rate planning value, wherein the second motion trajectory type includes Cartesian motion type. Cartesian-to-Cartesian fusion motion trajectory type, wherein the third motion rate instruction value is determined by a trajectory planning algorithm; shaping the second motion rate planning value by the input shaper to obtain a second motion rate shaping value; The current posture of the robot is determined based on a third Cartesian posture, wherein the third Cartesian posture is determined based on the second motion rate shaping value.
5. The method according to claim 4, further comprising: If the trajectory type at the current moment is the third motion trajectory type, then when the previous trajectory type is the first motion trajectory type or the second motion trajectory type, the motion rate planning value corresponding to the end moment of the previous trajectory type is added to the fourth motion rate instruction value corresponding to the third motion trajectory type to obtain a third motion rate planning value, wherein the third motion trajectory type includes a Cartesian motion trajectory type, and the fourth motion rate instruction value is determined by a trajectory planning algorithm; shaping the third motion rate planning value by the input shaper to obtain a third motion rate shaping value; The current posture of the robot is determined based on a fourth Cartesian posture, wherein the fourth Cartesian posture is determined based on the third motion rate shaping value.
6. The method according to claim 1, further comprising: If the trajectory type at the current moment is a fourth motion trajectory type, shaping the second joint angle by the input shaper to obtain a second angle shaping value, wherein the fourth motion trajectory type includes a joint motion trajectory type and a joint rotation and fusion motion trajectory type, and the second joint angle is determined by a trajectory planning algorithm; Based on a fifth Cartesian pose, a current pose of the robot is determined, wherein the fifth Cartesian pose is determined based on the second angle shaping value.
7. The method according to any one of claims 1 to 6, wherein The input shaper includes a joint shaper and a motion rate shaper. The joint shaper is used to shape the joint angle, and the motion rate shaper is used to shape the motion rate planning value.
8. A residual vibration control device comprising: Type acquisition module, set to obtain the robot's current trajectory type; a data determination module configured to determine a first motion rate planning value and a first joint angle if the trajectory type at the current moment is a first motion trajectory type, wherein the first motion trajectory type includes a Cartesian rotation joint fusion motion trajectory type and / or a joint rotation Cartesian fusion motion trajectory type; a shaping value determining module configured to shape the first motion rate planning value and the first joint angle through an input shaper to obtain a first motion rate shaping value and a first angle shaping value; a pose determination module configured to determine a pose of the robot at a current moment based on a first Cartesian pose and a second Cartesian pose, wherein the first Cartesian pose is determined based on the first angle shaping value, and the second Cartesian pose is determined based on the first motion rate shaping value; The speed determination module is configured to determine the speed and acceleration of the robot at a current moment according to the posture at the current moment, so as to control the residual vibration of the robot.
9. A residual vibration control device comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to perform the residual vibration control method according to any one of claims 1 to 7.
10. A computer-readable storage medium having a computer program stored thereon, wherein when the program is executed by a processor, the residual vibration control method according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Tail end vibration suppression method based on equivalent input interference and input shaper
CN111913506A
Robot and trunk shaking suppression method and device thereof
CN113043276A
Track planning method and device, electronic equipment and storage medium
CN114274148A
Residual vibration control method and device, equipment and storage medium
CN117901113A
Servo controller
JP2006302201A