Robot collision detection method and device

By establishing a polygonal model and pixelization in the environmental map, the method of discreteness of the rotation angle solves the problem of poor adaptability of the circular chassis model in the existing technology, and realizes the high passability and real -time collision detection of the robot in the narrow road. Essence

CN114995439BActive Publication Date: 2025-01-24SHANGHAI SLAMTEC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210662794.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-13
Publication Date
2025-01-24
Estimated Expiration
2042-06-13

AI Technical Summary

Technical Problem

In the existing mobile robot algorithm, the circular chassis model is difficult to adapt to robot chassis of various shapes in practice, resulting in poor passability in narrow roads.

Method used

Create a polygonal model of the robot chassis in the environment map and pixelate it. Create a pixelated model at each rotation angle and store it in a lookup table. Collision detection is performed in real time through the lookup table.

Benefits of technology

It improves the passability of the robot in different road environments, reduces the time complexity of collision detection, and realizes real-time collision detection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114995439B_ABST
    Figure CN114995439B_ABST
Patent Text Reader

Abstract

The purpose of the present invention is to provide a robot collision detection method and device, by establishing a polygonal robot chassis model in the environment map, pixelating the model of the robot on the left and converting it into the model on the right, so that collision detection only needs to read pixel values, and the time complexity becomes O1. At the same time, since the robot is constantly moving, the problem of model conversion after pixelation will be encountered here. The present invention designs a method for angle discretization, by establishing a pixelated polygonal robot chassis model at each rotation angle in the environment map, storing the pixelated polygonal robot chassis model at each rotation angle in the environment map into a lookup table to discretize the angle, so as to construct a finite number of models. When the robot rotates, the robot collision detection can be performed in real time through the angle table search method to improve the robot's passability.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computers, and more particularly to a method and apparatus for robot collision detection. Background Technology

[0002] like Figure 1 As shown, in existing mobile robot algorithms, the robot's chassis is modeled as a circle, and a costmap is used to achieve path planning and motion planning. However, in actual robot design, the robot chassis is not designed to be completely circular. For example, it may be designed as a rectangle. In reality, roads are very narrow, and robots with circular chassis cannot pass through such narrow roads. Only robots with rectangular chassis can pass through such narrow roads. Therefore, modeling with a circular chassis will seriously affect the robot's passability. Summary of the Invention

[0003] One object of the present invention is to provide a robot collision detection method and device.

[0004] According to one aspect of the present invention, a robot collision detection method is provided, the method comprising:

[0005] Create a polygonal robot chassis model in the environment map, and then pixelate the polygonal robot chassis model in the environment map.

[0006] Create a pixelated polygonal model of the robot chassis at each rotation angle in the environment map, and store the pixelated polygonal model of the robot chassis at each rotation angle in the environment map into a lookup table.

[0007] Obtain the actual distance and rotation angle of the robot's movement. Based on the robot's actual rotation angle, retrieve the pixelated polygon model of the robot chassis from the lookup table at the corresponding rotation angle.

[0008] The system obtains the positions of obstacles in the environment map. Based on the positions of obstacles in the environment map and the distance the robot has moved, it determines whether the position of the obstacle overlaps with a pixel in the pixelated polygon model of the robot chassis at the corresponding rotation angle in the obtained environment map. If they overlap, it is determined that the obstacle and the robot have collided. If they do not overlap, it is determined that the obstacle and the robot have not collided.

[0009] Furthermore, in the above method, a pixelated polygonal model of the robot chassis at each rotation angle in the environmental map is established, and the pixelated polygonal model of the robot chassis at each rotation angle in the environmental map is stored in a lookup table, including:

[0010] For rotation angles from 0 to 360 degrees, the model is discretized every 0.5 degrees, resulting in a pixelated polygonal robot chassis model with 720 rotation angles.

[0011] Store the pixelated polygonal robot chassis model at 720 rotation angles into a lookup table.

[0012] Furthermore, in the above method, the pixelated polygonal robot chassis model at 720 rotation angles is stored in a lookup table, including:

[0013] Create an index for each of the 720 rotation angles;

[0014] A model of the robot chassis consisting of pixelated polygons for each index and the corresponding rotation angle.

[0015] Furthermore, in the above method, the index for each of the 720 rotation angles is established, including:

[0016] The following formula is used to create an index for each of the 720 rotation angles:

