Method for generating travel route map of robot
A hybrid map generated by combining different map formats addresses memory and localization challenges, enhancing autonomous driving performance and navigation efficiency.
Patent Information
- Application Number
- PCT/KR2025/012903
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-08-29
- Filing Date
- 2025-08-25
- Publication Date
- 2026-03-05
AI Technical Summary
Existing autonomous driving technologies face challenges in efficiently managing memory requirements for mapping and navigation, as dual metric maps require significant memory for precise localization but lack semantic information, while topology maps lack precise localization and memory efficiency.
Generating a hybrid map by overlapping and aligning maps of different formats, such as satellite and point cloud data, to create a driving path map that minimizes memory usage and enhances autonomous driving performance.
The hybrid map approach reduces memory requirements and improves autonomous navigation by providing efficient path planning and localization, allowing for effective management of geographical features and quick response to abnormal situations.
Smart Images

Figure KR2025012903_05032026_PF_FP_ABST
Abstract
Description
How to create a robot's driving path map
[0001] The present invention relates to a method for generating a driving path map of a robot using a hybrid map.
[0002] The map required for autonomous navigation of a mobile robot refers to information that digitizes the space in which the robot moves and works, and is divided into two types: metric and topology depending on the form of expression of the map.
[0003] The dual metric format is a method of precisely expressing the robot's surroundings in the form of occupied / unoccupied, and is widely used in the SLAM (Simultaneous Localization And Mapping) method, in which the robot uses its own sensors to recognize the environment and form a map based on that information, and it is a method of updating the map by probabilistically modeling the uncertainty generated from the sensors.
[0004] This type of map is one in which a robot can recognize and create its own environment in an unknown environment, and has the advantage of being able to estimate the robot's location using the created map information. However, because a lot of memory is required for map creation and the environment is only expressed as occupied / unoccupied, there is a problem in that, for example, parts that connect spaces cannot be expressed as semantic information such as doors, stairs, and hallways. Therefore, maps using a semantic segmentation technique are generally used to recognize areas.
[0005] Meanwhile, the topology form is a method of simply and clearly expressing the environment in a graphical form, and has the advantage of being able to efficiently express a large space with a small memory and simplifying path planning for driving, but has the problem that it is difficult for the robot to find topology information on its own and it is difficult to estimate the robot's location using only map information.
[0006] Therefore, as the target space expands due to the development of autonomous driving technology for robots, more memory is required to create maps. If a map requiring a large amount of memory is used, the autonomous driving performance of the robot may deteriorate, so a solution to this problem is needed.
[0007] Therefore, the present invention aims to solve the above-described problem.
[0008] The present invention aims to improve the autonomous driving performance of a robot by generating a driving path of a robot through a hybrid map generated by overlapping and aligning a plurality of maps formed in different formats for a target space, and by selecting a map of an appropriate format based on the generated driving path to generate a simple map required for driving of the robot.
[0009] Various embodiments for solving the problem of the present invention include a method for generating a driving path map of a robot, comprising the steps of: generating a map of a target space by overlapping and aligning two or more maps having different formats; generating a driving path of the robot based on the map; generating a waypoint based on a point where the state of the robot changes in the driving path; and generating a driving path map based on the generated waypoint, wherein the step of generating the waypoint may be characterized by generating a driving path map of the robot by selecting any one of the maps having different formats according to a preset criterion.
[0010] The above-mentioned preset criteria may be based on whether the mission assigned to the robot has been performed.
[0011] The step of generating the above waypoint may further include a step of classifying which of two or more maps having different formats is the basis for the generated driving path of the robot.
[0012] The step of generating the above waypoints may generate waypoints in different ways depending on which of the two or more maps made of different formats includes the classified route, after the step of classifying.
[0013] The step of generating the above waypoint may further include a step of generating context information for the generated waypoint.
[0014] The two or more maps made of the above different formats may be characterized by including a first map based on satellite data of the target space and a second map based on point cloud data (PCD) of the target space.
[0015] The two or more maps made of different formats may further include a third map made of feature points extracted from the second map.
[0016] The step of generating the above map may include a step of extracting a path available to the robot through the first map and a step of generating the second map based on the path used by the robot.
[0017] The generated driving path may be generated on at least one of the first map, the second map, or the third map based on an object within the target space.
[0018] The above-mentioned generated driving route map can generate waypoints based on at least one of the first map, the second map, or the third map based on the classified driving route.
[0019] The generated driving route map can generate waypoints based on at least one of the first map, the second map, or the third map based on the classified driving route and whether the classified driving route is a driving route after the robot performs a mission.
[0020] Meanwhile, in accordance with various embodiments of the present invention, a robot driving in a target space includes a map generation unit that generates a map of the target space by overlapping and aligning two or more maps having different formats, a path generation unit that generates a driving path of the robot based on the generated map, and a driving path map generation unit that classifies whether the generated driving path is a path generated based on any one of the maps having different formats, wherein the driving path map generation unit generates a waypoint based on a point where the state of the robot changes in the driving path of the robot, and the waypoint may be generated in a different manner depending on which of the two or more maps having different formats includes the classified path.
[0021] The two or more maps made of different formats may include a first map based on satellite data of the target space and a second map based on point cloud data (PCD) of the target space.
[0022] An exemplary embodiment of the present invention can provide a program stored in a computer-readable recording medium including a program code for executing the method for generating a driving path map of a robot described above.
[0023] An exemplary embodiment of the present invention can provide a computer-readable recording medium including a program code for executing the above-described method for generating a driving path of a robot.
[0024] Meanwhile, the features of each of the above-described embodiments may be implemented in combination in other embodiments as long as they are not contradictory or exclusive to other embodiments.
[0025] According to various embodiments of the present invention, a mobile robot can generate a driving path using a hybrid map composed of various formats, and generate and use a driving path map composed of context information, node and edge information based on the generated driving path, thereby minimizing the memory required for information such as maps and paths required for performing the robot's mission.
[0026] Additionally, maps can be managed effectively by minimizing resources for map creation based on the geographical features of the target space.
[0027] Additionally, mobile robots can have improved information processing capabilities within target spaces for autonomous navigation.
[0028] In addition, by using a mobile robot, the driving path can be set effectively by determining whether there are any blind spots in the target space (area) according to the task.
[0029] Additionally, it can quickly respond to abnormal situations (events) that may occur when a mobile robot performs a mission while moving within a target space.
[0030] The effects of the present invention are not limited to those described above, and other effects not mentioned will be clearly recognized by those skilled in the art from the description below.
[0031] FIG. 1 and FIG. 2 are drawings showing a robot according to an exemplary embodiment of the present invention.
[0032] FIG. 3 is a drawing showing the configuration of a robot control system according to an exemplary embodiment of the present invention.
[0033] FIG. 4 is a drawing showing the configuration of a robot according to an exemplary embodiment of the present invention.
[0034] FIG. 5 is a diagram illustrating a map generation method according to an exemplary embodiment of the present invention.
[0035] Figure 6 is a drawing showing some of the maps described in Figure 5.
[0036] FIG. 7 is a diagram illustrating a map generation method according to an exemplary embodiment of the present invention.
[0037] FIGS. 8 to 10 are drawings showing a method for generating a driving path map of a robot according to an exemplary embodiment of the present invention.
[0038] FIG. 11 and FIG. 13 are drawings showing the driving path of a robot according to an exemplary embodiment of the present invention.
[0039] FIG. 12 is a drawing showing a driving route map according to an exemplary embodiment of the present invention.
[0040] Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. The following detailed description is provided to facilitate a comprehensive understanding of the methods, devices, and / or systems described herein. However, these are merely examples and the present invention is not limited thereto.
[0041] In describing embodiments of the present invention, detailed descriptions of known technologies related to the present invention will be omitted if they are deemed to unnecessarily obscure the gist of the invention. Furthermore, the terms described below are defined based on their functions in the present invention and may vary depending on the intent or custom of the user or operator. Therefore, their definitions should be based on the overall content of this specification.
[0042] The terminology used in this detailed description is for the purpose of describing embodiments of the present invention only and should not be construed as limiting. Unless expressly stated otherwise, singular forms include plural forms.
[0043] In this description, expressions such as "including" or "having" are intended to indicate certain features, numbers, steps, operations, elements, portions or combinations thereof, and should not be construed to exclude the presence or possibility of one or more other features, numbers, steps, operations, elements, portions or combinations thereof other than those described.
[0044] Additionally, in describing components of embodiments of the present invention, terms such as first, second, A, B, (a), (b), etc. may be used. These terms are only intended to distinguish the components from other components, and the nature, order, or sequence of the components are not limited by the terms.
[0045]
[0046] Figures 1 and 2 are drawings illustrating robots according to exemplary embodiments of the present invention. For example, a robot (10a) equipped with a display unit (111) on the front as shown in Figure 1 and requiring information exchange with a user may be suitable for driving in an indoor environment, while a robot (10b) enclosed by a housing (12) as shown in Figure 2 and not equipped with a separate display unit may be suitable for driving in an outdoor environment.
[0047] The robot (10a) of Fig. 1 may include a body part (11), a driving part (151, 153), and a head part (13).
[0048] The head (13) is equipped with a display (131) on the front to display information for communication with the user, and a sensor (133) is equipped on the upper part of the head (13) to collect various information necessary for the driving of the robot (10a).
[0049] The body part (11) is provided with a display part (111) on the front to display information required by the user or the status of the robot, etc. For example, the display part (131) of the head part can display information in the form of feedback according to the input value of the user or administrator, and the display part (111) of the body part can display the time, weather, information of the target space, the status of the robot, etc., and can display the above-described information in various ways according to the user's operation.
[0050] The driving part of this embodiment may be provided in the form of a wheel at the lower part of the body part (11), and may include a main wheel (151) that rotates directly by a motor and an auxiliary wheel (153) that prevents the robot (10a) from overturning and rotates by friction with the ground according to the movement of the robot (10a).
[0051] The robot (10b) of Fig. 2 has a structure in which the internal structure of the robot is firmly sealed by a housing (12), and unlike the robot (10a) of Fig. 1, structures such as the display portion (111, 113) that are relatively less durable are omitted.
[0052] More specifically, the housing (12) forms a combined structure of an upper housing (12u) and a lower housing (12d), and a sensor (121) is provided on the upper surface of the upper housing (12u), and a sensor (123) is also provided on the front surface of the lower housing (12d). Of course, various types of sensors can be adopted for each sensor (121, 123) depending on the purpose.
[0053] In addition, as described above, the wheels (141) forming the driving part of the robot (10b) of the present embodiment for driving in an outdoor environment can be directly rotated by the power transmission of the motor.
[0054] The robots (10a, 10b) described above are exemplary drawings for expressing the robots described in the following embodiments, and are a type of robot that constitutes the logic and system described below, and therefore should not be interpreted as being limited thereto.
[0055]
[0056] FIG. 3 is a drawing showing the configuration of a robot control system according to an exemplary embodiment of the present invention, and FIG. 4 is a drawing showing the configuration of a robot according to an exemplary embodiment of the present invention.
[0057] The following description is provided with reference to Figures 3 and 4.
[0058] The robot control system of this embodiment may include a robot (10), a database (30), and a server (50).
[0059] The robot (10) may include a robot of various shapes and configurations that can drive indoors and outdoors as described above, and may perform a mission by transmitting and receiving information such as map information, driving information, and route information with a database (30) and a server (50).
[0060] Referring to FIG. 4, the robot (10) of the present embodiment may include a control unit (210), a movement module (220), a sensor unit (230), a photographing unit (240), a display unit (250), a storage unit (260), a communication unit (270), a map generation unit (280), and a map merging unit (290).
[0061] First, the movement module (220) can be composed of a motor, a gear assembly, and wheels, and can provide driving force for movement (driving) of the robot (10).
[0062] The sensor unit (230) may include various sensors that can acquire information about the target space while the robot moves through the target space. For example, the sensor unit (230) may include at least two or more of an image sensor, a lidar sensor, and a radar sensor.
[0063] The photographing unit (240) may include a real-image sensor unit (not shown) for photographing real-image images, a thermal image sensor unit (not shown) for acquiring thermal images, etc. For example, the real-image sensor unit (not shown) may be implemented as an RGB camera, and the thermal image sensor unit (not shown) may be implemented as an infrared (infra-red) camera. Through the configuration of the photographing unit (240), the robot (10) can accurately identify objects not only in a high-illuminance environment such as during the day, but also in a low-illuminance environment such as at night.
[0064] The display unit (250) can display the status of the robot (10), time, weather, information on the target space, etc. In terms of the robot control system of the present embodiment, for example, when the robot (10) is unable to drive or perform a mission due to the occurrence of an event, the robot (10) can transmit status information of the robot (10) to the server (50) and then display at least a portion of the status information of the robot (10) through the display unit (250) while waiting until a worker arrives at the location at which the status information was transmitted to the server (50) and a separate command is input.
[0065] That is, the display unit (250) can display the general status of the robot, information required for the mission, information to be provided to the user or worker, and of course, information required for the robot control system can also be displayed.
[0066] The storage unit (260) can store programs for the operation of the robot (100), map information, captured images, scenarios for performing missions, etc.
[0067] The communication unit (270) may include one or more modules that enable the robot (10) to communicate with other devices (e.g., a remote control system, a server (50), another robot, a database (30), etc.).
[0068] Meanwhile, the control unit (210) may include a processor (211), a path generation unit (2131), a driving path map generation unit (2133), a driving control unit (215), and an event detection unit (217).
[0069] The processor (211) can process information obtained from various components included in the above-described robot.
[0070] The path generation unit (2131) and the driving path map generation unit (2133) can select any one of the maps formed by arranging (merging) at least two different format maps generated through the map generation unit (280), and can generate a driving path of the robot through the path generation unit (2131) within the selected map, or can generate a driving path map used by the robot based on the driving path generated through the driving path map generation unit (2133).
[0071] The above driving path map means a simplified map composed of nodes, edges, and context information included in each node or edge generated according to the example described below. The nodes may represent objects that are mission execution targets of the robot or points where a change in the status of the robot (e.g., change in driving direction, etc.) occurs on the driving path. The edges may connect the nodes and represent the driving path of the robot between the nodes. The context information may represent a control command value of the robot at the node or edge, information about the node, etc.
[0072] Meanwhile, the path generation unit (2131) can generate a driving path between objects using a map generated by the global map generation unit (281), and can generate a driving path more effectively by generating a path using a map generated by the local map generation unit (283) in the vicinity of the object (a predetermined area based on the object), and similarly, when modifying the generated driving path for other reasons, it will be possible to quickly respond to other reasons by modifying the driving path according to the exemplary criteria described above.
[0073] In addition, as an example, the path generation unit (2131) can generate a path candidate group including a plurality of driving paths on which the robot (10) can perform a mission in a target space (map information), and select an optimal path from the generated path candidate group based on preset criteria to generate a driving path for the robot (10).
[0074] The above-described preset criteria can be used to set the surveillance priority according to the mission of the robot (10) for objects existing on the map information, and can be used as a criterion for determining whether a surveillance blind spot occurs in the object when performing the assigned task (driving) according to the set priority.
[0075] Meanwhile, the driving control unit (215) can generate or transmit a signal for controlling the movement module (220). More specifically, the signal for controlling the movement module (220) may be generated by a control signal input from the server (50) through the communication unit (270), or the signal for controlling the movement module (220) may be generated based on a result of processing through the processor (211) based on information about the target space acquired from the sensor unit (230) or the photographing unit (240).
[0076] The event detection unit (217) can detect an abnormal situation occurring in any of the objects existing in the target space, an abnormal situation occurring on the robot's driving path, or an abnormal situation occurring in the robot, through the sensor unit (230), the camera unit (240), the communication unit (270), and the process (211).
[0077] The map generation unit (280) can convert the target space where the robot (10) drives into various formats and then generate a map for each format, and the map merging unit (290) can perform conversion and alignment of maps generated in each format.
[0078] This is explained in more detail with reference to examples in Figures 5 and 6 below.
[0079] Meanwhile, the database (30) may store information on map information for the target space, multiple scenarios, driving routes, types of events, etc. For example, the map information may include various map information for expressing the target space, and may include, for example, a satellite map (2D Map), SLAM information (Simultaneous Localization and Mapping), PCD (Point Cloud Data), a topological map, a semantic map, an HD map (High-Definition Map), etc. for the target space.
[0080] The server (50) may transmit map information to the robot (10), or may assign a mission to the robot (10) or perform a robot (10) control task according to the assigned mission.
[0081] Of course, the server (50) may also serve as an information relay point between the robot (10) and the database (30) on the robot control system, and some of the above-described vehicle event type confirmation, map information transmission, and robot control command transmission may be performed in the database (30) or through a configuration installed in the robot (10).
[0082]
[0083] FIG. 5 is a drawing showing a map creation method according to an exemplary embodiment of the present invention, and FIG. 6 is a drawing showing some maps described in FIG. 5.
[0084] The following description is provided with reference to Figures 4 to 6.
[0085] In this embodiment, the map used by the robot (10) to perform the mission is a map (hereinafter referred to as a hybrid map) in which maps of different formats are merged (overlapping, aligned, and stacked), and can be divided into a global map and a local map depending on the form of the map.
[0086] A global map may mean a 2D map generated through a global map generation unit (281) based on a satellite map received from a communication unit (270) or a database (30), and a local map may mean a 3D map (spatial map, feature map) generated through a local map generation unit (283) based on point cloud information (Point Cloud Data, PCD) received from a communication unit (270) or a database (30).
[0087] Of course, the point cloud information required for the above local map creation may be collected through the sensor unit (230) while the robot (10) drives for mapping the target space and may be stored in the storage unit (260).
[0088] The map merging unit (290) can generate a hybrid map using maps of different formats. More specifically, the map merging unit (290) can include a map conversion unit (291) and a map alignment unit (293). The map conversion unit (291) can convert one of the different formats of maps into a reference format to generate a specific map, and the map alignment unit (293) can generate the specific map by overlapping and aligning maps that have been converted and formed into the same format.
[0089] Of course, the map alignment unit (293) can also create a single map by overlapping and aligning map information of different formats as described above, and for example, objects that are mission targets based on the global map can be expressed as nodes, and detailed information of objects expressed as each node can be overlapping and aligning information of the local map to create a hybrid map.
[0090] Referring to FIG. 5, a series of processes divided into steps S11 (S111 to S117) for generating a first map represents a process for generating the global map described above, a series of processes divided into steps S14 (S141 to S147) represents a process for generating a local map, and a series of processes divided into steps S16 (S161 to S165) represents a process for converting some information during the local map generation process into a 2D map and generating an intermediate map by merging the necessary information with the first map.
[0091] More specifically, first, looking at the process of creating a global map, the robot (10) can receive satellite information (S111) from a database (30) or server (50) through a communication unit (270).
[0092] The above satellite information may include aerial photographs, orthophotos, and true orthophotos of the target space, and may be expressed as photographs or images such as d1 in FIG. 6, for example.
[0093] After receiving satellite information, the global map generation unit (281) can generate a first map (S117) by dividing an area (S113) and performing labeling (S115) based on the received satellite information.
[0094] More specifically, information included in 2D Layout Data, such as road boundaries, building boundaries, and roads usable by robots (d51), can be expressed through the division of areas (S113), as exemplarily expressed in d5, and labeling (S115) can be performed by inputting context information for each of the divided areas, required areas, or expressed information.
[0095] The 2D map generated through the above-described process may be referred to as the first map (d5) in this embodiment.
[0096] Next, looking at the process of generating a local map, the robot (10) can collect point cloud information of the target space (S141), which can be expressed as d2 in Fig. 6 as an example. The collection refers to various methods of obtaining point cloud information (3D data), as described above.
[0097] Meanwhile, the spatial map generation unit (2833) can generate a spatial map (d3) based on the above point cloud information. Briefly, the generation of the spatial map can be generated through a post-processing step of the acquired raw data (PCD, 3D data). For example, after performing outlier removal (noise removal) through the acquired raw information, each data set can be aligned and merged to perform a rendering operation.
[0098] After a series of processes for generating the above spatial map are performed, or during a series of processes, the feature map generation unit (2831) can generate a feature map (d4) (S147) through a step (S145) of extracting feature points for objects.
[0099] That is, the 3D map generated through the above-described process may be referred to as the second map (d4) in the present embodiment.
[0100] Meanwhile, the map merging unit (290) can convert a spatial map generated based on PCD into a 2D map (S161) through the map conversion unit (291), and then merge the converted map with the first map (S163) through the map alignment unit (293) to generate a third map (d5) (S165).
[0101] The third map can express some of the information not expressed in the satellite information by overlaying and aligning a 2D map converted through a spatial map (3D data) onto the first map generated based on the satellite information (2D layout data). Therefore, in Fig. 6, the first and third maps are expressed as d5 for convenience.
[0102] Meanwhile, the control unit (210) can create a hybrid map (S18) by merging the first map, the second map, and the third map through the map generation unit (280) and the map merging unit (290).
[0103] Additionally, according to various embodiments of the present invention, a hybrid map may be formed by merging a second map and a third map.
[0104]
[0105] FIG. 7 is a diagram illustrating a map generation method according to an exemplary embodiment of the present invention.
[0106] The following description is provided with reference to Figure 7, but the above-described content is omitted.
[0107] The robot (10) of the present embodiment can create a global map (S11) through the above-described configuration and method, and the path creation unit (2131) can extract a path (d51 of FIG. 5) that the robot (10) can use based on the created global map (S13).
[0108] The path that the robot can use may be set as an area that includes a portion of the boundary demarcated as an area where a person can drive from a boundary demarcated as an area where a vehicle can drive, for example.
[0109] And the robot (10) can receive (S151) the PCD stored in the database (30) through the communication unit (270). More specifically, the PCD reception can be based on the robot's usage path extracted in the above step (S13).
[0110] That is, rather than receiving a large amount of PCDs for the target space, it will be possible to more effectively generate the robot's driving path or map by receiving PCDs on the path that the robot can use.
[0111] Meanwhile, the spatial map generation unit (2833) generates a PCD-based spatial map (S153), and when the generated spatial map is converted into a 2D map by the map conversion unit (291) (S155: Yes), the map alignment unit (293) can merge the converted 2D map and the map (first map, global map) generated in the above step (S11) to generate a hybrid map (S171).
[0112] The hybrid map generated in the above step (S171) can be referred to as a hybrid map in the sense that two maps containing different information are overlapping, but it is clear that the information contained is different from that of the hybrid map generated in the subsequent step S19.
[0113] After the above step (S171), the map alignment unit (293) can compare the matching rate (degree of overlap) of the two maps with a reference value, and if the matching rate exceeds the reference value (S173: No), the two overlapping maps can be aligned to create an intermediate map (S175).
[0114] Alternatively, for example, the hybrid map generated in the step (S171) may mean a map in which two maps containing different information (the first map and the converted 2D map) are overlapped and aligned, and in this case, if the matching rate (degree of overlap) in the step (S173) exceeds the reference value by comparing it with the reference value (S173: No), the intermediate map referred to in the step S175 may mean a map already generated in the step (S171).
[0115] The above degree of overlap can be determined based on elements (e.g., robot usage path boundary lines) commonly included in the first map (2D layout data map based on satellite information) and the 2D map converted from the spatial map (3D data).
[0116] Meanwhile, if the spatial map generated in the above step (S155) is not converted into a 2D map (S155: No), the feature map generation unit (2831) can extract feature points for objects from the spatial map and generate a feature map (S157), as described above.
[0117] And the control unit (210) can create a hybrid map (S19) by merging two or more maps created through the above-described process through the map creation unit (280) and the map merging unit (290).
[0118]
[0119] FIGS. 8 to 10 are drawings showing a method for generating a driving path map of a robot according to an exemplary embodiment of the present invention, FIGS. 11 and 13 are drawings showing a driving path of a robot according to an exemplary embodiment of the present invention, and FIG. 12 is a drawing showing a driving path map according to an exemplary embodiment of the present invention.
[0120] The following description is provided with reference to Figures 8 to 13.
[0121] The method for generating a driving path map of a robot of the present embodiment may include a step of generating a hybrid map (S10), a step of generating a driving path (S50), and a step of generating a driving path map (S70).
[0122] A method for generating a driving path map of a robot according to various embodiments of the present invention may include a step of generating a hybrid map (S10), a step of generating a scenario (S30), a step of generating a driving path (S50), and a step of generating a driving path map (S70).
[0123] The step (S10) of generating the above hybrid map is omitted as described above and the steps are described below.
[0124] The robot (10) can generate a scenario based on a given mission within the generated map. For example, referring to FIGS. 11 and 12, the generated mission involves monitoring an object within a target space, and the scenario generated based on the given mission may refer to monitoring (surveillance) of a first target (71) and a second target (73).
[0125] The robot (10) can create a scenario through the control unit (210) according to a mission assigned through the server (50), and can create a driving path (S50) through the path creation unit (2131) according to the created scenario.
[0126] Alternatively, the above mission and scenario may be set identically, in which case the robot (10) may generate a driving path (S50) through the path generation unit (2131) according to the scenario (or mission) input through the server (50).
[0127] The step (S50) of generating a driving route can be performed via the path generation unit (2131) as described above, and a path can be generated by selecting at least one of maps of different formats according to preset criteria. Furthermore, as an example, the process of generating a group of path candidates including multiple driving routes for performing the mission or scenario and selecting an optimal route among them is also as described above.
[0128] For example, the robot (10) can drive along a generated driving path and perform a mission, and can detect events that occur during the mission through various components included in the robot (10).
[0129] The above events include various abnormal situations in which the robot's mission or driving is interrupted and the robot must modify the preset driving path, and do not include events in which the robot does not need to modify the preset driving path even if some interruption occurs in the robot's mission or driving.
[0130] The above event detection may be performed through the components included in the robot (10) as described above, or may be performed by transmitting event information detected from an observer's perspective in the server (50) to the robot (10).
[0131] And you can also modify the preset driving route based on event detection.
[0132] Meanwhile, the robot (10) can generate a driving path map (S70) based on the generated driving path. Of course, the driving path map can also be generated based on a modified driving path according to the above-described event detection.
[0133] Referring to Fig. 10, after a driving route is generated (S50) through a route generation unit (2131), a driving route map generation unit (2133) can classify the driving route (S61). The driving route classification (S61) is a step of classifying the generated driving route by determining whether the generated driving route is based on a map in a certain format. In this embodiment, since the generated driving route is a route generated based on a hybrid map in which maps in various formats are overlapped and aligned as described above, this can mean classifying the route by dividing the driving route according to a preset standard and then classifying whether the route is generated based on a map in a certain format for each divided portion.
[0134] Alternatively, the driving path classified in the driving path classification step (S61) may refer to the robot dividing the driving path generated for mission execution into sections based on preset criteria. In this case, the criteria for division may include, for example, whether the path includes a mission target object or whether the path is a path after the mission has been completed.
[0135] That is, if the driving route classification (S61) is interpreted as a step of classifying whether the generated route is based on a map in a certain format, steps S621 to S623 can be distinguished as sub-steps included in the driving route classification step (S61), or if the driving route classification (S61) is interpreted as a step of dividing the generated driving route according to preset criteria, steps S621 to S623 can be viewed as steps performed sequentially after step S61.
[0136] The generated driving path (some of the segmented paths) is judged to be a driving path on the global map (S621), and if it is not a driving path on the global map (S621: No), it is judged to be a driving path on the local map (S622), and if it is not a driving path on the local map (S622: No), it can be seen that there is a problem with the information forming the generated driving path or the segmented driving path for classification, and thus the process can be repeated again from the driving path classification step (S61).
[0137] Meanwhile, if the driving route is on a global map (S621: Yes), the driving route map generation unit (2133) can obtain a first waypoint (S641) and generate context information for the first waypoint (S642).
[0138] Referring to Figure 12, the first waypoint (WP1) is the point where a state change occurs in the robot after it begins driving. The state change may include, for example, state changes related to driving, such as changes in the robot's driving direction, speed, deceleration, and acceleration.
[0139] Since the first waypoint (WP1) is information included in the above-described global map (first map or third map), the driving route map generation unit (2133) can obtain the first waypoint (WP1) from the driving route based on the global map.
[0140] In addition, the driving route map generation unit (2133) can generate context information for the acquired first waypoint (WP1) (S642). The context information may include the location information of the first waypoint (WP1) in FIG. 12, and control information such as the vector value, speed value, and acceleration value of the robot (10) at the first waypoint (WP1), and the information may be expressed or stored in a type of tagging form in the form of characters in the first waypoint (WP1).
[0141] Meanwhile, if it is a driving route on a local map (S622: Yes), the driving route map generation unit (2133) determines whether it is a driving route after mission execution (S623), and if it is a driving route after mission execution (S623: Yes), it generates a waypoint based on the robot's entry / exit point in the relevant area (S651), loads information on the driving route determined in the above step (S623) (S652), generates a second waypoint through clustering of the relevant area based on the driving route information (S653), and generates context information for the second waypoint (S654).
[0142] More specifically, referring to FIG. 11, in the step (S651), the zone may refer to an object (71, 73) for performing a mission assigned to the robot, or a predetermined zone (71a, 73a) based on the object. In addition, the entry / exit point of the robot may refer to a location on the map where the robot enters the zone to perform the mission.
[0143] And the driving path map generation unit (2133) can load (S652) the information of the driving path determined in the above step (S623), and the information of the driving path can include control values of other robots, etc.
[0144] And the driving route map generation unit (2133) can generate a second waypoint through clustering of the corresponding area based on the driving route information loaded in the above step (S652) (S653) and generate context information for the second waypoint (S654).
[0145] Referring to FIGS. 11 and 12, the contents of the creation of the second waypoint are examined. In FIG. 11, the paths that satisfy the conditions of a driving path on a local map (S622: Yes) and a driving path before performing a mission (S623: No) include d1, d3, d31, etc. Among them, when explaining based on the d1 path, the d1 path can be divided into the d1-1 and d1-2 paths based on the first waypoint (wp1).
[0146] The d1-1 path and the d1-2 path can be distinguished based on the change in the robot's status in the above step (S61), and the first waypoint (wp1) in FIG. 12 can be displayed (obtained) on the driving path map through steps s621, s641, and s642.
[0147] Meanwhile, the d1-2 path can be classified as a driving path on a local map because the robot must use a local map of the first target (71) or an area (71a) based on the first target to perform the mission, and can be determined as a driving path before performing the mission because it has not yet entered the first target (71) or an area (71a) based on the first target.
[0148] For such a route, the driving route map generation unit (2133) can generate virtual waypoints based on the robot's entry and exit points in the relevant area. For example, the virtual waypoints can be generated based on the point where the d1 and d2 routes overlap in FIG. 11.
[0149] In addition, the driving route map generation unit (2133) can load driving route information for the point (S652) to generate a second waypoint (710) through clustering of the corresponding area. The driving route information may include some of the context information generated in the step (S654) described below or may include a type of raw data for the generated context information.
[0150] For example, the loaded driving route information may include information about the first target (71), and a second waypoint (710) may be created through clustering work on the first target (71) and a predetermined area (71a) based on information such as the size and location on the map of the first target (71).
[0151] Alternatively, since the loaded driving path information includes information on the d2 path for observing / monitoring / photographing the first target (71), a second waypoint (710) may be created through clustering work on the first target (71) and a predetermined area (71a) based on various information derived from the information on the d2 path.
[0152] In addition, the driving route map generation unit (2133) can generate context information for the acquired second waypoint (710) (S654). The context information may include location information of the second waypoint (710) in FIG. 12, clustering scale information, the driving path of the robot at the clustering point, and control information such as vector values, speed values, and acceleration values of the robot (10) at the second waypoint (710), and the information may be expressed or stored in a type of tagging form in the form of characters in the second waypoint (710).
[0153] Alternatively, the driving path of the robot at the above clustering point may be stored in a storage unit (260) or the like to reduce the weight of the driving path map and may be expressed only in a linked form on the driving path map.
[0154] Meanwhile, if the driving path classified in the above step (S623) is a driving path after mission execution (S623: Yes), it is determined whether an edge was created before the mission execution, and if an edge was created (S631: Yes), the driving path map creation unit (2133) creates an edge based on context information of the first and second transit points (S66), and if an edge is not created (S631: No), the above-described steps S651 to S654 for the driving path after mission execution (e.g., path d3-1 in FIG. 12) can be performed.
[0155] More specifically, referring to FIG. 12, the route of d3 in FIG. 11 can be classified into d3-1 and d3-2 based on the third waypoint (wp2) in FIG. 12. If this classification work is performed in advance through steps S621, S641, and S642 so that the driving route map generation unit (2133) obtains information on the third waypoint (wp2), and information on the second waypoint (710) is obtained through steps S623, S651 to S654 so that the edge of d3-1 is generated, there is no need to generate a separate driving route, so an edge (driving route) can be generated (S66) based on the generated node (waypoint) and context information. However, if not, the steps described above will be performed.
[0156] Meanwhile, Fig. 11 shows a first scenario (S1) set according to a scenario assigned to a robot, and Fig. 13 shows a second scenario (S2) in which events occur at different points based on the first scenario.
[0157] The first scenario (S1) includes a driving path for monitoring the monitoring targets (71, 73) through a robot (10) in a target space containing multiple obstacles (81, 91) and monitoring targets (71, 73).
[0158] The robot can move along the path d1 to the first target (71) while avoiding obstacles (81), move around the first target (71) along the path d2 to monitor (observe) the first target (71), and then move toward the second target (73) along the path d3 that includes the waypoint (WP).
[0159] The above WP may store posture information, speed information, deceleration information, direction information, etc. of the robot (10) for entering the d4 path to monitor (observe) the second target (73).
[0160] In addition, as described above, the path generation unit (2131) can generate a path candidate group consisting of a plurality of driving paths, and for example, after monitoring of the first target (71) is finished, the robot may include a driving path including d31, which is the shortest path for entering the d4 path for monitoring the second target (73), in the path candidate group.
[0161] Meanwhile, unlike the first target (71), the second target (73) may have a blind spot for surveillance due to an obstacle (83).
[0162] The reason why the above surveillance blind spot occurred can be explained from two perspectives.
[0163] First, as described above, the driving path generation unit (2131) can generate a group of path candidates according to the surveillance priority, and since the second target (73) has a lower surveillance priority or is less important than the first target (71), a path can be generated (d4, d5) so that the robot monitors only a part of the second target (73) in the process of heading to a' after completing the surveillance mission of the first target.
[0164] Second, a collaborative object (91) exists on one side of the obstacle (83), so that surveillance of an area adjacent to the second target (73) and the obstacle (83) can be performed through the collaborative object (91). More specifically, the collaborative object (91) may be, for example, a fixed surveillance camera, and a task can be performed based on an image captured by the collaborative object (91) through a server (50) for a surveillance blind spot area between the second target (73) and the obstacle (83) on the driving path of the robot (10).
[0165] Meanwhile, each object (first target, second target) may have a predetermined area (71a, 73a) formed based on each object, and the areas may mean areas where a path for the robot (10) to monitor each object is created.
[0166] In addition, the above-described local map can be generated based on the above areas (71a, 73a). For example, the above areas (71a, 73a) can be expressed as a single node, such as a starting point (a) and a destination (a'), on a global map, and the local maps for the areas (71a, 73a) are overlapped and aligned on a hybrid map, so that the robot can drive using the global map included in the hybrid map before entering the areas, and can drive using the local map included in the hybrid map when entering the areas (71a, 73a).
[0167] And as expressed in Fig. 9, when the robot (10) is driving in a driving section or area outside the above areas (71a, 73a), if an event is detected (e1), the preset driving route can be modified based on a global map similar to the logic for selecting the driving route, and when the robot (10) is driving within the above areas (71a, 73a), if an event is detected (e2), the preset driving route can be modified based on a local map.
[0168] More specifically, referring to FIG. 13, when an event is detected, the robot (10) can confirm the location of the robot (10) at the time the event is detected through the configuration of the sensor unit (230), communication unit (270), etc.
[0169] And the processor (211) can determine whether the robot is located within a preset zone. In the above step, the preset zone may mean a predetermined area (71a, 73a) set based on objects.
[0170] When the robot is located within a preset area, the map selection unit can load a local map for route correction and modify the preset driving route on the local map. The preset driving route may refer to route d2 or route d4, as exemplarily illustrated in FIGS. 11 and 13.
[0171] If the robot is not located within a preset area, the event detection unit can determine whether an event occurred within the preset area. The preset area may refer to a predetermined area set based on an object located along the robot's driving path.
[0172] In the above step, if an event occurs within a preset area, the map selection unit (211) can load a local map for route correction and correct the preset driving route on the local map.
[0173] That is, in this case, since the robot (10) must perform the task of entering the area set in the scenario and monitoring the object, if an event requiring modification of the preset driving path is detected while the robot is not yet located in the preset area, it is determined whether the event occurred within the preset area, and if the event occurred within the preset area, a local map is loaded, and if the event did not occur within the preset area, a global map is loaded to modify the driving path.
[0174]
[0175] While various embodiments of the present invention have been described in detail above, those skilled in the art will appreciate that various modifications to the above-described embodiments are possible without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined not only by the claims set forth below but also by equivalents thereof.
[0176] In addition, all embodiments and conditional examples disclosed through this specification are described with the intention of helping a reader having ordinary knowledge in the technical field of the present invention understand the principles and concepts of the present invention, and a person skilled in the art will understand that the present invention can be implemented in a modified form without departing from the essential characteristics of the present invention.
[0177] Therefore, the disclosed embodiments should be considered illustrative rather than restrictive. The scope of the present invention is determined by the claims, not the foregoing description, and all differences within the scope equivalent thereto should be construed as being encompassed by the present invention.
[0178] Meanwhile, the methods according to the various embodiments of the present invention described above can be implemented as programs and provided to servers or devices. Accordingly, each device can access the server or device where the program is stored and download the program.
[0179] In addition, the methods according to the various embodiments of the present invention described above may be implemented as programs and stored and provided on various non-transitory computer-readable media. A non-transitory computer-readable medium refers to a medium that permanently stores data and can be read by a device, rather than a medium that stores data for a short period of time, such as a register, cache, or memory. Specifically, the various applications or programs described above may be stored and provided on non-transitory computer-readable media, such as a CD, DVD, hard disk, Blu-ray disk, USB, memory card, or ROM.
[0180] In addition, although the preferred embodiments of the present invention have been illustrated and described above, the present invention is not limited to the specific embodiments described above, and various modifications can be made by a person having ordinary skill in the art to which the invention pertains without departing from the gist of the present invention claimed in the claims, and such modifications should not be understood individually from the technical idea or prospect of the present invention.
Claims
1. In a method for creating a robot's driving path map, A step of creating a map of a target space by overlapping and aligning two or more maps in different formats; A step of generating a driving path of the robot based on the above map; and A step of generating a waypoint based on a point where the status of the robot changes in the driving path; and A step of generating a driving route map based on the generated waypoints; A method characterized in that the step of generating the above waypoint comprises generating a driving route map of the robot by selecting one of the maps made of different formats according to preset criteria.
2. In paragraph 1, The above-mentioned preset criteria are based on whether the mission assigned to the robot has been performed.
3. In paragraph 2, The steps for creating the above transit point are: A method characterized in that it further includes a step of classifying which of two or more maps having different formats is the basis for the generated driving path of the robot.
4. In paragraph 3, The steps for creating the above transit point are: A method characterized in that, after the above classification step, waypoints are generated in different ways according to a map containing the classified route among two or more maps made of different formats.
5. In paragraph 4, The steps for creating the above transit point are: A method characterized by further comprising the step of generating context information for the generated waypoint.
6. In paragraph 3, Two or more maps in the above different formats, A first map based on satellite data of the above target space; and A method characterized by including a second map based on point cloud data (PCD) of the target space.
7. In paragraph 6, Two or more maps in the above different formats, A method characterized in that it further comprises a third map composed of feature points extracted from the second map.
8. In paragraph 7, The steps for generating the above map are: A step of extracting a path available to the robot through the first map; and A method characterized by comprising a step of generating the second map based on the usage path of the robot.
9. In paragraph 8, The driving path generated above is, A method characterized in that at least one of the first map, the second map, or the third map is generated based on an object within the target space.
10. In paragraph 9, The above generated driving route map is, A method characterized in that a waypoint is created based on at least one of the first map, the second map, or the third map based on the classified driving route.
11. In paragraph 9, The above generated driving route map is, A method characterized in that a waypoint is generated based on at least one of the first map, the second map, or the third map based on the classified driving path and whether the classified driving path is a driving path after the robot performs a mission.
12. In a robot that moves in a target space, A map generation unit that generates a map of the target space by overlapping and aligning two or more maps in different formats; A path generation unit that generates a driving path of the robot based on the above-mentioned generated map; and A driving route map generation unit that classifies whether the generated driving route is a route generated based on one of the maps having different formats; The above driving route map generation unit, A waypoint is created based on the point where the status of the robot changes in the driving path of the robot. A robot characterized in that the above waypoints are generated in different ways depending on which of the two or more maps having different formats contains the classified route.
13. In paragraph 12, Two or more maps in the above different formats, A first map based on satellite data of the above target space; and A robot characterized by including a second map based on point cloud data (PCD) of the target space.
14. A program stored on a computer-readable recording medium including a program code for executing a method for generating a robot driving path map described in any one of paragraphs 1 to 12.
15. A computer-readable recording medium containing a program code for executing a method for generating a driving path of a robot as described in any one of claims 1 to 12.
Citation Information
Patent Citations
Device to search and map area to generate moving path of intelligent robot in unknown environment
KR101427186B1
Hybrid map based localization method of robot
KR1020140009737A
Circuit and method for capture power reduction in logic bist
KR1020230059328A
Removable braces cleaning / sterilizing device through cleaning solution and UV sterilization
KR1020240001944A
Apparatus for scenic road designation
KR102564154B1