Node designation method and system for robot path planning

The path planning method addresses inefficiencies in robot navigation by using node and edge principles based on social norms, ensuring efficient and human-friendly movement in indoor environments.

JP7764154B2Active Publication Date: 2025-11-05NAVER CORP
View PDF 9 Cites 0 Cited by

Patent Information

Application Number
JP2021110135
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-07-08
Filing Date
2021-07-01
Publication Date
2025-11-05
Estimated Expiration
2041-07-01

AI Technical Summary

Technical Problem

Existing path planning methods for robots in indoor environments do not adequately consider social norms and environmental factors, leading to inefficient and potentially threatening movements around humans.

Method used

A path planning method that generates global routes for robots based on node and edge principles defined by social norms, including specific node types (e.g., passage entry, door area, robot-only passage) and edge types (e.g., basic, caution, high-speed) to ensure efficient and human-friendly navigation.

Benefits of technology

Enables robots to move efficiently and safely in indoor spaces while adhering to social norms, minimizing collisions and maintaining a safe distance from humans.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007764154000001
    Figure 0007764154000001
  • Figure 0007764154000002
    Figure 0007764154000002
  • Figure 0007764154000003
    Figure 0007764154000003
Patent Text Reader

Abstract

To provide a node specification method and system for robot route planning.SOLUTION: A global route plan of a robot is generated according to a node specification principle defined on the basis of social norms for indoor spaces in generating the global route plan of the robot for an indoor space on the basis of an indoor map to support human-friendly navigation of the robot.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to techniques for global path planning for robots. [Background technology]

[0002] An autonomous robot is a robot that explores its surroundings, senses obstacles, and uses its wheels and / or legs to find the optimal route to its destination. It has been developed and is being used in a variety of fields, such as autonomous vehicles, logistics, hotel services, and robot vacuum cleaners.

[0003] In environments where robots coexist with humans, they need to move efficiently while remaining friendly to humans. To be friendly, robots must be non-threatening, predictable, and obey social norms.

[0004] For a robot to move efficiently, it needs to plan the optimal route within the room and coordinate with indoor infrastructure such as elevators.

[0005] Patent Document 1 is a technology relating to a path planning method for an autonomous mobile robot, and discloses a method for planning an optimal path for a mobile robot that moves autonomously within a home or office to safely and quickly reach a target point while avoiding obstacles.

[0006] The above information is intended merely to aid in the understanding of the present invention and may include material that does not form part of the prior art, nor may it include material that the prior art would present to one of ordinary skill in the art. [Prior art documents] [Patent documents]

[0007] [Patent Document 1] Korean Patent Publication No. 10-2005-0024840 Summary of the Invention [Problem to be solved by the invention]

[0008] A method and system for defining node designation principles for global path planning of a robot is provided.

[0009] To provide a method and system for supporting efficient movement of a robot and human-friendly navigation of the robot based on social norms in an indoor environment. [Means for solving the problem]

[0010] Provided is a path planning method executed by a computer system, the computer system including at least one processor configured to execute computer-readable instructions contained in a memory, the path planning method including a step of generating, by the at least one processor, a global path planning for a robot for an indoor space based on an indoor map, the step of generating the global path planning in accordance with a node designation principle defined based on a social norm for the indoor space.

[0011] According to one aspect, the generating step may generate the global route plan using nodes and edges for which a rule based on right-hand traffic is specified.

[0012] According to another aspect, attributes including position coordinates and movement direction may be defined for each of the nodes, and attributes including movement speed may be defined for each of the edges.

[0013] According to another aspect, the node designation rule may include a designation rule for a passage entry node indicating a start point of a right passage in the passage, and a passage exit node indicating an end point of the right passage in the passage.

[0014] According to another aspect, the node designation principle may further include a designation principle for at least one of a door area start node indicating the start point of a door warning section, a door area end node indicating the end point of a door warning section, a door passing node indicating a point where the door passes through, a door open protection node indicating a point where the door should not be opened, a robot-only passage node indicating a point on a robot-only passage, a basic passing node indicating a point where individual node designation is required, and a waiting node indicating a waiting position.

[0015] According to another aspect, the node designation principle may include an edge designation principle for designating edges connecting nodes as a movement path of the robot.

[0016] According to another aspect, the edge designation principle may include designation principles for a basic edge along which the robot travels at a basic speed, a caution edge along which the robot travels at a deceleration rate less than a certain percentage of the basic speed, and a high-speed edge along which the robot travels at a high speed greater than a certain percentage of the basic speed.

[0017] According to another aspect, the edge designation principle may specify a caution edge where the robot decelerates at a certain rate or less than the base speed in at least one of an intersection of passages, in front of a door, and in an elevator hall, and may specify a high-speed edge where the robot travels at a certain rate or more than the base speed in a passage reserved for robots.

