Collision detection method and apparatus, autonomous mobile device, storage medium

CN116719318BActive Publication Date: 2026-10-20KUKA ROBOTICS GUANGDONG CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202310658028.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-05
Publication Date
2026-10-20
Estimated Expiration
2043-06-05

AI Technical Summary

Technical Problem

[0007]基于此,本申请实施例提出了一种碰撞检测方法及装置、自主移动装置、存储介质,以改善目前自主移动装置难以对快速运动的动态障碍物及时做出安全响应,导致自主移动装置自主运动存在安全隐患的问题

Benefits of technology

[0011]第四方面,本申请实施例提供一种计算机可读取存储介质,该计算机可读取存储介质上存储有程序代码,该程序代码被配置为当被处理器调用时执行本申请实施例提供的方法。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116719318B_ABST
    Figure CN116719318B_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a collision detection method and device, an autonomous mobile device and a storage medium, and relate to the technical field of autonomous mobile devices. The method comprises: obtaining a motion trajectory of the autonomous mobile device, and a current speed, a current position and a historical motion trajectory of a dynamic obstacle; predicting jerk of the dynamic obstacle according to the historical motion trajectory of the dynamic obstacle; predicting a future motion trajectory of the dynamic obstacle from the current time to a specified future time period according to the current speed, the current position, the historical motion trajectory and the jerk of the dynamic obstacle; and detecting whether the dynamic obstacle and the autonomous mobile device have a collision risk according to the future motion trajectory of the dynamic obstacle and the motion trajectory of the autonomous mobile device. Thus, the problem that the autonomous mobile device cannot respond to a dynamic obstacle moving at a high speed in time and cause a safety hazard in autonomous motion of the autonomous mobile device can be solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of autonomous mobile device technology, and more specifically, to a collision detection method and apparatus, an autonomous mobile device, and a storage medium. Background Technology

[0002] With the continuous development of autonomous mobile device technology and its widespread adoption in the market, the operating environment of autonomous mobile devices is becoming increasingly complex, often involving mixed traffic of people and vehicles, as well as mixed operations of autonomous mobile devices with other autonomous mobile devices. Autonomous mobile devices can include, but are not limited to, autonomous mobile robots (AMRs) or automated guided vehicles (AGVs).

[0003] As the demands for operational efficiency and travel speed of autonomous mobile devices (AMPs) increase, the requirements for their safety protection functions also rise. AMPs need to respond promptly to not only static obstacles (e.g., walls or fixed machines in a moving scene) and slow-moving obstacles (e.g., other slow-moving AMPs or people), but also, even while operating at high speeds, respond promptly to fast-moving dynamic obstacles (e.g., other fast-moving AMPs) to ensure the safety of their autonomous movement. Therefore, how to respond promptly to dynamic obstacles has become a pressing issue in the field of AMPs.

[0004] In the field of robotics, because robots generally travel at relatively slow speeds, collision detection and subsequent obstacle stopping or avoidance based on collision detection results are typically performed by treating every detected obstacle as a static obstacle. This is then updated in real-time to an obstacle map, and the robot's trajectory is assessed for potential collisions based on the obstacle map. This approach, treating all obstacles as static, lacks prediction and collision detection for dynamic obstacles. When the robot moves rapidly, it struggles to respond promptly and safely to fast-moving dynamic obstacles, leading to a risk of collision between the robot and the obstacle.

[0005] In the field of autonomous driving, because vehicles typically travel at high speeds, they need to predict and detect dynamic obstacles to ensure timely responses and safety. However, obstacle prediction in autonomous driving generally combines real-time traffic data, road condition information, and perceived obstacle information, employing deep learning to predict the trajectory of dynamic obstacles. This method of predicting dynamic obstacle trajectories using deep learning algorithms requires integration with traffic information, and the algorithms themselves are too complex to be suitable for autonomous mobile devices.

[0006] In other words, current autonomous mobile devices are unable to respond safely to rapidly moving dynamic obstacles in a timely manner, resulting in safety hazards during autonomous movement. Summary of the Invention

[0007] Based on this, embodiments of this application propose a collision detection method and apparatus, an autonomous mobile device, and a storage medium to improve the current problem that autonomous mobile devices are unable to respond promptly to fast-moving dynamic obstacles, resulting in safety hazards during autonomous movement.

[0008] In a first aspect, embodiments of this application provide a collision detection method, the method comprising: acquiring the motion trajectory of an autonomous mobile device and the current speed, current position, and historical motion trajectory of a dynamic obstacle; predicting the acceleration of the dynamic obstacle based on the historical motion trajectory of the dynamic obstacle; predicting the future motion trajectory of the dynamic obstacle from the present to a specified future time period based on the current speed, current position, historical motion trajectory, and acceleration of the dynamic obstacle; and detecting whether there is a collision risk between the dynamic obstacle and the autonomous mobile device based on the future motion trajectory of the dynamic obstacle and the motion trajectory of the autonomous mobile device.

[0009] Secondly, embodiments of this application provide a collision detection device, which includes: a data acquisition module for acquiring the motion trajectory of an autonomous mobile device and the current speed, current position, and historical motion trajectory of a dynamic obstacle; an acceleration prediction module for predicting the acceleration of the dynamic obstacle based on its historical motion trajectory; a trajectory prediction module for predicting the future motion trajectory of the dynamic obstacle from the present to a specified future time period based on its current speed, current position, historical motion trajectory, and acceleration; and a collision detection module for detecting whether there is a collision risk between the dynamic obstacle and the autonomous mobile device based on the future motion trajectory of the dynamic obstacle and the motion trajectory of the autonomous mobile device.

[0010] Thirdly, embodiments of this application provide an autonomous mobile device, which includes a memory and a processor. The memory stores an application program configured to execute the method provided in embodiments of this application when invoked by the processor.

[0011] Fourthly, embodiments of this application provide a computer-readable storage medium storing program code configured to execute the method provided in embodiments of this application when invoked by a processor.

[0012] The collision detection method, apparatus, autonomous mobile device, and storage medium provided in this application predict the acceleration of a dynamic obstacle based on its historical motion trajectory. Based on the obstacle's current speed, current position, historical motion trajectory, and acceleration, the method predicts the obstacle's future motion trajectory within a specified future time period. By considering the obstacle's future motion trajectory and the autonomous mobile device's motion trajectory, the method detects whether there is a collision risk between the obstacle and the autonomous mobile device. By taking into account the obstacle's future motion trajectory, collision detection can be performed on dynamic obstacles within a specified future time period, allowing for proactive safety responses based on the collision detection results. This ensures the safety of the autonomous mobile device's autonomous movement and addresses the current problem where autonomous mobile devices struggle to respond promptly to rapidly moving dynamic obstacles, leading to safety hazards during autonomous movement. Attached Figure Description

