Load-aware a-star algorithm path cost adjustment system and method

By using the load-aware A* algorithm adjustment method, the weight of the cargo is collected in real time and the inertial influence factor is calculated to adjust the path cost. This solves the problems of energy consumption and wear under heavy load conditions, realizes adaptive path planning, reduces energy consumption and extends equipment life.

CN122544820BActive Publication Date: 2026-11-06SHANGHAI HENGZE FUHUI INTELLIGENT TECHNOLOGY CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202611055410.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-07-16
Publication Date
2026-11-06
Estimated Expiration
2046-07-16

AI Technical Summary

Technical Problem

The existing A-Star path planning algorithm fails to effectively distinguish the action type and load state of path segments, resulting in increased energy consumption and mechanical wear under heavy load conditions. In particular, the energy consumption of paths with frequent turning actions and large-angle turns is much higher than that of straight-line travel. Ignoring the action type leads to aggravated equipment wear.

Method used

The load-aware A* algorithm path cost adjustment method utilizes weighing sensors to collect cargo weight information in real time, combines low-pass filtering, calculates the inertial power consumption ratio and converts it into an inertial influence factor, and uses a nonlinear mapping function to adjust the passage cost of steering and lifting actions to generate adaptive path planning.

Benefits of technology

Under heavy load conditions, it reduces energy consumption for steering and lifting movements, extending the service life of equipment and tracks; under no-load or light-load conditions, it improves path planning efficiency and reduces energy consumption without affecting traffic efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122544820B_ABST
    Figure CN122544820B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of path planning adjustment, and discloses an A-star algorithm path cost adjustment system and method based on load sensing, which comprises the following steps: acquiring a path planning request, an environment map and goods weight information corresponding to the path planning request; calculating an inertial power consumption ratio according to the goods weight information and the mass of a mobile carrier, and converting the inertial power consumption ratio into an inertial influence factor through a preset first nonlinear mapping function; in an A-star path search process based on the environment map, for a candidate edge starting from a current node and having an action type attribute, inputting the inertial influence factor and the action type into a preset cost adjustment function to calculate a passing cost; substituting the passing cost of the candidate edge into an evaluation function of the A-star algorithm, and outputting a target path from a starting position to a target position; the application can make the path planning result adaptively change according to a load state, improve path planning efficiency, and reduce driving loss.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of path planning adjustment technology, and more specifically to a system and method for adjusting path costs based on the load-aware A* algorithm. Background Technology

[0002] Currently, automated guided vehicles (AGVs) and rail shuttles perform material handling tasks in manufacturing workshops, warehousing and logistics centers, and heavy industrial docks. The work process includes stages such as traveling empty to the pickup point, loading goods, traveling heavily loaded to the unloading point, and unloading goods. The difference in vehicle weight between empty and fully loaded states is significant. For light AGVs with a curb weight of several hundred kilograms, the weight of the goods can reach more than 100% of the curb weight. Changes in vehicle weight directly alter the inertial load of the mobile vehicle during steering, lifting, and other actions. Steering actions require overcoming the rotational inertia of the vehicle body around the vertical axis, while lifting actions require overcoming the load's gravity to perform work in the vertical direction. The energy consumption and mechanical wear of these actions increase with the load, and the upward trend exhibits a non-linear acceleration characteristic after the load exceeds a certain proportion. The path planning process needs to consider the impact of the load state on the path execution cost during the planning stage, so that the planning results are adaptable to different working conditions in terms of energy consumption and equipment wear.

[0003] The existing technology has the following problems: A* path planning algorithm uses the geometric length of the path or the estimated travel time as the single evaluation dimension of edge cost, without distinguishing the action type corresponding to the path segment, and without considering the real-time load status of the mobile vehicle when performing the task; in the cost function, straight driving path and turning path are regarded as the same. In the transportation task with a wide range of load changes, ignoring the action type will lead to the output of paths with frequent turning or large-angle turning under heavy load conditions, resulting in energy consumption much higher than straight driving or light-load turning, and aggravating the mechanical wear of steering mechanism, traveling wheels and support rails; in order to solve at least one of the above problems, this application proposes an A* algorithm path cost adjustment system and method based on load awareness. Summary of the Invention

[0004] To address the shortcomings of existing technologies, the purpose of this application is to provide a load-aware A* algorithm path cost adjustment system and method, which can effectively solve the problems in the background technology. The specific technical solution of this application is as follows:

[0005] Load-aware A* algorithm path cost adjustment methods include:

[0006] Obtain the route planning request, the environment map, and the cargo weight information corresponding to the route planning request;

[0007] Based on the cargo weight information and the mass of the mobile vehicle, the inertial power consumption ratio is calculated, and the inertial power consumption ratio is converted into an inertial influence factor through a preset first nonlinear mapping function.

[0008] During the path search for A-star based on the environmental map, for candidate edges that start from the current node and have action type attributes, the inertial influence factor and action type are input into a preset cost adjustment function to calculate the passage cost. The cost adjustment function includes: for turning actions, the increment of the passage cost and the inertial influence factor form an exponential relationship.

[0009] Substitute the travel cost of the candidate edges into the evaluation function of the A* algorithm, and output the target path from the starting position to the target position.

[0010] Specifically, the cargo weight information is collected in real time by weighing sensors deployed on the mobile vehicle's carrying mechanism and then processed by low-pass filtering. The cutoff frequency of the low-pass filtering is configured according to an inverse proportional function relationship with the current speed of the mobile vehicle. This inverse proportional function relationship means that for every doubling of the current speed, the cutoff frequency decreases by one octave.

[0011] Specifically, the first nonlinear mapping function includes:

[0012] When the inertial power consumption ratio is less than or equal to the preset inflection point value, the inertial influence factor is equal to the product of the inertial power consumption ratio and the preset first constant coefficient.

[0013] When the inertial power consumption ratio is greater than the preset inflection point value, the inertial influence factor is equal to the product of the square of the inertial power consumption ratio and the preset second constant coefficient.

[0014] Specifically, the first nonlinear mapping function is implemented through a pre-generated mapping table. The sampling points of the inertial power consumption ratio in the mapping table are arranged in a geometric sequence, the ratio of adjacent sampling points is fixed, and the intermediate value between adjacent sampling points in the mapping table is determined by linear interpolation.

[0015] Specifically, each edge in the environment map is associated with action parameters, where the action parameter associated with a turning action is the turning angle, and the action parameter associated with a lifting action is the lifting height; the cost adjustment function includes: for a turning action, the passage cost is determined by the product of the candidate edge's base cost, the inertia influence factor, and the turning angle.

[0016] Specifically, the cost adjustment function further includes: for lifting and lowering actions, the passage cost is determined by the sum of the basic cost and the additional cost of the candidate edge, wherein the additional cost is determined by the product of the inertial influence factor and the lifting and lowering height.

[0017] Specifically, the step of inputting the inertial influence factor and action type into a preset cost adjustment function further includes:

[0018] Obtain the real-time maximum output torque value of the current drive motor of the mobile vehicle and the remaining battery percentage;

[0019] The torque capability value is obtained by multiplying the real-time maximum output torque value by the remaining battery charge percentage.

[0020] The product of the torque capability value and the preset conversion factor is used as the safety threshold.

[0021] When the action type is a steering action and the inertial influence factor is greater than the safety threshold, the candidate edge is marked as impassable.

[0022] Specifically, the target path includes: a suggested driving speed for each edge; for an edge whose action type is a steering action, the suggested driving speed is obtained by solving the rollover moment balance equation based on the wheel track, center of gravity height, inertial influence factor, and steering angle of the steering action of the moving vehicle, so that the rollover moment generated by centrifugal force at the suggested driving speed is less than the stabilizing moment generated by gravity.

[0023] Specifically, the output of the target path from the starting position to the target position includes:

[0024] Based on the suggested driving speeds and path geometry information of each side of the target path, a speed feedforward command is generated.

[0025] For a side whose action type is steering, the torque feedforward compensation value is calculated based on the product of the inertia influence factor and the steering angle of the steering action, and the torque feedforward compensation value is superimposed on the motor torque command of the corresponding side.

[0026] A load-aware A* algorithm path cost adjustment system, used to implement the aforementioned load-aware A* algorithm path cost adjustment method, includes:

[0027] The data acquisition module acquires the route planning request, the environmental map, and the cargo weight information corresponding to the route planning request.

[0028] The inertial analysis module calculates the inertial power consumption ratio based on the cargo weight information and the mass of the mobile vehicle, and converts the inertial power consumption ratio into an inertial influence factor through a preset first nonlinear mapping function.

