Method for controlling movement of electric kick scooter, electric kick scooter and storage medium

CN122431219APending Publication Date: 2026-07-21BRIGHTWAY INNOVATION INTELLIGENT TECH (SUZHOU) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
BRIGHTWAY INNOVATION INTELLIGENT TECH (SUZHOU) CO LTD
Filing Date
2026-05-19
Publication Date
2026-07-21

Smart Images

  • Figure CN122431219A_ABST
    Figure CN122431219A_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a kind of electric scooter movement control method, electric scooter and storage medium, wherein the method comprises: obtaining the obstacle information of each obstacle in the obstacle set on the travel path of electric scooter, wherein the obstacle information of each obstacle includes the model information of the obstacle geometric model of each obstacle;According to the vehicle information of electric scooter and the obstacle information of each obstacle, a set of feasible paths within the path planning time is planned for electric scooter, wherein the vehicle information of electric scooter includes the vehicle state information of electric scooter and the model information of the vehicle geometric model of electric scooter;Based on the target position of the followed target of electric scooter, select target path from a set of feasible paths to carry out target following.Through the present application, the safety of the movement control method of electric scooter in the related art is poor, and the effect of improving safety is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of electric scooters, and more specifically, to a method for controlling the movement of an electric scooter, an electric scooter, and a storage medium. Background Technology

[0002] In related technologies, the self-following mode of electric scooters generally adjusts the current speed and direction of the electric scooter by obtaining the current position information of the target being followed. However, this following method is prone to ignoring obstacles in the environment, resulting in a high risk of collision. Furthermore, since the speed and direction are calculated in real time based only on the target position, the movement is a point-to-point straight-line tracking, which may lead to frequent sharp turns and sudden stops.

[0003] It is evident that the motion control methods for electric scooters in related technologies suffer from poor safety due to the failure to consider obstacles in the environment. Summary of the Invention

[0004] This application provides a method for controlling the movement of an electric scooter, an electric scooter, and a storage medium, to at least solve the technical problem in related technologies where the movement control method for electric scooters has poor safety due to the failure to consider obstacles in the environment.

[0005] According to one aspect of the embodiments of this application, a method for controlling the movement of an electric scooter is provided, comprising: acquiring obstacle information of each obstacle in a set of obstacles on the travel path of the electric scooter, wherein the obstacle information of each obstacle includes model information of the obstacle geometry model of each obstacle; planning a set of feasible paths for the electric scooter within a path planning time based on the vehicle information of the electric scooter and the obstacle information of each obstacle, wherein the vehicle information of the electric scooter includes vehicle state information and model information of the vehicle geometry model of the electric scooter; selecting a target path from the set of feasible paths based on the target position of the target being followed by the electric scooter, and controlling the electric scooter to follow the target according to the target path.

[0006] According to another aspect of the embodiments of this application, a motion control device for an electric scooter is also provided, comprising: an acquisition unit, configured to acquire obstacle information of each obstacle in a set of obstacles on the travel path of the electric scooter, wherein the obstacle information of each obstacle includes model information of the obstacle geometry model of each obstacle; a planning unit, configured to plan a set of feasible paths for the electric scooter within a path planning time based on the vehicle information of the electric scooter and the obstacle information of each obstacle, wherein the vehicle information of the electric scooter includes vehicle state information of the electric scooter and model information of the vehicle geometry model of the electric scooter; and a control unit, configured to select a target path from the set of feasible paths based on the target position of the target being followed by the electric scooter, and control the electric scooter to follow the target according to the target path.

[0007] According to another aspect of the embodiments of this application, a computer-readable storage medium is also provided, wherein a computer program is stored in the computer program, wherein the computer program is configured to perform the steps in any of the above method embodiments when executed by a processor.

[0008] According to another aspect of the embodiments of this application, a computer program product or computer program is provided, the computer program product or computer program including computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, causing the computer device to perform the steps in any of the method embodiments described above.

[0009] According to another aspect of the embodiments of this application, an electric scooter is also provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of any of the above methods.

[0010] This application obtains obstacle information for each obstacle in the obstacle set along the electric scooter's path, and based on the scooter's vehicle information and the obstacle information of each obstacle, obtains a set of feasible paths for the electric scooter within the path planning time. By fully considering the impact of each obstacle on the electric scooter's movement during path planning, collisions can be effectively avoided, enhancing the safety of the electric scooter following. This solves the technical problem in related technologies where the movement control methods for electric scooters suffer from poor safety due to the failure to consider obstacles in the environment. Simultaneously, based on the target position of the target being followed, a target path is selected from the set of feasible paths for target following. Under the premise of effective obstacle avoidance, the scooter can maintain a more precise following posture, optimizing the following path. Attached Figure Description

[0011] Figure 1 This is a schematic diagram illustrating an application scenario of a motion control method for an electric scooter according to an embodiment of this application.

[0012] Figure 2 This is a flowchart illustrating an optional method for controlling the movement of an electric scooter according to an embodiment of this application.

[0013] Figure 3 This is a schematic diagram of an optional electric scooter movement control method according to an embodiment of this application;

[0014] Figure 4 This is a flowchart illustrating another optional method for controlling the movement of an electric scooter according to an embodiment of this application.

[0015] Figure 5 This is a structural block diagram of an optional electric scooter motion control device according to an embodiment of this application;

[0016] Figure 6 This is a computer system architecture block diagram of an optional electronic device according to an embodiment of this application. Detailed Implementation

[0017] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.

[0018] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0019] According to one aspect of the embodiments of this application, a method for controlling the movement of an electric scooter is provided. Optionally, in this embodiment, the above-described method for controlling the movement of an electric scooter may be applied, but is not limited to, to applications such as... Figure 1 The hardware environment shown includes an electric scooter 102 and a server 104. The server 104 can be connected to the electric scooter 102 via a network and can be used to provide services (e.g., application services, etc.) to the electric scooter 102 or clients installed on the electric scooter 102. A database can be set up on or independently of the server 104 to provide data storage services for the server 104.

[0020] The aforementioned network may include, but is not limited to, at least one of the following: wired network, wireless network. The aforementioned wired network may include, but is not limited to, at least one of the following: wide area network, metropolitan area network, local area network. The aforementioned wireless network may include, but is not limited to, at least one of the following: Wireless Fidelity (WIFI), Bluetooth. Server 104 may be, but is not limited to, a cloud server, server cluster, or other server type.

[0021] The electric scooter movement control method of this application embodiment can be executed by server 104, electric scooter 102, or jointly by server 104 and electric scooter 102. Alternatively, the electric scooter 102 can execute the electric scooter movement control method of this application embodiment by a client installed on it.

[0022] Taking the electric scooter 102 as an example to implement the electric scooter movement control method in this embodiment, Figure 2 This is a flowchart illustrating an optional motion control method for an electric scooter according to an embodiment of this application, as shown below. Figure 2 As shown, the process of this method may include the following steps:

[0023] Step S202: Obtain obstacle information for each obstacle in the obstacle set on the electric scooter's travel path, wherein the obstacle information for each obstacle includes model information of the obstacle geometry model of each obstacle;

[0024] Step S204: Based on the vehicle information of the electric scooter and the obstacle information of each obstacle, plan a set of feasible paths for the electric scooter within the path planning time. The vehicle information of the electric scooter includes the vehicle status information of the electric scooter and the model information of the vehicle geometry model of the electric scooter.

[0025] Step S206: Based on the target position of the electric scooter being followed, select a target path from a set of feasible paths, and control the electric scooter to follow the target according to the target path.

[0026] The electric scooter movement control method in this embodiment can be applied to the field of electric scooters, specifically to scenarios where the electric scooter is in self-following mode. In this embodiment, the electric scooter may include components such as pedals, handlebars, a motor, a battery pack, wheels, a control system, a sensing system, and a folding mechanism. Self-following of the electric scooter refers to an intelligent motion control mode where, without direct human intervention, the electric scooter automatically identifies and continuously tracks and follows a designated target (such as the user, a backpack, a trolley, or other marker), and adjusts its own position and speed in real time according to the movement of the designated target to maintain a safe, stable, and continuous following state.

[0027] In related technologies, the self-following mode of electric scooters typically adjusts the scooter's speed and direction of movement by acquiring the current position information of the target being followed. However, this following method easily overlooks obstacles in the environment, leading to a higher risk of collision. Furthermore, because speed and direction are calculated in real time only based on the target's position, the movement is a point-to-point linear tracking, which may result in frequent sharp turns and sudden stops. Therefore, it is evident that the movement control methods for electric scooters in related technologies suffer from poor safety due to the failure to consider obstacles in the environment.

[0028] To at least partially address the aforementioned technical problems, this embodiment obtains obstacle information for each obstacle in the obstacle set along the electric scooter's path. Based on the electric scooter's vehicle information and the obstacle information of each obstacle, a set of feasible paths for the electric scooter within the path planning time is obtained. By fully considering the impact of each obstacle on the electric scooter's movement during path planning, collisions can be effectively avoided, enhancing the safety of the electric scooter following. This solves the technical problem in related technologies where the movement control methods for electric scooters suffer from poor safety due to the failure to consider obstacles in the environment. Simultaneously, based on the target position of the target being followed by the electric scooter, a target path is selected from the set of feasible paths for target following. Under the premise of effective obstacle avoidance, the scooter can maintain a more precise following posture, optimizing the following path.