[0013] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments and drawings obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0014] Figure 1 A schematic diagram of the collision detection system provided in an embodiment of this application is shown;

[0015] Figure 2 A schematic flowchart of a collision detection method provided in an embodiment of this application is shown;

[0016] Figure 3 A schematic diagram of the vehicle coordinate system provided in an embodiment of this application is shown;

[0017] Figure 4 An embodiment of this application is shown. Figure 2 A flowchart illustrating step S130 in the process;

[0018] Figure 5 A schematic diagram of an environmental grid map provided in an exemplary embodiment of this application is shown;

[0019] Figure 6 A schematic diagram of an obstacle grid map provided in an exemplary embodiment of this application is shown;

[0020] Figure 7 A schematic diagram of an obstacle grid map provided in another exemplary embodiment of this application is shown;

[0021] Figure 8 A schematic diagram of an obstacle grid map provided in yet another exemplary embodiment of this application is shown;

[0022] Figure 9 A schematic diagram of a distance map provided in an exemplary embodiment of this application is shown;

[0023] Figure 10 A schematic diagram of collision detection provided by an exemplary embodiment of this application is shown;

[0024] Figure 11 A schematic diagram of collision detection provided by another exemplary embodiment of this application is shown;

[0025] Figure 12 A flowchart illustrating a collision detection method provided in another embodiment of this application is shown;

[0026] Figure 13 An embodiment of this application is shown. Figure 12 A flowchart illustrating steps S130 to S160 in the process;

[0027] Figure 14 A schematic diagram of the collision detection device provided in an embodiment of this application is shown;

[0028] Figure 15 A schematic diagram of the structure of the autonomous mobile device provided in an embodiment of this application is shown. Detailed Implementation

[0029] 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.

[0030] Please see Figure 1 , Figure 1A schematic diagram of the collision detection system provided in this application embodiment is shown. This collision detection system 100 can be applied to autonomous mobile devices, such as AMRs or AGVs. The collision detection system 100 includes a mapping module 110, a perception module 120, a localization module 130, a prediction module 140, a collision detection module 150, and a decision module 150. The perception module 120 is used to perceive the surrounding environment information of the autonomous mobile device, such as static and dynamic obstacles around the autonomous mobile device. The perception module 120 may include one or more sensors, including but not limited to cameras, LiDAR sensors, millimeter-wave radar sensors, and ultra-wideband sensors. The mapping module 110 is used to construct an environmental map based on the surrounding environment information perceived in real time by the perception module 120 during the real-time localization and mapping phase of the autonomous mobile device's movement throughout the operating scene. The environmental map includes static obstacles in the operating scene, such as walls or shelves. The localization module 130 is used to perform real-time localization of the autonomous mobile device's position and to acquire the speed of the autonomous mobile device in real time. The prediction module 140 is connected to the mapping module 110, the perception module 120, the localization module, and the collision detection module 150 respectively. The prediction module 140 is used to receive the environmental map output by the mapping module 110 and the current speed and current position of the autonomous mobile device output by the localization module 130, and output the environmental map, the current speed and current position of the autonomous mobile device to the collision detection module 150. The prediction module 140 is also used to receive obstacle information of dynamic obstacles output by the perception module 120 (e.g., the historical trajectory, current speed, and current position of the dynamic obstacle), predict the future trajectory of the dynamic obstacle based on the obstacle information, and output the future trajectory to the collision detection module 150. The collision detection module 150 is connected to both the prediction module 140 and the decision module 160. The collision detection module 150 is used to perform collision detection based on the environmental map, the future trajectory of the dynamic obstacle, and the trajectory of the autonomous mobile device. When a collision risk is detected, the module analyzes the motion relationship between the dynamic obstacle and the autonomous mobile device based on the current motion direction of the dynamic obstacle and the current motion direction of the autonomous mobile device, and decides the next motion strategy of the autonomous mobile device based on the motion relationship, so that the autonomous mobile device can continue to move or stop according to the next motion decision. When no collision risk is detected, the module decides that the autonomous mobile device should move according to the original motion strategy.

[0031] Please see Figure 2 , Figure 2 A schematic flowchart of a collision detection method according to an embodiment of this application is shown. This collision detection method can be applied to a collision detection device, a collision detection system, or an autonomous mobile device. The collision detection method may include the following steps S110 to S140.

[0032] Step S110: Obtain the motion trajectory of the autonomous mobile device and the current speed, current position, and historical motion trajectory of the dynamic obstacle.

[0033] The autonomous mobile device has a global path, which includes multiple curved paths and multiple straight paths. The movement trajectory of the autonomous mobile device can include multiple curved paths and / or straight paths on the global path. For example, the movement trajectory of the autonomous mobile device can include the trajectory from the current time to a specified future time period on the global path. The trajectory of the autonomous mobile device from the current time to the specified future time period can be obtained from the global path, and the obtained trajectory from the current time to the specified future time period is used as the movement trajectory of the autonomous mobile device in this embodiment. The movement trajectory of the autonomous mobile device can include the current speed and current position of the autonomous mobile device. The specified time period can be preset according to the actual collision detection accuracy requirements. In some embodiments, the specified time period can be any period between 3 seconds and 5 seconds. For example, assuming the specified time period is 5 seconds, the movement trajectory of the autonomous mobile device includes the trajectory from the current time to the next 5 seconds. Generally, the longer the specified time period is set, the higher the collision detection accuracy, and correspondingly, the higher the safety guarantee of the autonomous mobile device.

[0034] In this application's embodiments, a dynamic obstacle can refer to a rapidly moving object, which may include, but is not limited to, rapidly moving autonomous mobile devices and people. A speed threshold can be set, and objects with a speed greater than the speed threshold are identified as dynamic obstacles. The historical motion trajectory of a dynamic obstacle may include its historical speed, historical position, historical acceleration, and discrete time points, with each discrete time point corresponding to a historical speed, a historical position, and a historical acceleration. The historical motion trajectory of a dynamic obstacle may include the trajectory of the dynamic obstacle from a specified past time period (e.g., approximately 3 seconds) to the present.

[0035] It should be noted that the current speed and current position of the autonomous mobile device, as well as the historical speed and current position of the dynamic obstacle, are all vectors with two dimensions: x-axis and y-axis. For example, the current speed of the autonomous mobile device has both x-axis and y-axis directions, which can be understood as including the speed along the x-axis and the speed along the y-axis. That is, the current speed of the autonomous mobile device can be represented as (Vx, Vy). Similarly, the current position of the autonomous mobile device can be represented as (x, y). Here, the x and y axes are the horizontal and vertical axes of the vehicle coordinate system, respectively. Please refer to [link to relevant documentation]. Figure 3The gray rectangle represents the autonomous mobile device, the gray arrow represents the forward direction of the autonomous mobile device, point o represents the rear axle center of the autonomous mobile device, the vehicle coordinate system xoy takes the rear axle center of the autonomous mobile device as the origin, the forward direction of the autonomous mobile device as the positive direction of the x-axis, and the left side direction of the autonomous mobile device as the positive direction of the y-axis.