[0029] In the A-star path search process based on the environmental map, the passage cost analysis module calculates the passage cost by inputting the inertial influence factor and the action type into a preset cost adjustment function for candidate edges that start from the current node and have action type attributes. The cost adjustment function includes: for turning actions, the increment of the passage cost and the inertial influence factor form an exponential relationship.

[0030] The path planning module substitutes the travel cost of candidate edges into the evaluation function of the A* algorithm and outputs the target path from the starting position to the target position.

[0031] The beneficial effects of this application are as follows: the weight of the cargo is converted into an inertial influence factor through nonlinear mapping, and the cost of edges of different action types is adjusted accordingly in the A-star search, so that the path planning results can adapt to the load state; under heavy load conditions, the passage cost of steering and lifting actions is nonlinearly amplified, which can avoid high-cost action combinations, output paths with fewer steering and smaller steering angles, reduce the energy consumption of drive motors under heavy load conditions, reduce mechanical wear of steering mechanisms and traveling wheels, and extend the service life of equipment and tracks; under no-load or light-load conditions, the inertial influence factor is close to zero, the difference in action cost is reduced, the path approaches the optimal solution of distance, without affecting passage efficiency, improving path planning efficiency, and reducing travel losses. Attached Figure Description

[0032] Figure 1 This is a flowchart illustrating the workflow of the load-aware A* algorithm path cost adjustment method in the embodiments of this application.

[0033] Figure 2 This is a schematic diagram of the structure of the load-aware A* algorithm path cost adjustment system in the embodiments of this application. Detailed Implementation

[0034] The present application will be further described in detail below with reference to the accompanying drawings and embodiments.

[0035] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0036] Hereinafter, the terms "first," "second," and other generic terms are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.

[0037] refer to Figure 1 The diagram illustrates a specific implementation of the load-aware A* algorithm path cost adjustment method of this application, including:

[0038] S101. Obtain the route planning request, the environment map, and the cargo weight information corresponding to the route planning request;

[0039] S102. Based on the cargo weight information and the mass of the mobile vehicle, calculate the inertial power consumption ratio, and convert the inertial power consumption ratio into an inertial influence factor through a preset first nonlinear mapping function.

[0040] S103. During the path search of A-star based on the environmental map, for candidate edges that start from the current node and have action type attributes, the inertial influence factor and action type are input into a preset cost adjustment function to calculate the passage cost. The cost adjustment function includes: for turning actions, the increment of the passage cost and the inertial influence factor form an exponential relationship.

[0041] S104. Substitute the passage cost of the candidate edges into the evaluation function of the A* algorithm, and output the target path from the starting position to the target position.

[0042] This embodiment provides a load-aware A* algorithm-based path cost adjustment method. This method runs in the path planning controller of a mobile vehicle or in a higher-level scheduling system that communicates with the mobile vehicle. A mobile vehicle refers to a transportation device with autonomous driving capabilities and a carrying platform, including but not limited to forklift AGVs, rail shuttles, or warehouse stacker cranes. In scenarios where mobile vehicles perform handling tasks, the weight of the goods carried is not constant; the difference in overall vehicle mass between empty and fully loaded states is significant, leading to orders-of-magnitude differences in the energy consumed and the mechanical wear introduced when performing steering, lifting, and other actions under different load conditions.

[0043] This solution introduces a cost adjustment mechanism tied to cargo weight during the path search process on Satellite A. Cargo weight is converted into an intermediate parameter characterizing its impact on motion inertia. This intermediate parameter is used during path search to apply differentiated cost adjustments to path segments with different motion types; the adjustment magnitude is non-linear. Under heavy load conditions, the cost of path segments containing steering or large-angle steering is amplified. Under unloaded or light load conditions, the cost differences between various motions narrow, allowing the path search results to adaptively change with load status. Under heavy load conditions, it automatically favors paths with fewer steering actions and smaller steering angles.

[0044] Specifically, the method acquires a path planning request, an environmental map, and cargo weight information corresponding to the path planning request. The path planning request is issued by the upper-level scheduling system to the controller executing this method. This request includes at least a starting position identifier and a target position identifier. The starting position identifier is the number of the node where the mobile vehicle is currently located in the environmental map, and the target position identifier is the number of the destination node in the environmental map. The environmental map is pre-built topology map data stored in the controller's memory. The topology map contains two data sets: a node set and an edge set. Each node in the node set corresponds to a location point in physical space, and the node data includes at least the node number and the node's planar coordinates. Each edge in the edge set corresponds to a passable path connecting two nodes, and the edge data includes at least the edge number, the node numbers at both ends, the geometric length of the edge, and the action type associated with the edge.

[0045] Specifically, the action type indicates the category of motion actions that the mobile vehicle needs to perform when running along the edge. In this embodiment, the action type includes linear motion and steering motion. Linear motion indicates that the path segment corresponding to the edge is a straight segment, and the mobile vehicle can pass through without changing its travel direction. Steering motion indicates that the path segment corresponding to the edge is a curved segment, and the mobile vehicle needs to generate a deflection angle through a steering mechanism to travel along the path. When the mobile vehicle is running in a scenario with changes in height, such as between multiple layers of shelves in an automated warehouse or in a workshop with ramps, the action type also includes lifting motion, indicating that there are changes in height in the path segment corresponding to the edge, and the mobile vehicle needs to drive a lifting mechanism to lift or lower.

[0046] Action type labeling is completed during the map building phase. When building the map, operators label the values ​​of the action type field edge-by-edge according to the geometry of the path, and these values ​​are stored along with the map data. Cargo weight information is load data associated with this route planning request; the method of obtaining this information depends on the on-site configuration. In one implementation, cargo weight information is provided by the warehouse management system based on the cargo list corresponding to the outbound task, and is issued as a numerical value appended to the route planning request. In another implementation, a weighing sensor is deployed on the carrying mechanism of the mobile vehicle. After loading is completed, the weighing sensor collects the weight signal, and the controller reads this signal as cargo weight information.

[0047] As an optional implementation, the raw weight signal collected by the load cell is low-pass filtered to eliminate high-frequency noise components introduced by vehicle vibration during travel. The processed signal value is then used as cargo weight information in subsequent calculations. The low-pass filtering is implemented using a first-order low-pass filter, and the filter's cutoff frequency is dynamically set according to the vehicle's current speed. Specifically, the cutoff frequency is lowered by one octave for every doubling of the current speed.

[0048] For example, when the mobile vehicle is stationary and loading, the travel speed is zero, and the cutoff frequency is the system's preset maximum value of 50 Hz; when the travel speed reaches 1 meter per second, the cutoff frequency is adjusted to 25 Hz; when the travel speed reaches 2 meters per second, the cutoff frequency is adjusted to 12.5 Hz. The higher the travel speed, the stronger the high-frequency interference introduced by the vehicle body vibration, requiring a lower cutoff frequency to ensure the filtering effect; however, an excessively low cutoff frequency will cause lag in the weighing signal response. Using an octave band correspondence is a trade-off between filtering depth and response speed.

[0049] Furthermore, based on the cargo weight information and the mass of the mobile vehicle, the inertial power consumption ratio is calculated, and then converted into an inertial influence factor through a preset first nonlinear mapping function. The mass of the mobile vehicle refers to its curb weight, that is, the mass of the vehicle itself without cargo, and is stored as a fixed parameter in the parameter area of ​​the controller. The inertial power consumption ratio is the ratio between the cargo weight information and the curb weight, used to measure the relative size of the load portion relative to the vehicle itself. For example, for an AGV with a curb weight of 500 kg, when the cargo weight information is 300 kg, the inertial power consumption ratio is 0.6.

[0050] Specifically, the inertia power consumption ratio reflects the relative contribution of the load to the vehicle's inertia. Steering energy consumption and steering mechanism wear do not change linearly with load. In the low-load range, the increase in additional steering energy consumption is relatively gradual; however, once the load exceeds a certain proportion, steering energy consumption shows an accelerated deterioration trend. The inertia power consumption ratio is converted into an inertia influence factor through a nonlinear transformation. The inertia influence factor is a parameter that directly participates in subsequent cost adjustment calculations.

