Path tracking method, mobile robot, and computer readable storage medium

By calculating the control polynomial parameters offline and fitting the target control deviation in real time, the problem of high computational cost in mobile robot path tracking is solved, achieving higher path tracking accuracy and reliability, and making it suitable for complex environments.

CN122431330APending Publication Date: 2026-07-21GUANGZHOU SHIYUAN ELECTRONICS CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
GUANGZHOU SHIYUAN ELECTRONICS CO LTD
Filing Date
2025-01-21
Publication Date
2026-07-21

Smart Images

  • Figure CN122431330A_ABST
    Figure CN122431330A_ABST
Patent Text Reader

Abstract

The application discloses a path tracking method, a mobile robot and a computer readable storage medium. The method comprises the following steps: obtaining a target position and a target angle of the mobile robot, performing smoothing processing on a given path to obtain a smoothed path, determining a look-ahead point associated with the target position on the smoothed path, determining a target control deviation based on a look-ahead position of the look-ahead point, the target position and the target angle, obtaining control polynomial parameters, the control polynomial parameters being obtained by the mobile robot in an offline state, performing deviation fitting processing on the target control deviation by using the control polynomial parameters to obtain device control information, and controlling the mobile robot based on the device control information. According to the embodiment, the control polynomial parameters obtained in the offline state are used to perform the deviation fitting processing on the target control deviation in real time, so that the real-time performance can be improved by reducing the calculation load and reducing the need for occupying more computing power to perform various complex parameter adjustment operations in the real-time state.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of mobile robot technology, and in particular to a path tracking method, a mobile robot, and a computer-readable storage medium. Background Technology

[0002] With the development of mobile robot navigation technology, some business scenarios require mobile robots to walk along a given path in order to complete related tasks. In order to prevent mobile robots from deviating from the given path, the relevant technologies need to process large parameters to control the mobile robot to walk on the given path. The above processing is relatively complex, requires a lot of computing power and time, and can easily reduce the real-time response capability of the mobile robot, resulting in a low accuracy of the mobile robot tracking the given path. Summary of the Invention

[0003] One objective of this application is to provide a path tracking method, a mobile robot, and a computer-readable storage medium to solve the technical problem that related technologies require a large amount of computing power to track paths.

[0004] In a first aspect, embodiments of this application provide a path tracking method applied to a mobile robot, comprising: acquiring a target position and a target angle of the mobile robot; smoothing a given path to obtain a smoothed path; determining a look-ahead point associated with the target position on the smoothed path; determining a target control deviation based on the look-ahead position of the look-ahead point, the target position, and the target angle, wherein the target control deviation represents the deviation of the mobile robot from the target position along the smoothed path to the look-ahead point; acquiring control polynomial parameters, wherein the control polynomial parameters are used to correct the target control deviation; wherein the control polynomial parameters are obtained by the mobile robot in an offline state; the target control deviation is fitted using the control polynomial parameters to obtain device control information; and controlling the mobile robot to reach the look-ahead point from the target position along the smoothed path based on the device control information.

[0005] The embodiments of this application can calculate control polynomial parameters in an offline state and use the control polynomial parameters in the offline state to perform deviation fitting processing on the target control deviation in real time. This can reduce the need for various complex parameter tuning operations in the real-time state, reduce the computational load, and improve real-time performance. This can further improve the accuracy of the mobile robot in tracking a given path, as well as improve the path tracking efficiency and reliability of the mobile robot in complex environments.

[0006] Optionally, the smoothing process of the given path to obtain a smooth path includes: taking the target position as the starting point for interception, intercepting a path segment of target length on the given path, the path segment including multiple path points, constructing a target polynomial expression, the target polynomial expression being a polynomial expression about the position of the path points, and performing smoothing process based on the target polynomial expression and the position of each path point to obtain a smooth path.

[0007] The embodiments of this application smooth the given path, making the smooth path more fluid, reducing sharp corners in the smooth path, reducing unnecessary shaking when the mobile robot walks along the smooth path, and helping the mobile robot to track the given path more reliably.

[0008] Optionally, determining the look-ahead point associated with the target location on the smooth path includes: obtaining a look-ahead distance, and determining a look-ahead point on the smooth path based on the look-ahead distance and the target location.

[0009] The look-ahead point is a location that is a certain distance away from the target location and is in front of the mobile robot. The mobile robot focuses on the more distant look-ahead point and uses it as a guide to plan its linear velocity and angular velocity. Compared with the approach of using a closer location as a guide to plan linear velocity and angular velocity, the embodiments of this application can be unaffected by path fluctuations within a short distance, do not need to frequently change the direction of travel, and can move to the look-ahead point more stably, reliably and smoothly.

[0010] Optionally, determining the look-ahead distance includes: acquiring the target speed of the mobile robot; responding to the target speed being greater than a preset minimum speed; calculating the look-ahead distance based on the target speed and a preset control cycle; or, responding to the target speed being less than or equal to a preset minimum speed; determining a preset minimum distance as the look-ahead distance; or, calculating the look-ahead distance based on the minimum speed and a preset control cycle.

[0011] Optionally, the target control deviation includes the target position deviation and the target angle deviation, and the determination of the target control deviation based on the look-ahead position, the target position, and the target angle includes: calculating the target position deviation and the look-ahead angle based on the look-ahead position and the target position, respectively, and determining the target angle deviation based on the look-ahead angle and the target angle.

