WO2019045294A1 - 공간을 분할-작업하는 다중 로봇들 간의 통신 방법 및 이를 구현하는 로봇 - Google Patents

공간을 분할-작업하는 다중 로봇들 간의 통신 방법 및 이를 구현하는 로봇 Download PDF

Info

Publication number
WO2019045294A1
WO2019045294A1 PCT/KR2018/008784 KR2018008784W WO2019045294A1 WO 2019045294 A1 WO2019045294 A1 WO 2019045294A1 KR 2018008784 W KR2018008784 W KR 2018008784W WO 2019045294 A1 WO2019045294 A1 WO 2019045294A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
robots
partitioning
communication
map
Prior art date
Application number
PCT/KR2018/008784
Other languages
English (en)
French (fr)
Inventor
최지은
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Publication of WO2019045294A1 publication Critical patent/WO2019045294A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/427Loop networks with decentralised control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/437Ring fault isolation or reconfiguration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Definitions

  • the present invention relates to a communication method between multiple robots that divide-and-work a space, and a robot related to the method.
  • robots propose a method and a robot that respond to a failure faster by maintaining a communication link with a ring structure of distributed communication.
  • a method of communicating between multiple robots is characterized in that an initial partitioning map including a partitioning area of a plurality of robots to be operated by a controller of a first robot is stored in a map storage A step of moving the robot to the partitioning area assigned to the first robot by the moving part of the first robot, a step of creating a communication link with the second robot to communicate with the first robot,
  • the communication unit receives the failure environment information of the second robot or when the communication link of the second robot is disconnected, the communication unit generates a communication link with the third robot that has created the communication link with the second robot,
  • An area including the second partitioning area of the second robot and the first partitioning area of the first robot and the third partitioning area of the third robot is divided into a first repartitioning area of the first robot and a third repartitioning area of the third robot It includes a step of generating a re-partitioning re-map partitioned into.
  • a robot that implements a communication method between multiple robots dividing and working a space includes a sensing unit for sensing an object disposed outside, a map for storing a position of a fixed object in a space where the robot moves A communication unit for transmitting and receiving the partitioning information and environment information to and from one or more other robots, a working unit for performing a work of the robot, and a control unit for controlling the sensing unit, the map storage unit, the moving unit, The control unit controls the communication unit to establish a communication link with the second robot adjacent to the robot, and when the communication unit receives the failure environment information of the second robot or when the communication link of the second robot is disconnected, After the communication link with the third robot has been generated, the controller performs repartitioning with the third robot.
  • multiple robots can efficiently cope with a failure of a specific robot in a process of collaborating through real-time partitioning considering both the type of environment and dynamic / static obstacle information in a given large- have.
  • FIG. 1 is a diagram illustrating a process of a robot operating according to a distributed communication method according to an embodiment of the present invention.
  • FIG. 2 is a diagram illustrating a process of operating a robot according to a hub communication method according to another embodiment of the present invention.
  • 3 and 4 are views showing the configuration of a fixed map according to an embodiment of the present invention.
  • FIG. 5 is a diagram illustrating a configuration of a partitioning map according to an embodiment of the present invention.
  • FIG. 6 is a view showing a communication link of a distributed communication method in a state where robots according to an embodiment of the present invention are moved to respective partitioning areas.
  • FIG. 7 is a diagram of a new link generated according to an embodiment of the present invention.
  • FIG. 8 is a diagram showing a map that is re-partitioned except for the R3 robot according to an embodiment of the present invention.
  • FIG. 9 is a view showing a configuration of a robot according to an embodiment of the present invention.
  • FIG. 10 is a diagram illustrating a process in which a robot performs an operation according to an initial partitioning map and then performs re-partitioning according to an embodiment of the present invention.
  • 11 and 12 are views illustrating a process of re-partitioning based on environment information according to an embodiment of the present invention.
  • FIGS. 13 to 16 are diagrams illustrating a process of converting from a fault-based to a collaborative-based distributed communication system in a system based on hub communication according to an embodiment of the present invention.
  • 17 is a flow chart for switching to a distributed communication system when a failure occurs in a hub robot according to an embodiment of the present invention.
  • the terms first, second, A, B, (a), (b), and the like can be used. These terms are intended to distinguish the components from other components, and the terms do not limit the nature, order, order, or number of the components.
  • the robot can store information about the space.
  • a space can be divided into cells each having a predetermined unit, and each cell can store information.
  • the robot includes a fixed map in which fixed obstacles are arranged.
  • the robot includes a partitioning map in which each robot is partitioned in addition to the fixed map.
  • the robot includes a covered map which indicates an area where the robot has performed the operation in the partitioning map. The covered map can be implemented by displaying a specific cell of the partitioning map.
  • the robot stores a fixed map for the entire space, and can store a temporary map including information on a space allocated to the robot and a space of another robot adjacent to the allocated space in the entire space.
  • the temporary map can cover the entire space. Also, depending on the communication capability of the robot, the temporary map can cover only a part of the space.
  • the communication method of robots is performed in two ways. Distributed communication methods in which robots have a horizontal relationship in communication and hub communication methods in which one robot is in the center of communication are divided into two types.
  • the communication network of the robots can be configured in the form of a ring.
  • the communication network of the robots may be configured as a star in one embodiment of the hub communication method.
  • some networks may be configured as rings and other networks may be configured as star.
  • a robot includes a moving device having a specific purpose (cleaning, security, monitoring, guidance, etc.) or providing functions according to the characteristics of a space in which the robot moves. Therefore, the robot in this specification collectively refers to a device that has a moving means capable of moving using predetermined information and a sensor, and provides a predetermined function.
  • a robot can move while holding a map.
  • a map is information about a fixed object such as a fixed wall, a stair, or the like that has been confirmed not to move in space.
  • information about dynamic objects that are placed periodically can also be stored on the map.
  • information about obstacles disposed within a certain range based on the traveling direction of the robot can also be stored on the map.
  • large-area robots can perform initial partitioning or real-time / time-based repartitioning.
  • These partitioning schemes allow for initial partitioning based on partitioning information by a specific robot, and then when a problem occurs with a specific robot, it can be repartitioned except for the robot.
  • FIG. 1 is a diagram illustrating a process of a robot operating according to a distributed communication method according to an embodiment of the present invention.
  • the robot can calculate the following information on the basis of given information, respectively.
  • the robots can process to yield the same result if the given information is the same.
  • Each robot partition the N-space with consideration given to the environment of the given type, that is, the space (S1). If the environment information (space information) initially given to each robot is the same, the partitioning results of N spaces calculated by each robot can be the same. On the other hand, if there is individual information that each robot senses or acquires in addition to environment information (space information) initially given to each robot, the partitioning result of N spaces calculated by each robot may be different.
  • Each robot moves to a partitioned area (S2). After the movement, the robots close to each other and confirm the communication connectivity with the robot of the neighboring partition (S3). When the communication connection is confirmed, robots in each partition perform their respective tasks (S4).
  • the work performed by the robot may differ depending on the functions performed by the robot. In the case of a cleaning robot, a cleaning operation can be performed, and in the case of a security robot, dangerous materials can be detected. In the case of a guide robot, guiding operations can be performed in response to the movement of people in the partition. In the case of a display robot, it is possible to continuously output certain information in the partition.
  • the robot confirms whether the task has been completed in the partition at a predetermined cycle (S5).
  • a constant cycle means a temporal cycle. If the temporal cycle is infinite, the robot performs tasks within the partition determined in S1 until the task is completed. If the temporal period is 10 minutes, the robot performs the operation for 10 minutes, and if the operation is not completed, the robot proceeds to the step S6. When the operation is completed within the time period, completion of cover of the entire area is confirmed (S9) and the process is terminated.
  • step S6 it is determined whether there is a faulty robot, such as when a fault occurs in the communication connection in the distributed communication state or when the faulty operation is not possible (S6).
  • a distributed communication state robots that have been placed in close proximity to a faulty robot and communicated with the faulty robot can confirm the occurrence of a fault of the faulty robot.
  • each robot performs partitioning to maximize the coverage of the entire area while ensuring connectivity with at least one robot close to the robot (S8).
  • the existing communication connection can be reset in the repartitioning (S7 or S8).
  • a communication connection in the form of a ring like R1-R2-R3- In case of re-partitioning, communication efficiency can be checked again to change the communication connection.
  • FIG. 2 is a diagram illustrating a process of operating a robot according to a hub communication method according to another embodiment of the present invention.
  • FIG. 1 shows how each robot performs its own partitioning and exchanges information with another robot.
  • FIG. 2 illustrates a method in which a hub robot collects information from each robot, performs partitioning, and provides information to other robots.
  • all the robots can directly provide information to the hub robot, or the robots near the hub robot directly provide the information to the hub robot, and the hub robot and the remote robot can indirectly provide information using the robot close to the hub robot can do.
  • a robot capable of directly communicating with a hub robot in close proximity to a hub robot is referred to as a T1 (Tier 1) robot.
  • the T2 (Tier 2) robot is called a robot that can communicate directly with a T1 robot but can communicate directly with a T1 robot, but can not communicate with a hub robot.
  • the Tk robot indicates a robot that can communicate directly with the T (k-1) robot, but can not communicate with the hub robot. The smaller the number of k, the more robust the communication environment is. When the number of k becomes large, the hub robot can not be smoothly communicated with other robots, so that the new robot can be adjusted to perform the hub function.
  • the specific robots can be T1 robots.
  • the R1 robot is a hub
  • the R2 and R3 robots are T1 robots
  • the R4 and R5 robots can be T2 robots.
  • the hub robot 10 performs N partitioning according to the number N of robots in consideration of the environment of a given type (S21).
  • the hub robot 10 transmits the partitioning information to one or more T1 robots 11 (S22).
  • the T1 robot 11 Upon receiving the partitioning information, the T1 robot 11 transmits the partitioning information to the T2 robot 12 (S23). This process is transmitted to the T1 to Tk robots so that all the robots can confirm and store the partitioning information.
  • the hub robot 10 and the other robots 11 and 12 move to the partitioned area and perform work (S25, S26, S27).
  • Each of the robots 10, 11 and 12 generates information on a space in which the robot has performed a task in the partitioned area, that is, task completion information, and also generates changed environment information such as a new obstacle.
  • the generated information is S31 (transmission completion information of the T1 robot and changed environment information transmission), S32 (T2 transmission of the task completion status and changed environment information to the T1 robot), S33 (T1 completion report of the robot, To the hub robot 10 in accordance with the changed environment information.
  • a failure occurs in the T2 robot 12 in this process (S35). If a failure occurs and communication between the T2 robot 12 and the T1 robot 11 is interrupted, the T1 robot 11 confirms the failure of the T2 robot 12 (S36). The failure state of the T2 robot is transmitted to the hub robot 10 (S37).
  • the hub robot 10 performs re-partitioning by reflecting the received information, in particular, the failure status of the T2 robot (S41). And transfers the re-partitioned information to the T1 robot 11 (S42).
  • Steps S31 to S46 may be performed until the execution of the job is completed.
  • the T1 robot 11 transmits the failure recovery state of the T2 robot 12, as shown in S35 to S37
  • the hub robot 10 can perform a series of processes (S41 to S46) of re-partitioning by reflecting the T2 robot failure recovery situation.
  • one robot can generate the second-order partitioning map and transmit it to another robot. That is, the communication unit 300 among the components of the robot to be discussed later with reference to FIG. 9 can transmit the initial partitioning map to one or more robots of the plurality of robots. Likewise, the communication unit 300 of the receiving robots 11 and 12 can also receive the initial partitioning map from another robot.
  • the operations of the robots shown in FIGS. 1 and 2 are based on a map.
  • the map means information about space, and various information can be stored on the map.
  • the maps may be constructed in an overlapping manner.
  • the fixed map discussed above places a fixed obstacle location.
  • the fixed map stores information of the entire space and shows the point where the robot can not move, such as an obstacle.
  • the robot Based on the fixed map, the robot performs partitioning for the whole space or some space, and can generate the covered map in the course of performing the work.
  • the partitioning map means a map in which all or part of the fixed map is divided into spaces in which two or more robots can operate.
  • the covered map means a map in which the robot has performed the operation within the partitioned space allocated to each robot.
  • the covered map may correspond to all or part of the fixed map described above.
  • the robots can temporarily store information about a fixed map corresponding to the entire space and a covered area for confirming whether or not the robot has worked in each cell in each fixed map.
  • N robots collaborate with each other and initially divide a given space into N partitions.
  • each robot may divide a space as shown in FIG. 1, and a hub robot divides a space as shown in FIG. 2, and provides information (partitioning information) about a divided region to another robot. Then, each robot moves from its designated charging position to its own partitioning area according to the partitioning information.
  • the movement destination of the robot can be automatically set to a point at which communication with the robot of the adjacent partition is ensured. This includes selecting points where no obstacles are placed.
  • the robot moves to be able to connect with at least one robot of close proximity partitioning, and moves to the next cell in which the coverage of its current area can be maximized.
  • the robots connected to the communication network perform the next optimized partitioning based on the current coverage state, the current location, and the obstacle information, and perform the coverage operation again based on the partitioning.
  • the robot can be repartitioned except for the failed robot.
  • the robots connected to the communication network transmit their respective coverage states, current position, and obstacle information directly or indirectly to the hub robot.
  • the Hub robot Based on the received information, the Hub robot performs the next optimized partitioning, provides the partitioned information to other robots, and each robot performs coverage again based on the new partitioning information. In the same way, the hub robot can repartition except for the failed robot during the new partitioning process.
  • the remaining robots can collaborate with each other except for the robot. For example, if the R3 robot can not operate, the entire space can be repartitioned to 4, excluding the R3 robot, and the operation can be performed until all the areas are covered.
  • 3 and 4 are views showing the configuration of a fixed map according to an embodiment of the present invention.
  • the position of the obstacle in the entire space can be identified as 51 in FIG. Then, dividing the entire space by a predetermined cell results in 52 in Fig. If the values of the cell having the obstacle and the cell having no obstacle are set differently based on 52 in FIG. 3, the fixed map can be obtained.
  • the obstacle can also be displayed in black, such as 52.
  • the color display includes displaying the value of the cell stored in the display unit of the robot as a specific cell. When the robot is stored in the map storage unit of the robot, a value indicating an obstacle arranged in each cell can be stored have.
  • FIG. 4 shows an embodiment in which the fixtures are set to a value of F, which is a single value.
  • 210 denotes a fixed map
  • F denotes a cell in which a fixture is disposed.
  • it can be grouped according to the characteristics of the fixture by a number or other symbol (f, a, b, etc.) instead of F.
  • f a number or other symbol
  • the fixed map may be displayed and stored in various forms such as 52 or 210.
  • Left and lower coordinate information can be used to indicate the cell.
  • the lower left corner can be designated as (0, 0) and the upper right corner as (21, 13).
  • S1 in FIG. 1 or S21 in FIG. 2 performs partitioning according to the number of robots in the space where the robot will work (the maximum space is the space of the fixed map and the minimum space is the lower space of the fixed map). Since the information about the fixed map is the same and the space for the robot to work is also given as the same input value, the result can be the same even if a plurality of robots partition.
  • the map storage unit of the robot stores the partitioning map.
  • the partitioning map means that the space is subdivided so that N robots can work efficiently considering the position and space of fixtures. And the number N of the robots is 5.
  • FIG. 5 is a diagram illustrating a configuration of a partitioning map according to an embodiment of the present invention.
  • the partitioning map 220a in which the areas allocated to the respective robots in the fixed map 210 of FIG. 4 are indicated by the identification information (1 to 5) of the robot will be described.
  • 1 denotes a cell assigned to the first robot
  • 2 denotes a cell assigned to the second robot.
  • a total of five to five robots were partitioned for work space.
  • the part F is hatched and the boundary between the partitioning spaces is indicated by a bold line.
  • the robot After setting the partitioning space between the robots in FIG. 5, the robot moves to the corresponding partitioning area (S2 in FIG. 1 and S25 to S27 in FIG. 2).
  • the steps S22 and S23 of sharing the partitioning information among the robots may be additionally performed.
  • the area indicated by circles in FIG. 5 shows the position where the robot has moved to the partitioned area.
  • the robot can perform repartitioning based on the changed environment information after a certain period of time in the process of working in the corresponding partitioning map.
  • the changed environment information may be a case where each robot performs a work (a covered cell) or a case where an unexpected movement obstacle occurs at the lower right end.
  • a situation in which a specific robot can not operate may also be changed environmental information.
  • FIG. 6 is a view showing a communication link of a distributed communication method in a state where robots according to an embodiment of the present invention are moved to respective partitioning areas.
  • Each robot connects a communication channel with another adjacent robot.
  • the first robot R1, the second robot R2, ..., and the fifth robot R5 are arranged, and correspond to the positions of the circles in Fig.
  • a communication link is formed between adjacent robots, and the link between i-th robot and j-th robot is denoted by Linkij.
  • Link formation between robots can be configured in a clockwise or counterclockwise direction based on the current position of each robot.
  • each robot can form a communication link with the robot in the partitioning area to which the adjacent boundary is long in the partitioning area to which the robot is assigned. Or it may or may not form a communication link depending on whether an obstacle is disposed between the robot and the robot.
  • a robot whose communication is not smooth due to an obstacle can be configured to preferentially set a communication link. After each robot moves to its own partitioning location, it broadcasts the message in the order of broadcasting completion, and then judges that the robot having the largest number of times that the message is not transmitted to other robots is in a bad communication state , You can give priority to setting up links with other robots.
  • robots of R1 to R5 communicate only with neighboring robots. And the environmental information of the robot can be shared by all the robots by circulating one cycle (one cycle) through the circulation path of the robot connection.
  • the cycle may be formed by the method of R1-R5-R4-R3-R2-R1.
  • the robots move to the partitioning area assigned to each robot, and then perform their respective tasks.
  • some robots may be in a state where there is no change with respect to the fixed map in performing a task in a given partitioning area.
  • the communication connection may be disconnected.
  • a link (Link 23) between R3 and R2 and a link (Link34) between R3 and R4 are disconnected due to a communication failure. Or a state in which the robot can not operate (battery discharge, etc.).
  • FIG. 6 a link (Link 23) between R3 and R2 and a link (Link34) between R3 and R4 are disconnected due to a communication failure. Or a state in which the robot can not operate (battery discharge, etc.).
  • environment information indicating that R3 is no longer operable can be transmitted to the robots R2 and R4 that have established the communication connection as S61 and S62.
  • R3 may transmit environmental information indicating that it is inoperable to only one of the robots R2 or R4, and R3 may be used to move R2 and R4 robots It is also possible to transmit environment information indicating that operation is impossible.
  • the R4 robot includes the environmental information including the failure occurrence of the R3 robot in the message, and transmits the R5 robot Lt; / RTI > Then, it is transmitted to the R1 and R2 robots again (S64, S65).
  • each robot confirms that there is no robot other than the R3 robot. Then, we set up a new communication link between R2 and R4 and perform partitioning, except for R3.
  • FIG. 7 is a diagram of a new link generated according to an embodiment of the present invention.
  • the R3 robot is excluded and a new communication link (Link24) is created between R2 and R4, which were adjacent robots of R3, and communication can be made in the direction of the arrow. Therefore, new partitioning can be performed and robots can share information based on this.
  • Link24 a new communication link
  • FIG. 8 is a diagram showing a map that is re-partitioned except for the R3 robot according to an embodiment of the present invention.
  • FIG. 5 it is confirmed that the region (indicated by 3 in FIG. 5) previously assigned to R3 in FIG. 5 is allocated to the R2 robot and the R4 robot in FIG.
  • the partitioning area of the R2 / R4 robot is expanded and the partitioning area of the adjacent R1 / R5 robot is also changed. Therefore, the number of cells allocated to each robot as a whole increases in comparison with FIG. 5, but is distributed to four robots, so that the increment of cells to be further worked by each robot is not large.
  • Robots (R2, R4 and optionally R3) connected to the link 23 and the link 34 judge the robot failure and share the information on the failure status of the robot in the one-way communication. If one direction is clockwise, it can be S63, S64, S65 like R4-> R5-> R1-> R2. If counterclockwise, R2-> R1-> R5-> R4. When the failure situation of the R3 robot is shared with other robots, the remaining four robots perform repartitioning as shown in FIG.
  • FIG. 8 according to the algorithm corresponding to the failure, and the remaining four robots are able to communicate with each other (For example, a formation capable of one cycle) and performs repartitioning as shown in FIG. 8 based on the change.
  • the position where the robots move is indicated by a circle.
  • the robots perform communication according to a predetermined order (for example, the order of R1 to R5 in FIGS. 6 and 7), and the optimal partitioning of both robots can be obtained have. Further, after partitioning, communication with the robot connected to the communication is performed, and optimal partitioning can be performed according to the changed environment information.
  • the entire communication link can be a ring shape. When one cycle passes, the result reflecting all the robots is obtained, and each robot can move to a position for increasing coverage after partitioning.
  • the remaining robots can redistribute some or all of the space including the partitioning area allocated to the robot And as a result, the remaining robots can move and operate in the re-partitioned area.
  • the system can be continuously operated by changing to a formation in which the connectivity between the remaining robots is guaranteed, except for the robot which has stopped and stopped.
  • the system can be continuously operated by changing the formation to ensure the connectivity between the remaining robots except for the robot having the failure. Particularly, when a large area is partitioned, even if the robot fails, only the remaining robot is re-partitioned by the above-described method, thereby enabling efficient and stable operation of the cooperative robot system.
  • a failure occurs in a specific robot in a state where the hub robot is disposed as shown in FIG. 2, it depends on the communication position of the robot. For example, if a robot (Tk robot) placed at the end of a communication layer fails, the communication connection can be partitioned except for the failed robot without reconfiguring. This is because the robot placed at the end does not transmit information to other robots.
  • robots other than the hub robot can re-partition the communication connection by the distributed communication method and perform repartitioning accordingly .
  • FIG. 9 is a view showing a configuration of a robot according to an embodiment of the present invention.
  • the robot 500 may be a robot of a distributed communication system. Or a hub robot of a hub communication type. Or a hub rather than a hub in a hub communication scheme.
  • the sensing unit 100 refers to various types of sensors that sense the presence, distance, and characteristics of an external object.
  • the sensing unit 100 includes a depth sensing unit for calculating a depth value, a vision sensing unit for calculating vision information, an infrared (IR) sensing unit, an ultrasonic sensing unit, . ≪ / RTI >
  • the control unit 400 generates the partitioning map 220 based on the fixed map 210 stored in the map storage unit 200. [ In addition, the controller 400 determines whether objects (new obstacles) that do not correspond to the fixed objects of the map storage unit 200 among the objects sensed by the sensing unit 100 after a predetermined time interval, As environment information.
  • the generated environment information can be transmitted / received to / from another robot such as a neighboring robot or a hub robot having a communication link established. That is, the control unit 400 controls one or more neighboring robots to transmit and receive the partitioning information and environment information by controlling the communication unit, and performs a new partitioning by transmitting or exchanging the partitioning information and environment information to the neighboring robot to generate a re- do. As shown in FIGS. 6 and 7, the communication link between the robots can newly establish a communication link in the state of failure of a specific robot or disconnection of the communication.
  • the neighboring robot determining the communication link can determine the robot disposed in the adjacent partitioning region as a neighboring robot.
  • the entire robot can configure a ring communication link. That is, the communication link generated by a plurality of robots maintains a ring shape, and each robot can transmit a message in a predetermined direction using a communication link.
  • the predetermined direction may be unidirectional or bidirectional.
  • control unit 400 controls the communication unit 300 to establish a communication link with another robot adjacent to the robot, for example, the second robot.
  • the communication unit 300 receives the failure environment information of the second robot
  • the communication unit 300 When the communication link of the second robot is disconnected, the communication unit 300 generates a communication link with the third robot that has generated the communication link with the second robot, and the control unit 400 can perform repartitioning with the third robot.
  • FIG. 10 is a diagram illustrating a process in which a robot performs an operation according to an initial partitioning map and then performs re-partitioning according to an embodiment of the present invention.
  • the control unit 400 of the first robot stores the initial partitioning map including the partitioning area of the plurality of robots to be operated in the space in the map storage unit 200 of the first robot S71.
  • the initial partitioning map allocated to the robots can be examined.
  • the initial partitioning map can be generated by each robot and retained by each robot.
  • S1 in Fig. 1 is an embodiment.
  • one robot (first robot) may generate it and send it to another robot or receive an initial partitioning map from another robot.
  • the communication unit 300 of the first robot transmits the initial partitioning map to one or more robots of the plurality of robots, or the communication unit 300 of the first robot transmits the initial partitioning map to at least one of the plurality of robots It can receive from the robot.
  • the moving unit 310 of each robot moves the robot to the partitioning area allocated to the robot (S72).
  • the communication unit 300 of the first robot which has moved to the respective partitioning area, generates a communication link with the second robot to communicate with the first robot S73.
  • FIGS. 6 and 7. An embodiment in which a communication link is formed is shown in FIGS. 6 and 7.
  • a communication link may be created based on the physical distance between the robots. Or if the partitioning areas allocated by the respective robots are adjacent to each other, a communication link can be created between the robots to which the adjacent partitioning areas are allocated. In the case of a robot assigned to a partitioning area having many obstacles, the robot can preferentially generate a communication link. Communication links may be created according to various criteria, and these communication links may maintain a ring form in a distributed communication system. On the other hand, in a hub communication system, a tree structure can be maintained.
  • a failure occurs in the neighboring robot of the first robot, that is, the robot that establishes the communication link with the first robot. That is, the communication unit 300 of the first robot receives the failure environment information of the second robot or confirms that the communication link of the second robot is disconnected. Thereafter, the communication unit 300 generates a communication link with the third robot that has created the communication link with the second robot (S74). The second robot has maintained a communication link with the first robot and the third robot, but a failure situation occurs and the first robot and the third robot generate a communication link.
  • the process of FIG. 10 can be performed again with the first robot and the fourth robot that sets another communication link.
  • the first robot generates a communication link with the second robot, and the communication unit of the first robot may generate a communication link with the fourth robot.
  • the structure of such a communication link is configured as " fourth robot-first robot-second robot ".
  • the first robot sets the fourth robot and the second robot as both neighboring robots until a failure occurs in the second robot. In this state, a failure occurs in the second robot, and as a result of the first robot establishing a communication link with the third robot, the structure of the communication link becomes " fourth robot - first robot - third robot ".
  • the communication unit 300 of the first robot transmits information on the first repartitioning zone to the fourth robot, and the control unit 400 of the first robot ) May generate a repartitioning map that repartitiones the region including the fourth and fourth repartitioning regions of the fourth robot. If the first-third robot is assigned to the area of the second robot due to the failure of the second robot, the area of the re-partitioned area of the first-third robot may be excessively larger than the area of the fourth robot, This can reduce the working efficiency.
  • the controller 400 of the first robot performs repartitioning with another adjacent robot (the fourth robot) can do.
  • repartitioning can be performed among all the robots connected to the communication link.
  • step S75 in FIG. 10 it is possible to transmit to the message that all the robots connected to the communication link can be repartitioned, and to perform repartitioning collectively on the whole area. This can be done in the same way as generating the initial partitioning map.
  • each robot can perform the partitioning thereof.
  • the controller of the robots can be designed to calculate the same partitioning map if the inputted environment information is the same.
  • the control unit 400 may generate the re-partitioning map based on the environment information of the third robot transmitted and received by the communication unit 300.
  • Using the environmental information means creating a re-partitioning map using the newly identified obstacles, fixed obstacles, and the number of robots capable of work as input values in the space.
  • a particular robot may receive all environmental information from other robots.
  • the robot receives environment information only between adjacent robots, and can perform the partitioning by reflecting the environment information.
  • the initial partitioning map 220c of FIG. 11 is a space allocated to the four robots.
  • the robots assigned to each partitioning area are R1 to R4, respectively.
  • the region where the robot performed the task is indicated by C.
  • the communication link between each robot is indicated by a dotted line.
  • the partitioning area assigned to R1 / R2 / R3 is re-partitioned between R1 and R3 with one partition as 220d.
  • the robot controller 400 calculates the working speed of each of the plurality of robots based on the cell in which the plurality of robots have performed the operation, You can create a partitioning map.
  • the re-partitioning map 220e shown in FIG. 12 is a result of re-partitioning by reflecting environment information in which the operation speed of R3 is higher than the operation speed of R1. Because R3 has more cells than the number of cells that have completed the task, R1 is the result of R3 being allocated more space. The number of cells to which the re-partitioning result R1 in FIG. 12 should work is 31, and the number of cells that R3 has to work with is 34.
  • the number of cells to be operated is 21, which is a very small number compared with R1 and R3. Therefore, the re-partitioning between R3 and R4 can be performed or the re-partitioning between R1 and R4 can be performed. This can be in a specific direction (R3-> R1-> R4 or R3-> R4-> R1) depending on the order of the communication link.
  • repartitioning can be performed by prioritizing the robots allocated the largest number of cells.
  • 220e can perform repartitioning between R3 and R4 because R3 is allocated the most partitioning area.
  • the processing speed of the robot can be calculated based on the number of cells processed in the meantime between R3 and R4, and more areas can be allocated to the robot having a high operation speed.
  • the final re-partitioning map is produced as a result of re-partitioning between R3-R4 as in 220f.
  • the number of cells allocated by R4 is 26, and the number of cells allocated by R3 is 29.
  • R1 has 31 cells allocated.
  • the robots can perform movement and operation based on the newly created repartitioning map 220f .
  • the above-described criteria may reflect the deviation of the number of cells allocated to each robot, the deviation of the number of newly allocated cells from the number of cells that the robot has worked in the past, and the like.
  • each robot can transmit and receive environment information in a certain manner in a message according to a communication link. Then, new re-partitioning can be performed based on the transmitted and received environment information.
  • repartitioning is performed on the basis of the work area of each robot, but it is possible to include time / area information that each robot can work with environment information, and re-partitioning can be performed based on the time / area information. That is, in FIG. 11, information about the workable time or workable area of the robots between R1 and R3 can be transmitted and received as environmental information. At least one of the controllers R1 and R3 may generate a repartitioning map to which more area is allocated to the robot having a large workable time or a large workable area.
  • a plurality of robots when a distributed communication system is configured to cope with communication instability in a large area environment, a plurality of robots can maintain work through repartitioning in response to an emergency situation such as an environmental change or a failure of a robot.
  • an emergency situation such as an environmental change or a failure of a robot.
  • it can be operated based on a coverage algorithm that is optimal for a failure situation.
  • the coverage algorithm can be installed in the control unit 400 of the robot in a program form, and the optimal re-partitioning map can be calculated using the work area, the workable state, the obstacle state, and the like of each of the robots as the input values.
  • embodiments of the present invention When the embodiment of the present invention is applied to a cleaning robot, it is possible to actively clean the time collaborative actively in a large area through a collaboration-based system.
  • embodiments of the present invention can be applied to a system in which specific tasks such as security, reconnaissance, and guidance are divided and scheduled and collaborated.
  • a communication system based on collaboration can be changed when a failure occurs in a specific robot.
  • the first robot Rl includes the third partitioning area of the third robot R3 and the second robot R2 and the first partitioning area of the first robot R1, And a re-partitioning map for repartitioning the area including the third partitioning area of the third robot R3 into the first repartitioning area of the first robot R1 and the third repartitioning area of the third robot R3 Can be generated.
  • the re-partitioning can also be performed between R1 and R4. That is, the communication unit of the first robot R1 transmits information on the first repartitioning region, which is the result of repartitioning with the third robot, to the fourth robot R4, and the control unit of the first and fourth robots
  • a re-partitioning map for re-partitioning the area including the fourth partitioning area of the fourth robot and the first re-partitioning area of the first robot can be newly created.
  • each robot can repartition based on the speed at which it has processed the work. For example, the processing speed is very low, reflecting the state information (such as the remaining battery power of the robot) of the robot and the environmental information, so that the adjacent robot can reduce the area to be allocated to the robot. Similarly, a robot with a high cell processing speed can allocate more space for partitioning, assuming that the processing speed will be higher even if the robot is newly partitioned.
  • FIG. 13 to 16 are diagrams illustrating a process of converting from a fault-based to a collaborative-based distributed communication system in a system based on hub communication according to an embodiment of the present invention.
  • the hub robot and the T1 and T2 robots shown in FIG. 2 will be mainly described. This shows that, among the robots, other robots other than the hub robot operate after receiving the initial partitioning map from the hub robot.
  • FIG. 13 is a configuration in which the hub robot and the T1 / T2 / ... / Tn robots are disposed in a specific space.
  • the hub robot is represented by HR
  • the T1 robot is represented by T1-1, T1-2, etc. in order.
  • the T2 robot is indicated by T2-1, T2-2, and so on.
  • Fig. 13 shows a configuration in which the partitioning area is arranged around the hub robot HR.
  • any one of the robots may serve as a hub, but the entire communication link can be converted into a distributed system. This will be described in more detail in Fig.
  • the hub robot has been removed because the hub robot (HR) has failed and can no longer operate.
  • the communication link of the ring structure is newly established while maintaining the communication link originally set between the robots of the T1 level and the robots of the T2 level attached thereto.
  • T2-1 and T2-2 and T1-1 are arranged to form a ring communication link. This is shown in FIG.
  • a communication link is established between robots capable of communicating between robots of the Tl level in the structure of the communication link.
  • communication links can be configured between robots arranged adjacent in T1-1 to T1-4 as shown in FIG. Robots with T1 level are close to each other, so communication links can be configured as ring structures.
  • each T1 level robot can manage the lower communication link of its ring structure and perform repartitioning.
  • the area of the hub robot can be divided and allocated by the robots of the T1 level, and then the repartitioning can be performed again with the robots of the T2 level using the communication link of each lower ring structure.
  • a ring-shaped communication link can be constructed as shown in Fig.
  • Fig. 16 is a view showing that all the robots constitute a communication link in the form of a ring. As shown in FIG. 16, the robots that set the communication link divide the area by re-partitioning the area including the area handled by the hub robot according to the process of FIGS. 10, 11, and 12 previously.
  • T1 level robots constitute a communication link of a ring structure, Lt; / RTI > After the robot of T1 level is allocated by re-partitioning the area of the hub robot, the robot of T1 level can perform repartitioning again with the robot of T2 level constituting the communication link with the robot of T1 level.
  • T2-5 and T2-4 are communicable and T2-2 and T2-3 are communicable as shown in Fig. 16
  • all the robots can form a ring communication link.
  • the T1 level robot which is adjacent to the area of the hub robot, is allocated by re-partitioning the area of the hub robot, and then the other T1 level robots and the adjacent other robots Of the robot), and may be sequentially repartitioned according to the communication link of the ring structure.
  • FIG. 17 is a flowchart showing the procedure of FIG. 13 through FIG. 16 for switching to a distributed communication system when a failure occurs in a hub robot according to an embodiment of the present invention.
  • 17 is a block diagram showing a configuration in which the controller 400 of the robot having the T1 level with communication with the hub robot sets a communication link of a ring structure between robots of different T1 levels, It shows the process of creating a partitioning map.
  • the robots of the T1 level confirm that a failure of the hub robot has occurred (S81). Confirmation includes checking that the communication unit of the T1 level robot confirms that the T1 level robot receives the failure occurrence message from the hub robot or the communication with the hub robot is disconnected.
  • Each of the T1 level robots establishes a communication link of the ring structure with the lower level robots (S82).
  • the link structure of Fig. 14 is described as an embodiment.
  • a communication link is set up between the communicable T1 level robots (S83).
  • the communication link is established between the robots of the T1 level, as shown in FIG. 15, a communication link is formed between the robots capable of communicating among the robots of the T1 to Tk level to form a communication link of a ring structure as a whole (S84).
  • FIG. S84 and FIG. 16 show the process of establishing the communication link of the ring structure between the robots of the lower level of the T1 level.
  • the ring structure is a ring structure between robots at T1 level as shown in Fig. 15 or a ring structure between all robots as shown in Fig.
  • a device or a robot that acts as a hub to connect all robots. It receives data of each robot in real time and outputs the result based on the result. Then, each robot sends the next command (next position or next task) , It is possible to derive the optimal result because it executes the algorithm with all the robots' states, and it is easy to implement, but when the communication connection with the hub robot is disconnected, other robots can not perform the functions.
  • the hub communication system when a failure occurs in the hub robot, the hub communication system operates in a hub communication mode when no failure occurs in each robot, and when the hub robot fails, So that the user can perform an operation in an area within the rear space.
  • the initial start generates the initial partitioning map by hub (central) communication method or distributed communication method, and enables the robots to operate based on the distributed communication system in case of failure in operation, thereby realizing real-time partitioning It is possible to optimize coverage through. Especially, even if a certain robot is disconnected, it does not affect the cooperation algorithm of all robots, so it is easy to cope with an emergency situation such as a failure.
  • multiple robots can optimally cover an area by collaborating through real-time partitioning considering both the type of environment and dynamic / static obstacle information in a given large-area environment.
  • communication can be performed except for the robot, thereby improving the reliability of the robot.
  • real-time partitioning is performed by reflecting the current situation (obstacle, coverage area, speed, etc.) including different processing speeds for each robot based on the coverage information.
  • real-time partitioning considering various situations such as a case where there are many obstacles in a specific area and a case where a difference in a covered area is large can be performed and an efficient coverage work can be performed.
  • the robot applies weight and size of the previously worked area, the size and the degree of dispersion of the area where the new obstacle is placed, and the shape of the working speed and the boundary line, Can be generated.
  • the control unit 400 firstly calculates the number of cells in the region to be re-partitioned by applying the degree of dispersion and position of the corresponding cells and the battery state of the robot as weights, even if the same number of cells are used, You can select a borderline that reduces the travel distance.
  • the present invention is not necessarily limited to these embodiments, and that all the elements within the scope of the present invention Or may be selectively coupled to one or more of them.
  • all of the components may be implemented as one independent hardware, some or all of the components may be selectively combined to perform a part or all of the functions in one or a plurality of hardware.
  • the codes and code segments constituting the computer program may be easily deduced by those skilled in the art.
  • Such a computer program can be stored in a computer-readable storage medium, readable and executed by a computer, thereby realizing an embodiment of the present invention.
  • the storage medium of the computer program includes a magnetic recording medium, an optical recording medium, and a storage medium including a semiconductor recording element.
  • a computer program embodying the present invention includes a program module that is transmitted in real time through an external device.
  • sensing unit 200 map storage unit
  • control unit 500 robot

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 발명은 공간을 분할-작업하는 다중 로봇들 간의 통신 방법 및 이를 구현하는 로봇에 관한 것으로, 본 발명의 일 실시예에 의하면 제1로봇의 제어부가 공간에서 작업할 다수의 로봇들의 파티셔닝 영역을 포함하는 초기 파티셔닝 맵을 제1로봇의 맵 저장부에 저장 및 이동한 후 제1로봇의 통신부가 제1로봇과 통신할 제2로봇과 통신링크를 생성하되 제2로봇의 장애 상황이 발생하면, 통신부는 제2로봇과 통신링크를 생성하였던 제3로봇과 통신링크를 생성하여 재파티셔닝 맵을 생성하는 단계를 포함한다.

