A linear tracking control method and system of an AGV
By combining three-point path description and LQR algorithm with feedforward control, the overshoot and oscillation problems in AGV path tracking are solved, achieving high-precision straight-line tracking under poor network conditions, and improving the stability and efficiency of AGV path tracking.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING HUASHENG XINAN ELECTRONIC TECH DEV CO LTD
- Filing Date
- 2026-02-28
- Publication Date
- 2026-05-29
AI Technical Summary
Existing AGV path tracking methods suffer from overshoot and oscillation, and excessive data transmission affects real-time performance, especially when network conditions are poor, resulting in poor tracking accuracy.
The three-point path description protocol is adopted. The point set is sent through the scheduling terminal, the AGV vehicle end calculates the straight path and heading angle, and controls it by combining the gain matrix K of the LQR algorithm and the feedforward control quantity to achieve high-precision straight-line tracking.
Maintaining high-precision tracking under poor network conditions avoids overshoot and oscillation, thus improving the stability and efficiency of AGV path tracking in complex environments.
Smart Images

Figure CN122111013A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of AGV navigation and control technology, specifically to a linear tracking control method and system for AGVs. Background Technology
[0002] Path tracking technology is one of the core control technologies of AGVs, and its performance directly determines the AGV's driving accuracy, stability, and efficiency. Straight paths, as the most basic and common path unit in a work scenario, require particularly high tracking quality. Currently, existing path tracking methods in the industry each have significant limitations:
[0003] First, there's the classic Proportional-Integral-Derivative (PID) control algorithm. While simple in structure, its inherent integral saturation and derivative noise issues in path tracking applications easily lead to overshoot. This causes the AGV to fail to maintain a straight line when tracking a straight line, instead exhibiting an oscillating trajectory along both sides of the reference path, resulting in poor tracking accuracy and a cumbersome parameter tuning process.
[0004] Secondly, to improve control performance, strategies have emerged that separate the control of lateral and longitudinal errors, such as control algorithms that combine lateral and longitudinal PID controllers. While this method improves the performance of a single PID controller to some extent, it increases the complexity of the system and does not fundamentally solve the inherent limitations of the PID controller itself, remaining insufficient in scenarios with high dynamic performance requirements.
[0005] Furthermore, tracking algorithms based on geometric models, such as the Pure Pursuit algorithm and the Stanley controller, are also widely used in AGVs. The Pure Pursuit algorithm calculates path curvature through a preview point, but its tracking performance is highly dependent on the selection of the key parameter, the preview distance. An inappropriate preview distance can lead to severe tracking deviations or oscillations in the system, resulting in poor adaptive robustness. The Stanley controller, as a geometric algorithm based on lateral error feedback, suffers from severe steering oscillations at low speeds, and its multiple control parameters are tightly coupled, making optimization extremely difficult.
[0006] In addition, some existing path description methods may have data redundancy issues. When network conditions are poor, data transmission delays can affect the real-time performance of AGV control. At the same time, AGVs cannot maintain straight-line travel when tracking straight lines, resulting in poor tracking accuracy. Summary of the Invention
[0007] In view of this, the purpose of the present invention is to provide a linear tracking control method and system for AGVs, so as to solve the problems of overshoot and oscillation in the existing AGV path tracking methods, as well as the large amount of data transmission and the impact on real-time performance when network conditions are poor.
[0008] According to a first aspect of the present invention, a linear tracking control method for an AGV is provided, applied at the AGV vehicle end, comprising: The system receives a set of points representing the AGV's travel path from a scheduling terminal via a network. The travel path consists of multiple line segments. The scheduling terminal extracts the starting point, target point, and intermediate point from each line segment and integrates them into a set of points. The distance between the intermediate point and the target point is a preset distance. Based on the set of points, the straight path and straight heading angle of each line segment on the driving path are obtained; The AGV's current position and heading angle are obtained through its sensors. Calculate the lateral error between the AGV's current position and the current straight path, calculate the heading error between the AGV's current heading angle and the heading angle of the current straight path, and integrate them into a state error vector; The state error vector is multiplied by the gain matrix K to obtain the AGV control quantity; the gain matrix K is calculated offline using the LQR algorithm based on the linearization model of the AGV and the weight matrix. The AGV is controlled to move according to the AGV control parameters.
[0009] Preferably, based on the point set, the straight path and straight heading angle of each line segment on the driving path are obtained, including: The point set records the coordinate data of each point in the AGV path coordinate system; Based on the starting point and target point of each line segment in the point set, the straight line equation of the line segment is obtained, which is used to represent the straight line path; Based on the midpoint and target point of each line segment in the point set, the straight-line heading angle of the line segment is obtained.
[0010] Preferably, the lateral error between the AGV's current position and its current straight path is calculated, and the heading error between the AGV's current heading angle and its current straight-line heading angle is calculated, including: Based on the coordinate data of the AGV's current position in the AGV path coordinate system, calculate the projection point of the AGV's current position on the straight line equation of the line segment. Calculate the vector from the projection point to the current position of the AGV itself, as the lateral error; The difference between the AGV's current heading angle and the straight heading angle is calculated as the heading error.
[0011] Preferably, the method further includes: The starting point, target point, and intermediate point of the next line segment are pre-extracted from the point set, and the straight path and heading angle of the next line segment are calculated. Calculate the difference between the heading angle of the current line segment and the heading angle of the next line segment; Multiplying the heading angle difference with the gain matrix K yields the feedforward control value of the AGV at the intersection of the two line segments; When the AGV travels to the intersection of the two line segments, the feedforward control quantity is used to control the AGV to move.
[0012] Preferably, the method further includes: The AGV's sensors continuously scan the environment ahead, generating point cloud data; If a static obstacle is detected on the AGV's travel path based on the point cloud data, the obstacle outline of the static obstacle is obtained. Based on the outline of the obstacle, at least one safe point is determined, and the current position of the AGV itself is used as the starting point for obstacle avoidance. Based on the obstacle avoidance starting point and the safe point, a temporary point set is generated to represent a temporary obstacle avoidance path; the temporary obstacle avoidance path consists of at least two line segments, and the starting point, target point and intermediate point are extracted from each line segment and integrated into a temporary point set; The temporary point set is inserted into the point set representing the original travel path of the AGV so that the AGV avoids the static obstacle; When the AGV returns to its original travel path, the temporary point set is removed from the point set.
[0013] Preferably, in the method, the number of points in the point set used to represent the AGV driving path is 2n+1, where n is the number of line segments of the driving path, and the intersection of adjacent line segments is both the target point of the previous line segment and the starting point of the next line segment.
[0014] Preferably, in the method, the distance between the intermediate point and the target point is 1 mm.
[0015] According to a second aspect of the present invention, a linear tracking control system for an AGV is provided, comprising: The scheduling terminal is used to obtain the travel path of the AGV, which consists of multiple line segments, extract the starting point, target point and intermediate point from each line segment, and integrate them into a point set; the distance between the intermediate point and the target point is a preset distance; and send the point set to the AGV vehicle end through the network. At the AGV end, based on the set of points, the system obtains the straight path and heading angle of each line segment on the driving path; acquires the AGV's current position and heading angle using its sensors; calculates the lateral error between the AGV's current position and the current straight path, and calculates the heading error between the AGV's current heading angle and the heading angle of the current straight path, integrating these into a state error vector; multiplies the state error vector by a gain matrix K to obtain the AGV control quantity; the gain matrix K is calculated offline using the LQR algorithm based on the AGV's linearization model and weight matrix; and controls the AGV's movement based on the AGV control quantity.
[0016] Preferably, the system further includes: a human-computer interaction interface; The scheduling terminal is also used to acquire a real-world scene map and display the real-world scene map through a human-computer interaction interface; receive a driving path drawing instruction input by the user, and generate a driving path for the AGV consisting of multiple line segments according to the driving path drawing instruction.
[0017] Preferably, the scheduling terminal is further configured to obtain the original path containing the curved portion; divide the curved portion according to a preset fixed arc length; generate corresponding line segments based on the start and end points of each segmented curve to represent the curved portion with multiple line segments; and replace the curved portion in the original path with the obtained multiple line segments to obtain the AGV's driving path composed of multiple line segments.
[0018] The technical solution provided by this invention may include the following beneficial effects: It is understood that the technical solution presented in this invention receives a set of points representing the AGV's travel path from a scheduling terminal via a network, with each three points representing a line segment. The AGV obtains the straight path and heading angle of each line segment based on the point set; calculates the lateral error between the AGV's current position and its current straight path, and calculates the heading error between the AGV's current heading angle and its current straight path heading angle, integrating these into a state error vector; multiplying the state error vector by the gain matrix K yields the AGV control quantity; and controlling the AGV's movement based on the AGV control quantity. It is understood that this technical solution requires only three points to represent a line segment, resulting in simple data and excellent performance even with poor network conditions. Furthermore, the combination of the gain matrix K from the LQR algorithm allows the AGV to approach a straight line infinitely when traveling according to the control quantity, avoiding overshoot and oscillation.
[0019] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit the invention. Attached Figure Description
[0020] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0021] Figure 1 This is a schematic diagram illustrating the steps of a linear tracking control method for an AGV according to an exemplary embodiment; Figure 2 This is a schematic diagram of the AGV's travel path according to an exemplary embodiment; Figure 3 This is a schematic diagram of an AGV obstacle avoidance driving path according to an exemplary embodiment. Detailed Implementation
[0022] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the invention as detailed in the appended claims.
[0023] In one embodiment, Figure 1 This is a schematic diagram illustrating the steps of a linear tracking control method for an AGV according to an exemplary embodiment. See also... Figure 1 This paper provides a linear tracking control method for AGVs, applied to the AGV vehicle end, including: Step S11: Receive a set of points representing the AGV's travel path sent by the scheduling terminal via the network; the travel path consists of multiple line segments, and the scheduling terminal extracts the starting point, target point, and intermediate point from each line segment and integrates them into a set of points; the distance between the intermediate point and the target point is a preset distance.
[0024] In practice, the scheduling terminal in this embodiment employs a three-point path description protocol, using a simplified set of point data to fully describe the AGV's travel path. First, the scheduling terminal decomposes the complete path the AGV needs to travel (composed of multiple line segments) into multiple interconnected line segments. For each line segment, the starting point (the coordinates of the line segment's beginning), the target point (the coordinates of the line segment's ending), and the intermediate point (a point at a preset distance from the target point) are extracted. The intermediate point is specifically used to determine the precise direction of the line segment. See also... Figure 2 The third line segment indicates the starting point P0, the intermediate point P1, and the target point P2. All the three-point descriptions of all line segments are sequentially integrated into a unified point set and sent to the AGV vehicle via a wireless network.
[0025] In a preferred embodiment, the number of points in the point set used to represent the AGV's travel path is 2n+1, where n is the number of line segments in the travel path. The intersection of adjacent line segments is both the target point of the previous line segment and the starting point of the next line segment.
[0026] For example, when a complex path is formed by sequentially connecting n line segments, the connection point (intersection) of adjacent line segments is the target point of the preceding line segment and the starting point of the immediately following line segment. These two points are essentially the same spatial point on the map. This shared-point design avoids redundant data transmission, thus minimizing data volume while ensuring path continuity. For instance, a path composed of two line segments can be fully described using only 5 points, instead of the 6 points required for independent description, significantly improving the efficiency of data transmission and parsing.
[0027] Preferably, the distance between the intermediate point and the target point is 1 mm. The intermediate point and the target point are used to calculate the heading angle, and the 1 mm distance is mathematically sufficient to ensure the accuracy of the direction calculation and avoid the uncertainty of direction caused by the coincidence of the two points; in practical applications, it is also a value that can be stably processed by the control system and will not cause instability in the numerical calculation due to being too small.
[0028] Understandably, compared to the densely transmitted path point sequences, the three-point description method significantly reduces data transmission volume. For n line segments, only 2n+1 points are needed to completely describe the path. By clearly defining the path direction through the micro-scale spatial-temporal relationship between the intermediate point and the target point, directional ambiguity is avoided. After receiving the point set, the AGV can quickly reconstruct the original path with minimal computational burden. The streamlined data packets reduce transmission latency and improve communication success rate in unreliable network environments.
[0029] Step S12: Based on the point set, obtain the straight path and straight heading angle of each line segment on the driving path.
[0030] In practice, after receiving the point set sent by the scheduling system, the AGV first parses and reconstructs the path information. Specifically, the onboard control system reads the points in the point set sequentially and divides the point set into multiple "three-point groups" in groups of three. Each three-point group uniquely corresponds to a line segment in the driving path. For each three-point group (including the starting point P0, the intermediate point P1, and the target point P2), the AGV can accurately obtain the straight path and straight heading angle of the line segment through geometric calculations.
[0031] In a preferred embodiment, obtaining the straight path and straight heading angle of each line segment on the driving path based on the point set includes: the point set records the coordinate data of each point in the AGV path coordinate system; the straight line equation of each line segment is obtained based on the starting point and target point of each line segment in the point set, which is used to represent the straight path; and the straight heading angle of each line segment is obtained based on the midpoint and target point of each line segment in the point set.
[0032] In practice, the point set records the coordinate data of each point in the AGV path coordinate system in a structured manner. Therefore, based on the coordinate values of the starting point and the target point of the line segment in the coordinate system, the system calculates the equation of the line segment using the basic geometric principle of determining a straight line from two points. This equation accurately describes the geometric position and direction of extension of the line segment in the two-dimensional plane in analytical form (such as the general form Ax+By+C=0 or the slope-intercept form y=kx+b). The calculation of the straight-line heading angle depends on the relative positional relationship between the intermediate point P1 and the target point P2. The heading angle of the line segment is obtained by calculating the azimuth angle of the direction vector formed by these two points. Since the intermediate point P1 is set at a preset distance (e.g., 1 mm) close to the target point P2, the calculated heading angle can accurately represent the tangent direction of the line segment at its endpoint, i.e., the forward direction of the line segment. By processing each three-point group in the point set in sequence, the AGV can completely reconstruct the straight path and straight heading angle of each line segment of the entire driving path, laying the foundation for subsequent high-precision tracking control based on the LQR algorithm.
[0033] Since the forward and reverse directions cannot be distinguished solely by the starting point P0 and the target point P2, the path's direction of travel is clearly defined by the slight offset between the intermediate point P1 and the target point P2.
[0034] Step S13: Obtain the AGV's current position and current heading angle through the AGV's sensors.
[0035] AGVs acquire their own position and orientation information in real time by integrating multiple onboard sensors. For example, AGVs utilize sensors such as laser SLAM systems, encoders, and inertial measurement units (IMUs) to obtain their current position (including X and Y coordinates) and current heading angle through multi-sensor data fusion technology. The laser SLAM system scans environmental feature point clouds and matches them with a pre-built map to provide an absolute position estimate of the AGV in the global coordinate system; the encoder records the number of rotations of the drive wheels and calculates the AGV's displacement change relative to the previous moment based on a trajectory extrapolation algorithm; while the IMU measures the AGV's angular velocity and linear acceleration using gyroscopes and accelerometers, which is particularly helpful in providing accurate short-term heading angle changes and motion attitude information. Through data fusion algorithms such as Kalman filtering, the AGV can optimally integrate the measurements from these different sensors, ultimately outputting a more stable and reliable current position and heading angle.
[0036] Step S14: Calculate the lateral error between the AGV's current position and the current straight path, calculate the heading error between the AGV's current heading angle and the heading angle of the current straight path, and integrate them into a state error vector.
[0037] In a preferred embodiment, calculating the lateral error between the AGV's current position and the current straight path, and calculating the heading error between the AGV's current heading angle and the heading angle of the current straight path, includes: calculating the projection point of the AGV's current position on the straight line equation of the line segment based on the coordinate data of the AGV's current position in the AGV path coordinate system; calculating the vector from the projection point to the AGV's current position as the lateral error; and calculating the difference between the AGV's current heading angle and the heading angle of the straight path as the heading error.
[0038] In practice, firstly, the system calculates the perpendicular projection point of the AGV's current position on the equation of the line containing the current tracking segment using a geometric projection algorithm, based on the coordinates of the AGV's current position in the AGV path coordinate system. This projection point is calculated using a vector projection method, obtained by solving for the shortest perpendicular from the AGV's current position to the line; its physical meaning is the AGV's closest reference point on the ideal path. Next, the system calculates a directional vector pointing from this projection point to the AGV's current position. The magnitude of this vector is the absolute value of the lateral error, while the direction of the vector determines the sign of the lateral error (usually, the left side of the path is positive and the right side is negative), thus obtaining a lateral error value with directional significance. Simultaneously, the system calculates the angle difference between the AGV's current actual heading angle obtained through sensor fusion and the expected heading angle calculated using the intermediate point and the target point. This difference is then normalized to ensure it falls within the reasonable range of [-π, π], ultimately yielding an accurate heading error characterizing the directional deviation.
[0039] Finally, the lateral error e y and heading error e θ They are integrated into a single state error vector: x=[e y ,e θ ] T Where T is the transpose. This error vector accurately characterizes the pose deviation of the AGV relative to the desired path, providing a direct input for the state feedback of the subsequent LQR optimal controller, thereby driving the AGV to converge smoothly and accurately to the target path.
[0040] Step S15: Multiply the state error vector with the gain matrix K to obtain the AGV control quantity; the gain matrix K is obtained offline using the LQR algorithm based on the linearization model of the AGV and the weight matrix.
[0041] In practice, the AGV control system performs matrix multiplication on the calculated state error vector and the gain matrix K to obtain the optimal control input. This process is based on the optimal control theory of the Linear Quadratic Regulator (LQR). The gain matrix K is the optimized result obtained offline through the LQR algorithm, and its calculation process is based on the linearized dynamic model of the AGV and the weight matrices Q and R. The weight matrix Q is used to penalize the magnitude of the state error, which determines the system's requirements for path tracking accuracy; while the weight matrix R is used to penalize the magnitude of the control input, affecting the smoothness of the system's control behavior and energy consumption. By solving the algebraic Riccati equation, the optimal gain matrix K that minimizes the quadratic performance index function can be obtained. This strategy of offline calculation and online application advances the complex calculation process, ensuring that the AGV only needs to perform efficient matrix multiplication operations during real-time control, thus satisfying both the stringent requirements for real-time control and guaranteeing optimal control of path tracking performance.
[0042] Step S16: Control the AGV vehicle to move according to the AGV control input.
[0043] Based on the calculated AGV control inputs, the AGV executes corresponding driving actions. These control inputs typically include speed and steering commands. The AGV's underlying control system converts these commands into PWM signals for the drive motors and control signals for the steering servo motors, enabling precise adjustment of the drive wheel speeds and steering angles.
[0044] This control variable, based on optimal control theory, causes the AGV to adjust its trajectory towards a straight line during adjustment, gradually bringing its travel path closer to a straight line without overshoot. This method ensures that the AGV travels along the target path with a smooth and stable motion, effectively avoiding the "snake-like" trajectory and overshoot phenomenon common in traditional control methods, thus achieving high-precision and high-efficiency path tracking performance.
[0045] In a preferred embodiment, the method further includes: pre-extracting the starting point, target point, and intermediate point of the next line segment from the point set; calculating the straight path and straight heading angle of the next line segment; calculating the heading angle difference between the straight heading angle of the current line segment of the AGV and the straight heading angle of the next line segment; multiplying the heading angle difference with the gain matrix K to obtain the feedforward control quantity of the AGV at the intersection of the two line segments; and controlling the AGV to move using the feedforward control quantity when the AGV reaches the intersection of the two line segments.
[0046] In this embodiment, a forward-looking feedforward control mechanism is introduced to further improve the smoothness of AGV transitions between continuous path segments. Specifically, the AGV control system, while tracking the current line segment, pre-extracts the starting point, target point, and intermediate point of the next adjacent line segment from the received point set, and calculates the straight-line path geometry and its heading angle for the next line segment. Subsequently, the system calculates the angle difference between the heading angle of the current line segment and the heading angle of the next line segment. This difference represents the ideal turning radius that the AGV needs to perform at the path intersection. This heading angle difference is used as a feedforward input and multiplied by the gain matrix K obtained offline based on the AGV's dynamic characteristics to generate a feedforward control quantity for the path switching point. By combining the feedforward control quantity with the LQR feedback control quantity, when the AGV travels to the intersection of two line segments, this composite control quantity is applied to the AGV's actuator, enabling the AGV to anticipate changes in path direction in advance and achieve smoother and more natural heading adjustments. This effectively avoids the overshoot or oscillation phenomenon that may occur at path turning points in traditional pure feedback control, and significantly improves the overall stability and ride comfort of continuous path tracking.
[0047] In a preferred embodiment, the method further includes: continuously scanning the environment ahead using the AGV's sensors to generate point cloud data; if a static obstacle is detected on the AGV's travel path based on the point cloud data, then obtaining the obstacle outline of the static obstacle; based on the obstacle outline, determining at least one safe point, and using the AGV's current position as the obstacle avoidance starting point; generating a temporary point set to represent a temporary obstacle avoidance path based on the obstacle avoidance starting point and the safe point; the temporary obstacle avoidance path consists of at least two line segments, from which a starting point, a target point, and an intermediate point are extracted and integrated into a temporary point set; inserting the temporary point set into the point set representing the AGV's original travel path to enable the AGV to avoid the static obstacle; and deleting the temporary point set from the point set when the AGV returns to the original travel path.
[0048] In practical application, this embodiment further enhances the AGV's autonomous obstacle avoidance capability in complex environments. Specifically, the AGV continuously scans the environment ahead using onboard sensors such as LiDAR, generating high-precision point cloud data in real time.
[0049] See Figure 3When the system identifies a static obstacle on the AGV's original travel path using point cloud data processing algorithms, it first uses point cloud clustering and contour extraction techniques to obtain the precise outer contour of the obstacle. Based on this contour information, the system calculates at least one safe point (A, B, C) to the side of the obstacle using a path planning algorithm. The calculation of safe points can be performed as the AGV travels along route NABC. For example, when the AGV is at point N, only point A can be calculated as a safe point. As it travels to point A, it gradually calculates point B as a safe point based on the contour information. While traveling on line segment AB, it gradually identifies point C as a safe point based on the contour information, and this point C is located on the original path.
[0050] Simultaneously, the system determines the real-time position of the AGV when it detects an obstacle as the starting point N of the obstacle avoidance path. Next, based on this obstacle avoidance starting point and safety point, the system generates a temporary obstacle avoidance path consisting of at least two line segments using the same description protocol as the original path. The system extracts the starting point, target point, and intermediate point from each line segment and integrates them into a temporary point set. This temporary point set is dynamically inserted into the original path point set currently being tracked by the AGV, allowing the AGV to immediately switch to the obstacle avoidance path and smoothly bypass the obstacle. Once the AGV confirms through sensors that it has successfully avoided the obstacle and returned to the original travel path, the system removes the temporarily inserted obstacle avoidance point set from the current point set, allowing the AGV to resume tracking the original path, thus achieving fully automated obstacle detection, avoidance, and path recovery functions.
[0051] On the other hand, a linear tracking control system for an AGV is provided, comprising: The scheduling terminal is used to obtain the travel path of the AGV, which consists of multiple line segments, extract the starting point, target point and intermediate point from each line segment, and integrate them into a point set; the distance between the intermediate point and the target point is a preset distance; and send the point set to the AGV vehicle end through the network. At the AGV end, based on the set of points, the system obtains the straight path and heading angle of each line segment on the driving path; acquires the AGV's current position and heading angle using its sensors; calculates the lateral error between the AGV's current position and the current straight path, and calculates the heading error between the AGV's current heading angle and the heading angle of the current straight path, integrating these into a state error vector; multiplies the state error vector by a gain matrix K to obtain the AGV control quantity; the gain matrix K is calculated offline using the LQR algorithm based on the AGV's linearization model and weight matrix; and controls the AGV's movement based on the AGV control quantity.
[0052] In a preferred embodiment, the system further includes: a human-machine interface; the scheduling terminal is also used to acquire a real-world scene map and display the real-world scene map through the human-machine interface; receive a driving path drawing instruction input by the user, and generate a driving path for the AGV composed of multiple line segments according to the driving path drawing instruction.
[0053] The human-machine interface provided in this embodiment greatly enhances the visualization and ease of operation of path planning. The dispatching terminal first acquires map data of the actual work scenario. These maps are typically pre-built using laser SLAM technology and include terrain features and fixed obstacle information in the work environment. The dispatching terminal then graphically displays this actual scenario map to the operator through the human-machine interface. The operator sends instructions to draw the desired AGV travel path on the displayed map; the system receives these user-input travel path drawing instructions in real time and intelligently converts them into a structured travel path composed of multiple line segments. This interactive method not only lowers the operational threshold and makes path planning intuitive and simple, but also ensures that the generated path accurately reflects the actual work requirements, laying a solid foundation for subsequent path optimization and precise tracking.
[0054] In a preferred embodiment, the scheduling terminal is further configured to obtain the original path containing the curved portion; divide the curved portion according to a preset fixed arc length; generate corresponding line segments based on the start and end points of each segmented curve to represent the curved portion with multiple line segments; and replace the curved portion in the original path with the obtained multiple line segments to obtain the AGV's travel path composed of multiple line segments.
[0055] The scheduling terminal provided in this embodiment also has intelligent path normalization processing capabilities, which can effectively handle complex original paths that include curved sections.
[0056] The specific implementation process is as follows: The dispatch terminal first acquires the original path data, which may contain curved sections, drawn or imported by the user. For the curved sections, the system uses a preset fixed arc length segmentation algorithm to discretize the continuous curve into multiple curve segments. Then, the start and end points of each curve segment are connected by straight lines to generate corresponding approximate line segments. Through this "straight line to curve" approach, the original curved section is transformed into a polyline path composed of multiple line segments connected end to end. Finally, the system replaces the curved sections in the original path with these newly generated line segment sequences, thus obtaining a standardized driving path composed entirely of straight line segments.
[0057] This method preserves the basic shape of the original path and conforms to the three-point path description protocol requirements proposed in this embodiment, providing standardized input for subsequent path coding and AGV tracking control, and ensuring the system's broad adaptability to paths of different shapes.
[0058] It is understood that the same or similar parts in the above embodiments can be referred to each other, and the contents not described in detail in some embodiments can be referred to the same or similar contents in other embodiments.
[0059] It should be noted that in the description of this invention, the terms "first," "second," etc., are used for descriptive purposes only and should not be construed as indicating or implying relative importance. Furthermore, in the description of this invention, unless otherwise stated, "a plurality of" means at least two.
[0060] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing a particular logical function or process, and the scope of the preferred embodiments of the invention includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as will be understood by those skilled in the art to which embodiments of the invention pertain.
[0061] It should be understood that various parts of the present invention can be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.
[0062] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.
[0063] Furthermore, the functional units in the various embodiments of the present invention can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.
[0064] The storage media mentioned above can be read-only memory, disk, or optical disk, etc.
[0065] In the description of this specification, references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.
[0066] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.
Claims
1. A linear tracking control method for an AGV, applied to the AGV vehicle end, characterized in that, include: The system receives a set of points representing the AGV's travel path from a scheduling terminal via a network; the travel path consists of multiple line segments. The system consists of a scheduling terminal that extracts the starting point, target point, and intermediate point from each line segment and integrates them into a point set; the distance between the intermediate point and the target point is a preset distance. Based on the set of points, the straight path and straight heading angle of each line segment on the driving path are obtained; The AGV's current position and heading angle are obtained through its sensors. Calculate the lateral error between the AGV's current position and the current straight path, calculate the heading error between the AGV's current heading angle and the heading angle of the current straight path, and integrate them into a state error vector; The state error vector is multiplied by the gain matrix K to obtain the AGV control quantity; the gain matrix K is calculated offline using the LQR algorithm based on the linearization model of the AGV and the weight matrix. The AGV is controlled to move according to the AGV control parameters.
2. The method according to claim 1, characterized in that, Based on the set of points, the straight path and straight heading angle of each line segment on the driving path are obtained, including: The point set records the coordinate data of each point in the AGV path coordinate system; Based on the starting point and target point of each line segment in the point set, the straight line equation of the line segment is obtained, which is used to represent the straight line path; Based on the midpoint and target point of each line segment in the point set, the straight-line heading angle of the line segment is obtained.
3. The method according to claim 2, characterized in that, Calculate the lateral error between the AGV's current position and its current straight path, and calculate the heading error between the AGV's current heading angle and its current straight-line heading angle, including: Based on the coordinate data of the AGV's current position in the AGV path coordinate system, calculate the projection point of the AGV's current position on the straight line equation of the line segment. Calculate the vector from the projection point to the current position of the AGV itself, as the lateral error; The difference between the AGV's current heading angle and the straight heading angle is calculated as the heading error.
4. The method according to claim 1, characterized in that, Also includes: The starting point, target point, and intermediate point of the next line segment are pre-extracted from the point set, and the straight path and heading angle of the next line segment are calculated. Calculate the difference between the heading angle of the current line segment and the heading angle of the next line segment; Multiplying the heading angle difference with the gain matrix K yields the feedforward control value of the AGV at the intersection of the two line segments; When the AGV travels to the intersection of the two line segments, the feedforward control quantity is used to control the AGV to move.
5. The method according to claim 1, characterized in that, Also includes: The AGV's sensors continuously scan the environment ahead, generating point cloud data; If a static obstacle is detected on the AGV's travel path based on the point cloud data, the obstacle outline of the static obstacle is obtained. Based on the outline of the obstacle, at least one safe point is determined, and the current position of the AGV itself is used as the starting point for obstacle avoidance. Based on the obstacle avoidance starting point and the safe point, a temporary point set is generated to represent a temporary obstacle avoidance path; The temporary obstacle avoidance path consists of at least two line segments. The starting point, target point, and intermediate point are extracted from each line segment and integrated into a temporary point set. The temporary point set is inserted into the point set representing the original travel path of the AGV so that the AGV avoids the static obstacle; When the AGV returns to its original travel path, the temporary point set is removed from the point set.
6. The method according to claim 1, characterized in that, The point set used to represent the AGV's travel path contains 2n+1 points, where n is the number of line segments in the travel path. The intersection of adjacent line segments is both the target point of the previous line segment and the starting point of the next line segment.
7. The method according to claim 1, characterized in that, The distance between the midpoint and the target point is 1 millimeter.
8. A linear tracking control system for an AGV, characterized in that, include: The scheduling terminal is used to obtain the travel path of the AGV, which consists of multiple line segments, extract the starting point, target point and intermediate point from each line segment, and integrate them into a point set; the distance between the intermediate point and the target point is a preset distance; and send the point set to the AGV vehicle end through the network. At the AGV end, based on the set of points, the system obtains the straight path and heading angle of each line segment on the driving path; acquires the AGV's current position and heading angle using its sensors; calculates the lateral error between the AGV's current position and the current straight path, and calculates the heading error between the AGV's current heading angle and the heading angle of the current straight path, integrating these into a state error vector; multiplies the state error vector by a gain matrix K to obtain the AGV control quantity; the gain matrix K is calculated offline using the LQR algorithm based on the AGV's linearization model and weight matrix; and controls the AGV's movement based on the AGV control quantity.
9. The system according to claim 8, characterized in that, Also includes: Human-computer interaction interface; The scheduling terminal is also used to acquire a real-world scene map and display the real-world scene map through a human-computer interaction interface; receive a driving path drawing instruction input by the user, and generate a driving path for the AGV consisting of multiple line segments according to the driving path drawing instruction.
10. The system according to claim 8, characterized in that, The scheduling terminal is also used to obtain the original path containing the curved portion; divide the curved portion according to a preset fixed arc length, generate corresponding line segments based on the start and end points of each segmented curve, so as to represent the curved portion with multiple line segments; replace the curved portion in the original path with the obtained multiple line segments to obtain the AGV's driving path composed of multiple line segments.