[0012] Optionally, the control polynomial parameters include linear velocity parameters and angular velocity parameters, the target control deviation includes target position deviation and target angle deviation, the equipment control information includes target linear velocity and target angular velocity, and the step of using the control polynomial parameters to perform deviation fitting processing on the target control deviation to obtain equipment control information includes: determining a linear velocity coefficient based on the linear velocity parameters and the target angle deviation, wherein the linear velocity coefficient is negatively correlated with the target angle deviation; determining a target linear velocity based on a preset maximum linear velocity and the linear velocity coefficient; and using the angular velocity parameters to perform deviation fitting processing on the target control deviation to obtain the target angular velocity.

[0013] Optionally, the angular velocity parameters include distance polynomial coefficients and angle polynomial coefficients. The mobile robot is configured with a coordinate system, which includes an x-axis and a y-axis. The direction of the x-axis is the forward direction of the mobile robot. The target position deviation is constrained by a first deviation on the x-axis and a second deviation on the y-axis. The step of using the angular velocity parameters to perform deviation fitting processing on the target control deviation to obtain the target angular velocity includes: using the distance polynomial coefficients and the second deviation as inputs to a preset distance constraint model to obtain a first angular velocity correction value; using the angle polynomial coefficients and the target angle deviation as inputs to a preset angle constraint model to obtain a second angular velocity correction value; and adding the first angular velocity correction value and the second angular velocity correction value to obtain the target angular velocity.

[0014] Optionally, the control polynomial parameters include angular velocity parameters, and obtaining the control polynomial parameters includes: constructing an angular velocity constraint model, obtaining multiple sets of historical control deviations, using each set of historical control deviations as input to the angular velocity constraint model, obtaining model outputs corresponding to each set of historical control deviations, performing deviation fitting processing on the multiple sets of model outputs, and obtaining the optimal solution for the multiple sets of model outputs, wherein the optimal solution is the angular velocity parameters.

[0015] In a second aspect, embodiments of this application provide a mobile robot, including a memory and a processor. The memory is connected to the processor, and the processor is configured to execute one or more computer programs stored in the memory. When the processor executes the one or more computer programs, it enables the mobile robot to implement the path tracking method described above.

[0016] In a third aspect, embodiments of this application provide a computer-readable storage medium storing a computer program, the computer program including program instructions that, when executed by a processor, cause the processor to perform the path tracing method described above. Attached Figure Description

[0017] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the description of the embodiments of this application will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0018] Figure 1 A flowchart illustrating a path tracing method provided in an embodiment of this application;

[0019] Figure 2 A schematic diagram of a given path provided for an embodiment of this application;

[0020] Figure 3 A schematic diagram illustrating the deviation of a mobile robot from a smooth path, as provided in an embodiment of this application.

[0021] Figure 4 A schematic diagram illustrating a scenario where a mobile robot tracks a given path, as provided in an embodiment of this application.

[0022] Figure 5 This is a schematic diagram of the structure of a path tracking device provided in an embodiment of this application;

[0023] Figure 6 This is a schematic diagram of the structure of a mobile robot provided in an embodiment of this application. Detailed Implementation

[0024] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application. All other embodiments obtained by those skilled in the art based on the embodiments in this application without inventive effort are within the scope of protection of this application.

[0025] It should be noted that, unless there is a conflict, the various features in the embodiments of this application can be combined with each other, all of which are within the protection scope of this application. Furthermore, although functional modules are divided in the device schematic diagram and a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in a different order than the module division in the device or the order in the flowchart. Moreover, the terms "first," "second," and "third" used in this application do not limit the data or execution order, but only distinguish identical or similar items with essentially the same function and effect.

[0026] In the process of developing this application, the inventors discovered that the following related technologies can track a given path but also have the following technical problems:

[0027] 1. Related technologies rely on PID (Proportional Integral Differential) control algorithms to control mobile robots to track a given path. The PID control algorithm adjusts the proportional, integral, and derivative coefficients to respond to tracking deviations, thereby enabling the mobile robot to track and maintain its path. However, the PID control algorithm is highly dependent on these coefficients, and optimizing them is complex and time-consuming, resulting in poor performance in responding to tracking deviations. Furthermore, the mobile robot needs to output two control outputs (linear velocity and angular velocity) to reliably follow the given path. In multi-input multi-output systems, the design and parameter tuning of PID controllers supporting the PID control algorithm are particularly challenging.

[0028] 2. Related technologies are based on the DWA (Dynamic Window Approach) algorithm to control mobile robots to track a given path. The DWA algorithm mainly samples multiple sets of velocities in the velocity space (v, w) and simulates the motion trajectories of multiple velocities over a certain period of time. Then, it scores the motion trajectories through an evaluation function, selects the velocity command corresponding to the optimal trajectory, and sends it to the mobile robot to drive the robot's movement. Therefore, the DWA algorithm relies on a large amount of velocity data to determine the motion trajectory, which increases the computational burden on the mobile robot and can easily affect its real-time response capability.

[0029] 3. Related technologies utilize the MPC (Model Predictive Control) algorithm to control mobile robots to follow a given path. The MPC algorithm employs an advanced feedforward control strategy, predicting the robot's state over a future period and optimizing the control sequence to guide the robot along a given path. However, the MPC algorithm involves numerous model prediction and policy calculation operations during the prediction process, increasing computational complexity. This makes its application particularly challenging in resource-constrained embedded systems.