[0017] Here, theta represents a rotation angle, and idx represents the index corresponding to that rotation angle.

[0018] Furthermore, in the above method, the positions of obstacles in the environment map are obtained. Based on the positions of the obstacles in the environment map and the distance the robot has moved, it is determined whether the positions of the obstacles overlap with a pixel in the pixelated polygonal robot chassis model at the corresponding rotation angle in the obtained environment map, including:

[0019] Obtain the positions of obstacles in the environment map and the original positions of the pixelated polygonal robot chassis model at the corresponding rotation angle in the obtained environment map;

[0020] Based on the distance the robot moves, the position of obstacles is moved the same distance in the environment map;

[0021] Determine whether the position of the moved obstacle in the environment map overlaps with a pixel in the pixelated polygon model of the robot chassis at the original position and corresponding rotation angle in the acquired environment map.

[0022] According to another aspect of the present invention, a robot collision detection device is also provided, wherein the device comprises:

[0023] The first device is used to create a polygonal robot chassis model in an environmental map and to pixelate the polygonal robot chassis model in the environmental map.

[0024] The second device is used to create a pixelated polygonal robot chassis model at various rotation angles in the environment map and store the pixelated polygonal robot chassis model at various rotation angles in the environment map into a lookup table.

[0025] The third device is used to obtain the actual distance and rotation angle of the robot's movement, and based on the robot's actual rotation angle, to obtain a pixelated polygonal model of the robot chassis from the lookup table at the corresponding rotation angle.

[0026] The fourth device is used to obtain the position of obstacles in the environment map. Based on the position of obstacles in the environment map and the distance the robot moves, it determines whether the position of the obstacle overlaps with a pixel in the pixelated polygon robot chassis model at the corresponding rotation angle in the obtained environment map. If the obstacle overlaps, it is determined that the obstacle has collided with the robot. If the obstacle does not overlap, it is determined that the obstacle has not collided with the robot.

[0027] Furthermore, in the aforementioned device, the second device is used to discretize the robot chassis model into pixelated polygons at 720 rotation angles by discretizing the rotation angle from 0 to 360 degrees every 0.5 degrees; and to store the robot chassis model into a lookup table.

[0028] Furthermore, in the aforementioned device, the second device is used to establish an index for each of the 720 rotation angles; and to create a model of the robot chassis with pixelated polygons at each index and the corresponding rotation angle.

[0029] Furthermore, in the aforementioned device, the second device is used to establish an index for each of the 720 rotation angles according to the following formula:

[0030] Here, theta represents a rotation angle, and idx represents the index corresponding to that rotation angle.

[0031] Furthermore, in the aforementioned device, the fourth device is used to acquire the position of the obstacle in the environmental map and the original position of the pixelated polygon robot chassis model at the corresponding rotation angle in the acquired environmental map; move the position of the obstacle in the environmental map by the same distance based on the distance the robot moves; and determine whether the position of the moved obstacle in the environmental map overlaps with a certain pixel in the pixelated polygon robot chassis model at the corresponding rotation angle at the original position in the acquired environmental map.

[0032] According to another aspect of the present invention, a computing-based device is also provided, comprising:

[0033] processor; and

[0034] A memory configured to store computer-executable instructions, which, when executed, cause the processor to:

[0035] Create a polygonal robot chassis model in the environment map, and then pixelate the polygonal robot chassis model in the environment map.

[0036] Create a pixelated polygonal model of the robot chassis at each rotation angle in the environment map, and store the pixelated polygonal model of the robot chassis at each rotation angle in the environment map into a lookup table.

[0037] Obtain the actual distance and rotation angle of the robot's movement. Based on the robot's actual rotation angle, retrieve the pixelated polygon model of the robot chassis from the lookup table at the corresponding rotation angle.

[0038] The system obtains the positions of obstacles in the environment map. Based on the positions of obstacles in the environment map and the distance the robot has moved, it determines whether the position of the obstacle overlaps with a pixel in the pixelated polygon model of the robot chassis at the corresponding rotation angle in the obtained environment map. If they overlap, it is determined that the obstacle and the robot have collided. If they do not overlap, it is determined that the obstacle and the robot have not collided.

[0039] According to another aspect of the present invention, a computer-readable storage medium is also provided, having stored thereon computer-executable instructions, wherein when executed by a processor, the computer-executable instructions cause the processor to:

[0040] Create a polygonal robot chassis model in the environment map, and then pixelate the polygonal robot chassis model in the environment map.

[0041] Create a pixelated polygonal model of the robot chassis at each rotation angle in the environment map, and store the pixelated polygonal model of the robot chassis at each rotation angle in the environment map into a lookup table.

[0042] Obtain the actual distance and rotation angle of the robot's movement. Based on the robot's actual rotation angle, retrieve the pixelated polygon model of the robot chassis from the lookup table at the corresponding rotation angle.

[0043] The system obtains the positions of obstacles in the environment map. Based on the positions of obstacles in the environment map and the distance the robot has moved, it determines whether the position of the obstacle overlaps with a pixel in the pixelated polygon model of the robot chassis at the corresponding rotation angle in the obtained environment map. If they overlap, it is determined that the obstacle and the robot have collided. If they do not overlap, it is determined that the obstacle and the robot have not collided.

[0044] Compared to existing technologies, robot navigation path planning requires the use of an environmental map, such as a grid map. When collision detection is needed, the position of each obstacle in the grid map and the robot chassis model must be compared for collision detection, which is very time-consuming in existing solutions. This invention addresses this by creating a polygonal robot chassis model within the environmental map, which... Figure 3 The robot model on the left shown is pixelated and transformed into something like... Figure 3 The model shown on the right demonstrates how collision detection only requires reading pixel values, reducing the time complexity to O1. However, since the robot is constantly moving, the problem of converting the pixelated model arises. This invention addresses this by designing an angle discretization method. This involves creating pixelated polygonal models of the robot chassis at various rotation angles in the environment map. These models are stored in a lookup table to discretize the angles. By constructing a finite number of models, and using the angle table lookup method as the robot rotates, real-time collision detection can be performed, improving the robot's maneuverability. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] Other features, objects, and advantages of the invention will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:

[0046] Figure 1 A schematic diagram of the circular chassis of an existing robot is shown;

[0047] Figure 2 A schematic diagram of a square chassis of a robot according to an embodiment of the present invention is shown;

[0048] Figure 3 This diagram illustrates a model of a robot's square chassis according to an embodiment of the present invention.

[0049] The same or similar reference numerals in the drawings represent the same or similar components. DETAILED DESCRIPTION

[0050] The present invention will now be described in further detail with reference to the accompanying drawings.

[0051] In a typical configuration of this application, the terminal, the device of the service network, and the trusted party all include one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0052] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0053] Computer-readable media include both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include non-transitory computer-readable media, such as modulated data signals and carrier waves.

[0054] like Figure 2 and 3 As shown, the present invention provides a robot collision detection method, the method comprising:

[0055] Step S1, as follows Figure 3 As shown in the left image, a polygonal model of the robot chassis is created in the environment map, such as... Figure 3 As shown in the right figure, the polygonal robot chassis model in the environment map is pixelated.

[0056] Here, as Figure 2 and 3 As shown, the polygon can be, for example, a rectangle;

[0057] Step S2: Create a pixelated polygonal robot chassis model at each rotation angle in the environment map, and store the pixelated polygonal robot chassis model at each rotation angle in the environment map into a lookup table.

[0058] Step S3: Obtain the actual distance and rotation angle of the robot. Based on the actual rotation angle of the robot, obtain the pixelated polygon model of the robot chassis at the corresponding rotation angle from the lookup table.

[0059] Step S4: Obtain the position of obstacles in the environment map. Based on the position of obstacles in the environment map and the distance the robot has moved, determine whether the position of the obstacle overlaps with a pixel in the pixelated polygon robot chassis model at the corresponding rotation angle in the obtained environment map. If they overlap, it is determined that the obstacle has collided with the robot. If they do not overlap, it is determined that the obstacle has not collided with the robot.

[0060] Here, as Figure 2 As shown, robot navigation path planning requires the use of an environmental map, such as a grid map. When collision detection is needed, the position of each obstacle in the grid map and the robot chassis model need to be compared for collision detection, which is very time-consuming in existing solutions. This invention creates a polygonal robot chassis model in the environmental map, which... Figure 3 The robot model on the left shown is pixelated and transformed into something like... Figure 3 The model shown on the right demonstrates how collision detection only requires reading pixel values, reducing the time complexity to O1. However, since the robot is constantly moving, the problem of converting the pixelated model arises. This invention addresses this by designing an angle discretization method. This involves creating pixelated polygonal models of the robot chassis at various rotation angles in the environment map. These models are stored in a lookup table to discretize the angles. By constructing a finite number of models, and using the angle table lookup method as the robot rotates, real-time collision detection can be performed, improving the robot's maneuverability.