[0018] According to another aspect, the generating step may include generating all vertices of edges offset by a predetermined offset value with respect to the indoor space as nodes for movement of the robot.

[0019] According to yet another aspect, the generating step may include determining a reference point based on a direction of travel of the robot, and then generating a point offset from the reference point by a predetermined offset value as a node for movement of the robot.

[0020] A non-transitory computer-readable recording medium is provided, on which a program for causing a computer to execute the route planning method is recorded.

[0021] Provided is a computer system including at least one processor configured to execute computer-readable instructions contained in a memory, wherein the at least one processor generates a global path plan for a robot for an indoor space based on an indoor map, and wherein the global path plan is generated in accordance with node designation principles defined based on social norms for the indoor space. [Effects of the Invention]

[0022] According to an embodiment of the present invention, by defining principles for nodes and movement paths (edges) for global path planning of a robot, it is possible to support the robot in moving efficiently and in performing human-friendly exploration based on social norms in an indoor environment. [Brief explanation of the drawings]

[0023] [Figure 1] FIG. 1 is a diagram illustrating an example of a movement environment of a robot in an indoor environment according to an embodiment. [Figure 2] FIG. 1 is a block diagram illustrating a robot providing services in an indoor space within a building in one embodiment. [Figure 3] FIG. 1 is a block diagram illustrating a robot control system for controlling a robot providing services in an indoor environment in one embodiment. [Figure 4]1 is a flowchart illustrating a method for generating a path plan for autonomous navigation of a robot, in one embodiment. [Figure 5] FIG. 1 is a diagram illustrating an example of indoor space classification according to an embodiment. [Figure 6] FIG. 2 illustrates components of a map required for controlling the movement of a robot in one embodiment. [Figure 7] FIG. 2 is a diagram illustrating an example of an indoor map showing a movement space of a robot according to an embodiment. [Figure 8] FIG. 10 illustrates an example of a node designation process based on indoor space requirements in one embodiment. [Figure 9] FIG. 10 illustrates an example of a node designation process based on indoor space requirements in one embodiment. [Figure 10] FIG. 10 illustrates an example of a node designation process based on indoor space requirements in one embodiment. [Figure 11] FIG. 10 illustrates an example of a node designation process based on indoor space requirements in one embodiment. [Figure 12] FIG. 10 illustrates an example of a node designation process based on indoor space requirements in one embodiment. [Figure 13] FIG. 10 illustrates an example of an edge specification process based on interior space requirements in one embodiment. [Figure 14] FIG. 10 illustrates an example of an edge specification process based on interior space requirements in one embodiment. [Figure 15] FIG. 10 illustrates an example of an edge specification process based on interior space requirements in one embodiment. [Figure 16] FIG. 10 illustrates an example of node designation principles in one embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0024] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

[0025] An embodiment of the present invention defines an optimal node principle according to the indoor environmental requirements for the robot to move based on an indoor map generated by a mapping robot, and when planning a path, defines an edge principle that reflects environmental factors that affect the efficient movement of the robot in addition to the shortest route.

[0026] FIG. 1 is a diagram showing an example of an indoor robot movement environment according to one embodiment.

[0027] Referring to FIG. 1 , the robot 100 may be a service robot used to provide service in an indoor space 10 in a building. The robot 100 may be configured to provide service on at least one floor in the building. Furthermore, when there are multiple robots 100, each of the multiple robots may be configured to provide service on at least one floor. In other words, depending on the type / frequency of service and / or the shape / structure of the building (floors), the robot 100 may be configured to provide service on one or more floors, or multiple robots may be configured to provide service on one floor.

[0028] Examples of services provided by the robot 100 may include at least one of a home delivery service, a delivery service for custom-made beverages (such as coffee), a cleaning service, and other information / content providing services.

[0029] The movement of the robot 100 within the indoor space 10 may be controlled by the robot control system 140. In other words, the robot 100 may move within the indoor space 10 under the control of the robot control system 140.

[0030] FIG. 2 is a block diagram illustrating a robot providing services in an indoor space within a building in one embodiment.

[0031] As described above, the robot 100 may be a service robot used to provide services in an indoor environment where humans coexist. The robot 100 may provide services to users at predetermined locations in the indoor space 10 by autonomous driving.

[0032] The robot 100 may be a physical device and may include a control unit 104, a drive unit 108, a sensor unit 106, and a communication unit 102, as shown in FIG.

[0033] The control unit 104 may be a physical processor built into the robot 100, and although not shown, may include a path planning processing module, a mapping processing module, a drive control module, a localization processing module, a data processing module, and a service processing module. In this case, depending on the embodiment, the path planning processing module, the mapping processing module, and the localization processing module may be selectively included in the control unit 104 to enable the robot 100 to navigate indoors autonomously even when communication with the robot control system 140 is not possible.