[0030] The embodiments of this application can calculate control polynomial parameters in an offline state and use the control polynomial parameters in the offline state to perform deviation fitting processing on the target control deviation in real time. This can reduce the need for various complex parameter tuning operations in the real-time state, reduce the computational load, and improve real-time performance. This can further improve the accuracy of the mobile robot in tracking a given path, as well as improve the path tracking efficiency and reliability of the mobile robot in complex environments.

[0031] The following embodiments of this application provide a path tracking method applied to mobile robots. Mobile robots include robots, driverless toy cars, and other devices. Robots include handling robots, shopping guide robots, delivery robots, cleaning robots, etc.

[0032] Please see Figure 1 The path tracing methods include S11 to S17.

[0033] In this embodiment of the application, step S11 is executed to obtain the target position and target angle of the mobile robot.

[0034] The target position is the current position of the mobile robot, and the target angle is the current angle of the mobile robot. The mobile robot is configured with a coordinate system x0y, where the x-axis points in the direction of movement and the y-axis is perpendicular to the x-axis. Please refer to [link to relevant documentation]. Figure 2 In this embodiment, the target position is represented by coordinates (x, y), and the target angle is the angle between the forward direction of the mobile robot 21 and the y-axis. Figure 2 As shown, the target position of the mobile robot 21 is (1,10), and the target angle is 30 degrees.

[0035] In this embodiment of the application, step S12 is performed to smooth the given path and obtain a smooth path.

[0036] The given path is the path that the mobile robot needs to follow. In some embodiments, the given path is pre-stored in an electronic device, which can be a mobile terminal or a cloud server. The mobile robot sends a path request to the electronic device, and the electronic device responds by sending the given path to the mobile robot for storage. In some embodiments, the given path is pre-programmed and stored locally on the mobile robot. In some embodiments, the given path is stored on a storage device, and when the storage device is plugged into the mobile robot, the mobile robot reads the given path stored on the storage device.

[0037] Smoothing refers to transforming a given path into a smooth curve; the smoothed path is the given path after smoothing. The embodiments of this application perform smoothing on the given path, making the smoothed path more fluid, reducing sharp corners in the smoothed path, and reducing unnecessary shaking generated when the mobile robot walks along the smoothed path, which helps the mobile robot to track the given path more reliably.

[0038] In some embodiments, the present application employs a path smoothing algorithm to smooth a given path. This path smoothing algorithm includes Bézier curve algorithms, B-spline curve algorithms, or polynomial curve algorithms, etc.

[0039] For example, this application embodiment uses a polynomial curve algorithm to smooth a given path. Smoothing a given path to obtain a smooth path includes the following steps: taking the target position as the starting point, extracting a path segment of the target length from the given path; the path segment includes multiple path points; constructing a target polynomial expression, which is a polynomial expression relating to the positions of the path points; and performing smoothing based on the target polynomial expression and the positions of each path point to obtain a smooth path.

[0040] The target length is determined by the designer based on the physical dimensions, maximum speed, and engineering experience of the mobile robot. In some embodiments, the target length is any value between [0.6, 1.2], for example, a target length of 0.6m, 0.8m, 1m, or 1.2m, etc.

[0041] Please combine Figure 2 In this embodiment of the application, the target location 22 is used as the starting point for interception. A path segment 24 with a target length of 1m is intercepted on the given path 23. The path point set of the path segment 24 is {(x0,y0), (x1,y1), (x2,y2)...(x...}. m ,y m The objective polynomial expression is:

[0042] P(x) = a n x n +a n-1 x n-1 +a n-2 x n-2 …a1x 1 +a0

[0043] a represents the coefficient of the objective polynomial expression.

[0044] In this embodiment, the position of each path point is substituted into the target polynomial expression to obtain the value P(x) to be optimized for the position of each path point. i ).

[0045] The loss value in this application embodiment is obtained according to the following formula, as shown below:

[0046]

[0047] S is the loss value, y i Let be the ordinate of the i-th path point.

[0048] This application employs an optimization algorithm to process the loss value and obtain the optimal solution, which is the optimized coefficient of the objective polynomial expression. The optimization algorithm includes methods such as least squares or orthogonal triangular decomposition.

[0049] In this embodiment, the optimization coefficients of the objective polynomial expression and the positions of all path points are used as inputs to the objective polynomial expression to obtain a smooth path.

[0050] When the smoothing path is short, this embodiment selects a smaller order n for the target polynomial expression, for example, n = 4. When the smoothing path is long, or the mobile robot's movement speed is high, or the mobile robot can support a high-computing-power working mode, this embodiment selects a higher order n for the target polynomial expression, for example, n = 8. By smoothing a given path, this embodiment makes the smoothing path smoother and reduces the impact of inflection points, enabling the mobile robot to operate smoothly.

[0051] In this embodiment of the application, S13 is performed to determine a look-ahead point associated with the target location on the smooth path.

[0052] The look-ahead point is the next location the mobile robot will move from the target location. The look-ahead point is a location some distance from the target location and also ahead of the mobile robot. The mobile robot focuses on the more distant look-ahead point and uses it as a guide to plan its linear and angular velocities. Compared to planning linear and angular velocities based on closer locations, the embodiments of this application are unaffected by path fluctuations over short distances, do not require frequent changes in direction, and can move to the look-ahead point more stably, reliably, and smoothly.

