EP-4740077-A1 - CONFIGURING AUTONOMOUS DEVICE SAFETY AREAS
Abstract
The present disclosure relates to a method of navigating an autonomous device (10), and an autonomous device (10) performing the method. In an aspect, a method of navigating an autonomous device (10) is provided. The method comprises determining (S101) a positioning uncertainty area (13) of the autonomous device (10) with respect to an estimated current position of the autonomous device, defining (S102) test points (ri) at positions in the positioning uncertainty area (13), and selecting (S103) a circular safety area (14:i) centered at each test point (ri), which circular safety areas (14:i) form a barrier around the positioning uncertainty area (13). The method further comprises determining (S104), for each test point (ri), a distance and a gradient from a closest obstacle towards said each test point (ri), determining (S105), for each test point (ri), based on the determined distance and the determined gradient, a set of safe velocities with which the autonomous device (10) is allowed to move without an obstacle entering the safety area (14:i) of said each test point (ri), and selecting (S106) a safe velocity with which the autonomous device (10) is allowed to move within an intersection of the sets of safe velocities determined for all test points (ri).
Inventors
- MIKSITS, Adam
- BARBOSA, Fernando dos Santos
- LINDHÉ, Magnus
- ARAÚJO, José
- JOHANSSON, Karl Henrik
Assignees
- Telefonaktiebolaget LM Ericsson (publ)
Dates
- Publication Date
- 20260513
- Application Date
- 20230705
Claims (20)
- 1. A method of navigating an autonomous device (io), comprising: determining (Slot) a positioning uncertainty area (13) of the autonomous device (10) with respect to an estimated current position of the autonomous device; defining (S102) test points (ri) at positions in the positioning uncertainty area (13); selecting (S103) a circular safety area (14: i) centered at each test point (ri), which circular safety areas (14: i) form a barrier around the positioning uncertainty area (13); determining (S104), for each test point (ri), a distance and a gradient from a closest obstacle towards said each test point (ri); determining (S105), for each test point (ri), based on the determined distance and the determined gradient, a set of safe velocities with which the autonomous device (10) is allowed to move without an obstacle entering the safety area (i4:i) of said each test point (ri); and selecting (S106) a safe velocity, with which the autonomous device (10) is allowed to move, within an intersection of the sets of safe velocities determined for all test points (ri).
- 2. The method of claim 1, wherein the determining (S104), for each test point (ri), of a distance and a gradient from a closest obstacle towards the said each test point (ri) comprises: deducting, from the computed distance to the closest obstacle, a selected safety distance forming a radius of the safety area (i4:i) of said each test point (ri).
- 3. The method of claim 2, wherein the same safety distance is selected for all test points.
- 4. The method of claim 2, wherein the safety distance is selected such that a boundary of any of the safety areas (14:5) touches a boundary of any adjacent safety area (14:4, 14:6).
- 5. The method of claim 2, wherein the safety distance is selected such that a boundary of any of the safety areas (14:5) is separated from a boundary of any adjacent safety area (14:4, 14:6) by a gap.
- 6. The method of claim 5, wherein the safety distance is selected such that said gap is smaller than a width of a narrowest obstacle in an area through which the autonomous device navigates.
- 7. The method of claim 5, wherein the safety distance is selected such that said gap is equal to a width of a narrowest obstacle detectable by one or more sensors of the autonomous device (10) and/or representable in a map utilized by the autonomous device (10).
- 8. The method of claim 2, wherein for each test point, a smaller safety distance is selected for a test point (r3, rq) closer to an obstacle while a greater safety distance is selected for a test point (ri, r2, rs) further away from an obstacle.
- 9. The method of claim 8, wherein the smaller safety distance and the greater safety distance are selected such that a boundary of any of the safety areas (14:3) touches a boundary of any adjacent safety area (14:2, 14:4).
- 10. The method of claim 8, wherein the smaller safety distance and the greater safety distance are selected such that a boundary of any of the safety areas (14:5) is separated from a boundary of any adjacent safety area (14:4, 14:6) by a gap.
- 11. The method of any one of claims 1 to 10, wherein any determined safe set of velocities for a test point which includes the intersection of all other safe sets of velocities is omitted in determining the sets of safe velocities.
- 12. The method of any one of claims 1 to 11, wherein the selecting (S106) a safe velocity, with which the autonomous device (10) is allowed to move, comprises selecting, within the intersection of the sets of safe velocities determined for all test points (ri), the velocity that is closest to a velocity with which the autonomous device (10) is requested to move.
- 13. The method of any one of claims 1 to 12, wherein the test points (ri) are located at a boundary of the positioning uncertainty area (13).
- 14. A computer program (112) comprising computer-executable instructions for causing an autonomous device (10) to perform the method of any one of claims 1-13 when the computer-executable instructions are executed on a processing unit (ill) included in the autonomous device (io).
- 15. A computer program product comprising a computer readable medium (113), the computer readable medium having the computer program (112) according to claim 14 embodied thereon.
- 16. An autonomous device (10), the autonomous device (10) comprising a sensor (115) for detecting obstacles, a processing unit (111) and a memory (113), said memory containing instructions (112) executable by said processing unit (111), whereby the autonomous device (10) is operative to: determine a positioning uncertainty area (13) of the autonomous device (10) with respect to an estimated current position of the autonomous device; define test points (ri) at positions in the positioning uncertainty area (13); select a circular safety area (14b) centered at each test point (ri), which circular safety areas (i4:i) form a barrier around the positioning uncertainty area (13); determine, for each test point (ri), a distance and a gradient from a closest obstacle towards said each test point (ri); determine, for each test point (ri), based on the determined distance and the determined gradient, a set of safe velocities with which the autonomous device (10) is allowed to move without an obstacle entering the safety area (14: i) of said each test point (ri); and select a safe velocity, with which the autonomous device (10) is allowed to move, within an intersection of the sets of safe velocities determined for all test points (ri).
- 17. The autonomous device (10) of claim 16, further being operative to, when determining, for each test point (ri), a distance and a gradient from a closest obstacle towards the said each test point (ri): deducting, from the computed distance to the closest obstacle, a selected safety distance forming a radius of the safety area (i4:i) of said each test point (ri).
- 18. The autonomous device (10) of claim 17, further being operative to select the same safety distance for all test points.
- 19- The autonomous device (io) of claim 17, further being operative to select the safety distance such that a boundary of any of the safety areas (14:5) touches a boundary of any adjacent safety area (14:4, 14:6).
- 20. The autonomous device (10) of claim 17, further being operative to select the safety distance such that a boundary of any of the safety areas (14:5) is separated from a boundary of any adjacent safety area (14:4, 14:6) by a gap.
Description
CONFIGURING AUTONOMOUS DEVICE SAFETY AREAS TECHNICAL FIELD [oooi] The present disclosure relates to a method of navigating an autonomous device, an autonomous device, a corresponding computer program, and a corresponding computer program product. BACKGROUND [0002] For autonomous devices such as robots, vehicles, drones, etc., motionplanning and navigation is a complex process, and avoiding collisions with obstacles is a key requirement of any autonomous device. [0003] When navigating, a distance and a gradient to obstacles must be determined by the autonomous device in order to avoid collisions with the obstacles. This is commonly performed using a so-called Euclidean distance function (EDF) or a signed distance function (SDF). [0004] However, these functions have discontinuities in positions that are equally distant from two or more points. Assuming, for instance, that the autonomous device is a robot navigating a corridor where the only two obstacles are a right-hand wall and a left-hand wall defining the corridor, as soon as the robot passes over a longitudinal centreline of the corridor, e.g., from a first position at the left-hand wall towards a second position at the right-hand wall, the gradient towards the closest obstacle changes instantly (the closest obstacle changing from the left-hand wall to the right hand-wall when the centreline is crossed).This results in a discontinuous change in the gradient, and the only safe option is to limit the velocity of the robot in all directions, which unfortunately may lead to a deadlock if the robot finds itself too close to an obstacle. SUMMARY [0005] One objective is to solve, or at least mitigate, this problem in the art and to provide improved solutions for navigating an autonomous device. [0006] This objective is attained in a first aspect by a method of navigating an autonomous device. The method comprises determining a positioning uncertainty area of the autonomous device with respect to an estimated current position of the autonomous device. The method further comprises defining test points at positions in the positioning uncertainty area, and selecting a circular safety area centered at each test point. The circular safety areas form a barrier around the positioning uncertainty area. The method further comprises determining, for each test point, a distance and a gradient from a closest obstacle towards said each test point. The method further comprises determining, for each test point a set of safe velocities with which the autonomous device is allowed to move without an obstacle entering the safety area of said each test point. The set of safe velocities is determined, for each test point, based on the determined distance and the determined gradient. The method further comprises selecting a safe velocity within an intersection of the sets of safe velocities, determined for all test points. The selected safe velocity is a velocity with which the autonomous device is allowed to move. [0007] This objective is attained in a second aspect by an autonomous device. The autonomous device comprises a sensor for detecting obstacles, a processing unit, and a memory. Said memory contains instructions executable by said processing unit. The autonomous device is thus operative to determine a positioning uncertainty area of the autonomous device with respect to an estimated current position of the autonomous device. The autonomous device is further operative to define test points at positions in the positioning uncertainty area, and select a circular safety area centered at each test point. The circular safety areas form a barrier around the positioning uncertainty area. The autonomous device is further operative to determine, for each test point, a distance and a gradient from a closest obstacle towards said each test point. The autonomous device is further operative to determine, for each test point, a set of safe velocities with which the autonomous device is allowed to move without an obstacle entering the safety area of said each test point. The set of safe velocities is determined, for each test point, based on the determined distance and the determined gradient. The autonomous device is further operative to select a safe velocity within an intersection of the sets of safe velocities, determined for all test points. The selected safe velocity is a velocity with which the autonomous device is allowed to move. [0008] Advantageously, in the safety areas formed around the test points, obstacles are not allowed to enter upon the autonomous device navigating an area. This has the effect that the safety areas create a barrier around the autonomous device. [0009] In an embodiment, the determining, for each test point, of a distance and a gradient from a closest obstacle towards said each test point comprises deducting, from the computed distance to the closest obstacle, a selected safety distance forming a radius of the safety area of said each test point. [0010]