Description

공간을 분할-작업하는 다중 로봇들 간의 통신 방법 및 이를 구현하는 로봇
본 발명은 공간을 분할-작업하는 다중 로봇들 간의 통신 방법 및 이를 구현하는 로봇에 관한 기술이다.
공항, 학교, 관공서, 호텔, 사무실, 공장, 체육관, 공연장과 같은 문화시설 등 인적, 물적 교류가 활발하게 발생하는 공간에서는 하나의 로봇이 전체 공간을 커버하여 동작할 수 없다. 따라서, 다수의 로봇들이 공간에 배치되어 동작하는 것이 필요하다.
그런데, 다수의 로봇들이 동작하기 위해서는 공간을 효과적으로 분할하여 작업하는 것이 필요한데, 로봇이 동작하는 공간은 다양한 변수가 발생할 가능성이 높다. 특히, 대면적의 유동 인구가 많은 공간에서는 이동 장애물이 다수 배치될 수 있으며, 또한 로봇이 동작 과정에서 고장이 날 수도 있다. 또한, 로봇들 간의 통신이 원활하지 못할 수 있는데, 이는 대면적의 공간에서 로봇의 통신에 일시적인 장애가 발생할 수 있기 때문이다.
따라서, 본 명세서에서는 대면적의 공간에서 로봇들이 협업하여 공간에서 특정 로봇에 장애가 발생한 경우 작업을 수행하는 방안에 대해 살펴본다.
본 명세서에서는 전술한 문제점을 해결하기 위한 것으로, 다수의 로봇이 공간을 분할하여 작업하되 일부 로봇에 장애가 발생할 경우, 실시간 혹은 특정한 주기를 가지고 로봇들 간의 통신 링크를 변화시켜 새로이 공간을 분할하여 작업하는 방법 및 로봇을 제안한다.
또한, 본 명세서에서는 로봇들이 분산 통신의 링 구조로 통신 링크를 유지하여 장애가 발생한 경우 보다 신속하게 대응하는 방법 및 로봇을 제안한다.
또한. 본 명세서에서는 로봇들 간의 통신을 보장하기 위해 일부 로봇들 간의 통신망을 연결하는 방법 및 로봇을 제안한다.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
본 발명의 일 실시예에 의한 공간을 분할-작업하는 다중 로봇들 간의 통신 방법은 제1로봇의 제어부가 공간에서 작업할 다수의 로봇들의 파티셔닝 영역을 포함하는 초기 파티셔닝 맵을 제1로봇의 맵 저장부에 저장하는 단계, 제1로봇의 이동부가 제1로봇에게 할당된 파티셔닝 영역으로 로봇을 이동시키는 단계, 제1로봇의 통신부는 제1로봇과 통신할 제2로봇과 통신링크를 생성하는 단계, 통신부가 제2로봇의 장애 환경 정보를 수신하거나 제2로봇의 통신링크가 단절된 경우 통신부는 제2로봇과 통신링크를 생성하였던 제3로봇과 통신링크를 생성하는 단계, 및 제어부는 제3로봇과 제2로봇의 제2파티셔닝 영역 및 제1로봇의 제1파티셔닝 영역 및 제3로봇의 제3파티셔닝 영역을 포함하는 영역을 제1로봇의 제1재파티셔닝 영역 및 제3로봇의 제3재파티셔닝 영역으로 재파티셔닝하는 재파티셔닝 맵을 생성하는 단계를 포함하는 포함한다.
본 발명의 다른 실시예에 의한 공간을 분할-작업하는 다중 로봇들 간의 통신 방법을 구현하는 로봇은 외부에 배치된 객체를 센싱하는 센싱부, 로봇이 이동하는 공간의 고정 객체의 위치를 저장하는 맵 저장부, 로봇을 이동시키는 이동부, 파티셔닝 정보 및 환경 정보를 하나 이상의 다른 로봇과 송수신하는 통신부, 로봇이 작업을 수행하는 작업부, 및 센싱부와 맵 저장부와 이동부와 통신부와 작업부를 제어하며, 제어부는 로봇에 인접한 제2로봇과 통신 링크를 설정하도록 통신부를 제어하며, 통신부가 제2로봇의 장애 환경 정보를 수신하거나 제2로봇의 통신링크가 단절된 경우 통신부는 제2로봇과 통신링크를 생성하였던 제3로봇과 통신링크를 생성한 후, 제어부는 제3로봇과 재파티셔닝을 수행한다.
본 발명의 실시예들을 적용할 경우, 다중로봇이 주어진 대면적 환경에서 환경의 형태 및 동적/정적 장애물 정보를 모두 고려한 실시간 파티셔닝을 통해 협업하는 과정에서 특정 로봇에 장애가 발생한 경우 이에 대해 효율적으로 대처할 수 있다.
또한, 본 발명의 실시예들을 적용할 경우, 대면적 공간에서 다중로봇들이 분산형 통신 시스템을 이용하거나 허브형 통신 시스템을 이용하여 모든 로봇의 연결성이 확보되지 않는 상태에서도 동작하며, 이 과정에서 장애가 발생할 경우 장애가 발생한 로봇에 인접한 다른 로봇들과 실시간 파티셔닝을 수행하여 각 로봇이 작업할 커버리지를 최적화 시킬 수 있다.
본 발명의 효과는 전술한 효과에 한정되지 않으며, 본 발명의 당업자들은 본 발명의 구성에서 본 발명의 다양한 효과를 쉽게 도출할 수 있다.
도 1은 본 발명의 일 실시예에 의한 분산 통신 방식으로 로봇이 동작하는 과정을 보여주는 도면이다.
도 2는 본 발명의 다른 실시예에 의한 허브 통신 방식으로 로봇이 동작하는 과정을 보여주는 도면이다.
도 3 및 도 4는 본 발명의 일 실시예에 의한 고정맵의 구성을 보여주는 도면이다.
도 5는 본 발명의 일 실시예에 의한 파티셔닝 맵의 구성을 보여주는 도면이다.
도 6은 본 발명의 일 실시예에 의한 로봇들이 각각의 파티셔닝 영역으로 이동한 상태에서의 분산 통신 방식의 통신 링크를 보여주는 도면이다.
도 7은 본 발명의 일 실시예에 의한 새로운 링크가 생성된 도면이다.
도 8은 본 발명의 일 실시예에 의한 R3 로봇을 제외하고 재파티셔닝한 맵을 보여주는 도면이다.
도 9는 본 발명의 일 실시예에 의한 로봇의 구성을 보여주는 도면이다.
도 10은 본 발명의 일 실시예에 의한 로봇이 초기 파티셔닝 맵에 따라 작업을 수행한 후 재파티셔닝을 수행하는 과정을 보여주는 도면이다.
도 11 및 도 12는 본 발명의 일 실시예에 의한 환경 정보에 기반하여 재파티셔닝하는 과정을 보여주는 도면이다.
도 13 내지 도 16은 본 발명의 일 실시예에 의한 허브 통신에 기반한 시스템에서 고장 발생 후 협업 기반 분산 통신 시스템으로 변환하는 과정을 보여주는 도면이다.
도 17은 본 발명의 일 실시예에 의한 허브 로봇에 장애가 발생한 경우 분산 통신 시스템으로 전환하는 순서도이다.
이하, 도면을 참조하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조 부호를 붙이도록 한다. 또한, 본 발명의 일부 실시예들을 예시적인 도면을 참조하여 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가질 수 있다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 수 있다.
본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질, 차례, 순서 또는 개수 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 다른 구성 요소가 "개재"되거나, 각 구성 요소가 다른 구성 요소를 통해 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
또한, 본 발명을 구현함에 있어서 설명의 편의를 위하여 구성요소를 세분화하여 설명할 수 있으나, 이들 구성요소가 하나의 장치 또는 모듈 내에 구현될 수도 있고, 혹은 하나의 구성요소가 다수의 장치 또는 모듈들에 나뉘어져서 구현될 수도 있다.
이하 본 명세서에서는 인접한 로봇들 사이에서 협업하여 정보를 교환하고 작업할 공간을 파티셔닝(partitioning)하고 작업을 수행하며, 이 과정에서 발생한 변화 요소를 반영하여 재파티셔닝(Re-Partitioning)을 수행하는 과정 및 이를 구현하는 로봇에 대해 살펴본다.
또한, 로봇은 공간에 대한 정보를 저장할 수 있다. 공간에 대한 정보를 저장하기 위해 공간을 소정의 단위가 되는 셀로 나눌 수 있으며, 각 셀은 정보를 저장할 수 있다. 일 실시예로, 로봇은 고정된 장애물이 배치된 고정맵(Fixed Map)을 포함한다. 또한, 로봇은 고정맵에 추가하여 각 로봇이 작업하도록 파티셔닝된 파티셔닝 맵(Partitioning Map)을 포함한다. 그리고, 로봇은 파티셔닝 맵에서 로봇이 작업을 수행한 영역을 표시하는 커버드 맵(Covered Map) 을 포함한다. 커버드 맵은 파티셔닝 맵의 특정 셀을 표시하는 방식으로 구현할 수 있다.
로봇은 전체 공간에 대한 고정맵을 저장하며, 전체 공간 중 해당 로봇에게 할당된 공간과 할당한 공간에 인접한 다른 로봇의 공간 등의 정보를 포함하는 임시맵(Temporary Map)을 저장할 수 있다. 로봇이 다른 로봇과 통신할 수 있는 능력에 따라 임시맵이 전체 공간을 모두 포괄할 수 있다. 또한, 로봇의 통신 능력에 따라 임시맵이 일부 공간만을 포괄할 수 있다.
한편, 본 명세서에서 로봇들의 통신 방식은 두 가지 방식으로 이루어진다. 로봇들이 통신에 있어서 수평적인 관계를 가지는 분산 통신 방식과 로봇들 중에서 하나의 로봇이 통신의 중심에 있는 허브 통신 방식으로 나뉘어진다. 분산 통신 방식의 실시예로 로봇들의 통신망은 링(Ring) 형태로 구성될 수 있다. 또한, 허브 통신 방식의 일 실시예로 로봇들의 통신망은 스타(Star) 형태로 구성될 수 있다. 뿐만 아니라 일부 통신망은 링으로, 다른 통신망은 스타 형태로 구성될 수 있다.
또한, 본 명세서에서 로봇은 특정한 목적(청소, 보안, 모니터링, 안내 등)을 가지거나 혹은 로봇이 이동하는 공간의 특성에 따른 기능을 제공하며 이동하는 장치를 포함한다. 따라서, 본 명세서에서의 로봇은 소정의 정보와 센서를 이용하여 이동할 수 있는 이동수단을 보유하며 소정의 기능을 제공하는 장치를 통칭한다.
본 명세서에서 로봇은 맵을 보유하면서 이동할 수 있다. 맵은 공간에서 이동하지 않는 것으로 확인된 고정된 벽, 계단 등 고정 객체에 대한 정보를 의미한다. 또한, 주기적으로 배치되는 동적인 객체들에 대한 정보도 맵 상에 저장될 수 있다. 일 실시예로 로봇의 진행 방향을 기준으로 일정한 범위 내에 배치된 장애물들에 대한 정보도 맵 상에 저장될 수 있다.
전술한 본 발명의 실시예가 가지는 기술적 특징들에 기반하여 다음과 같이 로봇의 구성 및 동작 과정에 대해 살펴본다.
먼저, 대면적의 로봇들은 초기 파티셔닝 또는 실시간/시간 주기에 따른 재파티셔닝을 수행할 수 있다. 이들 파티셔닝 방식은 특정한 로봇이 파티셔닝 정보에 기반하여 초기 파티셔닝을 수행한 후, 특정 로봇에게 문제가 발생한 경우, 해당 로봇을 제외하고 재파티셔닝 할 수 있다.
먼저 로봇들 사이에서 초기 파티셔닝 및 재파티셔닝 과정을 살펴본다. 이는 통신 방식에 따라 다양하게 구성될 수 있다.
도 1은 본 발명의 일 실시예에 의한 분산 통신 방식으로 로봇이 동작하는 과정을 보여주는 도면이다. 분산 통신 방식인 경우 로봇은 주어진 정보를 기준으로 각각 다음 정보를 산출할 수 있다. 본 발명의 일 실시예에서 로봇들은 주어진 정보가 동일할 경우 동일한 결과를 산출하도록 프로세싱할 수 있다.
각 로봇들은 주어진 형태의 환경, 즉 공간의 환경을 고려하여 N-개로 공간을 파티셔닝한다(S1). 각 로봇에게 초기에 주어진 환경 정보(공간의 정보)가 동일할 경우 각 로봇이 산출하는 N 개의 공간의 파티셔닝 결과는 동일할 수 있다. 반면, 각 로봇이 초기에 주어진 환경 정보(공간의 정보) 외에 각각의 로봇이 센싱하거나 취득한 개별 정보가 있을 경우, 각 로봇이 산출하는 N 개의 공간의 파티셔닝 결과는 상이할 수 있다.
각각의 로봇들은 파티셔닝된 영역(파티션)으로 이동한다(S2). 이동 후 로봇들은 근접하여 이웃하는 파티션의 로봇과 통신 연결성을 확인한다(S3). 통신 연결이 확인되면 각 파티션에서 로봇들은 각각의 작업을 수행한다(S4). 로봇이 수행하는 작업은 로봇이 수행하는 기능에 따라 상이할 수 있다. 청소 로봇인 경우 청소 작업을 수행할 수 있으며, 보안 로봇인 경우 위험물을 탐지하는 작업을 수행할 수 있다. 안내 로봇인 경우 파티션 내에서 사람들의 이동에 대응하여 안내 작업을 수행할 수 있다. 디스플레이 로봇인 경우, 파티션 내에서 일정한 정보를 지속하여 출력할 수 있다.
로봇은 일정한 주기로 파티션에서 작업의 수행이 완료되었는지를 확인한다(S5). 일정한 주기란 시간적 주기를 의미한다. 시간적 주기가 무한대인 경우 로봇은 작업을 완료할 때까지 S1에서 결정된 파티션 내에서 작업을 수행한다. 시간적 주기가 10분인 경우, 로봇은 10분동안 작업을 수행한 후, 작업이 완료되지 않은 경우 S6 단계로 진행한다. 시간적 주기 내에 작업이 완료되면 전체 영역의 커버 완료를 확인하고(S9) 종료한다.
S6 단계로 진행하면 분산 통신 상태에서 통신 연결에서 장애가 발생하거나 혹은 고장 등으로 인해 동작이 불가능한 경우 등 장애가 발생한 로봇이 있는지를 확인한다(S6). 이는 분산 통신 상태인 경우, 장애가 발생한 로봇과 근접하여 배치되어 장애 로봇과 통신을 수행했던 로봇들이 장애 로봇의 장애 발생사실을 확인할 수 있다.
따라서, 특정 로봇에서 장애가 발생한 경우, 장애가 발생한 해당 로봇을 통신 연결 또는 파티셔닝 과정에서 제외한다. 그리고 장애가 발생한 로봇의 근접 로봇(이웃 로봇)은 다른 로봇들과 통신 연결을 재설정하여 전체 영역의 커버리지를 최대화하는 파티셔닝을 수행한다(S7). 그리고 S2 단계를 진행한다.
반면, 장애 로봇이 발생하지 않은 경우, 각각의 로봇들은 최소 한대 이상 근접한 로봇과 연결성을 보장하면서 전체 영역의 커버리지를 최대화하는 파티셔닝을 수행한다(S8). 이는 재파티셔닝을 의미하며, 지금까지 로봇이 작업한 영역과 새로운 장애물로 인한 작업 불가 영역, 혹은 특정 로봇의 고장 등 변화한 환경을 반영하여 공간을 새롭게 파티셔닝하는 실시예를 포함한다.
재파티셔닝(S7 또는 S8) 이후 로봇은 다시 새로운 파티셔닝된 영역으로 이동하여 S2 내지 S5 단계를 수행한다.
재파티셔닝(S6) 이후 로봇은 다시 새로운 파티셔닝된 영역으로 이동하여 S2 내지 S5 단계를 수행한다.
재파티셔닝(S7 또는 S8) 단계에서 기존의 통신 연결을 재설정할 수 있다. 예를 들어, 4개의 로봇(R1, R2, R3, R4)인 R1-R2-R3-R4들이 배치된 상태에서 초기 파티셔닝 과정에서는 R1-R2-R3-R4-R1과 같은 링 형태로 통신연결이 된 경우에서 재파티셔닝하는 과정에서 통신 효율을 재점검하여 통신 연결을 변경할 수 있다.
즉, R1-R2-R3-R4-R1의 연결 대신, R1-R2-R4-R3-R1과 같은 방식으로 통신이 새로이 설정되어 연결될 수도 있다.
도 2는 본 발명의 다른 실시예에 의한 허브 통신 방식으로 로봇이 동작하는 과정을 보여주는 도면이다. 도 1은 각각의 로봇들이 각자 파티셔닝을 수행하며 다른 로봇과 정보를 교환하는 방식이다. 이와 달리 도 2는 허브 로봇이 각각의 로봇들로부터 정보를 수집하여 파티셔닝을 수행한 후 다른 로봇에게 정보를 제공하는 방식이다. 여기서 모든 로봇들이 허브 로봇에게 정보를 직접 제공할 수도 있으며, 혹은 허브 로봇에 근접한 로봇들은 허브 로봇에게 정보를 직접 제공하고, 허브 로봇과 멀리 있는 로봇들은 허브 로봇에 근접한 로봇을 이용하여 정보를 간접 제공할 수 있다.
이하, 허브 로봇에 근접하여 허브 로봇과 직접 통신이 가능한 로봇을 T1(Tier 1) 로봇이라고 한다. 한편, T1 로봇에 근접하여 T1 로봇과 직접 통신이 가능하지만 허브 로봇과는 통신이 불가능한 로봇을 T2(Tier 2) 로봇이라고 한다. 마찬가지로 Tk 로봇은 T(k-1) 로봇과 직접 통신이 가능하지만 허브 로봇과는 통신이 불가능한 로봇을 지시한다. k의 수가 작을수록 로봇들이 보다 통신 환경이 좋은 상태에 있음을 의미한다. k의 숫자가 커질 경우, 허브 로봇이 다른 로봇들과 통신이 원활하지 않으므로, 허브 역할을 새로운 로봇이 수행하도록 조정될 수 있다.
앞서 로봇들을 R1, R2 등으로 지시할 경우, 특정한 로봇들이 T1 로봇이 될 수 있다. 예를 들어 R1 로봇이 허브이며 R2, R3 로봇이 T1 로봇이며, R4, R5 로봇이 T2 로봇이 될 수 있다.
허브 로봇(10)은 주어진 형태의 환경을 고려하여 로봇의 수 N에 따라 N개로 파티셔닝한다(S21). 허브 로봇(10)은 하나 이상의 T1 로봇(11)에게 파티셔닝 정보를 전송한다(S22). 파티셔닝 정보를 수신한 T1 로봇(11)은 T2 로봇(12)에게 파티셔닝 정보를 전송한다(S23). 이러한 과정은 T1 내지 Tk 로봇들에게 전달되어 전체 로봇들은 파티셔닝 정보를 확인하고 저장할 수 있다.
이후 허브 로봇(10) 및 다른 로봇들(11, 12)은 각각 파티셔닝된 영역으로 이동하여 작업을 수행한다(S25, S26, S27). 작업 수행 과정에서 각각의 로봇들(10, 11, 12)은 파티셔닝된 영역 내에서 작업을 수행한 공간에 대한 정보, 즉 작업 완료 정보를 생성하며, 또한 새로운 장애물과 같은 변화된 환경 정보를 생성한다. 그리고 생성된 정보는 S31(T1 로봇의 작업 완료 정보 및 변화된 환경 정보 전송), S32(T2 로봇이 T1 로봇에게 작업 완료 상황 및 변화된 환경 정보 전송), S33(T1 로봇이 T2 로봇의 작업 완료 정보 및 변화된 환경 정보 전송)의 단계에 따라 허브 로봇(10)에게 전송된다.
한편, 이 과정에서 T2 로봇(12)에 장애가 발생한다(S35). 장애가 발생하여 T2 로봇(12)과 T1 로봇(11) 사이에 통신 연결이 끊어지면, T1로봇(11)은 T2로봇(12)의 장애를 확인하고(S36). 허브 로봇(10)에게 T2 로봇의 장애 상태를 전송한다(S37).
허브 로봇(10)은 작업이 완료되지 않은 경우, 수신된 정보, 특히 T2 로봇의 장애 상황을 반영하여 재파티셔닝을 수행한다(S41). 재파티셔닝된 정보를 T1 로봇(11)에게 전송한다(S42).
이후 장애가 발생하지 않은 로봇들은 각각 로봇들에게 할당된 영역, 즉, 파티셔닝된 영역으로 이동하여 작업을 수행한다(S45, S46). 작업의 수행이 완료되기 까지는 S31 내지 S46 단계를 진행할 수 있다.
만약, T2 로봇(12)의 장애가 복구되거나 T1 로봇(11)과의 통신 연결이 가능해질 경우, S35 내지 S37 에서 살펴본 바와 같이, T1 로봇(11)은 T2 로봇(12)의 장애 복구 상태를 전송하고, 마차가지로 허브 로봇(10)은 T2 로봇 장애 복구 상황을 반영하여 재파티셔닝하는 일련의 과정(S41~S46)을 수행할 수 있다.
도 2에서 초가 파티셔닝 맵을 하나의 로봇이 생성하여, 다른 로봇으로 전송할 수 있다. 즉, 후술할 도 9에서 살펴볼 로봇의 구성 요소 중에서 통신부(300)는 초기 파티셔닝 맵을 다수의 로봇들 중 하나 이상의 로봇들에게 송신할 수 있다. 마찬가지로, 수신하는 로봇들(11, 12)의 통신부(300) 역시 초기 파티셔닝 맵을 다른 로봇으로부터 수신할 수 있다.
도 1 및 도 2에서 살펴본 로봇들의 동작은 맵에 기반하여 이루어진다. 맵은 공간에 대한 정보를 의미하며 맵 상에는 다양한 정보들이 저장될 수 있다. 맵은 중첩적으로 구성될 수 있다. 앞서 살펴본 고정맵은 고정된 장애물의 위치가 배치된다. 고정맵은 전체 공간의 정보를 저장하며 장애물 등 로봇이 이동할 수 없는 지점을 보여준다. 고정맵에 기반하여 로봇은 전체 공간 또는 일부 공간에 대해 파티셔닝을 수행하며 작업을 수행하는 과정에서 커버드 맵을 생성할 수 있다.
따라서 파티셔닝 맵은 고정맵 전체 또는 일부를 둘 이상의 로봇이 동작할 수 있는 공간으로 나눈 맵을 의미한다. 커버드 맵은 각 로봇에게 할당된 파티셔닝된 공간 내에서 로봇이 작업을 수행한 맵을 의미한다. 커버드 맵은 전술한 고정맵 전체 또는 일부에 대응할 수 있다. 예를 들어 로봇들은 모두 전체 공간에 대응하는 고정맵 및 각 고정맵 내의 각 셀들에서 로봇이 작업했는지 여부를 확인하는 커버된 영역에 대한 정보를 임시로 저장할 수 있다.
도 1 및 도 2를 정리하면 다음과 같다.
N개의 로봇이 서로 협업하며, 주어진 공간을 N개의 파티션으로 초기 분할한다. 분할은 도 1과 같이 각각의 로봇이 공간을 분할할 수도 있고 도 2와 같이 허브 로봇이 공간을 분할하여 분할된 영역에 대한 정보(파티셔닝 정보)를 다른 로봇에게 제공할 수 있다. 그리고 각 로봇들은 파티셔닝 정보에 따라 지정된 충전 위치에서 각자의 파티셔닝 영역으로 이동한다.
로봇의 이동 목적지는 근접한 파티셔닝의 로봇과의 통신이 확보 되는 지점으로 자동 설정될 수 있다. 이는 장애물이 배치되지 않은 지점을 선택하는 것을 포함한다. 최소 한대 이상의 근접 파티셔닝의 로봇과 연결이 가능하도록 이동하며, 자신의 현재 영역의 커버리지를 최대화 할 수 있는 다음 셀로 이동하여 작업을 수행한다.
도 1의 분산 통신 방식에 따를 경우 통신망으로 연결되는 로봇들은 서로간의 현재 커버리지 상태와 현재 위치, 장애물 정보 등을 기반으로 다음 최적화된 파티셔닝을 진행하며 그를 토대로 다시 커버리지 작업을 수행한다. 새로운 파티셔닝을 진행하는 과정에서 장애가 발생한 로봇은 제외하고 재파티셔닝 할 수 있다.
도 2의 허브 통신 방식에 따를 경우 통신망으로 연결되는 로봇들은 각자의 커버리지 상태와 현재 위치, 장애물 정보를 직접 또는 간접으로 허브 로봇에게 전송한다. 허브 로봇은 전송받은 정보에 기반하여 다음 최적화된 파티셔닝을 진행하며 파티셔닝한 정보를 다른 로봇들에게 제공하고, 각각의 로봇들은 새로운 파티셔닝 정보에 기반하여 다시 커버리지 작업을 수행한다. 마찬가지로 허브 로봇은 새로운 파티셔닝을 진행하는 과정에서 장애가 발생한 로봇은 제외하고 재파티셔닝 할 수 있다.
또한, 특정 로봇이 임무 수행이 불가능한 상황이 되면 그 로봇을 제외하고 남은 로봇들이 협업하여 작업을 지속할 수 있다. 예를 들어 R3 로봇이 동작할 수 없는 상황인 경우 R3 로봇을 제외하고 전체 공간을 4개로 재파티셔닝하여 모든 영역이 커버 될 때까지 작업을 수행할 수 있다.
도 3 및 도 4는 본 발명의 일 실시예에 의한 고정맵의 구성을 보여주는 도면이다. 전체 공간에서 장애물의 위치는 도 3의 51과 같이 확인될 수 있다. 그리고 전체 공간을 소정의 셀로 나누면 도 3의 52가 된다. 도 3의 52를 기반으로 장애물이 있는 셀과 장애물이 없는 셀의 값을 달리 설정하면 고정맵이 될 수 있다. 물론, 셀의 값 외에도 52와 같이 검은 색이라는 컬러로도 장애물을 표시할 수 있다. 컬러로 표시하는 것은 로봇의 디스플레이부가 저장된 셀의 값을 특정한 셀로 표시하는 것을 포함하며, 로봇의 맵 저장부에 저장될 경우에는 도 4와 같이 각 셀에 배치된 장애물을 지시하는 값이 저장될 수 있다.
도 4는 고정물들을 하나의 단일한 값인 F라는 값으로 설정한 실시예이다. 210은 고정맵을 보여주며, F가 표시된 셀은 고정물이 배치된 셀을 의미한다. 실시예에 따라 F 대신 숫자나 혹은 다른 기호(f, a, b 등)으로 고정물의 특성에 따라 분류할 수 있다. 물론, 도 3의 52와 같이 검은 색으로 표시할 수 있다. 즉 고정맵은 52 또는 210 등 다양한 형태로 표시 및 저장될 수 있다.
셀을 지시하기 위해 좌측 및 하단의 좌표 정보를 이용할 수 있다. 좌하단을 (0, 0)으로, 우상단을 (21, 13)으로 지시할 수 있다.
도 1의 S1 또는 도 2의 S21은 로봇이 작업을 할 공간(최대 공간은 고정맵의 공간이며 최소 공간은 고정 맵의 하위 공간)을 로봇의 수 대로 파티셔닝을 수행한다. 고정맵에 대한 정보는 동일하며, 로봇이 작업을 할 공간 역시 동일한 입력값으로 주어지므로 다수의 로봇이 파티셔닝을 하여도 그 결과는 동일할 수 있다.
그 결과 도 1의 S1 또는 도 2의 S21의 과정을 적용하면 로봇의 맵 저장부는 파티셔닝 맵이 저장된다. 파티셔닝 맵은 고정물의 위치나 공간을 고려하여 N개의 로봇들이 효율적으로 작업할 수 있도록 공간을 세분화한 것을 의미한다. 이하 로봇의 개수인 N 이 5인 실시예를 중심으로 살펴본다.
도 5는 본 발명의 일 실시예에 의한 파티셔닝 맵의 구성을 보여주는 도면이다. 도 4의 고정맵(210)에 각 로봇에게 할당된 영역이 로봇의 식별정보(1~5)가 표시된 파티셔닝 맵(220a)을 살펴본다. 1은 제1로봇에 할당된 셀이며, 2는 제2로봇에 할당된 셀을 의미한다. 이렇게 총 1~5까지 5개의 로봇들이 작업할 공간을 파티셔닝하였다. 시각적으로 구별될 수 있도록 F 부분에 해칭으로 표시하였으며 각 파티셔닝 공간 사이의 경계 부분을 굵은 선으로 표시하였다.
도 5에서 각 로봇들 간의 파티셔닝 공간을 설정한 후 로봇은 해당 파티셔닝 영역으로 이동한다(도 1의 S2 및 도 2의 S25~S27). 도 2의 경우 로봇들 간에 파티셔닝 정보를 공유하는 과정(S22, S23)이 추가적으로 수행될 수 있다.
도 5에서 동그라미로 표시된 영역은 로봇이 파티셔닝한 영역으로 이동한 위치를 보여준다.
로봇은 해당 파티셔닝 맵에서 작업하는 과정에서 일정한 시간이 지난 후, 변화된 환경 정보에 기반하여 재파티셔닝을 수행할 수 있다. 변화된 환경 정보이란 각 로봇들이 작업을 수행한 셀(커버드 셀) 또는 우하단에 예측하지 못한 이동 장애물이 발생한 경우 등이 될 수 있다. 또한, 특정 로봇이 동작하지 못하는 상황 역시 변화된 환경 정보가 될 수 있다.
제3로봇이 장애가 발생하여 동작할 수 없는 경우 전체 로봇들의 파티셔닝 영역을 새로이 설정할 수 있다. 이에 대해 보다 상세히 살펴본다. 이러한 재파티셔닝 방식은 도 1의 방식(분산 통신 방식) 및 도 2의 방식(허브 방식)에 따라 달리 구현될 수 있다. 먼저 도 1의 방식에 대해 살펴본다.
도 6은 본 발명의 일 실시예에 의한 로봇들이 각각의 파티셔닝 영역으로 이동한 상태에서의 분산 통신 방식의 통신 링크를 보여주는 도면이다. 각 로봇은 인접한 다른 로봇과 통신 채널을 연결한다. 제1로봇(R1), 제2로봇(R2), ..., 제5로봇(R5)이 배치되며, 도 5의 동그라미 위치에 대응한다. 인접한 로봇들 사이에는 통신 링크가 형성되는데 i번 로봇과 j번 로봇 사이의 링크를 Linkij라 표시한다.
도 6에는 5개의 링크들이 표시되어 있다. 로봇들 간의 링크 형성은 각 로봇의 현재 위치를 기준으로 시계 방향 또는 반시계 방향으로 구성할 수 있다. 또는 각 로봇이 할당된 파티셔닝 영역에서 인접한 경계선의 길이가 긴 파티셔닝 영역의 로봇과 통신 링크를 형성할 수 있다. 또는 로봇과 로봇 사이에 장애물이 배치되었는지 여부에 따라 통신 링크를 형성하거나 혹은 형성하지 않을 수 있다.
특히, 장애물에 의해 통신이 원활하지 않은 로봇이 우선적으로 통신 링크를 설정할 수 있도록 할 수 있다. 이는 각 로봇이 자신의 파티셔닝 위치로 이동한 후 브로드캐스팅 방식으로 이동 완료 상태를 순서대로 메시지로 전송한 후 메시지가 다른 로봇들에게 전송되지 않은 횟수가 가장 많은 로봇이 통신 상태가 좋지 않은 것으로 판단하여, 다른 로봇과의 링크를 설정함에 있어 우선 순위를 줄 수 있다.
도 6에 제시된 바와 같이, R1 내지 R5의 로봇들은 이웃한 로봇하고만 통신한다. 그리고 로봇의 환경 정보는 로봇 연결의 순환 패스를 통해 하나의 사이클(1 cycle)을 돌면 모든 로봇이 서로 공유할 수 있다. 예를 들어 R1-R2-R3-R4-R5-R1 과 같이 사이클을 형성할 수 있다. 물론, R1-R5-R4-R3-R2-R1 방식으로 사이클을 형성할 수도 있다.
로봇들은 파티셔닝 정보에 기반하여 각각의 로봇들에게 할당된 파티셔닝 영역으로 이동한 후 각각 작업을 수행한다. 수행 과정에서 일부 로봇은 주어진 파티셔닝 영역에서 작업을 수행하는데 있어 고정맵을 기준으로 변화가 발생하지 않은 상태가 될 수 있다. 그러나, 로봇들이 작업을 수행하는 과정에서 장애가 발생하여 통신 연결이 끊어질 수 있다. 도 6에서 통신 장애로 인하여 R3와 R2 사이의 링크(Link23) 및 R3 와 R4 사이의 링크(Link34)가 끊어진 상태를 보여준다. 또는 로봇이 동작할 수 없는 상태(배터리 방전 등)임을 환경 정보로 전송할 수 있다. 도 6에서 R3가 더 이상 동작할 수 없는 상태임을 알리는 환경 정보를 S61 및 S62와 같이 통신 연결을 설정한 로봇들(R2, R4)에게 전송할 수 있다. 사이클의 구성에 따라 R3는 R2 또는 R4 중 어느 하나의 로봇에게만 동작 불가라는 환경 정보를 전송할 수도 있고, 보다 빨리 인접한 다른 로봇들의 대처를 위해 특별하게 사이클 방향에 역행하여서도 R3는 R2 및 R4 로봇들에게 동작 불가라는 환경 정보를 전송할 수도 있다.
만약, 시계 방향으로 R3 로봇이 장애 상황을 전송하거나 혹은 R4 로봇이 R3 로봇의 장애를 확인한 경우, R4 로봇은 R3 로봇의 장애 발생 사실이 포함된 환경 정보를 메시지에 포함시켜 Link45를 이용하여 R5 로봇에게 전송한다. 그리고 이는 다시 R1 및 R2 로봇으로 전송된다(S64, S65). R2 로봇까지 메시지가 도달하면, R3 로봇 외에 장애가 발생한 로봇은 없는 것으로 각 로봇들은 확인한다. 그리고 R3를 제외하고 R2와 R4 사이에 새로운 통신 링크를 설정하고 파티셔닝을 수행한다.
도 7은 본 발명의 일 실시예에 의한 새로운 링크가 생성된 도면이다. R3 로봇은 제외되고 R3의 인접한 로봇이었던 R2 및 R4 사이에 새로운 통신 링크(Link24)가 생성되며, 화살표 방향으로 통신이 이루어질 수 있다. 따라서, 새로운 파티셔닝을 수행하여 이를 기반으로 로봇들은 정보를 공유할 수 있다.
도 6 및 도 7에 제시된 바와 같이, 특정한 로봇이 작업 또는 통신 기능에 장애가 발생한 경우, 다른 로봇들의 연결성이 유지되도록 구성할 수 있다. 이는 모든 로봇이 정보를 공유할 수 있음을 보여준다.
도 8은 본 발명의 일 실시예에 의한 R3 로봇을 제외하고 재파티셔닝한 맵을 보여주는 도면이다. 앞서 도 5에서 R3에 할당되었던 영역(도 5에서 3으로 표시)이 도 8에서는 R2 로봇 및 R4 로봇에 할당됨을 확인할 수 있다. 또한 R2/R4 로봇의 파티셔닝 영역이 확대되며 이들에 인접한 R1/R5 로봇의 파티셔닝 영역도 변경되었다. 따라서, 전체적으로 각 로봇에 할당된 셀의 개수는 도 5와 비교할 때 증가하였으나, 4개의 로봇으로 분산되었으므로, 각 로봇들이 추가로 작업해야 할 셀의 증가분은 크지 않다.
도 6의 로봇 구성에서 도 7의 로봇 구성 및 그로 인한 재파티셔닝을 살펴보면 다음과 같다. Link23 및 Link 34에 연결된 로봇들(R2, R4 및 선택적으로 R3)이 로봇 고장을 판단하고 일방향 통신으로 로봇의 고장 상황의 정보를 공유한다. 일방향이 시계방향인 경우 R4->R5->R1->R2와 같이 S63, S64, S65가 될 수 있다. 반시계 방향인 경우 R2->R1->R5->R4가 될 수 있다. R3 로봇의 고장 상황이 다른 로봇들에게 공유가 되면, 나머지 4 대의 로봇들은 고장에 대응하는 알고리즘에 따라 도 8과 같이 재 파티셔닝을 수행하고, 남은 4대의 로봇들의 서로 간의 연결이 보장되면서도 통신이 가능한 형태(예를 들어 1 사이클이 가능한 포메이션)으로 변경하고 이를 토대로 도 8과 같이 재파티셔닝을 수행한다. 도 8에서 로봇들이 이동하는 위치를 원으로 표시하였다.
도 5 내지 도 8에서 살펴본 바와 같이 로봇들이 미리 설정된 순서(예를 들어 도 6 및 도 7에서의 R1~R5 순서 등)에 따라 통신을 수행하며, 매 순서 과정에서 양 로봇의 최적 파티셔닝을 구할 수 있다. 또한, 파티셔닝 후 통신에 연결된 로봇과 통신을 수행하며 변경된 환경 정보에 따라 최적 파티셔닝을 수행할 수 있다. 전체 통신 연결은 링 형태가 될 수 있으며, 한번의 사이클을 통과하면 모든 로봇의 상태를 반영한 결과가 도출되고, 파티셔닝 후 커버리지를 높이는 위치로 각 로봇들이 이동하여 작업할 수 있다. 이 과정에서 특정한 로봇이 동작에 오류가 발생한 경우, 혹은 통신이 불가능하여 해당 로봇이 작업에 더 이상 참여할 수 없는 경우 나머지 로봇들은 작업 불가인 로봇에 할당된 파티셔닝 영역을 포함하여 일부 또는 전체 공간을 재분배할 수 있으며, 그 결과 재파티셔닝된 영역으로 나머지 로봇들이 이동하여 동작할 수 있다. 이는 로봇의 장애가 발생하여도 해당 상황을 나머지 로봇이 능동적으로 대처하여 협업할 수 있도록 한다. 특히, 로봇은 이동 할 수 있으므로 고장 나서 멈춰 버린 로봇을 제외하고 나머지 로봇 간의 연결성이 보장되는 구성(formation)으로 변경하여 계속해서 시스템을 운용 할 수 있다. 전술한 바와 같은 시스템을 통하여 다중로봇이 협업하여 할당된 임무를 매 순간 최적의 방향으로 수행한다.
각 로봇들은 이동 할 수 있으므로 장애가 발생한 로봇을 제외하고 나머지 로봇 간의 연결성이 보장되는 형태(formation)으로 변경하여 계속해서 시스템을 운용 할 수 있다. 특히, 대면적을 파티셔닝할 때, 로봇이 고장 나더라도 전술한 방법으로 나머지 로봇만의 재파티셔닝을 수행하여 효율적이고 안정적인 협업로봇 시스템 운용이 가능하다.
도 5 내지 도 8에서 살펴본 바와 같이, 대면적 공간에서 다중로봇이 분산형 통신 시스템을 통해 모든 로봇의 연결성이 확보되지 않아도 실시간 파티셔닝을 통해 커버리지를 최적화하는 시스템을 운용할 수 있다. 따라서, 모든 로봇들 간에 통신을 보장할 필요가 없으며, 인접한 로봇들 사이에서 통신이 이루어질 경우, 협업을 지속할 수 있다. 그리고 특정 로봇의 통신이 끊어지거나 장애가 발생하는 경우, 해당 로봇에 연결되었던 통신 링크들을 조절하여 새로운 링 형태의 통신 링크를 생성할 수 있으므로, 장애가 발생한 로봇을 제외한 모든 로봇이 운용 가능한 상태를 유지하며 작업을 수행할 수 있다.
한편, 도 2와 같이 허브 로봇이 배치된 상태에서 특정 로봇에 장애가 발생한 경우, 이는 해당 로봇이 어떠한 통신상의 위치에 있느냐에 따라 달라진다. 예를 들어 통신 계층에서 말단에 배치된 로봇(Tk 로봇)의 장애가 발생할 경우, 통신 연결은 재구성하지 않고 장애가 발생한 로봇을 제외하고 파티셔닝을 수행할 수 있다. 왜냐하면 말단에 배치된 로봇은 다른 로봇에게 정보를 전달하지 않기 때문이다.
한편, 말단이 아닌 중간에 배치된 로봇, 즉 허브 로봇 외에 다른 로봇에 연결된 로봇에 장애가 발생한 경우, 장애가 발생한 로봇에 연결된 다른 로봇들의 통신 연결을 재구축하면서 동시에 재파티셔닝을 수행하는 것이 필요하다.
이외에도 허브 로봇에 장애가 발생한 경우, 모든 로봇들이 통신 연결을 재설정해야 하는 문제가 발생하는데, 이 경우, 허브 로봇을 제외한 로봇들이 분산통신 방식에 의해 통신 연결을 재설정하고 이에 따라 재파티셔닝을 수행할 수 있다.
도 9는 본 발명의 일 실시예에 의한 로봇의 구성을 보여주는 도면이다. 로봇(500)은 분산 통신 방식의 로봇이 될 수 있다. 또는 허브 통신 방식의 허브 로봇이 될 수 있다. 또는 허브 통신 방식에서 허브가 아닌 로봇이 될 수 있다.
로봇(500)의 구성요소로 외부에 배치된 객체를 센싱하는 센싱부(100), 로봇이 동하는 공간의 고정 객체의 위치를 저장하는 맵 저장부(200), 로봇을 이동시키는 이동부(310), 공간에서 파티셔닝 정보 및 환경 정보를 다른 로봇과 송수신하는 통신부(300), 그리고 로봇이 작업을 수행하는 작업부(320)를 포함한다. 또한 각 구성요소들을 제어하는 제어부(400)와 로봇의 동작 상태를 출력하고 외부로부터 지시를 수신하는 인터페이스부(330)를 포함한다.
센싱부(100)는 외부 사물의 존재 혹은 거리, 특성 등을 센싱하는 다양한 종류의 센서들을 의미한다. 본 발명의 실시예들을 적용할 경우, 센싱부(100)는 뎁스 값을 산출하는 뎁스 센싱부, 비전 정보를 산출하는 비전 센싱부, 적외선(IR) 센싱부, 초음파 센싱부, 라이다 센싱부 등을 포함할 수 있다.
제어부(400)는 맵 저장부(200)에 저장된 고정맵(210)에 기반하여 파티셔닝 맵(220)을 생성한다. 또한, 제어부(400)는 일정한 시간 간격 후에 센싱부(100)가 센싱한 객체 중 맵 저장부(200)의 고정 객체에 해당하지 않는 객체(새로운 장애물)와 로봇이 작업을 수행한 공간에 대한 정보 중 어느 하나 이상을 환경 정보로 생성한다.
생성된 환경 정보는 통신 링크가 설정된 이웃 로봇 또는 허브 로봇 등 다른 로봇과 송수신할 수 있다. 즉, 제어부(400)는 통신부를 제어하여 파티셔닝 정보와 환경 정보를 송수신할 하나 이상의 이웃 로봇을 결정하고 이웃 로봇에게 파티셔닝 정보와 환경 정보를 전송하거나 혹은 교환하여 새로운 파티셔닝을 수행하여 재파티셔닝 맵을 생성한다. 로봇 간의 통신링크는 앞서 도 6 및 도 7에서 살펴보았듯이 특정 로봇의 장애나 통신 두절 상태에서 새롭게 통신링크를 설정할 수 있다.
통신 링크를 설정하는 이웃 로봇의 결정 방식은 도 5 및 도 6에서 살펴본 바와 같이 인접한 파티셔닝 영역에 배치된 로봇을 이웃 로봇으로 결정할 수 있다. 이웃 로봇들의 통신 링크가 연결되고 이들을 연결하면 전체 로봇은 링 형태의 통신 링크를 구성할 수 있다. 즉, 다수의 로봇들이 생성한 통신 링크는 링 형태를 유지하며, 각 로봇은 통신 링크를 이용하여 미리 설정된 방향으로 메시지를 송신할 수 있다. 미리 설정된 방향이란, 단방향일 수도 있고 양방향일 수도 있다.
정리하면, 제어부(400)는 로봇에 인접한 다른 로봇, 예를 들어 제2로봇과 통신 링크를 설정하도록 통신부(300)를 제어하며, 통신부(300)가 제2로봇의 장애 환경 정보를 수신하거나 제2로봇의 통신링크가 단절된 경우 통신부(300)는 제2로봇과 통신링크를 생성하였던 제3로봇과 통신링크를 생성한 후, 제어부(400)는 제3로봇과 재파티셔닝을 수행할 수 있다.
이하 로봇의 동작 과정에 대해 상세히 살펴본다.
도 10은 본 발명의 일 실시예에 의한 로봇이 초기 파티셔닝 맵에 따라 작업을 수행한 후 재파티셔닝을 수행하는 과정을 보여주는 도면이다.
제1로봇의 제어부(400)가 공간에서 작업할 다수의 로봇들의 파티셔닝 영역을 포함하는 초기 파티셔닝 맵을 제1로봇의 맵 저장부(200)에 저장한다(S71). 앞서 도 5와 같이 로봇들에게 할당하는 초기 파티셔닝 맵을 살펴볼 수 있다. 이 과정에서 초기 파티셔닝 맵은 각각의 로봇이 생성하여 각자 보유할 수 있다. 도 1의 S1을 일 실시예로 한다. 한편, 각각의 로봇이 생성하는 대신 어느 하나의 로봇(제1로봇)이 생성하여 이를 다른 로봇에게 송신할 수도 있고 다른 로봇으로부터 초기파티셔닝 맵을 수신할 수 있다.
정리하면, 제1로봇의 통신부(300)가 초기 파티셔닝 맵을 다수의 로봇들 중 하나 이상의 로봇들에게 송신하거나, 또는 제1로봇의 통신부(300)가 초기 파티셔닝 맵을 다수의 로봇들 중 하나 이상의 로봇으로부터 수신할 수 있다.
다양한 방식으로 초기 파티셔닝 맵이 각각의 로봇의 맵 저장부(200)에 저장되면, 각 로봇의 이동부(310)는 로봇에게 할당된 파티셔닝 영역으로 로봇을 이동시킨다(S72). 이 과정에서 각자의 파티셔닝 영역으로 이동한 제1로봇의 통신부(300)는 제1로봇과 통신할 제2로봇과 통신링크를 생성한다(S73). 통신 링크가 형성된 실시예는 도 6 및 도 7에서 살펴보았다.
통신 링크를 설정하는 기준으로는 인접한 로봇 사이에서 이루어지는 것을 일 실시예로 한다. 일 실시예로 로봇 간의 물리적 거리에 기반하여 통신 링크를 생성할 수 있다. 또는 각 로봇이 할당받은 파티셔닝 영역이 인접한 경우 인접한 파티셔닝 영역을 할당받은 로봇들 사이에서 통신 링크를 생성할 수 있다. 또한, 장애물이 많이 배치된 파티셔닝 영역에 할당받은 로봇의 경우 우선적으로 통신 링크를 선호하는 로봇과 생성할 수 있다. 다양한 기준에 따라 통신 링크가 생성될 수 있으며, 이들 통신 링크는 분산 통신 시스템에서는 링 형태를 유지할 수 있다. 반면, 허브 통신 시스템에서는 트리 구조를 유지할 수 있다.
통신 링크를 설정한 후, 제1로봇의 이웃 로봇, 즉 제1로봇과 통신 링크를 설정한 로봇의 장애가 발생한다. 즉, 제1로봇의 통신부(300)가 제2로봇의 장애 환경 정보를 수신하거나 제2로봇의 통신링크가 단절된 것을 확인한 다. 이후 통신부(300)는 제2로봇과 통신링크를 생성하였던 제3로봇과 통신링크를 생성한다(S74). 제2로봇은 제1로봇 및 제3로봇과의 통신 링크를 유지했었으나 장애 상황이 발생하며 제1로봇 및 제3로봇이 통신 링크를 생성한다.
제1로봇의 제어부(400)는 제3로봇과 재파티셔닝을 수행한다. 즉, 제2로봇의 제2파티셔닝 영역, 제1로봇의 제1파티셔닝 영역, 제3로봇의 제3파티셔닝 영역을 포함하는 영역을 재파티셔닝하여, 제1로봇의 제1재파티셔닝 영역 및 제3로봇의 제3재파티셔닝 영역으로 재파티셔닝한다. 그 결과 새로운 재파티셔닝 맵을 생성할 수 있다(S75).
도 10의 과정을 제1로봇과 다른 통신 링크를 설정한 제4로봇과도 새로이 재파티셔닝을 수행할 수 있다. 예를 들어, 제1로봇은 제2로봇과 통신 링크를 생성하는 과정(S73)에서 제1로봇의 통신부가 제4로봇과 통신 링크를 생성할 수 있다. 이러한 통신 링크의 구조는 "제4로봇-제1로봇-제2로봇"과 같이 구성된다. 제2로봇에 장애가 발생하기 전까지 제1로봇은 제4로봇 및 제2로봇을 양쪽의 이웃 로봇으로 설정한 상태이다. 이 상태에서 제2로봇에 장애가 발생하고, 제1로봇이 제3로봇과 통신 링크를 설정한 결과 통신 링크의 구조는 "제4로봇-제1로봇-제3로봇"이 된다.
이후, 제3로봇과 제1로봇이 재파티셔닝 맵을 생성한 후, 제1로봇의 통신부(300)는 제1재파티셔닝 영역에 대한 정보를 제4로봇에게 송신하고, 제1로봇의 제어부(400)는 제4로봇의 제4파티셔닝 영역과 제1재파티셔닝 영역을 포함하는 영역에 대하여 재파티셔닝하는 재파티셔닝 맵을 생성할 수 있다. 왜냐하면, 제2로봇의 고장으로 인해 제1/3 로봇이 제2로봇의 영역까지 할당받을 경우, 제1/3로봇에 재파티셔닝된 영역의 면적이 제4로봇의 영역보다 과도하게 클 수 있으며, 이는 작업 효율을 떨어뜨릴 수 있다.
따라서, 제1로봇의 제어부(400)는 재파티셔닝된 결과 초기 파티셔닝 맵에서 할당된 영역과 비교하여 과도하게 큰 영역이 재파티셔닝되어 할당된 경우, 인접한 다른 로봇(제4로봇)과 재파티셔닝을 수행할 수 있다. 이러한 과정이 통신 링크의 특정한 방향 혹은 양방향으로 이루어질 경우, 통신 링크에 연결된 모든 로봇들 사이에서 재파티셔닝이 이루어질 수 있다.
또한, 도 10의 S75 단계를 수행하기 전에, 통신 링크에 연결된 모든 로봇들에게 재파티셔닝이 이루어 질 수 있음을 메시지로 송신하고, 전체적인 영역에 대해 일괄적으로 재파티셔닝을 수행할 수 있다. 이는 초기 파티셔닝 맵을 생성하는 것과 동일한 방식으로 이루어질 수 있다.
즉, 특정 로봇에게 현재까지 각 로봇이 작업한 영역 및 장애물 영역을 환경 정보로 제공한 후, 재파티셔닝을 수행할 수 있다. 또는, 각 로봇이 작업한 영역 및 장애물 영역을 환경 정보로 전체 로봇이 공유한 후, 각각의 로봇이 각자 파티셔닝을 수행할 수 있다. 이를 위해 로봇들의 제어부는 입력된 환경 정보가 동일할 경우 동일한 파티셔닝 맵을 산출하도록 설계될 수 있다.
한편, 재파티셔닝 하는 과정에서 로봇의 환경 정보를 이용할 수 있다. 일 실시예로, 통신부(300)가 송수신한 제3로봇의 환경 정보에 기반하여 제어부(400)가 재파티셔닝 맵을 생성할 수 있다.
환경 정보를 이용한다는 것은 공간 내에 새롭게 확인된 장애물과 고정 장애물, 그리고 작업 가능한 로봇의 수를 입력값으로 하여 재파티셔닝 맵을 생성하는 것을 의미한다. 일 실시예로 특정 로봇이 다른 로봇들로부터 환경 정보를 모두 수신할 수 있다. 또는 로봇은 인접한 로봇 사이에서만 환경 정보를 수신하고, 이를 반영하여 파티셔닝을 수행할 수 있다.
도 11 및 도 12는 본 발명의 일 실시예에 의한 환경 정보에 기반하여 재파티셔닝하는 과정을 보여주는 도면이다. 도 11의 초기 파티셔닝 맵(220c)은 4 개의 로봇에게 할당된 공간이다. 각 파티셔닝 영역에 할당된 로봇들은 각각 R1내지 R4이다. 초기 파티셔닝 후 로봇이 작업을 수행한 영역을 C로 표시하였다. 그리고 각 로봇 사이의 통신 링크는 점선으로 표시하였다. 220c와 같은 초기 파티셔닝 맵의 상태에서 R2 로봇에 장애가 발생하면, 통신링크가 연결된 인접한 로봇(R1/R3)들은 R1-R3 간에 통신을 설정한 후, 우선 R2에 할당된 영역과 R1/R3에 포함된 영역을 포함하는 영역(즉, R4의 영역을 제외한 영역)에 대해 재파티셔닝을 수행한다. 220c에서 R1/R2/R3에 할당된 파티셔닝 영역을 220d와 같이 하나로 하여 R1과 R3 사이에서 재파티셔닝을 수행한다. 이 과정에서, 재파티셔닝시, 로봇의 제어부(400)는 다수의 로봇들이 작업을 수행한 셀에 기반하여 다수의 로봇 각각의 작업 속도를 산출하여 작업 속도가 높은 로봇에게 더 많은 영역이 할당된 재파티셔닝 맵을 생성할 수 있다.
즉, 220c에서 R1이 작업을 완료한 셀은 2개이며, R3가 작업을 완료한 셀은 6개이다. 이는 R3의 작업 속도가 높음을 알 수 있다. 따라서, 220d에서 영역을 나눌 경우 R3에게 보다 많은 작업 공간이 포함되도록 재파티셔닝을 수행할 수 있다.
도 12의 재파티셔닝 맵(220e)은 R3의 작업 속도가 R1 의 작업 속도보다 높은 환경 정보를 반영하여 재파티셔닝한 결과이다. R3가 작업을 완료한 셀의 수가 R1이 작업을 완료한 셀의 수 보다 4개가 많으므로, R3가 보다 많은 영역을 할당받은 결과이다. 도 12의 재파티셔닝 결과 R1이 작업해야 하는 셀의 개수는 31개이며, R3가 작업해야 하는 셀의 개수는 34개이다.
한편, R4의 경우 작업해야 하는 셀의 수는 21개이며, 이는 R1, R3와 비교하여 매우 작은 수이다. 따라서, R3-R4 간에 재파티셔닝이 이루어지거나, R1-R4 간에 재파티셔닝을 수행할 수 있다. 이는 통신 링크의 순서에 따라 특정 방향(R3->R1->R4 또는 R3->R4->R1)으로 이루어질 수 있다.
또는 본 발명의 다른 실시예에 의하면 가장 많이 셀을 할당받은 로봇에 우선 순위를 두어 재파티셔닝을 할 수 있다. 220e에서는 R3가 가장 많은 파티셔닝 영역을 할당받은 바, R3-R4 간에 재파티셔닝을 수행할 수 있다. 마찬가지로, R3와 R4 사이에도 그동안 처리했던 셀들의 개수에 기반하여 로봇의 처리 속도를 산출하고 작업 속도가 높은 로봇에게 더 많은 영역을 할당할 수 있다. 그 결과, 220f와 같이 R3-R4 간에 재파티셔닝된 결과 최종적인 재파티셔닝 맵을 산출한다. R4가 할당받은 셀의 수는 26개이고, R3가 할당받은 셀의 수는 29개이다. R1은 31개의 셀을 할당받은 상태이다.
R1/R3/R4 각각에게 할당받은 셀의 수의 차이가 파티셔닝에서 작업의 효율을 높이기 위한 기준에 적합한 경우, 로봇들은 새로 생성된 재파티셔닝맵(220f)에 기반하여 이동 및 작업을 수행할 수 있다. 전술한 기준은 각 로봇 별 할당된 셀의 수의 편차, 각 로봇이 과거 작업했던 셀의 개수 대비 새로 할당된 셀의 수의 편차 등을 반영할 수 있다.
또한, 도 12의 220f와 같은 재파티셔닝 맵에 기반하여 동작하는 과정에서 일정한 주기에 따라 재파티셔닝 할 수 있다. 즉, 특정한 로봇에 장애가 발생하지 않아도, 로봇 사이에 환경 정보를 공유하여, 재파티셔닝 맵의 작성 당시 작업을 처리할 것으로 예상했던 시간 보다 더 많은 시간이 소요되는 상황이 발생하거나 작업에 영향을 미치는 변수(새로운 장애물의 등장)가 발생하면 그에 따라 각 로봇들이 환경 정보를 일정한 방식으로 통신 링크에 따라 메시지로 송수신할 수 있다. 그리고 송수신된 환경 정보에 기반하여 새로이 재파티셔닝을 수행할 수 있다.
도 11 및 도 12는 각 로봇들의 작업한 영역을 기준으로 재파티셔닝을 수행하였으나, 환경 정보로 각 로봇들이 작업 가능한 시간/면적 정보를 포함할 수 있으며, 이에 기반하여 재파티셔닝을 수행할 수 있다. 즉, 도 11에서 R1-R3 간에 로봇들의 작업 가능 시간 혹은 작업 가능 면적에 대한 정보를 환경 정보로 송수신될 수 있다. 그리고 R1 또는 R3 중 어느 하나 이상의 제어부(400)가 작업 가능 시간이 크거나 작업 가능 면적이 큰 값을 가지는 로봇에게 더 많은 영역이 할당된 재파티셔닝 맵을 생성할 수 있다.
전술한 실시예에서 대면적 환경에서의 통신 불안정성에 대응하여 분산 통신 시스템을 구성할 경우, 환경 변화 또는 로봇의 고장과 같은 비상상황에 대처하여 다수의 로봇들이 재파티셔닝을 통해 작업을 유지할 수 있다. 특히, 장애가 발생한 상황에 최적인 커버리지 알고리즘을 토대로 운용할 수 있다. 커버리지 알고리즘은 로봇의 제어부(400)에 프로그램 형태로 설치될 수 있으며, 전술한 각 로봇의 작업 영역, 작업 가능한 상태, 장애물 상태 등을 입력값으로 하여 최적의 재파티셔닝 맵을 산출할 수 있다.
본 발명의 실시예를 청소 로봇에 적용할 경우, 협업에 기반한 시스템을 통하여 대면적에서의 능동적으로 빠른 시간 협업 청소가 가능하다. 뿐만 아니라, 보안, 정찰, 안내 등 특정한 임무를 나누어 스케쥴링하여 협업하는 시스템에도 본 발명의 실시예를 적용할 수 있다.
본 발명의 다른 실시예에 의하면, 협업에 기반하지 않은 시스템인 경우, 즉 허브 통신에 기반한 시스템인 경우에도 특정 로봇에 고장이 발생한 경우, 협업에 기반한 통신 시스템으로 변경할 수 있다.
도 11 내지 도 12의 실시예를 정리하면, 제1로봇(R1)은 제3로봇(R3)와 제2로봇(R2)의 제2파티셔닝 영역과 제1로봇(R1)의 제1파티셔닝 영역, 그리고 제3로봇(R3)의 제3파티셔닝 영역을 포함하는 영역을 제1로봇(R1)의 제1재파티셔닝 영역 및 제3로봇(R3)의 제3재파티셔닝 영역으로 재파티셔닝하는 재파티셔닝 맵을 생성할 수 있다.
또한, 재파티셔닝을 수행한 후, R1-R4 사이에도 재파티셔닝을 수행할 수 있다. 즉, 제1로봇(R1)의 통신부는 제3로봇과의 재파티셔닝 결과인 제1재파티셔닝 영역에 대한 정보를 제4로봇(R4)에게 송신하고, 제1로봇 및 제4로봇의 제어부는 제4로봇의 제4파티셔닝 영역과 제1로봇의 제1재파티셔닝 영역을 포함하는 영역에 대하여 재파티셔닝하는 재파티셔닝 맵을 새로이 생성할 수 있다.
재파티셔닝 과정에서 작업이 완료한 공간은 제외하고 나머지 셀들의 수를 기반으로 각 로봇들에게 할당하여 재파티셔닝을 수행할 수 있다. 재파티셔닝 과정에서 각 로봇이 작업을 처리한 속도를 기준으로 재파티셔닝할 수 있다. 예를 들어 로봇이 가지는 상태 정보(로봇의 배터리 잔량 등)와 환경적 정보를 반영하여 처리 속도가 매우 낮은 것으로 인접한 로봇들이 판단하여 해당 로봇에 할당할 영역을 줄일 수 있다. 마찬가지로 셀을 처리하는 속도가 높은 로봇은 새로이 파티셔닝이 될 경우라 하여도 작업 처리 속도가 높아질 것으로 가정하여 파티셔닝 공간을 더 많이 할당할 수 있다.
도 13 내지 도 16은 본 발명의 일 실시예에 의한 허브 통신에 기반한 시스템에서 고장 발생 후 협업 기반 분산 통신 시스템으로 변환하는 과정을 보여주는 도면이다. 도 2의 허브 로봇 및 T1, T2 로봇들을 중심으로 살펴본다. 이는 각 로봇들 중에서 허브 로봇을 제외한 다른 로봇들은 허브 로봇으로부터 초기 파티셔닝 맵을 수신한 이후 동작하는 과정을 보여준다.
도 13은 허브 로봇과 T1/T2/.../Tn 로봇들이 특정한 공간 내에 배치된 구성이다. 허브 로봇은 HR로 표시하고, T1 로봇은 순서대로 T1-1, T1-2 등으로 표시한다. T2 로봇은 T2-1, T2-2 등으로 표시한다. 도 13은 허브 로봇(HR)을 중심으로 파티셔닝 영역이 배치된 구성이다. 도 13의 구성에서 허브 로봇(HR)의 동작에 장애가 발생한 경우, 어느 하나의 로봇이 허브 역할을 맡을 수도 있으나, 전체 통신 링크를 분산 시스템으로 변환할 수 있다. 도 14에서 보다 상세히 살펴본다.
허브 로봇(HR)이 장애가 발생하여 더 이상 동작할 수 없는 상태이므로 허브 로봇이 제거된 상태이다. 이 경우, T1 레벨의 로봇들과 그에 부속하는 T2 레벨의 로봇들끼리 원래 설정되었던 통신 링크를 유지하면서 새로이 링 구조의 통신 링크를 설정한다. 예를 들어 T2-1 및 T2-2와 T1-1이 링 형태의 통신 링크를 구성하도록 배치된다. 이는 도 14에 도시되어 있다.
도 14와 같은 통신 링크의 구조에서 T1 레벨의 로봇들 사이에서 통신이 가능한 로봇들 사이에서 통신 링크를 설정한다. 일 실시예로 T1-1~T1-4 에서 인접하게 배치된 로봇들 간에 도 15와 같이 통신 링크를 구성할 수 있다. T1 레벨의 로봇들은 로봇들 간의 거리가 가까우므로 서로 통신 링크를 링 구조로 구성할 수 있다.
도 15와 같은 구성에서 각각의 T1 레벨의 로봇들이 각자의 링 구조의 하위 통신 링크를 관리하며 재파티셔닝을 수행할 수 있다. 이 경우, 허브 로봇의 영역을 T1 레벨의 로봇들이 분할하여 할당한 후, 각각의 하위 링 구조의 통신 링크를 이용하여 T2 레벨의 로봇들과 다시 재파티셔닝을 수행할 수 있다.
또는, 전체 로봇들이 통신이 가능한지를 확인할 수 있는데, 예를 들어 현재 연결되지 않은 T2 레벨의 로봇들, 즉 T2-5와 T2-4가 통신이 가능하고, T2-2 및 T2-3이 통신이 가능한 경우 도 16과 같이 링 형태의 통신 링크를 구성할 수 있다.
도 16은 전체 로봇들이 링 형태의 통신 링크를 구성한 도면이다. 도 16과 같이 통신 링크를 설정한 로봇들은 앞서 도 10 및 도 11, 12의 프로세스에 따라 허브 로봇이 담당하던 영역을 포함하여 다시 재파티셔닝하여 영역을 분할한다.
정리하면 도 15에서 T2-5와 T2-4가 통신 가능하지 않은 경우, 그리고 T2-2와 T2-3이 통신 가능하지 않은 경우, T1 레벨의 로봇들만 링 구조의 통신 링크를 구성하고, 허브 로봇의 영역을 재파티셔닝한다. 그리고 허브 로봇의 영역을 T1 레벨의 로봇들이 재파티셔닝에 의해 할당받은 후, 각각의 T1 레벨의 로봇들은 자신과 통신 링크를 구성하는 T2 레벨의 로봇들과 다시 재파티셔닝을 수행할 수 있다.
반대로, 도 16과 같이 T2-5와 T2-4가 통신 가능하고 T2-2와 T2-3이 통신이 가능한 경우, 모든 로봇들이 링 형태의 통신 링크를 구성할 수 있다. 이 경우에도 통신 링크를 형성한 후, 허브 로봇의 영역에 인접하였던 T1 레벨의 로봇들이 허브 로봇의 영역을 재파티셔닝에 의해 할당받은 후, 각각의 T1 레벨의 로봇들과 인접한 다른 로봇들(T2 레벨의 로봇들)과 다시 재파티셔닝을 수행할 수 있으며, 링 구조의 통신 링크에 따라 순차적으로 재파티셔닝할 수도 있다.
도 17은 본 발명의 일 실시예에 의한 허브 로봇에 장애가 발생한 경우 분산 통신 시스템으로 전환하는 도 13 내지 도 16의 과정을 보여주는 순서도이다. 간략하게 정리하면, 도 17은 허브 로봇과 통신이 두절된 T1 레벨의 로봇의 제어부(400)가 다른 T1 레벨의 로봇들 간에 링 구조의 통신 링크를 설정하고, 링 구조의 통신 링크에 기반하여 재파티셔닝 맵을 생성하는 과정을 보여준다.
먼저, T1 레벨의 로봇들은 허브 로봇의 장애가 발생하였음을 확인한다(S81). 확인은 T1 레벨의 로봇들이 허브 로봇으로부터 장애 발생 메시지를 수신하거나 또는 허브 로봇과의 통신이 두절되는 것을 T1 레벨의 로봇의 통신부가 확인하는 것을 포함한다.
이후 각각의 T1 레벨의 로봇들은 하위 레벨의 로봇들과 링 구조의 통신 링크를 설정한다(S82). 앞서, 도 14의 링크 구성을 일 실시예로 한다.
단위 별 링 구조의 통신 링크가 설정되면, 통신 가능한 T1 레벨의 로봇 간에 통신 링크를 설정한다(S83). T1 레벨의 로봇 간에 통신 링크가 설정되면 도 15에서 살펴본 바와 같이, 전체적으로 링구조의 통신 링크를 형성하기 위해 T1~Tk 레벨의 로봇들 중에서 통신 가능한 로봇 사이에 통신 링크를 형성한다(S84).
이 과정에서 전체 로봇이 포함되는 통신 링크가 형성되지 않을 경우, 도 15와 같이 T1 레벨의 로봇들만 링 구조로 통신 링크를 유지할 수 있다. 반면 전체 로봇이 포함되는 통신 링크가 형성될 경우, 도 16과 같이 구성될 수 있다. S84 및 도 16은 T1 레벨의 하위 레벨의 로봇들 간에 링 구조의 통신 링크를 설정하는 과정을 보여준다.
이후 링 구조의 통신 링크에 기반하여 허브 로봇에 할당되었던 영역을 포함하여 재파티셔닝을 수행한다(S85). 링 구조는 도 15와 같이 T1 레벨의 로봇들 간의 링 구조이거나 또는 도 16과 같이 전체 로봇들 간의 링 구조를 포함한다.
모든 로봇을 연결하는 허브 역할을 하는 장치(혹은 로봇 하나를 그 역할로 지정)가 있고 각 로봇의 데이터를 실시간으로 전송받아 그를 토대로 결과를 내어 다시 각 로봇에게 그 다음 명령(다음 위치 혹은 다음 임무)을 전송하는 방식은 모든 로봇의 상태를 갖고 알고리즘을 실행하므로 최적의 결과 도출할 수 있으며 구현이 용이하지만, 허브 로봇과 통신 연결이 끊어질 경우 다른 로봇들이 기능을 수행할 수 없다.
따라서, 도 13 내지 도 17에서 살펴본 바와 같이, 각 로봇들에 장애가 발생하지 않은 상태에서는 허브 통신 방식으로 동작하고, 허브 로봇에 장애가 발생하면 분산 통신 방식으로 전환하여 각 로봇들이 다시 재파티셔닝을 수행한 후 공간 내의 영역에서 작업을 수행할 수 있도록 한다.
본 발명을 적용할 경우, 대면적의 환경에서 모든 로봇 간의 통신의 안정성을 보장할 수 있다. 초기 시작은 허브(중앙) 통신 방식 또는 분산 통신 방식으로 초기 파티셔닝 맵을 생성하고, 동작 과정에서 장애가 발생할 경우, 분산형 통신 시스템에 기반하여 로봇들이 동작할 수 있도록 함으로써, 제한된 통신 범위 안에서도 실시간 파티셔닝을 통한 커버리지 최적화가 가능하다. 특히, 특정 로봇의 연결이 끊기더라도 모든 로봇의 협업 알고리즘의 영향을 주지 않아 고장 등의 비상상황에서의 대처가 용이하다.
본 발명을 적용할 경우, 대면적 공간에서 다중로봇들이 분산형 통신 시스템을 이용하거나 허브형 통신 시스템을 이용하여 모든 로봇의 연결성이 확보되지 않아도 실시간 파티셔닝을 수행하여 각 로봇이 작업할 커버리지를 최적화 시킬 수 있다. 특히, 허브형 통신 시스템에 있어서도, 허브 로봇과 통신이 가능한 로봇들과 그렇지 않은 로봇들을 분류하여 계층적으로 로봇들이 통신할 수 있도록 한다.
특히, 본 발명을 적용할 경우, 다중로봇이 주어진 대면적 환경에서 환경의 형태 및 동적/정적 장애물 정보를 모두 고려한 실시간 파티셔닝을 통해 협업하여 최적으로 지역을 커버할 수 있다. 또한, 로봇의 장애가 발생하여도 해당 로봇을 제외하고 통신을 수행할 수 있으므로, 로봇의 작업의 신뢰성을 높일 수 있다.
한편, 재파티셔닝 과정에서 커버리지 정보에 기반하여 각 로봇마다 상이한 작업 처리 속도를 포함하는 현재 상황(장애물, 커버리지면적, 속도 등)을 실시간으로 반영하여 실시간 파티셔닝을 수행함으로서 효율적인 커버리지 작업이 가능하다. 즉, 특정 영역에 장애물이 많은 경우, 커버한 영역의 차이가 큰 경우 등 다양한 상황을 고려한 실시간 파티셔닝을 진행하여 효율적인 커버리지 작업이 가능하다.
로봇은 재파티셔닝을 수행하는 과정에서 이전에 작업한 영역의 크기나 분산 정도, 새로운 장애물이 배치된 영역의 크기나 분산 정도, 그리고 작업 속도와 경계선의 형태 등을 모두 가중치로 적용하여 재파티셔닝맵을 생성할 수 있다. 제어부(400)는 동일한 개수의 셀들이라 하여도 해당 셀들의 분산 정도, 위치와 로봇의 배터리 상태 등을 가중치로 적용하여 재파티셔닝할 영역의 셀들의 개수를 먼저 산출하고, 개수를 적용함에 있어서 로봇의 이동 거리를 줄이는 경계선을 선택할 수 있다.
또한, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니며, 본 발명의 목적 범위 내에서 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 반도체 기록소자를 포함하는 저장매체를 포함한다. 또한 본 발명의 실시예를 구현하는 컴퓨터 프로그램은 외부의 장치를 통하여 실시간으로 전송되는 프로그램 모듈을 포함한다.
이상에서는 본 발명의 실시예를 중심으로 설명하였지만, 통상의 기술자의 수준에서 다양한 변경이나 변형을 가할 수 있다. 따라서, 이러한 변경과 변형이 본 발명의 범위를 벗어나지 않는 한 본 발명의 범주 내에 포함되는 것으로 이해할 수 있을 것이다.
<부호의 설명>
100: 센싱부 200: 맵 저장부
210: 고정맵 220: 파티셔닝맵
300: 통신부 310: 이동부
320: 작업부 330: 인터페이스부
400: 제어부 500: 로봇