[0053] Determining a look-ahead point associated with a target location on a smooth path involves the following steps: obtaining the look-ahead distance, and determining the look-ahead point on the smooth path based on the look-ahead distance and the target location.

[0054] In some embodiments, determining the look-ahead distance includes the following steps: obtaining the target speed of the mobile robot, responding when the target speed is greater than a preset minimum speed, and calculating the look-ahead distance based on the target speed and a preset control cycle.

[0055] In some embodiments, determining the look-ahead distance includes the following steps: responding to a target speed that is less than or equal to a preset minimum speed, determining the preset minimum distance as the look-ahead distance, or calculating the look-ahead distance based on the minimum speed and a preset control period.

[0056] For example, embodiments of this application calculate the look-ahead distance according to the following formula, as shown below:

[0057]

[0058] fc is the preset control frequency of the mobile robot, Vmin is the preset minimum speed, V is the target speed, Px is the look-ahead distance, and δ is the preset minimum distance.

[0059] When the target speed is greater than the minimum speed, this embodiment of the application needs to calculate the difference between the target speed and the preset control cycle to determine the look-ahead distance. This can match the target speed of the mobile robot and avoid the look-ahead distance being too large or too small due to deviation from the actual target speed.

[0060] When the target speed is less than or equal to the minimum speed, the embodiments of this application can use the minimum distance as the look-ahead distance, or multiply the minimum speed by a preset control period to obtain the look-ahead distance. This can avoid the problem of the look-ahead distance being too small when the target speed is used to determine the look-ahead distance.

[0061] Understandably, both the minimum speed and minimum distance are customized by the designer based on engineering experience.

[0062] The target position is determined by the target's x-coordinate Px current and the target ordinate Py current The composition, based on the look-ahead distance and the target position, determines the look-ahead point on a smooth path, including the following steps: [The text then abruptly shifts to a different topic:] ...and the target's x-coordinate Px... current The x-coordinates are added together to obtain candidate x-coordinates. The position points on the smooth path with the x-coordinates of the candidate x-coordinates are selected as look-ahead points.

[0063] For example, embodiments of this application determine the look-ahead point according to the following formula, as shown below:

[0064]

[0065] P lookahead The forward position of the forward point.

[0066] In this embodiment, S14 is executed to determine the target control deviation based on the look-ahead position, the target position, and the target angle. The target control deviation is used to represent the deviation of the mobile robot from the target position to the look-ahead position along a smooth path.

[0067] Target control deviation includes target position deviation and target angle deviation. Target position deviation is used to represent the distance difference between the target position and the look-ahead position. Target angle deviation is used to represent the angle difference between the target angle and the look-ahead angle. The look-ahead angle is the angle at which the mobile robot faces the smooth path after arriving at the look-ahead point.

[0068] Determining the target control deviation based on the forward position, target position, and target angle of the forward point includes the following steps: calculating the target position deviation and forward angle based on the forward position and target position respectively, and determining the target angle deviation based on the forward angle and target angle.

[0069] Calculating the target position deviation based on the look-ahead position and the target position includes the following steps: obtaining the look-ahead position and the target position to obtain the target position deviation.

[0070] For example, embodiments of this application determine the target position deviation according to the following formula, as shown below:

[0071] ΔP=p lookahead -p current

[0072] p ;ookaheaf For the forward position, p current Let ΔP be the target position, and ΔP be the target position deviation.

[0073] The forward position consists of a forward x-coordinate and a forward y-coordinate. Calculating the forward angle based on the forward position and the target position includes the following steps: calculating the difference between the forward x-coordinate and the target x-coordinate to obtain the x-coordinate difference; calculating the difference between the forward y-coordinate and the target y-coordinate to obtain the y-coordinate difference; calculating the quotient of the y-coordinate difference and the x-coordinate difference to obtain the slope; and processing the slope based on the arctangent function to obtain the forward angle.

[0074] For example, in this embodiment of the application, the look-ahead angle is determined according to the following formula, as shown below:

[0075] θ lookahead =arctan2(y lookahead -y current ,x lookahead -x current )

[0076] θ lookahead From a forward-looking perspective, y lookahead x is the look-ahead ordinate. lookahead y is the look-ahead x-axis. current x is the target ordinate. current The x-coordinate of the target.

[0077] In this embodiment, the difference between the forward angle and the target angle is calculated to obtain the target angle deviation.

[0078] For example, embodiments of this application determine the target angle deviation according to the following formula, as shown below:

[0079] Δθ=θ lookahead -θ current

[0080] θ current Let θ be the target angle, and Δθ be the target angle deviation.

[0081] In this embodiment of the application, step S15 is performed to obtain the control polynomial parameters, which are used to correct the target control deviation.

[0082] The control polynomial parameters include linear velocity parameters and angular velocity parameters. The linear velocity parameters are used to correct the linear velocity of the mobile robot, and the angular velocity parameters are used to correct the angular velocity of the mobile robot.

[0083] In some embodiments, the linear velocity parameter can be customized by the designer based on engineering experience. For example, the designer can pre-set both parameter k and parameter b as linear velocity parameters and use parameter k and parameter b to constrain the linear velocity.

[0084] In some embodiments, the linear velocity parameters can be inferred from the linear velocity constraint model, which is a model built by the designer based on engineering experience, and is used to dynamically determine parameters k and b.

[0085] In some embodiments, the angular velocity parameter can be customized by the designer based on engineering experience.