[0036] In some implementations, the autonomous mobile device can perceive dynamic obstacles in real time through its sensing module. Each perceived obstacle is assigned a unique identifier (IdentityDocument, or ID). Based on these identifiers, an obstacle tracking algorithm is used to track the perceived dynamic obstacles, acquiring their information in real time. A filtering algorithm (e.g., Kalman filtering) can be used to filter the obstacle information, removing excessively large or small values ​​to smooth the data and obtain filtered, smoothed obstacle information. The sensing module in the autonomous mobile device is used to perceive obstacles and can include one or more combinations of sensing devices such as lidar sensors, cameras, millimeter-wave radar sensors, and ultra-wideband sensors. The corresponding obstacle tracking and filtering algorithms can be determined based on the sensing devices actually deployed on the autonomous mobile device; no specific limitations are imposed here.

[0037] In this embodiment, the obstacle information for each dynamic obstacle may include, but is not limited to, the following data:

[0038] (1) Identification information of dynamic obstacles. The identification information of dynamic obstacles is used to track dynamic obstacles so as to predict and process dynamic obstacles. For example, the obstacle information of the dynamic obstacle can be stored or retrieved based on the identification information of the dynamic obstacle.

[0039] (2) Perception confidence: Perception confidence can be used to characterize the accuracy of obstacle perception. Each time the perception device perceives an obstacle, the obstacle information obtained has a corresponding perception confidence. A preset confidence level can be set to filter the perceived obstacle information. Since the obstacle information with a perception confidence level higher than the preset confidence level is more accurate and has a higher contribution value to collision detection, the embodiments of this application can use obstacle information with a perception confidence level higher than the preset confidence level, while obstacle information with a perception confidence level lower than the confidence level can be discarded because it has a lower contribution value to collision detection, so as to reduce the amount of computational data for collision detection and thus improve the efficiency of collision detection.

[0040] (3) The true outline of the dynamic obstacle, which refers to the outline of the dynamic obstacle's orthographic projection onto the ground. In this embodiment, the outline of the dynamic obstacle applied during the collision detection process can be set according to the maximum length and maximum width of the true outline of the dynamic obstacle. When the dynamic obstacle is loaded with other things, such as a cargo tray and the tray is larger than the outline of the dynamic obstacle, the outline of the dynamic obstacle applied during the collision detection process can be set according to the maximum length and maximum width of the tray. In this embodiment, the outline of the dynamic obstacle applied during the collision detection process can be rectangular.

[0041] (4) The current speed and current position of the above dynamic obstacles.

[0042] (5) The historical movement trajectory of the above-mentioned dynamic obstacles.

[0043] In other implementations, the autonomous mobile device can establish a communication channel with the dynamic obstacle, and based on the communication channel with the dynamic obstacle, the autonomous mobile device can directly obtain the historical movement trajectory, current speed and current position sent by the dynamic obstacle.

[0044] Step S120: Predict the acceleration of the dynamic obstacle based on its historical trajectory.

[0045] Jerk, also known as jerkiness, describes the rate of change in acceleration. Jerk is determined by the magnitude of the acceleration change and the time elapsed. As mentioned earlier, the historical trajectory of a dynamic obstacle includes the trajectory from a specified time period to the present. This specified time period can include multiple discrete time points. Historical accelerations (or velocities) corresponding to multiple discrete time points can be obtained from the historical trajectory. Based on the historical acceleration (or velocities) of each discrete time point, the historical jerk corresponding to that discrete time point is calculated, resulting in the historical jerk corresponding to multiple discrete time points. The average of the historical jerks corresponding to multiple discrete time points is then calculated as the predicted jerk of the dynamic obstacle. For example, the following expression can be used to calculate the historical jerk corresponding to each discrete time point based on its historical acceleration:

[0046]

[0047] Where j represents the historical acceleration of the dynamic obstacle at time t; Δa represents the change in historical acceleration of the dynamic obstacle from time t in the past to the present; and Δt represents the time period from time t in the past to the present.

[0048] In some implementations, after obtaining the historical jerks corresponding to multiple discrete time points, the historical jerks corresponding to multiple discrete time points can be filtered to remove excessively large or small values ​​from the multiple jerks, and multiple jerks after filtering and smoothing can be obtained. Then, the average value of the multiple smoothed jerks can be calculated as the predicted jerk of the dynamic obstacle, so as to improve the accuracy of the predicted jerk.

[0049] Step S130: Based on the current speed, current position, historical motion trajectory, and jerk of the dynamic obstacle, predict the future motion trajectory of the dynamic obstacle from the present to a specified future time period.

[0050] The specified time period can include multiple discrete time points. After obtaining the jerk of the dynamic obstacle, assuming that the jerk of the dynamic obstacle remains constant within the specified time period in the future, the acceleration, velocity, and position of the dynamic obstacle at multiple discrete time points in the future can be predicted based on the current velocity, current position, historical trajectory, and jerk of the dynamic obstacle; the predicted acceleration, velocity, and position are then combined to synthesize the future trajectory of the dynamic obstacle.

[0051] Please refer to the flowchart in this application that predicts the future trajectory of a dynamic obstacle from the present to a specified future time period. Figure 4 The perception module of the autonomous mobile device inputs obstacle information (such as the historical motion trajectory and outline of the dynamic obstacle), the current speed and current position of the autonomous mobile device into the prediction module. The prediction module sequentially performs jerk prediction, acceleration prediction, velocity prediction, future motion trajectory prediction of the dynamic obstacle, and trajectory smoothing operation. The smoothed future motion trajectory of the dynamic obstacle is output to the collision detection module so that the collision detection module can perform collision detection based on the future motion trajectory and outline of the dynamic obstacle.

[0052] This process involves first predicting the acceleration of a dynamic obstacle at multiple discrete time points based on its historical trajectory and jerk, thus obtaining multiple accelerations. Specifically, the velocities of the two most recent discrete time points can be obtained from the obstacle's historical trajectory. Based on these velocities, the initial acceleration of the obstacle can be predicted, which can be obtained by the difference between the velocities at the two discrete time points. Finally, based on the initial acceleration and jerk, the accelerations corresponding to multiple discrete time points within a specified future time period can be predicted, resulting in multiple accelerations.

[0053] For example, the initial acceleration of a dynamic obstacle can be predicted using the following expression:

[0054]

[0055] Where a0 represents the initial acceleration of the dynamic obstacle; Δv represents the difference in velocity between two discrete time points; and Δt represents the difference in velocity between two discrete time points.

