WO2024106728A1 - Robot-friendly building, and method and system for controlling robot traveling in building - Google Patents

Robot-friendly building, and method and system for controlling robot traveling in building Download PDF

Info

Publication number
WO2024106728A1
WO2024106728A1 PCT/KR2023/014136 KR2023014136W WO2024106728A1 WO 2024106728 A1 WO2024106728 A1 WO 2024106728A1 KR 2023014136 W KR2023014136 W KR 2023014136W WO 2024106728 A1 WO2024106728 A1 WO 2024106728A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
remote
function
adapter
remote function
Prior art date
Application number
PCT/KR2023/014136
Other languages
French (fr)
Korean (ko)
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 WO2024106728A1 publication Critical patent/WO2024106728A1/en

Links

Images

Classifications

    • 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/1689Teleoperation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/006Controls for manipulators by means of a wireless system for controlling one or several manipulators
    • 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/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/20Control system inputs

Definitions

  • the present invention relates to a remote robot control system that can be applied to robot-friendly buildings. More specifically, the present invention relates to a robot control method and system that can dynamically allocate resources to robots when necessary when controlling a plurality of robots located in a robot-friendly building.
  • the present invention relates to a robot-friendly building and a control method and system for a robot traveling in the building. More specifically, the present invention relates to a robot control method and system that allows robots and people to coexist in the same space and provide useful services to people.
  • robots have reached a level where they can safely coexist with humans in indoor spaces.
  • robots have been replacing human tasks or tasks, and in particular, various methods for robots to directly provide services to people in indoor spaces are being actively researched.
  • robots are providing navigation services in public places such as airports, stations, and department stores, and robots are providing serving services in restaurants.
  • delivery services are being provided in office spaces and communal living spaces, where robots deliver mail and parcels.
  • robots provide a variety of services such as cleaning services, crime prevention services, and logistics processing services.
  • the type and scope of services provided by robots are expected to increase exponentially in the future, and the level of service provision is also expected to continue to develop.
  • robots provide various services not only in outdoor spaces, but also in indoor spaces of buildings (or buildings) such as offices, apartments, department stores, schools, hospitals, amusement facilities, etc.
  • buildings or buildings
  • robots provide various services in the buildings. It is controlled to move around the indoor space and provide various services.
  • Republic of Korea Patent Publication No. 10-2019-0098734 states that there is a technology for embedding robot functions suitable for the purpose inside the robot, but this requires many calculations to be performed on the robot itself, and the purpose of the robot depends on the embedded functions. is limited
  • the present invention provides a control method and system for a robot that can remotely control a lightweight robot.
  • the present invention is intended to provide a robot control method and system that can perform data processing related to the function of the robot to control the robot.
  • the present invention is intended to provide a robot control method and system that can determine the functions required for a robot according to the situation and dynamically allocate resources for data processing for the determined functions.
  • the robot-friendly building according to the present invention uses a cloud system that works with multiple robots to organically control multiple robots and facility infrastructure, thereby managing the movement of robots that provide services more systematically. .
  • the robot-friendly building according to the present invention can provide various services to people more safely, quickly, and accurately.
  • the robot control system includes a remote adapter that is communicatively connected to a local adapter provided in the robot and is connected to the remote adapter, and the remote adapter Based on a request, it includes a function management unit that assigns a remote function required by the robot to the robot, and the remote adapter transfers robot data received from the robot to the remote function, and based on the robot data
  • the robot control information processed in the remote function can be transmitted to the local adapter.
  • control method of the robot control system includes the steps of communicating with a local adapter provided in the robot, and executing the remote function required for the robot based on a request from the remote adapter. Assigning to a robot, transmitting robot data received from the robot to the remote function, generating robot control information using the robot data in the remote function, and generating robot control information in the remote function based on the robot data. It may include transmitting the processed robot control information to the local adapter.
  • the method and system for controlling a building and a robot traveling through a building according to the present invention are based on a remote adapter that is communicatively connected to a local adapter provided in the robot and a request from the remote adapter,
  • a function management unit that assigns the remote functions required by the robot to the robot, a dynamic control structure that can control a plurality of robots without being dependent on any one of the plurality of robots running in the building is proposed.
  • the method and system for controlling a building and a robot traveling through the building transmits robot control information processed from remote functions required by the robot based on robot data to the local adapter, providing resources for the function to the robot.
  • remote control of the robot can be performed.
  • the building, the method and system for controlling a robot traveling in a building according to the present invention is flexible with respect to the incorporation of a new robot and the release of an existing robot through a dynamic control structure for a plurality of robots traveling in the building, and a plurality of robots are Robots can be controlled fluidly, systematically, and efficiently.
  • the robot-friendly building according to the present invention uses technological convergence where robots, autonomous driving, AI, and cloud technologies are converged and connected, and these technologies, robots, and facility infrastructure provided in the building are organically connected. It can provide a new space that combines.
  • the robot-friendly building according to the present invention uses a cloud server that interfaces with multiple robots to organically control multiple robots and facility infrastructure, thereby systematically managing the running of robots that provide services more systematically. You can. Through this, the robot-friendly building according to the present invention can provide various services to people more safely, quickly, and accurately.
  • the tasks and movement situations assigned to the multiple robots placed in the building are taken into consideration as well as the running is controlled to take people into consideration, allowing robots and people to naturally coexist in the same space.
  • Figures 1, 2, and 3 are conceptual diagrams for explaining a robot-friendly building according to the present invention.
  • Figures 4, 5, and 6 are conceptual diagrams illustrating a system for controlling a robot traveling in a robot-friendly building and various facilities provided in the robot-friendly building according to the present invention.
  • Figures 7 and 8 are conceptual diagrams for explaining the facility infrastructure provided in a robot-friendly building according to the present invention.
  • 9 to 11 are conceptual diagrams illustrating a method for estimating the position of a robot traveling in a robot-friendly building according to the present invention.
  • Figure 12 is a conceptual diagram for explaining a robot control system and method for controlling a robot running in a building.
  • Figure 13 is a conceptual diagram for explaining the robot control system according to the present invention.
  • Figure 14 is a conceptual diagram for explaining the expansion of the robot control system according to the present invention.
  • Figure 15 is a flowchart for explaining the robot control method according to the present invention.
  • Figures 16a, 16b, 16c, 16d, and 16e are conceptual diagrams for explaining remote function management for robot control.
  • FIGS. 17A and 17B are conceptual diagrams for explaining remote function management for robot travel control.
  • the present invention relates to a robot-friendly building, and proposes a robot-friendly building where people and robots can coexist safely and where robots can provide useful services within the building.
  • the present invention provides a method of providing useful services to people using robots, robot-friendly infrastructure, and various systems that control them.
  • people and multiple robots can coexist, and various infrastructures (or facility infrastructure) can be provided that allow multiple robots to move freely within the building.
  • a building is a structure created for continuous residence, living, work, etc., and may have various forms such as commercial buildings, industrial buildings, institutional buildings, residential buildings, etc. Additionally, the building may be a multi-story building with multiple floors and, oppositely, a single-story building. However, in the present invention, for convenience of explanation, infrastructure or facility infrastructure applied to a multi-story building is explained as an example.
  • infrastructure or facility infrastructure is a facility provided in a building for the purpose of providing services, moving robots, maintaining functions, maintaining cleanliness, etc., and its types and forms can be very diverse.
  • the infrastructure provided in a building can be diverse, such as mobile facilities (e.g., robot passageways, elevators, escalators, etc.), charging facilities, communication facilities, cleaning facilities, and structures (e.g., stairs, etc.). there is.
  • mobile facilities e.g., robot passageways, elevators, escalators, etc.
  • charging facilities e.g., communication facilities, cleaning facilities, and structures (e.g., stairs, etc.).
  • these facilities are referred to as facilities, infrastructure, facility infrastructure, or facility infrastructure, and in some cases, the terms are used interchangeably.
  • At least one of the building, various facility infrastructures, and robots provided in the building are controlled in conjunction with each other, so that the robot can safely and accurately provide various services within the building.
  • the present invention allows multiple robots to run within a building, provide services according to missions (or tasks), and is equipped with various facility infrastructures that can support standby or charging functions, as well as repair and cleaning functions for robots, as needed.
  • a building that is These buildings provide an integrated solution (or system) for robots, and the buildings according to the present invention may be named with various modifiers.
  • the building according to the present invention includes: i) a building equipped with infrastructure used by robots, ii) a building equipped with robot-friendly infrastructure, iii) a robot-friendly building, iv) a building where robots and people live together, v) It can be expressed in various ways, such as a building that provides various services using robots.
  • robot-friendly refers to a building where robots coexist, and more specifically, it allows robots to drive, provides services to robots, or has facility infrastructure that robots can use. , This may mean that facility infrastructure that provides necessary functions for robots (ex: charging, repair, cleaning, etc.) has been established.
  • robot friendly can be used to mean having an integrated solution for the coexistence of robots and people.
  • Figures 1, 2, and 3 are conceptual diagrams for explaining a robot-friendly building according to the present invention
  • Figures 4, 5, and 6 show a robot driving a robot-friendly building and a robot-friendly building according to the present invention.
  • Figures 7 and 8 are conceptual diagrams for explaining the facility infrastructure provided in a robot-friendly building according to the present invention.
  • the building is assigned the reference numeral “1000,” and the space (indoor space or indoor area) of the building 1000 is assigned the reference numeral “10” (see FIG. 8). Furthermore, indoor spaces corresponding to a plurality of floors constituting the indoor space of the building 1000 are assigned reference numerals 10a, 10b, 10c, etc. (see FIG. 8).
  • indoor space or indoor area refers to the inside of a building protected by an exterior wall as opposed to the outside of the building, and is not limited to meaning space.
  • the robot is given the reference symbol “R”, and even if the robot is not given a reference number in the drawings or specifications, it can all be understood as a robot (R).
  • a person or humans is given the reference numeral “U”, and a person or humans can be named as a dynamic object.
  • the dynamic object does not necessarily mean only a person, but also an animal such as a dog or cat, or at least one other robot (e.g., the user's personal robot, a robot that provides another service, etc.), a drone, or a vacuum cleaner (e.g. For example, it can be taken to mean including objects that can move, such as a robot vacuum cleaner).
  • the building (building, structure, edifice, 1000) described in the present invention is not limited to a particular type, and is a structure built for people to live, work, raise animals, or store goods. It can mean.
  • the building 1000 may be an office, an officetel, an apartment, a residential-commercial complex, a house, a school, a hospital, a restaurant, a government office, etc., and the present invention can be applied to these various types of buildings.
  • a robot can run in the building 1000 according to the present invention and provide various services.
  • One or more robots of different types may be located in the building 1000, and these robots drive within the building 1000, provide services, and operate the building (1000) under the control of the server 20. You can use the various facility infrastructure provided by 1000).
  • the location of the server 20 may exist in various ways.
  • the server 20 may be located at least one of the inside of the building 1000 and the outside of the building 1000. That is, at least part of the server 20 may be located inside the building 1000, and the remaining part may be located outside the building 1000.
  • the server 20 may be located entirely inside the building 1000 or may be located only outside the building 1000. Accordingly, in the present invention, no special limitation is placed on the specific location of the server 20.
  • the server 20 is configured to use at least one of a cloud computing type server (cloud server, 21) and an edge computing type server (edge server, 22). You can. Furthermore, the server 20 can be applied to the present invention as long as it is a method capable of controlling a robot, in addition to cloud computing or edge computing.
  • the server 20 combines the server 21 of the cloud computing method and the edge computing method to use the server 20 among the robots and facility infrastructure provided in the building 1000. Control can be performed on at least one.
  • the robot R can be driven according to control commands.
  • the robot R can move its position or change its posture by changing its movement, and perform software updates.
  • the server 20 is collectively named “cloud server” and is given the reference numeral “20”. Meanwhile, of course, the cloud server 20 can also be replaced by the term edge server 22 of edge computing.
  • cloud server can be variously changed to terms such as cloud robot system, cloud system, cloud robot control system, and cloud control system.
  • the cloud server 20 is capable of performing integrated control on a plurality of robots traveling around the building 1000. That is, the cloud server 20 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.
  • the facility infrastructure provided in the building 1000 can be directly controlled, or iv) the facility infrastructure can be controlled through communication with a control system that controls the facility infrastructure.
  • the cloud server 20 can check the status information of robots located in the building and provide (or support) various functions necessary for the robots.
  • various functions may exist, such as a charging function for robots, a cleaning function for contaminated robots, and a standby function for robots whose missions have been completed.
  • the cloud server 20 can control the robots so that they use various facility infrastructure provided in the building 1000 in order to provide various functions to the robots. Furthermore, in order to provide various functions to robots, the cloud server can directly control the facility infrastructure provided in the building 1000 or allow the facility infrastructure to be controlled through communication with a control system that controls the facility infrastructure. there is.
  • robots controlled by the cloud server 20 can drive around the building 1000 and provide various services.
  • the cloud server 20 can perform various controls based on information stored in the database, and there is no particular limitation on the type and location of the database in the present invention.
  • the term database can be freely modified and used as long as it refers to a means by which information is stored, such as memory, storage unit, repository, cloud storage, external storage, external server, etc.
  • database can be freely modified and used as long as it refers to a means by which information is stored, such as memory, storage unit, repository, cloud storage, external storage, external server, etc.
  • database can be freely modified and used as long as it refers to a means by which information is stored, such as memory, storage unit, repository, cloud storage, external storage, external server, etc.
  • database can be freely modified and used as long as it refers to a means by which information is stored, such as memory, storage unit, repository, cloud storage, external storage, external server, etc.
  • database can be freely modified and used as long as it refers to a means by which information is stored, such as memory, storage unit, repository, cloud storage
  • the cloud server 20 can perform distributed control of robots based on various criteria such as the type of service provided by the robots and the type of control for the robot.
  • the cloud server 20 there may be subordinate sub servers of lower level concepts.
  • the cloud server 20 can control a robot traveling around the building 1000 based on various artificial intelligence algorithms.
  • the cloud server 20 performs artificial intelligence-based learning that utilizes the data collected in the process of controlling the robot as learning data, and uses this to control the robot, so that the more the robot is controlled, the more the robot becomes better. It can be operated accurately and efficiently. That is, the cloud server 20 can be configured to perform deep learning or machine learning. In addition, the cloud server 20 can perform deep learning or machine learning through simulation, etc., and control the robot using the artificial intelligence model built as a result.
  • the building 1000 may be equipped with various facility infrastructure for driving the robot, providing robot functions, maintaining robot functions, performing robot missions, or coexisting between robots and people.
  • various facility infrastructures 1 and 2 that can support the driving (or movement) of the robot R may be provided within the building 1000.
  • These facility infrastructures (1, 2) support the horizontal movement of the robot (R) within the floors of the building (1000) or the vertical direction to allow the robot (R) to move between different floors of the building (1000). Can support movement to .
  • the facility infrastructure 1, 2 may be equipped with a transportation system that supports the movement of the robot.
  • the cloud server 20 controls the robot R to use these various facility infrastructures 1 and 2, and as shown in (b) of FIG. 1, the robot R operates in a building ( 1000) can be moved within.
  • the robots according to the present invention can be controlled based on at least one of the cloud server 20 and the control unit provided in the robot itself to run within the building 1000 or provide services corresponding to the assigned mission. there is.
  • the building according to the present invention is a building where robots and people coexist, and the robots are people (U) and objects used by people (e.g., strollers, carts, etc.) , it is made to drive while avoiding obstacles such as animals, and in some cases, it can be made to output notification information (3) related to the robot's driving.
  • the robot may be driven to avoid obstacles based on at least one of the cloud server 20 and the control unit provided in the robot.
  • the cloud server 20 allows the robot to avoid obstacles and move within the building 1000 based on information received through various sensors (e.g., cameras (image sensors), proximity sensors, infrared sensors, etc.) provided in the robot. You can control the robot to move.
  • the robot traveling within the building through the process of (a) to (c) of Figure 1 is configured to provide services to people or target objects present within the building, as shown in (d) of Figure 1. You can.
  • the types of services provided by robots may be different for each robot.
  • there may be various types of robots depending on the purpose the robots have different structures for each purpose, and the robots may be equipped with programs suitable for the purpose.
  • building 1000 includes delivery, logistics work, guidance, interpretation, parking assistance, security, crime prevention, security, public order, cleaning, quarantine, disinfection, laundry, beverage production, food production, serving, fire suppression, and medical support. and robots that provide at least one service among entertainment services may be deployed.
  • the services provided by robots can vary beyond the examples listed above.
  • the cloud server 20 can assign appropriate tasks to the robots, taking into account the purposes of each robot, and control the robots so that the assigned tasks are performed.
  • At least some of the robots described in the present invention can drive or perform missions under the control of the cloud server 20, and in this case, the amount of data processed by the robot itself to drive or perform missions can be minimized. there is.
  • a robot can be called a brainless robot.
  • Such a brainless robot may rely on the control of the cloud server 20 for at least some control when performing activities such as driving, performing missions, performing charging, waiting, and washing within the building 1000.
  • 9 to 11 are conceptual diagrams illustrating a method for estimating the position of a robot traveling in a robot-friendly building according to the present invention.
  • the building according to the present invention it is possible to extract and monitor the location of the robot using various infrastructures provided in the building. Furthermore, the cloud server 20 monitors the location of the robot, making it possible to efficiently and accurately control the robot within the building.
  • FIG 12 is a conceptual diagram for explaining a robot control system and method for controlling a lightweight robot.
  • the robot control system may also be named “server,” “robot control server,” “cloud server,” or “brainless server.” These servers can perform all functions of the robot control system.
  • the present invention performs processing of various functions (“Function 1 to 3”) for performing tasks in the robot (R) in the robot control system, so that a plurality of robots (R1) , R2, and R3) and a control system 1300 that performs remote control.
  • function refers to the task, movement, operation, or part of the robot, and may vary depending on the task assigned to the robot (R) or the situation of the robot (R).
  • the function of the robot (R) may be “driving”, and “object delivery motion” may correspond to the function of the robot (R). .
  • the functions of the robot described in the present invention may be very diverse in type and scope. Accordingly, hereinafter, the type and scope of tasks, movements, operations, or parts thereof of the robot R will not be distinguished, and all of them will be described as “functions,” “robot functions,” or “unit functions.”
  • control system 1300 directly performs data processing for various functions (ex: “Function 1 to 3”), and operates a plurality of robots (R1, By remotely controlling (R2, R3), the robot (R) can be controlled to perform various tasks even if the robot (R) does not have a processing unit (or calculation unit) to perform various functions.
  • the “robot (R)” described in the present invention may be a robot (R) that does not have resources for a specific function embedded within the robot (R) itself, and this specific function is performed by the control system (1300) is performed, and a control command according to the performed result or the performed result may be transmitted to the robot (R).
  • the role of the robot (R) can be expanded by controlling the robot (R) to perform various functions rather than being limited to a specific unit function with resources embedded within the robot (R).
  • control system 1300 performs functions for the plurality of robots (R1, R2, R3) simultaneously and temporarily. By allocating resources so that flexible data processing can be achieved without being dependent on a specific robot (R).
  • control system 1300 dynamically generates functions according to the situations of a plurality of robots (R1, R2, and R3) and performs the created functions, rather than allocating resources dependently on specific resources. You can allocate resources (ex: resources, memory, etc.) to do this.
  • Resources described in the present invention can be understood as a general term for the mechanisms or functions of a computer system or operating system used for the execution and operation of software. These resources may include memory resources, computational resources, timer resources, control program resources, etc.
  • resources can be used interchangeably with “computing resources.”
  • memory resources may be used as an example, but this is naturally understood to mean computing resources and not limited to memory resources.
  • FIG. 13 is a conceptual diagram for explaining the robot control system according to the present invention.
  • Figure 14 is a conceptual diagram for explaining the expansion of the robot control system according to the present invention
  • Figure 15 is a flow chart for explaining the robot control method according to the present invention
  • Figures 16a, 16b, 16c, 16d and 16e are conceptual diagrams for explaining function management for robot control
  • FIGS. 17A and 17B are conceptual diagrams for explaining function management for robot travel control.
  • the control system 1300 includes a remote adapter unit 1310, a function management unit 1320, a messaging unit (or message unit, 1330), a map information storage unit 1340, It may include at least one of a positioning unit 1350 and a motion plan unit 1360.
  • control system 1300' is a real-time robot control system (1300a, ex: edge server) that performs real-time control of the robot and data-based control of the robot. It may include at least one of the data-based robot control systems 1300b that perform control.
  • the real-time robot control system 1300a may be an edge server (Edge Sever), and the data-based robot control system 1300b may be a cloud server (Cloud Sever).
  • Edge Server Edge Server
  • Cloud Sever Cloud Sever
  • control of the robot can be performed using the configurations described below.
  • the real-time robot control system 1300a and the data-based robot control system 1300b will not be distinguished, and the control system 1300 according to the present invention will be described with reference to FIG. 13.
  • the remote adapter unit 1310 communicates with at least one of the plurality of robots R1, R2, and R3, and may include a plurality of remote adapters 1311, 1312, and 1313.
  • the plurality of remote adapters 1311, 1312, and 1313 are configured to be one-to-one matched with the plurality of robots (R1, R2, and R3), or randomly communicate with at least one of the plurality of robots (R1, R2, and R3) depending on the situation. It can be connected negatively.
  • Each of the plurality of remote adapters 1311, 1312, and 1313 is a series for controlling the robot (R) according to the functions required by the robot (R) in order to perform the mission assigned to the robot (R) connected to communication. The procedure can be performed.
  • each of the plurality of remote adapters 1311, 1312, and 1313 may function as a coordinator to control the communicationally connected robot R to perform a task assigned to the robot R.
  • the first remote adapter 1311 is connected to the first robot (R) so that the first robot (R1) is communicatively connected to perform the task assigned to the first robot (R).
  • a series of procedures performed to control will be explained using an example.
  • first remote adapter 1311 and the first robot R1 may be applicable to a plurality of other remote adapters and a robot communicatively connected to the plurality of other remote adapters.
  • first remote adapter 1311 can be used interchangeably with “remote adapter”
  • first robot can be used interchangeably with robot.
  • a process in which a local adapter and a remote adapter provided in the robot are communicatively connected can be performed (S1510, see FIG. 15).
  • the first remote adapter 1311 may receive robot data of the first robot R1 from the first robot R1 that is communicatively connected to it.
  • robot data can be understood as various information related to the robot (R).
  • robot data includes i) robot identification information (robot ID, serial number, mission information assigned to the robot, etc.), ii) robot status information (ex: battery status information, driving status information, etc.), and iii) It may include at least one of sensing information (ex: image information) sensed (or collected) by a sensing module (ex: camera) provided in the robot.
  • the first remote adapter 1311 receives robot data from a local adapter (A1) provided in the first robot (R1), or receives robot data through a link unit (see reference numeral 1370 in FIG. 13). can do.
  • the link unit 1370 may be understood as serving as a conduit for communicating information (data) by connecting the first remote adapter 1311 and the first robot R1.
  • the link unit 1370 When the link unit 1370 receives robot data of the first robot (R1) from the local adapter (A1) of the first robot (R1) that is communicatively connected to the first remote adapter (1311), the first robot (R1) ) Based on the information (ex: identification information) included in the robot data, the robot data of the first robot (R1) is transmitted to the first remote adapter 1311 among the plurality of remote adapters 1311, 1312, and 1313 ( delivery) can be done.
  • the link unit 1370 when the link unit 1370 receives robot control information for controlling a robot from the first remote adapter 1311, the link unit 1370 selects one of the plurality of robots (R1, R2, and R3) based on the received robot control information.
  • the robot control information can be transmitted (delivered) through one local adapter.
  • This link unit 1370 includes reference information (or rules) for communicatively connecting any one of the plurality of remote adapters 1311, 1312, and 1313 and any one of the plurality of robots (R1, R2, and R3). Based on this, information (data) can be transmitted (delivered).
  • the link unit 1370 connects specific robot data to the local adapter of the specific robot among the robot data received from the local adapters (A1, A2, A3) provided in each of the plurality of robots (R1, R2, R3). It can be forwarded to a specific connected remote adapter.
  • the first remote adapter 1311 provides remote functions required by the first robot (R1) in order to perform the mission assigned to the first robot (R1) based on the robot data of the first robot (R1). can be specified.
  • the first remote adapter 1311 may specify different remote functions required for the first robot R1.
  • the first remote adapter 1311 may specify the function required for object delivery as a remote function.
  • the first remote adapter 1311 may specify the function required for serving food as a remote function.
  • the first remote adapter 1311 may specify remote functions required for the first robot R1 differently.
  • the first remote adapter 1311 provides functions necessary for driving in a “narrow hallway” as a remote function. It can be specified.
  • the first remote adapter 1311 is necessary for driving in a “large space” when the robot data of the first robot R1 includes “image information in which a large space (lobby) is captured.”
  • a function can be specified as a remote function.
  • the first remote adapter 1311 is assigned to the first robot (R1) at least one of a plurality of remote functions corresponding to different driving modes, based on the robot data of the first robot (R1). It can be specified as a remote function required to perform the mission. For example, as shown in FIG. 16A, the first remote adapter 1311 performs the first remote function (F1) and the second remote function (F2) and tasks assigned to the first robot (R1). It can be specified by the remote function required to do so.
  • the first remote adapter 1311 refers to matching information (or reference information) predefined in the database and performs at least one remote function corresponding to robot data of the first robot R1 among a plurality of remote functions. Functions can be specified.
  • the matching information if the task assigned to the first robot (R1) is “food serving,” remote functions required to perform “food serving” may be matched for each of the plurality of robot data. there is.
  • the role of specifying the functions required for the robot is not performed by the remote adapter itself, but by the control system 1300 according to the present invention, or by a control unit (not shown) included in the control system 1300. Of course, this can be accomplished.
  • the first remote adapter 1311 requests a remote function assignment to assign a remote function specified to the function management unit (see reference numeral 1320 in FIG. 13) to the robot so that the specified remote function is assigned to the first robot R1. can be transmitted.
  • the first remote adapter 1311 when there are multiple remote functions specified in the first remote adapter 1311, the first remote adapter 1311 provides a plurality of remote functions to the function management unit 1320 (see reference numerals F1 and F2 in FIG. 16A).
  • a remote function allocation request may be transmitted to assign each to the first robot R1.
  • the first remote adapter 1311 may request the function management unit 1320 to allocate a remote function in response to a time when a remote function is required.
  • Each of the first remote function (F1) and the second remote function (F2) may be required at different first and second times.
  • the first remote adapter 1311 may request the function management unit 1320 to assign a first remote function in response to a first time point. Additionally, the first remote adapter 1311 may request the function management unit 1320 to assign a second remote function in response to the second time point.
  • the second time may correspond to the time when the function (ex: driving) corresponding to the first remote function ends.
  • the first remote adapter 1311 assigns the second remote function to the function management unit 1320 when the function (ex: driving) corresponding to the first remote function in the robot is terminated. Together, it is possible to request release of the allocation of the first remote function.
  • the first remote adapter 1311 requests the function management unit 1320 to allocate a remote function to correspond to an appropriate time when the remote function is needed in the first robot (R1), thereby saving resources for the first robot (R1).
  • the functions required for the first robot (R1) are organically assigned.
  • a process of assigning a remote function required by the robot to the robot may be performed based on a request from the remote adapter (S1520, see FIG. 15).
  • the function management unit 1320 is connected to the first remote adapter 1311 and serves to assign remote functions required by the first robot to the first robot (R1) based on the request of the first remote adapter 1311. can be performed.
  • the function management unit 1320 may control the remote function so that the specified remote function is assigned to the first robot R1 based on the remote function allocation request received from the first remote adapter 1311. .
  • “assigning a remote function to the first robot” can be understood as allocating resources (memory or resources) so that data processing related to the first robot can be performed in the remote function.
  • remote function can be understood as an application that performs data processing for the remote function, which may be processed by a processor or a central processing unit (CPU).
  • remote function can be used interchangeably with “remote function unit.”
  • the function management unit 1320 when receiving a plurality of remote function allocation requests from the first remote adapter 1311, can perform data processing related to the first robot (R1) in each of the plurality of remote functions, Resources can be allocated.
  • the function management unit 1320 provides the first remote function (F1) and the first remote function (F1) to the first robot (R1) based on the remote function allocation request of the first remote adapter (1311).
  • a related resource 1321 and a resource 1322 related to the second remote function (F2) may be allocated, respectively.
  • a process of transmitting robot data received from the robot to the remote function may be performed (S1530, see FIG. 15).
  • the first remote adapter 1311 may transmit robot data of the first robot R1 to the remote function based on the remote function being assigned to the first robot R1 by the function management unit 1320. .
  • the first remote adapter 1311 may transmit robot data of the first robot R1 to the remote function through the messaging unit 1330.
  • the messaging unit 1330 is connected to the first remote adapter 1311 and the remote function, and may serve as a passage connecting the first remote adapter 1311 and the remote function.
  • the messaging unit 1330 When the messaging unit 1330 receives robot data of the first robot (R1) from the first remote adapter 1311, the messaging unit 1330 transmits the robot data of the first robot (R1) using the remote function assigned to the first robot (R1). It can be transmitted (delivered).
  • the messaging unit 1330 transmits robot data of the first robot (R1) to each of the plurality of remote functions (F1, F2). (transfer) can be performed (see Figure 16a).
  • a process of generating robot control information using the robot data in the remote function may be performed (S1540, see FIG. 15).
  • data processing according to the remote function may be performed using robot data of the first robot R1, and robot control information according to the data processing may be generated (calculated).
  • the robot control information generated from the remote function can be understood as robot control information (control command) that causes the first robot R1 to perform a function corresponding to the remote function.
  • data processing according to each remote function may be performed in each of the plurality of remote functions to generate (calculate) robot control information.
  • the first remote function (F1) and the second remote function (F2) are respectively assigned to the first robot (R1)
  • the first remote function (F1) First robot control information can be generated by performing data processing according to the remote function
  • the second remote function (F2) data processing according to the second remote function (F2) can be performed to generate second robot control information.
  • a process of transmitting robot control information processed in the remote function to the local adapter based on the robot data may be performed (S1550, see FIG. 15).
  • the first remote adapter 1311 transmits (transmits) robot control information processed in the remote function to the local adapter A1 provided in the first robot R1, based on the robot data of the first robot R1. )can do.
  • processed robot control information can be transmitted to the messaging unit 1330.
  • the messaging unit 1330 may transmit the robot control information transmitted from the remote function to the first remote adapter 1311 that is communicatively connected to the first robot (R1) to which the remote function is assigned.
  • the first remote adapter 1311 sends the robot control information to the local adapter A1 provided in the first robot R1. It can be delivered.
  • the first remote adapter 1311 can transmit robot control information to the local adapter (A1) provided in the first robot (R1) through the link unit (reference numeral 1370 in FIG. 13) described above. .
  • the link unit 1370 is connected to the local adapter (A1) of the first robot (R1) that is communicatively connected to the first remote adapter (1311) based on receiving robot control information from the first remote adapter (1311). Robot control information can be transmitted.
  • robot control information is transmitted from the first remote adapter 1311 to the local adapter (A1) provided in the first robot (R1), but this uses the link unit (1370). It is natural that this can be achieved.
  • the first robot R1 when the first robot R1 receives robot control information from the first remote adapter 1311, it can perform a remote function according to the robot control information.
  • the first robot (R1) can expand and perform specific functions for which resources are not embedded within the first robot (R1).
  • control system 1300 may have a dynamic structure in which a specific remote function is not dependent on a specific robot among the plurality of robots (R1, R2, and R3) traveling in the building.
  • the remote function in the present invention may correspond to a function for controlling the movement of robots running in a building.
  • robot control information for the driving of different robots can be generated depending on which robot among the robots running in the building is assigned the remote function.
  • the first robot (R1) and the second robot (R2) which is different from the first robot (R1), may each require a remote function in order to drive (or perform assigned tasks) in the building.
  • Each of the first remote adapter 1311 and the second remote adapter 1312 can specify remote functions required for the first robot (R1) and the second robot (R2). Additionally, each of the first remote adapter 1311 and the second remote adapter 1312 may request allocation of a specific remote function from the function management unit 1320.
  • the function management unit 1320 provides remote functions to each of the first robot (R1) and the second robot (R2) based on the remote function allocation request from each of the first remote adapter 1311 and the second remote adapter 1312. Functions can be assigned.
  • the function management unit 1320 configures the first remote function F2 to perform data processing for the first robot R1 based on a request from the first remote adapter 1311.
  • a first resource 1322 corresponding to a part of the remote function F2 may be allocated to the robot R1.
  • the function management unit 1320 based on the request of the second remote adapter 1312, performs data processing for the second robot (R2) in the remote function (F2), A second resource 1323 of the remote function F2, which is different from the first resource 1322, may be assigned to the second robot R2.
  • remote function (F2) data processing according to the remote function is performed based on the first resource 1311 to generate first robot control information that allows the first robot (R1) to perform the function corresponding to the remote function. can do.
  • remote function (F2) data processing according to the remote function is performed based on the second resource 1312, and second robot control information that allows the second robot (R2) to perform the function corresponding to the remote function can be created.
  • the first robot control information and the second robot control information may include different information.
  • the function management unit 1320 when the operation according to the remote function (F2) is terminated in at least one of the first robot (R1) and the second robot (R2), the first resource 1322 and the second resource ( 1323), resources allocated to the at least one robot may be deallocated so that the resources allocated to the at least one robot can be used by other robots.
  • the function management unit 1320 when the operation according to the remote function (F2) in the second robot (R2) is terminated, the second resource 1323 allocated to the second robot (R2) can be deallocated.
  • de-allocating resources can be understood as changing the state of resources allocated to a specific robot to a state where they are no longer allocated to the specific robot.
  • the function management unit 1320 may reallocate the de-allocated second resource to a third robot (R3) different from the second robot (R2).
  • control system 1300 temporarily allocates remote function resources to a specific robot, so that the remote function is not dependent on a specific robot and can be used dynamically by a plurality of robots (R1, R2, and R3).
  • R1, R2, and R3 a plurality of robots
  • control system 1300 can dynamically manage resources so that, when a remote function is not executed, the resources allocated to the remote function are deleted and the resource is used for the execution of another remote function. there is.
  • resources described in the present invention can be understood as a general term for the mechanisms or functions of a computer system or operating system used for the execution and operation of software. These resources may include memory resources, computational resources, timer resources, control program resources, etc.
  • resources can be used interchangeably with “computing resources.”
  • memory resources may be used as an example, but this is naturally understood to mean computing resources and not limited to memory resources.
  • a de-allocation request is received for both the first resource 1322 and the second resource 1323, and the resources allocated to the remote function for other robots are received. If it does not exist, the resource 1600 for the remote function (F2) can be deleted.
  • resource deletion can be understood as returning resources allocated for data processing according to a remote function, for example, returning a memory space or computational space previously allocated to a remote function.
  • the first remote adapter 1311 may receive robot data of the first robot (R1) from the local adapter (A1) of the first robot (R) to which the first robot (R) is communicatively connected.
  • robot data can be understood as various information related to the robot (R).
  • robot data includes i) robot identification information (robot ID, serial number, mission information assigned to the robot, etc.), ii) robot status information (ex: battery status information, driving status information, etc.), and iii) It may include at least one of sensing information (ex: image information) sensed (or collected) by a sensing module (ex: camera) provided in the robot.
  • the first remote adapter 1311 is configured to, based on the received robot data of the first robot R, at least one device required by the first robot R1 to perform the task assigned to the first robot R1. Functions can be specified.
  • the first remote adapter 1311 performs a “positioning” function, a “movement path setting” function, and a “driving mode setting function” for the “delivery” mission, based on the robot data of the first robot R1.
  • the remote function may be specified in various ways based on the mission assigned to the first robot R1 and the robot data of the first robot R1.
  • each type of space in which the first robot R1 runs (or is located) can be specified as remote functions.
  • the first remote adapter 1311 corresponds to the first driving mode.
  • a function (ex: obstacle avoidance function) can be specified as a remote function.
  • the first remote adapter 1311 provides functions corresponding to the second driving mode (ex: minimizing avoidance movement and , driving mode that moves along the wall in a position close to the wall) can be specified with a remote function.
  • the first remote adapter 1311 Driving mode functions (ex: driving mode that moves according to a set motion to use building facilities) can be specified as a remote function.
  • the first remote adapter 1311 may specify a function corresponding to robot data of the first robot R1 as a remote function by referring to matching information predefined in a database.
  • the first remote adapter 1311 may refer to matching information of the first robot R1 from a database and specify a specific function corresponding to specific robot data of the first robot as a remote function.
  • the first remote adapter 1311 may transmit a request to the function management unit 1320 to assign a remote function to the first robot so that the remote function corresponding to the specified function is assigned to the first robot (R). there is.
  • the function management unit 1320 may control a specified remote function to be assigned to the first robot R1 based on a remote function allocation request received from the first remote adapter 1311.
  • the function management unit 1320 may allocate resources (resources or memory) related to a specified remote function to the first robot R1.
  • the first remote adapter 1311 may be connected (or associated) with a specified remote function based on the specified remote function being assigned to the first robot R1.
  • the first remote adapter 1311 converts the robot data of the first robot (R1) into a connected remote function to calculate robot control information related to a specified remote function based on the robot data of the first robot (R). It can be delivered.
  • data processing according to the remote function may be performed based on robot data of the first robot R1 transmitted from the first remote adapter 1311.
  • a robot (R) control command that allows the first robot (R1) to perform the function corresponding to the remote function can be calculated through data processing.
  • the first remote adapter 1311 transmits a robot control command calculated based on the robot data of the first robot R1 in the remote function to the first robot R, thereby controlling the first robot R1. can be controlled remotely.
  • the first remote adapter 1311 may transmit a robot control command to the first local adapter (A1) of the first robot (R1).
  • the first remote adapter 1311 may request the function management unit 1320 to disconnect from the remote function.
  • the function management unit 1320 may terminate (or release) the allocation of the remote function assigned to the first robot R based on a request from the first remote adapter 1311.
  • the first remote adapter 1311 may be disconnected (or terminated) from a previously connected remote function based on the allocation of a remote function previously assigned to the first robot (R) being released (or terminated). .
  • connection between the first remote adapter 1311 and the remote function is released based on the termination of the allocation of the remote function previously assigned to the first robot (R).
  • each of the plurality of remote adapters 1311, 1312, and 1313 uses the matched robots (R1, R2, and R3) based on the data processing results performed by the data processing result function management unit 1320 for the connected remote function. You can create control commands for control.
  • each of the plurality of remote adapters 1311, 1312, and 1313 may transmit the generated control command to the local adapters A1, A2, and A3 of the matched robots R1, R2, and R3.
  • the first remote adapter 1311 generates a control command for the first robot (R1) based on a data processing result for at least one unit function specified based on robot information of the first robot (R1). By transmitting the data to the first local adapter (A1) of the first robot (R1), the first robot (R1) can be remotely controlled.
  • the second remote adapter 2322 provides a control command to the second robot (R2) based on a data processing result for at least one unit function specified based on robot information of the second robot (R2).
  • the second robot (R2) can be remotely controlled.
  • the first remote adapter 1311 is dynamically connected to the first remote function (F1) and the second remote function.
  • the first remote adapter 1311 transmits a control command corresponding to data processing related to the first remote function (F1) and the second remote function (F2) to the first communicationally connected robot (R1), 1
  • the robot (R1) can be controlled.
  • the first remote adapter 1311 may transmit a control command to the first local adapter A1 of the first robot R1.
  • the second remote adapter 1312 is dynamically connected to the second remote function (F2) and the third remote function (F3).
  • the second remote adapter 1312 may transmit control commands corresponding to data processing related to the second remote function (F2) and the third remote function (F3) to the second robot (R2) that is communicatively connected.
  • the second remote adapter 1312 may transmit a control command to the second local adapter A2 of the second robot R2.
  • each of the plurality of remote adapters 1311, 1312, and 1313 coordinates functions (remote Function specification, remote function assignment, control command transmission, linkage with and release from robots) can be performed.
  • the function management unit 1320 communicates with a specific adapter among the plurality of remote adapters 1311, 1312, and 1313, based on at least one remote function being specified to control the robot R that is communicatively connected to the specific adapter. Resources related to a specific remote function can be allocated to a specific connected robot (R).
  • the function management unit 1320 may perform data processing related to a remote function specified for a specific robot (R) using resources allocated to the specific robot (R).
  • a first remote function (F1) and a second remote function (F2) are specified to control the first robot (R1).
  • the function management unit 1320 operates the first remote function (F1) and the second remote function (F2) in the first remote adapter 1311 to control the first robot (R1). ), the resource 1321 related to the first remote function and the resource 1322 related to the second remote function may be allocated to the first robot R1.
  • the function management unit 1320 processes data related to the first remote function (F1) for the first robot (R1) using the resources 1321 related to the first remote function allocated to the first robot (R1). can be performed. And, the function management unit 1320 uses the resources 1322 related to the second remote function allocated to the first robot (R1) to obtain data related to the second remote function (F2) to the first robot (R1). Processing can be performed.
  • the function management unit 1320 may simultaneously allocate resources to each of the plurality of robots (R1, R2, and R3) and simultaneously perform data processing for each of the plurality of robots (R1, R2, and R3).
  • a second remote function (F2) and a third remote function (F3) are used to control the second robot (R). Let's assume it has been specified.
  • the function management unit 1320 in the second remote adapter 1312, uses a second remote function (F2) and a third remote function (F3) to control the second robot (R2). ), the resource 1323 related to the second remote function and the resource 1324 related to the second remote function may be allocated to the second robot R2.
  • the function management unit 1320 is related to the second remote function (F2) for the second robot (R2) using the resource 1323 related to the second remote function allocated to the second robot (R2). Data processing can be performed. And, the function management unit 1320 uses the resource 1323 related to the third remote function allocated to the second robot (R2) to provide data related to the third remote function (F3) to the second robot (R2). Processing can be performed.
  • resources are allocated to each of the first robot (R1) and the second robot (R2), and data for each of the first robot (R1) and the second robot (R2) is used using the allocated resources. Processing can be performed simultaneously.
  • the function management unit 1320 determines that data processing related to a specific remote function for a specific robot (R) among a plurality of robots (R1, R2, R3) is terminated, and Allocation of resources can be terminated (or released).
  • terminal (or releasing) the allocation of resources already allocated to a specific robot (R) means that the status of the resource that was allocated to a specific robot (R) is no longer allocated to a specific robot (R). It can be understood as changing to an unused state.
  • terminating (or canceling) the allocation of a specific resource pre-allocated to a specific robot (R) can be understood as terminating (or canceling) the association between the specific robot (R) and the pre-allocated resource.
  • the resource for which allocation is terminated may be a resource related to a specific remote function for which data processing has ended.
  • a resource 1323 related to a second remote function and a resource 1324 related to a third remote function were allocated to the second robot R2, and the second remote function to the second robot R2 ( During data processing related to F2) and data processing related to the third remote function (F3), assume that data processing related to the second remote function (F2) is terminated.
  • the function management unit 1320 pre-assigns data to the second robot R2 based on the end of data processing related to the second remote function F2 for the second robot R2. Allocation of resources 1323 related to the second remote function may be terminated. Additionally, the function management unit 1320 can maintain the allocation of resources 1324 related to the third remote function for which data processing has not yet been completed.
  • the function management unit 1320 reallocates the resources allocated to the specific robot (R) to another robot (R) based on the end of data processing related to the remote function specified for the specific robot (R). You can.
  • Resources reallocated to other robots may be resources for which data processing has been completed among resources allocated to a specific robot (R).
  • the function management unit 1320 may designate a robot (R) that requires data processing for a specific remote function as a standby robot (R).
  • the function management unit 1320 controls the standby robot (R) waiting for resource allocation related to a specific remote function based on the end of data processing related to a specific remote function for the robot (R) to which resources have already been allocated. , the resources can be reallocated.
  • the third robot (R3) waits for allocation related to the second remote function. Let's assume there is.
  • the function management unit 1320 based on the end of data processing related to the second remote function for the second robot (R2), the second remote function assigned to the second robot (R2)
  • the resource 1323 related to the function can be reallocated to the third robot (R3) corresponding to the standby robot (R).
  • each of the plurality of robots operates in different driving modes for each type of space in which they are driven (or located).
  • data processing related to functions corresponding to different driving modes may be performed.
  • remote functions corresponding to different driving modes may be matched for each type of space in which the robot R drives (or is located) and exist as matching information.
  • a “travel path setting function” and a remote function corresponding to the first driving mode are matched. It can exist.
  • a remote function corresponding to the third driving mode (ex: operation determined for using building facilities) (function to move according to) may exist in matching.
  • Each of the plurality of remote adapters 1311, 1312, and 1313 determines the type of space in which the communicationally connected robots (R1, R2, and R3) run, based on the robot data of the communicationally connected robots (R1, R2, and R3). You can specify the corresponding remote function.
  • the function management unit 1320 provides resources related to the remote function specified for each of the communicationally connected robots (R1, R2, and R3) based on the remote function specified in each of the plurality of remote adapters 1311, 1312, and 1313. Can be assigned.
  • the function management unit 1320 uses the resources allocated to each of the communicationally connected robots (R1, R2, and R3) to perform remote functions specific to each of the communicationally connected robots (R1, R2, and R3). Data processing can be performed.
  • the first remote adapter 1311 is a “mobile” communicatively connected to the “corridor” along which the first robot R1 is traveling, based on robot data received from the first local adapter A1 of the first robot R1.
  • the “route setting function” and “corridor driving function” can be specified.
  • the second remote adapter 1312 communicates with the “elevator use space” where the second robot (R2) is traveling based on robot data received from the second local adapter (A2) of the second robot (R2). You can specify the connected “travel path setting function” and “elevator boarding function”.
  • the function management unit 1320 determines the resources 1710 related to the “travel path setting function” and the “corridor driving function” based on the unit results specified in the first remote adapter 1311. Resources 1730 may be allocated to the first robot R1 and data processing may be performed. And, based on the unit result specified in the second remote adapter 1312, the function management unit 1320 generates a resource 1720 related to the “travel path setting function” and a resource 1740 related to “elevator boarding” to the second remote adapter 1312. It can be assigned to the robot (R2) and data processing can be performed.
  • the first remote adapter 1311 is connected to the first robot R1 based on the data processing results of the “movement path setting function” and the data processing results of the “corridor driving function” for the first robot R1. You can create control commands for For example, the first remote adapter 1311 may generate a control command that causes the first robot R1 to move in a line along the wall of the hallway and then turn right at the end of the hallway.
  • the first remote adapter 1311 transmits the generated control command to the first local adapter (A1) of the first robot (R1) to control the running of the first robot (R1) according to the generated control command. You can.
  • the second remote adapter 1312 is based on the data processing results of the “movement path setting function” and the data processing results of the “elevator boarding function” for the second robot (R2) ( Control commands for R2) can be created.
  • the second remote adapter 1312 may generate a control command for the second robot R2 to move in front of the elevator and then board the elevator.
  • the second remote adapter 1312 transmits the generated control command to the second local adapter (A2) of the second robot (R2) to control the running of the second robot (R2) according to the generated control command. You can.
  • the communicatively connected robots (R1, R2, and R3) are connected based on sensing information of the communicatively connected robots (R1, R2, and R3).
  • the driving space is a "first space (large space, e.g., lobby)"
  • the first driving mode function (ex: obstacle avoidance driving mode) is performed on a communicationally connected robot (R1, R2, R3). It can be specified as a remote function required for control.
  • the communicatively connected robots (R1, R2, and R3) are connected based on sensing information of the communicatively connected robots (R1, R2, and R3). If this driving space is the "second space (narrow hallway space)", the second driving mode function (ex: driving mode that minimizes avoidance movement and moves in a line in a position close to the wall) is activated by a communicationally connected robot ( It can be specified as a remote function required to control R1, R2, R3).
  • the communicatively connected robots (R1, R2, and R3) based on sensing information of the communicatively connected robots (R1, R2, and R3), the communicatively connected robots (R1, R2, and R3) ), if the space in which it is driven is "a third space (building facility space (elevator, door, gate)", the third driving mode function (ex: moves according to the designated movement to use the building facility) (driving mode) can be specified as a remote function necessary for controlling the communicationally connected robots (R1, R2, R3).
  • the method and system for controlling a building and a robot traveling through a building according to the present invention are based on a remote adapter that is communicatively connected to a local adapter provided in the robot and a request from the remote adapter,
  • a function management unit that assigns the remote functions required by the robot to the robot, a dynamic control structure that can control a plurality of robots without being dependent on any one of the plurality of robots running in the building is proposed.
  • the method and system for controlling a building and a robot traveling through the building transmits robot control information processed from remote functions required by the robot based on robot data to the local adapter, providing resources for the function to the robot.
  • remote control of the robot can be performed.
  • the building, the method and system for controlling a robot traveling in a building according to the present invention is flexible with respect to the incorporation of a new robot and the release of an existing robot through a dynamic control structure for a plurality of robots traveling in the building, and a plurality of robots are Robots can be controlled fluidly, systematically, and efficiently.
  • the present invention discussed above can be implemented as a program that is executed by one or more processes on a computer and can be stored in a medium that can be read by such a computer.
  • present invention can be implemented as computer-readable codes or instructions on a program-recorded medium. That is, various control methods according to the present invention may be provided in the form of programs, either integrated or individually.
  • computer-readable media includes all types of recording devices that store data that can be read by a computer system.
  • Examples of computer-readable media include HDD (Hard Disk Drive), SSD (Solid State Disk), SDD (Silicon Disk Drive), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. There is.
  • the computer-readable medium may be a server or cloud storage that includes storage and can be accessed by electronic devices through communication.
  • the computer can download the program according to the present invention from a server or cloud storage through wired or wireless communication.
  • the computer described above is an electronic device equipped with a processor, that is, a CPU (Central Processing Unit), and there is no particular limitation on its type.
  • a processor that is, a CPU (Central Processing Unit)
  • CPU Central Processing Unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