[0034] The communication unit 102 may be a configuration for the robot 100 to communicate with other devices (such as other robots or the robot control system 140). In other words, the communication unit 102 may be a hardware module, such as an antenna, a data bus, a network interface card, a network interface chip, and a networking interface port of the robot 100, which transmits / receives data and / or information to / from other devices, or a software module, such as a network device driver and a networking program.

[0035] The drive unit 108 is a component that controls and enables the movement of the robot 100, and may include equipment for doing so.

[0036] The sensor unit 106 may be configured to collect data required for the autonomous driving and service provision of the robot 100. The sensor unit 106 does not need to include expensive sensing equipment, and may include sensors such as inexpensive ultrasonic sensors and / or inexpensive cameras.

[0037] For example, the data processing module of the control unit 104 may transmit sensing data including output values ​​of the sensors of the sensor unit 106 to the robot control system 140 via the communication unit 102. The robot control system 140 may transmit path data generated based on an indoor map of the building to the robot 100. The path data may be transmitted to the data processing module via the communication unit 102. The data processing module may immediately transmit the path data to the drive control module, and the drive control module may control the drive unit 108 based on the path data to control the indoor autonomous traveling of the robot 100.

[0038] When communication between the robot 100 and the robot control system 140 is not possible, the data processing module can send sensing data to the localization processing module, and the path planning processing module and mapping processing module can generate path data to directly process the indoor autonomous navigation of the robot 100.

[0039] The robot 100 may be distinguished from a mapping robot used to generate an indoor map of a building. In this case, the robot 100 does not include expensive sensing equipment, and therefore may perform indoor autonomous navigation using output values ​​from sensors such as inexpensive ultrasonic sensors and / or inexpensive cameras. On the other hand, if the robot 100 has previously performed indoor autonomous navigation through communication with the robot control system 140, accurate indoor autonomous navigation can be achieved even using inexpensive sensors by further utilizing mapping data included in the route data previously received from the robot control system 140.

[0040] The service processing module may receive commands received by the robot control system 140 from the communication unit 102, or from the communication unit 102 and the data processing module. The driving unit 108 may include not only equipment for moving the robot 100 but also equipment related to the service provided by the robot 100. For example, to perform a food / delivery service, the driving unit 108 of the robot 100 may include a component for loading the food / delivery and a component for delivering the food / delivery to the user (e.g., a robot arm). The robot 100 may also include a speaker and / or a display for providing information / content. The service processing module may transmit a driving command for the service to be provided to the driving control module, and the driving control module may control the components included in the robot 100 and the driving unit 108 according to the driving command to provide the service.

[0041] The robot 100 can process indoor autonomous navigation using global navigation, moving along waypoints based on social norms, under the control of the robot control system 140. In some embodiments, the robot 100 can generate route data using a route planning processing module and a mapping processing module, and directly process the indoor autonomous navigation of the robot 100.

[0042] FIG. 3 is a block diagram illustrating a robot control system for controlling a robot that provides services in an indoor environment in one embodiment.

[0043] The robot control system 140 may be a device that controls the movement of the above-described robot 100 in the indoor space 10. The robot control system 140 may control the movement of each of the multiple robots and the provision of services by each of the robots.

[0044] The robot control system 140 may include at least one computer device and may be implemented on a server located inside or outside a building. The robot control system 140 may also be implemented on a cloud server (system).

[0045] As shown, the robotic control system 140 may include a memory 330 , a processor 320 , a communication unit 310 , and an input / output interface 340 .

[0046] Memory 330 is a computer-readable recording medium and may include random access memory (RAM), read-only memory (ROM), and a persistent mass storage device such as a disk drive. Here, the ROM and the persistent mass storage device may be included as separate persistent storage devices separate from memory 330. Memory 330 may also store an operating system and at least one program code. Such software components may be loaded from a computer-readable recording medium separate from memory 330. Such separate computer-readable recording medium may include a computer-readable recording medium such as a floppy drive, a disk, a tape, a DVD / CD-ROM drive, or a memory card. In another embodiment, software components may be loaded into memory 330 via communication unit 310, which is not a computer-readable recording medium.

[0047] The processor 320 may be configured to process instructions of a computer program by performing basic arithmetic, logic, and input / output operations. The instructions may be provided to the processor 320 by the memory 330 or by the communication unit 310. For example, the processor 320 may be configured to execute instructions received according to program code loaded into the memory 330.

[0048] The communication unit 310 may be a configuration for the robot control system 140 to communicate with other devices (such as the robot 100). In other words, the communication unit 310 may be a hardware module, such as an antenna, a data bus, a network interface card, a network interface chip, or a networking interface port of the robot 100, which transmits / receives data and / or information to / from other devices, or a software module, such as a network device driver or a networking program.

