Robot-friendly building, and method and system for generating movement paths for robots
Patent Information
- Application Number
- PCT/KR2024/013689
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-03-05
- Filing Date
- 2024-09-10
- Publication Date
- 2025-10-02
Smart Images

Figure KR2024013689_02102025_PF_FP_ABST
Abstract
Description
Robot-friendly building, method and system for generating movement paths for robots
[0001] The present invention relates to a robot-friendly building and a method and system for generating a movement path for robots. More specifically, the present invention relates to a method and system for generating a movement path for robots, which enables robots of various sizes to move along optimal paths in complex spaces. Furthermore, the present invention relates to a method and system for generating a movement path for robots, which can designate a drivable path for each robot size and induce human-friendly driving.
[0002] As technology advances, various service devices are emerging, and in particular, technological development for robots that perform various tasks or services is actively underway.
[0003] Furthermore, recent advancements in artificial intelligence and cloud technologies have made it possible to control robots with greater precision and safety, leading to a gradual increase in their utility. In particular, technological advancements have enabled robots to safely coexist with humans in indoor spaces.
[0004] Accordingly, robots are recently replacing human tasks or operations, and various methods for robots to directly provide services to people, especially in indoor spaces, are being actively researched.
[0005] For example, robots provide navigation services in public spaces like airports, train stations, and department stores, and serve customers in restaurants. Furthermore, robots provide delivery services, delivering mail and packages in offices, shared living spaces, and other spaces. Furthermore, robots provide a variety of services, including cleaning, security, and logistics. The types and scope of services provided by robots are expected to grow exponentially in the future, and the level of service provided is also expected to continue to evolve.
[0006] These robots provide various services not only in outdoor spaces but also in indoor spaces of buildings (or premises) such as offices, apartments, department stores, schools, hospitals, and amusement facilities. In this case, the robots are controlled to move around the indoor spaces of the buildings and provide various services.
[0007] Meanwhile, for a robot to move, it needs a map and path planning to reach its destination. In particular, the larger and more complex the space the robot must navigate, the more necessary it is to systematically construct a network of paths for the robot, similar to a road network, and plan the optimal path.
[0008] Just as cars on the road vary in size, so do indoor autonomous robots. Typically, a robot path map is created and managed for a single robot. However, to operate robots of various sizes in a single space, a robot path map management system that can be used by different types of robots will be required.
[0009] As in Korean Patent No. 10-2020-0083935 (2021.12.06), conventionally, a path is generated based on a single type of robot A (e.g., robot width is 50 cm, minimum passable width: 80 cm). Based on this, a path can be generated so that it can pass through a width of 160 cm or more, and a path is excluded so that it cannot pass through a width of less than 80 cm. Robot A can pass through an 80 cm wide corridor, but robot B (e.g., robot width is 70 cm, minimum passable width: 110 cm) cannot pass through it, and cannot pass through a 160 cm wide corridor like robot A. To solve this problem, all paths for robot B can be created anew, so that two types of path systems are installed in one corridor, or a common path that robot A can also use can be operated based on the larger robot, robot B. However, in this case, since no path for robots is created in the corridor that only robot A can pass through, movement may be more inefficient or the service area may be reduced.
[0010] Accordingly, there still exists a need for a method of generating movement paths for robots so that robots of various sizes can move along optimal paths in complex spaces.
[0011] The present invention provides a method and system for generating a movement path for a robot moving within a building.
[0012] More specifically, the present invention provides a method and system for generating a movement path for a robot, which enables robots of various sizes to move along an optimal path in a complex space when robots of various sizes exist within a building.
[0013] In addition, the present invention provides a method and system for generating a movement path for a robot that can designate a drivable path according to the size of the robot and induce human-friendly driving.
[0014] Furthermore, the present invention provides a method and system for generating a movement path for a robot, which enables robots of various sizes to be operated in one space by managing a robot map that can be used by heterogeneous robots together.
[0015] In order to solve the problem discussed above, a method for generating a movement path for a robot according to the present invention may include a step of specifying a destination of a target robot to be moved based on a service request, a step of confirming physical attribute information of the robot based on the robot being specified to be moved to the destination, a step of generating a path plan (Path Planning) for allowing the robot to move to the destination based on the physical attribute information of the robot, a step of generating a movement path of the robot using environmental information of a corridor specified according to the path plan and the physical attribute information of the robot, and a step of transmitting a control command related to the movement of the robot to the robot so that the robot moves along the movement path.
[0016] Furthermore, a system for generating a movement path for a robot according to the present invention can specify a destination of a target robot to be moved based on a service request, confirm physical attribute information of the robot based on the robot being specified to move to the destination, generate a path plan (Path Planning) for the robot to move to the destination based on the physical attribute information of the robot, generate a movement path of the robot using environmental information of a corridor specified according to the path plan and the physical attribute information of the robot, and transmit a control command related to the movement of the robot to the robot so that the robot moves along the movement path.
[0017] Furthermore, the program according to the present invention is a program that is executed by one or more processes in an electronic device and can be stored in a computer-readable recording medium, wherein the program may include commands that cause the program to perform a step of specifying a destination of a robot to be moved based on a service request, a step of confirming physical attribute information of the robot based on the robot being specified to be moved to the destination, a step of generating a path plan (Path Planning) for the robot to move to the destination based on the physical attribute information of the robot, a step of generating a movement path of the robot using environmental information of a corridor specified according to the path plan and the physical attribute information of the robot, and a step of transmitting a control command related to the movement of the robot to the robot so that the robot moves along the movement path.
[0018] As described above, the method and system for generating a movement path for a robot according to the present invention can prevent collisions of the robot and induce human-friendly driving by generating a movement path of the robot using environmental information of a corridor and physical property information of the robot specified according to a path plan.
[0019] That is, the method and system for generating a movement path for a robot according to the present invention can control robots of various sizes to move along an optimal path in a complex space by specifying a drivable path according to the size of the robot and inducing human-friendly driving.
[0020] In addition, the method and system for generating a movement path for a robot according to the present invention can achieve efficient movement of the robot and human-friendly exploration of the robot in an indoor environment based on social norms by defining nodes and movement path principles for global path planning of the robot.
[0021] Furthermore, the method and system for generating a movement path for a robot according to the present invention can operate robots of various sizes in one space by storing a map of the space in which the robot is located and managing various pieces of information included in the map.
[0022] Furthermore, the robot-friendly building according to the present invention utilizes technological convergence, where robots, autonomous driving, AI, and cloud technologies are integrated and connected, and can provide a new space where these technologies, robots, and facility infrastructure within the building are organically combined.
[0023] Furthermore, the robot-friendly building according to the present invention utilizes a cloud server that interfaces with multiple robots, allowing for the systematic management of the robots' operations, enabling them to provide services more systematically by organically controlling multiple robots and equipment infrastructure. This allows the robot-friendly building according to the present invention to provide a variety of services to people more safely, quickly, and accurately.
[0024] Figures 1, 2 and 3 are conceptual diagrams illustrating a robot-friendly building according to the present invention.
[0025] FIGS. 4, 5 and 6 are conceptual diagrams for explaining a system for controlling a robot that drives a robot-friendly building and various facilities provided in the robot-friendly building according to the present invention.
[0026] Figures 7 and 8 are conceptual diagrams for explaining the facility infrastructure provided in a robot-friendly building according to the present invention.
[0027] Figures 9 to 11 are conceptual diagrams for explaining a method for estimating the position of a robot moving in a robot-friendly building according to the present invention.
[0028] Figure 12 is a conceptual diagram showing one embodiment of a robot that moves along a movement path in the present invention.
[0029] Figure 13 is a conceptual diagram illustrating a movement path generation system for a robot according to the present invention.
[0030] Figure 14 is a flowchart illustrating a method for generating a movement path for a robot according to the present invention.
[0031] FIG. 15a, FIG. 15b, FIG. 16, FIG. 17, FIG. 18a, FIG. 18b, FIG. 19a, FIG. 19b, FIG. 20a and FIG. 20b are conceptual diagrams for explaining a method for generating a movement path for a robot according to the present invention.
[0032] Figures 21a, 21b and 21c are conceptual diagrams for explaining a method of setting a space in which a robot can move in the present invention.
[0033] Hereinafter, embodiments disclosed in this specification will be described in detail with reference to the attached drawings. Regardless of the drawing numbers, identical or similar components will be given the same reference numbers, and redundant descriptions thereof will be omitted. The suffixes "module" and "part" used for components in the following description are assigned or used interchangeably only for the convenience of writing the specification, and do not in themselves have distinct meanings or roles. In addition, when describing the embodiments disclosed in this specification, if it is determined that a specific description of a related known technology may obscure the gist of the embodiments disclosed in this specification, a detailed description thereof will be omitted. In addition, the attached drawings are only intended to facilitate easy understanding of the embodiments disclosed in this specification, and the technical ideas disclosed in this specification are not limited by the attached drawings, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and technical scope of the present invention.
[0034] Terms that include ordinal numbers, such as first, second, etc., may be used to describe various components, but the components are not limited by these terms. These terms are used solely to distinguish one component from another.
[0035] When a component is referred to as being "connected" or "connected" to another component, it should be understood that it may be directly connected or connected to that other component, but that there may be other components intervening. Conversely, when a component is referred to as being "directly connected" or "connected" to another component, it should be understood that there are no other components intervening.
[0036] Singular expressions include plural expressions unless the context clearly indicates otherwise.
[0037] In this application, terms such as “include” or “have” are intended to specify the presence of a feature, number, step, operation, component, part or combination thereof described in the specification, but should be understood not to exclude in advance the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts or combinations thereof.
[0038] The present invention relates to a robot-friendly building, and proposes a robot-friendly building in which people and robots can safely coexist and, further, robots can provide useful services within the building.
[0039] More specifically, the present invention provides a method for providing useful services to people using robots, robot-friendly infrastructure, and various systems for controlling them. In a building according to the present invention, people and multiple robots can coexist, and various infrastructures (or facility infrastructures) can be provided that allow multiple robots to move freely within the building.
[0040] In the present invention, a building is a structure constructed for continuous residence, living, work, etc., and may take various forms, such as a commercial building, an industrial building, an institutional building, or a residential building. Furthermore, the building may be a multi-story building with multiple floors, or a single-story building, as opposed to a multi-story building. However, for convenience of explanation, the present invention will be described as an example of infrastructure or facility infrastructure applicable to a multi-story building.
[0041] In the present invention, infrastructure or facility infrastructure refers to facilities installed in a building for the purpose of providing services, moving robots, maintaining their functions, maintaining cleanliness, etc., and their types and forms may vary greatly. For example, infrastructure installed in a building may include various types of moving equipment (e.g., robot passageways, elevators, escalators, etc.), charging equipment, communication equipment, cleaning equipment, structures (e.g., stairs, etc.), etc. In this specification, these facilities are referred to as facilities, infrastructure, facility infrastructure, or facility infrastructure, and in some cases, the terms may be used interchangeably.
[0042] Furthermore, in a building according to the present invention, at least one of the building, various facility infrastructures provided in the building, and a robot are controlled in conjunction with each other, so that the robot can safely and accurately provide various services within the building.
[0043] The present invention proposes a building equipped with various facility infrastructures that enable multiple robots to move within the building, provide services according to their tasks (or work), and support standby or charging functions, as well as repair and cleaning functions for the robots as needed. Such a building provides an integrated solution (or system) for robots, and the building according to the present invention can be designated by various modifiers. For example, the building according to the present invention can be expressed in various ways, such as i) a building equipped with infrastructure utilized by robots, ii) a building equipped with robot-friendly infrastructure, iii) a robot-friendly building, iv) a building where robots and people live together, and v) a building that provides various services utilizing robots.
[0044] Meanwhile, the meaning of "robot-friendly" in the present invention refers to a building where robots coexist. More specifically, it can mean that the building allows robots to operate, provides services to robots, has facility infrastructure available to robots, or has facility infrastructure providing functions necessary for robots (e.g., charging, repair, cleaning, etc.). In this case, "robot-friendly" in the present invention can be used to mean that the building has an integrated solution for the coexistence of robots and humans.
[0045] Below, the present invention will be described in more detail with reference to the attached drawings.
[0046] FIGS. 1, 2, and 3 are conceptual diagrams illustrating a robot-friendly building according to the present invention, and FIGS. 4, 5, and 6 are conceptual diagrams illustrating a system for controlling a robot that moves around a robot-friendly building according to the present invention and various facilities equipped in the robot-friendly building. Furthermore, FIGS. 7 and 8 are conceptual diagrams illustrating facility infrastructure equipped in a robot-friendly building according to the present invention.
[0047] First, for convenience of explanation, we will define representative drawing symbols.
[0048] In the present invention, a building is given the drawing code “1000”, and a space (indoor space or indoor area) of the building (1000) is given the drawing code “10” (see Fig. 8). Furthermore, indoor spaces corresponding to a plurality of floors constituting the indoor space of the building (1000) are given drawing codes 10a, 10b, 10c, etc. (see Fig. 8). In the present invention, the indoor space or indoor area means the interior of a building protected by an exterior wall, as opposed to the exterior of the building, and is not limited to meaning a space.
[0049] Furthermore, in the present invention, the robot is given a drawing symbol “R”, and even if a drawing symbol is not indicated for the robot in the drawing or specification, it can all be understood as a robot (R).
[0050] Furthermore, in the present invention, a person or human is given the drawing symbol “U,” and a person or human can be designated as a dynamic object. In this case, the dynamic object does not necessarily mean only a person, but can be understood to include an animal such as a dog or cat, or at least one other robot (e.g., a user’s personal robot, a robot providing other services, etc.), a drone, a vacuum cleaner (e.g., a robot vacuum cleaner), or other objects capable of movement.
[0051] Meanwhile, the building (building, structure, edifice, 1000) described in the present invention is not limited to a specific type, and may mean a structure built for people to live in, work in, raise animals, or store objects.
[0052] For example, the building (1000) may be an office, an officetel, an apartment, a mixed-use apartment, a house, a school, a hospital, a restaurant, a government office, etc., and the present invention may be applied to these various types of buildings.
[0053] As illustrated in Fig. 1, in a building (1000) according to the present invention, a robot can move and provide various services.
[0054] One or more different types of multiple robots may be located within the building (1000), and these robots may, under the control of the server (20), move within the building (1000), provide services, and utilize various facility infrastructures provided in the building (1000).
[0055] In the present invention, the location of the server (20) may vary. For example, the server (20) may be located at least within the building (1000) and outside the building (1000). That is, at least a portion of the server (20) may be located within the building (1000), and the remaining portion may be located outside the building (1000). Alternatively, the server (20) may be located entirely within the building (1000), or only outside the building (1000). Accordingly, the present invention does not impose any particular limitations on the specific location of the server (20).
[0056] Furthermore, in the present invention, the server (20) may be configured to utilize at least one of a cloud computing-based server (cloud server, 21) and an edge computing-based server (edge server, 22). Furthermore, in addition to the cloud computing or edge computing methods, the server (20) may be applied to the present invention as long as it is capable of controlling a robot.
[0057] Meanwhile, the server (20) according to the present invention may, in some cases, perform control of at least one of the robot and the facility infrastructure provided in the building (1000) by combining the server (21) of the cloud computing method and the edge computing method.
[0058] Meanwhile, the robot (R) can be driven according to control commands. For example, the robot (R) can move its position or change its posture by changing its movements, and can perform software updates.
[0059] In the present invention, for convenience of explanation, the server (20) is uniformly named as a “cloud server” and is assigned the drawing symbol “20.” Meanwhile, it goes without saying that the cloud server (20) can also be replaced with the term “edge server (22)” of edge computing.
[0060] Furthermore, the term “cloud server” can be variously changed to terms such as cloud robot system, cloud system, cloud robot control system, and cloud control system.
[0061] Meanwhile, the cloud server (20) according to the present invention can perform integrated control on a plurality of robots running in a building (1000). That is, the cloud server (20) can i) monitor a plurality of robots (R) located in the building (1000), ii) assign tasks (or work) to the plurality of robots, iii) directly control the facility infrastructure provided in the building (1000) so that the plurality of robots (R) successfully perform the tasks, or iv) control the facility infrastructure through communication with a control system that controls the facility infrastructure.
[0062] Furthermore, the cloud server (20) can check the status information of robots located in the building and provide (or support) various functions required by the robots. These various functions may include a charging function for the robots, a cleaning function for contaminated robots, and a standby function for robots whose missions have been completed.
[0063] The cloud server (20) can control the robots so that they can utilize various facility infrastructures provided in the building (1000) to provide various functions to the robots. Furthermore, the cloud server can directly control the facility infrastructures provided in the building (1000) or control the facility infrastructures through communication with a control system that controls the facility infrastructures to provide various functions to the robots.
[0064] In this way, robots controlled by the cloud server (20) can move around the building (1000) and provide various services.
[0065] Meanwhile, the cloud server (20) can perform various controls based on information stored in the database. The present invention does not impose any particular limitations on the type and location of the database. The term "database" may be freely modified and used to refer to any means of storing information, such as memory, storage, repository, cloud storage, external storage, or external server. The term "database" will be used hereafter for explanation.
[0066] Meanwhile, the cloud server (20) according to the present invention can perform distributed control of robots based on various criteria such as the type of service provided by the robots and the type of control for the robots, and in this case, the cloud server (20) may have sub-servers of lower concept.
[0067] Furthermore, the cloud server (20) according to the present invention can control a robot moving through a building (1000) based on various artificial intelligence algorithms.
[0068] Furthermore, the cloud server (20) performs artificial intelligence-based learning by utilizing data collected during the process of controlling the robot as learning data, and by utilizing this for robot control, the more control is achieved over the robot, the more accurately and efficiently the robot can be operated. In other words, the cloud server (20) can be configured to perform deep learning or machine learning. In addition, the cloud server (20) can perform deep learning or machine learning through simulations or the like, and control the robot using the artificial intelligence model constructed as a result.
[0069] Meanwhile, the building (1000) may be equipped with various facility infrastructures for robot driving, robot function provision, robot function maintenance, robot mission performance, or coexistence of robots and humans.
[0070] For example, as illustrated in (a) of FIG. 1, various facility infrastructures (1, 2) capable of supporting the driving (or movement) of a robot (R) may be provided within a building (1000). These facility infrastructures (1, 2) may support horizontal movement of the robot (R) within a floor of the building (1000), or may support vertical movement of the robot (R) between different floors of the building (1000). In this way, the facility infrastructures (1, 2) may be provided with a transportation system that supports the movement of the robot. The cloud server (20) may control the robot (R) to utilize these various facility infrastructures (1, 2), so that the robot (R) may move within the building (1000) to provide a service, as illustrated in (b) of FIG. 1.
[0071] Meanwhile, the robots according to the present invention can be controlled based on at least one of a cloud server (20) and a control unit provided in the robot itself, and can be configured to drive within a building (1000) or provide a service corresponding to an assigned task.
[0072] Furthermore, as illustrated in (c) of FIG. 1, a building according to the present invention is a building in which robots and people coexist, and the robots are configured to avoid obstacles such as people (U), objects used by people (e.g., baby strollers, carts, etc.), and animals while driving, and in some cases, may be configured to output notification information (3) related to the driving of the robot. Such driving of the robot may be performed to avoid obstacles based on at least one of a cloud server (20) and a control unit equipped in the robot. The cloud server (20) may control the robot so that the robot avoids obstacles and moves within the building (1000) based on information received through various sensors equipped in the robot (e.g., a camera (image sensor), a proximity sensor, an infrared sensor, etc.).
[0073] In addition, a robot that moves inside a building through the processes of (a) to (c) of FIG. 1 can be configured to provide a service to a person or target object existing inside the building, as shown in (d) of FIG. 1.
[0074] The types of services provided by robots can vary from robot to robot. In other words, robots can exist in various types for different purposes, have different structures for each purpose, and can be equipped with programs appropriate for each purpose.
[0075] For example, a building (1000) may be equipped with robots that provide at least one of the following services: delivery, logistics, guidance, interpretation, parking assistance, security, crime prevention, guarding, public order, cleaning, quarantine, disinfection, laundry, beverage preparation, food preparation, serving, fire suppression, medical assistance, and entertainment. The services provided by the robots may vary in addition to the examples listed above.
[0076] Meanwhile, the cloud server (20) can assign appropriate tasks to the robots by considering the purpose of each robot and control the robots so that the assigned tasks are performed.
[0077] At least some of the robots described in the present invention can drive or perform tasks under the control of a cloud server (20). In this case, the amount of data processed by the robot itself for driving or performing tasks can be minimized. In the present invention, such robots can be referred to as brainless robots. Such brainless robots can rely on the control of the cloud server (20) for at least a portion of their control when performing actions such as driving, performing tasks, charging, waiting, and cleaning within a building (1000).
[0078] However, in this specification, brainless robots are not named separately, but are all referred to as “robots.”
[0079] Providing diverse services using diverse robots requires maps for multiple robots and path planning for their movement to their destinations. In particular, the larger and more complex the space in which the robots must navigate, the more crucial it is to systematically construct a network of paths for the robots, similar to a road network, and plan optimal routes. Therefore, operating robots of various sizes in a single space requires robot map management that allows them to coexist. Therefore, the present invention proposes a method that designates drivable paths for each robot size and encourages human-friendly driving, enabling robots of various sizes to navigate optimally in complex spaces.
[0080] Hereinafter, a method and system for generating a movement path for a robot according to the present invention will be described in more detail with reference to the attached drawings. Fig. 12 is a conceptual diagram illustrating an embodiment of a robot that moves along a movement path according to the present invention. Fig. 13 is a conceptual diagram for explaining a system for generating a movement path for a robot according to the present invention, Fig. 14 is a flowchart for explaining a method for generating a movement path for a robot according to the present invention, and Figs. 15a, 15b, 16, 17, 18a, 18b, 19a, 19b, 20a, and 20b are conceptual diagrams for explaining a method for generating a movement path for a robot according to the present invention. Furthermore, Figs. 21a, 21b, and 21c are conceptual diagrams for explaining a method for setting a space in which a robot can move in a corridor.
[0081] Existing robot paths are generated based on the width that a type of robot can pass through, and provide paths that allow for passage in corridors based on principles such as right-hand traffic based on social norms. In the past, when creating a map, walls were created and then a path for the robot to pass through was created in the space between the walls as a reference. However, as illustrated in FIG. 12, in the present invention, a movement path that allows the robot (R) to move to a destination can be set based on the center line existing on the movement path and the recommended (or possible) width for the robot (R) to drive (or pass).
[0082] That is, in the present invention, by controlling the robot (R) to drive while maintaining a certain distance from the right wall (or the recommended distance from the wall), collisions between the robot and the wall can be prevented, and people can be naturally guided to pass by on the side with a wider distance from the wall. However, the driving path of the robot (R) is based on right-hand traffic, but if the width of the movement path is sufficiently wide, the recommended distance from the wall can be widened, or the robot can be controlled to move by giving priority to the shortest path rather than right-hand traffic.
[0083] Meanwhile, as illustrated in FIG. 12, a movement path generation system for a robot according to the present invention (hereinafter, robot movement path generation system, 300) receives robot information from each of a plurality of robots (R) placed in a building (1000), collects facility information of each facility infrastructure (200), and can provide a monitoring screen for monitoring the operating status of a plurality of robots (R) or a plurality of facility infrastructures (200) located in the building (1000).
[0084] The monitoring screen provided in the present invention can provide a visualization of a large amount of data in an intuitive and easily recognizable structure so that a user can monitor at a glance the operating status (hereinafter, referred to as “robot operating status”) of a plurality of robots (R) and a plurality of equipment infrastructures (200) placed on each of a plurality of floors (10a, 10b, 10c) of a building (1000).
[0085] Meanwhile, at least some of the functions performed in the robot movement path generation system (300) according to the present invention may correspond to the functions of a cloud server (20) or the functions of a building system (1000a).
[0086] If at least some of the functions performed in the robot movement path generation system (300) correspond to a function of the cloud server (20) or the building system (1000a), the function can be understood to be performed by the configuration of the cloud server (20) or the building system (1000a).
[0087] For example, the function of receiving robot information from each of a plurality of robots (R) placed within a building (1000) by the communication unit (310) of the robot movement path generation system (300) can be understood to be performed by a component of a cloud server (20) or a building system (1000a).
[0088] Furthermore, the robot movement path generation system (300) according to the present invention can be configured separately from the cloud server (20) and the building system (1000b).
[0089] In this case, the robot movement path generation system (300) according to the present invention may perform communication with at least one of the cloud server (20) and the building system (1000a) or use information stored in at least one of the server (20) and the building system (1000a) to provide a monitoring screen for the operating status of the robot (R).
[0090] Meanwhile, as illustrated in FIG. 12, the robot movement path generation system (300) according to the present invention may include at least one of a communication unit (310), a storage unit (320), a display unit (330), an input unit (340), and a control unit (350).
[0091] The communication unit (310) may be configured to communicate with at least one of i) various robots (R) placed within the building (1000), ii) various facility infrastructures (200) placed within the building (1000), iii) a cloud server (20), iv) a building system (1000b), v) an external server (not shown), and vi) a control server (not shown). For example, the communication unit (310) may be configured to transmit a control command for controlling the robot (R) to the robot (R) through communication with the robot (R).
[0092] For another example, the communication unit (310) can provide monitoring information of robots (R) to a remote control server (not shown). In the present invention, the control server (or system) is configured to control robots located within a building (1000), and can perform remote control of the robots (R) using the monitoring information provided by the robot movement path generation system (300) according to the present invention.
[0093] In addition, the communication unit (310) can receive robot (R) information from each of the plurality of robots (R) placed within the building (1000). In addition, the communication unit (310) can receive robot (R) information for each of the plurality of robots (R) placed within the building (1000) from the cloud server (20).
[0094] Here, “robot information” may include various information that can confirm the operating status of each robot (R). For example, the robot information may include at least one of: i) identification information of the robot (R) that transmitted the robot information (e.g., ID, serial number, etc.), ii) information on the task assigned to the robot (R), iii) status information of the robot (R), vi) location information of the robot (R), v) information related to the communication status of the robot (R), and vi) information related to the battery of the robot (R).
[0095] Furthermore, the communication unit (310) can collect facility information for each of the plurality of facility infrastructures (200) deployed within the building (1000). The communication unit (310) can receive facility information for each facility infrastructure from the facility control system (201a, 202a, 203a, 204a, …) of each facility infrastructure. In addition, the communication unit (310) can receive facility information for each facility infrastructure from the building system (1000a).
[0096] Here, “facility information” may include various information that can confirm the operating status of each facility infrastructure (200). For example, the facility information may include at least one of: i) identification information that can identify the facility infrastructure (200) (e.g., ID, serial number, etc.), ii) information on the function or type of the facility infrastructure (200), iii) status information of the facility infrastructure (200), vi) location information of the facility infrastructure (200), v) information related to the communication status of the facility infrastructure (200), and vi) information related to the battery of the facility infrastructure (200).
[0097] Furthermore, the communication unit (310) can support various communication methods according to the communication standards of the communicating device.
[0098] For example, the communication unit (110) may be configured to communicate with devices (including cloud servers) located inside and outside the building (1000) using at least one of WLAN (Wireless LAN), Wi-Fi (Wireless-Fidelity), Wi-Fi (Wireless Fidelity) Direct, DLNA (Digital Living Network Alliance), WiBro (Wireless Broadband), WiMAX (World Interoperability for Microwave Access), HSDPA (High Speed Downlink Packet Access), HSUPA (High Speed Uplink Packet Access), LTE (Long Term Evolution), LTE-A (Long Term Evolution-Advanced), 5G (5th Generation Mobile Telecommunication), Bluetooth™, RFID (Radio Frequency Identification), Infrared Data Association (IrDA), UWB (Ultra-Wideband), ZigBee, NFC (Near Field Communication), Wi-Fi Direct, and Wireless USB (Wireless Universal Serial Bus) technologies.
[0099] Meanwhile, the storage unit (320) may also be referred to as a database (DB) and may be configured to store various information related to the present invention. In the present invention, the storage unit (320) may be provided in the robot movement path generation system (300) itself. In addition, at least a part of the storage unit (320) may refer to at least one of a cloud server (20), a storage unit (140) of an external database and building system (1000a), and a storage unit (not shown) of a control server. That is, the storage unit (320) may be sufficient as long as it is a space where information required for the robot movement path generation system (300) according to the present invention is stored, and it may be understood that there are no restrictions on physical space. Hereinafter, the cloud server (or cloud storage, 20), the storage unit (140) of an external database and building system (1000a), and the storage unit (not shown) of the control server will not be separately distinguished, and will all be referred to as a storage unit (320).
[0100] The storage unit (320) can store robot (R) information received from each of a plurality of robots (R) and facility information for each of a plurality of facility infrastructures (200) placed within a building (1000).
[0101] Additionally, the storage unit (320) may store physical attribute information of the robot (R). For example, as illustrated in FIG. 15b, the physical attribute information may include at least one of i) size information (e.g., small, medium, large), ii) width information, iii) in-situ rotation diameter information, iv) recommended distance information from a wall, and v) recommended driving width (safety margin or safety zone) information for each of the plurality of robots (R1, R2, R3).
[0102] Furthermore, the storage unit (320) may store environmental information of a corridor specified according to a path plan. For example, as illustrated in FIG. 16, the environmental information of the corridor may include at least one of i) width information, ii) terrain information, iii) facility information, and iv) coordinate information for each of a plurality of corridors (610, 620, 630, 640, and 650).
[0103] Meanwhile, a map (or map information) of a space within a building (1000) may be stored in the storage unit (320). Here, the map of a space within the building (1000) may refer to a map that can be used to determine the current location of the robot (R) or to set a movement path of the robot (R).
[0104] In particular, in the robot movement path generation system (300) according to the present invention, the location of the robot (R) can be determined based on images received from the robot (R) or information received from the robot (R). To this end, the map of the space stored in the storage unit (320) can be composed of data that enables location estimation based on images or sensing information.
[0105] That is, the map of the space within the building (1000) stored in the storage unit (320) may correspond to a node map including multiple nodes.
[0106] The display unit (330) may be configured to output a monitoring screen for monitoring the operational status of multiple robots deployed within a building (1000). The display unit (330) may be provided in a device of an administrator who remotely manages the robot (R), and may be provided in a remote control server (or remote control room). Alternatively, the display unit (330) may be a display provided in a mobile device. As such, the present invention does not place any restrictions on the type of display unit.
[0107] The input unit (340) is for inputting information input from a user (or administrator), and the input unit (340) can serve as an intermediary between the user (or administrator) and the robot movement path generation system (300). More specifically, the input unit (340) can mean an input means for receiving information related to the robot (R) operation status monitoring system from the user.
[0108] At this time, there is no particular limitation on the type of input unit (340), and the input unit (340) may include at least one of a mechanical input means (or a mechanical key, for example, a mouse, a joystick, a physical button, a dome switch, a jog wheel, a jog switch, etc.) and a touch input means. As an example, the touch input means may be formed of a virtual key, a soft key, or a visual key displayed on a touch screen through software processing, or may be formed of a touch key placed on a part other than the touch screen.
[0109] Meanwhile, the virtual key or visual key may be displayed on the touch screen in various forms, and may be, for example, formed of graphics, text, icons, videos, or a combination thereof. In this case, if the input unit (340) includes a touch screen, the display unit (330) may be formed of a touch screen. In this case, the display unit (330) may perform both the role of outputting information and the role of receiving information.
[0110] Meanwhile, the control unit (350) may play a role in controlling the overall operation of the robot movement path generation system (300) related to the present invention. The control unit (350) may process signals, data, information, etc. input or output through the components discussed above, or may perform a series of data processing to provide or process appropriate information and functions to the user.
[0111] In the present invention, the control unit (350) may be used interchangeably with the cloud server (20). As described above, the cloud server (20) may perform integrated control for a plurality of robots (R) moving around a building (1000). The cloud server (20) may i) monitor a plurality of robots (R) located within the building (1000), ii) assign tasks (or work) to the plurality of robots (R), and iii) control the driving and behavior (operations) of the robots (R) so that the plurality of robots (R) successfully perform the tasks. Accordingly, the robot movement path generation system (300) according to the present invention may be understood as a part of the cloud server (20), and in particular, the robot movement path generation system (300) may be understood as data processing performed under the control of the cloud server (20).
[0112] In addition, the control unit (350) can use the node map to generate a movement path from a node corresponding to the current location of the robot (R) to another node corresponding to the destination. More specifically, the control unit (350) can specify at least one transit node that the robot (R) must pass through to reach the destination in order to perform a task. The control unit (350) can generate a movement path by connecting a starting node, a transit node, and a destination node. The control unit (350) can transmit a control command to the robot (R) so that the robot (R) moves according to the generated movement path.
[0113] Furthermore, the control unit (350) can provide an editing interface (or monitoring information) that can monitor the operating status of the robots (R) in the building (1000) at a glance by using at least some of the robot information received from each of the plurality of robots (R) deployed in the building (1000) and the facility information collected from the plurality of facility infrastructures (200).
[0114] In the present invention, a process of specifying the destination of a moving target robot can be performed based on a service request (S410. See Fig. 14).
[0115] In the present invention, the movement (or driving) of a robot located in a building (1000) can be controlled so that various services can be provided by the robot. The services provided by the robot may be diverse. For example, the services provided by the robot according to the present invention may include delivery, logistics work, guidance, interpretation, parking assistance, security, guarding, public order, cleaning, laundry, and serving.
[0116] The control unit (350) can receive a service request using a robot from a service server (not shown). The control unit (350) can specify a destination to which the robot must move in order to perform the requested service.
[0117] For example, based on an order for an item to be delivered by a robot being received by a service server (not shown), the control unit (350) may receive a robot delivery service request from the service server (not shown). Based on the service request, the control unit (350) may specify the location where the item to be loaded is located (e.g., a store selling the item) or the location where the recipient of the item is located as the robot's destination.
[0118] In the present invention, a process of checking physical attribute information of a robot can be performed based on the robot being moved to a destination being specified (S420, see FIG. 14).
[0119] The control unit (350) can specify at least one of a plurality of robots located in the building (1000) as the robot to be moved to the destination. The control unit (350) can assign a task corresponding to the service request to the specified robot. Furthermore, the control unit (350) can control the robot so that the robot moves to the destination and performs the task corresponding to the service.
[0120] The control unit (350) can check the physical property information of the robot from the database (20a) to move the robot to the destination. The physical property information of the robot may be diverse. For example, the physical property information of the robot may include at least one of the size of the robot (or size), the length of the robot, the width of the robot, the height of the robot, the volume of the robot, the weight of the robot, the thickness of the robot, and the turning circle diameter of the robot.
[0121] The control unit (350) can specify the robot as one of a plurality of types based on the physical attribute information of the robot. As illustrated in FIG. 15A, in the present invention, the robot type can be specified as one of the first type (“small”), the second type (“medium”), and the third type (“large”) based on the physical attribute information of the robot (particularly, at least one of the robot’s width and the robot’s rotational diameter in place).
[0122] More specifically, as illustrated in (a) of FIG. 15a, the first type of robot (R1) is a “small robot” having the smallest robot size among the plurality of robot types, and the control unit (350) can specify the moving target robot as a first type of robot if the physical attribute information of the moving target robot corresponds to at least one of the width (e.g., 40 cm or less, 511) and the rotation diameter in place (e.g., 40 cm or less, 521) of the robot matching the first type.
[0123] As illustrated in (b) of Fig. 15a, the second type robot (R2) can be understood as a “medium-sized robot” whose size is larger than the first type robot (R1) and smaller than the third type robot (R3) among the multiple robot types. The control unit (350) can specify the moving target robot as a second type robot if the physical attribute information of the moving target robot corresponds to at least one of the width (e.g., 60 cm or less, 511) and the rotation diameter in place (e.g., 80 cm or less, 522) of the robot matched to the second type.
[0124] Furthermore, as illustrated in (c) of Fig. 15a, the third type of robot (R3) can be understood as a “large robot” having the largest robot size among the plurality of robot types. The control unit (350) can specify the moving target robot as a third type of robot if the physical attribute information of the moving target robot corresponds to at least one of the width (e.g., 80 cm or less, 513) and the rotation diameter in place (e.g., 120 cm or less, 523) of the robot matching the third type.
[0125] In the present invention, a process of generating a path planning for the robot to move to the destination can be performed based on the physical property information of the robot (S430, see FIG. 14).
[0126] The building (1000) according to the present invention is equipped with a driving area in which a robot can move (or drive). The driving area of the robot is an area in which the robot can drive, allowing the robot to move from a specific area within the building (1000) to another area. For example, the area may include a corridor (500) as illustrated in FIG. 15b. For convenience of explanation, the driving area of the robot will be referred to as a corridor in the following description.
[0127] The control unit (350) can specify a corridor that the robot can pass through among a plurality of corridors provided in a space (10) within a building (1000) where the robot is located, based on at least one of the robot's physical property information and the corridor's environmental information. In addition, the control unit (350) can plan a movement path of the robot so that the robot moves along the specified corridor to the destination.
[0128] As illustrated in FIG. 16, the database (or cloud server) may store and exist environmental information of a corridor, including information (or width information) about the width of a plurality of corridors (e.g., corridor A to corridor E) arranged in a space (10) where a robot is located. More specifically, the database (or cloud server) may store and exist a map about a space (10) within a building (1000), as illustrated in FIG. 16 (a). In addition, as illustrated in FIG. 16 (b), the map may store and exist environmental information (600), including information about drivable corridors (610 to 650) and information (610a to 650b) about the width of the corridors, on which robots driving in the space (10) can drive. This environmental information (600) may further include not only information on the width of the corridors (610a to 650a), but also the corridor type of the corridors (straight type or curved type, 610b to 650b) and information on facilities located in the corridors (ex: gate, door, etc., 610c to 630c). In the present invention, a map creation interface (map creation tool or map editor) that can extract environmental information of corridors (corridor A to corridor E) located in a space (10) and store the extracted environmental information in a database (or cloud server) by converting it into data is provided, which will be described in more detail later.
[0129] The control unit (350) can specify a corridor that the robot can pass through as a corridor for generating a path for the robot, excluding corridors that the robot cannot pass through, based on the physical property information of the robot and the environmental information of the corridors.
[0130] There may be various methods for specifying a corridor that a robot can pass through. For example, as illustrated in FIG. 15b, the control unit (350) may specify a corridor that is wider than at least one of the robot's width (510), the robot's rotation diameter (520), and the robot's safety zone (or recommended driving width, 540) as a corridor that the robot can pass through.
[0131] As described above, the width (510) of the robot and the rotation diameter (520) of the robot may be stored in advance in the database (20a). The safety area (540) of the robot may be specified based on the physical property information of the robot. The control unit (350) may specify the recommended driving width (540) of the robot as being equal to or wider than at least one of the width (510) of the robot and the rotation diameter (520) of the robot. For example, if the width of the robot is “50 cm” and the rotation diameter of the robot is “60 cm,” the control unit (350) may specify the recommended driving width of the robot as being wider than the rotation diameter of “60 cm.”
[0132] Furthermore, the control unit (350) can specify the recommended driving width (540) of the robot based on the robot type of the target robot. As illustrated in FIG. 15a, the database (20a) may pre-define and exist the recommended driving widths (“60cm”, “90cm”, “120cm”, 541, 542, 543) of the robot for each robot type (R1, R2, R3). As described above, the control unit (350) can specify the target robot as one of the first to third types (R1, R2, R3) based on the physical attribute information of the robot. The control unit (350) can check the recommended driving width matching the robot type of the target robot and specify a corridor wider than the checked recommended driving width as a corridor that the robot can pass through.
[0133] Even if the destinations of the target robots are the same, the control unit (350) can specify different corridors through which the robots can pass, based on the physical properties of the target robots. Even if the same destination is specified, the control unit (350) can generate a path plan that includes different corridors based on at least one of the width of the target robot, the rotational diameter in place, and the robot's safety area.
[0134] For example, as illustrated in (a) of Fig. 17, let us assume that a path plan is generated to move a first type robot (R1) that is a “small robot” from a starting point where the robot is currently located to a destination (700). The robot width (e.g., “40 cm or less”, see reference numeral “511” in Fig. 15a), a rotation diameter in place (e.g., “40 cm or less”, see reference numeral “521” in Fig. 15a), and a safety zone (or recommended driving width, e.g., “60 cm”, see reference numeral “541” in Fig. 15a) of the first type robot (R1) are described. The control unit (350) can generate a path plan of the first type robot (R1) based on the widest safety zone (541). The control unit (350) can specify corridors A to E (the widths of corridors A to E are “150 cm”, “200 cm”, “100 cm”, “240 cm”, “250 cm”, see drawing reference numerals 610a to 650a in (b) of FIG. 16) having a width wider than the diameter of the safety zone of the first type robot (R1) as robots that the first type robot (R1) can pass through. In addition, the control unit (350) can connect at least some of the corridors that the first type robot can pass through to generate a path plan (ex: “corridor B -> corridor C -> corridor D, 710) to a destination.
[0135] For another example, as illustrated in (b) of FIG. 17, let us assume that a path plan is generated to move a third type robot (R3), which is a “large robot”, from a starting point where the robot is currently located to a destination (700). The robot width (e.g., “80 cm or less”, see reference numeral “513” in FIG. 15a), the rotation diameter in place (e.g., “120 cm or less”, see reference numeral “523” in FIG. 15a), and the safety zone (or recommended driving width, e.g., “60 cm”, see reference numeral “543” in FIG. 15a) of the third type robot (R3) are described. The control unit (350) can generate a path plan of the third type robot (R3) based on the widest safety zone (543). The control unit (350) can specify corridors A, B, D, and E, which have a width wider than 120 cm of the safety zone, as robots that the third type robot (R1) can pass through, excluding corridor C (the width of corridor C is “100 cm”, see reference numeral 630a in Fig. 16 (b)) which has a width narrower than “120 cm” of the safety zone of the third type robot (R3). In addition, the control unit (350) can connect at least some of the corridors that the third type robot can pass through to generate a path plan (ex: “corridor B -> corridor A -> corridor D, 720) to the destination.
[0136] In the present invention, a process of generating a movement path of a robot can be performed using environmental information of a corridor specified according to a path plan and physical property information of the robot (S440, see FIG. 14).
[0137] The control unit (350) can determine the driving position of the robot in a corridor specified according to the path plan and generate a movement path including the driving position. As illustrated in FIG. 15b, the corridor (500) in the present invention can include two side walls (walls, 500a, 500b) and a center point (center line, 500c) of the two side walls (500a, 500b). The control unit (350) can specify the driving position of the robot so that it drives in the corridor (500) while being located close to one side wall (500a) corresponding to the basic driving direction (e.g., right-hand driving) of the target robot to be moved.
[0138] The control unit (350) can determine the robot's driving position differently based on at least one of the robot's physical property information and the environmental information of the corridor in which the robot is driving. A method for determining the robot's driving position will be described in more detail below.
[0139] It is possible to determine how far the robot is to be controlled to move from a side wall (500a) corresponding to the basic direction of travel (i.e., the distance between the robot and the wall), and to control the robot to move horizontally (or shift) from the center point (500c) to this end.
[0140] The control unit (350) can control the robot to drive close to a wall on one side corresponding to the robot's basic driving direction (e.g., right-hand driving). To this end, the control unit (350) can determine a safe distance (a recommended distance between the wall and the robot) between the wall and the robot based on physical attribute information of the robot, and determine the robot's driving position based on the safe distance.
[0141] The control unit (350) can specify a safe distance between a wall and a robot in proportion to the width (or in-place rotation diameter) of the target robot. As illustrated in FIG. 15A, a database (or cloud server) according to the present invention may pre-define a safe distance between a wall and a robot (recommended distance between a wall and a robot, 531, 532, 533) for each robot type (R1, R2, R3). The control unit (350) can determine the driving position of the robot in the corridor based on the safe distance matched to the robot type of the target robot.
[0142] For example, as illustrated in (a) of FIG. 18, the control unit (350) can determine the driving position of the first type of robot (R1) as a position that is a first safety distance (e.g., “10 cm”, see reference numeral “531” in (a) of FIG. 15a) away from one side wall (800a). Then, the control unit (350) can generate a movement path (810) including the driving position so that the robot can drive along the corridor (800) while being positioned as close to one side wall (800a) as the first safety distance.
[0143] For another example, as illustrated in (b) of FIG. 18a, the control unit (350) can determine the driving position of the third type robot (R3) as a position that is a second safety distance (e.g., “20 cm”, see reference numeral “533” in (a) of FIG. 15a) away from one side wall (800a). Then, the control unit (350) can generate a movement path (810) including the driving position so that the robot can drive along the corridor (800) while being positioned as close to one side wall (800a) as the second safety distance.
[0144] Meanwhile, in the present invention, the plurality of corridors along which the robot drives may have different widths. As described above, the database (or cloud server (20)) may store environmental information (600) including information (610a to 650a) regarding the widths of the corridors. The control unit (350) may determine the driving position of the robot so that the robot drives close to one wall (800a) of the corridor (800) based on the environmental information of the corridors and the physical property information of the robot.
[0145] The control unit (350) can determine the driving position of the robot in the corridor specified according to the path plan by using the width of the corridor specified according to the path plan and the width of the robot. In this case, the control unit (350) can determine the driving position of the robot in the corridor specified according to the path plan by using the output value of a predefined driving position determination operation algorithm that takes the width of the corridor specified according to the path plan and the width of the robot as input values.
[0146] More specifically, the driving position calculation algorithm may be configured to derive a distance that the robot must move away from the center point (800c) of the corridor toward one side wall (800c) so that the robot is positioned close to the one side wall (800c). This driving position calculation algorithm may be configured to derive the distance between the center point (800c) of the corridor and the robot based on the width of the corridor and the width of the robot, and may be expressed as the following mathematical formula.
[0147] [Mathematical formula]
[0148]
[0149] Here, the "recommended driving width" of the robot can be understood as the diameter of the robot's safety zone (or safety margin). The control unit (350) can specify a distance equal to half the difference between the width of the corridor and the robot's recommended driving width.
[0150] The control unit (350) can determine the safety zone diameter of the robot based on at least one of the robot's width and its rotational rotation diameter. Furthermore, the control unit (350) can determine the robot type based on the robot's width and use the safety zone diameter matched to the robot type as an input value for the driving position calculation algorithm.
[0151] The control unit (350) can determine the driving position of the robot in the corridor using the output value of the driving position calculation algorithm. The control unit (350) can determine the position horizontally moved from the central point (800c) toward one wall (800a) by the output value (i.e., the separation distance) as the driving position of the robot.
[0152] In the present invention, at least one node may be assigned and present in the corridor along which the robot moves. The control unit (350) may specify the assigned node corresponding to the robot's driving position and generate the robot's movement path so as to include the specified nodes. The robot may move to the destination along the nodes included in the movement path while positioning itself closer to one of the corridor's side walls than the other.
[0153] Meanwhile, the control unit (350) can specify different driving positions of the robots in the same corridor based on the fact that the widths (or recommended driving widths) of the target robots to be moved are different even if the widths of the corridors are the same.
[0154] For example, as illustrated in (a) of Fig. 18b, the control unit (350) can derive the output value “70 cm” by using the recommended driving width of the first type robot (R1) as “60 cm” and the width of the corridor as “200 cm” as input values of the driving position calculation algorithm. The control unit (350) can specify the position horizontally moved by the output value “70 cm” from the center point (800c) toward one side wall (800a) as the driving position of the robot.
[0155] For another example, as illustrated in (b) of FIG. 18B, the control unit (350) can derive an output value of “40 cm” by using the recommended driving width of the third type robot (R3) as “120 cm” and the width of the corridor as “200 cm” as input values of the driving position calculation algorithm. The control unit (350) can specify a position horizontally moved by the output value of “40 cm” from the center point (800c) toward one side wall (800a) as the driving position of the robot, and can generate a movement path (840) for the third type robot (R3) to drive according to the driving position.
[0156] Furthermore, in the present invention, based on the fact that the widths of the corridors included in the path plan of a specific robot are different, the distance between the center point of each corridor and the robot can be calculated differently, and the driving position, which is the position where the robot must drive by moving horizontally toward one wall from the center point of each corridor according to the distance, can be differently specified.
[0157] The control unit (350) can determine the driving position of the robot in each corridor based on the width of each corridor included in the path plan of the robot.
[0158] For example, let's assume that the path plan of the first type robot (R1) is "corridor B-> corridor C-> corridor D->". The control unit (350) can calculate the distance that the robot should be separated from the center point of each corridor based on the width of each corridor B, corridor C, and corridor D, and can specify the location horizontally moved by the calculated distance as the driving location of the robot. As illustrated in FIG. 19a, in corridor B having a width of "200 cm", the control unit (350) can determine the driving location of the first type robot (R1) having a recommended driving width of "60 cm" as the location (911 to 914) horizontally moved by the first distance ("70 cm = 200 / 2-60 / 2") from the center point (900b) of corridor B. In a corridor C having a width of “100 cm”, the control unit (350) can determine the driving position of the first type robot (R1) having a recommended driving width of “60 cm” as a position (916 and 917) horizontally moved by a second distance (“20 cm = 100 / 2-60 / 2”) from the center point (900c) of the corridor C. Furthermore, in a corridor C having a width of “240 cm”, the control unit (350) can determine the driving position of the first type robot (R1) having a recommended driving width of “60 cm” as a position (919) horizontally moved by a third distance (“90 cm = 240 / 2-60 / 2”) from the center point (900d) of the corridor D.
[0159] For another example, let's assume that the path plan of the third type robot (R3) is "corridor B->corridor A->corridor D->". The control unit (350) can calculate the distance that the robot should be separated from the center point of each corridor based on the width of each corridor B, corridor A, and corridor D, and can specify a location horizontally moved by the calculated distance as the driving location of the robot. As illustrated in FIG. 19a, in corridor B having a width of "200 cm", the control unit (350) can determine the driving location of the third type robot (R3) having a recommended driving width of "120 cm" as a location (921) horizontally moved by the first distance ("40 cm = 200 / 2-120 / 2") from the center point (900b) of corridor B. In a corridor A having a width of “150 cm”, the control unit (350) can determine the driving position of the third type robot (R3) having a recommended driving width of “120 cm” as a position (923) horizontally moved by a second distance (“15 cm = 150 / 2-120 / 2”) from the center point (900a) of the corridor A. Furthermore, in a corridor D having a width of “240 cm”, the control unit (350) can determine the driving position of the third type robot (R3) having a recommended driving width of “120 cm” as a position (919) horizontally moved by a third distance (“60 cm = 240 / 2-120 / 2”) from the center point (900d) of the corridor D.
[0160] The control unit (350) can generate a movement path of the robot so that a node corresponding to the driving position of the robot is included among the nodes assigned to the corridor. The control unit (350) can specify a node corresponding to a position horizontally moved a certain distance from the center point (900a, 900b, 900c, 900d) of each corridor and can generate a movement path of the robot by connecting the specified nodes. In this way, the present invention can generate a movement path of the robot so that the robot can move safely while moving as close as possible to one wall of the corridor by taking into account the width of the robot and the width of the corridor.
[0161] Meanwhile, the movement path may include nodes assigned to correspond to the driving position of the robot corresponding to the horizontally moved position according to the output value of the driving position determination operation algorithm.
[0162] The robot (R) can move to a destination while positioning closer to one of the side walls (1001, 1002) located on the movement path along the nodes assigned based on the output value of the driving position determination operation algorithm. For example, as illustrated in FIG. 20A, the first type of robot (R1) can move to a destination while positioning closer to one of the side walls (1001, 1002) located on the movement path along the nodes assigned based on the output value of the driving position determination operation algorithm. As another example, the third type of robot (R3) can move to a destination while positioning closer to one of the side walls (1001, 1002) located on the movement path than the other, along the nodes assigned based on the output value of the driving position determination operation algorithm.
[0163] Meanwhile, if the path plan includes intersecting corridors, the travel path may be configured to include nodes assigned to points where the corridors intersect.
[0164] The control unit (350) can generate a movement path that includes nodes assigned to points where multiple corridors intersect, based on the inclusion of intersecting corridors in the path plan. For example, let's assume that intersecting corridors exist in the path plans of a first type robot (R1) and a third type robot (R3). As illustrated in FIG. 20A, the control unit (350) can generate movement paths of the first type robot (R1) and the second type robot (R2) so as to include nodes assigned to points where multiple corridors intersect. The control unit (350) can control the first type robot (R1) and the third type robot (R3) to rotate (or switch) and move in a direction corresponding to the preset movement path, based on the nodes assigned to points where multiple corridors intersect.
[0165] For another example, the control unit (350) may select at least one of various movement paths (or corridors or passageways) that the robot (R) can move through at a node assigned to a point where multiple corridors intersect (e.g., a path that satisfies the shortest distance, minimum time, etc.), and control the robot (R) to move along the selected movement path.
[0166] Meanwhile, the space where the robot is located may include at least one facility. If a specific facility is included in the path plan, the movement path may include a facility node for passing through the specific facility.
[0167] The control unit (350) can generate a movement path that includes a facility node corresponding to a specific facility based on the inclusion of a specific facility in the path plan. For example, let's assume that a specific facility (e.g., a gate) exists in the path plans of a first type robot (R1) and a third type robot (R3). As illustrated in FIG. 20b, the control unit (350) can generate a movement path of the first type robot (R1) and the second type robot (R2) so that the facility node assigned to the point (1001) that includes the specific facility is included.
[0168] At this time, the facility node may be assigned to the central point of the passage through which the first type of robot (R1) and the third type of robot (R3) pass through a specific facility. That is, the point (1001) to which the facility node is assigned may be understood as the central point of the passage through which the robot (R) passes through a specific facility.
[0169] In this regard, if a facility node is included in the movement path of a robot (R) that runs along the nodes assigned based on the output value, the control unit (350) can control the robot (R) to move to the point where the facility node is assigned and use (or pass through) the specific facility. For example, as illustrated in FIG. 20b, if a specific facility (e.g., gate) is included in the movement path of a first type robot (R1) that runs close to one side wall (1001) along the nodes assigned based on the output value of the driving position determination operation algorithm, the control unit (350) can control the first type robot (R1) to move to the central point (1001) of the passage for passing through the specific facility. For another example, the control unit (350) may control the third type robot (R3) to move to the central point (1001) of the passage for passing through the specific facility when a specific facility (e.g., a gate) is included in the movement path of the third type robot (R3) that moves close to one side wall (1001) along the nodes assigned based on the output value of the driving position determination operation algorithm.
[0170] In the present invention, control commands related to the movement of the robot can be transmitted to the robot so that the robot moves along a movement path.
[0171] The control unit (350) can specify the driving position of the robot so that the robot drives close to one wall of the corridor when driving in the corridor, and can specify the driving position of the robot so that the robot passes through the center point of the intersection when turning (e.g., turning left or right at an intersection).
[0172] As illustrated in FIG. 19A, the control unit (350) can specify the corridor (corridor B-> corridor C-> corridor D) along which the first type robot (R1) will drive based on the width of the first type robot (R1). In addition, the control unit (350) can determine the driving positions (911 to 914, 916, 917, and 919) so that the first type robot (R1) drives close to one wall in the corridor, and can determine the driving positions (915 and 918) so that the first type robot (R1) passes through the center of the intersection at the intersection. The control unit (350) can generate a movement path of the robot so that nodes corresponding to the determined movement positions (911 to 919) are included, and can control the robot to move to the destination by sticking to the wall or passing through the center of the intersection according to the movement path.
[0173] Furthermore, as illustrated in FIG. 19b, the control unit (350) can specify a corridor (corridor B-> corridor A-> corridor D) that a third type robot (R3) having a wider width than a first type robot (R1) can pass through. The control unit (350) can determine driving positions (921, 923, 925, 926) so that the third type robot (R3) drives close to one wall in the corridor, and can determine driving positions (922 and 924) so that the robot passes through the center of the intersection at the intersection. The control unit (350) can generate a movement path of the robot so that nodes corresponding to the determined movement positions (921 and 926) are included, and can control the robot to move to the destination while sticking to the wall or passing through the center of the intersection, depending on the movement path.
[0174] Meanwhile, as described above, the database (or cloud server or storage) may store and exist information about the environment of the corridor, including information about the width (or width information) of a plurality of corridors (e.g., corridor A to corridor E) arranged in the space (10) where the robot is located.
[0175] In the present invention, a map creation interface (map creation tool or map editor) can be provided that can extract environmental information of corridors (corridor A to corridor E) located in a space (10), convert the extracted environmental information into data, and store it in a database (or cloud server).
[0176] The control unit (350) can set the space in which the robot can move on the corridor based on the center line of the corridor and the passable width.
[0177] The control unit (350) can set a space in the corridor where the robot can move through a preset input method. For example, the preset input method may be at least one of a preset number of touches (e.g., a touch or double touch) and drag and drop. However, the preset input method is not necessarily limited to this and may further include various input methods. Hereinafter, the above-described methods will be described without distinction.
[0178] The control unit (350) can designate a node corresponding to a starting point and a node corresponding to an ending point among a plurality of nodes included in a single recognizable straight corridor. For example, as illustrated in (a) of FIG. 21A, the control unit (350) can select a first node (1101) corresponding to the starting point of a first corridor (ex: “A”, 610), and then select a second node (1102) corresponding to the ending point of the first corridor (610). In this case, on the map (1100) where the first node (1101) and the second node (1102) are selected, an edge (Edge, 1103) connecting the first node (1101) and the second node (1102) included in the first corridor (610) can be displayed.
[0179] And, as illustrated in (b) of FIG. 21a, the control unit (350) can adjust the width of the first corridor (610) to widen in both directions, centered on the edge (1103) connecting the two end points of the first corridor (610) (the first node (1101) and the second node (1102)). For example, the width of the first corridor (610) displayed on the map (1100) can be related to the area (e.g., size, area, length, etc.) of the space in which the robot (R) can drive.
[0180] The control unit (350) can specify the environmental information of the first corridor (610) by considering the accumulated information (or magnification information) of the map (1100). For example, as illustrated in (a) and (b) of FIG. 16, the control unit (350) can specify at least one of i) width information (e.g., “150 cm”), ii) terrain information (e.g., “straight line”), iii) facility information (e.g., “Gate”), and iv) coordinate information of the first corridor (610), and update the environmental information of the first corridor (610) in the storage unit (320).
[0181] In addition, the control unit (350) can designate a node corresponding to a starting point and a node corresponding to an ending point among a plurality of nodes included in a corridor other than the first corridor (610). For example, as illustrated in (c) of FIG. 21A, the control unit (350) can select a first node (1111) corresponding to a starting point of a second corridor (ex: “B”, 620), and then select a second node (1112) corresponding to an ending point of the second corridor (620). In this case, on the map (1100) where the first node (1111) and the second node (1112) are selected, an edge (1113) connecting the first node (1111) and the second node (1112) included in the second corridor (620) can be displayed.
[0182] And, as illustrated in (d) of FIG. 21a, the control unit (350) can adjust the width of the second corridor (620) to widen in both directions, centered on the edge (1113) connecting the two end points of the second corridor (620) (the first node (1111) and the second node (1112)). For example, the width of the second corridor (620) displayed on the map (1100) can be related to the area (e.g., size, area, length, etc.) of the space in which the robot (R) can drive.
[0183] At this time, referring again to (c) of FIG. 21a, the point where the first corridor (610) and the second corridor (620) intersect (for example, the point where the edge (1103) of the first corridor (610) and the edge (1113) of the second corridor (620) meet) may include an intersection node (1114) allocated to a point where multiple corridors intersect. For example, when the robot (R) arrives at the intersection node (1114), the control unit (350) may control the robot (R) to change and move in a direction corresponding to a preset movement path, or select at least one of various movement paths (or corridors or passageways) that can move from the intersection node (for example, a path that satisfies the shortest distance, minimum time, etc.) and control the robot (R) to move along the selected movement path.
[0184] Furthermore, the control unit (350) can specify the environmental information of the second corridor (620) by considering the accumulated information (or magnification information) of the map (1100). For example, as illustrated in (a) and (b) of FIG. 16, the control unit (350) can specify at least one of i) width information (e.g., “200 cm”), ii) terrain information (e.g., “straight line”), iii) facility information (e.g., “Gate”), and iv) coordinate information of the second corridor (620), and update the environmental information of the second corridor (620) in the storage unit (320).
[0185] Meanwhile, the control unit (350) can more easily set the space through which the robot can pass, even if the topographic information of the corridor is a curve (or curve) rather than a straight line.
[0186] The control unit (350) can designate a node corresponding to a starting point and a node corresponding to an ending point among a plurality of nodes included in a curved corridor. For example, as illustrated in (a) of FIG. 21B, the control unit (350) can select a first node (1121) corresponding to a starting point of a fifth corridor (ex: “E”, 650) having curved topographic information, and then select a second node (1122) corresponding to an ending point of the fifth corridor (650). In this case, on the map (1100) where the first node (1121) and the second node (1122) are selected, an edge (1123) connecting the first node (1121) and the second node (1122) included in the fifth corridor (620) can be displayed.
[0187] At this time, as illustrated in (b) of FIG. 21b, the control unit (350) can add curve section points (1124, 1125) to points corresponding to the curve section of the fifth corridor (650), thereby modifying the edge (1123) having a straight shape to have a curved shape corresponding to the topographic information of the fifth corridor (650).
[0188] And, as illustrated in (c) of FIG. 21b, the control unit (350) can adjust the width of the fifth corridor (650) to widen in both directions, centered on the edge (1123) connecting the two end points (the first node (1121) and the second node (1122)) of the fifth corridor (650). For example, the width of the fifth corridor (650) displayed on the map (1100) can be related to the area (e.g., size, area, length, etc.) of the space in which the robot (R) can drive.
[0189] Furthermore, the control unit (350) can specify the environmental information of the fifth corridor (650) by considering the accumulated information (or magnification information) of the map (1100). For example, as illustrated in (a) and (b) of FIG. 16, the control unit (350) can specify at least one of i) width information (e.g., “250 cm”), ii) terrain information (e.g., “curve”), iii) facility information, and iv) coordinate information of the fifth corridor (650), and update the environmental information of the fifth corridor (650) in the storage unit (320).
[0190] Meanwhile, the control unit (350) can set an area (or space) through which the robot can pass in various spaces other than spaces having a direction such as a hallway.
[0191] For example, as illustrated in (a) of Fig. 21c, in the case of a space such as a plaza (or hall) other than a space having a direction such as a hallway, the control unit (350) can set a space through which the robot can pass by specifying an area of the corresponding attribute (a plaza attribute) (e.g., drawing a rectangle with a start point and an end point and then modifying the points).
[0192] Meanwhile, various spaces within the building (1000) may include at least one facility.
[0193] The control unit (350) can assign a facility node corresponding to a specific facility (e.g., a door, a gate, an elevator, etc.) to a specific point (e.g., a central point) in a space where the robot can move. In this case, the facility node can be assigned to the central point of a passage through which the robot (R) passes through the specific facility. For example, as illustrated in (b) of FIG. 21c, the control unit (350) can assign a facility node (631) having an attribute corresponding to a specific facility to the central point of the passage, and can adjust the width of the designated point by designating a point including the facility node (631).
[0194] Through this, the server (20) according to the present invention stores a map of a space existing within a building (1000), and the map can be configured to include information on drivable corridors and the width of the drivable corridors through which robots (R) that drive within the space can drive.
[0195] Meanwhile, the present invention discussed above can be implemented as a program that is executed by one or more processes on a computer and can be stored on a medium (or recording medium) that can be read by the computer.
[0196] Furthermore, the present invention discussed above can be implemented as computer-readable code or instructions on a program-recorded medium. In other words, the present invention can be provided in the form of a program.
[0197] Meanwhile, computer-readable media include all types of recording devices that store data that can be read by a computer system. Examples of computer-readable media include hard disk drives (HDDs), solid-state disk drives (SSDs), silicon disk drives (SDDs), ROMs, RAMs, CD-ROMs, magnetic tapes, floppy disks, and optical data storage devices.
[0198] Furthermore, the computer-readable medium may include a storage device and may be a server or cloud storage device accessible via communication. In this case, the computer may download the program according to the present invention from the server or cloud storage device via wired or wireless communication.
[0199] Furthermore, in the present invention, the computer described above is an electronic device equipped with a processor, i.e., a CPU (Central Processing Unit), and there is no particular limitation on its type.
[0200] Meanwhile, the above detailed description should not be construed as limiting in any respect and should be considered illustrative. The scope of the present invention should be determined by a reasonable interpretation of the appended claims, and all modifications within the equivalent scope of the present invention are intended to be included within the scope of the present invention.
Claims
1. A step in which the destination of the moving target robot is specified based on a service request; A step of confirming physical attribute information of the robot based on the robot being specified to move to the destination; A step of generating a path planning for the robot to move to the destination based on the physical property information of the robot; A step of generating a movement path of the robot by using environmental information of the corridor specified according to the above path plan and physical property information of the robot; and A method for generating a movement path for a robot, comprising the step of transmitting a control command related to the movement of the robot to the robot so that the robot moves along the movement path.
2. In paragraph 1, The physical property information of the robot includes information on at least one of the length, width, height, and weight of the robot, The steps for generating the above route plan are: A step of specifying a corridor through which the robot can pass based on the physical property information of the robot, A method for generating a movement path for a robot, characterized in that a corridor specified according to the above path plan is configured to have a width wider than the width of the robot so that the robot can pass through it.
3. In paragraph 2, In the step of creating the above path planning, A method for generating a movement path for a robot, characterized in that a path plan including different corridors is generated depending on the width of the robot, even if the destination is the same.
4. In paragraph 2, In the step of generating the above route plan, A method for generating a movement path for a robot, characterized in that among the corridors included in the space where the robot is located, corridors that the robot cannot pass through are excluded based on the width of the robot.
5. In paragraph 2, The above environmental information includes information on the width of the corridor specified according to the above path plan, In the step of generating the above movement path, A method for generating a movement path for a robot, characterized in that the driving position of the robot in a corridor specified according to the path plan is determined by using the width of the corridor specified according to the path plan and the width of the robot.
6. In paragraph 5, In the step of generating the above movement path, A method for generating a movement path for a robot, characterized in that the driving position of the robot in a corridor specified according to the path plan is determined by using the output value of a predefined driving position determination operation algorithm that takes as input values the width of the corridor specified according to the path plan and the width of the robot.
7. In paragraph 6, In the step of generating the above movement path, A method for generating a movement path for a robot, characterized in that a position horizontally moved by the output value of the movement position determination algorithm toward one of the two side walls from the center point of the two side walls of the corridor specified according to the above-mentioned path plan is determined as the movement position of the robot.
8. In paragraph 7, A method for generating a movement path for a robot, wherein the above-mentioned one side wall corresponds to one side wall corresponding to a basic movement direction of the robot defined among the two side walls.
9. In paragraph 8, In the step of generating the above movement path, A method for generating a movement path for a robot, characterized in that the movement path includes a driving position of the robot in a corridor specified according to the path plan, such that the robot moves away from the central point and closer to one of the side walls.
10. In paragraph 7, The above driving position determination operation algorithm is configured to output different output values depending on the width of the robot. A method for generating a movement path for a robot, wherein the degree of horizontal movement from the central point is different depending on the width of the robot.
11. In paragraph 7, The above movement path is, Includes nodes allocated to correspond to the driving position of the robot corresponding to the horizontally moved position according to the above output value, A method for generating a movement path for a robot, characterized in that the robot moves to the destination while being positioned closer to one of the side walls than to the other side wall along the nodes.
12. In paragraph 11, The space where the above robot is located includes at least one facility, If the above route plan includes a specific facility, the above travel route includes a facility node for passing through the specific facility, The above equipment node is, A method for generating a movement path for a robot, characterized in that the robot is assigned to a central point of a passage passing through the specific facility.
13. In paragraph 11, If the above route plan includes intersecting corridors, A method for generating a movement path for a robot, wherein the movement path is configured to include nodes assigned to points where the corridors intersect.
14. In paragraph 1, On the server, a map of the space where the robot is located is stored and exists. The above map includes information about drivable corridors that robots driving in the space can drive through and the width of the drivable corridors. In the step of generating the above route plan, A method for generating a movement path for a robot, characterized in that the method plans a movement path to the destination consisting of corridors that the robot can pass through by using information about the width of the drivable corridors included in the map.
15. In a system for generating a movement path for a robot, The above system, Based on the service request, the destination of the moving target robot is specified, Based on the robot being specified to move to the destination, the physical attribute information of the robot is verified, Based on the physical property information of the robot, a path plan is generated for the robot to move to the destination, By using the environmental information of the corridor specified according to the above path plan and the physical property information of the robot, the movement path of the robot is generated. A movement path generation system for a robot, characterized in that it transmits control commands related to the movement of the robot to the robot so that the robot moves along the movement path.
16. A program that is executed by one or more processes in an electronic device and stored in a computer-readable recording medium, The above program is, A step in which the destination of the moving target robot is specified based on the service request; A step of confirming physical attribute information of the robot based on the robot being specified to move to the destination; A step of generating a path planning for the robot to move to the destination based on the physical property information of the robot; A step of generating a movement path of the robot by using environmental information of the corridor specified according to the above path plan and physical property information of the robot; and A program stored on a computer-readable recording medium, characterized in that it includes commands for causing the robot to perform a step of transmitting control commands related to the movement of the robot to the robot so that the robot moves along the movement path.
17. In a building containing an indoor space where a robot moves, The above building, Including a corridor in which the above robot runs, The system for controlling the robot that runs through the building is: Based on the service request, the destination of the moving target robot is specified, Based on the robot being specified to move to the destination, the physical attribute information of the robot is checked, Based on the physical property information of the robot, a path planning is generated for the robot to move to the destination. By using the environmental information of the corridor specified according to the above path plan and the physical property information of the robot, the movement path of the robot is generated. The above robot, A building characterized by driving the building along the above-mentioned movement path.