[0029] Optionally, sensing devices installed on the electric scooter can be used to perform real-time sensing along the scooter's travel path, acquiring a set of obstacles and obstacle information for each obstacle within that set. It should be noted that the sensing devices can be used to detect and acquire obstacle information in the environment surrounding the electric scooter in real time. Optionally, there can be one or more sensing devices. The types of sensing devices can include visual sensors, radar sensors, inertial measurement units, or GPS (Global Positioning System) positioning systems, etc. When there are multiple sensing devices, they can include a combination of at least two of the above types. The sensing devices can be installed at the front of the handlebars, the top of the handlebars, the sides of the handlebars, the rear, under the chassis, or integrated into the control board of the electric scooter. When there are multiple sensing devices, they can be installed at different locations on the electric scooter based on their different types, enabling obstacle sensing from multiple angles around the scooter. Multiple sensing devices can be centrally arranged forward, combined with forward and lateral arrangements, or evenly distributed around the scooter in all directions.

[0030] Optionally, the electric scooter can be connected to a cloud server via a network. The cloud server aggregates real-time environmental data collected from multiple mobile smart devices, surveillance cameras, and drones. After preprocessing the real-time environmental data, such as time and spatial alignment, target detection is performed on the real-time environmental data to obtain a set of obstacles and obstacle information for each obstacle in the set.

[0031] The obstacle set is a collection of all static or dynamic objects within a preset perception range around the electric scooter, acquired in real time during its movement. The obstacle set can contain one or more obstacles. The update frequency of the obstacle set can be determined based on the number of obstacles in the current obstacle set, the obstacle density in the current obstacle set, the current speed of the electric scooter, and system power consumption and computing power constraints.

[0032] An obstacle is a static or dynamic physical object that, while the electric scooter is in motion, is within its preset sensing range and may interfere with or pose a collision risk to the scooter's safe following. Obstacles can include static obstacles (such as curbs, guardrails, lampposts, traffic signs, building walls, fixed seats, flower beds, utility poles, etc.) or dynamic obstacles (pedestrians, other electric scooters, bicycles, cars, wheelchairs, shopping carts, etc.). Obstacle information is information about obstacles obtained through sensing devices for path planning. Optionally, obstacle information may include obstacle location, obstacle speed, obstacle acceleration, obstacle geometry, obstacle dimensions, obstacle confidence level, and obstacle type identification (used to identify the category of the obstacle, such as pedestrian category, vehicle category, etc.).

[0033] It should be noted that the obstacle geometry model is a geometric representation model used to characterize the spatial shape and structure of each obstacle. Optionally, different obstacle geometry models can be established for each obstacle type. For example, polygonal, circular, or elliptical obstacle geometry models can be established for static obstacles, while dynamic obstacles can utilize moving bounding boxes or velocity prediction elliptical obstacle combination models. Optionally, obstacle information may include obstacle type, obstacle geometry model type, obstacle size information, obstacle location information, etc.

[0034] It should be noted that the vehicle information of an electric scooter refers to key dynamic parameters describing the scooter's current motion state and spatial position. Vehicle information may include current vehicle position, current vehicle speed, current vehicle heading angle, current vehicle attitude angle, current acceleration, current battery charge, ground adhesion coefficient, and current vehicle load parameters.

[0035] Based on the vehicle information of the electric scooter and the obstacle information of each obstacle, a set of feasible paths is planned for the electric scooter within a preset path planning time. It should be noted that a set of feasible paths is a collection of multiple candidate trajectories generated based on obstacle information within the path planning time. The path planning time is a future time window set by the control unit for path planning while the electric scooter is traveling along its path, used to determine whether a path generated within this time range is feasible. Optionally, the path planning time may include a collision prediction time (used to predict whether there is a potential collision risk between the electric scooter and obstacles within this time period) and a target tracking prediction time (used to predict the movement path of the target being followed within this time period). When the path planning time is the collision prediction time, the path planning time can be adaptively adjusted based on multiple factors such as the electric scooter's speed, the path environment, the refresh frequency of the perception system, and the system response latency.

[0036] Optionally, the process of determining a set of feasible paths for the electric scooter within the path planning time may include: obtaining an environmental map of the electric scooter's travel path; based on the current vehicle position of the electric scooter and the target position of the followed target in the environmental map, traversing all possible paths in the environmental map using a graph search algorithm; and filtering all possible paths based on constraints to obtain a set of feasible paths. The constraints may include a no-collision constraint (there is no collision risk for the electric scooter in the feasible path), a length constraint (the total length of the feasible path does not exceed a certain length threshold), and a turning number constraint (the number of times the electric scooter changes direction in the feasible path exceeds a certain preset number).

[0037] Based on the target location of the electric scooter being followed, a target path is selected from a set of feasible paths. The target being followed is an external physical object that the electric scooter needs to actively track and maintain a safe following distance in self-following mode. The target being followed can include the user wearing a smart device, other smart mobile devices, or specific human bodies or objects identified by visual sensors or radar sensors. The current target location refers to the spatial coordinates of the target being followed relative to the electric scooter's own coordinate system or global coordinate system at the current timestamp.

[0038] Optionally, the method for obtaining the target location may include at least one of the following: receiving an ultra-wideband (UWB) signal with a unique identifier continuously broadcast by a smart device carried by the target being followed, and calculating the current target location of the target being followed using a time difference of arrival or angle of arrival algorithm; or acquiring images using a visual sensor on an electric scooter, identifying the target being followed in the images, and calculating the target location of the target being followed using a depth estimation algorithm, etc. The target location can also be obtained using a Global Positioning System carried by the target being followed.

[0039] Optionally, if the target position of the followed target is not effectively obtained after a preset time threshold is exceeded, the current position information of the followed target can be estimated by using a motion prediction model based on the historical position and historical velocity of the followed target.

[0040] Based on the target position of the followed target, the selection criteria for choosing a target path from a set of feasible paths may include: the distance between the end point of each feasible path and the target position of the followed target, the direction angle from the end point of the path to the current position of the followed target, the smoothness of the feasible path, and the inertia retention of the historical following trajectory (prioritizing the feasible path that is closest to the path direction of the previous moment).

[0041] Optionally, obstacles located behind the electric scooter are not included in the obstacle set. Specifically, obstacles located behind the electric scooter and at a distance greater than or equal to 0.5m from the electric scooter in the direction of travel can be filtered out. If a vehicle coordinate system is established with the electric scooter as the origin, the direction of travel of the electric scooter as the positive x-axis, and the direction perpendicular to the direction of travel of the electric scooter as the y-axis, obstacles whose horizontal coordinates are less than -0.5m can be filtered out.

[0042] This embodiment acquires obstacle information for each obstacle in the obstacle set along the electric scooter's path. Based on the electric scooter's vehicle information and the obstacle information of each obstacle, a set of feasible paths for the electric scooter within the path planning time is obtained. By fully considering the impact of each obstacle on the electric scooter's movement during path planning, collisions can be effectively avoided, enhancing the safety of the electric scooter following. This solves the technical problem in related technologies where the movement control methods for electric scooters suffer from poor safety due to the failure to consider obstacles in the environment. Simultaneously, based on the target position of the target being followed, a target path is selected from the set of feasible paths for target following. Under the premise of effective obstacle avoidance, the scooter can maintain a more precise following posture, optimizing the following path.

[0043] In an exemplary embodiment, based on the vehicle information of the electric scooter and the obstacle information of each obstacle, a set of feasible paths is planned for the electric scooter within the path planning time. This includes: determining the candidate linear velocity range and the candidate angular velocity range of the electric scooter based on the vehicle state information and the obstacle information of each obstacle; traversing the combinations of candidate linear velocities within the candidate linear velocity range and candidate angular velocities within the candidate angular velocity range, and generating a candidate path for the electric scooter within the path planning time based on the traversed combinations of candidate linear velocities and candidate angular velocities, thus obtaining a set of candidate paths; and selecting a set of feasible paths from the set of candidate paths based on the vehicle information of the electric scooter and the obstacle information of each obstacle, wherein each feasible path in the set of feasible paths is a candidate path in which there is no risk of collision between the electric scooter and any obstacle in the obstacle set.

[0044] It should be noted that the candidate linear velocity range is a discrete set containing multiple candidate linear velocities. The candidate linear velocity is a set of possible forward velocity values ​​determined by the electric scooter based on the current vehicle state and obstacle information. These velocity values ​​are discrete or continuous values ​​within a reasonable range selected based on physical constraints and safety requirements.

[0045] The candidate angular velocity range is a discrete set containing multiple candidate angular velocities. The candidate angular velocity is a set of possible turning rates of the electric scooter's front direction determined based on the current vehicle state and obstacle information. These turning rates are discrete or continuous values ​​within a reasonable range selected based on physical constraints and safety requirements.

[0046] Traversal generally refers to exhaustively searching all combinations within a range of values ​​according to a certain step size. In this embodiment, traversal refers to exhaustively searching all combinations of candidate linear velocities within the candidate linear velocity range and candidate angular velocities within the candidate angular velocity range. Optionally, the method for determining the linear velocity sampling step size within the candidate linear velocity range may include: calculating the maximum linear velocity change of the electric scooter within the path planning time based on the candidate linear velocity range, setting the linear velocity sampling step size to k times the maximum linear velocity change, where k is a decimal between 0 and 1, with a value range of [0.1, 0.3]; setting the linear velocity sampling step size to β times the minimum identifiable obstacle distance to the electric scooter, where β is a proportionality coefficient, with a value range of [0.5, 1.5], to ensure that the sampling density is sufficient to detect potential collision risks. Sampling can be uniform within a candidate linear velocity range, or more intensive sampling can be performed within key velocity ranges of the linear velocity range.