[0049] The input / output interface 340 may be a means for interfacing with input devices such as a keyboard or a mouse, and output devices such as a display or a speaker.

[0050] Additionally, in other embodiments, the robotic control system 140 may include more components than those shown in the figures.

[0051] FIG. 4 is a flowchart illustrating a method for generating a path plan for autonomous navigation of a robot, in one embodiment.

[0052] The path plan generation method is a process of processing a path plan to generate path data for the robot 100 to navigate indoors autonomously, and may be executed by the processor 420 of the robot control system 140. In some embodiments, the robot 100 may generate path data using the path plan processing module and the mapping processing module, and directly process the indoor autonomous navigation of the robot 100.

[0053] In step 410, the processor 420 may designate nodes for the movement of the robot 100 as waypoints on the indoor map based on the indoor map generated by the mapping robot. At this time, a plurality of types of nodes reflecting social norm principles based on indoor space requirements and attributes of each type may be defined for the nodes in order to plan a global path for the robot 100. The node designation principles are intended to support efficient movement of the robot 100 as well as human-friendly exploration of the robot based on social norms in the indoor environment.

[0054] In step 420, the processor 420 may designate edges connecting nodes as a movement path of the robot 100. Similar to nodes, edges may be defined as a plurality of types that reflect social norms based on indoor space requirements and attributes of each type for global path planning of the robot 100. When planning the path of the robot 100, environmental factors that affect the efficient movement of the robot 100 and edge designation principles that reflect these factors may be defined.

[0055] The types and attributes of nodes and edges are described in more detail with reference to Figures 7-15.

[0056] In operation S430, the processor 420 may generate a global path plan for indoor autonomous navigation of the robot 100 by using nodes and edges that reflect the social norm principles based on indoor space requirements. The processor 420 may generate path data for indoor autonomous navigation of the robot 100 by using the nodes and edges defined based on the social norms. The robot 100 can perform human-friendly exploration simply by moving along the global path generated by using the nodes and edges defined by the social norm principles.

[0057] The basic principles for the robot 100 to perform human-friendly global exploration are as follows.

[0058] (1) Based on social norms, the robot 100 moves along an optimal route to its destination while avoiding interfering with human movement and minimizing human interference.

[0059] (2) Minimize collisions in blind spots such as corners, intersections of aisles, and in front of doors, and move safely.

[0060] (3) Move at a speed that does not pose a threat, depending on environmental changes such as narrow passages or passages reserved for robots.

[0061] The social norms for an indoor space may be determined taking into consideration the requirements of the space. The indoor space 10 in which the robot 100 moves may be classified according to its properties as shown in FIG. 5 . For example, the indoor space 10 may include a standard space 510, a connecting space 520, and a composite space 530.

[0062] The standard space 510 refers to an architecturally enclosed space such as a room, such as a conference room.

[0063] The connecting space 520 refers to an element that connects to other spaces and may include a door 521, a corridor 522, a corridor junction 523, and a left-well 524. The door 521 refers to a space that connects and passes through a boundary between spaces, such as a swing door, a sliding door, an automatic door, or a doorless entrance / exit. The corridor 522 is a space that connects spaces, such as a hallway, and is used to move between spaces. In addition to a general corridor, it may also include a long passageway that separates spaces without walls within an office space. Part of the corridor 522 may include a robot lane. The corridor junction 523 refers to a space where corridors 522 intersect and may also include a lobby-like space that allows movement between various spaces. The vertical movement path 524 is a space that allows vertical movement, and may include stairs, ramps, escalators, slopes, elevators, and the like.

[0064] The complex space 530 refers to a wide open space such as a central hall, and may be divided by furniture to form sub-spaces such as the standard space 510 and the connecting space 520.

[0065] The movement principle of the robot 100 may be defined based on such spatial requirements. In particular, the movement principle of the robot 100 may be defined around the connection space 520, which is the space in which the robot 100 mainly moves.

[0066] (1) Movement rules around Door 521 a) When passing in front of the door -Beware of people suddenly appearing.

[0067] -Slow down in the section before the door.

[0068] -For swing doors, avoid the area where the door opens.

[0069] b) Passing through a door - Pass through the center of the door.

[0070] -When waiting in front of a door to pass through, make sure to leave enough space in front of the door.

[0071] c) In front of the elevator doors -When waiting for an elevator, wait next to the elevator doors.

[0072] -When passing through elevator doors, pass through the center of the doors.

[0073] d) Passing in front of the stairs - When passing through stairs where there is a risk of falling, keep a sufficient distance.

[0074] (2) Principles of movement in aisle 522 a) General corridors (e.g., corridors less than 3m wide) - Keep to the right side of the road, taking into consideration social norms.

[0075] -Move while maintaining a certain distance from the right wall of the hallway.

[0076] By having the robot 100 move along one side of the wall, the robot naturally guides the human to pass through the side with a wider distance from the wall.