[0061] In a robot collision detection method according to an embodiment of the present invention, step S2, establishing a pixelated polygonal robot chassis model at each rotation angle in the environment map, and storing the pixelated polygonal robot chassis model at each rotation angle in the environment map into a lookup table, includes:

[0062] Step S21: For rotation angles from 0 to 360 degrees, discretize once every 0.5 degrees to discretize into a pixelated polygonal robot chassis model with 720 rotation angles.

[0063] Step S22: Store the pixelated polygonal robot chassis model at 720 rotation angles into a lookup table.

[0064] In this embodiment, a pixelated lookup table for the angle discretization model can be generated. Specifically, for rotation angles from 0 to 360 degrees, the model is discretized every 0.5 degrees, resulting in a pixelated polygonal robot chassis model with 720 rotation angles. These discretized models are then stored in a linear table.

[0065] Collision detection is required during the runtime phase, and using the generated lookup table can greatly speed up the collision detection process.

[0066] In a robot collision detection method according to an embodiment of the present invention, step S22, storing a pixelated polygonal model of the robot chassis at 720 rotation angles into a lookup table, includes:

[0067] Step S221: Create an index idx for each of the 720 rotation angles;

[0068] Step S222: Create a model of the robot chassis with pixelated polygons at each index and the corresponding rotation angle.

[0069] Here, using the generated lookup table can greatly speed up the collision detection process.

[0070] In a robot collision detection method according to an embodiment of the present invention, step S221, which involves establishing an index idx for each of the 720 rotation angles, includes:

[0071] The following formula is used to create an index idx for each of the 720 rotation angles:

[0072] Here, theta represents a rotation angle, and idx represents the index corresponding to that rotation angle.

[0073] Here, the robot's current rotation angle theta is used to search the lookup table. As shown in the above formula, the offset idx of the lookup table is calculated, and the pixelated model of the corresponding rotation angle can be found. Then, the collision can be calculated using the time complexity of the model O1 (constant time).

[0074] In a robot collision detection method according to an embodiment of the present invention, step S4 involves obtaining the positions of obstacles in an environmental map, and determining, based on the positions of the obstacles in the environmental map and the distance the robot has moved, whether the position of the obstacle overlaps with a pixel in a pixelated polygonal model of the robot chassis at the corresponding rotation angle in the obtained environmental map, including:

[0075] Step S41: Obtain the positions of obstacles in the environment map and the original positions of the pixelated polygon robot chassis model at the corresponding rotation angle in the obtained environment map;

[0076] Step S42: Based on the distance the robot has moved, move the position of the obstacle in the environment map by the same distance;

[0077] Step S43: Determine whether the position of the moved obstacle in the environment map overlaps with a pixel in the pixelated polygonal robot chassis model at the corresponding rotation angle in the original position in the obtained environment map.

[0078] Here, the position of an obstacle in the environment map is a centroid. When the robot moves, the relative position of the obstacle and the robot changes. The robot's original position can be kept unchanged in the environment map, and the change of the robot's position in the environment map can be converted into a change of the position of the obstacle in the environment map, thus achieving the same effect of changing the relative position of the obstacle and the robot. Moreover, the computational cost of moving the centroid is much smaller than that of moving the entire polygonal robot chassis model, which can save computational cost and improve the efficiency of collision detection.

[0079] According to another aspect of the present invention, a robot collision detection device is also provided, wherein the device comprises:

[0080] The first device is used to create a polygonal robot chassis model in an environmental map and to pixelate the polygonal robot chassis model in the environmental map.

[0081] The second device is used to create a pixelated polygonal robot chassis model at various rotation angles in the environment map and store the pixelated polygonal robot chassis model at various rotation angles in the environment map into a lookup table.

[0082] The third device is used to obtain the actual distance and rotation angle of the robot's movement, and based on the robot's actual rotation angle, to obtain a pixelated polygonal model of the robot chassis from the lookup table at the corresponding rotation angle.