[0047] Optionally, the method for determining the angular velocity sampling step size for traversing the candidate angular velocity range may include: calculating the maximum angular velocity change of the electric scooter within the path planning time based on the candidate angular velocity range, setting the angular velocity sampling step size to q times the maximum angular velocity change, where q is between 0 and 1, and the value range can be [0.1, 0.4]; setting the angular velocity sampling step size to w times the angle with the minimum identifiable obstacle of the electric scooter, where w is a proportionality coefficient, and the value range can be [0.5, 1.5].

[0048] It should be noted that the candidate path is a hypothetical trajectory generated during the path planning process, based on a combination of linear and angular velocities currently traversed. This trajectory simulates the electric scooter moving at a constant or near-constant speed within the path planning time. Each combination of linear and angular velocities corresponds to a candidate path. The electric scooter may collide with obstacles along these candidate paths, necessitating collision risk detection for each combination of the electric scooter and each obstacle.

[0049] In this embodiment, collision risk detection refers to the prediction by a collision detection model composed of the electric scooter's vehicle geometry model and the obstacle geometry models of each obstacle in the current candidate path of the electric scooter, indicating whether a physical collision may occur in each candidate path, i.e., whether there is a collision risk. The collision detection results of the vehicle geometry model and the obstacle geometry models of each obstacle can be determined based on whether there are overlapping areas, tangent points, or excessively close distances between the vehicle geometry model and the obstacle geometry model (e.g., the closest distance between the vehicle geometry model and the obstacle geometry model is less than a certain distance threshold). If any obstacle geometry model and the vehicle geometry model exhibit the above conditions, it indicates that there is a collision risk in the current candidate path. If none of the obstacle geometry models and the vehicle geometry models exhibit the above conditions, it indicates that there is no collision risk in the current candidate path, and the current candidate path is considered a feasible path.

[0050] For example, based on preset speed resolution and preset angular velocity resolution, all combinations of linear velocity (i.e., candidate linear velocity) and angular velocity (i.e., candidate angular velocity) within the dynamic window are traversed. According to the current vehicle information and the preset path planning time, a kinematic model is used to calculate the path (i.e., candidate path) within that path planning time. The system then checks whether this path poses a collision risk with obstacles. If so, the speed combination is discarded, and the calculation and judgment of the next combination continues. Otherwise, the kinematic model and the path prediction time (i.e., path planning time) are used to calculate the planned path (i.e., feasible path).

[0051] In this embodiment, candidate linear velocity ranges and candidate angular velocity ranges are determined based on vehicle and obstacle information of the electric scooter. The current candidate path is obtained based on the combination of candidate linear velocity and candidate angular velocity obtained through traversal. Collision risk detection is performed on each combination of multiple vehicle circles and obstacle circles in the current candidate path to determine whether the current candidate path is a feasible path. A precise collision risk assessment is performed on each current candidate path, ensuring that each planned feasible path has no collision risk, thereby improving the safety of electric scooter movement.

[0052] In an exemplary embodiment, the vehicle state information includes the vehicle position and the vehicle linear velocity, and the obstacle information for each obstacle includes the obstacle position of each obstacle. Based on the vehicle state information and the obstacle information for each obstacle, determining the candidate linear velocity range and the candidate angular velocity range of the electric scooter includes: determining a first linear velocity range based on the vehicle linear velocity, a preset linear acceleration, and a preset time step; determining the minimum obstacle distance between the electric scooter and all obstacles in the obstacle set based on the vehicle position and the obstacle positions of each obstacle; if the minimum obstacle distance is greater than or equal to a first distance threshold, determining a first reference linear velocity based on the distance difference between the minimum obstacle distance and the first distance threshold, and determining a second linear velocity range by the linear velocity range from the preset minimum linear velocity threshold to the first reference linear velocity; and determining the intersection of the first linear velocity range, the second linear velocity range, and the preset linear velocity range as the candidate linear velocity range, wherein the preset linear velocity range is the linear velocity range from the minimum linear velocity threshold to the preset maximum linear velocity threshold.

[0053] It should be noted that the candidate linear velocity range can be determined based on multiple linear velocity ranges. Optionally, a first linear velocity range can be determined based on the vehicle's linear velocity, a preset linear acceleration, and a preset time step. It should be noted that the vehicle's linear velocity is the instantaneous velocity of the electric scooter at the current moment, and the first linear velocity range is the boundary of linear velocity change that the electric scooter can achieve within a preset time step, based on the vehicle's linear velocity and under the action of a preset linear acceleration. The preset linear acceleration is the maximum allowable linear acceleration of the electric scooter on its travel path, used to constrain the maximum range within which the candidate linear velocity can increase or decrease within the preset time step. The preset linear acceleration is not a fixed absolute value, but a safety upper limit value comprehensively set based on factors such as vehicle hardware capabilities, load conditions, ground friction coefficient, and environmental risk level.

[0054] The minimum obstacle distance is the minimum distance between the electric scooter and all obstacles at the current moment, and it is a core parameter used to assess whether there is a potential collision risk. When the minimum obstacle distance is greater than or equal to the first distance threshold, the electric scooter maintains a sufficient safe distance from all surrounding obstacles at the current moment, and is in a relatively relaxed and low-risk riding environment. It should be noted that the first distance threshold is a preset safe distance standard, representing the minimum safe boundary for normal acceleration or maintaining a high speed, and can be set based on vehicle dynamic performance (such as braking distance and steering ability) and user experience (such as avoiding abrupt deceleration).

[0055] A first reference linear velocity is determined based on the distance difference between the minimum obstacle distance and a first distance threshold. Optionally, the first reference linear velocity and the distance difference should be positively correlated, that is, the larger the distance difference, the larger the first reference linear velocity, and the smaller the distance threshold, the smaller the first reference linear velocity.

[0056] It should be noted that the second linear speed range refers to the permissible linear speed interval for the electric scooter under the premise of meeting obstacle avoidance safety requirements. The lower boundary of the second linear speed range is the preset minimum linear speed threshold, and the upper boundary is the first reference linear speed. The preset minimum linear speed threshold is a pre-set minimum linear speed used to limit the electric scooter's ability to use in self-following mode. This ensures that the electric scooter will not fail to effectively track the target due to excessively low speed during self-following and will not experience a decrease in dynamic stability due to excessively low speed. The preset minimum linear speed threshold can be dynamically adjusted based on the minimum stable operating speed of the electric scooter's self-balancing system, obstacle avoidance response capability, and different ground conditions (such as grass and ramps), or it can be user-defined and can be 0.2 m / s, 0.3 m / s, etc.

[0057] The preset linear speed range refers to the global allowable linear speed interval set for an electric scooter in self-following mode, based on its hardware performance, safety constraints, and user experience goals. It constrains the range of candidate linear speeds during path planning, preventing loss of control, abnormal energy consumption, or failure to follow due to excessively high or low speeds. The maximum linear speed threshold is typically set between 2.5 m / s and 4.0 m / s, and can be determined based on factors such as the public road speed limit for the electric scooter, the motor's rated power, battery discharge capacity, wheel diameter and transmission efficiency, sufficient braking distance to handle sudden obstacles, and the maximum linear speed required to ensure the effectiveness of the sensing equipment.

[0058] In this embodiment, a first linear velocity range is obtained based on a preset linear acceleration limit, and a second linear velocity range is obtained based on an obstacle distance limit. The intersection of the first linear velocity range, the second linear velocity range, and the preset linear velocity range is used as a candidate linear velocity range. Based on vehicle dynamic constraints, obstacle distance, and vehicle steering capability, limiting the candidate linear velocity significantly improves the efficiency and safety of path planning.

[0059] In an exemplary embodiment, determining a first linear velocity range based on a vehicle linear velocity, a preset linear acceleration, and a preset time step includes: determining a linear velocity range from a second reference linear velocity to a third reference linear velocity as the first linear velocity range; wherein the second reference linear velocity is the difference between the vehicle linear velocity and the product of the preset linear acceleration and the preset time step, and the third reference linear velocity is the sum of the products of the vehicle linear velocity and the preset linear acceleration and the preset time step.

[0060] It should be noted that the second reference linear velocity is the lowest possible linear velocity that can be achieved within a preset time step with a negative preset linear acceleration, based on the vehicle's linear velocity. It represents the lowest speed the scooter can decelerate to within the preset time step if it brakes immediately at the vehicle's linear velocity. The third reference linear velocity is the highest possible linear velocity that can be achieved within the preset time step with a positive preset linear acceleration, based on the vehicle's linear velocity. It represents the maximum speed the scooter can increase to within the preset time step if it accelerates immediately at the vehicle's linear velocity.

[0061] For example, if the vehicle's linear velocity is 1.6 m / s, the preset linear acceleration is 0.8 m / s, and the preset time step is 1 s, then the second reference linear velocity is 0.8 m / s, the third reference linear velocity is 2.4 m / s, and the first linear velocity range is [0.8 m / s, 2.4 m / s].

[0062] This embodiment accurately calculates the possible range of linear velocity changes (i.e., the first linear velocity range) of the electric scooter within a preset time step based on the current linear velocity and the preset linear acceleration and time step. It strictly follows vehicle dynamics constraints (acceleration limits), avoids generating unachievable high-speed or sharp turning paths, and reduces the risk of loss of control.

