AGV dynamic obstacle avoidance system based on PLC edge computing
By introducing PLC edge computing into AGVs, combined with multimodal sensors and dynamic prediction modules, real-time obstacle avoidance of AGVs in dynamic obstacle environments is achieved, solving the problems of response lag and decision accuracy in traditional systems, and improving the autonomous obstacle avoidance capability and environmental adaptability of AGVs.
Patent Information
- Application Number
- CN202511860476.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-11
- Publication Date
- 2026-02-06
- Estimated Expiration
- 2045-12-11
AI Technical Summary
Traditional AGV obstacle avoidance systems rely on central servers or high-performance computing platforms, resulting in complex system architecture, high deployment costs, and delayed obstacle avoidance response. They are prone to collisions, especially in network latency or signal blind spots. Furthermore, PLCs have poor accuracy and weak adaptability in obstacle avoidance decisions in dynamic obstacle environments.
A dynamic obstacle avoidance system based on PLC edge computing is adopted. It senses obstacle information through multimodal sensors, combines weighted and confidence fusion modeling to predict dynamic danger zones, and uses local path planning with boundary constraints to rewrite motion trajectory instructions in real time and optimize the path cost function to achieve autonomous obstacle avoidance.
Real-time perception and autonomous avoidance of dynamic obstacles at the edge enhance the independence, real-time performance, and environmental adaptability of the AGV system, reduce operational deviations and response lags, and enable continuous learning and optimization of obstacle avoidance behavior.
Smart Images