[0077] -If the width of the corridor is less than a certain standard, move along the center of the corridor.

[0078] If the width of a corridor is below a minimum standard, the corridor is excluded from the robot's 100 movement path.

[0079] b) Wide hallways (e.g., hallways wider than 3m) -In principle, walk on the right side of the road, but if the corridor is wide enough, increase the distance between the right wall and the road, or prioritize the shortest route over walking on the right side.

[0080] (3) Principles of movement at intersections 523 a) When the robot 100 that keeps to the right enters another passageway from a corner or an intersection of passageways, it will enter in the right-hand traffic direction of the passageway it is about to enter.

[0081] -When turning right at a corner, follow the right wall.

[0082] -When turning left at a corner, follow the right wall of the hallway you are entering.

[0083] - When entering the opposite corridor from an intersection, walk along the right wall of the corridor you are entering.

[0084] b) When passing through corners or intersections, be careful not to pose a threat to people coming out of blind spots.

[0085] - Slow down before entering an intersection from a corridor.

[0086] FIG. 6 is a diagram illustrating components of a map required for controlling the movement of a robot in one embodiment.

[0087] The indoor map 600 is generated by the mapping robot and is composed of a collection of all information necessary for controlling the movement of the robot 100, such as virtual walls 610, edges 620, nodes 630, and spatial layers 640.

[0088] The virtual wall 610 indicates a polygonal area for preventing the robot 100 from entering, and the robot control system 140 may prevent the robot 100 from entering the polygonal area while observing the real-time coordinates of the robot 100.

[0089] The edges 620 are lines connecting the nodes 630 and may contain information related to movement attributes of the robot 100. A separate interface 621 for attaching attributes to the edges 620 may be included.

[0090] The nodes 630 are points of reference for the robot 100 to move along and may contain metadata such as the speed and direction of movement of the robot 100 .

[0091] The spatial layer 640 includes layers that are the building framework and structures that the robot 100 cannot actually pass through.

[0092] The principle of specifying nodes and edges for global path planning of the robot 100 is as follows.

[0093] FIG. 7 is a diagram showing an example of an indoor map showing the robot's movement space.

[0094] 7 shows a space layer representing an indoor space 10 in which the robot 100 moves. As shown in the figure, the indoor space 10 may be divided into doors 701, passages 702, passage intersections 703, robot-specific passages 704, vertical movement paths 705, rooms 706, and the like based on the space classification criteria described above with reference to FIG.

[0095] 8 to 12 show an example of a node designation process based on indoor space requirements. Nodes for the movement of the robot 100 may be designated in the spatial layer of the indoor space 10 while reflecting social norm principles based on the indoor space requirements.

[0096] Depending on the indoor space requirements, the node types may be classified as points of reference for the robot 100 to move, such as a corridor entry node 801, a corridor end node 802, a door area start node 803, a door area end node 804, a door pass node 805, a door open prevention node 806, a robot lane node 807, a basic passing node 808, and a waiting node 809.

[0097] Referring to FIG. 8, a passage entry node 801 indicates the start point of a corridor where traffic must be kept to the right, and a passage end node 802 indicates the end point of a corridor where traffic must be kept to the right. The passage entry node 801 and the passage end node 802 each have attribute values ​​including the coordinates of the corresponding point and the direction of travel parallel to the wall for traffic to the right. For example, in the case of a corridor wider than 1.2 m, a point 600 mm away from the right wall and 300 mm away from the entrance edge of the corridor may be designated as the passage entry node 801, and a point 600 mm away from the right wall and 300 mm away from the exit edge of the corridor may be designated as the passage end node 802. In the case of a corridor width of 1.2 m or less, the center of the entire width of the corridor may be designated as the passage entry node 801 and the passage end node 802.

[0098] 9, a door area start node 803 indicates the start point of the caution section in front of the door, and a door area end node 804 indicates the end point of the caution section in front of the door. The door area start node 803 and the door area end node 804 have attribute values ​​including coordinates indicating the corresponding points and a right-hand traffic direction parallel to the wall. For example, a point 600 mm away from the right wall and 300 mm in front of the door may be specified as the door area start node 803, and a point 600 mm away from the right wall and 300 mm away from the door may be specified as the door area end node 804.

[0099] Referring to FIG. 9, a door passing node 805 indicates the midpoint of the entire width of the door as the point passing through the door, and has attribute values ​​including the coordinates indicating the corresponding point and both vertical directions of the door.

[0100] 10, the door open protection node 806 is for preventing a swing door that opens toward a corridor from opening, and has attribute values ​​including coordinates indicating the corresponding point and a right-hand traffic direction parallel to the wall. For example, when a door opens 90 degrees, a point 300 mm from the extension of the door may be specified as the door open protection node 806. In the case of a swing door that opens toward a corridor, a door area start node 803 and a door area end node 804 may be specified based on the fully open state of the door.