[0063] In an exemplary embodiment, determining a first reference linear velocity based on the distance difference between the minimum obstacle distance and a first distance threshold includes: determining the first reference linear velocity as the square root of the product of a preset coefficient, a preset linear acceleration, and the distance difference, wherein the preset coefficient is greater than or equal to 1.

[0064] It should be noted that the preset coefficient is a weighting factor that dynamically adjusts the safety buffer speed. It is used to adaptively adjust the maximum allowable linear speed limit based on the remaining safe distance (i.e., distance difference) between the electric scooter and the obstacle. This quantifies the non-linear relationship between safety margin and deceleration requirements, maintaining a relatively high following speed while ensuring safety, thereby improving user experience and system efficiency. The preset coefficient can be adaptively adjusted based on environmental type (e.g., urban area, park), weather conditions, the behavior of the followed target, and other factors.

[0065] For example, the maximum linear velocity (i.e., the first reference linear velocity) is calculated based on the difference between the minimum obstacle distance min_obs_dist and the safe distance safe_dist: v_obs_max = (2 param_a_vmax (min_obs_dist-safe_dist))1 / 2.

[0066] In this embodiment, a first reference linear velocity is determined based on a preset coefficient, a preset linear acceleration, and a distance difference. By introducing a preset coefficient, the maximum allowable linear velocity is dynamically adjusted, achieving more intelligent and safer adaptive linear velocity control. Furthermore, by introducing a distance difference, the first reference linear velocity is adjusted in real time according to the environmental safety margin, thereby proactively reducing the risk of collision.

[0067] In an exemplary embodiment, the vehicle state information includes vehicle position, vehicle linear velocity, and vehicle angular velocity, and the obstacle information for each obstacle includes the obstacle position for each obstacle. Based on the vehicle state information and the obstacle information for each obstacle, determining the candidate linear velocity range and the candidate angular velocity range of the electric scooter includes: determining a first angular velocity range based on the vehicle angular velocity, a preset angular acceleration, and a preset time step; determining a reference angular velocity based on the vehicle linear velocity, a preset maximum steering angle, and the wheelbase of the electric scooter when the vehicle linear velocity is greater than zero; determining the angular velocity range from the negative reference angular velocity to the reference angular velocity as a second angular velocity range; and determining the intersection of the first angular velocity range, the second angular velocity range, and the preset angular velocity range as the candidate angular velocity range, wherein the preset angular velocity range is the angular velocity range from a preset minimum angular velocity threshold to a preset maximum angular velocity threshold.

[0068] It should be noted that the vehicle angular velocity is the magnitude of the angular velocity of the electric scooter's rotation around its vertical axis at the current moment, used to represent how quickly the electric scooter's heading changes. The preset time step is a fixed time interval used to discretize the time dimension, typically a few seconds or milliseconds, indicating how often the vehicle's motion state is updated or predicted. The first angular velocity range is the boundary of angular velocity change that the electric scooter can achieve under the action of a preset angular acceleration, based on the vehicle's angular velocity within a preset time step. The preset angular acceleration is the maximum permissible steering acceleration of the electric scooter in its travel path, used to represent the maximum angular velocity change in the heading per unit time. The preset angular acceleration is not a fixed absolute value, but a safety upper limit set comprehensively based on factors such as vehicle hardware capabilities, load conditions, ground friction coefficient, and environmental risk level. Candidate angular accelerations can be set based on the physical limits of the motor and steering mechanism, measured data (by collecting a large amount of angular velocity change data during turning, fitting a reasonable angular acceleration range as the input basis for the preset angular acceleration), etc.

[0069] The preset maximum steering angle is the maximum deflection angle that the front wheel (or handlebars) of an electric scooter is allowed to achieve relative to the vehicle's longitudinal axis (direction of travel) along its travel path. The preset maximum steering angle is determined by the physical limits of the vehicle's dynamics and steering mechanism, and is typically set during the electric scooter design phase and constrained for safety through control algorithms. The preset maximum steering angle limits the upper limit of candidate angular velocities, preventing the vehicle from skidding, becoming unstable, or tipping over due to oversteering. Generally, the preset maximum steering angle can be set between ±30° and ±45°.

[0070] Wheelbase is the straight-line distance between the centers of the front and rear wheels of an electric scooter, i.e., the projected length of the front and rear wheel axles in the longitudinal direction. It determines the vehicle's steering response characteristics and dynamic stability. A larger wheelbase results in a larger turning radius for the same steering angle, while a smaller wheelbase results in a smaller turning radius for the same steering angle. Angular velocity is the ratio of linear velocity to the turning radius. Therefore, a reference angular velocity can be determined based on the current linear velocity, a preset maximum angular velocity, and the wheelbase. The reference angular velocity is the maximum angular velocity achievable at the current linear velocity, based on the vehicle's physical structure (wheelbase) and steering mechanical limits (maximum steering angle). It is used to limit the selectable range of angular velocities and avoid ineffective or dangerous maneuvers. The range of angular velocities from the negative reference angular velocity to the reference angular velocity is defined as the second angular velocity range, allowing the scooter to turn left or right, but the maximum turning angle cannot exceed the maximum safe steering angle at the current speed. This avoids physically impossible steering commands during path planning, improving control feasibility and safety.

[0071] Optionally, when the current linear velocity is zero, the range of the second angular velocity is a preset angular velocity range.

[0072] The preset angular velocity range refers to the allowable global angular velocity interval set on the electric scooter's travel path to ensure smooth steering, stability, and rider comfort. It limits the value of candidate angular velocities in path planning, preventing tipping or loss of the target due to sharp turns, sideslips, or excessive centrifugal force. The minimum angular velocity threshold is typically set to -0.8 rad / s to -0.3 rad / s (negative value), symmetrical to the positive value. This value is the minimum non-zero controllable steering rate, ensuring the scooter can fine-tune steering at low speeds or close distances, avoiding rigid following. The maximum angular velocity threshold can be obtained based on the maximum angular velocity limited by mechanical structure, center of gravity stability, and the effectiveness of obstacle detection equipment.

[0073] For example, based on the current state of the vehicle (i.e., the electric scooter) state{x,y,theta,v,w} (where x is the coordinate in the forward direction, y is the coordinate in the perpendicular direction to the forward direction, theta is the current steering angle, v is the current linear velocity, and w is the current angular velocity) and the input obstacle information obs{x,y} (i.e., obstacle position), the feasible speed and angular velocity range of the vehicle in the dynamic window algorithm is calculated. The algorithm mainly considers four aspects of speed range: hard speed limit, acceleration limit, obstacle limit, and maximum turning angle limit of the vehicle. Among them, the speed hard limit is a manually set parameter, namely {param_v_min, param_v_max, param_w_min, param_w_max} (param_v_min is the preset minimum linear velocity, param_v_max is the preset maximum linear velocity, param_w_min is the preset maximum angular velocity, and param_w_max is the preset minimum angular velocity); the acceleration limit is the range of velocity change (i.e., the first linear velocity range and the first angular velocity range) calculated based on the current velocity v (i.e., the current linear velocity) and angular velocity w (i.e., the current angular velocity), the preset linear acceleration param_a_vmax and angular acceleration (i.e., the preset angular acceleration) param_a_wmax limits, and the time step (i.e., the preset time step) dt, namely {v - param_a_vmax}. dt,v+param_a_vmax dt,w-param_a_wmax dt,w+ param_a_wmax dt}.

[0074] Obstacle constraints are obstacle avoidance constraints that take into account surrounding obstacles. When the minimum distance between the vehicle and surrounding obstacles (i.e., the current minimum obstacle distance) is less than the safe distance (i.e., the first distance threshold), both the candidate linear velocity and the candidate angular velocity are 0. Otherwise, the maximum linear velocity (i.e., the first reference linear velocity) v_obs_max is calculated based on the difference between the minimum obstacle distance min_obs_dist and the safe distance safe_dist. param_a_vmax (min_obs_dist-safe_dist))1 / 2, the angular velocity range is a preset parameter, so the obstacle restriction range is {param_v_min,v_obs_max,param_w_min,param_w_max}.

[0075] The linear velocity range in the maximum steering angle limit of the vehicle is a manually set parameter, while the angular velocity range is calculated based on the current linear velocity v, the maximum steering angle (i.e., the preset maximum steering angle max_steer_angle), and the wheelbase L. When v is 0 m / s, this range is {param_v_min, param_v_max, param_w_min, param_w_max}; otherwise, a reference angular velocity max_yaw_rate is determined based on the current linear velocity, the preset maximum steering angle, and the wheelbase of the electric scooter. The preset linear velocity range and the second angular velocity range are {param_v_min, param_v_max, -max_yaw_rate, max_yaw_rate}. This implementation conforms to the actual physical constraints of the vehicle and can prevent the algorithm from generating control commands that exceed the vehicle's mechanical limits. Finally, by taking the intersection of the four restricted ranges, the feasible velocity range (i.e., the candidate linear velocity range) and angular velocity range (i.e., the candidate angular velocity range) are obtained as {v_min,v_max,w_min,w_max} (v_min is the minimum linear velocity, v_max is the maximum linear velocity, w_min is the minimum angular velocity, and w_max is the maximum angular velocity).

[0076] In this embodiment, a first angular velocity range is obtained based on the limitation of preset angular acceleration, and a second angular velocity range is obtained based on the limitation of vehicle mechanical rotation limit. The intersection of the first angular velocity range, the second angular velocity range and the preset angular velocity range is used as the candidate angular velocity range. Based on vehicle dynamic constraints and vehicle steering capability, limiting the candidate angular velocities significantly improves the efficiency, safety and feasibility of path planning.