[0056] For example, the following expression can be used to predict multiple accelerations:

[0057] a(n) = a(n-1) + j*t(n)

[0058] Where a(n) represents the acceleration at the nth discrete time point; a(n-1) represents the acceleration at the (n-1)th discrete time point; j represents the predicted jerk; and t(n) represents the nth discrete time point. Here, n is a positive integer greater than or equal to 1. When n = 1, a(0) is equal to the initial acceleration a0 mentioned above.

[0059] After obtaining multiple accelerations, the velocities of the dynamic obstacle at multiple discrete time points within a specified future time period can be predicted based on these accelerations, multiple discrete time points, and the current velocity of the dynamic obstacle. For example, the following expression can be used to predict multiple velocities;

[0060] v(n) = v(n-1) + a(n) * t(n)

[0061] Where v(n) represents the velocity at the nth discrete time point; v(n-1) represents the velocity at the (n-1)th discrete time point; a(n) represents the acceleration at the nth discrete time point; and t(n) represents the nth discrete time point. Here, n is a positive integer greater than or equal to 1. When n = 1, v(0) equals the current velocity of the dynamic obstacle.

[0062] After obtaining multiple velocities, the positions of the dynamic obstacle at multiple discrete time points within a specified future time period can be predicted based on these velocities, multiple discrete time points, and the current position of the dynamic obstacle. For example, the following expression can be used to predict multiple positions:

[0063] p(n) = p(n-1) + v(n) * t(n)

[0064] Where p(n) represents the position at the nth discrete time point; p(n-1) represents the position at the (n-1)th discrete time point; v(n) represents the velocity at the nth discrete time point; and t(n) represents the nth discrete time point. Here, n is a positive integer greater than or equal to 1. When n = 1, p(0) equals the current position of the dynamic obstacle.

[0065] After predicting the acceleration, velocity, and position of a dynamic obstacle at multiple discrete time points within a specified future time period, the acceleration, velocity, and position of these multiple discrete time points can be synthesized into the future trajectory of the dynamic obstacle. For example, multiple discrete time points can be connected to form a discrete point trajectory, where each discrete point has a corresponding acceleration, velocity, and position. A filtering algorithm (such as a Kalman filter) can be used to smooth the discrete points on the trajectory, removing excessively large or small values. The smoothed discrete point trajectory is the future trajectory of the dynamic obstacle, where each discrete point has a corresponding acceleration, velocity, and position. All discrete points on the future trajectory of the dynamic obstacle, along with their corresponding time, acceleration, velocity, and position, form a prediction set for the dynamic obstacle. Subsequently, data from this prediction set can be obtained based on the obstacle's identification information.

[0066] Step S140: Based on the future motion trajectory of the dynamic obstacle and the motion trajectory of the autonomous mobile device, detect whether there is a collision risk between the dynamic obstacle and the autonomous mobile device.

[0067] It can be determined whether the future trajectory of the dynamic obstacle intersects with the trajectory of the autonomous mobile device. If the future trajectory of the dynamic obstacle intersects with the trajectory of the autonomous mobile device, it is considered that a collision may occur between the dynamic obstacle and the autonomous mobile device at the intersection point, and a collision risk between the dynamic obstacle and the autonomous mobile device can be determined. If the future trajectory of the dynamic obstacle does not intersect with the trajectory of the autonomous mobile device, it is considered that a collision will not occur between the dynamic obstacle and the autonomous mobile device within a specified period of time in the future, and a collision risk between the dynamic obstacle and the autonomous mobile device can be determined.

[0068] In some implementations, the distance between discrete points on the future trajectory of the obstacle and discrete points on the trajectory of the autonomous mobile device at the same moment can be calculated. If the calculated distance is less than or equal to a distance threshold, it is determined that the future trajectory of the dynamic obstacle intersects with the trajectory of the autonomous mobile device; if the calculated distance is greater than the distance threshold, it is determined that the future trajectory of the dynamic obstacle does not intersect with the trajectory of the autonomous mobile device. In some implementations, the distance threshold can be preset according to the actual size of the autonomous mobile device. For example, the distance threshold can be set to be greater than or equal to the maximum length of the actual outline of the autonomous mobile device. In other implementations, the distance threshold can also be determined in real time based on the actual outlines of the autonomous mobile device and the dynamic obstacle. For example, the distance threshold can be set to be greater than or equal to the sum of half the length of the actual outline of the autonomous mobile device and half the length of the actual outline of the dynamic obstacle.

[0069] To improve the accuracy of expansion detection, collision detection is performed around the autonomous mobile device. In some embodiments, multiple discrete points on the future trajectory of a dynamic obstacle can be expanded outwards by a first preset distance to form obstacle contours corresponding to the discrete points, which can be rectangular. Multiple discrete points on the trajectory of the autonomous mobile device can then be expanded outwards by a second preset distance to form rectangular contours corresponding to the discrete points. The system detects whether the obstacle contours and rectangular contours intersect at the same time. If they do, the future trajectory of the dynamic obstacle intersects with the trajectory of the autonomous mobile device; otherwise, they do not. The first preset distance can be pre-set as an expansion distance (e.g., any value between 5 cm and 10 cm) based on the actual contour of the autonomous mobile device, or it can be pre-set based on the length of the actual contour of the autonomous mobile device. The second preset distance can be preset to expand the first distance (e.g., any value between 5 cm and 10 cm) outwards from the actual outline of the dynamic obstacle. The second preset distance can also be set according to the length of the perceived actual outline of the dynamic obstacle. The first preset distance and the second preset distance can be the same or different.

[0070] To simplify calculations and improve collision detection efficiency, in some implementations, an environment map pre-built by the mapping module of the autonomous mobile device can be obtained. This environment map can include static obstacles in the autonomous mobile device's operating environment, including but not limited to walls, shelves, and goods. A distance map is constructed based on the environment map and the future trajectories of dynamic obstacles. Based on the distance map and the autonomous mobile device's trajectory, it is determined whether the future trajectories of the dynamic obstacles intersect with the autonomous mobile device's trajectory. The distance map can be a grid map, where each grid point stores the distance between the current grid point and the nearest obstacle (including static obstacles). This allows subsequent collision detection processes to directly obtain the distance from discrete points on the autonomous mobile device's trajectory to the nearest obstacle. For example, if a target discrete point on the autonomous mobile device's trajectory falls on a target grid point, the distance between the target grid point and the nearest obstacle can be obtained as the distance from the target discrete point to the nearest obstacle.