The present invention relates to a robot-friendly building, and a method and system for controlling a robot traveling in the building, the system comprising: a remote adapter communicatively connected to a local adapter provided in the robot; and a function management unit which is connected to the remote adapter and assigns a remote function required by the robot to the robot on the basis of a request of the remote adapter. The remote adapter can transmit robot data received from the robot to the remote function and transmit, to the local adapter, robot control information processed by the remote function on the basis of the robot data.

Description

로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템Robot-friendly building, method and system for controlling robots driving around the building
본 발명은 로봇 친화형 건물에 적용될 수 있는 원격 로봇 제어 시스템에 관한 것이다. 보다 구체적으로, 본 발명은 로봇 친화형 건물에 위치하는 복수의 로봇을 제어함에 있어서, 필요 시 자원을 로봇에게 동적으로 할당할 수 있는 로봇 제어 방법 및 시스템에 관한 것이다.The present invention relates to a remote robot control system that can be applied to robot-friendly buildings. More specifically, the present invention relates to a robot control method and system that can dynamically allocate resources to robots when necessary when controlling a plurality of robots located in a robot-friendly building.
나아가, 본 발명은 로봇 친화형 건물, 건물을 주행하는 로봇의 제어 방법 및 시스템에 관한 것이다. 보다 구체적으로 본 발명은 같은 공간 속에서 로봇과 사람이 함께 공존하며 사람에게 유용한 서비스를 제공할 수 있도록 하는 로봇 제어 방법 및 시스템에 관한 것이다.Furthermore, the present invention relates to a robot-friendly building and a control method and system for a robot traveling in the building. More specifically, the present invention relates to a robot control method and system that allows robots and people to coexist in the same space and provide useful services to people.
기술이 발전함에 따라, 다양한 서비스 디바이스들이 나타나고 있으며, 특히 최근에는 다양한 작업 또는 서비스를 수행하는 로봇에 대한 기술 개발이 활발하게 이루어지고 있다.As technology develops, various service devices appear, and in particular, technology development for robots that perform various tasks or services has been actively developed recently.
나아가 최근에는, 인공 지능 기술, 클라우드 기술 등이 발전함에 따라, 로봇을 보다 정밀하고, 안전하게 제어하는 것이 가능해지고 있으며, 이에 따라 로봇의 활용도가 점차적으로 높아지고 있다. 특히, 기술의 발전으로 인하여, 로봇은 실내 공간에서 인간과 안전하게 공존할 수 있을 정도의 수준에 이르렀다.Furthermore, in recent years, as artificial intelligence technology, cloud technology, etc. have developed, it has become possible to control robots more precisely and safely, and thus the utilization of robots is gradually increasing. In particular, due to technological advancements, robots have reached a level where they can safely coexist with humans in indoor spaces.
이에, 최근에는 로봇이 인간의 업무 또는 작업을 대체하고 있으며, 특히 실내 공간에서 사람을 대상으로 로봇이 직접 서비스를 제공하는 다양한 방법들이 활발하게 연구되고 있다. Accordingly, recently, 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.
예를 들어, 공항, 역사, 백화점 등 공공 장소에서는 로봇들이 길안내 서비스를 제공하고 있으며, 음식점에서는 로봇들이 서빙 서비스를 제공하고 있다. 나아가, 오피스 공간, 공동 주거 공간 등에서는 로봇들이 우편물, 택배 등을 배송하는 배송 서비스를 제공하고 있다. 이 밖에도 로봇들은 청소 서비스, 방범 서비스, 물류 처리 서비스 등 다양한 서비스들을 제공하고 있으며, 로봇이 제공하는 서비스의 종류 및 범위는 앞으로도 기하급수적으로 늘어날 것이며, 서비스 제공 수준 또한 계속적으로 발전할 것으로 기대된다.For example, robots are providing navigation services in public places such as airports, stations, and department stores, and robots are providing serving services in restaurants. Furthermore, delivery services are being provided in office spaces and communal living spaces, where robots deliver mail and parcels. In addition, robots provide a variety of services such as cleaning services, crime prevention services, and logistics processing services. The type and scope of services provided by robots are expected to increase exponentially in the future, and the level of service provision is also expected to continue to develop.
이러한, 로봇들은 실외 공간 뿐만 아니라, 사무실, 아파트, 백화점, 학교, 병원, 놀이시설 등과 같은 건물(또는 빌딩(building))의 실내 공간 내에서 다양한 서비스를 제공하고 있으며, 이 경우, 로봇들은 건물의 실내 공간을 이동하며 다양한 서비스들을 제공하도록 제어되고 있다.These 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 various services in the buildings. It is controlled to move around the indoor space and provide various services.
한편, 서비스 로봇의 발달에 따라, 로봇이 제공 가능한 서비스의 범위가 점차적으로 증가하고 있다. 이에, 최근에는 로봇을 다양한 용도로 사용하기 위한 연구가 활발하게 진행되고 있다. Meanwhile, with the development of service robots, the range of services that robots can provide is gradually increasing. Accordingly, research on using robots for various purposes has been actively conducted recently.
대한민국 공개특허 제10-2019-0098734호는, 로봇 내부에 용도에 적합한 로봇의 기능을 임베디드(imbedded)하는 기술이 존재하나, 이는 로봇 자체에서 많은 연산을 수행해야 하고, 임베딩된 기능에 로봇의 용도가 한정된다 Republic of Korea Patent Publication No. 10-2019-0098734 states that there is a technology for embedding robot functions suitable for the purpose inside the robot, but this requires many calculations to be performed on the robot itself, and the purpose of the robot depends on the embedded functions. is limited
이에, 로봇을 경량화 하고, 로봇의 기능을 확장할 수 있으며, 복수의 로봇을 유연하고 효율적으로 제어할 수 있는 기술에 대한 니즈가 존재한다. Accordingly, there is a need for technology that can lighten robots, expand robot functions, and control multiple robots flexibly and efficiently.
본 발명은, 경량화 된 로봇을 원격으로 제어할 수 있는 로봇에 대한 제어 방법 및 시스템을 제공하는 것이다. The present invention provides a control method and system for a robot that can remotely control a lightweight robot.
특히, 본 발명은, 로봇에 대한 제어를 위해, 로봇의 기능과 관련된 데이터 처리를 수행할 수 있는 로봇 제어 방법 및 시스템을 제공하기 위한 것이다.In particular, the present invention is intended to provide a robot control method and system that can perform data processing related to the function of the robot to control the robot.
보다 구체적으로, 본 발명은, 상황에 맞추어 로봇에 필요한 기능을 결정하고, 결정된 기능에 대한 데이터 처리를 위하여, 자원을 동적으로 할당할 수 있는 로봇 제어 방법 및 시스템을 제공하기 위한 것이다.More specifically, the present invention is intended to provide a robot control method and system that can determine the functions required for a robot according to the situation and dynamically allocate resources for data processing for the determined functions.
나아가, 본 발명에 따른 로봇 친화형 건물은 다수의 로봇과 연동하는 클라우드 시스템을 이용하여, 다수의 로봇 및 설비 인프라를 유기적으로 제어함으로써, 보다 체계적으로 서비스를 제공하는 로봇의 주행을 관리할 수 있다. 이를 통해, 본 발명에 따른 로봇 친화형 건물은, 보다 안전하고, 신속하게, 그리고 정확하게 사람들에게 다양한 서비스를 제공할 수 있다.Furthermore, the robot-friendly building according to the present invention uses a cloud system that works with multiple robots to organically control multiple robots and facility infrastructure, thereby managing the movement of robots that provide services more systematically. . Through this, the robot-friendly building according to the present invention can provide various services to people more safely, quickly, and accurately.
상술한 목적을 달성하기 위하여, 본 발명에 따른 로봇 제어 시스템은, 로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 원격 어댑터(remote adapter) 및 상기 원격 어댑터와 연결되며, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 기능 관리부를 포함하고, 상기 원격 어댑터는, 상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하고, 상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달할 수 있다. In order to achieve the above-described object, the robot control system according to the present invention includes a remote adapter that is communicatively connected to a local adapter provided in the robot and is connected to the remote adapter, and the remote adapter Based on a request, it includes a function management unit that assigns a remote function required by the robot to the robot, and the remote adapter transfers robot data received from the robot to the remote function, and based on the robot data Thus, the robot control information processed in the remote function can be transmitted to the local adapter.
나아가, 본 발명에 따른 로봇 제어 시스템의 제어 방법은, 로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 단계, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 단계, 상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하는 단계, 상기 원격 기능에서 상기 로봇 데이터를 이용하여 로봇 제어 정보를 생성하는 단계 및 상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 단계를 포함할 수 있다. Furthermore, the control method of the robot control system according to the present invention includes the steps of communicating with a local adapter provided in the robot, and executing the remote function required for the robot based on a request from the remote adapter. Assigning to a robot, transmitting robot data received from the robot to the remote function, generating robot control information using the robot data in the remote function, and generating robot control information in the remote function based on the robot data. It may include transmitting the processed robot control information to the local adapter.
나아가 본 발명에 따른 프로그램은, 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램으로서, 로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 단계, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 단계, 상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하는 단계, 상기 원격 기능에서 상기 로봇 데이터를 이용하여 로봇 제어 정보를 생성하는 단계 및 상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 단계를 수행하도록 하는 명령어들을 포함할 수 있다. Furthermore, the program according to the present invention is a program that is executed by one or more processes in an electronic device and stored in a computer-readable recording medium, which includes the steps of being communicatively connected to a local adapter provided in the robot; Based on a request from the remote adapter, assigning a remote function required by the robot to the robot, transferring robot data received from the robot to the remote function, and using the robot data in the remote function It may include instructions for generating robot control information and transmitting robot control information processed in the remote function based on the robot data to the local adapter.
본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 원격 어댑터(remote adapter) 및 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 기능 관리부를 포함함으로써, 건물을 주행하는 복수의 로봇 중 어느 하나에 종속되지 않고, 복수의 로봇을 제어할 수 있는 동적 제어 구조를 제시하고 있다. The method and system for controlling a building and a robot traveling through a building according to the present invention are based on a remote adapter that is communicatively connected to a local adapter provided in the robot and a request from the remote adapter, By including a function management unit that assigns the remote functions required by the robot to the robot, a dynamic control structure that can control a plurality of robots without being dependent on any one of the plurality of robots running in the building is proposed.
나아가, 본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 로봇 데이터에 기반하여 로봇에서 요구되는 원격 기능에서 처리된 로봇 제어 정보를, 로컬 어댑터로 전달하여, 로봇에 기능을 위한 자원이 임베디드(imbedded) 되지 않은 기능까지 확장하여, 로봇에 대한 원격 제어를 수행할 있다. Furthermore, the method and system for controlling a building and a robot traveling through the building according to the present invention transmits robot control information processed from remote functions required by the robot based on robot data to the local adapter, providing resources for the function to the robot. By extending this non-embedded function, remote control of the robot can be performed.
나아가, 본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 건물을 주행하는 복수의 로봇에 대한 동적 제어 구조를 통해, 새로운 로봇의 편입 및 기존 로봇의 해제에 대해 유연하고, 복수의 로봇을 유동적이고 체계적이며 효율적으로 제어할 수 있다. Furthermore, the building, the method and system for controlling a robot traveling in a building according to the present invention is flexible with respect to the incorporation of a new robot and the release of an existing robot through a dynamic control structure for a plurality of robots traveling in the building, and a plurality of robots are Robots can be controlled fluidly, systematically, and efficiently.
나아가, 본 발명에 따른 로봇 친화형 건물은 로봇, 자율주행, AI, 클라우드 기술이 융합되고, 연결되는 테크 컨버전스(Technological Convergence)를 이용하며, 이러한 기술과, 로봇 그리고 건물내 구비되는 설비 인프라가 유기적으로 결합되는 새로운 공간을 제공할 수 있다.Furthermore, the robot-friendly building according to the present invention uses technological convergence where robots, autonomous driving, AI, and cloud technologies are converged and connected, and these technologies, robots, and facility infrastructure provided in the building are organically connected. It can provide a new space that combines.
나아가, 본 발명에 따른 로봇 친화형 건물은 다수의 로봇과 연동하는 클라우드 서버를 이용하여, 다수의 로봇 및 설비 인프라를 유기적으로 제어함으로써, 보다 체계적으로 서비스를 제공하는 로봇의 주행을 체계적으로 관리할 수 있다. 이를 통해, 본 발명에 따른 로봇 친화형 건물은, 보다 안전하고, 신속하게, 그리고 정확하게 사람들에게 다양한 서비스를 제공할 수 있다.Furthermore, the robot-friendly building according to the present invention uses a cloud server that interfaces with multiple robots to organically control multiple robots and facility infrastructure, thereby systematically managing the running of robots that provide services more systematically. You can. Through this, the robot-friendly building according to the present invention can provide various services to people more safely, quickly, and accurately.
나아가, 본 발명에 따른 건물에서는 건물에 배치된 다수의 로봇에 할당된 임무와 이동 상황을 고려함은 물론, 사람을 배려하도록 주행이 제어됨으로써, 같은 공간 속에서 자연스럽게 로봇과 사람이 공존 할 수 있다.Furthermore, in the building according to the present invention, the tasks and movement situations assigned to the multiple robots placed in the building are taken into consideration as well as the running is controlled to take people into consideration, allowing robots and people to naturally coexist in the same space.
도 1, 도 2 및 도 3은 본 발명에 따른 로봇 친화형 건물을 설명하기 위한 개념도들이다.Figures 1, 2, and 3 are conceptual diagrams for explaining a robot-friendly building according to the present invention.
도 4, 도 5 및 도 6은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇 및 로봇 친화형 건물에 구비된 다양한 설비를 제어하는 시스템을 설명하기 위한 개념도들이다.Figures 4, 5, and 6 are conceptual diagrams illustrating a system for controlling a robot traveling in a robot-friendly building and various facilities provided in the robot-friendly building according to the present invention.
도 7 및 도 8은 본 발명에 따른 로봇 친화형 건물에 구비된 설비 인프라를 설명하기 위한 개념도들이다.Figures 7 and 8 are conceptual diagrams for explaining the facility infrastructure provided in a robot-friendly building according to the present invention.
도 9 내지 도 11은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇의 위치를 추정하는 방법을 설명하기 위한 개념도들이다.9 to 11 are conceptual diagrams illustrating a method for estimating the position of a robot traveling in a robot-friendly building according to the present invention.
도 12는 건물에서 주행하는 로봇을 제어하는 로봇 제어 시스템 및 방법을 설명하기 위한 개념도이다. Figure 12 is a conceptual diagram for explaining a robot control system and method for controlling a robot running in a building.
도 13은 본 발명에 따른 로봇 제어 시스템을 설명하기 위한 개념도이다.Figure 13 is a conceptual diagram for explaining the robot control system according to the present invention.
도 14는 본 발명에 따른 로봇 제어 시스템의 확장을 설명하기 위한 개념도이다. Figure 14 is a conceptual diagram for explaining the expansion of the robot control system according to the present invention.
도 15는 본 발명에 따른 로봇 제어 방법을 설명하기 위한 흐름도이다. Figure 15 is a flowchart for explaining the robot control method according to the present invention.
도 16a, 도 16b, 도 16c, 도 16d 및 도 16e는 로봇 제어를 위한 원격 기능 관리를 설명하기 위한 개념도들이다. Figures 16a, 16b, 16c, 16d, and 16e are conceptual diagrams for explaining remote function management for robot control.
도 17a 및 도 17b는 로봇의 주행 제어를 위한 원격 기능 관리를 설명하기 위한 개념도들이다. FIGS. 17A and 17B are conceptual diagrams for explaining remote function management for robot travel control.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소에는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. Hereinafter, embodiments disclosed in the present specification will be described in detail with reference to the accompanying drawings. However, identical or similar components will be assigned the same reference numbers regardless of drawing symbols, and duplicate descriptions thereof will be omitted. The suffixes “module” and “part” for components used in the following description are given or used interchangeably only for the ease of preparing the specification, and do not have distinct meanings or roles in themselves. Additionally, in describing the embodiments disclosed in this specification, if it is determined that detailed descriptions of related known technologies may obscure the gist of the embodiments disclosed in this specification, the detailed descriptions will be omitted. In addition, the attached drawings are only for easy understanding of the embodiments disclosed in this specification, and the technical idea disclosed in this specification is not limited by the attached drawings, and all changes included in the spirit and technical scope of the present invention are not limited. , should be understood to include equivalents or substitutes.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms containing ordinal numbers, such as first, second, etc., may be used to describe various components, but the components are not limited by the terms. The above terms are used only for the purpose of distinguishing one component from another.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is said to be "connected" or "connected" to another component, it is understood that it may be directly connected to or connected to the other component, but that other components may exist in between. It should be. On the other hand, when it is mentioned that a component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. Singular expressions include plural expressions unless the context clearly dictates otherwise.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this application, terms such as “comprise” or “have” are intended to designate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are not intended to indicate the presence of one or more other features. It should be understood that this does not exclude in advance the possibility of the existence or addition of elements, numbers, steps, operations, components, parts, or combinations thereof.
본 발명은 로봇 친화형 건물에 관한 것으로서, 사람과 로봇이 안전하게 공존하고, 나아가 건물 내에서 로봇이 유익한 서비스를 제공할 수 있는 로봇 친화형 건물을 제안한다. The present invention relates to a robot-friendly building, and proposes a robot-friendly building where people and robots can coexist safely and where robots can provide useful services within the building.
보다 구체적으로, 본 발명은 로봇, 로봇 친화 인프라 및 이를 제어하는 다양한 시스템을 이용하여, 사람에게 유용한 서비스를 제공하는 방법을 제공한다. 본 발명에 따른 건물에서는 사람과 다수의 로봇이 공존할 수 있으며, 다수의 로봇이 건물 내에서 자유롭게 이동할 수 있는 다양한 인프라(또는 설비 인프라)가 제공될 수 있다. More specifically, the present invention provides a method of providing useful services to people using robots, robot-friendly infrastructure, and various systems that control them. In the building according to the present invention, people and multiple robots can coexist, and various infrastructures (or facility infrastructure) can be provided that allow multiple robots to move freely within the building.
본 발명에서, 건물은 지속적인 거주, 생활, 업무 등을 위하여 만들어진 구조물로서, 상업용 건물, 산업용 건물, 기관용 건물, 거주용 건물 등과 같이 다양한 형태를 가질 수 있다. 또한, 상기 건물은 복수의 층을 가진 다층 건물과 이에 반대되는 단층 건물이 될 수 있다. 다만, 본 발명에서는 설명의 편의상 다층 건물에 적용되는 인프라 또는 설비 인프라를 예시로서 설명한다.In the present invention, a building is a structure created for continuous residence, living, work, etc., and may have various forms such as commercial buildings, industrial buildings, institutional buildings, residential buildings, etc. Additionally, the building may be a multi-story building with multiple floors and, oppositely, a single-story building. However, in the present invention, for convenience of explanation, infrastructure or facility infrastructure applied to a multi-story building is explained as an example.
본 발명에서, 인프라 또는 설비 인프라는, 서비스 제공, 로봇의 이동, 기능 유지, 청결 유지 등을 위하여 건물에 구비되는 시설로서, 그 종류 및 형태는 매우 다양할 수 있다. 예를 들어, 건물에 구비되는 인프라는 이동 설비(예를 들어, 로봇 이동 통로, 엘리베이터, 에스컬레이터 등), 충전 설비, 통신 설비, 세척 설비, 구조물(예를 들어, 계단 등) 등과 같이 다양할 수 있다. 본 명세서에서는 이러한 설비들은 시설, 인프라, 시설 인프라 또는 설비 인프라로 명명하도록 하며, 경우에 따라 용어를 혼용하여 사용하도록 한다.In the present invention, infrastructure or facility infrastructure is a facility provided in a building for the purpose of providing services, moving robots, maintaining functions, maintaining cleanliness, etc., and its types and forms can be very diverse. For example, the infrastructure provided in a building can be diverse, such as mobile facilities (e.g., robot passageways, elevators, escalators, etc.), charging facilities, communication facilities, cleaning facilities, and structures (e.g., stairs, etc.). there is. In this specification, these facilities are referred to as facilities, infrastructure, facility infrastructure, or facility infrastructure, and in some cases, the terms are used interchangeably.
나아가, 본 발명에 따른 건물에서는 건물, 건물에 구비된 다양한 설비 인프라 및 로봇 중 적어도 하나가 서로 연동하여 제어됨으로써, 로봇이 안전하고, 정확하게 건물 내에서 다양한 서비스를 제공하도록 이루어질 수 있다. Furthermore, in the building according to the present invention, 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.
본 발명은 다수의 로봇이 건물 내에서 주행하고, 임무(또는 업무)에 따른 서비스를 제공하며, 필요에 따라 대기 또는 충전 기능, 나아가 로봇에 대한 수리 및 세척 기능을 지원할 수 있는 다양한 설비 인프라가 구비된 건물을 제안한다. 이러한 건물은 로봇에 대한 통합 솔루션(또는 시스템)을 제공하며, 본 발명에 따른 건물은 다양한 수식어로서 명명될 수 있다. 예를 들어, 본 발명에 따른 건물은, i)로봇이 이용하는 인프라를 구비하는 건물, ii)로봇 친화 인프라를 구비하는 건물, iii)로봇 친화형 건물, iv) 로봇과 사람이 함께 생활하는 건물, v)로봇을 이용한 다양한 서비스를 제공하는 건물과 등과 같이, 다양하게 표현될 수 있다.The present invention allows multiple robots to run within a building, provide services according to missions (or tasks), and is equipped with various facility infrastructures that can support standby or charging functions, as well as repair and cleaning functions for robots, as needed. We propose a building that is These buildings provide an integrated solution (or system) for robots, and the buildings according to the present invention may be named with various modifiers. For example, the building according to the present invention includes: i) a building equipped with infrastructure used by robots, ii) a building equipped with robot-friendly infrastructure, iii) a robot-friendly building, iv) a building where robots and people live together, v) It can be expressed in various ways, such as a building that provides various services using robots.
한편, 본 발명에서 "로봇 친화"의 의미는, 로봇이 공존하는 건물에 대한 것으로서, 보다 구체적으로, 로봇의 주행을 허용하거나, 로봇이 서비스를 제공하거나, 로봇이 이용 가능한 설비 인프라가 구축되어 있거나, 로봇에게 필요한 기능(ex: 충전, 수리, 세척 등)을 제공하는 설비 인프라가 구축되어 있음을 의미할 수 있다. 이 경우에, 본 발명에서 "로봇 친화"는 로봇과 사람의 공존을 위한 통합 솔루션을 가지고 있다는 의미로 사용될 수 있다.Meanwhile, in the present invention, the meaning of “robot-friendly” refers to a building where robots coexist, and more specifically, it allows robots to drive, provides services to robots, or has facility infrastructure that robots can use. , This may mean that facility infrastructure that provides necessary functions for robots (ex: charging, repair, cleaning, etc.) has been established. In this case, in the present invention, “robot friendly” can be used to mean having an integrated solution for the coexistence of robots and people.
이하에서는 첨부된 도면과 함께, 본 발명에 대해 보다 구체적으로 살펴본다.Hereinafter, the present invention will be looked at in more detail along with the attached drawings.
도 1, 도 2 및 도 3은 본 발명에 따른 로봇 친화형 건물을 설명하기 위한 개념도들이고, 도 4, 도 5 및 도 6은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇 및 로봇 친화형 건물에 구비된 다양한 설비를 제어하는 시스템을 설명하기 위한 개념도들이다. 나아가, 도 7 및 도 8은 본 발명에 따른 로봇 친화형 건물에 구비된 설비 인프라를 설명하기 위한 개념도들이다.Figures 1, 2, and 3 are conceptual diagrams for explaining a robot-friendly building according to the present invention, and Figures 4, 5, and 6 show a robot driving a robot-friendly building and a robot-friendly building according to the present invention. These are conceptual diagrams to explain the system that controls the various facilities provided in. Furthermore, Figures 7 and 8 are conceptual diagrams for explaining the facility infrastructure provided in a robot-friendly building according to the present invention.
먼저, 설명의 편의를 위하여, 대표적인 도면 부호를 정의하기로 한다.First, for convenience of explanation, representative reference symbols will be defined.
본 발명에서, 건물은 도면 부호 "1000" 부여하며, 건물(1000)의 공간(실내 공간 또는 실내 영역)은 도면 부호 "10"을 부여한다(도 8참조). 나아가, 건물(1000)의 실내 공간을 구성하는 복수의 층들(floors)에 각각 해당하는 실내 공간은 도면 부호 10a, 10b, 10c등을 부여한다(도 8 참조). 본 발명에서 실내 공간 또는 실내 영역은 건물의 외부와 반대되는 개념으로 외벽에 의하여 보호되는 건물의 내부를 의미하는 것으로서, 공간을 의미하는 것으로 한정되지 않는다.In the present invention, the building is assigned the reference numeral “1000,” and the space (indoor space or indoor area) of the building 1000 is assigned the reference numeral “10” (see FIG. 8). Furthermore, indoor spaces corresponding to a plurality of floors constituting the indoor space of the building 1000 are assigned reference numerals 10a, 10b, 10c, etc. (see FIG. 8). In the present invention, indoor space or indoor area refers to the inside of a building protected by an exterior wall as opposed to the outside of the building, and is not limited to meaning space.
나아가, 본 발명에서 로봇은 도면 부호 "R"을 부여하며, 도면 또는 명세서에서는 로봇에 대하여 도면 부호를 기입하지 않더라도, 모두 로봇(R)으로 이해되어질 수 있다.Furthermore, in the present invention, the robot is given the reference symbol “R”, and even if the robot is not given a reference number in the drawings or specifications, it can all be understood as a robot (R).
나아가, 본 발명에서 사람 또는 인간은 도면 부호 "U"를 부여하며, 사람 또는 인간은 동적인 객체로서 명명이 가능하다. 이때 동적인 객체는 반드시 사람만을 의미하는 것이 아니라, 강아지, 고양이와 같은 동물 또는 다른 적어도 하나의 로봇(예를 들어, 사용자의 개인 로봇, 다른 서비스를 제공하는 로봇 등), 드론, 청소기(예를 들어, 로봇 청소기)와 같이 움직임이 가능한 사물을 포함하는 의미로 받아들여질 수 있다.Furthermore, in the present invention, a person or humans is given the reference numeral “U”, and a person or humans can be named as a dynamic object. At this time, the dynamic object does not necessarily mean only a person, but also an animal such as a dog or cat, or at least one other robot (e.g., the user's personal robot, a robot that provides another service, etc.), a drone, or a vacuum cleaner (e.g. For example, it can be taken to mean including objects that can move, such as a robot vacuum cleaner).
한편, 본 발명에서 설명되는 건물(建物, building, structure, edifice, 1000)은 특별한 종류에 제한을 두지 않으며, 사람이 들어 살거나, 일을 하거나, 동물을 사육하거나, 또는 물건을 넣어 두기 위하여 지은 구조물을 의미할 수 있다.On the other hand, the building (building, structure, edifice, 1000) described in the present invention is not limited to a particular type, and is a structure built for people to live, work, raise animals, or store goods. It can mean.
예를 들어, 건물(1000)은 사무실, 오피스, 오피스텔, 아파트, 주상복합 아파트, 주택, 학교, 병원, 음식점, 관공서 등이 될 수 있으며, 본 발명은 이러한 다양한 종류의 건물들에 적용될 수 있다.For example, the building 1000 may be an office, an officetel, an apartment, a residential-commercial complex, a house, a school, a hospital, a restaurant, a government office, etc., and the present invention can be applied to these various types of buildings.
도 1에 도시된 것과 같이, 본 발명에 따른 건물(1000)에서는 로봇이 주행하며 다양한 서비스를 제공할 수 있다.As shown in FIG. 1, a robot can run in the building 1000 according to the present invention and provide various services.
건물(1000)내에는 하나 또는 그 이상의 서로 다른 종류의 복수의 로봇들이 위치할 수 있으며, 이러한 로봇들은 서버(20)의 제어 하에, 건물(1000) 내를 주행하고, 서비스를 제공하며, 건물(1000)에 구비된 다양한 설비 인프라를 이용할 수 있다.One or more robots of different types may be located in the building 1000, and these robots drive within the building 1000, provide services, and operate the building (1000) under the control of the server 20. You can use the various facility infrastructure provided by 1000).
본 발명에서 서버(20)의 위치는 다양하게 존재할 수 있다. 예를 들어, 서버(20)는 건물(1000)의 내부 및 건물(1000)의 외부 중 적어도 하나에 위치할 수 있다. 즉, 서버(20)의 적어도 일부는 건물(1000)의 내부에 위치하고, 나머지 일부는 건물(1000)의 외부에 위치할 수 있다. 또는, 서버(20)는 건물(1000) 내부에 모두 위치하거나, 건물(1000) 외부에만 위치할 수 있다. 이에, 본 발명에서는, 서버(20)의 구체적인 위치에 대해서는 특별한 한정을 두지 않기로 한다.In the present invention, the location of the server 20 may exist in various ways. For example, the server 20 may be located at least one of the inside of the building 1000 and the outside of the building 1000. That is, at least part of the server 20 may be located inside the building 1000, and the remaining part may be located outside the building 1000. Alternatively, the server 20 may be located entirely inside the building 1000 or may be located only outside the building 1000. Accordingly, in the present invention, no special limitation is placed on the specific location of the server 20.
나아가, 본 발명에서 서버(20)는 클라우드 컴퓨팅(Cloud Computing) 방식의 서버(클라우드 서버, 21) 및 엣지 컴퓨팅(Edge computing) 방식의 서버(엣지 서버, 22) 중 적어도 하나의 방식을 이용하도록 이루어질 수 있다. 나아가, 서버(20)는 클라우드 컴퓨팅 또는 엣지 컴퓨팅 방식 외에도, 로봇을 제어 가능한 방식이기만 하면 본 발명에 적용될 수 있다.Furthermore, in the present invention, the server 20 is configured to use at least one of a cloud computing type server (cloud server, 21) and an edge computing type server (edge server, 22). You can. Furthermore, the server 20 can be applied to the present invention as long as it is a method capable of controlling a robot, in addition to cloud computing or edge computing.
한편, 본 발명에 따른 서버(20)는 경우에 따라, 클라우드 컴퓨팅(Cloud Computing) 방식의 서버(21) 및 엣지 컴퓨팅(Edge computing) 방식을 혼합하여 로봇 및 건물(1000)내 구비된 설비 인프라 중 적어도 하나에 대한 제어를 수행할 수 있다.On the other hand, in some cases, the server 20 according to the present invention combines the server 21 of the cloud computing method and the edge computing method to use the server 20 among the robots and facility infrastructure provided in the building 1000. Control can be performed on at least one.
한편, 로봇(R)은 제어 명령에 따라 구동될 수 있다. 예를 들면, 로봇(R)은 움직임을 변경함으로써 위치를 이동하거나 자세를 변경할 수 있으며, 소프트웨어 업데이트를 수행할 수 있다.Meanwhile, the robot R can be driven according to control commands. For example, the robot R can move its position or change its posture by changing its movement, and perform software updates.
본 발명에서는, 설명의 편의를 위하여, 서버(20)를 "클라우드 서버"로 통일하여 명명하도록 하며, 도면 부호 "20"을 부여하도록 한다. 한편, 이러한 클라우드 서버(20)는 엣지 컴퓨팅의 엣지 서버(22)의 용어로도 대체될 수 있음은 물론이다.In the present invention, for convenience of explanation, the server 20 is collectively named “cloud server” and is given the reference numeral “20”. Meanwhile, of course, the cloud server 20 can also be replaced by the term edge server 22 of edge computing.
나아가, "클라우드 서버"의 용어는 클라우드 로봇 시스템, 클라우드 시스템, 클라우드 로봇 제어 시스템, 클라우드 제어 시스템 등의 용어로 다양하게 변경될 수 있다.Furthermore, the term “cloud server” can be variously changed to terms such as cloud robot system, cloud system, cloud robot control system, and cloud control system.
한편, 본 발명에 따른 클라우드 서버(20)는 건물(1000)을 주행하는 복수의 로봇에 대한 통합 제어를 수행하는 것이 가능하다. 즉, 클라우드 서버(20)는 건물(1000)내 위치한 i)복수의 로봇 로봇(R)에 대한 모니터링을 수행하고, ii)복수의 로봇에 대해 임무(또는 업무)를 할당하며, iii)복수의 로봇 로봇(R)이 임무를 성공적으로 수행하도록 건물(1000)내 구비된 설비 인프라를 직접적으로 제어하거나, iv)설비 인프라를 제어하는 제어 시스템과 통신을 통하여 설비 인프라가 제어되도록 할 수 있다.Meanwhile, the cloud server 20 according to the present invention is capable of performing integrated control on a plurality of robots traveling around 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. In order for the robot R to successfully perform its mission, the facility infrastructure provided in the building 1000 can be directly controlled, or iv) the facility infrastructure can be controlled through communication with a control system that controls the facility infrastructure.
나아가, 클라우드 서버(20)는 건물에 위치한 로봇들의 상태 정보를 확인하고, 로봇들에 필요한 다양한 기능을 제공(또는 지원)할 수 있다. 여기에서, 다양한 기능은, 로봇들에 대한 충전 기능, 오염된 로봇에 대한 세척 기능, 임무가 완료된 로봇들에 대한 대기 기능 등이 존재할 수 있다.Furthermore, the cloud server 20 can check the status information of robots located in the building and provide (or support) various functions necessary for the robots. Here, various functions may exist, such as a charging function for robots, a cleaning function for contaminated robots, and a standby function for robots whose missions have been completed.
클라우드 서버(20)는 로봇들에 대해 다양한 기능을 제공하기 위하여, 로봇들이 건물(1000)에 구비된 다양한 설비 인프라를 이용하도록, 로봇들을 제어할 수 있다. 나아가, 클라우드 서버는, 로봇들에 대해 다양한 기능을 제공하기 위하여, 건물(1000)내 구비된 설비 인프라를 직접적으로 제어하거나, 설비 인프라를 제어하는 제어 시스템과 통신을 통하여 설비 인프라가 제어되도록 할 수 있다.The cloud server 20 can control the robots so that they use various facility infrastructure provided in the building 1000 in order to provide various functions to the robots. Furthermore, in order to provide various functions to robots, the cloud server can directly control the facility infrastructure provided in the building 1000 or allow the facility infrastructure to be controlled through communication with a control system that controls the facility infrastructure. there is.
이와 같이, 클라우드 서버(20)에 의해 제어되는 로봇들은 건물(1000)을 주행하며, 다양한 서비스를 제공할 수 있다.In this way, robots controlled by the cloud server 20 can drive around the building 1000 and provide various services.
한편, 클라우드 서버(20)는 데이터베이스에 저장된 정보를 근거로, 다양한 제어를 수행할 수 있으며, 본 발명에서 데이터베이스의 종류 및 위치에는 특별한 한정을 두지 않는다. 이러한 데이터베이스의 용어는 메모리, 저장부, 저장소, 클라우드 저장소, 외부 저장소, 외부 서버 등, 정보가 저장되는 수단을 의미하는 용어이면 자유롭게 변형되어 사용되어질 수 있다. 이하에서는 "데이터베이스"의 용어로 통일하여 설명하도록 한다.Meanwhile, the cloud server 20 can perform various controls based on information stored in the database, and there is no particular limitation on the type and location of the database in the present invention. The term database can be freely modified and used as long as it refers to a means by which information is stored, such as memory, storage unit, repository, cloud storage, external storage, external server, etc. Hereinafter, the description will be unified using the term “database.”
한편, 본 발명에 따른 클라우드 서버(20)는 로봇들이 제공하는 서비스의 종류, 로봇에 대한 제어의 종류 등 다양한 기준에 근거하여 로봇에 대한 분산 제어를 수행할 수 있으며, 이 경우, 클라우드 서버(20)에는 하위 개념의 종속적인 서브 서버들이 존재할 수 있다.Meanwhile, the cloud server 20 according to the present invention can perform distributed control of robots based on various criteria such as the type of service provided by the robots and the type of control for the robot. In this case, the cloud server 20 ), there may be subordinate sub servers of lower level concepts.
나아가, 본 발명에 따른 클라우드 서버(20)는 다양한 인공지능 알고리즘에 근거하여, 건물(1000)을 주행하는 로봇을 제어할 수 있다.Furthermore, the cloud server 20 according to the present invention can control a robot traveling around the building 1000 based on various artificial intelligence algorithms.
나아가, 클라우드 서버(20)는 로봇을 제어하는 과정에서 수집되는 데이터들을 학습 데이터로서 활용하는 인공지능 기반의 학습을 수행하고, 이를 로봇의 제어에 활용함으로써, 로봇에 대한 제어가 이루어질수록 로봇을 보다 정확하고, 효율적으로 운용할 수 있다. 즉, 클라우드 서버(20)는 딥러닝 또는 머신 러닝을 수행하도록 이루어질 수 있다. 또한, 클라우드 서버(20)는 시뮬레이션 등을 통하여 딥러닝 또는 머신 러닝을 수행하고, 그 결과로서 구축된 인공지능 모델을 이용하여 로봇에 대한 제어를 수행할 수 있다.Furthermore, the cloud server 20 performs artificial intelligence-based learning that utilizes the data collected in the process of controlling the robot as learning data, and uses this to control the robot, so that the more the robot is controlled, the more the robot becomes better. It can be operated accurately and efficiently. That is, the cloud server 20 can be configured to perform deep learning or machine learning. In addition, the cloud server 20 can perform deep learning or machine learning through simulation, etc., and control the robot using the artificial intelligence model built as a result.
한편, 건물(1000)에는 로봇의 주행, 로봇의 기능 제공, 로봇의 기능 유지, 로봇의 임무 수행 또는 로봇과 사람의 공존을 위하여 다양한 설비 인프라가 구비될 수 있다. Meanwhile, the building 1000 may be equipped with various facility infrastructure for driving the robot, providing robot functions, maintaining robot functions, performing robot missions, or coexisting between robots and people.
예를 들어, 도 1의 (a)에 도시된 것과 같이, 건물(1000) 내에는 로봇(R)의 주행(또는 이동)을 지원할 수 있는 다양한 설비 인프라(1, 2)가 구비될 수 있다. 이러한 설비 인프라(1, 2)는 건물(1000)의 층 내에서 로봇(R)의 수평 방향으로의 이동을 지원하거나, 건물(1000)의 서로 다른 층 사이를 로봇(R)이 이동하도록 수직 방향으로의 이동을 지원할 수 있다. 이와 같이, 상기 설비 인프라(1, 2)는 로봇의 이동을 지원하는 운송체계를 구비할 수 있다. 클라우드 서버(20)는 이러한 다양한 설비 인프라(1, 2)를 이용하도록 로봇(R)을 제어하여, 도 1의 (b)에 도시된 것과 같이, 로봇(R)이 서비스를 제공하기 위하여 건물(1000) 내를 이동하도록 할 수 있다.For example, as shown in (a) of FIG. 1, various facility infrastructures 1 and 2 that can support the driving (or movement) of the robot R may be provided within the building 1000. These facility infrastructures (1, 2) support the horizontal movement of the robot (R) within the floors of the building (1000) or the vertical direction to allow the robot (R) to move between different floors of the building (1000). Can support movement to . In this way, the facility infrastructure 1, 2 may be equipped with a transportation system that supports the movement of the robot. The cloud server 20 controls the robot R to use these various facility infrastructures 1 and 2, and as shown in (b) of FIG. 1, the robot R operates in a building ( 1000) can be moved within.
한편, 본 발명에 따른 로봇들은 클라우드 서버(20) 및 로봇 자체에 구비된 제어부 중 적어도 하나에 근거하여 제어되어, 건물(1000) 내를 주행하거나, 부여된 임무에 해당하는 서비스를 제공하도록 이루어질 수 있다.Meanwhile, the robots according to the present invention can be controlled based on at least one of the cloud server 20 and the control unit provided in the robot itself to run within the building 1000 or provide services corresponding to the assigned mission. there is.
나아가, 도 1의 (c)에 도시된 것과 같이, 본 발명에 따른 건물은 로봇과 사람들이 공존하는 건물로서, 로봇들은 사람(U), 사람이 사용하는 물건(예를 들어 유모차, 카트 등), 동물과 같은 장애물을 피하여 주행하도록 이루어지며, 경우에 따라 로봇의 주행과 관련된 알림 정보(3)를 출력하도록 이루어질 수 있다. 이러한 로봇의 주행은 클라우드 서버(20) 및 로봇에 구비된 제어부 중 적어도 하나의 근거 하에 장애물을 피하도록 이루어질 수 있다. 클라우드 서버(20)는 로봇에 구비된 다양한 센서(예를 들어, 카메라(이미지 센서), 근접 센서, 적외선 센서 등)를 통해 수신되는 정보에 근거하여, 로봇이 장애물을 피하여 건물(1000) 내를 이동하도록 로봇에 대한 제어를 수행할 수 있다.Furthermore, as shown in (c) of Figure 1, the building according to the present invention is a building where robots and people coexist, and the robots are people (U) and objects used by people (e.g., strollers, carts, etc.) , it is made to drive while avoiding obstacles such as animals, and in some cases, it can be made to output notification information (3) related to the robot's driving. The robot may be driven to avoid obstacles based on at least one of the cloud server 20 and the control unit provided in the robot. The cloud server 20 allows the robot to avoid obstacles and move within the building 1000 based on information received through various sensors (e.g., cameras (image sensors), proximity sensors, infrared sensors, etc.) provided in the robot. You can control the robot to move.
또한, 도 1의 (a) 내지 (c)의 과정을 거쳐 건물 내를 주행하는 로봇은, 도 1의 (d)에 도시된 것과 같이, 건물 내에 존재하는 사람 또는 타겟 객체에게 서비스를 제공하도록 이루어질 수 있다. In addition, the robot traveling within the building through the process of (a) to (c) of Figure 1 is configured to provide services to people or target objects present within the building, as shown in (d) of Figure 1. You can.
로봇이 제공하는 서비스의 종류는, 로봇 마다 상이할 수 있다. 즉, 로봇은 용도에 따라 다양한 종류가 존재할 수 있으며, 로봇은 용도 마다 상이한 구조를 가지고, 로봇에는 용도에 적합한 프로그램이 탑재될 수 있다.The types of services provided by robots may be different for each robot. In other words, there may be various types of robots depending on the purpose, the robots have different structures for each purpose, and the robots may be equipped with programs suitable for the purpose.
예를 들어, 건물(1000)에는 배송, 물류 작업, 안내, 통역, 주차지원, 보안, 방범, 경비, 치안, 청소, 방역, 소독, 세탁, 음료 제조, 음식 제조, 서빙, 화재 진압, 의료 지원 및 엔터테인먼트 서비스 중 적어도 하나의 서비스를 제공하는 로봇들이 배치될 수 있다. 로봇들이 제공하는 서비스는 위에서 열거된 예들 외에도 다양할 수 있다.For example, building 1000 includes delivery, logistics work, guidance, interpretation, parking assistance, security, crime prevention, security, public order, cleaning, quarantine, disinfection, laundry, beverage production, food production, serving, fire suppression, and medical support. and robots that provide at least one service among entertainment services may be deployed. The services provided by robots can vary beyond the examples listed above.
한편, 클라우드 서버(20)는 로봇들 각각의 용도를 고려하여, 로봇들에게 적절한 임무를 할당하고, 할당된 임무가 수행되도록 로봇들에 대한 제어를 수행할 수 있다.Meanwhile, the cloud server 20 can assign appropriate tasks to the robots, taking into account the purposes of each robot, and control the robots so that the assigned tasks are performed.
본 발명에서 설명되는 로봇들 중 적어도 일부는 클라우드 서버(20)의 제어 하에 주행하거나, 임무를 수행할 수 있으며, 이 경우, 로봇 자체에서 주행 또는 임무를 수행하기 위하여 처리되는 데이터의 양은 최소화될 수 있다. 본 발명에서는 이러한 로봇을 브레인리스(brainless) 로봇이라고 명명할 수 있다. 이러한 브레인리스 로봇은, 건물(1000) 내에서 주행, 임무 수행, 충전 수행, 대기, 세척 등의 행위를 하는데 있어서, 적어도 일부의 제어를 클라우드 서버(20)의 제어에 의존할 수 있다.At least some of the robots described in the present invention can drive or perform missions under the control of the cloud server 20, and in this case, the amount of data processed by the robot itself to drive or perform missions can be minimized. there is. In the present invention, such a robot can be called a brainless robot. Such a brainless robot may rely on the control of the cloud server 20 for at least some control when performing activities such as driving, performing missions, performing charging, waiting, and washing within the building 1000.
다만, 본 명세서에서는 브레인 리스 로봇을 구분하여 명명하지 않고, 모두 However, in this specification, brainless robots are not named separately, and all
도 9 내지 도 11은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇의 위치를 추정하는 방법을 설명하기 위한 개념도들이다. 9 to 11 are conceptual diagrams illustrating a method for estimating the position of a robot traveling in a robot-friendly building according to the present invention.
위에서 살펴본 것과 같이, 본 발명에 따른 건물에서는, 건물에 구비된 다양한 인프라를 이용하여, 로봇의 위치를 추출하고, 모니터링하는 것이 가능하다. 나아가, 클라우드 서버(20)는 이러한 로봇의 위치를 모니터링 함으로써, 건물 내에서 로봇을 효율적이고, 정확하게 제어하는 것이 가능하다.As seen above, in the building according to the present invention, it is possible to extract and monitor the location of the robot using various infrastructures provided in the building. Furthermore, the cloud server 20 monitors the location of the robot, making it possible to efficiently and accurately control the robot within the building.
한편, 도 12는 경량화된 로봇을 제어하는 로봇 제어 시스템 및 방법을 설명하기 위한 개념도이다. 본 발명에서 로봇 제어 시스템은, "서버", "로봇 제어 서버" "클라우드 서버" 또는 "브레인리스 서버"로도 명명 가능하다. 이러한 서버들은, 로봇 제어 시스템의 기능을 모두 수행할 수 있다.Meanwhile, Figure 12 is a conceptual diagram for explaining a robot control system and method for controlling a lightweight robot. In the present invention, the robot control system may also be named “server,” “robot control server,” “cloud server,” or “brainless server.” These servers can perform all functions of the robot control system.
도 12의 (b)에 도시된 것과 같이, 본 발명은 로봇(R)에서 임무를 수행하기 위한 다양한 기능("Function 1 내지 3")의 처리를 로봇 제어 시스템에서 수행하여, 복수의 로봇(R1, R2, R3)에 대한 원격 제어를 수행하는 제어 시스템(1300) 및 방법에 관한 것이다. As shown in (b) of FIG. 12, the present invention performs processing of various functions (“Function 1 to 3”) for performing tasks in the robot (R) in the robot control system, so that a plurality of robots (R1) , R2, and R3) and a control system 1300 that performs remote control.
여기에서 "기능"은, 로봇의 작업, 동작, 조작 또는 이들의 일부를 의미하는 것으로, 로봇(R)에 할당된 임무 또는 로봇(R)의 상황에 따라 다양할 수 있다. Here, “function” refers to the task, movement, operation, or part of the robot, and may vary depending on the task assigned to the robot (R) or the situation of the robot (R).
예를 들어, 로봇(R)에 할당된 임무가 "배송"인 경우, 로봇(R)의 기능은 "주행", "오브젝트 전달 모션(motion)"이 로봇(R)의 기능에 해당할 수 있다. For example, if the task assigned to the robot (R) is “delivery”, the function of the robot (R) may be “driving”, and “object delivery motion” may correspond to the function of the robot (R). .
그리고, "주행"기능에 필요한 "측위", "이동 계획", "경로 설정", "주행 모드 설정", "장애물 회피", "로봇(R)의 주행부 조작"등은, "주행" 기능에 대한 "로봇의 서브 기능"에 해당할 수 있다. In addition, "positioning", "movement planning", "route setting", "driving mode setting", "obstacle avoidance", and "operation of the moving part of the robot (R)" required for the "driving" function are performed in the "driving" function. It may correspond to a “robot’s sub-function”.
이와 같이, 본 발명에서 설명되는 로봇의 기능은 종류 및 범위가 매우 다양할 수 있다. 이에, 이하에서는 로봇(R)의 작업, 동작, 조작 또는 이들의 일부에 대한 종류 및 범위를 구분하지 않고, 이들을 모두 "기능", "로봇 기능" 또는 "단위 기능"으로 명명하여 설명하도록 한다. As such, the functions of the robot described in the present invention may be very diverse in type and scope. Accordingly, hereinafter, the type and scope of tasks, movements, operations, or parts thereof of the robot R will not be distinguished, and all of them will be described as “functions,” “robot functions,” or “unit functions.”
도 12의 (b)에 도시된 것과 같이, 본 발명에 따른 제어 시스템(1300)은, 다양한 기능(ex: "Function 1 내지 3")에 대한 데이터 처리를 직접 수행하여, 복수의 로봇(R1, R2, R3)을 원격으로 제어함으로써, 로봇(R)에 다양한 기능을 수행하기 위한 처리부(또는 연산부)가 없더라도, 로봇(R)에서 다양한 임무를 수행하도록 제어할 수 있다. As shown in (b) of FIG. 12, the control system 1300 according to the present invention directly performs data processing for various functions (ex: “Function 1 to 3”), and operates a plurality of robots (R1, By remotely controlling (R2, R3), the robot (R) can be controlled to perform various tasks even if the robot (R) does not have a processing unit (or calculation unit) to perform various functions.
본 발명에서 설명되는 "로봇(R)"은, 로봇(R) 내부 자체에 특정 기능을 위한 자원이 임베디드(embedded)되어 있지 않은 로봇(R)일 수 있으며, 이러한 특정 기능은 제어 시스템(1300)에서 수행되어, 수행된 결과 또는 수행된 결과에 따른 제어명령이 로봇(R)으로 전달될 수 있다. The “robot (R)” described in the present invention may be a robot (R) that does not have resources for a specific function embedded within the robot (R) itself, and this specific function is performed by the control system (1300) is performed, and a control command according to the performed result or the performed result may be transmitted to the robot (R).
즉, 본 발명에 따른 제어 시스템(1300) 에서는, 도 12의 (a)에 도시된 것과 같이, 로봇(R1, R2, R3) 각각의 내부에, 기능(ex: "Function 1 내지 3") 실행을 위한 자원(1210 내지, 1230)이 임베디드(embedded)되어 존재하지 않더라도, 로봇(R)에서 상기 자원이 임베디드 된 로봇(R)과 동일한 기능이 구현되도록 제어할 수 있다.That is, in the control system 1300 according to the present invention, as shown in (a) of FIG. 12, functions (ex: “Function 1 to 3”) are executed inside each of the robots (R1, R2, and R3). Even if the resources 1210 to 1230 are not embedded, the robot R can be controlled to implement the same functions as the robot R in which the resources are embedded.
따라서, 본 발명에서는 로봇(R)이, 로봇(R) 내부에 자원이 임베디드 된 특정 단위 기능에 한정되지 않고, 다양한 기능을 수행하도록 제어함으로써, 로봇(R)의 역할을 확장할 수 있다. Therefore, in the present invention, the role of the robot (R) can be expanded by controlling the robot (R) to perform various functions rather than being limited to a specific unit function with resources embedded within the robot (R).
나아가, 본 발명에 따른 제어 시스템(1300)은, 복수의 로봇(R1, R2, R3)을 제어함에 있어서, 복수의 로봇(R1, R2, R3)에 대한 기능 수행이, 동시적 및 한시적으로 이루어지도록 자원을 할당함으로써, 특정 로봇(R)에 종속되지 않고 유연한 데이터 처리가 이루어질 수 있다. Furthermore, in controlling a plurality of robots (R1, R2, R3), the control system 1300 according to the present invention performs functions for the plurality of robots (R1, R2, R3) simultaneously and temporarily. By allocating resources so that flexible data processing can be achieved without being dependent on a specific robot (R).
즉, 본 발명에 따른 제어 시스템(1300)은, 특정 자원에 종속적으로 자원을 할당하는 것이 아닌, 복수의 로봇(R1, R2, R3) 상황에 따라 기능을 동적으로 생성하고, 생성된 기능을 수행하기 위한 자원(ex: 리소스, 메모리 등)을 할당할 수 있다.In other words, the control system 1300 according to the present invention dynamically generates functions according to the situations of a plurality of robots (R1, R2, and R3) and performs the created functions, rather than allocating resources dependently on specific resources. You can allocate resources (ex: resources, memory, etc.) to do this.
본 발명에서 설명하는 "자원"은, 소프트웨어의 실행 및 작업을 위해 이용되는 컴퓨터 시스템, 운영 체제의 기구나 기능의 총칭으로 이해될 수 있다. 이러한 자원에는, 메모리 자원, 연산 자원, 타이머 자원, 제어 프로그램 자원 등을 포함할 수 있다. “Resources” described in the present invention can be understood as a general term for the mechanisms or functions of a computer system or operating system used for the execution and operation of software. These resources may include memory resources, computational resources, timer resources, control program resources, etc.
본 발명에서는, "자원"을, "컴퓨팅(computing) 자원"과 혼용하여 사용할 수 있다. 그리고, 본 발명에서는 설명의 편의를 위하여, "메모리 자원"을 예로 설명할 수 있으나, 이는 메모리 자원에 한정되지 않고 컴퓨팅 자원을 의미하는 것으로 이해됨은 당연하다. In the present invention, “resources” can be used interchangeably with “computing resources.” In the present invention, for convenience of explanation, “memory resources” may be used as an example, but this is naturally understood to mean computing resources and not limited to memory resources.
이하에서는 첨부된 도면과 함께, 동적 구조를 가지는 제어 시스템(1300)에 대해 보다 구체적으로 설명하도록 한다. 도 13은 본 발명에 따른 로봇 제어 시스템을 설명하기 위한 개념도이다. 도 14는 본 발명에 따른 로봇 제어 시스템의 확장을 설명하기 위한 개념도이고, 도 15는 본 발명에 따른 로봇 제어 방법을 설명하기 위한 흐름도이고, 도 16a, 도 16b, 도 16c, 도 16d및 도 16e는 로봇 제어를 위한 기능 관리를 설명하기 위한 개념도들이며, 도 17a 및 도 17b는 로봇의 주행 제어를 위한 기능 관리를 설명하기 위한 개념도들이다. Hereinafter, the control system 1300 having a dynamic structure will be described in more detail along with the attached drawings. Figure 13 is a conceptual diagram for explaining the robot control system according to the present invention. Figure 14 is a conceptual diagram for explaining the expansion of the robot control system according to the present invention, Figure 15 is a flow chart for explaining the robot control method according to the present invention, Figures 16a, 16b, 16c, 16d and 16e are conceptual diagrams for explaining function management for robot control, and FIGS. 17A and 17B are conceptual diagrams for explaining function management for robot travel control.
도 13에 도시된 것과 같이, 본 발명에 따른 제어 시스템(1300)은, 원격 어댑터부(1310), 기능 관리부(1320), 메시징부(또는 메시지부, 1330), 지도 정보 저장부(1340), 측위부(1350) 및 모션 플랜부(1360) 중 적어도 하나를 포함할 수 있다.As shown in FIG. 13, the control system 1300 according to the present invention includes a remote adapter unit 1310, a function management unit 1320, a messaging unit (or message unit, 1330), a map information storage unit 1340, It may include at least one of a positioning unit 1350 and a motion plan unit 1360.
한편, 도 14에 도시된 것과 같이, 본 발명에 따른 제어 시스템(1300')은, 실시간으로 로봇에 대한 제어를 수행하는 실시간 로봇 제어 시스템(1300a, ex: 엣지 서버) 및 데이터 기반으로 로봇에 대한 제어를 수행하는 데이터 기반 로봇 제어 시스템(1300b) 중 적어도 하나를 포함할 수 있다. Meanwhile, as shown in FIG. 14, the control system 1300' according to the present invention is a real-time robot control system (1300a, ex: edge server) that performs real-time control of the robot and data-based control of the robot. It may include at least one of the data-based robot control systems 1300b that perform control.
예를 들어, 실시간 로봇 제어 시스템(1300a)은, 엣지 서버(Edge Sever)이며, 데이터 기반 로봇 제어 시스템(1300b)은, 클라우드 서버(Cloud Sever)일 수 있다. For example, the real-time robot control system 1300a may be an edge server (Edge Sever), and the data-based robot control system 1300b may be a cloud server (Cloud Sever).
실시간 로봇 제어 시스템(1300a) 및 데이터 기반 로봇 제어 시스템(1300b) 각각에서는, 이하에서 설명하는 구성들에 의해 로봇에 대한 제어를 수행할 수 있다. 이하에서는 설명의 편의를 위하여, 실시간 로봇 제어 시스템(1300a) 및 데이터 기반 로봇 제어 시스템(1300b)를 구분하지 않고, 도 13과 함께 본 발명에 따른 제어 시스템(1300)에 대해 설명하도록 한다. In each of the real-time robot control system 1300a and the data-based robot control system 1300b, control of the robot can be performed using the configurations described below. Hereinafter, for convenience of explanation, the real-time robot control system 1300a and the data-based robot control system 1300b will not be distinguished, and the control system 1300 according to the present invention will be described with reference to FIG. 13.
원격 어댑터부(1310)는, 복수의 로봇(R1, R2, R3) 중 적어도 하나와 통신을 수행하는 것으로서, 복수의 원격 어댑터(remote adapter, 1311, 1312, 1313)를 포함할 수 있다. The remote adapter unit 1310 communicates with at least one of the plurality of robots R1, R2, and R3, and may include a plurality of remote adapters 1311, 1312, and 1313.
복수의 원격 어댑터(1311, 1312, 1313)는 복수의 로봇(R1, R2, R3)과 일대일 매칭되도록 구성되거나, 상황에 따라, 랜덤하게 복수의 로봇(R1, R2, R3) 중 적어도 하나와 통신적으로 연결될 수 있다. The plurality of remote adapters 1311, 1312, and 1313 are configured to be one-to-one matched with the plurality of robots (R1, R2, and R3), or randomly communicate with at least one of the plurality of robots (R1, R2, and R3) depending on the situation. It can be connected negatively.
복수의 원격 어댑터(1311, 1312, 1313) 각각은, 통신 연결된 로봇(R)에 할당된 임무를 수행하기 위하여, 상기 로봇(R)에서 요구되는 기능에 따라 상기 로봇(R)을 제어하기 위한 일련의 절차를 수행할 수 있다. Each of the plurality of remote adapters 1311, 1312, and 1313 is a series for controlling the robot (R) according to the functions required by the robot (R) in order to perform the mission assigned to the robot (R) connected to communication. The procedure can be performed.
본 발명에서, 복수의 원격 어댑터(1311, 1312, 1313) 각각은, 통신적으로 연결된 로봇(R)이, 로봇(R)에 할당된 임무를 수행하도록 제어하는 조율자 역할을 수행할 수 있다. In the present invention, each of the plurality of remote adapters 1311, 1312, and 1313 may function as a coordinator to control the communicationally connected robot R to perform a task assigned to the robot R.
이하에서는, 설명의 편의를 위하여, 제1 원격 어댑터(1311)가, 통신적으로 연결된 제1 로봇(R1)이, 제1 로봇(R)에 할당된 임무를 수행하도록, 제1 로봇(R)을 제어하기 위하여 수행하는 일련의 절차를 예로 들어 설명하도록 한다. Hereinafter, for convenience of explanation, the first remote adapter 1311 is connected to the first robot (R) so that the first robot (R1) is communicatively connected to perform the task assigned to the first robot (R). A series of procedures performed to control will be explained using an example.
본 발명에서, 제1 원격 어댑터(1311) 및 제1 로봇(R1)을 예로 들어 설명하는 내용들은, 복수의 다른 원격 어댑터 및 상기 복수의 다른 원격 어댑터와 통신적으로 연결되는 로봇에 적용 가능할 수 있다. 그리고, 제1 원격 어댑터(1311) 용어는, "원격 어댑터"로 혼용하여 사용 가능하며, "제1 로봇"의 용어는, 로봇으로 혼용하여 사용 가능함은 물론이다. In the present invention, the contents described using the first remote adapter 1311 and the first robot R1 as an example may be applicable to a plurality of other remote adapters and a robot communicatively connected to the plurality of other remote adapters. . And, of course, the term "first remote adapter 1311" can be used interchangeably with "remote adapter", and the term "first robot" can be used interchangeably with robot.
본 발명에서는, 로봇에 구비된 로컬 어댑터(local adapter)와 원격 어댑터(remote adapter)가 통신적으로 연결되는 과정이 진행될 수 있다(S1510, 도 15 참조). 제1 원격 어댑터(1311)는, 통신적으로 연결된 제1 로봇(R1)으로부터 제1 로봇(R1)의 로봇 데이터를 수신할 수 있다.In the present invention, a process in which a local adapter and a remote adapter provided in the robot are communicatively connected can be performed (S1510, see FIG. 15). The first remote adapter 1311 may receive robot data of the first robot R1 from the first robot R1 that is communicatively connected to it.
여기에서, "로봇 데이터"는, 로봇(R)과 관련된 다양한 정보로 이해될 수 있다. 예를 들어, 로봇 데이터는, i) 로봇의 식별 정보(로봇의 ID, 시리얼 넘버, 로봇에 할당된 임무 정보 등), ii) 로봇의 상태 정보(ex: 배터리 상태 정보, 구동 상태 정보 등) 및 iii) 로봇에 구비된 센싱 모듈(ex: 카메라)에서 센싱(또는 수집)된 센싱 정보(ex: 영상 정보) 중 적어도 하나를 포함할 수 있다. Here, “robot data” can be understood as various information related to the robot (R). For example, robot data includes i) robot identification information (robot ID, serial number, mission information assigned to the robot, etc.), ii) robot status information (ex: battery status information, driving status information, etc.), and iii) It may include at least one of sensing information (ex: image information) sensed (or collected) by a sensing module (ex: camera) provided in the robot.
제1 원격 어댑터(1311)는, 제1 로봇(R1)에 구비된 로컬 어댑터(local adapter , A1)로부터 로봇 데이터를 수신하거나, 링크부(도 13에서 도면부호 1370 참조)를 통해 로봇 데이터를 수신할 수 있다. The first remote adapter 1311 receives robot data from a local adapter (A1) provided in the first robot (R1), or receives robot data through a link unit (see reference numeral 1370 in FIG. 13). can do.
여기에서, 링크부(1370)는, 제1 원격 어댑터(1311)와, 제1 로봇(R1)을 통신적으로 연결하여 정보(데이터)를 전달하는 통로 역할을 수행하는 것으로 이해될 수 있다. Here, the link unit 1370 may be understood as serving as a conduit for communicating information (data) by connecting the first remote adapter 1311 and the first robot R1.
링크부(1370)는, 제1 원격 어댑터(1311)와 통신적으로 연결된 제1 로봇(R1)의 로컬 어댑터(A1)로부터 제1 로봇(R1)의 로봇 데이터를 수신하면, 제1 로봇(R1)의 로봇 데이터에 포함된 정보(ex: 식별 정보)에 근거하여, 복수의 원격 어댑터(1311, 1312, 1313) 중 제1 원격 어댑터(1311)로 제1 로봇(R1)의 로봇 데이터를 전송(전달)할 수 있다. When the link unit 1370 receives robot data of the first robot (R1) from the local adapter (A1) of the first robot (R1) that is communicatively connected to the first remote adapter (1311), the first robot (R1) ) Based on the information (ex: identification information) included in the robot data, the robot data of the first robot (R1) is transmitted to the first remote adapter 1311 among the plurality of remote adapters 1311, 1312, and 1313 ( delivery) can be done.
나아가, 링크부(1370)는, 제1 원격 어댑터(1311)로부터 로봇을 제어하기 위한 로봇 제어 정보를 수신하면, 수신된 로봇 제어 정보에 근거하여, 복수의 로봇(R1, R2, R3) 중 어느 하나의 로컬 어댑터로 상기 로봇 제어 정보를 전송(전달)할 수 있다. Furthermore, when the link unit 1370 receives robot control information for controlling a robot from the first remote adapter 1311, the link unit 1370 selects one of the plurality of robots (R1, R2, and R3) based on the received robot control information. The robot control information can be transmitted (delivered) through one local adapter.
이러한 링크부(1370)에는, 복수의 원격 어댑터(1311, 1312, 1313) 중 어느 하나와, 복수의 로봇(R1, R2, R3) 중 어느 하나를 통신적으로 연결하기 위한 참조 정보(또는 규칙)에 근거하여, 정보(데이터)를 전송(전달)할 수 있다. This link unit 1370 includes reference information (or rules) for communicatively connecting any one of the plurality of remote adapters 1311, 1312, and 1313 and any one of the plurality of robots (R1, R2, and R3). Based on this, information (data) can be transmitted (delivered).
구체적으로, 링크부(1370)는, 복수의 로봇들(R1, R2, R3) 각각에 구비된 로컬 어댑터들(A1, A2, A3)과 통신적으로 연결될 수 있다, Specifically, the link unit 1370 may be communicatively connected to local adapters (A1, A2, A3) provided in each of the plurality of robots (R1, R2, and R3).
링크부(1370)는, 복수의 로봇들(R1, R2, R3) 각각에 구비된 로컬 어댑터들(A1, A2, A3)로부터 수신되는 로봇 데이터 중, 특정 로봇 데이터를, 특정 로봇의 로컬 어댑터와 연결된 특정 원격 어댑터로 전달할 수 있다. The link unit 1370 connects specific robot data to the local adapter of the specific robot among the robot data received from the local adapters (A1, A2, A3) provided in each of the plurality of robots (R1, R2, R3). It can be forwarded to a specific connected remote adapter.
이하에서는, 설명의 편의를 위하여, 제1 원격 어댑터(1311)와 제1 로봇(R1) 사이에서 정보 전송이 이루어지는 것으로 설명하겠으나, 이는 링크부(1370)를 통해 이루어질 수 있다. Hereinafter, for convenience of explanation, it will be described that information is transmitted between the first remote adapter 1311 and the first robot R1, but this may be accomplished through the link unit 1370.
한편, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터에 근거하여, 제1 로봇(R1)에 할당된 임무를 수행하기 위하여, 제1 로봇(R1)에서 요구되는 원격 기능을 특정할 수 있다. Meanwhile, the first remote adapter 1311 provides remote functions required by the first robot (R1) in order to perform the mission assigned to the first robot (R1) based on the robot data of the first robot (R1). can be specified.
제1 원격 어댑터(1311)는, 제1 로봇(R1)에 할당된 임무가 서로 다른 경우, 제1 로봇(R1)에서 요구되는 원격 기능을 서로 다르게 특정할 수 있다. When the tasks assigned to the first robot R1 are different, the first remote adapter 1311 may specify different remote functions required for the first robot R1.
구체적으로, 제1 원격 어댑터(1311)는, 제1 로봇(R1)에 할당된 임무가 "오브젝트 배송"인 경우, 오브젝트 배송을 위해 요구되는 기능을 원격 기능으로 특정할 수 있다. Specifically, when the mission assigned to the first robot R1 is “object delivery,” the first remote adapter 1311 may specify the function required for object delivery as a remote function.
반면에, 제1 원격 어댑터(1311)는, 제1 로봇(R1)에 할당된 임무가, "음식 서빙"인 경우, 음식 서빙을 위해 요구되는 기능을 원격 기능으로 특정할 수 있다. On the other hand, when the task assigned to the first robot R1 is “food serving,” the first remote adapter 1311 may specify the function required for serving food as a remote function.
나아가, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터가 서로 다른 경우, 제1 로봇(R1)에서 요구되는 원격 기능을 서로 다르게 특정할 수 있다. Furthermore, when the robot data of the first robot R1 is different, the first remote adapter 1311 may specify remote functions required for the first robot R1 differently.
구체적으로, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터에 "좁은 복도가 촬영된 영상 정보"가 포함된 경우, "좁은 복도"에서의 주행에 필요한 기능을 원격 기능으로 특정할 수 있다.Specifically, when the robot data of the first robot (R1) includes “image information in which a narrow hallway was captured,” the first remote adapter 1311 provides functions necessary for driving in a “narrow hallway” as a remote function. It can be specified.
이와 달리, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터, "넓은 공간(로비, Lobby)이 촬영된 영상 정보"가 포함된 경우, "넓은 공간"에서의 주행에 필요한 기능을 원격 기능으로 특정할 수 있다. In contrast, the first remote adapter 1311 is necessary for driving in a “large space” when the robot data of the first robot R1 includes “image information in which a large space (lobby) is captured.” A function can be specified as a remote function.
즉, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터에 근거하여, 서로 다른 주행 모드에 각각 대응되는 복수의 원격 기능 중 적어도 하나를, 제1 로봇(R1)에 할당된 임무를 수행하기 위해 요구되는 원격 기능으로 특정할 수 있다. 예를 들어, 도 16a에 도시된 것과 같이, 제1 원격 어댑터(1311)는, 제1 원격 기능(F1) 및 제2 원격 기능(F2)을, 제1 로봇(R1)에 할당된 임무를 수행하기 위하 요구되는 원격 기능으로 특정할 수 있다. That is, the first remote adapter 1311 is assigned to the first robot (R1) at least one of a plurality of remote functions corresponding to different driving modes, based on the robot data of the first robot (R1). It can be specified as a remote function required to perform the mission. For example, as shown in FIG. 16A, the first remote adapter 1311 performs the first remote function (F1) and the second remote function (F2) and tasks assigned to the first robot (R1). It can be specified by the remote function required to do so.
한편, 제1 원격 어댑터(1311)는, 데이터베이스에 미리 정의되어 존재하는 매칭 정보(또는 참조 정보)를 참조하여, 복수의 원격 기능 중 제1 로봇(R1)의 로봇 데이터에 대응되는 적어도 하나의 원격 기능을 특정할 수 있다. Meanwhile, the first remote adapter 1311 refers to matching information (or reference information) predefined in the database and performs at least one remote function corresponding to robot data of the first robot R1 among a plurality of remote functions. Functions can be specified.
데이터베이스에 존재하는 매칭 정보에는, 제1 로봇(R1)에 할당된 임무 및 로봇 데이터 별로, 서로 다른 원격 기능이 매칭되어 존재할 수 있다. In the matching information existing in the database, different remote functions may be matched for each mission and robot data assigned to the first robot R1.
예를 들어, 매칭 정보에는, 제1 로봇(R1)에 할당된 임무가 "오브젝트 배송"인 경우, 복수의 로봇 데이터 별로, "오브젝트 배송"을 수행하기 위하여 요구되는 원격 기능이 매칭되어존재할 수 있다. For example, in the matching information, if the task assigned to the first robot (R1) is “object delivery,” the remote functions required to perform “object delivery” may be matched for each of the plurality of robot data. .
다른 예를 들어, 매칭 정보에는, 제1 로봇(R1)에 할당된 임무가 "음식 서빙"인 경우, 복수의 로봇 데이터 별로, "음식 서빙"을 수행하기 위하여 요구되는 원격 기능이 매칭되어 존재할 수 있다. For another example, in the matching information, if the task assigned to the first robot (R1) is “food serving,” remote functions required to perform “food serving” may be matched for each of the plurality of robot data. there is.
한편, 원격 어댑터에서, 로봇에 필요한 기능을 특정하는 역할은 원격 어댑터 자체가 아닌, 본 발명에 따른 제어 시스템(1300)에 의해서 이루어지거나, 제어 시스템(1300)에 포함된 제어부(미도시됨)에 의해서 이루어질 수 있음은 물론이다.Meanwhile, in the remote adapter, the role of specifying the functions required for the robot is not performed by the remote adapter itself, but by the control system 1300 according to the present invention, or by a control unit (not shown) included in the control system 1300. Of course, this can be accomplished.
제1 원격 어댑터(1311)는, 특정된 원격 기능이 제1 로봇(R1)에 할당되도록, 기능 관리부(도 13에서 도면부호 1320 참조)에 특정된 원격 기능을 로봇에 할당하도록 하는 원격 기능 할당 요청을 전송할 수 있다. The first remote adapter 1311 requests a remote function assignment to assign a remote function specified to the function management unit (see reference numeral 1320 in FIG. 13) to the robot so that the specified remote function is assigned to the first robot R1. can be transmitted.
이 경우, 제1 원격 어댑터(1311)에서 특정된 원격 기능이 복수인 경우, 제1 원격 어댑터(1311)는, 기능 관리부(1320)에 복수의 원격 기능(도 16a에서 도면부호 F1 및 F2 참조) 각각을, 제1 로봇(R1)에 할당하도록 하는 원격 기능 할당 요청을 전송할 수 있다. In this case, when there are multiple remote functions specified in the first remote adapter 1311, the first remote adapter 1311 provides a plurality of remote functions to the function management unit 1320 (see reference numerals F1 and F2 in FIG. 16A). A remote function allocation request may be transmitted to assign each to the first robot R1.
나아가, 제1 원격 어댑터(1311)는 원격 기능이 요구되는 시점에 대응하여, 원격 기능의 할당을 기능 관리부(1320)에 요청할 수 있다. Furthermore, the first remote adapter 1311 may request the function management unit 1320 to allocate a remote function in response to a time when a remote function is required.
제1 원격 기능(F1) 및 제2 원격 기능(F2) 각각은, 서로 다른 제1 시점 및 제2 시점에 요구될 수 있다. Each of the first remote function (F1) and the second remote function (F2) may be required at different first and second times.
제1 원격 어댑터(1311)는, 제1 시점에 대응하여, 제1 원격 기능의 할당을 상기 기능 관리부(1320)에 요청할 수 있다. 그리고, 제1 원격 어댑터(1311)는 제2 시점에 대응하여, 제2 원격 기능의 할당을 기능 관리부(1320)에 요청할 수 있다. The first remote adapter 1311 may request the function management unit 1320 to assign a first remote function in response to a first time point. Additionally, the first remote adapter 1311 may request the function management unit 1320 to assign a second remote function in response to the second time point.
이 경우, 제2 시점은, 제1 원격 기능에 대응되는 기능(ex: 주행)이 종료되는 시점에 해당할 수 있다. In this case, the second time may correspond to the time when the function (ex: driving) corresponding to the first remote function ends.
제1 원격 어댑터(1311)는, 제2 시점에 대응하여, 로봇에서 제1 원격 기능에 대응되는 기능(ex: 주행)이 종료되는 경우, 기능 관리부(1320)에, 제2 원격 기능의 할당과 함께, 제1 원격 기능의 할당에 대한 해제를 요청할 수 있다. In response to the second time point, the first remote adapter 1311 assigns the second remote function to the function management unit 1320 when the function (ex: driving) corresponding to the first remote function in the robot is terminated. Together, it is possible to request release of the allocation of the first remote function.
이와 같이, 제1 원격 어댑터(1311)는 제1 로봇(R1)에서 원격 기능이 필요한 적절한 시점에 대응되도록 기능 관리부(1320)에 원격 기능 할당을 요청함으로써, 제1 로봇(R1)에 대해 자원이 효율적으로 분배되도록 함은 물론, 제1 로봇(R1)에 필요한 기능이 유기적으로 할당되도록 할 수 있다.In this way, the first remote adapter 1311 requests the function management unit 1320 to allocate a remote function to correspond to an appropriate time when the remote function is needed in the first robot (R1), thereby saving resources for the first robot (R1). In addition to efficient distribution, it is possible to ensure that the functions required for the first robot (R1) are organically assigned.
한편, 본 발명에서는, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 과정이 진행될 수 있다(S1520, 도 15 참조). Meanwhile, in the present invention, a process of assigning a remote function required by the robot to the robot may be performed based on a request from the remote adapter (S1520, see FIG. 15).
기능 관리부(1320)는, 제1 원격 어댑터(1311)와 연결되고, 제1 원격 어댑터(1311)의 요청에 근거하여, 제1 로봇에서 요구되는 원격 기능을 제1 로봇(R1)에 할당하는 역할을 수행할 수 있다. The function management unit 1320 is connected to the first remote adapter 1311 and serves to assign remote functions required by the first robot to the first robot (R1) based on the request of the first remote adapter 1311. can be performed.
구체적으로, 기능 관리부(1320)는, 제1 원격 어댑터(1311)로부터 수신된 원격 기능 할당 요청에 근거하여, 특정된 원격 기능이 제1 로봇(R1)에 할당되도록, 원격 기능을 제어할 수 있다. Specifically, the function management unit 1320 may control the remote function so that the specified remote function is assigned to the first robot R1 based on the remote function allocation request received from the first remote adapter 1311. .
본 발명에서, "원격 기능을 제1 로봇에 할당한다"는 것은, 원격 기능에서, 제1 로봇과 관련된 데이터 처리를 수행할 수 있도록, 자원(메모리 또는 리소스)을, 할당하는 것으로 이해할 수 있다. In the present invention, “assigning a remote function to the first robot” can be understood as allocating resources (memory or resources) so that data processing related to the first robot can be performed in the remote function.
그리고, "원격 기능"은, 해당 원격 기능을 위한 데이터 처리를 수행하는 애플리케이션(application)으로 이해되어질 수 있으며, 이는 프로세서(processor) 또는 CPU(central processing unit)에 의해 처리될 수 있다. 본 발명에서는 "원격 기능"을 "원격 기능부"와 혼용되어 명명할 수 있다. And, the “remote function” can be understood as an application that performs data processing for the remote function, which may be processed by a processor or a central processing unit (CPU). In the present invention, “remote function” can be used interchangeably with “remote function unit.”
한편, 기능 관리부(1320)는, 제1 원격 어댑터(1311)로부터 복수의 원격 기능 할당 요청을 수신한 경우, 복수의 원격 기능 각각에서 제1 로봇(R1)과 관련된 데이터 처리를 수행할 수 있도록, 자원을 할당할 수 있다. Meanwhile, the function management unit 1320, when receiving a plurality of remote function allocation requests from the first remote adapter 1311, can perform data processing related to the first robot (R1) in each of the plurality of remote functions, Resources can be allocated.
예를 들어, 도 16a에 도시된 것과 같이, 기능 관리부(1320)는, 제1 원격 어댑터(1311)의 원격 기능 할당 요청에 근거하여, 제1 로봇(R1)에 제1 원격 기능(F1)과 관련된 자원(1321) 및 제2 원격 기능(F2)과 관련된 자원(1322)를 각각 할당할 수 있다. For example, as shown in FIG. 16A, the function management unit 1320 provides the first remote function (F1) and the first remote function (F1) to the first robot (R1) based on the remote function allocation request of the first remote adapter (1311). A related resource 1321 and a resource 1322 related to the second remote function (F2) may be allocated, respectively.
한편, 본 발명에서는, 상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하는 과정이 진행될 수 있다(S1530, 도 15 참조). Meanwhile, in the present invention, a process of transmitting robot data received from the robot to the remote function may be performed (S1530, see FIG. 15).
제1 원격 어댑터(1311)는, 기능 관리부(1320)에 의해, 제1 로봇(R1)에 원격 기능이 할당되는 것에 근거하여, 상기 원격 기능에 제1 로봇(R1)의 로봇 데이터를 전달할 수 있다. The first remote adapter 1311 may transmit robot data of the first robot R1 to the remote function based on the remote function being assigned to the first robot R1 by the function management unit 1320. .
이 경우, 제1 원격 어댑터(1311)는, 메시징부(1330)를 통해 원격 기능에 제1 로봇(R1)의 로봇 데이터를 전달할 수 있다. In this case, the first remote adapter 1311 may transmit robot data of the first robot R1 to the remote function through the messaging unit 1330.
메시징부(1330)는, 제1 원격 어댑터(1311) 및 원격 기능과 연결되는 것으로, 제1 원격 어댑터(1311)와 원격 기능을 연결하는 통로 역할을 수행할 수 있다. The messaging unit 1330 is connected to the first remote adapter 1311 and the remote function, and may serve as a passage connecting the first remote adapter 1311 and the remote function.
메시징부(1330)는 제1 원격 어댑터(1311)로부터 제1 로봇(R1)의 로봇 데이터를 수신하면, 제1 로봇(R1)에 할당된 원격 기능으로, 제1 로봇(R1)의 로봇 데이터를 전송(전달)할 수 있다. When the messaging unit 1330 receives robot data of the first robot (R1) from the first remote adapter 1311, the messaging unit 1330 transmits the robot data of the first robot (R1) using the remote function assigned to the first robot (R1). It can be transmitted (delivered).
메시징부(1330)는, 제1 로봇(R1)에 복수의 원격 기능(F1, F2)이 할당된 경우, 제1 로봇(R1)의 로봇 데이터를 복수의 원격 기능(F1, F2) 각각에 전송(전달)할 수 있다(도 16a 참조). When a plurality of remote functions (F1, F2) are assigned to the first robot (R1), the messaging unit 1330 transmits robot data of the first robot (R1) to each of the plurality of remote functions (F1, F2). (transfer) can be performed (see Figure 16a).
한편, 본 발명에서는, 상기 원격 기능에서 상기 로봇 데이터를 이용하여 로봇 제어 정보를 생성하는 과정이 진행될 수 있다(S1540, 도 15 참조). Meanwhile, in the present invention, a process of generating robot control information using the robot data in the remote function may be performed (S1540, see FIG. 15).
원격 기능에서는, 제1 로봇(R1)의 로봇 데이터를 이용하여, 원격 기능에 따른 데이터 처리를 수행하여, 데이터 처리에 따른 로봇 제어 정보를 생성(산출)할 수 있다. In the remote function, data processing according to the remote function may be performed using robot data of the first robot R1, and robot control information according to the data processing may be generated (calculated).
이 때, 원격 기능에서 생성되는 로봇 제어 정보는, 제1 로봇(R1)이 원격 기능에 대응하는 기능을 수행하도록 하는 로봇 제어 정보(제어 명령)으로 이해할 수 있다. At this time, the robot control information generated from the remote function can be understood as robot control information (control command) that causes the first robot R1 to perform a function corresponding to the remote function.
그리고, 제1 로봇(R1)에 복수의 원격 기능이 할당된 경우, 복수의 원격 기능 각각에서는, 각각의 원격 기능에 따른 데이터 처리를 수행하여, 로봇 제어 정보를 생성(산출)할 수 있다.Additionally, when a plurality of remote functions are assigned to the first robot R1, data processing according to each remote function may be performed in each of the plurality of remote functions to generate (calculate) robot control information.
예를 들어, 도 16a에 도시된 것과 같이, 제1 로봇(R1)에 제1 원격 기능(F1) 및 제2 원격 기능(F2)이 각각 할당된 경우, 제1 원격 기능(F1)에서는 제1 원격 기능에 따른 데이터 처리를 수행하여 제1 로봇 제어 정보를 생성하고, 제2 원격 기능(F2)에서는 제2 원격 기능(F2)에 따른 데이터 처리를 수행하여 제2 로봇 제어 정보를 생성할 수 있다. For example, as shown in FIG. 16A, when the first remote function (F1) and the second remote function (F2) are respectively assigned to the first robot (R1), the first remote function (F1) First robot control information can be generated by performing data processing according to the remote function, and in the second remote function (F2), data processing according to the second remote function (F2) can be performed to generate second robot control information. .
한편, 본 발명에서는, 상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 과정이 진행될 수 있다(S1550, 도 15 참조). Meanwhile, in the present invention, a process of transmitting robot control information processed in the remote function to the local adapter based on the robot data may be performed (S1550, see FIG. 15).
제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터에 기반하여, 원격 기능에서 처리된 로봇 제어 정보를, 제1 로봇(R1)에 구비된 로컬 어댑터(A1)로 전달(전송)할 수 있다. The first remote adapter 1311 transmits (transmits) robot control information processed in the remote function to the local adapter A1 provided in the first robot R1, based on the robot data of the first robot R1. )can do.
원격 기능에서는, 처리된 로봇 제어 정보를 메시징부(1330)로 전달할 수 있다. 메시징부(1330)는, 원격 기능으로부터 전달된 로봇 제어 정보를, 원격 기능이 할당된 제1 로봇(R1)과 통신적으로 연결된 제1 원격 어댑터(1311)로 전달할 수 있다. In the remote function, processed robot control information can be transmitted to the messaging unit 1330. The messaging unit 1330 may transmit the robot control information transmitted from the remote function to the first remote adapter 1311 that is communicatively connected to the first robot (R1) to which the remote function is assigned.
제1 원격 어댑터(1311)는, 상기 메시징부(1330)를 통해, 원격 기능에서 처리된 로봇 제어 정보가 전달되면, 상기 로봇 제어 정보를 제1 로봇(R1)에 구비된 로컬 어댑터(A1)로 전달할 수 있다. When the robot control information processed in the remote function is transmitted through the messaging unit 1330, the first remote adapter 1311 sends the robot control information to the local adapter A1 provided in the first robot R1. It can be delivered.
이 경우, 제1 원격 어댑터(1311)는, 앞서 설명한 링크부(도 13에서 도면부호 1370 참조)를 통해, 로봇 제어 정보를 제1 로봇(R1)에 구비된 로컬 어댑터(A1)로 전달할 수 있다. In this case, the first remote adapter 1311 can transmit robot control information to the local adapter (A1) provided in the first robot (R1) through the link unit (reference numeral 1370 in FIG. 13) described above. .
링크부(1370)는, 제1 원격 어댑터(1311)로부터 로봇 제어 정보를 전달받는 것에 근거하여, 제1 원격 어댑터(1311)와 통신적으로 연결된 제1 로봇(R1)의 로컬 어댑터(A1)로 로봇 제어 정보를 전송할 수 있다. The link unit 1370 is connected to the local adapter (A1) of the first robot (R1) that is communicatively connected to the first remote adapter (1311) based on receiving robot control information from the first remote adapter (1311). Robot control information can be transmitted.
이하에서는, 설명의 편의를 위하여, 제1 원격 어댑터(1311)에서 제1 로봇(R1)에 구비된 로컬 어댑터(A1)로, 로봇 제어 정보를 전달하는 것으로 설명하겠으나, 이는 링크부(1370)를 통해 이루어질 수 있음은 당연하다. Hereinafter, for convenience of explanation, it will be explained that robot control information is transmitted from the first remote adapter 1311 to the local adapter (A1) provided in the first robot (R1), but this uses the link unit (1370). It is natural that this can be achieved.
한편, 제1 로봇(R1)은, 제1 원격 어댑터(1311)로부터 로봇 제어 정보를 수신하면, 로봇 제어 정보에 따라 원격 기능을 수행할 수 있다. Meanwhile, when the first robot R1 receives robot control information from the first remote adapter 1311, it can perform a remote function according to the robot control information.
이와 같이, 제1 로봇(R1)은, 제1 로봇(R1) 내부에 자원이 임베디드 되지 않은 특정 기능까지 확장하여 수행할 수 있다. In this way, the first robot (R1) can expand and perform specific functions for which resources are not embedded within the first robot (R1).
한편, 본 발명에 따른 제어 시스템(1300)은, 건물을 주행하는 복수의 로봇(R1, R2, R3) 중 특정 로봇에 특정 원격 기능이 종속되지 않는 동적 구조로 이루어질 수 있다. Meanwhile, the control system 1300 according to the present invention may have a dynamic structure in which a specific remote function is not dependent on a specific robot among the plurality of robots (R1, R2, and R3) traveling in the building.
이를 위해, 본 발명에서의 원격 기능은, 건물에서 주행하는 로봇들의 주행을 제어하기 위한 기능에 대응될 수 있다. 그리고, 상기 원격 기능에서는, 상기 건물에서 주행하는 로봇들 중 어느 로봇이 원격 기능을 할당 받았는지에 따라, 서로 다른 로봇의 주행을 위한 로봇 제어 정보를 생성할 수 있다. To this end, the remote function in the present invention may correspond to a function for controlling the movement of robots running in a building. In addition, in the remote function, robot control information for the driving of different robots can be generated depending on which robot among the robots running in the building is assigned the remote function.
구체적으로, 제1 로봇(R1) 및 상기 제1 로봇(R1)과 다른 제2 로봇(R2) 각각은, 건물에서 주행(또는 할당된 임무 수행)하기 위해 원격 기능이 요구될 수 있다. Specifically, the first robot (R1) and the second robot (R2), which is different from the first robot (R1), may each require a remote function in order to drive (or perform assigned tasks) in the building.
제1 원격 어댑터(1311) 및 제2 원격 어댑터(1312) 각각은, 제1 로봇(R1) 및 제2 로봇(R2)에서 요구되는 원격 기능을 특정할 수 있다. 그리고, 제1 원격 어댑터(1311) 및 제2 원격 어댑터(1312) 각각은, 기능 관리부(1320)에 특정된 원격 기능의 할당을 요청할 수 있다. Each of the first remote adapter 1311 and the second remote adapter 1312 can specify remote functions required for the first robot (R1) and the second robot (R2). Additionally, each of the first remote adapter 1311 and the second remote adapter 1312 may request allocation of a specific remote function from the function management unit 1320.
기능 관리부(1320)는, 제1 원격 어댑터(1311) 및 제2 원격 어댑터(1312) 각각에서의 원격 기능 할당 요청에 근거하여, 제1 로봇(R1) 및 제2 로봇(R2) 각각에, 원격 기능을 할당할 수 있다. The function management unit 1320 provides remote functions to each of the first robot (R1) and the second robot (R2) based on the remote function allocation request from each of the first remote adapter 1311 and the second remote adapter 1312. Functions can be assigned.
도 16a에 도시된 것과 같이, 기능 관리부(1320)는, 제1 원격 어댑터(1311)의 요청에 근거하여, 원격 기능(F2)에서 제1 로봇(R1)을 위한 데이터 처리가 수행되도록, 제1 로봇(R1)에 원격 기능(F2)의 일부에 해당하는 제1 자원(1322)를 할당할 수 있다. As shown in FIG. 16A, the function management unit 1320 configures the first remote function F2 to perform data processing for the first robot R1 based on a request from the first remote adapter 1311. A first resource 1322 corresponding to a part of the remote function F2 may be allocated to the robot R1.
그리고, 도 16b에 도시된 것과 같이, 기능 관리부(1320)는, 제2 원격 어댑터(1312)의 요청에 근거하여, 원격 기능(F2)에서 제2 로봇(R2)을 위한 데이터 처리가 수행되도록, 제2 로봇(R2)에, 상기 제1 자원(1322)과는 다른, 원격 기능(F2)의 제2 자원(1323)을 할당할 수 있다. And, as shown in Figure 16b, the function management unit 1320, based on the request of the second remote adapter 1312, performs data processing for the second robot (R2) in the remote function (F2), A second resource 1323 of the remote function F2, which is different from the first resource 1322, may be assigned to the second robot R2.
원격 기능(F2)에서는, 제1 자원(1311)에 기반하여 원격 기능에 따른 데이터 처리를 수행하여, 제1 로봇(R1)이 원격 기능에 대응하는 기능을 수행하도록 하는 제1 로봇 제어 정보를 생성할 수 있다. In the remote function (F2), data processing according to the remote function is performed based on the first resource 1311 to generate first robot control information that allows the first robot (R1) to perform the function corresponding to the remote function. can do.
그리고, 원격 기능(F2)에서는, 제2 자원(1312)에 기반하여 원격 기능에 따른 데이터 처리를 수행하여, 제2 로봇(R2)이 원격 기능에 대응하는 기능을 수행하도록 하는 제2 로봇 제어 정보를 생성할 수 있다. And, in the remote function (F2), data processing according to the remote function is performed based on the second resource 1312, and second robot control information that allows the second robot (R2) to perform the function corresponding to the remote function can be created.
이 경우, 제1 로봇 제어 정보 및 제2 로봇 제어 정보는 서로 다른 정보를 포함할 수 있다. In this case, the first robot control information and the second robot control information may include different information.
한편, 기능 관리부(1320)는, 제1 로봇(R1) 및 제2 로봇(R2) 중 적어도 하나에서 원격 기능(F2)에 따른 동작이 종료된 경우, 제1 자원(1322) 및 제2 자원(1323) 중 상기 적어도 하나의 로봇에 할당된 자원이 다른 로봇에서 이용 가능하도록, 상기 적어도 하나의 로봇에 할당된 자원의 할당을 해제할 수 있다. Meanwhile, the function management unit 1320, when the operation according to the remote function (F2) is terminated in at least one of the first robot (R1) and the second robot (R2), the first resource 1322 and the second resource ( 1323), resources allocated to the at least one robot may be deallocated so that the resources allocated to the at least one robot can be used by other robots.
도 16c에 도시된 것과 같이, 기능 관리부(1320)는, 제2 로봇(R2)에서 원격 기능(F2)에 따른 동작이 종료된 경우, 제2 로봇(R2)에 할당된 제2 자원(1323)의 할당을 해제할 수 있다. As shown in Figure 16c, the function management unit 1320, when the operation according to the remote function (F2) in the second robot (R2) is terminated, the second resource 1323 allocated to the second robot (R2) can be deallocated.
여기에서, "자원의 할당을 해제한다"는 것은, 특정 로봇에 할당된 자원의 상태가, 더 이상 특정 로봇에 할당되지 않은 상태로 변경되는 것으로 이해할 수 있다. Here, “de-allocating resources” can be understood as changing the state of resources allocated to a specific robot to a state where they are no longer allocated to the specific robot.
그리고 도 16d에 도시된 것과 같이, 기능 관리부(1320)는 할당이 해제된 제2 자원을, 제2 로봇(R2)과는 다른 제3 로봇(R3)에 다시 할당할 수 있다. And as shown in FIG. 16D, the function management unit 1320 may reallocate the de-allocated second resource to a third robot (R3) different from the second robot (R2).
즉, 본 발명에 따른 제어 시스템(1300)은, 특정 로봇에 원격 기능의 자원을 한시적으로 할당함으로써, 특정 로봇에 원격 기능이 종속되지 않고, 복수의 로봇(R1, R2, R3)에서 동적으로 활용할 수 있도록 하는 방법을 제안하고 있다. In other words, the control system 1300 according to the present invention temporarily allocates remote function resources to a specific robot, so that the remote function is not dependent on a specific robot and can be used dynamically by a plurality of robots (R1, R2, and R3). We are suggesting a way to make it happen.
나아가, 본 발명에 따른 제어 시스템(1300)은, 원격 기능이 실행되지 않는 경우, 원격 기능에 할당된 자원을 삭제하고, 해당 자원이 다른 원격 기능의 실행에 이용되도록, 자원을 동적으로 관리할 수 있다. Furthermore, the control system 1300 according to the present invention can dynamically manage resources so that, when a remote function is not executed, the resources allocated to the remote function are deleted and the resource is used for the execution of another remote function. there is.
앞서 설명한 것과 같이, 본 발명에서 설명하는 "자원"은, 소프트웨어의 실행 및 작업을 위해 이용되는 컴퓨터 시스템, 운영 체제의 기구나 기능의 총칭으로 이해될 수 있다. 이러한 자원에는, 메모리 자원, 연산 자원, 타이머 자원, 제어 프로그램 자원 등을 포함할 수 있다. As described above, “resources” described in the present invention can be understood as a general term for the mechanisms or functions of a computer system or operating system used for the execution and operation of software. These resources may include memory resources, computational resources, timer resources, control program resources, etc.
본 발명에서는, "자원"을, "컴퓨팅(computing) 자원"과 혼용하여 사용할 수 있다. 그리고, 본 발명에서는 설명의 편의를 위하여, "메모리 자원"을 예로 설명할 수 있으나, 이는 메모리 자원에 한정되지 않고 컴퓨팅 자원을 의미하는 것으로 이해됨은 당연하다. In the present invention, “resources” can be used interchangeably with “computing resources.” In the present invention, for convenience of explanation, “memory resources” may be used as an example, but this is naturally understood to mean computing resources and not limited to memory resources.
도 16e에 도시된 것과 같이, 원격 기능(F2)에 대하여, 제1 자원(1322) 및 제2 자원(1323) 모두에 대한 할당 해제 요청이 수신되고, 상기 원격 기능에 다른 로봇에 대해 할당된 자원이 존재하지 않는 경우, 상기 원격 기능(F2)에 대한 자원(1600)을 삭제할 수 있다. As shown in FIG. 16E, for the remote function F2, a de-allocation request is received for both the first resource 1322 and the second resource 1323, and the resources allocated to the remote function for other robots are received. If it does not exist, the resource 1600 for the remote function (F2) can be deleted.
여기에서, "자원 삭제"는, 원격 기능에 따른 데이터 처리를 위해 할당된 자원을 반납하는 것으로, 예를 들어, 원격 기능에 기 할당된 메모리 공간 또는 연산 공간을 반납하는 것으로 이해할 수 있다. Here, “resource deletion” can be understood as returning resources allocated for data processing according to a remote function, for example, returning a memory space or computational space previously allocated to a remote function.
제1 원격 어댑터(1311)는, 통신적으로 연결된 제1 로봇(R)의 로컬 어댑터(A1)로부터, 제1 로봇(R1)의 로봇 데이터를 수신할 수 있다.The first remote adapter 1311 may receive robot data of the first robot (R1) from the local adapter (A1) of the first robot (R) to which the first robot (R) is communicatively connected.
여기에서, "로봇 데이터"는, 로봇(R)과 관련된 다양한 정보로 이해될 수 있다. 예를 들어, 로봇 데이터는, i) 로봇의 식별 정보(로봇의 ID, 시리얼 넘버, 로봇에 할당된 임무 정보 등), ii) 로봇의 상태 정보(ex: 배터리 상태 정보, 구동 상태 정보 등) 및 iii) 로봇에 구비된 센싱 모듈(ex: 카메라)에서 센싱(또는 수집)된 센싱 정보(ex: 영상 정보) 중 적어도 하나를 포함할 수 있다. Here, “robot data” can be understood as various information related to the robot (R). For example, robot data includes i) robot identification information (robot ID, serial number, mission information assigned to the robot, etc.), ii) robot status information (ex: battery status information, driving status information, etc.), and iii) It may include at least one of sensing information (ex: image information) sensed (or collected) by a sensing module (ex: camera) provided in the robot.
제1 원격 어댑터(1311)는, 수신된 제1 로봇(R)의 로봇 데이터에 근거하여, 제1 로봇(R1)에 할당된 임무를 수행하기 위하여 제1 로봇(R1)에서 요구되는 적어도 하나의 기능을 특정할 수 있다. The first remote adapter 1311 is configured to, based on the received robot data of the first robot R, at least one device required by the first robot R1 to perform the task assigned to the first robot R1. Functions can be specified.
예를 들어, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터에 근거하여, "배송" 임무를 위한 "측위" 기능, "이동 경로 설정"기능, "주행 모드 설정 기능"을, 제1 로봇(R1)에 대한 제어를 위해 필요한 원격 기능으로 특정할 수 있다.For example, the first remote adapter 1311 performs a “positioning” function, a “movement path setting” function, and a “driving mode setting function” for the “delivery” mission, based on the robot data of the first robot R1. can be specified as a remote function necessary for controlling the first robot (R1).
원격 기능은, 제1 로봇(R1)에 할당된 임무 및 제1 로봇(R1)의 로봇 데이터에 근거하여, 다양하게 특정될 수 있다. The remote function may be specified in various ways based on the mission assigned to the first robot R1 and the robot data of the first robot R1.
예를 들어, 제1 원격 어댑터(1311)에는, "배송"임무가 할당된 제1 로봇(R1)의 로봇 데이터에 근거하여, 제1 로봇(R1)이 주행(또는 위치)하는 공간 유형별로 서로 다른 주행 동작 기능을, 원격 기능으로 특정할 수 있다. For example, in the first remote adapter 1311, based on the robot data of the first robot R1 to which the “delivery” task is assigned, each type of space in which the first robot R1 runs (or is located) Different driving operation functions can be specified as remote functions.
구체적으로, 제1 원격 어댑터(1311)는, 제1 로봇(R1)이 주행하는 공간이 "제1 공간(넓은 공간, 예를 들어, 로비(lobby))"이면, 제1 주행 모드에 대응하는 기능(ex: 장애물 회피 기능)을, 원격 기능으로 특정할 수 있다. Specifically, if the space in which the first robot R1 travels is a “first space (large space, for example, lobby),” the first remote adapter 1311 corresponds to the first driving mode. A function (ex: obstacle avoidance function) can be specified as a remote function.
나아가, 제1 원격 어댑터(1311)는, 제1 로봇(R1)이 주행하는 공간이 "제2 공간(좁은 복도 공간)"이면, 제2 주행 모드에 대응하는 기능(ex: 회피 가동을 최소화 하고, 벽과 근접한 위치에서 벽을 따라 이동하는 주행 모드)을, 원격 기능으로 특정할 수 있다. Furthermore, if the space in which the first robot R1 travels is a “second space (narrow hallway space),” the first remote adapter 1311 provides functions corresponding to the second driving mode (ex: minimizing avoidance movement and , driving mode that moves along the wall in a position close to the wall) can be specified with a remote function.
나아가, 제1 원격 어댑터(1311)는, 제1 로봇(R1)이 주행하는 공간이 "제3 공간(건물 시설 공간(엘리베이터, 문(도어, door), 게이트(gate))"이면, 제3 주행 모드 기능(ex: 건물 시설 이용을 위해 정해진 동작에 따라 이동하는 주행 모드)를 원격 기능으로 특정할 수 있다. Furthermore, if the space in which the first robot R1 runs is a “third space (building facility space (elevator, door, gate)”, the first remote adapter 1311 Driving mode functions (ex: driving mode that moves according to a set motion to use building facilities) can be specified as a remote function.
제1 원격 어댑터(1311)는, 데이터베이스에 미리 정의되어 존재하는 매칭 정보를 참조하여, 제1 로봇(R1)의 로봇 데이터에 대응되는 기능을, 원격 기능으로 특정할 수 있다.The first remote adapter 1311 may specify a function corresponding to robot data of the first robot R1 as a remote function by referring to matching information predefined in a database.
데이터베이스에는, 복수의 로봇(R1, R2, R3) 각각에 대한 매칭 정보가 존재할 수 있다. 제1 원격 어댑터(1311)는, 데이터베이스로부터 제1 로봇(R1)의 매칭 정보를 참조하여, 제1 로봇의 특정 로봇 데이터에 대응되는 특정 기능을, 원격 기능으로 특정할 수 있다. In the database, matching information for each of a plurality of robots (R1, R2, and R3) may exist. The first remote adapter 1311 may refer to matching information of the first robot R1 from a database and specify a specific function corresponding to specific robot data of the first robot as a remote function.
나아가, 제1 원격 어댑터(1311)는, 특정된 기능에 해당하는 원격 기능이 제1 로봇(R)에 할당되도록, 기능 관리부(1320)에 원격 기능을 제1 로봇에 할당하도록 하는 요청을 전송할 수 있다. Furthermore, the first remote adapter 1311 may transmit a request to the function management unit 1320 to assign a remote function to the first robot so that the remote function corresponding to the specified function is assigned to the first robot (R). there is.
기능 관리부(1320)는, 제1 원격 어댑터(1311)로부터 수신된 원격 기능 할당 요청에 근거하여, 특정된 원격 기능을, 제1 로봇(R1)에 할당되도록 제어할 수 있다. The function management unit 1320 may control a specified remote function to be assigned to the first robot R1 based on a remote function allocation request received from the first remote adapter 1311.
구체적으로, 기능 관리부(1320)는, 특정된 원격 기능과 관련된 자원(리소스 또는 메모리)를, 제1 로봇(R1)에 할당할 수 있다. Specifically, the function management unit 1320 may allocate resources (resources or memory) related to a specified remote function to the first robot R1.
제1 원격 어댑터(1311)는, 특정된 원격 기능이 제1 로봇(R1)에 할당되는 것에 근거하여, 특정된 원격 기능과 연결(또는 연계)될 수 있다. The first remote adapter 1311 may be connected (or associated) with a specified remote function based on the specified remote function being assigned to the first robot R1.
나아가, 제1 원격 어댑터(1311)는, 제1 로봇(R)의 로봇 데이터에 기반하여 특정된 원격 기능과 관련된 로봇 제어 정보를 산출하도록, 제1 로봇(R1)의 로봇 데이터를 연결된 원격 기능으로 전달할 수 있다. Furthermore, the first remote adapter 1311 converts the robot data of the first robot (R1) into a connected remote function to calculate robot control information related to a specified remote function based on the robot data of the first robot (R). It can be delivered.
원격 기능에서는, 제1 원격 어댑터(1311)로부터 전달된 제1 로봇(R1)의 로봇 데이터에 기반하여, 원격 기능에 따른 데이터 처리를 수행할 수 있다. In the remote function, data processing according to the remote function may be performed based on robot data of the first robot R1 transmitted from the first remote adapter 1311.
그리고, 원격 기능에서는, 데이터 처리 수행을 통해, 제1 로봇(R1)에서 원격 기능에 해당하는 기능이 수행되도록 하는 로봇(R) 제어 명령을 산출할 수 있다. And, in the remote function, a robot (R) control command that allows the first robot (R1) to perform the function corresponding to the remote function can be calculated through data processing.
제1 원격 어댑터(1311)는, 원격 기능에서 제1 로봇(R1)의 로봇 데이터에 기반하여 산출된 로봇 제어 명령을, 제1 로봇(R)으로 제어 명령을 전송함으로써, 제1 로봇(R1)을 원격으로 제어할 수 있다. The first remote adapter 1311 transmits a robot control command calculated based on the robot data of the first robot R1 in the remote function to the first robot R, thereby controlling the first robot R1. can be controlled remotely.
이 경우, 제1 원격 어댑터(1311)는, 로봇 제어 명령을 제1 로봇(R1)의 제1 로컬 어댑터(A1)로 전송할 수 있다.In this case, the first remote adapter 1311 may transmit a robot control command to the first local adapter (A1) of the first robot (R1).
한편, 제1 원격 어댑터(1311)는 원격 기능과의 연결이 더 이상 요구되지 않는 경우, 기능 관리부(1320)에 대해 원격 기능과의 연결 해제를 요청할 수 있다. Meanwhile, when connection with the remote function is no longer required, the first remote adapter 1311 may request the function management unit 1320 to disconnect from the remote function.
기능 관리부(1320)는, 제1 원격 어댑터(1311)의 요청에 근거하여, 제1 로봇(R)에 할당된 원격 기능의 할당을 종료(또는 해제)할 수 있다. The function management unit 1320 may terminate (or release) the allocation of the remote function assigned to the first robot R based on a request from the first remote adapter 1311.
제1 원격 어댑터(1311)는, 제1 로봇(R)에 기 할당된 원격 기능의 할당이 해제(또는 종료)되는 것에 근거하여, 기 연결된 원격 기능과의 연결이 해제(또는 종료)될 수 있다. The first remote adapter 1311 may be disconnected (or terminated) from a previously connected remote function based on the allocation of a remote function previously assigned to the first robot (R) being released (or terminated). .
본 발명에서는, 제1 로봇(R)에 기 할당된 원격 기능의 할당이 종료되는 것에 근거하여, 제1 원격 어댑터(1311)와 원격 기능의 연결이 해제되었다고 설명할 수 있다. In the present invention, it can be explained that the connection between the first remote adapter 1311 and the remote function is released based on the termination of the allocation of the remote function previously assigned to the first robot (R).
한편, 복수의 원격 어댑터(1311, 1312, 1313) 각각은, 연결된 원격 기능에 대한 데이터 처리 결과기능 관리부(1320)에서 수행한 데이터 처리 결과에 근거하여, 매칭된 로봇(R1, R2, R3)을 제어하기 위한 제어 명령을 생성할 수 있다. Meanwhile, each of the plurality of remote adapters 1311, 1312, and 1313 uses the matched robots (R1, R2, and R3) based on the data processing results performed by the data processing result function management unit 1320 for the connected remote function. You can create control commands for control.
그리고, 복수의 원격 어댑터(1311, 1312, 1313) 각각은, 생성된 제어 명령을, 매칭된 로봇(R1, R2, R3)의 로컬 어댑터(A1, A2, A3)로 전송할 수 있다.And, each of the plurality of remote adapters 1311, 1312, and 1313 may transmit the generated control command to the local adapters A1, A2, and A3 of the matched robots R1, R2, and R3.
제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 정보에 근거하여 특정된 적어도 하나의 단위 기능에 대한 데이터 처리 수행 결과에 근거하여, 제1 로봇(R1)에 대한 제어 명령을 생성하여 제1 로봇(R1)의 제1 로컬 어댑터(A1)로 전송함으로써, 제1 로봇(R1)을 원격으로 제어할 수 있다. The first remote adapter 1311 generates a control command for the first robot (R1) based on a data processing result for at least one unit function specified based on robot information of the first robot (R1). By transmitting the data to the first local adapter (A1) of the first robot (R1), the first robot (R1) can be remotely controlled.
또한, 제2 원격 어댑터(2322)는, 제2 로봇(R2)의 로봇 정보에 근거하여 특정된 적어도 하나의 단위 기능에 대한 데이터 처리 수행 결과에 근거하여, 제2 로봇(R2)에 대한 제어 명령을 생성하여 제2 로봇(R2)의 제2 로컬 어댑터(A2)로 전송함으로써, 제2 로봇(R2)을 원격으로 제어할 수 있다. In addition, the second remote adapter 2322 provides a control command to the second robot (R2) based on a data processing result for at least one unit function specified based on robot information of the second robot (R2). By generating and transmitting to the second local adapter (A2) of the second robot (R2), the second robot (R2) can be remotely controlled.
예를 들어, 제1 원격 어댑터(1311)가, 제1 원격 기능(F1) 및 제2 원격 기능과 동적으로 연결되었다고 가정하자. 제1 원격 어댑터(1311)는, 제1 원격 기능(F1) 및 제2 원격 기능(F2)과 관련된 데이터 처리에 대응하는 제어 명령을, 통신적으로 연결된 제1 로봇(R1)으로 전송하여, 제1 로봇(R1)을 제어할 수 있다. 이 경우, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 제1 로컬 어댑터(A1)로 제어 명령을 전송할 수 있다. For example, assume that the first remote adapter 1311 is dynamically connected to the first remote function (F1) and the second remote function. The first remote adapter 1311 transmits a control command corresponding to data processing related to the first remote function (F1) and the second remote function (F2) to the first communicationally connected robot (R1), 1 The robot (R1) can be controlled. In this case, the first remote adapter 1311 may transmit a control command to the first local adapter A1 of the first robot R1.
다른 예를 들어, 제2 원격 어댑터(1312)가, 제2 원격 기능(F2) 및 제3 원격 기능(F3)과 동적으로 연결되었다고 가정하자. 제2 원격 어댑터(1312)는, 제2 원격 기능(F2) 및 제3 원격 기능(F3)과 관련된 데이터 처리에 대응하는 제어 명령을, 통신적으로 연결된 제2 로봇(R2)으로 전송할 수 있다. 이 경우, 제2 원격 어댑터(1312)는 제2 로봇(R2)의 제2 로컬 어댑터(A2)로 제어 명령을 전송할 수 있다. As another example, assume that the second remote adapter 1312 is dynamically connected to the second remote function (F2) and the third remote function (F3). The second remote adapter 1312 may transmit control commands corresponding to data processing related to the second remote function (F2) and the third remote function (F3) to the second robot (R2) that is communicatively connected. In this case, the second remote adapter 1312 may transmit a control command to the second local adapter A2 of the second robot R2.
즉, 복수의 원격 어댑터(1311, 1312, 1313) 각각은, 복수의 원격 어댑터(1311, 1312, 1313) 각각에 통시적으로 연결된 로봇(R1, R2, R3)을 제어하기 위한 기능의 조율(원격 기능 특정, 원격 기능 할당, 제어 명령 전송, 로봇과의 연동 및 해제)를 수행할 수 있다. That is, each of the plurality of remote adapters 1311, 1312, and 1313 coordinates functions (remote Function specification, remote function assignment, control command transmission, linkage with and release from robots) can be performed.
이하에서는 기능 관리부(1320)에서 자원을 동적으로 할당하는 방법에 대해 보다 구체적으로 설명하도록 한다. Hereinafter, a method for dynamically allocating resources in the function management unit 1320 will be described in more detail.
기능 관리부(1320)는 복수의 원격 어댑터(1311, 1312, 1313) 중 특정 어댑터에서 통신적으로 연결된 로봇(R)에 대한 제어를 위해 적어도 하나의 원격 기능이 특정된 것에 근거하여, 특정 어댑터에 통신적으로 연결된 특정 로봇(R)에 대해 특정된 원격 기능과 관련된 자원을 할당할 수 있다. The function management unit 1320 communicates with a specific adapter among the plurality of remote adapters 1311, 1312, and 1313, based on at least one remote function being specified to control the robot R that is communicatively connected to the specific adapter. Resources related to a specific remote function can be allocated to a specific connected robot (R).
그리고, 기능 관리부(1320)는, 특정 로봇(R)에 대해 할당된 자원을 이용하여, 특정 로봇(R)에 대한 특정된 원격 기능과 관련된 데이터 처리를 수행할 수 있다. Additionally, the function management unit 1320 may perform data processing related to a remote function specified for a specific robot (R) using resources allocated to the specific robot (R).
예를 들어, 제1 원격 어댑터(1311)에서, 제1 로봇(R1)에 대한 제어를 위하여, 제1 원격 기능(F1) 및 제2 원격 기능(F2)이 특정되었다고 가정하자. For example, assume that in the first remote adapter 1311, a first remote function (F1) and a second remote function (F2) are specified to control the first robot (R1).
도 16a에 도시된 것과 같이, 기능 관리부(1320)는, 제1 원격 어댑터(1311)에서, 제1 로봇(R1)에 대한 제어를 위해, 제1 원격 기능(F1) 및 제2 원격 기능(F2)를 특정한 것에 근거하여, 제1 원격 기능과 관련된 자원(1321) 및 제2 원격 기능과 관련된 자원(1322)을 제1 로봇(R1)에 할당할 수 있다. As shown in FIG. 16A, the function management unit 1320 operates the first remote function (F1) and the second remote function (F2) in the first remote adapter 1311 to control the first robot (R1). ), the resource 1321 related to the first remote function and the resource 1322 related to the second remote function may be allocated to the first robot R1.
기능 관리부(1320)는, 제1 로봇(R1)에 대해 할당된 제1 원격 기능과 관련된 자원(1321)을 이용하여, 제1 로봇(R1)에 대한 제1 원격 기능(F1)과 관련된 데이터 처리를 수행할 수 있다. 그리고, 기능 관리부(1320)는 제1 로봇(R1)에 대해 할당된 제2 원격 기능과 관련된 자원(1322)을 이용하여, 제1 로봇(R1)에 대한 제2 원격 기능(F2)과 관련된 데이터 처리를 수행할 수 있다. The function management unit 1320 processes data related to the first remote function (F1) for the first robot (R1) using the resources 1321 related to the first remote function allocated to the first robot (R1). can be performed. And, the function management unit 1320 uses the resources 1322 related to the second remote function allocated to the first robot (R1) to obtain data related to the second remote function (F2) to the first robot (R1). Processing can be performed.
한편, 기능 관리부(1320)는, 복수의 로봇(R1, R2, R3) 각각에 대해 자원을 동시에 할당하고, 복수의 로봇(R1, R2, R3) 각각을 위한 데이터 처리를 동시에 수행할 수 있다. Meanwhile, the function management unit 1320 may simultaneously allocate resources to each of the plurality of robots (R1, R2, and R3) and simultaneously perform data processing for each of the plurality of robots (R1, R2, and R3).
예를 들어, 제1 원격 어댑터(1311)와는 다른 제2 원격 어댑터(1312)에서, 제2로봇(R)에 대한 제어를 위하여, 제2 원격 기능(F2) 및 제3 원격 기능(F3)이 특정되었다고 가정하자. For example, in the second remote adapter 1312, which is different from the first remote adapter 1311, a second remote function (F2) and a third remote function (F3) are used to control the second robot (R). Let's assume it has been specified.
도 16b에 도시된 것과 같이, 기능 관리부(1320)는, 제2 원격 어댑터(1312)에서, 제2 로봇(R2)에 대한 제어를 위해, 제2 원격 기능(F2) 및 제3 원격 기능(F3)을 특정한 것에 근거하여, 제2 원격 기능과 관련된 자원(1323) 및 제2 원격 기능과 관련된 자원(1324)을 제2 로봇(R2)에 할당할 수 있다. As shown in Figure 16b, the function management unit 1320, in the second remote adapter 1312, uses a second remote function (F2) and a third remote function (F3) to control the second robot (R2). ), the resource 1323 related to the second remote function and the resource 1324 related to the second remote function may be allocated to the second robot R2.
그리고, 기능 관리부(1320)는, 제2 로봇(R2)에 대해 할당된 제2 원격 기능과 관련된 자원(1323)을 이용하여, 제2 로봇(R2)에 대한 제2 원격 기능(F2)과 관련된 데이터 처리를 수행할 수 있다. 그리고, 기능 관리부(1320)는 제2 로봇(R2)에 대해 할당된 제3 원격 기능과 관련된 자원(1323)을 이용하여, 제2 로봇(R2)에 대한 제3원격 기능(F3)과 관련된 데이터 처리를 수행할 수 있다. And, the function management unit 1320 is related to the second remote function (F2) for the second robot (R2) using the resource 1323 related to the second remote function allocated to the second robot (R2). Data processing can be performed. And, the function management unit 1320 uses the resource 1323 related to the third remote function allocated to the second robot (R2) to provide data related to the third remote function (F3) to the second robot (R2). Processing can be performed.
즉, 본 발명에서는, 제1 로봇(R1) 및 제2 로봇(R2) 각각에 대해 자원을 할당하고, 할당된 자원을 이용하여 제1 로봇(R1) 및 제2 로봇(R2) 각각에 대한 데이터 처리를 동시에 수행할 수 있다. That is, in the present invention, resources are allocated to each of the first robot (R1) and the second robot (R2), and data for each of the first robot (R1) and the second robot (R2) is used using the allocated resources. Processing can be performed simultaneously.
한편, 기능 관리부(1320)는 복수의 로봇(R1, R2, R3) 중 특정 로봇(R)에 대한 특정된 원격 기능과 관련된 데이터 처리가 종료되는 것에 근거하여, 특정 로봇(R)에 기 할당된 자원의 할당을 종료(또는 해제) 할 수 있다. Meanwhile, the function management unit 1320 determines that data processing related to a specific remote function for a specific robot (R) among a plurality of robots (R1, R2, R3) is terminated, and Allocation of resources can be terminated (or released).
여기에서, "특정 로봇(R)에 기 할당된 자원의 할당을 종료(또는 해제)한다"는 것은, 특정 로봇(R)에 할당되었던 자원의 상태를, 더 이상 특정 로봇(R)에 할당되지 않은 상태로 변경하는 것으로 이해할 수 있다. Here, “terminating (or releasing) the allocation of resources already allocated to a specific robot (R)” means that the status of the resource that was allocated to a specific robot (R) is no longer allocated to a specific robot (R). It can be understood as changing to an unused state.
본 발명에서는, 특정 로봇(R)에 기 할당된 특정 자원의 할당을 종료(또는 해제)하는 것을, 특정 로봇(R)과 기 할당된 자원의 연계를 종료(또는 해제)하는 것으로 이해할 수 있다. In the present invention, terminating (or canceling) the allocation of a specific resource pre-allocated to a specific robot (R) can be understood as terminating (or canceling) the association between the specific robot (R) and the pre-allocated resource.
이 경우, 할당이 종료되는 자원은, 데이터 처리가 종료된 특정 원격 기능과 관련된 자원일 수 있다. In this case, the resource for which allocation is terminated may be a resource related to a specific remote function for which data processing has ended.
즉, 특정 로봇(R)에 대해 복수의 원격 기능 각각과 관련된 자원이 할당되었고, 복수의 원격 기능 중 특정 원격 기능과 관련된 데이터 처리가 종료되는 경우, 기능 관리부(1320)는 종료된 특정 원격 기능과 관련된 자원의 할당을 종료할 수 있다. That is, when resources related to each of a plurality of remote functions are allocated to a specific robot (R), and data processing related to a specific remote function among the plurality of remote functions is terminated, the function management unit 1320 Allocation of related resources can be terminated.
예를 들어, 제2 로봇(R2)에 대해 제2 원격 기능과 관련된 자원(1323) 및 제3 원격 기능과 관련된 자원(1324)이 할당되었고, 제2 로봇(R2)에 대한 제2 원격 기능(F2)과 관련된 데이터 처리 및 제3 원격 기능(F3)과 관련된 데이터 처리 중, 제2 원격 기능(F2)과 관련된 데이터 처리가 종료되었다고 가정하자. For example, a resource 1323 related to a second remote function and a resource 1324 related to a third remote function were allocated to the second robot R2, and the second remote function to the second robot R2 ( During data processing related to F2) and data processing related to the third remote function (F3), assume that data processing related to the second remote function (F2) is terminated.
도 16b에 도시된 것과 같이, 기능 관리부(1320)는, 제2 로봇(R2)에 대한 제2 원격 기능(F2)과 관련된 데이터 처리가 종료되는 것에 근거하여, 제2 로봇(R2)에 기 할당된 제2 원격 기능과 관련된 자원(1323)의 할당을 종료할 수 있다. 그리고, 기능 관리부(1320)는 데이터 처리가 종료되지 않은 제3 원격 기능과 관련된 자원(1324)의 할당은 유지할 수 있다. As shown in FIG. 16B, the function management unit 1320 pre-assigns data to the second robot R2 based on the end of data processing related to the second remote function F2 for the second robot R2. Allocation of resources 1323 related to the second remote function may be terminated. Additionally, the function management unit 1320 can maintain the allocation of resources 1324 related to the third remote function for which data processing has not yet been completed.
나아가, 기능 관리부(1320)는, 특정 로봇(R)에 대해 특정된 원격 기능과 관련된 데이터 처리가 종료되는 것에 근거하여, 특정 로봇(R)에 할당되었던 자원을 다른 로봇(R)에 재할당할 수 있다. Furthermore, the function management unit 1320 reallocates the resources allocated to the specific robot (R) to another robot (R) based on the end of data processing related to the remote function specified for the specific robot (R). You can.
다른 로봇(R)에 재할당되는 자원은, 특정 로봇(R)에 대해 할당되었던 자원 중 데이터 처리가 종료된 자원일 수 있다. Resources reallocated to other robots (R) may be resources for which data processing has been completed among resources allocated to a specific robot (R).
구체적으로, 기능 관리부(1320)는, 특정 원격 기능과 관련된 자원이 모두 할당된 경우, 특정 원격 기능에 대한 데이터 처리를 필요로 하는 로봇(R)을, 대기 로봇(R)으로 지정할 수 있다. Specifically, when all resources related to a specific remote function are allocated, the function management unit 1320 may designate a robot (R) that requires data processing for a specific remote function as a standby robot (R).
그리고, 기능 관리부(1320)는, 자원을 기 할당 받은 로봇(R)에 대한 특정 원격 기능과 관련된 데이터 처리가 종료되는 것에 근거하여, 특정 원격 기능과 관련된 자원 할당을 대기하고 있는 대기 로봇(R)에, 상기 자원을 재할당할 수 있다. In addition, the function management unit 1320 controls the standby robot (R) waiting for resource allocation related to a specific remote function based on the end of data processing related to a specific remote function for the robot (R) to which resources have already been allocated. , the resources can be reallocated.
예를 들어, 제2 원격 기능과 관련된 자원이 제1 로봇(R1) 및 제2 로봇(R2) 각각에 모두 할당된 상태에서, 제3 로봇(R3)이 제2 원격 기능과 관련된 할당을 대기하고 있다고 가정하자. For example, while resources related to the second remote function are allocated to each of the first robot (R1) and the second robot (R2), the third robot (R3) waits for allocation related to the second remote function. Let's assume there is.
도 16d에 도시된 것과 같이, 기능 관리부(1320)는, 제2 로봇(R2)에 대한 제2 원격 기능과 관련된 데이터 처리가 종료되는 것에 근거하여, 제2 로봇(R2)에 할당되었던 제2 원격 기능과 관련된 자원(1323)을, 대기 로봇(R)에 해당하는 제3 로봇(R3)에 재할당할 수 있다. As shown in Figure 16d, the function management unit 1320, based on the end of data processing related to the second remote function for the second robot (R2), the second remote function assigned to the second robot (R2) The resource 1323 related to the function can be reallocated to the third robot (R3) corresponding to the standby robot (R).
한편, 본 발명에서는 복수의 로봇(R1, R2, R3) 각각의 로봇 데이터에 근거하여, 복수의 로봇(R1, R2, R3) 각각이 주행(또는 위치)하는 공간 유형별로 서로 다른 주행 모드로 동작하도록, 서로 다른 주행 모드에 대응하는 기능과 관련된 데이터 처리를 수행할 수 있다. Meanwhile, in the present invention, based on the robot data of each of the plurality of robots (R1, R2, and R3), each of the plurality of robots (R1, R2, and R3) operates in different driving modes for each type of space in which they are driven (or located). Thus, data processing related to functions corresponding to different driving modes may be performed.
데이터베이스에는, 로봇(R)이 주행(또는 위치)하는 공간 유형별로 서로 다른 주행 모드에 대응하는 원격 기능이 매칭되어 매칭 정보로서 존재할 수 있다. In the database, remote functions corresponding to different driving modes may be matched for each type of space in which the robot R drives (or is located) and exist as matching information.
구체적으로, 제1 공간(넓은 공간, 예를 들어, 로비(lobby)에는, "이동 경로 설정 기능" 및 제1 주행 모드에 대응하는 원격 기능(ex: 주행 시 장애물 회피를 위한 기능)이 매칭되어 존재할 수 있다. Specifically, in the first space (a large space, for example, a lobby), a “travel path setting function” and a remote function corresponding to the first driving mode (ex: a function for avoiding obstacles when driving) are matched. It can exist.
또한, 제2 공간(ex: 좁은 복도 공간)에는, "이동 경로 설정 기능" 및 제2 주행 모드에 대응하는 원격 기능(ex: 회피 가동을 최소화하고, 벽과 근접한 위치에서 일렬로 이동하며 주행하도록 하는 기능)이 매칭되어 존재할 수 있다. In addition, in the second space (ex: narrow hallway space), there is a "movement path setting function" and a remote function corresponding to the second driving mode (ex: to minimize evasive movements and to drive in a line in a position close to the wall. functions) may exist in a matching manner.
또한, 제3 공간(ex: 건물 시설 (엘리베이터, 문(도어, door), 게이트(gate) 이용을 위한 공간)에는, 제3 주행 모드에 대응하는 원격 기능(ex: 건물 시설 이용을 위해 정해진 동작에 따라 이동하기 위한 기능)이 매칭되어 존재할 수 있다. In addition, in the third space (ex: space for using building facilities (elevator, door, gate)), a remote function corresponding to the third driving mode (ex: operation determined for using building facilities) (function to move according to) may exist in matching.
복수의 원격 어댑터(1311, 1312, 1313) 각각은, 통신적으로 연결된 로봇(R1, R2, R3)의 로봇 데이터에 근거하여, 통신적으로 연결된 로봇(R1, R2, R3)이 주행하는 공간 유형에 대응하는 원격 기능을 특정할 수 있다. Each of the plurality of remote adapters 1311, 1312, and 1313 determines the type of space in which the communicationally connected robots (R1, R2, and R3) run, based on the robot data of the communicationally connected robots (R1, R2, and R3). You can specify the corresponding remote function.
기능 관리부(1320)는 복수의 원격 어댑터(1311, 1312, 1313) 각각에서 특정된 원격 기능에 근거하여, 통신적으로 연결된 로봇(R1, R2, R3) 각각에 대해 특정된 원격 기능과 관련된 자원을 할당할 수 있다. The function management unit 1320 provides resources related to the remote function specified for each of the communicationally connected robots (R1, R2, and R3) based on the remote function specified in each of the plurality of remote adapters 1311, 1312, and 1313. Can be assigned.
그리고, 기능 관리부(1320)는 통신적으로 연결된 로봇(R1, R2, R3) 각각에 할당된 자원을 이용하여, 통신적으로 연결된 로봇(R1, R2, R3) 각각에 대해 특정된 원격 기능이 관련된 데이터 처리를 수행할 수 있다. And, the function management unit 1320 uses the resources allocated to each of the communicationally connected robots (R1, R2, and R3) to perform remote functions specific to each of the communicationally connected robots (R1, R2, and R3). Data processing can be performed.
예를 들어, 도 17a에 도시된 것과 같이, 제1 로봇(R1)은 "복도"에서 주행하고 있고, 제2 로봇(R2)은 "엘리베이터이용을 위한 공간"에서 주행하고 있다고 가정하자. For example, as shown in FIG. 17A, assume that the first robot (R1) is running in the “corridor” and the second robot (R2) is running in the “space for using the elevator.”
제1 원격 어댑터(1311)는 제1 로봇(R1)의 제1 로컬 어댑터(A1)로부터 수신된 로봇 데이터에 근거하여, 제1 로봇(R1)이 주행 중인 "복도"에 통신적으로 연결된 "이동 경로 설정 기능" 및 "복도 주행 기능"을 특정할 수 있다.The first remote adapter 1311 is a “mobile” communicatively connected to the “corridor” along which the first robot R1 is traveling, based on robot data received from the first local adapter A1 of the first robot R1. The “route setting function” and “corridor driving function” can be specified.
반면에, 제2 원격 어댑터(1312)는 제2 로봇(R2)의 제2 로컬 어댑터(A2)로부터 수신된 로봇 데이터에 근거하여, 제2 로봇(R2)이 주행 중인 "엘리베이터 이용 공간"에 통신적으로 연결된 "이동 경로 설정 기능" 및 "엘리베이터 탑승 기능"을 특정할 수 있다.On the other hand, the second remote adapter 1312 communicates with the “elevator use space” where the second robot (R2) is traveling based on robot data received from the second local adapter (A2) of the second robot (R2). You can specify the connected “travel path setting function” and “elevator boarding function”.
도 17b에 도시된 것과 같이, 기능 관리부(1320)는 제1 원격 어댑터(1311)에서 특정된 단위 결과에 근거하여, "이동 경로 설정 기능"과 관련된 자원(1710) 및 "복도 주행 기능"과 관련된 자원(1730)을 제1 로봇(R1)에 할당하고, 데이터 처리를 수행할 수 있다. 그리고, 기능 관리부(1320)는 제2 원격 어댑터(1312)에서 특정된 단위 결과에 근거하여, "이동 경로 설정 기능"과 관련된 자원(1720) 및 "엘리베이터 탑승"과 관련된 자원(1740)을 제2 로봇(R2)에 할당하고, 데이터 처리를 수행할 수 있다.As shown in FIG. 17B, the function management unit 1320 determines the resources 1710 related to the “travel path setting function” and the “corridor driving function” based on the unit results specified in the first remote adapter 1311. Resources 1730 may be allocated to the first robot R1 and data processing may be performed. And, based on the unit result specified in the second remote adapter 1312, the function management unit 1320 generates a resource 1720 related to the “travel path setting function” and a resource 1740 related to “elevator boarding” to the second remote adapter 1312. It can be assigned to the robot (R2) and data processing can be performed.
제1 원격 어댑터(1311)는, 제1 로봇(R1)에 대한 "이동 경로 설정 기능"의 데이터 처리 수행 결과 및 "복도 주행 기능"의 데이터 처리 수행 결과에 근거하여, 제1 로봇(R1)에 대한 제어 명령을 생성할 수 있다. 예를 들어, 제1 원격 어댑터(1311)는 제1 로봇(R1)이 복도의 벽을 따라 일렬로 이동한 후, 복도의 끝에서 우회전 하도록 하는 제어 명령을 생성할 수 있다. The first remote adapter 1311 is connected to the first robot R1 based on the data processing results of the “movement path setting function” and the data processing results of the “corridor driving function” for the first robot R1. You can create control commands for For example, the first remote adapter 1311 may generate a control command that causes the first robot R1 to move in a line along the wall of the hallway and then turn right at the end of the hallway.
그리고, 제1 원격 어댑터(1311)는 생성된 제어 명령을 제1 로봇(R1)의 제1 로컬 어댑터(A1)로 전송하여, 생성된 제어 명령에 따라 제1 로봇(R1)의 주행을 제어할 수 있다. And, the first remote adapter 1311 transmits the generated control command to the first local adapter (A1) of the first robot (R1) to control the running of the first robot (R1) according to the generated control command. You can.
반면에, 제2 원격 어댑터(1312)는, 제2 로봇(R2)에 대한 "이동 경로 설정 기능"의 데이터 처리 수행 결과 및 "엘리베이터 탑승 기능"의 데이터 처리 수행 결과에 근거하여, 제2 로봇(R2)에 대한 제어 명령을 생성할 수 있다. 예를 들어, 제2 원격 어댑터(1312)는 제2 로봇(R2)이 엘리베이터 앞으로 이동한 후, 엘리베이터를 탑승하도록 하는 제어 명령을 생성할 수 있다. On the other hand, the second remote adapter 1312 is based on the data processing results of the “movement path setting function” and the data processing results of the “elevator boarding function” for the second robot (R2) ( Control commands for R2) can be created. For example, the second remote adapter 1312 may generate a control command for the second robot R2 to move in front of the elevator and then board the elevator.
그리고, 제2 원격 어댑터(1312)는 생성된 제어 명령을 제2 로봇(R2)의 제2 로컬 어댑터(A2)로 전송하여, 생성된 제어 명령에 따라 제2 로봇(R2)의 주행을 제어할 수 있다. And, the second remote adapter 1312 transmits the generated control command to the second local adapter (A2) of the second robot (R2) to control the running of the second robot (R2) according to the generated control command. You can.
예를 들어, 복수의 원격 어댑터(1311, 1312, 1313) 각각에서는, 통신적으로 연결된 로봇(R1, R2, R3)의 센싱 정보에 근거하여, 통신적으로 연결된 로봇(R1, R2, R3)이 주행하는 공간이 "제1 공간(넓은 공간, 예를 들어, 로비(lobby))"이면, 제1 주행 모드 기능(ex: 장애물 회피 주행 모드)를 통신적으로 연결된 로봇(R1, R2, R3)에 대한 제어를 위해 필요한 원격 기능으로 특정할 수 있다. For example, in each of the plurality of remote adapters 1311, 1312, and 1313, the communicatively connected robots (R1, R2, and R3) are connected based on sensing information of the communicatively connected robots (R1, R2, and R3). If the driving space is a "first space (large space, e.g., lobby)", the first driving mode function (ex: obstacle avoidance driving mode) is performed on a communicationally connected robot (R1, R2, R3). It can be specified as a remote function required for control.
다른 예를 들어, 복수의 원격 어댑터(1311, 1312, 1313) 각각에서는, 통신적으로 연결된 로봇(R1, R2, R3)의 센싱 정보에 근거하여, 통신적으로 연결된 로봇(R1, R2, R3)이 주행하는 공간이 "제2 공간(좁은 복도 공간)"이면, 제2 주행 모드 기능(ex: 회피 가동을 최소화하고, 벽과 근접한 위치에서 일렬로 이동하는 주행 모드) 를 통신적으로 연결된 로봇(R1, R2, R3)에 대한 제어를 위해 필요한 원격 기능으로 특정할 수 있다. For another example, in each of the plurality of remote adapters 1311, 1312, and 1313, the communicatively connected robots (R1, R2, and R3) are connected based on sensing information of the communicatively connected robots (R1, R2, and R3). If this driving space is the "second space (narrow hallway space)", the second driving mode function (ex: driving mode that minimizes avoidance movement and moves in a line in a position close to the wall) is activated by a communicationally connected robot ( It can be specified as a remote function required to control R1, R2, R3).
또 다른 예를 들어, 복수의 원격 어댑터(1311, 1312, 1313) 각각에서는, 통신적으로 연결된 로봇(R1, R2, R3)의 센싱 정보에 근거하여, 통신적으로 연결된 로봇(R1, R2, R3)이 주행하는 공간이 "제3 공간(건물 시설 공간(엘리베이터, 문(도어, door), 게이트(gate))"이면, 제3 주행 모드 기능(ex: 건물 시설 이용을 위해 정해진 동작에 따라 이동하는 주행 모드)를 통신적으로 연결된 로봇(R1, R2, R3)에 대한 제어를 위해 필요한 원격 기능으로 특정할 수 있다. For another example, in each of the plurality of remote adapters 1311, 1312, and 1313, based on sensing information of the communicatively connected robots (R1, R2, and R3), the communicatively connected robots (R1, R2, and R3) ), if the space in which it is driven is "a third space (building facility space (elevator, door, gate)", the third driving mode function (ex: moves according to the designated movement to use the building facility) (driving mode) can be specified as a remote function necessary for controlling the communicationally connected robots (R1, R2, R3).
본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 원격 어댑터(remote adapter) 및 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 기능 관리부를 포함함으로써, 건물을 주행하는 복수의 로봇 중 어느 하나에 종속되지 않고, 복수의 로봇을 제어할 수 있는 동적 제어 구조를 제시하고 있다. The method and system for controlling a building and a robot traveling through a building according to the present invention are based on a remote adapter that is communicatively connected to a local adapter provided in the robot and a request from the remote adapter, By including a function management unit that assigns the remote functions required by the robot to the robot, a dynamic control structure that can control a plurality of robots without being dependent on any one of the plurality of robots running in the building is proposed.
나아가, 본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 로봇 데이터에 기반하여 로봇에서 요구되는 원격 기능에서 처리된 로봇 제어 정보를, 로컬 어댑터로 전달하여, 로봇에 기능을 위한 자원이 임베디드(imbedded) 되지 않은 기능까지 확장하여, 로봇에 대한 원격 제어를 수행할 있다. Furthermore, the method and system for controlling a building and a robot traveling through the building according to the present invention transmits robot control information processed from remote functions required by the robot based on robot data to the local adapter, providing resources for the function to the robot. By extending this non-embedded function, remote control of the robot can be performed.
나아가, 본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 건물을 주행하는 복수의 로봇에 대한 동적 제어 구조를 통해, 새로운 로봇의 편입 및 기존 로봇의 해제에 대해 유연하고, 복수의 로봇을 유동적이고 체계적이며 효율적으로 제어할 수 있다. Furthermore, the building, the method and system for controlling a robot traveling in a building according to the present invention is flexible with respect to the incorporation of a new robot and the release of an existing robot through a dynamic control structure for a plurality of robots traveling in the building, and a plurality of robots are Robots can be controlled fluidly, systematically, and efficiently.
한편, 위에서 살펴본 본 발명은, 컴퓨터에서 하나 이상의 프로세스에 의하여 실행되며, 이러한 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램으로서 구현될 수 있다.Meanwhile, the present invention discussed above can be implemented as a program that is executed by one or more processes on a computer and can be stored in a medium that can be read by such a computer.
나아가, 위에서 살펴본 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드 또는 명령어로서 구현하는 것이 가능하다. 즉, 본 발명에 따른 다양한 제어방법은 통합하여 또는 개별적으로 프로그램의 형태로 제공될 수 있다. Furthermore, the present invention discussed above can be implemented as computer-readable codes or instructions on a program-recorded medium. That is, various control methods according to the present invention may be provided in the form of programs, either integrated or individually.
한편, 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. Meanwhile, computer-readable media includes all types of recording devices that store data that can be read by a computer system. Examples of computer-readable media include HDD (Hard Disk Drive), SSD (Solid State Disk), SDD (Silicon Disk Drive), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. There is.
나아가, 컴퓨터가 읽을 수 있는 매체는, 저장소를 포함하며 전자기기가 통신을 통하여 접근할 수 있는 서버 또는 클라우드 저장소일 수 있다. 이 경우, 컴퓨터는 유선 또는 무선 통신을 통하여, 서버 또는 클라우드 저장소로부터 본 발명에 따른 프로그램을 다운로드 받을 수 있다.Furthermore, the computer-readable medium may be a server or cloud storage that includes storage and can be accessed by electronic devices through communication. In this case, the computer can download the program according to the present invention from a server or cloud storage through wired or wireless communication.
나아가, 본 발명에서는 위에서 설명한 컴퓨터는 프로세서, 즉 CPU(Central Processing Unit, 중앙처리장치)가 탑재된 전자기기로서, 그 종류에 대하여 특별한 한정을 두지 않는다.Furthermore, in the present invention, the computer described above is an electronic device equipped with a processor, that is, a CPU (Central Processing Unit), and there is no particular limitation on its type.
한편, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.Meanwhile, the above detailed description should not be construed as restrictive in all respects and should be considered illustrative. The scope of the present invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the present invention are included in the scope of the present invention.

Claims (15)

  1. 로봇 제어 시스템에 있어서,In the robot control system,
    로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 원격 어댑터(remote adapter); 및A remote adapter communicatively connected to a local adapter provided in the robot; and
    상기 원격 어댑터와 연결되며, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 기능 관리부를 포함하고,A function management unit connected to the remote adapter and assigning remote functions required by the robot to the robot based on a request from the remote adapter,
    상기 원격 어댑터는,The remote adapter is,
    상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하고,Transfer robot data received from the robot to the remote function,
    상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 것을 특징으로 하는 로봇 제어 시스템.A robot control system characterized in that the robot control information processed by the remote function is transmitted to the local adapter based on the robot data.
  2. 제1항에 있어서,According to paragraph 1,
    상기 원격 어댑터는,The remote adapter,
    상기 로봇에 할당된 임무를 수행하기 위하여 상기 로봇에서 요구되는 기능을 특정하고, Specifying the functions required for the robot to perform the mission assigned to the robot,
    특정된 기능에 해당하는 상기 원격 기능이 상기 로봇에 할당되도록, 상기 기능 관리부에 상기 원격 기능을 상기 로봇에 할당하도록 하는 요청을 전송하고,Sending a request to the function management unit to assign the remote function to the robot so that the remote function corresponding to the specified function is assigned to the robot,
    상기 기능 관리부는,The function management department,
    상기 원격 어댑터로부터 수신된 상기 요청에 근거하여, 상기 원격 기능이 상기 로봇에 할당되도록 상기 원격 기능을 제어하는 것을 특징으로 하는 로봇 제어 시스템.Based on the request received from the remote adapter, the robot control system controls the remote function so that the remote function is assigned to the robot.
  3. 제2항에 있어서,According to paragraph 2,
    상기 원격 기능에서는,In the remote function,
    상기 로봇에 상기 원격 기능이 할당되는 것에 근거하여,Based on the remote function being assigned to the robot,
    상기 로봇으로부터 수신되는 로봇 데이터를 이용하여, 상기 원격 기능에 따른 데이터 처리를 수행하고,Perform data processing according to the remote function using robot data received from the robot,
    상기 데이터 처리 결과에 따른 상기 로봇 제어 정보는, 상기 원격 기능이 할당된 상기 로봇으로 전달되며, The robot control information according to the data processing results is transmitted to the robot to which the remote function is assigned,
    상기 로봇에서는, 상기 로봇 제어 정보에 따라 상기 원격 기능이 수행되도록 하는 것을 특징으로 하는 로봇 제어 시스템.A robot control system characterized in that, in the robot, the remote function is performed according to the robot control information.
  4. 제3항에 있어서,According to paragraph 3,
    상기 원격 기능은, 건물에서 주행하는 로봇들의 주행을 제어하기 위한 기능에 대응되고,The remote function corresponds to a function for controlling the movement of robots running in a building,
    상기 원격 기능에서는, In the remote function,
    상기 건물에서 주행하는 로봇들 중 어느 로봇이 상기 원격 기능을 할당 받았는지에 따라, 서로 다른 로봇의 주행을 위한 로봇 제어 정보를 생성하는 것을 특징으로 하는 로봇 제어 시스템.A robot control system characterized in that it generates robot control information for driving different robots depending on which robot among the robots running in the building has been assigned the remote function.
  5. 제4항에 있어서,According to clause 4,
    상기 건물에서 주행하는 로봇들 중 제1 로봇 및 상기 제1 로봇과 다른 제2 로봇에서 상기 원격 기능이 각각 요구되는 경우,When the remote function is required for a first robot among the robots running in the building and a second robot different from the first robot,
    상기 제1 로봇의 로컬 어댑터에 통신적으로 연결된 제1 원격 어댑터 및 상기 제2 로봇의 로컬 어댑터에 통신적으로 연결된 제2 원격 어댑터는, 상기 기능 관리부에 상기 원격 기능의 할당을 각각 요청하고,A first remote adapter communicatively connected to the local adapter of the first robot and a second remote adapter communicatively connected to the local adapter of the second robot each request allocation of the remote function from the function management unit,
    상기 기능 관리부는, 상기 원격 기능에서 상기 제1 로봇 및 상기 제2 로봇을 위한 데이터 처리가 수행되도록, 상기 제1 로봇에 상기 원격 기능의 제1 자원을 할당하고, 상기 제2 로봇에 상기 원격 기능의 제2 자원을 각각 할당하는 것을 특징으로 하는 로봇 제어 시스템.The function management unit allocates the first resource of the remote function to the first robot so that data processing for the first robot and the second robot is performed in the remote function, and the remote function to the second robot. A robot control system characterized in that each of the second resources is allocated.
  6. 제5항에 있어서,According to clause 5,
    상기 기능 관리부는, 상기 제1 로봇 및 상기 제2 로봇 중 적어도 하나에서 상기 원격 기능에 따른 동작이 종료된 경우, When the function management unit terminates an operation according to the remote function in at least one of the first robot and the second robot,
    상기 제1 자원 및 상기 제2 자원 중 상기 적어도 하나의 로봇에 할당된 자원이 다른 로봇에서 이용 가능하도록, 상기 적어도 하나의 로봇에 할당된 자원의 할당을 해제하는 것을 특징으로 하는 로봇 제어 시스템.A robot control system, characterized in that deallocating a resource allocated to the at least one robot among the first resource and the second resource so that the resource allocated to the at least one robot can be used by another robot.
  7. 제6항에 있어서, According to clause 6,
    상기 기능 관리부는,The function management department,
    상기 원격 기능에 대하여, 상기 제1 자원 및 상기 제2 자원 모두에 대한 할당 해제 요청이 수신되고, 원격 기능에 다른 로봇에 대해 할당된 자원이 존재하지 않는 경우,If, for the remote function, a de-allocation request for both the first resource and the second resource is received, and there are no resources allocated to the remote function for another robot,
    상기 원격 기능에 대한 자원을 삭제하는 것을 특징으로 하는 로봇 제어 시스템.A robot control system, characterized in that deleting resources for the remote function.
  8. 제1항에 있어서,According to paragraph 1,
    건물에서 주행하는 복수의 로봇들 각각에 구비된 로컬 어댑터들과 통신적으로 연결되어 상기 로봇들로부터 로봇 데이터를 수신하는 링크부를 더 포함하고,It further includes a link unit that is communicatively connected to local adapters provided in each of a plurality of robots running in the building and receives robot data from the robots,
    상기 링크부는, The link part is,
    상기 로봇들로부터 수신되는 로봇 데이터 중 특정 로봇의 로봇 데이터를, 특정 로봇의 로컬 어댑터와 통신적으로 연결된 특정 원격 어댑터에 전달하는 것을 특징으로 하는 로봇 제어 시스템.A robot control system characterized in that the robot data of a specific robot among the robot data received from the robots is transmitted to a specific remote adapter that is communicatively connected to the local adapter of the specific robot.
  9. 제8항에 있어서,According to clause 8,
    상기 원격 기능은, 서로 다른 주행 모드에 각각 대응되는 복수의 원격 기능을 포함하고,The remote function includes a plurality of remote functions respectively corresponding to different driving modes,
    상기 원격 어댑터는,The remote adapter,
    상기 복수의 원격 기능 중 상기 로봇의 주행에 요구되는 적어도 하나의 원격 기능을 상기 기능 관리부로 할당 요청하며,Requesting the function management unit to assign at least one remote function required for driving of the robot among the plurality of remote functions,
    상기 기능 관리부에 의해 상기 적어도 하나의 원격 기능이 상기 로봇에 할당되는 것에 근거하여, Based on the at least one remote function being assigned to the robot by the function management unit,
    상기 링크부를 통해 수신된 상기 로봇의 로봇 데이터는, 상기 적어도 하나의 원격 기능 각각에 전달되는 것을 특징으로 하는 로봇 제어 시스템.A robot control system, characterized in that the robot data of the robot received through the link unit is transmitted to each of the at least one remote function.
  10. 제9항에 있어서,According to clause 9,
    상기 로봇의 주행을 제어하기 위하여, 상기 복수의 원격 기능 중, 서로 다른 제1 시점 및 제2 시점에 제1 원격 기능 및 제2 원격 기능이 각각 요구되는 경우,In order to control the driving of the robot, among the plurality of remote functions, when a first remote function and a second remote function are required at different first and second time points, respectively,
    상기 원격 어댑터는,The remote adapter,
    상기 제1 시점에 대응하여, 상기 제1 원격 기능의 할당을 상기 기능 관리부에 요청하고,In response to the first time point, request allocation of the first remote function to the function management unit,
    상기 제2 시점에 대응하여, 상기 제2 원격 기능의 할당을 상기 기능 관리부에 요청하며,In response to the second time point, request allocation of the second remote function to the function management unit,
    상기 제2 시점에 대응하여, 상기 로봇에서 상기 제1 원격 기능에 대응되는 주행이 종료되는 경우, 상기 제1 원격 기능의 할당에 대한 해제를 요청하는 것을 특징으로 하는 로봇 제어 시스템.In response to the second time point, when the robot ends driving corresponding to the first remote function, the robot control system requests release of the allocation of the first remote function.
  11. 제10항에 있어서,According to clause 10,
    상기 원격 어댑터로부터 상기 로봇 데이터를 수신하는 메시징부를 더 포함하고,Further comprising a messaging unit that receives the robot data from the remote adapter,
    상기 메시징부는,The messaging unit,
    상기 복수의 원격 기능 중, 상기 원격 어댑터와 연결된 상기 로봇에 할당 상기 제1 원격 기능 또는 상기 제2 원격 기능에 상기 로봇 데이터를 전달하는 것을 특징으로 하는 로봇 제어 시스템.A robot control system, characterized in that among the plurality of remote functions, the robot data is transmitted to the first remote function or the second remote function assigned to the robot connected to the remote adapter.
  12. 제11항에 있어서,According to clause 11,
    상기 메시징부는,The messaging unit,
    상기 복수의 로봇들과 통신적으로 각각 연결된 복수의 원격 어댑터와 연결되며, Connected to a plurality of remote adapters that are each communicatively connected to the plurality of robots,
    상기 복수의 원격 어댑터로부터 할당 요청되는 원격 기능에 근거하여, 상기 복수의 로봇들에서 수신되는 로봇 데이터를 상기 복수의 원격 기능 중 적어도 하나에 전달하는 것을 특징으로 하는 로봇 제어 시스템.A robot control system, wherein robot data received from the plurality of robots is transmitted to at least one of the plurality of remote functions based on remote functions requested from the plurality of remote adapters.
  13. 로봇 제어 시스템의 제어 방법에 있어서,In the control method of the robot control system,
    로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 단계;Communicating with a local adapter provided in the robot;
    원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 단계;assigning a remote function required by the robot to the robot based on a request from a remote adapter;
    상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하는 단계;transmitting robot data received from the robot to the remote function;
    상기 원격 기능에서 상기 로봇 데이터를 이용하여 로봇 제어 정보를 생성하는 단계; 및generating robot control information using the robot data in the remote function; and
    상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 단계를 포함하는 로봇 제어 시스템의 제어 방법.A control method of a robot control system comprising transmitting robot control information processed in the remote function to the local adapter based on the robot data.
  14. 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램으로서,A program that is executed by one or more processes in an electronic device and stored on a computer-readable recording medium,
    상기 프로그램은,The above program is,
    로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 단계;Communicating with a local adapter provided in the robot;
    원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 단계;assigning a remote function required by the robot to the robot based on a request from a remote adapter;
    상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하는 단계;transmitting robot data received from the robot to the remote function;
    상기 원격 기능에서 상기 로봇 데이터를 이용하여 로봇 제어 정보를 생성하는 단계; 및generating robot control information using the robot data in the remote function; and
    상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 단계를 수행하도록 하는 명령어들을 포함하는 것을 특징으로 하는 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램.A program stored in a computer-readable recording medium, comprising instructions for transmitting robot control information processed in the remote function to the local adapter based on the robot data.
  15. 복수의 로봇들이 서비스를 제공하는 건물에 있어서,In a building where multiple robots provide services,
    상기 건물은,The building is,
    상기 로봇들과 제어 서버 사이에서 통신을 수행하는 통신부를 포함하고,It includes a communication unit that performs communication between the robots and the control server,
    상기 제어 서버는,The control server is,
    로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 원격 어댑터(remote adapter); 및A remote adapter communicatively connected to a local adapter provided in the robot; and
    상기 원격 어댑터와 연결되며, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 기능 관리부를 포함하고,A function management unit connected to the remote adapter and assigning remote functions required by the robot to the robot based on a request from the remote adapter,
    상기 원격 어댑터는,The remote adapter,
    상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하고,Transfer robot data received from the robot to the remote function,
    상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 것을 특징으로 하는 건물.A building characterized in that robot control information processed in the remote function is transmitted to the local adapter based on the robot data.
PCT/KR2023/014136 2022-11-17 2023-09-19 Robot-friendly building, and method and system for controlling robot traveling in building WO2024106728A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220154183A KR20240073246A (en) 2022-11-17 2022-11-17 Robot-friendly building, method and system for controling robot divinging in the building
KR10-2022-0154183 2022-11-17

Publications (1)

Publication Number Publication Date
WO2024106728A1 true WO2024106728A1 (en) 2024-05-23

Family

ID=91084962

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2023/014136 WO2024106728A1 (en) 2022-11-17 2023-09-19 Robot-friendly building, and method and system for controlling robot traveling in building

Country Status (2)

Country Link
KR (1) KR20240073246A (en)
WO (1) WO2024106728A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5684911B2 (en) * 2010-08-24 2015-03-18 中国科学院深▲しん▼先進技術研究院 Cloud robot system and realization method thereof
US20210232136A1 (en) * 2018-10-16 2021-07-29 Brain Corporation Systems and methods for cloud edge task performance and computing using robots
KR102432361B1 (en) * 2022-03-21 2022-08-17 주식회사 서큘러스 Interaction robot, robot operating system, and control method for the same
KR20220150069A (en) * 2021-05-03 2022-11-10 네이버랩스 주식회사 Method and system for controlling robot configured as multiple modular robots
KR20220151460A (en) * 2021-05-06 2022-11-15 네이버랩스 주식회사 Communication-based robot control system and method thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5684911B2 (en) * 2010-08-24 2015-03-18 中国科学院深▲しん▼先進技術研究院 Cloud robot system and realization method thereof
US20210232136A1 (en) * 2018-10-16 2021-07-29 Brain Corporation Systems and methods for cloud edge task performance and computing using robots
KR20220150069A (en) * 2021-05-03 2022-11-10 네이버랩스 주식회사 Method and system for controlling robot configured as multiple modular robots
KR20220151460A (en) * 2021-05-06 2022-11-15 네이버랩스 주식회사 Communication-based robot control system and method thereof
KR102432361B1 (en) * 2022-03-21 2022-08-17 주식회사 서큘러스 Interaction robot, robot operating system, and control method for the same

Also Published As

Publication number Publication date
KR20240073246A (en) 2024-05-27

Similar Documents

Publication Publication Date Title
WO2021006677A2 (en) Mobile robot using artificial intelligence and controlling method thereof
WO2018093055A1 (en) Mobile robot system and mobile robot
WO2019135518A1 (en) Moving device for cleaning, cooperative cleaning system and method for controlling same
WO2020027515A1 (en) Mobile robot for configuring attribute block
WO2015111950A1 (en) Message intermediation method, message processing method, service management method and device for implementing same
WO2018070687A1 (en) Airport robot and airport robot system comprising same
WO2022234923A1 (en) Communication-based robot control method and system, and building in which robot is positioned
WO2020241934A1 (en) Method for estimating position by synchronizing multi-sensor, and robot for implementing same
WO2016048077A1 (en) Cleaning robot and method for controlling cleaning robot
WO2020256163A1 (en) Artificial intelligence mobile robot and control method therefor
EP3538969A1 (en) Movable object and method for controlling the same
WO2020145625A1 (en) Artificial intelligence device, and method for operating same
WO2020241920A1 (en) Artificial intelligence device capable of controlling another device on basis of device information
WO2020004824A1 (en) Plurality of autonomous cleaner and controlling method for the same
WO2020246640A1 (en) Artificial intelligence device for determining location of user and method therefor
WO2019045288A1 (en) Method by which multiple robots enable space partition and work in space, and robot for implementing same
WO2024106728A1 (en) Robot-friendly building, and method and system for controlling robot traveling in building
WO2022240274A1 (en) Robot device, method for controlling same, and recording medium having program recorded thereon
WO2023080490A1 (en) Robot-friendly building, robot, and system for controlling multiple robots travelling in building
WO2020251096A1 (en) Artificial intelligence robot and operation method thereof
WO2021002493A1 (en) Intelligent gateway device, and control system comprising same
WO2020256169A1 (en) Robot for providing guidance service by using artificial intelligence, and operating method therefor
WO2022234924A1 (en) Method and system for controlling robot comprising plurality of modular robots, and building in which robot is disposed
WO2022234925A1 (en) Method and system for controlling plurality of robots traveling through designated region, and building in which robots are disposed
WO2020262721A1 (en) Control system for controlling plurality of robots by using artificial intelligence