[0077] In an exemplary embodiment, determining a first angular velocity range based on the vehicle angular velocity, a preset angular acceleration, and a preset time step includes: determining the angular velocity range from a first reference angular velocity to a second reference angular velocity as the first angular velocity range; wherein the first reference angular velocity is the difference between the vehicle angular velocity and the product of the preset angular acceleration and the preset time step, and the second reference angular velocity is the sum of the products of the vehicle angular velocity and the preset angular acceleration and the preset time step.

[0078] The first reference angular velocity is the minimum possible angular velocity that can be achieved within a preset time step with a negative preset angular acceleration, based on the vehicle's angular velocity. It represents the maximum negative angular velocity that the scooter can achieve within the preset time step if it immediately reverses direction while currently turning. The second reference angular velocity is the maximum possible positive angular velocity that can be achieved within a preset time step with a positive preset angular acceleration, based on the vehicle's angular velocity. It represents the maximum possible positive angular velocity that can be achieved within the preset time step if the scooter immediately reverses direction with maximum amplitude, based on its current angular velocity.

[0079] In one example, the leftward direction of the vehicle's movement can be considered the negative direction, and the rightward direction can be considered the positive direction. The vehicle's angular velocity is 1.6 rad / s, the preset angular acceleration is 2 rad / s², and the preset time step is 0.1 s. Then, the first reference angular velocity is 1.4 rad / s, and the second reference angular velocity is 1.8 rad / s. The range of the first angular velocity is [1.6 rad / s, 1.8 rad / s].

[0080] This embodiment dynamically calculates the boundary of angular velocity change based on the current angular velocity, preset angular acceleration, and preset time step, ensuring that the candidate angular velocity is always within the physically achievable range of the vehicle. This avoids the risk of vehicle instability, skidding, or overturning caused by invalid or dangerous sharp turn commands, thus ensuring the safety and reliability of the electric scooter following.

[0081] In one exemplary embodiment, determining a reference angular velocity based on the vehicle's linear velocity, a preset maximum steering angle, and the wheelbase of the electric scooter includes: dividing the product of the vehicle's linear velocity and the maximum steering angle by the wheelbase to determine the reference angular velocity.

[0082] For example, the product of the current linear velocity and the maximum steering angle, divided by the wheelbase, is used to determine the reference angular velocity. The calculation formula is max_yaw_rate=v max_steer_angle / L, where max_yaw_rate is the reference angular velocity.

[0083] In this embodiment, a reference angular velocity is determined based on the vehicle's linear velocity, the preset maximum steering angle, and the wheelbase of the electric scooter. The maximum safe angular velocity that the electric scooter can achieve without skidding or losing control, i.e., the reference angular velocity, is calculated. This effectively constrains the steering capability boundary in path planning, avoiding the risk of skidding or overturning due to exceeding the angular velocity limit, while making the generated candidate path more consistent with the actual dynamic characteristics of the vehicle, thus improving the smoothness and reliability of trajectory tracking in self-following mode.

[0084] In an exemplary embodiment, a set of feasible paths is selected from a set of candidate paths based on the vehicle information of the electric scooter and the obstacle information of each obstacle. This includes: determining the predicted nearest distance corresponding to each candidate path in the set of candidate paths based on the vehicle information of the electric scooter and the obstacle information of each obstacle, wherein the predicted nearest distance corresponding to each candidate path is the predicted nearest distance between the electric scooter and all obstacles in the set of obstacles during the process of the electric scooter moving along each candidate path; and selecting at least one candidate path in the set of candidate paths whose corresponding predicted nearest distance is greater than or equal to a second distance threshold as a set of feasible paths.

[0085] During the movement of the electric scooter, the minimum distance between the electric scooter and all obstacles in the obstacle set is predicted to obtain the predicted closest distance. The process of obtaining the predicted closest distance may include: setting a prediction time window and a sampling step size; using a kinematic model to obtain the movement path of the electric scooter within the prediction time window based on the vehicle's linear velocity and angular velocity corresponding to each candidate path; obtaining multiple path points of the movement path based on the sampling step size; obtaining the vehicle position information of the electric scooter at each path point; and establishing the vehicle geometric model of the electric scooter and the obstacle geometric model of each obstacle in the obstacle set at each path point based on the vehicle position information. The minimum distance between the vehicle geometric model and the obstacle geometric model at each path point is calculated to obtain the predicted closest distance.

[0086] The predicted nearest distance is compared with a second distance threshold to determine whether there is a risk of collision between the electric scooter and an obstacle on the candidate path. It should be noted that the second distance threshold is the minimum safe distance threshold used to determine whether there is a risk of collision between the electric scooter and the obstacle; it is a critical value for determining whether the predicted minimum distance is safe. The second distance threshold can be set by: summing the maximum radius of the vehicle's geometric model, the radius of the obstacle's geometric model, and a safety margin; or by dynamically adjusting it based on the linear velocity of the electric scooter.

[0087] In this embodiment, the predicted closest distance is obtained by predicting the closest distance between the electric scooter and all obstacles during its movement on each candidate path. The predicted closest distance is compared with a second distance threshold, and feasible paths are selected based on the comparison results. This ensures that there is no risk of collision for the electric scooter on each feasible path, thereby improving the safety of the electric scooter following.

[0088] In an exemplary embodiment, the vehicle geometry model includes a front circle and two body circles. The front body circle partially overlaps with the front circle, and the front body circle partially overlaps with the rear body circle of the two body circles. The rear body circle covers the rear end of the electric scooter's rear wheel. The obstacle geometry model for each obstacle includes an obstacle circle for each obstacle. The front circle is a circle centered at the origin of the electric scooter's vehicle coordinate system with a radius equal to half the handlebar width. The handlebar width is the width of the electric scooter's handlebars, and the origin of the vehicle coordinate system is the center point of the handlebars. The centers of the two body circles are both located on the longitudinal axis of the vehicle coordinate system and have equal radii. The radii of the two body circles are greater than or equal to one-quarter of the difference between the reference vehicle length and the radius of the front circle, and less than one-quarter of the reference vehicle length. The reference vehicle length is the longitudinal length from the handlebars to the rear end of the electric scooter's rear wheel.

[0089] The front circle is a geometrically abstracted circular area mapped from the original irregular body structure of the electric scooter. The body circle is a geometrically abstracted circular area mapped from the original irregular body structure of the electric scooter. It should be noted that the front circle, with the center of the handlebars as its center and a radius of half the handlebar width, ensures that the handlebar edge is completely covered at any turning angle, avoiding partial exposure that could lead to false collision detection. The radius of the body circle is greater than or equal to one-quarter of the difference between the reference scooter length and the front circle radius, ensuring that the body circle covers the middle of the scooter and the rear wheel area, preventing missed collisions due to an insufficiently small radius. Simultaneously, the radius of the body circle is limited to one-quarter of the reference scooter length to prevent excessive coverage and the mistaken inclusion of the non-contact area at the rear of the scooter in the collision warning.

[0090] Optionally, the radius of the electric scooter's body circle can be dynamically adjusted based on the load weight of the electric scooter. For example, when the load weight of the electric scooter exceeds a certain weight threshold, the radius of the body circle can be appropriately increased. Based on the vehicle tilt angle detected by the inertial measurement unit, the front circle can be projected and expanded along the tilt direction to generate a front ellipse model as the front circle. The radius of the body circle at the rear can also be adjusted based on different conditions of the rear of the electric scooter. For example, for electric scooters with a tail box, the radius of the body circle at the rear can be increased.

[0091] For example, in collision risk detection, the center coordinates of the obstacle circle are s{x,y}, and the radius obs_r is a preset 0.5m. The collision detection target pairs formed by the three circles of the vehicle and the obstacle are traversed. Considering the shape of the electric scooter, a large circle and two small circles (front, middle, and rear) are used to approximate the vehicle shape, such as... Figure 3 As shown, the vehicle length is veh_length, the width (handlebar width) is veh_width, the length from the handlebar to the rear wheel (i.e., the reference vehicle length) is veh_lbar, the front circle (i.e., the front end circle) is the large circle with a radius of veh_width / 2 and a center of {0.0,0.0}, and the middle circle (i.e., the front body circle of the two body circles) is the small circle with a radius of (veh_lbar-veh_width / 2) / 4. 1.2, the center of the circle is {-(veh_lbar / 4+3} veh_width / 8),0.0}, the radius of the rear circle (i.e., the rear body circle among the two body circles) is the same as the middle circle, and its center is {-(3 veh_lbar / 4+veh_width / 8), 0.0}. Considering the usage scenarios of self-balancing scooters, which are mainly used by pedestrians, the shape of the obstacles is approximated as a circle. The center of each obstacle is obtained from the obstacle position coordinates in the input obstacle information. Since the obstacle information is based on the vehicle's coordinate system, to ignore obstacles behind the vehicle, if the x-coordinate of the obstacle is less than -0.5, the next collision detection target pair is ignored. Otherwise, the distances between the centers of the three vehicle circles and the centers of the obstacle circles are calculated respectively, and the minimum value (i.e., the predicted minimum distance) is taken as d. When d is less than the collision safety distance (i.e., the second distance threshold) total_dis, a collision risk is considered to exist; otherwise, there is no risk. Here, total_dis = r + obs_r + 0.1, where 0.1m is the safety margin.