[0051] As an optional implementation, the first nonlinear mapping function is constructed using a piecewise expression. The piecewise expression includes a preset inflection point value, which serves as the boundary distinguishing between the low-load and high-load intervals. The calibration process for the preset inflection point value is as follows: At the test site, the mobile vehicle is loaded with weights of different masses and performs standardized steering maneuvers, including fixed steering radii and fixed steering angles. The integral of the drive motor current over time during each steering maneuver is recorded as an indirect measure of steering energy consumption. Using the unloaded steering energy consumption as a baseline, the ratio of steering energy consumption to the baseline value under each loaded mass is calculated, and this ratio is considered the experimental corresponding value of the inertial influence factor. The experimental data points are arranged in ascending order of inertial power consumption ratio, and the shape of the energy consumption ratio curve is observed. The turning point where the curve changes from approximately linear growth to accelerated growth is determined, and the inertial power consumption ratio corresponding to this turning point is defined as the preset inflection point value. For example, a certain type of AGV under test showed a significant turning point around an inertial power consumption ratio of approximately 0.65.

[0052] Specifically, the piecewise expression is constructed as follows: when the inertia power consumption ratio is less than or equal to a preset inflection point value, the inertia influence factor is the product of the inertia power consumption ratio and the first constant coefficient, resulting in a linear relationship; when the inertia power consumption ratio is greater than the preset inflection point value, the inertia influence factor is the product of the square of the inertia power consumption ratio and the second constant coefficient, resulting in a squared relationship. The values ​​of the first and second constant coefficients are obtained by least-squares fitting of the piecewise expression with experimental data points, while simultaneously constraining the piecewise function to be continuous at the inflection point. The choice of the squared relationship is based on the observation of the accelerated growth of the steering motor current in the high-load range; the current growth is approximately proportional to the square of the load ratio, and energy consumption exhibits a similar pattern.

[0053] As an alternative implementation, the first nonlinear mapping function is implemented using a pre-generated mapping table. The mapping table is a data table that records a series of discrete inertia power consumption ratio sample values ​​and the corresponding inertia influence factor values ​​for each sample value. The sample points of the inertia power consumption ratio in the mapping table are arranged in a geometric sequence, with the ratio between two adjacent sample points remaining fixed. For example, if the ratio is 2, the corresponding sample point sequence is 0.10, 0.20, 0.40, 0.80, and 1.60. The result of this geometric arrangement is that the sample point intervals are smaller in the low-load area and automatically increase in the high-load area, resulting in a higher sampling density in the high-load area. This precisely matches the steep change in the inertia influence factor in the high-load area, which helps to ensure lookup accuracy within a limited table capacity.

[0054] Specifically, the inertial influence factor values ​​corresponding to each sampling point in the mapping table are obtained through offline experiments. The experimental method is similar to the aforementioned method for calibrating inflection point values, except that the load mass is precisely set according to the inertial power consumption ratio corresponding to the sampling point. The measured steering energy consumption ratio is directly used as the inertial influence factor value for that sampling point and entered into the table.

[0055] When using a mapping table for conversion, if the calculated inertial power consumption ratio is exactly equal to a sampling point in the table, the corresponding inertial influence factor is directly read. If the inertial power consumption ratio falls between two adjacent sampling points, the inertial influence factor is determined through linear interpolation. For example, sampling point 0.20 corresponds to an inertial influence factor of 0.22, sampling point 0.40 corresponds to an inertial influence factor of 0.48, and when the inertial power consumption ratio is 0.30, the result of linear interpolation is 0.35.

[0056] Furthermore, during the A-Star path search based on the environmental map, for candidate edges originating from the current node and possessing action type attributes, the inertial influence factor and action type are input into a preset cost adjustment function to calculate the passage cost. The A-Star path search starts from the initial node and maintains an open list to store generated but not yet expanded nodes. Each time, the node with the lowest evaluation value is selected from the open list as the current node for expansion. When expanding the current node, all edges originating from that node are traversed; these edges are the candidate edges.

[0057] For each candidate edge, the associated action type field value, including "straight," "turn," or "ascend / descend," is read from the edge set data of the environment map. The cost adjustment function is a preset function whose input parameters are the action type associated with the candidate edge and the inertia influence factor, and whose output parameter is the passage cost of the candidate edge under the current load conditions. For action types that are strongly affected by load inertia, the function output value increases significantly with the increase of the inertia influence factor; for action types that are weakly affected by load inertia, the function output value remains basically stable.

[0058] Specifically, for a steering maneuver, the travel cost is obtained by multiplying the base cost of the candidate edge by an adjustment coefficient. The base cost is a pre-stored reference value for the travel cost of the candidate edge under no-load conditions, which can be calculated based on the ratio of the edge's geometric length to the average no-load travel speed. The adjustment coefficient is derived by exponentiation using the natural constant as the base and the inertia factor as the exponent. For example, when the inertia factor is 0.1, the adjustment coefficient is approximately 1.1; when the inertia factor is 1.0, the adjustment coefficient is approximately 2.7; and when the inertia factor is 2.0, the adjustment coefficient is approximately 7.4. The effect of this exponential relationship is that when the inertia factor is small, the steering cost increases only slightly compared to no-load conditions; however, once the inertia factor exceeds 1, the steering cost increases sharply.

[0059] For a straight-line action, in one implementation, the passage cost is directly taken as the base cost of the candidate edge without adjustment.

[0060] For lifting and lowering actions, the method can be similar to that for turning actions. The passage cost is obtained by multiplying the base cost by the adjustment coefficient. The adjustment coefficient and the inertial influence factor also form an exponential or linear relationship, depending on the characteristics of the lifting mechanism of the mobile vehicle.

[0061] As an optional implementation, each edge in the environment map is further labeled with action parameters in addition to the action type. These action parameters quantify the magnitude of the action. For example, the action parameter for a turning action is the turning angle, measured in degrees. The action parameter for a lifting or lowering action is the lifting or lowering height, measured in millimeters. These action parameters are measured and entered during the map construction phase based on the actual geometric dimensions of the path.

[0062] In implementations with specified action parameters, the cost adjustment function is calculated in conjunction with these parameters. For a turning maneuver, the passage cost is obtained by multiplying the base cost of the candidate edge, the inertia influence factor, and the turning angle. The turning angle is determined by the fact that, under the same inertia influence factor, performing a 90-degree turn requires overcoming more inertial torque than performing a 30-degree turn, and the path cost should be adjusted accordingly.

[0063] For lifting and lowering movements, the passage cost is obtained by adding the basic cost of the candidate edge to an additional cost, which is obtained by multiplying the inertial influence factor by the lifting height. The inertial influence factor characterizes the additional burden that the load places on the lifting mechanism's drive system, while the lifting height directly determines the amount of displacement required to overcome gravity. The product of the two reflects the additional energy consumption of the lifting movement.

[0064] As an alternative implementation, a safety pre-screening step is added before feeding the inertia influence factor and action type into the cost adjustment function to calculate the passage cost. The purpose of this step is to directly exclude the corresponding steering edge from the search space when the load and battery status do not support safe steering.

[0065] The safety pre-screening process includes obtaining the real-time maximum output torque of the current drive motor of the mobile vehicle, as well as the remaining battery percentage. The real-time maximum output torque is estimated in real time by the drive motor driver based on the current DC bus voltage and motor winding temperature, and periodically reported to the controller via the fieldbus. The remaining battery percentage is provided by the battery management system.

[0066] Specifically, the real-time maximum output torque value is multiplied by the remaining battery charge percentage, and the product is a torque capability value. This torque capability value reflects the maximum torque level that the drive motor can actually continuously output under the current battery power supply constraints. The less charged the battery is, the more severe the bus voltage drop, and the greater the discount factor between the motor's actual maximum output torque and its nominal maximum torque.

[0067] The torque capability value is multiplied by a preset conversion factor, and the product is used as the safety threshold. The preset conversion factor is calibrated by having the mobile vehicle perform a standard steering maneuver at different battery charge levels, gradually increasing the counterweight until the motor enters the torque limiting state, and recording the inertia influence factor value at this point. A linear regression is then performed between each set of recorded inertia influence factor values ​​and the corresponding torque capability value; the slope obtained from the regression is the preset conversion factor.

[0068] Specifically, the safety pre-screening criteria include: when the action type of a candidate edge is a turning action, and the calculated inertial influence factor is greater than the safety threshold, it is determined that the mobile vehicle does not have the ability to safely perform the turning action under the current battery state, and the candidate edge is marked as impassable. Candidate edges marked as impassable do not participate in cost calculation in the A-satellite search step, nor are their adjacent nodes added to the open list.

