Filtering queue length determination method, interpolation angle processing method and joint control method
By adaptively adjusting the filter queue length and interpolation angle processing method, the robot jitter problem is solved, motion smoothness and control accuracy are improved, energy consumption and safety are optimized, and this method is applied to robot joint control.
Patent Information
- Application Number
- CN202510872249.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-26
- Publication Date
- 2025-11-25
AI Technical Summary
Robots are prone to shaking when moving at high speeds, which affects their motion performance and control accuracy. In existing technologies, the setting of the filter queue length is often inappropriate, which makes it impossible to effectively solve the shaking problem.
By acquiring the parameters affecting joint motion, determining the weighting influence coefficients, adaptively adjusting the filter queue length, and combining it with the interpolation angle processing method, the robot joint control is optimized. The joint acceleration filtering method with adaptive queue length is adopted to reduce jitter.
It effectively reduces jitter during robot control, improves motion smoothness and control precision, balances load weight and acceleration, and optimizes energy consumption and safety.
Smart Images

Figure CN121004597A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of robots, in particular, to a filter queue length determination method, an interpolation angle processing method and a joint control method. BACKGROUND
[0002] Robots have a wide range of applications in the industrial field. Taking a serial robot as an example, its motion stability is an important indicator for evaluating the kinematic performance of industrial robots.
[0003] When the robot moves at high speed, the change of joint acceleration will cause impact and vibration, which in turn will reduce the motion performance and control accuracy of the robot. In order to alleviate such effects, joint acceleration filtering is introduced to reduce impact and vibration, improve motion smoothness, improve control performance, optimize energy consumption, improve safety and reliability, which is an important means to improve the motion performance, control accuracy and reliability of industrial robots.
[0004] However, the prior art still tends to have a jitter phenomenon during the motion of the robot, which in turn affects the motion performance and control accuracy of the robot. SUMMARY
[0005] The embodiments of the present application provide a filter queue length determination method, an interpolation angle processing method and a joint control method, which can effectively prevent the robot from jittering.
[0006] According to a first aspect of the embodiments of the present application, a method for determining a filter queue length applied to joint control of a robot is provided, comprising:
[0007] obtaining a joint motion influencing parameter, the joint motion influencing parameter being a parameter causing joint motion;
[0008] determining a weight influencing coefficient corresponding to the joint motion influencing parameter according to the joint motion influencing parameter;
[0009] determining the filter queue length based on the joint motion influencing parameter and the weight influencing coefficient.
[0010] In combination with the first aspect, in an optional implementation manner of the embodiments of the present application, the joint motion influencing parameter comprises an end load weight and a maximum joint motion acceleration.
[0011] The weight influencing coefficient comprises a first weight influencing coefficient corresponding to the end load weight and a second weight influencing coefficient corresponding to the joint motion acceleration.
[0012] In conjunction with the first aspect, in an optional implementation of the embodiments of this application, the joint movement influence parameters include: end-load weight and its maximum set value, and the maximum joint movement acceleration and its maximum set value;
[0013] The weighting influence coefficients include: a first weighting influence coefficient corresponding to the end load weight and its maximum set value, and a second weighting influence coefficient corresponding to the maximum acceleration of the joint movement and its maximum set value.
[0014] In conjunction with the first aspect, in an optional implementation of this application embodiment, determining the weighted influence coefficient corresponding to the joint movement influence parameter based on the joint movement influence parameter includes:
[0015] The weighted influence coefficient is determined based on the preset correspondence between the joint movement influence parameters and the weighted influence coefficient; or,
[0016] The joint movement impact parameters are input into the prediction model to obtain the weighted impact coefficients output by the prediction model. The prediction model is trained using training data, which includes historical joint movement impact parameters and their corresponding historical weighted impact coefficients, or the training data includes the historical joint movement impact parameters, the maximum set value corresponding to the historical joint movement impact parameters, and the historical weighted impact coefficients corresponding to the historical joint movement impact parameters and the maximum set value.
[0017] In conjunction with the first aspect, in an optional implementation of this application embodiment, the weighting influence coefficient includes:
[0018] First-type coefficients used to represent the weights of the joint movement influence parameters; or,
[0019] The second type of coefficient is used to calculate the weights of the parameters representing the effects of joint anomalies.
[0020] In conjunction with the first aspect, in an optional implementation of the embodiments of this application, the relationship between the first type of coefficients and the second type of coefficients satisfies:
[0021] a = k 2 / (1+k 2 ), or, a = K / (1+K), or, a = K / (1+K) 2 ), where a represents the first type of coefficient and k represents the second type of coefficient.
[0022] In conjunction with the first aspect, in an optional implementation of this application embodiment, determining the filter queue length based on the joint motion influence parameter and the weight influence coefficient includes:
[0023] Based on the joint motion impact parameters and the weight impact coefficients, the filter queue length ratio is determined;
[0024] The length of the filter queue is determined based on the ratio of the filter queue length and the preset maximum filter queue length.
[0025] In conjunction with the first aspect, in an optional implementation of this application embodiment, determining the filter queue length ratio based on the joint motion influence parameter and the weight influence coefficient includes:
[0026] The filter queue length ratio is determined using the following method:
[0027] P=a1·x1+a2·x2+……+an·xn;
[0028] Where P represents the length ratio of the filter queue, xk represents the ratio of the kth joint motion influence parameter to its maximum set value, ak represents the weight corresponding to xk, which is determined according to the weight influence coefficient corresponding to the kth joint motion influence parameter, 1≤k≤n, and n is a positive integer.
[0029] In conjunction with the first aspect, in one optional implementation of the embodiments of this application, the joint motion influencing parameters include the end-effector load weight and the maximum acceleration of joint movement;
[0030] P = a1·x1 + a2·x2;
[0031] a1=k1 2 / (1+k1 2 );
[0032] a2=k2 2 / (1+k2 2 );
[0033] Where x1 represents the ratio of the end load weight to its maximum set value, and x2 represents the ratio of the maximum joint acceleration to its maximum set value;
[0034] k1 represents the weight influence coefficient corresponding to the end load weight, and k2 represents the weight influence coefficient corresponding to the maximum acceleration of joint movement.
[0035] According to a second aspect of the embodiments of this application, an interpolation angle processing method for robot joint control is provided, which uses the method of the first aspect of the embodiments of this application to determine the filter queue length, and then determines the interpolation angle according to the filter queue length.
[0036] According to a third aspect of the embodiments of this application, a robot joint control method is provided, wherein the robot's motion trajectory includes at least one sub-trajectory;
[0037] The method of the first aspect of the embodiments of this application is used to determine the length of the filter queue corresponding to the at least one sub-trajectory; or,
[0038] When the trajectory type of the sub-trajectory belongs to the target trajectory type, the filter queue length corresponding to the sub-trajectory is determined by the method of the first aspect of the present application.
[0039] According to a fourth aspect of the embodiments of this application, an electronic device is provided, comprising:
[0040] Memory, used to store one or more computer instructions;
[0041] A processor is configured to invoke and execute the computer instructions to implement the methods described in the first, second, or third aspects of the embodiments of this application.
[0042] According to a fifth aspect of the embodiments of this application, a robot is provided, including the electronic device of the fourth aspect of the embodiments of this application, or the method described in the first, second or third aspects of the embodiments of this application.
[0043] By employing the embodiments of this application, the jitter problem in the robot control process can be effectively reduced. Attached Figure Description
[0044] Figure 1 This is a flowchart illustrating a method for determining the length of a filter queue applied to robot joint control according to an embodiment of this application;
[0045] Figure 2 This is a flowchart illustrating a method for determining the length of a filter queue based on joint motion influence parameters and weighted influence coefficients according to an embodiment of this application.
[0046] Figure 3 This is a flowchart illustrating an interpolation angle processing method for robot joint control according to an embodiment of this application;
[0047] Figure 4 This is a flowchart illustrating an adaptive queue length joint acceleration filtering method according to an embodiment of this application;
[0048] Figure 5 This is a flowchart illustrating a data acquisition method according to an embodiment of this application;
[0049] Figure 6 This is a flowchart illustrating an adaptive queue length joint acceleration filtering method according to an embodiment of this application. Detailed Implementation
[0050] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0051] It should be understood that "multiple" as mentioned herein refers to two or more. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; "and / or" in this document is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, to facilitate a clear description of the technical solutions of the embodiments of this application, the terms "first," "second," etc., are used in the embodiments of this application to distinguish identical or similar items with essentially the same function and effect. Those skilled in the art will understand that the terms "first," "second," etc., do not limit the quantity or execution order, and the terms "first," "second," etc., do not necessarily imply differentness.
[0052] Furthermore, the terms “comprising” and “having”, and any variations thereof, are intended to cover non-exclusive inclusion, such that a process, method, system, product, or apparatus that includes a series of steps or units is not necessarily limited to those steps or units that are explicitly listed, but may include other steps or units that are not explicitly listed or that are inherent to such process, method, product, or apparatus.
[0053] Robots have wide applications in the industrial field. Taking serial robots as an example, their motion stability is an important indicator for evaluating the kinematic performance of industrial robots. When a robot moves at high speed, changes in joint acceleration can cause shocks and vibrations, which in turn reduce the robot's motion performance and control accuracy. According to the inventors' research, to mitigate these effects, an adaptive queue length joint acceleration filtering function is introduced in the embodiments of this application. Joint acceleration filtering can reduce shocks and vibrations, improve motion smoothness, improve control performance, optimize energy consumption, and improve safety and reliability. It is an important means to improve the motion performance, control accuracy, and reliability of industrial robots. The adaptive filtering queue length can greatly reduce robot jitter while ensuring that the robot's motion acceleration is within a reasonable range, preventing it from dropping too low and affecting the robot's overall motion performance. A detailed description is provided below with reference to the accompanying drawings.
[0054] Figure 1This is a flowchart illustrating a method for determining the length of a filter queue applied to robot joint control according to an embodiment of this application. (Refer to...) Figure 1 The method includes the following processing steps.
[0055] 100: Obtain the parameters affecting joint movement. These parameters are those that cause joint movement. For example, the parameters affecting joint movement may be related to the end-load weight and / or the maximum acceleration of joint movement. Of course, in other embodiments of this application, other parameters may also be included, such as link mass, joint agility, etc. This embodiment will not elaborate further.
[0056] 102: Determine the weighted influence coefficients corresponding to the joint movement influence parameters based on the joint movement influence parameters.
[0057] In this embodiment, the "weighted influence coefficient corresponding to the joint movement influence parameter" can be understood as the weight corresponding to the joint movement influence parameter, or as the value of the weight corresponding to the joint movement influence parameter that can be calculated.
[0058] 104: Determine the length of the filter queue based on the joint motion influence parameters and weight influence coefficients.
[0059] The method provided in this embodiment can be used to obtain the corresponding filter queue length by utilizing the joint motion influence parameters and their corresponding weight influence coefficients. In other words, in the method provided in this application embodiment, the weight influence coefficient changes with the joint motion influence parameters, and the filter queue length changes with the changes in both the joint motion influence parameters and the weight influence coefficients. This allows the filter queue length to adapt to changes in the joint motion influence parameters, effectively reducing robot vibration.
[0060] Optionally, in one implementation of this embodiment, the joint motion influencing parameters include: end-effector load weight and maximum joint acceleration. Correspondingly, the weighting influence coefficients include: a first weighting influence coefficient corresponding to the end-effector load weight and a second weighting influence coefficient corresponding to the joint acceleration.
[0061] In one specific practice, the first weight influence coefficient is the first weight (first type coefficient) corresponding to the end load weight, and the second weight influence coefficient is the second weight (first type coefficient) corresponding to the joint motion acceleration. In another specific practice, the first weight influence coefficient is used to calculate the value of the first weight (second type coefficient), and the second weight influence coefficient is used to calculate the value of the second weight (second type coefficient).
[0062] By adopting this implementation method, by designing weight coefficients related to the joint motion influence parameters, it is beneficial to obtain a filter queue length that takes into account both load weight and acceleration, while also achieving anti-shaking effect, based on the influence of different joint motion influence parameters on robot joint motion.
[0063] Optionally, in one implementation of this embodiment, the joint motion influencing parameters include: the end effector load weight and its maximum set value, and the maximum joint acceleration and its maximum set value. Correspondingly, the weighting influencing coefficients include: a first weighting influencing coefficient corresponding to the end effector load weight and its maximum set value, and a second weighting influencing coefficient corresponding to the maximum joint acceleration and its maximum set value. For an explanation of the first and second weighting influencing coefficients, please refer to the preceding text; they will not be repeated here. By adopting this implementation, and designing weighting coefficients related to the joint motion influencing parameters, it is beneficial to obtain a filter queue length that balances load weight and acceleration while achieving anti-shaking effects, based on the influence of different joint motion influencing parameters on robot joint motion.
[0064] Optionally, in one implementation of this embodiment, the joint motion influence parameters include: a first ratio of the end-effector load weight to its maximum set value, and a second ratio of the maximum joint acceleration to its maximum set value. Correspondingly, the weighting influence coefficients include a first weighting influence coefficient corresponding to the first ratio and a second weighting influence coefficient corresponding to the second ratio. For explanations of the first and second weighting influence coefficients, please refer to the preceding text; they will not be repeated here. By designing weighting coefficients related to the joint motion influence parameters, this implementation method facilitates obtaining a filter queue length that balances load weight and acceleration while achieving anti-shaking effects, based on the influence of different joint motion influence parameters on robot joint motion.
[0065] Optionally, in one implementation of this application embodiment, the weight influence coefficient can be obtained in the following manner.
[0066] Method 1: Determine the weighted influence coefficient based on the pre-defined correspondence between the joint motion impact parameters and the weighted influence coefficient.
[0067] Method 2: Input the joint movement impact parameters into the prediction model to obtain the weighted impact coefficients output by the prediction model. The prediction model is trained using training data. The training data includes historical joint movement impact parameters and their corresponding historical weighted impact coefficients, or, the training data includes historical joint movement impact parameters, the maximum set value corresponding to the historical joint movement impact parameters, and the historical weighted impact coefficients corresponding to the historical joint movement impact parameters and the maximum set value.
[0068] The correspondence in Method 1 can be obtained through experiments or statistics. Typically, the input prediction model obtained in Method 2 can be used to predict the weight influence coefficients under typical conditions, forming definite values for the weight influence coefficients under various typical conditions (e.g., specific end-load weight and joint motion acceleration), thus establishing the correspondence in Method 1. When using this method, the weight influence coefficients can be determined directly by looking up the table.
[0069] Optionally, in one implementation of this embodiment, such as Figure 2 As shown, the following methods can be used to process 104.
[0070] 1040: Determine the proportion of the filter queue length based on the joint motion influence parameters and weight influence coefficients.
[0071] 1042: Determine the filter queue length based on the filter queue length ratio and the preset maximum filter queue length.
[0072] By adopting this implementation method, an adaptive filter queue length is obtained by using an adaptive filter queue length ratio (adapted to the parameters affecting joint movement), thereby reducing jitter during robot joint control.
[0073] Specifically, the filter queue length ratio can be determined in the following ways:
[0074] P = a1·x1 + a2·x2 + ... + an·xn. Where P represents the proportion of the filter queue length, xk represents the ratio of the k-th joint motion influence parameter to its maximum set value, ak represents the weight corresponding to xk, determined by the weight influence coefficient corresponding to the k-th joint motion influence parameter, 1 ≤ k ≤ n, and n is a positive integer.
[0075] Furthermore, the length of the filter queue can be determined in the following way:
[0076] filter_length = P * filter_length_max. Where filter_length represents the length of the filter queue, and filter_length_max represents the set length of the filter queue.
[0077] Taking the parameters affecting joint abnormality, including the end-load weight and the maximum acceleration of joint movement, as an example, P = a1·x1 + a2·x2; a1 = k1 2 / (1+k1 2 ); a2=k2 2 / (1+k2 2Where x1 represents the ratio of the end-load weight to its maximum set value, x2 represents the ratio of the maximum acceleration of the joint movement to its maximum set value; k1 represents the weight influence coefficient corresponding to the end-load weight, and k2 represents the weight influence coefficient corresponding to the maximum acceleration of the joint movement.
[0078] Figure 3 This is a schematic flowchart illustrating an interpolation angle processing method for robot joint control according to an embodiment of this application. (Refer to...) Figure 3 The method includes the following processing steps.
[0079] 100: Obtain joint movement influencing parameters, which refer to parameters that cause joint movement. For example, joint movement influencing parameters may be parameters related to end-load weight and / or maximum joint acceleration. Of course, other parameters may also be included in other embodiments of this application, which will not be elaborated upon in this embodiment.
[0080] 102: Determine the weighted influence coefficients corresponding to the joint movement influence parameters based on the joint movement influence parameters.
[0081] In this embodiment, the "weighted influence coefficient corresponding to the joint movement influence parameter" can be understood as the weight corresponding to the joint movement influence parameter, or as the value of the weight corresponding to the joint movement influence parameter that can be calculated.
[0082] 104: Determine the length of the filter queue based on the joint motion influence parameters and weight influence coefficients.
[0083] 106: Determine the interpolation angle based on the filter queue length. For example, calculate the interpolation angle (i.e., the joint angle) based on the joint angles in the current filter queue and the current filter queue length.
[0084] The method provided in this embodiment can utilize joint motion influence parameters and their corresponding weight influence coefficients to obtain the corresponding filter queue length and a suitable interpolation angle. In other words, in the method provided in this embodiment, the weight influence coefficient changes with the joint motion influence parameters, the filter queue length changes with both the joint motion influence parameters and the weight influence coefficients, and the interpolation angle is determined by the filter queue length. This allows the filter queue length and interpolation angle to adapt to changes in the joint motion influence parameters, effectively reducing robot vibration.
[0085] This application also provides a robot joint control method, wherein the robot's motion trajectory includes at least one sub-trajectory. This method employs... Figure 1The method of the illustrated embodiment determines the filter queue length corresponding to at least one sub-trajectory, or, if the trajectory type of the sub-trajectory belongs to the target trajectory type, the filter queue length corresponding to the sub-trajectory is determined by any one of claims 1-8.
[0086] Optionally, in one implementation of this embodiment, the robot's motion trajectory includes multiple straight sub-trajectories and / or circular sub-trajectories. In this case, the filtering queue length can be determined for each sub-trajectory using the method provided in the preceding embodiments of this application.
[0087] Optionally, in other implementations of this embodiment, the robot's motion trajectory may include a straight sub-trajectory, a circular arc sub-trajectory, and a non-straight, non-circular arc sub-trajectory. In this case, the filtering queue length can be determined only for the straight sub-trajectory and the circular arc sub-trajectory using the method provided in the preceding embodiments.
[0088] Figure 4 This is a flowchart illustrating an adaptive queue length joint acceleration filtering method according to an embodiment of this application. (Refer to...) Figure 4 The method includes the following processing steps.
[0089] 400: Conduct repeatable experiments to obtain data on end-load weight, maximum joint acceleration, and their corresponding adaptive coefficients K1 and K2.
[0090] 402: Using the load weight and maximum joint acceleration data from 400 as input to the BP neural network, and the adaptive coefficients K1 and K2 as the network output, a BP neural network model is constructed. In other embodiments, convolutional neural networks, deep learning, or other methods can also be used to construct machine learning models.
[0091] 404: Given the actual end-effector load weight and maximum joint acceleration of the robot, the values of adaptive coefficients K1 and K2 are obtained based on the BP neural network model in 402. The corresponding parameters are then substituted into the adaptive queue length calculation formula to calculate the filter queue length in the current state.
[0092] 406: The controller sequentially filters the wave queue based on the obtained interpolation points, and then uses a mean filtering algorithm to calculate the current interpolation point. In other embodiments, the calculation of joint angles is not limited to the mean filtering algorithm, but can also use median filtering, Gaussian filtering, Kalman filtering, and other algorithms.
[0093] This embodiment effectively solves the jitter phenomenon that occurs when a robot moves at full speed and load, thereby affecting the robot's motion performance and control accuracy. Furthermore, existing technologies typically require the user to set the filter queue length; if the setting is too large, it significantly reduces the robot's acceleration; if the setting is too small, it does not significantly reduce jitter. The embodiment of this application effectively solves this problem.
[0094] Figure 5 This is a flowchart illustrating a data acquisition method according to an embodiment of this application. Using this method, data can be acquired for training a prediction model. For example... Figure 5 As shown, the following processes are included.
[0095] ① Set the number of iterations n = 0;
[0096] ② Randomly assign the end-load weight G1 and the maximum acceleration of the joint movement A1;
[0097] ③ Initialize the adaptive coefficients K1 and K2 to 0;
[0098] ④ Determine the length of the filtering queue based on the following adaptive queue length calculation formula;
[0099]
[0100] Where: filter_length represents the length of the filter queue; K1: an adaptive coefficient used to describe the effect of load weight on the length of the filter queue; G1: the weight of the load applied to the end; Gmax: the maximum weight of the load applied to the end; K2: an adaptive coefficient used to describe the effect of joint acceleration on the length of the filter queue; A1: the actual acceleration of the joint during operation; Amax: the maximum acceleration given to the joint.
[0101] ⑤ Use a laser tracker to measure the accuracy of the robot's trajectory.
[0102] For example, ⑤ may include the following processing procedure.
[0103] Preparation phase: Set the robot's motion path according to actual needs, and ensure that the robot can accurately repeat the path during the measurement process;
[0104] Install a laser reflector: Install a laser reflector on the end effector of the industrial robot. This reflector is used to receive the laser beam emitted by the laser tracker and reflect it back so that the laser tracker can capture position information.
[0105] Calibration and calibration: The laser tracker is calibrated to ensure the accuracy of its measurement results; the laser tracker and the industrial robot are calibrated to establish the coordinate system transformation relationship between them.
[0106] Start measurement: Start the industrial robot and make it move along the predetermined path; the laser tracker continuously emits lasers and tracks the reflector installed on the robot's end effector, recording the position data at each time point.
[0107] Data analysis: The collected data can be processed and analyzed using specialized software to calculate the deviation between the robot's actual trajectory and the theoretical trajectory, thereby evaluating the robot's trajectory accuracy.
[0108] ⑥ If the trajectory accuracy in ⑤ meets the requirements, store the data G1, A1, K1, and K2, and then increment the iteration count; if the trajectory accuracy in ⑤ does not meet the requirements, adjust the values of K1 and K2 within the range of 0 to 1, and jump to step ④.
[0109] ⑦ Determine if the number of iterations is less than 100. If it is less than 100, proceed to step ②.
[0110] If the number of iterations exceeds 100 at this point, the entire process ends.
[0111] The prediction model is trained based on the data provided in this embodiment. For example, the end-load weight and maximum joint acceleration data are used as inputs to the network, and the adaptive coefficients K1 and K2 are used as outputs to build a BP neural network model and train it to obtain the prediction model mentioned above. Exemplarily, this network is designed with a 2-input, 2-output configuration, and the number of hidden layers is set to 2 to improve processing efficiency.
[0112] It should be noted that in other embodiments of this application, the end load weight and its maximum set value, the maximum acceleration of joint movement and its maximum set value can be used as inputs, and K1 and K2 can be used as output values to train the BP neural network.
[0113] Alternatively, the ratio of the end-load weight to its maximum set value and the ratio of the maximum joint acceleration to its maximum set value can be used as inputs, and K1 and K2 can be used as output values to train the BP neural network.
[0114] Figure 6 This is a flowchart illustrating an adaptive queue length joint acceleration filtering method according to an embodiment of this application. (Refer to...) Figure 6 The method includes the following processing steps.
[0115] First, the weight G1 of the load to be clamped by the robot end effector and the maximum weight Gmax that the robot end effector can clamp are given. For example, G1 = 100 (kg) and Gmax = 270 (kg).
[0116] Next, the robot's motion trajectory and the maximum joint acceleration Amax are set. For example, Amax = 3000 (mm / s2).
[0117] Then, the maximum joint acceleration A1 of the robot's actual motion is obtained based on look-ahead calculation. For example, A1 = 2700 (mm / s2).
[0118] Next, set the maximum length of the filter queue to filter_length_max. For example, filter_length_max = 200.
[0119] Next, a backpropagation (BP) neural network is introduced to determine the adaptive coefficients K1 and K2. K1 corresponds to the end-effector load weight, and K2 corresponds to the maximum acceleration of the joint movement. For example, K1 = 0.368 and K2 = 0.895.
[0120] Then, based on the adaptive queue length calculation formula, the filter queue length is determined. For example,
[0121]
[0122] Afterwards, the interpolation points obtained by the controller are sequentially entered into the mean filter queue, and the actual interpolation points are calculated.
[0123] Using the embodiments of this application, an adaptive K1 and K2 are obtained by utilizing a BP neural network, thereby obtaining the length of the de-jittering filter queue and the actual interpolation point.
[0124] It should be noted that K1 is used in the above formula. 2 / (1+K1 2 The weights are calculated using the method K1 / (1+K1), or in other embodiments, K1 / (1+K1) can be used. 2 This can be done in ways such as normalizing the weights and reflecting the degree of influence of different jitter parameters on jitter.
[0125] It should be noted that K1 and K2 mentioned above can both be understood as second-type coefficients used to calculate weights. In other embodiments of this application, K1 can also be... 2 / (1+K1 2 Overall and K2 2 / (1+K2 2 The overall coefficients are treated as the first type of coefficients and calculated using a neural network model. That is, the weights corresponding to the joint movement influence parameters are directly output through the neural network model.
[0126] In this embodiment, the methods for determining the filter queue length, the interpolation angle determination method, and the robot control method provided above can all be applied to the controller. Thus, by performing queue filtering on the joint angles calculated by the interpolator at the controller, instantaneous fluctuations or outliers can be filtered out, effectively smoothing the signal and reducing the impact of random noise.
[0127] This application also provides an electronic device, which includes a memory and a processor. The memory stores one or more computer instructions. The processor invokes and executes the computer instructions to implement the method embodiments mentioned above in this application.
[0128] This application also provides a robot that employs the method embodiments mentioned above or has the aforementioned electronic equipment.
[0129] By employing the relevant embodiments of this application, at least one of the following technical problems can be solved:
[0130] In related technologies, robots may experience shaking during full-speed, full-load movement, which in turn affects the robot's motion performance and control accuracy.
[0131] In related technologies, the length of the filter queue is generally set by the user. If the setting is too large, it will greatly reduce the robot's running acceleration; if the setting is too small, it will not significantly reduce jitter.
[0132] By employing the relevant embodiments of this application, at least one of the following technical effects can be achieved:
[0133] It reduces vibration during robot movement, improves control precision, reduces wear on mechanical parts, and extends robot lifespan; it adaptively sets the filter queue length, which can simultaneously take into account factors such as vibration and robot acceleration, thereby significantly reducing vibration while maximizing the overall movement speed of the robot.
[0134] In one specific application, the embodiments of this application can be applied to a six-axis industrial robot or other industrial robots. Those skilled in the art can flexibly apply the content disclosed in this application to different types of industrial robots.
[0135] The sequence numbers or order of description of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0136] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units can be a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.
[0137] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0138] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0139] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer, or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., digital versatile disc (DVD)), or a semiconductor medium (e.g., solid-state disk (SSD)). It is worth noting that the computer-readable storage medium mentioned in the embodiments of this application can be a non-volatile storage medium; in other words, it can be a non-transient storage medium.
[0140] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.), and signals involved in the embodiments of this application are all authorized by the user or fully authorized by all parties, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. For example, the scene data of the current frame in the 3D virtual scene involved in the embodiments of this application, the client's device information, and the scene interaction information are all obtained with full authorization.
[0141] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.
Claims
1. A method for determining the length of a filter queue applied to robot joint control, characterized in that, The method includes: Obtain parameters affecting joint movement, wherein the parameters affecting joint movement refer to the parameters that cause joint movement. Determine the weighted influence coefficients corresponding to the joint movement influence parameters based on the joint movement influence parameters; The length of the filter queue is determined based on the joint motion impact parameters and the weight impact coefficients.
2. The method according to claim 1, characterized in that, The parameters affecting joint abnormality include: end-load weight and maximum joint acceleration; The weighting influence coefficients include: a first weighting influence coefficient corresponding to the end load weight and a second weighting influence coefficient corresponding to the joint motion acceleration.
3. The method according to claim 1, characterized in that, The parameters affecting joint movement include: end-load weight and its maximum set value, and the maximum acceleration of joint movement and its maximum set value; The weighting influence coefficients include: a first weighting influence coefficient corresponding to the end load weight and its maximum set value, and a second weighting influence coefficient corresponding to the maximum acceleration of the joint movement and its maximum set value.
4. The method according to claim 1, characterized in that, The step of determining the weighted influence coefficient corresponding to the joint movement influence parameter based on the joint movement influence parameter includes: The weighted influence coefficient is determined based on the preset correspondence between the joint movement influence parameters and the weighted influence coefficient; or, The joint movement impact parameters are input into the prediction model to obtain the weighted impact coefficients output by the prediction model. The prediction model is trained using training data, which includes historical joint movement impact parameters and their corresponding historical weighted impact coefficients, or the training data includes the historical joint movement impact parameters, the maximum set value corresponding to the historical joint movement impact parameters, and the historical weighted impact coefficients corresponding to the historical joint movement impact parameters and the maximum set value.
5. The method according to claim 1, characterized in that, The weighting influence coefficients include: First-type coefficients used to represent the weights of the joint movement influence parameters; or, The second type of coefficient is used to calculate the weights of the joint movement influence parameters.
6. The method according to claim 5, characterized in that, The relationship between the first type of coefficients and the second type of coefficients satisfies: a = k 2 / (1+k 2 ), or, a = K / (1+K), or, a = K / (1+K) 2 ), where a represents the first type of coefficient and k represents the second type of coefficient.
7. The method according to claim 1, characterized in that, The step of determining the length of the filter queue based on the joint motion influence parameters and the weighted influence coefficients includes: Based on the joint motion impact parameters and the weight impact coefficients, the filter queue length ratio is determined; The length of the filter queue is determined based on the ratio of the filter queue length and the preset maximum filter queue length.
8. The method according to claim 7, characterized in that, The step of determining the filter queue length ratio based on the joint motion influence parameters and the weight influence coefficient includes: The filter queue length ratio is determined using the following method: P=a1·x1+a2·x2+……+an·xn; Where P represents the length ratio of the filter queue, xk represents the ratio of the kth joint motion influence parameter to its maximum set value, ak represents the weight corresponding to xk, which is determined according to the weight influence coefficient corresponding to the kth joint motion influence parameter, 1≤k≤n, and n is a positive integer.
9. The method according to claim 8, characterized in that, The parameters affecting joint abnormality include end-load weight and maximum acceleration of joint movement; P = a1·x1 + a2·x2; a1=k1 2 / (1+k1 2 ); a2=k2 2 / (1+k2 2 ); Where x1 represents the ratio of the end load weight to its maximum set value, and x2 represents the ratio of the maximum joint acceleration to its maximum set value; k1 represents the weight influence coefficient corresponding to the end load weight, and k2 represents the weight influence coefficient corresponding to the maximum acceleration of joint movement.
10. An interpolation angle processing method applied to robot joint control, characterized in that, The method includes: The length of the filter queue is determined using the method described in any one of claims 1-9; The interpolation angle is determined based on the length of the filter queue.
11. A robot joint control method, characterized in that, The robot's motion trajectory includes at least one sub-trajectory; The filter queue length corresponding to the at least one sub-trajectory is determined using the method described in any one of claims 1-9; or, If the trajectory type of the sub-trajectory belongs to the target trajectory type, the filter queue length corresponding to the sub-trajectory is determined by the method described in any one of claims 1-9.
12. An electronic device, characterized in that, The electronic device includes: Memory, used to store one or more computer instructions; A processor for invoking and executing the computer instructions to implement the method as described in any one of claims 1-11.
13. A robot, characterized in that, The robot employs the method as described in any one of claims 1-11, or has the electronic equipment as described in claim 12.