[0086] In some embodiments, the angular velocity parameters can be obtained by reasoning from the angular velocity constraint model. The angular velocity parameters include distance polynomial coefficients and angle polynomial coefficients. The distance polynomial coefficients are used to constrain the target angular velocity from the distance dimension, and the angle polynomial coefficients are used to constrain the target angular velocity from the angle dimension.

[0087] Please see Figure 3 The target angle of the mobile robot 21 at position 31 is 120 degrees, and position 31 deviates from the smooth path 23 in the lateral direction (i.e., the y-axis direction, since the x-axis direction is the forward direction of the mobile robot and the y-axis direction is the lateral direction of the mobile robot). The look-ahead angle of the mobile robot 21 at the look-ahead point 32 is 30 degrees. Therefore, in this embodiment, distance polynomial coefficients are used to describe the "deviation of the mobile robot 21 from the smooth path 32", and angle polynomial coefficients are used to describe the "target angle deviation of the mobile robot 21 from position 31 to look-ahead point 32".

[0088] Obtaining the control polynomial parameters includes the following steps: constructing an angular velocity constraint model, obtaining multiple sets of historical control deviations, using each set of historical control deviations as input to the angular velocity constraint model, obtaining the model output corresponding to each set of historical control deviations, performing deviation fitting processing on the multiple sets of model outputs, and obtaining the optimal solution for the multiple sets of model outputs, where the optimal solution is the angular velocity parameter.

[0089] The angular velocity constraint model includes a distance constraint model and an angle constraint model. The distance constraint model is used to constrain the distance between the mobile robot and the smooth path, while the angle constraint model is used to constrain the angle at which the mobile robot moves from the target position to the look-ahead point. Correspondingly, historical control deviations include historical position deviations and historical angle deviations.

[0090] The embodiments of this application construct a distance constraint model based on the following formula, as shown below:

[0091] PolyY(Δy)=c n Δy n +cn-1 Δy n-1 +c n-2 Δy n-2 …c1Δy 1 +c0

[0092] c0, c1, ..., c n-2 c n-1 and c n All are distance polynomial coefficients, Δy is the historical position deviation value on the y-axis, and PolyY(Δy) is the model output of the distance constraint model.

[0093] The embodiment of this application constructs an angle constraint model based on the following formula, as shown below:

[0094] PolyY(Δθ)=d n Δθ n +d n-1 Δθ n-1 +d n-2 Δθ n-2 …d1Δθ 1 +d0

[0095] d0, d1, ..., d n-2 d n-1 and d n All are angle polynomial coefficients, Δθ is the historical angle deviation, and PolyY(Δθ) is the model output of the angle constraint model.

[0096] This application embodiment uses simulation or pre-training methods to collect historical control deviations. For example, this application embodiment debugs a simulator that supports the MPC algorithm, and the simulator tracks various path patterns based on the MPC algorithm. Alternatively, this application embodiment uses an MPC controller under a high-computing-power platform to track various path patterns. During the tracking process, this application embodiment records the historical position deviation, historical angle deviation, and angular velocity for all control cycles, obtaining the following data {(ΔP y0 ,w0),(ΔP y1 ,w1),(ΔP y2 ,w2)…(ΔP ym ,w m )}, {(Δθ0,w0), (Δθ1,w1), (Δθ2,w2)…(Δθ m ,w m )}.

[0097] In this embodiment, the deviation fitting process is performed on multiple sets of model outputs of the distance constraint model to obtain the optimal solution for the multiple sets of model outputs. The optimal solution is the coefficient of the distance polynomial.

[0098] For example, in this embodiment of the application, the distance loss value is calculated according to the following formula, as shown below:

[0099]

[0100] L1 is the distance loss value. In this embodiment, the distance loss value is optimized to obtain the distance polynomial coefficients.

[0101] In this application embodiment, the deviation fitting process is performed on multiple sets of model outputs of the angle constraint model to obtain the optimal solution for the multiple sets of model outputs. The optimal solution is the coefficients of the angle polynomial.

[0102] For example, in this embodiment of the application, the angle loss value is calculated according to the following formula, as shown below:

[0103]

[0104] L2 is the angle loss value. In this embodiment of the application, the angle loss value is optimized to obtain the angle polynomial coefficients.

[0105] In this embodiment, step S16 is performed, where the control polynomial parameters are used to perform deviation fitting processing on the target control deviation to obtain equipment control information.

[0106] The equipment control information is used to control the mobile robot to walk along a smooth path. The equipment control information includes the target linear velocity and the target angular velocity.

[0107] The process of using control polynomial parameters to perform deviation fitting on the target control deviation to obtain equipment control information includes the following steps: determining the linear velocity coefficient based on the linear velocity parameter and the target angle deviation; determining the target linear velocity based on the preset maximum linear velocity and the linear velocity coefficient; and using the angular velocity parameter to perform deviation fitting on the target control deviation to obtain the target angular velocity.

[0108] The linear velocity coefficient is negatively correlated with the target angle deviation. In some embodiments, the linear velocity coefficient is linearly negatively correlated with the target angle deviation. In some embodiments, the linear velocity coefficient is non-linearly negatively correlated with the target angle deviation.

[0109] There is a correlation between target angle deviation and target linear velocity. When the target angle deviation is larger, the target linear velocity needs to be reduced to reliably ensure that the mobile robot can return to or avoid deviating from the fitted path. When the target angle deviation is smaller, the target linear velocity needs to be increased to improve the mobile robot's walking efficiency.