[0092] In this embodiment, by modeling the electric scooter as a multi-circle coverage model consisting of a front circle and two body circles, and by setting the radius and center of each circle based on the shape and size of the electric scooter, the geometric contour of the scooter is represented more realistically and meticulously, improving the coverage accuracy for complex vehicle shapes and avoiding collision misses caused by incomplete coverage of the electric scooter. In an exemplary embodiment, selecting a target path from a set of feasible paths based on the target position of the electric scooter being followed includes: determining the direction from the path endpoint of each feasible path to the target being followed as the target direction corresponding to each feasible path, based on the target position and the position of the path endpoint of each feasible path in the set of feasible paths; determining the angle difference between the tangent direction of the path endpoint of each feasible path and the target direction corresponding to each feasible path as the reference angle difference corresponding to each feasible path; evaluating each feasible path based on the reference angle difference corresponding to each feasible path to obtain a path evaluation value for each feasible path, wherein the path evaluation value of each feasible path is negatively correlated with the reference angle difference corresponding to each feasible path; and determining the feasible path with the largest path evaluation value in the set of feasible paths as the target path.

[0093] It should be noted that the target direction refers to the vector direction from the end position of a feasible path (i.e., the coordinate point at the end of the path) to the current target position of the followed target. The tangent direction at the end of the path is the direction in which the vehicle's body faces at the end of the feasible path. Optionally, the tangent direction at the end of the path can be obtained by adding the product of the calculated angular velocity of the electric scooter on the current feasible path and the path planning time to the initial orientation angle of the electric scooter at the current moment. Alternatively, it can be obtained by using a kinematic model to obtain a discrete trajectory point sequence of the current feasible path, obtaining the last two trajectory points of the current feasible path from the discrete trajectory point sequence, and using the vector of the two trajectory points as the tangent direction at the end of the path.

[0094] The reference angle difference is the angle difference between the tangent direction at the end of each feasible path and the target direction corresponding to each feasible path. It is used to measure the degree of deviation between the final orientation of the electric scooter after completing a feasible path and the ideal posture of facing the target directly. The smaller the reference angle difference, the closer the orientation of the electric scooter at the end of the path is to facing the target directly, and the smoother and more natural the corresponding feasible path is.

[0095] The path evaluation value is obtained by evaluating each feasible path based on the reference angle difference corresponding to each feasible path. The smaller the reference angle difference, the larger the path evaluation value. The path evaluation value can be obtained based on a preset mapping relationship between preset evaluation value and reference angle difference, or it can be obtained based on a preset correlation function.

[0096] For example, the directional evaluation value (i.e., the path evaluation value) considers not only the path endpoint's orientation towards the target but also the overall path trend. First, the angle phi from the path endpoint to the target following point is calculated, and the angle difference (i.e., the reference angle difference) error_angle between the path endpoint's orientation (i.e., the tangent direction of the path endpoint) theta and the target direction phi is calculated. Then, considering the angle difference error_angle_mid between the path midpoint's orientation theta_mid and the target direction phi, the directional basic evaluation value (i.e., the path evaluation value) heading_basic_eval is π - (error_angle + error_angle_mid) / 2.

[0097] In this embodiment, by calculating the angle difference between the tangent direction of the end point of each feasible path and the target direction corresponding to each feasible path, a reference angle difference is obtained for each feasible path. Based on the reference angle difference, the path evaluation value of each feasible path is obtained, and the feasible path with the largest path evaluation value is taken as the target path, thereby improving the following accuracy and naturalness of the electric scooter in self-following mode.

[0098] In one exemplary embodiment, the method further includes: controlling the electric scooter to stop in response to detecting that the distance between the electric scooter and the followed target is less than a third distance threshold.

[0099] The third distance threshold is a key safety distance parameter set when the electric scooter is in self-following mode to ensure user safety, improve the following experience, and avoid physical contact or excessive proximity. It is used to determine whether the relative distance between the electric scooter and the target being followed has entered a dangerous approach zone, thereby triggering the parking control logic. The third distance threshold can be adaptively adjusted based on human safety boundaries, vehicle braking performance, perception system errors, and environmental constraints (e.g., the third distance threshold can be decreased in confined spaces and increased in open areas), or it can be customized by the user.

[0100] For example, when the distance between the vehicle and the tracked target (i.e., the target being followed) is less than the target distance arr_dis (i.e., the third distance threshold), the vehicle stops, meaning its speed and angular velocity are both 0, to avoid colliding with the tracked target. Otherwise, the vehicle's movement is controlled according to the target path (i.e., the optimal combination of speed and angular velocity) obtained in the above embodiments to achieve real-time following of the target.

[0101] For example, initialize the DWA algorithm parameters and the vehicle collision three-circle model, obtain the coordinate positions of the target point (i.e., the target being followed) and each obstacle, calculate the distance from the vehicle (i.e., the electric scooter) to the target point, and if the distance is less than the target following distance threshold (i.e., the third distance threshold), output the parking control command v=0, w=0, indicating that the target position has been reached.

[0102] This embodiment automatically controls the electric scooter to stop when the distance between the electric scooter and the target being followed is less than a third distance threshold, effectively avoiding the risk of collision due to excessive proximity to the target and improving the user's safety and comfort in close-following scenarios.

[0103] The electric scooter movement control method in this application embodiment is explained below with reference to optional examples. In this optional example, the current vehicle state is the current state, the followed target is the target point, the third distance threshold is the target following distance threshold, and the current candidate path is the trajectory. The interface testing method in this optional example is a local path planning method based on the Dynamic Window Approach (DWA). The Dynamic Window Approach is a method widely used in robot local path planning. It generates multiple trajectories by sampling the velocity space and combining it with the robot's kinematic model, and then selects the optimal trajectory through an evaluation function. In related technologies, DWA has been applied to scenarios such as unmanned ships and ground mobile robots, and has shown good real-time performance in obstacle avoidance. However, the Dynamic Window Method (DWA) in related technologies still has the following problems when applied to scooter self-following scenarios: First, it lacks the ability to predict the motion of dynamic obstacles, especially in dense pedestrian scenarios, which can easily lead to obstacle avoidance delays or dangerous behaviors; second, the DWA in related technologies does not fully consider the physical constraints such as the scooter's steering angle limit and body geometry, resulting in a trajectory that may not conform to the actual vehicle control capabilities; third, the evaluation function is relatively simple and does not fully consider the path smoothness, overall trend, and the coordination with the target orientation. This invention proposes a local path planning method based on the Dynamic Window Method (DWA), specifically for real-time obstacle avoidance and target following of self-balancing scooters.

[0104] Figure 4 This is a flowchart illustrating the movement control method of the electric scooter in this optional example, as shown below. Figure 4 As shown, the motion control method for this electric scooter may include the following steps:

[0105] Step S402, Start detection. It should be noted that in addition to detection through sensing devices, detection can also be achieved by connecting to a cloud server and using real-time environmental data collected from multiple mobile smart devices, surveillance cameras and drones on the cloud server.

[0106] Step S404: Initialize DWA parameters and vehicle model;

[0107] Step S406: Obtain the current state of the electric scooter, including its position (x, y), linear velocity v, angular velocity w, and angle θ;

[0108] Step S408: Obtain the target point and obstacle targets;

[0109] Step S410: Calculate the distance to the target point;

[0110] Step S412: Determine if the distance is less than the target following distance threshold. If yes, proceed to step S414; otherwise, proceed to step S418.

[0111] Step S414: Return to the parking command (0, 0) and the current state;

[0112] Step S416, End, Target reached;

[0113] Step S418: Calculate the dynamic window range, including speed limit, acceleration limit, and obstacle limit;

[0114] Step S420: Sample the combination of velocities v and w within the dynamic window;

[0115] Step S422: Set the initial optimal value;

[0116] Step S424: Traverse the velocity combinations v and w;

[0117] Step S426, predict the trajectory;

[0118] Step S428: Determine if there is a collision risk in the trajectory. If yes, proceed to step S430; otherwise, proceed to step S434.

[0119] Step S430: Skip this speed combination and process the next group;

[0120] Step S432, iterate through the next velocity combination;

[0121] Step S434: Calculate the path evaluation value;

[0122] Step S436: Determine whether the path evaluation value of the current path is greater than the optimal path evaluation value. If yes, proceed to step S438; otherwise, proceed to step S440.

[0123] Step S438: Update the optimal trajectory and control variables;

[0124] Step S440: Traverse the next velocity combination;

[0125] Step S442: Determine if there are more speed combinations. If yes, proceed to step S424; otherwise, proceed to step S444.

[0126] Step S444: Return the optimal control input and trajectory;

[0127] Step S446, End.

[0128] This optional example uses the vehicle's coordinate system as the calculation benchmark, integrates the scooter's multi-circle physical collision model with multi-level motion constraints, and designs a comprehensive evaluation function that takes into account target orientation, path smoothness, safe distance, and speed. This enables safe, smooth, and vehicle-characteristic-compliant autonomous following. By performing collision risk detection based on the multi-circle collision model for each obstacle and the electric scooter, it can solve the problem of insufficient motion prediction capability for dynamic obstacles in related technologies, especially in dense pedestrian scenarios, which can easily lead to obstacle avoidance delays or dangerous behaviors. By constraining linear velocity and angular velocity through speed limits, acceleration limits, and obstacle constraints, it can solve the technical problem in related technologies that do not fully consider the physical constraints of the scooter's steering angle and body geometry, resulting in a trajectory that may not conform to the actual vehicle control capability.

[0129] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to this application.