[0101] 11, a robot-only passage node 807 is a node on a robot-only passage and has attribute values ​​including coordinates indicating the corresponding point and both directions parallel to the wall. For example, a point 500 mm away from the wall and 300 mm away from the edge of the passage intersection may be designated as the robot-only passage node 807. In the case of a robot-only passage, two-way passage is basically possible, except for at least some sections.

[0102] 12, in addition to corridors, points that require individual node designation for purposes such as changing direction may be designated as basic passing nodes 808, which have attribute values ​​including the coordinates of the corresponding points and the direction of travel. In the case of basic passing nodes 808, the direction value may be omitted from the attribute value. For example, in the case of an elevator hall, people tend to gather in front of the elevator doors. To avoid this as much as possible, the center line of the hall may be set as the basic movement path, and basic passing nodes 808 may be designated on the corresponding path. Furthermore, basic passing nodes 808 may be designated before and after door passing nodes 805 to pass through doors.

[0103] 12, a waiting node 809 may be designated as a location where the robot 100 is waiting for an elevator or the like, and has attribute values ​​including coordinates indicating the location and a direction facing the door. A location adjacent to the robot's traveling direction and the nearby door area start node 803 may be designated as the waiting node 809, and a direction value may be designated so that the robot 100's heading faces the door.

[0104] 13 to 15 are diagrams showing an example of an edge specification process based on indoor space requirements. Edges connecting nodes may be specified as a movement route for the robot 100, while reflecting social norms based on the indoor space requirements on the spatial layer of the indoor space 10.

[0105] Edge types may be divided into basic edges 1301, caution edges 1302, and speedy edges 1303 according to indoor space requirements, and each edge has attribute values ​​including the robot's direction of travel and speed limit.

[0106] 13 and 14, a basic edge 1301 indicates a movement path connecting a passage entry node 801 and a passage end node 802 in a corridor. The basic edge 1301 basically specifies one direction, from the passage entry node 801 to the passage end node 802, but both directions may be allowed in narrow corridors. In the case of the basic edge 1301, the basic speed of the robot 100 may be set as the speed limit, and if the robot encounters a person or obstacle during movement, it may avoid the person or obstacle through local path planning.

[0107] 13 and 14, all edges that overlap with passage intersections are assigned caution edges 1302 corresponding to the caution section. For example, at a crossroads, one node has three caution edges 1302, at a three-way intersection, one node has two caution edges 1302, and at an L-shaped corner, one node has one caution edge 1302. An elevator hall also corresponds to a passage intersection, and caution edges 1302 may be assigned to all edges within the hall. Caution edges 1302 may also be assigned to the caution section in front of a door and the section where the robot-only passage and the passage intersection intersect. These caution edges 1302 may be set so that the robot 100 decelerates at 70% or less of its basic speed. The caution edges 1302 at passage intersections may be assigned a direction from the passage entry node 801 to the passage end node 802, and in front of a door, a direction from the door area start node 803 to the door area end node 804. Although the caution edge 1302 in the corner section is shown as a straight line, it may be set to travel in a rotating arc to prevent collisions and for natural travel.

[0108] 15, a high-speed edge 1303 indicates a robot movement path connecting robot-dedicated passages. A robot-dedicated passage basically allows two-way movement, except for at least some sections, and a corridor with a robot-dedicated passage prevents movement via nodes or edges on the opposite wall. The high-speed edge 1303 may be set so that the robot 100 moves at high speed, at 160% or more of its base speed.

[0109] The processor 420 may automatically designate nodes and edges for the movement of the robot 100 based on the 3D map generated by the mapping robot and based on the indoor space requirements on the 3D map.

[0110] 16, in the case of the principle of specifying nodes in a passage, for example, after generating a block based on four vertices 1601 of a passage 1600, four vertices 1602 of the sides offset by 300 mm from the entrance / exit side 1610, 1620, and 600 mm from the left and right wall sides 1630, 1640 may be generated as nodes. In this case, the side 1603 parallel to the wall is generated as an edge, for example, a basic edge 1301, and the direction of the edge may also be specified.

[0111] Processor 420 may add nodes to the robot-only passage in the same manner as specifying nodes in a passage. After generating a block based on four vertices with the robot-only passage as the reference, processor 420 may generate a robot-only passage edge, i.e., high-speed edge 1303, at the end of the edge that is offset 300 mm from the edge of the entrance / exit and 500 mm from the edge of the wall.

[0112] In the case of the path intersection designation principle, the space where paths intersect may be designated as a path intersection area, and nodes in contact with the path intersection area may be connected as edges. A path end node 802, which is the start node in the path intersection section, connects all surrounding path entry nodes 801. All edges in the path intersection area may be designated as caution edges 1302 with speed limits.