[0071] In some implementations, "constructing a distance map based on the environmental map and the future movement trajectories of dynamic obstacles" may include the following steps: using the environmental map as a base map, constructing an environmental grid map, setting the grid cells occupied by static obstacles in the environmental map to black, and setting other grid cells to white, with the area formed by the white grid cells representing the drivable area of ​​the autonomous mobile device. For example, the environmental grid map may be as follows: Figure 5 As shown, according to Figure 5 As shown in the environmental grid map, static obstacles in the operating environment of the autonomous mobile device only include the surrounding walls; no other static obstacles exist. Multiple discrete points on the future movement trajectories of dynamic obstacles are input into the environmental grid map, and the grid cells occupied by these discrete points are set to black, forming an obstacle grid map. For an example of two discrete points on the future movement trajectory, please refer to [link to example map]. Figure 5 and Figure 6 Add two discrete points on the future trajectory to Figure 5 In the environmental grid map shown, the resulting obstacle grid map can be as follows: Figure 6 As shown, Figure 6 The two black grids in the middle represent dynamic obstacles, representing two discrete points on the future trajectory. Because of the existence of both static and dynamic obstacles, the distance between a white grid and the outline of the nearest obstacle will decrease (initialized to positive infinity). Therefore, the process can start from the black grids in the obstacle grid map and gradually expand outwards, updating and caching the distance between each white grid and its nearest black grid, until all white grids have been updated, i.e., until all grids in the obstacle grid map have cached their distances to the nearest obstacle, forming a distance map. Figure 6 For example, please refer to the obstacle grid map shown below. Figure 7-9 , Figure 7-9 The gray grid in the image represents the grid occupied by two discrete points on the future trajectory. Figure 6 The two black grid squares in the middle begin to gradually spread outwards until a distance map is formed (such as...). Figure 9 The process is shown below. Subsequently, each time the "nearest obstacle" is updated—for example, when a new nearest obstacle is added, or when the nearest obstacle disappears—the distances between the cached distances to the "nearest obstacle" in all grids on the map are updated in real time.

[0072] To improve collision detection accuracy, collision detection is performed around the autonomous mobile device. In some embodiments, "constructing a distance map based on the environmental map and the future motion trajectory of dynamic obstacles" may include the following steps: expanding multiple discrete points on the future motion trajectory outward by a first preset distance to form obstacle contours corresponding to the discrete points, thereby obtaining multiple obstacle contours, wherein each obstacle contour includes multiple contour points that form the obstacle contour, and the multiple obstacle contours are greater than or equal to the actual contour of the dynamic obstacle; constructing a distance map based on the environmental map and the multiple obstacle contours. Specifically, using the environmental map as the base map, an environmental grid map is constructed. The grids occupied by static obstacles in the environmental map are set to black, and the other grids are set to white. The area formed by the white grids is the drivable area of ​​the autonomous mobile device. The contour points included by multiple obstacle contours are input into the environmental grid map, and the grids occupied by the contour points included by multiple obstacle contours are set to black, forming an obstacle grid map. Starting from the black grids in the obstacle grid map, the distance between each white grid and the nearest black grid is gradually updated and cached until all white grids have been updated, that is, until all grids in the obstacle grid map have cached the distance between them and the nearest obstacle, forming a distance map. For a detailed description of this embodiment, please refer to the previous embodiment. The difference between this embodiment and the previous embodiment is that the previous embodiment input multiple discrete points on the future motion trajectory into the environmental grid map and set the grid occupied by the multiple discrete points on the future motion trajectory to black, while this embodiment inputs the contour points included by multiple obstacle contours into the environmental grid map and sets the grid occupied by the contour points included by multiple obstacle contours to black.

[0073] After constructing the distance map, the above-mentioned "determining whether multiple rectangular contours intersect with multiple obstacle contours based on the distance map" may include the following steps: obtaining the distance of the raster buffer occupied by each contour point included in the multiple rectangular contours; if the distance is less than or equal to the aforementioned distance threshold, then it is determined that the multiple rectangular contours intersect with the multiple obstacle contours; if the distance is greater than the aforementioned distance threshold, then it is determined that the multiple rectangular contours do not intersect with the multiple obstacle contours. For an example, please refer to... Figure 10-11 , Figure 10-11 The black rectangles represent the expanded rectangles formed by the current discrete points on the autonomous mobile device's trajectory, while the white rectangles represent the expanded rectangles formed by the expanded future discrete points on the autonomous mobile device's trajectory. The circles represent the nodes of each stitched path; that is, the line segment between two adjacent circles constitutes a stitched path segment. The broken lines on both sides represent static obstacles (such as walls in the environment map), and the gray rectangles represent the expanded rectangles formed by the expanded discrete points on the future trajectory of dynamic obstacles. Figure 10This indicates that there is no risk of collision. Figure 11 This displays situations where there is a risk of collision. The location of the risk of collision usually refers to the first location where a collision is possible, such as... Figure 11 The position circled in the middle.

[0074] The collision detection method provided in this application predicts the acceleration of a dynamic obstacle based on its historical trajectory. Based on the obstacle's current speed, current position, historical trajectory, and acceleration, it predicts the obstacle's future trajectory within a specified future time period. By considering both the obstacle's future trajectory and the autonomous mobile device's trajectory, it detects whether there is a collision risk between the obstacle and the autonomous mobile device. By taking into account the obstacle's future trajectory, collision detection can be performed on obstacles within the specified future time period, allowing for proactive safety responses based on the collision detection results. This ensures the safety of the autonomous mobile device's autonomous movement and addresses the current problem of autonomous mobile devices struggling to respond promptly to rapidly moving dynamic obstacles, leading to safety hazards. Furthermore, when using a distance map, since static obstacles also exist within the distance map, collision detection based on the distance map can simultaneously detect both dynamic and static obstacles, enabling simultaneous safety responses and further ensuring the safety of the autonomous mobile device's autonomous movement.

[0075] To further improve the safety and autonomy of autonomous movement, when a collision risk is detected between a dynamic obstacle and the autonomous mobile device based on the latter's future trajectory and the device's trajectory, please refer to [the relevant documentation / reference]. Figure 12 In some embodiments, the collision detection method may further include the following steps S150 to S160.

[0076] Step S150: If a collision risk is detected between the dynamic obstacle and the autonomous mobile device based on the future motion trajectory of the dynamic obstacle and the motion trajectory of the autonomous mobile device, the absolute value of the difference between the current motion direction of the autonomous mobile device and the current motion direction of the dynamic obstacle is calculated as the deviation angle.

[0077] The current direction of motion of the autonomous mobile device and the current direction of motion of the dynamic obstacle are determined based on the aforementioned vehicle coordinate system. Specifically, the first angle formed between the current direction of motion of the autonomous mobile device and the x-axis in the vehicle coordinate system represents the current direction of motion of the autonomous mobile device, and the second angle formed between the current direction of motion of the dynamic obstacle and the y-axis in the vehicle coordinate system represents the current direction of motion of the dynamic obstacle. The difference between the first and second angles can be calculated, and the absolute value of this difference is taken as the deviation angle.