[0069] Furthermore, the travel costs of the candidate edges are substituted into the evaluation function of the A* algorithm, and the target path from the starting position to the target position is output. The evaluation function of the A* algorithm is denoted as f, which is obtained by adding the g and h values. The g value is the actual cumulative travel cost from the starting node to the current node. When expanding candidate edges, the calculated travel cost of the candidate edge is added to the g value of the current node to obtain the g value of the adjacent node pointed to by the candidate edge. The h value is the heuristically estimated cost from the current node to the target node; in this embodiment, it is taken as the Manhattan distance between the current node and the target node.

[0070] During the search process, the open list maintains the f-value of each candidate node. In each iteration, the node with the smallest f-value is selected from the open list as the current node for the next expansion, and this process is repeated until the target node is expanded. After the target node is expanded, the complete path node sequence from the starting position to the target position is obtained by tracing back the parent node identifiers level by level. This node sequence is the target path.

[0071] The cost of steering and lifting actions is amplified exponentially or productively by the inertial influence factor. When the vehicle is under heavy load and the inertial influence factor is high, candidate paths with many steering actions or large steering angles have significantly higher cumulative g-values ​​than paths primarily composed of straight-line actions. Under the ranking mechanism of the A* algorithm's evaluation function, paths with lower cumulative g-values ​​are selected first. Therefore, under heavy load, the algorithm naturally outputs paths with fewer steering actions and smaller steering angles. Under unloaded or lightly loaded conditions, the inertial influence factor is low, the cost differences between various actions narrow, and the path search results tend to be the shortest path.

[0072] As an optional implementation, while outputting the target path node sequence, a suggested driving speed is also generated for each edge on the path. For edges with a steering action type, the suggested driving speed is determined based on the upper speed limit that prevents the mobile vehicle from overturning when traveling on that edge. The input parameters for solving the upper speed limit include the vehicle's wheelbase, overall center of gravity height, inertia factor, and the steering angle associated with that edge. The wheelbase is a fixed structural parameter. The overall center of gravity height changes after loading cargo and can be obtained through a pre-established center of gravity height lookup table. The input to this table is cargo weight information, and the output is the overall center of gravity height value. The data in the table is obtained through actual vehicle center of gravity measurement experiments.

[0073] The constraints for determining the upper speed limit include: during steering, the overturning moment around the outer wheel contact point generated by centrifugal force should always be less than the stabilizing moment around the same point generated by gravity. The magnitude of the centrifugal force is directly proportional to the vehicle's mass and the square of its speed, and inversely proportional to the turning radius. The turning radius can be derived from the geometric relationship between the turning angle and the wheelbase. Based on these constraints, substituting the known parameters, the upper speed limit can be calculated, which is the recommended driving speed. The solution logic shows that a larger inertia factor corresponds to a larger vehicle mass and a potentially higher center of gravity, resulting in a lower recommended driving speed.

[0074] As a further preferred embodiment, after generating the target path and suggested driving speed, the method includes a step of converting the path and speed information into driving commands. Specifically, based on the suggested driving speed and geometric length of each edge on the target path, a time-varying speed feedforward command is generated and sent to the drive motor controller. Simultaneously, for edges with a steering action, a torque feedforward compensation value is calculated based on the product of the inertia influence factor and the steering angle of that edge, and this compensation value is added to the steering motor torque command for the corresponding edge. The calculation of the torque feedforward compensation value is based on the fact that the inertia influence factor characterizes the relative magnitude of the load inertial resistance torque, and the steering angle characterizes the sustained angular displacement of the steering. Their product reflects the cumulative level of additional motor torque required to overcome load inertia within the steering segment. Feeding this compensation value forward into the torque command aims to enable the motor to establish compensation torque in advance when entering the steering segment, avoiding steering response lag or a significant drop in driving speed.

[0075] This application converts cargo weight into an inertial influence factor through nonlinear mapping and adjusts the cost of edges for different action types in the A-star search, enabling the path planning results to adapt to the load state. Under heavy load conditions, the passage cost of steering and lifting actions is nonlinearly amplified, which can avoid high-cost action combinations, outputting paths with fewer steering and smaller steering angles, reducing the energy consumption of the drive motor under heavy load conditions, reducing the mechanical wear of the steering mechanism and traveling wheels, and extending the service life of equipment and tracks. Under no-load or light-load conditions, the inertial influence factor is close to zero, the difference in action cost is reduced, the path approaches the optimal solution in distance, without affecting passage efficiency, improving path planning efficiency, and reducing travel losses.

[0076] Furthermore, the weight information of the goods is collected in real time by weighing sensors deployed on the mobile vehicle's carrying mechanism and then processed by low-pass filtering. The cutoff frequency of the low-pass filtering is configured according to an inverse proportional function relationship with the current speed of the mobile vehicle. The inverse proportional function relationship means that the cutoff frequency decreases by one octave for every doubling of the current speed.

[0077] In this embodiment, after loading is completed, the mobile vehicle enters the transportation state, and the weighing sensor deployed on the carrying mechanism continuously outputs a weight signal. The carrying mechanism is, for example, the lifting pallet of an AGV, the fork root support surface of a forklift AGV, or the loading platform of a rail shuttle. The weighing sensor is connected in series in the load-bearing path between the carrying mechanism and the vehicle frame, converting the gravity applied by the goods into an electrical signal.

[0078] During the movement of a mobile vehicle, uneven ground causing wheel bounce, the polygonal effect of the drive wheels, and inertial impacts during acceleration and deceleration are transmitted to the load-bearing mechanism via the suspension or vehicle structure, superimposing vibration interference components on the load cell output signal. The frequency distribution of these interference components is positively correlated with the vehicle speed, varying in the range of tens to hundreds of hertz. If the raw signal is directly used as cargo weight information, vibration interference will cause the calculated inertial power consumption ratio to jump drastically and irregularly in a short period of time, leading to inconsistencies in the passage cost of the same edge in the A-satellite search, and the final output path may be deviated due to noise rather than the actual load condition.

[0079] To address this issue, a low-pass filter is applied to the original weight signal, and the processed signal value is used as the cargo weight information. The low-pass filter is implemented using a first-order IIR structure, which only needs to store the input sample value and output value from the previous moment. The computational load within a single control cycle consists of two multiplications and two additions, which can be completed within the real-time task cycle of the onboard controller without additionally occupying the computation time of the main path planning process.

[0080] Furthermore, the cutoff frequency of the low-pass filter is not a fixed parameter; it is dynamically set according to the current travel speed of the mobile vehicle. The current travel speed parameter is obtained from the driving controller, and either real-time feedback speed or speed command value can be used. The cutoff frequency is configured with an inverse proportional function relationship with the current travel speed. Specifically, for every doubling of the current travel speed, the cutoff frequency is reduced by one octave, i.e., the frequency value is halved. For example, if the cutoff frequency is 40 Hz when the travel speed is 0.5 m / s, then the cutoff frequency is adjusted to 20 Hz when the travel speed increases to 1 m / s, and to 10 Hz when the travel speed increases to 2 m / s.

[0081] It should be noted that as the driving speed increases, the wheel rolling frequency and the ground excitation frequency rise synchronously, and the energy of vibration interference concentrates in the high-frequency band. If the cutoff frequency remains unchanged, high-frequency interference that was originally outside the filter stopband will move into the passband and penetrate the filter, resulting in increased fluctuations in the filtered signal. Lowering the cutoff frequency as the speed increases can place these newly emerging high-frequency interference components back into the stopband for attenuation. On the other hand, the weight of the cargo itself is a quasi-static signal during the transportation phase after loading; its true value does not change rapidly over time, and the effective signal bandwidth is extremely low. Lowering the cutoff frequency to the order of several hertz will not cause loss or distortion of weight information. The proportional constant in the inverse proportional function is obtained through actual vehicle calibration. The calibration method involves measuring the fluctuation amplitude of the filtered signal at different driving speeds under a known standard weight load condition, selecting a combination of cutoff frequencies that makes the fluctuation amplitude fall within a preset allowable error range, calculating the proportional constant, and then storing it in the controller parameter storage area.

[0082] Preferably, after dynamic low-pass filtering, the cutoff frequency of the cargo weight information is at a relatively high level during the stationary or extremely low-speed phase after loading. The filter response speed is fast, enabling it to track the gradual loading of the cargo during the loading process, and the weight reading converges rapidly when loading is complete. As the mobile vehicle accelerates into the transportation phase, the vibration intensity increases, and the cutoff frequency automatically shifts downward with the increase in speed. The filtering depth is correspondingly deepened, and the pseudo-fluctuations introduced by vibration are attenuated to within the allowable error range of the true weight value, keeping the cargo weight information stable on the time axis. This stability ensures the consistency of the input data when calculating the inertia-power ratio, thus making the passage cost obtained each time the same candidate edge is evaluated under the same load state during the A-star search process reproducible, and the path planning result has determinism.

