WO2023249385A1 - 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템 - Google Patents
로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템 Download PDFInfo
- Publication number
- WO2023249385A1 WO2023249385A1 PCT/KR2023/008554 KR2023008554W WO2023249385A1 WO 2023249385 A1 WO2023249385 A1 WO 2023249385A1 KR 2023008554 W KR2023008554 W KR 2023008554W WO 2023249385 A1 WO2023249385 A1 WO 2023249385A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- map
- node
- specific
- information
- robot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/24—Arrangements for determining position or orientation
- G05D1/246—Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM]
- G05D1/2465—Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM] using a 3D model of the environment
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/006—Controls for manipulators by means of a wireless system for controlling one or several manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Program-controlled manipulators
- B25J9/16—Program controls
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Program-controlled manipulators
- B25J9/16—Program controls
- B25J9/1656—Program controls characterised by programming, planning systems for manipulators
- B25J9/1664—Program controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- E—FIXED CONSTRUCTIONS
- E04—BUILDING
- E04H—BUILDINGS OR LIKE STRUCTURES FOR PARTICULAR PURPOSES; SWIMMING OR SPLASH BATHS OR POOLS; MASTS; FENCING; TENTS OR CANOPIES, IN GENERAL
- E04H1/00—Buildings or groups of buildings for dwelling or office purposes; General layout, e.g. modular co-ordination or staggered storeys
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
- G01C21/206—Instruments for performing navigational calculations specially adapted for indoor navigation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3807—Creation or updating of map data characterised by the type of data
- G01C21/3811—Point data, e.g. Point of Interest [POI]
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3807—Creation or updating of map data characterised by the type of data
- G01C21/383—Indoor data
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3841—Data obtained from two or more sources, e.g. probe vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3863—Structures of map data
- G01C21/387—Organisation of map data, e.g. version management or database structures
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/22—Command input arrangements
- G05D1/221—Remote-control arrangements
- G05D1/222—Remote-control arrangements operated by humans
- G05D1/224—Output arrangements on the remote controller, e.g. displays, haptics or speakers
- G05D1/2244—Optic
- G05D1/2245—Optic providing the operator with a purely computer-generated representation of the environment of the vehicle, e.g. virtual reality
- G05D1/2246—Optic providing the operator with a purely computer-generated representation of the environment of the vehicle, e.g. virtual reality displaying a map of the environment
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/24—Arrangements for determining position or orientation
- G05D1/246—Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM]
- G05D1/2469—Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM] using a topologic or simplified map
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/40—Control within particular dimensions
- G05D1/43—Control of position or course in two dimensions [2D]
- G05D1/435—Control of position or course in two dimensions [2D] resulting in a change of level, e.g. negotiating lifts or stairs
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/60—Intended control result
- G05D1/617—Safety or protection, e.g. defining protection zones around obstacles or avoiding hazards
- G05D1/622—Obstacle avoidance
- G05D1/637—Obstacle avoidance using safety zones of adjustable size or shape
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/60—Intended control result
- G05D1/69—Coordinated control of the position or course of two or more vehicles
- G05D1/698—Control allocation
- G05D1/6987—Control allocation by centralised control off-board any of the vehicles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2105/00—Specific applications of the controlled vehicles
- G05D2105/30—Specific applications of the controlled vehicles for social or care-giving applications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2107/00—Specific environments of the controlled vehicles
- G05D2107/60—Open buildings, e.g. offices, hospitals, shopping areas or universities
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2109/00—Types of controlled vehicles
- G05D2109/10—Land vehicles
Definitions
- the present invention relates to a map creation method and system for robot operation that allows robots providing services within a building to conveniently and efficiently create maps that can be used to plan global and local movement routes. .
- robots have reached a level where they can safely coexist with humans in indoor spaces.
- robots have been replacing human tasks or tasks, and in particular, various methods for robots to directly provide services to people in indoor spaces are being actively researched.
- robots are providing navigation services in public places such as airports, stations, and department stores, and robots are providing serving services in restaurants.
- delivery services are being provided in office spaces and communal living spaces, where robots deliver mail and parcels.
- robots provide a variety of services such as cleaning services, crime prevention services, and logistics processing services.
- the type and scope of services provided by robots are expected to increase exponentially in the future, and the level of service provision is also expected to continue to develop.
- robots provide various services not only in outdoor spaces, but also in indoor spaces of buildings (or buildings) such as offices, apartments, department stores, schools, hospitals, amusement facilities, etc.
- buildings or buildings
- robots provide various services in the buildings. It is controlled to move around the indoor space and provide various services.
- the map used to plan the global and local movement paths of the robots reflects the characteristics and situations of the actual area within the building. Therefore, it is most important to write it accurately.
- the map generation method and system for robot operation according to the present invention are intended to provide a method of generating a map used for robot operation step by step from sensing information of the space within a building and a user environment for this.
- map generation method and system for robot operation are intended to provide a method for accurately and correctly placing nodes on a map based on the characteristics of space within a building and a user environment for this.
- map generation method and system for robot operation according to the present invention are intended to provide a user environment in which users can conveniently and efficiently place nodes on the map according to node rules.
- the robot-friendly building according to the present invention uses a cloud system that works with multiple robots to organically control multiple robots and facility infrastructure, thereby managing the movement of robots that provide services more systematically. .
- the robot-friendly building according to the present invention can provide various services to people more safely, quickly, and accurately.
- the map generation method includes receiving a request to edit a map for a specific floor among a plurality of floors of a building, and in response to the edit request, corresponding to the specific floor on a display unit of an electronic device.
- the map generation system includes a communication unit that receives a request to edit a map for a specific floor among a plurality of floors of a building, and in response to the edit request, a display unit of an electronic device, on the specific floor. and a control unit providing an editing interface including at least a portion of a specific map corresponding to the specific map, wherein the control unit provides at least one device that can be allocated on the specific map based on a node rule corresponding to the spatial characteristics of the specific layer.
- a node arrangement process may be performed to specify a node group and arrange the nodes included in the node group on the specific map.
- the program executed by one or more processes in an electronic device and stored in a computer-readable recording medium, includes receiving a request to edit a map for a specific floor among a plurality of floors of a building, the edit request In response, providing an editing interface including at least a portion of a specific map corresponding to the specific floor on a display unit of the electronic device; Specifying at least one node group that can be allocated on the specific map based on a node rule corresponding to the spatial characteristics of the specific layer; and instructions for performing a node placement process so that nodes included in the node group are placed on the specific map.
- a building where a plurality of robots according to the present invention provide services includes a plurality of floors having an indoor space where the robots coexist with people, and a communication unit that performs communication between the robots and the cloud server.
- the cloud server performs control on the robots traveling around the building based on a building map generated through an editing interface, and the building map is configured to determine a specific level among a plurality of floors of the building.
- Receiving a request to edit a map for a floor in response to the edit request, providing an editing interface including at least a portion of a specific map corresponding to the specific floor on a display unit of an electronic device, Specifying at least one node group that can be allocated on the specific map based on a node rule corresponding to the spatial characteristics of the specific layer, and arranging nodes so that nodes included in the node group are placed on the specific map. It is created through the step of performing a process, and in the cloud server, the specific map on which the nodes are placed can be updated so that the robots travel on the specific floor according to the nodes placed on the specific map.
- the map generation method and system for robot operation according to the present invention is, in response to receiving a request to edit a map for a specific floor among a plurality of floors of a building, on the display unit of an electronic device, to the specific floor.
- An editing interface containing at least part of a corresponding specific map may be provided.
- the map generation method and system for robot operation specifies at least one node group that can be assigned on a specific map based on a node rule corresponding to the spatial characteristics of a specific floor, and the specified node group A node deployment process can be performed so that the nodes included in are deployed.
- the present invention can accurately and quickly reflect the spatial characteristics of a specific floor to create a map for safe driving of the robot.
- the map generation method and system for robot operation provides a user interface that can allocate nodes on a specific map based on node rules corresponding to the spatial characteristics of a specific floor, so that unskilled users You can also create a map by accurately and quickly reflecting the spatial characteristics of a specific floor.
- the robot-friendly building according to the present invention uses technological convergence where robots, autonomous driving, AI, and cloud technologies are converged and connected, and these technologies, robots, and facility infrastructure provided in the building are organically connected. It can provide a new space that combines.
- the robot-friendly building according to the present invention uses a cloud server that interfaces with multiple robots to organically control multiple robots and facility infrastructure, thereby systematically managing the running of robots that provide services more systematically. You can. Through this, the robot-friendly building according to the present invention can provide various services to people more safely, quickly, and accurately.
- the tasks and movement situations assigned to the multiple robots placed in the building are taken into consideration as well as the running is controlled to take people into consideration, allowing robots and people to naturally coexist in the same space.
- Figures 1, 2, and 3 are conceptual diagrams for explaining a robot-friendly building according to the present invention.
- Figures 4, 5, and 6 are conceptual diagrams illustrating a system for controlling a robot traveling in a robot-friendly building and various facilities provided in the robot-friendly building according to the present invention.
- Figures 7 and 8 are conceptual diagrams for explaining the facility infrastructure provided in a robot-friendly building according to the present invention.
- 9 to 11 are conceptual diagrams for explaining a method of estimating the position of a robot traveling in a robot-friendly building according to the present invention.
- Figure 12 is a conceptual diagram illustrating a map generation system for robot operation according to the present invention.
- Figure 13 is a conceptual diagram for explaining the map created in the present invention.
- Figure 14 is a flowchart illustrating a method for generating a map for robot operation according to the present invention.
- Figures 15a, 15b, and 16 are conceptual diagrams for explaining the editing interface provided by the present invention.
- Figures 17a, 17b, 17c, and 17d are conceptual diagrams for explaining a node group according to the node rule in the present invention.
- Figures 18, 19a, 19b, and 20 are conceptual diagrams for explaining the node placement process according to the present invention.
- FIGS. 21A, 21B, 22, 23A, 23B, 24, and 25 are conceptual diagrams for explaining a method of generating a map using a point cloud technique in the present invention.
- Figures 26 and 27 are conceptual diagrams for explaining the inspection process according to the present invention.
- the present invention relates to a robot-friendly building, and proposes a robot-friendly building where people and robots can coexist safely and where robots can provide useful services within the building.
- the present invention provides a method of providing useful services to people using robots, robot-friendly infrastructure, and various systems that control them.
- people and multiple robots can coexist, and various infrastructures (or facility infrastructure) can be provided that allow multiple robots to move freely within the building.
- a building is a structure created for continuous residence, living, work, etc., and may have various forms such as commercial buildings, industrial buildings, institutional buildings, residential buildings, etc. Additionally, the building may be a multi-story building with multiple floors and, oppositely, a single-story building. However, in the present invention, for convenience of explanation, infrastructure or facility infrastructure applied to a multi-story building is explained as an example.
- infrastructure or facility infrastructure is a facility provided in a building for the purpose of providing services, moving robots, maintaining functions, maintaining cleanliness, etc., and its types and forms can be very diverse.
- the infrastructure provided in a building can be diverse, such as mobile facilities (e.g., robot passageways, elevators, escalators, etc.), charging facilities, communication facilities, cleaning facilities, and structures (e.g., stairs, etc.). there is.
- mobile facilities e.g., robot passageways, elevators, escalators, etc.
- charging facilities e.g., communication facilities, cleaning facilities, and structures (e.g., stairs, etc.).
- these facilities are referred to as facilities, infrastructure, facility infrastructure, or facility infrastructure, and in some cases, the terms are used interchangeably.
- At least one of the building, various facility infrastructures, and robots provided in the building are controlled in conjunction with each other, so that the robot can safely and accurately provide various services within the building.
- the present invention allows multiple robots to run within a building, provide services according to missions (or tasks), and is equipped with various facility infrastructures that can support standby or charging functions, as well as repair and cleaning functions for robots, as needed.
- a building that is These buildings provide an integrated solution (or system) for robots, and the buildings according to the present invention may be named with various modifiers.
- the building according to the present invention includes: i) a building equipped with infrastructure used by robots, ii) a building equipped with robot-friendly infrastructure, iii) a robot-friendly building, iv) a building where robots and people live together, v) It can be expressed in various ways, such as a building that provides various services using robots.
- robot-friendly refers to a building where robots coexist, and more specifically, whether robots are allowed to drive, robots provide services, or facility infrastructure that robots can use is built. , This may mean that facility infrastructure that provides necessary functions for robots (ex: charging, repair, cleaning, etc.) has been established.
- robot-friendly can be used to mean having an integrated solution for the coexistence of robots and people.
- Figures 1, 2, and 3 are conceptual diagrams for explaining a robot-friendly building according to the present invention
- Figures 4, 5, and 6 show a robot driving a robot-friendly building and a robot-friendly building according to the present invention.
- Figures 7 and 8 are conceptual diagrams for explaining the facility infrastructure provided in a robot-friendly building according to the present invention.
- the building is assigned the reference numeral “1000,” and the space (indoor space or indoor area) of the building 1000 is assigned the reference numeral “10” (see FIG. 8). Furthermore, indoor spaces corresponding to a plurality of floors constituting the indoor space of the building 1000 are assigned reference numerals 10a, 10b, 10c, etc. (see FIG. 8).
- indoor space or indoor area refers to the inside of a building protected by an exterior wall as opposed to the outside of the building, and is not limited to meaning space.
- the robot is given the reference symbol “R,” and even if the robot is not given a reference number in the drawings or specifications, it can all be understood as a robot (R).
- a person or human being is given the reference symbol “U”, and a person or human being can be named as a dynamic object.
- the dynamic object does not necessarily mean only a person, but also an animal such as a dog or cat, or at least one other robot (e.g., the user's personal robot, a robot that provides another service, etc.), a drone, or a vacuum cleaner (e.g. For example, it can be taken to mean including objects that can move, such as a robot vacuum cleaner).
- the building (building, structure, edifice, 1000) described in the present invention is not limited to a particular type, and is a structure built for people to live, work, raise animals, or store goods. It can mean.
- the building 1000 may be an office, an officetel, an apartment, a residential-commercial complex, a house, a school, a hospital, a restaurant, a government office, etc., and the present invention can be applied to these various types of buildings.
- a robot can run in the building 1000 according to the present invention and provide various services.
- One or more robots of different types may be located in the building 1000, and these robots drive within the building 1000, provide services, and operate the building (1000) under the control of the server 20. You can use the various facility infrastructure provided by 1000).
- the location of the server 20 may exist in various ways.
- the server 20 may be located at least one of the inside of the building 1000 and the outside of the building 1000. That is, at least part of the server 20 may be located inside the building 1000, and the remaining part may be located outside the building 1000.
- the server 20 may be located entirely inside the building 1000 or may be located only outside the building 1000. Accordingly, in the present invention, no special limitation is placed on the specific location of the server 20.
- the server 20 is configured to use at least one of a cloud computing type server (cloud server, 21) and an edge computing type server (edge server, 22). You can. Furthermore, the server 20 can be applied to the present invention as long as it is a method capable of controlling a robot, in addition to cloud computing or edge computing.
- the server 20 combines the server 21 of the cloud computing method and the edge computing method to use the server 20 among the robots and facility infrastructure provided in the building 1000. Control can be performed on at least one.
- the robot R can be driven according to control commands.
- the robot R can move its position or change its posture by changing its movement, and perform software updates.
- the servers 20 are collectively named “cloud servers” and are given the reference numeral “20”. Meanwhile, of course, the cloud server 20 can also be replaced by the term edge server 22 of edge computing.
- cloud server can be variously changed to terms such as cloud robot system, cloud system, cloud robot control system, and cloud control system.
- the cloud server 20 is capable of performing integrated control on a plurality of robots traveling around the building 1000. That is, the cloud server 20 monitors i) a plurality of robots (R) located in the building 1000, ii) assigns tasks (or tasks) to the plurality of robots, and iii) monitors the plurality of robots. (R) To successfully perform this mission, the facility infrastructure provided in the building 1000 can be directly controlled, or iv) the facility infrastructure can be controlled through communication with a control system that controls the facility infrastructure.
- the cloud server 20 can check the status information of robots located in the building and provide (or support) various functions necessary for the robots.
- various functions may exist, such as a charging function for robots, a cleaning function for contaminated robots, and a standby function for robots whose missions have been completed.
- the cloud server 20 can control the robots so that they use various facility infrastructure provided in the building 1000 in order to provide various functions to the robots. Furthermore, in order to provide various functions to robots, the cloud server can directly control the facility infrastructure provided in the building 1000 or allow the facility infrastructure to be controlled through communication with a control system that controls the facility infrastructure. there is.
- robots controlled by the cloud server 20 can drive around the building 1000 and provide various services.
- the cloud server 20 can perform various controls based on information stored in the database, and there is no particular limitation on the type and location of the database in the present invention.
- the term database can be freely modified and used as long as it refers to a means by which information is stored, such as memory, storage unit, repository, cloud storage, external storage, external server, etc.
- database can be freely modified and used as long as it refers to a means by which information is stored, such as memory, storage unit, repository, cloud storage, external storage, external server, etc.
- database can be freely modified and used as long as it refers to a means by which information is stored, such as memory, storage unit, repository, cloud storage, external storage, external server, etc.
- the explanation will be unified using the term “database.”
- the cloud server 20 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 robot.
- the cloud server 20 there may be subordinate sub servers of lower level concepts.
- the cloud server 20 can control a robot traveling around the building 1000 based on various artificial intelligence algorithms.
- the cloud server 20 performs artificial intelligence-based learning that utilizes the data collected in the process of controlling the robot as learning data, and uses this to control the robot, so that the more the robot is controlled, the more the robot becomes better. It can be operated accurately and efficiently. That is, 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 simulation, etc., and control the robot using the artificial intelligence model built as a result.
- the building 1000 may be equipped with various facility infrastructure for driving the robot, providing robot functions, maintaining robot functions, performing robot missions, or coexisting between robots and people.
- various facility infrastructures 1 and 2 that can support the driving (or movement) of the robot R may be provided within the building 1000.
- These facility infrastructures (1, 2) support the horizontal movement of the robot (R) within the floors of the building (1000) or the vertical direction to allow the robot (R) to move between different floors of the building (1000). Can support movement to .
- the facility infrastructure 1, 2 may be equipped with a transportation system that supports the movement of the robot.
- the cloud server 20 controls the robot R to use these various facility infrastructures 1 and 2, so that the robot R operates in a building (R) to provide services, as shown in (b) of FIG. 1. 1000) can be moved within.
- the robots according to the present invention can be controlled based on at least one of the cloud server 20 and the control unit provided in the robot itself to run within the building 1000 or provide services corresponding to the assigned mission. there is.
- the building according to the present invention is a building where robots and people coexist, and the robots are people (U) and objects used by people (e.g., strollers, carts, etc.) , it is made to drive while avoiding obstacles such as animals, and in some cases, it can be made to output notification information (3) related to the robot's driving.
- the robot may be driven to avoid obstacles based on at least one of the cloud server 20 and the control unit provided in the robot.
- the cloud server 20 allows the robot to avoid obstacles and move within the building 1000 based on information received through various sensors (e.g., cameras (image sensors), proximity sensors, infrared sensors, etc.) provided in the robot. You can control the robot to move.
- the robot that runs inside the building through the process of (a) to (c) of FIG. 1 is configured to provide services to people or target objects present in the building, as shown in (d) of FIG. 1. You can.
- the types of services provided by robots may be different for each robot.
- there may be various types of robots depending on the purpose the robots have different structures for each purpose, and the robots may be equipped with programs suitable for the purpose.
- building 1000 includes delivery, logistics work, guidance, interpretation, parking assistance, security, crime prevention, security, public order, cleaning, quarantine, disinfection, laundry, food production, food production, serving, and fire suppression.
- Robots that provide at least one of medical support and entertainment services may be deployed. The services provided by robots can vary beyond the examples listed above.
- the cloud server 20 can assign appropriate tasks to the robots, taking into account the purposes of each robot, and control the robots so that the assigned tasks are performed.
- At least some of the robots described in the present invention can drive or perform missions under the control of the cloud server 20, and in this case, the amount of data processed by the robot itself to drive or perform missions can be minimized. there is.
- a robot can be called a brainless robot.
- Such a brainless robot may rely on the control of the cloud server 20 for at least some control when performing activities such as driving, performing missions, performing charging, waiting, and washing within the building 1000.
- 9 to 11 are conceptual diagrams for explaining a method of estimating the position of a robot traveling in a robot-friendly building according to the present invention.
- the building according to the present invention it is possible to extract and monitor the location of the robot using various infrastructures provided in the building. Furthermore, the cloud server 20 monitors the location of the robot, making it possible to efficiently and accurately control the robot within the building.
- the map generation system 3000 for robot (R) operation provides a method of generating a map by accurately and correctly reflecting the characteristics and situations of spaces within the building 1000, and a user environment for this.
- “Map creation system”, “Map editing system”, “Map management system”, “Map creation editor (editor)”, “Map editing editor”, “Map management editor”, “Map editor”, “Editing editor” , “Edit editor”, etc. can be used interchangeably.
- the actual space (10) within the building (1000) is used so that the robot (R) located in the building (1000) moves safely and efficiently within the building (1000). It is very important to accurately and correctly create a map used for the operation and driving of the robot (R), reflecting the characteristics and situations of the robot (R).
- the present invention accurately reflects the spatial characteristics and situations within the building 1000, generates a specific map for a specific floor, and provides a method for allocating nodes to the specific map 1700 and a user environment for this. suggest a method
- FIG. 12 is a conceptual diagram illustrating a map generation system for robot operation according to the present invention.
- FIG. 13 is a conceptual diagram for explaining a map generated in the present invention
- FIG. 14 is a flowchart for explaining a map generating method for robot operation according to the present invention
- FIGS. 15A, 15B, and 16 are diagrams in the present invention. These are conceptual diagrams for explaining the provided editing interface
- FIGS. 17A, 17B, 17C, and 17D are conceptual diagrams for explaining a node group according to the node rule in the present invention
- FIGS. 26 and 27 are conceptual diagrams for explaining the inspection process according to the present invention.
- the map generation system 3000 for robot (R) operation may include at least one of a communication unit 310, a storage unit 320, and a control unit 330. .
- the communication unit 310 includes i) electronic devices 50, ii) cloud servers 20, iii) various robots (R) placed within the building 1000, iv) various facility infrastructures placed within the building 1000 ( 200) and v) building system 1000b.
- the electronic device 50 may be any electronic device capable of communicating with the map generation system 3000 for robot (R) operation according to the present invention, and there is no particular limitation on its type.
- the electronic device 50 includes a mobile phone, a smart phone, a laptop computer, a laptop computer, a slate PC, a tablet PC, and an ultrabook. (ultrabook), desktop computer, digital broadcasting terminal, PDA (personal digital assistants), PMP (portable multimedia player), navigation, wearable device (e.g., smartwatch), glass type Terminals (smart glass), HMD (head mounted display), etc. may be included.
- electronic devices can be used interchangeably with user terminals and user terminals.
- the robot (R) that scans the space while traveling within the building 1000 is referred to as a “sensing robot”, “scanning robot”, “mapping robot”, “autonomous driving robot”, “driving robot, etc.” It can be named in various ways, and the information obtained by the robot (R) by sensing (or scanning) the space can be named in various ways, such as “sensing information” and “scan information.”
- sensing space means taking an image of the space 10 within the building 1000 or obtaining information about an object located in the space 10 using at least one sensor. It can be understood as
- the communication unit 310 transmits information related to the editing interface 1600 to the electronic device 50 in order to output the editing interface 1600 for creating and editing a map on the display unit 51 of the electronic device 50. , and edit information related to node allocation on a specific map 1700 for a specific floor can be received from the electronic device 50.
- the information related to the editing interface 1600 includes all information provided to enable the user to perform various tasks related to map creation (map creation, map creation, map editing, etc.) through the editing interface 1600. It can be understood as doing so.
- the communication unit 310 sends the specific map to which the node is assigned to the cloud server 20 so that the robot R can drive within the building 1000 based on the specific map 1700 to which the node is assigned. You can update it by sending it.
- the storage unit 320 can be configured to store various information related to the present invention.
- the storage unit 320 may include spatial meta information about a specific floor among the plurality of floors in the building 1000.
- spatial meta information is various information reflecting the spatial characteristics of a specific floor, and may include, for example, a drawing reflecting the spatial characteristics of a specific floor.
- node rule information including node rules defined for each different spatial characteristic may exist in the storage unit 320.
- the node rule can be understood as information defining rules for which nodes of which attributes should be placed (or assigned) to which positions in the specific map 1700 in situations for different spatial characteristics.
- the node rules related to elevator facilities allocate transit nodes for entry and exit into the elevator to the entrance area of the elevator, and boarding waiting nodes for waiting to board the elevator to the left and right areas of the elevator entrance.
- the area in front of the entrance of the elevator may include rule information to allocate an alighting node for alighting from the elevator.
- the storage unit 320 may be provided in the map generation system 3000 itself for robot (R) operation.
- at least a portion of the storage unit 320 may refer to at least one of the cloud server 20, an external database, and the storage unit 140 of the building system 1000a.
- the storage unit 320 is sufficient as a space to store information necessary for creating a map according to the present invention, and there are no restrictions on physical space. Accordingly, hereinafter, the storage unit 320, the cloud server 210, the external database, and the storage unit 140 of the building system 1000a will not be separately distinguished, and all will be expressed as the storage unit 320.
- control unit 330 may be configured to control the overall operation of the map generation system 3000 for robot (R) operation according to the present invention.
- the control unit 330 can process signals, data, information, etc. input or output through the components discussed above, or provide or process appropriate information or functions to the user.
- the control unit 330 can accurately generate a specific map 1700 using the sensing information acquired while the robot (R) runs through the building 1000 and the spatial meta information stored in the storage unit 320. .
- control unit 330 accurately selects at least one node 1310, 1320, and 1330 on a specific map 1700 according to a node rule that matches the spatial characteristics of a specific layer. and can be deployed efficiently.
- control unit 330 allows the robot R to travel in a space (or a specific floor) within the building 1000 based on a specific map that accurately and correctly reflects the characteristics and situations of the space 10 within the building 1000. To do so, a specific map where nodes are placed according to node rules can be updated on the cloud server 20.
- the cloud server 20 can control a plurality of robots (R) providing services within the building.
- the cloud server 20 generates a global movement path and a regional movement path of the robot R based on a specific map corresponding to a specific space or a specific floor, and Control can be performed so that the robot (R) moves accordingly.
- the map used to control the robot (R) providing services within the building is created by accurately and correctly reflecting the characteristics and situations of the space (10), and the user
- An editing interface 1600 can be provided that allows you to easily and intuitively create or edit a map.
- At least one node is placed to reflect the spatial characteristics of a specific floor on a specific map 1700 for a specific floor so that the robot (R) can safely and accurately travel in the space 10 of a specific floor. can do.
- placing a node on a specific map 1700 can be understood as “placing a node graphic object corresponding to a node on a specific map 1700.”
- a node with the first node type is a travel node linked to the travel of the robots (R)
- a node with the second node type is an operation node corresponding to an operation node linked to the specific movement of the robots.
- a node having the third note type may mean a facility node corresponding to a facility node linked to a facility placed on a specific floor.
- Robots that provide services in the present invention can be configured to perform operations defined in nodes assigned to where the robots are located.
- An operation node can be understood as a node in which the robot (R), which moves to a specific node by traveling between nodes, is preset to perform an operation corresponding to a specific node. That is, since the operation node is a node that also plays the role of a travel node, it can be understood that the travel node in the present invention includes the operation node.
- a facility node is at least one of a specific point where a specific facility is located in the actual area (or target space) of a specific floor and a specific area that the robot must pass through in order to pass the specific facility (e.g., speed gate, elevator, etc.). It is assigned to an area corresponding to one. That is, when a robot uses a specific facility, the robot must move to at least some of the plurality of facility nodes corresponding to the specific facility.
- Nodes described below may be understood as including at least one of a travel node, an operation node, and a facility node.
- node information may correspond to each node.
- Node information may include at least two pieces of information.
- node information includes coordinate information.
- a single node specifies a specific coordinate or range of coordinates on the map.
- a node may be configured to designate a circular area with a certain area on a map.
- the coordinate information included in the node may consist of specific coordinates or coordinate ranges.
- node information includes facility information.
- Equipment information defines information related to equipment placed in the target space.
- the facility information may include at least one of the type of facility, information related to the server corresponding to the facility, and node information of the node corresponding to the location where the facility is located.
- a line connecting a node and a node different from the specific node may be named an edge or an edge graphic object.
- Edge information may correspond to (or match) the edge (or edge graphic object) for each edge.
- Edge information may include at least one of i) connection information connecting different nodes and ii) direction information defining the direction of movement of the robot R between the different nodes.
- connection information may include information about two different nodes connected to each other by an edge.
- connection information may include identification information for each of the first node and the second node connected by an edge.
- an edge or edge graphic object
- an edge may be output (or displayed) as a line (or a graphic object corresponding to the line) connecting the first node and the second node on a specific map.
- edge can also be understood to mean connection information.
- the direction information may include information defining whether the robot can move in only one direction or in both directions when the robot can move from one of the two nodes to the other.
- Edge information corresponding to an edge connecting the first node and the second node may include direction information defining unidirectional movement from the first node to the second node.
- Edge information corresponding to an edge connecting the first node and the second node may include direction information defining bidirectional movement between the first node and the second node.
- the direction information can be understood as meta information included in an edge (or edge graphic object).
- a specific map in the present invention may include at least one node mapped to a specific location and edges connecting different nodes.
- Each of the nodes may be matched with node information corresponding to each node, and the node information may include coordinate information and facility information of the node.
- Edge information corresponding to each edge may be matched to each of the edges, and the edge information may include connection information and direction information.
- connection information and direction information in the present invention can also be described as being included in node information. More specifically, if the connection information and direction information are included in edge information (or edge graphic object information) corresponding to an edge (or edge graphic object) connecting the first node and the second node, in the present invention , it can also be explained that the connection information and direction information are included in node information corresponding to each of the first node and the second node. That is, in the present invention, direction information described as being set in a specific node can be understood as direction information included in edges (or edge graphic objects) related to the specific node and other specific nodes.
- the target space on a specific floor may be divided into a plurality of zones.
- a specific map 1700 includes a plurality of areas. Each zone is assigned at least one node. Each zone is divided based on at least one node included in the zone.
- a zone can have two types depending on the type of node assigned to the zone. Specifically, the zone is composed of a first zone type zone that includes nodes assigned to an area corresponding to where the facility is located, and a second zone type zone that includes nodes assigned to an area that does not correspond to where the facility is located. You can.
- Only zones of the same type can be assigned to each of the first and second zone types. For example, only nodes of the first node type may be assigned to a zone of the first zone type, and only nodes of the second node type may be assigned to a zone of the second zone type.
- Each zone may be associated with zone information corresponding to the zone.
- the zone information may include at least one of the serial number and location information of each node included in the zone, connection information between nodes included in the zone, zone connection information between adjacent zones, and facility information.
- Zone connection information can be created for each zone adjacent to the zone.
- the zone connection information for the neighboring first zone and the second zone includes the node information of the first node located closest to the second zone among the nodes included in the first zone and the node information of the nodes included in the second zone. It may include node information of the second node located closest to the first zone. In other words, zone connection information defines the nodes that must be moved to move between zones.
- a process of receiving a map edit request for a specific floor among a plurality of floors of the building 1000 may be performed (S1410, see FIG. 14).
- the building 1000 in the present invention may be composed of multiple floors.
- the communication unit 310 may receive a map edit request for a specific floor among the plurality of floors forming the building 1000 from the electronic device 50.
- map editing can be understood as an operation to create or change a map (map or map information) for the space 10 within the building 1000.
- “editing a map for a specific floor among a plurality of floors” can be understood as an operation of creating or modifying a map (or map information) for a specific floor of the building 1000.
- a map edit request for the specific floor may be received from the electronic device 50 in various ways.
- a map edit request for the specific floor may be made while the monitoring screen 1400 is provided on the display unit of the electronic device 50, as shown in FIG. 15A.
- the monitoring screen 1400 is a screen that can monitor a plurality of robots (R) located in a building 1000 including a plurality of floors, i) a graphic object of the building 1000 corresponding to the building 1000 (1410), ii) a status graphic object 1420 containing status information of the robot (R) located on each floor, ii) a page (or screen) related to map management corresponding to one of the plurality of floors. It may include at least one of a linked specific area 1430 and vi) a graphic object 1440 corresponding to information related to the robot R located on the entire floor of the building 1000.
- the communication unit 310 may receive a map edit request for a specific floor.
- the communication unit 310 receives a map edit request for the 8th floor. can do.
- the communication unit 310 may receive a map edit request for a specific floor.
- the communication unit 310 receives a map edit request for the 8th floor. can do.
- the “state graphic object 1420” can be understood as a graphic object consisting of a visual appearance corresponding to the state information so that the state information of the robots (R) located on each of the plurality of floors in the building 1000 is displayed. there is.
- the state graphic object 1421 corresponding to the 8th floor corresponds to the visual appearance and second state information corresponding to the first state information of some robots (R) among the plurality of robots (R) located on the 8th floor. It can be achieved with a visual appearance.
- the user can intuitively recognize the status of the robots (R) on each of the plurality of floors in the building 1000 through the status graphic object 1420.
- the communication unit 310 based on a specific area (ex: “map management”, 1430) being selected on the display unit 51 of the electronic device 50, the communication unit 310 provides information about the specific floor. A map edit request can be received.
- control unit 330 selects a specific floor among a plurality of floors in the building on the display unit 51 of the electronic device 50.
- a screen that can receive input can be provided.
- control unit 330 may provide a map list (or map list 1500) on the display unit of the electronic device 50, as shown in FIG. 15B.
- the map list 1500 may include items 1510, 1520, and 1530 corresponding to at least one of a plurality of layers, and one area of the items 1510, 1520, and 1530 contains a layer corresponding to the item.
- a function icon for example, a “map creation function icon” or “map editing function icon” 1520a, 1530a
- the communication unit 310 receives a map for a specific floor corresponding to a specific item from the electronic device 50 based on a user input for a function icon included in an area of a specific item on the map list 1500. Edit requests can be received.
- control unit 330 may provide a pop-up containing a plurality of graphic objects including numbers corresponding to each of a plurality of layers on the display unit of the electronic device 50.
- the communication unit 310 may receive a map edit request for a specific floor from the electronic device 50 based on the graphic object corresponding to the specific floor being selected among the plurality of graphic objects.
- the method of receiving a map editing request for a specific floor described above corresponds to one embodiment, and the method of receiving a map editing request for a specific floor in the map creation system 3000 according to the present invention is as described above. There is no limitation in method.
- the editing interface 1600 performs settings for the first area 1610 containing at least a portion of the specific map 1700 corresponding to a specific layer and the specific map 1700. It may include at least one of the second areas 1620 including a function.
- the editing interface 1600 is a screen output on the display unit 51 of the electronic device 50 to provide the user with the ability to edit a specific map 1700, and is referred to as an “editing screen” , “Edit user graphical interface (GUI)”, “edit page”, etc.
- GUI graphical interface
- the first area 1610 is referred to as a “map area”. It can also be named as
- the specific map 1700 may be stored in the storage unit 320 along with the edit history for the specific map.
- the control unit 330 refers to the editing history and displays the editing interface 1600 containing the most recently updated specific map 1700 on the electronic device 50. It can be provided on the display unit of.
- the control unit 330 (130) generates the specific map updated based on the three edits based on the edit request for the map corresponding to the specific floor.
- An editing interface 1600 including 1700 may be provided on the display unit of the electronic device 50.
- a process of specifying at least one node group that can be allocated on a specific map can be performed based on the node rule corresponding to the spatial characteristics of a specific layer (S1420, see FIG. 14).
- the specific map 1700 for a specific floor and information on the characteristics of the space 10 constituting the specific floor (“spatial characteristics information”) may be matched and exist as matching information.
- the “characteristics of space” described in the present invention affect the operation and driving of the robot (R) by at least one of the structure of the space (10), the equipment arranged in the space (10), and the situation of the space (10). It can be understood as a factor related to various static obstacles that can be affected.
- spatial characteristic information is information defined by the characteristics of space.
- spatial characteristic information includes i) structural information (or spatial structure information) about the structure of the space 10, ii) space 10 ) may include equipment information about the equipment placed in the space, iii) situation information (or space situation information) about the situation of the space 10, etc.
- the structural information of the space 10 includes the walls, ceiling (roof), floor, stairs, pillars, doors, and objects (ex: desks, shelves, etc.) placed in the space 10 that make up the space 10. It can be understood as information related to the spatial structure of the space 10 formed by at least one.
- the equipment information about the equipment placed in the space 10 includes equipment characteristic information (ex: type information, type information, function information, etc.) and location information where the equipment is placed (ex: coordinate information, zone information, area information, etc.), and may include at least one of equipment identification information.
- the situation information about the situation of the space 10 includes information about whether it is possible to use (or drive) the space 10 (ex: whether movement is temporarily restricted, etc.), information existing in the space 10 It may include at least one of density information related to the density of robots or people, and information about events occurring in the space 10.
- the characteristics of the space 10 on a specific floor can also be understood as characteristics of static obstacles related to the space 10 on a specific floor.
- the static obstacle included in a specific floor is a room and equipment consisting of walls, doors, ceilings (roofs), floors, stairs, pillars, and the walls that make up the specific floor. It can contain at least one.
- the equipment is a facility provided in the building to provide services, move robots, maintain functions, maintain cleanliness, etc. within the building 1000, and its types and forms can be very diverse,
- an elevator configured to be usable by at least one of a robot and a person traveling on a specific floor (see reference numeral 204 in FIG. 2)
- an escalator see reference number 205 in FIG. 2)
- an entrance door or Access control gate
- robot movement path robot-only road and robot common road, (see reference numerals 201 and 202 in FIG.
- the characteristics of space described in the present invention can be understood as the characteristics of static obstacles related to space (e.g., type of obstacle, type of static obstacle, etc.).
- a specific map 1700 for a specific floor and at least one piece of spatial characteristic information for a specific floor may be matched with each other.
- rules are defined for which attribute nodes should be assigned (or placed) to which positions on the specific map 1700 in situations for different spatial characteristics in the space 10.
- Node rule information related to “node rule” may exist.
- the storage unit 320 may store node rule information in which types of static obstacles and node rules defined for each type of static obstacle are mapped to each other.
- the control unit 330 extracts a node rule that matches (or is mapped to) the spatial characteristics (ex: type of static obstacle) of a specific floor from the node rule information stored in the storage unit 320, and according to the extracted node rule, A node group in which at least one node is arranged can be specified.
- the “node group” may differ in at least one of the number of nodes, the arrangement form of the nodes, and the connection direction between nodes that defines the movement direction of the robot, depending on spatial characteristics.
- the control unit 330 determines at least one of the number of nodes related to the spatial characteristics, the arrangement form of the nodes, and the form of connection between nodes that define the direction of movement of the robot, according to the node rule matched to the spatial characteristic (ex: static obstacle type). You can decide.
- a plurality of nodes according to situations for different spatial characteristics may exist in one node group, based on node rules matched to spatial characteristics.
- 'specifying a node group' means specifying at least one of the number of nodes included in the node group, the arrangement type of the nodes, and the node connection direction according to the node rules, and the node is configured according to the rules. This may include checking the node group already stored in the storage unit 320.
- node groups may be configured differently for each different characteristic (ex: static obstacle type) included in the spatial characteristic information.
- static obstacle type included in the spatial characteristic information.
- FIGS. 17a, 17b, 17c, and 17d i) the characteristics of the space where the elevator equipment is placed (i.e., the type of static obstacle corresponds to the elevator equipment), ii) the space where the charging equipment is placed.
- characteristics i.e., the type of static obstacle corresponds to the charging facility
- characteristics of the space of the robot movement passage i.e., the type of static obstacle corresponds to the robot movement passage
- the space of the robot movement passage in the form of an intersection 10) characteristics (i.e., the type of static obstacle corresponds to the robot movement passage) and explain the node group formed based on the node rule for each.
- the elevator equipment may include at least one of a public elevator jointly used by people and the robot R and a robot R dedicated elevator exclusively used by the robot R (reference numerals 204 and 205 in FIG. 2 reference).
- the control unit 330 connects a node related to the elevator facility, as shown in FIG. 17A.
- a node group 1710 related to elevator equipment configured based on rules can be specified as a node object related to a specific map 1700.
- the node group 1710 related to elevator equipment includes a facility node 1711 corresponding to the elevator facility and a plurality of operation nodes 1712, 1713, and 1714 linked to a specific operation of the robot (R) for using the elevator. , 1715).
- the facility node 1711 corresponding to the elevator facility may be allocated (or placed) in an area corresponding to the location where the elevator facility is located on the specific map 1700.
- a facility node 1711 corresponding to the elevator facility is installed in the area corresponding to the location information on the specific map 1700. It may contain rule information that allows allocation.
- the first operation node 1712 has the properties of a transit node for entry and exit into the elevator, and on the specific map 1700, the area corresponding to the elevator entrance It can be assigned (or placed) to .
- the node rule related to elevator equipment includes a first operation having a transit node attribute for entering and exiting the elevator in an area corresponding to the elevator entrance on a specific map 1700, based on the location information of the elevator equipment included in the spatial characteristic information. Rule information that allows the node 1712 to be assigned may be included.
- the second operation nodes (1713, 1714) have the properties of a waiting node for waiting to board the elevator, and are located in the left and right areas of the elevator entrance on the specific map 1700, respectively. A pair may be assigned (or placed).
- the node rules related to elevator facilities include waiting to board the elevator in two different areas corresponding to the left and right of the elevator entrance on the specific map 1700, based on the location information of the elevator facility included in the spatial characteristic information. It may include rule information for assigning a pair of second operation nodes 1713 and 1714 with waiting-for-ride properties.
- the third operation node 1715 among a plurality of operation nodes related to elevator equipment, has a get-off node attribute for getting off from the elevator, and is assigned to an area corresponding to the front of the elevator entrance on the specific map 1700 ( or placed).
- the node rules related to elevator equipment include a get-off node for getting off the elevator in an area corresponding to the front of the elevator entrance on a specific map 1700, based on the location information of the elevator equipment included in the spatial characteristic information. Rule information that allows a third operation node 1715 with properties to be assigned may be included.
- the charging facility is a facility for charging the robot R (see reference numeral 209 in FIG. 2) and may be called a charger or a docking station.
- the control unit 330 provides a charging device configured based on node rules related to the charging facility, as shown in FIG. 17B.
- the node group 1720 related to equipment can be specified as a node object related to a specific map 1700.
- the node group 1720 related to the charging facility includes a facility node 1721 corresponding to the charging facility and a plurality of operation nodes 1722 and 1723 linked to a specific operation of the robot (R) for using the charging facility. may include.
- the facility node 1721 corresponding to the charging facility may be allocated (or placed) in an area corresponding to the location where the charging facility is located on the specific map 1700.
- a facility node 1721 corresponding to the charging facility is installed in the area corresponding to the location information on the specific map 1700. It may contain rule information that allows allocation.
- the first operation node 1722 among a plurality of operation nodes related to the charging facility, has docking node properties for the robot R to dock with the charging facility, and corresponds to the front of the charging facility on the specific map 1700. Can be assigned (or placed) in an area.
- the second operation node 1723 has the properties of a transit node for entry and exit from the charging facility in order to access the charging facility, and on a specific map 1700, the second operation node 1723 is charged. It may be assigned (or placed) in an area corresponding to the main path closest to the facility.
- the node rule related to the charging facility includes a first operation node having docking node properties in the area corresponding to the front of the charging facility on the specific map 1700, based on the location information of the charging facility included in the spatial characteristic information ( 1722) is allocated, and the area corresponding to the main path closest to the charging facility may include rule information allowing the second operation node 1723 with transit node properties to be allocated.
- the robot movement passage node groups 1730 and 1730' configured based on the characteristics of the robot movement passages W1 and W2 in which the robot R can travel will be described.
- the node rules related to the robot movement passage consider at least one of the width of the robot movement passage included in the spatial characteristic information, the physical size of the robot (R), and the running speed (or running specifications) of the robot (R). Thus, the number of lanes related to the driving of the robot R on the robot movement path is determined, and rule information may be included for each lane to be assigned a plurality of travel nodes at preset intervals along the robot movement path. .
- the node group 1730 related to the robot movement passage where the width (or width, L1) of the robot movement passage is relatively wide there are two different lanes in each lane. It may include a plurality of travel nodes 1731a, 1732a, 1733a, 1731b, 1732b, and 1733b allocated at preset intervals.
- the node group 1730' related to the robot movement passage where the width (or width, L2) of the robot movement passage is relatively narrow there is one single lane It may include a plurality of travel nodes 1731a', 1732a', and 1733a' allocated at preset intervals.
- the control unit 330 may specify the robot movement path node group (1730, 1730') constructed based on the node rules related to the robot movement path as a node object related to the specific map 1700.
- control unit 330 considers at least one of the width (width) of the robot movement passage, the physical size of the robot (R), and the running speed (or driving specifications) of the robot (R), and configures at least one lane.
- a plurality of nodes can be specified as node objects related to a specific map 1700.
- intersection structure may mean a structure where at least two robot movement passages intersect each other, as shown in FIG. 17D.
- intersection structure is a secondary intersection structure where two robot passageways intersect each other to form an “ ⁇ ” or “ ⁇ ” shape, and a tertiary intersection structure (or three-way intersection) where three robot passageways intersect each other to form a “T” shape. ), it can be formed in various ways depending on the number of robot movement passages that intersect each other, such as a 4-way intersection (or four-way intersection, see FIG. 17d) where four robot movement passages intersect each other.
- the structure of the space 10 formed by at least two robot movement passages intersecting each other may be referred to as a “corner 1740” in the present invention.
- the node rules related to the intersection structure include at least one of the width (or width) of the robot passageway forming the intersection structure, corner structure, corner location, physical size of the robot (R), and driving specifications of the robot (R).
- the number of lanes related to the driving of the robot R on the robot movement path may be determined, and each lane may contain rule information for arranging a plurality of travel nodes at preset intervals along the robot movement path. there is.
- the node rules related to the intersection structure include direction information of the nodes 1741 to 1750 arranged in the robot movement passage so that the robot R moves through a plurality of robot movement passages forming an intersection structure while traveling on the right side. It may further include specific rule information.
- control unit 330 determines that one of a pair of nodes 1742 arranged in each robot movement passage has direction information corresponding to the downward line, and the other node 1743 has, A node group can be specified to have direction information corresponding to an upbound line.
- nodes (1741 to 1750) are arranged in pairs in each of the four robot movement passages, and in a clockwise direction based on the node located below a specific corner (1740), each first node (1741) , the second node (1742), the third node (1743), the fourth node (1745), the fifth node (1745), the sixth node (1746), the seventh node (1747), and the eighth node (1748). Let's assume that
- the control unit 330 operates the second node 1742, the fourth node 1745, the sixth node 1746, and the eighth node ( 1748)
- Each of the first node 1741, the third node 1743, the fifth node 1745, and the seventh node 1747 provides direction information that can be moved to the nodes excluding the nodes arranged in the same robot movement path.
- the fourth node 1744 can move to the first node 1741, the third node 1743, and the seventh node 1747, excluding the fifth node 1745 arranged in the same robot movement passage.
- a node group may be specified to have direction information.
- control unit 330 may specify the node direction of a node within the node group that allows the robot R to make a U-turn while maintaining right-hand traffic, according to node rules related to the intersection structure. For example, the control unit 330 specifies the node group so that the ninth node 1749 has direction information that can move to the tenth node 1750, so that the robot R can move to the first node 1741, Nodes can be arranged to enable U-turn driving using the 9th node 1749, 10th node 1750, and 8th node 1748.
- a node placement process may be performed so that the nodes included in the node group are placed on a specific map (S1440, see FIG. 14).
- placing (or allocating) a node on a specific map means overlapping and arranging a node or a node graphic object corresponding to a node on a specific area of the specific map 1700, and the node graphic object is arranged. It can be understood as matching (or setting) an area (or point) to have a type corresponding to the type of the node graphic object.
- the control unit 330 creates a node graphic object 1711 corresponding to each of a plurality of nodes included in the node group 1710 related to the elevator on the specific map 1700 through a node arrangement process. , 1712, 1713, 1714, and 1715), and node graphic objects 1721, 1722, and 1723 corresponding to each of the plurality of nodes included in the node group 1720 related to the charger.
- node and node graphic object can be used interchangeably, and “node placement (or allocation)” can be used interchangeably with “node graphic object placement (or allocation).” .
- the same reference numeral can be assigned to a node and a node graphic object.
- the same reference number “1711” can be assigned to both a node corresponding to an elevator facility and a node graphic object corresponding to the elevator facility.
- the “node placement process” described in the present invention is a process of placing (or assigning) at least some of the nodes included in a specified node group on a specific map 1700, and is a process for placing (or assigning) at least some of the nodes included in a specified node group, and is a process for placing (or assigning) at least some of the nodes included in a specified node group.
- a node placement process of the first attribute ii) a node of the second attribute It may include any one of a process and iii) a node process of a third attribute.
- the node process of the first attribute is a node specified on the specific map 1700, based on the node group related to the specific map 1700 being specified, even if information is not received from the user's electronic device 50. It can be understood as a process of automatically arranging nodes included in a group.
- the “node process of the first attribute” may also be named “automation node process.”
- the control unit 330 may place (or assign) nodes included in a specified node group on a specific map 1700 according to node rules related to each node group.
- control unit 330 selects a plurality of nodes included in each of the plurality of node groups based on the node rules according to each of the plurality of node groups. , can all be placed sequentially or all at once on a specific map 1700.
- the specific map 1700 includes a first graphic object corresponding to a first type of static obstacle and a second graphic object corresponding to a second type of static obstacle
- the nodes of the first node group according to the node rule corresponding to the first type of static obstacle are placed in the first area containing the first graphic object of the specific map 1700, and the second graphic object of the specific map 1700 is placed.
- the nodes of the second node group according to the node rule corresponding to the second type of static obstacle may be placed in the second area included.
- the control unit 330 has specified a node group 1710 related to elevator equipment and a node group 1720 related to chargers in relation to the specific map 1700.
- the specific map 1700 may include a first graphic object corresponding to an elevator facility and a second graphic object corresponding to a charging facility.
- control unit 330 arranges the nodes 1711 to 1715 of the node group according to the node rule corresponding to the elevator facility in the area containing the graphic object related to the elevator facility, and charges All nodes 1721 to 1723 of the node group according to the node rule corresponding to the charging facility can be placed in the area containing the graphic object related to the facility.
- control unit 330 may perform a node inspection process to inspect a plurality of nodes arranged on the specific map 1700.
- the node inspection process is a process that checks whether a plurality of nodes placed on a specific map 1700 are accurately placed according to node rules or the situation of the actual space 10.
- the control unit 330 operates the node inspection algorithm and the user
- the node inspection process may be performed based on at least one of the information received from the electronic device 50. More details regarding the node inspection process will be described later.
- the node placement process of the second attribute can be understood as a process of arranging nodes included in a specified node group on a specific map 1700 based on information received from the user's electronic device 50.
- “Node process of the second attribute” may also be named “semi-automated node process.”
- the information received from the user electronic device 50 is a “node placement request” requesting placement of nodes included in a node group specified in relation to the specific map 1700 on the specific map 1700. It can be understood as
- the control unit 330 selects the nodes included in each of the plurality of node groups based on the node placement request received from the user's electronic device 50. They can be placed on a specific map 1700 in batches, or nodes included in a specific node group among a plurality of node groups can be placed on a specific map 1700.
- control unit 330 when the control unit 330 receives a “batch node placement request” for nodes included in a plurality of node groups from the user's electronic device 50, the control unit 330 maps the nodes included in the plurality of node groups to a specific map. (1700) can be placed in batches.
- control unit 330 when the control unit 330 receives a “node placement request” for nodes included in a specific node group among a plurality of node groups from the user's electronic device 50, the control unit 330 They can be collectively placed on a specific map 1700.
- a node group related to elevator equipment and a node group related to charger equipment are specified in relation to a specific map 1700, they are included in the node group 1710 related to elevator equipment from the user's electronic device 50.
- a node placement request has been received.
- the control unit 330 selects nodes 1711, 1712, 1713, 1714, and 1715 included in the node group related to elevator facilities on the specific map 1700, as shown in FIG. 20. ) can be placed.
- the control unit 330 displays guide information indicating that at least one node according to the specified node group can be placed on the editing interface 1600.
- This guide information may also be understood as recommendation information recommending the placement of at least one node according to a specified node group.
- the guide information includes i) highlighting information that highlights a specific map 1700 related to a specified node group, ii) guidance information that guides the arrangement of a plurality of nodes included in the specified node group, and iii) a specified node group. It may include arrangement information indicating the arrangement of at least one node constituting the node, and iv) an icon for obtaining approval for the arrangement of the nodes constituting the specified node group.
- the control unit 330 displays highlighting information (or highlighting information, for an area related to a specified node group) on the first area 1610 of the editing interface 1600. 1911) and guidance information leading to the placement of multiple nodes included in the specified node group (ex: “It is a robot E/V dense space. Check the node creation guide information for the robot E/V dense space (10) ”, 1912) can be output as guide information.
- control unit 330 displays detailed information 1913 including arrangement information related to the specified node group and node arrangement according to the specified node group on the second area 1620 of the editing interface 1600.
- At least one of the icons for approval can be output as guide information.
- the icon 1914 can also be understood as an icon related to the function of receiving a node placement request for a specified node group.
- control unit 330 may output guide information based on the area where a specific graphic object is located among the specific map 1700 being selected from the user's electronic device 50.
- the control unit 330 controls the first area 1610 while a specific map 1700 is being output on the first area 1610 of the editing interface 1600. ), based on the user input 1921 being applied to a specific graphic object 1922 related to the specified node group, detailed information 1923 related to the specified node group is displayed on the second area 1620 and an icon 1924 for obtaining approval for node placement according to the specified node group may be output as guide information.
- control unit 330 may recommend a node group related to a specific area selected by the user among the specific map 1700 to the user.
- control unit 330 includes the node group in the node group, as shown in FIG. 20, based on the user input for the icon (ex: “Apply guide information”, 1914) for approval of node placement.
- a plurality of nodes 1711, 1712, 1713, 1714, and 1715 can be placed on a specific map 1700.
- control unit 330 arranges at least one node constituting a specific node group in the area where the graphic object is located. can do.
- control unit 330 selects a plurality of nodes included in a specific node group related to the guide information provided on the editing interface 1600 among a plurality of node groups related to the specific map 1700 to the specific map 1700. ) can be placed on the
- the first node group and the second node group are specified in relation to the specific map 1700, and guide information recommending the first node group is output on the editing interface 1600, and the nodes are arranged. If there is a user selection of the icon 1914 for approval, the control unit 330 may place a plurality of nodes included in the first node group on a specific map 1700.
- control unit 330 inspects a plurality of nodes arranged on the specific map 1700 in the node arrangement process of the second attribute. An inspection process can be performed. More details will be provided later.
- the user may have a need to freely place nodes on a specific map 1700 rather than placing nodes on the specific map 1700 according to the node rules of the node group related to the specific map 1700. You can.
- the present invention can provide a third attribute node arrangement process that can arrange nodes differently from the node rules according to the node group specified in relation to the specific map 1700.
- “Third attribute node process” may also be named “passive node process”.
- the control unit 330 may place (or allocate) nodes based on the user's selection of a specific area among the specific map 1700 being output to the first area 1610 of the editing interface 1600.
- the control unit 330 may place a node on the specific map 1700 even if the node placement according to the user's selection does not correspond to the node rule of the node group related to the specific map 1700.
- control unit 330 operates on a plurality of nodes arranged on the specific map 1700, such as the node arrangement process and the second node arrangement process of the first attribute. You can perform a node inspection process to inspect nodes. More details about the inspection process will be described later.
- a node object related to a specific map 1700 can be specified based on spatial characteristic information matched to the specific map 1700 of a specific floor.
- the spatial characteristic information matched to the specific map 1700 is obtained by determining the characteristics of the space 10 corresponding to a specific floor by the control unit 330 in the process of generating the specific map 1700. It may be specified based on information or may be specified based on information input by the system 3000 administrator.
- the specific map 1700 may be comprised of at least one of a two-dimensional or three-dimensional map for a specific floor, and may refer to a map that can be used to set a driving path for the robot R.
- the map may be a map created based on SLAM (Simultaneous Localization and Mapping) by at least one robot moving in the space 10 in advance.
- the map may be a map generated by vision (or visual)-based SLAM technology.
- the robot R may perform scanning or sensing of the space within the building 1000 while traveling within the building 1000.
- the cloud server 20 may control the driving of the robot (R) so that the robot (R) performs sensing of the space within the building (1000).
- the robot (R) that senses space while traveling within the building 1000 is called a “sensing robot”, “scanning robot”, “mapping robot”, “autonomous driving robot”, “driving robot”, etc. It can be named in various ways, and the information obtained by the robot (R) by sensing (or scanning) the space can be named in various ways, such as “sensing information” and “scan information.”
- sensing space means taking an image of the space 10 within the building 1000 using at least one sensor, or measuring three-dimensional coordinates of an obstacle located in the space 10 It can be understood as acquiring information (or 3D location information).
- obstacle refers to the walls, ceiling (roof), floor, stairs, pillars, doors, objects (ex: other robots, etc.) and facilities that exist in the space (10) that make up the space (10). You can.
- an obstacle to which a certain horizontal area of the space 10 is fixedly assigned is referred to as a “static obstacle”, and an obstacle to which a certain horizontal area is not fixedly assigned is referred to as a “static obstacle”. It can be called a “dynamic obstacle.”
- the robot R cannot drive in an area where a static obstacle is located, but may be able to drive in an area where a dynamic obstacle is located when the dynamic obstacle leaves the area.
- an elevator moves up and down (i.e., a vertical area), but since a certain horizontal area is allocated in the space 10, the elevator can be understood as a static obstacle (or static obstacle) in the present invention.
- the robot R traveling in the space 10 is not assigned a fixed horizontal area even if it is stationary in a certain area of the space 10, so in the present invention, the robot R traveling in the space 10
- a robot (R) running can be expressed as a dynamic obstacle (or dynamic obstacle).
- the sensing information may include information about at least one of a moving obstacle and a static obstacle within the building 1000.
- the communication unit 310 receives sensing (or Sensing) You can receive sensing information from a single space. That is, the communication unit 310 may receive sensing information including information about at least one of a static obstacle and a dynamic obstacle located in a space within the building 1000.
- the control unit 330 may generate a specific map 1700 using sensing information acquired while the robot runs within the space 10.
- the function of generating a specific map 1700 using sensing information may also be performed by at least one of the cloud server 20 and other external servers related to map generation. However, hereinafter, for convenience of explanation, it will be described that a specific map 1700 is generated by the map generation system 3000 according to the present invention.
- control unit 330 can detect obstacles (O1, O2, O3, and O4) existing in space based on the received sensing information.
- the control unit 330 may use sensing information related to a specific layer among the sensing information to generate a point cloud map with a first characteristic of an obstacle included in a specific layer.
- the point cloud map of the first characteristic can be understood as a map configured to include 3D information about obstacles included in a specific layer.
- the point cloud map of the first characteristic is the three-dimensional coordinates of the obstacle generated through the point cloud technique based on the detection information about the obstacle detected (or detected) from the sensing information. It can be understood as a map made up of points. That is, the point cloud map of the first characteristic may be a map that three-dimensionally represents (or expresses) the obstacle using points having three-dimensional coordinates.
- the control unit 330 may generate points having three-dimensional coordinates of the obstacle using a point cloud technique, based on detection information about the obstacle detected (or detected) from the sensing information.
- the point cloud technique is called the point data technique or the point cloud technique, and is a technique that provides numerous point clouds (or point clouds) that are emitted from the sensor, reflected from the object, and returned to the receiver. It can mean.
- the point clouds may be obtained through sampling of each point based on a central coordinate system (x, y, z).
- control unit 330 uses the point cloud map of the first characteristic to create a point cloud map of the second characteristic (“flattened point cloud map” or “2D sensing map (map)) for obstacles included in a specific layer. ”) can also be created.
- the point cloud map M1 of the second characteristic may be defined as a map flattened from the point cloud map of the first characteristic based on the travel plane of the robots traveling on the specific floor. That is, the point cloud map M1 of the second characteristic is a two-dimensional data in which the three-dimensional data included in the point cloud map of the first characteristic is converted based on the driving plane, as shown in (c) of FIG. 21A. It can be understood as a map containing data. Accordingly, in the present invention, the point cloud map M1 of the second characteristic may also be called a “flattened point cloud map” or “2D sensing information map.”
- the control unit 330 uses the three-dimensional point clouds for obstacles obtained using the point cloud technique based on the driving plane of robots traveling on a specific floor as shown in FIG. 21a (c). , can be converted to two-dimensional information (P1, P2). That is, the control unit 330 can convert the 3D point cloud for the detected static obstacle into 2D flattened information (P1, P2).
- the two-dimensional information (P1, P2) included in the point cloud map (M1) of the second characteristic is such that the three-dimensional point clouds included in the point cloud map of the first characteristic are 2 based on the driving plane. It may have been converted to dimensional information. Accordingly, in the present invention, for convenience of explanation, the point cloud (or point group) included in the point cloud map of the first characteristic is called a “three-dimensional point cloud”, and the point cloud (or point cloud) included in the point cloud map of the second characteristic is referred to as “three-dimensional point cloud”.
- the information can be named “two-dimensional point cloud” or “flattened point cloud.”
- the sensing robot (R) can perform detailed sensing of obstacles while traveling in a space within the building 1000. Accordingly, the sensing information received from the robot may include detailed sensing information about obstacles included in a specific floor.
- the sensing information may include information on a plurality of sensing elements that sense different areas of a specific obstacle.
- the plurality of sensing element information may mean an infinite number of sensing information elements.
- the sensing information may include information on numerous sensing elements that sense different areas of a specific wall.
- the control unit 330 may generate a point cloud map of the first characteristic corresponding to the actual structure (appearance) of a specific floor based on detailed sensing information received from the robot R.
- the point cloud map of the first characteristic a plurality of three-dimensional point clouds (or point groups) corresponding to each of a plurality of sensing element information are mapped, and the plurality of three-dimensional point clouds (or point groups)
- the formed shape may correspond to the actual shape of the obstacle included in a specific layer.
- the shape (or appearance) formed by a plurality of three-dimensional point clouds (or point groups) is a very large number of 3 so that it corresponds to the actual shape of the obstacle on a specific floor.
- Dimensional point clouds (or point groups) may be mapped and exist.
- control unit 330 determines the actual shape of the obstacle included in the specific floor based on the driving plane of the robot R.
- a point cloud map of the corresponding second characteristic may be generated.
- the shape (or appearance) formed by a plurality of two-dimensional point clouds is the actual shape of a specific layer based on the traveling plane of the robot R.
- a large number of two-dimensional point clouds (or flattened point clouds) can be mapped to correspond to the shape (or structure).
- FIG. 21A a partial area of the point cloud map (M1) of the second characteristic corresponding to the actual shape (or structure) of a specific layer is shown enlarged, but the point cloud of the second characteristic is shown in (c).
- the map 2100 may include a plurality of finely mapped two-dimensional point clouds, as shown in FIG. 21B.
- the location, shape, and structure of obstacles included in a specific floor are classified (or identified) based on the traveling plane of the robot R, as shown in FIG. 21b. ), a plurality of two-dimensional point clouds may be mapped in detail.
- the point cloud map 2100 of the second characteristic identifies (or distinguishes) a specific obstacle (e.g., a wall or a specific space (ex: ROOM), 2110, 2120). ), a plurality of two-dimensional point clouds may exist with detailed mapping.
- a specific obstacle e.g., a wall or a specific space (ex: ROOM), 2110, 2120.
- a plurality of two-dimensional point clouds may exist with detailed mapping.
- Figure 21b also briefly shows the actual point cloud map of the second characteristic, and it is natural that the point cloud map of the second characteristic described in the present invention has a plurality of two-dimensional point clouds mapped more tightly and in detail. do.
- a node group related to a specific map 1700 can be specified based on spatial characteristic information matched to the specific map 1700.
- the “characteristics of space” can affect the operation and driving of the robot (R) by at least one of the structure of space (10), facilities arranged in space (10), and situation of space (10). It can be understood as a variety of factors.
- the point cloud map (M1) of the second characteristic includes the point clouds (P1, P2) of the second characteristic for the obstacle detected from the sensing information directly sensed by the robot (R), but the specific map In order to more accurately specify nodes related to 1700, more accurate and detailed specific map 1700 and spatial characteristic information may be required.
- the point cloud map M1 of the second characteristic and various information about the space 10 for example, the building's
- various information about the space 10 for example, the building's
- M2 drawings
- M3 more accurate and detailed maps
- spatial characteristic information can be generated.
- control unit 330 may connect a plurality of linked point clouds of the second characteristic in the point cloud map (M1) of the second characteristic, and extract (create or obtain) a geometric object for the obstacle.
- the graphic object may be a graphic object for at least one of a dynamic obstacle and a static obstacle.
- control unit 330 connects the point clouds of the second characteristic of the first group related to the first obstacle in the point cloud map M1 of the second characteristic to form the first
- the geometric object 2210 related to the obstacle may be extracted, and the point clouds of the second characteristic of the second group related to the second obstacle may be connected to each other to obtain the geometric object 2220 related to the second obstacle.
- control unit 330 uses a point cloud map (M1) of the second characteristic including at least one geometric object 2210 and 2220 and spatial meta information about the space 10, as shown in FIG. 16. In this way, a specific map 1700 containing graphic objects corresponding to each static obstacle included in a specific floor can be created.
- M1 point cloud map
- the static obstacle included in a specific floor is a room and equipment consisting of walls, doors, ceilings (roofs), floors, stairs, pillars, and the walls that make up the specific floor. It can contain at least one.
- the equipment is a facility provided in the building to provide services, move robots, maintain functions, maintain cleanliness, etc. within the building 1000, and its types and forms can be very diverse,
- an elevator configured to be usable by at least one of a robot and a person traveling on a specific floor (see reference numeral 204 in FIG. 2)
- an escalator see reference number 205 in FIG. 2)
- an entrance door or Access control gate
- robot movement path robot-only road and robot common road, (see reference numerals 201 and 202 in FIG.
- spatial meta information is various information reflecting spatial characteristics related to static obstacles in the space 10, for example, drawing information (drawing image or drawing, reference numeral 2310 in (a) of FIG. 23A) ), ii) spatial linkage information (reference numeral 2320 in (b) of FIG. 23A).
- the drawing information 2310 is information related to a drawing reflecting the spatial characteristics of a specific floor, and may include information about the structure, location, type (or type), properties, characteristics, etc. of static obstacles included in the specific floor. You can.
- the linkage information 2320 is various information including the space 10 characteristics of a specific floor, in addition to the drawing information 2310, and includes the structure, location, type (or type), and properties of static obstacles included in the specific floor. , characteristics, etc., and can be variously named as “information related to space 10”, “space linkage information”, “space linkage information”, “space description information”, “space zone information”, etc. .
- the control unit 330 uses spatial meta information (ex: drawing) reflecting the characteristics of static obstacles in the space 10 of a specific floor and a point cloud map (M1) of the second characteristic of the second characteristic, A specific map 1700 reflecting static obstacles included in a specific floor can be created.
- “specific map 1700 including spatial characteristics” refers to “specific map 1700 including spatial characteristic information,” “specific map 1700 with matching spatial characteristic information,” and “specific map 1700 with spatial characteristic information.” It can be used interchangeably with “spatial characteristic information related to (1700).” That is, in the present invention, the fact that the specific map 1700 includes the characteristics of the space 10 means that the spatial characteristic information is reflected in the specific map 1700 itself, or the specific map 1700 and the spatial characteristic information match each other. This may mean either being stored in the storage unit 320 or generating (or deriving) spatial characteristic information related to a specific map 1700.
- control unit 330 includes information corresponding to the specific geometric objects 2210 and 2220 included in the point cloud map M1 of the second characteristic in spatial meta information (ex: drawing information, 2310). Based on this, the geometric object included in the point cloud map M1 of the second characteristic is specified as a static obstacle in the space 10, and the graphic object corresponding to the specified static object is specified in the specific map 1700. can be reflected in
- control unit 330 may determine that information corresponding to the location and shape of the first graphic object 2210 included in the point cloud map M1 of the second characteristic is included in the drawing information 2310. Based on this, the first shape object can be specified as a static obstacle in the space 10, and the graphic object corresponding to the obstacle (or the first shape object) can be reflected (placed or displayed) on the specific map 1700. there is.
- the control unit 330 determines the point of the second characteristic based on the spatial meta information. Change (or modify) a geometric object included in the cloud map (M1), specify the geometric object as a static obstacle in the space 10, and add a graphic object corresponding to the specified static object to the specific map 1700. It can be reflected.
- control unit 330 includes information whose location and shape partially corresponds to the second geometric object 2220 included in the point cloud map M1 of the second characteristic, in the drawing information 2310. If not, the second shape object 2220 is changed (or modified) based on the information included in the drawing information 2310, the shape object is specified as a static obstacle in the space 10, and the specified actual object is A graphic object corresponding to a problem may be reflected in a specific map 1700.
- control unit 330 may be configured to include the point cloud map M1 of the second characteristic.
- the included geometric object is determined to be a dynamic obstacle, and this may not be reflected in the specific map 1700.
- control unit 330 may specify the type (or type) of a static obstacle included in a specific floor based on spatial meta information (ex: drawing 2310) reflecting the spatial characteristics of the specific floor.
- Type information for the type (or type) of static obstacles corresponding to each graphic object can be mapped.
- the static obstacle is a facility will be described as an example.
- the control unit 330 combines the geometric objects 1910 and 1920 included in the point cloud map M1 of the second characteristic and spatial meta information to specify the equipment placed in the space 10, and the specified equipment.
- the type information (or type information) can be mapped to a specific map 1700.
- mapping the equipment type information to the specific map 1700 means displaying equipment rectification information on the specific map 1700, or linking the equipment type information to the storage unit 320 in connection with the specific map 1700. ) can be understood as storing it in .
- control unit 330 controls the equipment included in the spatial meta information based on the fact that information corresponding to a specific geometric object included in the point cloud map M1 of the second characteristic is included in the spatial meta information.
- the type information can be mapped to a graphic object of a specific map 1700 corresponding to the specific geometric object.
- control unit 330 based on the fact that information corresponding to the graphic object included in the specific map 1700 is included in the spatial meta information, sets the facility type information included in the spatial meta information to the specific map ( 1700) can be mapped to graphic objects.
- control unit 330 may use information (ex: “7th floor A1 area”, 2321) corresponding to the location of the first geometric object included in the point cloud map (M1) of the second characteristic as spatial linkage information. Based on what is included in the graphic object of the specific map 1700 corresponding to the first geometric object 2210, type information (or type information) about the robot elevator equipment (“robot E/V”, 2322) can be mapped.
- graphics objects included in the specific map 1700 and “type information (or type information) of static obstacles for graphic objects mapped to graphic objects included in the specific map 1700” are, It can be understood to mean spatial characteristics (or spatial characteristic information) matched to the specific map 1700 described above.
- the drawing information about the specific space 10 may be composed of a plurality of layers containing different information about the specific space 10, as shown in FIG. 23B.
- each of the plurality of drawing layers containing different information about the specific space 10 may be described by being named sub drawing information 2330 and 2340.
- the sub drawing information 2330 and 2340 can be understood as drawing information related to at least one of various information related to the characteristics of space. That is, at least one element among a plurality of elements constituting the characteristics of the space 10 may be displayed in the sub drawing information 2330 and 2340.
- the first sub drawing information 2330 may include drawing information in which information about at least one (eg, wall) of the plurality of components constituting the space 10 is reflected.
- the first sub drawing information 2330 displays a plurality of spaces (or sub spaces 10 or rooms 2331, 2332) made of walls. It may be.
- the second sub drawing information 2340 may include drawing information in which information about equipment arranged in the space 10 is reflected. More specifically, in the second sub-drawing information 2340, a graphic object representing a facility arranged in the space 10 may be displayed on an area corresponding to a point where the facility is placed.
- a graphic object representing the elevator facility is displayed on an area corresponding to the actual space (or point) where the elevator facility is located ( 2341) is displayed, and a graphic obstacle 2342 indicating the charger facility may be displayed on an area corresponding to the actual space (or point) where the charger facility is located.
- the control unit 330 matches at least one sub-drawing information related to the information required for node group allocation related to the specific map 1700 with the point cloud map M1 of the second characteristic, and determines the key information required for node group allocation.
- a specific map 1700 containing only information can be created.
- the control unit 330 matches the first sub-drawing information 2330 with the point cloud map M1 of the second characteristic.
- the second sub-drawing information 2340 is used as a point cloud map (M1) of the second characteristic. )
- a specific map 1700 containing the characteristics of the space of the second layer can be generated.
- the specific map 1700 is generated by matching the point cloud map M1 of the second characteristic with sub-drawing information related to at least one of various information related to the characteristics of space, thereby generating the specific map 1700. Excessive computation during the creation process can be reduced and data efficiency can be increased.
- spatial characteristic information input from a system administrator (hereinafter described as a “user”) can be reflected on the specific map 1700.
- control unit 330 can provide an editing interface 1600 on the user's electronic device 50 so that the user can reflect spatial characteristic information on the specific map 1700. there is.
- control unit 330 allows the user to compare the point cloud map M1 of the second characteristic and spatial meta information (ex: drawing information, 2310) with each other on the editing interface 1600.
- the point cloud map (M1) of the second characteristic and spatial meta information (ex: drawing information, 2310) can be provided side by side (see FIG. 25).
- the control unit 330 requests confirmation of information that does not correspond to each other in the point cloud map (M1) of the second characteristic and spatial meta information (ex: drawing information, 2310).
- Confirmation request information (ex: “A static obstacle different from the building (1000) drawing was detected in area A5 on the 7th floor. Confirmation is required.” 2530) can be provided on the editing interface 1600.
- the point cloud map M1 of the second characteristic includes a group 2510 of point clouds in one region, while the drawing information 2310 includes a static region 2520 corresponding to the region. If there is no information about the obstacle, the control unit 330 may output the confirmation request information 2530 on the editing interface 1600.
- control unit 330 uses the editing interface 1600 so that the user can intuitively recognize whether the point cloud map (M1) of the second characteristic and spatial meta information (ex: drawing information, 2310) correspond to each other. ), the point cloud map (M1) of the second characteristic and spatial meta information (ex: drawing information, 2310) can be provided by overlapping each other.
- the control unit 330 Based on the spatial characteristic information for a specific floor being received from the electronic device 50, the control unit 330 reflects the received spatial characteristic information on the specific map 1700 related to the specific floor, or Spatial characteristic information can be updated using the received spatial characteristic information.
- the control unit 330 selects the “conference room” input from the user.
- Spatial characteristic information related to may be reflected (ex: modified or updated, 2410) on a specific map 1700.
- the robot (R) generates a specific map (1700) using the sensing information and spatial meta information about the space (10) sensed while driving within the building (1000).
- a user interface that allows the user to create a specific map 1700. Through this, the user can directly create and update a specific map 1700 so that the specific map 1700 more accurately reflects the actual situation of the space.
- a node inspection process can be performed on a specific map 1700, inspecting a plurality of nodes arranged on the specific map 1700.
- the control unit 330 determines whether to place nodes according to the node rule on the specific map based on the completion of the arrangement of the nodes according to the node rule corresponding to the type of graphic object included in the specific map 1700. An inspection process that performs inspection can be performed.
- This node inspection process may be performed as either a first attribute node inspection process or a second attribute node inspection process, depending on whether nodes are placed on the specific map 1700 according to the node rule.
- the node inspection process of the first attribute is an inspection process that is processed when nodes are placed on a specific map 1700 according to the node rules, and includes the node placement process (or automated node placement process) of the first attribute described above, and It may be performed when the node is deployed according to any one of the node deployment processes (or semi-automated node deployment processes) of the second attribute.
- control unit 330 can receive approval for the placement of the nodes according to the node rule from a pre-specified inspection subject (ex: user or system administrator). Thus, a node inspection process of the first attribute may be performed.
- the pre-specified review subject may, for example, correspond to a user related to a specific map 1700, and the pre-specified review subject may comply with the node rules through the node review process of the first attribute provided by the present invention.
- the arrangement of the nodes according to the present invention can be approved, or the node arrangement can be changed to suit the situation of the actual space 10.
- the control unit 330 is configured to, as shown in FIG. 26, at least include nodes arranged according to the node rules so that a pre-specified inspection subject can identify and inspect the area where the nodes are arranged according to the node rules.
- One node group area 2610 can be visually highlighted.
- the control unit 330 displays inspection request information (ex: “node”) requesting inspection by a predetermined inspection subject for the node group area 2610 on the editing interface 1600.
- the node has been placed in a robot E/V dense space according to the writing guide. Confirmation is required.”, 2620) can be output.
- control unit 330 outputs information about the node rule applied to the node group area 2610 on the editing interface 1600, so that a pre-specified inspection subject can determine the node rule applied to the node group area 2610. You can check it right away.
- control unit 330 may display a function icon (ex: “Apply Node”) or a node group area ( 2610), a function icon (ex: “Edit node”) can be provided to change the node arrangement of the nodes included in the node.
- control unit 330 causes the robots (R) to run based on a specific map 1700 including nodes according to the node rule, A specific map 1700 including nodes according to the node rules can be updated on the cloud server 20.
- control unit 330 creates a specific map 1700 including nodes according to the node rule, based on the user's selection of a function icon (ex: “Apply node”) for approval of node placement according to the node rule. can be updated on the cloud server 20.
- a function icon ex: “Apply node”
- control unit 330 may provide an editing interface 1600 that can change the node arrangement based on the user's selection of a function icon (ex: “edit node”) for changing the node arrangement.
- the node inspection process of the second attribute is an inspection process that is processed when nodes are not placed on a specific map 1700 according to the node rule, and is the node placement process of the third attribute (or manual node placement process) described above. ) can be performed when nodes are placed according to.
- control unit 330 controls the nodes 2731, 2732, and 2733 arranged on the specific map 1700 to match spatial characteristics (or static obstacles) related to the specific map 1700. If it does not correspond to the node rule, at least one node group area 2710 containing nodes that are not arranged according to the node rule may be visually highlighted.
- control unit 330 displays inspection request information (ex: “robot”) requesting inspection by a pre-specified inspection subject for the node group area 2710 on the editing interface 1600.
- inspection request information (ex: “robot”) requesting inspection by a pre-specified inspection subject for the node group area 2710 on the editing interface 1600.
- the node placed in the E/V dense space is different from the node creation guide. Confirmation is required.”, 2720) can be output.
- control unit 330 outputs information about node rules related to the node group area 2710 on the editing interface 1600, so that a pre-specified inspection subject is a node placed in the node group area 2710. You can immediately see how the fields 2731, 2732, and 2733 differ from the node rule.
- control unit 330 may display an icon (ex: “guide information “Apply”) or a function icon (ex: “Edit node”) for changing the node arrangement of nodes included in the node group area 2710 may be provided.
- control unit 330 causes the robots R to run based on a specific map 1700 including nodes according to the node rule.
- a specific map 1700 including nodes according to node rules can be updated on the cloud server 20.
- the map generation method and system for robot operation responds to receiving a request to edit a map for a specific floor among a plurality of floors of a building, and displays the map on the display unit of the electronic device to correspond to the specific floor.
- An editing interface containing at least a portion of a specific map may be provided.
- the map generation method and system for robot operation according to the present invention can allocate graphic objects to a specific map included in the editing interface based on editing information received from an electronic device. This allows users to create and edit maps simply by assigning graphic objects to the editing interface, allowing even unskilled users to create and edit maps conveniently and easily.
- the map generation method and system for robot operation provides a cloud server with a specific map to which a graphic object is assigned so that robots can travel on the specific floor according to the properties of the graphic object allocated on the specific map. It can be updated.
- the robot can efficiently drive according to the global plan without processing complex environments, based on a map that reflects the interaction of robots with robots, robots with humans, and robots with various facility infrastructures placed in buildings.
- the map generation method and system for robot operation in response to receiving a request to edit a map for a specific floor among a plurality of floors of a building, displays the specific floor on the display unit of the electronic device.
- An editing interface containing at least a portion of a specific map corresponding to a layer may be provided.
- the map generation method and system for robot operation specifies at least one node group that can be assigned on a specific map based on a node rule corresponding to the spatial characteristics of a specific floor, and the specified node group A node deployment process can be performed so that the nodes included in are deployed.
- the present invention can accurately and quickly reflect the spatial characteristics of a specific floor to create a map for safe driving of the robot.
- the map generation method and system for robot operation provides a user interface that can allocate nodes on a specific map based on node rules corresponding to the spatial characteristics of a specific floor, so that unskilled users You can also create a map by accurately and quickly reflecting the spatial characteristics of a specific floor.
- the robot-friendly building according to the present invention uses technological convergence where robots, autonomous driving, AI, and cloud technologies are converged and connected, and these technologies, robots, and facility infrastructure provided in the building are organically connected. It can provide a new space that combines.
- the robot-friendly building according to the present invention uses a cloud server that interfaces with multiple robots to organically control multiple robots and facility infrastructure, thereby systematically managing the running of robots that provide services more systematically. You can. Through this, the robot-friendly building according to the present invention can provide various services to people more safely, quickly, and accurately.
- the robot applied to the building according to the present invention can be implemented in a brainless format controlled by a cloud server, and according to this, multiple robots placed in the building can be manufactured inexpensively without expensive sensors. In addition, it can be controlled with high performance/high precision.
- the tasks and movement situations assigned to the multiple robots placed in the building are taken into consideration as well as the running is controlled to take people into consideration, allowing robots and people to naturally coexist in the same space.
- the building according to the present invention can perform various controls to prevent accidents caused by robots and respond to unexpected situations, thereby instilling in people the perception that robots are friendly and safe, rather than dangerous.
- 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 in a medium that can be read by such a computer.
- present invention can be implemented as computer-readable codes or instructions on a program-recorded medium. That is, various control methods according to the present invention may be provided in the form of programs, either integrated or individually.
- computer-readable media includes all types of recording devices that store data that can be read by a computer system.
- Examples of computer-readable media include HDD (Hard Disk Drive), SSD (Solid State Disk), SDD (Silicon Disk Drive), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. There is.
- the computer-readable medium may be a server or cloud storage that includes storage and can be accessed by electronic devices through communication.
- the computer can download the program according to the present invention from a server or cloud storage through wired or wireless communication.
- the computer described above is an electronic device equipped with a processor, that is, a CPU (Central Processing Unit), and there is no particular limitation on its type.
- a processor that is, a CPU (Central Processing Unit)
- CPU Central Processing Unit
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Architecture (AREA)
- Aviation & Aerospace Engineering (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Civil Engineering (AREA)
- Structural Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
본 발명에 따른 맵 생성 방법은, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계, 상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계, 상기 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 상기 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하는 단계 및 상기 특정 맵 상에 상기 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행하는 단계를 포함할 수 있다.
Description
본 발명은 건물 내에서 서비스를 제공하는 로봇이, 전역 이동 경로 및 지역 이동 경로 계획에 활용할 수 있는 맵(Map)을 편리하고 효율적으로 작성할 수 있는, 로봇 운영을 위한 맵 생성 방법 및 시스템에 관한 것이다.
기술이 발전함에 따라, 다양한 서비스 디바이스들이 나타나고 있으며, 특히 최근에는 다양한 작업 또는 서비스를 수행하는 로봇에 대한 기술 개발이 활발하게 이루어지고 있다.
나아가 최근에는, 인공 지능 기술, 클라우드 기술 등이 발전함에 따라, 로봇을 보다 정밀하고, 안전하게 제어하는 것이 가능해지고 있으며, 이에 따라 로봇의 활용도가 점차적으로 높아지고 있다. 특히, 기술의 발전으로 인하여, 로봇은 실내 공간에서 인간과 안전하게 공존할 수 있을 정도의 수준에 이르렀다.
이에, 최근에는 로봇이 인간의 업무 또는 작업을 대체하고 있으며, 특히 실내 공간에서 사람을 대상으로 로봇이 직접 서비스를 제공하는 다양한 방법들이 활발하게 연구되고 있다.
예를 들어, 공항, 역사, 백화점 등 공공 장소에서는 로봇들이 길안내 서비스를 제공하고 있으며, 음식점에서는 로봇들이 서빙 서비스를 제공하고 있다. 나아가, 오피스 공간, 공동 주거 공간 등에서는 로봇들이 우편물, 택배 등을 배송하는 배송 서비스를 제공하고 있다. 이 밖에도 로봇들은 청소 서비스, 방범 서비스, 물류 처리 서비스 등 다양한 서비스들을 제공하고 있으며, 로봇이 제공하는 서비스의 종류 및 범위는 앞으로도 기하급수적으로 늘어날 것이며, 서비스 제공 수준 또한 계속적으로 발전할 것으로 기대된다.
이러한, 로봇들은 실외 공간 뿐만 아니라, 사무실, 아파트, 백화점, 학교, 병원, 놀이시설 등과 같은 건물(또는 빌딩(building))의 실내 공간 내에서 다양한 서비스를 제공하고 있으며, 이 경우, 로봇들은 건물의 실내 공간을 이동하며 다양한 서비스들을 제공하도록 제어되고 있다.
한편, 건물 내에서 서비스를 제공하는 복수의 로봇이 효율적으로 주행하도록 하기 위해서는, 로봇의 전역 이동 경로 및 지역 이동 경로를 계획하는데 사용되는 맵(Map)을, 건물 내 실제 구역의 특성 및 상황을 반영하여 정확하게 작성하는 것이 무엇보다 중요하다.
이에, 건물 내에서 로봇을 이용한 보다 수준 높은 서비스를 제공하기 위해서는, 사용자가 편리하고 효율적으로 건물 내 구역의 특성 및 상황을 반영하여, 로봇 운영을 위한 맵을 정확하게 작성할 수 있는 방법에 대한 연구가 필요하다.
본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 건물 내 공간을 센싱한 센싱 정보로부터 단계적으로 로봇의 운용에 사용되는 맵을 생성하는 방법 및 이를 위한 사용자 환경을 제공하기 위한 것이다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 건물 내 공간의 특성에 근거하여, 맵 상에 노드를 정확하고 올바르게 배치할 수 있는 방법 및 이를 위한 사용자 환경을 제공하기 위한 것이다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 사용자가 노드 규칙에 따라 편리하고 효율적으로 맵 상에 노드를 배치할 수 있는 사용자 환경을 제공하기 위한 것이다.
나아가, 본 발명에 따른 로봇 친화형 건물은 다수의 로봇과 연동하는 클라우드 시스템을 이용하여, 다수의 로봇 및 설비 인프라를 유기적으로 제어함으로써, 보다 체계적으로 서비스를 제공하는 로봇의 주행을 관리할 수 있다. 이를 통해, 본 발명에 따른 로봇 친화형 건물은, 보다 안전하고, 신속하게, 그리고 정확하게 사람들에게 다양한 서비스를 제공할 수 있다.
본 발명에 따른 맵 생성 방법은, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계, 상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계, 상기 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 상기 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하는 단계 및 상기 특정 맵 상에 상기 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행하는 단계를 포함할 수 있다.
나아가, 본 발명에 따른 맵 생성 시스템은, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 통신부 및 상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 제어부를 포함하고, 상기 제어부는, 상기 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 상기 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하고, 상기 특정 맵 상에 상기 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행할 수 있다.
나아가, 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램은, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계, 상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계; 상기 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 상기 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하는 단계; 및 상기 특정 맵 상에 상기 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행하는 단계를 수행하도록 하는 명령어들을 포함할 수 있다.
나아가, 본 명에 따른 복수의 로봇들이 서비스를 제공하는 건물은, 상기 로봇들이 사람과 공존하는 실내 공간을 가지는 복수의 층들(floors) 및 상기 로봇들과 클라우드 서버의 사이에서 통신을 수행하는 통신부를 포함하고, 상기 클라우드 서버는, 편집 인터페이스를 통해 생성된 건물 맵(map)에 근거하여, 상기 건물을 주행하는 상기 로봇들에 대한 제어를 수행하고, 상기 건물 맵은, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계, 상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계, 상기 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 상기 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하는 단계 및 상기 특정 맵 상에 상기 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행하는 단계를 통해 생성되고, 상기 클라우드 서버에는, 상기 특정 맵 상에 배치된 노드들에 따라 상기 로봇들이 상기 특정 층을 주행하도록, 상기 노드들이 배치된 상기 특정 맵이 업데이트 될 수 있다.
본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 것에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공할 수 있다. 이를 통해, 사용자는 복수의 층으로 이루어진 건물에 대해서, 각 층별 특정 맵을 생성 및 편집할 수 있다. 이에, 사용자는 복수의 층으로 이루어진 건물도 각 층의 특성을 정확하게 반영하여 각 층별 맞춤형 맵을 생성 및 수정할 수 있다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하고, 특정된 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행할 수 있다. 이를 통해, 본발명에서는 특정 층의 공간 특성을 정확하고 신속하게 반영하여 로봇의 안전 주행을 위한 맵을 생성할 수 있다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여 특정 맵 상에 노드를 할당할 수 있는 사용자 인터페이스를 제공함으로써, 숙련되지 않은 사용자도 특정 층의 공간 특성을 정확하고 신속하게 반영하여 맵을 생성할 수 있다.
나아가, 본 발명에 따른 로봇 친화형 건물은 로봇, 자율주행, AI, 클라우드 기술이 융합되고, 연결되는 테크 컨버전스(Technological Convergence)를 이용하며, 이러한 기술과, 로봇 그리고 건물내 구비되는 설비 인프라가 유기적으로 결합되는 새로운 공간을 제공할 수 있다.
나아가, 본 발명에 따른 로봇 친화형 건물은 다수의 로봇과 연동하는 클라우드 서버를 이용하여, 다수의 로봇 및 설비 인프라를 유기적으로 제어함으로써, 보다 체계적으로 서비스를 제공하는 로봇의 주행을 체계적으로 관리할 수 있다. 이를 통해, 본 발명에 따른 로봇 친화형 건물은, 보다 안전하고, 신속하게, 그리고 정확하게 사람들에게 다양한 서비스를 제공할 수 있다.
나아가, 본 발명에 따른 건물에서는 건물에 배치된 다수의 로봇에 할당된 임무와 이동 상황을 고려함은 물론, 사람을 배려하도록 주행이 제어됨으로써, 같은 공간 속에서 자연스럽게 로봇과 사람이 공존할 수 있다.
도 1, 도 2 및 도 3은 본 발명에 따른 로봇 친화형 건물을 설명하기 위한 개념도들이다.
도 4, 도 5 및 도 6은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇 및 로봇 친화형 건물에 구비된 다양한 설비를 제어하는 시스템을 설명하기 위한 개념도들이다.
도 7 및 도 8은 본 발명에 따른 로봇 친화형 건물에 구비된 설비 인프라를 설명하기 위한 개념도들이다.
도 9 내지 도 11은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇의 위치를 추정하는 방법을 설명하기 위한 개념도들이다.
도 12는 본 발명에 따른 로봇 운용을 위한 맵 생성 시스템을 설명하기 위한 개념도이다.
도 13은 본 발명에서 생성되는 맵을 설명하기 위한 개념도이다.
도 14는, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법을 설명하기 위한 흐름도이다.
도 15a, 도 15b 및 도 16은 본 발명에서 제공하는 편집 인터페이스를 설명하기 위한 개념도들이다.
도 17a, 도 17b, 도 17c 및 도 17d는 본 발명에서 노드 규칙에 따른 노드 그룹을 설명하기 위한 개념도들이다.
도 18, 도 19a, 도 19b 및 도 20은 본 발명에 따른 노드 배치 프로세스를 설명하기 위한 개념도들이다.
도 21a, 도21b, 도 22, 도 23a, 도 23b, 도 24 및 도 25는 본 발명에서 포인트 클라우드(Point Cloud) 기법을 이용하여 맵을 생성하는 방법을 설명하기 위한 개념도이다.
도 26 및 도 27은 본 발명에서 따른 검수 프로세스를 설명하기 위한 개념도들이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소에는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명은 로봇 친화형 건물에 관한 것으로서, 사람과 로봇이 안전하게 공존하고, 나아가 건물 내에서 로봇이 유익한 서비스를 제공할 수 있는 로봇 친화형 건물을 제안한다.
보다 구체적으로, 본 발명은 로봇, 로봇 친화 인프라 및 이를 제어하는 다양한 시스템을 이용하여, 사람에게 유용한 서비스를 제공하는 방법을 제공한다. 본 발명에 따른 건물에서는 사람과 다수의 로봇이 공존할 수 있으며, 다수의 로봇이 건물 내에서 자유롭게 이동할 수 있는 다양한 인프라(또는 설비 인프라)가 제공될 수 있다.
본 발명에서, 건물은 지속적인 거주, 생활, 업무 등을 위하여 만들어진 구조물로서, 상업용 건물, 산업용 건물, 기관용 건물, 거주용 건물 등과 같이 다양한 형태를 가질 수 있다. 또한, 상기 건물은 복수의 층을 가진 다층 건물과 이에 반대되는 단층 건물이 될 수 있다. 다만, 본 발명에서는 설명의 편의상 다층 건물에 적용되는 인프라 또는 설비 인프라를 예시로서 설명한다.
본 발명에서, 인프라 또는 설비 인프라는, 서비스 제공, 로봇의 이동, 기능 유지, 청결 유지 등을 위하여 건물에 구비되는 시설로서, 그 종류 및 형태는 매우 다양할 수 있다. 예를 들어, 건물에 구비되는 인프라는 이동 설비(예를 들어, 로봇 이동 통로, 엘리베이터, 에스컬레이터 등), 충전 설비, 통신 설비, 세척 설비, 구조물(예를 들어, 계단 등) 등과 같이 다양할 수 있다. 본 명세서에서는 이러한 설비들은 시설, 인프라, 시설 인프라 또는 설비 인프라로 명명하도록 하며, 경우에 따라 용어를 혼용하여 사용하도록 한다.
나아가, 본 발명에 따른 건물에서는 건물, 건물에 구비된 다양한 설비 인프라 및 로봇 중 적어도 하나가 서로 연동하여 제어됨으로써, 로봇이 안전하고, 정확하게 건물 내에서 다양한 서비스를 제공하도록 이루어질 수 있다.
본 발명은 다수의 로봇이 건물 내에서 주행하고, 임무(또는 업무)에 따른 서비스를 제공하며, 필요에 따라 대기 또는 충전 기능, 나아가 로봇에 대한 수리 및 세척 기능을 지원할 수 있는 다양한 설비 인프라가 구비된 건물을 제안한다. 이러한 건물은 로봇에 대한 통합 솔루션(또는 시스템)을 제공하며, 본 발명에 따른 건물은 다양한 수식어로서 명명될 수 있다. 예를 들어, 본 발명에 따른 건물은, i)로봇이 이용하는 인프라를 구비하는 건물, ii)로봇 친화 인프라를 구비하는 건물, iii)로봇 친화형 건물, iv) 로봇과 사람이 함께 생활하는 건물, v)로봇을 이용한 다양한 서비스를 제공하는 건물과 등과 같이, 다양하게 표현될 수 있다.
한편, 본 발명에서 “로봇 친화”의 의미는, 로봇이 공존하는 건물에 대한 것으로서, 보다 구체적으로, 로봇의 주행을 허용하거나, 로봇이 서비스를 제공하거나, 로봇이 이용 가능한 설비 인프라가 구축되어 있거나, 로봇에게 필요한 기능(ex: 충전, 수리, 세척 등)을 제공하는 설비 인프라가 구축되어 있음을 의미할 수 있다. 이 경우에, 본 발명에서 “로봇 친화”는 로봇과 사람의 공존을 위한 통합 솔루션을 가지고 있다는 의미로 사용될 수 있다.
이하에서는 첨부된 도면과 함께, 본 발명에 대해 보다 구체적으로 살펴본다.
도 1, 도 2 및 도 3은 본 발명에 따른 로봇 친화형 건물을 설명하기 위한 개념도들이고, 도 4, 도 5 및 도 6은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇 및 로봇 친화형 건물에 구비된 다양한 설비를 제어하는 시스템을 설명하기 위한 개념도들이다. 나아가, 도 7 및 도 8은 본 발명에 따른 로봇 친화형 건물에 구비된 설비 인프라를 설명하기 위한 개념도들이다.
먼저, 설명의 편의를 위하여, 대표적인 도면 부호를 정의하기로 한다.
본 발명에서, 건물은 도면 부호 “1000”을 부여하며, 건물(1000)의 공간(실내 공간 또는 실내 영역)은 도면 부호 “10”을 부여한다(도 8 참조). 나아가, 건물(1000)의 실내 공간을 구성하는 복수의 층들(floors)에 각각 해당하는 실내 공간은 도면 부호 10a, 10b, 10c등을 부여한다(도 8 참조). 본 발명에서 실내 공간 또는 실내 영역은 건물의 외부와 반대되는 개념으로 외벽에 의하여 보호되는 건물의 내부를 의미하는 것으로서, 공간을 의미하는 것으로 한정되지 않는다.
나아가, 본 발명에서 로봇은 도면 부호 “R”을 부여하며, 도면 또는 명세서에서는 로봇에 대하여 도면 부호를 기입하지 않더라도, 모두 로봇(R)으로 이해되어질 수 있다.
나아가, 본 발명에서 사람 또는 인간은 도면 부호 “U”를 부여하며, 사람 또는 인간은 동적인 객체로서 명명이 가능하다. 이때 동적인 객체는 반드시 사람만을 의미하는 것이 아니라, 강아지, 고양이와 같은 동물 또는 다른 적어도 하나의 로봇(예를 들어, 사용자의 개인 로봇, 다른 서비스를 제공하는 로봇 등), 드론, 청소기(예를 들어, 로봇 청소기)와 같이 움직임이 가능한 사물을 포함하는 의미로 받아들여질 수 있다.
한편, 본 발명에서 설명되는 건물(建物, building, structure, edifice, 1000)은 특별한 종류에 제한을 두지 않으며, 사람이 들어 살거나, 일을 하거나, 동물을 사육하거나, 또는 물건을 넣어 두기 위하여 지은 구조물을 의미할 수 있다.
예를 들어, 건물(1000)은 사무실, 오피스, 오피스텔, 아파트, 주상복합 아파트, 주택, 학교, 병원, 음식점, 관공서 등이 될 수 있으며, 본 발명은 이러한 다양한 종류의 건물들에 적용될 수 있다.
도 1에 도시된 것과 같이, 본 발명에 따른 건물(1000)에서는 로봇이 주행하며 다양한 서비스를 제공할 수 있다.
건물(1000)내에는 하나 또는 그 이상의 서로 다른 종류의 복수의 로봇들이 위치할 수 있으며, 이러한 로봇들은 서버(20)의 제어 하에, 건물(1000) 내를 주행하고, 서비스를 제공하며, 건물(1000)에 구비된 다양한 설비 인프라를 이용할 수 있다.
본 발명에서 서버(20)의 위치는 다양하게 존재할 수 있다. 예를 들어, 서버(20)는 건물(1000)의 내부 및 건물(1000)의 외부 중 적어도 하나에 위치할 수 있다. 즉, 서버(20)의 적어도 일부는 건물(1000)의 내부에 위치하고, 나머지 일부는 건물(1000)의 외부에 위치할 수 있다. 또는, 서버(20)는 건물(1000) 내부에 모두 위치하거나, 건물(1000) 외부에만 위치할 수 있다. 이에, 본 발명에서는, 서버(20)의 구체적인 위치에 대해서는 특별한 한정을 두지 않기로 한다.
나아가, 본 발명에서 서버(20)는 클라우드 컴퓨팅(Cloud Computing) 방식의 서버(클라우드 서버, 21) 및 엣지 컴퓨팅(Edge computing) 방식의 서버(엣지 서버, 22) 중 적어도 하나의 방식을 이용하도록 이루어질 수 있다. 나아가, 서버(20)는 클라우드 컴퓨팅 또는 엣지 컴퓨팅 방식 외에도, 로봇을 제어 가능한 방식이기만 하면 본 발명에 적용될 수 있다.
한편, 본 발명에 따른 서버(20)는 경우에 따라, 클라우드 컴퓨팅(Cloud Computing) 방식의 서버(21) 및 엣지 컴퓨팅(Edge computing) 방식을 혼합하여 로봇 및 건물(1000)내 구비된 설비 인프라 중 적어도 하나에 대한 제어를 수행할 수 있다.
한편, 로봇(R)은 제어 명령에 따라 구동될 수 있다. 예를 들면, 로봇(R)은 움직임을 변경함으로써 위치를 이동하거나 자세를 변경할 수 있으며, 소프트웨어 업데이트를 수행할 수 있다.
본 발명에서는, 설명의 편의를 위하여, 서버(20)를 “클라우드 서버”로 통일하여 명명하도록 하며, 도면 부호 “20”을 부여하도록 한다. 한편, 이러한 클라우드 서버(20)는 엣지 컴퓨팅의 엣지 서버(22)의 용어로도 대체될 수 있음은 물론이다.
나아가, “클라우드 서버”의 용어는 클라우드 로봇 시스템, 클라우드 시스템, 클라우드 로봇 제어 시스템, 클라우드 제어 시스템 등의 용어로 다양하게 변경될 수 있다.
한편, 본 발명에 따른 클라우드 서버(20)는 건물(1000)을 주행하는 복수의 로봇에 대한 통합 제어를 수행하는 것이 가능하다. 즉, 클라우드 서버(20)는 건물(1000)내 위치한 i)복수의 로봇(R)에 대한 모니터링을 수행하고, ii)복수의 로봇에 대해 임무(또는 업무)를 할당하며, iii)복수의 로봇(R)이 임무를 성공적으로 수행하도록 건물(1000)내 구비된 설비 인프라를 직접적으로 제어하거나, iv)설비 인프라를 제어하는 제어 시스템과 통신을 통하여 설비 인프라가 제어되도록 할 수 있다.
나아가, 클라우드 서버(20)는 건물에 위치한 로봇들의 상태 정보를 확인하고, 로봇들에 필요한 다양한 기능을 제공(또는 지원)할 수 있다. 여기에서, 다양한 기능은, 로봇들에 대한 충전 기능, 오염된 로봇에 대한 세척 기능, 임무가 완료된 로봇들에 대한 대기 기능 등이 존재할 수 있다.
클라우드 서버(20)는 로봇들에 대해 다양한 기능을 제공하기 위하여, 로봇들이 건물(1000)에 구비된 다양한 설비 인프라를 이용하도록, 로봇들을 제어할 수 있다. 나아가, 클라우드 서버는, 로봇들에 대해 다양한 기능을 제공하기 위하여, 건물(1000)내 구비된 설비 인프라를 직접적으로 제어하거나, 설비 인프라를 제어하는 제어 시스템과 통신을 통하여 설비 인프라가 제어되도록 할 수 있다.
이와 같이, 클라우드 서버(20)에 의해 제어되는 로봇들은 건물(1000)을 주행하며, 다양한 서비스를 제공할 수 있다.
한편, 클라우드 서버(20)는 데이터베이스에 저장된 정보를 근거로, 다양한 제어를 수행할 수 있으며, 본 발명에서 데이터베이스의 종류 및 위치에는 특별한 한정을 두지 않는다. 이러한 데이터베이스의 용어는 메모리, 저장부, 저장소, 클라우드 저장소, 외부 저장소, 외부 서버 등, 정보가 저장되는 수단을 의미하는 용어이면 자유롭게 변형되어 사용되어질 수 있다. 이하에서는 “데이터베이스”의 용어로 통일하여 설명하도록 한다.
한편, 본 발명에 따른 클라우드 서버(20)는 로봇들이 제공하는 서비스의 종류, 로봇에 대한 제어의 종류 등 다양한 기준에 근거하여 로봇에 대한 분산 제어를 수행할 수 있으며, 이 경우, 클라우드 서버(20)에는 하위 개념의 종속적인 서브 서버들이 존재할 수 있다.
나아가, 본 발명에 따른 클라우드 서버(20)는 다양한 인공지능 알고리즘에 근거하여, 건물(1000)을 주행하는 로봇을 제어할 수 있다.
나아가, 클라우드 서버(20)는 로봇을 제어하는 과정에서 수집되는 데이터들을 학습 데이터로서 활용하는 인공지능 기반의 학습을 수행하고, 이를 로봇의 제어에 활용함으로써, 로봇에 대한 제어가 이루어질수록 로봇을 보다 정확하고, 효율적으로 운용할 수 있다. 즉, 클라우드 서버(20)는 딥러닝 또는 머신 러닝을 수행하도록 이루어질 수 있다. 또한, 클라우드 서버(20)는 시뮬레이션 등을 통하여 딥러닝 또는 머신 러닝을 수행하고, 그 결과로서 구축된 인공지능 모델을 이용하여 로봇에 대한 제어를 수행할 수 있다.
한편, 건물(1000)에는 로봇의 주행, 로봇의 기능 제공, 로봇의 기능 유지, 로봇의 임무 수행 또는 로봇과 사람의 공존을 위하여 다양한 설비 인프라가 구비될 수 있다.
예를 들어, 도 1의 (a)에 도시된 것과 같이, 건물(1000) 내에는 로봇(R)의 주행(또는 이동)을 지원할 수 있는 다양한 설비 인프라(1, 2)가 구비될 수 있다. 이러한 설비 인프라(1, 2)는 건물(1000)의 층 내에서 로봇(R)의 수평 방향으로의 이동을 지원하거나, 건물(1000)의 서로 다른 층 사이를 로봇(R)이 이동하도록 수직 방향으로의 이동을 지원할 수 있다. 이와 같이, 상기 설비 인프라(1, 2)는 로봇의 이동을 지원하는 운송체계를 구비할 수 있다. 클라우드 서버(20)는 이러한 다양한 설비 인프라(1, 2)를 이용하도록 로봇(R)을 제어하여, 도 1의 (b)에 도시된 것과 같이, 로봇(R)이 서비스를 제공하기 위하여 건물(1000) 내를 이동하도록 할 수 있다.
한편, 본 발명에 따른 로봇들은 클라우드 서버(20) 및 로봇 자체에 구비된 제어부 중 적어도 하나에 근거하여 제어되어, 건물(1000) 내를 주행하거나, 부여된 임무에 해당하는 서비스를 제공하도록 이루어질 수 있다.
나아가, 도 1의 (c)에 도시된 것과 같이, 본 발명에 따른 건물은 로봇과 사람들이 공존하는 건물로서, 로봇들은 사람(U), 사람이 사용하는 물건(예를 들어 유모차, 카트 등), 동물과 같은 장애물을 피하여 주행하도록 이루어지며, 경우에 따라 로봇의 주행과 관련된 알림 정보(3)를 출력하도록 이루어질 수 있다. 이러한 로봇의 주행은 클라우드 서버(20) 및 로봇에 구비된 제어부 중 적어도 하나의 근거 하에 장애물을 피하도록 이루어질 수 있다. 클라우드 서버(20)는 로봇에 구비된 다양한 센서(예를 들어, 카메라(이미지 센서), 근접 센서, 적외선 센서 등)를 통해 수신되는 정보에 근거하여, 로봇이 장애물을 피하여 건물(1000) 내를 이동하도록 로봇에 대한 제어를 수행할 수 있다.
또한, 도 1의 (a) 내지 (c)의 과정을 거쳐 건물 내를 주행하는 로봇은, 도 1의 (d)에 도시된 것과 같이, 건물 내에 존재하는 사람 또는 타겟 객체에게 서비스를 제공하도록 이루어질 수 있다.
로봇이 제공하는 서비스의 종류는, 로봇 마다 상이할 수 있다. 즉, 로봇은 용도에 따라 다양한 종류가 존재할 수 있으며, 로봇은 용도 마다 상이한 구조를 가지고, 로봇에는 용도에 적합한 프로그램이 탑재될 수 있다.
예를 들어, 건물(1000)에는 배송, 물류 작업, 안내, 통역, 주차지원, 보안, 방범, 경비, 치안, 청소, 방역, 소독, 세탁, 푸드(food) 제조, 음식 제조, 서빙, 화재 진압, 의료 지원 및 엔터테인먼트 서비스 중 적어도 하나의 서비스를 제공하는 로봇들이 배치될 수 있다. 로봇들이 제공하는 서비스는 위에서 열거된 예들 외에도 다양할 수 있다.
한편, 클라우드 서버(20)는 로봇들 각각의 용도를 고려하여, 로봇들에게 적절한 임무를 할당하고, 할당된 임무가 수행되도록 로봇들에 대한 제어를 수행할 수 있다.
본 발명에서 설명되는 로봇들 중 적어도 일부는 클라우드 서버(20)의 제어 하에 주행하거나, 임무를 수행할 수 있으며, 이 경우, 로봇 자체에서 주행 또는 임무를 수행하기 위하여 처리되는 데이터의 양은 최소화될 수 있다. 본 발명에서는 이러한 로봇을 브레인리스(brainless) 로봇이라고 명명할 수 있다. 이러한 브레인리스 로봇은, 건물(1000) 내에서 주행, 임무 수행, 충전 수행, 대기, 세척 등의 행위를 하는데 있어서, 적어도 일부의 제어를 클라우드 서버(20)의 제어에 의존할 수 있다.
다만, 본 명세서에서는 브레인리스 로봇을 구분하여 명명하지 않고, 모두 “로봇”으로 통일하여 명명하도록 한다.
도 9 내지 도 11은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇의 위치를 추정하는 방법을 설명하기 위한 개념도들이다.
위에서 살펴본 것과 같이, 본 발명에 따른 건물에서는, 건물에 구비된 다양한 인프라를 이용하여, 로봇의 위치를 추출하고, 모니터링하는 것이 가능하다. 나아가, 클라우드 서버(20)는 이러한 로봇의 위치를 모니터링 함으로써, 건물 내에서 로봇을 효율적이고, 정확하게 제어하는 것이 가능하다.
본 발명에 따른 로봇(R) 운용을 위한 맵 생성 시스템(3000)은, 건물(1000) 내 공간들의 특성 및 상황을 정확하고 올바르게 반영하여 맵(Map)을 생성하는 방법 및 이를 위한 사용자 환경을 제공하는 것으로, “맵 생성 시스템”, “맵 편집 시스템”, “맵 관리 시스템” “맵 생성 에디터(editor)”, ”맵 편집 에디터”, “맵 관리 에디터”, “맵 에디터”, “편집 에디터”, “편집 에디터” 등으로 다양하게 혼용되어 명명될 수 있다.
한편, 로봇(R)을 이용하여 다양한 서비스를 제공하기 위해서는, 건물(1000)에 위치한 로봇(R)이 건물(1000) 내를 안전하고 효율적으로 이동하도록, 건물(1000) 내 실제 공간(10)들의 특성 및 상황을 반영하여 로봇(R)의 운용 및 주행에 활용되는 맵(Map)을 정확하고 올바르게 작성하는 것이 매우 중요하다.
이에, 본 발명은, 건물(1000)내 공간 특성 및 상황을 정확하게 반영하여, 특정 층에 대한 특정 맵을 생성하고, 상기 특정 맵(1700)에 노드를 할당하는 방법 및 이를 위한 사용자 환경을 제공하는 방법을 제안한다.
이하에서는, 첨부된 도면과 함께, 건물(1000) 내 공간들의 특성 및 상황을 정확하게 반영하여 특정 층에 대한 특정 맵을 생성하고, 노드를 할당하는 방법 및 이를 위한 사용자 환경에 대해 보다 구체적으로 살펴본다.
도 12는 본 발명에 따른 로봇 운용을 위한 맵 생성 시스템을 설명하기 위한 개념도이다. 도 13은 본 발명에서 생성되는 맵을 설명하기 위한 개념도이고, 도 14는, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법을 설명하기 위한 흐름도이고, 도 15a, 도 15b 및 도 16은 본 발명에서 제공하는 편집 인터페이스를 설명하기 위한 개념도들이고, 도 17a, 도 17b, 도 17c 및 도 17d는 본 발명에서 노드 규칙에 따른 노드 그룹을 설명하기 위한 개념도들이고, 도 18, 도 19a, 도 19b 및 도 20은 본 발명에 따른 노드 배치 프로세스를 설명하기 위한 개념도들이고, 도 21a, 도 21b 도 22, 도 23a, 도 23b, 도 24 및 도 25는 본 발명에서 포인트 클라우드(Point Cloud) 기법을 이용하여 맵을 생성하는 방법을 설명하기 위한 개념도이며, 도 26 및 도 27은 본 발명에서 따른 검수 프로세스를 설명하기 위한 개념도들이다.
도 12에 도시된 것과 같이, 본 발명에 따른 로봇(R) 운용을 위한 맵 생성 시스템(3000)은, 통신부(310), 저장부(320) 및 제어부(330) 중 적어도 하나를 포함할 수 있다.
통신부(310)는, i) 전자기기(50), ii) 클라우드 서버(20), iii) 건물(1000) 내에 배치된 다양한 로봇(R), iv) 건물(1000) 내에 배치된 다양한 설비 인프라(200) 및 v) 건물 시스템(1000b) 중 적어도 하나와 통신을 수행하도록 이루어질 수 있다.
여기에서, 전자기기(50)는, 본 발명에 따른 로봇(R) 운용을 위한 맵 생성 시스템(3000)과 통신 가능한 전자기기이면 되며, 그 종류에 특별한 제한을 두지 않는다. 예를 들어, 전자기기(50)는, 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(notebook computer), 휴대용 컴퓨터(laptop computer), 슬레이트 PC(slate PC), 태블릿 PC(tablet PC), 울트라북(ultrabook), 데스크톱 컴퓨터(desktop computer), 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 웨어러블 디바이스(wearable device, 예를 들어, 워치형 단말기 (smartwatch), 글래스형 단말기 (smart glass), HMD(head mounted display)) 등이 포함될 수 있다. 본 발명에서 전자기기는, 사용자 단말 및 사용자 단말기와 혼용하여 사용될 수 있다.
통신부(310), 로봇(R) 또는 클라우드 서버(20)로부터, 로봇(R)이 건물(1000) 내를 주행하면서 센싱(또는 스캔)한 공간(10)의 센싱 정보(또는 스캔 정보)를 수신할 수 있다.
본 발명에서는, 건물(1000) 내를 주행하면서 공간을 스캔하는 로봇(R)을 “센싱 로봇”, “스캔 로봇”, “매핑(mapping) 로봇”, “자율 주행 로봇”, “주행 로봇” 등으로 다양하게 명명할 수 있으며, 로봇(R)이 공간을 센싱(또는 스캔)하여 획득한 정보를 “센싱 정보”, “스캔 정보 등으로 다양하게 명명할 수 있다.
여기에서, “공간을 센싱한다”는 것은, 적어도 하나의 센서를 이용하여 건물(1000) 내 공간(10)에 대한 영상을 촬영하거나, 공간(10) 상에 위치하는 객체에 대한 정보를 획득하는 것으로 이해할 수 있다.
나아가, 통신부(310)는, 전자기기(50)의 디스플레이부(51) 상에 맵 생성 및 편집을 위한 편집 인터페이스(1600)를 출력하기 위하여 편집 인터페이스(1600)와 관련된 정보를 전자기기(50)로 전송하고, 전자기기(50)로부터 특정 층에 대한 특정 맵(1700) 상에 노드 할당하는 노드 할당과 관련된 편집 정보를 수신할 수 있다.
여기에서, 편집 인터페이스(1600)와 관련된 정보는, 편집 인터페이스(1600)를 통해 사용자가 맵 생성과 관련된 다양한 작업(맵 생성, 맵 작성, 맵 편집 등)을 수행할 수 있도록 제공되는 모든 정보를 포함하는 것으로 이해될 수 있다.
나아가, 통신부(310)는, 노드가 할당된 특정 맵(1700)에 근거하여 로봇(R)이 건물(1000) 내를 주행할 수 있도록, 상기 노드가 할당된 특정 맵을 클라우드 서버(20)로 전송하여 업데이트할 수 있다.
다음으로, 저장부(320)는, 본 발명과 관련된 다양한 정보를 저장하도록 이루어질 수 있다.
저장부(320)에는 건물(1000) 내 복수의 층 중 특정 층에 대한 공간 메타 정보가 포함될 수 있다.
여기에서, 공간 메타 정보는, 특정 층의 공간의 특성이 반영된 다양한 정보로, 예를 들어, 특정 층의 공간 특성이 반영된 도면을 포함할 수 있다.
나아가, 저장부(320)에는, 서로 다른 공간 특성 각각 마다 정의되는 노드 규칙을 포함하는 노드 규칙 정보가 존재할 수 있다.
노드 규칙은, 서로 다른 공간 특성마다의 상황에서, 어떠한 속성의 노드를 특정 맵(1700)의 어느 위치에 배치(또는 할당)해야 하는지에 대한 규칙을 정의한 정보로 이해될 수 있다.
예를 들어, 엘리베이터 설비와 관련된 노드 규칙은, 엘리베이터의 입구 영역에는 엘리베이터로의 진출입(進出入)을 위한 경유 노드를 할당하고, 엘리베이터의 입구 좌우 영역에는 상기 엘리베이터의 승차 대기를 위한 승차 대기 노드를 할당하고, 엘리베이터의 입구의 전방 영역에는 상기 엘리베이터로부터의 하차를 위한 하차 노드를 할당하도록 규칙 정보를 포함할 수 있다.
한편, 본 발명에서 저장부(320)는 로봇(R) 운용을 위한 맵 생성 시스템 (3000) 자체에 구비될 수 있다. 이와 다르게, 저장부(320)의 적어도 일부는, 클라우드 서버(20), 외부 데이터베이스 및 건물 시스템(1000a)의 저장부(140) 중 적어도 하나를 의미할 수 있다. 즉, 저장부(320)는 본 발명에 따른 맵 생성을 위하여 필요한 정보가 저장되는 공간이면 충분하며, 물리적인 공간에 대한 제약은 없는 것으로 이해될 수 있다. 이에, 이하에서는, 저장부(320), 클라우드 서버(210), 외부 데이터베이스 및 건물 시스템(1000a)의 저장부(140)를 별도로 구분하지 않고, 모두 저장부(320)로 표현하도록 한다.
다음으로 제어부(330)는 본 발명에 따른 로봇(R) 운용을 위한 맵 생성 시스템(3000)의 전반적인 동작을 제어하도록 이루어질 수 있다. 제어부(330)는 위에서 살펴본 구성 요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 사용자에게 적절한 정보 또는 기능을 제공 또는 처리할 수 있다.
제어부(330)는, 로봇(R)이 건물(1000)을 주행하면서 획득한 센싱 정보 및 저장부(320)에 저장되어 있는 공간 메타 정보를 이용하여, 특정 맵(1700)을 정확하게 생성할 수 있다.
나아가, 제어부(330)는, 도 13에 도시된 것과 같이, 특정 층의 공간 특성에 매칭된 노드 규칙에 따라, 특정 맵(1700) 상에 적어도 하나의 노드(1310, 1320, 1330)을, 정확하고 효율적으로 배치할 수 있다.
나아가, 제어부(330)는, 로봇(R)이 건물(1000) 내 공간(10)의 특성 및 상황을 정확하고 올바르게 반영한 특정 맵에 근거하여, 건물(1000) 내 공간(또는 특정 층)을 주행하도록, 노드 규칙에 따라 노드가 배치된 특정 맵을 클라우드 서버(20)에 업데이트할 수 있다.
앞서 설명한 것과 같이, 클라우드 서버(20)는 건물 내에서 서비스를 제공하는 복수의 로봇(R)들에 대한 제어를 수행할 수 있다. 특히, 클라우드 서버(20)는, 특정 공간 또는 특정 층에 대응되는 특정 맵에 기초하여, 로봇(R)의 전역(全域) 이동 경로 및 지역(地域) 이동 경로를 생성하고, 생성된 이동 경로에 따라 로봇(R)이 이동하도록 제어를 수행할 수 있다.
이와 같이, 본 발명에서는 로봇(R)이 건물 내에서 서비스를 제공하는 로봇(R)의 제어에 활용되는 맵을, 공간(10)의 특성 및 상황을 정확하고 올바르게 반영하여 생성하며, 사용자가 상기 맵을 손쉽고 직관적으로 작성 또는 편집할 수 있는 편집 인터페이스(1600)를 제공할 수 있다.
이하에서는, 상기 설명한 로봇(R) 운용을 위한 맵 생성 시스템(3000)의 각 구성에 기초하여, 사용자가 로봇(R)의 운용 및 주행에 이용되는 맵을, 정확하고 올바르게 생성하는 방법에 대해서 보다 구체적으로 설명하도록 한다.
본 발명에서는, 로봇(R)이 특정 층의 공간(10)을 안전하고 정확하게 주행할 수 있도록, 특정 층에 대한 특정 맵(1700) 상에 특정 층의 공간 특성을 반영하여 적어도 하나의 노드를 배치할 수 있다.
본 발명에서, “특정 맵(1700) 상에 노드를 배치한다”는 것은, “특정 맵(1700) 상에 노드에 대응하는 노드 그래픽 객체를 배치한다”는 것으로 이해할 수 있다.
한편, 본 발명에서 설명되는 노드는, 속성(또는 종류)에 따라 서로 다른 세가지 타입을 가질 수 있다. ii) 제1 노드 타입을 가지는 노드는, 로봇(R)들의 주행에 연계된 주행 노드이고, i) 제2 노드 타입을 가지는 노드는, 로봇들의 특정 동작에 연계된 동작 노드에 대응되는 동작 노드이고, iii) 제3 노트 타입을 가지는 노드는, 특정 층에 배치된 설비에 연계된 설비 노드에 대응되는 설비 노드를 의미할 수 있다.
본 발명에서 서비스를 제공하는 로봇들은, 로봇들이 위치한 곳에 할당된 노드에 정의된 동작을 수행하도록 이루어질 수 있다.
동작 노드는, 노드 간 주행을 통해 특정 노드로 이동한 로봇(R)이, 특정 노드에 대응되는 동작을 수행하도록 미리 설정되어진 노드로 이해되어질 수 있다. 즉, 동작 노드는, 주행 노드의 역할도 포함하는 노드이기 때문에, 본 발명에서의 주행 노드는, 동작 노드를 포함하는 것을 이해될 수 있다.
설비 노드는 특정 층의 실제 구역(또는 대상 공간)에서 특정 설비가 위치한 특정 지점 및 로봇이 상기 특정 설비(예를 들어, 스피드 게이트, 엘리베이터 등)를 통과하기 위하여 필수적으로 경유해야 하는 특정 영역 중 적어도 하나와 대응되는 영역에 할당된다. 즉, 로봇이 특정 설비를 이용하는 경우, 로봇은 상기 특정 설비에 대응하는 복수의 설비 노드 중 적어도 일부로 이동해야 한다.
이하에서 설명되는 노드는, 주행 노드, 동작 노드 및 설비 노드 중 적어도 하나를 포함하는 것으로 이해될 수 있다.
한편, 노드는, 각각의 노드 별로 노드 정보가 대응될 수 있다. 노드 정보는 적어도 두 가지 정보를 포함할 수 있다.
첫 번째로, 노드 정보는 좌표 정보를 포함한다. 단일 노드는 지도 상의 특정 좌표 또는 좌표 범위를 지정한다. 예를 들어, 노드는 지도 상에서 소정 면적을 가지는 원형의 영역을 지정하도록 이루어질 수 있다. 이를 위해, 노드에 포함된 좌표 정보는 특정 좌표 또는 좌표 범위로 이루어질 수 있다.
두 번째로, 노드 정보는 설비 정보를 포함한다. 설비 정보는 대상 공간에 배치된 설비와 관련된 정보를 정의한다. 구체적으로, 설비 정보는 설비의 종류, 설비에 대응하는 서버와 관련된 정보, 설비가 배치된 위치에 대응하는 노드의 노드 정보 중 적어도 하나를 포함할 수 있다.
한편, 본 발명에서는, 노드 및 상기 특정 노드와는 다른 노드를 서로 연결하는 선을, 엣지(Edge) 또는 엣지 그래픽 객체로 명명할 수 있다.
상기 엣지(또는 엣지 그래픽 객체)에는, 엣지 별로 엣지 정보(또는 엣지 그래픽 객체 정보)가 대응(또는 매칭)될 수 있다.
엣지 정보는, i) 서로 다른 노드를 연결하는 연결 정보 및 ii) 상기 서로 다른 노드 사이에서 로봇(R)의 이동 방향을 정의하는 방향 정보 중 적어도 하나를 포함할 수 있다.
상기 연결 정보는, 엣지에 의해 서로 연결되는 서로 다른 두개의 노드에 대한 정보를 포함할 수 있다.
예를 들어, 상기 연결 정보는, 엣지에 의해 연결되는 제1 노드 및 제2 노드 각각의 식별 정보를 포함할 수 있다. 상기 연결 정보에 근거하여, 엣지(또는 엣지 그래픽 객체)는 특정 맵 상에서 제1 노드 및 제2 노드를 연결하는 선(또는 선에 대응하는 그래픽 객체)로 출력(또는 표시)될 수 있다. 이에, 본 발명에서, 엣지는 연결 정보를 의미하는 것으로도 이해할 수 있다.
나아가, 상기 방향 정보는, 두 개의 노드 중 어느 하나에서 다른 하나로 로봇이 이동 가능할 때, 로봇이 단방향으로만 이동 가능한지, 아니면 양방향으로 모두 이동 가능한지 정의하는 정보를 포함할 수 있다.
예를 들어, 로봇(R)이, 제1 노드에서 제2 노드로 이동이 가능하지만, 제2 노드에서 제1 노드로는 이동이 제한된다고 가정하자. 제1 노드 및 제2 노드를 연결하는 엣지에 대응하는 엣지 정보에는, 제1 노드에서 제2 노드로의 단방향 이동을 정의하는 방향 정보가 포함될 수 있다.
다른 예를 들어, 로봇(R)이, 제1 노드에서 제2 노드로의 이동 및 제2 노드에서 제1 노드로의 이동이 모두 가능하다고 가정하자. 제1 노드 및 제2 노드를 연결하는 엣지에 대응하는 엣지 정보에는, 제1 노드 및 제2 노드 사이의 양방향 이동을 정의하는 방향 정보가 포함될 수 있다.
본 발명에서, 상기 방향 정보는, 엣지(또는 엣지 그래픽 객체)에 포함된 메타(meta) 정보로 이해될 수 있다.
이처럼, 본 발명에서의 특정 맵은, 특정 위치에 매핑된 적어도 하나의 노드 및 서로 다른 노드를 연결하는 엣지를 포함할 수 있다.
상기 노드 각각에는, 각각의 노드에 대응하는 노드 정보가 매칭되어 있을 수 있으며, 상기 노드 정보에는, 상기 노드의 좌표 정보 및 설비 정보를 포함할 수 있다.
상기 엣지 각각에는, 각각의 엣지에 대응하는 엣지 정보가 매칭되어 있을 수 있으며, 상기 엣지 정보에는, 연결 정보 및 방향 정보를 포함할 수 있다.
한편, 본 발명에서의 연결 정보 및 방향 정보는, 노드 정보에 포함되어 있는 것으로도 설명될 수 있다. 보다 구체적으로, 상기 연결 정보 및 방향 정보가, 제1 노드 및 제2 노드를 연결하는 엣지(또는 엣지 그래픽 객체)에 대응하는 엣지 정보(또는 엣지 그래픽 객체 정보)에 포함되어 있는 경우, 본 발명에서는, 상기 연결 정보 및 방향 정보가, 제1 노드 및 제2 노드 각각에 대응하는 노드 정보에 포함된 것으로도 설명할 수 있다. 즉, 본 발명에서, 특정 노드에 설정된 것으로 설명되는 방향 정보는, 상기 특정 노드 및 다른 특정 노드와 관련된 엣지(또는 엣지 그래픽 객체)에 포함된 방향 정보로 이해될 수 있다.
한편, 특정 층의 대상 공간은 복수의 구역으로 구획될 수 있다. 특정 맵(1700)은 복수의 구역을 포함한다. 각각의 구역에는 적어도 하나의 노드가 할당된다. 각각의 구역들은 구역에 포함된 적어도 하나의 노드를 기준으로 구분된다.
한편, 본 명세서에서 구역은 구역에 할당된 노드의 타입에 따라 두 가지 타입을 가질 수 있다. 구체적으로, 구역은 설비가 위치한 곳에 대응되는 영역에 할당되는 노드를 포함하는 제1구역 타입의 구역과 설비가 위치한 곳과 대응되지 않는 영역에 할당되는 노드를 포함하는 제2구역 타입의 구역으로 이루어질 수 있다.
제1 및 제2구역 타입 각각에는 동일 타입의 구역만 할당될 수 있다. 예를 들어, 제1구역 타입의 구역에는 제1노드 타입의 노드만 할당되며, 제2구역 타입의 구역에는 제2노드 타입의 노드만 할당될 수 있다.
각각의 구역에는 해당 구역에 대응하는 구역 정보가 대응될 수 있다. 구역 정보는, 해당 구역에 포함된 노드 각각의 일련 번호 및 위치 정보, 해당 구역에 포함된 노드 간의 연결 정보, 인접한 구역 간의 구역 연결 정보 및 설비 정보 중 적어도 하나를 포함할 수 있다.
구역 연결 정보는 해당 구역과 인접한 구역 별로 생성될 수 있다. 서로 이웃한 제1구역 및 제2구역에 대한 구역 연결 정보는 제1구역에 포함된 노드들 중 상기 제2구역과 가장 가깝게 배치된 제1노드의 노드 정보 및 제2구역에 포함된 노드들 중 상기 제1구역과 가장 가깝게 배치된 제2노드의 노드 정보를 포함할 수 있다. 즉, 구역 연결 정보는 구역 간 이동을 위해 이동해야 하는 노드를 정의한다.
이하에서는 첨부된 도면들과 함께 맵 상에 노드를 할당하는 과정에 대해서 보다 구체적으로 설명하도록 한다.
먼저, 본 발명에서는, 건물(1000)의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청 수신하는 과정이 진행될 수 있다(S1410, 도 14 참조).
앞서 설명한 것과 같이, 본 발명에서의 건물(1000)은 복수의 층으로 이루질 수 있다. 통신부(310)는 전자기기(50)로부터 건물(1000)을 이루는 복수의 층 중 특정 층에 대한 맵 편집 요청을 수신할 수 있다.
본 발명에서 “맵 편집”은, 건물(1000) 내 공간(10)에 대한 지도(Map 또는 지도 정보)를 생성 또는 변경하는 작업으로 이해될 수 있다. 특히, 본 발명에서 “복수의 층 중 특정 층에 대한 맵 편집”은, 건물(1000)의 특정 층에 대한 지도(또는 지도 정보)를 생성 또는 수정하는 작업으로 이해될 수 있다.
상기 특정 층에 대한 맵 편집 요청을 다양한 방식으로, 전자기기(50)로부터 수신될 수 있다.
예를 들어, 상기 특정 층에 대한 맵 편집 요청은, 도 15a에 도시된 것과 같이, 전자기기(50)의 디스플레이부 상에 모니터링 화면(1400)이 제공되고 있는 상태에서 이루어질 수 있다.
상기 모니터링 화면(1400)은, 복수의 층을 포함하는 건물(1000)내에 위치하는 복수의 로봇(R)을 모니터링 할 수 있는 화면으로, i) 건물(1000)에 대응되는 건물(1000) 그래픽 객체(1410), ii) 각 층에 위치한 로봇(R)의 상태 정보를 포함하는 상태 그래픽 객체(1420), ii) 복수의 층 중 어느 하나의 층에 대응되는 맵 관리와 관련된 페이지(또는 화면)에 링크된 특정 영역(1430) 및 vi) 건물(1000) 전체 층에 위치한 로봇(R)과 관련된 정보에 대응되는 그래픽 객체(1440) 중 적어도 하나를 포함할 수 있다.
도 15a에 도시된 것과 같이, 전자기기(50)의 디스플레이부(51) 상에 건물에 대응되는 건물 그래픽 객체(1410)가 출력되고 있는 상태에서, 특정 층에 대응되는 서브 그래픽 객체(1411, 1412)가 선택되는 것에 근거하여, 통신부(310)는 특정 층에 대한 맵 편집 요청을 수신할 수 있다.
예를 들어, 사용자가 전자기기(50)의 디스플레이부(51) 상에서 8층에 대응되는 서브 그래픽 객체(1411)를 선택하는 것에 근거하여, 통신부(310)는 8층에 대한 맵 편집 요청을 수신할 수 있다.
나아가, 도 15a에 도시된 것과 같이, 전자기기(50)의 디스플레이부(51) 상에, 복수의 층 각각에 대응되는 상태 그래픽 객체(1420)가 출력되고 있는 상태에서, 특정 층에 대응되는 상태 그래픽 객체(1420)가 선택되는 것에 근거하여, 통신부(310)는 특정 층에 대한 맵 편집 요청을 수신할 수 있다.
예를 들어, 사용자가 전자기기(50)의 디스플레이부(51) 상에서 8층에 대응되는 상태 그래픽 객체(1421)를 선택하는 것에 근거하여, 통신부(310)는 8층에 대한 맵 편집 요청을 수신할 수 있다.
여기에서, “상태 그래픽 객체(1420)”는, 건물(1000) 내 복수의 층 각각에 위치한 로봇(R)들의 상태 정보가 나타나도록, 상태 정보에 대응되는 시각적 외관으로 이루어진 그래픽 객체로 이해될 수 있다.
예를 들어, 8층에 대응되는 상태 그래픽 객체(1421)는, 8층에 위치한 복수의 로봇(R) 중 일부 로봇(R)의 제1 상태 정보에 대응되는 시각적 외관 및 제2 상태 정보에 대응되는 시각적 외관으로 이루어질 수 있다.
사용자는, 상태 그래픽 객체(1420)를 통해, 건물(1000) 내 복수의 층 각각 마다에 로봇(R)들의 상태를 직관적으로 인식할 수 있다.
나아가, 도 15a에 도시된 것과 같이, 전자기기(50)의 디스플레이부(51) 상에서 특정 영역(ex: “지도 관리”, 1430)이 선택되는 것에 근거하여, 통신부(310)는 특정 층에 대한 맵 편집 요청을 수신할 수 있다.
“지도 관리”에 대응되는 특정 영역(1430)에 대한 사용자 입력이 수신되면, 제어부(330)는 전자기기(50)의 디스플레이부(51) 상에 건물 내 복수의 층 중 특정 층에 대한 선택을 입력 받을 수 있는 화면을 제공할 수 있다.
예를 들어, 제어부(330)는 도 15b에 도시된 것과 같이, 전자기기(50)의 디스플레이부 상에, 맵 리스트(또는 지도 리스트, 1500)를 제공할 수 있다.
맵 리스트(1500)에는, 복수의 층 중 적어도 하나에 대응하는 항목(1510, 1520, 1530)이 포함되어 있을 수 있고, 상기 항목(1510, 1520, 1530)의 일 영역에는 항목에 대응하는 층에 대한 맵 편집 요청을 입력 받는 기능과 관련된 기능 아이콘(예를 들어, “지도 생성 기능 아이콘” 또는 “지도 편집 기능 아이콘” 1520a, 1530a)이 포함되어 있을 수 있다. 통신부(310)는 상기 맵 리스트(1500) 상에서, 특정 항목의 일 영역에 포함된 기능 아이콘에 대한 사용자 입력이 인가되는 것에 근거하여, 전자기기(50)로부터 특정 항목에 대응하는 특정 층에 대한 맵 편집 요청을 수신할 수 있다.
다른 예를 들어, 제어부(330)는 전자기기(50)의 디스플레이부 상에, 복수의 층 각각에 대응되는 숫자를 포함하는 복수개의 그래픽 객체를 포함하는 팝업(pop-up)을 제공할 수 있다. 통신부(310)는 상기 복수개의 그래픽 객체 중 특정 층에 대응되는 그래픽 객체가 선택되는 것에 근거하여, 전자기기(50)로부터 특정 층에 대한 맵 편집 요청을 수신할 수 있다.
한편, 상술한 특정 층에 대한 맵 편집 요청을 수신하는 방법은, 일 실시예에 해당하는 것으로, 본 발명에 따른 맵 생성 시스템(3000)에서 특정 층에 대한 맵 편집 요청을 수시하는 방법은 상술한 방법에 제한되지 않는다.
다음으로, 본 발명에서는, 전자기기(50)로부터 수신한 특정 층에 대응되는 맵 편집 요청에 응답하여, 전자기기(50)의 디스플레이부(51) 상에, 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 과정이 진행될 수 있다(S1420, 도 14 참조).
도 16에 도시된 것과 같이, 편집 인터페이스(1600)는, 특정 층에 대응되는 특정 맵(1700)의 적어도 일부가 포함된 제1 영역(1610) 및 상기 특정 맵(1700)에 대한 설정을 수행하는 기능을 포함하는 제2 영역(1620) 중 적어도 하나를 포함할 수 있다.
본 발명에서 편집 인터페이스(1600)는, 사용자가 특정 맵(1700)에 대한 편집을 수행하는 기능을 제공하기 위하여 전자기기(50)의 디스플레이부(51) 상에 출력되는 화면으로, “편집 화면”, “편집 유저 그래픽 인터페이스(GUI)”, “편집 페이지”등으로 명명될 수 있다.
한편, 제1 영역(1610)에는, 특정 층에 대응되는 특정 맵의 적어도 일부(이하, 특정 맵으로 설명, 1700)가 제공될 수 있으며, 본 발명에서는 제1 영역(1610)을 “맵 영역”으로도 명명 가능하다.
특정 맵(1700)은, 특정 맵에 대한 편집 히스토리와 함께 저장부(320)에 저장되어 있을 수 있다. 제어부(330)는, 특정 층에 대응되는 맵에 대한 편집 요청을 수신하면, 상기 편집 히스토리를 참조하여 가장 최근에 업데이트 된 특정 맵(1700)이 포함된 편집 인터페이스(1600)를 전자기기(50)의 디스플레이부 상에 제공할 수 있다.
예를 들어, 특정 맵(1700)에 대한 편집이 3회 이루어진 경우, 제어부(330)(130)는 특정 층에 대응되는 맵에 대한 편집 요청에 근거하여, 3회차 편집에 기초하여 업데이트 된 특정 맵(1700)이 포함된 편집 인터페이스(1600)를 전자기기(50)의 디스플레이부 상에 제공할 수 있다.
다음으로, 본 발명에서는, 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하는 과정이 진행될 수 있다(S1420, 도 14 참조).
저장부(320)에는, 특정 층에 대한 특정 맵(1700)과 특정 층을 구성하는 공간(10)의 특성에 대한 정보 (“공간 특성 정보”)가 서로 매칭되어 매칭 정보로서 존재할 수 있다.
본 발명에서 설명되는 “공간의 특성”은, 공간(10)의 구조, 공간(10)에 배치된 설비, 공간(10)의 상황 중 적어도 하나에 의하여 로봇(R)의 운용 및 주행에 영향을 미칠 수 있는 다양한 정적 장애물과 관련된 요소로 이해될 수 있다.
나아가, 공간 특성 정보는, 공간의 특성에 의해 정의되는 정보로, 예를 들어, 공간 특성 정보는, i) 공간(10)의 구조에 대한 구조 정보(또는 공간 구조 정보), ii) 공간(10)에 배치된 설비에 대한 설비 정보, iii) 공간(10)의 상황에 대한 상황 정보 (또는 공간 상황 정보)등을 포함할 수 있다.
여기에서, 공간(10)의 구조 정보는, 공간(10)을 이루는 벽, 천정(지붕), 바닥, 계단, 기둥, 문 및 공간(10)에 배치된 사물(ex: 책상, 선반 등) 중 적어도 하나에 의하여 형성되는 공간(10)의 공간 구조와 관련된 정보로 이해될 수 있다.
여기에서, 공간(10)에 배치된 설비에 대한 설비 정보는, 설비의 특성 정보(ex: 타입 정보, 종류 정보, 기능 정보 등,) 설비가 배치된 위치 정보(ex: 좌표 정보, 구역 정보, 영역 정보 등), 설비의 식별 정보 중 적어도 하나를 포함할 수 있다.
여기에서, 공간(10)의 상황에 대한 상황 정보는, 공간(10) 이용(또는 주행) 가능 여부에 대한 정보(ex: 이동이 일시적으로 제한된 상황인지 여부 등), 공간(10)에 존재하는 로봇 또는 사람의 밀집도와 관련된 밀집도 정보, 공간(10)에서 발생되고 있는 이벤트에 대한 정보 중 적어도 하나를 포함할 수 있다.
한편, 본 발명에서 특정 층에서의 공간(10)의 특성은, 특정 층에서의 공간(10)과 관련된 정적(靜的) 장애물에 의한 특성으로도 이해될 수 있다.
본 발명에서, 특정 층에 포함된 정적 장애물은, 특정 층을 구성하는 벽(wall), 문(door) 천정(지붕), 바닥, 계단, 기둥, 상기 벽 등으로 이루어진 룸(Room) 및 설비 중 적어도 하나를 포함할 수 있다.
나아가, 상기 설비(또는 설비 인프라)는, 건물(1000) 내에서 서비스 제공, 로봇의 이동, 기능 유지, 청결 유지 등을 위하여 건물에 구비되는 시설로서, 그 종류 및 형태는 매우 다양할 수 있으며, 예를 들어, i) 특정 층을 주행하는 로봇 및 사람 중 적어도 하나가 이용 가능하도록 구성된 엘리베이터(도 2에서 도면 부호 204 참조), ii) 에스컬레이터(도 2에서 도면 부호 205 참조), iii) 출입문 또는 출입통제 게이트(도 2에서 도면 부호 206, 207 참조), iv) 로봇 이동 통로(로봇 전용 도로 및 로봇 공용 도로, (도 2에서 도면 부호 201, 202 참조), v) 충전 설비(ex: 충전기, 도 2에서 도면 부호 209 참조), vi) 세척 설비(도 2에서 도면 부호 210 참조), vii) 로봇이 대기하는 대기 공간에 해당하는 대기 공간 설비(도 2에서 도면 부호 208 참조)를 포함할 수 있다.
이에, 본 발명에서 설명되는 공간의 특성은, 공간과 관련된 정적 장애물의 특성(ex: 정작 장애물의 종류, 정적 장애물의 타입 등)으로 이해될 수 있다.
한편, 저장부(320)에는, 특정 층에 대한 특정 맵(1700)과, 특정 층에 대한 적어도 하나의 공간 특성 정보가 서로 매칭되어 존재할 수 있다.
나아가, 저장부(320)에는, 공간(10)에서의 서로 다른 공간 특성마다의 상황에서, 어떠한 속성의 노드를 특정 맵(1700) 상에서 어느 위치에 할당(또는 배치)해야 하는지에 대한 규칙을 정의한 “노드 규칙”과 관련된 노드 규칙 정보가 존재할 수 있다.
예를 들어, 저장부(320)에는, 정적 장애물의 종류 및 정적 장애물의 종류마다 각각 정의되는 노드 규칙이 서로 맵핑된 노드 규칙 정보가 저장되어 있을 수 있다.
제어부(330)는, 저장부(320)에 저장된 노드 규칙 정보에서, 특정 층의 공간 특성(ex: 정적 장애물의 종류)에 매칭(또는 맵핑)된 노드 규칙을 추출하고, 추출된 노드 규칙에 따라 적어도 하나의 노드가 배열된 노드 그룹을 특정할 수 있다.
여기에서, “노드 그룹”은, 공간 특성에 따라, 노드의 개수, 노드의 배열 형태 및 로봇의 이동 방향을 정의하는 노드 간 연결 방향 중 적어도 하나가 다르게 이루어질 수 있다.
제어부(330)는, 공간 특성(ex: 정적 장애물 종류)에 매칭된 노드 규칙에 따라, 공간 특성과 관련된 노드 개수, 노드의 배열 형태 및 로봇의 이동 방향을 정의하는 노드 간 연결 형태 중 적어도 하나를 결정할 수 있다.
나아가, 저장부(320)에는, 공간 특성에 매칭된 노드 규칙에 근거하여, 서로 다른 공간 특성마다의 상황에 따른 복수의 노드가 하나의 노드 그룹으로 구성되어 존재할 수 있다.
이에, 본 발명에서 ‘노드 그룹을 특정한다”는 것은, 노드 규칙에 따라 노드 그룹에 포함되는 노드의 개수, 노드의 배열 형태 및 노드 연결 방향 중 적어도 하나를 특정하는 것과, 노드 규칙에 따라 구성되어 저장부(320)에 기 저장된 노드 그룹을 확인하는 것을 모두 포함할 수 있다.
이러한 노드 그룹은, 공간 특성 정보에 포함된 서로 다른 특성(ex: 정적 장애물 종류) 마다, 서로 다르게 구성될 수 있다. 이하에서는, 도 17a, 도 17b, 도 17c, 도 17d와 함께, i) 엘리베이터 설비가 배치되어진 공간의 특성(즉, 정적 장애물의 종류가 엘리베이터 설비에 해당), ii) 충전 설비가 배치되어진 공간의 특성(즉, 정적 장애물의 종류가 충전 설비에 해당), iii) 로봇 이동 통로의 공간의 특성(즉, 정적 장애물의 종류가 로봇 이동 통로에 해당), vi) 교차로 형태의 로봇 이동 통로의 공간(10)의 특성(즉, 정적 장애물의 종류가 로봇 이동 통로에 해당) 각각 마다의 노드 규칙에 근거하여 구성된 노드 그룹을 설명하도록 한다.
먼저, 도 17a와 함께, 엘리베이터 설비가 배치되어진 공간의 특성에 근거하여 구성된 노드 그룹(1710)을 설명하도록 한다. 엘리베이터 설비는, 사람과 로봇(R)이 공동으로 사용하는 공용 엘리베이터 및 로봇(R)이 전용으로 사용하는 로봇(R) 전용 엘리베이터 중 적어도 하나를 포함할 수 있다(도 2에서 도면부호 204 및 205 참조).
제어부(330)는 공간 특성 정보에, 공간(10)의 특정 위치에 배치된 엘리베이터(또는 로봇 전용 엘리베이터) 설비에 대한 정보가 포함되어 있는 경우, 도 17a에 도시된 것과 같이, 엘리베이터 설비와 관련된 노드 규칙에 근거하여 구성된 엘리베이터 설비와 관련된 노드 그룹(1710)을, 특정 맵(1700)과 관련된 노드 객체로 특정할 수 있다.
보다 구체적으로, 엘리베이터 설비와 관련된 노드 그룹(1710)에는, 엘리베이터 설비에 대응하는 설비 노드(1711) 및 엘리베이터 이용을 위한 로봇(R)의 특정 동작에 연계된 복수의 동작 노드(1712, 1713, 1714, 1715)를 포함할 수 있다.
엘리베이터 설비에 대응하는 설비 노드(1711)는, 특정 맵(1700) 상에서 엘리베이터 설비가 배치된 위치에 대응하는 영역에 할당(또는 배치)될 수 있다.
엘리베이터 설비와 관련된 노드 규칙에는, 공간 특성 정보에 포함된 엘리베이터 설비의 위치 정보에 근거하여, 특정 맵(1700) 상에서, 상기 위치 정보에 대응하는 영역에, 엘리베이터 설비에 대응하는 설비 노드(1711)가 할당되도록 하는 규칙 정보가 포함되어 있을 수 있다.
나아가, 엘리베이터 설비와 관련된 복수의 동작 노드 중 제1 동작 노드(1712)는, 엘리베이터로의 진출입(進出入)을 위한 경유 노드의 속성을 가지며, 특정 맵(1700) 상에서, 엘리베이터 입구에 대응하는 영역에 할당(또는 배치)될 수 있다.
엘리베이터 설비와 관련된 노드 규칙에는, 공간 특성 정보에 포함된 엘리베이터 설비의 위치 정보에 근거하여, 특정 맵(1700) 상에서, 엘리베이터 입구에 대응하는 영역에, 엘리베이터 진출입을 위한 경유 노드 속성을 가지는 제1 동작 노드(1712)가 할당되도록 하는 규칙 정보가 포함되어 있을 수 있다.
나아가, 엘리베이터 설비와 관련된 복수의 동작 노드 중 제2 동작 노드(1713, 1714 )는, 엘리베이터로 승차 대기를 위한 승차 대기 노드의 속성을 가지며, 특정 맵(1700) 상에서, 엘리베이터 입구 좌우 영역에 각각에 한쌍이 할당(또는 배치)될 수 있다.
즉, 엘리베이터 설비와 관련된 노드 규칙에는, 공간 특성 정보에 포함된 엘리베이터 설비의 위치 정보에 근거하여, 특정 맵(1700) 상에서, 엘리베이터 입구의 좌우에 대응하는 두개의 서로 다른 영역에, 엘리베이터 승차 대기를 위한 승차 대기 속성을 가지는 한쌍의 제2 동작 노드(1713, 1714)가 할당되도록 하는 규칙 정보가 포함되어 있을 수 있다.
나아가, 엘리베이터 설비와 관련된 복수의 동작 노드 중 제3 동작 노드(1715)는, 엘리베이터로부터의 하차를 위한 하차 노드 속성을 가지며, 특정 맵(1700) 상에서, 엘리베이터 입구의 전방에 대응하는 영역에 할당(또는 배치)될 수 있다.
즉, 엘리베이터 설비와 관련된 노드 규칙에는, 공간 특성 정보에 포함된 엘리베이터 설비의 위치 정보에 근거하여, 특정 맵(1700) 상에서, 엘리베이터 입구의 전방에 대응하는 영역에, 엘리베이터에서의 하차를 위한 하차 노드 속성을 가지는 제3 동작 노드(1715)가 할당되도록 하는 규칙 정보가 포함되어 있을 수 있다.
다음으로, 도 17b와 함께, 충전 설비가 배치되어진 공간의 특성에 근거하여 구성된 노드 그룹(1710)을 설명하도록 한다. 충전 설비는, 로봇(R)의 충전을 위한 설비(도 2에서 도면부호 209 참조)로, 충전기 또는 도킹 스테이션(docking station)으로 명명될 수 있다.
제어부(330)는 공간 특성 정보에, 공간(10)의 특정 위치에 배치된 충전 설비에 대한 정보가 포함되어 있는 경우, 도 17b에 도시된 것과 같이, 충전 설비와 관련된 노드 규칙에 근거하여 구성된 충전 설비와 관련된 노드 그룹(1720)을, 특정 맵(1700)과 관련된 노드 객체로 특정할 수 있다.
보다 구체적으로, 충전 설비와 관련된 노드 그룹(1720)에는, 충전 설비에 대응하는 설비 노드(1721) 및 충전 설비 이용을 위한 로봇(R)의 특정 동작에 연계된 복수의 동작 노드(1722, 1723)를 포함할 수 있다.
충전 설비에 대응하는 설비 노드(1721)는, 특정 맵(1700) 상에서 충전 설비가 배치된 위치에 대응하는 영역에 할당(또는 배치)될 수 있다.
충전 설비와 관련된 노드 규칙에는, 공간 특성 정보에 포함된 충전 설비의 위치 정보에 근거하여, 특정 맵(1700) 상에서, 상기 위치 정보에 대응하는 영역에, 충전 설비에 대응하는 설비 노드(1721)가 할당되도록 하는 규칙 정보가 포함되어 있을 수 있다.
나아가, 충전 설비와 관련된 복수의 동작 노드 중 제1 동작 노드(1722)는, 로봇(R)이 충전 설비에 도킹하기 위한 도킹 노드 속성을 가지며, 특정 맵(1700) 상에서, 충전 설비 전방에 대응하는 영역에 할당(또는 배치)될 수 있다.
나아가, 충전 설비와 관련된 복수의 동작 노드 중 제2 동작 노드(1723)는, 충전 설비로의 접근을 위하여, 충전 설비로의 진출입을 위한 경유 노드의 속성을 가지며, 특정 맵(1700) 상에서, 충전 설비와 가장 가까운 주 경로에 대응하는 영역에 할당(또는 배치)될 수 있다.
즉, 충전 설비와 관련된 노드 규칙에는, 공간 특성 정보에 포함된 충전 설비의 위치 정보에 근거하여, 특정 맵(1700) 상에서, 충전 설비 전방에 대응하는 영역에는 도킹 노드 속성을 가지는 제1 동작 노드(1722)가 할당되고, 충전 설비와 가장 가까운 주 경로에 대응하는 영역에는 경유 노드 속성을 가지는 제2 동작 노드(1723)가 할당되도록 하는 규칙 정보가 포함되어 있을 수 있다.
다음으로, 도 17c와 함께, 로봇(R)이 주행 가능한 로봇 이동 통로(W1, W2)의 특성에 근거하여 구성된 로봇 이동 통로 노드 그룹(1730, 1730’)을 설명하도록 한다.
로봇 이동 통로와 관련된 노드 규칙에는, 공간 특성 정보에 포함된 로봇 이동 통로의 폭(넓이), 로봇(R)의 물리적인 크기 및 로봇(R)의 주행 속도(또는 주행 사양) 중 적어도 하나를 고려하여, 로봇 이동 통로 상에서 로봇(R)의 주행과 관련된 차선의 개수를 결정하고, 상기 차선 마다에 로봇 이동 통로를 따라 기 설정된 간격으로 복수의 주행 노드가 할당되도록 하는 규칙 정보가 포함되어 있을 수 있다.
예를 들어, 도 17c의 (a)에 도시된 것과 같이, 로봇 이동 통로의 폭(또는 넓이, L1)가 상대적으로 넓은 로봇 이동 통로와 관련된 노드 그룹(1730)에는, 두개의 서로 다른 차선 마다에 기 설정된 간격으로 할당되는 복수의 주행 노드(1731a, 1732a, 1733a, 1731b, 1732b, 1733b)를 포함할 수 있다.
다른 예를 들어, 도 17c의 (b)에 도시된 것과 같이, 로봇 이동 통로의 폭(또는 넓이, L2)가 상대적으로 좁은 로봇 이동 통로와 관련된 노드 그룹(1730’)에는, 하나의 단일 차선 상에 기 설정된 간격으로 할당되는 복수의 주행 노드(1731a’, 1732a’, 1733a’)를 포함할 수 있다.
제어부(330)는 로봇 이동 통로와 관련된 노드 규칙에 근거하여 구성된 로봇 이동 통로 노드 그룹 (1730, 1730’)을, 특정 맵(1700)과 관련된 노드 객체로 특정할 수 있다.
즉, 제어부(330)는 로봇 이동 통로의 폭(넓이), 로봇(R)의 물리적인 크기 및 로봇(R)의 주행 속도(또는 주행 사양) 중 적어도 하나를 고려하여, 적어도 하나의 차선을 이루는 복수의 노드를 특정 맵(1700)과 관련된 노드 객체로 특정할 수 있다.
다음으로, 도 17d와 함께, 교차로 구조로 이루어진 로봇 이동 통로의 공간 특성에 매칭된 노드 규칙을 설명하도록 한다.
교차로 구조는, 도 17d에 도시된 것과 같이, 적어도 두개의 로봇 이동 통로가 서로 교차하는 구조를 의미할 수 있다.
교차로 구조는, 두개의 로봇 이동 통로가 서로 교차되어 “ㄱ” 또는 “ㅅ” 모양으로 이루어진 2차 교차로 구조, 3개의 로봇 이동 통로가 서로 교차되어 “T” 모양으로 이루어진 3차 교차로(또는 삼거리 교차로), 4개의 로봇 이동 통로가 서로 교차된 4차 교차로(또는 사거리 교차로, 도 17d 참조)와 같이, 서로 교차되는 로봇 이동 통로의 개수에 따라 다양하게 이루어질 수 있다.
여기에서, 적어도 두개의 로봇 이동 통로가 서로 교차되어 형성되는 공간(10)의 구조를, 본 발명에서는 “코너(1740)”로 명명할 수 있다.
교차로 구조와 관련된 노드 규칙에는, 교차로 구조를 이루는 로봇 이동 통로의 폭(또는 넓이), 코너의 구조, 코너의 위치, 로봇(R)의 물리적인 크기 및 로봇(R)의 주행 사양 중 적어도 하나를 고려하여, 로봇 이동 통로 상에서 로봇(R)의 주행과 관련된 차선의 개수를 결정하고, 상기 차선 마다에 로봇 이동 통로를 따라 기 설정된 간격으로 복수의 주행 노드가 배치되도록 하는 규칙 정보가 포함되어 있을 수 있다.
나아가, 교차로 구조와 관련된 노드 규칙에는, 로봇(R)이 우측 통행으로 주행하면서, 교차로 구조를 이루는 복수의 로봇 이동 통로를 이동하도록, 로봇 이동 통로에 배치되는 노드들(1741 내지 1750)의 방향 정보 특정하는 규칙 정보를 더 포함할 수 있다.
예를 들어, 도 17d에 도시된 것과 같이, 제어부(330)는 로봇 이동 통로 각각에 배치된 한쌍의 노드 중 어느 하나(1742)는 하행선에 대응하는 방향 정보를 가지고, 다른 하나(1743)은, 상행선에 대응하는 방향 정보를 가지도록 노드 그룹을 특정할 수 있다.
나아가, 4개의 로봇 이동 통로 각각에 8개의 노드(1741 내지 1750)가 쌍을 이루어 배치되어 있고, 특정 코너(1740)의 아래에 위치하는 노드를 기준으로 시계 방향으로, 각각 제1 노드(1741), 제2 노드(1742), 제3 노드(1743), 제4 노드(1745), 제5 노드(1745), 제6 노드(1746), 제7 노드(1747), 제8 노드(1748) 노드라고 가정하자.
제어부(330)는, 교차로 구조와 관련된 노드 규칙에 따라 로봇(R)이 우측 통행으로 주행하도록, 제2 노드(1742), 제4 노드(1745), 제6 노드(1746) 및 제8 노드(1748) 각각은, 제1 노드(1741), 제3 노드(1743), 제5 노드(1745) 및 제7 노드(1747) 중 동일 로봇 이동 통로에 배치된 노드를 제외한 노드로 이동가능한 방향 정보를 가지도록 노드 그룹을 특정할 수 있다. 예를 들어, 제4 노드(1744)는, 동일 로봇 이동 통로에 배치된 제5 노드(1745)를 제외한 제1 노드(1741), 제3 노드(1743) 및 제7 노드(1747)로 이동 가능한 방향 정보를 가지도록 노드 그룹이 특정될 수 있다.
나아가, 제어부(330)는, 교차로 구조와 관련된 노드 규칙에 따라, 로봇(R)이 우측 통행을 유지하면서 유턴 주행을 할 수 있도록 하는 노드 그룹 내 노드의 노드 방향을 특정할 수 있다. 예를 들어, 제어부(330)는, 제9 노드(1749)가 제10 노드(1750)로 이동 가능한 방향 정보를 가지도록 노드 그룹을 특정함으로써, 로봇(R)이, 제1 노드(1741), 제9 노드(1749), 제10 노드(1750) 및 제8 노드(1748)로 유턴 주행을 할 수 있도록 노드를 배치할 수 있다.
다음으로, 본 발명에서는, 특정 맵 상에 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행하는 과정이 진행될 수 있다(S1440, 도 14 참조).
본 발명에서 “특정 맵 상에 노드를 배치(또는 할당)한다”는 것은, 특정 맵(1700)의 특정 영역 상에 노드 또는 노드에 대응하는 노드 그래픽 객체를 중첩하여 배치하고, 노드 그래픽 객체가 배치된 영역(또는 지점)이, 노드 그래픽 객체의 타입에 대응되는 타입을 가지도록 매칭(또는 설정)하는 것으로 이해될 수 있다.
예를 들어, 특정 맵(1700)과 관련하여, 엘리베이터와 관련된 노드 그룹(1710) 및 충전기와 관련된 노드 그룹(1720)이 특정되었다고 가정하자. 제어부(330)는 도 18에 도시된 것과 같이, 노드 배치 프로세스를 통해, 특정 맵(1700) 상에, 엘리베이터와 관련된 노드 그룹(1710)에 포함된 복수의 노드 각각에 대응하는 노드 그래픽 객체(1711, 1712, 1713, 1714, 1715)를 배치하고, 충전기와 관련된 노드 그룹(1720)에 포함된 복수의 노드 각각에 대응하는 노드 그래픽 객체(1721, 1722, 1723)을 배치할 수 있다.
앞서 설명한 것과 같이, 본 발명에서 “노드”는 “노드 그래픽 객체”는 서로 혼용되어 사용 가능하며, “노드 배치(또는 할당)”은 “노드 그래픽 객체 배치(또는 할당)”과 혼용하여 사용할 수 있다. 이에, 본 발명에서는 노드와 노드 그래픽 객체에 동일한 도면 부호를 부여할 수 있다. 예를 들어, 엘리베이터 설비에 대응하는 노드와 엘리베이터 설비에 대응하는 노드 그래픽 객체에는 모두 동일한 “1711”의 도면 부호를 부여할 수 있다.
한편, 본 발명에서 설명하는 “노드 배치 프로세스”는, 특정된 노드 그룹에 포함된 노드들 중 적어도 일부를 특정 맵(1700) 상에 배치(또는 할당)하는 프로세스로, 시스템 관리자(이하, “사용자”로 설명)의 전자기기(50)로부터 정보가 수신되는 것에 근거하여 노드들이 특정 맵(1700) 상에 할당되는지 여부에 따라, i) 제1 속성의 노드 배치 프로세스, ii) 제2 속성의 노드 프로세스 및 iii) 제3 속성의 노드 프로세스 중 어느 하나를 포함할 수 있다.
먼저, 제1 속성의 노드 프로세스는, 사용자의 전자기기(50)로부터 정보가 수신되지 않더라도, 특정 맵(1700)과 관련된 노드 그룹이 특정된 것에 근거하여, 특정 맵(1700) 상에 특정된 노드 그룹에 포함된 노드들을 자동으로 배치하는 프로세스로 이해될 수 있다. “제1 속성의 노드 프로세스”는, “자동화 노드 프로세스”로도 명명될 수 있다.
제어부(330)는, 특정된 노드 그룹에 포함된 노드들을, 각각의 노드 그룹과 관련된 노드 규칙에 따라 특정 맵(1700) 상에 배치(또는 할당)할 수 있다.
나아가, 제어부(330)는, 특정 맵(1700)과 관련하여 복수의 노드 그룹이 특정된 경우, 복수의 노드 그룹 각각에 포함된 복수의 노드들을, 복수의 노드 그룹 각각에 따른 노드 규칙에 근거하여, 순차적으로 또는 일괄적으로 특정 맵(1700) 상에 모두 배치할 수 있다.
보다 구체적으로, 제어부(330)는, 특정 맵(1700) 상에, 제1 종류의 정적 장애물에 해당하는 제1 그래픽 객체 및 제2 종류의 정적 장애물에 해당하는 제2 그래픽 객체가 포함된 경우, 특정 맵(1700) 중 제1 그래픽 객체가 포함된 제1 영역에 제1 종류의 정적 장애물에 대응되는 노드 규칙에 따른 제1 노드 그룹의 노드들을 배치하고, 특정 맵(1700) 중 제2 그래픽 객체가 포함된 제2 영역에 제2 종류의 정적 장애물에 대응되는 노드 규칙에 따른 제2 노드 그룹의 노드들이 배치할 수 있다.
예를 들어, 제어부(330)는, 특정 맵(1700)과 관련하여, 엘리베이터 설비와 관련된 노드 그룹(1710) 및 충전기와 관련된 노드 그룹(1720)가 특정되었다고 가정하자. 특정 맵(1700) 상에는 엘리베이터 설비에 해당하는 제1 그래픽 객체 및 충전 설비에 해당하는 제2그래픽 객체가 포함되어 있을 수 있다.
제어부(330)는, 도 18에 도시된 것과 같이, 엘리베이터 설비와 관련된 그래픽 객체가 포함된 영역에, 엘리베이터 설비에 대응하는 노드 규칙에 따른 노드 그룹의 노드들(1711 내지 1715)을 배치하고, 충전 설비와 관련된 그래픽 객체가 포함된 영역에, 충전 설비에 대응하는 노드 규칙에 따른 노드 그룹의 노드들(1721 내지 1723)을 모두 배치할 수 있다.
나아가, 제어부(330)는, 특정 맵(1700) 상에, 배치된 복수의 노드를 검수하는 노드 검수 프로세스를 수행할 수 있다.
노드 검수 프로세스는, 특정 맵(1700) 상에 배치된 복수의 노드들이 노드 규칙 또는 실제 공간(10)의 상황에 따라 정확하게 배치되었는지를 확인하는 프로세스로, 제어부(330)는, 노드 검수 알고리즘 및 사용자의 전자기기(50)로부터 수신하는 정보 중 적어도 하나에 근거하여 노드 검수 프로세스를 수행할 수 있다. 노드 검수 프로세스와 관련된 보다 자세한 내용은 후술하도록 한다.
다음으로, 제2 속성의 노드 배치 프로세스는, 사용자의 전자기기(50)로부터 수신되는 정보에 근거하여, 특정 맵(1700) 상에 특정된 노드 그룹에 포함된 노드들을 배치하는 프로세스로 이해될 수 있다. “제2 속성의 노드 프로세스”는, “반자동화 노드 프로세스”로도 명명될 수 있다.
여기에서, 사용자 전자기기(50)로부터 수신되는 정보는, 특정 맵(1700) 상에, 상기 특정 맵(1700)과 관련되어 특정된 노드 그룹에 포함된 노드들의 배치를 요청하는 “노드 배치 요청”으로 이해될 수 있다.
제어부(330)는, 특정 맵(1700)과 관련하여 복수의 노드 그룹이 특정된 경우, 사용자의 전자기기(50)로부터 수신하는 노드 배치 요청에 근거하여, 복수의 노드 그룹 각각에 포함된 노드들을 일괄적으로 특정 맵(1700) 상에 배치하거나, 복수의 노드 그룹 중 특정 노드 그룹에 포함된 노드들을 특정 맵(1700) 상에 배치할 수 있다.
예를 들어, 제어부(330)는, 사용자의 전자기기(50)로부터 복수의 노드 그룹에 포함된 노드들에 대한 “일괄 노드 배치 요청”을 수신하면, 복수의 노드 그룹에 포함된 노드들을 특정 맵(1700) 상에 일괄적으로 배치할 수 있다.
다른 예를 들어, 제어부(330)는, 사용자의 전자기기(50)로부터 복수의 노드 그룹 중 특정 노드 그룹에 포함된 노드들에 대한 “노드 배치 요청”을 수신하면, 특정 노드 그룹에 포함된 노드들을 특정 맵(1700) 상에 일괄적으로 배치할 수 있다.
예를 들어, 특정 맵(1700)과 관련하여 엘리베이터 설비와 관련된 노드 그룹 및 충전기 설비와 관련된 노드 그룹이 특정된 상태에서, 사용자의 전자기기(50)로부터 엘리베이터 설비와 관련된 노드 그룹(1710)에 포함된 노드 배치 요청을 수신하였다고 가정하자. 제어부(330)는, 상기 노드 배치 요청에 근거하여, 도 20에 도시된 것과 같이, 특정 맵(1700) 상에 엘리베이터 설비와 관련된 노드 그룹에 포함된 노드들(1711, 1712, 1713, 1714, 1715)을 배치할 수 있다.
한편, 제어부(330)는, 특정 맵(1700)과 관련된 노드 그룹이 특정된 것에 근거하여, 상기 특정된 노드 그룹에 따른 적어도 하나의 노드가 배치 가능함을 알리는 가이드 정보를 편집 인터페이스(1600) 상에 제공할 수 있다. 이러한 가이드 정보는, 특정된 노드 그룹에 따른 적어도 하나의 노드 배치를 추천하는 추천 정보로도 이해될 수 있다.
가이드 정보에는, i) 특정된 노드 그룹과 관련된 특정 맵(1700)을 강조하는 강조 표시 정보, ii) 특정된 노드 그룹에 포함된 복수의 노드 배치를 유도하는 유도 정보, iii) 특정된 노드 그룹을 구성하는 적어도 하나의 노드의 배열을 나타내는 배열 정보 및 iv) 특정된 노드 그룹을 구성하는 노드들의 배치를 승인받기 위한 아이콘을 포함할 수 있다.
예를 들어, 도 19a에 도시된 것과 같이, 제어부(330)는, 편집 인터페이스(1600)의 제1 영역(1610) 상에, 특정된 노드 그룹과 관련된 영역에 대한 강조 표시 정보(또는 하이라이팅 정보, 1911) 및 상기 특정된 노드 그룹에 포함된 복수의 노드 배치를 유도하는 유도 정보(ex: “로봇 E/V 밀집 공간이에요. 로봇 E/V 밀집 공간(10)을 위한 노드 작성 가이드 정보를 확인해 보세요”, 1912)를, 가이드 정보로서 출력할 수 있다.
나아가, 제어부(330)는, 편집 인터페이스(1600)의 제2 영역(1620) 상에, 상기 특정된 노드 그룹과 관련된 배열 정보를 포함하는 상세 정보(1913) 및 특정된 노드 그룹에 따른 노드 배치를 승인받기 위한 아이콘(ex: “가이드 정보 적용하기”, 1914) 중 적어도 하나를, 가이드 정보로서 출력할 수 있다.
상기 아이콘(1914)는, 특정된 노드 그룹에 대한 노드 배치 요청을 수신하는 기능과 관련된 아이콘으로도 이해할 수 있다.
한편, 제어부(330)는, 사용자의 전자기기(50)로부터 특정 맵(1700) 중 특정 그래픽 객체가 위치한 영역이 선택되는 것에 근거하여, 가이드 정보를 출력할 수 있다.
예를 들어, 도 19b에 도시된 것과 같이, 제어부(330)는, 편집 인터페이스(1600)의 제1 영역(1610)상에 특정 맵(1700)이 출력되고 있는 상태에서, 상기 제1 영역(1610) 상에, 특정된 노드 그룹과 관련된 특정 그래픽 객체(1922)에 대한 사용자 입력(1921)이 인가되는 것에 근거하여, 제2 영역(1620) 상에 상기 특정된 노드 그룹과 관련된 상세 정보(1923) 및 상기 특정된 노드 그룹에 따른 노드 배치를 승인받기 위한 아이콘(1924)중 적어도 하나를, 가이드 정보로서 출력할 수 있다.
즉, 제어부(330)는, 특정 맵(1700) 중 사용자로부터 선택된 특정 영역과 관련된 노드 그룹을, 사용자에게 추천할 수 있다.
나아가, 제어부(330)는, 노드 배치를 승인 받기 위한 아이콘(ex: “가이드 정보 적용하기”, 1914)에 대한 사용자 입력이 인가되는 것에 근거하여, 도 20에 도시된 것과 같이, 노드 그룹에 포함된 복수의 노드(1711, 1712, 1713, 1714, 1715)를 특정 맵(1700) 상에 배치할 수 있다.
즉, 제어부(330)는 사용자의 전자기기(50)를 통해 노드 배치를 승인 받기 위한 아이콘(1914)가 선택되는 경우, 그래픽 객체가 위치한 영역에 특정된 노드 그룹을 구성하는 적어도 하나의 노드가 배치할 수 있다.
이 경우, 제어부(330)는, 특정 맵(1700)과 관련된 복수의 노드 그룹 중 편집 인터페이스(1600) 상에 제공되고 있는 가이드 정보와 관련된 특정 노드 그룹에 포함된 복수의 노드를, 특정 맵(1700) 상에 배치할 수 있다.
보다 구체적으로, 특정 맵(1700)과 관련되어 제1 노드 그룹 및 제2 노드 그룹이 특정되어 있으며, 편집 인터페이스(1600) 상에는 제1 노드 그룹을 추천하는 가이드 정보가 출력되고 있는 상태에서, 노드 배치를 승인 받기 위한 아이콘 (1914)에 대한 사용자 선택이 있는 경우, 제어부(330)는 상기 제1 노드 그룹에 포함된 복수의 노드를 특정 맵(1700) 상에 배치할 수 있다.
나아가, 제어부(330)는, 제1 속성의 노드 배치 프로세스와 같이, 제2 속성의 노드 배치 프로세스에서도 특정 맵(1700) 상에, 특정 맵(1700) 상에 배치된 복수의 노드를 검수하는 노드 검수 프로세스를 수행할 수 있다. 보다 자세한 내용은 후술하도록 한다.
한편, 사용자는, 특정 맵(1700)과 관련된 노드 그룹의 노드 규칙에 따라 특정 맵(1700) 상에 노드를 배치하는 것이 아닌, 특정 맵(1700) 상에 노드를 자유롭게 배치하고자 하나는 니즈가 존재할 수 있다.
이에, 본 발명에서는, 특정 맵(1700)과 관련하여 특정된 노드 그룹에 따른 노드 규칙과 다르게 노드를 배치할 수 있는 제3 속성의 노드 배치 프로세스를 제공할 수 있다. “제3 속성의 노드 프로세스”는, “수동 노드 프로세스”로도 명명될 수 있다.
제어부(330)는, 편집 인터페이스(1600)의 제1 영역(1610)에 출력되고 있는 특정 맵(1700) 중 특정 영역에 대한 사용자 선택에 근거하여 노드를 배치(또는 할당)할 수 있다.
제어부(330)는, 사용자 선택에 따른 노드 배치가, 특정 맵(1700)과 관련된 노드 그룹의 노드 규칙에 대응하지 않더라도, 특정 맵(1700) 상에 노드를 배치할 수 있다.
나아가, 제어부(330)는, 제3 속성의 노드 배치 프로세스에 따라 노드가 배치된 경우에도, 제1 속성의 노드 배치 프로세스 및 제2 노드 배치 프로세스와 같이, 특정 맵(1700) 상에 배치된 복수의 노드를 검수하는 노드 검수 프로세스를 수행할 수 있다. 검수 프로세스에 대한 보다 자세한 내용은 후술하도록 한다.
한편, 앞서 설명한 것과 같이, 본 발명에서는, 특정 층의 특정 맵(1700)에 매칭되어 있는 공간 특성 정보에 근거하여, 특정 맵(1700)과 관련된 노드 객체를 특정할 수 있다.
본 발명에서, 특정 맵(1700)에 매칭되어 있는 공간 특성 정보는, 특정 맵(1700)을 생성하는 과정에서, 제어부(330)에 의해 특정 층에 대응하는 공간(10)의 특성이 결정되는 것에 근거하여 특정되거나, 시스템(3000) 관리자에 의해 입력되는 정보에 근거하여 특정될 수 있다.
상기 특정 맵(1700)은 특정 층에 대한 2차원 또는 3차원 지도 중 적어도 하나로 이루어질 수 있으며, 로봇(R)의 주행 경로를 설정하는데 활용될 수 있는 지도를 의미할 수 있다.
이 때, 맵은, 사전에 공간(10)을 이동하는 적어도 하나의 로봇에 의해, SLAM(Simultaneous Localization and Mapping)에 기반하여 작성된 지도일 수 있다. 즉, 맵은 vision(또는 visual)기반의 SLAM기술에 의하여 생성된 지도일 수 있다.
이하에서는, 특정 맵(1700)을 생성하는 과정과 함께, 특정 층에 대응하는 공간(10)의 특성에 따른 공간 특성 정보를 특정하는 방법에 대해 설명하도록 한다.
도 21a의 (a)에 도시된 것과 같이, 로봇(R)은 건물(1000) 내를 주행하면서 건물(1000) 내 공간에 대한 스캔(Scan) 또는 센싱(Sensing)을 수행할 수 있다. 클라우드 서버(20)는 로봇(R)이 건물(1000) 내 공간에 대한 센싱을 수행하도록, 로봇(R)의 주행을 제어할 수 있다.
본 발명에서는, 건물(1000) 내를 주행하면서 공간을 센싱하는 로봇(R)을 “센싱 로봇”, “스캔 로봇”, “매핑(mapping) 로봇”, “자율 주행 로봇”, “주행 로봇” 등으로 다양하게 명명할 수 있으며, 로봇(R)이 공간을 센싱(또는 스캔)하여 획득한 정보를 “센싱 정보”, “스캔 정보 등으로 다양하게 명명할 수 있다.
본 발명에서, “공간을 센싱한다”는 것은, 적어도 하나의 센서를 이용하여 건물(1000) 내 공간(10)에 대한 영상을 촬영하거나, 공간(10) 상에 위치하는 장애물에 대한 3차원 좌표 정보(또는 3차원 위치 정보)를 획득하는 것으로 이해할 수 있다.
여기에서, “장애물”는, 공간(10)을 이루는 벽, 천정(지붕), 바닥, 계단, 기둥, 문, 공간(10)에 존재하는 사물(ex: 다른 로봇 등) 및 설비 등을 의미할 수 있다.
본 발명에서는, 공간(10) 상에 존재하는 장애물 중, 공간(10)의 일정 수평 영역이 고정 할당된 장애물을 “정적(靜的) 장애물”로, 일정 수평 영역이 고정 할당되지 않은 장애물을 “동적(動的) 장애물로” 명명할 수 있다. 로봇(R)은, 정적 장애물이 위치하는 영역은 주행할 수 없지만, 동적 장애물이 위치하는 영역은, 상기 동적 장애물이 상기 영역을 벗어나는 경우 주행이 가능할 수 있다.
예를 들어, 엘리베이터는 상하(즉, 수직 영역)으로 이동하지만 공간(10) 상에서 일정한 수평 영역이 할당되어 있기 때문에, 본 발명에서는 엘리베이터를 정적 장애물(또는 정적 장애물)로 이해할 수 있다.
다른 예를 들어, 공간(10)을 주행하는 로봇(R)은, 공간(10) 상의 일정 영역에 정지해 있다고 하더라도, 고정된 수평 영역이 할당되어 있는 것은 아니기 때문에, 본 발명에서 공간(10)을 주행하는 로봇(R)은 동적 장애물(또는 동적 장애물)로 표현할 수 있다.
즉, 센싱 정보에는, 건물(1000) 내 동작 장애물 및 정적 장애물 중 적어도 하나에 대한 정보를 포함할 수 있다.
한편, 본 발명에 따른 통신부(310)는, 건물(1000)을 주행하는 로봇(R) 및 클라우드 서버(20) 중 적어도 하나로부터, 로봇(R)이 건물(1000) 내를 주행하면서 센싱(또는 센싱)한 공간의 센싱 정보를 수신할 수 있다. 즉, 통신부(310)는, 건물(1000) 내 공간에 위치하는 정적 장애물 및 동적 장애물 중 적어도 하나에 대한 정보를 포함하는 센싱 정보를 수신할 수 있다.
제어부(330)는, 로봇이 공간(10) 내를 주행하면서 획득한 센싱 정보를 이용하여, 특정 맵(1700)을 생성할 수 있다. 센싱 정보를 이용하여 특정 맵(1700)을 생성하는 기능은, 클라우드 서버(20) 및 맵 생성과 관련된 다른 외부 서버 중 적어도 하나에 의해서도 수행될 수 있다. 다만, 이하에서는 설명의 편의를 위하여 본 발명에 따른 맵 생성 시스템(3000)에서 특정 맵(1700)을 생성하는 것으로 설명하도록 한다.
제어부(330)는, 도 21a의 (b)에 도시된 것과 같이, 수신한 센싱 정보에 근거하여, 공간 상에 존재하는 장애물(O1, O2, O3, O4)을 검지 할 수 있다
제어부(330)는, 센싱 정보 중 특정 층과 관련된 센싱 정보를 이용하여, 특정 층에 포함된 장애물에 대한 제1 특성의 포인트 클라우드(Point Cloud) 맵을 생성할 수 있다.
여기에서, 제1 특성의 포인트 클라우드 맵은, 특정 층에 포함된 장애물에 대한 3차원 정보를 포함하도록 구성되어진 맵으로 이해될 수 있다.
보다 구체적으로, 제1 특성의 포인트 클라우드 맵은, 센싱 정보로부터 검지(또는 검출)된 장애물에 대한 검지 정보를 기반으로, 포인트 클라우드(Point Cloud) 기법을 통해 생성된, 장애물에 대한 3차원 좌표를 가지는 점들로 구성된 맵으로 이해될 수 있다. 즉, 제1 특성의 포인트 클라우드 맵은, 3차원 좌표를 가지는 점들에 의하여, 상기 장애물을 입체적으로 나타내는(또는 표현하는)맵 일 수 있다.
제어부(330)는, 센싱 정보로부터 검지(또는 검출)된 장애물에 대한 검지 정보를 기반으로, 포인트 클라우드(Point Cloud) 기법을 이용하여, 장애물에 대한 3차원 좌표를 가지는 점들을 생성할 수 있다.
여기에서, 포인트 클라우드(Point Cloud) 기법이란, 점자료 기법 또는 점군(點群) 기법이라고 명명되며, 센서로부터 방출되어 대상체에서 반사되어 수신기로 돌아온 수많은 포인트 클라우드(또는 측점군)들을 제공하는 기법을 의미할 수 있다.
상기 포인트 클라우드(또는 측점군)들은, 각각 중심 좌표계(x, y, z)를 기준으로 각 지점에 대한 샘플링(sampling)을 통해 획득될 수 있다.
나아가, 제어부(330)는 제1 특성의 포인트 클라우드 맵을 이용하여, 특정 층에 포함된 장애물에 대한 제2 특성의 포인트 클라우드 맵 ( “평면화된 포인트 클라우드 맵” 또는 “2차원 센싱 맵(지도)”로도 명명 가능)을 생성할 수 있다.
여기에서, 제2 특성의 포인트 클라우드 맵(M1)은, 상기 특정 층을 주행하는 로봇들의 주행 평면을 기준으로, 상기 제1 특성의 포인트 클라우드 맵으로부터 평면화된 맵으로 정의될 수 있다. 즉, 제2 특성의 포인트 클라우드 맵(M1)은, 도 21a의 (c)에 도시된 것과 같이, 제1 특성의 포인트 클라우드 맵에 포함된 3차원 데이터가 상기 주행 평면을 기준으로 전환된 2차원 데이터를 포함하는 맵으로 이해될 수 있다. 이에, 본 발명에서는, 제2 특성의 포인트 클라우드 맵(M1)을, “평면화된 포인트 클라우드 맵” 또는 “2차원 센싱 정보 맵”으로도 명명할 수 있다.
제어부(330)는 상기 포인트 클라우드(Point Cloud) 기법을 이용하여 획득한 장애물에 대한 3차원의 포인트 클라우드들을, 도 21a (c)에 도시된 것과 같이 특정 층을 주행하는 로봇들의 주행 평면을 기준으로, 2차원의 정보(P1, P2) 로 변환할 수 있다. 즉, 제어부(330)는 검출한 정적 장애물에 대한 3차원의 포인트 클라우드를, 2차원의 평면화된 정보(P1, P2)로 변환할 수 있다.
나아가, 제2 특성의 포인트 클라우드 맵(M1)에 포함된 2차원의 정보(P1, P2)는, 제1 특성의 포인트 클라우드 맵에 포함된 3차원의 포인트 클라우드들이, 상기 주행 평면을 기준으로 2차원 정보로 전환된 것일 수 있다. 이에, 본 발명에서는 설명의 편의를 위하여, 제1 특성의 포인트 클라우드 맵에 포함된 포인트 클라우드(또는 측점군)를 “3차원의 포인트 클라우드”로 명명하고, 제2 특성의 포인트 클라우드 맵에 포함된 정보를, “2차원의 포인트 클라우드” 또는 “평면화된 포인트 클라우드”로 명명할 수 있다.
한편, 본 발명에서 센싱 로봇(R)은, 건물(1000) 내 공간을 주행하면서 장애물에 대한 센싱을 세밀하게 수행할 수 있다. 이에, 로봇으로부터 수신한 센싱 정보에는, 특정 층에 포함된 장애물에 대한 세밀한 센싱 정보가 포함되어 있을 수 있다.
보다 구체적으로, 센싱 정보에는, 특정 장애물의 서로 다른 일부 영역을 센싱한 복수의 센싱 요소 정보를 포함할 수 있다. 여기에서, 복수의 센싱 요소 정보는 무수히 많은 개수의 센싱 정보 요소를 의미할 수 있다. 예를 들어, 센싱 정보에는, 특정 벽의 서로 다른 일부 영역을 센싱한 무수히 많은 복수의 센싱 요소 정보를 포함할 수 있다.
제어부(330)는, 로봇(R)으로부터 수신한 세밀한 센싱 정보에 기초하여, 특정 층의 실제 구조(모습)에 대응하는 제1 특성의 포인트 클라우드 맵을 생성할 수 있다.
제1 특성의 포인트 클라우드 맵에는, 복수의 센싱 요소 정보 각각에 대응하는 복수의 3차원의 포인트 클라우드(또는 측점군)들이 맵핑되고, 상기 복수의 3차원의 포인트 클라우드(또는 측점군)들에 의해 이루어지는 형상은 특정 층에 포함된 장애물의 실제 형상에 대응할 수 있다.
즉, 제1 특성의 포인트 클라우드 맵에는, 복수의 3차원의 포인트 클라우드(또는 측점군)들에 의해 이루어지는 형상(또는 모습)이, 특정 층의 장애물의 실제 형상에 대응되도록, 굉장히 많은 복수의 3차원의 포인트 클라우드(또는 측점군)들이 맵핑되어 존재할 수 있다.
나아가, 특정 층에 존재하는 장애물의 실제 형상에 대응하는 제1 특성의 포인트 클라우드 맵에 기초하여, 제어부(330)는 로봇(R)의 주행 평면 기준으로, 특정 층에 포함된 장애물의 실제 형상에 대응하는 제2 특성의 포인트 클라우드 맵을 생성할 수 있다.
즉, 제2 특성의 포인트 클라우드 맵에는, 복수의 2차원의 포인트 클라우드(평면화된 포인트 클라우드)들에 의해 이루어지는 형상(또는 모습)이, 로봇(R)의 주행 평면을 기준으로 하는 특정 층의 실제 형상(또는 구조)에 대응되도록, 굉장히 많은 복수의 2차원의 포인트 클라우드(또는 평면화된 포인트 클라우드)들이 맵핑될 수 있다.
도 21a의 (c)에서는 설명의 편의를 위하여, 특정 층의 실제 형상(또는 구조)에 대응하는 제2 특성의 포인트 클라우드 맵(M1)의 일부 영역을 확대하여 도시하였으나, 제2 특성의 포인트 클라우드 맵(2100)은, 도 21b에 도시된 것과 같이, 세밀하게 맵핑된 복수의 2차원 포인트 클라우드들을 포함할 수 있다.
즉, 제2 특성의 포인트 클라우드 맵(2100)에는, 도 21b에 도시된 것과 같이, 로봇(R)의 주행 평면을 기준으로, 특정 층에 포함된 장애물들의 위치, 형상, 구조를 구분(또는 식별)할 수 있도록, 복수의 2차원 포인트 클라우드들이 세밀하게 맵핑되어 있을 수 있다.
예를 들어, 도 21b에 도시된 것과 같이, 제2 특성의 포인트 클라우드 맵(2100)에는, 특정 장애물(예를 들어, 벽 또는 특정 공간(ex: ROOM), 2110, 2120)을 식별(또는 구분)할 수 있도록, 복수의 2차원 포인트 클라우드들이 세밀하게 맵핑되어 존재할 수 있다.
다만, 도 21b에서도 실제 제2 특성의 포인트 클라우드 맵을 간략하게 도시한 것으로, 본 발명에서 설명하는 제2 특성의 포인트 클라우드 맵은 보다 촘촘하고 세밀하게 복수의 2차원 포인트 클라우드들이 맵핑되어 있음은 당연하다.
한편, 앞서 설명한 것과 같이, 본 발명에서는 특정 맵(1700)에 매칭된 공간 특성 정보에 근거하여, 특정 맵(1700)과 관련된 노드 그룹을 특정할 수 있다.
여기에서, “공간의 특성”은, 공간(10)의 구조, 공간(10)에 배치된 설비, 공간(10)의 상황 중 적어도 하나에 의하여 로봇(R)의 운용 및 주행에 영향을 미칠 수 있는 다양한 요소로 이해될 수 있다.
제2 특성의 제2 특성의 포인트 클라우드 맵(M1)은, 로봇(R)이 직접 센싱한 센싱 정보로부터 검출된 장애물에 대한 제2 특성의 포인트 클라우드(P1, P2)를 포함하고 있지만, 특정 맵(1700)과 관련된 노드를 보다 정확하게 특정하기 위해서는 보다 정확하고 상세한 특정 맵(1700) 및 공간 특성 정보가 필요할 수 있다.
이에, 본 발명에서는 도 21a의 (d) 및 도 21a의 (e)에 도시된 것과 같이, 제2 특성의 포인트 클라우드 맵(M1)과 공간(10)에 대한 다양한 정보(예를 들어, 건물의 도면, M2)를 모두 이용하여, 보다 정확하고 상세한 맵(M3) 및 공간 특성 정보를 생성할 수 있다.
보다 구체적으로, 제어부(330)는 제2 특성의 포인트 클라우드 맵(M1)에서, 연계된 복수의 제2 특성의 포인트 클라우드들을 서로 연결하여, 장애물에 대한 도형 객체를 추출(생성 또는 획득)할 수 있다. 이 때, 도형 객체는 동적 장애물 및 정적 장애물 중 적어도 하나에 대한 도형 객체일 수 있다.
예를 들어, 도 22에 도시된 것과 같이, 제어부(330)는 제2 특성의 포인트 클라우드 맵(M1)에서, 제1 장애물과 관련된 제1 그룹의 제2 특성의 포인트 클라우드들을 서로 연결하여 제1 장애물과 관련된 도형 객체(2210)를 추출하고, 제2 장애물과 관련된 제2 그룹의 제2 특성의 포인트 클라우드들을 서로 연결하여 제2 장애물과 관련된 도형 객체(2220)를 획득할 수 있다.
나아가, 제어부(330)는, 적어도 하나의 도형 객체(2210, 2220)을 포함하는 제2 특성의 포인트 클라우드 맵(M1)과, 공간(10)에 대한 공간 메타 정보를 이용하여, 도 16에 도시된 것이, 특정 층에 포함된 정적 장애물 각각에 대응되는 그래픽 객체를 포함하는 특정 맵(1700)을 생성할 수 있다.
본 발명에서, 특정 층에 포함된 정적 장애물은, 특정 층을 구성하는 벽(wall), 문(door) 천정(지붕), 바닥, 계단, 기둥, 상기 벽 등으로 이루어진 룸(Room) 및 설비 중 적어도 하나를 포함할 수 있다.
나아가, 상기 설비(또는 설비 인프라)는, 건물(1000) 내에서 서비스 제공, 로봇의 이동, 기능 유지, 청결 유지 등을 위하여 건물에 구비되는 시설로서, 그 종류 및 형태는 매우 다양할 수 있으며, 예를 들어, i) 특정 층을 주행하는 로봇 및 사람 중 적어도 하나가 이용 가능하도록 구성된 엘리베이터(도 2에서 도면 부호 204 참조), ii) 에스컬레이터(도 2에서 도면 부호 205 참조), iii) 출입문 또는 출입통제 게이트(도 2에서 도면 부호 206, 207 참조), iv) 로봇 이동 통로(로봇 전용 도로 및 로봇 공용 도로, (도 2에서 도면 부호 201, 202 참조), v) 충전 설비(ex: 충전기, 도 2에서 도면 부호 209 참조), vi) 세척 설비(도 2에서 도면 부호 210 참조), vii) 로봇이 대기하는 대기 공간에 해당하는 대기 공간 설비(도 2에서 도면 부호 208 참조)를 포함할 수 있다.
나아가, “공간 메타 정보”는, 공간(10)의 정적 장애물과 관련된 공간 특성을 반영하고 있는 다양한 정보로, 예를 들어, 도면 정보(도면 이미지 또는 도면, 도 23a의 (a)에서 도면부호 2310), ii) 공간 연계 정보(도 23a의 (b)에서 도면부호 2320)와 같이 존재할 수 있다.
여기에서, 도면 정보(2310)는, 특정 층의 공간 특성이 반영된 도면과 관련된 정보로, 특정 층에 포함된 정적 장애물의 구조, 위치, 종류(또는 타입), 속성, 특성 등에 대한 정보를 포함할 수 있다.
나아가, 연계 정보(2320)는, 도면 정보(2310) 외에, 특정 층의 공간(10) 특성을 포함하는 다양한 정보로, 특정 층에 포함된 정적 장애물의 구조, 위치, 종류(또는 타입), 속성, 특성 등에 대한 정보를 포함하며, “공간(10)과 관련된 정보”, “공간 연계 정보”, “공간 연관 정보”, “공간 설명 정보”, “공간 구역 정보”등으로 다양하게 명명될 수 있다.
제어부(330)는, 특정 층의 공간(10)에서의 정적 장애물에 대한 특성이 반영된 공간 메타 정보(ex: 도면)와, 제2 특성의 제2 특성의 포인트 클라우드 맵(M1)을 이용하여, 특정 층에 포함된 정적 장애물이 반영된 특정 맵(1700)을 생성할 수 있다.
본 발명에서, “공간의 특성을 포함하는 특정 맵(1700)”은, “공간 특성 정보를 포함하는 특정 맵(1700)” 또는 “공간 특성 정보가 매칭된 특정 맵(1700)” 및 “특정 맵(1700)과 관련된 공간 특성 정보”와 혼용하여 사용될 수 있다. 즉, 본 발명에서는, 특정 맵(1700)이 공간(10)의 특성을 포함한다는 것은, 특정 맵(1700) 자체에 공간 특성 정보가 반영되어 있거나, 특정 맵(1700)과 공간 특성 정보가 서로 매칭되어 저장부(320)에 저장되어 있거나, 특정 맵(1700)과 관련된 공간 특성 정보를 생성(또는 도출)하는 것을 모두 의미할 수 있다.
보다 구체적으로, 제어부(330)는, 제2 특성의 포인트 클라우드 맵(M1)에 포함된 특정 도형 객체(2210, 2220)에 대응하는 정보가, 공간 메타 정보(ex: 도면 정보, 2310)에 포함되어 있는 것에 근거하여, 제2 특성의 포인트 클라우드 맵(M1)에 포함된 도형 객체를 공간(10)에서의 정적 장애물로 특정하고, 특정된 정작 정애물에 대응하는 그래픽 객체를 특정 맵(1700)에 반영할 수 있다.
예를 들어, 제어부(330)는, 제2 특성의 포인트 클라우드 맵(M1)에 포함된 제1 도형 객체(2210)와 위치, 모양이 대응하는 정보가, 도면 정보(2310) 상에 포함되어 있는 것에 근거하여, 제1 도형 객체를 공간(10)에서의 정적 장애물로 특정하고, 정작 장애물(또는 제1 도형 객체)에 대응하는 그래픽 객체를 특정 맵(1700)에 반영(배치 또는 표시)할 수 있다.
나아가, 제어부(330)는 제2 특성의 포인트 클라우드 맵(M1)에 포함된 특정 도형 객체와 일부 대응하는 정보가, 공간 메타 정보에 포함되어 있는 경우, 공간 메타 정보에 근거하여 제2 특성의 포인트 클라우드 맵(M1)에 포함된 도형 객체를 변경(또는 수정)하고, 도형 객체를 공간(10)에서의 정적 장애물로 특정하고, 특정된 정작 정애물에 대응하는 그래픽 객체를 특정 맵(1700)에 반영할 수 있다.
예를 들어, 제어부(330)는, 제2 특성의 포인트 클라우드 맵(M1)에 포함된 제2 도형 객체(2220)와 위치, 모양이 일부 대응하는 정보가, 도면 정보(2310) 상에 포함되어 있지 않는 경우, 제2 도형 객체(2220)을 도면 정보(2310)에 포함된 정보에 근거하여 변경(또는 수정)하고, 도형 객체를 공간(10)에서의 정적 장애물로 특정하고, 특정된 정작 정애물에 대응하는 그래픽 객체를 특정 맵(1700)에 반영할 수 있다.
나아가, 제어부(330)는 제2 특성의 포인트 클라우드 맵(M1)에 포함된 특정 도형 객체와 대응하는 정보가, 공간 메타 정보에 포함되어 있지 않는 경우, 제2 특성의 포인트 클라우드 맵(M1)에 포함된 도형 객체는 동적 장애물에 대한 것으로 판단하고, 이를 특정 맵(1700)에 반영하지 않을 수 있다.
나아가, 제어부(330)는 특정 층의 공간 특성이 반영된 공간 메타 정보(ex: 도면, 2310)에 근거하여, 특정 층에 포함된 정적 장애물의 종류(또는 타입)를 특정할 수 있다.
나아가, 특정 맵(1700)에 포함된 정적 장애물 각각에 대응되는 그래픽 객체에. 그래픽 객체에 각각 대응되는 정적 장애물의 종류(또는 타입)에 대한 종류 정보(또는 타입 정보)를 맵핑(mapping)할 수 있다. 이하에서는, 정적 장애물이 설비인 경우를 예를 들어 설명하도록 한다.
제어부(330)는 제2 특성의 포인트 클라우드 맵(M1)에 포함된 도형 객체(1910, 1920)와, 공간 메타 정보를 서로 조합하여, 공간(10)에 배치된 설비를 특정하고, 특정된 설비의 종류 정보(또는 타입 정보)를 특정 맵(1700)에 맵핑(mapping)할 수 있다.
여기에서, 설비의 종류 정보를 특정 맵(1700)에 맵핑 한다는 것은, 특정 맵(1700) 상에, 설비 정류 정보를 표시하거나, 특정 맵(1700)과 연계하여 설비의 종류 정보를 저장부(320)에 저장하는 것으로 이해할 수 있다.
보다 구체적으로, 제어부(330)는, 제2 특성의 포인트 클라우드 맵(M1)에 포함된 특정 도형 객체에 대응하는 정보가, 공간 메타 정보에 포함되어 있는 것에 근거하여, 공간 메타 정보에 포함된 설비의 종류 정보를, 상기 특정 도형 객체에 대응하는 특정 맵(1700)의 그래픽 객체에 맵핑 할 수 있다.
나아가, 제어부(330)는, 특정 맵(1700)에 포함된 그래픽 객체에 대응하는 정보가, 공간 메타 정보에 포함되어 있는 것에 근거하여, 공간 메타 정보에 포함된 설비의 종류 정보를, 특정 맵(1700)의 그래픽 객체에 맵핑 할 수 있다.
예를 들어, 제어부(330)는, 제2 특성의 포인트 클라우드 맵(M1)에 포함된 제1 도형 객체의 위치와 대응하는 정보(ex: “7층 A1 구역”, 2321)가, 공간 연계 정보에 포함되어 있는 것에 근거하여, 제1 도형 객체(2210)에 대응하는 특정 맵(1700)의 그래픽 객체에, 로봇 엘리베이터 설비(“로봇 E/V”, 2322)에 대한 종류 정보(또는 타입 정보)를 맵핑 할 수 있다.
한편, 본 발명에서, “특정 맵(1700)에 포함된 그래픽 객체” 및 “특정 맵(1700)에 포함된 그래픽 객체에 맵핑된 그래픽 객체에 대한 정적 장애물의 종류 정보(또는 타입 정보)”는, 앞서 설명한 특정 맵(1700)에 매칭된 공간 특성(또는 공간 특성 정보)를 의미하는 것으로 이해할 수 있다.
한편, 특정 공간(10)에 대한 도면 정보는, 도 23b에 도시된 것과 같이, 특정 공간(10)에 대한 서로 다른 정보를 포함하는 복수개의 레이어(layer)로 이루어질 수 있다.
본 발명에서 용어의 혼동을 피하기 위하여, 특정 공간(10)에 대한 서로 다른 정보를 포함하는 복수개의 도면 레이어 각각을, 서브 도면 정보(2330, 2340)로 명명하여 설명할 수 있다.
서브 도면 정보(2330, 2340)는, 공간의 특성과 관련된 다양한 정보 중 적어도 하나와 관련된 도면 정보로 이해할 수 있다. 즉, 서브 도면 정보(2330, 2340)에는, 공간(10)의 특성을 구성하는 복수의 요소들 중 적어도 하나의 요소가 표시되어 있을 수 있다.
보다 구체적으로, 제1 서브 도면 정보(2330)는, 공간(10)을 구성하는 복수의 구성 요소 중 적어도 하나(예를 들어, 벽)에 대한 정보가 반영된 도면 정보를 포함할 수 있다.
예를 들어, 도 23b의 (a)에 도시된 것과 같이, 제1 서브 도면 정보(2330)에는 벽으로 이루어진 복수개의 공간(또는 서브 공간(10) 또는 룸(Room), 2331, 2332)가 표시되어 있을 수 있다.
나아가, 제2 서브 도면 정보(2340)는, 공간(10)에 배치된 설비에 대한 정보가 반영된 도면 정보를 포함할 수 있다. 보다 구체적으로, 제2 서브 도면 정보(2340)에는, 공간(10) 상에 배치된 설비를 나타내는 그래픽 객체가, 상기 설비가 배치된 지점에 대응하는 영역 상에 표시되어 있을 수 있다.
예를 들어, 도 23b의 (b)에 도시된 것과 같이, 제2 서브 도면 정보(2340) 상에는, 엘리베이터 설비가 배치된 실제 공간(또는 지점)에 대응하는 영역 상에 엘리베이터 설비를 나타내는 그래픽 객체(2341)가 표시되고, 충전기 설비가 배치된 실제 공간(또는 지점)에 대응하는 영역 상에 충전기 설비를 나타내는 그래픽 장애물(2342)가 표시되어 있을 수 있다.
제어부(330)는, 특정 맵(1700)과 관련된 노드 그룹 할당에 필요한 정보와 관련된 적어도 하나의 서브 도면 정보를, 제2 특성의 포인트 클라우드 맵(M1)과 매칭하여, 노드 그룹 할당에 필요한 핵심적인 정보만을 포함하는 특정 맵(1700)을 생성할 수 있다.
예를 들어, 제어부(330)는, 제1 층과 관련된 특정 맵(1700)을 생성하는 경우, 제1 서브 도면 정보(2330)를 제2 특성의 포인트 클라우드 맵(M1)과 매칭하여, 제1 층의 공간의 특성을 포함하는 특정 맵(1700)을 생성하고, 제2 층과 관련된 특정 맵(1700)을 생성하는 경우, 제2 서브 도면 정보(2340)를 제2 특성의 포인트 클라우드 맵(M1)과 매칭하여, 제2 층의 공간의 특성을 포함하는 특정 맵(1700)을 생성할 수 있다.
이와 같이, 본 발명에서는, 제2 특성의 포인트 클라우드 맵(M1)과 공간의 특성과 관련된 다양한 정보 중 적어도 하나와 관련된 서브 도면 정보를 매칭하여 특정 맵(1700)을 생성함으로써, 특정 맵(1700) 생성 과정에서 과도한 연산 과정을 줄이고, 데이터의 효율을 증가시킬 수 있다.
한편, 본 발명에서는, 시스템 관리자(이하 “사용자”로 설명)로부터 입력되는 공간 특성 정보를 특정 맵(1700) 상에 반영할 수 있다.
제어부(330)는, 도 24에 도시된 것과 같이, 사용자가 특정 맵(1700) 상에 공간 특성 정보를 반영할 수 있도록, 편집 인터페이스(1600)를 사용자의 전자기기(50) 상에 제공할 수 있다.
예를 들어, 제어부(330)는, 사용자가 제2 특성의 포인트 클라우드 맵(M1) 및 공간 메타 정보(ex: 도면 정보, 2310)를 서로 비교할 수 있도록, 편집 인터페이스(1600) 상에, 사용자가 제2 특성의 포인트 클라우드 맵(M1) 및 공간 메타 정보(ex: 도면 정보, 2310)를 나란히 제공할 수 있다(도 25 참조).
이 경우, 제어부(330)는 도 25에 도시된 것과 같이, 제2 특성의 포인트 클라우드 맵(M1)과 공간 메타 정보(ex: 도면 정보, 2310)에서 서로 대응하지 않는 정보에 대한 확인을 요청하는 확인 요청 정보(ex: “7층 A5 구역에서 건물(1000) 도면과 다른 정적 장애물을 감지했어요. 확인이 필요합니다.” 2530)를 편집 인터페이스(1600) 상에 제공할 수 있다.
예를 들어, 제2 특성의 포인트 클라우드 맵(M1)에는 일 영역에 포인트 클라우드의 그룹(2510)이 포함되어 있는 반면에, 도면 정보(2310)에는 상기 일 영역에 대응하는 영역(2520)에 정적 장애물에 대한 정보가 없는 경우 ,제어부(330)는 상기 확인 요청 정보(2530)을 편집 인터페이스(1600) 상에 출력할 수 있다.
다른 예를 들어, 제어부(330)는, 사용자가 제2 특성의 포인트 클라우드 맵(M1) 및 공간 메타 정보(ex: 도면 정보, 2310)의 대응여부를 직관적으로 인식할 수 있도록, 편집 인터페이스(1600) 상에, 제2 특성의 포인트 클라우드 맵(M1) 및 공간 메타 정보(ex: 도면 정보, 2310)를 서로 겹쳐서 제공할 수 있다.
제어부(330)는, 전자기기(50)로부터 특정 층에 대한 공간 특성 정보가 수신하는 것에 근거하여, 특정 층과 관련된 특정 맵(1700) 상에 수신한 공간 특성 정보를 반영하거나, 기 반영되어 잇는 공간 특성 정보를 수신한 공간 특성 정보를 이용하여 업데이트할 수 있다.
예를 들어, 도 24에 도시된 것과 같이, 사용자가 편집 인터페이스(1600)를 통해, 특정 층의 “회의실”과 관련된 공간 특성 정보를 입력하면, 제어부(330)는, 사용자로부터 입력된 “회의실”과 관련된 공간 특성 정보를 특정 맵(1700) 상에 반영(ex: 수정 또는 업데이트, 2410)할 수 있다.
이와 같이, 본 발명에서는, 로봇(R)이 건물(1000) 내를 주행하면서 공간(10)을 센싱한 센싱 정보 및 공간(10)에 대한 공간 메타 정보를 이용하여 특정 맵(1700)을 생성할 수 있을 뿐만 아니라, 사용자에 의해서도 특정 맵(1700)을 생성할 수 있는 사용자 인터페이스를 제공할 수 있다. 이를 통해 사용자는, 특정 맵(1700)이 공간의 실제 상황을 더욱 정확히 반영하도록, 직접 특정 맵(1700)을 생성 및 업데이트 할 수 있다.
한편, 본 발명에서는 특정 맵(1700) 상에, 특정 맵(1700) 상에 배치된 복수의 노드를 검수하는 노드 검수 프로세스를 수행할 수 있다.
제어부(330)는 특정 맵(1700)에 포함된 그래픽 객체의 종류(에 대응되는 노드 규칙에 따라 노드들의 배치가 완료되는 것에 근거하여, 노드 규칙에 따른 노드들을 특정 맵 상에 배치할지 여부에 대한 검수를 수행하는 검수 프로세스를 수행할 수 있다.
이러한 노드 검수 프로세스는, 노드 규칙에 따라 노드들이 특정 맵(1700)상에 배치되었는지 여부에 따라, 제1 속성의 노드 검수 프로세스 및 제2 속성의 노드 검수 프로세스 중 어느 하나를 수행할 수 있다.
먼저, 제1 속성의 노드 검수 프로세스는, 노드 규칙에 따라 노드들이 특정 맵(1700) 상에 배치된 경우 처리되는 검수 프로세스로, 앞서 설명한 제1 속성의 노드 배치 프로세스(또는 자동화 노드 배치 프로세스) 및 제2 속성의 노드 배치 프로세스(또는 반자동화 노드 배치 프로세스) 중 어느 하나의 노드 배치 프로세스에 따라 노드가 배치된 경우에 수행될 수 있다.
제어부(330)는, 노드 규칙에 따라 노드들이 특정 맵(1700) 상에 배치된 경우, 기 특정된 검수 주체(ex: 사용자 또는 시스템 관리자)로부터, 노드 규칙에 따른 노드들의 배치의 승인을 받을 수 있도록, 제1 속성의 노드 검수 프로세스를 진행할 수 있다.
상기 기 특정된 검수 주체는, 예를 들어, 특정 맵(1700)과 관련된 사용자에 해당할 수 있으며, 기 특정된 검수 주체는 본 발명에서 제공하는 제1 속성의 노드 검수 프로세스를 통해, 노드 규칙에 따른 노드들의 배치를 승인하거나, 실제 공간(10)의 상황에 맞게 노드 배치를 변경할 수 있다.
제어부(330)는, 기 특정된 검수 주체가, 노드 규칙에 따라 노드들이 배치된 영역에 대한 식별 및 검수가 가능하도록, 도 26에 도시된 것과 같이, 노드 규칙에 따라 배치된 노드들이 포함된 적어도 하나의 노드 그룹 영역(2610)을 시각적으로 하이라이팅 처리할 수 있다.
나아가, 제어부(330)는, 상기 하이라이팅 처리와 연계하여, 편집 인터페이스(1600) 상에, 상기 노드 그룹 영역(2610)에 대한 기 특정된 검수 주체의 검수를 요청하는 검수 요청 정보(ex: “노드 작성 가이드에 따라 로봇 E/V 밀집 공간에 노드가 배치되었습니다. 확인이 필요합니다.”, 2620)를 출력할 수 있다.
나아가, 제어부(330)는, 편집 인터페이스(1600) 상에, 상기 노드 그룹 영역(2610)에 적용된 노드 규칙에 대한 정보를 출력하여, 기 특정된 검수 주체가 노드 그룹 영역(2610)에 적용된 노드 규칙을 바로 확인하도록 할 수 있다.
나아가, 제어부(330)는 편집 인터페이스(1600) 상에, 상기 노드 그룹 영역(2610)에 적용된 노드 규칙에 따른 노드 배치를 승인받기 위한 기능 아이콘(ex: “노드 적용하기”) 또는 노드 그룹 영역(2610)에 포함된 노드들의 노드 배치를 변경하기 위한 기능 아이콘(ex: “노드 편집하기”)를 제공할 수 있다.
제어부(330)는, 제1 속성의 검수 프로세스를 통해, 노드 규칙에 따른 노드들의 배치가 승인된 경우, 노드 규칙에 따른 노드들을 포함한 특정 맵(1700)에 근거하여 로봇(R)들이 주행하도록, 상기 노드 규칙에 따른 노드들을 포함한 특정 맵(1700)을 클라우드 서버(20)에 업데이트할 수 있다.
예를 들어, 제어부(330)는 노드 규칙에 따른 노드 배치를 승인받기 위한 기능 아이콘(ex: “노드 적용하기”)에 대한 사용자 선택에 근거하여, 노드 규칙에 따른 노드들을 포함한 특정 맵(1700)을 클라우드 서버(20)에 업데이트할 수 있다.
나아가, 제어부(330)는 노드 배치를 변경하기 위한 기능 아이콘(ex: “노드 편집하기”)에 대한 사용자 선택에 근거하여, 노드 배치를 변경할 수 있는 편집 인터페이스(1600)를 제공할 수 있다.
다음으로, 제2 속성의 노드 검수 프로세스는, 노드 규칙에 따라 노드들이 특정 맵(1700) 상에 배치되지 않은 경우 처리되는 검수 프로세스로, 앞서 설명한 제3 속성의 노드 배치 프로세스(또는 수동 노드 배치 프로세스)에 따라 노드가 배치된 경우에 수행될 수 있다.
제어부(330)는 도 27 에 도시된 것과 같이, 특정 맵(1700) 상에 배치된 노드들(2731, 2732, 2733)이, 특정 맵(1700)과 관련된 공간 특성(또는 정적 장애물)에 매칭된 노드 규칙에 대응하지 않는 경우, 노드 규칙에 따라 배치되지 않은 노드들이 포함된 적어도 하나의 노드 그룹 영역(2710)을 시각적으로 하이라이팅 처리할 수 있다.
나아가, 제어부(330)는, 상기 하이라이팅 처리와 연계하여, 편집 인터페이스(1600) 상에, 상기 노드 그룹 영역(2710)에 대한 기 특정된 검수 주체의 검수를 요청하는 검수 요청 정보(ex: “로봇 E/V 밀집 공간에 배치된 노드가 노드 작성 가이드와 다릅니다. 확인이 필요합니다.”, 2720)를 출력할 수 있다.
나아가, 제어부(330)는, 편집 인터페이스(1600) 상에, 상기 노드 그룹 영역(2710)과 관련된 노드 규칙에 대한 정보를 출력하여, 기 특정된 검수 주체가 노드 그룹 영역(2710)에 배치된 노드들(2731, 2732, 2733)이 노드 규칙과 어떻게 다른지를 바로 확인하도록 할 수 있다.
나아가, 제어부(330)는 편집 인터페이스(1600) 상에, 상기 노드 그룹 영역(2710)에, 상기 노드 그룹 영역(2710)과 관련된 노드 규칙에 따라 노드가 재 배치되도록 하는 아이콘(ex: “가이드 정보 적용하기”) 또는 노드 그룹 영역(2710)에 포함된 노드들의 노드 배치를 변경하기 위한 기능 아이콘(ex: “노드 편집하기”)를 제공할 수 있다.
제어부(330)는, 제2 속성의 검수 프로세스를 통해, 노드 규칙에 따라 노드가 재 배치되는 경우, 노드 규칙에 따른 노드들을 포함한 특정 맵(1700)에 근거하여 로봇(R)들이 주행하도록, 상기 노드 규칙에 따른 노드들을 포함한 특정 맵(1700)을 클라우드 서버(20)에 업데이트할 수 있다.
본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 것에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공할 수 있다. 이를 통해, 사용자는 복수의 층으로 이루어진 건물에 대해서, 각 층별 특정 맵을 생성 및 편집할 수 있다. 이에, 사용자는 복수의 층으로 이루어진 건물도 각 층의 특성을 반영하여 각 층별 맞춤형 맵을 생성 및 수정할 수 있다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 전자기기로부터 수신되는 편집 정보에 근거하여, 편집 인터페이스에 포함된 특정 맵 상에, 그래픽 객체를 할당할 수 있다. 이를 통해, 사용자는 편집 인터페이스에 그래픽 객체를 할당하는 것 만으로 맵을 작성 및 편집할 수 있기 때문에, 숙련되지 않은 사용자도 편리하고 간편하게 맵을 작성 및 편집할 수 있다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 특정 맵 상에 할당된 그래픽 객체의 속성에 따라, 로봇들이 상기 특정 층을 주행하도록, 그래픽 객체가 할당된 특정 맵을 클라우드 서버에 업데이트할 수 있다. 이를 통해, 로봇은, 로봇과 로봇, 로봇과 인간 그리고 로봇과 건물에 배치된 다양한 설비 인프라의 상호 작용이 반영된 맵에 근거하여, 복잡한 환경에 대한 처리 없이 전역 계획을 따라 효율적으로 주행할 수 있다.
한편, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 것에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공할 수 있다. 이를 통해, 사용자는 복수의 층으로 이루어진 건물에 대해서, 각 층별 특정 맵을 생성 및 편집할 수 있다. 이에, 사용자는 복수의 층으로 이루어진 건물도 각 층의 특성을 정확하게 반영하여 각 층별 맞춤형 맵을 생성 및 수정할 수 있다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하고, 특정된 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행할 수 있다. 이를 통해, 본발명에서는 특정 층의 공간 특성을 정확하고 신속하게 반영하여 로봇의 안전 주행을 위한 맵을 생성할 수 있다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여 특정 맵 상에 노드를 할당할 수 있는 사용자 인터페이스를 제공함으로써, 숙련되지 않은 사용자도 특정 층의 공간 특성을 정확하고 신속하게 반영하여 맵을 생성할 수 있다
나아가, 본 발명에 따른 로봇 친화형 건물은 로봇, 자율주행, AI, 클라우드 기술이 융합되고, 연결되는 테크 컨버전스(Technological Convergence)를 이용하며, 이러한 기술과, 로봇 그리고 건물내 구비되는 설비 인프라가 유기적으로 결합되는 새로운 공간을 제공할 수 있다.
나아가, 본 발명에 따른 로봇 친화형 건물은 다수의 로봇과 연동하는 클라우드 서버를 이용하여, 다수의 로봇 및 설비 인프라를 유기적으로 제어함으로써, 보다 체계적으로 서비스를 제공하는 로봇의 주행을 체계적으로 관리할 수 있다. 이를 통해, 본 발명에 따른 로봇 친화형 건물은, 보다 안전하고, 신속하게, 그리고 정확하게 사람들에게 다양한 서비스를 제공할 수 있다.
나아가, 본 발명에 따른 건물에 적용된 로봇은 클라우드 서버에 의해 제어되는 브레인리스(brainless) 형식으로 구현될 수 있으며, 이에 의하면, 건물에 배치되는 다수의 로봇을 값비싼 센서 없이 저렴하게 제조할 수 있을 뿐만 아니라, 고성능/고정밀로 제어할 수 있다.
나아가, 본 발명에 따른 건물에서는 건물에 배치된 다수의 로봇에 할당된 임무와 이동 상황을 고려함은 물론, 사람을 배려하도록 주행이 제어됨으로써, 같은 공간 속에서 자연스럽게 로봇과 사람이 공존할 수 있다.
나아가, 본 발명에 따른 건물에서는 로봇에 의한 사고 방지 및 예기치 못한 상황에 대응할 수 있도록 다양한 제어를 수행함으로써, 사람들에게 로봇이 위험한 것이 아닌, 친근하고 안전하다는 인식을 심어줄 수 있다.
한편, 위에서 살펴본 본 발명은, 컴퓨터에서 하나 이상의 프로세스에 의하여 실행되며, 이러한 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램으로서 구현될 수 있다.
나아가, 위에서 살펴본 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드 또는 명령어로서 구현하는 것이 가능하다. 즉, 본 발명에 따른 다양한 제어방법은 통합하여 또는 개별적으로 프로그램의 형태로 제공될 수 있다.
한편, 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다.
나아가, 컴퓨터가 읽을 수 있는 매체는, 저장소를 포함하며 전자기기가 통신을 통하여 접근할 수 있는 서버 또는 클라우드 저장소일 수 있다. 이 경우, 컴퓨터는 유선 또는 무선 통신을 통하여, 서버 또는 클라우드 저장소로부터 본 발명에 따른 프로그램을 다운로드 받을 수 있다.
나아가, 본 발명에서는 위에서 설명한 컴퓨터는 프로세서, 즉 CPU(Central Processing Unit, 중앙처리장치)가 탑재된 전자기기로서, 그 종류에 대하여 특별한 한정을 두지 않는다.
한편, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
Claims (17)
- 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계;상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계;상기 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 상기 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하는 단계; 및상기 특정 맵 상에 상기 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행하는 단계를 포함하는 것을 특징으로 하는 맵 생성 방법.
- 제1항에 있어서,상기 특정 맵을 생성하는 단계를 더 포함하고,상기 특정 맵을 생성하는 단계는,상기 건물을 주행하는 로봇들로부터, 상기 건물의 동적 장애물 및 정적 장애물 중 적어도 하나에 대한 센싱 정보를 수신하는 단계;상기 센싱 정보 중 상기 특정 층과 관련된 센싱 정보를 이용하여, 상기 특정 층에 포함된 장애물에 대한 제1 특성의 포인트 클라우드(point cloud) 맵을 생성하는 단계; 및상기 제1 특성의 포인트 클라우드 맵을 이용하여, 상기 특정 층에 포함된 장애물에 대한 제2 특성의 포인트 클라우드 맵을 생성하는 단계를 포함하는 것을 특징으로 하는 맵 생성 방법.
- 제2항에 있어서,상기 제1 특성의 포인트 클라우드 맵은, 상기 특정 층에 포함된 장애물에 대한 3차원 정보를 포함하도록 구성되고,상기 제2 특성의 포인트 클라우드 맵은, 상기 3차원의 정보에 기반하여, 상기 특정 층에 포함된 장애물에 대한 2차원 정보를 포함하며,상기 제2 특성의 포인트 클라우드 맵은,상기 특정 층을 주행하는 로봇들의 주행 평면을 기준으로, 상기 제1 특성의 포인트 클라우드 맵으로부터 평면화된 것을 특징으로 하는 맵 생성 방법.
- 제3항에 있어서,상기 특정 맵을 생성하는 단계는,상기 특정 층의 상기 공간 특성이 반영된 도면과 상기 제2 특성의 포인트 클라우드 맵을 이용하여, 상기 특정 층에 포함된 정적 장애물이 반영된 상기 특정 맵을 생성하는 단계를 더 포함하고,상기 특정 맵에는,상기 특정 층에 포함된 정적 장애물 각각에 대응되는 그래픽 객체를 포함하는 것을 특징으로 하는 맵 생성 방법.
- 제4항에 있어서,상기 특정 맵을 생성하는 단계는,상기 특정 층의 상기 공간 특성이 반영된 도면에 근거하여, 상기 특정 층에 포함된 정적 장애물의 종류를 특정하는 단계; 및상기 그래픽 객체 마다, 상기 그래픽 객체에 각각 대응되는 정적 장애물의 종류에 대한 종류 정보를 맵핑(mapping)하는 단계를 더 포함하는 것을 특징으로 하는 맵 생성 방법.
- 제5항에 있어서,상기 특정 층에 포함된 정적 장애물은,상기 특정 층을 구성하는 벽(wall), 문(door) 및 설비 중 적어도 하나를 포함하고,상기 특정 층을 주행하는 로봇 및 사람 중 적어도 하나가 이용 가능하도록 구성된 엘리베이터, 에스컬레이터, 출입통제 게이트, 로봇 전용 도로 및 로봇 공용 도로 중 적어도 하나를 포함하는 것을 특징으로 하는 맵 생성 방법.
- 제5항에 있어서,서버의 데이터베이스에는,정적 장애물의 종류 및 정적 장애물의 종류마다 각각 정의되는 노드 규칙이 서로 맵핑된 노드 규칙 정보가 저장되고,상기 노드 그룹을 특정하는 단계에서는,상기 데이터베이스로부터 상기 그래픽 객체에 대응되는 정적 장애물의 종류에 맵핑된 노드 규칙을 추출하고,추출된 노드 규칙에 따라 적어도 하나의 노드가 배열된 상기 노드 그룹 특정하는 것을 특징으로 하는 맵 생성 방법.
- 제7항에 있어서,상기 노드 그룹은,상기 그래픽 객체의 종류에 따라, 노드의 개수, 노드의 배열 형태 및 로봇의 이동 방향을 정의하는 노드 간 연결 방향 중 적어도 하나가 다른 것을 특징으로 하는 맵 생성 방법.
- 제8항에 있어서,상기 특정 맵 상에, 제1 종류의 정적 장애물에 해당하는 제1 그래픽 객체 및 제2 종류의 정적 장애물에 해당하는 제2 그래픽 객체가 포함된 경우,상기 노드 배치 프로세스를 수행하는 단계에서는,상기 특정 맵 중 상기 제1 그래픽 객체가 포함된 제1 영역에 상기 제1 종류의 정적 장애물에 대응되는 노드 규칙에 따른 제1 노드 그룹의 노드들이 배치되고,상기 특정 맵 중 상기 제2 그래픽 객체가 포함된 제2 영역에 상기 제2 종류의 정적 장애물에 대응되는 노드 규칙에 따른 제2 노드 그룹의 노드들이 배치되는 것을 특징으로 하는 맵 생성 방법.
- 제7항에 있어서,상기 특정 맵에 포함된 상기 그래픽 객체의 종류에 대응되는 상기 노드 규칙에 따라 노드들의 배치가 완료되는 것에 근거하여, 상기 노드 규칙에 따른 노드들을 상기 특정 맵 상에 배치할지 여부에 대한 검수를 수행하는 검수 프로세스를 더 포함하고,상기 검수 프로세스를 통해, 상기 노드 규칙에 따른 노드들의 배치가 승인된 경우, 상기 노드 규칙에 따른 노드들을 포함한 상기 특정 맵이 상기 서버에 업데이트되는 것을 특징으로 하는 맵 생성 방법.
- 제10항에 있어서,상기 검수 프로세스를 수행하는 단계에서는,기 특정된 검수 주체가, 상기 노드 규칙에 따라 노드들이 배치된 영역에 대한 식별 및 검수가 가능하도록, 상기 노드 규칙에 따라 배치된 노드들이 포함된 적어도 하나의 노드 그룹 영역이 시각적으로 하이라이팅 처리되는 것을 특징으로 하는 맵 생성 방법.
- 제8항에 있어서,상기 노드 배치 프로세스를 수행하는 단계는,상기 그래픽 객체가 위치한 영역에, 상기 특정된 노드 그룹에 따른 적어도 하나의 노드가 배치가능 함을 알리는 가이드 정보를 제공하는 단계를 더 포함하는 것을 특징으로 하는 맵 생성 방법.
- 제12항에 있어서,상기 가이드 정보는,상기 특정된 노드 그룹을 구성하는 적어도 하나의 노드의 배열을 나타내는 배열 정보 및 상기 특정된 노드 그룹을 구성하는 노드들의 배치를 승인받기 위한 아이콘을 포함하고,상기 전자기기를 통해 상기 아이콘이 선택되는 경우,상기 그래픽 객체가 위치한 영역에 상기 특정된 노드 그룹을 구성하는 적어도 하나의 노드가 배치되는 것을 특징으로 하는 맵 생성 방법.
- 제13항에 있어서,상기 가이드 정보는,상기 전자기기로부터 상기 특정 맵 중 상기 그래픽 객체가 위치한 영역이 선택되는 것에 근거하여, 출력되는 것을 특징으로 하는 맵 생성 방법.
- 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 통신부; 및상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 제어부를 포함하고,상기 제어부는,상기 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 상기 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하고,상기 특정 맵 상에 상기 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행하는 것을 특징으로 하는 맵 생성 시스템.
- 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램으로서,상기 프로그램은,건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계;상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계;상기 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 상기 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하는 단계; 및상기 특정 맵 상에 상기 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행하는 단계를 수행하도록 하는 명령어들을 포함하는 것을 특징으로 하는 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램.
- 복수의 로봇들이 서비스를 제공하는 건물에 있어서,상기 건물은,상기 로봇들이 사람과 공존하는 실내 공간을 가지는 복수의 층들(floors); 및상기 로봇들과 클라우드 서버의 사이에서 통신을 수행하는 통신부를 포함하고,상기 클라우드 서버는,편집 인터페이스를 통해 생성된 건물 맵(map)에 근거하여, 상기 건물을 주행하는 상기 로봇들에 대한 제어를 수행하고,상기 건물 맵은,건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계;상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계;상기 특정 층의 공간 특성에 대응되는 노드 규칙에 근거하여, 상기 특정 맵 상에 할당 가능한 적어도 하나의 노드 그룹을 특정하는 단계; 및상기 특정 맵 상에 상기 노드 그룹에 포함된 노드들이 배치되도록, 노드 배치 프로세스를 수행하는 단계를 통해 생성되고,상기 클라우드 서버에는,상기 특정 맵 상에 배치된 노드들에 따라 상기 로봇들이 상기 특정 층을 주행하도록, 상기 노드들이 배치된 상기 특정 맵이 업데이트 되는 것을 특징으로 하는 건물.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2024574551A JP2025521313A (ja) | 2022-06-20 | 2023-06-20 | ロボットフレンドリーな建物、ロボットの運用のためのマップ生成方法及びシステム |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020220074779A KR102803511B1 (ko) | 2022-06-20 | 2022-06-20 | 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템 |
| KR10-2022-0074779 | 2022-06-20 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2023249385A1 true WO2023249385A1 (ko) | 2023-12-28 |
Family
ID=89378303
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/KR2023/008554 Ceased WO2023249385A1 (ko) | 2022-06-20 | 2023-06-20 | 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20250110503A1 (ko) |
| JP (1) | JP2025521313A (ko) |
| KR (2) | KR102803511B1 (ko) |
| WO (1) | WO2023249385A1 (ko) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102790359B1 (ko) * | 2024-04-03 | 2025-04-04 | 네이버 주식회사 | 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템 |
| KR102713710B1 (ko) * | 2024-05-22 | 2024-10-10 | 주식회사 핑크랩 | 로봇 관제를 위한 위치 추정 시스템 및 방법, 이와 통신하는 주행로봇 |
| JP2026052788A (ja) * | 2024-09-12 | 2026-03-25 | 横河電機株式会社 | 情報処理装置、情報処理方法および情報処理プログラム |
| KR102937878B1 (ko) * | 2024-09-27 | 2026-03-11 | 네이버 주식회사 | 로봇과 여러 형태의 시설물간의 상호작용을 가능하게 하는 로봇 제어 방법 및 시스템 |
| CN121733587A (zh) * | 2026-02-28 | 2026-03-27 | 武汉大学 | 一种机器人导航方法、装置、设备及存储介质 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015210626A (ja) * | 2014-04-25 | 2015-11-24 | 株式会社日立ソリューションズ | 地図のネットワークデータ自動生成装置、ネットワークデータ自動生成方法及びネットワークデータ自動生成プログラム |
| KR20160003553A (ko) * | 2014-07-01 | 2016-01-11 | 삼성전자주식회사 | 지도 정보를 제공하기 위한 전자 장치 |
| US20190249998A1 (en) * | 2016-11-01 | 2019-08-15 | Brain Corporation | Systems and methods for robotic mapping |
| KR102129258B1 (ko) * | 2018-08-02 | 2020-07-02 | 주식회사 다비오 | 지도 제작 장치 및 방법 |
| KR102347240B1 (ko) * | 2020-07-08 | 2022-01-04 | 네이버랩스 주식회사 | 사회 규범에 기반하여 실내 환경에서 로봇의 인간 친화적인 탐색을 지원하는 로봇이 배치되는 건물 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9442911B2 (en) * | 2014-01-09 | 2016-09-13 | Ricoh Company, Ltd. | Adding annotations to a map |
| US20170031925A1 (en) * | 2015-07-27 | 2017-02-02 | Cisco Technology, Inc. | Mapping dynamic spaces and way finding related to the mapping |
| KR102131999B1 (ko) * | 2019-08-13 | 2020-07-08 | 네이버 주식회사 | 실내지도 작성 방법 및 그 장치 |
| JP7393255B2 (ja) * | 2020-03-05 | 2023-12-06 | 東芝テック株式会社 | 情報処理装置及び情報処理方法 |
| KR102776246B1 (ko) * | 2022-06-14 | 2025-03-07 | 네이버 주식회사 | 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템 |
-
2022
- 2022-06-20 KR KR1020220074779A patent/KR102803511B1/ko active Active
-
2023
- 2023-06-20 JP JP2024574551A patent/JP2025521313A/ja active Pending
- 2023-06-20 WO PCT/KR2023/008554 patent/WO2023249385A1/ko not_active Ceased
-
2024
- 2024-12-13 US US18/980,813 patent/US20250110503A1/en active Pending
-
2025
- 2025-03-28 KR KR1020250040518A patent/KR20250047708A/ko active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015210626A (ja) * | 2014-04-25 | 2015-11-24 | 株式会社日立ソリューションズ | 地図のネットワークデータ自動生成装置、ネットワークデータ自動生成方法及びネットワークデータ自動生成プログラム |
| KR20160003553A (ko) * | 2014-07-01 | 2016-01-11 | 삼성전자주식회사 | 지도 정보를 제공하기 위한 전자 장치 |
| US20190249998A1 (en) * | 2016-11-01 | 2019-08-15 | Brain Corporation | Systems and methods for robotic mapping |
| KR102129258B1 (ko) * | 2018-08-02 | 2020-07-02 | 주식회사 다비오 | 지도 제작 장치 및 방법 |
| KR102347240B1 (ko) * | 2020-07-08 | 2022-01-04 | 네이버랩스 주식회사 | 사회 규범에 기반하여 실내 환경에서 로봇의 인간 친화적인 탐색을 지원하는 로봇이 배치되는 건물 |
Also Published As
| Publication number | Publication date |
|---|---|
| KR102803511B1 (ko) | 2025-05-02 |
| KR20250047708A (ko) | 2025-04-04 |
| JP2025521313A (ja) | 2025-07-08 |
| US20250110503A1 (en) | 2025-04-03 |
| KR20230173939A (ko) | 2023-12-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2023249385A1 (ko) | 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템 | |
| WO2018155999A2 (en) | Moving robot and control method thereof | |
| WO2021006677A2 (en) | Mobile robot using artificial intelligence and controlling method thereof | |
| WO2018097558A1 (en) | Electronic device, server, and method for determining presence or absence of user within specific space | |
| WO2016048077A1 (ko) | 청소 로봇 및 청소 로봇의 제어 방법 | |
| WO2021132911A1 (ko) | 가상 공간 인테리어를 이용한 인터페이스 제공 방법 및 그 장치 | |
| WO2015119371A1 (ko) | Poi 그룹화를 이용한 poi 정보 제공 장치 및 방법 | |
| WO2014171620A1 (en) | Method and system for controlling external device | |
| WO2023120918A1 (ko) | 로봇 친화형 건물, 로봇의 충전 제어 방법 및 시스템 | |
| WO2022075614A1 (ko) | 이동 로봇 시스템 | |
| WO2016140393A1 (ko) | 이동 단말기 및 그의 동작 방법 | |
| WO2020027515A1 (ko) | 속성 블록을 설정하는 이동 로봇 | |
| WO2023080490A1 (ko) | 로봇 친화형 건물, 로봇 및 건물을 주행하는 멀티-로봇 제어 시스템 | |
| WO2020141635A1 (ko) | 로봇 시스템의 제어 방법 | |
| WO2023282594A1 (ko) | 가전 장치를 제어하는 방법 및 시스템 | |
| WO2023101228A1 (ko) | 로봇 친화형 건물, 복수의 로봇들을 이용한 협업 방법 및 시스템 | |
| WO2023243834A1 (ko) | 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템 | |
| WO2023068759A1 (ko) | 건물을 주행하는 로봇 제어 방법 및 시스템 | |
| WO2020251101A1 (ko) | 사용자의 동선을 결정하는 인공 지능 장치 및 그 방법 | |
| WO2023113216A1 (ko) | 로봇 친화형 건물, 로봇을 활용한 배송 방법 및 시스템 | |
| WO2022075615A1 (ko) | 이동 로봇 시스템 | |
| WO2022075616A1 (ko) | 이동 로봇 시스템 | |
| WO2022075610A1 (ko) | 이동 로봇 시스템 | |
| WO2019004773A1 (ko) | 이동 단말기 및 이를 포함하는 로봇 시스템 | |
| WO2026038780A1 (en) | Order picking system using autonomous mobile robots and robot control server of the system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23827497 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2024574551 Country of ref document: JP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 23827497 Country of ref document: EP Kind code of ref document: A1 |