[0110] This application's embodiments configure the linear velocity coefficient and the target angle deviation to have a negative correlation, which can improve the efficiency and reliability of the mobile robot in tracking the fitted path in complex environments. Furthermore, when the linear velocity coefficient and the target angle deviation have a linear negative correlation, for example, β = k × Δθ + b, where k and b are both linear velocity coefficients, Δθ is the target angle deviation, and β is the linear velocity coefficient, this application's embodiments can efficiently determine the linear velocity coefficient.

[0111] In this embodiment, the preset maximum linear velocity is multiplied by a linear velocity coefficient to obtain the target linear velocity, for example, v. t =v max ×β,v t Let v be the target linear velocity. max This represents the maximum linear velocity.

[0112] Angular velocity parameters include distance polynomial coefficients and angle polynomial coefficients. The mobile robot is configured with a coordinate system, which includes an x-axis and a y-axis. The x-axis direction is the forward direction of the mobile robot. The target position deviation is determined by the first deviation ΔP on the x-axis. xi With the second deviation ΔP on the y-axis yi Common constraints.

[0113] The process of using angular velocity parameters to perform deviation fitting on the target control deviation to obtain the target angular velocity includes the following steps: using the distance polynomial coefficients and the second deviation as inputs to a preset distance constraint model to obtain a first angular velocity correction value; using the angle polynomial coefficients and the target angle deviation as inputs to a preset angle constraint model to obtain a second angular velocity correction value; and adding the first angular velocity correction value and the second angular velocity correction value to obtain the target angular velocity.

[0114] For example, the target angular velocity is calculated according to the following formula in the embodiments of this application, as shown below:

[0115] w t =PolyY′(ΔP y )+PolyQ′(Δθ)

[0116] w t For the target angular velocity, PolyY′(ΔP) y ) is the first angular velocity correction value, and PolyQ′(Δθ) is the second angular velocity correction value.

[0117] In this embodiment, step S17 is performed, whereby the mobile robot is controlled to move from the target position to the look-ahead point along a smooth path based on the device control information. As mentioned above, the device control information includes the target linear velocity and the target angular velocity. In this embodiment, the mobile robot is controlled to move from the target position to the look-ahead point along a smooth path according to the target linear velocity and the target angular velocity.

[0118] In general, the embodiments of this application can calculate control polynomial parameters in an offline state and use the control polynomial parameters in the offline state to perform deviation fitting processing on the target control deviation in real time. This can reduce the need for various complex parameter tuning operations in the real-time state, reduce the computational load, and improve real-time performance. This can further improve the accuracy of mobile robots in tracking a given path, as well as improve the path tracking efficiency and reliability of mobile robots in complex environments.

[0119] To illustrate in detail the path tracing method provided in the embodiments of this application, the embodiments of this application combine... Figure 4 This will be explained in detail below:

[0120] Please see Figure 4 Before tracking the given path 41, the control polynomial parameters have been obtained in this embodiment of the application when the mobile robot is offline.

[0121] In this embodiment, the mobile robot 21 is instructed to track a given path 41, wherein the given path 41 includes multiple inflection points 42. The mobile robot 21 uses the target position 43 as the starting point for interception, intercepts a path segment with a target length of 1m on the given path 41, and smooths the path segment to obtain a smooth path 44.

[0122] The mobile robot 21 determines a look-ahead point 45 on a smooth path 44, and determines the target position deviation and target angle deviation based on the look-ahead position of the look-ahead point 45, the target position 43, and the target angle.

[0123] Based on the target position deviation, target angle deviation, and control polynomial parameters, the mobile robot 21 calculates the target linear velocity and target angular velocity. The mobile robot 21 then travels along the smooth path 44 according to the target linear velocity and target angular velocity.

[0124] In this embodiment, the control polynomial parameters have been obtained offline. The control polynomial parameters can be used to adapt to various target control deviations that occur during the tracking process. The computation is relatively small, and the real-time performance is good. This is beneficial to improving the accuracy of mobile robots in tracking a given path and can be applied to various low-computing-power mobile robots, thus expanding the application scope.

[0125] It should be noted that in the above embodiments, there is no necessarily a certain order between the steps. Those skilled in the art can understand from the description of the embodiments of this application that the above steps may have different execution orders in different embodiments, that is, they may be executed in parallel or in turn, etc.

[0126] As another aspect of the embodiments of this application, this application provides a path tracking device. The path tracking device can be a software module, which includes several instructions stored in a memory. A processor can access the memory and execute the instructions to complete the path tracking methods described in the various embodiments above.

[0127] In some embodiments, the path tracking device can also be constructed from hardware components. For example, the path tracking device can be constructed from one or more chips, which can work in coordination to complete the path tracking methods described in the various embodiments above. As another example, the path tracking device can also be constructed from various logic devices, such as general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), microcontrollers, ARM (Acorn RISC Machine) or other programmable logic devices, discrete gate or transistor logic, discrete hardware components, or any combination of these components.

[0128] Please see Figure 5 The path tracking device 500 includes: a pose acquisition module 51, a path smoothing module 52, a look-ahead determination module 53, a deviation determination module 54, a parameter acquisition module 55, a deviation fitting module 56, and a device control module 57.