Figure CN121300381B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of mobile robot control, and particularly relates to an AGV dynamic obstacle avoidance system based on PLC edge computing. BACKGROUND
[0002] In modern industrial automation scenarios, automated guided vehicles (AGV) are widely used in warehousing, manufacturing, logistics and other fields to realize automatic material handling and transportation. Traditional AGV obstacle avoidance systems rely on central servers or high-performance industrial computers for global path planning and obstacle detection. The system architecture is complex, the deployment cost is high, and it is strongly dependent on network communication real-time. It is easy to have obstacle avoidance response lag in network delay, packet loss or signal blind area, and even collision accidents, affecting production safety and efficiency.
[0003] In recent years, with the advent of edge computing, some research attempts to decentralize obstacle avoidance logic to AGV or edge nodes for local decision-making processing. However, due to the complex and variable AGV operating environment and the high uncertainty of obstacle state, traditional edge computing devices such as embedded MCUs and low-power ARM chips are difficult to simultaneously realize high-speed data processing and complex dynamic obstacle avoidance algorithms under resource constraints, which may cause obstacle avoidance delay or misjudgment.
[0004] PLC (Programmable Logic Controller) has the advantages of high real-time and high reliability, but its application in AGV dynamic obstacle avoidance field is still blank. Traditional PLC control system mainly uses sequential logic control, which lacks the ability to dynamically perceive and calculate complex nonlinear obstacle trajectories. Moreover, PLC systems are generally used for device control and are not deeply integrated with AGV sensor data, resulting in poor precision and weak adaptability of obstacle avoidance decision-making in dynamic obstacle environments. SUMMARY
[0005] The purpose of the present application is to provide an AGV dynamic obstacle avoidance system based on PLC edge computing to solve the problems in the background art.
[0006] In order to achieve the above purpose, the present application provides the following technical solution: an AGV dynamic obstacle avoidance system based on PLC edge computing, comprising:
[0007] A perception acquisition module: AGV obtains surrounding environment information through a multi-modal sensor installed on the front of the vehicle body, and the multi-modal sensor is used to collect obstacle distance, speed and orientation information;
[0008] A modeling module: based on the received multi-modal sensor data, a current state cache table of the obstacle is constructed based on weight confidence fusion, and the trajectory features of each obstacle object are stored in the PLC;
[0009] Dynamic prediction module: based on the trajectory characteristics of the obstacles in the cache table, a prediction interval forward deduction algorithm is used to calculate the dynamic dangerous area boundary of the obstacles within the preset time window; if the current path of the AGV overlaps with any predicted dangerous area, the obstacle avoidance judgment stage is entered;
[0010] Path planning module: according to the current position of the AGV, the target point and the environment map, a local path reconstruction algorithm with boundary constraint is used to plan a feasible path that avoids dynamic obstacles;
[0011] Motion control module: the planned path is converted into motion control instructions, the original motion trajectory instruction set of the AGV is rewritten in real time, and the AGV is controlled to perform dynamic obstacle avoidance action;
[0012] Parameter optimization module: after the obstacle avoidance is completed, the obstacle avoidance decision result and the actual AGV running trajectory are recorded in the historical behavior database, and the subsequent prediction interval parameters and path cost function are adjusted.
[0013] Preferably, the multi-modal sensor includes a laser radar, an ultrasonic sensor and an infrared sensor.
[0014] Preferably, the trajectory characteristic parameters include obstacle velocity vector, acceleration change rate and relative motion direction.
[0015] Preferably, the construction of the current state cache table of the obstacle includes:
[0016] The collected obstacle data is respectively formatted and unified as a distance, direction and speed information structure body corresponding to a timestamp;
[0017] The obstacle information with the same spatial identifier is weighted and integrated according to the weight, to generate a single state description of the obstacle at the current time;
[0018] The state description is written into the preset cache area in the PLC to form an obstacle state cache table updated in time sequence.
[0019] Preferably, the calculation of the dynamic dangerous area boundary of the obstacle within the preset time window includes:
[0020] Obtain the trajectory characteristic parameters of each obstacle object in the cache table, including velocity vector, acceleration change rate and relative motion direction;
[0021] According to the velocity vector and the acceleration change rate, the possible positions of the obstacle at future time points are calculated;
[0022] The predicted position points are extended with a fixed safety margin based on the current size of the obstacle to form an envelope area of the continuous predicted positions;
[0023] The envelope region boundary is defined as a dynamic dangerous region boundary.
[0024] Preferably, if the current path of the AGV overlaps with any predicted dangerous region, the AGV enters an obstacle avoidance determination stage, including:
[0025] The planned path between the current position and the target position of the AGV is divided into multiple path nodes at fixed intervals, and the spatial coordinates of each node are extracted;
[0026] The path nodes are sequentially detected for spatial coincidence with the predicted dangerous region boundary, and if any node falls within the predicted region, a path conflict flag is generated;
[0027] It is determined whether the number of nodes corresponding to the conflict flag exceeds a preset minimum conflict threshold, and if so, it is determined that the path is not passable.
[0028] Preferably, the local path reconstruction algorithm with boundary constraints is used to plan a feasible path that avoids dynamic obstacles, including:
[0029] The boundary information of the passable region in the environment map between the current position and the target position of the AGV is extracted, and a local navigation search range is generated;
[0030] The dynamic dangerous region is marked as an impassable region in the map, and a safety buffer boundary is set for the edge of the obstacle in the navigation search range;
[0031] A path search method based on a grid map is used in the local range to generate a feasible path that satisfies the shortest path priority and does not cross the buffer boundary.
[0032] Preferably, the planned path is converted into motion control instructions, the original motion trajectory instruction set of the AGV is rewritten in real time, and the AGV performs dynamic obstacle avoidance actions, including:
[0033] The continuous nodes in the planned path are interpolated and fitted to generate a continuous trajectory curve containing smooth turning segments and constant speed forward segments;
[0034] According to the geometric characteristics of each segment in the trajectory curve, the corresponding linear velocity and angular velocity parameters are calculated to generate a speed control instruction sequence;
[0035] The control instructions are written into the motion control registers inside the PLC in real time, and the corresponding segments in the original motion trajectory instruction set of the AGV are replaced;
[0036] The PLC adjusts the speed and steering of the drive motor according to the updated control instructions to complete the actual execution of the dynamic obstacle avoidance path.
[0037] Preferably, the adjustment of the subsequent prediction interval parameter and the path cost function comprises:
[0038] After the obstacle avoidance is completed, the path planning data generated in the current obstacle avoidance process is compared with the actual running track of the AGV to extract path deviation information;
[0039] The path deviation information and the actual moving track of the dynamic obstacle are recorded in the historical behavior database in the PLC;
[0040] According to the path deviation size and the prediction position error, the time length of the next prediction interval is dynamically adjusted;
[0041] Based on the path offset and time consumption in actual operation, the weight parameters in the path cost function are updated.
[0042] In the above technical solution, the technical effects and advantages provided by the present application are as follows:
[0043] 1. The present application constructs a full-process dynamic obstacle avoidance method for AGV by deeply integrating multi-modal perception, trajectory modeling, dynamic prediction, path planning and motion control in the PLC control system. Without relying on a central server or a high-performance computing platform, the method realizes real-time perception and autonomous avoidance of dynamic obstacles on the edge side, effectively improving the independence, real-time performance and environmental adaptability of the AGV system.
[0044] 2. Compared with the existing AGV obstacle avoidance system, the present application has the following significant technical advantages: by introducing a dynamic prediction boundary and a path cost function adaptive optimization mechanism, the system can adjust the prediction strategy and path selection logic according to the historical running deviation, thereby realizing continuous learning and effect optimization of the obstacle avoidance behavior; in addition, the path interpolation smoothing and multi-segment speed control instruction construction method improves the stability of the AGV motion process and the trajectory tracking accuracy, significantly reducing the running deviation and response lag. BRIEF DESCRIPTION OF DRAWINGS
[0045] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the drawings needed in the embodiments will be briefly introduced as follows. Obviously, the drawings in the following description are only some embodiments described in the present application, and other drawings can also be obtained by those skilled in the art based on these drawings.
[0046] Figure 1 The system module flowchart of the present application.
[0047] Figure 2 The method flowchart of the present application. DETAILED DESCRIPTION
[0048] In order to make the purposes, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are some but not all of the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by a person of ordinary skill in the art without creative work fall within the protection scope of the present application.
[0049] Embodiments, please refer to Figure 1 、 2 The AGV dynamic obstacle avoidance system based on PLC edge computing according to the present embodiment comprises:
[0050] The perception acquisition module: the AGV obtains surrounding environment information through a multi-modal sensor installed at the front of the vehicle body, and the multi-modal sensor is used to acquire obstacle distance, speed and orientation information.
[0051] The modeling module: according to the received multi-modal sensor data, a current state cache table of the obstacle is constructed based on weight confidence fusion, and the trajectory features of each obstacle object are stored in the PLC;
[0052] The dynamic prediction module: based on the trajectory features of the obstacles in the cache table, a prediction interval forward deduction algorithm is used to calculate the dynamic dangerous area boundary of the obstacles within a preset time window; if the current path of the AGV overlaps with any predicted dangerous area, the obstacle avoidance determination stage is entered;
[0053] The path planning module: according to the current position of the AGV, the target point and the environment map, a local path reconstruction algorithm with boundary constraints is used to plan a feasible path that avoids the dynamic obstacle;
[0054] The motion control module: the planned path is converted into a motion control instruction, the original motion trajectory instruction set of the AGV is rewritten in real time, and the AGV is controlled to perform the dynamic obstacle avoidance action;
[0055] The parameter optimization module: after the obstacle avoidance is completed, the obstacle avoidance decision result and the actual AGV running trajectory are recorded in the historical behavior database, and the subsequent prediction interval parameters and path cost functions are adjusted.
[0056] The perception acquisition module is arranged at the front of the AGV vehicle body and is used for information perception of the environment in front of the AGV travel path to realize acquisition and update of basic state parameters of the obstacle. The module mainly comprises various types of sensors for perceiving the spatial distribution characteristics of the obstacle.
[0057] In the embodiment, the perception acquisition module includes a laser radar, an ultrasonic sensor, and an infrared sensor. The sensors are respectively installed at different positions of the front end of the AGV body and are arranged at an angle to cover multiple perception directions and distance ranges in front of the AGV.
[0058] The laser radar is used to obtain two-dimensional or three-dimensional spatial distance information between the obstacle and the AGV, has high ranging accuracy and strong anti-interference ability, and is suitable for contour scanning of medium and long distance targets; the ultrasonic sensor is used to detect the position change of a near distance obstacle, and is particularly suitable for rapid response to a nearby obstacle when running at low speed; and the infrared sensor is used to supplement the identification of the obstacle in a space with intense light changes or narrow space, and to improve the stability and continuity of the overall environmental perception.
[0059] During the running of the AGV, the above-mentioned multi-modal sensors continuously work and collect the obstacle information that may exist in the space in front of the AGV in real time, including the obstacle distance, speed, and position information between the obstacle and the AGV.
[0060] The modeling module is used to uniformly process the multi-modal sensor data uploaded by the perception acquisition module, to establish a complete obstacle state cache table in the PLC, and to extract and store the trajectory feature information of each obstacle to support subsequent path prediction and dynamic obstacle avoidance judgment.
[0061] The original perception data formats uploaded by the multi-modal sensors (including the laser radar, the ultrasonic sensor, and the infrared sensor) are not unified, and there are problems such as different time stamps and different data dimensions. Therefore, first, the output of each type of sensor is formatted and converted into a data unit with a unified structure. The data unit is organized in a standard structure body, which includes: data acquisition time (in milliseconds); spatial distance between the obstacle and the AGV (in meters); relative azimuth angle (in degrees); instantaneous speed value of the obstacle (in meters / second, if the speed information is not directly provided in the original data, then the distance difference between adjacent time intervals is divided by the time difference to obtain); the structure body is cached in the PLC in the form of an array and is continuously called in the subsequent processing steps.
[0062] The obstacle information of different sources is fused. Specifically, for the obstacle data identified by different sensors in the same time window and with similar spatial positions, a single state description of one obstacle needs to be combined. Whether two obstacles are the same object is determined according to whether the Euclidean distance calculation value of the spatial coordinates is less than the set spatial coincidence judgment distance, preferably 0.3 meters. If the coincidence judgment condition is met, the distance, direction and speed information are weighted according to the preset weight coefficient. The weight coefficient is set according to the data deviation generated by each type of sensor in the historical running process. The weight of the laser radar is preferably set to 0.5, the weight of the ultrasonic sensor is 0.3, and the weight of the infrared sensor is 0.2. The weighting process is processed by weighted average, that is, the data of the three sensors are multiplied by their perception values according to the weight coefficient, and then the products are added and summed, and finally divided by the total weight. The integration result forms a single state description of the obstacle at the current time, and marks the spatial identification number and time stamp.
[0063] The generated obstacle state description is written into the local cache area of the PLC for establishing a state cache table. The state cache table is organized in chronological order, that is, the data of each obstacle object is arranged in order from old to new, forming a dynamically updated data structure.
[0064] Each cache record corresponds to an obstacle object and contains the following fields: obstacle number, time stamp, distance, azimuth angle, and speed. When new data arrives, old data will be replaced according to the set cache upper limit (preferably nearly 20 time periods), to ensure the real-time and limited nature of the cache table data.
[0065] On the basis of the state cache table, the trajectory features of each obstacle object are extracted and stored independently in the PLC for supporting subsequent dynamic prediction operations. The extracted trajectory features include:
[0066] Velocity vector: calculated from the current position and the position at the last time point, the direction is the straight line direction of the current position relative to the last position, and the modulus is the displacement in unit time;
[0067] Acceleration change rate: calculated by the difference between the velocity vectors of two consecutive time periods, to reflect the trend of the change in the speed of the obstacle;
[0068] Relative motion direction: taking the current motion direction of the AGV as the reference axis, the angle between the motion direction of the obstacle and the travel direction of the AGV is calculated, to determine whether the obstacle is approaching, traveling in the same direction or passing laterally.
[0069] The trajectory feature is associated with the obstacle state description synchronously after each update and is written into the trajectory storage unit preset by the PLC. If the same obstacle is tracked in multiple consecutive time periods, the trajectory features thereof will form a sequence for subsequent dynamic behavior trend inference.
[0070] In the present application, the dynamic prediction module is used to predict the possible moving area of the obstacle in a future period of time based on the cached obstacle trajectory features, so as to determine whether there is a potential risk in the current path of the AGV. Specifically, it includes:
[0071] The trajectory feature parameters of each obstacle object are extracted from the state cache table, and the parameters include:
[0072] Velocity vector: calculated from the position change of the obstacle at the current time and the last time point, indicating the direction and speed of movement;
[0073] Acceleration change rate: calculated by the change of the two consecutive velocity vectors, used to describe the movement trend of the obstacle;
[0074] Relative movement direction: based on the current movement direction of the AGV, the angle relationship between the obstacle and the AGV is calculated, indicating whether the obstacle is moving towards the AGV.
[0075] The trajectory feature parameters provide a movement trend basis for subsequent position prediction.
[0076] According to the above trajectory features, multiple predicted positions of the obstacle in a future preset time window are calculated. The time window is a continuous time interval, preferably set to 2 seconds, divided into 20 prediction points at an interval of 100 milliseconds. The position calculation method of each prediction point is: taking the current obstacle position as the starting point, according to the direction of the velocity vector and the acceleration change trend, the position coordinates of each future time are gradually deduced. If the acceleration is not zero, the speed is adjusted according to the linear growth trend.
[0077] Each predicted position point is expanded by a fixed safety margin of 0.5 meters around the actual size of the obstacle to construct the safety coverage range of the point.
[0078] Then, the expanded areas of all prediction points are connected in spatial order to form a continuous envelope area covering the activity range of the obstacle in the entire prediction period.
[0079] The envelope area can be represented by a polygon structure or simplified as a set of grid areas for easy spatial relationship detection with the path.
[0080] The edge of the envelope region is taken as the boundary of the dynamic dangerous region, which is used to determine whether the AGV path overlaps with the dynamic dangerous region. The boundary information includes the outermost vertex coordinates or the boundary grid set, which is cached in the PLC in a structured form for calling by the obstacle avoidance judgment module.
[0081] After the construction of the dynamic dangerous region boundary is completed, it is necessary to determine whether the current path of the AGV will conflict with the region to decide whether to trigger the obstacle avoidance process. Specifically, the following steps are included:
[0082] The current planned path between the current position of the AGV and the target point is divided into a plurality of path nodes at a fixed interval, and the preferred interval is 0.2 meters.
[0083] For each node, its spatial coordinates (X, Y) are extracted and stored as a path node sequence. The number of nodes depends on the path length, and is usually 10 to 50.
[0084] The above path nodes are detected for spatial coincidence with the dynamic dangerous region boundary one by one. The detection method is to determine whether each node coordinate falls within the envelope region, and the preferred method is the point-in-polygon judgment method or the grid coincidence detection method. If the path node falls within the dangerous region, a path conflict flag is generated for the node.
[0085] The number of nodes with the generated path conflict flag is counted, and if the number exceeds a predetermined minimum conflict threshold, it is considered that the current path cannot be safely passed. The threshold is set according to the actual environment, and the preferred value is 3 or more consecutive conflict nodes.
[0086] In the present application, the path planning module is used to re-plan a safe and feasible local path based on the current position of the AGV, the target point and the environment map information when the current path of the AGV conflicts with the dynamic dangerous region, to realize dynamic obstacle avoidance control. Specifically, it includes:
[0087] When entering the path reconstruction phase, first, the boundary information of the passable region between the current position of the AGV and the target point is extracted from the existing environment map. The environment map is a two-dimensional occupancy grid map stored in the PLC, which includes the positions of static obstacles, travel lanes and field boundaries.
[0088] A rectangular region is formed by expanding a certain radius (preferably 5 meters) around the current position of the AGV, which is taken as the local navigation search range, and the path planning calculation is only performed in this range to reduce the calculation complexity and improve the real-time performance.
[0089] The region boundary is composed of grids marked as passable state (such as "0" value) in the map, and its range is determined by the map size and the AGV running environment.
[0090] In the map, the dynamic dangerous area output by the dynamic prediction module is mapped as an impassable area. Specifically, the map grid covered by the predicted area is modified to an "impassable" state, preferably marked with a value of "1".
[0091] To prevent the path from being too close to the edge of the obstacle, a safety buffer boundary is further set for all obstacle edges (including static and dynamic obstacles) in the map. The buffer boundary is an enclosed area extending outward from the obstacle edge, and its width is set according to the AGV body width and motion control error, preferably 0.3 meters.
[0092] The extension method is to mark the obstacle edge grid as the center and mark the grid in several layers around it to form an enlarged obstacle area to avoid the path from being close to the edge of the obstacle.
[0093] In the marked local navigation search range, a path search method based on the grid map is used for path planning. Preferably, the A* (A-star) path search algorithm is used, and its path cost function is composed of the following two parts:
[0094] The cumulative cost (actual path distance) from the starting point to the current node;
[0095] The heuristic cost (usually estimated by Euclidean distance or Manhattan distance) from the current node to the target point.
[0096] During the search process, the path is only allowed to expand in the grid marked as "passable", and all grids marked as dynamic dangerous area or buffer boundary are considered as obstacles that cannot be passed. Finally, a path sequence with the shortest length from the AGV's current position to the target point without crossing any obstacle area is output.
[0097] The generated path is a node set composed of a series of spatial coordinates, which is used for subsequent smoothing processing and trajectory control.
[0098] In the present application, the motion control module is used to convert the obstacle avoidance path generated by the path planning module into executable motion control instructions for the AGV, and to adjust the running state of the AGV in real time to ensure its safe and smooth completion of the obstacle avoidance task in a dynamic environment. This module completes the closed-loop execution of instruction reconstruction and motion control in the PLC control unit, specifically including:
[0099] First, the path node sequence output by the path planning module is reconstructed. To improve the continuity and controllability of the AGV's operation, an interpolation fitting method is used to convert the path nodes into continuous trajectory curves.
[0100] Preferably, a cubic spline interpolation method is used to fit the curve for every three consecutive nodes in the path, generating a trajectory segment with both a turning smooth segment and a straight segment.
[0101] The fitting process is implemented in the trajectory fitting function preset in the PLC, and the output result is a set of continuous trajectory points, each point containing two-dimensional space coordinates (X, Y) and its corresponding curvature information, as the basis for subsequent speed control calculation.
[0102] Based on the generated trajectory curve, the motion parameters of each trajectory segment are analyzed.
[0103] For straight line segments, set a constant linear speed, preferably in the range of 0.5 to 1.0 meters per second;
[0104] For curved segments, calculate the required angular velocity according to the curvature of the trajectory to ensure smooth turning within the turning radius limit of the AGV;
[0105] The angular velocity is determined by the inverse relationship of the radius of curvature, that is, the smaller the radius of curvature, the greater the angular velocity, and the linear speed needs to be reduced accordingly to avoid side slipping.
[0106] Finally, the speed command corresponding to each trajectory segment is calculated, including linear speed and angular speed, and a speed control command sequence is formed in time sequence, with each control period preferably being 100 milliseconds.
[0107] The generated speed control command sequence is written in real time to the motion control register inside the PLC control unit, which is a special cache area in the PLC for storing the effective motion commands of the AGV in the current running period.
[0108] During the writing process, compare the newly generated trajectory segment with the original motion trajectory command set, if there is path overlap or replacement relationship, then cover the new command in the corresponding position segment of the original command to ensure seamless connection of the obstacle avoidance path and the original task path.
[0109] The PLC automatically completes the instruction synchronization to avoid repeated control or instruction conflict.
[0110] The PLC controls the AGV chassis drive system through the communication interface according to the updated control command to complete speed adjustment and direction turning.
[0111] The linear speed command controls the motor speed;
[0112] The angular velocity command controls the rudder or differential steering system to realize curve trajectory tracking.
[0113] During execution, the PLC automatically reads the new command in the register every control period and executes it in sequence to realize real-time tracking and control of the AGV dynamic obstacle avoidance path. If there is still dynamic obstacle update in the trajectory, the system can repeat the above path planning and command reconstruction process to achieve dynamic response.
[0114] In the present application, the parameter optimization module is used to optimize the subsequent prediction interval setting and path planning strategy according to the deviation information of this path execution and the actual state of the obstacle after the AGV completes a dynamic obstacle avoidance operation, thereby improving the accuracy and self-adaptive ability of the system obstacle avoidance. Specifically, the following steps are included:
[0115] After the AGV completes the obstacle avoidance path execution, the system compares the coordinate values of all key nodes in the planned path with the corresponding positions recorded by the AGV in actual operation one by one.
[0116] The path deviation information is defined as the Euclidean distance between the actual running trajectory points of the AGV and the planned trajectory points. To improve the accuracy, the trajectory points at every 0.2 second interval are selected for comparison, and the average deviation and the maximum deviation are calculated.
[0117] The deviation value can reflect the influence of the current path control effect and the dynamic changes of the environment on the execution accuracy, and provide a basis for subsequent parameter adaptive adjustment.
[0118] The extracted path deviation information and the actual moving trajectory of the dynamic obstacle in the same time period are written into the historical behavior database set internally by the PLC. The database uses a structured data storage format, and each group of data record includes the following fields: obstacle avoidance path number; path planning key node coordinates; actual trajectory key point coordinates; deviation value of each key point; actual motion path of the obstacle in the corresponding time period.
[0119] The average path deviation and the prediction position error extracted in this obstacle avoidance are dynamically evaluated to determine the rationality of the prediction time window. If the average path deviation exceeds the set error threshold (preferably 0.3 meters), or the prediction point deviates from the actual position of the obstacle by more than a certain percentage (such as 30%), the prediction time window is adjusted.
[0120] The prediction time window is the time interval forward deduced when constructing the dynamic danger area, and is set to 2 seconds by default. According to the deviation size, the time window can be automatically adjusted within 1 to 3 seconds: when the deviation is small, the window length is extended to improve the long-term prediction ability; when the deviation is large, the window is shortened to improve the short-term response accuracy. The time window update strategy is dynamically loaded as a scheduling parameter in the PLC.
[0121] The path search in the path planning module uses a path cost function to optimize the path. The cost function is usually composed of multiple factors, such as path length, number of corner changes, distance from obstacle boundary, etc., and each factor is assigned a certain weight.
[0122] This module re-evaluates the influence of each factor in the path cost function according to the path deviation trend and running time in the historical record. For example:
[0123] If too many corners in the path execution cause instability, increase the weight of the "path corner change" factor;
[0124] If the obstacle avoidance path deviates significantly from the shortest path, increase the weight of the "path length" factor;
[0125] If the path deviates greatly when it is close to the obstacle, increase the weight of the safety cost of "distance to obstacle".
[0126] The new weight parameter is stored as an input configuration item of the path planning module, and is directly called in the next path reconstruction to realize path adaptive optimization based on historical running performance.
[0127] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited to this. Any person skilled in the art can easily think of changes or replacements within the technical scope disclosed in the present application, which should be covered within the protection scope of the present application.
Claims
1. An AGV dynamic obstacle avoidance system based on PLC edge computing, characterized in that: include: Perception and acquisition module: The AGV acquires information about the surrounding environment through multimodal sensors installed at the front of the vehicle body. The multimodal sensors are used to collect information on the distance, speed and orientation of obstacles. Modeling module: Based on the received multimodal sensor data, and using weighted confidence fusion, constructs a current state cache table for obstacles, and stores the trajectory features of each obstacle object inside the PLC; The construction of the current state cache table for obstacles includes: formatting the collected obstacle data into a unified structure of distance, orientation, and speed information corresponding to the timestamp; weighting and integrating obstacle information with the same spatial identifier to generate a single state description of the obstacle at the current moment; and writing the state description into a preset cache area inside the PLC to form an obstacle state cache table updated in chronological order. Dynamic prediction module: Based on the trajectory features of obstacles in the cache table, the prediction interval forward extrapolation algorithm is used to calculate the dynamic danger zone boundary of the obstacle within a preset time window; if the current path of the AGV overlaps with any predicted danger zone, the obstacle avoidance determination stage is entered. The calculation of the dynamic danger zone boundary of the obstacle within a preset time window includes: Obtain the trajectory feature parameters of each obstacle object in the cache table, including velocity vector, rate of change of acceleration, and relative motion direction; Calculate the possible locations of the obstacle at several future time points based on the velocity vector and the rate of change of acceleration. Each predicted location point is extended with a fixed safety margin based on the current size of the obstacle to form an envelope area of continuous predicted locations; The boundary of the envelope region is defined as the dynamic danger zone boundary. If the current path of the AGV overlaps with any predicted danger zone, the obstacle avoidance determination stage is entered, which includes: dividing the planned path from the current position of the AGV to the target position into multiple path nodes at fixed intervals and extracting the spatial coordinates of each node; performing spatial overlap detection between the path nodes and the boundary of the predicted danger zone in sequence; if any node falls into the predicted area, a path conflict flag is generated; and determining whether the number of nodes corresponding to the conflict flag exceeds a preset minimum conflict threshold. If it exceeds the threshold, the path is determined to be impassable. Path planning module: Based on the current position of the AGV, the target point, and the environmental map, a local path reconstruction algorithm with boundary constraints is used to plan a feasible path that avoids dynamic obstacles; The local path reconstruction algorithm with boundary constraints plans a feasible path around dynamic obstacles, including: Extract the boundary information of the passable area in the environmental map between the current position of the AGV and the target point, and generate a local navigation search range; Mark dynamic danger zones as impassable areas on the map and set safety buffer boundaries for the edges of obstacles within the navigation search range; Within a local area, a raster-based path search method is used to generate feasible paths that satisfy the shortest path priority and do not cross buffer boundaries. Motion control module: Converts the planned path into motion control instructions, rewrites the original motion trajectory instruction set of the AGV in real time, and controls the AGV to perform dynamic obstacle avoidance actions; Parameter optimization module: After obstacle avoidance is completed, the obstacle avoidance decision result and the actual AGV running trajectory are recorded into the historical behavior database, and the subsequent prediction interval parameters and path cost function are adjusted.
2. The AGV dynamic obstacle avoidance system based on PLC edge computing according to claim 1, characterized in that: The multimodal sensor includes lidar, ultrasonic sensors, and infrared sensors.
3. The AGV dynamic obstacle avoidance system based on PLC edge computing according to claim 1, characterized in that: The trajectory features include the obstacle velocity vector, the rate of change of acceleration, and the relative motion direction.
4. The AGV dynamic obstacle avoidance system based on PLC edge computing according to claim 1, characterized in that: The process of converting the planned path into motion control commands, rewriting the original motion trajectory command set of the AGV in real time, and controlling the AGV to perform dynamic obstacle avoidance actions includes: Interpolation fitting is performed on continuous nodes in the planned path to generate a continuous trajectory curve that includes smooth turning segments and constant speed forward segments. Based on the geometric characteristics of each segment in the trajectory curve, calculate the corresponding linear velocity and angular velocity parameters, and generate a speed control command sequence. The control instructions are written into the motion control register inside the PLC in real time and replace the corresponding segments in the original motion trajectory instruction set of the AGV. The PLC adjusts the speed and controls the steering of the drive motor according to the updated control instructions, thus completing the actual execution of the dynamic obstacle avoidance path.
5. The AGV dynamic obstacle avoidance system based on PLC edge computing according to claim 4, characterized in that: The adjustment of subsequent prediction interval parameters and path cost function includes: After obstacle avoidance is completed, the path planning data generated during this obstacle avoidance process is compared with the actual running trajectory of the AGV to extract path deviation information; The path deviation information and the actual movement trajectory of the dynamic obstacle are recorded together in the historical behavior database of the PLC; The time length of the next prediction interval is dynamically adjusted based on the magnitude of the path deviation and the prediction position error. Based on the actual path offset and time consumption during operation, update the weight parameters in the path cost function.
Citation Information
Patent Citations
AGV intelligent obstacle avoidance and path optimization method and system
CN119717828A
AGV dynamic obstacle avoidance control system based on multi-sensor fusion
CN120508092A