Claims (16)

  1. 제1로봇의 제어부가 공간에서 작업할 다수의 로봇들의 파티셔닝 영역을 포함하는 초기 파티셔닝 맵을 상기 제1로봇의 맵 저장부에 저장하는 단계;
    상기 제1로봇의 이동부가 상기 제1로봇에게 할당된 파티셔닝 영역으로 상기 로봇을 이동시키는 단계;
    상기 제1로봇의 통신부는 상기 제1로봇과 통신할 제2로봇과 통신링크를 생성하는 단계;
    상기 통신부가 상기 제2로봇의 장애 환경 정보를 수신하거나 상기 제2로봇의 통신링크가 단절된 경우 상기 통신부는 상기 제2로봇과 통신링크를 생성하였던 제3로봇과 통신링크를 생성하는 단계; 및
    상기 제어부는 제3로봇과 상기 제2로봇의 제2파티셔닝 영역 및 상기 제1로봇의 제1파티셔닝 영역 및 상기 제3로봇의 제3파티셔닝 영역을 포함하는 영역을 상기 제1로봇의 제1재파티셔닝 영역 및 상기 제3로봇의 제3재파티셔닝 영역으로 재파티셔닝하는 재파티셔닝 맵을 생성하는 단계를 포함하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법.
  2. 제1항에 있어서,
    상기 제2로봇과 통신링크를 생성하는 단계는 상기 제1로봇의 통신부가 제4로봇과 통신 링크를 생성하는 단계를 더 포함하며,
    상기 재파티셔닝 맵을 생성하는 단계 이후에,
    상기 제1로봇의 통신부는 상기 제1재파티셔닝 영역에 대한 정보를 상기 제4로봇에게 송신하는 단계; 및
    상기 제어부는 상기 제4로봇의 제4파티셔닝 영역과 상기 제1재파티셔닝 영역을 포함하는 영역에 대하여 재파티셔닝하는 재파티셔닝 맵을 생성하는 단계를 포함하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법.
  3. 제1항에 있어서,
    상기 제1로봇을 포함한 상기 다수의 로봇들이 생성한 통신 링크는 링 형태를 유지하며,
    상기 제1로봇의 통신부는 상기 통신 링크를 이용하여 미리 설정된 방향으로 메시지를 송신하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법.
  4. 제1항에 있어서,
    상기 저장하는 단계 이전에,
    상기 제1로봇의 통신부가 상기 초기 파티셔닝 맵을 상기 다수의 로봇들 중 하나 이상의 로봇들에게 송신하는 단계를 더 포함하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법.
  5. 제1항에 있어서,
    상기 저장하는 단계 이전에,
    상기 제1로봇의 통신부가 상기 초기 파티셔닝 맵을 상기 다수의 로봇들 중 하나 이상의 로봇으로부터 수신하는 단계를 더 포함하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법.
  6. 제5항에 있어서,
    상기 수신하는 단계는
    상기 제1로봇의 통신부가 상기 제2로봇으로부터 초기 파티셔닝 맵을 수신하는 단계를 포함하며,
    상기 제1로봇의 제어부는 상기 제3로봇을 포함하는 T1 레벨의 로봇들 간에 링 구조의 통신 링크를 설정하는 단계; 및
    상기 제1로봇의 제어부는 상기 링 구조의 통신 링크에 기반하여 상기 재파티셔닝 맵을 생성하는 단계를 더 포함하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법.
  7. 제6항에 있어서,
    상기 제1로봇 및 상기 제3로봇을 포함하는 T1 레벨의 하위 레벨의 로봇들 간에 링 구조의 통신 링크를 설정하는 단계를 더 포함하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법.
  8. 제1항에 있어서,
    상기 재파티셔닝 맵을 생성하는 단계는
    상기 통신부가 송수신한 상기 제3로봇의 환경 정보에 기반하여 상기 제어부가 상기 재파티셔닝 맵을 생성하는 단계를 더 포함하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법.
  9. 제8항에 있어서,
    상기 재파티셔닝 맵을 생성하는 단계는
    상기 제어부는 상기 환경 정보에서 상기 다수의 로봇들이 작업을 수행한 셀에 기반하여 상기 다수의 로봇 각각의 작업 속도를 산출하여 작업 속도가 높은 로봇에게 더 많은 영역이 할당된 재파티셔닝 맵을 생성하는 단계를 더 포함하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법.
  10. 제8항에 있어서,
    상기 환경 정보는 상기 제1로봇 및 상기 다수의 로봇들의 작업 가능 시간 또는 작업 가능 면적에 대한 정보를 더 포함하며,
    상기 제어부는 제1로봇 및 상기 다수의 로봇들 중 상기 작업 가능 시간 또는 상기 작업 가능 면적이 더 큰 값을 가지는 로봇에게 더 많은 영역이 할당된 재파티셔닝 맵을 생성하는 단계를 더 포함하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법.
  11. 공간을 분할-작업하는 로봇에 있어서,
    외부에 배치된 객체를 센싱하는 센싱부;
    상기 로봇이 이동하는 공간의 고정 객체의 위치를 저장하는 맵 저장부;
    상기 로봇을 이동시키는 이동부;
    파티셔닝 정보 및 환경 정보를 하나 이상의 다른 로봇과 송수신하는 통신부;
    상기 로봇이 작업을 수행하는 작업부; 및
    상기 센싱부와 상기 맵 저장부와 상기 이동부와 상기 통신부와 상기 작업부를 제어하며,
    상기 제어부는 상기 로봇에 인접한 제2로봇과 통신 링크를 설정하도록 상기 통신부를 제어하며, 상기 통신부가 상기 제2로봇의 장애 환경 정보를 수신하거나 상기 제2로봇의 통신링크가 단절된 경우 상기 통신부는 상기 제2로봇과 통신링크를 생성하였던 제3로봇과 통신링크를 생성한 후, 상기 제어부는 상기 제3로봇과 재파티셔닝을 수행하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법을 구현하는 로봇.
  12. 제11항에 있어서,
    상기 제어부는 제3로봇과 상기 제2로봇의 제2파티셔닝 영역 및 상기 제1로봇의 제1파티셔닝 영역 및 상기 제3로봇의 제3파티셔닝 영역을 포함하는 영역을 상기 제1로봇의 제1재파티셔닝 영역 및 상기 제3로봇의 제3재파티셔닝 영역으로 재파티셔닝하는 재파티셔닝 맵을 생성하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법을 구현하는 로봇.
  13. 제11항에 있어서,
    상기 통신부는 제4로봇과 통신 링크를 생성하며,
    상기 제어부가 상기 재파티셔닝 맵을 생성한 이후, 상기 제1로봇의 통신부는 상기 제1재파티셔닝 영역에 대한 정보를 상기 제4로봇에게 송신하며,
    상기 제어부는 상기 제4로봇의 제4파티셔닝 영역과 상기 제1재파티셔닝 영역을 포함하는 영역에 대하여 재파티셔닝하는 재파티셔닝 맵을 생성하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법을 구현하는 로봇.
  14. 제11항에 있어서,
    상기 제1로봇을 포함한 상기 다수의 로봇들이 생성한 통신 링크는 링 형태를 유지하며,
    상기 제1로봇의 통신부는 상기 통신 링크를 이용하여 미리 설정된 방향으로 메시지를 송신하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법을 구현하는 로봇.
  15. 제11항에 있어서,
    상기 제1로봇의 통신부가 상기 제2로봇으로부터 초기 파티셔닝 맵을 수신하며,
    상기 제1로봇의 제어부는 상기 제3로봇을 포함하는 T1 레벨의 로봇들 간에 링 구조의 통신 링크를 설정하고, 상기 링 구조의 통신 링크에 기반하여 상기 재파티셔닝 맵을 생성하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법을 구현하는 로봇.
  16. 제11항에 있어서,
    상기 통신부가 송수신한 상기 제3로봇의 환경 정보에 기반하여 상기 제어부가 상기 재파티셔닝 맵을 생성하는, 공간을 분할-작업하는 다중 로봇들 간의 통신 방법을 구현하는 로봇.