[0113] The processor 420 may add a node for the door passing section, for example, a door passing node 805 may be added to the right-hand traffic edge at a point 300 mm away on either side of the door width, and the edge in between may be designated as a caution edge 1302.

[0114] As described above, the processor 420 may designate nodes and edges for the robot 100 to move using predetermined offset values ​​based on social norms for each indoor space classified according to its properties on the 3D map. The processor 420 may designate nodes according to the indoor space requirements in a batch setting manner or a sequential setting manner. As an example, the processor 420 may generate all vertices of edges offset for the indoor space on the map as nodes at once. As another example, when transmitting a movement command for the robot 100, the processor 420 may first determine a reference point according to the direction in which the robot 100 is moving, and then sequentially generate points offset by predetermined offset values ​​from the reference point based on the reference point as nodes.

[0115] Thus, according to an embodiment of the present invention, by defining the principles of nodes and movement paths (edges) for global path planning of a robot, it is possible to support the robot in moving efficiently and in performing human-friendly exploration in accordance with social norms in an indoor environment.

[0116] The above-described devices may be implemented using hardware components, software components, and / or a combination of hardware and software components. For example, the devices and components described in the embodiments may be implemented using one or more general-purpose or special-purpose computers, such as a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or various devices capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the OS. The processing device may also access, record, manipulate, process, and generate data in response to the execution of the software. For ease of understanding, a single processing device may be described. However, those skilled in the art will understand that a processing device may include multiple processing elements and / or multiple types of processing elements. For example, a processing device may include multiple processors or one processor and one controller. Other processing configurations, such as parallel processors, are also possible.

[0117] Software may include computer programs, codes, instructions, or a combination of one or more of these, which may configure a processing device to operate as desired or may independently or collectively instruct the processing device. The software and / or data may be embodied in any type of machine, component, physical device, computer storage medium, or device to be interpreted by or provide instructions or data to the processing device. The software may be distributed and stored and executed in a distributed manner on computer systems connected by a network. The software and data may be stored on one or more computer-readable storage media.

[0118] Methods according to embodiments may be implemented in the form of program instructions executable by various computer means and recorded on a computer-readable medium. Here, the medium may continuously store the computer-executable program or may temporarily store the program for execution or download. Furthermore, the medium may be various recording or storage means, including a single or multiple hardware devices, and is not limited to media directly connected to a computer system but may also be distributed over a network. Examples of media include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; ROMs, RAMs, flash memories, and the like, configured to store program instructions. Other examples of media include recording media or storage media managed by application stores that distribute applications, or by sites or servers that provide or distribute various software.

[0119] Although the embodiments have been described above based on limited embodiments and drawings, those skilled in the art will appreciate that various modifications and variations may be made from the above description. For example, the described techniques may be performed in an order different from that described, and / or the described system, structure, device, circuit, or other element may be combined or combined in a manner different from that described, or may be substituted or replaced by other elements or equivalents, and still achieve suitable results.

[0120] Therefore, different embodiments are within the scope of the appended claims, provided that they are equivalent to the claims. [Explanation of symbols]

[0121] 140:Robot control system 310: Communications Department 320: Processor 330: Memory 340: Input / Output Interface

Claims

1. 1. A path planning method executed by a computer system, comprising: the computer system includes at least one processor configured to execute computer-readable instructions contained in a memory; The route planning method includes: generating, by the at least one processor, a global path planning for the robot relative to the indoor space based on the indoor map; The step of generating a global route plan comprises: designating a plurality of nodes as waypoints on the indoor map according to a node designation principle; and Specifying edges connecting nodes as a movement path of the robot according to an edge specification rule; Including, the node designation principle and the edge designation principle reflect a social norm principle based on indoor space requirements related to the indoor environment at the time when the robot travels; The edge types are classified into basic edges, caution edges, and high-speed edges according to indoor space requirements, and the basic edges represent movement paths connecting a passage entry node and a passage exit node in a corridor; If the robot encounters a human or obstacle during its movement, it will avoid it using local path planning. The basic edges are defined based on the width of the corridor to allow the robot to move in one direction from the passage entry node to the passage exit node, or to allow the robot to move in two directions between the passage entry node and the passage exit node. A route planning method comprising:

2. The generating step includes: generating the global route plan using nodes and edges designated according to a right-hand traffic principle; 2. The method of claim 1, wherein the step of:

3. Each of the nodes has defined attributes including position coordinates and movement direction; Each of the edges is defined with an attribute including a movement speed.

3. The route planning method according to claim 2, wherein:

4. The node designation principle is: a designation rule for an aisle entry node indicating a right-hand aisle start point in the aisle and an aisle exit node indicating a right-hand aisle end point in the aisle; 2. The method of claim 1, wherein the step of:

5. The node designation principle further includes: The door area start node indicates the start point of the door warning zone, the door area end node indicates the end point of the door warning zone, the door passing node indicates the point where the door passes through, the door open protection node indicates the point where the door should not be opened, the robot exclusive passage node indicates the point on the robot exclusive passage, the basic passing node indicates the point where an individual node needs to be specified, and the node indicating the waiting position, 5. The route planning method according to claim 4, wherein:

6. The edge designation principle is: The robot includes designation rules for a basic edge where the robot travels at a basic speed, a caution edge where the robot travels at a deceleration speed less than a certain rate of the basic speed, and a high-speed edge where the robot travels at a high speed more than a certain rate of the basic speed.

2. The method of claim 1, wherein the step of:

7. The edge designation principle is: When the robot is in at least one of an intersection of passages, in front of a door, and in an elevator hall, a caution edge is designated, at which the robot decelerates and travels at a rate equal to or less than a certain rate of the base speed; In the case of a dedicated path for robots, a high-speed edge is designated, which allows the robot to travel at a high speed at a rate equal to or greater than a certain percentage of the basic speed.

2. The method of claim 1, wherein the step of:

8. The generating step includes: generating all vertices of edges offset by a predetermined offset value relative to the indoor space as nodes for movement of the robot; The method of claim 1 , comprising:

9. The generating step includes: determining a reference point based on a moving direction of the robot, and then generating a point offset from the reference point by a predetermined offset value as a node for movement of the robot; The method of claim 1 , comprising:

10. A computer program for causing a computer to execute the route planning method according to any one of claims 1 to 9.

11. 1. A computer system comprising: at least one processor implemented to execute computer-readable instructions contained in the memory; Including, The at least one processor generating a global path plan for the robot relative to the indoor space based on the indoor map; and generating the global path plan designating a plurality of nodes as waypoints on the indoor map according to a node designation principle; and Specifying edges connecting nodes as a movement path of the robot according to an edge specification rule; Including, the node designation principle and the edge designation principle reflect a social norm principle based on indoor space requirements related to the indoor environment at the time when the robot travels; The edge types are classified into basic edges, caution edges, and high-speed edges according to indoor space requirements, and the basic edges represent movement paths connecting a passage entry node and a passage exit node in a corridor; If the robot encounters a human or obstacle during its movement, it will avoid it using local path planning. The basic edges are defined based on the width of the corridor to allow the robot to move in one direction from the passage entry node to the passage exit node, or to allow the robot to move in two directions between the passage entry node and the passage exit node. A computer system comprising:

12. The at least one processor generating the global route plan using nodes and edges designated according to a principle based on right-hand traffic; Attributes including position coordinates and movement direction are defined for each of the nodes; Each of the edges is defined with an attribute including a movement speed.

12. The computer system of claim 11.

13. The node designation principle is: a designation rule for an aisle entry node indicating a right-hand aisle start point in the aisle and an aisle exit node indicating a right-hand aisle end point in the aisle; 12. The computer system of claim 11.

14. The node designation principle further includes: The door area start node indicates the start point of the door warning zone, the door area end node indicates the end point of the door warning zone, the door passing node indicates the point where the door passes through, the door open protection node indicates the point where the door should not be opened, the robot exclusive passage node indicates the point on the robot exclusive passage, the basic passing node indicates the point where an individual node needs to be specified, and the waiting node indicates the waiting position, 14. The computer system of claim 13.

15. The edge designation principle is: The robot includes designation rules for a basic edge where the robot travels at a basic speed, a caution edge where the robot travels at a deceleration speed less than a certain rate of the basic speed, and a high-speed edge where the robot travels at a high speed more than a certain rate of the basic speed.

12. The computer system of claim 11.

16. The edge designation principle is: When the robot is in at least one of an intersection of passages, in front of a door, and in an elevator hall, a caution edge is designated, at which the robot decelerates and travels at a rate equal to or less than a certain rate of the base speed; In the case of a dedicated path for robots, a high-speed edge is designated, which allows the robot to travel at a high speed at a rate equal to or greater than a certain percentage of the basic speed.

12. The computer system of claim 11.

17. The at least one processor generating all vertices of edges offset by a predetermined offset value relative to the indoor space as nodes for movement of the robot; 12. The computer system of claim 11.

18. The at least one processor After determining a reference point based on the direction of travel of the robot, a point offset by a predetermined offset value from the reference point is generated as a node for movement of the robot.

12. The computer system of claim 11.

Citation Information

Patent Citations

  • Method and device for searching shortest route for automatic carrier

    JP1999249738A

  • Facility for article conveyance

    JP2004046465A

  • Mobile robot

    JP2017220121A

  • Path planning method for the autonomous mobile robot

    KR1020050024840A

  • Gasoline station cashback credit / check card comparing system

    KR1020090000039A