[0129] The pose acquisition module 51 is used to acquire the target position and target angle of the mobile robot. The path smoothing module 52 is used to smooth a given path to obtain a smooth path. The look-ahead determination module 53 is used to determine a look-ahead point associated with the target position on the smooth path. The deviation determination module 54 is used to determine the target control deviation based on the look-ahead position of the look-ahead point, the target position, and the target angle. The target control deviation represents the deviation of the mobile robot from the target position to the look-ahead point along the smooth path. The parameter acquisition module 55 is used to acquire control polynomial parameters. The control polynomial parameters are used to correct the target control deviation. The control polynomial parameters are obtained by the mobile robot in an offline state. The deviation fitting module 56 is used to perform deviation fitting processing on the target control deviation using the control polynomial parameters to obtain device control information. The device control module 57 is used to control the mobile robot to reach the look-ahead point from the target position along the smooth path based on the device control information.

[0130] The embodiments of this application can calculate control polynomial parameters in an offline state and use the control polynomial parameters in the offline state to perform deviation fitting processing on the target control deviation in real time. This can reduce the need for various complex parameter tuning operations in the real-time state, reduce the computational load, and improve real-time performance. This can further improve the accuracy of the mobile robot in tracking a given path, as well as improve the path tracking efficiency and reliability of the mobile robot in complex environments.

[0131] In some embodiments, the path smoothing module 52 is specifically used to: take the target position as the starting point for interception, intercept a path segment of target length on the given path, the path segment including multiple path points, construct a target polynomial expression, the target polynomial expression being a polynomial expression about the position of the path points, and perform smoothing processing based on the target polynomial expression and the position of each path point to obtain a smooth path.

[0132] In some embodiments, the look-ahead determination module 53 is specifically used to: obtain a look-ahead distance, and determine a look-ahead point on the smooth path based on the look-ahead distance and the target position.

[0133] In some embodiments, the look-ahead determination module 53 is further configured to: acquire the target speed of the mobile robot, and in response to the target speed being greater than a preset minimum speed, calculate the look-ahead distance based on the target speed and a preset control cycle; or, in response to the target speed being less than or equal to a preset minimum speed, determine a preset minimum distance as the look-ahead distance, or calculate the look-ahead distance based on the minimum speed and a preset control cycle.

[0134] In some embodiments, the target control deviation includes the target position deviation and the target angle deviation. The deviation determination module 54 is specifically used to: calculate the target position deviation and the forward angle based on the forward position and the target position respectively, and determine the target angle deviation based on the forward angle and the target angle.

[0135] In some embodiments, the control polynomial parameters include linear velocity parameters and angular velocity parameters, the target control deviation includes target position deviation and target angle deviation, the device control information includes target linear velocity and target angular velocity, and the deviation fitting module 56 is specifically used to: determine a linear velocity coefficient based on the linear velocity parameters and the target angle deviation, wherein the linear velocity coefficient is negatively correlated with the target angle deviation; determine a target linear velocity based on a preset maximum linear velocity and the linear velocity coefficient; and perform deviation fitting processing on the target control deviation using the angular velocity parameters to obtain the target angular velocity.

[0136] In some embodiments, the angular velocity parameter includes distance polynomial coefficients and angle polynomial coefficients. The mobile robot is configured with a coordinate system, which includes an x-axis and a y-axis. The direction of the x-axis is the forward direction of the mobile robot. The target position deviation is constrained by a first deviation on the x-axis and a second deviation on the y-axis. The deviation fitting module 56 is specifically used to: use the distance polynomial coefficients and the second deviation as inputs to a preset distance constraint model to obtain a first angular velocity correction value; use the angle polynomial coefficients and the target angle deviation as inputs to a preset angle constraint model to obtain a second angular velocity correction value; and add the first angular velocity correction value and the second angular velocity correction value to obtain the target angular velocity.

[0137] In some embodiments, the parameter acquisition module 55 is specifically used to: construct an angular velocity constraint model, acquire multiple sets of historical control deviations, use each set of historical control deviations as input to the angular velocity constraint model, obtain model outputs corresponding to each set of historical control deviations, perform deviation fitting processing on the multiple sets of model outputs, and obtain the optimal solution for the multiple sets of model outputs, wherein the optimal solution is the angular velocity parameter.

[0138] It should be noted that the path tracking device described above can execute the path tracking method provided in the embodiments of this application, and has the corresponding functional modules and beneficial effects of the method. Technical details not described in detail in the path tracking device embodiments can be found in the path tracking method provided in the embodiments of this application.

[0139] See Figure 6 , Figure 6 This is a schematic diagram of the structure of a mobile robot provided in an embodiment of this application. The mobile robot 21 includes one or more processors 211 and a memory 212. The memory 212 is connected to one or more processors 211, for example, via a bus.

[0140] Processor 211 is configured to support the mobile robot in performing the corresponding functions in the methods described in the above-described method embodiments. The processor may be a central processing unit (CPU), a network processor (NP), a hardware chip, or any combination thereof. The aforementioned hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The aforementioned PLD may be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.

[0141] Memory 212 is used to store program code, etc. Memory may include volatile memory (VM), such as random access memory (RAM); memory may also include non-volatile memory (NVM), such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid-state drive (SSD); memory may also include combinations of the above types of memory.

[0142] The memory 212 can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules, such as the program instructions / modules corresponding to the path tracing method in the embodiments of this application. The processor executes various functional applications and data processing of the path tracing method and path tracing device by running the non-volatile software programs, instructions, and modules stored in the memory, thereby realizing the functions of each module or unit of the path tracing method and path tracing device provided in the above method embodiments.