[0083] Furthermore, the first nonlinear mapping function includes:

[0084] S301. When the inertial power consumption ratio is less than or equal to the preset inflection point value, the inertial influence factor is equal to the product of the inertial power consumption ratio and the preset first constant coefficient.

[0085] S302. When the inertial power consumption ratio is greater than the preset inflection point value, the inertial influence factor is equal to the product of the square of the inertial power consumption ratio and the preset second constant coefficient.

[0086] In this embodiment, a first nonlinear mapping function is used to convert the inertial power consumption ratio into an inertial influence factor. This mapping function is constructed using a piecewise expression, with the inertial power consumption ratio as the input and the inertial influence factor as the output. The piecewise division is based on a preset inflection point value. When the inertial power consumption ratio is less than or equal to the preset inflection point value, the inertial influence factor is the product of the inertial power consumption ratio and a first constant coefficient, and the mapping relationship is linear. When the inertial power consumption ratio is greater than the preset inflection point value, the inertial influence factor is the product of the square of the inertial power consumption ratio and a second constant coefficient, and the mapping relationship is quadratic. The first and second constant coefficients satisfy the constraint that the function value is continuous at the inflection point position, that is, when the inertial power consumption ratio is equal to the preset inflection point value, the inertial influence factor calculated by the linear expression and the quadratic expression are equal.

[0087] Specifically, the basis for using a piecewise mapping includes: observations in real-vehicle steering tests show that the additional steering energy consumption caused by increased load does not increase uniformly. When the cargo weight is relatively light compared to the vehicle weight, the additional torque output by the steering motor to overcome inertia is roughly synchronized with the load ratio; after the cargo weight exceeds a certain proportion of the vehicle weight, the steering motor current rise curve deviates from the original linear trajectory and enters an accelerated growth range. This nonlinear phenomenon is related to factors such as the increase in steering mechanism friction under heavy load, changes in tire lateral stiffness, and a decrease in drive system efficiency. Using a linear mapping to describe the cost change across the entire load range cannot generate sufficient cost differences in the heavy-load region to influence the search decision of the A* algorithm; using a single nonlinear function to cover the entire load range may excessively amplify the steering cost in the light-load region.

[0088] It should be noted that the preset inflection point value was determined through a real-vehicle steering energy consumption calibration test. During the test, the moving vehicle was loaded with weights of different masses, with the load mass increasing progressively as a percentage of the vehicle's curb weight. Under each load level, a standard steering maneuver with the same radius and angle was performed, and the integral of the drive motor current over time was recorded as the quantitative indicator of the steering energy consumption. The unloaded steering energy consumption was used as the baseline value, and the ratio of the steering energy consumption under each load level to the baseline value was the experimental value of the inertial influence factor under the corresponding load condition. The inertial power consumption ratios and the experimental values ​​of the inertial influence factor corresponding to each load level were plotted as a scatter plot. In the low-load region, the data points were approximately arranged near a straight line. As the inertial power consumption ratio increased, the deviation of the data points from the extension of this straight line gradually increased. Piecewise linear fitting was performed on the data points. The first line segment covered the low-load region, and the second line segment covered the high-load region. The inertial power consumption ratio corresponding to the intersection of the two line segments was taken as the preset inflection point value. For example, when calibrating a certain type of AGV with a curb weight of 500 kg, by successively loading weights from 100 kg to 500 kg, the intersection of two line segments is found to fall near the inertia-power ratio of 0.65. This value is used as the preset inflection point value for this type of AGV.

[0089] Furthermore, the first constant coefficient is directly determined by the slope of the fitted line segment in the low-load region, and its physical meaning is the increase in additional energy consumption for turning corresponding to a unit increase in load ratio. The second constant coefficient is calculated by inversely from the continuity condition at the inflection point, i.e., the inflection point value, the first constant coefficient, and the inertial influence factor value at the inflection point are known, and the second constant coefficient is obtained by substituting them into the square expression. For example, if the inertial power consumption ratio at the inflection point is 0.65 and the slope of the linear segment is 1.2, then the inertial influence factor at the inflection point is 0.65 multiplied by 1.2, which equals 0.78. The value of the square expression at 0.65 is also 0.78. The second constant coefficient is calculated by dividing 0.78 by the square of 0.65, which yields approximately 1.85.

[0090] Preferably, all parameters can be determined by piecewise linear fitting and continuity constraints using real-vehicle steering energy consumption test data, without relying on subjective experience. Different vehicle models can be calibrated and reproduced using the same process. During calculation, each call requires only one condition judgment and one multiplication or squaring operation, and the additional overhead on the expansion rate of the A-star search nodes is controllable. The inertia influence factor of the mapped output grows linearly in the low-load area, preserving the sensitivity of path planning to traffic efficiency under light to medium loads; it grows quadratically in the high-load area, amplifying the cost difference of heavy-load steering to an order of magnitude sufficient to affect the search decision.

[0091] Furthermore, the first nonlinear mapping function is implemented through a pre-generated mapping table. The sampling points of the inertial power consumption ratio in the mapping table are arranged in a geometric sequence, the ratio of adjacent sampling points is fixed, and the intermediate value between adjacent sampling points in the mapping table is determined by linear interpolation.

[0092] In this embodiment, as an alternative implementation of the first nonlinear mapping function, a pre-generated mapping table is used instead of online piecewise calculation. The mapping table is loaded into memory during the controller initialization phase. Its data structure is a one-dimensional lookup table, with the key being the inertia power consumption ratio and the output being the inertia influence factor. The table does not store continuous function expressions; instead, it stores a set of discrete sampling point pairs. Each sampling point pair contains a sampled inertia power consumption ratio value and a corresponding inertia influence factor value. During the runtime phase, after calculating the inertia power consumption ratio, this value is used as the lookup key and input into the mapping table. The mapping table outputs the corresponding inertia influence factor value.

[0093] Specifically, the sampling points for the inertia power consumption ratio in the mapping table are arranged in a geometric sequence, with a fixed ratio between adjacent sampling points. A typical configuration uses a common ratio of 2, with sampling point sequences of 0.10, 0.20, 0.40, 0.80, and 1.60. The specific value of the common ratio is selected based on the distribution range of the inertia power consumption ratio and table capacity constraints, commonly ranging from 1.5 to 2.5. Using a geometric sequence instead of an arithmetic sequence directly corresponds to the data characteristic of the inertia influence factor, which changes gradually in the low inertia power consumption ratio range and steeply in the high inertia power consumption ratio range. The interval between adjacent sampling points automatically expands in the direction of numerical increase in the geometric sequence, naturally resulting in a higher sampling density in the high-value range than in the low-value range. This spatial distribution aligns with the non-linear growth trend of the inertia influence factor, and with a fixed table capacity, sampling resources are tilted towards areas of drastic change.

[0094] Specifically, the inertial influence factor values ​​corresponding to each sampling point in the mapping table are obtained through offline calibration. The calibration process is consistent with the calibration method for preset inflection point values ​​in the piecewise function, the difference being that the load mass is set one by one according to each inertial power consumption ratio sampling point in the mapping table, rather than increasing at equal percentage intervals. After the inertial power consumption ratio of each sampling point is determined, the required load mass is calculated as the inertial power consumption ratio multiplied by the curb weight of the moving vehicle. The corresponding weights are loaded, a standard steering action is performed, and the ratio of the steering energy consumption to the no-load steering energy consumption is recorded. This ratio is then filled into the mapping table as the inertial influence factor value corresponding to that sampling point. After all sampling points are calibrated, the mapping table is fixed in the controller firmware as a constant array.

[0095] During runtime, the calculated inertial power consumption ratio may exactly match a sampling point in the table, or it may fall between two sampling points. When the inertial power consumption ratio equals a sampling point in the table, the inertial influence factor value corresponding to that sampling point is directly used as the output. When the inertial power consumption ratio falls between two sampling points, the output value is determined through linear interpolation. The calculation process for linear interpolation is as follows: traverse the mapping table to locate the interval where the input inertial power consumption ratio is located, determine the key-value pair of the left and right neighboring sampling points; calculate the proportion of the difference between the input inertial power consumption ratio and the left neighboring key value to the length of the interval; multiply this proportion by the difference between the right neighboring output value and the left neighboring output value, and add the product to the left neighboring output value to obtain the interpolation result. Since the sampling points are arranged in a geometric sequence, the ratio of the key values ​​of adjacent sampling points in each interval is constant, and the relative error introduced by linear interpolation in each interval tends to be uniform, without precision shift due to different interval positions.