[0130] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as read-only memory (ROM) / random access memory (RAM), magnetic disk, optical disk), and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods of the various embodiments of this application.

[0131] According to another aspect of the embodiments of this application, a motion control device for an electric scooter is also provided. This device can be used to implement the motion control method for the electric scooter provided in the above embodiments, and details already described will not be repeated. As used below, the term "module" can refer to a combination of software and / or hardware that implements a predetermined function. Although the device described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0132] Figure 5This is a structural block diagram of an optional electric scooter motion control device according to an embodiment of this application, such as... Figure 5 As shown, the movement control device of the electric scooter includes:

[0133] The acquisition unit 502 is used to acquire obstacle information of each obstacle in the obstacle set on the travel path of the electric scooter, wherein the obstacle information of each obstacle includes model information of the obstacle geometry model of each obstacle;

[0134] Planning unit 504 is used to plan a set of feasible paths for the electric scooter within the path planning time based on the vehicle information of the electric scooter and the obstacle information of each obstacle. The vehicle information of the electric scooter includes the vehicle status information of the electric scooter and the model information of the vehicle geometry model of the electric scooter.

[0135] The control unit 506 is used to select a target path from a set of feasible paths based on the target position of the electric scooter being followed, and control the electric scooter to follow the target according to the target path.

[0136] It should be noted that the acquisition unit 502 in this embodiment can be used to execute the above step S202, the planning unit 504 in this embodiment can be used to execute the above step S204, and the control unit 506 can be used to execute the above step S206.

[0137] The embodiments provided in this application obtain obstacle information for each obstacle in the obstacle set along the electric scooter's path. Based on the electric scooter's vehicle information and the obstacle information of each obstacle, a set of feasible paths for the electric scooter within the path planning time is obtained. By fully considering the impact of each obstacle on the electric scooter's movement during path planning, collisions can be effectively avoided, enhancing the safety of the electric scooter following. This solves the technical problem in related technologies where the movement control methods for electric scooters suffer from poor safety due to the failure to consider obstacles in the environment. Simultaneously, based on the target position of the target being followed, a target path is selected from a set of feasible paths for target following. Under the premise of effective obstacle avoidance, the scooter can maintain a more precise following posture, optimizing the following path.

[0138] In an exemplary embodiment, the planning unit 504 is further configured to determine the candidate linear velocity range and the candidate angular velocity range of the electric scooter based on the vehicle state information and the obstacle information of each obstacle; traverse the combinations of candidate linear velocities within the candidate linear velocity range and candidate angular velocities within the candidate angular velocity range, and generate a candidate path for the electric scooter within the path planning time based on the traversed combinations of candidate linear velocities and candidate angular velocities, thereby obtaining a set of candidate paths; and select a set of feasible paths from the set of candidate paths based on the vehicle information of the electric scooter and the obstacle information of each obstacle, wherein each feasible path in the set of feasible paths is a candidate path in which there is no risk of collision between the electric scooter and any obstacle in the obstacle set.

[0139] In an exemplary embodiment, the vehicle state information includes the vehicle position and the vehicle linear velocity, and the obstacle information for each obstacle includes the obstacle position of each obstacle; the planning unit 504 is further configured to determine a first linear velocity range based on the vehicle linear velocity, a preset linear acceleration, and a preset time step; determine the minimum obstacle distance between the electric scooter and all obstacles in the obstacle set based on the vehicle position and the obstacle positions of each obstacle; if the minimum obstacle distance is greater than or equal to a first distance threshold, determine a first reference linear velocity based on the distance difference between the minimum obstacle distance and the first distance threshold, and determine a second linear velocity range by the linear velocity range from the preset minimum linear velocity threshold to the first reference linear velocity; and determine the intersection of the first linear velocity range, the second linear velocity range, and the preset linear velocity range as a candidate linear velocity range, wherein the preset linear velocity range is the linear velocity range from the minimum linear velocity threshold to the preset maximum linear velocity threshold.

[0140] In an exemplary embodiment, the planning unit 504 is further configured to determine the linear velocity range from the second reference linear velocity to the third reference linear velocity as a first linear velocity range; wherein the second reference linear velocity is the difference between the vehicle linear velocity and the product of a preset linear acceleration and a preset time step, and the third reference linear velocity is the sum of the products of the vehicle linear velocity and the preset linear acceleration and the preset time step.

[0141] In an exemplary embodiment, the planning unit 504 is further configured to determine the square root of the product of a preset coefficient, a preset linear acceleration, and a distance difference as a first reference linear velocity, wherein the preset coefficient is greater than or equal to 1.

[0142] In an exemplary embodiment, the vehicle state information includes vehicle position, vehicle linear velocity, and vehicle angular velocity, and the obstacle information for each obstacle also includes the obstacle position for each obstacle; the planning unit 504 is further configured to determine a first angular velocity range based on the vehicle angular velocity, a preset angular acceleration, and a preset time step; when the vehicle linear velocity is greater than zero, determine a reference angular velocity based on the vehicle linear velocity, a preset maximum steering angle, and the wheelbase of the electric scooter; determine the angular velocity range from the negative reference angular velocity to the reference angular velocity as a second angular velocity range; and determine the intersection of the first angular velocity range, the second angular velocity range, and the preset angular velocity range as a candidate angular velocity range, wherein the preset angular velocity range is the angular velocity range from a preset minimum angular velocity threshold to a preset maximum angular velocity threshold.

[0143] In an exemplary embodiment, the planning unit 504 is further configured to determine the angular velocity range from the first reference angular velocity to the second reference angular velocity as the first angular velocity range; wherein the first reference angular velocity is the difference between the vehicle angular velocity and the product of a preset angular acceleration and a preset time step, and the second reference angular velocity is the sum of the products of the vehicle angular velocity and the preset angular acceleration and the preset time step.

[0144] In an exemplary embodiment, the planning unit 504 is further configured to determine the reference angular velocity by dividing the product of the vehicle linear velocity and the maximum steering angle by the wheelbase.

[0145] In an exemplary embodiment, the planning unit 504 is further configured to determine the predicted nearest distance corresponding to each candidate path in the candidate path set based on the vehicle information of the electric scooter and the obstacle information of each obstacle, wherein the predicted nearest distance corresponding to each candidate path is the predicted nearest distance between the electric scooter and all obstacles in the obstacle set during the process of the electric scooter moving along each candidate path; and select at least one candidate path in the candidate path set whose corresponding predicted nearest distance is greater than or equal to a second distance threshold as a set of feasible paths.

[0146] In an exemplary embodiment, the vehicle geometry model includes a front circle and two body circles. The front body circle partially overlaps with the front circle, and the front body circle partially overlaps with the rear body circle of the two body circles. The rear body circle covers the rear end of the electric scooter's rear wheel. The obstacle geometry model for each obstacle includes an obstacle circle for each obstacle. The front circle is a circle centered at the origin of the electric scooter's vehicle coordinate system with a radius equal to half the handlebar width. The handlebar width is the width of the electric scooter's handlebars, and the origin of the vehicle coordinate system is the center point of the handlebars. The centers of the two body circles are both located on the longitudinal axis of the vehicle coordinate system and have equal radii. The radii of the two body circles are greater than or equal to one-quarter of the difference between the reference vehicle length and the radius of the front circle, and less than one-quarter of the reference vehicle length. The reference vehicle length is the longitudinal length from the handlebars to the rear end of the electric scooter's rear wheel.

[0147] In an exemplary embodiment, the control unit 506 is further configured to: determine the direction in which the path endpoint of each feasible path points to the target being followed, based on the target location and the location of the path endpoint of each feasible path in a set of feasible paths, as the target direction corresponding to each feasible path; and determine the angle difference between the tangent direction of the path endpoint of each feasible path and the target direction corresponding to each feasible path as the reference angle difference corresponding to each feasible path; evaluate each feasible path based on the reference angle difference corresponding to each feasible path to obtain a path evaluation value for each feasible path, wherein the path evaluation value of each feasible path is negatively correlated with the reference angle difference corresponding to each feasible path; and determine the feasible path with the largest path evaluation value in a set of feasible paths as the target path.

[0148] In one exemplary embodiment, the control unit 506 is further configured to control the electric scooter to stop in response to detecting that the distance between the electric scooter and the target being followed is less than a third distance threshold.

[0149] It should be noted that the above modules can be implemented by software or hardware. For the latter, they can be implemented in the following ways, but are not limited to: all the above modules are located in the same processor; or, the above modules are located in different processors in any combination.

[0150] According to another aspect of the embodiments of this application, a computer-readable storage medium is provided, the computer-readable storage medium including a stored program, wherein the program executes the steps in any of the above method embodiments when it is run.

[0151] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as USB flash drives, ROMs, RAMs, portable hard drives, magnetic disks, or optical disks.

[0152] According to another aspect of the embodiments of this application, an electric scooter is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the steps of any of the methods described above. In an exemplary embodiment, the electric scooter may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.

[0153] Specific examples in this embodiment can be found in the examples described in the above embodiments and exemplary implementations, and will not be repeated here.

[0154] According to another aspect of the embodiments of this application, a computer program product is also provided, comprising a computer program / instructions containing program code for performing the methods shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network via communication section 609, and / or installed from removable medium 611. When the computer program is executed by central processing unit 601, it performs various functions provided in the embodiments of this application. The sequence numbers of the embodiments of this application above are merely descriptive and do not represent the superiority or inferiority of the embodiments.