[0078] Step S160: Determine the next motion strategy for the autonomous mobile device based on the deviation angle.

[0079] If the deviation angle is less than or equal to the first preset angle, the autonomous mobile device and the dynamic obstacle are considered to be moving in the same direction. In this case, the next movement strategy for the autonomous mobile device can be determined as decelerating and following the obstacle. For example, the autonomous mobile device can be controlled to follow the dynamic obstacle while maintaining a certain distance from it to ensure that the autonomous mobile device does not collide with the dynamic obstacle. The first preset angle can be a pre-set acute angle value, such as 45 degrees.

[0080] If the deviation angle is greater than the first preset angle and less than or equal to the second preset angle, the movement relationship between the autonomous mobile device and the dynamic obstacle is considered to be cross-traffic. In this case, the next movement strategy for the autonomous mobile device can be determined based on its current speed and position: either decelerate or stop. Specifically, the distance between the current position of the autonomous mobile device and the detected location with collision risk is calculated. If this distance is less than or equal to a preset stopping distance, stopping is triggered; if the distance is greater than the preset stopping distance, deceleration is triggered. The second preset angle can be a pre-set obtuse angle value, for example, 135 degrees. The preset stopping distance can be pre-set considering the type of autonomous mobile device, the road conditions of the actual operating environment, and the level of safety requirements; no specific limitations are specified here.

[0081] If the deviation angle is greater than the second preset angle and less than or equal to the third preset angle, the autonomous mobile device and the dynamic obstacle are considered to be moving towards each other. In this case, the next movement strategy for the autonomous mobile device can be determined as decelerating to a stop, where the stopping position does not exceed a location with a collision risk. The third preset angle can be a pre-set obtuse angle value greater than the second preset angle; for example, the third preset angle can be 180 degrees.

[0082] Please refer to the detailed flowchart of the collision detection process (steps S140 to S160) in some embodiments of the collision detection method provided in this application. Figure 13The prediction module outputs the future trajectory of dynamic obstacles to the collision detection module, the mapping module outputs the environment map to the collision detection module, the localization module outputs the current direction of motion of the autonomous mobile device to the collision detection module, and the perception module outputs the current direction of motion of dynamic obstacles to the collision detection module. The collision detection module constructs an environment grid map based on the environment map and an obstacle grid map based on the future trajectory of the dynamic obstacles and the environment grid map. Each grid in the obstacle grid map calculates and caches the distance between the nearest obstacle and the current grid until all grids have cached distances, forming a distance map. Collision detection is performed based on this distance map. When a collision risk is detected, the module analyzes the motion relationship between the dynamic obstacle and the autonomous mobile device based on their respective motion directions. Based on this relationship, it determines the next motion strategy for the autonomous mobile device, enabling it to autonomously complete collision detection and make safety decisions based on the collision detection results, thus improving the autonomy and safety of the autonomous mobile device.

[0083] Based on steps S150 and S160, the collision detection method provided in this application embodiment also has the following technical effects: when a collision risk is detected between the dynamic obstacle and the autonomous mobile device according to the future movement trajectory of the dynamic obstacle and the movement trajectory of the autonomous mobile device, the next movement strategy can be decided based on the current movement relationship between the autonomous mobile device and the dynamic obstacle. Thus, the movement strategy can be decided autonomously in the presence of a collision risk, thereby avoiding collisions on its own and ensuring the safety, autonomy, stability and smoothness of the autonomous movement of the autonomous mobile device.

[0084] Please see Figure 14 , Figure 14 A schematic diagram of the collision detection device provided in an embodiment of this application is shown. The collision detection device 200 can be applied to a collision detection system or an autonomous mobile device. The collision detection device 200 includes a data acquisition module 210, an acceleration prediction module 220, a trajectory prediction module 230, and a collision detection module 240. The data acquisition module 210 is used to acquire the motion trajectory of the autonomous mobile device and the current speed, current position, and historical motion trajectory of a dynamic obstacle. The acceleration prediction module 220 is used to predict the acceleration of the dynamic obstacle based on its historical motion trajectory. The trajectory prediction module 230 is used to predict the future motion trajectory of the dynamic obstacle from the present to a specified future time period based on its current speed, current position, historical motion trajectory, and acceleration. The collision detection module 240 is used to detect whether there is a collision risk between the dynamic obstacle and the autonomous mobile device based on the future motion trajectory of the dynamic obstacle and the motion trajectory of the autonomous mobile device.

[0085] In some embodiments, the trajectory prediction module 230 is further configured to predict the future acceleration, velocity, and position of the dynamic obstacle at the plurality of discrete time points based on the current velocity, current position, historical motion trajectory, and jerk of the dynamic obstacle; and to synthesize the predicted acceleration, velocity, and position into the future motion trajectory of the dynamic obstacle.

[0086] In some embodiments, the trajectory prediction module 230 is further configured to: predict the future acceleration of the dynamic obstacle at multiple discrete time points based on the historical motion trajectory of the dynamic obstacle and the jerk, thereby obtaining multiple accelerations; predict the future velocity of the dynamic obstacle at multiple discrete time points based on the multiple accelerations, the multiple discrete time points, and the current velocity of the dynamic obstacle, thereby obtaining multiple velocities; and predict the future position of the dynamic obstacle at multiple discrete time points based on the multiple velocities, the multiple discrete time points, and the current position of the dynamic obstacle, thereby obtaining multiple positions.

[0087] In some embodiments, the trajectory prediction module 230 is further configured to obtain the velocities of the dynamic obstacle at the two most recent discrete time points from the historical motion trajectory of the dynamic obstacle; predict the initial acceleration of the dynamic obstacle based on the velocities at the two discrete time points; and predict the future acceleration of the dynamic obstacle at the plurality of discrete time points based on the initial acceleration and the jerk, thereby obtaining a plurality of accelerations.

[0088] In some embodiments, the collision detection module 240 is further configured to determine whether the future trajectory of the dynamic obstacle intersects with the trajectory of the autonomous mobile device; if the future trajectory of the dynamic obstacle intersects with the trajectory of the autonomous mobile device, it is determined that there is a collision risk between the dynamic obstacle and the autonomous mobile device; if the future trajectory of the dynamic obstacle does not intersect with the trajectory of the autonomous mobile device, it is determined that there is no collision risk between the dynamic obstacle and the autonomous mobile device.

[0089] In some embodiments, the collision detection module 240 is further configured to acquire a pre-built environmental map of the autonomous mobile device; construct a distance map based on the environmental map and the future motion trajectory of the dynamic obstacle, wherein each grid point in the distance map caches the distance between the current grid point and the nearest obstacle to the current grid point; and determine whether the future motion trajectory of the dynamic obstacle intersects with the motion trajectory of the autonomous mobile device based on the distance map and the motion trajectory of the autonomous mobile device.