[0096] Preferably, the mapping table does not pre-determine the curve shape of the mapping function. The correspondence between any inertial power consumption ratio and inertial influence factor obtained from the actual vehicle calibration can be directly entered, and its adaptability to vehicle model differences is wider than that of a fixed-form piecewise function. After changing the steering motor specifications or modifying the load-bearing mechanism, only recalibration and updating the mapping table constant array are required, without involving any modification to the function expressions in the algorithm code. The computational complexity of table lookup and linear interpolation is one interval positioning, one subtraction, one division, one multiplication, and one addition. The total computational complexity is at the single-digit instruction cycle level and has a deterministic upper bound, which is independent of the mapping table capacity. In the scenario where multiple candidate edges are expanded in each round of A-star search, the deterministic time consumption of the table lookup operation helps to ensure the overall real-time performance of path planning.

[0097] Furthermore, each edge in the environment map is associated with action parameters, where the action parameter associated with a turning action is the turning angle, and the action parameter associated with a lifting action is the lifting height; the cost adjustment function includes: for a turning action, the passage cost is determined by the product of the candidate edge's base cost, the inertia influence factor, and the turning angle.

[0098] In this embodiment, as an optional implementation, each edge in the environment map is also associated with motion parameters. These motion parameters are labeled along with the motion type during the map construction phase and are used to quantify the magnitude of the motion. The motion parameter associated with a turning motion is the turning angle, and the motion parameter associated with a lifting motion is the lifting height.

[0099] Specifically, the steering angle is the angle by which the moving vehicle needs to deflect its direction of travel when traveling along that edge. For edges where the path itself is an arc segment, the steering angle is the central angle corresponding to the arc. For steering nodes formed by the intersection of two straight segments, the steering angle is the supplementary angle of the angle between the extensions of the two straight segments. The elevation change is the absolute value of the difference in elevation between the two nodes on the edge. All of the above parameters are measured or calculated based on the physical geometry of the path and then written into the edge data during map construction.

[0100] In the cost adjustment function, when the action type of a candidate edge is a turning action, the passage cost is determined by multiplying the base cost of the candidate edge, the inertia influence factor, and the turning angle read from the edge data. The base cost is a reference value for the passage cost of the edge under no-load conditions, pre-stored in the map edge data. The inertia influence factor represents the relative growth rate of additional energy consumption for turning under the current load state. The turning angle directly participates in the multiplication operation according to its angle value. The base cost provides the inherent time or distance dimension cost benchmark for the edge, the inertia influence factor applies the additional energy consumption impact of the load on the turning action to this benchmark, and the turning angle scales this impact proportionally according to the action amplitude. For two turning edges with the same inertia influence factor, the edge with the larger turning angle has its passage cost amplified proportionally to the angle.

[0101] When the action type of the candidate edge is a lifting action, the passage cost is obtained by adding the basic cost and the additional cost. The additional cost is determined by multiplying the inertial influence factor and the lifting height.

[0102] Preferably, by incorporating action parameters into the cost adjustment function, the passage cost not only distinguishes action types but also produces differentiated responses to actions of different execution amplitudes within the same type. Under heavy load conditions, when the inertia influence factor is high, the difference in passage cost between large-angle and small-angle turning edges is widened, making small-angle turning edges more likely to be prioritized in the A-star search ranking. Under unloaded conditions, the inertia influence factor approaches zero, the contribution of the turning angle to the passage cost tends to disappear, and the path search result does not deviate from the optimal distance solution due to angle differences.

[0103] Furthermore, the cost adjustment function also includes: for lifting and lowering actions, the passage cost is determined by the sum of the basic cost and the additional cost of the candidate edge, wherein the additional cost is determined by the product of the inertial influence factor and the lifting and lowering height.

[0104] In this embodiment, the cost adjustment function for lifting actions is constructed differently from that for steering actions. The additional energy consumption of steering actions mainly comes from overcoming the rotational inertia of the vehicle body around the vertical axis in the horizontal plane, while the additional energy consumption of lifting actions comes from overcoming the work done in the vertical direction to overcome the load's gravity. The two parts of energy consumption have different physical additive properties. The action parameter associated with lifting actions is the lifting height, which is calculated and entered into the edge data during the map construction phase based on the elevation difference between the nodes at both ends of the edge. When the mobile vehicle operates between multi-level racks in an automated warehouse or in a workshop environment with a hoist, some edges in the map are marked as lifting actions, and the lifting height is taken as the absolute value of the height difference between the starting and ending nodes of that edge.

[0105] In the cost adjustment function, when the action type of a candidate edge is an ascent or descent, the passage cost is determined by the sum of the base cost and the additional cost of that candidate edge. The base cost has the same meaning as the turning action, and is the inherent passage cost reference value of the candidate edge under no-load conditions, pre-stored in the map edge data. The additional cost is obtained by multiplying the calculated inertia influence factor by the ascent or descent height read from the edge data.

[0106] Specifically, the cost of lifting and lowering is constructed using a summation calculation, corresponding to the physical fact that the energy consumption increment of the lifting and lowering action is superimposed on the energy consumption of the horizontal movement. When the mobile vehicle moves along the lifting edge, the drive system simultaneously overcomes the rolling resistance of the horizontal displacement and the gravity of the vertical lifting. The energy consumption of these two parts can be calculated separately and then added together. The additional cost calculation accounts for the extra energy consumption of the vertical lifting part, the inertial influence factor characterizes the degree of additional burden of the load on the lifting drive system, and the lifting height determines the lifting displacement. The product of the two is the cost increment corresponding to the work done to overcome the gravity of the load.

[0107] For example, a certain lifting edge has a base cost of 20, a lifting height of 500 mm, an inertial influence factor of 0.8, and an additional cost of 0.8 multiplied by 500 equaling 400. The passage cost of this edge under the current load is 20 plus 400 equaling 420. When the inertial influence factor of the same mobile vehicle drops to near zero in an unloaded state, the additional cost tends to zero, and the passage cost falls back to near the base cost of 20.

[0108] Preferably, under heavy load conditions, the inertial influence factor is higher, and the additional cost of the edge with a larger rise and fall height is higher, making it less likely to be selected in the A-star search ranking; under light load or no load conditions, the inertial influence factor approaches zero, the additional cost can be ignored, the passage cost of the rise and fall edge returns to the basic cost, and the algorithm does not detour due to the rise and fall height.

[0109] Furthermore, the inertia influence factor and action type are input into a preset cost adjustment function, which previously included:

[0110] S701. Obtain the real-time maximum output torque value of the current drive motor of the mobile vehicle and the remaining battery power percentage;

[0111] S702. Multiply the real-time maximum output torque value by the remaining battery charge percentage to obtain the torque capability value;

[0112] S703, The product of the torque capacity value and the preset conversion factor is used as the safety threshold;

[0113] S704. When the action type is a steering action and the inertial influence factor is greater than the safety threshold, mark the candidate edge as impassable.

[0114] In this embodiment, during the path search process, the load status of the mobile vehicle and its current battery power capacity jointly determine whether it has the conditions to safely perform a steering maneuver. When the cargo weight is large and the battery power is low, the actual maximum torque output of the drive motor may not be sufficient to overcome the inertial resistance torque during heavy-load steering. If the algorithm still plans a path that includes a steering maneuver, the mobile vehicle will experience problems such as incomplete steering, deviation from the driving trajectory, or even triggering of the motor overcurrent protection during actual execution. To eliminate such risks in advance during the path planning stage, a safety pre-screening step based on the real-time vehicle status is added before calling the cost adjustment function to calculate the passage cost.

[0115] Specifically, the safety pre-screening process consists of four sub-steps. Sub-step one involves obtaining the real-time maximum output torque of the current drive motor of the mobile vehicle and the remaining battery percentage. The real-time maximum output torque is estimated in real-time by the drive motor driver based on the current DC bus voltage and motor winding temperature. The bus voltage is collected at the input of the driver's power stage, and the motor winding temperature is obtained through a thermistor embedded in the stator winding. The driver maintains a two-dimensional lookup table with the bus voltage and winding temperature as inputs and the maximum allowable output torque as the output. This table is provided by the motor supplier based on the motor characteristic curve and burned into the driver firmware. The driver looks up the table once per control cycle and reports the result to the planning controller periodically via the fieldbus. The remaining battery percentage is calculated by the battery management system based on coulomb counting and open-circuit voltage correction algorithms, and is taken as the ratio of the currently available charge to the full charging capacity.