PCT/KR2018/008784 2017-08-31 2018-08-02 공간을 분할-작업하는 다중 로봇들 간의 통신 방법 및 이를 구현하는 로봇 WO2019045294A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2017-0111479 2017-08-31
KR1020170111479A KR20190024468A (ko) 2017-08-31 2017-08-31 공간을 분할-작업하는 다중 로봇들 간의 통신 방법 및 이를 구현하는 로봇

Publications (1)

Publication Number Publication Date
WO2019045294A1 true WO2019045294A1 (ko) 2019-03-07

Family

ID=65527593

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/008784 WO2019045294A1 (ko) 2017-08-31 2018-08-02 공간을 분할-작업하는 다중 로봇들 간의 통신 방법 및 이를 구현하는 로봇

Country Status (2)

Country Link
KR (1) KR20190024468A (ko)
WO (1) WO2019045294A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110716545A (zh) * 2019-10-18 2020-01-21 深圳拓邦股份有限公司 一种多台清洁设备协同作业方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110295424A1 (en) * 2010-05-27 2011-12-01 David August Johnson Managing autonomous machines across multiple areas
KR20120126772A (ko) * 2011-05-12 2012-11-21 엘지전자 주식회사 청소 장치, 및 복수의 로봇 청소기를 이용한 협동 청소 방법
KR20140017216A (ko) * 2012-07-31 2014-02-11 김복수 로봇 청소 시스템
KR20150061398A (ko) * 2013-11-27 2015-06-04 한국전자통신연구원 군집 로봇의 협력 청소 방법 및 제어 장치
US20170019799A1 (en) * 2014-03-18 2017-01-19 Telefonaktiebolaget Lm Ericsson (Publ) Provision Of Coverage For A Wireless Communication Network By Using Moving Base Stations On Robots Or Drones

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110295424A1 (en) * 2010-05-27 2011-12-01 David August Johnson Managing autonomous machines across multiple areas
KR20120126772A (ko) * 2011-05-12 2012-11-21 엘지전자 주식회사 청소 장치, 및 복수의 로봇 청소기를 이용한 협동 청소 방법
KR20140017216A (ko) * 2012-07-31 2014-02-11 김복수 로봇 청소 시스템
KR20150061398A (ko) * 2013-11-27 2015-06-04 한국전자통신연구원 군집 로봇의 협력 청소 방법 및 제어 장치
US20170019799A1 (en) * 2014-03-18 2017-01-19 Telefonaktiebolaget Lm Ericsson (Publ) Provision Of Coverage For A Wireless Communication Network By Using Moving Base Stations On Robots Or Drones

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110716545A (zh) * 2019-10-18 2020-01-21 深圳拓邦股份有限公司 一种多台清洁设备协同作业方法及系统