[0155] Figure 6 A schematic block diagram of a computer system architecture for implementing embodiments of the present application is shown. Figure 6 As shown, the computer system 600 includes a Central Processing Unit (CPU) 601, which performs various appropriate actions and processes based on programs stored in ROM 602 or loaded into RAM 603 from storage section 608. Random access memory 603 also stores various programs and data required for system operation. The CPU 601, ROM 602, and RAM 603 are interconnected via bus 604. Input / output (I / O) interface 605 is also connected to bus 604.

[0156] The following components are connected to I / O interface 605: an input section 606 including a keyboard, mouse, etc.; an output section 607 including a cathode ray tube (CRT), liquid crystal display (LCD), and speakers, etc.; a storage section 608 including a hard disk, etc.; and a communication section 609 including a network interface card, such as a local area network card or modem, etc. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to I / O interface 605 as needed. A removable medium 611, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on drive 610 as needed so that computer programs read from it can be installed into storage section 608 as needed.

[0157] Specifically, according to embodiments of this application, the processes described in the various method flowcharts can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 609, and / or installed from removable medium 611. When the computer program is executed by central processing unit 601, it performs various functions defined in the system of this application.

[0158] It should be noted that, Figure 6 The computer system 600 of the electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.

[0159] Obviously, those skilled in the art should understand that the modules or steps of this application described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. They can be implemented using computer-executable program code, and thus can be stored in a storage device for execution by a computing device. In some cases, the steps shown or described can be performed in a different order than those described herein, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, this application is not limited to any particular combination of hardware and software.

[0160] The above are merely preferred embodiments of this application and are not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the principles of this application should be included within the protection scope of this application.

Claims

1. A method for controlling the movement of an electric scooter, characterized in that, include: Obtain obstacle information for each obstacle in the obstacle set on the travel path of the electric scooter, wherein the obstacle information for each obstacle includes model information of the obstacle geometry model of each obstacle; Based on the vehicle information of the electric scooter and the obstacle information of each obstacle, a set of feasible paths is planned for the electric scooter within the path planning time. The vehicle information of the electric scooter includes the vehicle status information of the electric scooter and the model information of the vehicle geometry model of the electric scooter. Based on the target position of the target being followed by the electric scooter, a target path is selected from the set of feasible paths, and the electric scooter is controlled to follow the target according to the target path.

2. The method according to claim 1, characterized in that, The step of planning a set of feasible paths for the electric scooter within the path planning time, based on the vehicle information of the electric scooter and the obstacle information of each obstacle, includes: Based on the vehicle status information and the obstacle information of each obstacle, the candidate linear velocity range and the candidate angular velocity range of the electric scooter are determined. The combinations of candidate linear velocities within the candidate linear velocity range and candidate angular velocities within the candidate angular velocity range are traversed, and a candidate path is generated for the electric scooter within the path planning time based on the traversed combinations of candidate linear velocities and candidate angular velocities, thus obtaining a set of candidate paths. Based on the vehicle information of the electric scooter and the obstacle information of each obstacle, a set of feasible paths is selected from the candidate path set, wherein each feasible path in the set of feasible paths is a candidate path in which there is no risk of collision between the electric scooter and any obstacle in the obstacle set.

3. The method according to claim 2, characterized in that, The vehicle status information includes the vehicle position and the vehicle linear velocity, and the obstacle information for each obstacle also includes the obstacle position for each obstacle; The step of determining the candidate linear velocity range and the candidate angular velocity range of the electric scooter based on the vehicle status information and the obstacle information of each obstacle includes: Based on the vehicle linear velocity, preset linear acceleration, and preset time step, a first linear velocity range is determined. Based on the vehicle's position and the position of each obstacle, determine the minimum obstacle distance between the electric scooter and all obstacles in the obstacle set; If the minimum obstacle distance is greater than or equal to the first distance threshold, a first reference linear velocity is determined based on the distance difference between the minimum obstacle distance and the first distance threshold, and a second linear velocity range is determined by the linear velocity range from the preset minimum linear velocity threshold to the first reference linear velocity. The intersection of the first linear velocity range, the second linear velocity range, and the preset linear velocity range is determined as the candidate linear velocity range, wherein the preset linear velocity range is the linear velocity range from the minimum linear velocity threshold to the preset maximum linear velocity threshold.

4. The method according to claim 3, characterized in that, The step of determining the first linear velocity range based on the vehicle's linear velocity, preset linear acceleration, and preset time step includes: The linear velocity range from the second reference linear velocity to the third reference linear velocity is defined as the first linear velocity range; Wherein, the second reference linear velocity is the difference between the vehicle linear velocity and the product of the preset linear acceleration and the preset time step, and the third reference linear velocity is the sum of the products of the vehicle linear velocity, the preset linear acceleration and the preset time step.

5. The method according to claim 3, characterized in that, Determining the first reference linear velocity based on the distance difference between the minimum obstacle distance and the first distance threshold includes: The square root of the product of the preset coefficient, the preset linear acceleration, and the distance difference is determined as the first reference linear velocity, wherein the preset coefficient is greater than or equal to 1.

6. The method according to claim 2, characterized in that, The vehicle status information includes vehicle position, vehicle linear velocity, and vehicle angular velocity; the obstacle information for each obstacle also includes the obstacle position for each obstacle. The step of determining the candidate linear velocity range and the candidate angular velocity range of the electric scooter based on the vehicle status information and the obstacle information of each obstacle includes: The first angular velocity range is determined based on the vehicle angular velocity, the preset angular acceleration, and the preset time step; When the vehicle's linear velocity is greater than zero, a reference angular velocity is determined based on the vehicle's linear velocity, the preset maximum steering angle, and the wheelbase of the electric scooter. The range of angular velocities from the negative reference angular velocity to the reference angular velocity is defined as the second angular velocity range; The intersection of the first angular velocity range, the second angular velocity range, and the preset angular velocity range is determined as the candidate angular velocity range, wherein the preset angular velocity range is the angular velocity range from a preset minimum angular velocity threshold to a preset maximum angular velocity threshold.

7. The method according to claim 6, characterized in that, The step of determining the first angular velocity range based on the vehicle angular velocity, the preset angular acceleration, and the preset time step includes: The range of angular velocities from the first reference angular velocity to the second reference angular velocity is defined as the first angular velocity range; Wherein, the first reference angular velocity is the difference between the vehicle angular velocity and the product of the preset angular acceleration and the preset time step, and the second reference angular velocity is the sum of the products of the vehicle angular velocity, the preset angular acceleration and the preset time step.

8. The method according to claim 6, characterized in that, The determination of the reference angular velocity based on the vehicle's linear velocity, the preset maximum steering angle, and the wheelbase of the electric scooter includes: The reference angular velocity is determined by dividing the product of the vehicle linear velocity and the maximum steering angle by the wheelbase.

9. The method according to claim 2, characterized in that, The step of selecting a set of feasible paths from the candidate path set based on the vehicle information of the electric scooter and the obstacle information of each obstacle includes: Based on the vehicle information of the electric scooter and the obstacle information of each obstacle, the predicted nearest distance corresponding to each candidate path in the candidate path set is determined, wherein the predicted nearest distance corresponding to each candidate path is the predicted nearest distance between the electric scooter and all obstacles in the obstacle set during the process of the electric scooter moving along each candidate path; At least one candidate path in the candidate path set whose predicted nearest distance is greater than or equal to the second distance threshold is selected as the set of feasible paths.

10. The method according to claim 1, characterized in that, The vehicle geometry model includes a front circle and two body circles. The front body circle of the two body circles partially overlaps with the front circle, and the front body circle partially overlaps with the rear body circle of the two body circles. The rear body circle covers the rear end of the rear wheel of the electric scooter. The obstacle geometry model of each obstacle includes the obstacle circle of each obstacle. Wherein, the front circle is a circle with the origin of the electric scooter's coordinate system as the center and half the width of the handlebars as the radius. The width of the handlebars is the width of the electric scooter's handlebars, and the origin of the coordinate system is the center point of the handlebars. The centers of the two body circles are both located on the longitudinal axis of the vehicle coordinate system and have equal radii. The radii of the two body circles are greater than or equal to one-quarter of the difference between the reference vehicle length and the radius of the front circle, and less than one-quarter of the reference vehicle length. The reference vehicle length is the longitudinal length from the handlebars to the rearmost rear end of the electric scooter's rear wheel.

11. The method according to claim 1, characterized in that, The step of selecting a target path from a set of feasible paths based on the target position of the electric scooter being followed includes: Based on the target location and the location of the end point of each feasible path in the set of feasible paths, the direction in which the end point of each feasible path points to the target being followed is determined as the target direction corresponding to each feasible path, and the angle difference between the tangent direction of the end point of each feasible path and the target direction corresponding to each feasible path is determined as the reference angle difference corresponding to each feasible path. Each feasible path is evaluated based on the reference angle difference corresponding to each feasible path to obtain a path evaluation value for each feasible path, wherein the path evaluation value of each feasible path is negatively correlated with the reference angle difference corresponding to each feasible path. The feasible path with the highest path evaluation value among the set of feasible paths is determined as the target path.

12. The method according to any one of claims 1 to 11, characterized in that, The method further includes: In response to detecting that the distance between the electric scooter and the followed target is less than a third distance threshold, the electric scooter is controlled to stop.

13. A computer program product comprising a computer program / instructions, characterized in that, When the computer program / instructions are executed by the processor, they implement the steps of the method according to any one of claims 1 to 12.

14. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the method according to any one of claims 1 to 12.

15. An electric scooter, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 12.