[0083] The fourth device is used to obtain the position of obstacles in the environment map. Based on the position of obstacles in the environment map and the distance the robot moves, it determines whether the position of the obstacle overlaps with a pixel in the pixelated polygon robot chassis model at the corresponding rotation angle in the obtained environment map. If the obstacle overlaps, it is determined that the obstacle has collided with the robot. If the obstacle does not overlap, it is determined that the obstacle has not collided with the robot.

[0084] Furthermore, in the aforementioned device, the second device is used to discretize the robot chassis model into pixelated polygons at 720 rotation angles by discretizing the rotation angle from 0 to 360 degrees every 0.5 degrees; and to store the robot chassis model into a lookup table.

[0085] Furthermore, in the aforementioned device, the second device is used to establish an index for each of the 720 rotation angles; and to create a model of the robot chassis with pixelated polygons at each index and the corresponding rotation angle.

[0086] Furthermore, in the aforementioned device, the second device is used to establish an index for each of the 720 rotation angles according to the following formula:

[0087] Here, theta represents a rotation angle, and idx represents the index corresponding to that rotation angle.

[0088] Furthermore, in the aforementioned device, the fourth device is used to acquire the position of the obstacle in the environmental map and the original position of the pixelated polygon robot chassis model at the corresponding rotation angle in the acquired environmental map; move the position of the obstacle in the environmental map by the same distance based on the distance the robot moves; and determine whether the position of the moved obstacle in the environmental map overlaps with a certain pixel in the pixelated polygon robot chassis model at the corresponding rotation angle at the original position in the acquired environmental map.

[0089] According to another aspect of the present invention, a computing-based device is also provided, comprising:

[0090] processor; and

[0091] A memory configured to store computer-executable instructions, which, when executed, cause the processor to:

[0092] Create a polygonal robot chassis model in the environment map, and then pixelate the polygonal robot chassis model in the environment map.

[0093] Create a pixelated polygonal model of the robot chassis at each rotation angle in the environment map, and store the pixelated polygonal model of the robot chassis at each rotation angle in the environment map into a lookup table.

[0094] Obtain the actual distance and rotation angle of the robot's movement. Based on the robot's actual rotation angle, retrieve the pixelated polygon model of the robot chassis from the lookup table at the corresponding rotation angle.

[0095] The system obtains the positions of obstacles in the environment map. Based on the positions of obstacles in the environment map and the distance the robot has moved, it determines whether the position of the obstacle overlaps with a pixel in the pixelated polygon model of the robot chassis at the corresponding rotation angle in the obtained environment map. If they overlap, it is determined that the obstacle and the robot have collided. If they do not overlap, it is determined that the obstacle and the robot have not collided.

[0096] According to another aspect of the present invention, a computer-readable storage medium is also provided, having stored thereon computer-executable instructions, wherein when executed by a processor, the computer-executable instructions cause the processor to:

[0097] Create a polygonal robot chassis model in the environment map, and then pixelate the polygonal robot chassis model in the environment map.

[0098] Create a pixelated polygonal model of the robot chassis at each rotation angle in the environment map, and store the pixelated polygonal model of the robot chassis at each rotation angle in the environment map into a lookup table.

[0099] Obtain the actual distance and rotation angle of the robot's movement. Based on the robot's actual rotation angle, retrieve the pixelated polygon model of the robot chassis from the lookup table at the corresponding rotation angle.

[0100] The system obtains the positions of obstacles in the environment map. Based on the positions of obstacles in the environment map and the distance the robot has moved, it determines whether the position of the obstacle overlaps with a pixel in the pixelated polygon model of the robot chassis at the corresponding rotation angle in the obtained environment map. If they overlap, it is determined that the obstacle and the robot have collided. If they do not overlap, it is determined that the obstacle and the robot have not collided.

[0101] For detailed descriptions of the various device and storage medium embodiments of the present invention, please refer to the corresponding parts of the various method embodiments, which will not be repeated here.

[0102] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.

[0103] It should be noted that the present invention can be implemented in software and / or a combination of software and hardware, for example, using an application-specific integrated circuit (ASIC), a general-purpose computer, or any other similar hardware device. In one embodiment, the software program of the present invention can be executed by a processor to implement the steps or functions described above. Similarly, the software program of the present invention (including associated data structures) can be stored in a computer-readable recording medium, such as RAM memory, a magnetic or optical drive, a floppy disk, or similar devices. Furthermore, some steps or functions of the present invention can be implemented in hardware, for example, as circuitry that works with a processor to perform the various steps or functions.