[0116] In sub-step two, the real-time maximum output torque value is multiplied by the remaining battery charge percentage, and the product is a torque capability value. The torque capability value represents the actual maximum torque level that the drive motor can output under the current battery power supply constraints. When the battery charge is sufficient, the bus voltage is close to the rated value, the real-time maximum output torque value is close to the nominal maximum torque, and the torque capability value is high. When the battery charge decreases, the bus voltage drops accordingly, and the maximum torque that the motor can output is discounted relative to the nominal value, resulting in a corresponding decrease in the torque capability value. By constructing the torque capability value through multiplication, the attenuation effect of battery charge on the motor's output capability is directly quantified as a discount factor at the torque level.

[0117] Step three involves multiplying the torque capability value by a preset conversion factor, with the product serving as the safety threshold. The preset conversion factor converts the torque capability value from torque dimensions to dimensions comparable to the inertial influence factor. The physical meaning of the inertial influence factor is the ratio of the additional energy consumption for steering under the current load condition to that under no-load conditions. The safety threshold corresponds to the upper limit of the inertial influence factor that the mobile vehicle can withstand under the current power supply capacity. The preset conversion factor is determined through actual vehicle calibration. The calibration process includes: with the battery at different remaining charge levels, having the mobile vehicle perform standardized steering actions, gradually increasing the load weight until the drive motor enters the torque limiting state or the steering trajectory deviation exceeds the allowable range, recording the inertial influence factor and torque capability value corresponding to each test, and performing linear regression on multiple sets of data points. The slope of the regression line is the preset conversion factor.

[0118] In sub-step four, if the action type of a candidate edge is a turning action and the inertial influence factor is greater than the safety threshold, it is determined that the mobile vehicle does not have the driving capability to safely perform the turning action under the current load and battery conditions, and the candidate edge is marked as impassable. Candidate edges marked as impassable are directly skipped in subsequent A-satellite searches and do not participate in cost calculation and node expansion. When the inertial influence factor is less than or equal to the safety threshold, the candidate edge is normally entered into the cost adjustment function to calculate the passage cost.

[0119] Preferably, by introducing a safety pre-screening step, the path search excludes turning actions that exceed the real-time driving capability of the mobile vehicle before evaluating candidate edges, thus avoiding the inclusion of unsafe turning segments in the planning results from the source of path planning; the safety threshold dynamically changes with the remaining battery power, automatically decreasing the safety threshold when the battery power decreases, narrowing the range of passable turning edges, and the path output by the algorithm requires fewer turning actions under the same load conditions; the safety threshold recovers after the battery power recovers, widening the range of passable turning edges, and restoring the flexibility of path selection.

[0120] Furthermore, the target path includes: the suggested driving speed for each edge; for edges with a steering action, the suggested driving speed is obtained by solving the rollover moment balance equation based on the wheelbase of the moving vehicle, the center of gravity height, the inertial influence factor, and the steering angle of the steering action, so that the rollover moment generated by centrifugal force at the suggested driving speed is less than the stabilizing moment generated by gravity.

[0121] In this embodiment, when outputting the target path, in addition to providing the path node sequence, a suggested driving speed is also generated for each edge on the path. For edges with a steering action type, the suggested driving speed is obtained by solving the rollover moment balance condition. The input parameters involved in the solution process include the wheelbase of the moving vehicle, the center of gravity height, the inertial influence factor, and the steering angle associated with the edge.

[0122] Specifically, wheelbase is a fixed structural parameter of the mobile vehicle, referring to the lateral distance between the center points of the left and right wheels on the same axle. It is pre-stored as a constant in the controller parameter area after the mobile vehicle design is finalized. The center of gravity height changes after the mobile vehicle is loaded with cargo. The overall vehicle center of gravity height is obtained through a pre-built center of gravity height lookup table. The lookup table takes cargo weight information as input and the overall vehicle center of gravity height as output. The construction process of the lookup table includes: measuring the center of gravity height of the mobile vehicle in an unloaded state; measuring the overall vehicle center of gravity height under different load masses using the tilting platform method or lifting method; recording the corresponding load masses and measured center of gravity heights in the table; and determining intermediate values ​​not directly measured using linear interpolation. The inertial influence factor reflects the degree of influence of the current load state on the steering inertial load. The steering angle is read from the environmental map edge data.

[0123] Specifically, the rollover moment balance condition is used to determine the maximum speed at which a mobile vehicle can avoid rollover during turning. During turning, the mobile vehicle experiences centrifugal force, the magnitude of which is directly proportional to the total mass of the vehicle and the square of its speed, and inversely proportional to the turning radius. The turning radius can be derived from the geometric relationship between the turning angle and the vehicle's wheelbase, specifically by dividing the wheelbase by the tangent of the turning angle. The centrifugal force, acting around the vehicle's center of gravity, forms a rollover moment around the outer wheel's contact point. Simultaneously, the vehicle's weight around the same outer wheel's contact point forms a stabilizing moment against rollover, the magnitude of which is equal to the vehicle's weight multiplied by half the wheelbase.

[0124] Furthermore, the solution process includes: using the critical condition that the rollover moment equals the stabilizing moment as the equilibrium equation, which includes a term representing the square of the driving speed. Substituting the known wheelbase, vehicle center of gravity height, total vehicle mass, and turning radius into this equilibrium equation, the critical value of the driving speed is solved. This critical value is the maximum permissible speed at which the steering edge will not roll over under the current load condition. Multiplying the solved critical value by a safety factor less than 1 yields the recommended driving speed. The safety factor is selected to consider factors such as changes in ground adhesion conditions, tire lateral slippage, and errors in center of gravity estimation; a typical value is between 0.7 and 0.85.

[0125] Preferably, the larger the inertia influence factor, the greater the total mass of the vehicle and the higher the center of gravity may be. This reduces the margin of the stabilizing torque relative to the rollover torque, lowers the calculated critical speed, and suggests that the driving speed should also be reduced accordingly. Similarly, a larger steering angle results in a smaller steering radius, greater centrifugal force at the same vehicle speed, and also lowers the calculated critical speed.

[0126] It should be noted that a suggested driving speed, calculated based on the rollover moment balance condition, is assigned to each turning edge on the path, directly transforming the impact of load status on driving safety into a quantitative speed constraint. Under heavy load conditions, the suggested driving speed for large-angle turning edges is automatically reduced, ensuring that the mobile vehicle will not roll over when traveling at this speed. Under unloaded or lightly loaded conditions, the inertia influence factor approaches zero, significantly increasing the calculated critical speed. The suggested driving speed approaches or reaches the normal driving speed of the mobile vehicle, and the path's traffic efficiency is not unnecessarily restricted. The suggested driving speed is given for each edge, and different turning edges are solved independently based on their turning angle and load status at that moment. The speed constraints for each segment of the path are matched segment by segment with the actual risk level of each segment.

[0127] Furthermore, the output includes the target path from the starting position to the target position, including:

[0128] S901. Generate speed feedforward commands based on the suggested driving speeds and path geometry information of each side of the target path;

[0129] S902. For a side whose action type is steering, calculate the torque feedforward compensation value based on the product of the inertia influence factor and the steering angle of the steering action, and add the torque feedforward compensation value to the motor torque command of the corresponding side.

[0130] In this embodiment, after outputting the target path and generating suggested driving speeds for each side, the planning controller further converts the path information into an instruction form usable by the drive execution layer; the conversion process includes two parts: speed feedforward instruction generation and torque feedforward compensation value superposition.

[0131] Specifically, the generation process of the speed feedforward command takes the suggested travel speed and path geometry information of each edge on the target path as input. The path geometry information includes the length, radius of curvature of each edge, and the connection relationship between adjacent edges; this information has already been entered into the edge data during the map construction phase. The planning controller reads the length and suggested travel speed of each edge along the node sequence of the target path, divides the edge length by the suggested travel speed to obtain the expected travel time for that edge, and arranges the speed values ​​of each edge end-to-end along the time axis to form a time series curve of segmented constant speed or segmented trapezoidal speed; this curve is the speed feedforward command. The speed feedforward command is sent to the drive motor controller in the form of an array of target speeds changing over time. After receiving the speed feedforward command, the drive motor controller uses it as the setpoint input for the speed loop, and the drive motor operates according to the preset speed curve. The purpose of the speed feedforward command is to provide the target speed value in advance before entering each edge, so that the speed loop can directly output the corresponding drive current without waiting for the accumulation of feedback deviations when switching edges, reducing the transient lag in speed tracking.

