WO2023243834A1 - 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템 - Google Patents

로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템 Download PDF

Info

Publication number
WO2023243834A1
WO2023243834A1 PCT/KR2023/004438 KR2023004438W WO2023243834A1 WO 2023243834 A1 WO2023243834 A1 WO 2023243834A1 KR 2023004438 W KR2023004438 W KR 2023004438W WO 2023243834 A1 WO2023243834 A1 WO 2023243834A1
Authority
WO
WIPO (PCT)
Prior art keywords
graphic object
specific
area
robot
map
Prior art date
Application number
PCT/KR2023/004438
Other languages
English (en)
French (fr)
Inventor
김가현
최학승
조요한
윤영환
유승현
채수원
Original Assignee
네이버랩스 주식회사
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 네이버랩스 주식회사 filed Critical 네이버랩스 주식회사
Publication of WO2023243834A1 publication Critical patent/WO2023243834A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras

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 robot's global and local movement paths must reflect the characteristics and situations of the area within the building. Writing is more important than anything else.
  • the map generation method and system for robot operation according to the present invention are intended to provide a user environment that can intuitively and conveniently create a map used for driving a robot that provides services within a building.
  • the map generation method and system for robot operation according to the present invention are intended to provide a user environment that can create a map used for robot driving based on each of the plurality of floors included in the building.
  • the map generation method and system for robot operation provides a user environment that can conveniently allocate areas of various types on the map so that the robot's operation can be controlled by area. It is for this purpose.
  • map generation method and system for robot operation are intended to provide a user environment in which a node map can be conveniently and freely created by reflecting the robot's driving path, robot operation, and facilities placed in the building. .
  • map generation method and system for robot operation according to the present invention are intended to provide a map that users can intuitively recognize.
  • the present invention is intended to provide a robot-friendly building where robots and people coexist and provide useful services to people.
  • the robot-friendly building according to the present invention can expand the type and scope of services that robots can provide by providing a variety of robot-friendly facility infrastructure that robots can use.
  • 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 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 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 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, displaying the specific floor on a display unit of an electronic device.
  • Providing an editing interface that includes at least a portion of a specific map corresponding to a specific map allocating at least one node on the specific map included in the editing interface based on editing information received from the electronic device.
  • the specific map to which the node is assigned is sent to a cloud server so that robots travel on the specific floor following the node allocated on the specific map, or the robots perform an operation defined in the node on the specific floor. It may include an updating step.
  • 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.
  • a control unit providing an editing interface including at least a portion of a specific map corresponding to the One graphic object can be assigned, and the specific map to which the graphic object is assigned can be updated to a cloud server so that robots can travel on the specific floor according to the properties of the graphic object allocated on the specific map.
  • the program according to the present invention is a program that is executed by one or more processes in an electronic device and stored in a computer-readable recording medium, and makes a request to edit a map for a specific floor among a plurality of floors of a building.
  • the graphic It may include commands for updating the specific map to which an object is assigned to a cloud server.
  • the building according to the present invention is a building in which a plurality of robots provide services, and has a plurality of floors with an indoor space where the robots coexist with people, and communication is performed between the robots and a cloud server. and a communication unit, wherein 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 includes a plurality of buildings.
  • Receiving a map editing request for a specific floor among the floors in response to the editing 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, and Based on editing information received from an electronic device, it is created through the step of allocating at least one graphic object on the specific map included in the editing interface, and the cloud server assigns the graphic object to the specific map.
  • the specific map to which the graphic object is assigned may be updated so that the robots travel on the specific floor.
  • 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 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.
  • 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 flowchart for explaining a method for generating a map for robot operation according to the present invention.
  • Figures 14 and 15 are conceptual diagrams for explaining the editing interface provided by the present invention.
  • Figure 16 is a conceptual diagram illustrating a method of generating a map using the point cloud technique in the present invention.
  • Figures 17a, 17b, and 18 are conceptual diagrams for explaining an area graphic object according to the present invention.
  • FIGS. 19A, 19B, 20, 21, and 22 are conceptual diagrams for explaining a node graphic object according to the present invention.
  • Figures 23a, 23b, 23c, 23d and 23e are conceptual diagrams for explaining zones according to the present invention.
  • Figures 25a and 25b are conceptual diagrams for explaining a method of filtering graphic objects on the editing interface of 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 edge server 22 is an electronic device and can operate as the brain of the robot R. That is, each edge server 22 can wirelessly control at least one robot R. At this time, the edge server 22 can control the robot R based on a determined control cycle. The control cycle can be determined as the sum of the time given to process data related to the robot R and the time given to provide control commands to the robot R.
  • the cloud server 21 can manage at least one of the robot R or the edge server 22. At this time, the edge server 22 may operate as a server in response to the robot R and may operate as a client in response to the cloud server 21.
  • the robot (R) and the edge server 22 can communicate wirelessly, and the edge server 22 and the cloud server 21 can communicate by wire or wirelessly.
  • the robot R and the edge server 22 can communicate through a wireless network capable of ultra-reliable and low latency communications (URLLC).
  • the wireless network may include at least one of a 5G network or WiFi-6 (WiFi ad/ay).
  • the 5G network can have features that not only enable ultra-reliable, low-latency communications, but also enable ultra-broadband mobile communications (enhanced mobile broadband (eMBB)) and massive machine type communications (mMTC).
  • the edge server 22 includes a mobile edge computing (MEC) server and may be deployed in a base station.
  • MEC mobile edge computing
  • the latency time due to communication between the robot R and the edge server 22 can be shortened.
  • the time given to provide a control command to the robot R is shortened, the time given to process data may be expanded.
  • the edge server 22 and the cloud server 21 may communicate, for example, through a wireless network such as the Internet.
  • a plurality of edge servers may be connected through a wireless mesh network, and the functions of the cloud server 21 may be distributed to a plurality of edge servers.
  • one of the edge servers operates as an edge server 22 for the robot R, and at least another one of the edge servers cooperates with one of the edge servers. , It can operate as a cloud server 21 for the robot R.
  • the network or communication network formed in the building 1000 according to the present invention includes at least one robot R configured to collect data, at least one edge server 22 configured to wirelessly control the robot R, and It is connected to the edge server 22 and may include communication between the robot R and the cloud server 21 configured to manage the edge server 22.
  • the edge server 22 may be configured to wirelessly receive the data from the robot R, determine a control command based on the data, and wirelessly transmit the control command to the robot R.
  • the edge server 22 determines whether to cooperate with the cloud server 21 based on the data, and if it is determined that there is no need to cooperate with the cloud server 21, performs a predetermined control. Within a period, it may be configured to determine the control command and transmit the control command.
  • the edge server 22 may be configured to communicate with the cloud server 21 based on the data and determine the control command. there is.
  • 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.
  • the building 1000 according to the present invention may be equipped with various facility infrastructures that robots can use, and as shown in FIGS. 2, 3, and 4, the facility infrastructure is placed within the building 1000.
  • the cloud server 20 By linking with the building 1000 and the cloud server 20, it is possible to support the movement (or driving) of the robot or provide various functions to the robot.
  • facility infrastructure may include facilities to support the movement of robots within a building.
  • Facilities that support the movement of the robot may be of either type: robot-specific facilities used exclusively by the robot and public facilities jointly used by humans.
  • facilities that support the movement of the robot may support the movement of the robot in the horizontal direction or may support the movement of the robot in the vertical direction.
  • Robots can move horizontally or vertically using facilities within the building 1000. Movement in the horizontal direction may mean movement within the same floor, and movement in the vertical direction may mean movement between different floors. Therefore, in the present invention, moving up and down within the same floor can be referred to as horizontal movement.
  • FIGS. 2 and 3 Facilities that support the movement of the robot may vary.
  • the building 1000 is equipped with a robot passageway (robot road, 201) that supports the movement of the robot in the horizontal direction. , 202, 203) may be provided.
  • These robot passages may include a robot-only passage exclusively used by the robot. Meanwhile, it is possible to create a robot-only passageway so that human access is fundamentally blocked, but it may not necessarily be limited to this. In other words, the robot-only passage may be structured so that people can pass through or access it.
  • the robot-only passage may be comprised of at least one of a first dedicated passage (or first type passage, 201) and a second dedicated passage (or second type passage, 202).
  • the first dedicated passage and the second dedicated passage 201 and 202 may be provided together on the same floor or may be provided on different floors.
  • the building 1000 may be equipped with movement means 204 and 205 that support the robot's movement in the vertical direction.
  • These transportation means 204 and 205 may include at least one of an elevator or an escalator.
  • the robot can move between different floors using the elevator 204 or escalator 205 provided in the building 1000.
  • the elevator 204 or escalator 205 may be used exclusively for robots or may be used jointly with people.
  • the building 1000 may include at least one of a robot-only elevator or a public elevator.
  • the building 1000 may include at least one of a robot-only escalator or a public escalator.
  • the building 1000 may be equipped with a type of movement means that can be used for both vertical and horizontal movement.
  • a means of movement in the form of a moving walkway may support robots in horizontal movement within a floor or vertical movement between floors.
  • the robot can move within the building 1000 in the horizontal or vertical direction under its own control or under the control of the cloud server 20. At this time, the robot can move within the building 1000 using various facilities that support the movement of the robot. I can move around.
  • the building 1000 may include at least one of an access door 206 (or automatic door) and an access control gate 207 that control access to the building 1000 or a specific area within the building 1000. At least one of the access door 206 and the access control gate 207 may be made available to the robot. The robot can be made to pass through an access door (or automatic door, 206) or an access control gate 207 under the control of the cloud server 20.
  • the access control gate 207 may be named in various ways, such as a speed gate.
  • the building 1000 may further include a waiting space facility 208 corresponding to a waiting space where the robot waits, a charging facility 209 for charging the robot, and a washing facility 210 for cleaning the robot. .
  • the building 1000 may include facilities 211 specialized for specific services provided by robots, for example, facilities for delivery services.
  • the building 1000 may include equipment for monitoring robots (see reference numeral 212), and examples of such equipment may include various sensors (eg, cameras (or image sensors) 121).
  • various sensors eg, cameras (or image sensors) 121).
  • the building 1000 according to the present invention may be equipped with various facilities for service provision, robot movement, driving, function maintenance, cleanliness, etc.
  • the building 1000 according to the present invention is interconnected with the cloud server 20, the robot (R), and the facility infrastructure 200, so that the robots within the building 1000 provide various services. Not only can it be provided, but facilities can be used appropriately for this purpose.
  • interconnected means that various data and control commands related to services provided within the building, robot movement, driving, function maintenance, cleanliness, etc. are transmitted from at least one subject to another through a network (or communication network). It may mean unidirectional or bidirectional transmission and reception with at least one subject.
  • the subject may be a building 1000, a cloud server 20, a robot (R), facility infrastructure 200, etc.
  • the facility infrastructure 200 includes at least one of the various facilities (see reference numerals 201 to 213) shown in FIGS. 2 and 3 and control systems (201a, 202a, 203a, 204a, ...) that control them. can do.
  • the robot R running in the building 1000 is configured to communicate with the cloud server 20 through the network 40 and can provide services within the building 1000 under the control of the cloud server 20. .
  • the building 1000 may include a building system 1000a for communicating with or directly controlling various facilities provided in the building 1000.
  • the building system 1000a may include a communication unit 110, a sensing unit 120, an output unit 130, a storage unit 140, and a control unit 150.
  • the communication unit 110 forms at least one of a wired communication network and a wireless communication network within the building 1000, i) between the cloud server 20 and the robot (R), ii) between the cloud server 20 and the building 1000. , iii) between the cloud server 20 and the facility infrastructure 200, iv) between the facility infrastructure 200 and the robot (R), and v) between the facility infrastructure 200 and the building 1000.
  • the communication unit 110 can serve as a communication medium between different entities.
  • This communication unit 110 may also be called a base station, a router, etc., and the communication unit 110 allows the robot (R), the cloud server 20, and the facility infrastructure 200 to communicate with each other within the building 1000.
  • a communication network or network can be formed so that
  • being connected to the building 1000 through a communication network may mean connected to at least one of the components included in the building system 1000a.
  • a plurality of robots R disposed in the building 1000 communicate with the cloud server 20 through at least one of a wired communication network and a wireless communication network formed through the communication unit 110. By performing this, it can be remotely controlled by the cloud server 20.
  • a communication network such as a wired communication network or a wireless communication network may be understood as a network 40.
  • the building 1000, the cloud server 20, the robot R, and the facility infrastructure 200 can form a network 40 based on the communication network formed within the building 1000.
  • the robot R can provide services corresponding to the assigned mission using various facilities provided in the building 1000 under the control of the cloud server 20.
  • the facility infrastructure 200 includes at least one of the various facilities (see reference numerals 201 to 213) shown in FIGS. 2 and 3 and control systems (201a, 202a, 203a, 204a, ...) that control them. (Such control systems may also be named “control servers”).
  • a control system for independently controlling the robot passages (201, 202, 203) , 203a) exists, and in the case of an elevator (or a robot-only elevator, 204), a control system 204 for controlling the elevator 204 may exist.
  • These unique control systems for controlling facilities communicate with at least one of the cloud server 20, the robot R, and the building 1000, and appropriately control each facility so that the robot R uses the facility. can be performed.
  • each facility control system (201a, 202a, 203a, 204a, ...) are provided in the facility itself to sense various information related to the facility. It can be done.
  • control units (201c, 202c, 203c, 204c, ...) included in each facility control system (201a, 202a, 203a, 204a, ...) perform control for operating each facility, and the cloud server (20) )
  • the control system 204b of the elevator 204 Through communication with the cloud server 20, sends the elevator 204 to the floor where the robot R is located so that the robot R gets on the elevator 204.
  • the elevator 204 can stop.
  • control units included in each facility control system (201a, 202a, 203a, 204a, ...) are connected to each facility (201, 202, 203, 204, ). Together, they may be located within the building 1000 or may be located outside the building 1000.
  • the facilities included in the building 1000 according to the present invention are controlled by the cloud server 20 or by the control unit 150 of the building 1000.
  • the facility may not be equipped with a separate facility control system.
  • each facility has its own control system as an example.
  • the role of the control system for controlling the facility is that of the cloud server 20 or the building 1000.
  • the control unit 150 can be replaced by the control unit 150.
  • the terminology of the control unit (201c, 202c, 203c, 204c, ...) of the facility control system described in this specification is replaced with the terminology of the cloud server 20 or the control unit 150, or the building control unit 150.
  • it can be expressed as
  • each facility control system (201a, 202a, 203a, 204a, ...) in FIG. 4 are examples, and various components may be added or excluded depending on the characteristics of each facility.
  • the robot R, the cloud server 20, and the facility control systems 201a, 202a, 203a, 204a, ... provide various services within the building 1000 using the facility infrastructure.
  • the robot (R) mainly travels within the building to provide various services.
  • the robot R may be provided with at least one of a body part, a driving part, a sensing part, a communication part, an interface part, and a power supply part.
  • the body part includes a case (casing, housing, cover, etc.) that forms the exterior.
  • the case can be divided into a plurality of parts, and various electronic components are built into the space formed by the case.
  • the body part may have different forms depending on the various services exemplified in the present invention.
  • a storage box for storing items may be provided on the upper part of the body.
  • a suction port that suctions dust using a vacuum may be provided at the bottom of the body.
  • the driving unit is configured to perform a specific operation according to a control command transmitted from the cloud server 20.
  • the driving unit provides a means for the body part of the robot to move within a specific space in relation to driving. More specifically, the driving unit includes a motor and a plurality of wheels, which are combined to perform the functions of driving, changing direction, and rotating the robot R. As another example, the driving unit may be provided with at least one of an end effector, a manipulator, and an actuator to perform operations other than driving, such as picking up.
  • the sensing unit may include one or more sensors for sensing at least one of information within the robot (in particular, the driving state of the robot), information on the surrounding environment surrounding the robot, location information of the robot, and user information.
  • the sensing unit may include a camera (image sensor), proximity sensor, infrared sensor, laser scanner (LIDAR sensor), RGBD sensor, geomagnetic sensor, ultrasonic sensor, inertial sensor, UWB sensor, etc.
  • the communication unit of the robot transmits and receives wireless signals from the robot to perform wireless communication between the robot (R) and the communication unit of the building, between the robot (R) and other robots, or between the robot (R) and the facility control system. It is done so that As an example of this, the communication unit may be equipped with a wireless Internet module, a short-range communication module, a location information module, etc.
  • the interface unit may be provided as a passage through which the robot R can be connected to an external device.
  • the interface unit may be a terminal (charging terminal, connection terminal, power terminal), port, or connector.
  • the power supply unit may be a device that receives external power and internal power and supplies power to each component included in the robot (R).
  • the power supply unit may be a device that generates electrical energy inside the robot (R) and supplies it to each component.
  • the robot R was mainly explained based on traveling within a building, but the present invention is not necessarily limited thereto.
  • the robot of the present invention can be in the form of a robot that flies inside a building, such as a drone. More specifically, a robot providing guidance services can provide guidance about a building to a person while flying around the person within the building.
  • the robot is a subordinate controller of the cloud server 20 and may be provided with a separate control unit.
  • the robot's control unit receives driving control commands from the cloud server 20 and controls the robot's driving unit.
  • the control unit can calculate the torque or current to be applied to the motor using data sensed by the robot's sensing unit. Using the calculated results, the motor, etc. is driven by a position controller, speed controller, current controller, etc., and through this, the robot executes the control command of the cloud server 20.
  • the building 1000 may include a building system 1000a for communicating with or directly controlling various facilities provided in the building 1000.
  • the building system 1000a may include at least one of a communication unit 110, a sensing unit 120, an output unit 130, a storage unit 140, and a control unit 150. You can.
  • the communication unit 110 forms at least one of a wired communication network and a wireless communication network within the building 1000, i) between the cloud server 20 and the robot (R), ii) between the cloud server 20 and the building 1000. , iii) between the cloud server 20 and the facility infrastructure 200, iv) between the facility infrastructure 200 and the robot (R), and v) between the facility infrastructure 200 and the building 1000.
  • the communication unit 110 can serve as a communication medium between different entities.
  • the communication unit 110 is configured to include at least one of a mobile communication module 111, a wired Internet module 112, a wireless Internet module 113, and a short-range communication module 114. You can.
  • the communication unit 110 can support various communication methods based on the communication modules listed above.
  • the mobile communication module 111 supports technical standards or communication methods for mobile communications (e.g., 5G, 4G, Global System for Mobile communication (GSM), and Code Division Multi Access (CDMA). ), CDMA2000 (Code Division Multi Access 2000), EV-DO (Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA (Wideband CDMA), HSDPA (High Speed Downlink Packet Access), HSUPA (High Speed Uplink Packet Access) ), LTE (Long Term Evolution), LTE-A (Long Term Evolution-Advanced), etc.) on a mobile communication network built according to the building system (1000a), cloud server (20), robot (R), and facility infrastructure (200) It may be configured to transmit and receive a wireless signal with at least one of the. At this time, as a more specific example, the robot R may transmit and receive wireless signals with the mobile communication module 111 using the communication unit of the robot R described above.
  • GSM Global System for Mobile communication
  • CDMA Code Division Multi Access
  • CDMA2000 Code Division Multi
  • the wired Internet module 112 is a method of providing communication in a wired manner, so as to transmit and receive signals with at least one of the cloud server 20, the robot (R), and the facility infrastructure 200 using a physical communication line as a medium. It can be done.
  • the wireless Internet module 113 is a concept that includes the mobile communication module 111 and may mean a module capable of wireless Internet access.
  • the wireless Internet module 113 is disposed in the building 1000 and wirelessly communicates with at least one of the building system 1000a, the cloud server 20, the robot R, and the facility infrastructure 200 in a communication network based on wireless Internet technologies. It is made to transmit and receive signals.
  • Wireless Internet technologies can be very diverse, and include not only the communication technology of the mobile communication module 111 discussed above, but also WLAN (Wireless LAN), Wi-Fi, Wi-Fi Direct, DLNA (Digital Living Network Alliance), and WiBro (Wireless Broadband), WiMAX (World Interoperability for Microwave Access), etc.
  • the wireless Internet module 113 transmits and receives data according to at least one wireless Internet technology, including Internet technologies not listed above.
  • the short-range communication module 114 is for short-range communication, including BluetoothTM, Radio Frequency Identification (RFID), Infrared Data Association (IrDA), Ultra Wideband (UWB), and ZigBee.
  • RFID Radio Frequency Identification
  • IrDA Infrared Data Association
  • UWB Ultra Wideband
  • ZigBee ZigBee
  • NFC Near Field Communication
  • Wi-Fi Wireless Fidelity
  • Wi-Fi Direct Wireless USB
  • Wireless USB Wireless Universal Serial Bus
  • the communication unit 110 may include at least one of the communication modules discussed above, and these communication modules may be placed in various spaces inside the building 1000 to form a communication network.
  • i) cloud server (20) and robot (R) ii) cloud server (20) and building (1000), iii) cloud server (20) and facility infrastructure (200, iv) facility infrastructure (200) ) and the robot (R), v) the facility infrastructure 200 and the building 1000 may be configured to communicate with each other.
  • the building 1000 may include a sensing unit 120, and the sensing unit 120 may include various sensors. At least some of the information sensed through the sensing unit 120 of the building 1000 is transmitted to at least the cloud server 20, the robot (R), and the facility infrastructure 200 through a communication network formed through the communication unit 110. It can be sent as one. At least one of the cloud server 20, the robot (R), and the facility infrastructure 200 uses information sensed through the sensing unit 120 to control the robot (R) or the facility infrastructure 200. You can.
  • the types of sensors included in the sensing unit 120 may be very diverse.
  • the sensing unit 120 may be provided in the building 1000 to sense various information about the building 1000.
  • Information sensed by the sensing unit 120 may be information about the robot (R) running in the building 1000, people located in the building 1000, obstacles, etc., and various environmental information related to the building (e.g. For example, temperature, humidity, etc.).
  • the sensing unit 120 includes an image sensor 121, a microphone 122, a bio sensor 123, a proximity sensor 124, an illumination sensor 125, an infrared sensor 126, and a temperature sensor. It may include at least one of the sensor 127 and the humidity sensor 128.
  • the image sensor 121 may correspond to a camera. As seen in FIG. 3, a camera corresponding to the image sensor 121 may be placed in the building 1000. In this specification, the same reference numeral “121” as the image sensor 121 is assigned to the camera.
  • the number of cameras 121 placed in the building 1000 is not limited. There may be various types of cameras 121 placed in the building 1000. As an example, the camera 121 placed in the building 1000 may be a closed circuit television (CCTV). Meanwhile, saying that the camera 121 is placed in the building 1000 may mean that the camera 121 is placed in the indoor space 10 of the building 1000.
  • CCTV closed circuit television
  • the microphone 122 can be configured to sense various sound information generated in the building 1000.
  • the biosensor 123 is for sensing biometric information and can sense biometric information (eg, fingerprint information, face information, iris information, etc.) about people or animals located in the building 1000.
  • biometric information eg, fingerprint information, face information, iris information, etc.
  • the proximity sensor 124 may be configured to sense an object (such as a robot or person) that approaches the proximity sensor 124 or is located around the proximity sensor 124 .
  • the illuminance sensor 125 is configured to sense the illuminance around the illuminance sensor 125, and the infrared sensor 126 has a built-in LED and can use this to take pictures of the building 1000 in a dark room or at night. You can.
  • the temperature sensor 127 may sense the temperature around the temperature sensor 127
  • the humidity sensor 128 may sense the temperature around the humidity sensor 128.
  • the type of sensor constituting the sensing unit 120 there is no particular limitation on the type of sensor constituting the sensing unit 120, and it is sufficient as long as the function defined by each sensor is implemented.
  • the output unit 130 is a means for outputting at least one of visual, auditory and tactile information to a person or robot (R) in the building 1000, and includes a display unit 131 and an audio output unit ( 132) and may include at least one of the lighting unit 133.
  • This output unit 130 may be placed at an appropriate location in the indoor space of the building 1000 depending on need or circumstances.
  • the storage unit 140 may be configured to store various information related to at least one of the building 1000, robots, and facility infrastructure.
  • the storage unit 140 may be provided in the building 1000 itself.
  • at least a portion of the storage unit 140 may refer to at least one of the cloud server 20 or an external database.
  • the storage unit 140 is sufficient as a space for storing various information according to the present invention, and it can be understood that there are no restrictions on physical space.
  • the control unit 150 is a means of performing overall control of the building 1000 and can control at least one of the communication unit 110, the sensing unit 120, the output unit 130, and the storage unit 140. there is.
  • the control unit 150 can control the robot in conjunction with the cloud server 20.
  • the control unit 150 may exist in the form of a cloud server 20.
  • the building 1000 can be controlled together by the cloud server 20, which is a control means of the robot R.
  • the cloud server controlling the building 1000 is the cloud server 20 controlling the robot R. It may exist separately from the server 20.
  • the cloud server controlling the building 1000 and the cloud server 20 controlling the robot R communicate with each other to provide services by the robot R, or maintain the movement and function of the robot. , can be linked with each other to maintain cleanliness, etc.
  • the control unit of the building 1000 may also be named a “processor,” and the processor may be configured to process various commands by performing basic arithmetic, logic, and input/output operations.
  • At least one of the building 1000, the robot (R), the cloud server 20, and the facility infrastructure 200 forms a network 40 based on a communication network, within the building 1000.
  • Various services can be provided using robots.
  • the robot (R), the facility infrastructure 200 provided in the building, and the cloud server 20 can be organically connected so that various services are provided by the robot. there is. At least some of these robots (R), facility infrastructure 200, and cloud servers 20 may exist in the form of a platform for building a robot-friendly building.
  • the process by which the robot (R) uses the facility infrastructure 200 is described in more detail. Let’s take a look. At this time, the robot (R) travels in the indoor space 10 of the building 1000 or uses the facility infrastructure 200 for the purposes of performing missions (or providing services), driving, charging, maintaining cleanliness, and waiting. You can move and further use the facility infrastructure 200.
  • the robot (R) travels in the indoor space of the building 1000 or moves using the facility infrastructure 200 to achieve the “purpose,” and further, the facility infrastructure (200) can be used.
  • the purpose to be achieved by the robot can be specified based on various causes.
  • the purpose to be achieved by the robot may include a first type of purpose and a second type of purpose.
  • the first type of purpose may be for the robot to perform its original mission
  • the second type of purpose may be for the robot to perform a mission or function other than the robot's original mission
  • the purpose to be achieved by the robot according to the first type may be the purpose of performing the robot's original mission. This purpose can also be understood as the robot’s “task.”
  • the robot drives around the indoor space of the building 1000 or moves using the facility infrastructure 200 to achieve the purpose or mission of providing serving services.
  • the facility infrastructure 200 can be used.
  • the robot is a robot that provides a route guidance service
  • the robot drives around the indoor space of the building (1000) or moves using the facility infrastructure (200) in order to achieve the purpose or mission of providing the route guidance service.
  • the facility infrastructure 200 can be used.
  • a plurality of robots operating for different purposes may be located in a building according to the present invention.
  • different robots capable of performing different tasks can be deployed in a building, and different types of robots can be deployed in a building depending on the needs of the building manager and various entities residing in the building.
  • buildings include delivery, logistics, guidance, interpretation, parking assistance, security, crime prevention, security, public order, cleaning, quarantine, disinfection, laundry, food production, food production, serving, fire suppression, and medical support.
  • robots that provide at least one service among entertainment services may be deployed.
  • the services provided by robots can vary beyond the examples listed above.
  • the second type of purpose is for the robot to perform a mission or function other than the robot's original mission, which may be a purpose unrelated to the robot's original mission.
  • This second type of purpose is not directly related to the robot performing its original mission, but may be an indirectly necessary mission or function.
  • the robot in order to achieve the second type of purpose, can run in the indoor space of the building 1000, move using the facility infrastructure 200, and further use the facility infrastructure 200. there is.
  • the robot can use the charging facility infrastructure to achieve the purpose of the charging function, and the robot can use the cleaning facility infrastructure to achieve the purpose of the cleaning function.
  • the robot can run in the indoor space of the building 1000, move using the facility infrastructure 200, and further use the facility infrastructure 200 in order to achieve a certain purpose.
  • the cloud server 20 may perform appropriate control on each of the robots located in the building based on information corresponding to each of the plurality of robots located in the building stored in a database.
  • various information about each of a plurality of robots located in a building may be stored in the database, and information about the robot R may be very diverse.
  • identification information to identify the robot (R) placed in the space 10 e.g., serial number, TAG information, QR code information, etc.
  • mission assigned to the robot (R) Information e.g., type of mission, actions according to the mission, target user information for the mission, mission performance location, mission performance schedule, etc.
  • v) Status information of the robot (R) e.g., power status, failure status, cleaning status, battery status, etc.
  • Image information received from the camera provided in the robot (R) e.g., vii)
  • appropriate control of robots may be related to control of operating robots according to the first type of purpose or the second type of purpose discussed above.
  • operation of the robot may mean controlling the robot to run in the indoor space of the building 1000, move using the facility infrastructure 200, and further use the facility infrastructure 200.
  • the movement of the robot may be referred to as the running of the robot, and therefore, in the present invention, the movement path and driving path may be used interchangeably.
  • the cloud server 20 Based on the information about each robot stored in the database, the cloud server 20 assigns appropriate tasks to the robots according to the purpose (or original mission) of each robot, and provides support to the robots so that the assigned tasks are performed. Control can be performed.
  • the mission assigned at this time may be a mission to achieve the first type of purpose discussed above.
  • the cloud server 20 may perform control to achieve the second type of purpose on each robot based on information about each robot stored in the database.
  • the robot that has received the control command to achieve the second type of purpose from the cloud server 20 moves to the charging facility infrastructure or the cleaning facility infrastructure based on the control command, and moves to the second type of The purpose can be achieved.
  • the terms “purpose” or “mission” will be used without distinguishing between the first type and the second type of purpose.
  • the purpose described below may be either a first type purpose or a second type purpose.
  • the mission described below may also be a mission for achieving a first type purpose or a mission for achieving a second type purpose.
  • the cloud server 20 allows the robot to perform the task of serving the target user, You can control the robot.
  • the cloud server 20 may control the robot to move to the charging facility infrastructure so that the robot can perform a task corresponding to charging.
  • the robot performs the purpose or mission using the facility infrastructure 200 under the control of the cloud server 20, without distinction between the first type of purpose or the second type of purpose. Let’s take a look.
  • the cloud server 20 may also refer to a robot controlled by the cloud server 20 as a “target robot” in order to perform its mission.
  • the cloud server 20 may specify at least one robot to perform a mission upon request or at its own discretion.
  • a cloud server can receive requests in various ways (e.g., user input through electronic devices, user input through gestures) from various entities such as visitors, managers, residents, workers, etc. located in a building.
  • the request may be a service request for a specific service (or specific task) to be provided by the robot.
  • the cloud server 20 can specify a robot that can perform the service among the plurality of robots located in the building 1000.
  • the cloud server 20 records i) the types of services that the robot can perform, ii) the tasks already assigned to the robot, iii) the current location of the robot, and iv) the status of the robot (ex: power status, cleanliness status, battery status, etc.). Based on this, a robot capable of responding to the request can be specified.
  • the cloud server 20 can specify the robot to perform the mission based on the request based on this database.
  • the cloud server 20 may specify at least one robot to perform the mission based on its own judgment.
  • the cloud server 20 can make its own judgment based on various causes.
  • the cloud server 20 may determine whether provision of a service is necessary to a specific user or a specific space existing within the building 1000.
  • the cloud server 20 senses and receives from at least one of the sensing unit 120 (see FIGS. 4 to 6) present in the building 1000, the sensing unit included in the facility infrastructure 200, and the sensing unit provided in the robot. Based on the information provided, specific targets requiring service provision can be extracted.
  • the specific object may include at least one of a person, space, or object.
  • Objects may refer to facilities, objects, etc. located within the building 1000.
  • the cloud server 20 can specify the type of service required for the extracted specific target and control the robot so that the specific service is provided to the specific target.
  • the cloud server 20 may specify at least one robot to provide a specific service to a specific target.
  • the cloud server 20 can determine a target that needs to provide services based on various judgment algorithms.
  • the cloud server 20 is at least one of the sensing unit 120 (see FIGS. 4 to 6) present in the building 1000, the sensing unit included in the facility infrastructure 200, and the sensing unit provided in the robot.
  • the type of service such as directions, serving, moving up stairs, etc. can be specified.
  • the cloud server 20 can specify a target that needs the service.
  • the cloud server 20 may specify a robot capable of providing the specified service so that the service is provided by the robot.
  • the cloud server 20 may determine a specific space that requires provision of a service based on various judgment algorithms.
  • the cloud server 20 is at least one of the sensing unit 120 (see FIGS. 4 to 6) present in the building 1000, the sensing unit included in the facility infrastructure 200, and the sensing unit provided in the robot.
  • specific spaces or objects that require service provision such as delivery target users, guests requiring guidance, contaminated spaces, contaminated facilities, fire areas, etc., are extracted, and the specific space or object is extracted.
  • a robot capable of providing the service can be specified.
  • the cloud server 20 can assign the task to the robot and perform a series of controls necessary for the robot to perform the task.
  • a series of controls include i) setting the robot's movement path, ii) specifying the facility infrastructure to be used to move to the destination where the mission will be performed, iii) communicating with the specified facility infrastructure, and iv) controlling the specified facility infrastructure. , v) monitoring the robot performing its mission, vi) evaluating the robot's driving, and vii) monitoring whether the robot has completed its mission.
  • the cloud server 20 can specify a destination where the robot's mission will be performed and set a movement path for the robot to reach the destination. Once the movement path is set by the cloud server 20, the robot R can be controlled to move to the corresponding destination in order to perform its mission.
  • the cloud server 20 can set a movement path for the robot to reach the destination from the location where the robot starts (starts) mission performance (hereinafter referred to as “mission performance start location”).
  • the position where the robot starts performing its mission may be the current position of the robot or the position of the robot at the time the robot starts performing its task.
  • the cloud server 20 may generate a movement path for a robot to perform a mission based on a map (or map information) corresponding to the indoor space 10 of the building 1000.
  • the map may include map information for each space of a plurality of floors (10a, 10b, 10c, ...) constituting the indoor space of the building.
  • the movement path may be a movement path from the mission performance start location to the destination where the mission is performed.
  • map information and movement routes are described as pertaining to indoor spaces, but the present invention is not necessarily limited thereto.
  • map information may include information about an outdoor space, and the movement route may be a path extending from an indoor space to an outdoor space.
  • the indoor space 10 of the building 1000 may be composed of a plurality of different floors 10a, 10b, 10c, 10d, ..., and the mission performance start location and destination are the same. It may be located on one floor or on different floors.
  • the cloud server 20 may use map information for the plurality of floors 10a, 10b, 10c, 10d, ... to create a movement path for a robot to perform a service within the building 1000.
  • the cloud server 20 may specify at least one facility that the robot must use or pass through to move to the destination among the facility infrastructure (plural facilities) deployed in the building 1000.
  • the cloud server 20 specifies at least one facility (204, 205) to assist the robot in moving between floors, and specifies You can create a movement route including the point where the installed equipment is located.
  • the equipment that assists the robot in moving between floors may be at least one of a robot-only elevator 204, a public elevator 213, and an escalator 205.
  • various types of equipment that assist robots in moving between floors may exist.
  • the cloud server 20 identifies a specific floor corresponding to the destination among the plurality of floors 10a, 10b, 10c, ... of the indoor space 10, and determines the robot's mission performance start location (ex: service Based on the position of the robot at the time of starting the corresponding mission, it can be determined whether the robot needs to move between floors to perform the service.
  • the robot's mission performance start location (ex: service Based on the position of the robot at the time of starting the corresponding mission, it can be determined whether the robot needs to move between floors to perform the service.
  • the cloud server 20 may include equipment (means) to assist the robot in moving between floors on the movement path.
  • the equipment that assists the robot in moving between floors may be at least one of a robot-only elevator 204, a public elevator 213, and an escalator 205.
  • the cloud server 20 may create a movement path so that facilities that assist the robot in moving between floors are included in the robot's movement path.
  • the cloud server 20 allows the robot to move using the robot-only passage (201, 202).
  • a movement path can be created including the point where (201, 202) is located.
  • the robot-only passage may be comprised of at least one of a first dedicated passage (or first type passage 201) and a second dedicated passage (or second type passage 202).
  • the first dedicated passage and the second dedicated passage 201 and 202 may be provided together on the same floor or may be provided on different floors.
  • the first exclusive passage 201 and the second exclusive passage 202 may have different heights relative to the floor surface of the building.
  • the cloud server 20 may control the driving characteristics of the robot on the robot-only passage to vary based on the type of robot-only passage used by the robot and the level of congestion around the robot-only passage. As shown in FIGS. 3 and 8 , when the robot runs on the second dedicated passage, the cloud server 20 may change the driving characteristics of the robot based on the degree of congestion around the robot-only passage. Since the second dedicated passage is a passage accessible to people or animals, it is intended to consider both safety and movement efficiency.
  • the driving characteristics of the robot may be related to the driving speed of the robot.
  • the congestion level may be calculated based on images received from at least one of a camera (or image sensor, 121) placed in the building 1000 and a camera placed in the robot. Based on this image, the cloud server 20 may control the robot's traveling speed to be below (or less than) a preset speed when the robot-only passage at the point where the robot is located and in the direction of travel is crowded.
  • the cloud server 20 uses map information for the plurality of floors 10a, 10b, 10c, 10d, ... to generate a movement path for a robot to perform a service within the building 1000, where , Among the facility infrastructure (plural facilities) arranged in the building 1000, at least one facility that the robot must use or pass through to move to the destination can be specified. Additionally, a movement path may be created so that at least one specified facility is included in the movement route.
  • a robot traveling in the indoor space 10 to perform a service may sequentially use or pass through the at least one facility along the movement path received from the cloud server 20 and drive to the destination.
  • the order of facilities that the robot must use can be determined under the control of the cloud server 20. Furthermore, the order of facilities that the robot must use may be included in the information about the movement path received from the cloud server 20.
  • the building 1000 includes robot-specific facilities (201, 202, 204, 208, 209, 211) that are exclusively used by robots and public facilities (205, 206) that are jointly used by people. , 207, 213) may be included.
  • Robot-specific facilities used exclusively by robots include facilities that provide functions necessary for the robot (ex: charging function, cleaning function, standby function) (208, 209) and facilities used for robot movement (201, 202, 204). , 211).
  • the cloud server 20 When creating a movement path for the robot, if a robot-specific facility exists on the path from the mission performance start location to the destination, the cloud server 20 allows the robot to move (or pass) using the robot-specific facility. You can create a movement path. In other words, the cloud server 20 can create a movement path by prioritizing robot-specific facilities. This is to increase the efficiency of the robot's movement. For example, if both the robot-only elevator 204 and the public elevator 213 exist on the movement path to the destination, the cloud server 20 may create a movement path including the robot-only elevator 204. there is.
  • the robot traveling in the building 1000 according to the present invention can travel in the indoor space of the building 1000 to perform its mission using various facilities provided in the building 1000.
  • the cloud server 20 may communicate with a control system (or control server) of at least one facility that the robot uses or is scheduled to use.
  • a control system or control server
  • unique control systems for controlling facilities communicate with at least one of the cloud server 20, the robot (R), and the building 1000, so that the robot (R) uses the facility. Appropriate control of each facility can be performed to ensure that
  • the cloud server 20 has a need to secure location information of the robot within the building 1000.
  • the cloud server 200 can monitor the positions of robots running around the building 1000 in real time or at preset time intervals.
  • the cloud server 20 can monitor the positions of all robots running around the building 1000. You can monitor information or, if necessary, selectively monitor location information only for specific robots.
  • the location information of the monitored robot can be stored in a database where the robot's information is stored, and the location information of the robot can be stored over time. It can be continuously updated according to.
  • Methods for estimating the location information of a robot located in the building 1000 can be very diverse. Hereinafter, we will look at an embodiment of estimating the location information of the robot.
  • 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 cloud server 20 receives an image of the space 10 using a camera (not shown) provided on the robot R, and receives Visual localization is performed to estimate the location of the robot from the image.
  • the camera is configured to capture (or sense) an image of the space 10, that is, an image of the surroundings of the robot R.
  • robot image the image acquired using the camera provided on the robot R
  • spatial image the image acquired through the camera placed in the space 10
  • the cloud server 20 is configured to acquire the robot image 910 through a camera (not shown) provided on the robot R, as shown in (a) of FIG. 9. And, the cloud server 20 can estimate the current location of the robot R using the acquired robot image 910.
  • the cloud server 20 compares the robot image 910 with the map information stored in the database and provides location information (e.g., “3rd floor area A (3, 1, 1)”) can be extracted.
  • location information e.g., “3rd floor area A (3, 1, 1)”
  • the map of the space 10 may be a map created in advance by at least one robot moving the space 10 based on SLAM (Simultaneous Localization and Mapping).
  • the map for the space 10 may be a map generated based on image information.
  • the map for space 10 may be a map generated by vision (or visual)-based SLAM technology.
  • the cloud server 20 provides coordinate information (e.g., (3rd floor, area A (3, 1) ,1,)) can be specified.
  • the specified coordinate information can become the current location information of the robot (R).
  • the cloud server 20 estimates the current location of the robot (R) by comparing the robot image 910 acquired from the robot (R) with the map generated by vision (or visual)-based SLAM technology. You can. In this case, the cloud server 20 uses i) image comparison between the robot image 910 and the images constituting the previously generated map to specify the image most similar to the robot image 910, and ii) the specified The location information of the robot (R) can be specified by obtaining location information matched to the image.
  • the cloud server 20 uses the acquired robot image 910 to determine the current location of the robot. can be specified.
  • the cloud server 20 receives location information (e.g., coordinates) corresponding to the robot image 910 from map information previously stored in the database (e.g., may also be called a “reference map”). information) can be extracted.
  • the position estimation of the robot (R) can be made in the robot (R) itself.
  • the robot R can estimate its current location in the manner described above, based on the image received from the robot R itself.
  • the robot R can transmit the estimated location information to the cloud server 20.
  • the cloud server 20 may perform a series of controls based on the location information received from the robot.
  • the cloud server 20 can specify at least one camera 121 placed in the indoor space 10 corresponding to the location information. You can.
  • the cloud server 20 may specify the camera 121 placed in the indoor space 10 corresponding to the location information from matching information related to the camera 121 stored in the database.
  • These images can be used not only to estimate the location of the robot, but also to control the robot.
  • the cloud server 20 obtains the robot image 910 from the robot R itself and the camera 121 placed in the space where the robot R is located.
  • the image can be output together with the display unit of the control system. Accordingly, an administrator who remotely manages and controls the robot (R) within or outside the building (1000) may view not only the robot image (910) acquired from the robot (R), but also the image of the space where the robot (R) is located. Considering this, remote control of the robot (R) can be performed.
  • the location of the robot traveling in the indoor space 10 may be estimated based on the tag 1010 provided in the indoor space 10, as shown in (a) of FIG. 10.
  • the tag 1010 may have matching location information corresponding to the point where the tag 1010 is attached, as shown in (b) of FIG. 10. That is, tags 1010 having different identification information may be provided at a plurality of different points in the indoor space 10 of the building 1000. The identification information of each tag and the location information of the point where the tag is attached may be matched with each other and exist in a database.
  • tags 1010 may include location information matched to each tag 1010.
  • the robot R can recognize the tag 1010 provided in the space 10 using a sensor provided on the robot R. Through this recognition, the robot (R) can determine the current location of the robot (R) by extracting the location information included in the tag (1010). This extracted location information may be transmitted from the robot R to the cloud server 20 through the communication unit 110. Accordingly, the cloud server 20 can monitor the positions of robots running around the building 20 based on the position information received from the robot R that senses the tag.
  • the robot R may transmit identification information of the recognized tag 1010 to the cloud server 20.
  • the cloud server 20 may extract location information matching the identification information of the tag 1010 from the database and monitor the location of the robot within the building 1000.
  • this tag 1010 can be variously named QR code, bar code, identification mark, etc.
  • the tag terminology discussed above can be replaced with “marker.”
  • Various information about the robot (R) can be stored in the database.
  • Various information about the robot R may include identification information (eg, serial number, TAG information, QR code information, etc.) for identifying the robot R located in the indoor space 10.
  • identification information of the robot R may be included in an identification sign (or identification mark) provided on the robot R, as shown in FIG. 11. These identification marks can be sensed or scanned by the building control system 1000a and the facility infrastructure 200. As shown in Figures 11 (a), (b), and (c), the identification marks 1101, 1102, and 1103 of the robot R may include identification information of the robot. As shown, the identification marks (1101, 1102, 1103) include a barcode (1101), serial information (or serial information 1102), QR code (1103), RFID tag (not shown), or NFC tag (not shown). ) can be expressed as, etc. A barcode (1101), serial information (or serial information, 1102), QR code (1103), RFID tag (not shown), or NFC tag (not shown) is provided with (or attached to) an identification mark. It may be made to include identification information of the robot.
  • the identification information of the robot is information for distinguishing each robot, and even robots of the same type may have different identification information.
  • the information constituting the identification mark may be composed of various types of information in addition to the barcode, serial information, QR code, RFID tag (not shown), or NFC tag (not shown) discussed above.
  • the cloud server 20 extracts identification information of the robot R from images received from a camera placed in the indoor space 10, a camera installed in another robot, or a camera installed in the facility infrastructure, and extracts identification information of the robot R from the image received from a camera installed in the indoor space 10 ), you can determine and monitor the location of the robot.
  • the means for sensing the identification mark is not necessarily limited to a camera, and a sensing unit (for example, a scanning unit) may be used depending on the type of the identification mark. This sensing unit may be provided in at least one of the indoor space 10, robots, and facility infrastructure 200.
  • the cloud server 20 can determine the location of the robot R from the image received from the camera. At this time, the cloud server 20 provides at least one of the location information where the camera is placed and the location information of the robot in the image (more precisely, the location information of the graphic object corresponding to the robot in the image captured with the robot as the subject). Based on this, the robot (R) can determine its location.
  • identification information about the camera placed in the indoor space 10 may be matched with location information about the place where the camera is placed. Accordingly, the cloud server 20 can extract the location information of the robot R by extracting the location information matched with the identification information of the camera that captured the image from the database.
  • the cloud server 20 can determine the location of the robot R from the scan information sensed by the scanning unit.
  • identification information on the scanning unit placed in the indoor space 10 may be matched with location information on the place where the scanning unit is placed. Accordingly, the cloud server 20 can extract the location information of the robot R by extracting location information matched to the scanning unit that scanned the identification mark provided on the robot from the database.
  • 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 characteristics of the actual spaces within the building (1000) and the robot (R) located in the building (1000) can move safely and efficiently within the building (1000). It is very important to create a map that reflects the situation and is used for the operation and driving of the robot (R).
  • the present invention provides a user environment in which a user can conveniently and intuitively create and change a map for the operation and driving of a robot (R) providing services in a building (1000), and provides a user environment that allows the user to conveniently and intuitively create and change maps.
  • FIG. 12 is a conceptual diagram illustrating a map generation system for robot operation according to the present invention.
  • Figure 13 is a flowchart for explaining a map generation method for robot operation according to the present invention
  • Figures 14 and 15 are conceptual diagrams for explaining the editing interface provided by the present invention
  • Figure 16 is a point cloud in the present invention.
  • FIGS. 17A, 17B, and 18 are conceptual diagrams for explaining an area graphic object according to the present invention
  • FIGS. 19A, 19B, and FIG. 20 are conceptual diagrams for explaining a node graphic object according to the present invention
  • FIGS. 23A, 23B, 23C, 23D and 23E are conceptual diagrams for explaining a zone according to the present invention
  • FIG. 25A and 25B are conceptual diagrams for explaining a method of filtering graphic objects on the editing interface of 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 map creation system 3000 for robot (R) operation allows users to conveniently, intuitively, and efficiently create, change, and edit maps for robot (R) operation (hereinafter described as “editing”).
  • 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 communication unit 310 transmits information related to the editing interface 1500 to the electronic device 50 in order to output the editing interface 1500 for creating and editing a map on the display unit 51 of the electronic device 50. Can be transmitted.
  • information related to the editing interface 1500 may be understood to include all information provided to enable a user to edit a map through the editing interface 1500.
  • the communication unit 310 may receive editing information based on user input applied to the editing interface 1500 through the electronic device 50 .
  • editing information may include information used to specify and assign graphic objects on the map.
  • editing information includes i) the placement position of the graphic object in a specific map, ii) the size of the graphic object, iii) the shape of the graphic object, vi) the graphic object, and v) various information related to the graphic object. It may include at least one of:
  • the communication unit 310 can update the map to which the graphic object is assigned to the cloud server 20. .
  • the storage unit 320 can be configured to store various information related to the present invention.
  • 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 Based on the editing information received from the electronic device 50, the control unit 330 displays at least one type of a plurality of types of graphic objects on a specific map 1700 corresponding to a specific layer among the plurality of layers. Graphic objects can be assigned.
  • the type of graphic object can be classified (or divided) according to the function associated with the graphic object, i) area graphic object related to the function that specifies the driving mode of the robots, ii) configuring the driving path of the robots It may include a driving node graphic object related to the function, iii) an operation node graphic object related to the specific operation of the robots, and vi) a facility graphic object related to the equipment.
  • the control unit 330 displays a graphic object corresponding to one of the plurality of graphic object types on the editing interface 1500 provided through the electronic device 50 based on the user input being applied to a specific map ( 1700) can be assigned (or placed) on the platform.
  • control unit 330 may update the specific map to which the graphic object is assigned to the cloud server so that the robots travel on a specific floor according to the properties of the graphic object assigned to the specific map.
  • 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 1700 corresponding to a specific space or a specific floor, and generates the generated Control can be performed so that the robot (R) moves according to the movement path.
  • a map used to control the robot (R) providing services within a building is created based on each of a plurality of floors, and the user can easily and intuitively create and edit the map.
  • An editing interface 1500 that can be used may be provided.
  • a process of receiving a map edit request for a specific floor among a plurality of floors of the building 1000 may be performed (S1310, see FIG. 13).
  • 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 a task 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. 14.
  • 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 editing 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 corresponding to the 8th floor includes the visual appearance corresponding to the first state information and the visual appearance corresponding to the second state information of some robots (R) among the plurality of robots (R) located on the 8th floor. It can be done.
  • 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.
  • the control unit 330 displays a specific floor among a plurality of floors in the building on the display unit 51 of the electronic device 50.
  • a graphic object (or screen) that can receive input for selection can be provided. More specifically, the 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 1500 includes a function for performing settings for a first area 1510 containing at least a portion of a specific map corresponding to a specific floor and the specific map 1700. It may include at least one of the second areas 1520.
  • the editing interface 1500 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 Edit user graphical interface
  • the first area 1510 i) at least a part of a specific map corresponding to a specific layer (hereinafter described as a specific map, 1700), ii) an area graphic object 1800, and iii) a node graphic object 1900. At least one of may be included (output or provided).
  • This first area may also be named a “map area.”
  • 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 1500 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 1500 including 1700 may be provided on the display unit of the electronic device 50.
  • the specific map 1700 may include at least one of an area graphic object 1800 and a node graphic object 1900 overlapping with each other.
  • the area graphic object 1800 is related to the driving mode of the robot R in a specific space within a specific floor, and is expressed (or arranged) by overlapping in an area corresponding to a specific space within a specific floor on the specific map 1700. ) can be.
  • the visual appearance of the area graphic object 1800 is, depending on the actual location, actual size, actual shape (or shape) and properties of a specific space within the specific layer, size, location, and At least one of shape (or shape) and color may be determined.
  • each of the first area graphic object 1800a and the second area graphic object 1800b is determined by the actual size, actual size, and actual size of the first space and the second space corresponding to each.
  • the size, location, shape (or shape) and color may be different.
  • the color of the visual appearance of the area graphic object 1800 may be determined based on the type matched to the area graphic object (or real space). As shown in FIG. 15, when the types matched to each of the first area graphic object 1800a and the second area graphic object 1800b are different, the first area graphic object 1800a and the second area graphic object (1800b) 1800b) Each color may be different.
  • the node graphic object 1900 is allocated (placed, displayed, expressed, or (including) may refer to a graphic object. Accordingly, in the present invention, the node graphic object 1900 and node can be used interchangeably.
  • node refers to a point or area that becomes a unit target for the robot’s movement, and each node may correspond to a specific point or specific area in the target space.
  • the node graphic object 1900 may be expressed (or placed) by overlapping at a position corresponding to a specific point (or specific area) within a specific layer on the specific map 1700.
  • the node graphic object 1900 may have three different types depending on its properties (or type). i) The node with the first node type is a traveling node (traveling node graphic object, 1910) linked to the driving of the robots (R), and ii) the node with the second node type is linked to the specific operation of the robots. It is an operation node graphic object (operation node graphic object, 1920) corresponding to an operation node, and iii) the node having the third note type is a facility node (facility node graphic) corresponding to a facility node linked to a facility placed on a specific floor. It can mean object 1930).
  • the travel node graphic object 1910 constitutes a travel path of the robots and can be understood as a graphic object related to a travel node corresponding to a travel node linked to the travel of the robots.
  • the robot R may move along the travel node based on information (eg, direction information, etc.) matched to the travel node graphic object 1910.
  • the action node graphic object 1920 may be understood as a graphic object related to an action node linked to a specific action of the robot R.
  • the robot R may perform the specific operation at the travel node based on the specific operation matched to the operation node graphic object 1920.
  • a waiting operation is matched to the operation node graphic object 1920.
  • the robot R arrives at the operation node while moving along the travel node, it can stop traveling and enter a waiting operation.
  • operation node graphic object 1920 may also include the role of a travel node graphic object (or travel node).
  • the facility node graphic object 1930 may be understood as a graphic object corresponding to a facility node linked to a facility placed on a specific floor. More specifically, the equipment node graphic object 1930 may be expressed (output or provided) by overlapping a point (location) corresponding to the point (location or space) where the equipment infrastructure is located on the specific map 1700. .
  • the node graphic object 1930 is a specific point where a specific facility is located in the space of a specific floor and a specific space that the robot must pass through in order to pass the specific facility (e.g., speed gate, elevator, etc.) It may be allocated to a space corresponding to at least one of the following. That is, when the robot uses a specific facility, the robot may need to move to at least some of a plurality of facility node graphic objects and travel node graphic objects corresponding to the specific facility.
  • the visual appearance of the node graphic object 1900 is at least one of location and color on the specific map 1700, depending on the actual location of the node within the specific layer and the type (or nature) of the node. can be decided.
  • the color of the visual appearance of the node graphic object 1900 may be determined based on the type matched to the node graphic object (or actual node).
  • the type of the first node graphic object corresponds to the operation node graphic object 1910
  • the type of the second node graphic object corresponds to the facility node graphic object 1920
  • the visual appearance (eg, color, shape, pattern, three-dimensional effect, icon shape, etc.) of the first node graphic object and the second node graphic object may be different from each other.
  • the visual appearance eg, color, shape, pattern, three-dimensional effect, icon shape, etc.
  • the visual appearance e.g, color, shape, pattern, three-dimensional effect, icon shape, etc.
  • the visual appearance of the facility node graphic object 1930 may be different depending on the type of facility so that the type of the corresponding facility infrastructure is expressed.
  • a facility graphic object 2000a corresponding to an elevator may be expressed with a visual appearance corresponding to an elevator
  • a facility graphic object 2000a corresponding to a speed gate may be expressed with a visual appearance corresponding to an elevator. You can.
  • a process of allocating at least one graphic object on the specific map 1700 included in the editing interface 1500 may be performed based on information received from the electronic device 50 ( S1330, see Figure 13).
  • the allocated graphic object may mean at least one of the area graphic object 1800 and the node graphic object 1900 described above.
  • control unit 330 Based on a user input applied to a specific area of the specific map 1700 included in the first area 1510, the control unit 330 creates an area graphic object 1800 and a node graphic on a location corresponding to the specific area. Any one of the objects (1900) can be assigned.
  • allocating a graphic object means arranging a graphic object by overlapping it on a specific area of a specific map, and ensuring that the area (or point) where the graphic object is placed has a type corresponding to the type of the graphic object. It can be understood as matching (or setting).
  • control unit 330 displays the node graphic object 1900 by overlapping it in a specific area of the specific map 1700, and displays a node corresponding to the node graphic object 1900 in the specific area. can be matched.
  • a user may assign a graphic object to a specific point on a specific map 1700 by applying a user input for a desired specific point on the specific map 1700 . Details on how to allocate graphic objects will be described later.
  • the specific map 1700 to which the graphic object is assigned is updated to the cloud server so that the robots (R) travel on a specific floor.
  • the process may proceed (S1340, see FIG. 13).
  • the cloud server 20 can set the movement path of the robot R within the space of the building 1000 using the map (or map information 1700) stored in the cloud server 20. . Additionally, the cloud server 20 can control the robot R to move from the current location to a specific destination. The cloud server 20 can specify the robot's current location information and destination location information, set a path to reach the destination, and control the robot to move according to the set path and reach the destination.
  • each of the plurality of node graphic objects 1900 may correspond to a plurality of nodes, and node information for each node may be matched.
  • Such node information may include various information, and representative examples may include coordinate information and node connection 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 node connection information.
  • a single node contains information defining other nodes to which the robot can move from that node.
  • Node connection information may include a unique number of another node through which the robot can move from the corresponding node or coordinate information specified by the other node.
  • the node connection information may include direction information defining directions in which the robot can move between nodes.
  • the direction information can define whether the robot can move only in one direction or in both directions when the robot can move from one of the two nodes to the other.
  • a plurality of facilities may correspond to a plurality of facility node graphic objects 1930 among the node graphic objects, and facility information for each facility may be matched.
  • 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.
  • the cloud server 20 can control the robot R to move from one node to another node and repeat this process so that the robot can reach the target point.
  • moving a robot to a specific node may mean that the robot moves within the coordinate information or coordinate range specified by the specific node.
  • the area graphic object 1800 may correspond to a specific real space and may be matched with driving mode information of the robot R in the specific space.
  • the driving mode may include a basic autonomous driving mode, a strict route following mode, a conservative driving mode, etc.
  • the cloud server 20 When controlling the robot R to move from one node to another, the cloud server 20 performs a driving operation matched to the area graphic object 1800 in the space corresponding to the area graphic object 1800. You can control movement depending on the mode.
  • the cloud server 20 can control the creation of a movement path and driving of the robot R based on the map (or map information) updated in the present invention.
  • the present invention proposes a user environment method that allows the user to conveniently and intuitively edit (create or change) the map (or map information) in order to enable the cloud server 20 to efficiently set the robot's movement path. do.
  • the control unit 330 may generate a map (or map information) based on information received from the electronic device 50.
  • the map creation may be performed by the cloud server 20 or another system rather than the control unit 330.
  • Another system may be a system built for map generation, and the present invention does not place any special limitations thereon.
  • control unit 330 displays a specific map 1700 on the display unit of the electronic device 50 based on receiving an edit request for a specific map 1700 corresponding to a specific floor from the electronic device. ) can be provided (see FIG. 15).
  • 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 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 server related to map creation detects static obstacles (Obstacles, O1, O2, O3, O4) in the space, based on information 1610 about the space sensed by the robot (R). The process can be performed (see (b) of FIG. 16).
  • the server related to map creation may mean the map creation system 3000 according to the present invention, or may mean another server.
  • the other server may be the cloud server 20 or may correspond to a server that performs a map creation function.
  • the map is created by the cloud server 20, but the same function can also be performed by the control unit 330 and other servers according to the present invention.
  • the cloud server 20 may generate points having three-dimensional coordinates for the detected obstacle using a point cloud technique.
  • 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).
  • the cloud server 20 divides the three-dimensional point clouds for obstacles obtained using the point cloud technique into two-dimensional point clouds (P1, P2) It can be converted into information. That is, the cloud server 20 can convert the three-dimensional point cloud for the detected obstacle into two-dimensional flattened point clouds (P1, P2).
  • the cloud server 20 as shown in (d) of FIG. 16, provides a map (or map information, M1) including two-dimensional flattened point clouds and a drawing (M2) of the building 1000.
  • M1 map information
  • M2 drawing
  • the process of determining the location of a static object can be performed.
  • the cloud server 20 provides detection information of physical obstacles in real space and Considering the positioning, the location and size of the static obstacle relative to the robot (R) can be specified.
  • the cloud server 20 converts the static obstacle into figures (Figure F1, F2) on the map M3, as shown in (e) of Figure 16. You can write it.
  • the map generated through the above-described process can be provided on the display unit 51 of the electronic device 50, thereby providing a user environment that allows the user to edit the map.
  • the above-described map creation process may be performed by the cloud server 20 or by an operator (or administrator).
  • the map creation process is performed by an operator (or administrator)
  • some of the above-described map creation process may be performed by the operator (or administrator).
  • the area graphic object 1800 may be understood as setting the robots (R) to drive (or operate) in a specific driving mode in a specific area of a specific floor.
  • control unit 330 may control the editing interface 1500 to the region editing mode based on receiving a request for region editing from the electronic device 50.
  • the “area editing mode” assigns an area graphic object 1800 on a specific map 1700 through the editing interface 1500, and displays the type (or types) of the area graphic object 1800 and related information. It can be understood as a mode that can be set.
  • the control unit 330 controls the selection of a specific editing tool (see reference numeral 1531 in FIG. 17A) corresponding to the area editing mode. Based on this, the mode of the editing interface 1500 can be switched to the area editing mode.
  • the control unit 330 may allocate a region graphic object on the specific map 1700 based on editing information received from the electronic device 50 while the editing interface 1500 operates in the region editing mode.
  • the editing information includes i) the location of the area graphic object 1800 in the specific map 1700, ii) the size of the area graphic object 1800, iii) the shape of the area graphic object 1800, and vi) the area. It may include information for specifying at least one type of the graphic object 1800.
  • Such editing information may be formed by combining user inputs input to the first area 1510 and the second area 1520 of the editing interface 1500.
  • the first area 1510 of the editing interface 1500 may include a specific map 1700.
  • the second area 1520 may include a settings menu for settings related to editing a specific map 1700.
  • the second area 1520 may include a settings menu for settings related to the area graphic object as the editing interface 1500 operates in the area editing mode.
  • the control unit 330 specifies i) the placement position, ii) size, and iii) shape of the area graphic object 1800 based on the user input applied to the first area 1510, thereby specifying the area graphic object 1800 on the specific map 1700.
  • the area graphic object 1800 to be allocated can be specified.
  • control unit 330 may specify the type of the area graphic object 1800 based on the user input applied to the second area 1520.
  • the control unit 330 may allocate a region graphic object on the specific map 1700 by combining user inputs applied to the first region 1510 and the second region 1520, respectively.
  • the control unit 330 controls the area where the area graphic object 1800 to be allocated on the specific map 1700 will be located based on the editing information received based on the user input for the first area 1510 ( or placement location), size, and shape may be specified.
  • the control unit 330 may include a first user input for a first area that specifies an area where the area graphic object 1800 will be located, a second user input for the first area that specifies the size of the area graphic object 1800, The area graphic object 1800 to be allocated on the specific map 1700 may be specified based on at least one of a third user input for the first area that specifies the shape of the area graphic object.
  • the distinction between the first user input, the second user input, and the third user input is related to which information among the location area (or placement position), size, and shape of the area graphic object 1800 according to the authorized user input. It can be classified according to.
  • the user input may correspond to the first user input and the second user input.
  • control unit 330 performs an editing function that can specify at least one of the arrangement position, size, and shape of the region graphic object based on the user input applied to the first region. Information can be received.
  • control unit 330 may specify the area graphic object 1800 to be allocated on the specific map 1700 based on the received editing information.
  • control unit 330 controls user input (e.g., For example, editing information based on a click) may be received from the electronic device 50. Additionally, the control unit 330 may specify a rectangular first area graphic object 1810 of a specific size disposed on the lower left corner of the specific map 1700 based on the received editing information.
  • user input e.g., For example, editing information based on a click
  • the control unit 330 may specify a rectangular first area graphic object 1810 of a specific size disposed on the lower left corner of the specific map 1700 based on the received editing information.
  • control unit 330 may receive editing information based on a drag input on the first area 1510 from the electronic device 50. Additionally, the control unit 330 may specify a triangular-shaped second area graphic object 1820 of a specific size disposed on the lower center of the specific map 1700 based on the received editing information.
  • control unit 330 based on the editing information received from the electronic device 50, creates a third trapezoidal shape of a specific size disposed in the center of the specific map 1700.
  • the area graphic object 1830 can be specified.
  • control unit 330 changes the size and shape of the line by the changed line based on a user input that changes at least one of the position and shape of the line forming the figure already formed in the first area 1510.
  • the area graphic object 1800 corresponding to the shape whose shape has been changed can be specified.
  • an area graphic object 1800 having a size and shape corresponding to the user input can be allocated to a specific area of the specific map 1700 corresponding to the location applied to the user input.
  • the user may allocate an area graphic object to an area corresponding to a specific space on the specific map 1700. In this way, the user can conveniently and intuitively set the operation mode of the robot R in each space within the building 1000 through the editing interface 1500 provided by the present invention.
  • control unit 330 switches the mode of the editing interface 1500 to the area editing mode based on the specific editing tool 1531 exposed on the editing interface 1500 being selected. You can.
  • At least one of the arrangement position, size, and shape of the area graphic object 1800 can be specified based on the user input applied to the first area.
  • the specific editing tool 1531 can be understood as a tool that serves as a medium for user input for specifying the area graphic object 1800.
  • This specific editing tool 1531 can form a plurality of editing tools 1530 together with other tools 1632 and 1533 matched to different functions.
  • the plurality of editing tools 1530 may be located in at least one area of the editing interface 1500, and based on user input applied to the plurality of editing tools 1530, another area of the editing interface 1500 may be displayed. Can be moved to the area.
  • the plurality of editing tools 1530 may be provided to overlap (or overlap) a specific map 1700 at the upper left of the first area 1510. Additionally, the user can move the plurality of editing tools 1530 to another location on the specific map 1700 through user input to the plurality of editing tools 1530.
  • the user can create area graphics on the partial area of the specific map 1700 that was hidden by moving the positions of the plurality of editing tools 1530.
  • the object 1800 can be placed.
  • control unit 330 receives editing information based on the user input applied to the second region 1520 of the editing interface 1500 and creates a region graphic object.
  • the type of (1800) can be specified.
  • the type of the area graphic object is linked to the driving mode of the robot (R), and a plurality of different driving modes may be linked to each of the different types of area graphic objects.
  • a first driving mode may be associated with a first type of area graphic object
  • a second driving mode may be associated with a second type of area graphic object.
  • “specifying the type of the area graphic object 1800” can be understood as specifying the driving mode of the robot (R) in a specific space (or area) of a specific floor corresponding to the area graphic object. You can.
  • control unit 330 creates a setting menu from which the type of the area graphic object 1800 can be selected on the second area 1520, as shown in FIG. 17B. (or a settings menu graphic object, 1521) may be provided.
  • the control unit 330 may select the type of area graphic object based on a user input (can also be referred to as a fourth user input) for the setting menu 1521 included in the second area 1520.
  • control unit 330 specifies the type of the area graphic object so that the robot R operates in a driving mode linked to the selected type in a specific space (or area) of a specific floor corresponding to the area graphic object 1800. can do.
  • control unit 330 generates a settings menu including a first sub-setting menu graphic object 1521a and a second sub-setting menu graphic object 1521b on the second area, as shown in FIG. 17B. (1521) can be provided.
  • the first sub-setting menu graphic object 1521a corresponds to the first type of area graphic object (or first driving mode)
  • the second sub-setting menu graphic object 1521b corresponds to the second type of area graphic object. (or it may correspond to the second driving mode).
  • the control unit 330 generates type information for the area graphic object 1800 based on whether one of the first sub-setting menu graphic object 1521a and the second sub-setting menu graphic object 1521b is selected. Editing information can be received from the electronic device 50.
  • the control unit 330 may determine the type of area graphic object based on the editing information. For example, when the control unit 330 receives editing information based on the first sub-setting menu graphic object 1521a being selected, the control unit 330 may specify the area graphic object 1800 as a first type of area graphic object. . In contrast, when the control unit 330 receives editing information based on the second sub-setting menu graphic object 1521b being selected, the control unit 330 may specify the area graphic object 1800 as a second type of area graphic object.
  • control unit 330 may determine the operation mode of the robot R in the area graphic object based on the editing information. For example, when the control unit 330 receives editing information based on the first sub-setting menu graphic object 1521a being selected, the control unit 330 changes the operation mode of the robot R in the area graphic object 1800 to the first operation. It can be specified by mode. In contrast, when the control unit 330 receives editing information based on the second sub-setting menu graphic object 1521b being selected, the control unit 330 changes the operation mode of the robot R to the second operation mode in the area graphic object 1800. It can be specified.
  • the area graphic object 1800 in the present invention may be configured to have any one type among a plurality of different types. Additionally, the area graphic object 1800 in the present invention can be configured to allow the robot R to operate in any one of different driving modes.
  • the visual appearance of the first type of area graphic object and the second type of area graphic object are It can be done differently.
  • visual appearance may mean at least one of the color, three-dimensional effect, pattern, and included icon of the area graphic object.
  • color will be used as an example of visual appearance.
  • Different visual information may be matched to each of the first type of area graphic object and the second type of area graphic object.
  • First visual information may be matched to a first type of area graphic object, and second visual information may be matched to a second type of area graphic object.
  • control unit 330 controls the color of the area graphic object on the specific map 1700 to have visual information matching the type of the specified area graphic object 1800. You can.
  • control unit 330 may display the plurality of area graphic objects on the specific map 1700 with visual characteristics corresponding to different visual information.
  • a first area graphic object 1810 specified as a first type is displayed on a specific map 1700 to have first color information matched to the first type.
  • the third area graphic object 1830 specified as the second type may be displayed on the specific map 1700 to have second color information matched to the second type.
  • control unit 330 may display the plurality of area graphic objects on the specific map 1700 with visual characteristics corresponding to the same visual information.
  • the first area graphic object 1810 and the second area graphic object specified as the first type may be displayed on the specific map 1700 with the same color information. .
  • one or more area graphic objects having the same or different types may be assigned to the specific map 1700 in the present invention.
  • the type for the selected area graphic object can be determined.
  • control unit 330 determines the type of the specific area graphic object on the second area 1520 based on receiving a user selection for at least one specific area graphic object on the first area 1510.
  • a settings menu 1521 for selection may be provided.
  • the control unit 330 can set the specific area graphic object as a specific type of area graphic object.
  • the settings menu 1521 may include sub-description menu graphic objects 1521a and 1521b corresponding to the area graphic object type applicable to the type applicable to the selected area graphic object.
  • the type of the graphic object when the type of the graphic object is first selected, the type of the area graphic object 1800 specified by the selected type can be determined.
  • control unit 330 selects the type of graphic object in a specific area based on the user input for the first area 1510 while a specific type is selected through the settings menu 1521 on the second area 1510. can be determined as the pre-selected type.
  • the present invention can provide an editing interface 1500 that can allocate an area graphic object associated with a specific driving mode on a specific map 1700 for a specific floor.
  • the user simply selects the area graphic object 1800 through the second area 1520 of the editing interface 1500, and the robot (R) is displayed within a specific space of a specific floor corresponding to the area graphic object 1800. It can be controlled to operate in this specific driving mode.
  • the user can intuitively recognize the driving mode of the robot R linked to the area graphic object 1800 through the color of the area graphic object 1800 on the specific map 1700.
  • a plurality of different driving modes are associated with each of a plurality of different types of area graphic objects (1841 to 1846), and may exist as area linkage information. .
  • the area linkage information may include driving characteristic information 1841a to 1846a for a plurality of different predefined (or set) driving modes.
  • the first driving mode may be matched to the first type of area graphic object 1841.
  • the driving characteristics 1841a of the first driving mode may be related to an operating mode that follows the route more strictly, minimizes avoidance, and limits waiting.
  • the robot R may travel to strictly follow the path in the area corresponding to the first type area graphic object 1841.
  • a second driving mode may be matched to the second type of area graphic object 1842.
  • the driving characteristics 1842a of the second driving mode may be related to an operating mode that drives conservatively.
  • the robot R may perform relatively more conservative driving in the area corresponding to the second type area graphic object 1842 than in other areas.
  • a third driving mode may be matched to the third type of area graphic object 1843.
  • the driving characteristics 1843a of the third driving mode may be related to a driving mode associated with an elevator.
  • the robot R may perform operations in a driving mode such as boarding an elevator, getting off, and waiting in an area corresponding to the third type area graphic object 1843.
  • a fourth driving mode may be matched to the fourth type of area graphic object 1844.
  • the driving characteristics 1844a of the fourth driving mode may be related to the driving mode associated with the metal wall.
  • the robot R may perform driving (for example, driving to prevent slipping) while corresponding to a metal wall in an area corresponding to the fourth type of area graphic object 1844.
  • a fifth driving mode may be matched to the fifth type of area graphic object 1845.
  • the driving characteristic 1845a of the fifth driving mode may be related to prohibiting the robot R from entering.
  • the robot R may not enter the area corresponding to the fifth type area graphic object 1845.
  • the sixth driving mode may be matched to the area 1846 to which no area graphic object is assigned.
  • the driving characteristics 1846a of the sixth driving mode may be related to the basic autonomous driving mode.
  • the robot R may operate in a basic autonomous driving mode in areas where area graphic objects are not assigned.
  • the robot R running within the building 1000 may drive in a specific driving mode in a specific area according to the driving mode associated with the area graphic object allocated on the specific map 1700.
  • a method in which the driving mode of the robot R is controlled based on the area graphic object allocated to the specific map 1700 will be described in more detail.
  • the control unit 330 allows the robot R to operate in a specific driving mode in a specific area corresponding to the area graphic object 1800.
  • a specific map 1700 can be updated on the cloud server 20.
  • the cloud server 20 moves the robot R in an area corresponding to at least one area graphic object 1800, It can be controlled to operate in any one of a plurality of driving modes.
  • the cloud server 20 in the area (or area) corresponding to the specific area graphic object 1810, operates the robot R according to the driving characteristics of the driving mode linked to the type of the specific area graphic object 1810, It can be controlled to drive in an area (or area) corresponding to the specific area graphic object 1810.
  • the cloud server 20 allows the robot R to be installed in the first area (area) of a specific floor corresponding to the area to which the first type of area graphic object 1810 is assigned in the specific map 1700.
  • the robot R can be controlled to drive according to the first driving mode.
  • the cloud server 20 determines the robot R based on the type of the area graphic object corresponding to the area where the robot R is located outside the first area. You can change the driving mode of (R).
  • the cloud server (20) can change the driving mode of the robot R from the first driving mode to the basic driving mode.
  • the basic driving mode may correspond to the driving mode before the robot R enters the first area.
  • a new area (area) in which the robot (R) is located beyond the first area (area) corresponds to an area to which the second type of area graphic object 1830 is assigned in the specific map 1700.
  • the cloud server 20 may change the driving mode of the robot R from the first driving mode to the second driving mode.
  • the cloud server 20 when the robot R enters the second area (zone) of a specific floor corresponding to the area to which the second type of area graphic object 1830 is assigned in the specific map 1700 , the robot R can be controlled to drive according to the second driving mode.
  • the cloud server 20 determines the robot R based on the type of the area graphic object corresponding to the area where the robot R is located outside the second area. You can change the driving mode of (R). For example, the cloud server 20 may change the driving mode of the robot R from the second driving mode to the basic driving mode. At this time, the basic driving mode may correspond to the driving mode before the robot R enters the second zone.
  • the cloud server 20 may generate a movement path of the robot R based on at least one area graphic object 1800 being allocated on the specific map 1700.
  • the type of the first area graphic object 1810 on the specific map 1700 is the previously described fifth type area graphic object 1845, and the first area having the fifth type Let us assume that the actual area corresponding to the graphic object 1810 is the first area.
  • the cloud server 20 creates a movement path passing through the first area, as shown in FIG. 17A.
  • the movement of the robot (R) can be controlled by creating (1710).
  • the cloud server 20 avoids the first area, as shown in FIG. 17B, after the first area graphic object 1810 having the fifth type is allocated on the specific map 1700.
  • the movement of the robot (R) can be controlled by creating a movement path 1720.
  • an editing interface 1500 that can allocate an area graphic object 1800 on a specific map 1700 is provided to the user, and the user can access the specific map 1700 through the editing interface 1500.
  • the robot (R) can be controlled to operate in a specific driving mode within a specific area within a specific floor by simply allocating the area graphic object 1800 on the robot (R).
  • a specific map 1700 is displayed based on the user input applied to the editing interface 1500. ) can be assigned a node graphic object.
  • the node graphic object 1900 is assigned (placed or displayed, or It may refer to a graphic object (expressed or included). Accordingly, in the present invention, the node graphic object 1900 and node can be used interchangeably.
  • a node is allocated on a specific map 1700 means “a node graphic object 1900 is allocated on a specific map 1700” or “a node graphic object 1900 is allocated on a specific map 1700.” It can be understood as “a node is assigned to the location of an actual area corresponding to a point”, “a node graphic object (1900) is assigned to a point on a specific map (1700) corresponding to the location of the actual area to which the node is assigned”, etc. You can.
  • the node graphic object 1900 may have three different types depending on its properties (or type). ii) The node having the first node type is a traveling node (traveling node graphic object, 1910) linked to the driving of the robots (R), and i) the node having the second node type is linked to the specific operation of the robots. It is an operation node graphic object (operation node graphic object, 1920) corresponding to an operation node, and iii) the node having the third note type is a facility node (facility node graphic) corresponding to a facility node linked to a facility placed on a specific floor. It can mean object 1930).
  • Robots that provide services in the present invention can be configured to perform operations defined in nodes assigned to where the robots are located.
  • the action node graphic object 1920 can be understood as a node that is preset so that the robot (R), which moves to a specific node by traveling between nodes, performs an action corresponding to the specific node. That is, since the operation node graphic object (or travel node, 1920) is a node that also includes the role of a travel node graphic object (or travel node), the travel node graphic object 1910 in the present invention is an operation node graphic object. (1930).
  • the facility node graphic object 1930 is a specific point where a specific facility is located in the actual area (or target space) of a specific floor, and a robot must pass through the specific facility (e.g., speed gate, elevator, etc.). It is assigned to an area corresponding to at least one of the specific areas. That is, when a robot uses a specific facility, the robot must move to at least some of the plurality of facility node graphic objects corresponding to the specific facility.
  • the node graphic object 1900 described below may be understood as including at least one of a travel node graphic object 1910, an operation node graphic object 1920, and a facility node graphic object 1930.
  • the node graphic object 1900 may have node graphic object information corresponding to each node graphic object 1900.
  • Node graphic object information may include at least three types of information.
  • node graphic object information includes coordinate information.
  • a single-node graphical object specifies a specific coordinate or range of coordinates on a map.
  • the node graphic object 1900 may be configured to designate a circular area with a predetermined area on the map.
  • coordinate information included in the node graphic object 1900 may be comprised of specific coordinates or coordinate ranges.
  • node graphic object information includes node graphic object connection information.
  • a single node graphic object includes information defining other node graphic objects1900) through which the robot can move from the corresponding node graphic object.
  • the node graphic object connection information may include a unique number of another node graphic object that the robot can move from the corresponding node graphic object or coordinate information specified by the other node graphic object.
  • node graphic object 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 a server corresponding to the facility, and node graphic object information of a node graphic object corresponding to the location where the facility is located.
  • a line connecting a specific node graphic object and a node graphic object different from the specific node graphic object 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 direction information defining a direction in which the robot R can move between two different node graphic objects connected by the edge.
  • the direction information defines whether the robot can move in only one direction or in both directions when the robot can move from one of two node graphic objects to the other.
  • Edge information corresponding to an edge connecting the first node graphic object and the second node graphic object may include direction information defining unidirectional movement from the first node graphic object to the second node graphic object.
  • Edge information corresponding to an edge connecting the first node graphic object and the second node graphic object may include direction information defining bidirectional movement between the first node graphic object and the second node graphic object.
  • direction information in the present invention can also be described as being included in node graphic object information. More specifically, if the direction information is included in edge information (or edge graphic object information) corresponding to an edge (or edge graphic object) connecting the first node graphic object and the second node graphic object, the present invention In , the direction information can also be described as being included in node graphic object information corresponding to each of the first node graphic object and the second graphic object.
  • direction information set in a specific node graphic object can be understood as direction information included in edges (or edge graphic objects) related to the specific node graphic object and other specific node graphic objects.
  • 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 graphic object. 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.
  • control unit 330 may control the editing interface 1500 to the node editing mode based on receiving a request for node editing from the electronic device 50.
  • node editing mode assigns a node graphic object 1900 on a specific map 1700 through the editing interface 1500, and displays the type (or types) of the node graphic object 1900 and related information. It can be understood as a mode that can be set.
  • the control unit 330 controls the selection of a specific editing tool (see reference numeral 1532 in FIG. 19A) corresponding to the node editing mode while the editing interface 1500 is in a mode other than the area editing mode (e.g., basic mode). Based on this, the mode of the editing interface 1500 can be switched to the node editing mode.
  • a specific editing tool see reference numeral 1532 in FIG. 19A
  • the control unit 330 may allocate a node graphic object 1900 on a specific map 1700 based on the editing information received from the electronic device 50 while the editing interface 1500 operates in the node editing mode. You can.
  • the editing information includes i) the placement position of the node graphic object 1900 in the specific map 1700, ii) the type of the node graphic object 1900, iii) identification information of the node graphic object 1900, and vi) the above. At least one of the following: attribute information of the node graphic object 1900, v) information about equipment with which the node graphic object 1900 is linked, and vi) identification information of the zone containing the node graphic object 1900. May contain information for specific purposes.
  • Such editing information may be formed by combining user inputs for the first area 1510 and the second area 1520 while the editing interface 1500 is operating in the node editing mode.
  • the first area 1510 of the editing interface 1500 may include a specific map 1700.
  • the second area 1520 may include a settings menu for settings related to editing a specific map 1700.
  • the second area 1520 may include a settings menu for settings related to the node graphic object as the editing interface 1500 operates in the node editing mode.
  • the control unit 330 specifies the node graphic object 1900 to be allocated on the specific map 1700 by specifying the placement position of the node graphic object 1900 based on the user input applied to the first area 1510. can do.
  • control unit 330 determines the type, attribute, identification information, inclusion zone, interlocking facility, and visual appearance (color or The shape of the included icon) can be specified.
  • the order of the first allocation process and the second allocation process may be changed. That is, the first allocation process may be performed after the second allocation process is performed first, and conversely, the first allocation process may be performed after the second allocation process is performed first.
  • control unit 330 selects node graphic objects 1911a, 1911b, and 1911c to be assigned to the specific map 1700 based on editing information received based on the user input being applied to the first area 1510. , 1911d, 1911e) can be specified.
  • control unit 330 creates node graphic objects 1911a, 1911b, 1911c, 1911d, at the point where the user input was applied.
  • 1911e can be output (displayed or provided).
  • control unit 330 may specify a traveling direction to define the traveling direction of the robots between at least some nodes among the plurality of traveling node graphic objects 1900 allocated on the specific map 1700.
  • This driving direction can be achieved through the process of adding connection lines (1912a, 1912b, see FIG. 19B) connecting adjacent driving node graphic objects among a plurality of driving node graphic objects through the editing interface 1500.
  • the editing information may include direction information included in each of the node graphic objects 1911a, 1911b, 1911c, and 1911d to be allocated on the specific map 1700.
  • This direction information may be generated based on at least one of the order and direction in which user input is applied to the first area 1510.
  • the direction information may include bi-directional information guiding that the robot R can move to a node graphic object allocated in the previous order and a node graphic object allocated in the next order to a specific node graphic object.
  • the robot R can move to the first node graphic object 1911a assigned to the previous order and the third node graphic object 1911c assigned to the next order. It may contain two-way information informing.
  • the direction information may include unidirectional information indicating that the robot R can only move to a node graphic object assigned to the next order rather than a specific node graphic object. More specifically, the direction information included in the second node graphic object 1911b may include unidirectional information indicating that the robot R can only move to the third node graphic object 1911c assigned in the next order. there is.
  • this direction information may be created or changed based on user information input through the second area 1520.
  • the second area 1520 may include an area for receiving direction information.
  • the control unit 330 may generate and change direction information for a specific node graphic object based on the direction information for the specific node graphic object being input through the second area 1520.
  • control unit 330 can control the connection lines 1911a and 1912b to be formed as arrows.
  • the control unit 330 uses a connection line (1912a, 1912b, see FIG. 19B) having an arrow for the direction in which the robot (R) can move, based on the direction information included in each of the plurality of node graphic objects (1911a, 1911b, 1911c, 1911d). ) can be expressed on a specific map 1700.
  • the user can conveniently and easily allocate a node graphic object on an area of the specific map 1700 corresponding to an actual specific point simply by applying a user input to the editing interface 1500.
  • control unit 330 receives editing information based on user input applied to the second area 1520 of the editing interface 1500 while the editing interface 1500 is operating in the node editing mode, and generates a specific node graphic. Information related to the object 1900 can be specified.
  • various information related to a specific node graphic object can be set through the second area 1520.
  • various information related to a specific node graphic object includes i) identification information of the node graphic object (e.g., node ID, node name, identification number, etc., 1522), ii) information of the node graphic object.
  • Coordinate information 1523 iii) information about any one type among a plurality of types for node graphic objects (1524a, 1524b, 1524c), iv) any one of a plurality of different zones containing a node graphic object Zone information (1525a, 1525b, 1525c) for one zone, v) Facility information (1526) for a facility linked to a node graphic object, vi) Information related to any one property among a plurality of properties for a node graphic object It may include at least one of (1527, 1528) and vii) marker information (1529) related to a facility linked to the node graphic object.
  • the control unit 330 provides information related to the selected node graphic object and an area for receiving the information, based on the selection of one graphic object among a plurality of node graphic objects allocated on the specific map 1700. It can be provided on area 2 (1520).
  • the identification information of the node graphic object (1522) may be set differently for each of a plurality of node graphic objects. For example, different first and second identification information may be matched to different first node graphic objects and second node graphic objects, respectively.
  • the coordinate information 1523 of the node graphic object can also be expressed as coordinate information and angle information (“direction information”) of either 2-dimensional coordinates (x, y) or 3-dimensional coordinates (x, y, z) ) may include.
  • the coordinate information may be determined (or generated) based on user input entered into the first area 1510.
  • the control unit 330 may match coordinate information corresponding to the user input applied to the first area 1510 to the node graphic object 1900 allocated on the specific map 1700 based on the user input.
  • the coordinate information may include coordinates for a point to which a specific node graphic object is assigned. This coordinate information may be matched to a specific node graphic object based on the user input entered into the first area 1510.
  • the coordinate information may be changed based on a user input that changes the location of the node graphic object already allocated to the first area 1510.
  • Coordinate information matched to the node graphic object may be changed from coordinate information corresponding to the first point to coordinate information corresponding to the second point.
  • the coordinate information may not be arbitrarily changed by user input applied to the second area 1520.
  • the control unit 330 can prevent the coordinate information of the node graphic object from changing through the second area by disabling the function of receiving user input for the area where the coordinate information is output on the second area 1520. .
  • the angle information is information related to the direction in which the robot (R) located at the actual node corresponding to the node graphic object is looking, which direction (ex: This may be information that defines by what angle (clockwise or counterclockwise) the robot (R) will rotate and in which direction the front of the robot (R) will face.
  • the robot (R) sets the reference line ( Or it can be positioned by rotating by 0° based on the reference point.
  • the user sets the angle information so that the front of the robot R is related to the elevator direction at the node related to waiting for the elevator, so that the robot R is related to waiting for the elevator.
  • a preset value may be matched to the node graphic object based on the node graphic object being allocated on the specific map 1700.
  • the preset value is angle information preset by the system 3000 administrator, and may be named basic angle information (or basic angle value, default value).
  • This basic angle information may be changed based on user information applied to the second area 1520.
  • the control unit 330 can change the angle information of the node graphic object through the second area by activating a function to receive user input for the area where the angle information is output on the second area 1520. .
  • the type information (1524a, 1524b, 1524c) for the node graphic object is information that determines the properties of the node graphic object
  • the type of the node graphic object includes: i) the type information associated with the running of the robot (R); It may be information related to any one of a driving node graphic object, ii) an operation node graphic object linked to the operation of the robot (R), and iii) a facility node graphic object related to equipment.
  • node type information related to the type of node graphic object may exist in the storage unit 320.
  • the node is one of a first type node (driving type node), a second node type (operation type node), and a third node type (facility type node). It may be matched.
  • the first node information (“Default”, 2211) is a node associated with the general driving of the robot R, and may be matched with the first type node (driving type node).
  • the second node information (“Robot Elevator”, 2212), the third node information (“Speed Gate”, 2213), and the fourth node information (“Charging”, 2214) include facilities located in the building 1000 and As a related node, a third type node (facility type node) may be matched.
  • the fifth node information (“Queue”, 2215) and the sixth node information (“Wating”, 2216) are each nodes related to the operation (queuing or waiting) of the robot R, and are a second type node ( operation type node) may be matched.
  • the control unit 330 may determine (or set) the type of a specific node graphic object based on one of the plurality of node type information being selected through a user input applied to the second area 1520. . Additionally, the control unit 330 may match the set (or determined) type to a specific node graphic object.
  • control unit 330 sets a second node type (action node type) to a specific node graphic object. ) can be matched.
  • the cloud server 20 When the robot R is located in an operation node corresponding to the second note type, the cloud server 20 performs a specific operation matched to the second node type (for example, stopping the robot R from running and waiting). You can control the robot (R) to wait or queue.
  • control unit ( 330) may match a third node type (facility node type) to a specific node graphic object.
  • the zone information 1525a of the node graphic object may be understood as information that groups at least some of the nodes assigned to the specific map 1700 to be included in the same zone. You can.
  • At least some of the nodes 2311a, 2312a, and 2313a among the plurality of nodes allocated on the specific map 1700 are configured to be included in the first same zone (ZONE, 2310a). They are grouped into a group, and at least some of the other nodes 2311b, 2312b, and 2313b may be grouped into a second group to be included in the second same zone (ZONE, 2310b).
  • the control unit 330 allows the user to intuitively recognize a plurality of nodes grouped in the same area just by looking at the editing interface 1500, so that a plurality of nodes grouped in the same group to be included in the same area have the same visual appearance. Appearance (eg, color, shape, pattern, three-dimensional effect, icon shape, etc.) can be provided on the first area 1510.
  • a plurality of nodes 2311a, 2312a, and 2313a grouped into a first group to be included in the first same area 2310a include the same icon (for example, a lightning icon). can do.
  • a plurality of nodes 2311b, 2312b, and 2313b grouped into a second group to be included in the second same area 2310b are provided in the same color on the first area 1510. It can be.
  • control unit 330 configures at least some of the plurality of nodes allocated on the specific map 1700 to be included in the same zone. , can be grouped into the same group.
  • grouping nodes can be understood as “including a node in the same specific zone”, “adding a node to a specific group”, or “registering a node in a specific zone”.
  • control unit 330 selects one of a plurality of nodes allocated on the specific map 1700 based on the user input (or user information) applied through the second area 1520. At least some of them can be grouped into the same group.
  • At least one of identification information of the selected node and identification information of the area containing the selected node may be provided in the second area 1520. there is.
  • control unit 330 inputs a user input to include the selected node in the specific area on the second area 1520, as shown in (a) of FIG. 23B. You can activate the function that allows you to select .
  • the control unit 330 selects an item corresponding to at least one zone (ex: “Wating-007-001”, “Wating-007-002”) existing on a specific floor.
  • a list of containing zones (2321) can be provided. Based on the selection of one item from the zone list 2321, the control unit 330 may include the selected node graphic object in the zone corresponding to the selected item.
  • control unit 330 when the control unit 330 receives a zone creation request from the electronic device 50 based on the user selection entered in the second area 1520, it creates a new zone and displays the selected node graphic on the newly created zone. Can contain objects.
  • control unit 330 creates a new area and then adds the selected node to the new area. It can be included in the area.
  • the new area may be associated with a specific floor where the selected node is located. For example, if the selected node is located on the 7th floor, the new zone may be created in connection with the 7th floor.
  • various information related to the specific zone may exist in matching form.
  • control unit 330 Based on receiving a request to provide specific area information from the electronic device 50, the control unit 330 displays various information related to the specific area on the second area 1520 of the editing interface 1500, as shown in FIG. 23C. Information can be provided.
  • specific area information includes i) identification information of the specific area (ex: Wating-007-001), ii) type (or attribute) information of the specific area (2331), iii) information related to the specific area.
  • a specific area and the specific area information may be matched with each other and exist as matching information.
  • the type information 2331 of the specific area is determined (specified or set) based on the type of at least one node graphic object included in the specific area, or determined (specified or set) based on the user's selection. It can be.
  • the type of the specific area is a type (ex: facility) corresponding to the specific node graphic object.
  • the type of the specific zone can be set to (zone).
  • the type of the specific area may be set based on the purpose commonly pursued by the different types of node graphic objects.
  • a specific area includes a facility node graphic object corresponding to an elevator and an action node graphic object corresponding to a waiting action of waiting for an elevator in front of the elevator.
  • the type of specific area may be related to elevator usage.
  • control unit 330 selects the second area 1520 so that a user input for one of the specific area information is made while the specific area information is output on the second area 1520. Alternatively, you can activate the input function.
  • the control unit 330 may set (determine or specify) or change specific area information for the specific area based on information selected or input through the second area 1520.
  • control unit 330 can link the specific area and the input facility information. . More specifically, the control unit 330 can link at least one node graphic object included in a specific area with the input facility information.
  • control unit 330 may set or change the type of a specific area based on a user input approved through the second area 1520.
  • information for a specific area can be set based on information input through the second area 1520, and the information input through the second area 1520 is referred to as “edit information” in the present invention. It was explained earlier that it can be named .
  • each of a plurality of node graphic objects included in the same area may have matching priorities.
  • a node list (node) in which the items 2335a, 2335b, and 2335c corresponding to each node graphic object are sorted based on the priority. list, 2335) may be provided.
  • priority is related to the order of use of the robot (R), and a node graphic object with a high priority may be used over a node graphic object with a low priority.
  • a specific zone includes a first facility node graphic object corresponding to a first charger and a second facility node graphic object corresponding to a second charger, and the first facility node graphic object has a first priority. Assume that the second priority is matched to the second facility node graphic object.
  • the control unit 330 may create a movement path (or driving path) so that the robot R moves to the first charger with high priority and performs charging. there is.
  • a plurality of items 2335a, 2335b, and 2335c may be sequentially arranged, from items corresponding to high-priority node graphic objects to items corresponding to low-priority node graphic objects.
  • the node list 2335 includes the first item 2335a corresponding to the first node graphic object (ex: “NODE_A”) to which the first priority is matched. ) is located at the top, and below the first item 2335a, a second item corresponding to a second node graphic object (ex: “NODE_B”) to which a second priority lower than the second priority is matched. (2335b) is located, and below the second item (2335b), a third item (2335c) corresponding to a third node graphic object (ex: “NODE_C”) to which a third priority lower than the second priority is matched. ) can be located.
  • each of the plurality of node graphic objects 2350a, 2350b, and 2350c allocated on the specific map 1700 has priority information matched to each node graphic object. may be included.
  • the first node graphic object 2350a contains the number “1” corresponding to the first priority
  • the second node graphic object 2350b contains the number “2” corresponding to the second priority
  • the third node graphic object 2350c includes the number “3” corresponding to the third priority
  • the cloud server 20 may control the robot R based on the priority matched (or assigned) to each of a plurality of node graphic objects included in a specific area.
  • the cloud server 20 matches the first to third priorities (or Based on the allocation, the movement path of the robot R can be generated by considering the first node among the first to third nodes as priority.
  • each of the first to third node graphic objects 2350a, 2350b, and 23580c included in the same area is a graphic object corresponding to the first to third chargers.
  • the cloud server 20 connects the first charger corresponding to the first node graphic object to which the first priority is assigned (or matched). You can control the robot (R) so that the robot (R) performs charging.
  • control unit 330 may change the priorities of a plurality of node graphic objects included in the same area based on user input applied to the editing interface 1500. Furthermore, priority information included in a plurality of node graphic objects provided on the specific map 1700 may be updated based on a change in the priority of the plurality of node graphic objects.
  • the selected item when one item (e.g., the first item, 2335a) is selected among the plurality of items included in the node list on the first area 1520, the selected item is In order for the user to intuitively recognize which item it is, the selected item 2335a may be highlighted with a visual appearance different from the other items 2335b and 2335c.
  • one item e.g., the first item, 2335a
  • control unit 330 receives from the electronic device 50 a selection of a location to move the selected item 2335 while one item (e.g., the first item, 2335a) is selected from the node list. Based on this, the position of the selected item 2335 can be changed on the node list.
  • one item e.g., the first item, 2335a
  • the control unit 330 moves the selected item (e.g., the first item, 2335a) can be moved below the third item 2335c.
  • control unit 330 may change (or update) the priority matched to each node graphic object based on the positions of the changed items 2335a, 2335b, and 2335c on the node list.
  • the first priority is matched to the second node graphic object corresponding to the second item 2335b located at the top of the node list 2335.
  • the second priority may be matched to the third node graphic object corresponding to the third item 2335c
  • the third priority may be matched to the first node graphic object corresponding to the first item 2335a.
  • control unit 330 based on a change (or update) in the priority matched to each of a plurality of node graphic objects included in the same area, creates a specific map ( Priority information included in each of the plurality of node graphic objects 2350a, 2350b, and 2350c allocated on 1700) may be changed (or updated).
  • the first node graphic object 2350a' is updated to include the number “3” corresponding to the changed third priority
  • the second node graphic object 2350b’ is updated to include the number “3” corresponding to the changed first priority. It is updated to include the number “1”
  • the third node graphic object 2350c' may be updated to include the number “2” corresponding to the second priority.
  • the cloud server 20 may perform control of the robot R differently from before the priority change based on the change in the priority matched (or assigned) to each of the plurality of node graphic objects included in the specific area. You can.
  • the cloud server 20 matches (or assigns) a first priority to a second node graphic object among the first to third node graphic objects 2350a, 2350b, and 23580c included in the same area. ) Based on the change, the robot's movement path can be generated by considering the second node among the first to third nodes as priority.
  • the cloud server 20 corresponds to the second node graphic object to which the first priority is assigned (or matched) when all of the first to third chargers are empty (or in a chargeable state).
  • the robot (R) can be controlled so that the robot (R) performs charging in the second charger.
  • the editing interface 1500 can provide a user interface that can edit and manage information about a zone.
  • control unit 330 provides a zone list 2360 on the second area 1520 based on receiving a zone list provision request from the electronic device 50. can do.
  • the zone list 2360 may include items (hereinafter, plural items, 2361 to 2365) corresponding to at least one zone.
  • a plurality of items included in the zone list 2360 may correspond to a zone associated with a specific floor.
  • the zone list 2360 may include items corresponding to each of the first to fifth zones associated with the 7th floor.
  • Each item included in the zone list 2360 includes identification information of the zone corresponding to the specific item 2361 (e.g., “ZONE-ID-001”), included in the zone corresponding to the specific item 2361.
  • each item included in the zone list 2360 may further include a function icon 2365a that receives a request for deletion of the zone corresponding to the specific item 2365.
  • the control unit 330 may delete information related to a specific area corresponding to a specific item 2365 including the function icon 2365a, based on receiving a user input for the function icon 2365a. At this time, when the function icon 2365a is selected, the control unit 330 displays guidance information (“If you delete a zone, the zone entered in the node is deleted) as shown in (b) of FIG. 23f. All information will also be removed. Do you want to delete the Zone?”) can be output.
  • the control unit 330 may delete information related to a specific area based on receiving a user input for the function icon 2365a. Furthermore, the control unit 330 may delete information on the specific area that is previously matched with at least one node graphic object included in the specific area. That is, the control unit 330 may ungroup the node graphic objects included in the specific area so that they are no longer included in the specific area.
  • control unit 330 assigns at least one node graphic object included in the specific area on the specific map 1700 based on receiving a user input for the function icon 2365a related to the specific area. It can be released. That is, the control unit 330 may delete the node graphic object displayed overlapping on the specific map 1700 so that it is no longer provided on the specific map 1700 .
  • the present invention not only provides a user interface for deleting each specific node graphic object assigned to a specific map 1700, but also allows the user to delete a plurality of node graphic objects included in a specific area at once.
  • An interface can be provided.
  • the present invention can provide a user interface that allows a user to freely and conveniently group multiple nodes into one zone and edit the priorities of multiple nodes included in the same zone. Through this, the user can conveniently set the driving paths and movements of the robots (R) providing services within the building 1000 through the user interface provided by the present invention, and can intuitively recognize the settings.
  • This user interface of the present invention can provide a service optimized for efficiently managing the robots (R) in the building 1000, which consists of multiple floors and has a plurality of robots (R).
  • facility information for facilities located on a specific floor in the building 1000 may be matched to at least one of the node graphic object 1900 and areas assigned on the specific map 1700. .
  • the control unit 330 connects a specific node graphic object 1900 or a plurality of node graphic objects included in a specific area to each other based on equipment information matching at least one of the node graphic object 1900 and the area. It can be linked.
  • control unit 330 controls the specific node and at least one facility infrastructure included in the facility information based on facility information 2410 input through the second area 1520. (2420, 2430, 2440) can be linked to each other.
  • node and facility infrastructure are linked” means that the node and facility are operated in conjunction with each other. For example, if a robot (R) is located in a specific node located on a specific floor, it is linked to the specific node.
  • the elevator can be controlled to move to a specific floor.
  • the interconnection between the node and the facility infrastructure may be achieved between at least one node and at least one facility infrastructure. More specifically, nodes and facility infrastructure may be linked one to one, or multiple facility infrastructures may be linked to one node. Additionally, one facility infrastructure can be linked to multiple nodes.
  • control unit 330 links a specific node (or a plurality of nodes included in a specific area) with a specific facility based on facility information input through the second area 1520 of the editing interface 1500. can be performed.
  • the present invention provides a user interface through which the user can set up interconnection between nodes and equipment through the editing interface 1500, and the user inputs equipment information about the equipment infrastructure into the editing interface 1500.
  • nodes and facility infrastructure can be interconnected.
  • a user can create an area graphic object 1800 of multiple types and a plurality of node graphic objects 1900 on a specific map 1700 through the editing interface 1500 according to the present invention. Can be assigned (see Figure 15).
  • graphic objects by type can be filtered and provided on a specific map 1700.
  • control unit 330 controls the second area 1520 while a specific map 1700 corresponding to a specific layer is provided in the first area 1510 of the editing interface 1500.
  • a filtering area 2600 related to a filtering function for at least one graphic object type assigned to the specific map 1700 may be provided.
  • information (2610, 2620, 2630, 2640, 2650) related to the plurality of graphic object types assigned to the specific map 1700 and information related to the plurality of graphic object types are matched.
  • the control unit 330 may provide only graphic objects of the type corresponding to the check box checked based on the user input for the filtering area 2600 by overlapping them on the specific map 1700 of the first area 1510. there is.
  • the control unit 330 may provide a first specific type of graphic object 2651 and a second specific type of graphic object 2652 by overlapping them on the specific map 1700 of the first area 1510. At this time, the control unit 330 may limit the output of graphic objects corresponding to the third specific type (“Node”, 2610) and the fourth specific type (“Edge”, 2620) corresponding to the unchecked check boxes. there is.
  • check boxes corresponding to the third specific type (“Node”, 2610) and the fourth specific type (“Edge”, 2620) are selected.
  • the control unit 330 may overlap and provide a third specific type of graphic object 2661 and a second specific type of graphic object 2662 on the specific map 1700 of the first area 1510. .
  • the control unit 330 may limit the output of graphic objects corresponding to the first specific type (“Virtual Wall”, 2630) and the second specific type (Advanced Area, 2640) corresponding to the unchecked check box. there is.
  • 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 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

Abstract

본 발명은 건물 내에서 서비스를 제공하는 로봇의 주행에 활용되는 맵(Map)을 직관적이고 편리하게 작성할 수 있는, 로봇 운용을 위한 맵 생성 방법 및 시스템(3000)에 관한 것이다. 본 발명에 따른 맵 생성 방법은, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계, 상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계, 상기 전자기기로부터 수신되는 편집 정보에 근거하여, 상기 편집 인터페이스에 포함된 상기 특정 맵 상에, 적어도 하나의 그래픽 객체를 할당하는 단계 및 상기 특정 맵 상에 할당된 상기 그래픽 객체의 속성에 따라, 로봇들이 상기 특정 층을 주행하도록, 상기 그래픽 객체가 할당된 상기 특정 맵을 클라우드 서버에 업데이트 하는 단계를 포함할 수 있다.

Description

로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템
본 발명은 건물 내에서 서비스를 제공하는 로봇이, 전역 이동 경로 및 지역 이동 경로 계획에 활용할 수 있는 맵(Map)을 편리하고 효율적으로 작성할 수 있는, 로봇 운영을 위한 맵 생성 방법 및 시스템에 관한 것이다.
기술이 발전함에 따라, 다양한 서비스 디바이스들이 나타나고 있으며, 특히 최근에는 다양한 작업 또는 서비스를 수행하는 로봇에 대한 기술 개발이 활발하게 이루어지고 있다.
나아가 최근에는, 인공 지능 기술, 클라우드 기술 등이 발전함에 따라, 로봇을 보다 정밀하고, 안전하게 제어하는 것이 가능해지고 있으며, 이에 따라 로봇의 활용도가 점차적으로 높아지고 있다. 특히, 기술의 발전으로 인하여, 로봇은 실내 공간에서 인간과 안전하게 공존할 수 있을 정도의 수준에 이르렀다.
이에, 최근에는 로봇이 인간의 업무 또는 작업을 대체하고 있으며, 특히 실내 공간에서 사람을 대상으로 로봇이 직접 서비스를 제공하는 다양한 방법들이 활발하게 연구되고 있다.
예를 들어, 공항, 역사, 백화점 등 공공 장소에서는 로봇들이 길안내 서비스를 제공하고 있으며, 음식점에서는 로봇들이 서빙 서비스를 제공하고 있다. 나아가, 오피스 공간, 공동 주거 공간 등에서는 로봇들이 우편물, 택배 등을 배송하는 배송 서비스를 제공하고 있다. 이 밖에도 로봇들은 청소 서비스, 방범 서비스, 물류 처리 서비스 등 다양한 서비스들을 제공하고 있으며, 로봇이 제공하는 서비스의 종류 및 범위는 앞으로도 기하급수적으로 늘어날 것이며, 서비스 제공 수준 또한 계속적으로 발전할 것으로 기대된다.
이러한, 로봇들은 실외 공간 뿐만 아니라, 사무실, 아파트, 백화점, 학교, 병원, 놀이시설 등과 같은 건물(또는 빌딩(building))의 실내 공간 내에서 다양한 서비스를 제공하고 있으며, 이 경우, 로봇들은 건물의 실내 공간을 이동하며 다양한 서비스들을 제공하도록 제어되고 있다.
한편, 건물 내에서 서비스를 제공하는 복수의 로봇이 효율적으로 주행하도록 하기 위해서는, 로봇의 전역 이동 경로 및 지역 이동 경로를 계획하는데 사용되는 맵(Map)이, 건물 내 구역의 특성 및 상황을 반영하도록 작성하는 것이 무엇보다 중요하다.
이에, 건물 내에서 로봇을 이용한 보다 수준 높은 서비스를 제공하기 위해서는, 사용자가 편리하고 효율적으로 건물 내 구역의 특성 및 상황을 반영하여, 로봇 운영을 위한 맵을 작성할 수 있는 방법에 대한 연구가 필요하다.
본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 건물 내에서 서비스를 제공하는 로봇의 주행에 활용되는 맵(Map)을 직관적이고 편리하게 작성할 수 있는 사용자 환경을 제공하기 위한 것이다.
특히, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 건물에 포함된 복수의 층 각각을 기준으로 로봇의 주행에 사용되는 맵(Map)을 작성할 수 있는 사용자 환경을 제공하기 위한 것이다.
보다 구체적으로, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 로봇의 동작을 영역 단위로 제어할 수 있도록, 맵 상에 다양한 타입을 가지는 영역을 편리하게 할당할 수 있는 사용자 환경을 제공하기 위한 것이다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 로봇의 주행 경로, 로봇의 동작 및 건물 내에 배치된 설비를 반영하여 편리하고 자유롭게 노드 맵을 작성할 수 있는 사용자 환경을 제공하기 위한 것이다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 사용자가 직관적으로 인식할 수 있는 맵을 제공하기 위한 것이다.
나아가, 본 발명은 로봇과 사람이 함께 공존하며, 사람에게 유용한 서비스를 제공하는 로봇 친화형 건물을 제공하기 위한 것이다.
나아가, 본 발명에 따른 로봇 친화형 건물은, 로봇이 이용 가능한 로봇 친화형의 다양한 설비 인프라를 제공함으로써, 로봇이 제공할 수 있는 서비스의 종류 및 범위를 확장할 수 있다.
나아가, 본 발명에 따른 로봇 친화형 건물은 다수의 로봇과 연동하는 클라우드 시스템을 이용하여, 다수의 로봇 및 설비 인프라를 유기적으로 제어함으로써, 보다 체계적으로 서비스를 제공하는 로봇의 주행을 관리할 수 있다. 이를 통해, 본 발명에 따른 로봇 친화형 건물은, 보다 안전하고, 신속하게, 그리고 정확하게 사람들에게 다양한 서비스를 제공할 수 있다.
나아가, 본 발명에 따른 건물에 적용된 로봇은 클라우드 서버에 의해 제어되는 브레인리스(brainless) 형식으로 구현될 수 있으며, 이에 의하면, 건물에 배치되는 다수의 로봇을 값비싼 센서 없이 저렴하게 제조할 수 있을 뿐만 아니라, 고성능/고정밀로 제어할 수 있다.
본 발명에 따른 맵 생성 방법은, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계, 상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계, 상기 전자기기로부터 수신되는 편집 정보에 근거하여, 상기 편집 인터페이스에 포함된 상기 특정 맵 상에, 적어도 하나의 그래픽 객체를 할당하는 단계 및 상기 특정 맵 상에 할당된 상기 그래픽 객체의 속성에 따라, 로봇들이 상기 특정 층을 주행하도록, 상기 그래픽 객체가 할당된 상기 특정 맵을 클라우드 서버에 업데이트 하는 단계를 포함할 수 있다.
나아가, 본 발명에 따른 맵 생성 방법은, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계, 상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계, 상기 전자기기로부터 수신되는 편집 정보에 근거하여, 상기 편집 인터페이스에 포함된 상기 특정 맵 상에, 적어도 하나의 노드를 할당하는 단계 및 상기 특정 맵 상에 할당된 상기 노드를 따라 로봇들이 상기 특정 층을 주행하거나, 상기 특정 층에서 상기 로봇들이 상기 노드에 정의된 동작을 수행하도록, 상기 노드가 할당된 상기 특정 맵을 클라우드 서버에 업데이트 하는 단계를 포함할 수 있다.
나아가, 본 발명에 따른 맵 생성 시스템은, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 통신부 및 상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 제어부를 포함하고, 상기 제어부는, 상기 전자기기로부터 수신되는 편집 정보에 근거하여, 상기 편집 인터페이스에 포함된 상기 특정 맵 상에, 적어도 하나의 그래픽 객체를 할당하고, 상기 특정 맵 상에 할당된 상기 그래픽 객체의 속성에 따라, 로봇들이 상기 특정 층을 주행하도록, 상기 그래픽 객체가 할당된 상기 특정 맵을 클라우드 서버에 업데이트 할 수 있다.
나아가, 본 발명에 따른 프로그램은, 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램으로서, 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계, 상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계, 상기 전자기기로부터 수신되는 편집 정보에 근거하여, 상기 편집 인터페이스에 포함된 상기 특정 맵 상에, 적어도 하나의 그래픽 객체를 할당하는 단계 및 상기 특정 맵 상에 할당된 상기 그래픽 객체의 속성에 따라, 로봇들이 상기 특정 층을 주행하도록, 상기 그래픽 객체가 할당된 상기 특정 맵을 클라우드 서버에 업데이트 하는 단계를 수행하도록 하는 명령어들을 포함할 수 있다.
나아가, 본 발명에 따른 건물은, 복수의 로봇들이 서비스를 제공하는 건물로, 상기 로봇들이 사람과 공존하는 실내 공간을 가지는 복수의 층들(floors) 및 상기 로봇들과 클라우드 서버의 사이에서 통신을 수행하는 통신부를 포함하고, 상기 클라우드 서버는, 편집 인터페이스를 통해 생성된 건물 맵(map)에 근거하여, 상기 건물을 주행하는 상기 로봇들에 대한 제어를 수행하고, 상기 건물 맵은, 건물의 복수의 층 중 특정 층에 대한 맵 편집 요청을 수신하는 단계 상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계 및 상기 전자기기로부터 수신되는 편집 정보에 근거하여, 상기 편집 인터페이스에 포함된 상기 특정 맵 상에, 적어도 하나의 그래픽 객체를 할당하는 단계를 통해 생성되고, 상기 클라우드 서버에는, 상기 특정 맵 상에 할당된 상기 그래픽 객체의 속성에 따라, 상기 로봇들이 상기 특정 층을 주행하도록, 상기 그래픽 객체가 할당된 상기 특정 맵이 업데이트 될 수 있다.
본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 것에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공할 수 있다. 이를 통해, 사용자는 복수의 층으로 이루어진 건물에 대해서, 각 층별 특정 맵을 생성 및 편집할 수 있다. 이에, 사용자는 복수의 층으로 이루어진 건물도 각 층의 특성을 반영하여 각 층별 맞춤형 맵을 생성 및 수정할 수 있다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 전자기기로부터 수신되는 편집 정보에 근거하여, 편집 인터페이스에 포함된 특정 맵 상에, 그래픽 객체를 할당할 수 있다. 이를 통해, 사용자는 편집 인터페이스에 그래픽 객체를 할당하는 것 만으로 맵을 작성 및 편집할 수 있기 때문에, 숙련되지 않은 사용자도 편리하고 간편하게 맵을 작성 및 편집할 수 있다.
나아가, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은, 특정 맵 상에 할당된 그래픽 객체의 속성에 따라, 로봇들이 상기 특정 층을 주행하도록, 그래픽 객체가 할당된 특정 맵을 클라우드 서버에 업데이트할 수 있다. 이를 통해, 로봇은, 로봇과 로봇, 로봇과 인간 그리고 로봇과 건물에 배치된 다양한 설비 인프라의 상호 작용이 반영된 맵에 근거하여, 복잡한 환경에 대한 처리 없이 전역 계획을 따라 효울적으로 주행할 수 있다.
나아가, 본 발명에 따른 로봇 친화형 건물은 로봇, 자율주행, AI, 클라우드 기술이 융합되고, 연결되는 테크 컨버전스(Technological Convergence)를 이용하며, 이러한 기술과, 로봇 그리고 건물내 구비되는 설비 인프라가 유기적으로 결합되는 새로운 공간을 제공할 수 있다.
나아가, 본 발명에 따른 로봇 친화형 건물은 다수의 로봇과 연동하는 클라우드 서버를 이용하여, 다수의 로봇 및 설비 인프라를 유기적으로 제어함으로써, 보다 체계적으로 서비스를 제공하는 로봇의 주행을 체계적으로 관리할 수 있다. 이를 통해, 본 발명에 따른 로봇 친화형 건물은, 보다 안전하고, 신속하게, 그리고 정확하게 사람들에게 다양한 서비스를 제공할 수 있다.
나아가, 본 발명에 따른 건물에 적용된 로봇은 클라우드 서버에 의해 제어되는 브레인리스(brainless) 형식으로 구현될 수 있으며, 이에 의하면, 건물에 배치되는 다수의 로봇을 값비싼 센서 없이 저렴하게 제조할 수 있을 뿐만 아니라, 고성능/고정밀로 제어할 수 있다.
나아가, 본 발명에 따른 건물에서는 건물에 배치된 다수의 로봇에 할당된 임무와 이동 상황을 고려함은 물론, 사람을 배려하도록 주행이 제어됨으로써, 같은 공간 속에서 자연스럽게 로봇과 사람이 공존할 수 있다.
나아가, 본 발명에 따른 건물에서는 로봇에 의한 사고 방지 및 예기치 못한 상황에 대응할 수 있도록 다양한 제어를 수행함으로써, 사람들에게 로봇이 위험한 것이 아닌, 친근하고 안전하다는 인식을 심어줄 수 있다.
도 1, 도 2 및 도 3은 본 발명에 따른 로봇 친화형 건물을 설명하기 위한 개념도들이다.
도 4, 도 5 및 도 6은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇 및 로봇 친화형 건물에 구비된 다양한 설비를 제어하는 시스템을 설명하기 위한 개념도들이다.
도 7 및 도 8은 본 발명에 따른 로봇 친화형 건물에 구비된 설비 인프라를 설명하기 위한 개념도들이다.
도 9 내지 도 11은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇의 위치를 추정하는 방법을 설명하기 위한 개념도들이다.
도 12는 본 발명에 따른 로봇 운용을 위한 맵 생성 시스템을 설명하기 위한 개념도이다.
도 13은, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법을 설명하기 위한 흐름도이다.
도 14 및 도 15는 본 발명에서 제공하는 편집 인터페이스를 설명하기 위한 개념도들이다.
도 16은 본 발명에서 포인트 클라우드(Point Cloud) 기법을 이용하여 지도를 생성하는 방법을 설명하기 위한 개념도이다.
도 17a, 도 17b 및 도 18은 본 발명에 따른 영역 그래픽 객체를 설명하기 위한 개념도들이다.
도 19a, 도 19b, 도 20, 도 21 및 도 22는 본 발명에 따른 노드 그래픽 객체를 설명하기 위한 개념도들이다.
도 23a, 도 23b, 도 23c, 도 23d 및 도 23e는 본 발명에 따른 구역을 설명하기 위한 개념도들이다.
도 25a 및 도 25b는 본 발명의 편집 인터페이스 상에서 그래픽 객체를 필터링하는 방법을 설명하기 위한 개념도들이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소에는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제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)내 구비된 설비 인프라 중 적어도 하나에 대한 제어를 수행할 수 있다.
한편, 클라우드 서버(21)와 엣지 서버(22)에 대해서 보다 구체적으로 살펴보면, 엣지 서버(22)는 전자 장치로서, 로봇(R)의 브레인(brain)으로 동작할 수 있다. 즉 각각의 엣지 서버(22)는 적어도 하나의 로봇(R)을 무선으로 제어할 수 있다. 이 때 엣지 서버(22)는 정해지는 제어 주기에 기반하여, 로봇(R)을 제어할 수 있다. 제어 주기는 로봇(R)과 관련된 데이터를 처리(processing)하도록 주어지는 시간과 로봇(R)에 제어 명령을 제공하도록 주어지는 시간의 합으로 결정될 수 있다. 클라우드 서버(21)는 로봇(R) 또는 엣지 서버(22) 중 적어도 어느 하나를 관리할 수 있다. 이 때 엣지 서버(22)는 로봇(R)에 대응하여 서버로서 동작하고, 클라우드 서버(21)에 대응하여 클라이언트로 동작할 수 있다.
로봇(R)과 엣지 서버(22)는 무선으로 통신할 수 있으며, 엣지 서버(22)와 클라우드 서버(21)는 유선 또는 무선으로 통신할 수 있다. 이 때 로봇(R)과 엣지 서버(22)는, 초고신뢰 저지연 통신(ultra-reliable and low latency communications; URLLC)이 가능한 무선 네트워크를 통하여, 통신할 수 있다. 예를 들면, 무선 네트워크는 5G 네트워크 또는 WiFi-6(WiFi ad/ay) 중 적어도 어느 하나를 포함할 수 있다. 여기서, 5G 네트워크는, 초고신뢰 저지연 통신이 가능할 뿐 아니라, 초광대역 이동 통신(enhanced mobile broadband; eMBB) 및 대규모 사물 통신(massive machine type communications; mMTC)이 가능한 특징들을 가질 수 있다. 일 예로, 엣지 서버(22)는 MEC(mobile edge computing, multi-access edge computing) 서버를 포함하며, 기지국에 배치될 수 있다. 이를 통해, 로봇(R)과 엣지 서버(22) 간 통신에 따른 지연(latency) 시간이 단축될 수 있다. 이 때 엣지 서버(22)의 제어 주기에서, 로봇(R)으로 제어 명령을 제공하도록 주어지는 시간이 단축됨에 따라, 데이터를 처리하도록 주어지는 시간이 확대될 수 있다. 한편, 엣지 서버(22)와 클라우드 서버(21)는, 예컨대 인터넷(internet)과 같은 무선 네트워크를 통하여, 통신할 수 있다.
한편, 경우에 따라, 복수 개의 엣지 서버들은 무선 메시 네트워크(mesh network)를 통하여 연결될 수 있으며, 클라우드 서버(21)의 기능은 복수 개의 엣지 서버들에 분산될 수 있다. 이러한 경우, 어떤 로봇(R)에 대하여, 엣지 서버들 중 어느 하나가 로봇(R)을 위한 엣지 서버(22)로서 동작하고, 엣지 서버들 중 적어도 다른 하나가 엣지 서버들 중 어느 하나와 협력 하에, 로봇(R)을 위한 클라우드 서버(21)로서 동작할 수 있다.
본 발명에 따른 건물(1000)에 형성되는 네트워크 또는 통신망은 데이터를 수집하도록 구성되는 적어도 하나의 로봇(R), 로봇(R)을 무선으로 제어하도록 구성되는 적어도 하나의 엣지 서버(22), 및 엣지 서버(22)와 연결되고, 로봇(R)과 엣지 서버(22)를 관리하도록 구성되는 클라우드 서버(21) 간의 통신을 포함할 수 있다.
엣지 서버(22)는, 로봇(R)으로부터 상기 데이터를 무선으로 수신하고, 상기 데이터를 기반으로 제어 명령을 결정하고, 로봇(R)에 상기 제어 명령을 무선으로 전송하도록 구성될 수 있다.
다양한 실시예들에 따르면, 엣지 서버(22)는, 상기 데이터에 기반하여, 클라우드 서버(21)와 협력할 지의 여부를 판단하고, 클라우드 서버(21)와 협력하지 않아도 되는 것으로 판단되면, 정해진 제어 주기 내에서, 상기 제어 명령을 결정하고 상기 제어 명령을 전송하도록 구성될 수 있다.
다양한 실시예들에 따르면, 엣지 서버(22)는, 클라우드 서버(21)와 협력해야 하는 것으로 판단되면, 상기 데이터를 기반으로 클라우드 서버(21)와 통신하여, 상기 제어 명령을 결정하도록 구성될 수 있다.
한편, 로봇(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)의 제어에 의존할 수 있다.
다만, 본 명세서에서는 브레인리스 로봇을 구분하여 명명하지 않고, 모두 “로봇”으로 통일하여 명명하도록 한다.
앞서 설명한 것과 같이, 본 발명에 따른 건물(1000)은 로봇이 이용 가능한 다양한 설비 인프라가 구비될 수 있으며, 도 2, 도 3 및 도 4에 도시된 것과 같이, 설비 인프라는 건물(1000)내에 배치되어, 건물(1000) 및 클라우드 서버(20)와의 연동을 통해, 로봇의 이동(또는 주행)을 지원하거나, 로봇에게 다양한 기능을 제공할 수 있다.
보다 구체적으로, 설비 인프라는 건물 내에서 로봇의 이동을 지원하기 위한 설비들을 포함할 수 있다.
로봇의 이동을 지원하는 설비들은, 로봇이 전용으로 사용하는 로봇 전용 설비 및 사람과 공동으로 사용하는 공용 설비 중 어느 하나의 타입을 가질 수 있다.
나아가, 로봇의 이동을 지원하는 설비들은 로봇의 수평 방향으로의 이동을 지원하거나, 로봇의 수직 방향으로의 이동을 지원할 수 있다. 로봇들은 건물(1000)내에서 설비들을 이용하여, 수평 또는 수직 방향으로 이동할 수 있다. 수평 방향으로의 이동은, 동일 층 내에서의 이동을 의미하며, 수직 방향으로의 이동은 서로 다른 층간 사이를 이동하는 것을 의미할 수 있다. 따라서 본 발명에서는 동일 층 내에서 상하로 이동하는 것은 수평 방향의 이동으로 지칭할 수 있다.
로봇의 이동을 지원하는 설비들은 다양할 수 있으며, 예를 들어, 도 2 및 도 3에 도시된 것과 같이, 건물(1000)에는 로봇의 수평 방향으로의 이동을 지원하는 로봇 통로(로봇 도로, 201, 202, 203)가 구비될 수 있다. 이러한 로봇 통로는, 로봇이 전용으로 이용하는 로봇 전용 통로를 포함할 수 있다. 한편, 로봇 전용 통로는 사람의 접근이 원천적으로 차단되도록 이루어지는 것이 가능하나, 반드시 이에 한정되지 않을 수 있다. 즉, 로봇 전용 통로는 사람이 통행하거나, 접근할 수 있는 구조로 이루어질 수 있다.
한편, 도 3에 도시된 것과 같이, 로봇 전용 통로는 제1 전용 통로(또는 제1 타입 통로, 201) 및 제2 전용 통로(또는 제2 타입 통로, 202) 중 적어도 하나로 이루어질 수 있다. 제1 전용 통로 및 제2 전용 통로(201, 202)는 동일 층에 함께 구비되거나, 서로 다른 층에 구비될 수 있다.
또 다른 예로서, 도 2 및 도 3에 도시된 것과 같이, 건물(1000)에는 로봇의 수직 방향으로의 이동을 지원하는 이동 수단(204, 205)이 구비될 수 있다. 이러한 이동 수단(204, 205)은 엘리베이터(elevator) 또는 에스컬레이터(escalator) 중 적어도 하나를 포함할 수 있다. 로봇은 건물(1000)에 구비된 엘리베이터(204) 또는 에스컬레이터(205)를 이용하여, 서로 다른 층 사이를 이동할 수 있다.
한편, 이러한 엘리베이터(204) 또는 에스컬레이터(205)는 로봇 전용으로 이루어지거나, 사람과 함께 이용하는 공용으로 이루어질 수 있다.
예를 들어, 건물(1000)에는 로봇 전용 엘리베이터 또는 공용 엘리베이터 중 적어도 하나가 포함될 수 있다. 마찬가지로, 나아가, 건물(1000)에는 로봇 전용 에스컬레이터 또는 공용 에스컬레이터 중 적어도 하나가 포함될 수 있다.
한편, 건물(1000)은 수직 방향 이동과 수평 방향 이동에 모두 활용될 수 있는 형태의 이동 수단이 구비될 수 있다. 예를 들어, 무빙워크(moving walkway) 형태의 이동 수단이 로봇에게 층 내에서 수평 방향 이동을 지원하거나, 층 간에서 수직 방향 이동을 지원할 수 있다.
로봇은 자체적인 제어 또는 클라우드 서버(20)에 의한 제어 하에, 수평 방향 또는 수직 방향으로 건물(1000) 내를 이동할 수 있으며, 이때, 로봇의 이동을 지원하는 다양한 설비를 이용하여, 건물(1000) 내를 이동할 수 있다.
나아가, 건물(1000)에는 건물(1000) 또는 건물(1000)내 특정 영역으로의 출입을 제어하는 출입문(206, 또는 자동문) 및 출입 통제 게이트(gate, 207) 중 적어도 하나를 포함할 수 있다. 출입문(206) 및 출입 통제 게이트(207) 중 적어도 하나는 로봇이 이용 가능하도록 이루어질 수 있다. 로봇은 클라우드 서버(20)의 제어 하에 출입문(또는 자동문, 206) 또는 출입 통제 게이트(207)를 통과하도록 이루어질 수 있다.
한편, 출입 통제 게이트(207)는 다양하게 명명될 수 있으며, 스피드 게이트(speed gate)등으로 명명될 수 있다.
나아가, 건물(1000)에는, 로봇이 대기하는 대기 공간에 해당하는 대기 공간 설비(208), 로봇의 충전을 위한 충전 설비(209), 로봇의 세척을 위한 세척 설비(210)가 더 포함될 수 있다.
나아가, 건물(1000)에는 로봇이 제공하는 특정 서비스에 특화된 설비(211)가 포함될 수 있으며, 예를 들어 배송 서비스를 위한 설비가 포함될 수 있다.
또한, 건물(1000)에는 로봇을 모니터링하기 위한 설비가 포함될 수 있으며(도면부호 212 참조), 이러한 설비의 예로는 다양한 센서들(예를 들어, 카메라(또는 이미지 센서, 121)가 존재할 수 있다.
도 2 및 도 3과 함께 살펴본 것과 같이, 본 발명에 따른 건물(1000)에는 서비스 제공, 로봇의 이동, 주행, 기능 유지, 청결 유지 등을 위한 다양한 설비들이 구비될 수 있다.
한편, 도 4에 도시된 것과 같이, 본 발명에 따른 건물(1000)은 클라우드 서버(20), 로봇(R), 설비 인프라(200)와 상호 연결되어, 건물(1000) 내에서 로봇들이 다양한 서비스를 제공함은 물론, 이를 위하여 설비들을 적절하게 이용하도록 할 수 있다.
여기에서, “상호 연결”된다고 함은, 건물 내에서 제공되는 서비스, 로봇의 이동, 주행, 기능 유지, 청결 유지 등과 관련된 다양한 데이터, 제어명령이 네트워크(또는 통신망)을 통하여 적어도 하나의 주체에서 다른 적어도 하나의 주체로 단방향 또는 쌍방향으로 송수신되는 것을 의미할 수 있다.
여기에서, 주체는, 건물(1000), 클라우드 서버(20), 로봇(R), 설비 인프라(200) 등이 될 수 있다.
나아가, 설비 인프라(200)는 도 2 및 도 3과 함께 살펴본 다양한 설비들(도면부호 201 내지 213 참조) 각각 및 이들을 제어하는 제어 시스템(201a, 202a, 203a, 204a, …) 중 적어도 하나를 포함할 수 있다.
건물(1000)을 주행하는 로봇(R)은 네트워크(40)를 통하여, 클라우드 서버(20)와 통신하도록 이루어지며, 클라우드 서버(20)와의 제어 하에 건물(1000) 내에서 서비스를 제공할 수 있다.
보다 구체적으로, 건물(1000)은 건물(1000)에 구비된 다양한 설비들과 통신하거나, 설비들을 직접적으로 제어하기 위한 건물 시스템(1000a)을 포함할 수 있다. 도 4에 도시된 것과 같이, 건물 시스템(1000a)은 통신부(110), 센싱부(120), 출력부(130), 저장부(140) 및 제어부(150)를 포함할 수 있다.
통신부(110)는 건물(1000) 내에서 유선 통신망 및 무선 통신망 중 적어도 하나를 형성함으로써, i)클라우드 서버(20)와 로봇(R) 사이, ii)클라우드 서버(20)와 건물(1000) 사이, iii)클라우드 서버(20)와 설비 인프라(200) 사이, iv)설비 인프라(200)와 로봇(R) 사이, v)설비 인프라(200)와 건물(1000) 사이를 연결할 수 있다. 즉, 통신부(110)는 서로 다른 주체 간에 통신의 매개체 역할을 수행할 수 있다. 이러한 통신부(110)는 기지국, 공유기 등으로도 명명될 수 있으며, 통신부(110)는 건물(1000) 내에서, 로봇(R), 클라우드 서버(20), 설비 인프라(200)가 상호 통신할 수 있도록 통신망 또는 네트워크를 형성할 수 있다.
한편, 본 명세서에서, 건물(1000)과 통신망을 통해 연결된다고 함은, 건물 시스템(1000a)에 포함된 구성요소 중 적어도 하나와 연결됨을 의미할 수 있다.
도 5에 도시된 것과 같이, 건물(1000)에 배치되는 복수의 로봇들(R)은 통신부(110)를 통해 형성되는 유선 통신망 및 무선 통신망 중 적어도 하나를 통하여, 클라우드 서버(20)와 통신을 수행함으로써, 클라우드 서버(20)에 의해 원격 제어되도록 이루어질 수 있다. 이러한 유선 통신망 또는 무선 통신망과 같은 통신망은 네트워크(40)라고 이해되어질 수 있다.
이와 같이, 건물(1000), 클라우드 서버(20), 로봇(R) 및 설비 인프라(200)는 건물(1000)내에 형성되는 통신망에 근거하여 네트워크(40)를 형성할 수 있다. 로봇(R)은 이러한 네트워크에 기반하여, 클라우드 서버(20)의 제어 하에 건물(1000)내에 구비된 다양한 설비를 이용하여, 할당된 임무에 해당하는 서비스를 제공할 수 있다.
한편, 설비 인프라(200)는 도 2 및 도 3과 함께 살펴본 다양한 설비들(도면부호 201 내지 213 참조) 각각 및 이들을 제어하는 제어 시스템(201a, 202a, 203a, 204a, …) 중 적어도 하나를 포함할 수 있다(이러한 제어 시스템은 “제어 서버”로도 명명될 수 있다).
도 4에 도시된 것과 같이, 서로 다른 종류의 설비들은 고유의 제어 시스템을 구비할 수 있다. 예를 들어, 로봇 통로(또는 로봇 전용 통로, 로봇 도로, 로봇 전용 도로, 201, 202, 203)의 경우, 로봇 통로(201, 202, 203)를 각각 독립적으로 제어하기 위한 제어 시스템(201a, 202a, 203a)이 존재하고, 엘리베이터(또는 로봇 전용 엘리베이터, 204)의 경우, 엘리베이터(204)를 제어하기 위한 제어 시스템(204)이 존재할 수 있다.
이러한, 설비들을 제어하기 위한 고유의 제어 시스템들은 클라우드 서버(20), 로봇(R), 건물(1000) 중 적어도 하나와 통신하여, 로봇(R)이 설비를 이용하도록 각각의 설비에 대한 적절한 제어를 수행할 수 있다.
한편, 각각의 설비 제어 시스템(201a, 202a, 203a, 204a, …)에 포함된 센싱부(201b, 202b, 203b, 204b, …)는, 설비 자체에 구비되어, 설비와 관련된 다양한 정보를 센싱하도록 이루어질 수 있다.
나아가, 각각의 설비 제어 시스템(201a, 202a, 203a, 204a, …)에 포함된 제어부(201c, 202c, 203c, 204c, …)는 각각의 설비의 구동을 위한 제어를 수행하며, 클라우드 서버(20)와의 통신을 통하여, 로봇(R)이 설비를 이용하도록 적절한 제어를 수행할 수 있다. 예를 들어, 엘리베이터(204)의 제어 시스템(204b)은, 클라우드 서버(20)와의 통신을 통해, 로봇(R)이 엘리베이터(204)에 탑승하도록 로봇(R)이 위치한 층에, 엘리베이터(204)가 정차하도록 엘리베이터(204)를 제어할 수 있다.
각각의 설비 제어 시스템(201a, 202a, 203a, 204a, …)에 포함된 제어부(201c, 202c, 203c, 204c, …) 중 적어도 일부는 각각의 설비(201, 202, 203, 204, …)와 함께 건물(1000)내에 위치하거나, 건물(1000)의 외부에 위치할 수 있다.
나아가, 본 발명에 따른 건물(1000)에 포함된 설비들 중 적어도 일부는, 클라우드 서버(20)에 의해 제어되거나, 건물(1000)의 제어부(150)에 의하여 제어되는 것 또한 가능하다. 이 경우, 설비는 별도의 설비 제어 시스템을 구비하지 않을 수 있다.
이하의 설명에서는 각각의 설비가 고유의 제어 시스템을 구비하는 것을 예를 들어 설명하도록 하나, 위에서 언급한 것과 같이, 설비를 제어하기 위한 제어 시스템의 역할은 클라우드 서버(20) 또는 건물(1000)의 제어부(150)에 의해 대체될 수 있음은 물론이다. 이 경우, 본 명세서에서 설명되는 설비 제어 시스템의 제어부(201c, 202c, 203c, 204c, …)의 용어는, 클라우드 서버(20) 또는 제어부(150, 또는 건물의 제어부(150))의 용어로 대체되어 표현될 수 있음은 물론이다.
한편, 도 4에서 각각의 설비 제어 시스템(201a, 202a, 203a, 204a, …)의 구성요소들은 일 예에 대한 것으로서, 각각의 설비 특성에 따라 다양한 구성요소들이 추가되거나, 제외될 수 있다.
이와 같이, 본 발명에서는 로봇(R), 클라우드 서버(20) 및 설비 제어 시스템(201a, 202a, 203a, 204a, …)이 설비 인프라를 이용하여 건물(1000) 내에서 다양한 서비스를 제공한다.
이 경우에, 로봇(R)은 주로 건물 내를 주행하여 다양한 서비스를 제공하게 된다. 이를 위하여, 로봇(R)은 바디부, 구동부, 센싱부, 통신부, 인터페이스부 및 전원공급부 중 적어도 하나를 구비할 수 있다.
바디부는 외관을 이루는 케이스(케이싱, 하우징, 커버 등)를 포함한다. 본 실시예에서, 케이스는 복수의 파트로 구분될 수 있으며, 케이스에 의하여 형성된 공간에는 각종 전자부품들이 내장된다. 이 경우에, 바디부는 본 발명에서 예시하는 다양한 서비스에 따라 서로 다른 형태로 이루어질 수 있다. 예를 들어, 배송 서비스를 제공하는 로봇의 경우에, 바디부의 상부에 물건을 보관하는 수용함이 구비될 수 있다. 다른 예로서, 청소 서비스를 제공하는 로봇의 경우에 바디부의 하부에 진공을 이용하여 먼지를 흡입하는 흡입구가 구비될 수 있다.
구동부는 클라우드 서버(20)에서 전송하는 제어 명령에 따른 특정 동작을 수행하도록 이루어진다.
구동부는 주행과 관련하여 로봇의 바디부가 특정 공간 내를 이동할 수 있는 수단을 제공한다. 보다 구체적으로, 구동부는 모터 및 복수의 바퀴를 포함하며, 이들이 조합되어, 로봇(R)을 주행, 방향 전환, 회전시키는 기능을 수행한다. 다른 예로서, 구동부는 주행 외의 다른 동작, 예를 들어 픽업 등의 수행을 위하여 엔드 이펙터, 매니퓰레이터, 액추에이터 중 적어도 하나를 구비할 수 있다.
센싱부는 로봇 내 정보(특히, 로봇의 구동상태), 로봇을 둘러싼 주변 환경 정보, 로봇의 위치 정보 및 사용자 정보 중 적어도 하나를 센싱하기 위한 하나 이상의 센서를 포함할 수 있다.
예를 들어, 센싱부는 카메라(이미지 센서), 근접 센서, 적외선 센서, 레이저 스캐너(라이다 센서), RGBD 센서, 지자기 센서, 초음파 센서, 관성 센서, UWB 센서 등을 구비할 수 있다.
로봇의 통신부는 로봇(R)과 건물의 통신부 사이, 로봇(R)과 다른 로봇의 사이, 또는 로봇(R)과 설비의 제어 시스템의 사이에서 무선 통신을 수행하기 위하여, 로봇에서 무선 신호를 송수신하도록 이루어진다. 이러한 예로서, 통신부는 무선 인터넷 모듈, 근거리 통신 모듈, 위치정보 모듈 등을 구비할 수 있다.
인터페이스부는 로봇(R)을 외부기기와 연결시킬 수 있는 통로로서 구비될 수 있다. 예를 들어, 상기 인터페이스부는 단자(충전단자, 접속단자, 전원단자), 포트 또는 커넥터 등이 될 수 있다. 전원공급부는 외부의 전원, 내부의 전원을 인가받아 로봇(R)에 포함된 각 구성요소들에 전원을 공급하는 장치가 될 수 있다. 다른 예로서, 전원공급부는 로봇(R)의 내부에서 전기에너지를 생성하여 각 구성요소에 공급하는 장치가 될 수 있다.
이상에서, 로봇(R)은 주로 건물 내를 주행하는 것을 기준으로 설명하였으나, 본 발명은 반드시 이에 한정되는 것은 아니다. 예를 들어, 본 발명의 로봇은 드론 등과 같이 건물 내를 비행하는 로봇의 형태도 가능하다. 보다 구체적으로, 안내 서비스를 제공하는 로봇이 건물 내에서 사람의 주변을 비행하면서 사람에게 건물에 대한 안내를 제공할 수 있다.
한편, 본 발명의 로봇의 전반적인 동작은 클라우드 서버(20)에 의하여 제어된다. 이에 더하여, 로봇은 클라우드 서버(20)의 하위 제어기로서, 제어부를 별도로 구비할 수 있다. 예를 들어, 로봇의 제어부는 클라우드 서버(20)로부터 주행에 대한 제어 명령을 수신하여 로봇의 구동부를 제어한다. 이 경우에, 제어부는 로봇의 센싱부에서 센싱한 데이터를 이용하여, 모터에 인가할 토크 또는 전류를 계산할 수 있다. 계산된 결과를 이용하여 위치 제어기, 속도 제어기, 전류 제어기 등에 의하여 모터 등을 구동하게 되며, 이를 통하여 클라우드 서버(20)의 제어명령을 로봇이 수행하게 된다.
한편, 본 발명에서 건물(1000)은 건물(1000)에 구비된 다양한 설비들과 통신하거나, 설비들을 직접적으로 제어하기 위한 건물 시스템(1000a)을 포함할 수 있다. 도 4 및 도 5에 도시된 것과 같이, 건물 시스템(1000a)은 통신부(110), 센싱부(120), 출력부(130), 저장부(140) 및 제어부(150) 중 적어도 하나를 포함할 수 있다.
통신부(110)는 건물(1000) 내에서 유선 통신망 및 무선 통신망 중 적어도 하나를 형성함으로써, i)클라우드 서버(20)와 로봇(R) 사이, ii)클라우드 서버(20)와 건물(1000) 사이, iii)클라우드 서버(20)와 설비 인프라(200) 사이, iv)설비 인프라(200)와 로봇(R) 사이, v)설비 인프라(200)와 건물(1000) 사이를 연결할 수 있다. 즉, 통신부(110)는 서로 다른 주체 간에 통신의 매개체 역할을 수행할 수 있다.
도 5 및 도 6에 도시된 것과 같이, 통신부(110)는 이동통신 모듈(111), 유선 인터넷 모듈(112), 무선 인터넷 모듈(113) 및 근거리 통신 모듈(114) 중 적어도 하나를 포함하도록 이루어질 수 있다.
통신부(110)는 위에서 열거된 통신 모듈들에 근거하여, 다양한 통신 방식을 지원할 수 있다.
예를 들어, 이동 통신 모듈(111)은, 이동 통신(Mobile Communications)을 위한 기술표준들 또는 통신방식(예를 들어, 5G, 4G, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 건물 시스템(1000a), 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나와 무선 신호를 송수신하도록 이루어질 수 있다. 이 때에, 보다 구체적인 예로서, 로봇(R)은 전술한 로봇(R)의 통신부를 이용하여 이동 통신 모듈(111)과 무선 신호를 송수신할 수 있다.
다음으로, 유선 인터넷 모듈(112)은 유선 방식으로 통신을 제공하는 방식으로서, 물리적인 통신선을 매개체로 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나와 신호를 송수신 하도록 이루어질 수 있다.
나아가, 무선 인터넷 모듈(113)은 이동 통신 모듈(111)을 포함하는 개념으로서, 무선 인터넷 접속이 가능한 모듈을 의미할 수 있다. 무선 인터넷 모듈(113)은 건물(1000) 내에 배치되어, 무선 인터넷 기술들에 따른 통신망에서 건물 시스템(1000a), 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나와 무선 신호를 송수신하도록 이루어진다.
무선 인터넷 기술은 매우 다양할 수 있으며, 앞서 살펴본 이동 통신 모듈(111)의 통신 기술뿐만 아니라, WLAN(Wireless LAN), Wi-Fi, Wi-Fi Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access) 등이 있다. 나아가, 본 발명에서는, 상기 무선 인터넷 모듈(113)은 상기에서 나열되지 않은 인터넷 기술까지 포함한 범위에서 적어도 하나의 무선 인터넷 기술에 따라 데이터를 송수신하게 된다.
다음으로 근거리 통신 모듈(114)은 근거리 통신(Short range communication)을 위한 것으로서, 블루투스(Bluetooth™), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi, Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여, 건물 시스템(1000a), 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나와 근거리 통신을 수행할 수 있다.
통신부(110)는 위에서 살펴본 통신 모듈들 중 적어도 하나를 포함할 수 있으며, 이러한 통신 모듈들은 건물(1000) 내부의 다양한 공간에 배치되어, 통신망을 형성할 수 있다. 이러한 통신망을 통해, i)클라우드 서버(20)와 로봇(R), ii)클라우드 서버(20)와 건물(1000), iii)클라우드 서버(20)와 설비 인프라(200, iv)설비 인프라(200)와 로봇(R), v)설비 인프라(200)와 건물(1000)은 상호 통신하도록 이루어질 수 있다.
다음으로, 건물(1000)은 센싱부(120)를 포함할 수 있으며, 이러한 센싱부(120)는 다양한 센서들을 포함하도록 이루어질 수 있다. 건물(1000)의 센싱부(120)를 통해 센싱된 정보 중 적어도 일부는, 통신부(110)를 통해 형성되는 통신망을 통해, 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나로 전송될 수 있다. 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나는, 센싱부(120)를 통해 센싱된 정보를 이용하여, 로봇(R)을 제어하거나 설비 인프라(200)를 제어할 수 있다.
센싱부(120)에 포함된 센서들의 종류는 매우 다양할 수 있다. 센싱부(120)는 건물(1000)에 구비되어, 건물(1000)에 대한 다양한 정보들을 센싱하도록 이루어질 수 있다. 센싱부(120)에 의해 센싱되는 정보는, 건물(1000)을 주행하는 로봇(R), 건물(1000)에 위치한 사람, 장애물, 등에 대한 정보일 수 있으며, 건물과 관련된 다양한 환경 정보(예를 들어, 온도, 습도 등)를 포함할 수 있다.
도 5에 도시된 것과 같이, 센싱부(120)는 이미지 센서(121), 마이크(122), 바이오 센서(123), 근접센서(124), 조도센서(125), 적외선 센서(126), 온도 센서(127) 및 습도 센서(128) 중 적어도 하나를 포함할 수 있다.
여기에서, 이미지 센서(121)는 카메라에 해당할 수 있다. 도 3에서 살펴본 것과 같이, 건물(1000)에는 이미지 센서(121)에 해당하는 카메라가 배치될 수 있다. 본 명세서에서는 카메라에 대하여 이미지 센서(121)와 동일한 도면 부호 “121”를 부여하기로 한다.
한편, 건물(1000)에 배치되는 카메라(121)의 수는 그 제한이 없다. 건물(1000)에 배치된 카메라(121)의 종류는 다양할 수 있으며, 일 예로서, 건물(1000)에 배치된 카메라(121)는 CCTV(closed circuit television)일 수 있다. 한편, 카메라(121)가 건물(1000)에 배치되었다 함은, 건물(1000)의 실내 공간(10)에 카메라(121)가 배치됨을 의미할 수 있다.
다음으로, 마이크(122)는 건물(1000)에서 발생하는 다양한 소리 정보를 센싱하도록 이루어질 수 있다.
바이오 센서(123)는 생체 정보를 센싱하기 위한 것으로서, 건물(1000)에 위치한 사람 또는 동물에 대한 생체 정보(예를 들어, 지문 정보, 얼굴 정보, 홍채 정보 등)를 센싱할 수 있다.
근접 센서(124)는 근접 센서(124)에 대해 접근하거나 근접 센서(124) 주변에 위치한 대상(로봇 또는 사람 등)을 센싱하도록 이루어질 수 있다.
나아가, 조도 센서(125)는 조도 센서(125) 센서 주변의 조도를 센싱하도록 이루어지며, 적외선 센서(126)는 LED가 내장되어 이를 이용해 어두운 실내나 야간에 건물(1000)에 대한 촬영을 수행할 수 있다.
나아가, 온도 센서(127)는 온도 센서(127) 주변의 온도를 센싱하며, 습도 센서(128)는 습도 센서(128) 주변의 온도를 센싱할 수 있다.
한편, 본 발명에서 센싱부(120)를 구성하는 센서의 종류에는 특별한 제한이 없으며, 각각의 센서에 의해 정의되는 기능이 구현되기만 하면 족하다.
다음으로, 출력부(130)는 건물(1000)에서 사람 또는 로봇(R)에게, 시각적, 청각적 및 촉각적 정보 중 적어도 하나를 출력하기 위한 수단으로서, 디스플레이부(131), 음향 출력부(132) 및 조명부(133) 중 적어도 하나를 포함할 수 있다. 이러한 출력부(130)는 필요 또는 상황에 따라 건물(1000)의 실내 공간 상에 적절한 위치에 배치될 수 있다.
다음으로, 저장부(140)는 건물(1000), 로봇 및 설비 인프라 중 적어도 하나와 관련된 다양한 정보를 저장하도록 이루어질 수 있다. 본 발명에서 저장부(140)는 건물(1000) 자체에 구비될 수 있다. 이와 다르게, 이와 다르게, 저장부(140)의 적어도 일부는, 클라우드 서버(20) 또는 외부 데이터베이스 중 적어도 하나를 의미할 수 있다. 즉, 저장부(140)는 본 발명에 따른 다양한 정보가 저장되는 공간이면 충분하며, 물리적인 공간에 대한 제약은 없는 것으로 이해될 수 있다.
다음으로 제어부(150)는 건물(1000)에 대한 전반적인 제어를 수행하는 수단으로서, 통신부(110), 센싱부(120), 출력부(130) 및 저장부(140) 중 적어도 하나를 제어할 수 있다. 제어부(150)는 클라우드 서버(20)와 연동하여, 로봇에 대한 제어를 수행할 수 있다. 나아가, 제어부(150)는 클라우드 서버(20)의 형태로 존재할 수 있다. 이 경우, 건물(1000)은 로봇(R)의 제어 수단인 클라우드 서버(20)에 의해 함께 제어될 수 있다, 이와 다르게, 건물(1000)을 제어하는 클라우드 서버는 로봇(R)을 제어하는 클라우드 서버(20)와 별개로 존재할 수 있다. 이 경우, 건물(1000)을 제어하는 클라우드 서버와 로봇(R)을 제어하는 클라우드 서버(20)는 상호 통신을 통하여, 로봇(R)에 의해 서비스 제공되도록 서로 연동하거나, 로봇의 이동, 기능 유지, 청결 유지 등을 위하여 서로 연동될 수 있다. 한편, 건물(1000)의 제어부는 “프로세서(processor)”로도 명명될 수 있으며, 프로세서는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 다양한 명령을 처리하도록 구성될 수 있다
이상에서 살펴본 것과 같이, 건물(1000), 로봇(R), 클라우드 서버(20) 및 설비 인프라(200)는 중 적어도 하나는 통신망을 기반으로 네트워크(40)를 형성하여, 건물(1000)내에서 로봇을 이용한 다양한 서비스가 제공되도록 이루어질 수 있다.
이상에서 살펴본 것과 같이, 본 발명에 따른 건물(1000)에서는, 로봇에 의해 다양한 서비스가 제공되도록, 로봇(R), 건물 내 구비되는 설비 인프라(200) 및 클라우드 서버(20)가 유기적으로 연결될 수 있다. 이러한 로봇(R), 설비 인프라(200) 및 클라우드 서버(20) 중 적어도 일부는 로봇 친화형 건물을 구축하기 위한 플랫폼 형태로 존재할 수 있다.
이하에서는, 위에서 살펴본 건물(1000), 건물 시스템(1000a), 설비 인프라(200), 클라우드 서버(20)의 내용을 참고하여, 로봇(R)이 설비 인프라(200)를 이용하는 과정에 대하여 보다 구체적으로 살펴본다. 이때, 로봇(R)은, 임무 수행(또는 서비스 제공), 주행, 충전, 청결 유지, 대기 등의 목적으로, 건물(1000)의 실내 공간(10)을 주행거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다.
이와 같이, 로봇(R)은 어떠한 “목적”에 근거하여, “목적”을 달성하기 위하여, 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다.
이때, 로봇이 달성해야할 목적은 다양한 원인에 근거하여 특정될 수 있다. 로봇이 달성해야 할 목적은, 제1 타입의 목적과 제2 타입의 목적이 존재할 수 있다.
여기에서, 제1 타입의 목적은 로봇이 로봇 본연의 임무를 수행하기 위한 것이고, 제2 타입의 목적은 로봇이 로봇 본연의 임무 외의 임무 또는 기능을 수행하기 위한 것일 수 있다.
즉, 제1 타입에 따른 로봇이 달성해야하는 목적은, 로봇 본연의 임무를 수행하기 위한 목적일 수 있다. 이러한 목적은, 로봇의 “임무(task)”라고도 이해되어질 수 있다.
예를 들어, 로봇이 서빙 서비스를 제공하는 로봇인 경우, 로봇은 서빙 서비스를 제공하기 위한 목적 또는 임무을 달성하기 위하여, 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다. 또한, 로봇이 길 안내 서비스를 제공하는 로봇인 경우, 로봇은 길 안내 서비스를 제공하기 위한 목적 또는 임무을 달성하기 위하여, 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다.
한편, 본 발명에 따른 건물에는 서로 다른 목적에 따른 운용되는 복수의 로봇이 위치할 수 있다. 즉, 건물에는 서로 다른 임무를 수행가능한 서로 다른 로봇들이 배치될 수 있으며, 이는 건물의 관리자, 건물에 입주한 다양한 주체들의 필요에 의하여, 건물에는 서로 다른 종류의 로봇들이 배치될 수 있다.
예를 들어, 건물에는 배송, 물류 작업, 안내, 통역, 주차지원, 보안, 방범, 경비, 치안, 청소, 방역, 소독, 세탁, 푸드(food) 제조, 음식 제조, 서빙, 화재 진압, 의료 지원 및 엔터테인먼트 서비스 중 적어도 하나의 서비스를 제공하는 로봇들이 배치될 수 있다. 로봇들이 제공하는 서비스는 위에서 열거된 예들 외에도 다양할 수 있다.
한편, 제2 타입의 목적은 로봇이 로봇 본연의 임무 외의 임무 또는 기능을 수행하기 위한 것으로서, 이는, 로봇 본연의 임무와 관련 없는 목적일 수 있다. 이러한 제2 타입의 목적은, 로봇이 로봇 본연의 임무를 수행하는 것과 직접적으로 연관되지는 않으나, 간접적으로 필요한 임무 또는 기능일 수 있다.
예를 들어, 로봇이 본연의 임무 수행을 위해서는, 동작에 필요한 충분한 전원이 필요하고, 로봇이 사람들에게 쾌적한 서비스를 제공하기 위해서는 청결을 유지해야 한다. 나아가, 복수의 로봇이 건물 내에서 효율적으로 운용되기 위해서는, 때로는 일정한 공간에서 대기하는 상황이 존재할 수 있다.
이와 같이, 본 발명에서 로봇은 제2 타입의 목적을 달성하기 위하여, 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다.
예를 들어, 로봇은 충전 기능에 따른 목적을 달성하기 위하여, 충전 설비 인프라를 이용할 수 있고, 세척 기능에 따른 목적을 달성하기 위하여 세척 설비 인프라를 이용할 수 있다.
이와 같이, 본 발명에서 로봇은 어떠한 목적을 달성하기 위하여, 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다.
한편, 클라우드 서버(20)는 데이터베이스(database) 상에 저장된 건물에 위치한 복수의 로봇들 각각에 대응되는 정보에 근거하여, 건물 내 위치한 로봇들 각각에 대한 적절한 제어를 수행할 수 있다.
한편, 데이터베이스 상에는 건물 내 위치한 복수의 로봇 각각에 대한 다양한 정보가 저장될 수 있으며, 로봇(R)에 대한 정보는 매우 다양할 수 있다. 일 예로서, i)공간(10)에 배치된 로봇(R)을 식별하기 위한 식별 정보(예를 들어, 일련번호, TAG 정보, QR코드 정보 등), ii)로봇(R)에 부여된 임무 정보(예를 들어, 임무의 종류, 임무에 따른 동작, 임무의 대상이 되는 타겟 유저 정보, 임무 수행 장소, 임무 수행 예정 시간 등), iii)로봇(R)에 설정된 주행 경로 정보, iv)로봇(R)의 위치 정보, v)로봇(R)의 상태 정보(예를 들어, 전원 상태, 고장 유무, 세척 상태, 배터리 상태 등), vi)로봇(R)에 구비된 카메라로부터 수신된 영상 정보, vii) 로봇(R)의 동작과 관련된 동작 정보 등이 존재할 수 있다.
한편, 로봇들에 대한 적절한 제어는, 앞서 살펴본 제1 타입의 목적 또는 제2 타입의 목적에 따라 로봇을 운용하는 제어와 관련된 것일 수 있다.
여기에서, 로봇의 운용은 로봇이 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용하도록 하는 제어를 의미할 수 있다.
로봇의 이동은 로봇의 주행으로 지칭될 수 있으며, 따라서 본 발명에서 이동 경로와 주행 경로는 혼용되어 사용될 수 있다.
클라우드 서버(20)는 데이터베이스에 저장된 로봇 각각에 대한 정보에 근거하여, 로봇들 각각의 용도(또는 본연의 임무)에 따라 로봇들에게 적절한 임무를 할당하고, 할당된 임무가 수행되도록 로봇들에 대한 제어를 수행할 수 있다. 이때 할당되는 임무는 앞서 살펴본 제1 타입의 목적을 달성하기 위한 임무일 수 있다.
나아가, 클라우드 서버(20)는 데이터베이스에 저장된 로봇 각각에 대한 정보에 근거하여, 로봇들 각각에 제2 타입의 목적을 달성하기 위한 제어를 수행할 수 있다.
이때, 클라우드 서버(20)로부터 제2 타입의 목적을 달성하기 위한 제어명령을 수신한 로봇은, 제어 명령에 근거하여, 충전 설비 인프라로 이동하거나, 세척 설비 인프라 등으로 이동하여, 제2 타입의 목적을 달성할 수 있다.
한편, 이하에서는, 제1 타입 또는 제2 타입의 목적을 구분하지 않고, “목적” 또는 “임무”의 용어를 사용하도록 한다. 이하에서 설명되는 목적은, 제1 타입의 목적 또는 제2 타입의 목적 중 어느 하나일 수 있다.
마찬가지로, 이하에서 설명되는 임무 역시, 제1 타입의 목적을 달성하기 위한 임무 또는 제2 타입의 목적을 달성하기 위한 임무일 수 있다.
예를 들어, 서빙 서비스 제공이 가능한 로봇이 존재하고, 서빙할 대상(타겟 유저(target user))이 존재하는 경우, 클라우드 서버(20)는 로봇이 타겟 유저에게 서빙에 대응하는 임무를 수행하도록, 로봇에 대한 제어를 수행할 수 있다.
또 다른 예를 들어, 충전이 필요한 로봇이 존재하는 경우, 클라우드 서버(20)는 로봇이 충전에 해당하는 임무를 수행하도록, 충전 설비 인프라로 로봇이 이동하도록 하는 제어를 수행할 수 있다.
이에, 이하에서는, 제1 타입의 목적 또는 제2 타입의 목적에 대한 구분 없이, 클라우드 서버(20)의 제어 하에, 로봇이 설비 인프라(200)를 이용하여 목적 또는 임무을 수행하는 방법에 대하여 보다 구체적으로 살펴본다. 한편, 본 명세서에서 클라우드 서버(20)는 임무를 수행하기 위하여 클라우드 서버(20)에 의해 제어 되는 로봇은 “타겟 로봇”으로 명명되는 것 또한 가능하다.
클라우드서 서버(20)는 요청 또는 자체적인 판단하에, 임무를 수행할 적어도 하나의 로봇을 특정할 수 있다.
여기에서, 요청은 다양한 주체로부터 수신되는 것이 가능하다. 예를 들어, 클라우드 서버는 건물에 위치한 방문객, 관리자, 입주민, 근로자 등과 같은 다양한 주체로부터 다양한 방식(예를 들어, 전자기기를 통한 사용자 입력, 제스처 방식의 사용자 입력)으로 요청을 수신할 수 있다. 여기에서, 요청은 로봇에 의해 특정 서비스(또는 특정 임무)가 제공되도록 하는 서비스 요청일 수 있다.
클라우드 서버(20)는 이러한 요청에 기반하여, 건물(1000)내 위치한 복수의 로봇 중 해당 서비스를 수행 가능한 로봇을 특정할 수 있다. 클라우드 서버(20)는 i)로봇이 수행 가능한 서비스 종류, ii)로봇이 기 할당받은 임무, iii)로봇의 현재 위치, iv)로봇의 상태(ex: 전원 상태, 청결 상태, 배터리 상태 등)에 근거하여, 상기 요청에 대응 가능한 로봇을 특정할 수 있다. 앞서 살펴본 것과 같이, 데이터베이스 상에는 로봇 각각에 대한 다양한 정보 존재하며, 클라우드 서버(20)는 이러한 데이터베이스에 근거하여, 상기 요청에 기반하여 임무를 수행할 로봇을 특정할 수 있다.
나아가, 클라우드 서버(20)는 자체적인 판단에 근거하여, 임무를 수행할 적어도 하나의 로봇을 특정할 수 있다.
여기에서, 클라우드 서버(20)는 다양한 원인에 근거하여 자체적인 판단을 수행할 수 있다.
일 예로서, 클라우드 서버(20)는, 건물(1000)내에 존재하는 특정 사용자 또는 특정 공간에 서비스의 제공이 필요한지를 판단할 수 있다. 클라우드 서버(20)는 건물(1000)에 존재하는 센싱부(120, 도 4 내지 도 6 참조), 설비 인프라(200)에 포함된 센싱부 및 로봇에 구비된 센싱부 중 적어도 하나로부터 센싱 및 수신된 정보에 기반하여, 서비스의 제공이 필요한 특정 대상을 추출할 수 있다.
여기에서, 특정 대상은, 사람, 공간 또는 객체 중 적어도 하나를 포함할 수 있다. 객체는, 건물(1000)내 위치하는 시설물, 물체 등을 의미할 수 있다. 그리고, 클라우드 서버(20)는 추출된 특정 대상에게 필요한 서비스의 종류를 특정하고, 특정 대상에게 특정 서비스가 제공되도록 로봇을 제어할 수 있다.
이를 위하여, 클라우드 서버(20)는 특정 대상에게 특정 서비스를 제공할 적어도 하나의 로봇을 특정할 수 있다.
클라우드 서버(20)는 다양한 판단 알고리즘에 근거하여, 서비스의 제공이 필요한 대상을 판단할 수 있다. 예를 들어, 클라우드 서버(20)는 건물(1000)에 존재하는 센싱부(120, 도 4 내지 도 6 참조), 설비 인프라(200)에 포함된 센싱부 및 로봇에 구비된 센싱부 중 적어도 하나로부터 센싱 및 수신된 정보에 근거하여, 길 안내, 서빙, 계단 이동 등과 같이 서비스의 종류를 특정할 수 있다. 그리고, 클라우드 서버(20)는 해당 서비스가 필요한 대상을 특정할 수 있다. 나아가, 클라우드 서버(20)는 로봇에 의한 서비스가 제공이 제공되도록, 특정된 서비스의 제공이 가능한 로봇을 특정할 수 있다.
나아가, 클라우드 서버(20)는 다양한 판단 알고리즘에 근거하여, 서비스의 제공이 필요한 특정 공간을 판단할 수 있다. 예를 들어, 클라우드 서버(20)는 건물(1000)에 존재하는 센싱부(120, 도 4 내지 도 6 참조), 설비 인프라(200)에 포함된 센싱부 및 로봇에 구비된 센싱부 중 적어도 하나로부터 센싱 및 수신된 정보에 근거하여, 배송의 타겟 유저, 안내가 필요한 게스트, 오염된 공간, 오염된 시설물, 화재 구역 등과 같이 서비스의 제공이 필요한 특정 공간 또는 객체를 추출하고, 해당 특정 공간 또는 객체에 로봇에 의한 서비스가 제공되도록, 해당 서비스 제공이 가능한 로봇을 특정할 수 있다.
이와 같이, 특정 임무(또는 서비스)를 수행할 로봇이 특정되면, 클라우드 서버(20)는 로봇에 임무를 할당하고, 로봇이 임무를 수행하기 위하여 필요한 일련의 제어를 수행할 수 있다.
이때, 일련의 제어는 i)로봇의 이동 경로 설정, ii)임무가 수행될 목적지까지 이동하는데 이용되어야 할 설비 인프라 특정, iii)특정된 설비 인프라와의 통신, iv)특정된 설비 인프라에 대한 제어, v)임무를 수행하는 로봇 모니터링, vi)로봇의 주행에 대한 평가, vii)로봇의 임무 수행 완료여부 모니터링 중 적어도 하나를 포함할 수 있다.
클라우드 서버(20)는 로봇의 임무가 수행될 목적지를 특정하고, 로봇이 해당 목적지에 도달하기 위한 이동 경로를 설정할 수 있다. 로봇(R)은 클라우드 서버(20)에 의해 이동 경로가 설정되면, 임무의 수행을 위하여, 해당 목적지까지 이동하도록 제어될 수 있다.
한편, 클라우드 서버(20)는 로봇이 임무 수행을 시작(개시)하는 위치(이하, “임무 수행 시작 위치”로 명명함)부터 목적지까지 도달하기 위한 이동 경로를 설정할 수 있다. 여기에서, 로봇이 임무 수행을 시작하는 위치는 로봇의 현재 위치이거나, 로봇이 임무 수행을 시작하는 시점에서의 로봇의 위치일 수 있다.
클라우드 서버(20)는, 건물(1000)의 실내 공간(10)에 대응되는 지도(map, 또는 지도 정보))에 근거하여, 임무를 수행할 로봇의 이동 경로를 생성할 수 있다.
여기에서, 지도는, 건물의 실내 공간을 구성하는 복수의 층(10a, 10b, 10c, …) 각각의 공간에 대한 지도 정보를 포함할 수 있다.
나아가, 이동 경로는, 임무 수행 시작 위치로부터, 임무가 수행되는 목적지까지의 이동 경로 일 수 있다.
본 발명에서는 이러한 지도 정보와 이동 경로에 대하여, 실내 공간에 대한 것으로 설명하나, 본 발명은 반드시 이에 한정되는 것은 아니다. 예를 들어, 지도 정보는 실외 공간의 정보를 포함할 수 있으며, 이동 경로는 실내 공간에서 실외 공간까지 이어지는 경로가 될 수 있다.
도 8에 도시된 것과 같이, 건물(1000)의 실내 공간(10)은 서로 다른 복수의 층들(10a, 10b, 10c, 10d, …)로 구성될 수 있으며, 임무 수행 시작 위치와 목적지는 서로 동일한 층에 위치하거나, 서로 다른 층에 위치할 수 있다.
클라우드 서버(20)는 복수의 층들(10a, 10b, 10c, 10d, …)에 대한 지도 정보를 이용하여, 건물(1000) 내에서 서비스를 수행할 로봇의 이동 경로를 생성할 수 있다.
클라우드 서버(20)는 건물(1000)에 배치된 설비 인프라(복수의 설비) 중 로봇이 목적지까지 이동하기 위하여 이용 또는 통과해야 하는 적어도 하나의 설비를 특정할 수 있다.
예를 들어, 클라우드 서버(20)는 로봇이 1층(10a)에서 2층(10b)으로 이동해야 하는 경우, 로봇의 층간 이동을 보조할 적어도 하나의 설비(204, 205)를 특정하고, 특정된 설비가 위치한 지점을 포함하여 이동 경로를 생성할 수 있다. 여기에서, 로봇의 층간 이동을 보조하는 설비는 로봇 전용 엘리베이터(204), 공용 엘리베이터(213), 에스컬레이터(205) 중 적어도 하나일 수 있다. 이 밖에도, 로봇의 층간 이동을 보조하는 설비는 다양한 종류가 존재할 수 있다.
일 예로서, 클라우드 서버(20)는 실내 공간(10)의 복수의 층들(10a, 10b, 10c, …) 중 목적지에 해당하는 특정 층을 확인하고, 로봇의 임무 수행 시작 위치(ex: 서비스에 대응되는 임무를 개시하는 시점에서의 로봇의 위치)를 기준으로, 로봇이 서비스를 수행하기 위하여 층간 이동이 필요한지 판단할 수 있다.
그리고, 클라우드 서버(20)는 판단 결과에 근거하여, 상기 이동 경로 상에 로봇의 층간 이동을 보조하는 설비(수단)를 포함할 수 있다. 이때, 로봇의 층간 이동을 보조하는 설비는 로봇 전용 엘리베이터(204), 공용 엘리베이터(213), 에스컬레이터(205) 중 적어도 하나일 수 있다. 예를 들어, 클라우드 서버(20)는 로봇의 층간 이동이 필요한 경우, 로봇의 층간 이동을 보조하는 설비가 로봇의 이동 경로 상에 포함되도록, 이동 경로를 생성할 수 있다.
또 다른 예를 들어, 클라우드 서버(20)는 로봇의 이동 경로 상에 로봇 전용 통로(201, 202)가 위치하는 경우, 로봇 전용 통로(201, 202)를 이용하여 로봇이 이동하도록, 로봇 전용 통로(201, 202)가 위치한 지점을 포함하여 이동 경로를 생성할 수 있다. 앞서 도 3과 함께 살펴본 것과 같이, 로봇 전용 통로는 제1 전용 통로(또는 제1 타입 통로, 201) 및 제2 전용 통로(또는 제2 타입 통로, 202) 중 적어도 하나로 이루어질 수 있다. 제1 전용 통로 및 제2 전용 통로(201, 202)는 동일 층에 함께 구비되거나, 서로 다른 층에 구비될 수 있다. 제1 전용 통로(201) 및 상기 제2 전용 통로(202)는 건물의 바닥면을 기준으로 서로 다른 높이를 가질 수 있다.
한편, 클라우드 서버(20)는 로봇이 이용하는 로봇 전용 통로의 타입 및 로봇 전용 통로 주변의 혼잡도에 근거하여, 로봇 전용 통로 상에서의 로봇의 주행 특성이 달라지도록 제어할 수 있다. 클라우드 서버(20)는 도 3 및 도 8에 도시된 것과 같이, 제2 전용 통로를 로봇이 주행하는 경우, 로봇 전용 통로 주변의 혼잡도에 근거하여, 로봇의 주행 특성이 달라지도록 할 수 있다. 제2 전용 통로는, 사람 또는 동물이 접근 가능한 통로이기 때문에, 안전성 및 이동 효율성을 함께 고려하기 위함이다.
여기에서, 로봇의 주행 특성은, 로봇의 주행 속도와 관련될 수 있다. 나아가, 혼잡도는, 건물(1000)에 배치된 카메라(또는 이미지 센서, 121) 및 로봇에 배치된 카메라 중 적어도 하나로부터 수신되는 영상에 근거하여 산출될 수 있다. 클라우드 서버(20)는 이러한 영상에 근거하여, 로봇이 위치하는 지점 및 진행방향 측의 로봇 전용 통로가 혼잡한 경우, 로봇의 주행 속도를 기 설정된 속도 이하(또는 미만)으로 제어할 수 있다.
이와 같이, 클라우드 서버(20)는 복수의 층들(10a, 10b, 10c, 10d, …)에 대한 지도 정보를 이용하여, 건물(1000) 내에서 서비스를 수행할 로봇의 이동 경로를 생성하며, 이때, 건물(1000)에 배치된 설비 인프라(복수의 설비) 중 로봇이 목적지까지 이동하기 위하여 이용 또는 통과해야 하는 적어도 하나의 설비를 특정할 수 있다. 그리고, 특정된 적어도 하나의 설비가 이동 경로 상에 포함되도록 하는 이동 경로를 생성할 수 있다.
한편, 서비스를 수행하기 위하여 실내 공간(10)을 주행하는 로봇은 클라우드 서버(20)로부터 수신되는 이동 경로를 따라 상기 적어도 하나의 설비를 순차적으로 이용 또는 통과하며 목적지까지 주행을 수행할 수 있다.
한편, 로봇이 이용해야 하는 설비의 순서는, 클라우드 서버(20)의 제어 하에 결정될 수 있다. 나아가, 로봇이 이용해야 하는 설비의 순서는, 클라우드 서버(20)로부터 수신되는 이동 경로에 대한 정보에 포함될 수 있다.
한편, 도 7에 도시된 것과 같이, 건물(1000)에는 로봇이 전용하여 사용하는 로봇 전용 설비(201, 202, 204, 208, 209, 211)와 사람과 공동으로 사용하는 공용 설비(205, 206, 207, 213) 중 적어도 하나가 포함될 수 있다.
로봇이 전용하여 사용하는 로봇 전용 설비는, 로봇에 필요한 기능(ex: 충전 기능, 세척 기능, 대기 기능)을 제공하는 설비(208. 209)와 로봇의 이동에 이용되는 설비(201, 202, 204, 211)를 포함할 수 있다.
클라우드 서버(20)는, 로봇이 이동 경로를 생성함에 있어, 임무 수행 시작 위치로부터 목적지까지의 경로 상에, 로봇 전용 설비가 존재하는 경우, 로봇이 로봇 전용 설비를 이용하여 이동(또는 통과)하도록 하는 이동 경로를 생성할 수 있다. 즉, 클라우드 서버(20)는 로봇 전용 설비를 우선하여 이동 경로를 생성할 수 있다. 이는 로봇의 이동의 효율성을 높이기 위함이다. 예를 들어, 클라우드 서버(20)는 목적지까지의 이동 경로 상에 로봇 전용 엘리베이터(204)와 공용 엘리베이터(213)가 모두 존재하는 경우, 로봇 전용 엘리베이터(204)가 포함된 이동 경로를 생성할 수 있다.
위에서 살펴본 것과 같이, 본 발명에 따른 건물(1000)을 주행하는 로봇은, 건물(1000)에 구비된 다양한 설비를 이용하여, 임무 수행을 위하여 건물(1000)이 실내 공간을 주행할 수 있다.
클라우드 서버(20)는 로봇의 원활한 이동을 위하여, 로봇이 이용하는 또는 이용이 예정된 적어도 하나의 설비의 제어 시스템(또는 제어 서버)와 통신하도록 이루어질 수 있다. 앞서, 도 4와 함께 살펴본 것과 같이, 설비들을 제어하기 위한 고유의 제어 시스템들은 클라우드 서버(20), 로봇(R), 건물(1000) 중 적어도 하나와 통신하여, 로봇(R)이 설비를 이용하도록 각각의 설비에 대한 적절한 제어를 수행할 수 있다.
한편, 클라우드 서버(20)는 건물(1000) 내에서 로봇의 위치 정보를 확보해야 하는 니즈가 존재한다. 즉, 클라우드 서버(200은 실시간 또는 기 설정된 시간 간격으로 건물(1000)을 주행하는 로봇의 위치를 모니터링할 수 있다. 클라우드 서버(20)는 건물(1000)을 주행하는 복수의 로봇 모두에 대한 위치 정보를 모니터링하거나, 필요에 따라 선택적으로 특정 로봇에 대해서만 위치 정보를 모니터링할 수 있다. 모니터링 되는 로봇의 위치 정보는 로봇의 정보가 저장된 데이터베이스 상에 저장될 수 있으며, 로봇의 위치 정보는 시간의 흐름에 따라 연속적으로 업데이트될 수 있다.
건물(1000)에 위치한 로봇의 위치 정보를 추정하는 방법은 매우 다양할 수 있으며, 이하에서는 로봇의 위치 정보를 추정하는 실시 예에 대하여 살펴보도록 한다.
도 9 내지 도 11은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇의 위치를 추정하는 방법을 설명하기 위한 개념도들이다.
일 예로서, 도 9에 도시된 것과 같이, 본 발명에 따른 클라우드 서버(20)는 로봇(R)에 구비된 카메라(미도시됨)를 이용하여 공간(10)에 대한 영상을 수신하고, 수신된 영상으로부터 로봇의 위치를 추정하는 Visual Localization을 수행하도록 이루어진다. 이때, 카메라는 공간(10)에 대한 영상, 즉, 로봇(R) 주변에 대한 영상을 촬영(또는 센싱)하도록 이루어진다. 이하에서는, 설명의 편의를 위하여, 로봇(R)에 구비된 카메라를 이용하여 획득된 영상을 “로봇 영상”이라고 명명하기로 한다. 그리고, 공간(10)에 배치된 카메라를 통하여 획득된 영상을 “공간 영상”이라고 명명하기로 한다.
클라우드 서버(20)는 도 9의 (a)에 도시된 것과 같이, 로봇(R)에 구비된 카메라(미도시)를 통하여 로봇 영상(910)을 획득하도록 이루어진다. 그리고, 클라우드 서버(20)는 획득된 로봇 영상(910)을 이용하여, 로봇(R)의 현재 위치를 추정할 수 있다.
클라우드 서버(20)는 로봇 영상(910)과 데이터베이스에 저장된 지도 정보를 비교하여, 도 9의 (b)에 도시된 것과 같이, 로봇(R)의 현재 위치에 대응하는 위치 정보(예를 들어, “3층 A구역 (3, 1, 1)”)를 추출할 수 있다.
앞서 살펴본 것과 같이, 본 발명에서 공간(10)에 대한 지도는 사전에 공간(10)을 이동하는 적어도 하나의 로봇에 의해, SLAM(Simultaneous Localization and Mapping)에 기반하여 작성된 지도일 수 있다. 특히, 공간(10)에 대한 지도는, 영상 정보를 기반으로 생성된 지도일 수 있다.
즉, 공간(10)에 대한 지도는 vision(또는 visual)기반의 SLAM기술에 의하여 생성된 지도일 수 있다.
따라서, 클라우드 서버(20)는 로봇(R)에서 획득된 로봇 영상(910)에 대해 도 9의 (b)에 도시된 것과 같이 좌표 정보(예를 들어, (3층, A구역(3, 1,1,))를 특정할 수 있다. 이와 같이, 특정된 좌표 정보는 곧, 로봇(R)의 현재 위치 정보가 될 수 있다.
이때, 클라우드 서버(20)는, 로봇(R)에서 획득된 로봇 영상(910)과 vision(또는 visual)기반의 SLAM 기술에 의하여 생성된 지도를 비교함으로써, 로봇(R)의 현재 위치를 추정할 수 있다. 이 경우, 클라우드 서버(20)는 i)로봇 영상(910)과 기 생성된 지도를 구성하는 이미지들 간의 이미지 비교를 이용하여, 로봇 영상(910)과 가장 비슷한 이미지를 특정하고, ii)특정된 이미지에 매칭된 위치 정보를 획득하는 방식으로 로봇(R)의 위치 정보를 특정할 수 있다.
이와 같이, 클라우드 서버(20)는 도 9의 (a)에 도시된 것과 같이, 로봇(R)에서 로봇 영상(910)이 획득되면, 획득된 로봇 영상(910)을 이용하여, 로봇의 현재 위치를 특정할 수 있다. 앞서 살펴본 것과 같이, 클라우드 서버(20)는 데이터베이스에 기 저장된 지도 정보(예를 들어, “참조 맵”으로도 명명 가능)로부터, 상기 로봇 영상(910)에 대응되는 위치 정보(예를 들어, 좌표 정보)를 추출할 수 있다.
한편, 위의 설명에서는, 클라우드 서버(20)에서 로봇(R)의 위치를 추정하는 예에 대하여 설명하였으나, 앞서 살펴본 것과 같이, 로봇(R)의 위치 추정은 로봇(R) 자체에서 이루어질 수 있다. 즉, 로봇(R)은 로봇(R) 자체에서 수신되는 영상에 근거하여, 앞서 살펴본 방식으로 현재 위치를 추정할 수 있다. 그리고, 로봇(R)은, 추정된 위치 정보를 클라우드 서버(20)에 전송할 수 있다. 이 경우, 클라우드 서버(20)는 로봇으로부터 수신되는 위치 정보에 기반하여, 일련의 제어를 수행할 수 있다.
이와 같이, 로봇 영상(910)으로부터 로봇(R)의 위치 정보가 추출되면, 클라우드 서버(20)는 상기 위치 정보와 대응되는 실내 공간(10)에 배치된 적어도 하나의 카메라(121)를 특정할 수 있다. 클라우드 서버(20)는 데이터베이스에 저장된 카메라(121)와 관련된 매칭 정보로부터, 상기 위치 정보에 대응되는 실내 공간(10)에 배치된 카메라(121)를 특정할 수 있다.
이러한 영상들은, 로봇의 위치 추정 뿐만 아니라, 로봇에 대한 관제에도 활용될 수 있다. 예를 들어, 클라우드 서버(20)는, 로봇(R)의 관제를 위하여, 로봇(R) 자체에서 획득되는 로봇 영상(910) 및 로봇(R)이 위치한 공간에 배치된 카메라(121)로부터 획득된 영상을 관제 시스템의 디스플레이부에 함께 출력시킬 수 있다. 따라서, 건물(1000) 내에서 또는 외부에서 로봇(R)을 원격으로 관리 및 제어하는 관리자가, 로봇(R)에서 획득되는 로봇 영상(910) 뿐만 아니라, 로봇(R)이 위치한 공간에 대한 영상을 고려하여 로봇(R)에 대한 원격 제어를 수행하도록 할 수 있다.
다른 예로서, 실내 공간(10)을 주행하는 로봇의 위치 추정은, 도 10의 (a)에 도시된 것과 같이, 실내 공간(10)에 구비된 태그(1010)에 기반하여 이루어질 수 있다.
도 10을 참조하면, 태그(1010)에는 도 10의 (b)에 도시된 것과 같이, 태그(1010)가 부착된 지점에 대응되는 위치 정보가 매칭되어 존재할 수 있다. 즉, 건물(1000)의 실내 공간(10)의 서로 다른 복수의 지점에는 서로 다른 식별 정보를 갖는 태그(1010)들이 각각 구비될 수 있다. 태그 각각의 식별 정보 및 태그가 부착된 지점의 위치 정보는 서로 매칭되어, 데이터베이스 상에 존재할 수 있다.
나아가, 태그(1010)에는, 각각의 태그(1010)에 매칭된 위치 정보를 포함하도록 이루어질 수 있다.
로봇(R)은 로봇(R)에 구비된 센서를 이용하여, 공간(10)에 구비된 태그(1010)를 인식할 수 있다. 이러한 인식을 통해, 로봇(R)은 태그(1010)에 포함된 위치 정보를 추출함으로써, 로봇(R)의 현재 위치를 파악할 수 있다. 이러한 추출된 위치 정보는 통신부(110)를 통해, 로봇(R)에서 클라우드 서버(20)로 전송될 수 있다. 따라서, 클라우드 서버(20)는 태그를 센싱한 로봇(R)으로부터 수신된 위치 정보에 근거하여, 건물(20)을 주행하는 로봇들의 위치를 모니터링할 수 있다.
나아가, 로봇(R)은 인식된 태그(1010)의 식별 정보를, 클라우드 서버(20)로 전송할 수 있다. 클라우드 서버(20)는 데이터베이스로부터, 태그(1010)의 식별 정보에 매칭된 위치 정보를 추출하여, 건물(1000) 내에서 로봇의 위치를 모니터링할 수 있다.
한편, 위에서 설명한 태그(1010)의 용어는 다양하게 명명될 수 있다. 예를 들어, 이러한 태그(1010)는 QR코드, 바코드, 식별 표지 등으로 다양하게 명명되는 것이 가능하다. 한편, 위에서 살펴본 태그의 용어는 “마커(marker)”로 대체되어 사용되어질 수 있다.
이하에서는, 건물(1000)의 실내 공간(10)에 위치한 로봇(R)의 위치를 모니터링 하는 방법 중 로봇(R)에 구비된 식별 표지를 이용하여, 로봇(R)을 모니터링 하는 방법에 대하여 살펴본다.
앞서, 데이터베이스에는, 로봇(R)에 대한 다양한 정보가 저장될 수 있음을 살펴보았다. 로봇(R)에 대한 다양한 정보는 실내 공간(10)에 위치한 로봇(R)을 식별하기 위한 식별 정보(예를 들어, 일련번호, TAG 정보, QR코드 정보 등),를 포함할 수 있다.
한편, 로봇(R)의 식별 정보는 도 11에 도시된 것과 같이, 로봇(R)에 구비된 식별 표지(또는 식별 마크)에 포함될 수 있다. 이러한 식별 표지는 건물 제어 시스템(1000a), 설비 인프라(200)에 의하여 센싱되거나, 스캔되는 것이 가능하다. 도 11의 (a), (b) 및 (c)에 도시된 것과 같이, 로봇(R)의 식별 표지(1101. 1102. 1103)는 로봇의 식별 정보를 포함할 수 있다. 도시와 같이, 식별 표지(1101. 1102. 1103)는 바코드 (barcode, 1101), 일련 정보(또는 시리얼 정보, 1102), QR코드(1103), RFID태그(미도시됨) 또는 NFC 태그(미도시됨) 등으로 나타내어 질 수 있다. 바코드 (barcode, 1101), 일련 정보(또는 시리얼 정보, 1102), QR코드(1103), RFID태그(미도시됨) 또는 NFC 태그(미도시됨) 등은 식별 표지가 구비된(또는 부착된) 로봇의 식별 정보를 포함하도록 이루어질 수 있다.
로봇의 식별 정보는, 로봇 각각을 구분하기 위한 정보로서, 동일한 종류의 로봇이더라도, 서로 다른 식별 정보를 가질 수 있다. 한편, 식별 표지를 구성하는 정보는, 위에서 살펴본 바코드, 일련 정보, QR코드, RFID태그(미도시됨) 또는 NFC 태그(미도시됨) 외에도 다양하게 구성될 수 있다.
클라우드 서버(20)는 실내 공간(10)에 배치된 카메라, 다른 로봇에 구비된 카메라, 또는 설비 인프라에 구비된 카메라로부터 수신되는 영상으로부터 로봇(R)의 식별 정보를 추출하여, 실내 공간(10)에서 로봇의 위치를 파악하고, 모니터링할 수 있다. 한편, 식별 표지를 센싱하는 수단은 반드시 카메라에 한정될 필요 없으며, 식별 표지의 형태에 따라 센싱부(예를 들어, 스캔부)가 이용될 수 있다. 이러한 센싱부는, 실내 공간(10), 로봇들 및 설비 인프라(200) 중 적어도 하나에 구비될 수 있다.
일 예로서, 카메라에서 촬영된 영상으로부터 식별 표지가 센싱된 경우, 클라우드 서버(20)는 카메라로부터 수신되는 영상으로부터 로봇(R)의 위치를 파악할 수 있다. 이때, 클라우드 서버(20)는 카메라가 배치된 위치 정보 및 영상에서의 로봇의 위치 정보(정확하게는, 로봇을 피사체로하여 촬영된 영상에서, 로봇에 대응되는 그래픽 객체의 위치 정보) 중 적어도 하나에 근거하여, 로봇(R)이 위치를 파악할 수 있다.
데이터베이스 상에는, 실내 공간(10)에 배치된 카메라에 대한 식별 정보와 함께, 카메라가 배치된 장소에 대한 위치 정보가 매칭되어 존재할 수 있다. 따라서, 클라우드 서버(20)는 영상을 촬영한 카메라의 식별정보와 매칭된 위치 정보를 데이터베이스로부터 추출하여, 로봇(R)의 위치정보를 추출할 수 있다.
다른 예로서, 스캔부에 의해 식별 표지가 센싱된 경우, 클라우드 서버(20)는 스캔부로터 센싱된 스캔 정보로부터 로봇(R)의 위치를 파악할 수 있다. 데이터베이스 상에는, 실내 공간(10)에 배치된 스캔부에 대한 식별 정보와 함께, 스캔부가 배치된 장소에 대한 위치 정보가 매칭되어 존재할 수 있다. 따라서, 클라우드 서버(20)는 로봇에 구비된 식별 표지를 스캔한 스캔부에 매칭된 위치 정보를 데이터베이스로부터 추출하여, 로봇(R)의 위치정보를 추출할 수 있다.
위에서 살펴본 것과 같이, 본 발명에 따른 건물에서는, 건물에 구비된 다양한 인프라를 이용하여, 로봇의 위치를 추출하고, 모니터링하는 것이 가능하다. 나아가, 클라우드 서버(20)는 이러한 로봇의 위치를 모니터링 함으로써, 건물 내에서 로봇을 효율적이고, 정확하게 제어하는 것이 가능하다.
한편, 로봇(R)을 이용하여 다양한 서비스를 제공하기 위해서는, 건물(1000)에 위치한 로봇(R)이 건물(1000) 내를 안전하고 효율적으로 이동하도록, 건물(1000) 내 실제 공간들의 특성 및 상황을 반영하여 로봇(R)의 운용 및 주행에 활용되는 맵(Map)을 생성하는 것이 매우 중요하다.
이에, 본 발명은, 건물(1000)에서 서비스를 제공하는 로봇(R)의 운용 및 주행을 위하여, 사용자가 편리하고 직관적으로 맵을 생성 및 변경할 수 있는 사용자 환경을 제공하고, 사용자에 의해 생성 및 변경된 맵에 근거하여 건물(1000) 내에서 로봇(R)이 운용 및 주행하도록 하는 방법을 제안한다.
이하에서는, 첨부된 도면과 함께, 사용자가 편리하고 효율적으로 맵을 생성 및 변경할 수 있는 사용자 환경과, 생성 및 변경된 맵에 의해 로봇(R)이 운용되는 방법에 대해 보다 구체적으로 살펴본다.
도 12는 본 발명에 따른 로봇 운용을 위한 맵 생성 시스템을 설명하기 위한 개념도이다. 도 13은, 본 발명에 따른 로봇 운용을 위한 맵 생성 방법을 설명하기 위한 흐름도이고, 도 14 및 도 15는 본 발명에서 제공하는 편집 인터페이스를 설명하기 위한 개념도들이고, 도 16은 본 발명에서 포인트 클라우드(Point Cloud) 기법을 이용하여 지도를 생성하는 방법을 설명하기 위한 개념도이고, 도 17a, 도 17b 및 도 18은 본 발명에 따른 영역 그래픽 객체를 설명하기 위한 개념도들이고, 도 19a, 도 19b, 도 20, 도 21 및 도 22는 본 발명에 따른 노드 그래픽 객체를 설명하기 위한 개념도들이고, 도 23a, 도 23b, 도 23c, 도 23d 및 도 23e는 본 발명에 따른 구역을 설명하기 위한 개념도들이며, 도 25a 및 도 25b는 본 발명의 편집 인터페이스 상에서 그래픽 객체를 필터링하는 방법을 설명하기 위한 개념도들이다.
도 12에 도시된 것과 같이, 본 발명에 따른 로봇(R) 운용을 위한 맵 생성 시스템(3000)은, 통신부(310), 저장부(320) 및 제어부(330) 중 적어도 하나를 포함할 수 있다.
본 발명에 따른 로봇(R) 운용을 위한 맵 생성 시스템(3000)은, 사용자가 편리하고 직관적이며 효율적으로 로봇(R) 운용을 위한 맵을 생성, 변경 및 편집(이하, “편집”으로 설명)할 수 있는 사용자 환경을 제공하는 것으로, “맵 생성 시스템”, “맵 편집 시스템”, “맵 관리 시스템” “맵 생성 에디터(editor)”, ”맵 편집 에디터”, “맵 관리 에디터”, “맵 에디터”, “편집 에디터”, “편집 에디터” 등으로 다양하게 혼용되어 명명될 수 있다.
통신부(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)는, 전자기기(50)의 디스플레이부(51) 상에 맵 생성 및 편집을 위한 편집 인터페이스(1500)를 출력하기 위하여, 편집 인터페이스(1500)와 관련된 정보를 전자기기(50)로 전송할 수 있다.
여기에서, 편집 인터페이스(1500)와 관련된 정보는, 편집 인터페이스(1500)를 통해 사용자가 맵 편집을 수행할 수 있도록 제공되는 모든 정보를 포함하는 것으로 이해될 수 있다.
통신부(310)는, 전자기기(50)를 통해 편집 인터페이스(1500)상에 인가되는 사용자 입력에 근거한 편집 정보를 수신할 수 있다.
여기에서 편집 정보는, 맵 상에 그래픽 객체를 특정하고 할당하는데 활용되는 정보를 포함할 수 있다. 예를 들어, 편집 정보에는, 특정 맵에서의 i) 그래픽 객체의 배치 위치, ii) 상기 그래픽 객체의 크기 iii) 상기 그래픽 객체의 형상, vi) 상기 그래픽 객체 및 v) 상기 그래픽 객체와 관련된 다양한 정보 중 적어도 하나를 포함할 수 있다.
나아가, 통신부(310)는 전자기기(50)로부터 수신한 편집 정보에 근거하여 특정 맵(1700) 상에 그래픽 객체가 할당되면, 그래픽 객체가 할당된 맵을 클라우드 서버(20)에 업데이트 할 수 있다.
*다음으로, 저장부(320)는, 본 발명과 관련된 다양한 정보를 저장하도록 이루어질 수 있다. 본 발명에서 저장부(320)는 로봇(R) 운용을 위한 맵 생성 시스템 (3000) 자체에 구비될 수 있다. 이와 다르게, 저장부(320)의 적어도 일부는, 클라우드 서버(20), 외부 데이터베이스 및 건물 시스템(1000a)의 저장부(140) 중 적어도 하나를 의미할 수 있다. 즉, 저장부(320)는 본 발명에 따른 맵 생성을 위하여 필요한 정보가 저장되는 공간이면 충분하며, 물리적인 공간에 대한 제약은 없는 것으로 이해될 수 있다. 이에, 이하에서는, 저장부(320), 클라우드 서버(210), 외부 데이터베이스 및 건물 시스템(1000a)의 저장부(140)를 별도로 구분하지 않고, 모두 저장부(320)로 표현하도록 한다.
다음으로 제어부(330)는 본 발명에 따른 로봇(R) 운용을 위한 맵 생성 시스템(3000)의 전반적인 동작을 제어하도록 이루어질 수 있다. 제어부(330)는 위에서 살펴본 구성 요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 사용자에게 적절한 정보 또는 기능을 제공 또는 처리할 수 있다.
제어부(330)는, 전자기기(50)로부터 수신한 편집 정보에 근거하여, 복수의 층 중 특정 층에 대응되는 특정 맵(1700) 상에, 복수의 타입의 그래픽 객체 중 적어도 하나의 타입을 가지는 그래픽 객체를 할당할 수 있다.
여기에서, 그래픽 객체의 타입은, 그래픽 객체에 연계된 기능에 따라 분류(또는 구분)될 수 있으며, i) 로봇들의 주행 모드를 특정하는 기능과 관련된 영역 그래픽 객체, ii) 로봇들의 주행 경로를 구성하는 기능과 관련된 주행 노드 그래픽 객체, iii) 로봇들의 특정 동작과 관련된 동작 노드 그래픽 객체 및 vi) 설비와 관련된 설비 그래픽 객체를 포함할 수 있다.
제어부(330)는 전자기기(50)를 통해 제공되는 편집 인터페이스(1500) 상에, 사용자 입력이 인가되는 것에 근거하여 상기 복수의 그래픽 객체 타입 중 어느 하나의 타입에 대응되는 그래픽 객체를 특정 맵(1700) 상에 할당(또는 배치)할 수 있다.
나아가, 제어부(330)는, 특정 맵 상에 할당된 그래픽 객체의 속성에 따라, 로봇들이 특정 층을 주행하도록, 그래픽 객체가 할당된 상기 특정 맵을 클라우드 서버에 업데이트할 수 있다.
앞서 설명한 것과 같이, 클라우드 서버(20)는 건물 내에서 서비스를 제공하는 복수의 로봇(R)들에 대한 제어를 수행할 수 있다. 특히, 클라우드 서버(20)는, 특정 공간 또는 특정 층에 대응되는 특정 맵(1700)에 기초하여, 로봇(R)의 전역(全域) 이동 경로 및 지역(地域) 이동 경로를 생성하고, 생성된 이동 경로에 따라 로봇(R)이 이동하도록 제어를 수행할 수 있다.
이와 같이, 본 발명에서는 로봇(R)이 건물 내에서 서비스를 제공하는 로봇(R)의 제어에 활용되는 맵을 복수의 층 각각을 기준으로 생성하며, 사용자가 상기 맵을 손쉽고 직관적으로 작성 및 편집할 수 있는 편집 인터페이스(1500)를 제공할 수 있다.
이하에서는, 상기 설명한 로봇(R) 운용을 위한 맵 생성 시스템(3000)의 각 구성에 기초하여, 사용자가 로봇(R)의 운용 및 주행에 이용되는 맵을 편리하고 효율적으로 작성하는 방법에 대해서, 보다 구체적으로 설명하도록 한다
먼저, 본 발명에서는, 건물(1000)의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청 수신하는 과정이 진행될 수 있다(S1310, 도 13 참조).
앞서 설명한 것과 같이, 본 발명에서의 건물(1000)은 복수의 층으로 이루질 수 있다. 통신부(310)는 전자기기(50)로부터 건물(1000)을 이루는 복수의 층 중 특정 층에 대한 맵 편집 요청을 수신할 수 있다.
본 발명에서 “맵 편집”은, 건물(1000) 내 공간(10)에 대한 지도(Map 또는 지도 정보)를 생성 또는 변경하는 작업으로 이해될 수 있다. 특히, 본 발명에서 “복수의 층 중 특정 층에 대한 맵 편집”은, 건물(1000)의 특정 층에 대한 지도(또는 지도 정보)를 생성 또는 수정는 작업으로 이해될 수 있다.
상기 특정 층에 대한 맵 편집 요청을 다양한 방식으로, 전자기기(50)로부터 수신될 수 있다.
예를 들어, 상기 특정 층에 대한 맵 편집 요청은, 도 14에 도시된 것과 같이, 전자기기(50)의 디스플레이부 상에 모니터링 화면(1400)이 제공되고 있는 상태에서 이루어질 수 있다.
상기 모니터링 화면(1400)은, 복수의 층을 포함하는 건물(1000)내에 위치하는 복수의 로봇(R)을 모니터링 할 수 있는 화면으로, i) 건물(1000)에 대응되는 건물(1000) 그래픽 객체(1410), ii) 각 층에 위치한 로봇(R)의 상태 정보를 포함하는 상태 그래픽 객체(1420), ii) 복수의 층 중 어느 하나의 층에 대응되는 맵 관리와 관련된 페이지(또는 화면)에 링크된 특정 영역(1430) 및 vi) 건물(1000) 전체 층에 위치한 로봇(R)과 관련된 정보에 대응되는 그래픽 객체(1440) 중 적어도 하나를 포함할 수 있다.
도 14에 도시된 것과 같이, 전자기기(50)의 디스플레이부(51) 상에 건물에 대응되는 건물 그래픽 객체(1410)가 출력되고 있는 상태에서, 특정 층에 대응되는 서브 그래픽 객체(1411, 1412)가 선택되는 것에 근거하여, 통신부(310)는 특정 층에 대한 맵 편집 요청을 수신할 수 있다.
예를 들어, 사용자가 전자기기(50)의 디스플레이부(51) 상에서 8층에 대응되는 서브 그래픽 객체(1411)를 선택하는 것에 근거하여, 통신부(310)는 8층에 대한 맵 편집 요청을 수신할 수 있다.
나아가, 도 14에 도시된 것과 같이, 전자기기(50)의 디스플레이부(51) 상에, 복수의 층 각각에 대응되는 상태 그래픽 객체(1420)가 출력되고 있는 상태에서, 특정 층에 대응되는 상태 그래픽 객체(1421, 1422)가 선택되는 것에 근거하여, 통신부(310)는 특정 층에 대한 맵 편집 요청을 수신할 수 있다.
예를 들어, 사용자가 전자기기(50)의 디스플레이부(51) 상에서 8층에 대응되는 상태 그래픽 객체(1421)를 선택하는 것에 근거하여, 통신부(310)는 8층에 대한 맵 편집 요청을 수신할 수 있다.
여기에서, “상태 그래픽 객체(1420)”는, 건물(1000) 내 복수의 층 각각에 위치한 로봇(R)들의 상태 정보가 나타나도록, 상태 정보에 대응되는 시각적 외관으로 이루어진 그래픽 객체로 이해될 수 있다.
예를 들어, 8층에 대응되는 상태 그래픽 객체는, 8층에 위치한 복수의 로봇(R) 중 일부 로봇(R)의 제1 상태 정보에 대응되는 시각적 외관 및 제2 상태 정보에 대응되는 시각적 외관으로 이루어질 수 있다.
사용자는, 상태 그래픽 객체(1420)를 통해, 건물(1000) 내 복수의 층 각각 마다에 로봇(R)들의 상태를 직관적으로 인식할 수 있다.
나아가, 도 14에 도시된 것과 같이, 전자기기(50)의 디스플레이부(51) 상에서 특정 영역(ex: “지도 관리”, 1430)이 선택되는 것에 근거하여, 통신부(310)는 특정 층에 대한 맵 편집 요청을 수신할 수 있다.
예를 들어, “지도 관리”에 대응되는 특정 영역(1430)에 대한 사용자 입력이 수신되면, 제어부(330)는 전자기기(50)의 디스플레이부(51) 상에 건물 내 복수의 층 중 특정 층에 대한 선택을 입력 받을 수 있는 그래픽 객체(또는 화면)을 제공할 수 있다. 보다 구체적으로, 제어부(330)는 전자기기(50)의 디스플레이부 상에, 복수의 층 각각에 대응되는 숫자를 포함하는 복수개의 그래픽 객체를 포함하는 팝업(pop-up)을 제공할 수 있다. 통신부(310)는 상기 복수개의 그래픽 객체 중 특정 층에 대응되는 그래픽 객체가 선택되는 것에 근거하여, 전자기기(50)로부터 특정 층에 대한 맵 편집 요청을 수신할 수 있다.
한편, 상술한 특정 층에 대한 맵 편집 요청을 수신하는 방법은, 일 실시예에 해당하는 것으로, 본 발명에 따른 맵 생성 시스템(3000)에서 특정 층에 대한 맵 편집 요청을 수시하는 방법은 상술한 방법에 제한되지 않는다.
다음으로, 본 발명에서는, 전자기기(50)로부터 수신한 특정 층에 대응되는 맵 편집 요청에 응답하여, 전자기기(50)의 디스플레이부(51) 상에, 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스(1500)를 제공하는 과정이 진행될 수 있다(S1320, 도 13 참조).
도 15에 도시된 것과 같이, 편집 인터페이스(1500)는, 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 제1 영역(1510) 및 상기 특정 맵(1700)에 대한 설정을 수행하는 기능을 포함하는 제2 영역(1520) 중 적어도 하나를 포함할 수 있다.
본 발명에서 편집 인터페이스(1500)는, 사용자가 특정 맵(1700)에 대한 편집을 수행하는 기능을 제공하기 위하여 전자기기(50)의 디스플레이부(51) 상에 출력되는 화면으로, “편집 화면”, “편집 유저 그래픽 인터페이스(GUI)”, “편집 페이지”등으로 명명될 수 있다.
한편, 제1 영역(1510)에는, i) 특정 층에 대응되는 특정 맵의 적어도 일부(이하, 특정 맵으로 설명, 1700), ii) 영역 그래픽 객체(1800) 및 iii) 노드 그래픽 객체(1900) 중 적어도 하나가 포함(출력 또는 제공)될 수 있다. 이러한 제1 영역은 “맵 영역”으로도 명명 가능하다.
특정 맵(1700)은, 특정 맵에 대한 편집 히스토리와 함께 저장부(320)에 저장되어 있을 수 있다. 제어부(330)는, 특정 층에 대응되는 맵에 대한 편집 요청을 수신하면, 상기 편집 히스토리를 참조하여 가장 최근에 업데이트 된 특정 맵(1700)이 포함된 편집 인터페이스(1500)를 전자기기(50)의 디스플레이부 상에 제공할 수 있다.
예를 들어, 특정 맵(1700)에 대한 편집이 3회 이루어진 경우, 제어부(330)(130)는 특정 층에 대응되는 맵에 대한 편집 요청에 근거하여, 3회차 편집에 기초하여 업데이트 된 특정 맵(1700)이 포함된 편집 인터페이스(1500)를 전자기기(50)의 디스플레이부 상에 제공할 수 있다.
한편, 상기 특정 맵(1700)의 적어도 일부에는, 영역 그래픽 객체(1800), 노드 그래픽 객체(1900) 중 적어도 하나가 중첩되어 포함되어 있을 수 있다.
상기 영역 그래픽 객체(1800)는, 특정 층 내 특정 공간에서의 로봇(R)의 주행 모드와 관련된 것으로, 특정 맵(1700)상에서, 특정 층 내 특정 공간에 대응되는 영역에 중첩되어 표현(또는 배치)될 수 있다.
상기 영역 그래픽 객체(1800)의 시각적 외관은, 상기 특정 층 내에서 특정 공간의 실제 위치, 실제 크기, 실제 모양(또는 형상) 및 성질에 따라, 상기 특정 맵 상(1700)에서의 크기, 위치, 모양(또는 형상) 및 색상 중 적어도 하나가 결정될 수 있다.
도 15에 도시된 것과 같이, 제1 영역 그래픽 객체(1800a)와 제2 영역 그래픽 객(1800b) 각각의 시각적 외관은, 각각에 대응되는 제1 공간 및 제2 공간의 실제 크기, 실제 크기, 실제 모양(또는 실제 형상) 및 성질(또는 타입)에 따라, 크기, 위치, 모양(또는 형상) 및 색상이 서로 다를 수 있다.
상기 영역 그래픽 객체(1800)의 시각적 외관 중 색상은, 상기 영역 그래픽 객체(또는 실제 공간)에 매칭된 타입에 근거하여 결정될 수 있다. 도 15에 도시된 것과 같이, 제1 영역 그래픽 객체(1800a) 및 제2 영역 그래픽 객체(1800b) 각각에 매칭된 타입이 서로 다른 경우, 제1 영역 그래픽 객체(1800a) 및 제2 영역 그래픽 객체(1800b) 각각의 색상은 서로 다를 수 있다.
한편, 상기 노드 그래픽 객체(1900)는, 특정 층의 실제 공간(실제 영역, 대상 공간 등으로 명명 가능)에 할당된 노드에 대응되도록, 특정 맵(1700) 상에 할당(배치 또는 표시 또는 표현 또는 포함)된 그래픽 객체를 의미할 수 있다. 이에, 본 발명에서는 노드 그래픽 객체(1900)와 노드를 혼용하여 사용할 수 있다.
본 발명에서 ‘노드(node)’란 로봇의 이동에 단위 목표가 되는 지점 또는 영역을 의미하며, 각각의 노드는 대상 공간의 특정 지점 또는 특정 영역에 대응할 수 있다.
상기 노드 그래픽 객체(1900)는, 특정 맵(1700) 상에서, 특정 층 내 특정 지점(또는 특정 영역)에 대응되는 위치에 중첩되어 표현(또는 배치)될 수 있다.
나아가, 상기 노드 그래픽 객체(1900)는, 속성(또는 종류)에 따라 서로 다른 세가지 타입을 가질 수 있다. i) 제1 노드 타입을 가지는 노드는, 로봇(R)들의 주행에 연계된 주행 노드(주행 노드 그래픽 객체, 1910)이고, ii) 제2 노드 타입을 가지는 노드는, 로봇들의 특정 동작에 연계된 동작 노드에 대응되는 동작 노드 그래픽 객체(동작 노드 그래픽 객체, 1920)이고, iii) 제3 노트 타입을 가지는 노드는, 특정 층에 배치된 설비에 연계된 설비 노드에 대응되는 설비 노드(설비 노드 그래픽 객체 1930)를 의미할 수 있다.
상기 주행 노드 그래픽 객체(1910)는, 상기 로봇들의 주행 경로를 구성하며, 상기 로봇들의 주행에 연계된 주행 노드에 대응되는 주행 노드와 관련된 그래픽 객체로 이해될 수 있다.
로봇(R)은 상기 주행 노드 그래픽 객체(1910)에 매칭된 정보(예를 들어, 방향 정보 등)에 근거하여, 상기 주행 노드를 따라 이동할 수 있다.
상기 동작 노드 그래픽 객체(1920)는, 로봇(R)의 특정 동작에 연계된 동작 노드와 관련된 그래픽 객체로 이해될 수 있다.
로봇(R)은, 상기 동작 노드 그래픽 객체(1920)에 매칭된 특정 동작에 근거하여, 상기 주행 노드에서 상기 특정 동작을 수행할 수 있다.
예를 들어, 상기 동작 노드 그래픽 객체(1920)에 대기 동작이 매칭되어 있다고 가정하자. 로봇(R)은 주행 노드를 따라 이동 중에 상기 동작 노드에 도착하면, 주행을 멈추고 대기 동작에 들어갈 수 있다.
나아가, 상기 동작 노드 그래픽 객체(1920)에는, 주행 노드 그래픽 객체(또는 주행 노드)의 역할도 포함될 수 있다.
한편, 상기 설비 노드 그래픽 객체(1930)는, 특정 층에 배치된 설비에 연계된 설비 노드에 대응되는 그래픽 객체로 이해될 수 있다. 보다 구체적으로, 설비 노드 그래픽 객체(1930)는, 특정 맵(1700) 상에서, 설비 인프라가 배치된 지점(위치 또는 공간)에 대응되는 지점(위치)에 중첩되어 표현(출력 또는 제공)될 수 있다.
상기 설비 노드 그래픽 객체(130)은, 전자기기(50)로부터 편집 정보를 수신한 것에 근거하여 특정 맵(1700) 상에 할당되지 않더라도, 특정 층에 대응되는 특정 맵(1700)을 생성하는 과정에서, 미리 할당되어 있을 수 있다.
나아가, 상기 노드 그래픽 객체(1930)는, 특정 층의 공간에서 특정 설비가 위치한 특정 지점 및 로봇이 상기 특정 설비(예를 들어, 스피드 게이트, 엘리베이터 등)를 통과하기 위하여 필수적으로 경유해야 하는 특정 공간 중 적어도 하나와 대응되는 공간에 할당될 수 있다. 즉, 로봇이 특정 설비를 이용하는 경우, 로봇은 상기 특정 설비에 대응하는 복수의 설비 노드 그래픽 객체 및 주행 노드 그래픽 객체 중 적어도 일부로 이동해야 할 수 있다.
한편, 상기 노드 그래픽 객체(1900)의 시각적 외관은, 상기 특정 층 내에서 노드의 실제 위치 및 상기 노드의 타입(또는 성질)에 따라, 상기 특정 맵(1700) 상에서의, 위치 및 색상 중 적어도 하나가 결정될 수 있다.
특히, 상기 노드 그래픽 객체(1900)의 시각적 외관 중 색상은, 상기 노드 그래픽 객체(또는 실제 노드)에 매칭된 타입에 근거하여 결정될 수 있다.
도 15에 도시된 것과 같이, 제1 노드 그래픽 객체의 타입은, 동작 노드 그래픽 객체(1910)에 해당하고, 제2 노드 그래픽 객체의 타입은, 설비 노드 그래픽 객체(1920)에 해당하며, 이에 따라 상기 제1 노드 그래픽 객체 및 제2 노드 그래픽 객체의 시각적 외관(예를 들어, 색상, 모양, 패턴, 입체감, 아이콘 형상 등)은 서로 다를 수 있다.
이와 달리, 복수의 노드 그래픽 객체의 타입이 서로 동일한 경우에는, 복수의 노드 그래픽 객체의 시각적 외관(예를 들어, 색상, 모양, 패턴, 입체감, 아이콘 형상 등)은 서로 동일할 수 있다.
나아가, 설비 노드 그래픽 객체(1930)의 시각적 외관은, 대응되는 설비 인프라의 종류가 표현되도록, 설비 종류에 따라 서로 다르게 이루어질 수 있다.
예를 들어, 엘리베이터(elevator)에 대응되는 설비 그래픽 객체(2000a)는 엘리베이터에 대응되는 시각적 외관으로 표현되고, 스피드 게이트(Speed gate)에 대응되는 설비 그래픽 객체는 엘리베이터에 대응되는 시각적 외관으로 표현될 수 있다.
다음으로, 본 발명에서는, 전자기기(50)로부터 수신되는 정보에 근거하여, 편집 인터페이스(1500)에 포함된 특정 맵(1700) 상에, 적어도 하나의 그래픽 객체를 할당하는 과정이 진행될 수 있다(S1330, 도 13 참조).
할당되는 그래픽 객체는, 앞서 설명한 영역 그래픽 객체(1800) 및 노드 그래픽 객체(1900) 중 적어도 하나를 의미할 수 있다.
제어부(330)는 제1 영역(1510)에 포함된 특정 맵(1700)의 특정 영역에 인가되는 사용자 입력에 근거하여, 상기 특정 영역에 대응되는 위치 상에, 영역 그래픽 객체(1800) 및 노드 그래픽 객체(1900 중 어느 하나를 할당할 수 있다.
본 발명에서 “그래픽 객체를 할당한다”는 것은, 특정 맵의 특정 영역 상에 그래픽 객체 중첩하여 배치하고, 그래픽 객체가 배치된 영역(또는 지점)이, 그래픽 객체의 타입에 대응되는 타입을 가지도록 매칭(또는 설정)하는 것으로 이해될 수 있다.
예를 들어, 제어부(330)는 도 15에 도시된 것과 같이 특정 맵(1700)의 특정 영역에 노드 그래픽 객체(1900)를 중첩하여 표시하고, 특정 영역에 노드 그래픽 객체(1900)에 대응되는 노드를 매칭할 수 있다.
사용자는, 특정 맵(1700) 상에서, 원하는 특정 지점에 대한 사용자 입력을 인가함으로써, 특정 맵(1700) 상의 특정 지점에 그래픽 객체를 할당할 수 있다. 그래픽 객체를 할당하는 방법에 대한 자세한 내용은 후술하도록 한다.
다음으로, 본 발명에서는, 특정 맵(1700) 상에 할당된 그래픽 객체의 타입에 따라, 로봇(R)들이 특정 층을 주행하도록, 그래픽 객체가 할당된 특정 맵(1700)을 클라우드 서버에 업데이트하는 과정이 진행될 수 있다(S1340, 도 13 참조).
위에서 살펴본 것과 같이, 클라우드 서버(20)는, 클라우드 서버(20)에 저장된 맵(또는 지도 정보, 1700)를 이용하여, 건물(1000)의 공간 내에서 로봇(R)의 이동 경로를 설정할 수 있다. 그리고, 클라우드 서버(20)는 로봇(R)이 현재 위치로부터, 특정 목적지까지 이동하도록 제어할 수 있다. 클라우드 서버(20)는 로봇의 현재 위치 정보와 목적지 위치 정보를 특정하고, 목적지에 도달하는 경로를 설정하여, 로봇이 설정된 경로에 따라 이동하여 목적지에 도달하도록 제어할 수 있다.
보다 구체적으로, 복수의 노드 그래픽 객체(1900) 각각에는, 복수의 노드 각각 대응되고, 각각의 노드 별 노드 정보가 매칭되어 있을 수 있다. 이러한 노드 정보에는 다양한 정보가 포함되어 있을 수 있는데, 대표적으로 좌표 정보 및 노드 연결 정보를 포함할 수 있다.
첫 번째로, 노드 정보는 좌표 정보를 포함한다. 단일 노드는 지도 상의 특정 좌표 또는 좌표 범위를 지정한다. 예를 들어, 노드는 지도 상에서 소정 면적을 가지는 원형의 영역을 지정하도록 이루어질 수 있다. 이를 위해, 노드에 포함된 좌표 정보는 특정 좌표 또는 좌표 범위로 이루어질 수 있다.
두 번째로, 노드 정보는 노드 연결 정보를 포함한다. 단일 노드는 해당 노드로부터 로봇이 이동 가능한 다른 노드를 정의하는 정보를 포함한다. 노드 연결 정보는 로봇이 해당 노드로부터 이동 가능한 다른 노드의 고유 번호 또는 상기 다른 노드가 지정하는 좌표 정보를 포함할 수 있다.
또한, 노드 연결 정보는 노드들 간에 로봇이 이동 가능한 방향을 정의하는 방향 정보를 포함할 수 있다. 상기 방향 정보는 두 개의 노드 중 어느 하나에서 다른 하나로 로봇이 이동 가능할 때, 로봇이 단방향으로만 이동 가능한지, 아니면 양방향으로 모두 이동 가능한지 정의할 수 있다.
나아가, 노드 그래픽 객체 중 복수의 설비 노드 그래픽 객체(1930)에는, 복수의 설비가 각각 대응되고, 각각의 설비 별 설비 정보가 매칭되어 있을 수 있다.
설비 정보는 대상 공간에 배치된 설비와 관련된 정보를 정의한다. 구체적으로, 설비 정보는 설비의 종류, 설비에 대응하는 서버와 관련된 정보, 설비가 배치된 위치에 대응하는 노드의 노드 정보 중 적어도 하나를 포함할 수 있다.
클라우드 서버(20)는 로봇(R)이 어느 하나의 노드에서 다른 하나의 노드로 이동하도록 제어하고, 이러한 과정을 반복하여 로봇이 목표 지점에 도달할 수 있도록 제어할 수 있다. 본 명세서에서 로봇이 특정 노드로 이동한다 함은 특정 노드가 지정하는 좌표 정보 또는 좌표 범위 내로 로봇이 이동함을 의미할 수 있다.
나아가, 영역 그래픽 객체(1800)에는, 특정 실제 공간에 대응되고, 특정 공간에서 로봇(R)의 주행 모드 정보가 매칭되어 있을 수 있다. 예를 들어, 주행 모드는 기본 자율 주행 모드, 경로 엄격 추종 모드, 보수적 주행 모드 등을 포함할 수 있다.
클라우드 서버(20)는, 로봇(R)이 어느 하나의 노드에서 다른 하나의 노드로 이동하도록 제어함에 있어서, 상기 영역 그래픽 객체(1800)에 대응되는 공간에서는 영역 그래픽 객체(1800)에 매칭된 주행 모드에 따라 이동하도록 제어할 수 있다.
이처럼, 클라우드 서버(20)는 본 발명에서 업데이트 한 맵(또는 맵 정보)에 근거하여 로봇(R)의 이동 경로 생성 및 주행을 제어할 수 있다.
이에, 본 발명은 클라우드 서버(20)가 로봇의 이동 경로를 효율적으로 설정하도록 하기 위하여, 사용자가 맵(또는 지도 정보)를 편리하고 직관적으로 편집(생성 또는 변경)할 수 있는 사용자 환경 방법을 제안한다.
이하에서는, 전자기기(50)로부터 수신된 정보에 근거하여 제어부(330)가 맵(또는 지도 정보)을 생성하는 방법을 설명한다. 다만, 상기 맵 생성은 제어부(330)가 아닌 클라우드 서버(20) 또는 다른 시스템에 의해 이루어질 수 있다. 다른 시스템은, 맵 생성을 위하여 구축된 시스템일 수 있으며, 본 발명은 이에 대한 특별한 한정을 두지 않는다.
한편, 앞서 설명한 것과 같이, 제어부(330)는 전지기기로부터 특정 층에 대응되는 특정 맵(1700)에 대한 편집 요청을 수신한 것에 근거하여, 전자기기(50)의 디스플레이부 상에 특정 맵(1700)이 포함된 편집 인터페이스(1500)를 제공할 수 있다(도 15 참조).
상기 특정 맵(1700)은 특정 층에 대한 2차원 또는 3차원 지도 중 적어도 하나로 이루어질 수 있으며, 로봇(R)의 주행 경로를 설정하는데 활용될 수 있는 지도를 의미할 수 있다.
이 때, 맵은, 사전에 공간(10)을 이동하는 적어도 하나의 로봇에 의해, SLAM(Simultaneous Localization and Mapping)에 기반하여 작성된 지도일 수 있다. 즉, 맵은 vision(또는 visual)기반의 SLAM기술에 의하여 생성된 지도일 수 있다.
보다 구체적으로, 도 16의 (a)에 도시된 것과 같이, 로봇(R)은 건물(1000) 내를 주행하면서 건물(1000) 내 공간에 대한 센싱을 수행할 수 있다. 클라우드 서버(20)는 로봇(R)이 건물(1000) 내 공간에 대한 센싱을 수행하도록, 로봇(R)의 주행을 제어할 수 있다.
맵 생성과 관련된 서버는, 로봇(R)에 의해 센싱된 공간에 대한 정보(1610)에 근거하여, 맵 생성과 관련된 서버는, 공간 내 정적 장애물(Obstacles, O1, O2, O3, O4)을 검지하는 과정을 수행할 수 있다(도 16의 (b) 참조).
여기에서 맵 생성과 관련된 서버는, 본 발명에 따른 맵 생성 시스템(3000)을 의미하거나, 다른 서버를 의미할 수 있다. 예를 들어, 다른 서버는 클라우드 서버(20)이 일 수 있고, 그 외 맵 생성 기능을 수행하는 서버에 해당할 수 있다. 이하에서는 클라우드 서버(20)에 의해 맵이 생성되는 것으로 설명하겠으나, 본 발명에 따른 제어부(330) 및 다른 서버에 의해서도 동일한 기능이 수행될 수 있다.
클라우드 서버(20)는, 포인트 클라우드(Point Cloud) 기법을 이용하여, 검출한 장애물에 대한 3차원 좌표를 가지는 점들을 생성할 수 있다.
여기에서, 포인트 클라우드(Point Cloud) 기법이란, 점자료 기법 또는 점군(點群) 기법이라고 명명되며, 센서로부터 방출되어 대상체에서 반사되어 수신기로 돌아온 수많은 포인트 클라우드(또는 측점군)들을 제공하는 기법을 의미할 수 있다.
상기 포인트 클라우드(또는 측점군)들은, 각각 중심 좌표계(x, y, z)를 기준으로 각 지점에 대한 샘플링(sampling)을 통해 획득될 수 있다.
클라우드 서버(20)는, 상기 포인트 클라우드(Point Cloud) 기법을 이용하여 획득한 장애물에 대한 3차원의 포인트 클라우드들을, 도 16의 (c)에 도시된 것과 같이 2차원의 포인트 클라우드들(P1, P2) 정보로 변환할 수 있다. 즉, 클라우드 서버(20)는 검출한 장애물에 대한 3차원의 포인트 클라우드를, 2차원의 평면화된 포인트 클라우드(P1, P2)로 변환할 수 있다.
나아가, 클라우드 서버(20)는, 도 16의 (d)에 도시된 것과 같이, 2차원의 평면화된 포인트 클라우드들을 포함한 맵(또는 지도 정보, M1)과, 건물(1000)의 도면(M2)을 매칭하여, 정적 장매물의 위치를 확정하는 과정을 수행할 수 있다. 보다 구체적으로, 클라우드 서버(20)는 2차원의 평면화된 포인트 클라우드를 포함한 맵(M1)과, 건물(1000)의 도면(M2)이 서로 겹쳐진 상태에서, 실제 공간 내 물리적인 장애물의 검출 정보 및 측위를 고려하여 로봇(R)을 기준으로 한 정적 장애물의 위치 및 크기를 특정할 수 있다.
나아가, 클라우드 서버(20)는 특정된 정적 장애물의 위치 및 크기에 근거하여, 도 16의 (e)에 도시된 것과 같이, 맵(M3) 상에 정적 장애물을 도형(Figure, F1, F2)으로 작성할 수 있다.
본 발명에서는 상술한 과정을 통해 생성된 맵을 전자기기(50)의 디스플레이부(51) 상에 제공하여, 사용자가 상기 맵에 대한 편집을 수행할 수 있도록 하는 사용자 환경을 제공할 수 있다.
한편, 상술한 맵 생성 과정은, 클라우드 서버(20)에 의해서 이루어지거나 작업자(또는 관리자)에 의해서도 이루어질 수 있다. 작업자(또는 관리자)에 의해 맵 생성 과정이 이루어지는 경우, 상술한 맵 생성 과정 중 일부 과정이 작업자(또는 관리자)에 의해 이루어질 수 있다.
한편, 앞서 설명한 것과 같이, 본 발명에서는 전자기기(50)의 디스플레이부(51) 상에 편집 인터페이스(1500)를 제공하고 있는 상태에서, 편집 인터페이스(1500)에 대해 인가되는 사용자 입력에 근거하여 특정 맵(1700)상에 영역 그래픽 객체(1800)를 할당할 수 있다.
여기에서, 영역 그래픽 객체(1800)는, 특정 층의 특정 영역에서 로봇(R)들이 특정 주행 모드로 주행(또는 동작)하도록 설정하기 위한 것으로 이해될 수 있다.
이하에서는 도 17a, 도 17b 및 도 18을 참조하여, 영역 그래픽 객체(1800)를 할당하는 과정에 대해서 보다 구체적으로 설명하도록 한다.
먼저, 제어부(330)는 전자기기(50)로부터 영역 편집에 대한 요청을 수신하는 것에 근거하여, 편집 인터페이스(1500)를 영역 편집 모드로 제어할 수 있다.
여기에서, “영역 편집 모드”는, 편집 인터페이스(1500)를 통해, 특정 맵(1700) 상에 영역 그래픽 객체(1800)를 할당하고, 영역 그래픽 객체(1800)의 타입(또는 타입) 및 관련 정보를 설정할 수 있는 모드로 이해될 수 있다.
제어부(330)는 편집 인터페이스(1500)이 영역 편집 모드 외의 모드(예를 들어, 기본 모드)인 상태에서, 영역 편집 모드에 대응되는 특정 편집 툴(도 17a에서 도면부호 1531 참조)이 선택되는 것에 근거하여, 편집 인터페이스(1500)의 모드를 영역 편집 모드로 전환할 수 있다.
제어부(330)는 편집 인터페이스(1500)가 영역 편집 모드로 동작하는 상태에서, 전자기기(50)로부터 수신한 편집 정보에 근거하여, 특정 맵(1700) 상에 영역 그래픽 객체를 할당할 수 있다.
편집 정보에는, 특정 맵(1700)에서의 i) 영역 그래픽 객체(1800)의 배치 위치, ii) 상기 영역 그래픽 객체(1800)의 크기 iii) 상기 영역 그래픽 객체(1800)의 형상 및 vi) 상기 영역 그래픽 객체(1800)의 타입 중 적어도 하나를 특정하기 위한 정보를 포함할 수 있다.
이러한 편집 정보는, 편집 인터페이스(1500)의 제1 영역(1510) 및 제2 영역(1520)에 대하여 입력되는 사용자 입력을 조합하여 형성될 수 있다.
앞서 설명한 것과 같이, 편집 인터페이스(1500)의 제1 영역(1510)에는 특정 맵(1700)이 포함되어 있을 수 있다. 그리고, 제2 영역(1520)에는 특정 맵(1700)의 편집과 관련된 설정을 위한 설정 메뉴가 포함되어 있을 수 있다.
이 때, 제2 영역(1520)에는, 편집 인터페이스(1500)가 영역 편집 모드로 동작하는 것에 따라, 영역 그래픽 객체와 관련된 설정을 위한 설정 메뉴가 포함되어 있을 수 있다.
제어부(330)는 제1 영역(1510)에 인가되는 사용자 입력에 근거하여, 영역 그래픽 객체(1800)의 i) 배치 위치, ii) 크기 및 iii) 형상을 특정함으로써, 특정 맵(1700) 상에 할당할 영역 그래픽 객체(1800)를 특정할 수 있다.
그리고, 제어부(330)는 제2 영역(1520)에 인가되는 사용자 입력에 근거하여, 영역 그래픽 객체(1800)의 타입을 특정할 수 있다.
제어부(330)는 제1 영역(1510) 및 제2 영역(1520)에 각각 인가된 사용자 입력을 조합하여, 특정 맵(1700) 상에 영역 그래픽 객체를 할당할 수 있다.
이하에서는 제1 영역(1510)에 인가되는 사용자 입력에 기초하여 영역 그래픽 객체(1800)의 배치 위치, 크기 및 형상 중 적어도 하나를 특정(제1 할당 프로세스)하는 방법과, 제2 영역(1520)에 인가되는 사용자 입력에 기초하여 영역 그래픽 객체(1800)의 타입을 특정(제2 할당 프로세스)하는 방법을 구체적으로 설명하도록 한다.
이하에서의 설명은, 제1 할당 프로세스를 설명하고 제2 할당 프로세스를 설명하겠으나, 제1 할당 프로세스 및 제2 할당 프로세스의 순서는 변경될 수 있다. 즉, 제2 할당 프로세스가 먼저 이루어진 후에 제1 할당 프로세스가 이루어질 수 있음은 당연하다.
제어부(330)는, 제1 영역(1510)에 대한 사용자 입력이 인가된 것에 근거하여 수신된 편집 정보에 기초하여, 특정 맵(1700) 상에 할당할 영역 그래픽 객체(1800)가 위치할 영역(또는 배치 위치), 크기 및 형상 중 적어도 하나를 특정할 수 있다.
제어부(330)는, 영역 그래픽 객체(1800)가 위치할 영역을 특정하는 제1 영역에 대한 제1 사용자 입력, 영역 그래픽 객체(1800)의 크기를 특정하는 제1 영역에 대한 제2 사용자 입력, 및 영역 그래픽 객체의 형상을 특정하는 제1 영역에 대한 제3 사용자 입력 중 적어도 하나에 근거하여, 특정 맵(1700) 상에 할당할 영역 그래픽 객체(1800)를 특정할 수 있다.
상기 제1 사용자 입력, 제2 사용자 입력 및 제3 사용자 입력의 구분은, 인가된 사용자 입력에 의해, 영역 그래픽 객체(1800)의 위치 영역(또는 배치 위치), 크기 및 형상 중 어느 정보와 관련되는지에 따라 구분될 수 있다.
예를 들어, 인가된 사용자 입력에 의해, 영역 그래픽 객체(1800)의 배치 위치 및 크기를 특정될 수 있으면, 상기 사용자 입력은 제1 사용자 입력 및 제2 사용자 입력에 해당될 수 있다.
이에, 이하에서는, 영역 그래픽 객체를 특정하는 사용자 입력을 구분하지 않고, 모두 사용자 입력으로 명명하여 설명하겠으며, 이러한 사용자 입력은, 영역 그래픽 객체(1800)의 배치 위치, 크기 및 형상 중 적어도 하나를 특정하기 위한 사용자 입력일 수 있다.
제어부(330)는, 편집 인터페이스(1500)가 영역 편집 모드인 상태에서, 제1 영역에 인가되는 사용자 입력에 근거하여, 영역 그래픽 객체의 배치 위치, 크기 및 형상 중 적어도 하나를 특정할 수 있는 편집 정보를 수신할 수 있다.
그리고, 제어부(330)는 수신된 편집 정보에 근거하여, 특정 맵(1700) 상에 할당할 영역 그래픽 객체(1800)를 특정할 수 있다.
예를 들어, 도 17a 및 도 17b에 도시된 것과 같이, 제어부(330)는, 제1 영역(1510)의 서로 다른 4개의 특정 지점(1511a, 1511b, 1511c, 1511d)에 인가된 사용자 입력(예를 들어, 클릭)에 기초한 편집 정보를 전자기기(50)로부터 수신할 수 있다. 그리고 제어부(330)는 수신된 편집 정보에 근거하여, 특정 맵(1700)의 좌측 하단 상에 배치되는 특정 크기의 직사각형 형상의 제1 영역 그래픽 객체(1810)를 특정할 수 있다.
다른 예로, 도 17b에 도시된 것과 같이, 제어부(330)는, 제1 영역(1510)상에서의 드래그(drag) 입력에 기초한 편집 정보를, 전자기기(50)로부터 수신할 수 있다. 그리고 제어부(330)는 수신된 편집 정보에 근거하여, 특정 맵(1700)의 중앙 하단 상에 배치되는 특정 크기의 삼각형 형상의 제2 영역 그래픽 객체(1820)를 특정할 수 있다.
또 다른 예로, 도 17b에 도시된 것과 같이, 제어부(330)는, 전자기기(50)로부터 수신한 편집 정보에 근거하여, 특정 맵(1700)의 중앙에 배치되는 특정 크기의 사다리꼴 형상의 제3 영역 그래픽 객체(1830)를 특정할 수 있다.
또 다른 예로, 비록 도시되지는 않았지만, 제어부(330)는, 제1 영역(1510)에 기 형성된 도형을 이루는 선의 위치 및 모양 중 적어도 하나를 변경하는 사용자 입력에 근거하여, 변경된 선에 의해 크기 및 형상이 변경된 도형에 대응되는 영역 그래픽 객체(1800)를 특정할 수 있다.
이와 같이, 사용자 입력에 인가된 위치에 대응되는 특정 맵(1700)의 특정 영역 상에, 사용자 입력에 대응되는 크기 및 형상을 가지는 영역 그래픽 객체(1800)를 할당할 수 있다.
사용자는, 특정 공간에서 로봇(R)이 특정 주행 모드로 동작하도록 설정하기 위하여, 특정 맵(1700) 상에서, 특정 공간에 대응되는 영역 상에, 영역 그래픽 객체를 할당할 수 있다. 이처럼, 사용자는 본 발명에서 제공하는 편집 인터페이스(1500)를 통해 건물(1000) 내 공간 각각 마다에, 로봇(R)의 동작 모드를 편리하고 직관적으로 설정할 수 있다.
한편, 앞서 설명한 것과 같이, 제어부(330)는, 편집 인터페이스(1500) 상에 노출되어 있는 특정 편집 툴(1531)이 선택되는 것에 근거하여, 편집 인터페이스(1500)의 모드를 영역 편집 모드로 전환할 수 있다.
이러한 영역 편집 모드 상태에서는 제1 영역 상에 인가되는 사용자 입력에 근거하여, 영역 그래픽 객체(1800)의 배치 위치, 크기 및 형상 중 적어도 하나를 특정할 수 있다.
이에, 본 발명에서는 상기 특정 편집 툴(1531)을, 영역 그래픽 객체(1800) 특정을 위한 사용자 입력의 매개체가 되는 툴로 이해할 수 있다.
이러한 특정 편집 툴(1531)은, 다른 기능에 매칭된 다른 툴(1632, 1533)과 함께 복수의 편집 툴(1530)을 형성할 수 있다.
상기 복수의 편집 툴(1530)은, 편집 인터페이스(1500)의 적어도 일 영역에 위치할 수 있으며, 상기 복수의 편집 툴(1530)에 인가되는 사용자 입력에 근거하여, 편집 인터페이스(1500)의 다른 일 영역에 이동될 수 있다.
예를 들어, 도 17b에 도시된 것과 같이, 상기 복수의 편집 툴(1530)은, 제1 영역(1510)의 좌측 상단에서, 특정 맵(1700)에 중첩(또는 오버랩)되어 제공될 수 있다. 그리고, 사용자는 상기 복수의 편집 툴(1530)에 대한 사용자 입력을 통해 상기 복수의 편집 툴(1530)을 특정 맵(1700)의 다른 위치로 이동시킬 수 있다.
사용자는 복수의 편집 툴(1530)에 의해 특정 맵(1700)의 일부가 가려지더라도, 복수의 편집 툴(1530)의 위치를 이동시킴으로써, 가려져 있던 특정 맵(1700)의 일부 영역 상에도 영역 그래픽 객체(1800)를 배치할 수 있다.
한편, 제어부(330)는 편집 인터페이스(1500)가 영역 편집 모드로 동작하는 상태에서, 편집 인터페이스(1500)의 제2 영역(1520)에 인가되는 사용자 입력에 기초한 편집 정보를 수신하여, 영역 그래픽 객체(1800)의 타입을 특정할 수 있다.
앞서 설명한 것과 같이, 영역 그래픽 객체의 타입은, 로봇(R)의 주행 모드와 연계된 것으로, 서로 다른 영역 그래픽 객체의 타입 각각 에는 서로 다른 복수의 주행 모드가 각각 연계되어 있을 수 있다. 예를 들어, 제1 타입의 영역 그래픽 객체에는 제1 주행 모드가 연계되어 있고, 제2 타입의 영역 그래픽 객체에는 제2 주행 모드가 연계되어 있을 수 있다.
이에, 본 발명에서 “영역 그래픽 객체(1800)의 타입을 특정한다”는 것은, 영역 그래픽 객체에 대응되는 특정 층의 특정 공간(또는 영역) 상에서, 로봇(R)의 주행 모드를 특정하는 것으로 이해할 수 있다.
제어부(330)는 영역 그래픽 객체(1800)의 타입을 특정하기 위해, 도 17b에 도시된 것과 같이, 제2 영역(1520) 상에, 영역 그래픽 객체(1800)의 타입을 선택받을 수 있는 설정 메뉴(또는 설정 메뉴 그래픽 객체, 1521)를 제공할 수 있다.
제어부(330)는 제2 영역(1520)에 포함된 설정 메뉴(1521)에 대한 사용자 입력(제4 사용자 입력으로도 명명 가능)에 근거하여, 영역 그래픽 객체의 타입을 선택받을 수 있다.
그리고, 제어부(330)는 영역 그래픽 객체(1800)에 대응되는 특정 층의 특정 공간(또는 영역)에서, 로봇(R)이 선택된 타입에 연계된 주행 모드로 동작하도록, 영역 그래픽 객체의 타입을 특정할 수 있다.
보다 구체적으로, 제어부(330)는, 도 17b에 도시된 것과 같이, 제2 영역 상에, 제1 서브 설정 메뉴 그래픽 객체(1521a) 및 제2 서브 설정 메뉴 그래픽 객체(1521b)를 포함하는 설정 메뉴(1521)를 제공할 수 있다.
이 때, 제1 서브 설정 메뉴 그래픽 객체(1521a)는 제1 타입의 영역 그래픽 객체(또는 제1 주행 모드)에 대응되고, 제2 서브 설정 메뉴 그래픽 객체(1521b)는 제2 타입의 영역 그래픽 객체(또는 제2 주행 모드)에 대응될 수 있다.
제어부(330)는, 제1 서브 설정 메뉴 그래픽 객체(1521a) 및 제2 서브 설정 메뉴 그래픽 객체(1521b) 중 어느 하나가 선택되는 것에 근거하여, 영역 그래픽 객체(1800)에 대한 타입 정보가 포함된 편집 정보를, 전자기기(50)로부터 수신할 수 있다.
제어부(330)는 상기 편집 정보에 근거하여, 영역 그래픽 객체의 타입을 결정할 수 있다. 예를 들어, 제어부(330)는 제1 서브 설정 메뉴 그래픽 객체(1521a)가 선택된 것에 근거하여 편집 정보를 수신한 경우, 영역 그래픽 객체(1800)를 제1 타입의 영역 그래픽 객체로 특정할 수 있다. 이와 달리, 제어부(330)는 제2 서브 설정 메뉴 그래픽 객체(1521b)가 선택된 것에 근거하여 편집 정보를 수신한 경우, 영역 그래픽 객체(1800)를 제2 타입의 영역 그래픽 객체로 특정할 수 있다.
나아가, 제어부(330)는 상기 편집 정보에 근거하여, 영역 그래픽 객체에서의 로봇(R)의 동작 모드를 결정할 수 있다. 예를 들어, 제어부(330)는 제1 서브 설정 메뉴 그래픽 객체(1521a)가 선택된 것에 근거하여 편집 정보를 수신한 경우, 영역 그래픽 객체(1800)에서의 로봇(R)의 동작 모드를 제1 동작 모드로 특정할 수 있다. 이와 달리, 제어부(330)는 제2 서브 설정 메뉴 그래픽 객체(1521b)가 선택된 것에 근거하여 편집 정보를 수신한 경우, 영역 그래픽 객체(1800)에서 로봇(R)의 동작 모드를 제2 동작 모드로 특정할 수 있다.
이처럼, 본 발명에서의 영역 그래픽 객체(1800)는, 서로 다른 복수의 타입 중 어느 하나의 타입을 갖도록 이루어질 수 있다. 또한 본 발명에서의 영역 그래픽 객체(1800)는, 서로 다른 주행 모드 중 어느 하나의 주행 모드로 로봇(R)이 동작하도록 이루어질 수 있다.
한편, 본 발명에서는 사용자에게 특정 맵(1700)상의 특정 영역에서의 로봇(R)의 주행 모드를 직관적으로 인지시키기 위하여, 제1 타입의 영역 그래픽 객체 및 제2 타입의 영역 그래픽 객체의 시각적 외관이 서로 다르게 이루어지도록 할 수 있다.
여기에서, “시각적 외관”은, 영역 그래픽 객체의 색상, 입체감, 패턴, 포함된 아이콘 중 적어도 하나를 의미할 수 있다. 이하에서는 설명의 편의를 위하여, 시각적 외관 중 색상을 예로 들어 설명하도록 한다.
제1 타입의 영역 그래픽 객체 및 제2 타입의 영역 그래픽 객체 각각에는 서로 다른 시각 정보(예를 들어, 색상 정보)가 매칭되어 있을 수 있다. 제1 타입의 영역 그래픽 객체에는 제1 시각 정보가 매칭되어 있고, 제2 타입의 영역 그래픽 객체에는 제2 시각 정보가 매칭되어 있을 수 있다.
제어부(330)는, 영역 그래픽 객체(1800)의 타입이 특정되면, 특정 맵(1700) 상에서 영역 그래픽 객체의 색상이, 특정된 영역 그래픽 객체(1800)의 타입에 매칭된 시각 정보를 갖도록 제어할 수 있다.
제어부(330)는, 복수의 영역 그래픽 객체에 특정된 타입이 서로 다르면, 복수의 영역 그래픽 객체를, 서로 다른 시각 정보에 대응되는 시각적 특성으로 특정 맵(1700) 상에 표시할 수 있다.
예를 들어, 도 17b에 도시된 것과 같이, 제1 타입으로 특정된 제1 영역 그래픽 객체(1810)는, 상기 제1 타입에 매칭된 제1 색상 정보를 갖도록, 특정 맵(1700)상에 표시되고, 제2 타입으로 특정된 제3 영역 그래픽 객체(1830)는, 상기 제2 타입에 매칭된 제2 색상 정보를 갖도록, 특정 맵(1700)상에 표시될 수 있다.
반면에, 복수의 영역 그래픽 객체에 특정된 타입이 서로 동일하면, 제어부(330)는 복수의 영역 그래픽 객체를, 동일한 시각 정보에 대응되는 시각적 특성으로 특정 맵(1700) 상에 표시할 수 있다.
예를 들어, 도 17b에 도시된 것과 같이, 제1 타입으로 특정된 제1 영역 그래픽 객체(1810) 및 제2 영역 그래픽 객체는, 서로 동일한 색상 정보로 특정 맵(1700) 상에 표시될 수 있다.
이처럼, 본 발명에서의 특정 맵(1700) 상에는, 동일 또는 서로 다른 타입을 갖는 하나 이상의 영역 그래픽 객체가 할당되어질 수 있다.
한편, 본 발명에서는 영역 그래픽 객체(1800)가 먼저 선택되어진 상태에서, 선택된 영역 그래픽 객체에 대한 타입을 결정할 수 있다.
예를 들어, 제어부(330)는 제1 영역(1510) 상에서 적어도 하나의 특정 영역 그래픽 객체에 대한 사용자 선택을 수신하는 것에 근거하여, 제2 영역(1520) 상에 상기 특정 영역 그래픽 객체의 타입을 선택받기 위한 설정 메뉴(1521)를 제공할 수 있다. 제어부(330)는 제2 영역(1520)의 설정 메뉴(1521)를 통해 특정 타입이 선택되면, 특정 영역 그래픽 객체를 특정 타입의 영역 그래픽 객체로 설정할 수 있다.
이 때, 상기 설정 메뉴(1521)는, 선택된 영역 그래픽 객체에 적용 가능한 타입에 적용 가능한 영역 그래픽 객체 타입에 대응되는 서브 설명 메뉴 그래픽 객체(1521a, 1521b)를 포함할 수 있다.
또한 본 발명에서는 그래픽 객체의 타입이 먼저 선택되어진 상태에서, 선택된 타입으로 특정된 영역 그래픽 객체(1800)의 타입이 결정할 수 있다.
예를 들어, 제어부(330)는 제2 영역(1510) 상의 설정 메뉴(1521)을 통해 특정 타입이 선택되어진 상태에서, 제1 영역(1510)에 대한 사용자 입력에 근거하여 특정 영역 그래픽 객체의 타입을 기 선택된 타입으로 결정할 수 있다.
이처럼, 본 발명에서는, 특정 층에 대한 특정 맵(1700) 상에, 특정 주행 모드와 연계된 영역 그래픽 객체를 할당할 수 있는 편집 인터페이스(1500)를 제공할 수 있다.
이에, 사용자는 편집 인터페이스(1500)의 제2 영역(1520)을 통해 영역 그래픽 객체(1800)를 선택하는 것 만으로, 영역 그래픽 객체(1800)에 대응하는 특정 층의 특정 공간 내에서 로봇(R)이 특정 주행 모드로 동작하도록 제어할 수 있다.
또한, 사용자는 특정 맵(1700) 상에서, 영역 그래픽 객체(1800)의 색상을 통해, 영역 그래픽 객체(1800)에 연계된 로봇(R)의 주행 모드를 직관적으로 인식할 수 있다.
한편, 도 18에 도시된 것과 같이, 저장부(320)에는, 복수의 서로 다른 영역 그래픽 객체의 타입(1841 내지 1846) 각각에 복수의 서로 다른 주행 모드가 연계되어, 영역 연계 정보로 존재할 수 있다.
영역 연계 정보에는, 미리 정의(또는 설정)된 복수의 서로 다른 주행 모드에 대한 주행 특성 정보(1841a 내지 1846a)가 존재할 수 있다.
제1 타입의 영역 그래픽 객체(1841)에는, 제1 주행 모드가 매칭되어 있을 수 있다. 상기 제1 주행 모드의 주행 특성(1841a)은, 경로를 좀 더 엄격하게 추종하고, 회피를 최소화하면서 대기를 한하는 동작 모드와 관련될 수 있다. 로봇(R)은, 제1 타입의 영역 그래픽 객체(1841)에 대응되는 구역에서는, 경로를 엄격하게 추종하도록 주행을 수행할 수 있다.
제2 타입의 영역 그래픽 객체(1842)에는, 제2 주행 모드가 매칭되어 있을 수 있다. 상기 제2 주행 모드의 주행 특성(1842a)은, 보수적으로 주행하도록 하는 동작 모드와 관련될 수 있다. 로봇(R)은, 제2 타입의 영역 그래픽 객체(1842)에 대응되는 구역에서는, 상대적으로 다른 영역 보다 보수적인 주행을 수행할 수 있다.
제3 타입의 영역 그래픽 객체(1843)에는, 제3 주행 모드가 매칭되어 있을 수 있다. 상기 제3 주행 모드의 주행 특성(1843a)은, 엘리베이터와 연계된 주행 모드와 관련될 수 있다. 로봇(R)은, 제3 타입의 영역 그래픽 객체(1843)에 대응되는 구역에서는, 엘리베이터 탑승, 하차 및 대기 등과 같은 주행 모드로 동작을 수행할 수 있다.
제4 타입의 영역 그래픽 객체(1844)에는, 제4 주행 모드가 매칭되어 있을 수 있다. 상기 제4 주행 모드의 주행 특성(1844a)은, 금속 벽면과 연계된 주행 모드와 관련될 수 있다. 로봇(R)은, 제4 타입의 영역 그래픽 객체(1844)에 대응되는 구역에서는, 금속 벽면에 대응하면서 주행을 수행(예를 들어, 미끄럼 방지를 위한 주행을 수행)할 수 있다.
제5 타입의 영역 그래픽 객체(1845)에는, 제5 주행 모드가 매칭되어 있을 수 있다. 상기 제5 주행 모드의 주행 특성(1845a)은, 로봇(R)의 진입을 금지하는 것과 관련될 수 있다. 로봇(R)은, 제5 타입의 영역 그래픽 객체(1845)에 대응되는 구역에는 진입을 하지 않을 수 있다.
나아가, 영역 그래픽 객체가 할당되지 않은 영역(1846)에는 제6 주행 모드 모드가 매칭되어 있을 수 있다. 상기 제6 주행 모드의 주행 특성(1846a)은 기본 자율 주행 모드와 관련된 것일 수 있다. 로봇(R)은, 영역 그래픽 객체가 할당되지 않은 영역에서는, 기본 자율 주행 모드로 동작할 수 있다.
이와 같이, 건물(1000) 내에서 주행하는 로봇(R)은, 특정 맵(1700) 상에 할당된 영역 그래픽 객체에 연계된 주행 모드에 따라, 특정 구역에서 특정 주행 모드로 주행할 수 있다. 이하에서는 특정 맵(1700)에 할당된 영역 그래픽 객체에 근거하여, 로봇(R)의 주행 모드가 제어되는 방법에 대해 보다 구체적으로 설명하도록 한다.
제어부(330)는, 도 17b에 도시된 것과 같이, 적어도 하나의 영역 그래픽 객체(1800)가 할당되면, 영역 그래픽 객체(1800)에 대응되는 특정 구역에서 로봇(R)이 특정 주행 모드로 동작하도록, 특정 맵(1700)을 클라우드 서버(20)에 업데이트 할 수 있다.
클라우드 서버(20)는 특정 맵(1700) 상에 적어도 하나의 영역 그래픽 객체(1800)가 할당되어 있는 것에 기초하여, 로봇(R)이 적어도 하나의 영역 그래픽 객체(1800)에 대응되는 구역에서, 복수의 주행 모드 중 어느 하나의 주행 모드로 동작하도록 제어할 수 있다.
클라우드 서버(20)는, 특정 영역 그래픽 객체(1810)에 대응되는 구역(또는 영역)에서, 로봇(R)이 상기 특정 영역 그래픽 객체(1810)의 타입에 연계된 주행 모드의 주행 특성에 따라, 상기 특정 영역 그래픽 객체(1810)에 대응되는 구역(또는 영역)에서 주행하도록 제어할 수 있다.
보다 구체적으로, 클라우드 서버(20)는, 로봇(R)이, 특정 맵(1700)에서 제1 타입의 영역 그래픽 객체(1810)가 할당된 영역과 대응되는 특정 층의 제1 구역(영역)에 진입하는 경우, 상기 제1 주행 모드에 따라 주행하도록 로봇(R)을 제어할 수 있다.
그리고, 클라우드 서버(20)는 로봇(R)이 상기 제1 구역(영역)을 벗어나는 경우, 제1 영역을 벗어나서 로봇(R)이 위치하는 영역에 대응되는 영역 그래픽 객체의 타입에 근거하여, 로봇(R)의 주행 모드를 변경할 수 있다.
예를 들어, 로봇(R)이 상기 제1 구역(영역)을 벗어나 위치하는 새로운 구역(영역)이, 특정 맵(1700) 상에서 영역 그래픽 객체가 할당되지 않은 영역에 대응되는 구역인 경우, 클라우드 서버(20)는, 로봇(R)의 주행 모드를, 제1 주행 모드에서 기본 주행 모드로 변경할 수 있다. 이 때, 기본 주행 모드는 로봇(R)이 상기 제1 영역에 진입하기 전의 주행 모드에 해당할 수 있다.
다른 예로, 로봇(R)이 상기 제1 구역(영역)을 벗어나 위치하는 새로운 구역(영역)이, 특정 맵(1700)에서 제2 타입의 영역 그래픽 객체(1830)가 할당된 영역과 대응되는 구역(영역)인 경우, 클라우드 서버(20)는, 로봇(R)의 주행 모드를, 제1 주행 모드에서 제2 주행 모드로 변경할 수 있다.
이처럼, 클라우드 서버(20)는, 로봇(R)이 특정 맵(1700)에서 제2 타입의 영역 그래픽 객체(1830)가 할당된 영역과 대응되는 특정 층의 제2 영역(구역)에 진입하는 경우, 제2 주행 모드에 따라 주행하도록 로봇(R)을 제어할 수 있다.
그리고, 클라우드 서버(20)는 로봇(R)이 상기 제2 구역(영역)을 벗어나는 경우, 제2 영역을 벗어나서 로봇(R)이 위치하는 영역에 대응되는 영역 그래픽 객체의 타입에 근거하여, 로봇(R)의 주행 모드를 변경할 수 있다. 예를 들어, 클라우드 서버(20)는, 로봇(R)의 주행 모드를, 제2 주행 모드에서 기본 주행 모드로 변경할 수 있다. 이 때, 기본 주행 모드는 로봇(R)이 상기 제2 구역에 진입하기 전의 주행 모드에 해당할 수 있다.
한편, 클라우드 서버(20)는, 특정 맵(1700) 상에 적어도 하나의 영역 그래픽 객체(1800)가 할당되어 있는 것에 기초하여, 로봇(R)의 이동 경로를 생성할 수 있다.
예를 들어, 도 17b에서, 특정 맵(1700) 상에서의 제1 영역 그래픽 객체(1810)의 타입이, 앞서 설명한 제5 타입의 영역 그래픽 객체(1845)이고, 상기 제5 타입을 갖는 제1 영역 그래픽 객체(1810)에 대응되는 실제 구역을 제1 구역이라고 가정하자.
클라우드 서버(20)는, 상기 제5 타입을 갖는 제1 영역 그래픽 객체(1810)가 특정 맵(1700) 상에 할당되기 이전에는, 도 17a에 도시된 것과 같이, 제1 구역을 통과하는 이동 경로(1710)를 생성하여 로봇(R)의 이동을 제어할 수 있다.
이와 달리, 클라우드 서버(20)는, 상기 제5 타입을 갖는 제1 영역 그래픽 객체(1810)가 특정 맵(1700) 상에 할당된 이후에는, 도 17b에 도시된 것과 같이, 제1 구역을 회피하는 이동 경로(1720)를 생성하여 로봇(R)의 이동을 제어할 수 있다.
이와 같이, 본 발명에서는, 특정 맵(1700) 상에 영역 그래픽 객체(1800)를 할당할 수 있는 편집 인터페이스(1500)를 사용자에게 제공하고, 사용자는 편집 인터페이스(1500)를 통해, 특정 맵(1700) 상에 영역 그래픽 객체(1800)를 할당하는 것 만으로, 로봇(R)이 특정 층 내 특정 구역 내에서 특정 주행 모드로 동작하도록 제어할 수 있다.
한편, 앞서 설명한 것과 같이, 본 발명에서는 전자기기(50)의 디스플레이부 상에 편집 인터페이스(1500)를 제공하고 있는 상태에서, 편집 인터페이스(1500)에 대해 인가되는 사용자 입력에 근거하여 특정 맵(1700)상에 노드 그래픽 객체를 할당할 수 있다.
여기에서, 노드 그래픽 객체(1900)는, 특정 층의 실제 구역(실제 영역, 공간, 대상 공간 등으로 명명 가능)에 할당된 노드에 대응되도록, 특정 맵(1700) 상에 할당(배치 또는 표시 또는 표현 또는 포함)된 그래픽 객체를 의미할 수 있다. 이에, 본 발명에서는 노드 그래픽 객체(1900)와 노드를 혼용하여 사용할 수 있다.
또한, “특정 맵(1700) 상에 노드가 할당되다”라는 것은, “특정 맵(1700) 상에 노드 그래픽 객체(1900)가 할당되다” 또는 “노드 그래픽 객체가 할당된 특정 맵(1700)의 일 지점에 대응되는 실제 구역의 위치에 노드가 할당되다”, “노드가 할당된 실제 구역의 위치에 대응되는 특정 맵(1700) 상의 일 지점에 노드 그래픽 객체(1900) 가 할당되다”등으로 이해할 수 있다.
나아가, 노드 그래픽 객체(1900)는 속성(또는 종류)에 따라 서로 다른 세가지 타입을 가질 수 있다. ii) 제1 노드 타입을 가지는 노드는, 로봇(R)들의 주행에 연계된 주행 노드(주행 노드 그래픽 객체, 1910)이고, i) 제2 노드 타입을 가지는 노드는, 로봇들의 특정 동작에 연계된 동작 노드에 대응되는 동작 노드 그래픽 객체(동작 노드 그래픽 객체, 1920)이고, iii) 제3 노트 타입을 가지는 노드는, 특정 층에 배치된 설비에 연계된 설비 노드에 대응되는 설비 노드(설비 노드 그래픽 객체 1930)를 의미할 수 있다.
본 발명에서 서비스를 제공하는 로봇들은, 로봇들이 위치한 곳에 할당된 노드에 정의된 동작을 수행하도록 이루어질 수 있다.
동작 노드 그래픽 객체(1920)는, 노드 간 주행을 통해 특정 노드로 이동한 로봇(R)이, 특정 노드에 대응되는 동작을 수행하도록 미리 설정되어진 노드로 이해되어질 수 있다. 즉, 동작 노드 그래픽 객체(또는 주행 노드, 1920)는, 주행 노드 그래픽 객체(또는 주행 노드)의 역할도 포함하는 노드이기 때문에, 본 발명에서의 주행 노드 그래픽 객체(1910)는, 동작 노드 그래픽 객체(1930)를 포함하는 것을 이해될 수 있다.
설비 노드 그래픽 객체(1930)는 특정 층의 실제 구역(또는 대상 공간)에서 특정 설비가 위치한 특정 지점 및 로봇이 상기 특정 설비(예를 들어, 스피드 게이트, 엘리베이터 등)를 통과하기 위하여 필수적으로 경유해야 하는 특정 영역 중 적어도 하나와 대응되는 영역에 할당된다. 즉, 로봇이 특정 설비를 이용하는 경우, 로봇은 상기 특정 설비에 대응하는 복수의 설비 노드 그래픽 객체 중 적어도 일부로 이동해야 한다.
이하에서 설명되는 노드 그래픽 객체(1900)는, 주행 노드 그래픽 객체(1910), 동작 노드 그래픽 객체(1920) 및 설비 노드 그래픽 객체(1930) 중 적어도 하나를 포함하는 것으로 이해될 수 있다.
한편, 노드 그래픽 객체(1900)는, 각각의 노드 그래픽 객체(1900) 별로 노드 그래픽 객체 정보가 대응될 수 있다. 노드 그래픽 객체 정보는 적어도 세 가지 정보를 포함할 수 있다.
첫 번째로, 노드 그래픽 객체 정보는 좌표 정보를 포함한다. 단일 노드 그래픽 객체는 지도 상의 특정 좌표 또는 좌표 범위를 지정한다. 예를 들어, 노드 그래픽 객체(1900)는 지도 상에서 소정 면적을 가지는 원형의 영역을 지정하도록 이루어질 수 있다. 이를 위해, 노드 그래픽 객체1900)에 포함된 좌표 정보는 특정 좌표 또는 좌표 범위로 이루어질 수 있다.
두 번째로, 노드 그래픽 객체 정보)는 노드 그래픽 객체 연결 정보를 포함한다. 단일 노드 그래픽 객체는 해당 노드 그래픽 객체로부터 로봇이 이동 가능한 다른 노드 그래픽 객체1900)를 정의하는 정보를 포함한다. 노드 그래픽 객체 연결 정보는 로봇이 해당 노드 그래픽 객체로부터 이동 가능한 다른 노드 그래픽 객체의 고유 번호 또는 상기 다른 노드 그래픽 객체가 지정하는 좌표 정보를 포함할 수 있다.
세 번째로, 노드 그래픽 객체 정보는 설비 정보를 포함한다. 설비 정보는 대상 공간에 배치된 설비와 관련된 정보를 정의한다. 구체적으로, 설비 정보는 설비의 종류, 설비에 대응하는 서버와 관련된 정보, 설비가 배치된 위치에 대응하는 노드 그래픽 객체의 노드 그래픽 객체 정보 중 적어도 하나를 포함할 수 있다.
한편, 본 발명에서는, 특정 노드 그래픽 객체 및 상기 특정 노드 그래픽 객체와는 다른 노드 그래픽 객체를 서로 연결하는 선을, 엣지(Edge) 또는 엣지 그래픽 객체로 명명할 수 있다.
상기 엣지(또는 엣지 그래픽 객체)에는, 엣지 별로 엣지 정보(또는 엣지 그래픽 객체 정보)가 대응(또는 매칭)될 수 있다.
엣지 정보는, 상기 엣지에 의해 연결된 서로 다른 두개의 노드 그래픽 객체 사이에서, 로봇(R)이 이동 가능한 방향을 정의하는 방향 정보를 포함할 수 있다.
상기 방향 정보는, 두 개의 노드 그래픽 객체 중 어느 하나에서 다른 하나로 로봇이 이동 가능할 때, 로봇이 단방향으로만 이동 가능한지, 아니면 양방향으로 모두 이동 가능한지 정의한다.
예를 들어, 로봇(R)이, 제1 노드 그래픽 객체에서 제2 노드 그래픽 객체로 이동이 가능하지만, 제2 노드 그래픽 객체에서 제1 노드 그래픽 객체로는 이동이 제한된다고 가정하자. 제1 노드 그래픽 객체 및 제2 노드 그래픽 객체를 연결하는 엣지에 대응하는 엣지 정보에는, 제1 노드 그래픽 객체에서 제2 노드 그래픽 객체로의 단방향 이동을 정의하는 방향 정보가 포함될 수 있다.
다른 예를 들어, 로봇(R)이, 제1 노드 그래픽 객체에서 제2 노드 그래픽 객체로의 이동 및 제2 노드 그래픽 객체에서 제1 노드 그래픽 객체로의 이동이 모두 가능하다고 가정하자. 제1 노드 그래픽 객체 및 제2 노드 그래픽 객체를 연결하는 엣지에 대응하는 엣지 정보에는, 제1 노드 그래픽 객체 및 제2 노드 그래픽 객체 사이의 양방향 이동을 정의하는 방향 정보가 포함될 수 있다.
한편, 본 발명에서의 방향 정보는, 노드 그래픽 객체 정보에 포함되어 있는 것으로도 설명될 수 있다. 보다 구체적으로, 상기 방향 정보가, 제1 노드 그래픽 객체 및 제2 노드 그래픽 객체를 연결하는 엣지(또는 엣지 그래픽 객체)에 대응하는 엣지 정보(또는 엣지 그래픽 객체 정보)에 포함되어 있는 경우, 본 발명에서는, 상기 방향 정보가, 제1 노드 그래픽 객체 및 제2 그래픽 객체 각각에 대응하는 노드 그래픽 객체 정보에 포함된 것으로도 설명할 수 있다.
즉, 본 발명에서, 특정 노드 그래픽 객체에 설정된 방향 정보는, 상기 특정 노드 그래픽 객체 및 다른 특정 노드 그래픽 객체와 관련된 엣지(또는 엣지 그래픽 객체)에 포함된 방향 정보로 이해할 수 있다.
한편, 특정 층의 대상 공간은 복수의 구역으로 구획될 수 있다. 특정 맵(1700)은 복수의 구역을 포함한다. 각각의 구역에는 적어도 하나의 노드 그래픽 객체가 할당된다. 각각의 구역들은 구역에 포함된 적어도 하나의 노드를 기준으로 구분된다.
한편, 본 명세서에서 구역은 구역에 할당된 노드의 타입에 따라 두 가지 타입을 가질 수 있다. 구체적으로, 구역은 설비가 위치한 곳에 대응되는 영역에 할당되는 노드를 포함하는 제1구역 타입의 구역과 설비가 위치한 곳과 대응되지 않는 영역에 할당되는 노드를 포함하는 제2구역 타입의 구역으로 이루어질 수 있다.
제1 및 제2구역 타입 각각에는 동일 타입의 구역만 할당될 수 있다. 예를 들어, 제1구역 타입의 구역에는 제1노드 타입의 노드만 할당되며, 제2구역 타입의 구역에는 제2노드 타입의 노드만 할당될 수 있다.
각각의 구역에는 해당 구역에 대응하는 구역 정보가 대응될 수 있다. 구역 정보는, 해당 구역에 포함된 노드 각각의 일련 번호 및 위치 정보, 해당 구역에 포함된 노드 간의 연결 정보, 인접한 구역 간의 구역 연결 정보 및 설비 정보 중 적어도 하나를 포함할 수 있다.
구역 연결 정보는 해당 구역과 인접한 구역 별로 생성될 수 있다. 서로 이웃한 제1구역 및 제2구역에 대한 구역 연결 정보는 제1구역에 포함된 노드들 중 상기 제2구역과 가장 가깝게 배치된 제1노드의 노드 정보 및 제2구역에 포함된 노드들 중 상기 제1구역과 가장 가깝게 배치된 제2노드의 노드 정보를 포함할 수 있다. 즉, 구역 연결 정보는 구역 간 이동을 위해 이동해야 하는 노드를 정의한다.
이하에서는 첨부된 도면들과 함께 노드 그래픽 객체(1900)를 할당하는 과정에 대해서 보다 구체적으로 설명하도록 한다.
먼저, 제어부(330)는 전자기기(50)로부터 노드 편집에 대한 요청을 수신하는 것에 근거하여, 편집 인터페이스(1500)를 노드 편집 모드로 제어할 수 있다.
여기에서, “노드 편집 모드”는, 편집 인터페이스(1500)를 통해, 특정 맵(1700) 상에 노드 그래픽 객체(1900)를 할당하고, 노드 그래픽 객체(1900)의 타입(또는 타입) 및 관련 정보를 설정할 수 있는 모드로 이해될 수 있다.
제어부(330)는 편집 인터페이스(1500)이 영역 편집 모드 외의 모드(예를 들어, 기본 모드)인 상태에서, 노드 편집 모드에 대응되는 특정 편집 툴(도 19a에서 도면부호 1532 참조)이 선택되는 것에 근거하여, 편집 인터페이스(1500)의 모드를 노드 편집 모드로 전환할 수 있다.
제어부(330)는 편집 인터페이스(1500)가 노드 편집 모드로 동작하는 상태에서, 전자기기(50)로부터 수신한 편집 정보에 근거하여, 특정 맵(1700) 상에 노드 그래픽 객체(1900)를 할당할 수 있다.
편집 정보에는, 특정 맵(1700)에서의 i) 노드 그래픽 객체(1900)의 배치 위치, ii) 상기 노드 그래픽 객체(1900)의 타입 iii) 상기 노드 그래픽 객체(1900)의 식별 정보, vi) 상기 노드 그래픽 객체(1900)의 속성 정보 및 v) 상기 노드 그래픽 객체(1900)가 연동된 설비에 대한 정보 및 vi) 상기 노드 그래픽 객체(1900)가 포함된 구역(Zone)의 식별 정보 중 적어도 하나를 특정하기 위한 정보를 포함할 수 있다.
이러한 편집 정보는, 편집 인터페이스(1500)가 노드 편집 모드로 동작하는 상태에서 제1 영역(1510) 및 제2 영역(1520)에 대하여 입력되는 사용자 입력을 조합하여 형성될 수 있다.
앞서 설명한 것과 같이, 편집 인터페이스(1500)의 제1 영역(1510)에는 특정 맵(1700)이 포함되어 있을 수 있다. 그리고, 제2 영역(1520)에는 특정 맵(1700)의 편집과 관련된 설정을 위한 설정 메뉴가 포함되어 있을 수 있다.
이 때, 제2 영역(1520)에는, 편집 인터페이스(1500)가 노드 편집 모드로 동작하는 것에 따라, 노드 그래픽 객체와 관련된 설정을 위한 설정 메뉴가 포함되어 있을 수 있다.
제어부(330)는 제1 영역(1510)에 인가되는 사용자 입력에 근거하여, 노드 그래픽 객체(1900)의 배치 위치를 특정함으로써, 특정 맵(1700) 상에 할당할 노드 그래픽 객체(1900)를 특정할 수 있다.
그리고, 제어부(330)는 제2 영역(1520)에 인가되는 사용자 입력에 근거하여, 노드 그래픽 객체(1900)의 타입, 속성, 식별 정보, 포함 구역(Zone), 연동 설비, 시각적 외관(색상 또는 포함 아이콘의 모양)을 특정할 수 있다.
이하에서는 제1 영역(1510)에 인가되는 사용자 입력에 기초하여 노드 그래픽 객체(1900)의 배치 위치를 특정(제1 할당 프로세스)하는 방법과, 제2 영역(1520)에 인가되는 사용자 입력에 기초하여 노드 그래픽 객체(1900)의 타입 등을 특정(제2 할당 프로세스)하는 방법을 구체적으로 설명하도록 한다.
제1 할당 프로세스 및 제2 할당 프로세스의 순서는 변경될 수 있다. 즉, 제2 할당 프로세스가 먼저 이루어진 후에 제1 할당 프로세스가 이루어질 수 있고, 반대로, 제2 할당 프로세스가 먼저 이루어진 후에 제1 할당 프로세스가 이루어질 수 있다.
한편, 제어부(330)는, 제1 영역(1510)에 대한 사용자 입력이 인가된 것에 근거하여 수신된 편집 정보에 기초하여, 특정 맵(1700) 상에 할당할 노드 그래픽 객체(1911a, 1911b, 1911c, 1911d, 1911e)가 위치할 영역(또는 배치 위치)을 특정할 수 있다.
도 19a 및 19b에 도시된 것과 같이, 제어부(330)는, 제1 영역(1510)에 사용자 입력이 인가될 때 마다, 사용자 입력이 인가된 지점에 노드 그래픽 객체(1911a, 1911b, 1911c, 1911d, 1911e)를 출력(표시 또는 제공)할 수 있다.
그리고, 제어부(330)는 특정 맵(1700) 상에 할당된 복수의 주행 노드 그래픽 객체(1900)들 중 적어도 일부분의 노드들 사이에서의 로봇들의 주행 방향을 정의하기 위한 주행 방향 특정할 수 있다.
이러한 주행 방향은, 편집 인터페이스(1500)를 통해 복수의 주행 노드 그래픽 객체들 중 서로 인접한 주행 노드 그래픽 객체를 연결하는 연결선(1912a, 1912b, 도 19b 참조)이 추가되는 과정을 통하여 이루어질 수 있다.
편집 정보에는 특정 맵(1700) 상에 할당할 노드 그래픽 객체(1911a, 1911b, 1911c, 1911d) 각각 마다에 포함된 방향 정보를 포함할 수 있다.
이러한 방향 정보는 제1 영역(1510) 상에 사용자 입력이 인가되는 순서 및 방향 중 적어도 하나에 근거하여 생성될 수 있다.
일 예로, 방향 정보에는, 특정 노드 그래픽 객체보다 이전 순서에 할당된 노드 그래픽 객체 및 다음 순서에 할당된 노드 그래픽 객체로 로봇(R)이 이동 가능함을 안내하는 양 방향 정보를 포함할 수 있다.
보다 구체적으로, 도 19a에서, 제1 노드 그래픽 객체(1911a), 제2 노드 그래픽 객체(1911b), 제3 노드 그래픽 객체(1911c) 및 제4 노드 그래픽 객체(1911d)가 순서대로 할당되었다고 가정하자. 제2 노드 그래픽 객체(1911b)에 포함된 방향 정보에는, 이전 순서에 할당된 제1 노드 그래픽 객체(1911a) 및 다음 순서에 할당된 제3 노드 그래픽 객체(1911c)로 로봇(R)이 이동 가능함을 알리는 양 방향 정보가 포함되어 있을 수 있다.
다른 예로, 방향 정보에는, 특정 노드 그래픽 객체보다 다음 순서에 할당된 노드 그래픽 객체로만 로봇(R)이 이동 가능함을 안내하는 단 방향 정보를 포함할 수 있다. 보다 구체적으로, 제2 노드 그래픽 객체(1911b)에 포함된 방향 정보에는, 다음 순서에 할당된 제3 노드 그래픽 객체(1911c)로만 로봇(R)이 이동 가능함을 알리는 단 방향 정보가 포함되어 있을 수 있다.
나아가, 이러한 방향 정보는, 제2 영역(1520)을 통해 입력된 사용자 정보에 근거하여 생성 또는 변경될 수 있다. 예를 들어, 제2 영역(1520)에는 방향 정보를 입력 받기 위한 영역을 포함할 수 있다. 제어부(330)는, 제2 영역(1520)을 통해 특정 노드 그래픽 객체에 대한 방향 정보가 입력되는 것에 근거하여, 특정 노드 그래픽 객체에 대한 방향 정보를 생성 및 변경할 수 있다.
나아가, 제어부(330)는, 상기 연결선(1911a, 1912b)이 화살표로 이루어지도록 제어할 수 있다. 제어부(330)는 복수의 노드 그래픽 객체(1911a, 1911b, 1911c, 1911d) 각각에 포함된 방향 정보에 근거하여, 로봇(R)의 이동 가능 방향을 화살표를 가지는 연결선(1912a, 1912b, 도 19b 참조)으로 특정 맵(1700) 상에 표현할 수 있다.
사용자는, 편집 인터페이스(1500)에 사용자 입력을 인가하는 것 만으로, 실제 특정 지점에 대응되는 특정 맵(1700)의 영역 상에, 편리하고 손쉽게 노드 그래픽 객체를 할당할 수 있다.
한편, 제어부(330)는 편집 인터페이스(1500)가 노드 편집 모드로 동작하는 상태에서, 편집 인터페이스(1500)의 제2 영역(1520)에 인가되는 사용자 입력에 기초한 편집 정보를 수신하여, 특정 노드 그래픽 객체(1900)와 관련된 정보를 특정할 수 있다.
도 20에 도시된 것과 같이, 본 발명에서는, 제2 영역(1520)을 통해서 특정 노드 그래픽 객체와 관련된 다양한 정보에 대한 설정이 이루어질 수 있다.
도 20에 도시된 것과 같이, 특정 노드 그래픽 객체와 관련된 다양한 정보에는, i) 노드 그래픽 객체의 식별 정보(예를 들어, 노드 ID, 노드 명칭, 식별 번호 등, 1522), ii) 노드 그래픽 객체의 좌표 정보(1523), iii) 노드 그래픽 객체에 대한 복수의 타입 중 어느 하나의 타입에 대한 정보(1524a, 1524b, 1524c), iv) 노드 그래픽 객체를 포함하는 복수의 서로 다른 구역(Zone) 중 어느 하나의 구역에 대한 구역 정보(1525a, 1525b, 1525c), v) 노드 그래픽 객체에 연동된 시설에 대한 시설 정보(1526), vi) 노드 그래픽 객체에 대한 복수의 속성 중 어느 하나의 속성과 관련된 정보(1527, 1528) 및 vii) 노드 그래픽 객체에 연동된 시설과 관련된 마커 정보(1529) 중 적어도 하나를 포함할 수 있다.
제어부(330)는, 특정 맵(1700) 상에 할당된 복수의 노드 그래픽 객체 중 어느 하나의 그래픽 객체가 선택되는 것에 근거하여, 선택된 노드 그래픽 객체와 관련된 정보 및 상기 정보를 입력 받기 위한 영역을 제2 영역(1520) 상에 제공할 수 있다.
첫 번째로, 상기 노드 그래픽 객체의 식별 정보는(1522), 복수의 노드 그래픽 객체 각각 마다 서로 다르게 설정될 수 있다. 예를 들어, 서로 다른 제1 노드 그래픽 객체 및 제2 노드 그래픽 객체에는 서로 다른 제1 식별 정보 및 제2 식별 정보가 각각 매칭될 수 있다.
두 번째로, 노드 그래픽 객체의 좌표 정보(1523)는 2차원 좌표(x, y) 또는 3차원 좌표(x, y, z)중 어느 하나의 좌표 정보와 각도 정보(“방향 정보”로도 표현 가능)를 포함할 수 있다.
상기 좌표 정보는 제1 영역(1510) 상에 입력되는 사용자 입력에 근거하여 결정(또는 생성)될 수 있다. 제어부(330)는 제1 영역(1510)에 인가된 사용자 입력에 대응되는 좌표 정보를, 상기 사용자 입력에 근거하여 특정 맵(1700) 상에 할당된 노드 그래픽 객체(1900)에 매칭시킬 수 있다.
상기 좌표 정보는, 특정 노드 그래픽 객체가 할당된 지점에 대한 좌표를 포함할 수 있다. 이러한 좌표 정보는, 제1 영역(1510)에 입력되는 사용자 입력에 근거하여 특정 노드 그래픽 객체에 매칭될 수 있다.
상기 좌표 정보는 제1 영역(1510)에 기 할당된 노드 그래픽 객체의 위치를 변경하는 사용자 입력에 근거하여 변경될 수 있다.
보다 구체적으로, 제어부(330)는, 특정 맵(1700) 상의 제1 지점에 기 할당된 노드 그래픽 객체가 사용자 입력(예를 들어, 드래그(Drag))에 근거하여 제2 지점으로 이동되면, 상기 노드 그래픽 객체에 매칭된 좌표 정보를 제1 지점에 대응되는 좌표 정보에서 제2 지점에 대응되는 좌표 정보로 변경할 수 있다.
이와 달리, 상기 좌표 정보는, 제2 영역(1520)에 인가되는 사용자 입력에 의해서는 임의로 변경되지 않도록 이루어질 수 있다.
제어부(330)는 제2 영역(1520)상에서, 상기 좌표 정보가 출력되는 영역에 대해서는 사용자 입력을 인가 받는 기능을 비활성화 함으로써, 제2 영역을 통해 노드 그래픽 객체의 좌표 정보가 변경되지 않도록 할 수 있다.
한편, 상기 각도 정보는, 노드 그래픽 객체에 대응되는 실제 노드에 위치하는 로봇(R)이 바라보는 방향과 관련된 정보로, 특정 맵(1700)의 기준선(또는 기준점)을 기준으로 어느 방향(ex: 시계방향 또는 반시계방향)으로 어느 각도만큼 로봇(R)이 회전하여, 로봇(R)의 정면이 어느 방향을 바라보도록 할 것인지를 정의하는 정보일 수 있다.
예를 들어, 도 21의 (a)에 도시된 것과 같이, 특정 노드 그래픽 객체에 0°의 각도 정보(D1)가 매칭되어 있으면, 로봇(R)은 특정 노드 그래픽 객체에 대응되는 노드에서 기준선(또는 기준점)을 기준으로 0°만큼 회전하여 위치할 수 있다.
다른 예로, 도 21의 (b)에 도시된 것과 같이, 특정 노드 그래픽 객체에 90°의 각도 정보(D2)가 매칭되어 있으면, 로봇(R)은 특정 노드 그래픽 객체에 대응되는 노드에서 기준선(또는 기준점)을 기준으로 90°만큼 회전하여 위치할 수 있다.
사용자는, 도 21의 (a)에 도시된 것과 같이, 엘리베이터 대기와 관련된 노드에서, 로봇(R)의 정면이 엘리베이터 방향과 관련되어지도록 각도 정보를 설정함으로써, 로봇(R)이 엘리베이터 대기와 관련된 노드에서, 엘리베이터를 바라보며 대기하도록 제어할 수 있다.
상기 각도 정보는 특정 맵(1700) 상에 노드 그래픽 객체가 할당되는 것에 근거하여, 미리 설정된 값이 노드 그래픽 객체에 매칭될 수 있다. 상기 미리 설정된 값은 시스템(3000) 관리자에 의해 미리 설정된 각도 정보로, 이를 기본 각도 정보 (또는 기본 각도 값, 디폴트 값(default value))으로 명명할 수 있다.
이러한 기본 각도 정보는, 제2 영역(1520) 상에 인가되는 사용자 정보에 근거하여 변경될 수 있다.
제어부(330)는, 제2 영역(1520)상에서, 상기 각도 정보가 출력되는 영역에 대해서는 사용자 입력을 인가받는 기능을 활성화함으로써, 제2 영역을 통해 노드 그래픽 객체의 각도 정보가 변경되도록 할 수 있다.
한편 세 번째로, 노드 그래픽 객체에 대한 타입 정보(1524a, 1524b, 1524c)는, 노드 그래픽 객체의 속성을 결정하는 정보로, 노드 그래픽 객체의 타입에는, i) 로봇(R)의 주행과 연계된 주행 노드 그래픽 객체, ii) 로봇(R)의 동작과 연계된 동작 노드 그래픽 객체 및 iii) 설비와 관련된 설비 노드 그래픽 객체 중 어느 하나와 관련된 정보일 수 있다.
도 22에 도시된 것과 같이, 저장부(320)에는 노드 그래픽 객체의 타입과 관련된 노드 타입 정보가 존재할 수 있다. 이러한 노드 타입 정보에는, 노드 타입 정보 각각에는, 상기 노드가 제1 타입 노드(주행 타입 노드), 제2 노드 타입(동작 타입 노드) 및 제3 노드 타입(설비 타입 노드) 중 어느 하나의 타입이 매칭되어 있을 수 있다.
예를 들어, 도 22에서 제1 노드 정보(“Default”, 2211)는 로봇(R)의 일반 주행과 연계된 노드로, 제1 타입 노드(주행 타입 노드)가 매칭되어 있을 수 있을 수 있다. 또한, 제2 노드 정보(“Robot Elevator”, 2212), 제3 노드 정보(“Speed Gate”, 2213), 제4 노드 정보(“Charging”, 2214) 각각에는, 건물(1000)에 위치한 설비와 관련된 노드로, 제3 타입 노드(설비 타입 노드)가 매칭되어 있을 수 있다. 또한, 제5 노드 정보(“Queue”, 2215), 제6 노드 정보(“Wating”, 2216)) 각각은, 로봇(R)의 동작(큐잉 또는 대기)과 관련된 노드로, 제2 타입 노드(동작 타입 노드)가 매칭되어 있을 수 있다.
제어부(330)는 제2 영역(1520)에 인가되는 사용자 입력을 통해, 상기 복수의 노드 타입 정보 중 어느 하나가 선택되는 것에 근거하여, 특정 노드 그래픽 객체의 타입을 결정(또는 설정)할 수 있다. 그리고, 제어부(330)는 설정(또는 결정)된 타입을 특정 노드 그래픽 객체에 매칭할 수 있다.
예를 들어, 도 20의 (a)에 도시된 것과 같이, 제2 영역(1520)에서 “Queueing(1524a)”가 선택되면 제어부(330)는 특정 노드 그래픽 객체에 제2 노드 타입(동작 노드 타입)을 매칭할 수 있다.
클라우드 서버(20)는 로봇(R)이 상기 제2 노트 타입에 대응되는 동작 노드에 위치하면, 상기 제2 노드 타입에 매칭된 특정 동작(예를 들어, 로봇(R)의 주행을 정지하고 대기(wait) 또는 큐잉(Queueing))하도록 로봇(R)을 제어할 수 있다.
다른 예를 들어, 도 20의 (b) 및 도 20의 (c)에 도시된 것과 같이, 제2 영역(1520)에서 “Robot Elevator(1524b)” 또는 “Charger(1524c)”가 선택되면 제어부(330)는 특정 노드 그래픽 객체에 제3 노드 타입(설비 노드 타입)을 매칭할 수 있다.
한편, 네 번째로, 노드 그래픽 객체의 구역(Zone) 정보(1525a)는, 특정 맵(1700)에 할당된 노드들 중 적어도 일부의 노드들이 동일 구역(ZONE)에 포함되도록 그룹화하는 정보로 이해될 수 있다.
도 23a에 도시된 것과 같이, 특정 맵(1700) 상에 할당된 복수의 노드들 중 적어도 일부의 노드들(2311a, 2312a, 2313a)은, 제1 동일 구역(ZONE, 2310a)에 포함되도록 제1 그룹으로 그룹화되고, 다른 적어도 일부의 노드들(2311b, 2312b, 2313b)은, 제2 동일 구역(ZONE, 2310b)에 포함되도록 제2 그룹으로 그룹화될 수 있다.
제어부(330)는, 사용자가 편집 인터페이스(1500)를 보는 것 만으로 동일 구역으로 그룹화된 복수의 노드들을 직관적으로 인식할 수 있도록, 동일 구역에 포함되도록 동일 그룹으로 그룹화된 복수의 노드들은 서로 동일한 시각적 외관(예를 들어, 색상, 모양, 패턴, 입체감, 아이콘 형상 등)으로 제1 영역(1510)상에 제공할 수 있다.
예를 들어, 도 23a에서, 제1 동일 구역(2310a)에 포함되도록 제1 그룹으로 그룹화된 복수의 노드들(2311a, 2312a, 2313a)은 서로 동일한 아이콘(예를 들어, 번개 모양 아이콘)을 포함할 수 있다.
다른 예를 들어, 도 23a에서, 제2 동일 구역(2310b)에 포함되도록 제2 그룹으로 그룹화된 복수의 노드들(2311b, 2312b, 2313b)은 서로 동일한 색상으로 제1 영역(1510) 상에 제공될 수 있다.
한편, 제어부(330)는 제2 영역(1520)에 대해 인가된 사용자 입력에 근거하여, 특정 맵(1700) 상에 할당된 복수의 노드들 중 적어도 일부를, 서로 동일 구역(Zone)에 포함되도록, 동일한 그룹으로 그룹화 할 수 있다.
본 발명에서는, “노드를 그룹화 한다”는 것을, “노드를 특정 동일 구역(Zone)에 포함시키다”, ”노드를 특정 그룹에 추가하다“, “노드를 특정 구역에 등록하다” 로 이해할 수 있다.
한편, 제어부(330)는 도 23b에 도시된 것과 같이, 제2 영역(1520)을 통해 인가되는 사용자 입력(또는 사용자 정보)에 근거하여, 특정 맵(1700) 상에 할당된 복수의 노드들 중 적어도 일부를, 동일 그룹으로 그룹화 할 수 있다.
특정 맵(1700)에 할당된 복수의 노드 그래픽 객체 중 어느 하나가 선택되면, 제2 영역(1520)에는 선택된 노드의 식별 정보 및 상기 선택된 노드가 포함된 구역의 식별 정보 중 적어도 하나가 제공될 수 있다.
제어부(330)는 상기 선택된 노드가, 특정 구역에 포함되어 있지 않으면, 도 23b의 (a)에 도시된 것과 같이, 제2 영역(1520) 상에 상기 선택된 노드를 특정 구역에 포함시키기 위한 사용자 입력을 선택받을 수 있는 기능을 활성화시킬 수 있다.
도 23b의(b)에 도시된 것과 같이, 제어부(330)는 특정 층에 존재하는 적어도 하나의 구역(ex: “Wating-007-001”, “Wating-007-002”)에 대응하는 항목을 포함하는 구역 목록(2321)을 제공할 수 있다. 제어부(330)는 상기 구역 목록(2321) 중 어느 하나의 항목이 선택되는 것에 근거하여, 선택된 항목에 대응되는 구역에 상기 선택된 노드 그래픽 객체를 포함시킬 수 있다.
나아가, 제어부(330)는 제2 영역(1520) 상에 입력된 사용자 선택에 의해 전자기기(50)로부터 구역 생성 요청을 수신하면, 새로운 구역을 생성하고, 새로 생성된 구역 상에 상기 선택된 노드 그래픽 객체를 포함시킬 수 있다.
도 23b의(c)에 도시된 것과 같이, 제2 영역(1520) 상에서 “신규 추가”에 대응되는 영역(2322)이 선택되면, 제어부(330)는 새로운 구역을 생성한 후 선택된 노드를 상기 새로운 구역에 포함시킬 수 있다.
이 때, 상기 새로운 구역은, 상기 선택된 노드가 위치하는 특정 층과 연계된 것일 수 있다. 예를 들어, 상기 선택된 노드가 7층에 위치하는 경우, 상기 새로운 구역은 7층에 연계되어 생성될 수 있다.
한편, 특정 구역(Zone)에는 특정 구역과 관련된 다양한 정보가 매칭되어 존재할 수 있다.
제어부(330)는 전자기기(50)로부터 특정 구역 정보 제공 요청을 수신하는 것에 근거하여, 도 23c에 도시된 것과 같이, 편집 인터페이스(1500)의 제2 영역(1520) 상에 특정 구역과 관련된 다양한 정보를 제공할 수 있다.
“특정 구역 정보 제공 요청”은 다양하게 이루어질 수 있다. 예를 들어, 도 23b에서 특정 노드 그래픽 객체를 특정 구역에 포함시키는 과정에서, 특정 구역의 명칭에 대한 사용자 입력이 인가되는 것에 근거하여 이루어질 수 있다. 다른 예를 들어, 도 23f에 도시된 것과 같이, 제2 영역(1520)에 제공되는 구역 리스트(2360)에 포함된 복수의 항목(2361, 26=362, 2363, 2364, 2365) 중 어느 하나의 항목에 선택되는 것에 근거하여, 선택된 항목에 대응되는 특정 구역의 정보 제공 요청이 이루어질 수 있다.
도 23c에 도시된 것과 같이, 특정 구역 정보에는 i) 특정 구역의 식별 정보(ex: Wating-007-001), ii) 특정 구역의 타입(또는 속성) 정보(2331), iii) 특정 구역과 관련된 서비스 정보(2332), vi) 특정 구역과 관련된 라벨(또는 키워드 정보, 2333), v) 특정 구역과 연계(또는 연동)된 설비 정보(2334), vi) 특정 구역에 포함된 적어도 하나의 노드 그래픽 객체에 대응되는 항목(2335a, 2335b, 2335c)를 포함하는 노드 리스트(2335) 중 적어도 하나를 포함할 수 있다.
본 발명에 따른 저장부(320)에는, 특정 구역과 상기 특정 구역 정보가 서로 매칭되어 매칭 정보로서 존재할 수 있다.
한편, 상기 특정 구역의 타입 정보(2331)은, 상기 특정 구역에 포함된 적어도 하나의 노드 그래픽 객체의 타입에 근거하여 결정(특정 또는 설정)되거나, 사용자의 선택에 근거하여 결정(특정 또는 설정)될 수 있다.
보다 구체적으로, 상기 특정 구역에, 특정 타입의 노드 그래픽 객체(ex: 설비 노드 그래픽 객체)가 포함되어 있는 경우에, 상기 특정 구역의 타입은, 상기 특정 노드 그래픽 객체에 대응되는 타입(ex: 설비 구역)으로 상기 특정 구역의 타입이 설정될 수 있다.
나아가, 상기 특정 구역에, 서로 다른 타입의 노드 그래픽 객체가 포함되어 있는 경우, 상기 서로 다른 타입의 노드 그래픽 객체가 공통적으로 추구하는 목적에 근거하여, 상기 특정 구역의 타입이 설정될 수 있다.
예를 들어, 특정 구역에, 엘리베이터에 대응되는 설비 노드 그래픽 객체 및 엘리베이터 앞에서 엘리베이터를 대기하는 대기 동작에 대응되는 동작 노드 그래픽 객체를 포함한다고 가정하자. 이 경우, 상기 특정 구역의 타입은 엘리베이터 이용과 관련되어질 수 있다.
한편, 제어부(330)는 상기 제2 영역(1520) 상에 상기 특정 구역 정보가 출력된 상태에서, 상기 특정 구역 정보 중 어느 하나에 대한 사용자 입력이 이루어지도록, 제2 영역(1520)에 대한 선택 또는 입력 기능을 활성화시킬 수 있다.
제어부(330)는 상기 제2 영역(1520)을 통해 선택 또는 입력된 정보에 근거하여, 상기 특정 구역에 대한 특정 구역 정보를 설정(결정 또는 특정) 또는 변경할 수 있다.
예를 들어, 제2 영역(1520)을 통해, 특정 구역과 연동(또는 연계)되어질 시설 정보(2334)를 입력 받는 경우, 제어부(330)는 특정 구역과 입력된 시설 정보를 서로 연동시킬 수 있다. 보다 구체적으로, 제어부(330)는 특정 구역에 포함된 적어도 하나의 노드 그래픽 객체와, 입력된 시설 정보를 각각 서로 연동 시킬 수 있다.
다른 예를 들어, 제어부(330)는 제2 영역(1520)을 통해 인가된 사용자 입력에 근거하여 특정 구역의 타입을 설정 또는 변경할 수 있다.
이와 같이, 본 발명에서는 제2 영역(1520)을 통해 입력되는 정보에 근거하여, 특정 구역에 대한 정보를 설정할 수 있으며, 제2 영역(1520)을 통해 입력되는 정보를 본 발명에서는 “편집 정보”로 명명할 수 있음은 앞서 설명하였다.
한편, 동일 구역에 포함되어 있는 복수의 노드 그래픽 객체 각각은, 우선 순위가 매칭되어 있을 수 있다. 그리고, 도 23d의 (a)에 도시된 것과 같이, 제2 영역(1520) 상에는, 상기 우선 순위에 근거하여 노드 그래픽 객체 각각에 대응되는 항목(2335a, 2335b, 2335c)가 정렬된 노드 리스트(node list, 2335)가 제공될 수 있다.
여기에서, “우선 순위”는, 로봇(R)의 이용 순서와 관련된 것으로, 우선 순위가 높은 노드 그래픽 객체가 우선 순위가 낮은 노드 그래픽 객체 보다 우선하여 이용될 수 있다.
예를 들어, 특정 구역에는 제1 충전기에 대응되는 제1 설비 노드 그래픽 객체 및 제2 충전기에 대응되는 제2 설비 노드 그래픽 객체가 포함되어 있으며, 상기 제1 설비 노드 그래픽 객체에는 제1 우선 순위가 매칭되어 있고, 제2 설비 노드 그래픽 객체에는 제2 우선순위가 매칭되어 있다고 가정하자. 제어부(330)는 제1 충전기 및 제2 충전기가 모두 비어 있는 상태일 때, 로봇(R)이 우선순위가 높은 제1 충전기로 이동하여 충전을 수행하도록 이동 경로(또는 주행 경로)를 생성할 수 있다.
한편, 노드 리스트(2335)에는 우선 순위가 높은 노드 그래픽 객체에 대응되는 항목부터 우선 순위가 낮은 노드 그래픽 객체에 대응되는 항목까지, 복수의 항목(2335a, 2335b, 2335c)이 순차적으로 정렬되어 있을 수 있다.
예를 들어, 도 23d의 (a)에 도시된 것과 같이, 노드 리스트(2335)에는, 제1 우선 순위가 매칭된 제1 노드 그래픽 객체(ex: “NODE_A”)에 대응되는 제1 항목(2335a)이 맨 위 상단에 위치하고, 상기 제1 항목(2335a) 아래에는, 상기 제2 우선 순위보다 낮은 제2 우선 순위가 매칭된 제2 노드 그래픽 객체(ex: “NODE_B”)에 대응되는 제2 항목(2335b)이 위치하고, 상기 제2 항목(2335b) 아래에는, 상기 제2 우선 순위보다 낮은 제3 우선 순위가 매칭된 제3 노드 그래픽 객체(ex: “NODE_C”)에 대응되는 제3 항목(2335c)이 위치할 수 있다.
나아가, 도 23e의 (a)에 도시된 것과 같이, 특정 맵(1700) 상에 할당된 복수의 노드 그래픽 객체(2350a, 2350b, 2350c) 각각에는, 각각의 노드 그래픽 객체에 매칭된 우선 순위 정보가 포함되어 있을 수 있다.
예를 들어, 제1 노드 그래픽 객체(2350a)에는 제1 우선 순위에 대응되는 숫자 “1”이 포함되어 있고, 제2 노드 그래픽 객체(2350b)에는 제2 우선 순위에 대응되는 숫자 “2”가 포함되어 있고, 제3 노드 그래픽 객체(2350c)에는 제3 우선 순위에 대응되는 숫자 “3”이 포함되어 있고,
클라우드 서버(20)는, 특정 구역에 포함된, 복수의 노드 그래픽 객체 각각에 매칭(또는 할당)된 우선 순위에 근거하여, 로봇(R)의 제어를 수행할 수 있다.
보다 구체적으로, 클라우드 서버(20)는, 동일 구역 내에 포함된 제1 노드 그래픽 객체 내지 제3 노드 그래픽 객체(2350a, 2350b, 23580c) 각각에, 제1 우선 순위 내지 제3 우선 순위가 매칭(또는 할당)된 것에 근거하여, 제1 노드 내지 제3 노드 중 제1 노드를 우선으로 고려하여 로봇(R)의 이동 경로를 생성할 수 있다.
예를 들어, 동일 구역 내에 포함된 제1 노드 그래픽 객체 내지 제3 노드 그래픽 객체(2350a, 2350b, 23580c) 각각이, 제1 충전기 내지 제3 충전기에 대응되는 그래픽 객체라고 가정하자. 클라우드 서버(20)는, 제1 충전기 내지 제3 충전기가 모두 비어 있는 상태(또는 충전 가능한 상태)인 때에, 제1 우선 순위가 할당(또는 매칭)된 제1 노드 그래픽 객체에 대응하는 제1 충전기에서 로봇(R)이 충전을 수행하도록 로봇(R)을 제어할 수 있다.
한편, 제어부(330)는 편집 인터페이스(1500)에 인가되는 사용자 입력에 근거하여, 동일 구역 내에 포함된 복수의 노드 그래픽 객체의 우선 순위를 변경할 수 있다. 나아가, 상기 복수의 노드 그래픽 객체의 우선 순위가 변경되는 것에 근거하여 특정 맵(1700) 상에 제공되는 복수의 노드 그래픽 객체에 포함된 우선 순위 정보를 업데이트 할 수 있다.
도 23d의 (b)에 도시된 것과 같이, 제1 영역(1520) 상에서 노드 리스트에 포함된 복수의 항목 중 어느 하나의 항목(예를 들어, 제1 항목, 2335a)이 선택되면, 선택된 항목이 어느 항목인지 사용자가 직관적으로 인지할 수 있도록, 상기 선택된 항목(2335a)은 다른 항목(2335b, 2335c)와 다른 시각적 외관을 가지는 강조 표시가 이루어질 수 있다.
그리고, 제어부(330)는 노드 리스트에서 어느 하나의 항목 (예를 들어, 제1 항목, 2335a)이 선택된 상태에서, 선택된 항목(2335)을 이동시킬 위치에 대한 선택을 전자기기(50)로부터 수신하는 것에 근거하여, 선택된 항목(2335)의 위치를 노드 리스트 상에 변경할 수 있다.
예를 들어, 도 23d (c)에 도시된 것과 같이, 사용자가 노드 리스트에서 어느 하나의 항목(예를 들어, 제1 항목, 2335a)을 선택한 상태에서, 선택된 항목(2335a)을, 제3 항목(2335c) 아래로 이동시키는 사용자 입력(예를 들어, 드래그(Drag))에 근거하여, 도 23d (d)에 도시된 것과 같이, 제어부(330)는 선택된 항목(예를 들어, 제1 항목, 2335a)을 제3 항목(2335c)아래로 이동시킬 수 있다.
그리고, 제어부(330)는, 노드 리스트 상에 변경된 항목(2335a, 2335b, 2335c)의 위치에 근거하여, 노드 그래픽 객체 각각에 매칭된 우선 순위를 변경(또는 업데이트)할 수 있다.
예를 들어, 도 23의 (d)에 도시된 것과 같이, 노드 리스트(2335)의 맨 위 상단에 위치하는 제2 항목(2335b)에 대응되는 제2 노드 그래픽 객체에는 제1 우선 순위를 매칭하고, 제3 항목(2335c)에 대응되는 제3 노드 그래픽 객체에는 제2 우선 순위를 매칭하고, 제1 항목(2335a)에 대응되는 제1 노드 그래픽 객체에는 제3 우선 순위를 매칭할 수 있다.
나아가, 제어부(330)는, 동일 구역에 포함된 복수의 노드 그래픽 객체 각각에 매칭된 우선 순위가 변경(또는 업데이트)된 것에 근거하여, 도 23e의 (b)에 도시된 것과 같이, 특정 맵(1700) 상에 할당된 복수의 노드 그래픽 객체(2350a, 2350b, 2350c) 각각에 포함된 우선 순위 정보를 변경(또는 업데이트)할 수 있다.
예를 들어, 제1 노드 그래픽 객체(2350a’)에는 변경된 제3 우선 순위에 대응하는 숫자 “3”이 포함되도록 업데이트 되고, 제2 노드 그래픽 객체(2350b’)에는 변경된 제1 우선 순위에 대응되는 숫자 “1”이 포함되도록 업데이트 되며, 제3 노드 그래픽 객체(2350c’)에는 제2 우선 순위에 대응되는 숫자 “2”가 포함되도록 업데이트 될 수 있다.
나아가, 클라우드 서버(20)는, 특정 구역에 포함된, 복수의 노드 그래픽 객체 각각에 매칭(또는 할당)된 우선 순위가 변경된 것에 근거하여, 로봇(R)의 제어를 우선 순위 변경 전과 다르게 수행할 수 있다.
보다 구체적으로, 클라우드 서버(20)는, 동일 구역 내에 포함된 제1 노드 그래픽 객체 내지 제3 노드 그래픽 객체(2350a, 2350b, 23580c) 중 제2 노드 그래픽 객체에 제1 우선 순위가 매칭(또는 할당)되도록 변경된 것에 근거하여, 제1 노드 내지 제3 노드 중 제2 노드를 우선으로 고려하여 로봇의 이동 경로를 생성할 수 있다.
예를 들어, 클라우드 서버(20)는, 제1 충전기 내지 제3 충전기가 모두 비어 있는 상태(또는 충전 가능한 상태)인 때에, 제1 우선 순위가 할당(또는 매칭)된 제2 노드 그래픽 객체에 대응하는 제2 충전기에서 로봇(R)이 충전을 수행하도록 로봇(R)을 제어할 수 있다.
한편, 본 발명에 따른 편집 인터페이스(1500)는, 구역에 대한 정보를 편집 및 관리할 수 있는 사용자 인터페이스를 제공할 수 있다.
도 23f의 (a)에 도시된 것과 같이, 제어부(330)는, 전자기기(50)로부터 구역 리스트 제공 요청을 수신하는 것에 근거하여, 제2 영역(1520)상에 구역 리스트(2360)를 제공할 수 있다.
구역 리스트(2360)에는 적어도 하나의 구역에 대응되는 항목(이하, 복수의 항목, 2361 내지 2365)을 포함할 수 있다.
상기 구역 리스트(2360)에 포함된 복수의 항목은 특정 층에 연계된 구역에 대응되는 항목에 해당할 수 있다. 예를 들어, 상기 구역 리스트(2360)에는, 7층에 연계된 제1 구역 내지 제5 구역 각각에 대응되는 항목을 포함할 수 있다.
상기 구역 리스트(2360)에 포함된 각 항목에는, 특정 항목(2361)에 대응되는 구역의 식별 정보(예를 들어, “ZONE-ID-001”), 특정 항목(2361)에 대응되는 구역에 포함된 노드 그래픽 객체의 개수 정보(ex: “5”, 2361a)를 포함할 수 있다. 상기 개수 정보를 통해, 사용자는 각 구역 마다에 포함된 노드 그래픽 객체의 개수를 직관적으로 인지할 수 있다.
나아가, 상기 구역 리스트(2360)에 포함된 각 항목에는, 특정 항목(2365)에 대응되는 구역의 삭제 요청을 수신받는 기능 아이콘(2365a)를 더 포함할 수 있다.
제어부(330)는 상기 기능 아이콘(2365a)에 대한 사용자 입력을 수신하는 것에 근거하여, 기능 아이콘(2365a)을 포함하는 특정 항목(2365)에 대응되는 특정 구역과 관련된 정보를 삭제할 수 있다. 이 때, 제어부(330)는 상기 기능 아이콘(2365a)가 선택되면, 도 23f의 (b)에 도시된 것과 같이, 구역 정보 삭제를 안내하는 안내 정보(“Zone을 삭제하면 Node에 입력된 Zone의 정보도 모두 제거됩니다. Zone을 삭제 하시겠습니까?”)를 출력할 수 있다.
제어부(330)는 상기 기능 아이콘(2365a)에 대한 사용자 입력을 수신하는 것에 근거하여, 특정 구역과 관련된 정보를 삭제할 수 있다. 나아가, 제어부(330)는 특정 구역에 포함된 적어도 하나의 노드 그래픽 객체 기 매칭되어 있는 상기 특정 구역의 정보를 삭제할 수 있다. 즉, 제어부(330)는 특정 구역에 포함되어 있던 노드 그래픽 객체가, 더 이상 특정 구역에 포함되지 않도록 그룹화를 해제할 수 있다.
나아가, 제어부(330)는 상기 특정 구역과 관련된 기능 아이콘(2365a)에 대한 사용자 입력을 수신하는 것에 근거하여, 특정 맵(1700) 상에서, 상기 특정 구역에 포함된 적어도 하나의 노드 그래픽 객체의 할당을 해제할 수 있다. 즉, 제어부(330)는 특정 맵(1700) 상에 중첩하여 표시되는 노드 그래픽 객체가 더 이상 특정 맵(1700) 상에 제공되지 않도록 노드 그래픽 객체를 삭제할 수 있다.
이처럼, 본 발명에서는 특정 맵(1700)에 할당된 특정 노드 그래픽 객체를 각각 삭제하는 사용자 인터페이스를 제공할 수 있을 뿐만 아니라, 특정 구역에 포함된 복수의 노드 그래픽 객체를 일괄적으로 한번에 삭제할 수 있는 사용자 인터페이스를 제공할 수 있다.
이와 같이, 본 발명에서는 사용자가 자유롭고 편리하게, 복수의 노드를 하나의 구역으로 그룹화 하고, 동일 구역 내에 포함된 복수의 노드의 우선 순위를 편집할 수 있는 사용자 인터페이스를 제공할 수 있다. 이를 통해, 사용자는 본 발명에서 제공하는 사용자 인터페이스를 통해 건물(1000) 내에서 서비스를 제공하는 로봇(R)들의 주행 경로 및 동작들을 편리하게 설정할 수 있으며, 설정 내용을 직관적으로 인식할 수 있다.
이러한 본원발명의 사용자 인터페이스는, 복수의 층으로 이루어지고 복수의 로봇(R)이 존재하는 건물(1000)에서 로봇(R)을 효율적으로 관리하는데 최적화된 서비스를 제공할 수 있다.
한편, 앞서 설명한 것과 같이, 특정 맵(1700) 상에 할당된 노드 그래픽 객체(1900) 및 구역 중 적어도 하나에는, 건물(1000) 내 특정 층에 위치하는 설비에 대한 설비 정보가 매칭되어 있을 수 있다.
제어부(330)는 노드 그래픽 객체(1900) 및 구역 중 적어도 하나에 설비 정보가 매칭되어 있는 것에 근거하여, 특정 노드 그래픽 객체(1900) 또는 특정 구역에 포함된 복수의 노드 그래픽 객체와 상기 설비를 서로 연동 시킬 수 있다.
도 24(a)에 도시된 것과 같이, 제어부(330)는 제2 영역(1520)을 통해 입력되는 설비 정보(2410)에 근거하여, 상기 특정 노드와 상기 설비 정보에 포함되는 적어도 하나의 설비 인프라(2420, 2430, 2440)를 서로 연동할 수 있다.
여기에서, “노드와 설비 인프라를 연동된다”는 것은, 노드와 설비가 연관되어 동작되는 것으로, 예를 들어, 특정 층에 위치한 특정 노드에 로봇(R)이 위치하면, 상기 특정 노드와 연동된 엘리베이터가 특정 층으로 이동하도록 제어될 수 있다.
상기 노드와 설비 인프라의 연동은, 적어도 하나의 노드와 적어도 하나의 설비 인프라 간에 이루어질 수 있다. 보다 구체적으로, 노드와 설비 인프라가 1대 1로 연동되어 지거나, 하나의 노드에 복수의 설비 인프라가 연동 되어질 수 있다. 또한, 복수의 노드에 하나의 설비 인프라가 연동되어질 수 있다.
앞서 설명한 것과 같이, 제어부(330)는 편집 인터페이스(1500)의 제2 영역(1520)을 통해 입력된 설비 정보에 근거하여, 특정 노드(또는 특정 구역에 포함된 복수의 노드)와 특정 설비와 연동을 수행할 수 있다.
이와 같이, 본 발명에서는 편집 인터페이스(1500)틀 통해, 사용자가 노드와 설비간의 연동을 설정할 수 있는 사용자 인터페이스를 제공하고 있으며, 사용자는 편집 인터페이스(1500)에 설비 인프라에 대한 설비 정보를 입력하는 것 만으로 간편하고 손쉽게 노드와 설비 인프라를 상호 연동시킬 있다.
한편, 상술한 것과 같이, 사용자는 본 발명에 따른 편집 인터페이스(1500)를 통해, 특정 맵(1700) 상에, 복수의 타입을 가지는 영역 그래픽 객체(1800), 복수의 노드 그래픽 객체(1900)를 할당할 수 있다(도 15 참조).
특정 맵(1700) 상에, 서로 다른 타입을 가지는 영역 그래픽 객체(1800) 및 서로 다른 타입을 가지는 노드 그래픽 객체(1900)가 다수 할당된 경우, 사용자는 특정 맵(1700)에서, 영역 그래픽 객체 및 노드 그래픽 객체를 직관적으로 인지하기 어려울 수 있다.
이에 본 발명에서는, 그래픽 객체의 타입에 근거하여, 특정 맵(1700) 상에 타입 별 그래픽 객체를 필터링(filtering)하여 제공할 수 있다.
도 25a에 도시된 것과 같이, 제어부(330)는 편집 인터페이스(1500)의 제1 영역(1510) 상에 특정 층에 대응되는 특정 맵(1700)이 제공되고 있는 상태에서, 제2 영역(1520) 상에, 상기 특정 맵(1700)에 할당된 적어도 하나의 그래픽 객체 타입에 대한 필터링 기능과 관련된 필터링 영역(2600)을 제공할 수 있다.
상기 필터링 영역(2600)에는, 상기 특정 맵(1700)에 할당된 복수의 그래픽 객체 타입과 관련된 정보(2610, 2620, 2630, 2640, 2650) 및 상기 복수의 그래픽 객체 타입과 관련된 정보 각각에 매칭된 체크 박스를 포함할 수 있다.
제어부(330)는 상기 필터링 영역(2600)에 대한 사용자 입력에 근거하여 체크된 체크 박스에 대응되는 타입의 그래픽 객체만을, 제1 영역(1510)의 특정 맵(1700) 상에 중첩하여 제공할 수 있다.
예를 들어, 도 25a에 도시된 것과 같이, 필터링 영역(2600)에서, 제1 특정 타입(“Virtual Wall”, 2630) 및 제2 특정 타입(Advanced Area, 2640)에 대응되는 체크 박스가 선택된 경우, 제어부(330)는, 제1 영역(1510)의 특정 맵(1700)상에 제1 특정 타입의 그래픽 객체(2651) 및 제2 특정 타입의 그래픽 객체(2652)를 중첩하여 제공할 수 있다. 이 때, 제어부(330)는 체크되지 않은 체크 박스에 대응되는 제3 특정 타입(“Node”, 2610) 및 제4 특정 타입(“Edge”, 2620)에 대응되는 그래픽 객체의 출력은 제한할 수 있다.
다른 예를 들어, 도 25b에 도시된 것과 같이, 필터링 영역(2600)에서, 제3 특정 타입(“Node”, 2610) 및 제4 특정 타입(“Edge”, 2620)에 대응되는 체크 박스가 선택된 경우, 제어부(330)는, 제1 영역(1510)의 특정 맵(1700)상에 제3 특정 타입의 그래픽 객체(2661) 및 제2 특정 타입의 그래픽 객체(2662)를 중첩하여 제공할 수 있다. 이 때, 제어부(330)는 체크되지 않은 체크 박스에 대응되는 제1 특정 타입(“Virtual Wall”, 2630) 및 제2 특정 타입(Advanced Area, 2640)에 대응되는 그래픽 객체의 출력은 제한할 수 있다.
이하에서의 설명은, 제1 할당 프로세스를 설명하고 제2 할당 프로세스를 설명하겠으나, 제1 할당 프로세스 및 제2 할당 프로세스의 순서는 변경될 수 있다. 즉, 제2 할당 프로세스가 먼저 이루어진 후에 제1 할당 프로세스가 이루어질 수 있음은 당연하다.
본 발명에 따른 로봇 운용을 위한 맵 생성 방법 및 시스템은 건물의 복수의 층 중 특정 층에 대한 맵(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 (20)

  1. 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계;
    상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계;
    상기 전자기기로부터 수신되는 편집 정보에 근거하여, 상기 편집 인터페이스에 포함된 상기 특정 맵 상에, 적어도 하나의 그래픽 객체를 할당하는 단계; 및
    상기 특정 맵 상에 할당된 상기 그래픽 객체의 속성에 따라, 로봇들이 상기 특정 층을 주행하도록, 상기 그래픽 객체가 할당된 상기 특정 맵을 클라우드 서버에 업데이트 하는 단계를 포함하는 것을 특징으로 하는 맵 생성 방법.
  2. 제1항에 있어서,
    상기 특정 맵 상에는, 상기 편집 정보에 근거하여,
    상기 특정 층의 특정 영역에 대한 상기 로봇들의 주행 모드를 특정하기 위한 영역 그래픽 객체,
    상기 로봇들의 주행 경로를 구성하며, 상기 로봇들의 주행에 연계된 주행 노드에 대응되는 주행 노드 그래픽 객체,
    상기 로봇들의 특정 동작에 연계된 동작 노드에 대응되는 동작 노드 그래픽 객체 및
    상기 특정 층에 배치된 설비에 연계된 설비 노드에 대응되는 설비 노드 그래픽 객체 중 적어도 하나가 할당되는 것을 특징으로 하는 맵 생성 방법.
  3. 제2항에 있어서,
    상기 편집 인터페이스를 통해, 상기 특정 맵 상에 상기 영역 그래픽 객체가 할당되는 경우, 상기 영역 그래픽 객체가 할당된 상기 특정 맵은 상기 클라우드 서버에 업데이트되고,
    상기 특정 층을 주행하는 상기 로봇들은, 상기 특정 층에서 상기 영역 그래픽 객체가 할당된 상기 특정 영역을 주행하는 경우, 상기 영역 그래픽 객체에 연계된 주행 모드의 주행 특성에 따라 상기 특정 영역을 주행하는 것을 특징으로 하는 맵 생성 방법.
  4. 제3항에 있어서,
    상기 영역 그래픽 객체는,
    서로 다른 주행 모드에 각각 연계된 서로 다른 복수의 타입 중 어느 하나의 타입을 갖도록 이루어지고,
    상기 특정 맵 상에는, 동일 또는 서로 다른 타입을 갖는 하나 이상의 영역 그래픽 객체가 할당 가능한 것을 특징으로 하는 맵 생성 방법.
  5. 제4항에 있어서,
    상기 복수의 타입에 각각 대응되는 영역 그래픽 객체는,
    제1 주행 모드에 연계된 제1 타입의 영역 그래픽 객체 및
    상기 제1 주행 모드와 다른 제2 주행 모드에 연계된 제2 타입의 영역 그래픽 객체를 포함하고,
    상기 제1 타입의 영역 그래픽 객체 및 상기 제2 타입의 영역 그래픽 객체의 시각적 외관은 서로 다른 것을 특징으로 하는 맵 생성 방법.
  6. 제5항에 있어서,
    상기 로봇들은,
    상기 특정 맵에서 상기 제1 타입의 영역 그래픽 객체가 할당된 영역과 대응되는 상기 특정 층의 제1 영역에 진입하는 경우, 상기 제1 주행 모드에 따라 주행하도록 제어되고,
    상기 제1 영역을 벗어나는 경우, 상기 제1 영역에 진입하기 전의 주행 모드로 주행하도록 제어되며,
    상기 특정 맵에서 상기 제2 타입의 영역 그래픽 객체가 할당된 영역과 대응되는 상기 특정 층의 제2 영역에 진입하는 경우, 상기 제2 주행 모드에 따라 주행하도록 제어되고,
    상기 제2 영역을 벗어나는 경우, 상기 제2 영역에 진입하기 전의 주행 모드로 주행하도록 제어되는 것을 특징으로 하는 맵 생성 방법.
  7. 제4항에 있어서,
    상기 그래픽 객체를 할당하는 단계에서, 상기 영역 그래픽 객체가 할당되는 경우,
    상기 편집 정보는,
    상기 특정 맵에서의 상기 영역 그래픽 객체의 배치 위치, 상기 영역 그래픽 객체의 타입, 상기 영역 그래픽 객체의 크기 및 상기 영역 그래픽 객체의 형상 중 적어도 하나를 특정하기 위한 정보를 포함하는 것을 특징으로 하는 맵 생성 방법.
  8. 제7항에 있어서,
    상기 편집 인터페이스는,
    상기 특정 맵이 포함되는 제1 영역 및 상기 특정 맵의 편집과 관련된 설정을 위한 설정 메뉴가 포함되는 제2 영역을 포함하고,
    상기 편집 정보는, 상기 제1 영역 및 상기 제2 영역 중 적어도 하나의 영역에 대하여 입력되는 사용자 입력을 조합하여 형성되는 것을 특징으로 맵 생성 방법.
  9. 제8항에 있어서,
    상기 영역 그래픽 객체의 할당은,
    상기 영역 그래픽 객체가 위치할 영역을 특정하는 상기 제1 영역에 대한 제1 사용자 입력,
    상기 영역 그래픽 객체의 크기를 특정하는 상기 제1 영역에 대한 제2 사용자 입력, 및
    상기 영역 그래픽 객체의 형상을 특정하는 상기 제1 영역에 대한 제3 사용자 입력 중적어도 하나에 근거하여 상기 영역 그래픽 객체가 특정됨에 따라 이루어지는 것을 특징으로 하는 맵 생성 방법.
  10. 제9항에 있어서,
    상기 제1 영역에는,
    상기 제1 사용자 입력, 상기 제2 사용자 입력 및 상기 제3 사용자 입력의 매개체가 되는 그래픽 객체 편집 툴(tool)이 배치되는 것을 특징으로 하는 맵 생성 방법.
  11. 제9항에 있어서,
    상기 그래픽 객체를 할당하는 단계에서는,
    상기 제1 사용자 입력, 상기 제2 사용자 입력 및 상기 제3 사용자 입력 중 적어도 하나에 근거하여, 상기 영역 그래픽 객체가 특정되는 단계 및
    상기 제2 영역에 포함된 상기 설정 메뉴에 대한 제4 사용자 입력에 근거하여, 상기 영역 그래픽 객체의 타입을 선택받는 단계를 포함하는 것을 특징으로 하는 맵 생성 방법.
  12. 제11항에 있어서,
    상기 제4 사용자 입력을 통해 상기 영역 그래픽 객체의 타입이 선택되는 경우,
    상기 특정 맵 상에서 상기 영역 그래픽 객체의 색상은,
    상기 제4 사용자 입력을 통해 선택된 상기 영역 그래픽 객체의 타입에 매칭된 색상을 갖도록 이루어지는 것을 특징으로 하는 맵 생성 방법.
  13. 제2항에 있어서,
    상기 로봇들의 주행 경로는,
    상기 특정 맵에 대해 할당되는 복수의 주행 노드 그래픽 객체에 각각 대응되는 복수의 주행 노드들에 의하여 형성되고,
    상기 그래픽 객체를 할당하는 단계에서는,
    상기 복수의 주행 노드들 중 적어도 일부분의 노드들 사이에서의 상기 로봇들의 주행 방향을 정의하기 위한 주행 방향 특정이 이루어지고,
    상기 주행 방향 특정은,
    상기 편집 인터페이스를 통해 상기 복수의 주행 노드 그래픽 객체들 중 서로 인접한 주행 노드 그래픽 객체를 연결하는 연결선이 추가되는 과정을 통하여 이루어지는 것을 특징으로 하는 맵 생성 방법.
  14. 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계;
    상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계;
    상기 전자기기로부터 수신되는 편집 정보에 근거하여, 상기 편집 인터페이스에 포함된 상기 특정 맵 상에, 적어도 하나의 노드를 할당하는 단계; 및
    상기 특정 맵 상에 할당된 상기 노드를 따라 로봇들이 상기 특정 층을 주행하거나, 상기 특정 층에서 상기 로봇들이 상기 노드에 정의된 동작을 수행하도록, 상기 노드가 할당된 상기 특정 맵을 클라우드 서버에 업데이트 하는 단계를 포함하는 것을 특징으로 하는 맵 생성 방법.
  15. 제14항에 있어서,
    상기 노드는,
    상기 로봇들의 주행 경로를 구성하며, 상기 로봇들의 주행에 연계된 주행 노드에 해당하는 제1 타입 노드,
    상기 로봇들의 특정 동작에 연계된 동작 노드에 해당하는 제2 타입 노드 및
    상기 특정 층에 배치된 설비에 연계된 설비 노드에 해당하는 제3 타입 노드 중 어느 하나에 해당하고,
    상기 로봇들은, 상기 로봇들이 위치한 곳에 할당된 노드에 정의된 동작을 수행하는 것을 특징으로 하는 맵 생성 방법.
  16. 제15항에 있어서,
    상기 로봇들의 특정 동작은,
    상기 로봇들이 상기 동작 노드에 위치하는 경우, 주행을 정지하고 대기(wait)하는 대기 동작을 포함하고,
    상기 대기 동작에 연계된 동작 노드에는, 상기 동작 노드에 위치하는 로봇들이 바라보는 방향을 정의하는 방향 정보가 설정되는 것을 특징으로 하는 맵 생성 방법,
  17. 제13항에 있어서,
    상기 특정 맵에 할당된 노드들 중 적어도 일부의 노드들은 동일 구역(ZONE)에 포함되도록 그룹화되고,
    상기 편집 인터페이스에 통해, 상기 특정 맵에 할당된 상기 적어도 일부의 노드들 중 어느 하나가 선택되는 경우,
    상기 편집 인터페이스의 일 영역에는, 상기 선택된 노드의 식별 정보 및 상기 선택된 노드가 포함된 구역의 식별 정보 중 적어도 하나가 제공되는 것을 특징으로 하는 맵 생성 방법.
  18. 건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 통신부; 및
    상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 제어부를 포함하고,
    상기 제어부는,
    상기 전자기기로부터 수신되는 편집 정보에 근거하여, 상기 편집 인터페이스에 포함된 상기 특정 맵 상에, 적어도 하나의 그래픽 객체를 할당하고,
    상기 특정 맵 상에 할당된 상기 그래픽 객체의 속성에 따라, 로봇들이 상기 특정 층을 주행하도록, 상기 그래픽 객체가 할당된 상기 특정 맵을 클라우드 서버에 업데이트 하는 것을 특징으로 하는 맵 생성 시스템.
  19. 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램으로서,
    상기 프로그램은,
    건물의 복수의 층 중 특정 층에 대한 맵(map) 편집 요청을 수신하는 단계;
    상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계;
    상기 전자기기로부터 수신되는 편집 정보에 근거하여, 상기 편집 인터페이스에 포함된 상기 특정 맵 상에, 적어도 하나의 그래픽 객체를 할당하는 단계; 및
    상기 특정 맵 상에 할당된 상기 그래픽 객체의 속성에 따라, 로봇들이 상기 특정 층을 주행하도록, 상기 그래픽 객체가 할당된 상기 특정 맵을 클라우드 서버에 업데이트 하는 단계를 수행하도록 하는 명령어들을 포함하는 것을 특징으로 하는 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램.
  20. 복수의 로봇들이 서비스를 제공하는 건물에 있어서,
    상기 건물은,
    상기 로봇들이 사람과 공존하는 실내 공간을 가지는 복수의 층들(floors); 및
    상기 로봇들과 클라우드 서버의 사이에서 통신을 수행하는 통신부를 포함하고,
    상기 클라우드 서버는,
    편집 인터페이스를 통해 생성된 건물 맵(map)에 근거하여, 상기 건물을 주행하는 상기 로봇들에 대한 제어를 수행하고,
    상기 건물 맵은,
    건물의 복수의 층 중 특정 층에 대한 맵 편집 요청을 수신하는 단계;
    상기 편집 요청에 응답하여, 전자기기의 디스플레이부 상에, 상기 특정 층에 대응되는 특정 맵의 적어도 일부가 포함된 편집 인터페이스를 제공하는 단계; 및
    상기 전자기기로부터 수신되는 편집 정보에 근거하여, 상기 편집 인터페이스에 포함된 상기 특정 맵 상에, 적어도 하나의 그래픽 객체를 할당하는 단계를 통해 생성되고,
    상기 클라우드 서버에는,
    상기 특정 맵 상에 할당된 상기 그래픽 객체의 속성에 따라, 상기 로봇들이 상기 특정 층을 주행하도록, 상기 그래픽 객체가 할당된 상기 특정 맵이 업데이트 되는 것을 특징으로 하는 건물.
PCT/KR2023/004438 2022-06-14 2023-04-03 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템 WO2023243834A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2022-0072464 2022-06-14
KR1020220072464A KR20230171826A (ko) 2022-06-14 2022-06-14 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템

Publications (1)

Publication Number Publication Date
WO2023243834A1 true WO2023243834A1 (ko) 2023-12-21

Family

ID=89191374

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2023/004438 WO2023243834A1 (ko) 2022-06-14 2023-04-03 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템

Country Status (2)

Country Link
KR (1) KR20230171826A (ko)
WO (1) WO2023243834A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120029817A1 (en) * 2010-01-22 2012-02-02 Qualcomm Incorporated Map handling for location based services in conjunction with localized environments
KR20120072124A (ko) * 2010-12-23 2012-07-03 한국전자통신연구원 실내 전자지도 데이터 생성 방법
KR20150039261A (ko) * 2013-10-01 2015-04-10 주식회사 케이티 유무선 네트워크 인프라를 이용한 지도 구축방법 및 이를 위한 시스템
KR20190100118A (ko) * 2019-08-13 2019-08-28 네이버 주식회사 실내지도 작성 방법 및 그 장치
KR20200015096A (ko) * 2018-08-02 2020-02-12 주식회사 다비오 지도 제작 장치 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120029817A1 (en) * 2010-01-22 2012-02-02 Qualcomm Incorporated Map handling for location based services in conjunction with localized environments
KR20120072124A (ko) * 2010-12-23 2012-07-03 한국전자통신연구원 실내 전자지도 데이터 생성 방법
KR20150039261A (ko) * 2013-10-01 2015-04-10 주식회사 케이티 유무선 네트워크 인프라를 이용한 지도 구축방법 및 이를 위한 시스템
KR20200015096A (ko) * 2018-08-02 2020-02-12 주식회사 다비오 지도 제작 장치 및 방법
KR20190100118A (ko) * 2019-08-13 2019-08-28 네이버 주식회사 실내지도 작성 방법 및 그 장치

Also Published As

Publication number Publication date
KR20230171826A (ko) 2023-12-21

Similar Documents

Publication Publication Date Title
AU2019335976B2 (en) A robot cleaner and a controlling method for the same
AU2019262468B2 (en) A plurality of robot cleaner and a controlling method for the same
AU2019262467B2 (en) A plurality of robot cleaner and a controlling method for the same
WO2020256195A1 (ko) 빌딩 관리 로봇 및 그를 이용한 서비스 제공 방법
WO2020050494A1 (en) A robot cleaner and a controlling method for the same
WO2019212239A1 (en) A plurality of robot cleaner and a controlling method for the same
WO2020050489A1 (en) A robot cleaner and a controlling method for the same
WO2019212240A1 (en) A plurality of robot cleaner and a controlling method for the same
WO2019151845A2 (ko) 에어컨
WO2021029457A1 (ko) 사용자에게 정보를 제공하는 인공 지능 서버 및 그 방법
WO2020190082A1 (ko) 이동 단말기를 이용한 내비게이션 서비스 제공 방법 및 이동 단말기
WO2016048077A1 (ko) 청소 로봇 및 청소 로봇의 제어 방법
WO2019004742A1 (ko) 이동 로봇과 이동 단말기를 포함하는 로봇 시스템
WO2020045732A1 (ko) 이동 로봇의 제어 방법
WO2023277346A1 (ko) 로봇 친화형 건물
WO2020246640A1 (ko) 사용자의 위치를 결정하는 인공 지능 장치 및 그 방법
WO2023101228A1 (ko) 로봇 친화형 건물, 복수의 로봇들을 이용한 협업 방법 및 시스템
WO2022075610A1 (ko) 이동 로봇 시스템
WO2023080490A1 (ko) 로봇 친화형 건물, 로봇 및 건물을 주행하는 멀티-로봇 제어 시스템
WO2019004773A1 (ko) 이동 단말기 및 이를 포함하는 로봇 시스템
WO2023243834A1 (ko) 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템
WO2023195707A1 (ko) 로봇 친화형 건물, 로봇 운영 모니터링 방법 및 시스템
WO2023043117A1 (ko) 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템
WO2020251101A1 (ko) 사용자의 동선을 결정하는 인공 지능 장치 및 그 방법
WO2022075616A1 (ko) 이동 로봇 시스템

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: 23824061

Country of ref document: EP

Kind code of ref document: A1