[0104] Furthermore, a portion of this invention can be applied as a computer program product, such as computer program instructions, which, when executed by a computer, can invoke or provide the methods and / or technical solutions according to the invention through the operation of the computer. The program instructions invoking the methods of the invention may be stored in a fixed or removable recording medium, and / or transmitted via a data stream in a broadcast or other signal-carrying medium, and / or stored in the working memory of a computer device operating according to the program instructions. Here, an embodiment of the invention includes an apparatus comprising a memory for storing computer program instructions and a processor for executing the program instructions, wherein, when the computer program instructions are executed by the processor, the apparatus is triggered to operate the methods and / or technical solutions based on the foregoing embodiments of the invention.

[0105] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the invention can be implemented in other specific forms without departing from the spirit or essential characteristics of the invention. Therefore, the embodiments should be considered illustrative and non-limiting in all respects, and the scope of the invention is defined by the appended claims rather than the foregoing description. Thus, all variations falling within the meaning and scope of equivalents of the claims are intended to be embraced within the present invention. No reference numerals in the claims should be construed as limiting the scope of the claims. Furthermore, it is clear that the word "comprising" does not exclude other units or steps, and the singular does not exclude the plural. Multiple units or devices recited in the apparatus claims may also be implemented by a single unit or device in software or hardware. The terms "first," "second," etc., are used to indicate names and do not indicate any particular order.

Claims

1. A robot collision detection method, wherein: The method includes: Establishing a polygonal robot chassis model in the environment map, and pixelating the polygonal robot chassis model in the environment map; Establishing a model of a pixelated polygonal robot chassis at each rotation angle in the environment map, and storing the model of the pixelated polygonal robot chassis at each rotation angle in the environment map in a lookup table; Obtaining the actual moving distance and rotation angle of the robot, and based on the actual rotation angle of the robot, obtaining from the lookup table a pixelated polygonal robot chassis model at a corresponding rotation angle in the environment map; Obtain the position of the obstacle in the environment map, and based on the position of the obstacle in the environment map and the distance moved by the robot, determine whether the position of the obstacle overlaps with a pixel in the pixelated polygonal robot chassis model at the corresponding rotation angle in the acquired environment map. If overlap occurs, it is determined that the obstacle collides with the robot; if no overlap occurs, it is determined that the obstacle does not collide with the robot.

2. The method according to claim 1, wherein: Establishing a model of a pixelated polygonal robot chassis at each rotation angle in the environment map, and storing the model of the pixelated polygonal robot chassis at each rotation angle in the environment map in a lookup table, including: For the rotation angle of 0 to 360 degrees, the robot chassis model is discretized every 0.5 degrees and discretized into pixelated polygons at 720 rotation angles; The pixelated polygonal models of the robot chassis at 720 rotation angles are stored in a lookup table.

3. The method according to claim 2, wherein: The pixelated polygonal robot chassis model at 720 rotation angles is stored in a lookup table, including: Create an index for each of the 720 rotation angles; A model of the robot chassis is obtained by pixelating the polygons at each index and the rotation angle corresponding to each index.

4. The method according to claim 3, wherein: The index of each of the 720 rotation angles is established separately, including: The index of each of the 720 rotation angles is established according to the following formula: Among them, theta represents a certain rotation angle, and idx represents the index corresponding to a certain rotation angle.

5. The method according to claim 1, wherein: Obtaining the position of the obstacle in the environment map, and judging whether the position of the obstacle overlaps with a pixel in the robot chassis model of the pixelated polygon at the corresponding rotation angle in the obtained environment map based on the position of the obstacle in the environment map and the distance moved by the robot, including: Obtaining the position of the obstacle in the environment map and the original position of the pixelated polygonal robot chassis model at the corresponding rotation angle in the obtained environment map; Move the position of the obstacle in the environment map by the same distance based on the distance the robot moves; It is determined whether the position of the obstacle after the movement in the environment map overlaps with a certain pixel in the model of the pixelated polygonal robot chassis at a corresponding rotation angle of the original position in the acquired environment map.

