Industrial robot speed control method and system based on Bezier curve
The acceleration and deceleration control model constructed using Bézier curves solves the problems of sudden acceleration changes and vibration in the acceleration and deceleration control of industrial robots, achieving high-precision and stable speed control.
Patent Information
- Application Number
- CN202511266924.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-05
- Publication Date
- 2025-11-07
- Estimated Expiration
- 2045-09-05
AI Technical Summary
Existing industrial robot acceleration and deceleration control methods suffer from abrupt acceleration changes, shocks, and vibrations, making it difficult to meet the requirements for high precision and stability.
An acceleration/deceleration control method based on Bézier curves is adopted. A speed control model is constructed by using Bézier polynomials and Bernstein basis functions defined by preset control points to achieve a smooth transition between acceleration and deceleration stages and ensure the continuity of acceleration and jerk.
It improves the accuracy and stability of speed control for industrial robots, avoids mechanical vibration and impact, and enhances motion smoothness and positioning repeatability.
Smart Images

Figure CN120901965A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of industrial robot technology, and in particular to a method and system for industrial robot speed control based on Bézier curves. Background Technology
[0002] Currently, six-degree-of-freedom articulated industrial robots on the market mainly consist of a teach pendant, controller, AC servo driver, motor, articulated robotic arm, and reducer. Among them, the controller is the core component of the articulated industrial robot, and its main function is to control the AC servo driver and motor to work according to speed, position, and attitude commands.
[0003] To achieve high precision in workpiece machining, acceleration and deceleration control is required between motion control segments at corners to prevent impacts, loss of steps, overtravel, or oscillations during start-up, shutdown, or speed changes in industrial robots. Especially in high-speed, high-precision machining, frequent start-ups and shutdowns and short transition times mean that prioritizing the shortest possible time while neglecting dynamic acceleration and deceleration control will severely impact the robot body and actuators, affecting normal operation, potentially damaging components, and shortening equipment lifespan.
[0004] Currently, the commonly used acceleration and deceleration control methods in articulated industrial robots mainly include linear acceleration and deceleration, exponential acceleration and deceleration, and S-curve acceleration and deceleration. However, these existing technologies have the following drawbacks: When linear acceleration and deceleration are applied at the beginning and end of the acceleration and deceleration phase, there are sudden acceleration changes, which can lead to soft impacts and affect the smoothness of motion. Compared with linear acceleration and deceleration, the velocity change is smoother, but the acceleration is not smooth at the beginning and end, which may still cause impacts. Although S-curve acceleration achieves continuous acceleration change and reduces soft impacts, its acceleration is still discontinuous at some points, which may lead to system impacts and vibrations. In addition, its computational workload is huge, making it difficult to meet the requirements of real-time control. Summary of the Invention
[0005] The main objective of this application is to provide a speed control method and system for industrial robots based on Bézier curves, aiming to solve the technical problem of how to improve the accuracy and stability of speed control for industrial robots based on Bézier curves.
[0006] To achieve the above objectives, this application proposes a speed control method for industrial robots based on Bézier curves, the speed control method for industrial robots based on Bézier curves comprising: Using a preset acceleration / deceleration control model, the shape of the velocity curves during the robot's acceleration and deceleration phases is adjusted. The acceleration / deceleration control model is constructed based on Bessel polynomials defined by preset control points.
[0007] In an embodiment, before the step of adjusting the shape of the velocity curve of the acceleration phase and the deceleration phase of the robot by using the preset acceleration-deceleration control model, the method comprises: constructing the acceleration-deceleration control model by combining the Bezier polynomial defined by the preset control points and the Bernstein basis function, to obtain the preset acceleration-deceleration control model.
[0008] In an embodiment, the step of constructing the acceleration-deceleration control model by combining the Bezier polynomial defined by the preset control points and the Bernstein basis function, to obtain the preset acceleration-deceleration control model comprises: constructing a velocity curve expression based on the Bezier polynomial defined by the preset control points and the Bernstein basis function; expanding the Bernstein basis function to extract a Bezier curve coefficient in the velocity curve expression; simplifying the Bezier curve coefficient according to a preset boundary condition to obtain a simplified Bezier curve coefficient; determining a velocity curve expression based on the simplified Bezier curve coefficient; deriving the velocity curve expression to obtain acceleration and jerk, and constructing the acceleration-deceleration control model based on the acceleration and the jerk.
[0009] In an embodiment, the preset control points comprise a motion starting point, a starting point and an ending point of a constant speed phase, a motion ending point, a curve shape control point, and a slope change control point. The step of simplifying the Bezier curve coefficient according to a preset boundary condition to obtain a simplified Bezier curve coefficient comprises: setting an initial velocity and a target velocity based on the motion starting point, the starting point and the ending point of the constant speed phase, the motion ending point, the curve shape control point, and the slope change control point; simplifying the Bezier curve coefficient according to the initial velocity and the target velocity, and combining a preset boundary condition to obtain a simplified Bezier curve coefficient.
[0010] In an embodiment, in each interpolation period, the interpolation velocity of the robot at the preset interpolation time is calculated according to the current normalized time and the velocity curve expression, comprising: converting the Bezier curve coefficient in the velocity curve expression and the current normalized time from a floating-point number to a fixed-point number form; calculating the interpolation velocity of the robot at the preset interpolation time by using fixed-point operation based on the fixed-point number form of the Bezier curve coefficient and the current normalized time.
[0011] In an embodiment, after the step of deriving the velocity curve expression, obtaining acceleration and jerk, and constructing the acceleration / deceleration control model based on the acceleration and the jerk, the method further comprises: analyzing extreme values of the acceleration and extreme values of the jerk, and determining whether the extreme values of the acceleration exceed a preset maximum acceleration threshold, and whether the extreme values of the jerk exceed a preset maximum jerk threshold; if the extreme values of the acceleration exceed the preset maximum acceleration, or the extreme values of the jerk exceed the preset maximum jerk, adjusting the acceleration / deceleration time and the target velocity, and reconstructing the acceleration / deceleration control model.
[0012] In an embodiment, the step of adjusting the shape of the velocity curve in the acceleration phase and the deceleration phase using the acceleration / deceleration control model comprises: making the velocity curve in the acceleration phase and the velocity curve in the deceleration phase time-symmetric about a midpoint of the total motion time, wherein the control point sequence in the acceleration phase and the control point sequence in the deceleration phase satisfy a numerical symmetry relationship.
[0013] In addition, to achieve the above object, the present application further provides a Bezier curve-based industrial robot velocity control system, comprising: a control module configured to adjust the shape of the velocity curve in the acceleration phase and the deceleration phase of the robot using a preset acceleration / deceleration control model, wherein the acceleration / deceleration control model is constructed based on a Bezier polynomial defined by preset control points.
[0014] In addition, to achieve the above object, the present application further provides a Bezier curve-based industrial robot velocity control device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the Bezier curve-based industrial robot velocity control method as described above.
[0015] In addition, to achieve the above object, the present application further provides a storage medium, which is a computer-readable storage medium, and has a computer program stored thereon, the computer program being executable by a processor to implement the steps of the Bezier curve-based industrial robot velocity control method as described above.
[0016] In addition, to achieve the above object, the present application further provides a computer program product, which comprises a computer program, the computer program being executable by a processor to implement the steps of the Bezier curve-based industrial robot velocity control method as described above.
[0017] The application provides a method and system for controlling the speed of an industrial robot based on a Bezier curve. BRIEF DESCRIPTION OF DRAWINGS
[0018] The accompanying drawings, which are incorporated herein and form part of the specification, illustrate embodiments consistent with the present application and, together with the description, further serve to explain the principles of the application.
[0019] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the accompanying drawings required by the embodiments or prior art description will be briefly introduced as follows. Obviously, the drawings described here only illustrate some embodiments of the present application, and for those skilled in the art, other drawings can also be obtained on the basis of these drawings without creative work.
[0020] Figure 1 A flowchart of the method for controlling the speed of an industrial robot based on a Bezier curve according to Embodiment 1 of the present application is provided. Figure 2 A Bezier curve acceleration and deceleration control diagram according to Embodiment 1 of the present application is provided. Figure 3 A comparison diagram of linear and Bezier curve acceleration and deceleration control according to Embodiment 1 of the present application is provided. Figure 4 A flowchart of the method for controlling the speed of an industrial robot based on a Bezier curve according to Embodiment 2 of the present application is provided. Figure 5 A flowchart of the method for controlling the speed of an industrial robot based on a Bezier curve according to Embodiment 3 of the present application is provided. Figure 6 A module structure diagram of the system for controlling the speed of an industrial robot based on a Bezier curve according to the embodiments of the present application is provided. Figure 7 A device structure diagram of the hardware operating environment related to the method for controlling the speed of an industrial robot based on a Bezier curve according to the embodiments of the present application is provided.
[0021] The object, function characteristics and advantages of the present application will be further described with reference to the embodiments and the accompanying drawings. DETAILED DESCRIPTION
[0022] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application, and are not used to limit the present application.
[0023] For better understanding of the technical solutions of the present application, the following will be described in detail in conjunction with the drawings and specific embodiments of the specification.
[0024] The main solution of the embodiment of the present application is to use a preset acceleration and deceleration control model to adjust the speed curve shape of the acceleration and deceleration stages of the robot, wherein the acceleration and deceleration control model is constructed based on a Bezier polynomial defined by a preset control point.
[0025] In this embodiment, for the sake of description, the following describes an industrial robot speed control system based on a Bezier curve as the execution subject.
[0026] Currently, the commonly used acceleration and deceleration control methods on joint industrial robots mainly include: linear acceleration and deceleration, exponential acceleration and deceleration, and S-shaped curve acceleration and deceleration. However, these existing technologies have the following defects: When the linear acceleration and deceleration is applied to the starting point and the end point of the acceleration and deceleration stage, there is a sudden change in acceleration, resulting in a flexible impact and affecting the motion smoothness; compared with the linear type, the exponential acceleration and deceleration has a smoother speed change, but the acceleration is not smooth at the beginning and the end, which may still cause impact; although the S-shaped curve acceleration realizes continuous acceleration change and reduces flexible impact, the jerk has discontinuous conditions at some points, which may cause system impact and vibration, and the calculation amount is large, which is difficult to meet the requirements of real-time control.
[0027] The present application provides an acceleration and deceleration control method based on a Bezier curve to realize the speed control of a six-degree-of-freedom joint industrial robot. By improving the curve model and introducing an advanced control strategy, dynamic adjustment of the acceleration and deceleration process can be realized, thereby effectively improving the control accuracy and stability of the system under different loads and environmental conditions. At the same time, the smoothness of the Bezier curve makes it very suitable for the speed trajectory of a servo motor, and the speed planning method of the present application has the characteristics of fast calculation, smoothness and continuity, which can realize stable acceleration and deceleration and avoid vibration and excessive impact caused by speed change.
[0028] It should be noted that the execution subject of the present embodiment can be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device capable of realizing the above functions. The following will take a personal computer as an example to describe the present embodiment and each of the following embodiments.
[0029] Based on this, the embodiment of the present application provides an industrial robot speed control method based on a Bezier curve, which is described in detail with reference to Figure 1 , Figure 1 The flowchart of the first embodiment of the industrial robot speed control method based on the Bezier curve of the present application is shown.
[0030] The industrial robot speed control method based on the Bezier curve in the embodiment comprises steps S10-S20. In step S10, a preset acceleration and deceleration control model is used to adjust the shape of the speed curve in the acceleration and deceleration stages of the robot, wherein the acceleration and deceleration control model is constructed based on a Bezier polynomial defined by preset control points.
[0031] In the embodiment, in order to achieve high smoothness and high-precision trajectory tracking of the robot motion process, the acceleration and deceleration control model is used to dynamically adjust the shape of the speed curve in the acceleration and deceleration stages.
[0032] The acceleration and deceleration control model is constructed based on a Bezier polynomial defined by preset control points. Through the model, the transition characteristics of the speed curve in the start and stop stages can be flexibly adjusted and controlled, the continuity of acceleration and jerk is ensured, mechanical vibration, impact and overshoot phenomena are effectively inhibited, and motion smoothness and positioning repeatability are improved.
[0033] Specifically, before step S10, step S01 is further included. In step S01, the acceleration and deceleration control model is constructed by combining the Bezier polynomial defined by the preset control points and the Bernstein basis function, and a preset acceleration and deceleration control model is obtained.
[0034] It should be noted that the Bezier polynomial is a parameterized curve expression form based on control points, which is widely used in computer graphics and motion trajectory planning.
[0035] The Bernstein basis function is a set of polynomial functions defined on the unit interval [0, 1] and is a core mathematical tool for constructing Bezier curves.
[0036] In the embodiment, in order to ensure the continuous change of speed, acceleration and jerk, a quintic Bezier polynomial is used as the acceleration and deceleration control model for the speed curve. The Bezier polynomial defines the shape of the curve by 6 control points. The 6 control points are arranged in a symmetrical manner, including the starting point of the motion, the starting point and the ending point of the uniform speed stage, the ending point of the motion, the curve shape control point for defining the shape of the curve, and the slope change control point for defining the slope change of the curve.
[0037] Step S01 comprises steps S011-S015: In step S011, an initial speed curve expression is constructed by using a preset Bezier polynomial and Bernstein basis function. It should be noted that the Bernstein basis function is a set of polynomial functions defined on the unit interval [0, 1], which is the core mathematical tool for constructing Bezier curves.
[0038] In the embodiment, the construction of the speed curve expression is based on a mathematical model constructed by a quintic Bezier polynomial. The model generates a continuous and smooth speed change curve through a linear combination of a set of preset control points and Bernstein basis functions, thereby realizing precise control of the robot acceleration and deceleration process.
[0039] Specifically, the constructed initial speed curve expression is as follows:
[0040] In the formula, denotes the speed value at the normalized time t, which is the output of the entire acceleration and deceleration control model; t is the normalized time, taking values in [0, 1]; ~ denotes the preset control point; ~ denotes the Bernstein basis function.
[0041] The expansion formula of the Bernstein basis function is as follows: ; ; ; + ; ; ; In the formula, t denotes the normalized time.
[0042] This step constructs a speed curve expression with high continuity and adjustability by introducing a quintic Bezier polynomial and a Bernstein basis function, combined with preset control points, providing a mathematical basis and implementation path for subsequent interpolation calculation, acceleration and deceleration control model establishment and dynamics optimization.
[0043] Step S012, expanding the Bernstein basis function and extracting the Bezier curve coefficients in the initial speed curve expression; It should be noted that the Bezier curve coefficients here do not refer to the control points in the original form of the Bezier curve, but refer to the combination coefficients of each power after the speed curve expression is converted from the Bernstein basis form to the standard polynomial form.
[0044] In the embodiment, in order to facilitate efficient calculation of the interpolation speed in the system, the initial speed curve expression based on Bernstein basis functions is converted into a standard quintic polynomial form. Specifically, the expansion of each Bernstein basis function is substituted into the initial speed expression, and by combining like terms, the initial speed expression is rewritten into the following standard polynomial form:
[0045] where the coefficients A, B, C, D, E, and F are linear combinations of the preset control points ~ The specific expressions are as follows: ; ; ; ; ; ; In summary, by extracting the Bezier curve coefficients, the complex parametric speed model is converted into a standard polynomial form that can be efficiently calculated. Without sacrificing the continuity of jerk, the real-time performance of subsequent interpolation calculation is significantly improved, and the computational burden of the controller is reduced.
[0046] Step S013: Simplifying the Bezier curve coefficients according to the preset boundary conditions to obtain simplified Bezier curve coefficients; In the embodiment, to ensure smooth start and stop of the robot during acceleration and deceleration, and to avoid mechanical impact and vibration, the acceleration and jerk must be continuous and zero at the start and end of the motion. Therefore, the following boundary conditions are set in the embodiment: At the start of the acceleration or deceleration phase, the initial acceleration and initial jerk are both zero. At the end of the acceleration or deceleration phase, the target acceleration and target jerk are also zero.
[0047] Based on the mathematical properties of the quintic Bezier curve, the above dynamic continuity requirements can be achieved by reasonably setting the control points. Specifically, let denote the initial speed value. denote the target speed value.
[0048] Substituting the control point configuration into the Bezier curve coefficient expression extracted in step S012 and performing algebraic simplification, the simplified Bezier curve coefficients are as follows: ; ; ; D=0; E=0; F= ; By the above steps, the calculation complexity of Bezier curve coefficients is significantly reduced, the number of control parameters is reduced, and the model construction efficiency and interpolation real-time performance are improved under the premise of ensuring continuous acceleration and jerk throughout the process.
[0049] Step S014, determining a final speed curve expression based on the simplified Bezier curve coefficients; In this embodiment, after the Bernstein basis function is expanded and the Bezier curve coefficients are extracted in step S012, and the coefficients are simplified according to the preset boundary conditions (such as initial / terminal acceleration and jerk being zero) in step S013, a set of simplified polynomial coefficients A, B, C, D, E, F is obtained.
[0050] Based on the set of simplified Bezier curve coefficients, this step constructs a final speed curve expression directly executed in an actual control system, which is used for subsequent interpolation calculation and speed command output.
[0051] Specifically, the final speed curve expression is: (0<= t<= 1) Wherein, V(t) represents the instantaneous speed value at the normalized time t; t is the normalized time; A, B, C are the coefficients of quintic, quartic, and cubic terms, respectively; F= is a constant term, and the initial speed of the acceleration / deceleration segment.
[0052] In addition, in an actual motion control system, the time interval of the interpolation period may not be completely consistent due to coefficient scheduling, external interruption, or dynamic speed regulation requirements, resulting in that the normalized time cannot be fixed step increment, that is, "non-uniform step calculation" is adopted. For example, in a high dynamic response scenario, the system may shorten the interpolation period to improve control accuracy; or automatically adjust according to the path curvature to realize adaptive interpolation.
[0053] Since the change of t does not have equidistance and periodicity, the interpolation result cannot be obtained by pre-producing a speed table or looking up a table. Therefore, the current normalized time must be obtained in each interpolation period, and the current normalized time is substituted into the above final speed curve expression to calculate The speed instruction of the current period is obtained and output to the servo driver for execution. This mechanism ensures the accuracy and real-time performance of the speed calculation at any t value, especially suitable for precise control occasions with high requirements for motion smoothness.
[0054] Through the above steps, the initial speed expression in the theoretical modeling stage is converted into an executable final speed curve expression suitable for the actual control system. This expression not only simplifies the structure and improves the calculation efficiency, but also supports point-by-point solving under non-uniform time steps, taking into account motion smoothness, control real-time performance, and engineering practicality. It is a key technical link to achieve high-performance robot acceleration and deceleration control.
[0055] In step S015, the final speed curve expression is differentiated to obtain acceleration and jerk, and the acceleration and jerk are used to build the acceleration and deceleration control model.
[0056] In this embodiment, to achieve fine dynamics control of the robot motion process, it is necessary to ensure that the speed is continuous during acceleration and deceleration, and the acceleration and jerk are also continuous, to suppress mechanical impact, vibration and noise, and improve motion smoothness and positioning accuracy.
[0057] To this end, the final speed curve expression determined in step S14 is mathematically differentiated to obtain the analytical expressions of acceleration and jerk in turn, and a complete acceleration and deceleration control model is built based on this.
[0058] First, the first-order derivative of the final speed curve expression with respect to the normalized time is taken to obtain the acceleration function. The acceleration function reflects the rate of change of speed with respect to time, and its value is determined by the target speed value, the initial speed value, and the normalized time. After further arrangement, it can be obtained that the acceleration is zero at the start and end times, satisfying the smooth start and stop requirement of zero start and end acceleration; and the acceleration curve is "bell-shaped" and changes smoothly without sudden changes.
[0059] Next, the acceleration function is differentiated again to obtain the jerk function. The jerk function describes the rate of change of acceleration with respect to time, and is also determined by the target speed value, the initial speed value, and the normalized time. Through analysis, it can be known that at a certain time point, the jerk is zero, realizing the continuity of the jerk; at other time points, the jerk changes continuously without jumps or infinite phenomena.
[0060] Based on the above analysis of velocity, acceleration, and jerk, a complete acceleration / deceleration control model is constructed. This model supports the synchronous calculation of acceleration and jerk in each interpolation cycle to determine whether they exceed the physical limitations of the servo system or mechanical structure. If acceleration or jerk exceeds the limit, a corresponding processing strategy is triggered. Simultaneously, based on the vibration conditions during actual operation, the initial velocity value, target velocity value, or control point distribution are adjusted in reverse to optimize the curve shape. Furthermore, acceleration and jerk are used as feedforward terms input to the servo controller to improve trajectory tracking accuracy.
[0061] Through the above steps, the derivative of the final velocity curve expression is obtained, and the explicit analytical expressions of acceleration and jerk are obtained. Based on this, an acceleration and deceleration control model containing three accelerations of velocity, acceleration, and jerk is constructed to ensure high smoothness during the motion process.
[0062] After constructing the acceleration and deceleration control model, the control points are further set reasonably using the model to control the shape of the speed curves during the acceleration and deceleration phases of the robot. This ensures consistent start-stop characteristics of the industrial robot, improves trajectory repeatability and system stability, and facilitates unified management and tuning of control parameters.
[0063] Step S10 may include step S11: Step S11: Make the velocity curves of the acceleration phase and the deceleration phase time-symmetric about the midpoint of the total motion time, wherein the control point sequence of the acceleration phase and the control point sequence of the deceleration phase satisfy a numerical symmetry relationship.
[0064] Specifically, let the total time of the entire motion process be... The midpoint time is = / 2. By configuring the control points for the acceleration and deceleration phases, the following can be achieved: Acceleration phase (from t=0 to t= velocity curve ; Deceleration phase (from t= to t= velocity curve ; It satisfies the following time symmetry relationship:
[0065] In the formula, t represents the total time of the entire motion process; t represents the current normalized time. The speed during the deceleration phase; The speed of the acceleration phase; Indicates the start time of the deceleration phase; denotes the end time point of the acceleration section.
[0066] To achieve the symmetry, the control point sequence of the acceleration section and the deceleration section should satisfy the numerical symmetry relation. Taking a quintic Bezier curve as an example: Suppose the control points of the acceleration section are:
[0067] The denotes the start point of the acceleration section; the denotes the end point of the acceleration section; and the intermediate control points are used to adjust the speed change characteristics, such as curvature and slope, in the acceleration process.
[0068] The control points of the deceleration section should be set as:
[0069]
[0070] The denotes the start point of the deceleration section, corresponding to the end point of the acceleration section ; the denotes the end point of the deceleration section, corresponding to the start point of the acceleration section . , , , are intermediate control points.
[0071] That is:
[0072] Under this configuration, if the acceleration section smoothly rises from the initial speed to the target speed , the deceleration section will smoothly descend in a mirror way from to the termination speed , thereby ensuring the symmetry of the acceleration curve, the symmetry of the jerk curve, and the balanced energy consumption and mechanical stress distribution.
[0073] Please refer to Figure 2 , Figure 2 for a quintic Bezier curve acceleration and deceleration control diagram. As can be seen from Figure 2 , the symmetry in time of the acceleration section and the deceleration section, as well as the continuity and consistency of the derivative curves of each order, verify the effectiveness of step S11.
[0074] Please refer to Figure 3 , Figure 3The schematic diagram of linear and quintic Bezier curve acceleration and deceleration control is compared. Compared with the traditional linear acceleration and deceleration method, the quintic Bezier curve acceleration and deceleration method proposed in the embodiment makes the position curve smooth transition, without obvious inflection point, and the overall presents "S" shape distribution, which ensures the continuity and stability of the motion process; the quintic polynomial interpolation is adopted to form "bell-shaped" distribution, the maximum speed appears near the midpoint of the total time, and the speed at both ends asymptotically approaches zero, avoiding the speed jump; at the same time, the acceleration curve presents "double peak" distribution, the peak value appears at the turning point of acceleration and deceleration, and the acceleration in the middle section is close to constant, avoiding the impact caused by sudden change; in addition, although the jerk curve has a large change at the beginning of the acceleration and deceleration segment and the acceleration, the overall keeps continuous without jump phenomenon, which meets the smoothness requirement of dynamics.
[0075] In summary, by using the constructed acceleration and deceleration control model, the shape of the acceleration and deceleration segment velocity curve is actively adjusted. In particular, in the embodiment using time-symmetric design, the dynamic consistency of the start-stop process is ensured by symmetrically configuring the numerical value of the control point, which significantly improves the stability, repeatability and control accuracy of the robot motion.
[0076] By the above-mentioned embodiment method, the shape of the velocity curve of the acceleration and deceleration stages of the robot is adjusted by using a preset acceleration and deceleration control model, wherein the acceleration and deceleration control model is constructed based on a Bezier polynomial defined by a preset control point. The scheme constructs an acceleration and deceleration control model based on a Bezier polynomial, which realizes dynamic adjustment of the acceleration and deceleration process, thereby effectively improving the control accuracy and stability of the system under different loads and environmental conditions.
[0077] Based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar contents as the above-mentioned embodiment one can refer to the above introduction, and the following will not be repeated. On this basis, please refer to Figure 4 , after step S014, the industrial robot velocity control method based on the Bezier curve further includes step A1: Step A1, in each interpolation period, the interpolation speed of the robot at the preset interpolation time is calculated according to the current normalized time and the final velocity curve expression.
[0078] Since the time cost of traditional floating-point arithmetic operation is too high, the present embodiment proposes a method of converting mathematical operation into fixed-point value to realize real-time calculation, thereby reducing the operation cost.
[0079] In a feasible embodiment, step A1 includes steps A11-A12: A11, the Bezier curve coefficients in the velocity curve expression and the current normalized time are converted from floating-point numbers to fixed-point numbers; In actual embedded control systems, although the floating-point arithmetic operation (such as single-precision float) has high precision, its calculation overhead is large and the execution period is long, which is difficult to meet the real-time requirements in the high-speed interpolation scenario. For example, in the application where the driving pulse frequency needs to reach 250000 steps per second (i.e., 250 kHz interpolation frequency), if the floating-point operation is used, the CPU load will be significantly increased, and even the interpolation delay or step loss will be caused.
[0080] Therefore, in the embodiment, each coefficient in the final speed curve expression originally represented in the floating-point form and the normalized time parameter are uniformly converted into fixed-point numbers to realize efficient and low-delay integer operation.
[0081] Specifically, the Qm.n format is used for fixed-point number coding, where m represents the integer bit number and n represents the decimal bit number.
[0082] Then, according to the system maximum interpolation frequency and the speed dynamic range, and in combination with the mathematical expression of the Bezier coefficient, each parameter is quantitatively designed as follows: t: unsigned Q0.32 fixed-point number (0 ≤ t<1) | range 0 to 0xFFFFFFFF (unsigned); A: signed Q24.7 fixed-point number | range = ±250000*6*128 = ±192000000 = 0x0B71B000 | 28 data bits + sign bit; B: signed Q24.7 fixed-point number | range = ±250000*15*128 = ±480000000 = 0x1C9C3800 | 29 data bits + sign bit; C: signed Q24.7 fixed-point number | range = ±250000*10*128 = ±320000000 = 0x1312D000 | 29 data bits + sign bit; F: signed Q24.7 fixed-point number | range = ±250000*128 = ±32000000 = 0x01E84800 | 25 data bits + sign bit.
[0083] In addition, in order to avoid overflow during operation and reserve enough guard bits, the system additionally reserves 2 bits for intermediate calculation expansion to ensure the stability of fixed-point operation.
[0084] Further, the embodiment does not separately process and store the sign bit of each coefficient, but stores the absolute value thereof and marks the sign of the A coefficient, thereby saving the storage space of the sign bit. According to the rule, the sign always satisfies: sign(A) = - sign(B) = sign(C). Therefore, the final value range of the coefficient is: t: unsigned number (0 ≤ t<1) | Range 0 to 0xFFFFFF (unsigned) A: signed fixed-point number Q24 format, Range = 250000* 6 = 1500000 = 0x16E360 | 21 bits; B: signed fixed-point number Q24 format, Range = 250000* 15 = 3750000 = 0x393870 | 22 bits; C: signed fixed-point number Q24 format, Range = 250000* 10 = 2500000 = 0x1312D0 | 21 bits; F: signed fixed-point number Q24 format, Range = 250000 = 250000 = 0x0ED090 | 20 bits; For each curve, the Bezier curve coefficients are calculated by the following function: void calcBezierCurveCoeffs(int32_t v0, int32_t v1, uint32_t av) { if (v1<v0) { A_negative = true; bezier_A = 6 * (v0 - v1); bezier_B = 15 * (v0 - v1); bezier_C = 10 * (v0 - v1); } else { A_negative = false; bezier_A = 6 * (v1 - v0); bezier_B = 15 * (v1 - v0); bezier_C = 10 * (v1 - v0); } bezier_F = v0; } In summary, step S141 lays the foundation for subsequent high-speed interpolation calculation by converting floating-point parameters into high-precision, low-overhead fixed-point number form.
[0085] Step A12, based on the Bezier curve coefficients in fixed-point number form and the current normalized time, the interpolation speed of the robot at the preset interpolation time is calculated using fixed-point operations.
[0086] After the fixed-point conversion of the coefficients and the time variable is completed, the instantaneous speed value in the current interpolation period is calculated by using fixed-point arithmetic operations (such as shifting, multiplication and addition, truncation, etc.) , and is implemented by the following function: int32_t evalBezierCurveVelocity(int32_t currDist) { uint32_t t = bezier_AV * currDist; ……… int64_t Vc = (int64_t) bezier_F<<31; ……… return (int32_t) Vc; } The function is called once in each interpolation period, and the output is the interpolation speed instruction of the robot at that time, which is sent to the servo driver or the position planning module for execution.
[0087] Through the above embodiment method, the key bridge from the theoretical model to the engineering implementation is jointly constituted. By converting the Bezier curve coefficients and the normalized time into fixed-point numbers, and performing efficient fixed-point operations based thereon, the application significantly reduces the computational complexity without sacrificing motion smoothness, and realizes real-time and high-precision speed interpolation on a resource-constrained embedded platform.
[0088] Based on the first embodiment of the application, in the third embodiment of the application, the same or similar contents as the above embodiment one can be referred to the above introduction, and will not be repeated hereinafter. On this basis, please refer to Figure 5 , after step S015, the industrial robot speed control method based on the Bezier curve further includes steps B1-B2: Step B1, analyzing the extreme value of the acceleration and the extreme value of the jerk, and judging whether the extreme value of the acceleration exceeds the preset maximum acceleration threshold and whether the extreme value of the jerk exceeds the preset maximum jerk threshold; Step B2, if the extreme value of the acceleration exceeds the preset maximum acceleration or the extreme value of the jerk exceeds the preset maximum jerk, the acceleration / deceleration time and the target speed are adjusted, and the acceleration / deceleration control model is reconstructed.
[0089] In this embodiment, considering the power performance constraint of the industrial robot, the acceleration and the jerk cannot exceed the maximum values , The derivative of the velocity curve expression is obtained to get the functions of acceleration and jerk with respect to time, and then the maximum values of acceleration and jerk in the segment can be obtained:
[0090] In the formula, t d , V d is the controller interpolation time and the target speed; is the maximum value of acceleration; is the maximum value of jerk.
[0091] When the acceleration or jerk is detected to be out of limit, it indicates that the currently set motion parameters (such as the target speed and the total interpolation time) exceed the dynamic performance boundary of the robot body, and direct execution will cause equipment damage, inaccurate positioning or alarm shutdown. Therefore, the embodiment adjusts the time and target speed of the acceleration / deceleration stage. For example, the speed change rate is reduced, thereby reducing the acceleration and jerk, and the time of the acceleration / deceleration stage is prolonged; the speed difference (V ) is reduced, the amplitude of the Bezier curve coefficient is directly reduced, thereby suppressing the high-order dynamic component, and the target speed is reduced. Subsequently, steps S11-S14 are re-executed according to the adjusted motion parameters to reconstruct the acceleration / deceleration control model.
[0092] In addition, it is also necessary to check whether the components of the feed speed in the speed constraint segment on each joint axis exceed the maximum speed limit of each axis (such as mapping through the Jacobian matrix) to prevent local axis overload.
[0093] Only when all constraints (speed, acceleration and jerk) are met, the motion instruction is allowed to be executed; otherwise, the parameter adjustment mechanism is triggered until the model is feasible.
[0094] Through the above embodiment method, the extreme values of acceleration and jerk are analyzed and compared with the preset threshold to identify potential risks in time; once the limit is exceeded, the time and target speed of the acceleration / deceleration stage are adjusted to reconstruct the acceleration / deceleration model, so as to ensure that the motion instruction is always within the dynamic capability range of the robot. This mechanism significantly improves the safety, stability and adaptability of the control system, and is a key link to realize high-reliability industrial robot motion planning.
[0095] It should be noted that the above examples are only used for understanding the present application and do not constitute a limitation on the industrial robot speed control method based on the Bezier curve of the present application. More forms of simple transformation based on this technical concept are within the protection scope of the present application.
[0096] The present application also provides an industrial robot speed control system based on the Bezier curve, please refer to Figure 6 The industrial robot speed control system based on the Bezier curve comprises: The control module 10 is configured to adjust the speed curve shape of the acceleration phase and the deceleration phase of the robot by using a preset acceleration-deceleration control model, wherein the acceleration-deceleration control model is constructed based on a Bezier polynomial defined by preset control points.
[0097] The industrial robot speed control system based on the Bezier curve provided in the present application adopts the industrial robot speed control method based on the Bezier curve in the above embodiment, and can solve the technical problem of how to improve the precision and stability of the industrial robot speed control based on the Bezier curve. Compared with the prior art, the industrial robot speed control system based on the Bezier curve provided in the present application has the same beneficial effects as the industrial robot speed control method based on the Bezier curve provided in the above embodiment, and other technical features of the industrial robot speed control system based on the Bezier curve are the same as the features disclosed in the above embodiment method, which will not be repeated here.
[0098] The present application provides an industrial robot speed control device based on a Bezier curve, which comprises at least one processor and a memory in communication connection with the at least one processor, wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the industrial robot speed control method based on the Bezier curve in the above embodiment one.
[0099] Reference will now be made to the drawings, in which Figure 7 which shows a structural schematic diagram of the industrial robot speed control device based on the Bezier curve suitable for implementing the embodiments of the present application. The industrial robot speed control device based on the Bezier curve in the embodiments of the present application can include but is not limited to mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs (Personal Digital Assistant), PADs (Portable Application Description), PMPs (Portable Media Player), vehicle terminals (such as vehicle navigation terminals), and the like, and fixed terminals such as digital TVs, desktop computers, and the like. Figure 7 The industrial robot speed control device based on the Bezier curve shown is only an example, and should not bring any limitation to the functions and use range of the embodiments of the present application.
[0100] As Figure 7As shown, the Bezier curve-based industrial robot velocity control device can include a processing device 1001 (e.g., a central processing unit, a graphics processing unit, etc.) that can perform various appropriate actions and processes according to programs stored in a read-only memory 1002 or loaded from a storage device 1003 into a random access memory 1004. Various programs and data required for the operation of the Bezier curve-based industrial robot velocity control device are also stored in the random access memory 1004. The processing device 1001, the read-only memory 1002, and the random access memory 1004 are connected to each other by a bus 1005. An input / output interface 1006 is also connected to the bus. Generally, the following systems can be connected to the input / output interface 1006: input devices 1007 including, for example, a touch screen, a touch pad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; the storage device 1003 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. The communication device 1009 can allow the Bezier curve-based industrial robot velocity control device to communicate wirelessly or by wire with other devices to exchange data. Although the Bezier curve-based industrial robot velocity control device with various systems is shown in the figure, it should be understood that all the shown systems are not required to be implemented or possessed. More or fewer systems can be alternatively implemented or possessed.
[0101] In particular, according to embodiments of the present disclosure, the processes described above with reference to the flowcharts can be implemented as a computer software program. For example, embodiments of the present disclosure include a computer program product comprising a computer program carried on a computer readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network by a communication device, or installed from the storage device 1003, or installed from the read-only memory 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the methods of the embodiments of the present disclosure are performed.
[0102] The industrial robot speed control device based on the Bezier curve provided in the application adopts the industrial robot speed control method based on the Bezier curve in the above embodiment, and can solve the technical problem of how to improve the accuracy and stability of the industrial robot speed control based on the Bezier curve. Compared with the prior art, the industrial robot speed control device based on the Bezier curve provided in the application has the same beneficial effects as the industrial robot speed control method based on the Bezier curve provided in the above embodiment, and other technical features in the industrial robot speed control device based on the Bezier curve are the same as the features disclosed in the above embodiment method, and will not be repeated here.
[0103] It should be understood that parts of the present application can be realized by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.
[0104] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto, and any person skilled in the art can easily think of changes or replacements within the technical scope disclosed in the present application, which should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.
[0105] The present application provides a computer readable storage medium having computer readable program instructions (i.e. computer programs) stored thereon, the computer readable program instructions being used to execute the industrial robot speed control method based on the Bezier curve in the above embodiment.
[0106] The computer readable storage medium provided in the present application may, for example, be a U disk, but is not limited to an electric, magnetic, optical, electromagnetic, infrared, or semiconductor system or device, or any combination thereof. More specific examples of the computer readable storage medium can include, but are not limited to, an electric connection with one or more conductive wires, 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 thereof. In the present embodiment, the computer readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system or device. The program code contained on the computer readable storage medium can be transmitted by any suitable medium, including but not limited to an electric wire, an optical cable, an RF (Radio Frequency), and the like, or any suitable combination thereof.
[0107] The above computer readable storage medium can be contained in the industrial robot speed control device based on the Bezier curve, or can exist independently without being assembled into the industrial robot speed control device based on the Bezier curve.
[0108] The above computer readable storage medium carries one or more programs, which, when executed by the industrial robot speed control device based on the Bezier curve, cause the industrial robot speed control device based on the Bezier curve to: adjust the speed curve shape of the acceleration phase and the deceleration phase of the robot by using a preset acceleration and deceleration control model, wherein the acceleration and deceleration control model is constructed based on a Bezier polynomial defined by a preset control point.
[0109] Computer program code for carrying out operations of the present application can be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code can execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer (for example, through the Internet using an Internet Service Provider).
[0110] The flow diagrams and the block diagrams in the drawings are illustrations of architectures, functionalities, and operations of possible implementations of systems, methods, and computer program products according to various embodiments of the present application. In this regard, each block in the flow diagrams or block diagrams can represent a module, a segment, or a portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that in some alternative implementations, the functions noted in the blocks can occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently or the blocks may
[0111] The modules involved in the embodiments of the present application can be implemented in the form of software or in the form of hardware. In some cases, the name of the module does not constitute a limitation on the module itself.
[0112] The readable storage medium provided by the present application is a computer readable storage medium, which stores computer readable program instructions (i.e. computer programs) for executing the above-mentioned industrial robot speed control method based on the Bezier curve, and can solve the technical problem of how to improve the accuracy and stability of the industrial robot speed control based on the Bezier curve. Compared with the prior art, the computer readable storage medium provided by the present application has the same beneficial effects as the above-mentioned industrial robot speed control method based on the Bezier curve provided by the embodiments, and will not be described here.
[0113] The application also provides a computer program product comprising a computer program which, when executed by a processor, implements the steps of the method for controlling the speed of an industrial robot based on a Bezier curve as described above.
[0114] The computer program product provided by the application can solve the technical problem of how to improve the accuracy and stability of the speed control of an industrial robot based on a Bezier curve. Compared with the prior art, the beneficial effects of the computer program product provided by the application are the same as those of the method for controlling the speed of an industrial robot based on a Bezier curve provided by the above-mentioned embodiments, and will not be repeated here.
[0115] The above only describes some embodiments of the application, and does not limit the patent scope of the application. Any equivalent structural transformation made by using the content of the specification and drawings, or direct / indirect application in other related technical fields, is included in the patent protection scope of the application.
Claims
1. A method for velocity control of an industrial robot based on a Bezier curve, characterized by, The method comprises the following steps: The preset acceleration and deceleration control model is used to adjust the speed curve shape of the acceleration and deceleration stages of the robot, wherein the acceleration and deceleration control model is constructed based on a Bezier polynomial defined by preset control points.
2. The Bezier curve-based industrial robot velocity control method according to claim 1, characterized in that, Before the step of adjusting the speed curve shape of the acceleration and deceleration stages of the robot by using the preset acceleration and deceleration control model, the method comprises the following steps: The acceleration and deceleration control model is constructed by combining the Bezier polynomial defined by the preset control points and the Bernstein basis function, to obtain the preset acceleration and deceleration control model.
3. The Bezier curve-based industrial robot velocity control method according to claim 2, characterized in that, The step of constructing the acceleration and deceleration control model by combining the Bezier polynomial defined by the preset control points and the Bernstein basis function to obtain the preset acceleration and deceleration control model comprises the following steps: Based on the Bezier polynomial defined by the preset control points and the Bernstein basis function, an initial speed curve expression is constructed; The Bernstein basis function is expanded to extract the Bezier curve coefficients in the initial speed curve expression; The Bezier curve coefficients are simplified according to preset boundary conditions to obtain simplified Bezier curve coefficients; Based on the simplified Bezier curve coefficients, a final speed curve expression is determined; The final speed curve expression is differentiated to obtain acceleration and jerk, and the acceleration and jerk are used to construct the acceleration and deceleration control model.
4. The Bezier curve-based industrial robot velocity control method according to claim 3, characterized in that, The preset control points include a motion starting point, starting and ending points of a constant speed stage, a motion ending point, a curve shape control point, and a slope change control point. The step of simplifying the Bezier curve coefficients according to preset boundary conditions to obtain simplified Bezier polynomial coefficients comprises the following steps: Based on the motion starting point, the starting and ending points of the constant speed stage, the motion ending point, the curve shape control point, and the slope change control point, an initial speed and a target speed are set; The Bezier curve coefficients are simplified according to the initial speed and the target speed and in combination with preset boundary conditions to obtain simplified Bezier curve coefficients.
5. The Bezier curve-based industrial robot velocity control method according to claim 3, characterized in that, After the step of determining the final speed curve expression based on the simplified Bezier curve coefficients, the method further comprises the following steps: In each interpolation period, the interpolation speed of the robot at the preset interpolation time is calculated according to the current normalized time and the final speed curve expression, comprising the following steps: The Bezier curve coefficients in the speed curve expression and the current normalized time are converted from floating-point numbers to fixed-point numbers; Based on the fixed-point number form of the Bezier curve coefficients and the current normalized time, the interpolation speed of the robot at the preset interpolation time is calculated by using fixed-point operation.
6. The Bezier curve-based industrial robot velocity control method according to any one of claims 3 to 5, characterized in that, After the step of differentiating the speed curve expression to obtain acceleration and jerk, and constructing the acceleration and deceleration control model based on the acceleration and the jerk, the method further comprises the following steps: The extreme values of the acceleration and the extreme values of the jerk are analyzed, and it is determined whether the extreme value of the acceleration exceeds a preset maximum acceleration threshold value and whether the extreme value of the jerk exceeds a preset maximum jerk threshold value; If the extreme value of the acceleration exceeds a preset maximum acceleration, or the extreme value of the jerk exceeds a preset maximum jerk, the acceleration / deceleration time and the target speed are adjusted, and the acceleration / deceleration control model is reconstructed.
7. The Bezier curve-based industrial robot velocity control method according to claim 1, characterized in that, The step of adjusting the shape of the speed curve of the acceleration phase and the deceleration phase of the robot by using the preset acceleration / deceleration control model comprises: The speed curve of the acceleration phase is time-symmetric with the speed curve of the deceleration phase about the midpoint of the total motion time, and the control point sequence of the acceleration phase and the control point sequence of the deceleration phase satisfy a numerical symmetry relationship.
8. A Bezier curve based speed control system for an industrial robot, characterized by The industrial robot speed control system based on the Bezier curve comprises: A control module is configured to adjust the shape of the speed curve of the acceleration phase and the deceleration phase of the robot by using a preset acceleration / deceleration control model, wherein the acceleration / deceleration control model is constructed based on a Bezier polynomial defined by preset control points.
9. A Bezier curve-based industrial robot velocity control device, characterized by, The device comprises a memory, a processor, and a computer program stored on the memory and executable on the processor, and the computer program is configured to implement the steps of the industrial robot speed control method based on the Bezier curve as claimed in any one of claims 1 to 7.
10. A storage medium, characterized by The storage medium is a computer readable storage medium, and the storage medium stores a computer program, and the computer program is executed by a processor to implement the steps of the industrial robot speed control method based on the Bezier curve as claimed in any one of claims 1 to 7.
Citation Information
Patent Citations
Robot space trajectory transition method
CN109623820A
Method for quickly planning six-order S-shaped motion curve
CN111596543A
Industrial robot mechanical arm control precision coordination optimization method and device
CN119188763A
Acceleration control method and device in parking stage, storage medium and electronic equipment
CN119239622A
G3 continuous and stable-motion robot path fairing method
CN119458350A