WO2023068551A1 - 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템 - Google Patents

로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템 Download PDF

Info

Publication number
WO2023068551A1
WO2023068551A1 PCT/KR2022/013432 KR2022013432W WO2023068551A1 WO 2023068551 A1 WO2023068551 A1 WO 2023068551A1 KR 2022013432 W KR2022013432 W KR 2022013432W WO 2023068551 A1 WO2023068551 A1 WO 2023068551A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
interest
region
building
obstacle
Prior art date
Application number
PCT/KR2022/013432
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 WO2023068551A1 publication Critical patent/WO2023068551A1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/007Manipulators mounted on wheels or on carriages mounted on wheels
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1684Tracking a line or surface by means of sensors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions

Definitions

  • the present invention relates to a robot-friendly building and a control method and system for a robot traveling in a building. More specifically, the present invention relates to a robot control method and system that enable robots and humans to coexist in the same space and provide useful services to humans.
  • robots have reached a level where they can safely coexist with humans in an indoor space.
  • 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 provide route guidance services in public places such as airports, stations, and department stores, and robots provide serving services in restaurants. Furthermore, robots are providing a delivery service in which mails and couriers are delivered in office spaces, co-living spaces, and the like. In addition, robots provide various services such as cleaning services, crime prevention services, and logistics handling services. The type and range of services provided by robots will increase exponentially in the future, and the level of service provision is expected to continue to evolve.
  • 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. In this case, robots provide It is controlled to provide various services while moving through the indoor space.
  • robots In order for robots to provide various services or live in an indoor space, robots must freely move or pass through the indoor space of a building, and in some cases, various facility infrastructures (eg, elevators, There is a need to use escalators, access control gates, etc.).
  • facility infrastructures eg, elevators, There is a need to use escalators, access control gates, etc.
  • the present invention provides a control method and system for a robot traveling in a building.
  • the present invention is to provide a robot control method and system that can selectively consider only factors that may affect the robot in the environment to which the robot belongs.
  • the present invention is to provide a robot-friendly building in which robots and humans coexist and provide useful services to humans.
  • the robot-friendly building according to the present invention can expand the types and ranges of services that can be provided by robots by providing various robot-friendly facility infrastructures that can be used by robots.
  • the robot-friendly building according to the present invention can manage the driving of robots providing services more systematically by organically controlling a plurality of robots and facility infrastructure using a cloud system that works in conjunction with a plurality of robots. .
  • 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 form controlled by a cloud server, and according to this, a plurality of robots disposed in the building can be inexpensively manufactured without expensive sensors. In addition, it can be controlled with high performance/high precision.
  • a method of controlling a robot traveling in a building based on a map of the building may be provided.
  • the present invention includes the steps of receiving a traveling path of the robot from a server, sensing an obstacle located around the robot using a sensor provided in the robot, and detecting an obstacle of the robot based on a relative distance between the robot and the obstacle. Calculating a degree of risk related to driving, setting a region of interest related to driving of the robot based on the degree of risk, and depending on whether sensing data received from a sensor provided in the robot is related to the region of interest, It is possible to provide a robot control method comprising the step of performing different data processing for the sensing data.
  • a building in which a robot controlled by a cloud server runs may be provided.
  • the building includes a communication unit that receives driving and control commands of the robot from the cloud server and transmits them to the robot, and the cloud server transmits a driving path to the robot and generates a driving path through a sensor provided in the robot.
  • the present invention may provide a system for controlling a robot traveling in a building based on a map of the building.
  • an obstacle located around the robot is sensed using a communication unit that receives a travel path of the robot from a server and a sensor provided in the robot, and the robot travels based on a relative distance between the robot and the obstacle.
  • a robot control system comprising a control unit for performing different data processing for.
  • the present invention can provide a program that is executed by one or more processes in an electronic device and can be stored in a computer-readable medium.
  • the present invention includes the steps of receiving a driving path of a robot from a server, sensing an obstacle located around the robot using a sensor provided in the robot, and detecting an obstacle of the robot based on a relative distance between the robot and the obstacle. Calculating a degree of risk related to driving, setting a region of interest related to driving of the robot based on the degree of risk, and depending on whether sensing data received from a sensor provided in the robot is related to the region of interest, It is possible to provide a program storable in a computer-readable medium, characterized in that it includes instructions for performing the step of performing different data processing on the sensing data.
  • the method and system for controlling a building and a robot driving a building selectively utilize only sensing data for an area of interest set based on the degree of risk and do not utilize sensing data unrelated to the area of interest, thereby Unnecessary calculations can be minimized.
  • the present invention sets the degree of risk based on the area of interest setting based on the distance between the robot and the obstacle, so that when the distance between the robot and the obstacle is relatively short, even the sensing data for the area around the obstacle is used for control for obstacle avoidance. If the distance between the robot and the obstacle is relatively long, the amount of sensing data to be processed according to the current situation of the robot can be varied by performing driving control of the robot considering only the sensing data for the area where the obstacle is located. Through this, the present invention enables control for obstacle avoidance to be performed with an optimal amount of calculation according to the situation of the robot.
  • the robot-friendly building according to the present invention uses a technological convergence in which robots, autonomous driving, AI, and cloud technologies are converged and connected, and these technologies, robots, and facility infrastructure provided in the building are organically can provide a new space that is combined with
  • the robot-friendly building according to the present invention can systematically manage the driving of robots that provide services more systematically by organically controlling a plurality of robots and facility infrastructure using a cloud server that works in conjunction with a plurality of robots. 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 form controlled by a cloud server, and according to this, a plurality of robots disposed in the building can be inexpensively manufactured without expensive sensors. In addition, it can be controlled with high performance/high precision.
  • robots and humans can naturally coexist in the same space by taking into account the tasks and movement situations assigned to a plurality of robots arranged in the building, as well as driving to be considerate of people.
  • 1, 2 and 3 are conceptual diagrams for explaining a robot-friendly building according to the present invention.
  • FIG 4, 5 and 6 are conceptual diagrams for explaining a robot driving a robot-friendly building and a system for controlling various facilities provided in the robot-friendly building according to the present invention.
  • FIG. 7 and 8 are conceptual diagrams for explaining 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.
  • FIG. 12 is a conceptual diagram for explaining a robot controlled by the robot system according to the present invention.
  • FIG. 13 is a conceptual diagram for explaining a node map used for setting a moving path of a robot.
  • FIG. 14 is a flowchart for explaining a robot control method according to the present invention.
  • 15 is a conceptual diagram illustrating a robot control method according to the present invention.
  • 16 and 17 are conceptual diagrams illustrating how a degree of risk is calculated and a region of interest is set according to an embodiment of the present invention.
  • 18 is a conceptual diagram illustrating an embodiment of setting a region of interest in consideration of a moving obstacle.
  • 19 is a conceptual diagram illustrating an embodiment of setting a region of interest in consideration of congestion in a building.
  • 20 is a conceptual diagram illustrating an embodiment of setting a region of interest in consideration of a robot's mission.
  • 21 to 23 are conceptual diagrams illustrating an embodiment in which only sensing data corresponding to a region of interest of a robot is selectively utilized within a sensing range of a sensor provided in the robot.
  • 24 is a conceptual diagram illustrating an embodiment in which a region of interest is changed according to a driving speed of a robot.
  • 25 is a conceptual diagram illustrating an embodiment in which a robot changes a region of interest while traveling along a travel path.
  • 26A to 26C are conceptual diagrams illustrating an embodiment in which an obstacle used for risk calculation is changed as a region of interest is changed.
  • the present invention relates to a robot-friendly building, and proposes a robot-friendly building in which humans and robots safely coexist and in which robots can provide beneficial services in a building.
  • the present invention provides a method of providing useful services to humans using robots, robot-friendly infrastructure, and various systems for controlling them.
  • humans and a plurality of robots can coexist, and various infrastructures (or facility infrastructures) that allow a plurality of robots to move freely within the building can be provided.
  • a building is a structure made for continuous residence, life, work, etc., and may have various forms such as commercial buildings, industrial buildings, institutional buildings, and residential buildings. Also, the building may be a multi-story building having a plurality of floors and a single-story building as opposed to a multi-story building. However, in the present invention, for convenience of description, infrastructure or facility infrastructure applied to a multi-story building will be described as an example.
  • infrastructure or facility infrastructure is a facility provided in a building for service provision, robot movement, function maintenance, cleanliness maintenance, and the like, and its types and forms can be very diverse.
  • infrastructure provided in a building may be diverse, such as mobile facilities (eg, robot moving passages, elevators, escalators, etc.), charging facilities, communication facilities, cleaning facilities, structures (eg, stairs, etc.), and the like. there is.
  • mobile facilities eg, robot moving passages, elevators, escalators, etc.
  • charging facilities communication facilities
  • cleaning facilities eg, stairs, etc.
  • structures eg, 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 building according to the present invention includes i) a building equipped with robot-used infrastructure, ii) a building equipped with robot-friendly infrastructure, iii) a robot-friendly building, iv) a building where robots and humans live together, v) It can be expressed in various ways, such as a building that provides various services using robots.
  • robot-friendly is for a building where robots coexist, and more specifically, allows robots to run, robots provide services, or facility infrastructure in which robots can be used is built. , it can mean that facility infrastructure that provides necessary functions for robots (ex: charging, repairing, washing, etc.) is established.
  • robot friendliness in the present invention can be used to mean having an integrated solution for the coexistence of robots and humans.
  • FIGS. 1, 2, and 3 are conceptual diagrams for explaining a robot-friendly building according to the present invention
  • FIGS. 4, 5, and 6 are a robot driving the robot-friendly building and a robot-friendly building according to the present invention.
  • FIGS. 7 and 8 are conceptual diagrams for explaining facility infrastructure provided in a robot-friendly building according to the present invention.
  • a building is given a reference numeral “1000”, and a space (indoor space or indoor area) of the building 1000 is given a reference numeral “10” (see FIG. 8).
  • reference numerals 10a, 10b, and 10c are assigned to indoor spaces respectively corresponding to a plurality of floors constituting the indoor space of the building 1000 (see FIG. 8).
  • an indoor space or an indoor area is a concept opposite to the exterior of a building, and refers to the interior of a building protected by an exterior wall, and is not limited to meaning a space.
  • a robot is assigned a reference numeral “R”, and even if a reference numeral is not written for a robot in the drawings or specifications, all robots can be understood as robots (R).
  • a person or human is given a reference numeral “U”, and a person or human can be named as a dynamic object.
  • the dynamic object does not necessarily mean only a person, but an animal such as a dog or cat, or at least one other robot (eg, a user's personal robot, a robot providing other services, etc.), a drone, a vacuum cleaner (eg, a user's personal robot, a robot that provides other services, etc.)
  • a vacuum cleaner eg, a user's personal robot, a robot that provides other services, etc.
  • it can be taken as a meaning including objects capable of movement, 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 in, work, breed animals, or put things. can mean
  • the building 1000 may be offices, offices, officetels, apartments, residential/commercial apartments, houses, schools, hospitals, restaurants, government offices, etc., and the present invention may be applied to these various types of buildings.
  • a robot may run and provide various services.
  • a plurality of robots of one or more different types may be located in the building 1000, and these robots run in the building 1000 under the control of the server 20, provide services, and provide services to the building ( 1000) can use various facility infrastructures.
  • the location of the server 20 may exist in various ways.
  • the server 20 may be located in at least one of an interior of the building 1000 and an exterior of the building 1000 . That is, at least a part of the server 20 may be located inside the building 1000 and the other part may be located outside the building 1000 .
  • the server 20 may be located entirely inside the building 1000 or located only outside the building 1000 . Therefore, in the present invention, the specific location of the server 20 is not particularly limited.
  • the server 20 is made to use at least one of a cloud computing server (cloud server 21) and an edge computing server (edge server 22).
  • cloud server 21 a cloud computing server
  • edge server 22 an edge computing server
  • 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 a cloud computing or edge computing method.
  • the server 20 according to the present invention, in some cases, by mixing the server 21 of the cloud computing method and the edge computing method, among the facility infrastructure provided in the robot and the building 1000 Control of at least one can be performed.
  • the edge server 22 is an electronic device and may operate as a brain of the robot R. That is, each edge server 22 may wirelessly control at least one robot R. At this time, the edge server 22 may control the robot R based on the determined control period. The control period may be determined as the sum of time given to process data related to the robot R and time given to provide control commands to the robot R.
  • the cloud server 21 may 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 corresponding to the robot R, and may operate as a client corresponding to the cloud server 21.
  • the robot R and the edge server 22 may communicate wirelessly, and the edge server 22 and the cloud server 21 may communicate wired or wirelessly. At this time, the robot R and the edge server 22 may 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 and WiFi-6 (WiFi ad/ay).
  • the 5G network may have features capable of ultra-reliable low-latency communication, as well as enhanced mobile broadband (eMBB) and massive machine type communications (mMTC).
  • the edge server 22 includes a mobile edge computing, multi-access edge computing (MEC) server and may be disposed in a base station.
  • MEC multi-access edge computing
  • the edge server 22 may communicate through a wireless network such as the Internet.
  • a plurality of edge servers may be connected through a wireless mesh network, and functions of the cloud server 21 may be distributed to the 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 any one of the edge servers. , 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 may include communication between the cloud server 21 connected to the edge server 22 and configured to manage the robot R and 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, the edge server 22 controls the predetermined 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 determine the control command by communicating with the cloud server 21 based on the data when it is determined that cooperation with the cloud server 21 is required. there is.
  • the robot R may be driven according to a control command.
  • the robot R may move a location or change a posture by changing a movement, and may perform a software update.
  • the server 20 is uniformly named as a “cloud server” and reference numeral “20” is given.
  • a cloud server 20 can also be replaced with the term edge server 22 of edge computing.
  • cloud server may be variously changed to terms such as a cloud robot system, a cloud system, a cloud robot control system, and a cloud control system.
  • the cloud server 20 can perform integrated control of a plurality of robots traveling in the building 1000 . That is, the cloud server 20 performs monitoring on i) a plurality of robots (R) located in the building 1000, ii) assigns a mission (or task) to the plurality of robots, and iii) a plurality of robots (R) may directly control facility infrastructure provided in the building 1000 to successfully perform its mission, or iv) facility infrastructure may be controlled through communication with a control system that controls facility infrastructure.
  • the cloud server 20 performs monitoring on i) a plurality of robots (R) located in the building 1000, ii) assigns a mission (or task) to the plurality of robots, and iii) a plurality of robots (R) may directly control facility infrastructure provided in the building 1000 to successfully perform its mission, or iv) facility infrastructure may be controlled through communication with a control system that controls facility infrastructure.
  • the cloud server 20 may check state information of robots located in the building and provide (or support) various functions required for the robots.
  • various functions may include a charging function for robots, a washing function for contaminated robots, a standby function for robots whose missions have been completed, and the like.
  • the cloud server 20 may control the robots so that the robots use various facility infrastructures provided in the building 1000 to provide various functions to the robots. Furthermore, in order to provide various functions to the robots, the cloud server can directly control the facility infrastructure provided in the building 1000 or control the facility infrastructure through communication with a control system that controls the facility infrastructure. there is.
  • robots controlled by the cloud server 20 may drive the building 1000 and provide various services.
  • the cloud server 20 may perform various controls based on information stored in the database, and in the present invention, the type and location of the database are not particularly limited.
  • the terms of such a database can be freely modified and used as long as they refer to a means for storing information, such as a memory, a storage unit, a storage unit, a cloud storage unit, an external storage unit, and an external server.
  • the term “database” will be unified and explained.
  • the cloud server 20 may perform distributed control of robots based on various criteria such as the type of service provided by robots and the type of control for robots.
  • the cloud server 20 may have subordinate sub-servers of sub-concepts.
  • the cloud server 20 may control the robot traveling in the building 1000 based on various artificial intelligence algorithms.
  • the cloud server 20 performs artificial intelligence-based learning that utilizes data collected in the process of controlling the robot as learning data, and utilizes this to control the robot. It can be operated accurately and efficiently. That is, the cloud server 20 may be configured to perform deep learning or machine learning. In addition, the cloud server 20 may perform deep learning or machine learning through simulation, etc., and control the robot using an artificial intelligence model built as a result.
  • the building 1000 may be equipped with various facility infrastructures for robot driving, providing robot functions, maintaining robot functions, performing missions of robots, or coexistence of robots and humans.
  • various facility infrastructures 1 and 2 capable of supporting driving (or movement) of the robot R may be provided in the building 1000 .
  • These facility infrastructures 1 and 2 support movement of the robot R in the horizontal direction within a floor of the building 1000, or move the robot R vertically between different floors of the building 1000. can support movement.
  • the facility infrastructures 1 and 2 may have a transport system that supports movement of the robot.
  • the cloud server 20 controls the robot R to use these various facility infrastructures 1 and 2, and as shown in FIG. 1 (b), the robot R provides a building ( 1000) can be moved.
  • the robots according to the present invention may be controlled based on at least one of the cloud server 20 and a control unit provided in the robot itself, so as to travel within the building 1000 or provide services corresponding to assigned tasks. there is.
  • the building according to the present invention is a building in which robots and people coexist, and the robots are people (U) and objects used by people (for example, strollers, carts, etc.) , It is made to drive 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 driving of the robot may be made to avoid an obstacle based on at least one of the cloud server 20 and a control unit provided in the robot.
  • the cloud server 20 allows the robot to avoid obstacles and enter the building 1000 based on information received through various sensors (eg, a camera (image sensor), proximity sensor, infrared sensor, etc.) provided in the robot. You can control the robot to move.
  • the robot traveling in the building through the process of FIG. 1 (a) to (c) is configured to provide services to people or target objects present in the building, as shown in FIG. 1 (d).
  • the type of service provided by the robot may be different for each robot. That is, various types of robots may exist depending on the purpose, the robot may have a different structure for each purpose, and a program suitable for the purpose may be installed in the robot.
  • the building 1000 includes delivery, logistics work, guidance, interpretation, parking assistance, security, crime prevention, security, public order, cleaning, quarantine, disinfection, laundry, beverage preparation, food preparation, serving, fire suppression, and medical assistance.
  • robots providing at least one of entertainment services may be disposed. Services provided by robots may be various other than the examples listed above.
  • the cloud server 20 may assign an appropriate task to the robots in consideration of the purpose of each robot, and control the robots to perform the assigned task.
  • At least some of the robots described in the present invention may 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 may be minimized. there is.
  • a robot may be referred to as a brainless robot.
  • These brainless robots may depend on the control of the cloud server 20 for at least some control in performing actions such as driving, performing missions, performing charging, waiting, and washing within the building 1000 .
  • the building 1000 may be equipped with various facility infrastructures that can be used by robots, and as shown in FIGS. 2, 3 and 4, the facility infrastructure is disposed within the building 1000.
  • the facility infrastructure is disposed within the building 1000.
  • movement (or driving) of the robot may be supported or various functions may be provided to the robot.
  • the facility infrastructure may include facilities for supporting movement of the robot within a building.
  • Facilities supporting the movement of the robot may have any one of a robot-specific facility exclusively used by the robot and a common facility used jointly with humans.
  • facilities supporting movement of the robot may support movement of the robot in a horizontal direction or support movement of the robot in a vertical direction.
  • the robots may 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 layer may be referred to as horizontal movement.
  • FIGS. 2 and 3 Facilities supporting the movement of the robot may be various, and for example, as shown in FIGS. 2 and 3 , the building 1000 includes a robot passage (robot road, 201) supporting the movement of the robot in the horizontal direction. , 202, 203) may be provided.
  • a robot passage may include a robot-only passage exclusively used by the robot.
  • the passage dedicated to the robot can be formed so that human access is fundamentally blocked, but may not necessarily be limited thereto. That is, the passage dedicated to the robot may have a structure that allows people to pass through or approach it.
  • the passage dedicated to the robot may include at least one of a first exclusive passage (or first type passage 201 ) and a second exclusive passage (or second type passage 202 ).
  • the first exclusive passage and the second exclusive passage 201, 202 may be provided together on the same floor or may be provided on different floors.
  • the building 1000 may be provided with moving means 204 and 205 that support movement of the robot in a vertical direction.
  • These moving means (204, 205) may include at least one of an elevator (elevator) or an escalator (escalator).
  • the robot may move between different floors using an elevator 204 or an escalator 205 provided in the building 1000 .
  • an elevator 204 or escalator 205 may be made exclusively for robots, or may be made for common use with people.
  • the building 1000 may include at least one of a robot-only elevator and a shared elevator. Similarly, furthermore, at least one of a robot-only escalator and a shared escalator may be included in the building 1000 .
  • the building 1000 may be equipped with a type of movement means that can be used for both vertical and horizontal movement.
  • a moving means in the form of a moving walkway may support a robot to move in a horizontal direction within a floor or to move in a vertical direction between floors.
  • the robot may move within the building 1000 horizontally or vertically under its own control or under the control of the cloud server 20. can move me
  • the building 1000 may include at least one of an entrance 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 door 206 and the access control gate 207 may be made usable by a robot.
  • the robot may pass through an entrance 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 a facility 211 specialized for a specific service provided by the robot, and may include, for example, a facility for delivery service.
  • the building 1000 may include facilities for monitoring the robot (refer to reference numeral 212), and various sensors (eg, cameras (or image sensors, 121)) may be present as examples of such facilities.
  • various sensors eg, cameras (or image sensors, 121)
  • the building 1000 according to the present invention may be provided with various facilities for service provision, robot movement, driving, function maintenance, cleanliness maintenance, and the like.
  • 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.
  • the facility infrastructure 200 so that the robots within the building 1000 provide various services.
  • interconnected means that various data and control commands related to services provided in a building, robot movement, driving, function maintenance, cleanliness maintenance, 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 to at least one subject.
  • the subject may be the building 1000, the cloud server 20, the robot R, the facility infrastructure 200, and the like.
  • the facility infrastructure 200 includes at least one of the various facilities (refer to reference numerals 201 to 213) and control systems 201a, 202a, 203a, 204a, ... that control the various facilities reviewed together with FIGS. 2 and 3. can do.
  • the robot R traveling in the building 1000 is made 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. That is, the communication unit 110 may serve as a medium of communication between different subjects.
  • the communication unit 110 may also be named a base station, a router, and the like, 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. It is possible to form a communication network or network so that
  • being connected to the building 1000 through a communication network may mean being connected to at least one of the components included in the building system 1000a.
  • the 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, it can be made to 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 may form the network 40 based on the communication network formed within the building 1000. Based on this network, the robot R may provide services corresponding to assigned tasks 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) and control systems 201a, 202a, 203a, 204a, ... that control them, respectively, as reviewed with FIGS. 2 and 3 (Such a control system may also be termed a “control server”).
  • control systems 201a and 202a for independently controlling the robot passages 201, 202 and 203 respectively , 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.
  • the sensing units 201b, 202b, 203b, 204b, ... included in each of the facility control systems 201a, 202a, 203a, 204a, ... are provided in the facility itself to sense various information related to the facility. It can be done.
  • controllers 201c, 202c, 203c, 204c, ... included in each facility control system 201a, 202a, 203a, 204a, ... perform control for driving each facility, and the cloud server 20 ), it is possible to perform appropriate control so that the robot R uses the equipment.
  • the control system 204b of the elevator 204 through communication with the cloud server 20, allows the robot R to board the elevator 204 at the floor where the robot R is located, the elevator 204 ) can control the elevator 204 to stop.
  • the facilities included in the building 1000 according to the present invention are controlled by the cloud server 20 or the control unit 150 of the building 1000 .
  • the facility may not have a separate facility control system.
  • each facility will be described as having its own control system, but as mentioned above, the role of the control system for controlling the facility is that of the cloud server 20 or building 1000.
  • the control unit 150 can be replaced by the control unit 150.
  • the terms of the controllers 201c, 202c, 203c, 204c, ... of the facility control system described herein are replaced with terms of the cloud server 20 or the controller 150 or the controller 150 of the building.
  • it can be expressed as
  • each facility control system 201a, 202a, 203a, 204a, ... in FIG. 4 are for an example, and various components may be added or excluded according to 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 in a building to provide various services.
  • the robot R may include at least one of a body unit, a driving unit, a sensing unit, a communication unit, an interface unit, and a power supply unit.
  • the body part includes a case (casing, housing, cover, etc.) constituting the exterior.
  • the case may be divided into a plurality of parts, and various electronic components are embedded in the space formed by the case.
  • the body part may be formed in different shapes according to various services exemplified in the present invention.
  • a container for storing goods may be provided on the upper part of the body part.
  • a suction port for sucking in dust using a vacuum may be provided at the lower part 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 moving the body of the robot within a specific space in relation to driving. More specifically, the drive unit includes a motor and a plurality of wheels, which are combined to perform functions of driving, changing direction, and rotating the robot R. As another example, the driving unit may include at least one of an end effector, a manipulator, and an actuator to perform an operation other than driving, such as pickup.
  • the sensing unit may include one or more sensors for sensing at least one of information within the robot (particularly, a driving state of the robot), environment information surrounding the robot, location information of the robot, and user information.
  • the sensing unit may include a camera (image sensor), a proximity sensor, an infrared sensor, a laser scanner (lidar sensor), an RGBD sensor, a geomagnetic sensor, an ultrasonic sensor, an inertial sensor, a UWB sensor, and the like.
  • 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 control system of the facility.
  • the communication unit may include a wireless Internet module, a short-distance communication module, a location information module, and the like.
  • the interface unit may be provided as a passage through which the robot R may 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 supplies power to each component included in the robot R by receiving external power and internal power.
  • the power supply unit may be a device that generates electric energy inside the robot R and supplies it to each component.
  • the robot R has been described based on mainly traveling inside a building, but the present invention is not necessarily limited thereto.
  • the robot of the present invention may be in the form of a robot flying in a building, such as a drone. More specifically, a robot providing a guidance service may provide guidance about a building to a person while flying around a person in a building.
  • the robot may have a separate control unit as a lower controller of the cloud server 20 .
  • the control unit of the robot receives a driving control command from the cloud server 20 and controls the driving unit of the robot.
  • the control unit may calculate the torque or current to be applied to the motor using data sensed by the sensing unit of the robot. Using the calculated result, a motor, etc. is driven by a position controller, speed controller, current controller, etc., and through this, the robot performs control commands 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.
  • 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. That is, the communication unit 110 may serve as a medium of communication between different subjects.
  • 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-distance communication module 114.
  • a mobile communication module 111 a wireless communication module 112
  • a wireless Internet module 113 a wireless Internet module 113
  • a short-distance communication module 114 a short-distance communication module 114.
  • the communication unit 110 may support various communication methods based on the communication modules listed above.
  • the mobile communication module 111 complies with technical standards or communication schemes for mobile communications (eg, 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), etc.) building system (1000a), cloud server 20, robot (R) and facility infrastructure (200) on a mobile communication network built according to It may be made to transmit and receive at least one of the wireless signals.
  • the robot R may transmit and receive radio signals with the mobile communication module 111 using the communication unit of the robot R described above.
  • the wired Internet module 112 is a method of providing communication in a wired manner, and transmits and receives signals with at least one of the cloud server 20, the robot R, and the facility infrastructure 200 via a physical communication line as a medium. It can be done.
  • the wireless Internet module 113 is a concept including the mobile communication module 111 and may mean a module capable of accessing the wireless Internet.
  • 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 according to wireless Internet technologies. made to transmit and receive signals.
  • Wireless Internet technologies can be very diverse, and in addition to the communication technology of the mobile communication module 111 described above, WLAN (Wireless LAN), Wi-Fi, Wi-Fi Direct, DLNA (Digital Living Network Alliance), WiBro ( Wireless Broadband) and WiMAX (World Interoperability for Microwave Access). Furthermore, in the present invention, the wireless Internet module 113 transmits and receives data according to at least one wireless Internet technology within a range including Internet technologies not listed above.
  • the short-range communication module 114 is for short-range communication, and includes BluetoothTM, Radio Frequency Identification (RFID), Infrared Data Association (IrDA), Ultra Wideband (UWB), and ZigBee. , Near Field Communication (NFC), Wi-Fi, Wi-Fi Direct, Wireless USB (Wireless Universal Serial Bus) using at least one technology, building system (1000a), cloud server 20, robot (R) and Short-range communication may be performed with at least one of the facility infrastructure 200 .
  • RFID Radio Frequency Identification
  • IrDA Infrared Data Association
  • UWB Ultra Wideband
  • ZigBee ZigBee.
  • NFC Near Field Communication
  • Wi-Fi Wi-Fi Direct
  • Wireless USB Wireless Universal Serial Bus
  • the communication unit 110 may include at least one of the communication modules described above, and these communication modules may be disposed in various spaces inside the building 1000 to form a communication network.
  • this 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 made to communicate with each other.
  • the building 1000 may include a sensing unit 120, and this sensing unit 120 may include various sensors. At least some of the information sensed through the sensing unit 120 of the building 1000 is transferred to at least one of the cloud server 20, the robot R, and the facility infrastructure 200 through a communication network formed through the communication unit 110. can be sent as one. At least one of the cloud server 20, the robot R, and the facility infrastructure 200 controls the robot R or the facility infrastructure 200 using information sensed through the sensing unit 120. 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 pieces of information about the building 1000 .
  • the information sensed by the sensing unit 120 may be information about the robot R traveling the building 1000, people located in the building 1000, obstacles, etc., and various environmental information related to the building (eg, 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 illuminance sensor 125, an infrared sensor 126, a temperature At least one of the sensor 127 and the humidity sensor 128 may be included.
  • the image sensor 121 may correspond to a camera. As reviewed in FIG. 3 , a camera corresponding to the image sensor 121 may be disposed in the building 1000 . In this specification, the same reference numeral “121” as that of the image sensor 121 is assigned to the camera.
  • the number of cameras 121 disposed in the building 1000 is not limited.
  • the types of cameras 121 disposed in the building 1000 may vary, and as an example, the camera 121 disposed in the building 1000 may be a closed circuit television (CCTV). Meanwhile, that the camera 121 is disposed in the building 1000 may mean that the camera 121 is disposed in the indoor space 10 of the building 1000 .
  • CCTV closed circuit television
  • the microphone 122 may be configured to sense various sound information generated in the building 1000 .
  • the biosensor 123 is for sensing biometric information and may sense biometric information (eg, fingerprint information, face information, iris information, etc.) of a person or animal 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 a person) approaching the proximity sensor 124 or 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 to take pictures of the building 1000 in a dark room or at night.
  • 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 types of sensors constituting the sensing unit 120 there is no particular limitation on the types of sensors constituting the sensing unit 120, and it is sufficient as long as the functions defined by each sensor are 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 at least one of the lighting unit 133.
  • Such an output unit 130 may be disposed at an appropriate location on the indoor space of the building 1000 according to needs 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 part of the storage unit 140 may mean at least one of the cloud server 20 and an external database. That is, it can be understood that the storage unit 140 suffices as long as it is a space where various information according to the present invention is stored, and there is no restriction on physical space.
  • the controller 150 is a means for 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 controller 150 may perform control of the robot by interworking 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 the control unit of the robot R.
  • the cloud server controlling the building 1000 is the cloud controlling the robot R. It may exist separately from the server 20.
  • the cloud server 20 controlling the building 1000 and the cloud server 20 controlling the robot R communicate with each other to provide services by the robot R, move the robot, or maintain functions.
  • control unit of the building 1000 may also be referred to as 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, and within the building 1000 Various services using robots may be provided.
  • 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 the robot R, the facility infrastructure 200, and the cloud server 20 may exist in the form of a platform for constructing a robot-friendly building.
  • the process of the robot R using the facility infrastructure 200 is described in more detail.
  • the robot R travels the indoor space 10 of the building 1000 or uses the facility infrastructure 200 for purposes such as performing missions (or providing services), driving, charging, maintaining cleanliness, and waiting. and move, and furthermore, the facility infrastructure 200 can be used.
  • the robot R travels in the indoor space of the building 1000 or moves using the facility infrastructure 200 to achieve the “purpose” based on a certain “purpose”, and furthermore, the facility infrastructure (200) can be used.
  • the purpose to be achieved by the robot may be specified based on various causes.
  • the purpose to be achieved by the robot there may be a first type of purpose and a second type of purpose.
  • the purpose of the first type may be for the robot to perform its original mission
  • the purpose of the second type 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 to perform the original mission of the robot. This purpose can also be understood as the “task” of the robot.
  • the robot travels in the indoor space of the building 1000 or moves using the facility infrastructure 200 to achieve the purpose or task of providing the serving service.
  • the facility infrastructure 200 may be used.
  • the robot travels in the indoor space of the building 1000 or moves using the facility infrastructure 200 to achieve the purpose or task of providing the road guidance service.
  • the facility infrastructure 200 may be used.
  • a plurality of robots operated for different purposes may be located in the building according to the present invention. That is, different robots capable of performing different tasks may be deployed in the building, and different types of robots may be deployed in the building according to the needs of the manager of the building and various subjects who have moved into the building.
  • the building includes delivery, logistics, guidance, interpretation, parking assistance, security, crime prevention, security, policing, cleaning, quarantine, disinfection, laundry, beverage preparation, food preparation, serving, fire suppression, medical assistance, and entertainment services.
  • Robots providing at least one of the services may be deployed. Services provided by robots may be various other than the examples listed above.
  • the purpose of the second type 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.
  • the purpose of the second type 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 drive in the indoor space of the building 1000, move using the facility infrastructure 200, and furthermore, use the facility infrastructure 200. there is.
  • the robot may use a charging facility infrastructure to achieve a purpose according to a charging function, and may use a washing facility infrastructure to achieve a purpose according to a washing function.
  • the robot may drive in the indoor space of the building 1000, move using the facility infrastructure 200, and furthermore, use the facility infrastructure 200 in order to achieve a certain purpose.
  • the cloud server 20 may appropriately control 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 the database.
  • various information on each of a plurality of robots located in a building may be stored on the database, and information on the robot R may be very diverse.
  • identification information for identifying the robot R disposed in the space 10 eg, serial number, TAG information, QR code information, etc.
  • task assigned to the robot R Information eg, type of mission, operation according to the mission, target user information for the target of the mission, mission location, scheduled mission time, etc.
  • iv) robot (R) location information, v) robot (R) status information eg, power status, failure status, cleaning status, battery status, etc.
  • image information received from a camera installed in the robot (R) e.g, vii) motion information related to the motion of the robot R may exist.
  • appropriate control of the robots may be related to control for operating the robots according to the first type of purpose or the second type of purpose described above.
  • the operation of the robot may refer to control allowing the robot to drive in the indoor space of the building 1000, move using the facility infrastructure 200, and furthermore, use the facility infrastructure 200.
  • Movement of the robot may be referred to as driving of the robot, and therefore, in the present invention, the movement path and the travel 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 an appropriate task to the robots according to the purpose (or original task) of each robot, and performs the assigned task. control can be performed. At this time, the assigned task may be a task for achieving the first type of purpose described above.
  • the cloud server 20 may perform control to achieve the second type of purpose for each robot based on information about each robot stored in the database.
  • the robot that has received the control command for achieving the second type of purpose from the cloud server 20 moves to the charging facility infrastructure or washing facility infrastructure based on the control command, 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 to achieve a first type of objective or a second type of objective.
  • the cloud server 20 allows the robot to perform a task corresponding to serving to 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 performs a task corresponding to charging.
  • a method for the robot to perform a purpose or mission using the facility infrastructure 200 under the control of the cloud server 20 without distinction between the first type purpose and the second type purpose is described in more detail.
  • a robot controlled by the cloud server 20 to perform a mission may also be named a “target robot”.
  • the server 20 in the cloud may specify at least one robot to perform the mission upon request or under its own judgment.
  • the cloud server may receive requests from various entities such as visitors, managers, residents, workers, etc. located in the building in various ways (eg, user input through an electronic device or user input using a gesture method).
  • the request may be a service request for providing a specific service (or specific task) by the robot.
  • the cloud server 20 may specify a robot capable of performing the corresponding service among a plurality of robots located in the building 1000 .
  • the cloud server 20 is i) the type of service that the robot can perform, ii) the task previously assigned to the robot, iii) the current location of the robot, iv) the state of the robot (ex: power state, cleanliness state, battery state, etc.) Based on this, it is possible to specify a robot capable of responding to the request.
  • various information on each robot exists in the database, and the cloud server 20 may specify a robot to perform the mission based on the request based on the database.
  • the cloud server 20 may specify at least one robot to perform the mission based on its own judgment.
  • the cloud server 20 may perform its own determination based on various causes.
  • the cloud server 20 may determine whether a service needs to be provided to a specific user or a specific space existing in the building 1000 .
  • the cloud server 20 senses and receives data from at least one of a sensing unit 120 (see FIGS. 4 to 6) existing in the building 1000, a sensing unit included in the facility infrastructure 200, and a sensing unit provided in a robot. Based on the received information, it is possible to extract a specific target for which service needs to be provided.
  • the specific object may include at least one of a person, space, or object.
  • Objects may refer to facilities, objects, and the like located in the building 1000 .
  • the cloud server 20 may specify the type of service required for the extracted specific target and control the robot to provide the specific service 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 may determine an object for which a service needs to be provided based on various determination algorithms.
  • the cloud server 20 may include at least one of a sensing unit 120 present in the building 1000 (see FIGS. 4 to 6), a sensing unit included in the facility infrastructure 200, and a sensing unit provided in a robot. Based on the information sensed and received from , the type of service such as road guidance, serving, stair movement, etc. may be specified. And, the cloud server 20 may specify a target for which the corresponding service is required. Furthermore, the cloud server 20 may specify a robot capable of providing a specified service so that the service is provided by the robot.
  • the cloud server 20 may determine a specific space in which a service needs to be provided based on various determination algorithms.
  • the cloud server 20 may include at least one of a sensing unit 120 present in the building 1000 (see FIGS. 4 to 6), a sensing unit included in the facility infrastructure 200, and a sensing unit provided in a robot. Based on the information sensed and received from, extracting a specific space or object requiring service provision, such as a target user for delivery, a guest requiring guidance, a contaminated space, a contaminated facility, a fire zone, etc., and the specific space or object A robot capable of providing the corresponding service can be specified so that the service is provided by the robot.
  • the cloud server 20 may assign a mission to the robot and perform a series of controls necessary for the robot to perform the mission.
  • a series of controls are i) setting the movement path of the robot, ii) specifying the facility infrastructure to be used to move to the destination where the mission is to be performed, iii) communication with the specified facility infrastructure, iv) control of the specified facility infrastructure , v) monitoring the robot performing the mission, vi) evaluating the driving of the robot, and vii) monitoring whether or not the robot has completed the mission.
  • the cloud server 20 may specify a destination where the robot's mission is to be performed, and set a movement path for the robot to reach the destination.
  • the robot R may be controlled to move to a corresponding destination in order to perform a mission.
  • the cloud server 20 may set a movement path for reaching a destination from a location where the robot starts (starts) performing the mission (hereinafter referred to as “mission performance start location”).
  • the position where the robot starts to perform the mission may be the current position of the robot or the position of the robot at the time when the robot starts to perform the mission.
  • the cloud server 20 may generate a movement path of 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 the plurality of floors 10a, 10b, 10c, ... constituting the indoor space of the building.
  • the movement route may be a movement route from a mission performance start location to a destination where the mission is performed.
  • map information and moving routes are described as being related to an indoor space, but the present invention is not necessarily limited thereto.
  • the map information may include information on an outdoor space, and the movement path may be a path leading 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 start location and destination are the same. It can be located on a floor or on different floors.
  • the cloud server 20 may use map information on the plurality of floors 10a, 10b, 10c, 10d, ..., to create a movement path of 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 a destination among facility infrastructures (a plurality of facilities) disposed in the building 1000 .
  • the cloud server 20 specifies at least one facility 204, 205 to assist the robot in moving between floors, and It is possible to create a movement route including the point where the equipment is located.
  • the facility for assisting the robot to move between floors may be at least one of a robot-only elevator 204, a common elevator 213, and an escalator 205.
  • various types of facilities assisting the robot to move between floors may exist.
  • the cloud server 20 checks a specific floor corresponding to the destination among the plurality of floors 10a, 10b, 10c, ... of the indoor space 10, and the robot's mission start position (ex: service Based on the position of the robot at the time of starting the corresponding task), it may be determined whether the robot needs to move between floors to perform the service.
  • the cloud server 20 may include a facility (means) for assisting the robot to move between floors on the movement path based on the determination result.
  • the facility for assisting the robot to move between floors may be at least one of a robot-only elevator 204, a shared elevator 213, and an escalator 205.
  • the cloud server 20 may create a movement path so that a facility assisting the robot to move between floors is included in the movement path of the robot.
  • the cloud server 20 when the robot-only passages 201 and 202 are located on the movement path of the robot, uses the robot-only passages 201 and 202 to move the robot.
  • a movement path can be created including the point where (201, 202) is located.
  • the robot passage may be formed of at least one of a first passage (or first type passage) 201 and a second passage (or second type passage) 202 .
  • the first exclusive passage and the second exclusive passage 201, 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 of the building.
  • the cloud server 20 may control the driving characteristics of the robot on the robot-only passage to be changed based on the type of the robot-only passage used by the robot and the degree of congestion around the robot-only passage. As shown in FIGS. 3 and 8 , when the robot travels in the second exclusive passage, the cloud server 20 may change the driving characteristics of the robot based on the degree of congestion around the exclusive passage for the robot. Since the second exclusive passage is a passage accessible to humans or animals, safety and movement efficiency are considered together.
  • the driving characteristics of the robot may be related to the driving speed of the robot.
  • the degree of congestion may be calculated based on an image received from at least one of a camera (or image sensor) 121 disposed in the building 1000 and a camera disposed in the robot. Based on these images, the cloud server 20 may control the traveling speed of the robot to be less than or equal to a predetermined speed when the path where the robot is located and the passage dedicated to the robot in the direction of travel is congested.
  • the cloud server 20 uses the map information for the plurality of floors 10a, 10b, 10c, 10d, ..., to generate a movement path of a robot to perform a service within the building 1000, and at this time , At least one facility that the robot must use or pass through to move to a destination among facility infrastructures (a plurality of facilities) disposed in the building 1000 may be specified. And, it is possible to create a movement route that includes at least one specified facility on the movement route.
  • a robot traveling in the indoor space 10 to perform a service may sequentially use or pass through at least one facility along a movement path received from the cloud server 20 and drive to a destination.
  • the order of facilities to be used by the robot may be determined under the control of the cloud server 20 . Furthermore, the order of facilities to be used by the robot may be included in the information on the movement path received from the cloud server 20 .
  • robot-specific facilities (201, 202, 204, 208, 209, 211) exclusively used by robots and shared facilities (205, 206) jointly used by humans , 207, 213) may be included.
  • Robot-exclusive facilities exclusively used by robots include facilities (208, 209) that provide functions necessary for robots (ex: charging function, washing function, standby function) and facilities used for robot movement (201, 202, 204 , 211).
  • the cloud server 20 When the robot creates a movement path, the cloud server 20 causes the robot to move (or pass) using the robot-exclusive facility when there is a robot-exclusive facility on the path from the mission start position to the destination. You can create a movement path that That is, the cloud server 20 may create a movement path by giving priority to facilities dedicated to the robot. This is to increase the efficiency of the movement of the robot. For example, the cloud server 20 may create a movement path including the robot-specific elevator 204 when both the robot-specific elevator 204 and the common elevator 213 exist on the movement path to the destination. 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 duties 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 used or scheduled to be used by the robot for smooth movement of the robot.
  • a control system or control server
  • the unique control systems for controlling the 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 facilities. Appropriate control can be performed for each facility to
  • the cloud server 200 may monitor the location of robots traveling in the building 1000 in real time or at preset time intervals.
  • the cloud server 1000 provides location information on all of the plurality of robots traveling in the building 1000. or, if necessary, selectively monitoring the location information of only a specific robot.
  • the location information of the robot being monitored can be stored on a database in which the information of the robot is stored, and the location information of the robot changes over time. can be continuously updated.
  • Methods for estimating the positional information of the robot located in the building 1000 can be very diverse. Hereinafter, an embodiment of estimating the positional information of the robot will be described.
  • 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 in the robot R, and receives It is made to perform visual localization to estimate the position 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 robot R's surroundings.
  • robot image an image acquired using a camera provided in the robot R
  • space image the image acquired through the camera disposed in the space 10
  • the cloud server 20 is configured to acquire a robot image 910 through a camera (not shown) provided in the robot R. Also, the cloud server 20 may estimate the current location of the robot R using the obtained robot image 910 .
  • the cloud server 20 compares the robot image 910 with the map information stored in the database, and as shown in (b) of FIG. 9, the location information corresponding to the current location of the robot R (eg, “3rd floor A area (3, 1, 1)”) can be extracted.
  • the map of the space 10 may be a map prepared based on Simultaneous Localization and Mapping (SLAM) by at least one robot moving the space 10 in advance.
  • SLAM Simultaneous Localization and Mapping
  • the map of the space 10 may be a map generated based on image information.
  • the map of the space 10 may be a map generated by vision (or visual) based SLAM technology.
  • the cloud server 20 provides coordinate information (for example, (3rd floor, area A (3, 1)) as shown in (b) of FIG. , 1,))
  • the specified coordinate information may soon be the current location information of the robot (R).
  • the cloud server 20 compares the robot image 910 obtained from the robot R with a map generated by the vision (or visual) based SLAM technology to estimate the current location of the robot R.
  • the cloud server 20 i) specifies an image most similar to the robot image 910 by using an image comparison between the robot image 910 and images constituting a pre-generated map, and ii) the specified
  • the location information of the robot R may be specified by acquiring 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 provides location information (eg, coordinates) corresponding to the robot image 910 from map information previously stored in a database (eg, it can also be named “reference map”). information) can be extracted.
  • the position estimation of the robot R may be performed by the robot R itself. . That is, the robot R may estimate the current position based on the image received from the robot R itself in the manner described above. Then, the robot R may transmit the estimated location information to the cloud server 20 . In this case, the cloud server 20 may perform a series of controls based on location information received from the robot.
  • the cloud server 20 can specify at least one camera 121 disposed in the indoor space 10 corresponding to the location information.
  • the cloud server 20 may specify the camera 121 disposed in the indoor space 10 corresponding to the location information from matching information related to the camera 121 stored in the database.
  • the cloud server 20 obtains a robot image 910 obtained from the robot R itself and a camera 121 disposed in a space where the robot R is located for control of the robot R.
  • the image can be output together with the display unit of the control system. Therefore, a manager who remotely manages and controls the robot R from inside or outside the building 1000 can obtain not only the robot image 910 obtained from the robot R, but also the image of the space where the robot R is located. In consideration of, it is possible to perform remote control on the robot (R).
  • position estimation of a robot traveling in the indoor space 10 may be performed based on a tag 1010 provided in the indoor space 10, as shown in FIG. 10(a).
  • location information corresponding to a point to which the tag 1010 is attached may match and exist in the tag 1010 , 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, respectively. Identification information of each tag and location information of a point where the tag is attached may match each other and exist in a database.
  • the tag 1010 may include location information matched to each tag 1010 .
  • the robot R may recognize the tag 1010 provided in the space 10 by using a sensor provided in the robot R. Through this recognition, the robot R can determine the current location of the robot R by extracting location information included in the tag 1010 . Such 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 may monitor the locations of the robots traveling in the building 20 based on the location information received from the robot R that has sensed the tags.
  • the robot R may transmit identification information of the recognized tag 1010 to the cloud server 20 .
  • the cloud server 20 may monitor the location of the robot within the building 1000 by extracting location information matched to the identification information of the tag 1010 from the database.
  • the term of the tag 1010 described above may be variously named.
  • this tag 1010 can be variously named as a QR code, a barcode, an identification mark, and the like.
  • the term of the tag reviewed above can be used by replacing it 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 mark (or identification mark) provided to the robot R, as shown in FIG. 11 .
  • This identification mark can be sensed or scanned by the building control system 1000a or the facility infrastructure 200 .
  • identification marks 1101, 1102, and 1103 of the robot R may include identification information of the robot.
  • the identification mark (1101, 1102, 1103) is a barcode (barcode, 1101), serial information (or serial information, 1102), QR code (1103), RFID tag (not shown) or NFC tag (not shown) ) and so on. Barcode (1101), serial information (or serial information, 1102), QR code (1103), RFID tag (not shown) or NFC tag (not shown) is provided (or attached) with an identification mark It may be made to include identification information of the robot.
  • the robot identification information is information for distinguishing each robot, and may have different identification information even if the robots are of the same type. Meanwhile, the information constituting the identification mark may be configured in various ways other than 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 an image received from a camera installed in the indoor space 10, a camera installed in another robot, or a camera provided in facility infrastructure, and ), the location of the robot can be identified and monitored.
  • a means for sensing the identification mark is not necessarily limited to a camera, and a sensing unit (eg, a scanning unit) may be used according to the shape of the identification mark.
  • a sensing unit may be provided in at least one of the indoor space 10 , robots, and facility infrastructure 200 .
  • the cloud server 20 may determine the position of the robot R from an image received from the camera. At this time, the cloud server 20 provides at least one of location information where the camera is placed and location information of the robot in the image (precisely, location information of a graphic object corresponding to the robot in an image taken with the robot as a subject). Based on this, the position of the robot R can be grasped.
  • identification information on cameras disposed in the indoor space 10 may be matched with location information on locations where cameras are disposed. Accordingly, the cloud server 20 may extract location information of the robot R by extracting the location information matched with the identification information of the camera that has taken the image from the database.
  • the cloud server 20 may determine the location of the robot R from scan information sensed by the scan unit. On the database, identification information on the scan unit disposed in the indoor space 10 may be matched with location information on a place where the scan unit is disposed. Accordingly, the cloud server 20 may extract location information of the robot R by extracting location information matched to the scanning unit that has scanned the identification mark provided in the robot from the database.
  • the cloud server 20 can efficiently and accurately control the robot within the building by monitoring the position of the robot.
  • FIG. 12 is a conceptual diagram for explaining a robot controlled by the robot system according to the present invention.
  • the robot may include a communication unit 1201, a storage unit 1202, a driving unit 1203, a control unit 1204, and a sensor unit. Since the communication unit 1201 and the storage unit 1202 have been described above, a detailed description thereof will be omitted.
  • the driving unit 1203 is configured to move the robot in space.
  • the driving unit 1203 is configured to control at least one of a moving direction and a moving speed of the robot, and the controller 1204 controls the driving unit 1203 so that the robot can travel according to a set movement path.
  • the driving unit 1203 may be controlled by the control unit 1204 included in the robot and the cloud server 20. Unless otherwise limited in this specification, control of the robot by any one of the control unit 1204 and the cloud server 20 included in the robot is also possible by the other one.
  • the cloud server 20 may include at least one of a main server and a sub server, as described above.
  • control unit 1204 may be configured to control the overall operation of the robot related to the present invention.
  • the control unit 1204 may process input or output signals, data, information, etc. through the components described above, or provide or process appropriate information or functions to the user.
  • control unit 1204 means a control unit provided in the robot.
  • the present invention can set the driving path of the robot within the space using map information pre-stored in the server 20 .
  • map information pre-stored in the server 20 can be set using map information pre-stored in the server 20 .
  • the server 20 utilizes a node map in setting a driving path of a robot will be described in more detail.
  • FIG. 13 is a conceptual diagram for explaining a node map used for setting a moving path of a robot.
  • the server 20 may control the robot to move from the current location to a specific destination.
  • the present invention specifies the current location information and the destination location information of the robot, sets a route to reach the destination, and controls the robot to reach the destination by moving along the set route.
  • the present invention proposes map information (node map) for efficiently setting a robot driving path.
  • map information to be described later is merely an example of map information used to set a driving route of the robot, and the robot driving control method according to the present invention is not performed only by the map information described later.
  • a map (or map information) for a building may be stored in the server 20 .
  • a map of a building stored in the server 20 may be in the form of a two-dimensional plan view, but is not limited thereto.
  • map information may include a plurality of nodes.
  • a 'node' means a point or area that becomes a unit target for the robot's movement.
  • a node can contain two types of information.
  • nodes contain coordinate information.
  • a single node specifies a specific coordinate or range of coordinates on the map.
  • a node may designate a circular area having a predetermined area on a map.
  • the coordinate information included in the node may consist of specific coordinates or coordinate ranges. That is, each node corresponds to a different location of the building.
  • nodes contain connection information.
  • a single node contains information defining other nodes from which the robot can move.
  • the connection information may include a unique number of another node to which the robot can move from the corresponding node or coordinate information designated by the other node.
  • the server 20 controls the robot to move from one node to another node, and controls the robot to reach the target point by repeating this process.
  • moving a robot to a specific node means that the robot moves within coordinate information or a range of coordinates designated by a specific node.
  • a movement path for moving the robot from the current position (S) to the destination (A) is set using the above-described location information estimation method and map information, and then transmitted to the robot.
  • the method using the node map corresponds to an embodiment of controlling the driving of the robot, and the present invention may set the movement path of the robot using a method other than the node map described above. That is, the implementation method of the map (map) for setting the movement path of the robot can be very diverse.
  • FIG. 14 is a flowchart for explaining a robot control method according to the present invention
  • FIG. 15 is a conceptual diagram showing a robot control method according to the present invention
  • FIGS. 16 and 17 calculate a risk according to an embodiment of the present invention,
  • It is a conceptual diagram showing how to set a region of interest.
  • a step of performing a travel path of the robot from the server 20 proceeds (S110).
  • the server 20 may assign tasks to the robots traveling through the building and create route plans for the robots.
  • Path planning may refer to a plan for a global path for a robot to drive through a building in order to perform a mission. Such a path plan may include information about a plurality of areas provided in a building through which the robot must pass or travel. In this specification, the above-described path planning is referred to as a “route path” of the robot.
  • the server 20 may generate a driving route by utilizing the node map described above. Specifically, the server 20 may generate a driving path of the robot by selecting a plurality of nodes included in the node map and setting the order of the selected nodes. Upon receiving the driving route, the robot sequentially passes through areas within the building corresponding to each of the nodes arranged in order.
  • the server 20 plans the global path of the robot, and then controls the robot to perform the global path planning while monitoring the environment inside the building.
  • the server 20 may control at least one of the driving direction, driving speed, rotation direction, rotation speed, travel distance, and rotation angle of the robot in real time so that the robot can achieve global path planning.
  • the robot to achieve the global path planning may be performed by a controller included in the robot.
  • controlling at least one of the driving direction, driving speed, rotation direction, rotation speed, travel distance, and rotation angle in real time to achieve global path planning of the robot is referred to as “detailed driving control” for the robot.
  • Detailed driving control for the robot may be performed by the server 20 or a control unit included in the robot.
  • detailed driving control of the robot is described as being performed by a controller included in the robot, but control of the robot performed by the controller included in the robot may also be performed by the server 20 .
  • the robot may receive a driving route 1510 from the server.
  • the driving route 1510 may be generated based on a node map.
  • the driving route 1510 includes information related to nodes (N1, N5, N9, N10, N11, N15, N16) on which the robot should travel, It may include information related to a driving order for the node.
  • the robot R performs detailed control for traveling along the travel path 1510 .
  • the robot may perform avoidance control (1531 and 1532) for avoiding obstacles located on the driving path.
  • the controller may utilize sensing data received from a sensor provided in the robot. To this end, a step of sensing an obstacle located around the robot using a sensor provided in the robot is performed (S120).
  • Obstacles located around the robot can be largely defined in two ways.
  • obstacles located around the robot can be defined based on the location of the robot and the driving direction of the robot.
  • the obstacles located around the robot may be obstacles located within a predetermined distance based on the position of the robot or located within a predetermined range based on the driving direction of the robot.
  • the obstacles located around the robot may be obstacles located within a predetermined distance based on the position of the robot and located within a predetermined range based on the driving direction of the robot.
  • obstacles located around the robot can be defined around the robot's driving path.
  • the obstacles located around the robot may be obstacles located within a predetermined distance based on the driving path of the robot.
  • the obstacles located around the robot may be obstacles located within a predetermined distance based on the driving path of the robot and located within a predetermined distance based on the position of the robot.
  • the controller may sense an obstacle based on sensing data received from a sensor provided in the robot.
  • sensing the obstacle means determining whether the obstacle exists, calculating the size of the obstacle, determining the position of the obstacle, calculating the relative distance between the obstacle and the robot, and calculating the movement direction of the obstacle. It may include at least one of doing and calculating the movement speed of the obstacle.
  • the control unit may generate various information related to the obstacle based on the sensing data.
  • an obstacle 1521 located at N5 is sensed, but other obstacles 1522, 1523, 1524) does not sense.
  • obstacles 1522 and 1523 located around N10 are sensed, but other obstacles 1521 separated from the robot R by a predetermined distance or more are not sensed.
  • a specific obstacle 1524 located around N10 may not be sensed. This will be described later.
  • a step of calculating a degree of risk related to driving of the robot based on the relative distance between the robot and the obstacle proceeds (S130).
  • the control unit included in the robot may calculate the distance between the obstacle and the robot using sensing data.
  • the controller may calculate a relative distance between each of the plurality of obstacles and the robot.
  • the degree of risk may be calculated based on the relative distance between the robot and the obstacle.
  • the degree of risk may be a value obtained by dividing the size of the robot by the relative distance between the robot and the obstacle.
  • the size of the robot may be the length of the robot or the width of the robot.
  • the degree of risk may be calculated based on one obstacle that satisfies a preset distance condition among the plurality of obstacles.
  • the degree of danger may be calculated based on an obstacle closest to the robot among the plurality of obstacles.
  • the risk level may be updated when a predetermined condition is satisfied.
  • the preset conditions are that a preset time has elapsed since the last time the risk level was updated, that at least one of the robot's traveling speed, traveling direction, rotational speed and rotational direction has changed, and that the robot has traveled a preset distance.
  • the risk level is updated at regular intervals, updated in real time by the control of the robot or server, sensing data received from sensors provided in the robot satisfies preset conditions, the driving environment of the robot changes, or the robot is It can be updated when more than the distance has been driven.
  • the degree of danger is calculated based on the relative distance d1 between the obstacle 1521 located at N5 and the robot R, and the robot ( When R) moves around N10, the degree of danger can be calculated using any one of the relative distances d2 and d3 between the obstacles 1522 and 1523 located around N10 and the robot R.
  • the relative distance d2 between the obstacle 1522 closest to the robot R and the robot may be used to calculate the degree of risk.
  • the relative distance between the specific obstacle 1524 located around N10 and the robot R may not be calculated, or even if it is calculated, it may not be used to calculate the degree of risk. This will be described later.
  • a step of setting a region of interest related to driving of the robot is performed (S140).
  • the region of interest related to driving of the robot may be a virtual region having a predetermined area.
  • the region of interest may be used to not process some of the sensing data received from the sensor provided in the robot or to selectively process only some of the data.
  • the region of interest may include two regions.
  • the region of interest may include a first region set based on the driving route and the degree of risk. At least a part of the region of interest may be set based on the driving route. The first area related to the driving route may be set along the driving route.
  • the first area may be created to extend along a line connecting a plurality of nodes in order that the robot must travel.
  • a first area 1541a may be created along a direction in which a travel path 1510 of the robot extends.
  • the first area does not need to overlap the entire travel path 1510 of the robot.
  • the direction in which the first region extends is defined as the longitudinal direction of the first region, and the distance the first region extends along the longitudinal direction is defined as the length of the first region.
  • a direction perpendicular to the longitudinal direction is defined as the width direction of the first region, and a length extending along the width direction is defined as the width of the first region.
  • the length of the first region may be set based on a distance required for the robot to avoid the obstacle.
  • the distance required for the robot to avoid the obstacle is at least one of the robot's traveling speed, the robot's traveling direction, the relative distance between the robot and the obstacle, the moving speed of the obstacle, the moving direction of the obstacle, and the structure of the area in the building where the robot is located. can be calculated taking into account
  • the width of the first region may be set based on at least one of a size of the robot, noise of a sensor provided in the robot, and the degree of danger. Specifically, the width of the first region may be set wider as the size of the robot increases, the noise of the sensor increases, and the degree of danger increases.
  • the first area may be formed to have an area defined by a predetermined width and a predetermined length based on a driving direction along the driving path.
  • the region of interest may include a second region set based on at least one of the size of the robot, the traveling direction of the robot, and the traveling speed of the robot and the degree of risk. At least a part of the region of interest may be set based on the direction the robot faces. Specifically, the second area may extend in a direction toward which the robot faces and may have a predetermined width. Also, the location of the second area may be set based on the location of the robot.
  • the controller sets at least one of a driving direction, a traveling speed, a rotational speed, and a rotational direction of the robot in real time to travel along the travel path.
  • the direction in which the robot travels that is, the direction in which the robot faces may change every hour.
  • the second area may be set based on a direction the robot faces, which changes every hour. Referring to FIG. 15 , the second area 1542a may be set to extend in the direction in which the robot is currently traveling based on the position of the robot.
  • the direction in which the second area extends is defined as the length direction of the second area, and the distance the second area extends along the length direction is defined as the length of the second area.
  • a direction perpendicular to the length direction is defined as the width direction of the second region, and a length extending along the width direction is defined as the width of the second region.
  • the length of the second region may be set based on a distance required for the robot to avoid the obstacle.
  • the distance required for the robot to avoid the obstacle is at least one of the robot's traveling speed, the robot's traveling direction, the relative distance between the robot and the obstacle, the moving speed of the obstacle, the moving direction of the obstacle, and the structure of the area in the building where the robot is located. can be calculated taking into account
  • the width of the second region may be set based on at least one of a size of the robot, noise of a sensor provided in the robot, and the degree of danger. Specifically, the width of the second region may be set wider as the size of the robot increases, the noise of the sensor increases, and the degree of danger increases.
  • the second area may be formed to have an area defined by a predetermined width and a predetermined length based on the traveling direction of the robot.
  • At least a portion of the above-described first and second regions may overlap.
  • the robot receives sensing data in real time from a sensor installed in the robot. Some of the sensing data received from the sensor may be used for driving the robot, and the rest may not be processed by the controller.
  • sensing data to be used for driving the robot and data not to be used may be classified based on the region of interest. Specifically, when the sensing data received from the sensor is data for sensing the region of interest, the data may be used for driving of the robot. In contrast, when the sensing data received from the sensor is data sensing an area other than the area of interest, the data may not be used for driving of the robot.
  • some of the data related to the region of interest may be sensing data for an area overlapping the region of interest, among regions detectable by sensors included in the robot, collected from sensors included in the robot.
  • a sensor provided in the robot has a predetermined sensing range. Accordingly, a detectable area of a sensor provided in the robot may be formed based on the position of the robot.
  • the controller may determine sensing data for an area where the sensor's detectable area overlaps with the area of interest as data related to the area of interest.
  • the control unit includes the type of sensor provided in the robot, the position of the sensor, the measurement range of the sensor, the position of the robot when the sensor collects the sensing information, the direction the robot faces when the sensor collects the sensing information, and the sensing data received from the sensor. Considering at least one of the detailed contents of , among the sensing data received from the sensor, data related to the region of interest and data not related to the region of interest may be distinguished.
  • the controller may perform control related to avoidance of an obstacle located around the robot based on some data related to the region of interest among sensing data collected from a sensor provided in the robot.
  • the controller senses an obstacle located in the region of interest by using some data related to the region of interest among sensing data collected from sensors provided in the robot.
  • the controller may determine at least one of the presence or absence of an obstacle in the ROI, the position, size, type, and movement direction of the obstacle by using some data related to the ROI.
  • the controller since the controller selectively processes only the sensing data related to the region of interest, the amount of sensing data to be processed by the controller may vary according to the width of the region of interest. Specifically, when the area of the ROI is the first value, the amount of sensing data used in the step of performing control related to driving of the robot using the sensing data related to the ROI is the first data amount, and the ROI When the width of is a second value greater than the first value, the amount of data used in the step of performing control related to driving of the robot using the sensing data related to the region of interest is second data greater than the first data amount. can be quantity. That is, according to the present invention, as the area of the region of interest is wide, a larger amount of sensing data can be used for control related to robot driving.
  • the controller may perform control to avoid an obstacle located in the ROI based on at least one of the presence or absence of an obstacle, the location, size, type, and moving direction of the obstacle.
  • control unit may include at least one of the driving speed, driving direction, rotational speed, rotational direction, and traveling distance of the robot based on at least one of the presence or absence of an obstacle in the region of interest, the position, size, type, and movement direction of the obstacle. By setting one, the robot can drive while avoiding obstacles located in the region of interest.
  • the controller may select among the driving speed, driving direction, rotational speed, rotational direction, and traveling distance of the robot based on at least one of the presence or absence of an obstacle in the region of interest, the position, size, type, and movement direction of the obstacle.
  • a short-term driving path for avoiding obstacles can be set.
  • the short-term driving path may be a path that allows the robot to return to an existing driving path after avoiding an obstacle in the region of interest.
  • the controller may not separately process sensing data other than sensing data related to the region of interest. Accordingly, even if an obstacle is located around the robot, if it is located outside the ROI, the robot may not respond to the obstacle.
  • control related to avoidance of obstacles located around the robot may be performed based on data related to the first area and data related to the second area among sensing data collected from sensors provided in the robot. .
  • the controller may perform control related to obstacle avoidance located in the ROI.
  • the data related to the region of interest may be sensing data obtained by sensing the obstacle of interest located in the region of interest.
  • the controller may perform control related to avoidance of obstacles related to the ROI by using only sensing data of obstacles related to the ROI.
  • the obstacle related to the region of interest means an obstacle located within the region of interest.
  • an obstacle located within the ROI is referred to as an "obstacle of interest".
  • An obstacle of interest is an obstacle to be interested in while driving the robot, and may be an obstacle that is located within the region of interest or satisfies a distance condition to the region of interest.
  • an obstacle of interest may be an obstacle in which all parts of the obstacle are located within the region of interest or an obstacle in which at least a part of the obstacle is located in the region of interest.
  • the obstacle of interest may be an obstacle located within a preset distance from the region of interest.
  • the control unit does not use the sensing data for the non-interest target obstacle for control related to the avoidance of the obstacle. may not be
  • the operation of the robot can be minimized by controlling the driving of the robot by selectively considering only the obstacle of interest related to the region of interest.
  • the control unit uses sensing data related to regions of interest 1541a and 1542a among sensing data received from sensors included in the robot to detect the An obstacle 1521 located within the regions of interest 1541a and 1542a is sensed.
  • the control unit performs control to avoid the obstacle 1521 located within the ROI 1541a and 1542a. Accordingly, the robot R travels along a path 1531 avoiding an obstacle 1521 located in the regions of interest 1541a and 1542a.
  • the controller uses sensing data related to the ROI 1541b and 1542b among the sensing data received from the sensor provided in the robot to detect the area of interest within the ROI 1541b and 1542b.
  • a plurality of located obstacles 1522 and 1523 are sensed.
  • the control unit performs control to avoid the plurality of obstacles 1522 and 1523 located within the ROI 1541b and 1542b.
  • the controller may not perform separate processing.
  • the controller performs control for obstacle avoidance without considering the obstacle 1524 located outside the ROI. Accordingly, the robot R travels along a path 1532 avoiding the plurality of obstacles 1522 and 1523 located in the regions of interest 1541b and 1542b.
  • the present invention selectively utilizes only sensing data for a region of interest set based on the degree of risk and does not utilize sensing data unrelated to the region of interest, thereby minimizing unnecessary calculations during robot driving.
  • the present invention sets the degree of risk based on the area of interest setting based on the distance between the robot and the obstacle, so that when the distance between the robot and the obstacle is relatively short, even the sensing data for the area around the obstacle is used for control for obstacle avoidance. If the distance between the robot and the obstacle is relatively long, the amount of sensing data to be processed according to the current situation of the robot can be varied by performing driving control of the robot considering only the sensing data for the area where the obstacle is located. Through this, the present invention enables control for obstacle avoidance to be performed with an optimal amount of calculation according to the situation of the robot.
  • the present invention utilizes the region of interest when calculating the degree of risk associated with driving the robot.
  • the controller may set a basic region of interest based on at least one of the robot's size, travel path, travel direction, and travel speed.
  • the default area of interest is an area set as default when the robot starts driving or when no obstacles are detected around the robot.
  • the basic region of interest may not be set based on the degree of risk, but may be set based on the driving path of the robot and the direction the robot is heading.
  • the basic region of interest may include two regions like the above-mentioned region of interest.
  • the basic region of interest may include a first region set based on the driving route. At least a part of the basic region of interest may be set based on the driving route. The first area related to the driving route may be set along the driving route.
  • the direction in which the first region extends is defined as the longitudinal direction of the first region, and the distance the first region extends along the longitudinal direction is defined as the length of the first region.
  • a direction perpendicular to the longitudinal direction is defined as the width direction of the first region, and a length extending along the width direction is defined as the width of the first region.
  • the length of the first region may be set based on a distance necessary for the robot to avoid the obstacle in consideration of only the driving state of the robot. Specifically, a distance required for the robot to avoid an obstacle may be calculated in consideration of at least one of a driving speed of the robot and a structure of an area in a building where the robot traveling direction is located.
  • the width of the first region may be set based on at least one of a size of the robot and noise of a sensor provided in the robot. Specifically, the width of the first region may be set wider as the size of the robot increases and the noise of the sensor increases.
  • the basic region of interest may include a second region set based on at least one of a size of the robot, a traveling direction of the robot, and a traveling speed of the robot. At least a part of the basic region of interest may be set based on the direction the robot faces. Specifically, the second area may extend in a direction toward which the robot faces and may have a predetermined width. Also, the location of the second area may be set based on the location of the robot.
  • the direction in which the second area extends is defined as the length direction of the second area, and the distance the second area extends along the length direction is defined as the length of the second area.
  • a direction perpendicular to the length direction is defined as the width direction of the second region, and a length extending along the width direction is defined as the width of the second region.
  • the length of the second region may be set based on a distance required for the robot to avoid the obstacle by considering only the driving state of the robot. Specifically, a distance required for the robot to avoid an obstacle may be calculated in consideration of at least one of a driving speed of the robot and a structure of an area in a building where the robot traveling direction is located.
  • the width of the second region may be set based on at least one of a size of the robot and noise of a sensor provided in the robot. Specifically, the width of the second region may be set wider as the size of the robot increases and the noise of the sensor increases.
  • the first and second regions included in the basic ROI may overlap each other.
  • the basic region of interest can be utilized for robot control even if risk calculation has not been performed.
  • the basic region of interest may be used to selectively utilize only some of the sensing data collected from sensors installed in the robot, similar to the above-mentioned region of interest, or may be used to specify obstacles for risk calculation.
  • the degree of risk may be calculated based on a relative distance between an obstacle located in the basic region of interest and the robot. That is, obstacles located outside the basic area of interest may not be considered when calculating the risk.
  • the controller determines that sensing data related to obstacles 1621a and 1622a located outside the basic region of interest composed of a first region 1641a and a second region 1642a is a risk level. Do not use for calculation. The controller may not calculate the distance between the obstacles 1621a and 1622a located outside the basic ROI and the robot. Accordingly, the degree of risk may not be calculated in the situation (a) of FIG. 16 .
  • the controller uses sensing data related to an obstacle 1622b located outside the basic region of interest consisting of a first region 1641b and a second region 1642b to calculate the degree of risk. Without using it, only the sensing data related to the obstacle 1621b located within the first area 1641b may be selectively used for risk calculation.
  • the controller may calculate only the distance d4 between the robot and the obstacle 1621b located within the first region 1641b without calculating the distance between the robot and the obstacle 1622b located outside the basic ROI. Accordingly, in the situation (b) of FIG. 16 , the degree of risk may be calculated based on the distance d4 between the robot and the obstacle 1621b located in the first area 1641b.
  • the controller uses sensing data related to an obstacle 1621c located outside the basic region of interest composed of the first region 1641c and the second region 1642c to calculate the degree of risk. Instead of using it, only the sensing data related to the obstacle 1622c located in the second area 1642c may be selectively used for risk calculation.
  • the controller may calculate only the distance d5 between the robot and the obstacle 1622c located within the second region 1642c without calculating the distance between the robot and the obstacle 1621c located outside the basic ROI. Accordingly, in the situation (c) of FIG. 16 , the degree of risk may be calculated based on the distance d5 between the robot and the obstacle 1622c located in the second area 1642c.
  • the controller may utilize sensing data related to obstacles 1621d and 1622d located in the first area 1641d and the second area 1642d, respectively, to calculate the degree of risk. there is.
  • the controller may calculate a distance d6 between the robot and the obstacle 1621d located in the first area 1641d and a distance d7 between the robot and the obstacle 1622d located in the second area 1642d. Thereafter, the controller may calculate the degree of risk based on d7 having a smaller value among d6 and d7.
  • the controller may update the basic ROI so that the basic ROI is enlarged or reduced based on the degree of risk.
  • Setting the region of interest related to driving of the robot described above (S140) may be to update the basic region of interest.
  • the risk is recalculated, and when the risk is recalculated, the ROI may be updated based on the recalculated risk.
  • the preset condition is that a preset time has elapsed since the last time the risk level was updated, that at least one of the robot's traveling speed, traveling direction, rotational speed and rotational direction has changed, and that the robot has traveled a preset distance. It can be at least one. That is, the risk level is updated at regular intervals, updated in real time by the control of the robot or server, sensing data received from sensors provided in the robot satisfies preset conditions, the driving environment of the robot changes, or the robot is It can be updated when more than the distance has been driven.
  • the region of interest may be updated based on the recalculated risk.
  • the update may be updated to a region of interest based on a degree of risk in a state where the region of interest of the robot is set as the basic region of interest, or may be updated to a region of interest based on a degree of risk recalculated from a region of interest set based on the degree of risk.
  • the robot calculates a degree of danger based on the distance d8 between the detected obstacle 1721a and the robot, and the distance Based on (d8), the basic region of interest may be updated.
  • the updated ROI may include a first region 1741a and a second region 1742a like the basic ROI, and the first region 1741a is obtained by enlarging or reducing the first region included in the basic ROI.
  • the second area 1742a may be set by enlarging or reducing the first area included in the basic ROI.
  • the length (L3) and width (W3) of the first region and the length (L3') and width (W3') of the second region may be set, and the set length and width are The length and width of the first and second regions included in the existing region of interest may be different.
  • the distance d9 between the obstacle and the robot shown in (b) of FIG. 17 is shorter than that of (a) of FIG. 17 .
  • the length (L4) and width (W4) of the first region included in the region of interest and the length (L4') and width (W4') of the second region are the first and second regions corresponding to (a) of FIG. It may be larger than the second area.
  • the controller may set the ROI of the robot as the basic ROI.
  • the predetermined obstacle condition may be that no obstacle is detected within the ROI. That is, when an obstacle is not detected in the ROI, the controller may set the ROI of the robot as a default value.
  • the present invention enables a robot to avoid obstacles with minimal calculation in a building environment that changes in real time by periodically updating the region of interest.
  • the region of interest and the basic region of interest may be set in consideration of the environment within the building and the mission of the robot.
  • an embodiment of setting a region of interest and a basic region of interest in consideration of the environment within a building and the mission of the robot will be described.
  • FIG. 18 is a conceptual diagram illustrating an embodiment of setting a region of interest in consideration of moving obstacles
  • FIG. 19 is a conceptual diagram illustrating an embodiment of setting a region of interest in consideration of congestion in a building. It is a conceptual diagram illustrating an embodiment of setting a region of interest in consideration.
  • the controller may update the ROI regardless of whether the moving obstacle is located within the ROI. Specifically, the controller may expand the size of the region of interest when an obstacle moving within the detection range of a sensor provided in the robot is detected.
  • the size of the region of interest is expanded. Accordingly, the length (L5) and width (W5) of the first region 1841a included in the existing ROI are increased to L6 and W6, and the length (L5') and width (W5') of the second region 1842a are increased. ) increases to L6' and W6'.
  • the present invention expands a region of interest when a moving obstacle is detected, so that the robot can prepare for the moving obstacle.
  • the controller may receive information related to the degree of congestion in the building from the server and update the region of interest based on the degree of congestion in the building. Specifically, the controller may expand the size of the region of interest as the degree of congestion in the building increases. The controller may set the area of the region of interest to be large when the degree of congestion in the building is high even if the degree of risk calculated based on the sensing data is the same.
  • congestion in the building may increase as obstacles 1922 to 1924 in the building increase.
  • the server may calculate the number of obstacles in the building using images received through CCTVs 1951 to 1953 installed in the building, and calculate the degree of congestion in the building based on the number of obstacles.
  • the calculated congestion level may be transmitted to a robot traveling in a building.
  • the controller may expand or contract the region of interest based on the received congestion information.
  • the controller expands the size of the region of interest. Accordingly, the width W7 of the first region 1941a included in the existing ROI increases to W8, and the width W7' of the second region 1942a increases to W8'.
  • the present invention by adjusting the size of the region of interest based on the degree of congestion in the building, the environment inside the building can be reflected in real time to adjust the amount of operation of the robot.
  • the controller may receive task information of the robot from the server and update the region of interest based on the robot task. Specifically, the controller may enlarge or reduce the region of interest according to the mission of the robot.
  • the robot while the robot is traveling along a preset travel path 2010, it may receive new mission information from the server and load a bulky object to perform the mission.
  • the controller may expand the size of the region of interest in consideration that a task assigned to the robot is a task of transporting an object. Accordingly, the width W9 of the first region 2041a included in the existing ROI may increase to W10, and the width W10' of the second region 2042a may increase to W10'.
  • the robot's operation amount can be adjusted by reflecting the robot's mission performance status in real time.
  • 21 to 23 are conceptual diagrams illustrating an embodiment in which only sensing data corresponding to a region of interest of a robot is selectively utilized within a sensing range of a sensor provided in the robot.
  • a sensing range of a sensor provided in the robot R may be specified as an imaginary circle 2160 enclosing the robot.
  • the robot R may detect all obstacles within the detection range 2160 of the sensor, and may perform driving-related control in consideration of the detected obstacles.
  • some obstacles 2122 and 2123 do not need to be considered when the robot travels along a preset travel path. In order for the robot to travel along the travel path, it is sufficient to avoid only the obstacles 2121 located within the regions of interest 2141 and 2142 .
  • the robot selectively considers only sensing data related to an obstacle 2221 located within the region of interest, and performs control related to driving without considering obstacles 2222 and 2223 located outside the region of interest. When performing, a collision with some obstacles may occur.
  • an avoidance path 2330a for the obstacle 2321 located in the ROI is not considered, without considering the obstacle 2322 disposed very close to the obstacle 2321 located in the ROI. ) is set, the robot may collide with the obstacle 2322 disposed very close to the obstacle 2321 located in the region of interest.
  • the present invention allows control for avoidance to be performed in consideration of surrounding conditions of the obstacle when the distance between the obstacle and the robot becomes close.
  • the control unit performs avoidance control in consideration of sensing data for each of the obstacle 2221 located in the ROI and the obstacle 2222 disposed very close to the obstacle 2221 .
  • the controller may set an avoidance path 2330b in consideration of the updated obstacles 2321 and 2322 located within the ROI, so that the robot avoids both adjacent obstacles. there is.
  • the region of interest may be changed to suit a driving situation of the robot.
  • a driving situation of the robot an example of changing the region of interest according to the driving situation of the robot will be described in detail.
  • FIG. 24 is a conceptual diagram illustrating an embodiment of changing a region of interest according to a driving speed of a robot
  • FIG. 25 is a conceptual diagram illustrating an embodiment of changing a region of interest while a robot travels along a driving path
  • FIGS. 26A to 26C is a conceptual diagram illustrating an embodiment in which obstacles used for risk calculation are changed as the region of interest is changed.
  • the lengths of the first and second regions included in the region of interest may be changed according to the traveling speed of the robot. Specifically, as the driving speed of the robot increases, the lengths of the first and second regions included in the region of interest may increase.
  • the controller may set the traveling speed of the robot at regular intervals so that the robot travels along the traveling path.
  • the controller may recalculate the degree of risk whenever the driving speed of the robot is reset, and update the region of interest based on the recalculated degree of risk. In this case, the controller may set the lengths of the first and second regions included in the region of interest based on the reset speed of the robot.
  • the controller may reset the traveling speed of the robot to 2 m/s, recalculate the degree of risk, and update the region of interest based on this.
  • the controller may increase the lengths of the first and second regions included in the region of interest based on an increase in the traveling speed of the robot.
  • the traveling speed of the robot is set to 2 m/s
  • the lengths (L8, L8') of the first and second regions 2441b and 2442b are the first and second areas when the traveling speed of the robot is set to 1 m/s. It is longer than the lengths L7 and L7' of regions 2441a and 2442a.
  • the controller may set the ROI of the robot as a basic ROI. Specifically, when the risk is calculated based on the relative distance between the obstacle and the robot, an obstacle must exist within the region of interest in order to calculate the risk. If no obstacle is detected within the ROI of the robot, the controller cannot calculate the degree of danger, and thus sets the ROI of the robot as a basic ROI.
  • the controller changes the ROI of the robot to a basic ROI. Accordingly, the changed widths (W15 and W15') of the first and second regions 2541b and 2542b of the ROI are the first and second regions 2541a included in the ROI when the robot avoids the obstacle 2522. and widths W14 and W14' of 2542a).
  • the controller calculates the degree of risk based on the relative distance between the robot and an obstacle located within the region of interest.
  • the controller may recalculate the degree of risk based on the obstacle located within the updated ROI.
  • the controller updates the ROI based on the distance d10 between the robot and the specific obstacle 2622 located within the first ROI 2641a and 2642a.
  • the widths (W17 and W17′) of the first and second regions 2641b and 2642b included in the second region of interest generated by updating the first region of interest are the first and second regions included in the first region of interest ( 2641a and 2642a) are larger than the widths W16 and W16'. Accordingly, a new obstacle 2621 is positioned within the region of interest.
  • the controller determines the distance between the new obstacle 2621 and the robot. Based on (d11), the risk is recalculated and the region of interest is updated. Accordingly, referring to FIG. 26C , the widths W18 and W18′ of the first and second regions 2641c and 2642c included in the ROI may increase.
  • the present invention can enable a robot to safely avoid obstacles located in a building with minimal calculation by updating the ROI of the robot according to changes in the environment within the building and the driving situation of the robot.
  • the present invention described above is executed by one or more processes in a computer and can be implemented as a program that can be stored in a computer-readable medium.
  • the present invention described above can be implemented as computer readable codes or instructions in a medium on which a program is recorded. That is, various control methods according to the present invention may be integrated or individually provided in the form of a program.
  • the computer-readable medium includes all types of recording devices in which data that can be read by a computer system is stored.
  • Examples of computer-readable media include Hard Disk Drive (HDD), Solid State Disk (SSD), Silicon Disk Drive (SDD), 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 may download the program according to the present invention from a server or cloud storage through wired or wireless communication.
  • the above-described computer is an electronic device equipped with a processor, that is, a CPU (Central Processing Unit), and there is no particular limitation on its type.
  • a processor that is, a CPU (Central Processing Unit)
  • CPU Central Processing Unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Electromagnetism (AREA)

Abstract

본 발명은 로봇 친화형 건물, 건물을 주행하는 로봇의 제어 방법 및 시스템에 관한 것이다. 보다 구체적으로 본 발명은 같은 공간 속에서 로봇과 사람이 함께 공존하며 사람에게 유용한 서비스를 제공할 수 있도록 하는 로봇 제어 방법 및 시스템에 관한 것이다. 상술한 목적을 달성하기 위하여, 건물에 대한 지도에 기반하여, 상기 건물을 주행하는 로봇을 제어하는 방법을 제공할 수 있다.

Description

로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템
본 발명은 로봇 친화형 건물, 건물을 주행하는 로봇의 제어 방법 및 시스템에 관한 것이다. 보다 구체적으로 본 발명은 같은 공간 속에서 로봇과 사람이 함께 공존하며 사람에게 유용한 서비스를 제공할 수 있도록 하는 로봇 제어 방법 및 시스템에 관한 것이다.
기술이 발전함에 따라, 다양한 서비스 디바이스들이 나타나고 있으며, 특히 최근에는 다양한 작업 또는 서비스를 수행하는 로봇에 대한 기술 개발이 활발하게 이루어지고 있다.
나아가 최근에는, 인공 지능 기술, 클라우드 기술 등이 발전함에 따라, 로봇을 보다 정밀하고, 안전하게 제어하는 것이 가능해지고 있으며, 이에 따라 로봇의 활용도가 점차적으로 높아지고 있다. 특히, 기술의 발전으로 인하여, 로봇은 실내 공간에서 인간과 안전하게 공존할 수 있을 정도의 수준에 이르렀다.
이에, 최근에는 로봇이 인간의 업무 또는 작업을 대체하고 있으며, 특히 실내 공간에서 사람을 대상으로 로봇이 직접 서비스를 제공하는 다양한 방법들이 활발하게 연구되고 있다.
예를 들어, 공항, 역사, 백화점 등 공공 장소에서는 로봇들이 길안내 서비스를 제공하고 있으며, 음식점에서는 로봇들이 서빙 서비스를 제공하고 있다. 나아가, 오피스 공간, 공동 주거 공간 등에서는 로봇들이 우편물, 택배 등을 배송하는 배송 서비스를 제공하고 있다. 이 밖에도 로봇들은 청소 서비스, 방범 서비스, 물류 처리 서비스 등 다양한 서비스들을 제공하고 있으며, 로봇이 제공하는 서비스의 종류 및 범위는 앞으로도 기하급수적으로 늘어날 것이며, 서비스 제공 수준 또한 계속적으로 발전할 것으로 기대된다.
이러한, 로봇들은 실외 공간 뿐만 아니라, 사무실, 아파트, 백화점, 학교, 병원, 놀이시설 등과 같은 건물(또는 빌딩(building))의 실내 공간 내에서 다양한 서비스를 제공하고 있으며, 이 경우, 로봇들은 건물의 실내 공간을 이동하며 다양한 서비스들을 제공하도록 제어되고 있다.
한편, 자율 주행 로봇의 발달에 따라, 로봇의 주변의 장애물을 감지하여, 장애물을 회피하여 자유롭게 이동하는 로봇이 다수 출현하고 있다. 로봇의 이동을 위해 로봇 주변의 모든 물체를 고려하여 경로 계획을 생성하는 경우, 불필요한 경로 계획이 발생할 수 있다. 이에, 보다 효율적으로 로봇이 장애물을 고려할 수 있는 방법에 대한 니즈가 존재한다.
이에, 건물 내에서 로봇을 이용한 보다 수준 높은 서비스를 제공하기 위해서는 서비스 단위(예를 들어, 길안내 서비스, 배송 서비스, 서빙 서비스 등)의 로봇 제어 기술에 대한 연구 뿐만 아니라, 로봇이 서비스를 제공하는 건물 자체에서, 로봇에 필요한 다양한 인프라를 지원할 수 있는 본질적인 연구가 필요하다.
한편, 로봇들이 실내 공간에서 다양한 서비스를 제공하거나, 생활하기 위해서는 로봇들은, 건물의 실내 공간을 자유롭게 이동하거나, 통과해야 하며, 경우에 따라 건물에 구비된 다양한 설비 인프라들(예를 들어, 엘리베이터, 에스컬레이터, 출입 통제 게이트 등)을 이용해야 하는 니즈가 존재한다.
이에, 건물 내에서 로봇을 이용한 보다 수준 높은 서비스를 제공하기 위해서는 서비스 단위(예를 들어, 길안내 서비스, 배송 서비스, 서빙 서비스 등)의 로봇 제어 기술에 대한 연구 뿐만 아니라, 로봇이 서비스를 제공하는 건물 자체에서, 로봇에 필요한 다양한 인프라를 지원할 수 있는 본질적인 연구가 필요하다.
본 발명은 건물 내에서 주행하는 로봇에 대한 제어 방법 및 시스템을 제공하는 것이다.
보다 구체적으로, 본 발명은 로봇이 속한 환경에서 로봇에 영향을 미칠 수 있는 요소에 대해서만 선택적으로 고려할 수 있는 로봇 제어 방법 및 시스템을 제공하기 위한 것이다.
나아가, 본 발명은 로봇과 사람이 함께 공존하며, 사람에게 유용한 서비스를 제공하는 로봇 친화형 건물을 제공하기 위한 것이다.
나아가, 본 발명에 따른 로봇 친화형 건물은, 로봇이 이용 가능한 로봇 친화형의 다양한 설비 인프라를 제공함으로써, 로봇이 제공할 수 있는 서비스의 종류 및 범위를 확장할 수 있다.
나아가, 본 발명에 따른 로봇 친화형 건물은 다수의 로봇과 연동하는 클라우드 시스템을 이용하여, 다수의 로봇 및 설비 인프라를 유기적으로 제어함으로써, 보다 체계적으로 서비스를 제공하는 로봇의 주행을 관리할 수 있다. 이를 통해, 본 발명에 따른 로봇 친화형 건물은, 보다 안전하고, 신속하게, 그리고 정확하게 사람들에게 다양한 서비스를 제공할 수 있다.
나아가, 본 발명에 따른 건물에 적용된 로봇은 클라우드 서버에 의해 제어되는 브레인리스(brainless) 형식으로 구현될 수 있으며, 이에 의하면, 건물에 배치되는 다수의 로봇을 값비싼 센서 없이 저렴하게 제조할 수 있을 뿐만 아니라, 고성능/고정밀로 제어할 수 있다.
상술한 목적을 달성하기 위하여, 건물에 대한 지도에 기반하여, 상기 건물을 주행하는 로봇을 제어하는 방법을 제공할 수 있다. 본 발명은 서버로부터 상기 로봇의 주행 경로를 수신하는 단계, 상기 로봇에 구비된 센서를 이용하여, 상기 로봇 주변에 위치한 장애물을 센싱하는 단계, 상기 로봇과 상기 장애물 간의 상대거리에 근거하여 상기 로봇의 주행과 관련된 위험도를 산출하는 단계, 상기 위험도에 근거하여, 상기 로봇의 주행과 관련된 관심 영역을 설정하는 단계 및 상기 로봇에 구비된 센서로부터 수신된 센싱 데이터가 상기 관심 영역과 관련되었는지 여부에 따라, 상기 센싱 데이터에 대한 서로 다른 데이터 처리를 수행하는 단계를 포함하는 것을 특징으로 하는 로봇 제어 방법을 제공할 수 있다.
또한, 클라우드 서버에 의해 제어되는 로봇이 주행하는 건물을 제공할 수 있다. 상기 건물은 상기 클라우드 서버로부터 상기 로봇의 주행과 제어 명령을 수신하여, 상기 로봇으로 전송하는 통신부를 포함하고, 상기 클라우드 서버는 상기 로봇으로 주행 경로를 전송하고, 상기 로봇에 구비된 센서를 통해 생성된 센싱 데이터를 수신하여, 상기 로봇 주변에 위치한 장애물을 센싱하고, 상기 로봇과 상기 장애물 간의 상대거리에 근거하여 상기 로봇의 주행과 관련된 위험도를 산출하고, 상기 위험도에 근거하여, 상기 로봇의 주행과 관련된 관심 영역을 설정하고, 상기 센싱 데이터가 상기 관심 영역과 관련되었는지 여부에 따라, 상기 센싱 데이터에 대한 서로 다른 데이터 처리를 수행하는 것을 특징으로 할 수 있다.
또한, 본 발명은 건물에 대한 지도에 기반하여, 상기 건물을 주행하는 로봇을 제어하는 시스템을 제공할 수 있다. 본 발명은 서버로부터 상기 로봇의 주행 경로를 수신하는 통신부, 상기 로봇에 구비된 센서를 이용하여, 상기 로봇 주변에 위치한 장애물을 센싱하고, 상기 로봇과 상기 장애물 간의 상대거리에 근거하여 상기 로봇의 주행과 관련된 위험도를 산출하고, 상기 위험도에 근거하여, 상기 로봇의 주행과 관련된 관심 영역을 설정하고, 상기 로봇에 구비된 센서로부터 수신된 센싱 데이터가 상기 관심 영역과 관련되었는지 여부에 따라, 상기 센싱 데이터에 대한 서로 다른 데이터 처리를 수행하는 제어부를 포함하는 것을 특징으로 하는 로봇 제어 시스템을 제공할 수 있다.
또한, 본 발명은 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램을 제공할 수 있다. 본 발명은, 서버로부터 로봇의 주행 경로를 수신하는 단계, 상기 로봇에 구비된 센서를 이용하여, 상기 로봇 주변에 위치한 장애물을 센싱하는 단계, 상기 로봇과 상기 장애물 간의 상대거리에 근거하여 상기 로봇의 주행과 관련된 위험도를 산출하는 단계, 상기 위험도에 근거하여, 상기 로봇의 주행과 관련된 관심 영역을 설정하는 단계 및 상기 로봇에 구비된 센서로부터 수신된 센싱 데이터가 상기 관심 영역과 관련되었는지 여부에 따라, 상기 센싱 데이터에 대한 서로 다른 데이터 처리를 수행하는 단계를 수행하도록 하는 명령어들을 포함하는 것을 특징으로 하는 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램을 제공할 수 있다.
본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 위험도에 기반하여 설정된 관심 영역에 대한 센싱 데이터만 선택적으로 활용하고, 관심 영역과 관련 없는 센싱 데이터는 활용하지 않음으로써, 로봇 주행 시 불필요한 연산을 최소화 할 수 있다.
또한, 본 발명은 관심 영역 설정에 기반이 되는 위험도를 로봇과 장애물 간의 거리에 기반하여 설정함으로써, 로봇과 장애물간 거리가 상대적으로 가까운 경우 장애물의 주변 영역에 대한 센싱 데이터까지 장애물 회피를 위한 제어에 활용하고, 로봇과 장애물간 거리가 상대적으로 먼 경우 장애물이 위치한 영역에 대한 센싱 데이터만 고려하여 로봇의 주행 제어를 수행함으로써, 로봇의 현재 상황에 따라 처리해야하는 센싱 데이터의 양을 가변시킬 수 있다. 이를 통해, 본 발명은 로봇의 상황에 따라 최적의 연산량으로 장애물 회피를 위한 제어를 수행할 수 있도록 한다.
나아가, 본 발명에 따른 로봇 친화형 건물은 로봇, 자율주행, AI, 클라우드 기술이 융합되고, 연결되는 테크 컨버전스(Technological Convergence)를 이용하며, 이러한 기술과, 로봇 그리고 건물내 구비되는 설비 인프라가 유기적으로 결합되는 새로운 공간을 제공할 수 있다.
나아가, 본 발명에 따른 로봇 친화형 건물은 다수의 로봇과 연동하는 클라우드 서버를 이용하여, 다수의 로봇 및 설비 인프라를 유기적으로 제어함으로써, 보다 체계적으로 서비스를 제공하는 로봇의 주행을 체계적으로 관리할 수 있다. 이를 통해, 본 발명에 따른 로봇 친화형 건물은, 보다 안전하고, 신속하게, 그리고 정확하게 사람들에게 다양한 서비스를 제공할 수 있다.
나아가, 본 발명에 따른 건물에 적용된 로봇은 클라우드 서버에 의해 제어되는 브레인리스(brainless) 형식으로 구현될 수 있으며, 이에 의하면, 건물에 배치되는 다수의 로봇을 값비싼 센서 없이 저렴하게 제조할 수 있을 뿐만 아니라, 고성능/고정밀로 제어할 수 있다.
나아가, 본 발명에 따른 건물에서는 건물에 배치된 다수의 로봇에 할당된 임무와 이동 상황을 고려함은 물론, 사람을 배려하도록 주행이 제어됨으로써, 같은 공간 속에서 자연스럽게 로봇과 사람이 공존 할 수 있다.
나아가, 본 발명에 따른 건물에서는 로봇에 의한 사고 방지 및 예기치 못한 상황에 대응할 수 있도록 다양한 제어를 수행함으로써, 사람들에게 로봇이 위험한 것이 아닌, 친근하고 안전하다는 인식을 심어줄 수 있다.
도 1, 도 2 및 도 3은 본 발명에 따른 로봇 친화형 건물을 설명하기 위한 개념도들이다.
도 4, 도 5 및 도 6은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇 및 로봇 친화형 건물에 구비된 다양한 설비를 제어하는 시스템을 설명하기 위한 개념도들이다.
도 7 및 도 8은 본 발명에 따른 로봇 친화형 건물에 구비된 설비 인프라를 설명하기 위한 개념도들이다.
도 9 내지 도 11은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇의 위치를 추정하는 방법을 설명하기 위한 개념도들이다.
도 12는 본 발명에 따른 로봇 시스템에 의해 제어되는 로봇을 설명하기 위한 개념도이다.
도 13은 로봇의 이동 경로 설정에 활용되는 노드맵을 설명하기 위한 개념도이다.
도 14는 본 발명에 따른 로봇 제어 방법을 설명하기 위한 흐름도이다.
도 15는 본 발명에 따른 로봇 제어 방법을 나타내는 개념도이다.
도 16 및 17은 본 발명의 일 실시 예에 따라, 위험도를 산출하고, 관심 영역을 설정하는 모습을 나타내는 개념도이다.
도 18은 움직이는 장애물을 고려하여 관심 영역을 설정하는 일 실시 예를 나타내는 개념도이다.
도 19는 건물 내 혼잡도를 고려하여 관심 영역을 설정하는 일 실시 예를 나타내는 개념도이다.
도 20은 로봇의 임무를 고려하여 관심 영역을 설정하는 일 실시 예를 나타내는 개념도이다.
도 21 내지 23은 로봇에 구비된 센서의 감지 범위 내에서 로봇의 관심 영역에 대응되는 센싱 데이터만 선택적으로 활용하는 실시 예를 나타내는 개념도들이다.
도 24는 로봇의 주행 속도에 따라 관심 영역을 변경하는 일 실시 예를 나타내는 개념도이다.
도 25는 로봇이 주행 경로를 따라 주행하면서 관심 영역을 변경하는 일 실시 예를 나타내는 개념도이다.
도 26a 내지 26c는 관심 영역이 변경됨에 따라 위험도 산출에 활용되는 장애물이 변경되는 일 실시 예를 나타내는 개념도이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소에는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제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)에는 배송, 물류 작업, 안내, 통역, 주차지원, 보안, 방범, 경비, 치안, 청소, 방역, 소독, 세탁, 음료 제조, 음식 제조, 서빙, 화재 진압, 의료 지원 및 엔터테인먼트 서비스 중 적어도 하나의 서비스를 제공하는 로봇들이 배치될 수 있다. 로봇들이 제공하는 서비스는 위에서 열거된 예들 외에도 다양할 수 있다.
한편, 클라우드 서버(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)를 이용할 수 있다.
한편, 본 발명에 따른 건물에는 서로 다른 목적에 따른 운용되는 복수의 로봇이 위치할 수 있다. 즉, 건물에는 서로 다른 임무를 수행가능한 서로 다른 로봇들이 배치될 수 있으며, 이는 건물의 관리자, 건물에 입주한 다양한 주체들의 필요에 의하여, 건물에는 서로 다른 종류의 로봇들이 배치될 수 있다.
예를 들어, 건물에는 배송, 물류 작업, 안내, 통역, 주차지원, 보안, 방범, 경비, 치안, 청소, 방역, 소독, 세탁, 음료 제조, 음식 제조, 서빙, 화재 진압, 의료 지원 및 엔터테인먼트 서비스 중 적어도 하나의 서비스를 제공하는 로봇들이 배치될 수 있다. 로봇들이 제공하는 서비스는 위에서 열거된 예들 외에도 다양할 수 있다.
한편, 제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)을 주행하는 로봇의 위치를 모니터링할 수 있다. 클라우드 서버(1000은 건물(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)는 이러한 로봇의 위치를 모니터링 함으로써, 건물 내에서 로봇을 효율적이고, 정확하게 제어하는 것이 가능하다.
본 발명에 따른 로봇 제어 방법에 대하여 설명하기에 앞서, 본 발명에 따른 로봇 제어 시스템에 의해 제어되는 로봇에 대하여 살펴본다.
도 12는 본 발명에 따른 로봇 시스템에 의해 제어되는 로봇을 설명하기 위한 개념도이다.
도 12를 참조하면, 로봇은 통신부(1201), 저장부(1202), 주행부(1203), 제어부(1204) 및 센서부를 포함할 수 있다. 통신부(1201) 및 저장부(1202)는 앞서 설명하였는 바, 구체적인 설명은 생략한다.
주행부(1203)는 로봇을 공간 내에서 이동할 수 있도록 이루어진다. 주행부(1203)는 로봇의 이동 방향 및 이동 속도 중 적어도 하나를 제어할 수 있도록 이루어지며, 제어부(1204)는 주행부(1203)를 제어하여 로봇이 설정된 이동 경로대로 주행할 수 있도록 한다.
주행부(1203)는 로봇에 포함된 제어부(1204) 및 클라우드 서버(20)에 의해 제어될 수 있다. 본 명세서에서 별도로 한정하지 않는 한, 로봇에 포함된 제어부(1204) 및 클라우드 서버(20) 중 어느 하나에 의한 로봇 제어는 다른 하나에 의해서도 가능하다. 이때, 클라우드 서버(20)는 앞서 살펴본 것과 같이, 메인 서버 및 서브 서버 중 적어도 하나를 포함할 수 있다.
다음으로, 제어부(1204)는 본 발명과 관련된 로봇의 전반적인 동작을 제어하도록 이루어질 수 있다. 제어부(1204)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 사용자에게 적절한 정보 또는 기능을 제공 또는 처리할 수 있다. 본 명세서에서 별도로 한정하지 않는 한, 제어부(1204)는 로봇에 구비된 제어부를 의미 한다.
한편, 위에서 살펴본 것과 같이, 본 발명은 서버(20)에 기 저장된 지도 정보를 이용하여, 공간 내에서 로봇의 주행 경로를 설정할 수 있다. 이하에서는, 서버(20)가 로봇의 주행 경로를 설정함에 있어서 노드맵을 활용하는 실시 예에 대하여 보다 구체적으로 설명한다.
도 13은 로봇의 이동 경로 설정에 활용되는 노드맵을 설명하기 위한 개념도이다.
서버(20)는 로봇이 현재 위치로부터, 특정 목적지까지 이동하도록 제어할 수 있다. 구체적으로, 본 발명은 로봇의 현재 위치 정보와 목적지 위치 정보를 특정하고, 목적지에 도달하는 경로를 설정하여, 로봇이 설정된 경로에 따라 이동하여 목적지에 도달할 수 있도록 제어한다.
이에, 본 발명은 로봇의 주행 경로를 효율적으로 설정하기 위한 지도 정보(노드맵)에 대하여 제안한다. 다만, 후술하는 지도 정보는 로봇의 주행 경로를 설정하기 위해 활용되는 지도 정보의 일 예를 설명하는 것일 뿐, 본 발명에 따른 로봇 주행 제어 방법이 후술하는 지도 정보에 의해서만 수행되는 것은 아니다.
앞서 설명한 바와 같이, 서버(20)에는, 건물에 대한 지도(map, 또는 지도 정보)가 저장될 수 있다. 도 13을 참조하면, 서버(20)에 저장되는 건물에 대한 지도는 2차원 평면도 형태로 이루어질 수 있으나, 이에 한정되는 것은 아니다.
한편, 도 13과 같이, 지도 정보는 복수의 노드(node)를 포함할 수 있다. 본 명세서에서 ‘노드’란 로봇의 이동에 단위 목표가 되는 지점 또는 영역을 의미한다. 노드는 두 가지 정보를 포함할 수 있다.
첫 번째로, 노드는 좌표 정보를 포함한다. 단일 노드는 지도 상의 특정 좌표 또는 좌표 범위를 지정한다. 예를 들어, 노드는 지도 상에서 소정 면적을 가지는 원형의 영역을 지정하도록 이루어질 수 있다. 이를 위해, 노드에 포함된 좌표 정보는 특정 좌표 또는 좌표 범위로 이루어질 수 있다. 즉, 각각의 노드는 건물의 서로 다른 위치에 대응된다.
두 번째로, 노드는 연결 정보를 포함한다. 단일 노드는 해당 노드로부터 로봇이 이동 가능한 다른 노드를 정의하는 정보를 포함한다. 연결 정보는 로봇이 해당 노드로부터 이동 가능한 다른 노드의 고유 번호 또는 상기 다른 노드가 지정하는 좌표 정보를 포함할 수 있다.
서버(20)는 로봇이 어느 하나의 노드에서 다른 하나의 노드로 이동하도록 제어하고, 이러한 과정을 반복하여 로봇이 목표 지점에 도달할 수 있도록 제어한다. 본 명세서에서 로봇이 특정 노드로 이동한다 함은 특정 노드가 지정하는 좌표 정보 또는 좌표 범위 내로 로봇이 이동함을 의미한다.
본 발명은 상술한 위치 정보 추정 방법, 지도 정보를 이용하여 로봇을 현재 위치(S)로부터 목적지(A)까지 이동시키기 위한 이동 경로를 설정한 후, 로봇으로 전송한다. 다만, 노드맵을 활용한 방법은 로봇의 주행을 제어하는 일 실시 예에 해당하며, 본 발명은 상술한 노드맵 이외의 다른 방법을 이용하여 로봇의 이동 경로를 설정할 수 있다. 즉, 로봇의 이동 경로를 설정하기 위한 맵(지도)의 구현 방식은 매우 다양할 수 있다.
본 명세서에서는 설명의 편의를 위하여 상술한 노드맵을 활용하여 가상 장애물의 위치, 형태 등을 특정하는 것으로 설명하나, 가상 장애물과 관련된 설정이 반드시 노드맵을 통해 이루어질 필요는 없다.
본 발명에서는 로봇의 위험도에 따라 로봇에 구비된 센서의 관심영역을 조절함으로써, 로봇의 주행 중 불필요한 연산의 발생을 최소화할 수 있도록 하는 로봇 제어 방법을 제공할 수 있다. 이하에서는, 이에 대하여 첨부된 도면과 함께 보다 구체적으로 살펴본다. 도 14는 본 발명에 따른 로봇 제어 방법을 설명하기 위한 흐름도이고, 도 15는 본 발명에 따른 로봇 제어 방법을 나타내는 개념도이고, 도 16 및 17은 본 발명의 일 실시 예에 따라, 위험도를 산출하고, 관심 영역을 설정하는 모습을 나타내는 개념도이다.
먼저, 상기 서버(20)로부터서 상기 로봇의 주행 경로를 수행하는 단계가 진행된다(S110).
서버(20)는 건물을 주행하는 로봇들에 대한 임무를 할당하고, 로봇들에 대한 경로 계획을 생성할 수 있다. 경로 계획은 로봇이 임무를 수행하기 위하여 건물을 주행하기 위한 전역(global) 경로에 대한 계획을 의미할 수 있다. 이러한 경로 계획은, 로봇이 통과 또는 주행해야 하는 건물내 구비된 복수의 영역들에 대한 정보를 포함할 수 있다. 본 명세서에서는 상술한 경로 계획을 로봇의 “주행 경로”라 칭한다.
일 실시 예로, 서버(20)는 상술한 노드맵을 활용하여 주행 경로를 생성할 수 있다. 구체적으로, 서버(20)는 노드맵에 포함된 복수의 노드 중 선택하고, 선택된 노드의 순서를 설정함으로써, 로봇의 주행 경로를 생성할 수 있다. 주행 경로를 수신한 로봇은 순서대로 배열된 노드 각각에 대응되는 건물 내 영역을 순차적으로 지나게 된다.
한편, 건물 내 환경은 시간 흐름에 따라 변화하기 때문에, 로봇이 상술한 주행 경로를 따라 주행하는 것은 어렵다. 예를 들어, 서버(20)가 주행 경로를 생성하는 시점에 존재하지 않은 장애물이 로봇의 주행 경로 상에 나타날 수 있으며, 이러한 경우 로봇은 새롭게 나타난 장애물 회피를 위한 제어를 수행해야 한다.
이와 같이, 건물 내 환경이 실시간으로 변하기 때문에, 서버(20)는 로봇의 전역 경로 계획을 세운 후, 상기 전역 경로 계획을 수행하기 위한 로봇 제어는 건물 내 환경을 모니터링하며 실시간으로 수행할 수 있다. 구체적으로, 서버(20)는 로봇의 주행 방향, 주행 속도, 회전 방향, 회전 속도, 주행 거리 및 회전 각도 중 적어도 하나를 실시간으로 제어하여 로봇이 전역 경로 계획을 달성할 수 있도록 할 수 있다. 다만, 이에 한정되지 않고, 상기 전역 경로 계획을 달성하기 위한 로봇의 세부 제어는 로봇에 포함된 제어부에 의해서도 수행될 수 있다.
본 명세서에서 로봇의 전역 경로 계획을 달성하기 위해 주행 방향, 주행 속도, 회전 방향, 회전 속도, 주행 거리 및 회전 각도 중 적어도 하나를 실시간으로 제어하는 것을 로봇에 대한 “세부 주행 제어”라 표현한다. 로봇에 대한 세부 주행 제어는 서버(20) 또는 로봇에 포함된 제어부에 의해 수행될 수 있다. 이하에서는, 로봇에 대한 세부 주행 제어를 로봇에 포함된 제어부가 수행하는 것으로 설명하지만, 로봇에 포함된 제어부가 수행하는 로봇에 대한 제어는 서버(20)에 의해서도 수행될 수 있다.
도 15를 참조하면, 로봇은 서버로부터 주행 경로(1510)를 수신할 수 있다. 주행 경로(1510)는 노드맵을 기반으로 생성될 수 있으며, 이 경우, 주행 경로(1510)는 로봇이 주행해야하는 노드(N1, N5, N9, N10, N11, N15, N16)와 관련된 정보와, 상기 노드에 대한 주행 순서와 관련된 정보를 포함할 수 있다. 한편, 로봇(R)은 주행 경로(1510)를 따라 주행하기 위한 세부 제어를 수행한다. 여기서, 로봇은 주행 경로 상에 위치하는 장애물을 회피하기 위한 회피 제어(1531 및 1532)를 수행할 수 있다.
한편, 로봇의 세부 주행 제어를 위해, 제어부는 로봇에 구비된 센서로부터 수신된 센싱 데이터를 활용할 수 있다. 이를 위해, 상기 로봇에 구비된 센서를 이용하여, 상기 로봇 주변에 위치한 장애물을 센싱하는 단계가 수행된다(S120).
상기 로봇 주변에 위치한 장애물은 크게 두 가지로 정의될 수 있다.
첫 번째로, 로봇 주변에 위치한 장애물은 로봇의 위치, 로봇의 주행 방향을 중심으로 정의될 수 있다. 구체적으로, 로봇 주변에 위치한 장애물은 로봇의 위치를 기준으로 소정 거리 이내에 위치하거나, 로봇의 주행 방향을 기준으로 소정 범위 내에 위치하는 장애물일 수 있다. 또한, 로봇 주변에 위치한 장애물은 로봇의 위치를 기준으로 소정 거리 이내에 위치하면서, 로봇의 주행 방향을 기준으로 소정 범위 내에 위치하는 장애물 일 수 있다.
두 번째로, 로봇 주변에 위치한 장애물은 로봇의 주행 경로를 중심으로 정의될 수 있다. 구체적으로, 로봇 주변에 위치한 장애물은 로봇의 주행 경로를 기준으로 소정 거리 이내에 위치하는 장애물일 수 있다. 나아가, 로봇 주변에 위치한 장애물은 로봇의 주행 경로를 기준으로 소정 거리 이내에 위치하면서, 로봇의 위치를 기준으로 소정 거리 이내에 위치하는 장애물일 수 있다.
한편, 제어부는 로봇에 구비된 센서로부터 수신된 센싱 데이터에 기반하여, 장애물을 센싱할 수 있다. 여기서, 장애물을 센싱한다 함은 장애물의 존재 여부를 판단하는 것, 장애물의 크기를 산출하는 것, 장애물의 위치를 판단하는 것, 장애물과 로봇 간의 상대거리를 산출하는 것, 장애물의 이동 방향을 산출하는 것 및 장애물의 이동 속도를 산출하는 것 중 적어도 하나를 포함할 수 있다. 다만, 이에 한정되지 않고, 제어부는 센싱 데이터에 기반하여 장애물과 관련된 다양한 정보를 생성할 수 있다.
예를 들어, 도 15를 참조하면, 로봇(R)이 N1 주변에 위치하는 경우, N5에 위치한 장애물(1521)을 센싱하지만, 로봇(R)으로부터 소정 거리 이상 떨어진 다른 장애물들(1522, 1523, 1524)은 센싱하지 않는다. 한편, 로봇(R)이 N10 주변으로 이동하는 경우, N10 주변에 위치한 장애물(1522, 1523)을 센싱하지만, 로봇(R)으로부터 소정 거리 이상 떨어진 다른 장애물(1521)은 센싱하지 않는다. 여기서, N10 주변에 위치한 특정 장애물(1524)은 센싱하지 않을 수 있다. 이에 대하여는 후술한다.
장애물을 센싱한 후, 상기 로봇과 상기 장애물 간의 상대거리에 근거하여 상기 로봇의 주행과 관련된 위험도를 산출하는 단계가 진행된다(S130).
로봇에 포함된 제어부는 센싱 데이터를 이용하여 장애물과 로봇 간의 거리를 산출할 수 있다. 센싱 데이터에서 복수의 장애물이 센싱되는 경우, 제어부는 복수의 장애물 각각과 로봇 간의 상대거리를 산출할 수 있다.
한편, 상기 위험도는 로봇과 장애물 간의 상대거리를 기반으로 산출될 수 있다.
일 실시 예에 있어서, 상기 위험도는 로봇의 크기를 상기 로봇과 장애물 간의 상대거리로 나눈 값일 수 있다. 여기서, 로봇의 크기는 로봇의 길이 또는 로봇의 너비일 수 있다.
한편, 센싱 데이터에서 복수의 장애물이 센싱되는 경우, 상기 위험도는 복수의 장애물 중 기 설정된 거리 조건을 만족하는 어느 하나의 장애물을 기준으로 산출될 수 있다.
일 실시 예에 있어서, 센싱 데이터에서 복수의 장애물이 센싱되는 경우, 상기 위험도는 복수의 장애물 중 로봇과 가장 가까운 장애물을 기준으로 산출될 수 있다.
한편, 상기 위험도는 기설정된 조건을 만족하는 경우, 업데이트될 수 있다. 여기서, 기설정된 조건은 마지막으로 위험도가 업데이트된 시점으로부터 기설정된 시간이 지난 것, 로봇의 주행 속도, 주행 방향, 회전 속도 및 회전 방향 중 적어도 하나가 변하는 것, 로봇이 기설정된 거리만큼 주행 한 것 중 적어도 하나일 수 있다. 즉, 위험도는 일정 주기로 업데이트되거나, 로봇 또는 서버의 제어에 의해 실시간으로 업데이트되거나, 로봇에 구비된 센서로부터 수신된 센싱 데이터가 기설정된 조건을 만족하거나, 로봇의 주행 환경이 변하거나, 로봇이 일정 거리 이상 주행하였을 때 업데이트될 수 있다.
예를 들어, 도 15를 참조하면, 로봇(R)이 N1 주변에 위치하는 경우, N5에 위치한 장애물(1521)과 로봇(R) 간의 상대거리(d1)에 기반하여 위험도를 산출하고, 로봇(R)이 N10 주변으로 이동하는 경우, N10 주변에 위치한 장애물(1522, 1523)과 로봇(R) 간 상대거리(d2 및 d3) 중 어느 하나를 이용하여 위험도를 산출할 수 있다. 구체적으로, 로봇(R)과 가장 가까운 장애물(1522)과 로봇 간 상대거리(d2)가 위험도 산출에 활용될 수 있다. 여기서, N10 주변에 위치한 특정 장애물(1524)와 로봇(R) 간 상대거리는 산출되지 않거나, 산출되더라도 위험도 산출에 활용되지 않을 수 있다. 이에 대하여는 후술한다.
다음으로, 상기 위험도에 근거하여, 상기 로봇의 주행과 관련된 관심 영역을 설정하는 단계가 수행된다(S140).
상기 로봇의 주행과 관련된 관심 영역은 소정 면적을 가지는 가상의 영역일 수 있다. 관심 영역은 로봇에 구비된 센서로부터 수신된 센싱 데이터 중 일부 데이터를 처리하지 않거나, 일부 데이터만 선택적으로 처리하기 위해 활용될 수 있다.
관심 영역은 크게 두 가지 영역을 포함할 수 있다.
첫 번째로, 관심 영역은 상기 주행 경로 및 상기 위험도에 기반하여 설정되는 제1 영역을 포함할 수 있다. 관심 영역의 적어도 일부는 주행 경로를 기준으로 설정될 수 있다. 주행 경로와 관련된 제1 영역은 주행 경로를 따라 설정될 수 있다.
예를 들어, 주행 경로가 노드맵을 기반으로 생성된 경우, 제1 영역은 로봇이 주행해야하는 복수의 노드를 순서대로 연결한 선을 따라 연장되도록 생성될 수 있다. 도 15를 참조하면, 제1 영역(1541a)은 로봇의 주행 경로(1510)가 연장되는 방향을 따라 생성될 수 있다. 여기서, 제1 영역은 로봇의 주행 경로(1510) 전체와 오버랩될 필요는 없다.
본 명세서에서는 제1 영역이 연장되는 방향(주행 경로 방향)을 제1 영역의 길이 방향으로 정의하고, 제1 영역이 길이 방향을 따라 연장된 거리를 제1 영역의 길이라고 정의한다. 한편, 본 명세서에서는 상기 길이 방향과 수직한 방향을 제1 영역의 너비 방향으로 정의하고, 상기 너비 방향을 따라 연장된 길이를 제1 영역의 너비라고 정의한다.
상기 제1 영역의 길이는 로봇이 장애물을 회피하는데 필요한 거리를 기준으로 설정될 수 있다. 구체적으로, 로봇이 장애물을 회피하는데 필요한 거리는 로봇의 주행 속도, 로봇의 주행 방향, 로봇과 상기 장애물 간의 상대거리, 장애물의 이동 속도, 장애물의 이동 방향 및 로봇이 위치한 건물 내 영역의 구조 중 적어도 하나를 고려하여 산출될 수 있다.
상기 제1 영역의 너비는 상기 로봇의 크기, 로봇에 구비된 센서의 노이즈 및 상기 위험도 중 적어도 하나에 기반하여 설정될 수 있다. 구체적으로, 제1 영역의 너비는 로봇의 크기가 클수록, 상기 센서의 노이즈가 클수록, 상기 위험도가 높을수록 넓게 설정될 수 있다.
상기 제1 영역은, 상기 주행 경로에 따른 주행 방향을 기준으로 소정 너비 및 소정 길이로 정의되는 면적을 갖도록 형성될 수 있다.
두 번째로, 관심 영역은 상기 로봇의 상기 로봇의 크기, 상기 로봇의 주행 방향, 상기 로봇의 주행 속도 중 적어도 하나와 상기 위험도에 기반하여 설정되는 제2 영역을 포함할 수 있다. 관심 영역의 적어도 일부는 로봇이 향하는 방향을 기준으로 설정될 수 있다. 구체적으로, 제2 영역은 로봇이 향하는 방향으로 연장되며, 소정 너비를 가질 수 있다. 또한, 제2 영역의 위치는 로봇의 위치를 기준으로 설정될 수 있다.
예를 들어, 제어부는 주행 경로를 따라 주행하기 위해 실시간으로 로봇의 주행 방향, 주행 속도, 회전 속도 및 회전 방향 중 적어도 하나를 설정한다. 이에 따라, 로봇이 주행하는 방향, 즉, 로봇이 향하는 방향은 매시간 달라질 수 있다. 제2 영역은 매시간 달라지는, 로봇이 향하는 방향을 기준으로 설정될 수 있다. 도 15를 참조하면, 제2 영역(1542a)은 로봇의 위치를 기준으로, 로봇이 현재 주행 중인 방향으로 연장되도록 설정될 수 있다.
본 명세서에서는 제2 영역이 연장되는 방향(로봇이 향하는 방향)을 제2 영역의 길이 방향으로 정의하고, 제2 영역이 길이 방향을 따라 연장된 거리를 제2 영역의 길이라고 정의한다. 한편, 본 명세서에서는 상기 길이 방향과 수직한 방향을 제2 영역의 너비 방향으로 정의하고, 상기 너비 방향을 따라 연장된 길이를 제2 영역의 너비라고 정의한다.
상기 제2 영역의 길이는 로봇이 장애물을 회피하는데 필요한 거리를 기준으로 설정될 수 있다. 구체적으로, 로봇이 장애물을 회피하는데 필요한 거리는 로봇의 주행 속도, 로봇의 주행 방향, 로봇과 상기 장애물 간의 상대거리, 장애물의 이동 속도, 장애물의 이동 방향 및 로봇이 위치한 건물 내 영역의 구조 중 적어도 하나를 고려하여 산출될 수 있다.
상기 제2 영역의 너비는 상기 로봇의 크기, 로봇에 구비된 센서의 노이즈 및 상기 위험도 중 적어도 하나에 기반하여 설정될 수 있다. 구체적으로, 제2 영역의 너비는 로봇의 크기가 클수록, 상기 센서의 노이즈가 클수록, 상기 위험도가 높을수록 넓게 설정될 수 있다.
상기 제2 영역은 상기 로봇의 주행 방향을 기준으로 소정 너비 및 소정 길이로 정의되는 면적을 갖도록 형성될 수 있다.
상술한 제1 및 제2 영역의 적어도 일부는 오버랩될 수 있다.
마지막으로, 상기 로봇에 구비된 센서로부터 수신된 센싱 데이터가 상기 관심 영역과 관련되었는지 여부에 따라, 상기 센싱 데이터에 대한 서로 다른 데이터 처리를 수행하는 단계가 수행된다(S150).
로봇은 주행 중, 로봇에 구비된 센서로부터 실시간으로 센싱 데이터를 수신한다. 상기 센서로부터 수신된 센싱 데이터 중 일부는 로봇의 주행에 활용될 수 있고, 나머지는 제어부에 의해 처리되지 않을 수 있다.
상기 센싱 데이터 중 로봇의 주행에 활용될 데이터와 활용되지 않을 데이터는 상기 관심 영역을 기준으로 구분될 수 있다. 구체적으로, 상기 센서로부터 수신된 센싱 데이터가 상기 관심 영역을 센싱한 데이터인 경우, 상기 데이터는 로봇의 주행에 활용될 수 있다. 이와 달리, 상기 센서로부터 수신된 센싱 데이터가 상기 관심 영역 이외의 영역을 센싱한 데이터인 경우, 상기 데이터는 로봇의 주행에 활용되지 않을 수 있다.
여기서, 관심 영역과 관련된 일부 데이터는, 상기 로봇에 구비된 센서로부터 수집된, 상기 로봇에 구비된 센서의 감지 가능한 영역 중 상기 관심 영역과 오버랩되는 영역에 대한 센싱 데이터일 수 있다.
로봇에 구비된 센서는 소정 감지 범위를 가진다. 이에 따라, 로봇의 위치를 기준으로 로봇에 구비된 센서의 감지 가능한 영역이 형성될 수 있다. 제어부는 센서의 감지 가능한 영역과 관심 영역이 오버랩되는 영역에 대한 센싱 데이터를 관심 영역과 관련된 데이터로 판단할 수 있다.
제어부는 로봇에 구비된 센서의 종류, 센서의 위치, 센서의 측정 범위, 센서가 센싱 정보를 수집할 때 로봇의 위치, 센서가 센싱 정보를 수집할 때 로봇이 향하는 방향 및 센서로부터 수신된 센싱 데이터의 세부적인 내용 중 적어도 하나를 고려하여, 센서로부터 수신된 센싱 데이터 중 관심 영역과 관련된 데이터와 관련되지 않은 데이터를 구분할 수 있다.
한편, 제어부는 상기 로봇에 구비된 센서로부터 수집된 센싱 데이터 중 상기 관심 영역과 관련된 일부 데이터에 기반하여, 상기 로봇 주변에 위치한 장애물의 회피와 관련된 제어를 수행할 수 있다. 제어부는 로봇에 구비된 센서로부터 수집된 센싱 데이터 중 상기 관심 영역과 관련된 일부 데이터를 이용하여 관심 영역에 위치한 장애물을 센싱한다. 구체적으로, 제어부는 상기 관심 영역과 관련된 일부 데이터를 이용하여, 관심 영역 내 장애물의 존재 여부, 장애물의 위치, 크기, 종류, 이동 방향 중 적어도 하나를 판단할 수 있다.
한편, 제어부는 관심 영역과 관련된 센싱 데이터만 선택적으로 처리하기 때문에, 관심 영역의 넓이에 따라 제어부가 처리해야하는 센싱 데이터의 데이터 양이 달라질 수 있다. 구체적으로, 상기 관심 영역의 넓이가 제1 값인 경우, 상기 관심 영역과 관련된 센싱 데이터를 이용하여 로봇의 주행과 관련된 제어를 수행하는 단계에서 이용되는 센싱 데이터의 양은 제1 데이터양이고, 상기 관심 영역의 넓이가 상기 제1 값보다 큰 제2 값인 경우, 상기 관심 영역과 관련된 센싱 데이터를 이용하여 로봇의 주행과 관련된 제어를 수행하는 단계에서 이용되는 데이터의 양은 상기 제1 데이터량보다 큰 제2 데이터량일 수 있다. 즉, 본 발명은 관심 영역의 면적이 넓을수록 더 많은 양의 센싱 데이터를 로봇 주행과 관련된 제어에 활용할 수 있다.
이후, 제어부는 관심 영역 내 장애물의 존재 여부, 장애물의 위치, 크기, 종류, 이동 방향 중 적어도 하나를 기반으로, 관심 영역 내에 위치한 장애물을 회피하기 위한 제어를 수행할 수 있다.
일 실시 예에 있어서, 제어부는 관심 영역 내 장애물의 존재 여부, 장애물의 위치, 크기, 종류, 이동 방향 중 적어도 하나를 기반으로 로봇의 주행 속도, 주행 방향, 회전 속도, 회전 방향 및 주행 거리 중 적어도 하나를 설정하여, 로봇이 관심 영역 내 위치한 장애물을 회피하여 주행할 수 있도록 할 수 있다.
다른 일 실시 예에 있어서, 제어부는 관심 영역 내 장애물의 존재 여부, 장애물의 위치, 크기, 종류, 이동 방향 중 적어도 하나를 기반으로 로봇의 주행 속도, 주행 방향, 회전 속도, 회전 방향 및 주행 거리 중 적어도 하나를 설정하여, 장애물을 회피하기 위한 단기적인 주행 경로를 설정할 수 있다. 여기서, 상기 단기적인 주행 경로는 로봇이 관심 영역 내 장애물을 회피한 후 기존 주행 경로로 복귀하도록 하는 경로일 수 있다.
한편, 제어부는 관심 영역과 관련된 센싱 데이터 이외의 센싱 데이터는 별도의 처리를 수행하지 않을 수 있다. 이에 따라, 로봇 주변에 장애물이 위치하더라도, 관심 영역 밖에 위치한 경우, 로봇은 해당 장애물에 대한 대응을 하지 않을 수 있다.
한편, 상기 로봇 주변에 위치한 장애물의 회피와 관련된 제어는, 상기 로봇의 구비된 센서로부터 수집된 센싱 데이터 중 상기 제1 영역과 관련된 데이터 및 상기 제2 영역과 관련된 데이터 각각에 기반하여 수행될 수 있다. 제어부는 상기 로봇에 구비된 센서로부터 상기 제1 영역 및 상기 제2 영역 중 적어도 하나에 위치한 장애물이 감지되는 경우 상기 관심 영역에 위치한 장애물 회피와 관련된 제어를 수행할 수 있다.
한편, 상기 관심 영역과 관련된 데이터는, 상기 관심 영역에 위치한 상기 관심 대상 장애물을 센싱한 센싱 데이터일 수 있다. 제어부는 관심 영역과 관련된 장애물에 대한 센싱 데이터만 활용하여, 상기 관심 영역과 관련된 장애물의 회피와 관련된 제어를 수행할 수 있다. 여기서, 관심 영역과 관련된 장애물은 상기 관심 영역 내에 위치하는 장애물을 의미한다.
본 명세서에서 상기 관심 영역 내에 위치하는 장애물을 “관심 대상 장애물”이라 칭한다. 관심 대상 장애물은 로봇 주행 시 관심을 가져야하는 장애물로, 상기 관심 영역 내에 위치하거나, 상기 관심 영역에 대한 거리 조건을 만족하는 장애물일 수 있다.
일 실시 예에 있어서, 관심 대상 장애물은 관심 영역 내에 장애물의 모든 부위가 위치하는 장애물이거나, 장애물의 적어도 일부가 관심 영역 내에 위치하는 장애물일 수 있다.
다른 일 실시 예에 있어서, 관심 대상 장애물은 관심 영역으로부터 기 설정된 거리 이내에 위치한 장애물일 수 있다.
상기 로봇에 구비된 센서로부터, 상기 관심 영역을 벗어난 영역에 위치한 비관심 대상 장애물에 대한 센싱 데이터가 수신되더라도, 제어부는 상기 비관심 대상 장애물에 대한 센싱 데이터를 상기 장애물의 회피와 관련된 제어에 이용하지 않을 수 있다.
상술한 바와 같이, 본 발명은 관심 영역과 관련된, 관심 대상 장애물만 선택적으로 고려하여 로봇의 주행을 제어 함으로써, 로봇 주행 시 연산을 최소화할 수 있다.
예를 들어, 도 15를 참조하면, 로봇(R)이 N1 주변에 위치하는 경우, 제어부는 로봇에 구비된 센서로부터 수신된 센싱 데이터 중 관심 영역(1541a 및 1542a)과 관련된 센싱 데이터를 이용하여 상기 관심 영역(1541a 및 1542a) 내에 위치한 장애물(1521)을 센싱한다. 제어부는 관심 영역(1541a 및 1542a)내에 위치한 장애물(1521)을 회피하기 위한 제어를 수행한다. 이에 따라, 로봇(R)은 관심 영역(1541a 및 1542a)내에 위치한 장애물(1521)을 회피하는 경로(1531)로 주행하게 된다.
한편, 로봇(R)이 N10 주변에 위치하는 경우, 제어부는 로봇에 구비된 센서로부터 수신된 센싱 데이터 중 관심 영역(1541b 및 1542b)과 관련된 센싱 데이터를 이용하여 상기 관심 영역(1541b 및 1542b) 내에 위치한 복수의 장애물(1522 및 1523)을 센싱한다. 제어부는 관심 영역(1541b 및 1542b)내에 위치한 복수의 장애물(1522 및 1523)을 회피하기 위한 제어를 수행한다. 여기서, 제어부는 관심 영역 밖에 위치한 장애물(1524)와 관련된 센싱 데이터를 수신하더라도, 별도의 처리를 수행하지 않을 수 있다. 제어부는 관심 영역 밖에 위치한 장애물(1524)을 고려하지 않고, 장애물 회피를 위한 제어를 수행한다. 이에 따라, 로봇(R)은 관심 영역(1541b 및 1542b)내에 위치한 복수의 장애물(1522 및 1523)을 회피하는 경로(1532)로 주행하게 된다.
상술한 바와 같이, 본 발명은 위험도에 기반하여 설정된 관심 영역에 대한 센싱 데이터만 선택적으로 활용하고, 관심 영역과 관련 없는 센싱 데이터는 활용하지 않음으로써, 로봇 주행 시 불필요한 연산을 최소화 할 수 있다.
또한, 본 발명은 관심 영역 설정에 기반이 되는 위험도를 로봇과 장애물 간의 거리에 기반하여 설정함으로써, 로봇과 장애물간 거리가 상대적으로 가까운 경우 장애물의 주변 영역에 대한 센싱 데이터까지 장애물 회피를 위한 제어에 활용하고, 로봇과 장애물간 거리가 상대적으로 먼 경우 장애물이 위치한 영역에 대한 센싱 데이터만 고려하여 로봇의 주행 제어를 수행함으로써, 로봇의 현재 상황에 따라 처리해야하는 센싱 데이터의 양을 가변시킬 수 있다. 이를 통해, 본 발명은 로봇의 상황에 따라 최적의 연산량으로 장애물 회피를 위한 제어를 수행할 수 있도록 한다.
한편, 본 발명은 로봇 주행과 관련된 위험도 산출 시, 관심 영역을 활용한다. 구체적으로, 제어부는 로봇의 크기, 주행 경로, 주행 방향 및 주행 속도 중 적어도 하나에 기반하여, 기본 관심 영역을 설정할 수 있다.
기본 관심 영역은 로봇이 구동을 시작하거나, 로봇 주변에 장애물이 감지되지 않을 때, 기본값으로 설정되는 영역이다. 상기 기본 관심 영역은 위험도를 기반으로 설정되지 않고, 로봇의 주행 경로 및 로봇이 향하는 방향을 기반으로 설정될 수 있다.
기본 관심 영역은 상술한 관심 영역과 마찬가지로 두 가지 영역을 포함할 수 있다.
첫 번째로, 기본 관심 영역은 상기 주행 경로에 기반하여 설정되는 제1 영역을 포함할 수 있다. 기본 관심 영역의 적어도 일부는 주행 경로를 기준으로 설정될 수 있다. 주행 경로와 관련된 제1 영역은 주행 경로를 따라 설정될 수 있다.
본 명세서에서는 제1 영역이 연장되는 방향(주행 경로 방향)을 제1 영역의 길이 방향으로 정의하고, 제1 영역이 길이 방향을 따라 연장된 거리를 제1 영역의 길이라고 정의한다. 한편, 본 명세서에서는 상기 길이 방향과 수직한 방향을 제1 영역의 너비 방향으로 정의하고, 상기 너비 방향을 따라 연장된 길이를 제1 영역의 너비라고 정의한다.
상기 제1 영역의 길이는 로봇의 주행 상태만을 고려하여 로봇이 장애물을 회피하는데 필요한 거리를 기준으로 설정될 수 있다. 구체적으로, 로봇이 장애물을 회피하는데 필요한 거리는 로봇의 주행 속도, 로봇의 주행 방향이 위치한 건물 내 영역의 구조 중 적어도 하나를 고려하여 산출될 수 있다.
상기 제1 영역의 너비는 상기 로봇의 크기, 로봇에 구비된 센서의 노이즈 중 적어도 하나에 기반하여 설정될 수 있다. 구체적으로, 제1 영역의 너비는 로봇의 크기가 클수록, 상기 센서의 노이즈가 클수록 넓게 설정될 수 있다.
두 번째로, 기본 관심 영역은 상기 로봇의 상기 로봇의 크기, 상기 로봇의 주행 방향, 상기 로봇의 주행 속도 중 적어도 하나에 기반하여 설정되는 제2 영역을 포함할 수 있다. 기본 관심 영역의 적어도 일부는 로봇이 향하는 방향을 기준으로 설정될 수 있다. 구체적으로, 제2 영역은 로봇이 향하는 방향으로 연장되며, 소정 너비를 가질 수 있다. 또한, 제2 영역의 위치는 로봇의 위치를 기준으로 설정될 수 있다.
본 명세서에서는 제2 영역이 연장되는 방향(로봇이 향하는 방향)을 제2 영역의 길이 방향으로 정의하고, 제2 영역이 길이 방향을 따라 연장된 거리를 제2 영역의 길이라고 정의한다. 한편, 본 명세서에서는 상기 길이 방향과 수직한 방향을 제2 영역의 너비 방향으로 정의하고, 상기 너비 방향을 따라 연장된 길이를 제2 영역의 너비라고 정의한다.
상기 제2 영역의 길이는 로봇의 주행 상태만을 고려햐여 로봇이 장애물을 회피하는데 필요한 거리를 기준으로 설정될 수 있다. 구체적으로, 로봇이 장애물을 회피하는데 필요한 거리는 로봇의 주행 속도, 로봇의 주행 방향이 위치한 건물 내 영역의 구조 중 적어도 하나를 고려하여 산출될 수 있다.
상기 제2 영역의 너비는 상기 로봇의 크기 및 로봇에 구비된 센서의 노이즈 중 적어도 하나에 기반하여 설정될 수 있다. 구체적으로, 제2 영역의 너비는 로봇의 크기가 클수록, 상기 센서의 노이즈가 클수록 넓게 설정될 수 있다.
기본 관심 영역에 포함된 제1 및 제2 영역은 서로 오버랩될 수 있다.
기본 관심 영역은 위험도 산출을 수행되지 않았더라도, 로봇 제어에 활용될 수 있다. 구체적으로, 기본 관심 영역은 상술한 관심 영역과 마찬가지로 로봇에 구비된 센서로부터 수집된 센싱 데이터 중 일부만 선택적으로 활용하기 위해 활용되거나, 위험도 산출을 위한 장애물을 특정하는데 활용될 수 있다.
한편, 상기 위험도는 상기 기본 관심 영역에 위치한 장애물과 상기 로봇간 상대거리에 기반하여 산출될 수 있다. 즉, 기본 관심 영역 밖에 위치한 장애물은 위험도 산출 시 고려되지 않을 수 있다.
일 실시 예에 있어서, 도 16의 (a)를 참조하면, 제어부는 제1 영역(1641a) 및 제2 영역(1642a)로 이루어진 기본 관심 영역 밖에 위치한 장애물(1621a 및 1622a)과 관련된 센싱 데이터는 위험도 산출에 활용하지 않는다. 제어부는 기본 관심 영역 밖에 위치한 장애물(1621a 및 1622a)과 로봇 간 거리를 산출하지 않을 수 있다. 이에 따라, 도 16의 (a) 상황에서는 위험도가 산출되지 않을 수 있다.
일 실시 예에 있어서, 도 16의 (b)를 참조하면, 제어부는 제1 영역(1641b) 및 제2 영역(1642b)로 이루어진 기본 관심 영역 밖에 위치한 장애물(1622b)과 관련된 센싱 데이터는 위험도 산출에 활용하지 않고, 제1 영역(1641b) 내에 위치한 장애물(1621b)과 관련된 센싱 데이터만 위험도 산출에 선택적으로 활용할 수 있다. 제어부는 기본 관심 영역 밖에 위치한 장애물(1622b)과 로봇 간 거리를 산출하지 않고, 제1 영역(1641b) 내에 위치한 장애물(1621b)과 로봇 간 거리(d4)만 산출할 수 있다. 이에 따라, 도 16의 (b) 상황에서는 제1 영역(1641b) 내에 위치한 장애물(1621b)과 로봇 간 거리(d4)를 기반으로 위험도가 산출될 수 있다.
일 실시 예에 있어서, 도 16의 (c)를 참조하면, 제어부는 제1 영역(1641c) 및 제2 영역(1642c)로 이루어진 기본 관심 영역 밖에 위치한 장애물(1621c)과 관련된 센싱 데이터는 위험도 산출에 활용하지 않고, 제2 영역(1642c) 내에 위치한 장애물(1622c)과 관련된 센싱 데이터만 위험도 산출에 선택적으로 활용할 수 있다. 제어부는 기본 관심 영역 밖에 위치한 장애물(1621c)과 로봇 간 거리를 산출하지 않고, 제2 영역(1642c) 내에 위치한 장애물(1622c)과 로봇 간 거리(d5)만 산출할 수 있다. 이에 따라, 도 16의 (c) 상황에서는 제2 영역(1642c) 내에 위치한 장애물(1622c)과 로봇 간 거리(d5)를 기반으로 위험도가 산출될 수 있다.
일 실시 예에 있어서, 도 16의 (d)를 참조하면, 제어부는 제1 영역(1641d) 및 제2 영역(1642d) 각각에 위치한 장애물(1621d 및 1622d)과 관련된 센싱 데이터를 위험도 산출에 활용할 수 있다. 제어부는 제1 영역(1641d) 내에 위치한 장애물(1621d)과 로봇 간 거리(d6) 및 제2 영역(1642d) 내에 위치한 장애물(1622d)과 로봇 간 거리(d7)를 산출할 수 있다. 이후, 제어부는 d6 및 d7 중 작은 값을 가지는 d7을 기반으로 위험도가 산출될 수 있다.
한편, 제어부는 상기 위험도에 근거하여, 상기 기본 관심 영역이 확대 또는 축소되도록, 상기 기본 관심 영역을 업데이트할 수 있다. 상술한 상기 로봇의 주행과 관련된 관심 영역을 설정하는 단계(S140)는 기본 관심 영역을 업데이트하는 것일 수 있다.
기 설정된 조건을 만족하는 경우, 상기 위험도는 재산출되고, 상기 위험도가 재산출되는 경우, 상기 관심 영역은 상기 재산출된 위험도를 기반으로 업데이트될 수 있다.
상기 기 설정된 조건은 마지막으로 위험도가 업데이트된 시점으로부터 기설정된 시간이 지난 것, 로봇의 주행 속도, 주행 방향, 회전 속도 및 회전 방향 중 적어도 하나가 변하는 것, 로봇이 기설정된 거리만큼 주행 한 것 중 적어도 하나일 수 있다. 즉, 위험도는 일정 주기로 업데이트되거나, 로봇 또는 서버의 제어에 의해 실시간으로 업데이트되거나, 로봇에 구비된 센서로부터 수신된 센싱 데이터가 기설정된 조건을 만족하거나, 로봇의 주행 환경이 변하거나, 로봇이 일정 거리 이상 주행하였을 때 업데이트될 수 있다.
상기 관심 영역은 상기 재산출된 위험도를 기반으로 업데이트될 수 있다. 여기서, 상기 업데이트는 로봇의 관심 영역이 기본 관심 영역으로 설정된 상태에서 위험도에 기반한 관심 영역으로 업데이트되거나, 위험도를 기반으로 설정된 관심 영역에서 재산출된 위험도에 기반한 관심 영역으로 업데이트될 수 있다.
예를 들어, 도 17의 (a)를 참조하면, 로봇은 기본 관심 영역 내에서 장애물이 감지되는 경우, 감지된 장애물(1721a)과 로봇간 거리(d8)에 기반하여 위험도를 산출하고, 상기 거리(d8)를 기반으로 기본 관심 영역을 업데이트할 수 있다. 업데이트된 관심 영역은 기본 관심 영역과 마찬가지로 제1 영역(1741a) 및 제2 영역(1742a)을 포함할 수 있고, 제1 영역(1741a)은 기본 관심 영역에 포함된 제1 영역을 확대 또는 축소하여 설정되고, 제2 영역(1742a)은 기본 관심 영역에 포함된 제1 영역을 확대 또는 축소하여 설정될 수 있다.
한편, 관심 영역을 업데이트 함에 따라, 제1 영역의 길이(L3) 및 너비(W3), 제2 영역의 길이(L3’) 및 너비(W3’)가 설정될 수 있으며, 상기 설정된 길이 및 너비는 기존 관심 영역에 포함된 제1 및 제2 영역의 길이 및 너비와 다를 수 있다.
한편, 도 17의 (a)와 (b)를 비교하면, 도 17의 (b)에 도시된 장애물과 로봇 간의 거리(d9)는 도 17의 (a)의 경우보다 짧다. 이 경우, 관심 영역에 포함된 제1 영역의 길이(L4) 및 너비(W4), 제2 영역의 길이(L4’) 및 너비(W4’)가 도 17의 (a)에 대응되는 제1 및 제2 영역보다 클 수 있다.
한편, 상기 위험도 재산출 시, 상기 관심 영역과 관련된 센싱 데이터가 기설정된 장애물 조건을 만족하는 경우, 제어부는 로봇의 관심 영역을 상기 기본 관심 영역으로 설정할 수 있다. 여기서, 기설정된 장애물 조건은 상기 관심 영역 내에서 장애물이 감지되지 않는 것일 수 있다. 즉, 제어부는 관심 영역에서 장애물이 감지되지 않는 경우, 로봇의 관심 영역을 기본값으로 설정할 수 있다.
상술한 바와 같이, 본 발명은 관심 영역을 주기적으로 업데이트 함으로써, 실시간으로 변하는 건물 내 환경에서 로봇이 최소한의 연산만으로 장애물을 회피할 수 있도록 한다.
한편, 상기 관심 영역 및 기본 관심 영역은 건물 내 환경, 로봇의 임무를 고려하여 설정될 수 있다. 이하, 건물 내 환경, 로봇의 임무를 고려하여 관심 영역 및 기본 관심 영역을 설정하는 실시 예에 대하여 설명한다.
도 18은 움직이는 장애물을 고려하여 관심 영역을 설정하는 일 실시 예를 나타내는 개념도이고, 도 19는 건물 내 혼잡도를 고려하여 관심 영역을 설정하는 일 실시 예를 나타내는 개념도이고, 도 20은 로봇의 임무를 고려하여 관심 영역을 설정하는 일 실시 예를 나타내는 개념도이다.
제어부는 로봇에 구비된 센서로부터 수신된 센싱 데이터에서 움직이는 장애물이 감지되는 경우, 상기 움직이는 장애물이 관심 영역 내에 위치하는지 여부와 관계 없이, 관심 영역을 업데이트할 수 있다. 구체적으로, 제어부는 로봇에 구비된 센서의 감지 범위 내에서 움직이는 장애물이 감지되는 경우, 관심 영역의 크기를 확장할 수 있다.
예를 들어, 도 18을 참조하면, 로봇이 기 설정된 주행 경로(1810)를 따라 주행하던 중 움직이는 장애물(1822)이 감지되는 경우, 관심 영역의 크기를 확장한다. 이에 따라, 기존 관심 영역에 포함된 제1 영역(1841a)의 길이(L5) 및 너비(W5)가 L6 및 W6로 증가하며, 제2 영역(1842a)의 길이(L5’) 및 너비(W5’)가 L6’ 및 W6’로 증가한다.
상술한 바와 같이, 본 발명은 이동하는 장애물의 감지되는 경우, 관심 영역을 확장함으로써, 로봇이 움직이는 장애물에 대비할 수 있도록 한다.
한편, 제어부는 서버로부터 건물 내 혼잡도와 관련된 정보를 수신하고, 건물 내 혼잡도에 기반하여 관심 영역을 업데이트할 수 있다. 구체적으로, 제어부는 건물 내 혼잡도가 높을수록 관심 영역의 크기를 확장할 수 있다. 제어부는 센싱 데이터를 기반으로 산출된 위험도가 동일하더라도 건물 내 혼잡도가 높은 경우, 관심 영역의 면적을 크게 설정할 수 있다.
예를 들어, 도 19를 참조하면, 로봇이 기 설정된 주행 경로(1910)를 따라 주행하던 중, 건물 내 장애물(1922 내지 1924)이 증가함에 따라 건물 내 혼잡도가 증가할 수 있다. 서버는 건물 내 설치된 CCTV(1951 내지 1953)를 통해 수신된 영상을 이용하여 건물 내 장애물 수를 산출하고, 장애물 수에 기반하여 건물 내 혼잡도를 산출할 수 있다. 상기 산출된 혼잡도는 건물 내에서 주행하는 로봇으로 전송될 수 있다. 로봇이 서버로부터 혼잡도 정보를 수신함에 따라, 제어부는 수신된 혼잡도 정보에 기반하여 관심 영역을 확장 또는 축소할 수 있다. 도 19의 경우, 건물 내 혼잡도가 증가함에 따라, 제어부는 관심 영역의 크기를 확장한다. 이에 따라, 기존 관심 영역에 포함된 제1 영역(1941a)의 너비(W7)가 W8로 증가하며, 제2 영역(1942a)의 너비(W7’)가 W8’로 증가한다.
상술한 바와 같이, 본 발명은 건물 내 혼잡도를 기반으로, 관심 영역의 크기를 조정함으로써, 건물 내 환경을 실시간으로 반영하여 로봇의 연산량을 조절하도록 할 수 있다.
한편, 제어부는 서버로부터 로봇의 임무 정보를 수신하고, 로봇 임무에 기반하여 관심 영역을 업데이트할 수 있다. 구체적으로, 제어부는 로봇의 임무에 따라 관심 영역을 확대하거나 축소할 수 있다.
예를 들어, 도 20을 참조하면, 로봇이 기 설정된 주행 경로(2010)를 따라 주행하던 중, 서버로부터 새로운 임무 정보를 수신하고 임무 수행을 위해 부피가 큰 물건을 탑재할 수 있다. 제어부는 로봇에게 부여된 임무가 물건을 이송하는 임무인 것을 고려하여, 관심 영역의 크기를 확장할 수 있다. 이에 따라, 기존 관심 영역에 포함된 제1 영역(2041a)의 너비(W9)가 W10으로 증가하며, 제2 영역(2042a)의 너비(W10’)가 W10’로 증가할 수 있다.
상술한 바와 같이, 본 발명은 로봇의 임무를 기반으로, 관심 영역의 크기를 조정함으로써, 로봇의 임무 수행 상태를 실시간으로 반영하여 로봇의 연산량을 조절하도록 할 수 있다.
이하에서는, 로봇에 구비된 센서의 감지 범위 내에서 로봇의 관심 영역에 대응되는 센싱 데이터만 선택적으로 활용하는 실시 예에 대하여 보다 구체적으로 설명한다.
도 21 내지 23은 로봇에 구비된 센서의 감지 범위 내에서 로봇의 관심 영역에 대응되는 센싱 데이터만 선택적으로 활용하는 실시 예를 나타내는 개념도들이다.
앞서 설명한 바와 같이, 제어부는 관심 영역에 위치한 장애물과 관련된 센싱 데이터만 선택적으로 로봇의 주행과 관련된 제어에 활용한다. 도 21을 참조하면, 로봇(R)에 구비된 센서의 감지 범위는 로봇을 에워싸는 가상의 원(2160)으로 특정될 수 있다. 로봇(R)은 센서의 감지 범위(2160) 내의 모든 장애물을 감지하고, 감지된 장애물을 고려하여 주행과 관련된 제어를 수행할 수 있다. 하지만, 로봇이 기 설정된 주행 경로로 주행함에 있어서, 일부 장애물(2122 및 2123)은 고려할 필요가 없다. 로봇이 주행 경로를 따라 주행하기 위해서는 관심 영역(2141 및 2142) 내에 위치한 장애물(2121)만 회피하면 충분하다.
한편, 도 22의 (a)를 참조하면, 로봇이 관심 영역내 위치한 장애물(2221)과 관련된 센싱 데이터만 선택적으로 고려하고, 관심 영역 밖에 위치한 장애물(2222 및 2223)을 고려하지 않고 주행과 관련된 제어를 수행하는 경우, 일부 장애물과 충돌이 발생될 수 있다.
구체적으로, 도 23의 (a)를 참조하면, 관심 영역내 위치한 장애물(2321)과 매우 인접하게 배치된 장애물(2322)을 고려하지 않고, 관심 영역내 위치한 장애물(2321)에 대한 회피 경로(2330a)를 설정하는 경우, 관심 영역내 위치한 장애물(2321)과 매우 인접하게 배치된 장애물(2322)과 로봇이 충돌할 수 있다.
이를 방지하기 위해, 본 발명은 장애물과 로봇 간의 거리가 가까워지는 경우, 장애물의 주변 상황까지 고려하여 회피를 위한 제어를 수행할 수 있도록 한다.
예를 들어, 도 22의 (b)를 참조하면, 로봇이 관심 영역내 위치한 장애물(2221)과 로봇 간 거리가 가까워짐에 따라, 로봇의 위험도가 증가하고, 이에 따라 관심 범위의 넓이가 확장될 수 있다. 이에 따라, 제어부는 관심 영역내 위치한 장애물(2221) 및 상기 장애물(2221)과 매우 인접하게 배치된 장애물(2222) 각각에 대한 센싱 데이터를 고려하여 회피 제어를 수행하게 된다.
구체적으로, 도 23의 (b)를 참조하면, 제어부는 업데이트된 관심 영역내 위치한 장애물(2321 및 2322)을 고려하여 회피 경로(2330b)를 설정함으로써, 로봇이 인접한 두 장애물을 모두 회피하도록 할 수 있다.
한편, 상기 관심 영역은 로봇의 주행 상황에 적합하게 변경될 수 있다. 이하에서는, 로봇의 주행 상황에 맞춰 관심 영역을 변경하는 일 시예에 대하여 구체적으로 설명하다.
도 24는 로봇의 주행 속도에 따라 관심 영역을 변경하는 일 실시 예를 나타내는 개념도이고, 도 25는 로봇이 주행 경로를 따라 주행하면서 관심 영역을 변경하는 일 실시 예를 나타내는 개념도이고, 도 26a 내지 26c는 관심 영역이 변경됨에 따라 위험도 산출에 활용되는 장애물이 변경되는 일 실시 예를 나타내는 개념도이다.
관심 영역에 포함된 제1 및 제2 영역의 길이는 로봇의 주행 속도에 따라 변경될 수 있다. 구체적으로, 로봇의 주행 속도가 빠를수록 관심 영역에 포함된 제1 및 제2 영역의 길이가 길어질 수 있다. 제어부는 로봇이 주행 경로를 따라 주행하도록 일정 주기마다 로봇의 주행 속도를 설정할 수 있다. 제어부는 로봇의 주행 속도를 재설정할때마다 위험도를 재산출하고, 재산출된 위험도를 기반으로 관심 영역을 업데이트할 수 있다. 이때, 제어부는 재설정된 로봇의 속도에 기반하여 관심 영역에 포함된 제1 및 제2 영역의 길이를 설정할 수 있다.
예를 들어, 도 24를 참조하면, 로봇이 1m/s로 주행하던 중, 제어부는 로봇의 주행 속도를 2m/s로 재설정하고, 위험도를 재산출하며, 기반으로 관심 영역을 업데이트할 수 있다. 제어부는 로봇의 주행 속도가 증가하는 것에 근거하여, 관심 영역에 포함된 제1 및 제2 영역의 길이를 증가시킬 수 있다. 로봇의 주행 속도가 2m/s로 설정되었을 때, 제1 및 제2 영역(2441b 및 2442b)의 길이(L8, L8’)는 로봇의 주행 속도가 1m/s로 설정되었을 때 제1 및 제2 영역(2441a 및 2442a)의 길이(L7, L7’)보다 길다.
한편, 로봇의 관심 영역 내에서 장애물이 감지되지 않는 경우, 제어부는 로봇의 관심 영역을 기본 관심 영역으로 설정할 수 있다. 구체적으로, 장애물과 로봇 간의 상대거리에 기반하여 위험도를 산출하는 경우, 위험도 산출을 위해서는 관심 영역 내에 장애물이 반드시 존재해야 한다. 제어부는 로봇의 관심 영역 내에서 장애물이 감지되지 않는 경우, 위험도를 산출할 수 없는 바, 로봇의 관심 영역을 기본 관심 영역을 설정한다.
예를 들어, 도 25를 참조하면, 로봇이 주행 경로(2510) 상에 위치한 장애물(2522)에 대한 회피 경로(2530)를 생성하고, 회피 경로(2530)를 따라 주행함에 따라, N5에 도달하는 경우, 로봇의 관심 영역 내에는 장애물이 위치하지 않게 된다. 이에 따라, 제어부는 로봇의 관심 영역을 기본 관심 영역으로 변경한다. 이에 따라, 변경된 관심 영역의 제1 및 제2 영역(2541b 및 2542b)의 너비(W15 및 W15’) 로봇이 상기 장애물(2522)을 회피할 때 관심 영역에 포함된 제1 및 제2 영역(2541a 및 2542a)의 너비(W14 및 W14’)보다 작아진다.
한편, 관심 영역이 변경됨에 따라 위험도 산출에 활용되는 장애물이 변경될 수 있다. 구체적으로, 제어부는 관심 영역 내에 위치한 장애물과 로봇 간 상대거리를 기반으로 위험도를 산출한다. 관심 영역이 업데이트됨에 따라, 관심 영역 내에 새로운 장애물이 위치하거나, 특정 장애물이 더 이상 관심 영역 내에 위치하지 않게 되는 경우, 제어부는 업데이트된 관심 영역 내에 위치한 장애물을 기준으로 위험도를 재산출할 수 있다.
예를 들어, 도 26a 및 26b를 참조하면, 제어부는 제1 관심 영역(2641a 및 2642a) 내에 위치한 특정 장애물(2622)와 로봇 간 거리(d10)에 기반하여 관심 영역을 업데이트한다. 제1 관심 영역을 업데이트하여 생성된 제2 관심 영역에 포함된 제1 및 제2 영역(2641b 및 2642b)의 넓이(W17 및 W17’)는 제1 관심 영역에 포함된 제1 및 제2 영역(2641a 및 2642a)의 넓이(W16 및 W16’)보다 증가한다. 이에 따라, 관심 영역 내에 새로운 장애물(2621)이 위치하게 된다. 상기 새로운 장애물(2621)과 로봇 간 거리(d11)는 상기 위험도 산출에 활용된, 상기 특정 장애물(2622)과 로봇간 거리(d10)보다 작으므로, 제어부는 상기 새로운 장애물(2621)과 로봇 간 거리(d11)를 기준으로 위험도를 재산출하고, 관심 영역을 업데이트한다. 이에 따라, 도 26c를 참조하면, 관심 영역에 포함된 제1 및 제2 영역(2641c 및 2642c)의 넓이(W18 및 W18’)가 증가할 수 있다.
상술한 바와 같이, 본 발명은 건물 내 환경, 로봇의 주행 상황의 변화에 따라 로봇의 관심 영역을 업데이트 함으로써, 로봇이 최소한의 연산만으로 건물 내 위치한 장애물을 안전하게 회피하도록 할 수 있다.
한편, 위에서 살펴본 본 발명은, 컴퓨터에서 하나 이상의 프로세스에 의하여 실행되며, 이러한 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램으로서 구현될 수 있다.
나아가, 위에서 살펴본 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드 또는 명령어로서 구현하는 것이 가능하다. 즉, 본 발명에 따른 다양한 제어방법은 통합하여 또는 개별적으로 프로그램의 형태로 제공될 수 있다.
한편, 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다.
나아가, 컴퓨터가 읽을 수 있는 매체는, 저장소를 포함하며 전자기기가 통신을 통하여 접근할 수 있는 서버 또는 클라우드 저장소일 수 있다. 이 경우, 컴퓨터는 유선 또는 무선 통신을 통하여, 서버 또는 클라우드 저장소로부터 본 발명에 따른 프로그램을 다운로드 받을 수 있다.
나아가, 본 발명에서는 위에서 설명한 컴퓨터는 프로세서, 즉 CPU(Central Processing Unit, 중앙처리장치)가 탑재된 전자기기로서, 그 종류에 대하여 특별한 한정을 두지 않는다.
한편, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.

Claims (20)

  1. 건물에 대한 지도에 기반하여, 상기 건물을 주행하는 로봇을 제어하는 방법에 있어서,
    서버로부터 상기 로봇의 주행 경로를 수신하는 단계;
    상기 로봇에 구비된 센서를 이용하여, 상기 로봇 주변에 위치한 장애물을 센싱하는 단계;
    상기 로봇과 상기 장애물 간의 상대거리에 근거하여 상기 로봇의 주행과 관련된 위험도를 산출하는 단계;
    상기 위험도에 근거하여, 상기 로봇의 주행과 관련된 관심 영역을 설정하는 단계; 및
    상기 로봇에 구비된 센서로부터 수신된 센싱 데이터가 상기 관심 영역과 관련되었는지 여부에 따라, 상기 센싱 데이터에 대한 서로 다른 데이터 처리를 수행하는 단계를 포함하는 것을 특징으로 하는 로봇 제어 방법.
  2. 제1항에 있어서,
    상기 서로 다른 데이터 처리를 수행하는 단계에서는,
    상기 로봇에 구비된 센서로부터 수집된 센싱 데이터 중 상기 관심 영역과 관련된 데이터에 기반하여, 상기 관심 영역과 관련된 장애물의 회피와 관련된 제어를 수행하는 것을 특징으로 하는 로봇 제어 방법.
  3. 제2항에 있어서,
    상기 관심 영역과 관련된 장애물은,
    상기 관심 영역 내에 위치하는 관심 대상 장애물인 것을 특징으로 하는 로봇 제어 방법.
  4. 제3항에 있어서,
    상기 서로 다른 데이터를 처리하는 단계에서는,
    상기 로봇에 구비된 센서로부터, 상기 관심 영역을 벗어난 영역에 위치한 비관심 대상 장애물에 대한 센싱 데이터가 수신되더라도, 상기 비관심 대상 장애물에 대한 센싱 데이터를 상기 장애물의 회피와 관련된 제어에 이용하지 않는 것을 특징으로 하는 로봇 제어 방법.
  5. 제3항에 있어서,
    상기 관심 영역과 관련된 데이터는,
    상기 관심 영역에 위치한 상기 관심 대상 장애물을 센싱한 센싱 데이터인 것을 특징으로 하는 로봇 제어 방법.
  6. 제3항에 있어서,
    상기 관심 영역과 관련된 데이터는,상기 로봇에 구비된 센서의 센싱 영역 중 상기 관심 영역과 오버랩되는 특정 영역에 대한 센싱 데이터인 것을 특징으로 하는 로봇 제어 방법.
  7. 제3항에 있어서,
    상기 관심 영역은,
    상기 주행 경로 및 상기 위험도에 기반하여 설정되는 제1 영역; 및
    상기 로봇의 크기, 상기 로봇의 주행 방향 및 상기 로봇의 주행 속도 중 적어도 하나와 상기 위험도에 기반하여 설정되는 제2 영역을 포함하는 것을 특징으로 하는 로봇 제어 방법.
  8. 제7항에 있어서,
    상기 관심 영역에 위치한 장애물의 회피와 관련된 제어는,
    상기 로봇에 구비된 센서로부터 상기 제1 영역 및 상기 제2 영역 중 적어도 하나에 위치한 장애물이 감지되는 경우 수행되는 것을 특징으로 하는 특징으로 하는 로봇 제어 방법.
  9. 제8항에 있어서,
    상기 제1 영역은, 상기 주행 경로에 따른 주행 방향을 기준으로 소정 너비 및 소정 길이로 정의되는 면적을 갖도록 형성되고,
    상기 제2 영역은 상기 로봇의 주행 방향을 기준으로 소정 너비 및 소정 길이로 정의되는 면적을 갖도록 형성되는 것을 특징으로 하는 로봇 제어 방법.
  10. 제9항에 있어서,
    상기 위험도가 클수록 상기 관심 영역에 대응되는 상기 제1 영역 및 상기 제2 영역은 커지도록 이루어지는 것을 특징으로 하는 로봇 제어 방법.
  11. 제10항에 있어서,
    상기 제1 영역 및 상기 제2 영역이 커질수록 상기 장애물의 회피와 관련된 제어를 위하여 처리되는 데이터 처리의 양이 달라지는 것을 특징으로 하는 로봇 제어 방법.
  12. 제1항에 있어서,
    상기 주행 경로, 상기 로봇의 크기, 상기 로봇의 주행 방향 및 상기 로봇의 주행 속도 중 적어도 하나에 기반하여, 기본 관심 영역을 설정하는 단계를 더 포함하고,
    상기 로봇 주변에 위치한 장애물을 센싱하는 단계는,
    상기 기본 관심 영역과 관련된 장애물을 센싱하는 것을 특징으로 하는 로봇 제어 방법.
  13. 제12항에 있어서,
    상기 위험도는 상기 기본 관심 영역에 위치한 장애물과 상기 로봇간 상대거리에 기반하여 산출되고,
    상기 위험도에 근거하여, 관심 영역을 설정하는 단계에서는,
    상기 위험도에 근거하여, 상기 기본 관심 영역이 확대 또는 축소되도록, 상기 기본 관심 영역이 업데이트되는 것을 특징으로하는 로봇 제어 방법.
  14. 제13항에 있어서,
    상기 위험도는 기 설정된 주기 마다 재산출되고,
    상기 위험도가 재산출되는 경우, 상기 관심 영역은 상기 재산출된 위험도를 기반으로 업데이트되는 것을 특징으로 하는 로봇 제어 방법.
  15. 제13항에 있어서,
    상기 로봇 주변에 위치한 장애물을 센싱하는 단계는,
    상기 기본 관심 영역에서 복수의 장애물이 센싱되는 경우, 상기 복수의 장애물 각각과 상기 로봇 간 상대거리를 산출하고,
    상기 복수의 장애물 각각과 상기 로봇 간 상대거리에 기반하여 상기 복수의 장애물 중 어느 하나를 선택하며,
    상기 위험도는 상기 선택된 장애물과 상기 로봇 간 상대거리에 기반하여 산출되는 것을 특징으로 하는 로봇 제어 방법.
  16. 제1항에 있어서,
    상기 서버로부터 상기 주행 경로 주변에 위치하는 장애물의 수를 기반으로 산출된 혼잡도 정보를 수신하는 단계를 더 포함하고,
    상기 관심 영역은 상기 위험도 및 상기 혼잡도 정보 중 적어도 하나를 고려하여 설정되는 것을 특징으로 하는 로봇 제어 방법.
  17. 클라우드 서버에 의해 제어되는 로봇이 주행하는 건물에 있어서,
    상기 건물은,
    상기 클라우드 서버로부터 상기 로봇의 주행과 제어 명령을 수신하여, 상기 로봇으로 전송하는 통신부를 포함하고,
    상기 클라우드 서버는,
    상기 로봇으로 주행 경로를 전송하고,
    상기 로봇에 구비된 센서를 통해 생성된 센싱 데이터를 수신하여, 상기 로봇 주변에 위치한 장애물을 센싱하고,
    상기 로봇과 상기 장애물 간의 상대거리에 근거하여 상기 로봇의 주행과 관련된 위험도를 산출하고,
    상기 위험도에 근거하여, 상기 로봇의 주행과 관련된 관심 영역을 설정하고,
    상기 센싱 데이터가 상기 관심 영역과 관련되었는지 여부에 따라, 상기 센싱 데이터에 대한 서로 다른 데이터 처리를 수행하는 것을 특징으로 하는 건물.
  18. 제17항에 있어서,
    상기 클라우드 서버는,
    상기 로봇에 구비된 센서로부터 수집된 센싱 데이터 중 상기 관심 영역과 관련된 데이터에 기반하여, 상기 관심 영역과 관련된 장애물의 회피와 관련된 제어를 수행하는 것을 특징으로 하는 건물.
  19. 건물에 대한 지도에 기반하여, 상기 건물을 주행하는 로봇을 제어하는 시스템에 있어서,
    서버로부터 상기 로봇의 주행 경로를 수신하는 통신부;
    상기 로봇에 구비된 센서를 이용하여, 상기 로봇 주변에 위치한 장애물을 센싱하고,
    상기 로봇과 상기 장애물 간의 상대거리에 근거하여 상기 로봇의 주행과 관련된 위험도를 산출하고,
    상기 위험도에 근거하여, 상기 로봇의 주행과 관련된 관심 영역을 설정하고,
    상기 로봇에 구비된 센서로부터 수신된 센싱 데이터가 상기 관심 영역과 관련되었는지 여부에 따라, 상기 센싱 데이터에 대한 서로 다른 데이터 처리를 수행하는 제어부를 포함하는 것을 특징으로 하는 로봇 제어 시스템.
  20. 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램으로서,
    상기 프로그램은,
    서버로부터 로봇의 주행 경로를 수신하는 단계;
    상기 로봇에 구비된 센서를 이용하여, 상기 로봇 주변에 위치한 장애물을 센싱하는 단계;
    상기 로봇과 상기 장애물 간의 상대거리에 근거하여 상기 로봇의 주행과 관련된 위험도를 산출하는 단계;
    상기 위험도에 근거하여, 상기 로봇의 주행과 관련된 관심 영역을 설정하는 단계; 및
    상기 로봇에 구비된 센서로부터 수신된 센싱 데이터가 상기 관심 영역과 관련되었는지 여부에 따라, 상기 센싱 데이터에 대한 서로 다른 데이터 처리를 수행하는 단계를 수행하도록 하는 명령어들을 포함하는 것을 특징으로 하는 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램.
PCT/KR2022/013432 2021-10-20 2022-09-07 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템 WO2023068551A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210140116A KR20230056272A (ko) 2021-10-20 2021-10-20 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템
KR10-2021-0140116 2021-10-20

Publications (1)

Publication Number Publication Date
WO2023068551A1 true WO2023068551A1 (ko) 2023-04-27

Family

ID=86059403

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/013432 WO2023068551A1 (ko) 2021-10-20 2022-09-07 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템

Country Status (2)

Country Link
KR (1) KR20230056272A (ko)
WO (1) WO2023068551A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100222954A1 (en) * 2008-08-29 2010-09-02 Ryoko Ichinose Autonomous mobile robot apparatus and a rush-out collision avoidance method in the same appratus
US20170080565A1 (en) * 2014-06-05 2017-03-23 Softbank Robotics Europe Humanoid robot with collision avoidance and trajectory recovery capabilitles
KR20200040150A (ko) * 2018-10-08 2020-04-17 주식회사 만도 차량 제어 장치, 차량 제어 방법 및 차량 제어 시스템
KR20200139443A (ko) * 2019-06-04 2020-12-14 주식회사 만도 운전자 보조 시스템 및 그 제어 방법
KR20210045022A (ko) * 2019-10-16 2021-04-26 네이버 주식회사 인식된 사람과 연관된 개인 영역에 기반하여 로봇을 제어하는 방법 및 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100222954A1 (en) * 2008-08-29 2010-09-02 Ryoko Ichinose Autonomous mobile robot apparatus and a rush-out collision avoidance method in the same appratus
US20170080565A1 (en) * 2014-06-05 2017-03-23 Softbank Robotics Europe Humanoid robot with collision avoidance and trajectory recovery capabilitles
KR20200040150A (ko) * 2018-10-08 2020-04-17 주식회사 만도 차량 제어 장치, 차량 제어 방법 및 차량 제어 시스템
KR20200139443A (ko) * 2019-06-04 2020-12-14 주식회사 만도 운전자 보조 시스템 및 그 제어 방법
KR20210045022A (ko) * 2019-10-16 2021-04-26 네이버 주식회사 인식된 사람과 연관된 개인 영역에 기반하여 로봇을 제어하는 방법 및 시스템

Also Published As

Publication number Publication date
KR20230056272A (ko) 2023-04-27

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) 빌딩 관리 로봇 및 그를 이용한 서비스 제공 방법
WO2019212239A1 (en) A plurality of robot cleaner and a controlling method for the same
WO2020050494A1 (en) A 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) 에어컨
WO2019212276A1 (en) Plurality of autonomous mobile robots and controlling method for the same
WO2020050566A1 (en) Plurality of autonomous mobile robots and controlling method for the same
AU2019262477B2 (en) Plurality of autonomous mobile robots and controlling method for the same
WO2020045732A1 (ko) 이동 로봇의 제어 방법
WO2023080490A1 (ko) 로봇 친화형 건물, 로봇 및 건물을 주행하는 멀티-로봇 제어 시스템
WO2019004742A1 (ko) 이동 로봇과 이동 단말기를 포함하는 로봇 시스템
WO2023101228A1 (ko) 로봇 친화형 건물, 복수의 로봇들을 이용한 협업 방법 및 시스템
WO2022075610A1 (ko) 이동 로봇 시스템
WO2023068551A1 (ko) 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템
WO2019004773A1 (ko) 이동 단말기 및 이를 포함하는 로봇 시스템
WO2023043117A1 (ko) 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템
WO2023068759A1 (ko) 건물을 주행하는 로봇 제어 방법 및 시스템
WO2023120918A1 (ko) 로봇 친화형 건물, 로봇의 충전 제어 방법 및 시스템
WO2023113216A1 (ko) 로봇 친화형 건물, 로봇을 활용한 배송 방법 및 시스템
WO2022075615A1 (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: 22883776

Country of ref document: EP

Kind code of ref document: A1