[0132] Furthermore, the torque feedforward compensation value is calculated for edges whose action type is steering. For an edge on the target path marked as a steering action, the planning controller reads the inertia influence factor and the steering angle associated with that edge, multiplies the two, and uses the product as the torque feedforward compensation value. The inertia influence factor represents the ratio of the inertial resistance torque that needs to be overcome when steering under the current load condition to the no-load condition, and the steering angle represents the angular displacement of the steering action. The product of the two reflects the cumulative level of the additional motor torque required to overcome the load inertia within the steering segment. The planning controller adds the calculated torque feedforward compensation value to the motor torque command corresponding to that edge, and sends it to the steering drive motor controller along with or several control cycles in advance of the speed feedforward command. When entering the steering edge, the steering drive motor controller adds the torque feedforward compensation value to the torque adjustment amount output by the speed loop, and uses it as the final torque command to drive the motor.

[0133] Furthermore, the coordinated operation of speed feedforward and torque feedforward is as follows: when the moving vehicle is about to enter a turning edge, the speed feedforward command switches the target speed to the recommended driving speed of that edge in advance, and the torque feedforward compensation value is simultaneously loaded into the torque command of the steering motor in advance. Speed ​​feedforward enables the travel drive system to start adjusting the vehicle speed to a safe range before entering the turning segment, while torque feedforward enables the steering drive system to output the additional torque required to overcome load inertia at the moment of steering. The two work together to avoid the timing misalignment between vehicle speed and steering action caused by controller response delay.

[0134] Preferably, under heavy load conditions, the inertia influence factor is larger, and the torque feedforward compensation value of the steering side is correspondingly increased. The steering motor obtains an additional torque component to overcome the inertial resistance torque at the start of steering, and the response speed of the steering action remains consistent with that under no-load conditions. There will be no steering lag or significant drop in driving speed during steering due to increased load inertia. Under light load or no-load conditions, the inertia influence factor approaches zero, the torque feedforward compensation value can be ignored, and the motor torque command is dominated by speed loop feedback regulation. The system operation mode is no different from conventional servo control.

[0135] like Figure 2 As shown, a load-aware A* algorithm path cost adjustment system is used to implement a load-aware A* algorithm path cost adjustment method, including:

[0136] The data acquisition module acquires the route planning request, the environmental map, and the cargo weight information corresponding to the route planning request.

[0137] The inertial analysis module calculates the inertial power consumption ratio based on the cargo weight information and the mass of the mobile vehicle, and converts the inertial power consumption ratio into an inertial influence factor through a preset first nonlinear mapping function.

[0138] In the A-star path search process based on the environmental map, the passage cost analysis module calculates the passage cost by inputting the inertial influence factor and the action type into a preset cost adjustment function for candidate edges that start from the current node and have action type attributes. The cost adjustment function includes: for turning actions, the increment of the passage cost and the inertial influence factor form an exponential relationship.

[0139] The path planning module substitutes the travel cost of candidate edges into the evaluation function of the A* algorithm and outputs the target path from the starting position to the target position.

[0140] The above description is merely a preferred embodiment of this application. The scope of protection of this application is not limited to the above embodiments. All technical solutions falling within the scope of this application's concept are within the scope of protection of this application. It should be noted that for those skilled in the art, any improvements and modifications made without departing from the principles of this application should also be considered within the scope of protection of this application.

Claims

1. A load-aware A* algorithm path cost adjustment method, characterized in that, include: Obtain the route planning request, the environment map, and the cargo weight information corresponding to the route planning request; Based on the cargo weight information and the mass of the mobile vehicle, the inertial power consumption ratio is calculated, and the inertial power consumption ratio is converted into an inertial influence factor through a preset first nonlinear mapping function; wherein, the first nonlinear mapping function includes: when the inertial power consumption ratio is less than or equal to a preset inflection point value, the inertial influence factor is equal to the product of the inertial power consumption ratio and a preset first constant coefficient; when the inertial power consumption ratio is greater than the preset inflection point value, the inertial influence factor is equal to the product of the square of the inertial power consumption ratio and a preset second constant coefficient; Obtain the real-time maximum output torque value of the current drive motor of the mobile vehicle and the remaining battery power percentage; multiply the real-time maximum output torque value and the remaining battery power percentage to obtain the torque capability value; multiply the torque capability value by a preset conversion factor as the safety threshold. During the path search for A-planet based on the environmental map, for candidate edges that start from the current node and have action type attributes, the inertial influence factor and action type are input into a preset cost adjustment function to calculate the passage cost. The cost adjustment function includes: for turning actions, the increment of the passage cost has an exponential relationship with the inertial influence factor; when the action type is a turning action and the inertial influence factor is greater than the safety threshold, the candidate edge is marked as impassable. The passage cost of the candidate edges is substituted into the evaluation function of the A* algorithm, and the target path from the starting position to the target position is output. The target path includes: the suggested travel speed of each edge; for the edge with the action type of turning action, the suggested travel speed is obtained by solving the rollover moment balance equation by the wheel track of the moving vehicle, the center of gravity height, the inertial influence factor and the turning angle of the turning action, so that the rollover moment generated by centrifugal force at the suggested travel speed is less than the stabilizing moment generated by gravity. Based on the suggested driving speed and path geometry information of each side on the target path, a speed feedforward command is generated. For the side with a steering action, the torque feedforward compensation value is calculated based on the product of the inertia influence factor and the steering angle of the steering action, and the torque feedforward compensation value is superimposed on the motor torque command of the corresponding side.

2. The load-aware A* algorithm path cost adjustment method according to claim 1, characterized in that, The cargo weight information is collected in real time by weighing sensors deployed on the mobile vehicle's carrying mechanism and then processed by low-pass filtering. The cutoff frequency of the low-pass filtering is configured according to an inverse proportional function relationship with the current speed of the mobile vehicle. The inverse proportional function relationship means that the cutoff frequency decreases by one octave for every doubling of the current speed.

3. The load-aware A* algorithm path cost adjustment method according to claim 1, characterized in that, The first nonlinear mapping function is implemented through a pre-generated mapping table. The sampling points of the inertial power consumption ratio in the mapping table are arranged in a geometric sequence. The ratio of adjacent sampling points is fixed, and the intermediate value between adjacent sampling points in the mapping table is determined by linear interpolation.

4. The load-aware A* algorithm path cost adjustment method according to claim 1, characterized in that, Each edge in the environment map is associated with an action parameter, wherein the action parameter associated with a turning action is the turning angle, and the action parameter associated with a lifting action is the lifting height; the cost adjustment function includes: for a turning action, the passage cost is determined by the product of the candidate edge's base cost, the inertia influence factor, and the turning angle.

5. The load-aware A* algorithm path cost adjustment method according to claim 4, characterized in that, The cost adjustment function further includes: for lifting and lowering actions, the passage cost is determined by the sum of the basic cost and the additional cost of the candidate edge, wherein the additional cost is determined by the product of the inertial influence factor and the lifting and lowering height.

6. A load-aware A* algorithm path cost adjustment system, used to implement the load-aware A* algorithm path cost adjustment method as described in any one of claims 1 to 5, characterized in that, include: The data acquisition module acquires the route planning request, the environmental map, and the cargo weight information corresponding to the route planning request. The inertial analysis module calculates the inertial power consumption ratio based on the cargo weight information and the mass of the mobile vehicle, and converts the inertial power consumption ratio into an inertial influence factor through a preset first nonlinear mapping function. In the A-star path search process based on the environmental map, the passage cost analysis module calculates the passage cost by inputting the inertial influence factor and the action type into a preset cost adjustment function for candidate edges that start from the current node and have action type attributes. The cost adjustment function includes: for turning actions, the increment of the passage cost and the inertial influence factor form an exponential relationship. The path planning module substitutes the travel cost of candidate edges into the evaluation function of the A* algorithm and outputs the target path from the starting position to the target position.

Citation Information

Patent Citations

  • Steering cost-fused dynamic path planning method for four-way shuttle vehicle

    CN121252817A

  • Mobile robot path optimization system and method supporting track mode switching

    CN121625171A