6. A robot collision detection device, wherein: The equipment includes: The first device is used to establish a polygonal model of the robot chassis in the environment map, and pixelate the polygonal model of the robot chassis in the environment map; The second device is used to establish a model of the robot chassis of the pixelated polygon at each rotation angle in the environment map, and store the model of the robot chassis of the pixelated polygon at each rotation angle in the environment map into a lookup table; A third device is used to obtain the actual moving distance and rotation angle of the robot, and based on the actual rotation angle of the robot, obtain a pixelated polygonal robot chassis model at a corresponding rotation angle in the environment map from the lookup table; The fourth device is used to obtain the position of the obstacle in the environment map, and based on the position of the obstacle in the environment map and the distance moved by the robot, determine whether the position of the obstacle overlaps with a pixel in the pixelated polygonal robot chassis model at the corresponding rotation angle in the acquired environment map; if overlap occurs, it is determined that the obstacle collides with the robot; if no overlap occurs, it is determined that the obstacle does not collide with the robot.

7. The device according to claim 6, wherein: The second device is used for discretizing the rotation angles of 0 to 360 degrees every 0.5 degrees to discretize the robot chassis model into pixelated polygons at 720 rotation angles; and storing the pixelated polygonal robot chassis model at 720 rotation angles into a lookup table.

8. The device according to claim 7, wherein: The second device is used to respectively establish an index for each of the 720 rotation angles; and to create a pixelated polygonal robot chassis model for each index and the rotation angle corresponding to each index.

9. The device according to claim 8, wherein: The second device is used to establish an index for each of the 720 rotation angles according to the following formula: Among them, theta represents a certain rotation angle, and idx represents the index corresponding to a certain rotation angle.

10. The device according to claim 6, wherein: The fourth device is used to obtain the position of the obstacle in the environment map and the original position of the pixelated polygonal model of the robot chassis at the corresponding rotation angle in the obtained environment map; move the position of the obstacle by the same distance in the environment map based on the distance moved by the robot; and determine whether the position of the obstacle after moving in the environment map overlaps with a pixel in the pixelated polygonal model of the robot chassis at the corresponding rotation angle in the obtained environment map at the original position.

11. A computing-based device, wherein: include: processor; as well as a memory arranged to store computer executable instructions which, when executed, cause the processor to: Establishing a polygonal robot chassis model in the environment map, and pixelating the polygonal robot chassis model in the environment map; Establishing a model of a pixelated polygonal robot chassis at each rotation angle in the environment map, and storing the model of the pixelated polygonal robot chassis at each rotation angle in the environment map in a lookup table; Obtaining the actual moving distance and rotation angle of the robot, and based on the actual rotation angle of the robot, obtaining from the lookup table a pixelated polygonal robot chassis model at a corresponding rotation angle in the environment map; Obtain the position of the obstacle in the environment map, and based on the position of the obstacle in the environment map and the distance moved by the robot, determine whether the position of the obstacle overlaps with a pixel in the pixelated polygonal robot chassis model at the corresponding rotation angle in the acquired environment map. If overlap occurs, it is determined that the obstacle collides with the robot; if no overlap occurs, it is determined that the obstacle does not collide with the robot.

12. A computer-readable storage medium having computer-executable instructions stored thereon, wherein: The computer executable instructions, when executed by a processor, cause the processor to: Establishing a polygonal robot chassis model in the environment map, and pixelating the polygonal robot chassis model in the environment map; Establishing a model of a pixelated polygonal robot chassis at each rotation angle in the environment map, and storing the model of the pixelated polygonal robot chassis at each rotation angle in the environment map in a lookup table; Obtaining the actual moving distance and rotation angle of the robot, and based on the actual rotation angle of the robot, obtaining from the lookup table a pixelated polygonal robot chassis model at a corresponding rotation angle in the environment map; Obtain the position of the obstacle in the environment map, and based on the position of the obstacle in the environment map and the distance moved by the robot, determine whether the position of the obstacle overlaps with a pixel in the pixelated polygonal robot chassis model at the corresponding rotation angle in the acquired environment map. If overlap occurs, it is determined that the obstacle collides with the robot; if no overlap occurs, it is determined that the obstacle does not collide with the robot.

Citation Information

Patent Citations

  • Collision detecting early-warning method and collision detecting early-warning system based on Internet-of-vehicles

    CN108010388A

  • Collision detection method for robot simulation system

    CN108628184A