Also Published As

Publication number Publication date
KR20190024468A (ko) 2019-03-08

Similar Documents

Publication Publication Date Title
WO2019045288A1 (ko) 다중 로봇이 공간을 분할-작업하는 방법 및 이를 구현하는 로봇
WO2019069850A1 (ja) 管理システム及び制御方法
CN103343681B (zh) 基于ipc与plc的钻机集成双环网络耦合控制系统
WO2019045293A1 (ko) 타겟 지향 로컬 경로를 생성하는 방법 및 이를 구현하는 로봇
US20170089599A1 (en) Using wireless hvac dampers for internet of things end-point sensing, monitoring, control and response within buildings
WO2020141957A1 (en) A method and apparatus for organizing and detecting swarms in a network
JP2006514381A (ja) 表面パネルモジュール、表面パネルモジュール構造、表面パネルモジュール構造の表面パネルモジュールから少なくとも1つの基準位置までの距離を決定するための方法、プロセッサ構造、織地構造、および、表面パネル構造
EP3345057B1 (en) System, device and method for automatic commissioning of application control systems
WO2012036469A2 (ko) 공간분할 기반 지능자율 에너지절감 방법 및 시스템
WO2019045294A1 (ko) 공간을 분할-작업하는 다중 로봇들 간의 통신 방법 및 이를 구현하는 로봇
WO2020071669A1 (ko) 청소로봇이 지면의 단차에 적응적으로 동작하는 방법 및 청소로봇
CN106506589A (zh) 一种机器人集群方法及系统
KR20080108717A (ko) 지능형 센서장치 및 그에 따른 구동방법
JP2002203064A (ja) 保守管理システム及び保守管理方法
KR20220142865A (ko) 이동형 로봇을 이용한 무인 국사 모니터링 시스템 및 그 방법
US20240012429A1 (en) Safety network for a mobile robot fleet
Zhang et al. An optimized placement algorithm for collaborative information processing at a wireless camera network
KR20220074563A (ko) 다중 로봇 기반 보안 및 감시 장치
CN109302320A (zh) 基于梯度扩散机制的多机器人网络故障修复方法
JP2015097346A (ja) ノード装置、ノード制御プログラム、及びネットワークトポロジの制御方法
Makarenko et al. Scalable human-robot interactions in active sensor networks
WO2022211225A1 (ko) 로봇 주행 제어 방법 및 시스템, 그리고 공간의 혼잡도에 기반하여 이동 경로가 제어되는 로봇이 주행하는 건물
JP2008044693A (ja) エレベーターの広域災害支援システム
JP6077055B2 (ja) エレベータの連動制御装置および連動制御方法
WO2023249185A1 (ko) 차량 생산 관리 시스템 및 그 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18851357

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18851357

Country of ref document: EP

Kind code of ref document: A1