[0090] In some embodiments, the collision detection module 240 is further configured to expand multiple discrete points on the future motion trajectory to form multiple obstacle contours, wherein the multiple obstacle contours are greater than or equal to the true contours of the dynamic obstacles; and to construct the distance map based on the environment map and the multiple obstacle contours.

[0091] In some embodiments, the collision detection module 240 is further configured to expand multiple discrete points on the motion trajectory of the autonomous mobile device to form multiple rectangular outlines, wherein the rectangular outlines are greater than or equal to the outline of the autonomous mobile device; based on the distance map, determine whether the multiple rectangular outlines intersect with the multiple obstacle outlines; if the multiple rectangular outlines intersect with the multiple obstacle outlines, determine that the future motion trajectory of the dynamic obstacle intersects with the motion trajectory of the autonomous mobile device; if the multiple rectangular outlines do not intersect with the multiple obstacle outlines, determine that the future motion trajectory of the dynamic obstacle does not intersect with the motion trajectory of the autonomous mobile device.

[0092] In some embodiments, the collision detection device 200 may further include a motion strategy decision module. The motion strategy decision module is configured to, upon detecting a collision risk between the dynamic obstacle and the autonomous mobile device, calculate the absolute value of the difference between the current motion direction of the autonomous mobile device and the current motion direction of the dynamic obstacle as a deviation angle; and determine the next motion strategy of the autonomous mobile device based on the deviation angle.

[0093] In some embodiments, the motion strategy decision module is further configured to determine that the next motion strategy of the autonomous mobile device is to decelerate and follow the vehicle if the deviation angle is less than or equal to a first preset angle, wherein when the deviation angle is less than or equal to the first preset angle, the autonomous mobile device travels in the same direction as the dynamic obstacle.

[0094] In some embodiments, the motion strategy decision module is further configured to determine the next motion strategy of the autonomous mobile device as follows if the deviation angle is greater than a first preset angle and less than or equal to a second preset angle: to determine whether to decelerate or stop based on the current speed and current position of the autonomous mobile device. When the deviation angle is greater than the first preset angle and less than or equal to the second preset angle, the autonomous mobile device travels in a cross-traffic manner with the dynamic obstacle.

[0095] In some embodiments, the motion strategy decision module is further configured to determine that if the deviation angle is greater than a second preset angle and less than or equal to a third preset angle, the next motion strategy of the autonomous mobile device is to decelerate and drive to a stop, wherein when the deviation angle is greater than the second preset angle and less than or equal to the third preset angle, the autonomous mobile device is driving towards the dynamic obstacle.

[0096] Those skilled in the art will clearly understand that the apparatus provided in the embodiments of this application can implement the methods provided in the embodiments of this application. The specific working process of the described apparatus and modules can be found in the corresponding processes of the methods in the embodiments of this application, and will not be repeated here.

[0097] In the embodiments provided in this application, the coupling, direct coupling, or communication connection between the modules shown or discussed may be indirect coupling or communication coupling through some interfaces, devices, or modules, and may be electrical, mechanical, or other forms. The embodiments of this application do not impose specific limitations on this.

[0098] Furthermore, the functional modules in the embodiments of this application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The integrated modules described above can be implemented in hardware or as software functional modules.

[0099] Please see Figure 15 , Figure 15 A schematic diagram of the structure of the autonomous mobile device provided in the embodiments of this application is shown. The autonomous mobile device 300 can be a device with autonomous mobility functions, such as an AGV or an AMR. The autonomous mobile device 300 may include a memory 310 and a processor 320. The memory 310 stores an application program, which is configured to execute the method provided in the embodiments of this application when invoked by the processor 320.

[0100] The processor 320 may include one or more processing cores. The processor 320 uses various interfaces and lines to connect to various parts within the autonomous mobile device 300, and is used to run or execute instructions, programs, code sets or instruction sets stored in the memory 310, as well as to call and run or execute data stored in the memory 310, and perform various functions and process data of the autonomous mobile device 300.

[0101] The processor 320 can be implemented using at least one of the following hardware forms: Digital Signal Processing (DSP), Field-Programmable Gate Array (FPGA), and Programmable Logic Array (PLA). The processor 320 can integrate one or a combination of several of the following: Central Processing Unit (CPU), Graphics Processing Unit (GPU), and modem. The CPU primarily handles the operating system, user interface, and applications; the GPU is responsible for rendering and drawing the displayed content; and the modem handles wireless communication. It is understood that the modem can also be implemented separately as a communication chip, without being integrated into the processor 320.

[0102] The memory 310 may include random access memory (RAM) or read-only memory (ROM). The memory 310 can be used to store instructions, programs, code, code sets, or instruction sets. The memory 310 may include a program storage area and a data storage area. The program storage area may store instructions for implementing an operating system, instructions for implementing at least one function, instructions for implementing the various method embodiments described above, etc. The data storage area may store data created by the autonomous mobile device 300 during use.

[0103] This application also provides a computer-readable storage medium storing program code configured to execute the methods provided in this application when invoked by a processor. The computer-readable storage medium in this application can be an electronic storage device such as flash memory, electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), hard disk, or ROM. In some embodiments, the computer-readable storage medium may include a non-volatile computer-readable storage medium (Non-TCRSM). The computer-readable storage medium has storage space for program code that performs any of the method steps described above. This program code can be read from or written to one or more computer program products. The program code can be compressed in an appropriate form.

[0104] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.

Claims

1. A collision detection method, characterized in that, include: Acquire the motion trajectory of the autonomous mobile device and the current speed, current position, and historical motion trajectory of dynamic obstacles; Predict the jerk of the dynamic obstacle based on its historical trajectory. Based on the current speed, current position, historical trajectory, and jerk of the dynamic obstacle, predict the future trajectory of the dynamic obstacle from the present to a specified future time period; Based on the future movement trajectory of the dynamic obstacle and the movement trajectory of the autonomous mobile device, detect whether there is a risk of collision between the dynamic obstacle and the autonomous mobile device; The specified time period includes multiple discrete time points. Predicting the future trajectory of the dynamic obstacle from the present to the specified future time period based on its current speed, current position, historical trajectory, and jerk includes: Based on the current speed, current position, historical trajectory, and accelerometer of the dynamic obstacle, predict the future acceleration, speed, and position of the dynamic obstacle at multiple discrete time points; The predicted acceleration, velocity, and position are combined to synthesize the future trajectory of the dynamic obstacle.

2. The method according to claim 1, characterized in that, The step of predicting the future acceleration, velocity, and position of the dynamic obstacle at multiple discrete time points based on the obstacle's current velocity, current position, historical trajectory, and jerk includes: Based on the historical motion trajectory of the dynamic obstacle and the jerk, predict the future acceleration of the dynamic obstacle at multiple discrete time points to obtain multiple accelerations; Based on the multiple accelerations, the multiple discrete time points, and the current velocity of the dynamic obstacle, predict the future velocity of the dynamic obstacle at the multiple discrete time points to obtain multiple velocities; Based on the multiple speeds, the multiple discrete time points, and the current position of the dynamic obstacle, the future position of the dynamic obstacle at the multiple discrete time points is predicted, resulting in multiple positions.