[0143] The memory 212 may include a program storage area and a data storage area, wherein the program storage area may store the operating system and applications required for at least one function. The data storage area may store data created based on the use of the path tracking device. In some embodiments, the memory may optionally include memory remotely located relative to the processor, which can be connected to the path tracking device via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.

[0144] The one or more modules are stored in the memory. When executed by the one or more processors, they perform the path tracing method in any of the above method embodiments. For example, they perform the method steps described in the above method embodiments to realize the functions of the modules described in the above device embodiments.

[0145] This application also provides a computer-readable storage medium storing a computer program, the computer program including program instructions, which, when executed by a mobile robot, cause the mobile robot to perform the method described in the foregoing embodiments.

[0146] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. The storage medium can be a magnetic disk, optical disk, read-only memory (ROM), or random access memory (RAM), etc.

[0147] The above-disclosed embodiments are merely preferred embodiments of this application and should not be construed as limiting the scope of this application. Therefore, any equivalent variations made in accordance with the claims of this application shall still fall within the scope of this application.

Claims

1. A path tracking method applied to a mobile robot, characterized in that, include: Obtain the target position and target angle of the mobile robot; Smooth a given path to obtain a smoothed path; Determine a look-ahead point associated with the target location on the smooth path; The target control deviation is determined based on the forward position of the forward point, the target position, and the target angle. The target control deviation is used to represent the deviation of the mobile robot from the target position to the forward point along the smooth path. The control polynomial parameters are obtained and used to correct the target control deviation. The control polynomial parameters are obtained by the mobile robot in an offline state. The target control deviation is fitted using the control polynomial parameters to obtain equipment control information. Based on the device control information, the mobile robot is controlled to travel from the target position along the smooth path to the look-ahead point.

2. The method according to claim 1, characterized in that, The process of smoothing a given path to obtain a smoothed path includes: Using the target location as the starting point, a path segment of the target length is extracted from the given path, and the path segment includes multiple path points; Construct a target polynomial expression, wherein the target polynomial expression is a polynomial expression relating to the position of the path point; A smooth path is obtained by smoothing the path based on the target polynomial expression and the positions of each path point.

3. The method according to claim 1, characterized in that, Determining the look-ahead point associated with the target location on the smooth path includes: Obtain the forward distance; Based on the look-ahead distance and the target position, a look-ahead point is determined on the smooth path.

4. The method according to claim 3, characterized in that, The determination of the forward distance includes: Obtain the target speed of the mobile robot; If the target speed is greater than a preset minimum speed, calculate the look-ahead distance based on the target speed and a preset control period; or, In response to a target speed being less than or equal to a preset minimum speed, a preset minimum distance is determined as the look-ahead distance, or the look-ahead distance is calculated based on the minimum speed and a preset control period.

5. The method according to claim 1, characterized in that, The target control deviation includes target position deviation and target angle deviation. Determining the target control deviation based on the look-ahead position, the target position, and the target angle includes: Calculate the target position deviation and the forward angle based on the forward position and the target position, respectively. The target angle deviation is determined based on the forward angle and the target angle.

6. The method according to claim 1, characterized in that, The control polynomial parameters include linear velocity parameters and angular velocity parameters; the target control deviation includes target position deviation and target angle deviation; the equipment control information includes target linear velocity and target angular velocity; and the deviation fitting processing of the target control deviation using the control polynomial parameters to obtain the equipment control information includes: A linear velocity coefficient is determined based on the linear velocity parameters and the target angle deviation, and the linear velocity coefficient is negatively correlated with the target angle deviation. The target linear velocity is determined based on the preset maximum linear velocity and the linear velocity coefficient; The target angular velocity is obtained by using the angular velocity parameters to perform deviation fitting processing on the target control deviation.

7. The method according to claim 6, characterized in that, The angular velocity parameters include distance polynomial coefficients and angle polynomial coefficients. The mobile robot is configured with a coordinate system including an x-axis and a y-axis. The direction of the x-axis is the forward direction of the mobile robot. The target position deviation is constrained by a first deviation on the x-axis and a second deviation on the y-axis. The deviation fitting process performed on the target control deviation using the angular velocity parameters to obtain the target angular velocity includes: The distance polynomial coefficients and the second deviation are used as inputs to a preset distance constraint model to obtain the first angular velocity correction value; The angle polynomial coefficients and the target angle deviation are used as inputs to a preset angle constraint model to obtain the second angular velocity correction value. The first angular velocity correction value is added to the second angular velocity correction value to obtain the target angular velocity.

8. The method according to any one of claims 1 to 7, characterized in that, The control polynomial parameters include angular velocity parameters, and obtaining the control polynomial parameters includes: Construct an angular velocity constraint model; Obtain multiple sets of historical control deviations; Each set of historical control deviations is used as input to the angular velocity constraint model to obtain the model output corresponding to each set of historical control deviations; The deviation fitting process is performed on the multiple sets of model outputs to obtain the optimal solution for the multiple sets of model outputs, and the optimal solution is the angular velocity parameter.

9. A mobile robot, characterized in that, The device includes a memory and a processor, the memory being connected to the processor, the processor being configured to execute one or more computer programs stored in the memory, the processor causing the mobile robot to implement the path tracking method as described in any one of claims 1-8 when executing the one or more computer programs.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, the computer program including program instructions that, when executed by a processor, cause the processor to perform the path tracing method as described in any one of claims 1-8.