3. The method according to claim 2, characterized in that, The method involves predicting the future acceleration of the dynamic obstacle at multiple discrete time points based on its historical trajectory and jerk, thereby obtaining multiple accelerations, including: From the historical motion trajectory of the dynamic obstacle, obtain the velocity of the two most recent discrete time points of the dynamic obstacle; Based on the velocities at the two discrete time points, predict the initial acceleration of the dynamic obstacle; Based on the initial acceleration and the jerk of the dynamic obstacle, the future acceleration of the dynamic obstacle at multiple discrete time points is predicted, resulting in multiple accelerations.

4. The method according to claim 1, characterized in that, The step of detecting whether there is a collision risk between the dynamic obstacle and the autonomous mobile device based on the future movement trajectory of the dynamic obstacle and the movement trajectory of the autonomous mobile device includes: Determine whether the future trajectory of the dynamic obstacle intersects with the trajectory of the autonomous mobile device; If the future trajectory of the dynamic obstacle intersects with the trajectory of the autonomous mobile device, it is determined that there is a risk of collision between the dynamic obstacle and the autonomous mobile device; If the future trajectory of the dynamic obstacle does not intersect with the trajectory of the autonomous mobile device, it is determined that there is no risk of collision between the dynamic obstacle and the autonomous mobile device.

5. The method according to claim 4, characterized in that, The step of determining whether the future trajectory of the dynamic obstacle intersects with the trajectory of the autonomous mobile device includes: Obtain the pre-built environmental map of the autonomous mobile device; Based on the environmental map and the future movement trajectory of the dynamic obstacles, a distance map is constructed, wherein each grid point in the distance map caches the distance between the current grid point and the nearest obstacle to the current grid point; Based on the distance map and the movement trajectory of the autonomous mobile device, it is determined whether the future movement trajectory of the dynamic obstacle intersects with the movement trajectory of the autonomous mobile device.

6. The method according to claim 5, characterized in that, The step of constructing a distance map based on the environmental map and the future movement trajectory of the dynamic obstacle includes: The multiple discrete points on the future motion trajectory are expanded to form multiple obstacle contours, and the multiple obstacle contours are greater than or equal to the real contours of the dynamic obstacles. The distance map is constructed based on the environmental map and the outlines of the multiple obstacles.

7. The method according to claim 6, characterized in that, The step of determining whether the future trajectory of the dynamic obstacle intersects with the trajectory of the autonomous mobile device based on the distance map and the trajectory of the autonomous mobile device includes: The multiple discrete points on the motion trajectory of the autonomous mobile device are expanded to form multiple rectangular outlines, and the rectangular outlines are greater than or equal to the outline of the autonomous mobile device. Based on the distance map, determine whether the multiple rectangular outlines and the multiple obstacle outlines intersect; If the multiple rectangular outlines intersect with the multiple obstacle outlines, it is determined that the future motion trajectory of the dynamic obstacle intersects with the motion trajectory of the autonomous mobile device; If the multiple rectangular outlines do not intersect with the multiple obstacle outlines, it is determined that the future motion trajectory of the dynamic obstacle does not intersect with the motion trajectory of the autonomous mobile device.

8. The method according to claim 1, characterized in that, After detecting whether there is a collision risk between the dynamic obstacle and the autonomous mobile device based on the future movement trajectory of the dynamic obstacle and the movement trajectory of the autonomous mobile device, the method further includes: If a collision risk is detected between the dynamic obstacle and the autonomous moving device, the absolute value of the difference between the current direction of motion of the autonomous moving device and the current direction of motion of the dynamic obstacle is calculated as the deviation angle. Based on the deviation angle, the next motion strategy of the autonomous mobile device is determined.

9. The method according to claim 8, characterized in that, The step of determining the next motion strategy of the autonomous mobile device based on the deviation angle includes: If the deviation angle is less than or equal to the first preset angle, the next movement strategy of the autonomous mobile device is determined to be deceleration and following the vehicle. When the deviation angle is less than or equal to the first preset angle, the autonomous mobile device travels in the same direction as the dynamic obstacle.

10. The method according to claim 8, characterized in that, The step of determining the next motion strategy of the autonomous mobile device based on the deviation angle further includes: If the deviation angle is greater than the first preset angle and less than or equal to the second preset angle, the next movement strategy of the autonomous mobile device is determined to be to decelerate or stop based on the current speed and current position of the autonomous mobile device. When the deviation angle is greater than the first preset angle and less than or equal to the second preset angle, the autonomous mobile device travels in a cross-traffic manner with the dynamic obstacle.

11. The method according to claim 8, characterized in that, The step of determining the next motion strategy of the autonomous mobile device based on the deviation angle further includes: If the deviation angle is greater than the second preset angle and less than or equal to the third preset angle, the next movement strategy of the autonomous mobile device is determined to be to decelerate and stop. When the deviation angle is greater than the second preset angle and less than or equal to the third preset angle, the autonomous mobile device travels towards the dynamic obstacle.

12. A collision detection device, characterized in that, include: The data acquisition module is used to acquire the motion trajectory of the autonomous mobile device and the current speed, current position, and historical motion trajectory of dynamic obstacles; The jerk prediction module is used to predict the jerk of the dynamic obstacle based on its historical motion trajectory. The trajectory prediction module is used to predict the future trajectory of the dynamic obstacle from the present to a specified future time period based on the current speed, current position, historical motion trajectory, and jerk of the dynamic obstacle. The collision detection module is used to detect whether there is a risk of collision between the dynamic obstacle and the autonomous mobile device based on the future movement trajectory of the dynamic obstacle and the movement trajectory of the autonomous mobile device. The specified time period includes multiple discrete time points. Predicting the future trajectory of the dynamic obstacle from the present to the specified future time period based on its current speed, current position, historical trajectory, and jerk includes: Based on the current speed, current position, historical trajectory, and accelerometer of the dynamic obstacle, predict the future acceleration, speed, and position of the dynamic obstacle at multiple discrete time points; The predicted acceleration, velocity, and position are combined to synthesize the future trajectory of the dynamic obstacle.

13. An autonomous mobile device, characterized in that, It includes a memory and a processor, wherein the memory stores an application program that is configured to perform the method as described in any one of claims 1-11 when invoked by the processor.

14. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores program code that is configured to execute the method as described in any one of claims 1-11 when invoked by a processor.

Citation Information

Patent Citations

  • Collision risk detection method, device and equipment

    CN115140034A