WO2019045288A1 - Method by which multiple robots enable space partition and work in space, and robot for implementing same - Google Patents

Method by which multiple robots enable space partition and work in space, and robot for implementing same Download PDF

Info

Publication number
WO2019045288A1
WO2019045288A1 PCT/KR2018/008725 KR2018008725W WO2019045288A1 WO 2019045288 A1 WO2019045288 A1 WO 2019045288A1 KR 2018008725 W KR2018008725 W KR 2018008725W WO 2019045288 A1 WO2019045288 A1 WO 2019045288A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
partitioning
robots
map
space
Prior art date
Application number
PCT/KR2018/008725
Other languages
French (fr)
Korean (ko)
Inventor
최지은
최규천
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Publication of WO2019045288A1 publication Critical patent/WO2019045288A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators

Definitions

  • the present invention relates to a method in which multiple robots divide-and-work a space, and a robot related to the method.
  • the present invention proposes a method and a robot for dividing and working a space in response to a change situation of a space with a real time or a specific period while a plurality of robots work by dividing the space.
  • a robot for dividing-working a space includes a sensing unit for sensing an object disposed outside, a map storage unit for storing a position of a fixed object in a space to which the robot moves, A communication unit for transmitting and receiving the partitioning information and the environment information with the at least one other robot, a work unit for performing operations of the robot, and a sensing unit, a map storage unit, a movement unit, a communication unit and a work unit, One or more neighboring robots to transmit and receive the partitioning information and the environment information are determined by controlling the communication unit to generate at least one of the object not corresponding to the fixed object of the storage unit and the information about the space where the robot has performed the operation And a control unit.
  • a method for dividing-working a robot includes a step of generating an initial partitioning map including a partitioning area of a plurality of robots to be operated by a control unit of a robot, A step of performing a task assigned to the robot in the partitioning area of the robot, a step of moving the robot to a partitioning area in which the sensing part of the robot does not correspond to the fixed object stored in the map storage part of the robot,
  • the method comprising the steps of: generating at least one of an object and information on a space in which a robot has performed a task as first environment information; receiving a second environment information of a neighboring robot from at least one of the plurality of robots; And a control unit for controlling the robot to perform a robot operation based on the first environment information and the second environment information to a robot of some or all of the plurality of robots And generating a re-partitioning map to be allocated.
  • 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.
  • 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 illustrating the configuration of a re-partitioned map according to an embodiment of the present invention.
  • FIG. 8 is a diagram showing an area in which the operation is completed in the partitioning map of FIG. 5.
  • FIG. 9 is a diagram showing a result of repartitioning based on the partitioning map of FIG. 7 according to an embodiment of the present invention.
  • FIG. 10 is a diagram illustrating a configuration of a communication network centered on a hub robot according to an embodiment of the present invention.
  • FIG. 11 is a view showing a communication link of a hub communication method in a state where robots according to an embodiment of the present invention are moved to respective partitioning areas.
  • FIG. 12 is a diagram illustrating a configuration of a robot according to an embodiment of the present invention.
  • FIG. 13 is a view illustrating a process in which a robot divides and works on a space according to an embodiment of the present invention.
  • FIG. 14 is a diagram illustrating a process of generating an initial partitioning map according to an embodiment of the present invention, and then moving each robot to an adjacent area.
  • FIG. 15 is a diagram illustrating a process in which robots according to another embodiment of the present invention are disposed at different positions to generate an initial partitioning map, and then move each robot to an adjacent area.
  • 16 is a diagram illustrating a process in which a robot requests partitioning in a distributed communication method according to an embodiment of the present invention.
  • FIGS. 17 and 18 are diagrams for re-partitioning each environment information by applying a weight to each environment information in a re-partitioning process 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.
  • a fixed map in which fixed obstacles are arranged a partitioning map in which each robot is partitioned so as to work in addition to the fixed map, an area in which the robot performs an operation in the partitioning map, Covered Map and the like exist.
  • 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 in a star form.
  • 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.
  • 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 work is completed within the time period, completion of cover of the entire area is confirmed (S7) and the process is terminated.
  • each robot performs partitioning to maximize the coverage of the entire area while ensuring connectivity with at least one robot close to the robot (S6).
  • step S6 the existing communication connection can be reset.
  • the existing communication connection can be reset. For example, in a case where four robots R1-R2-R3-R4 are arranged and communication is established in the form of a ring like R1-R2-R3-R4-R1 in the initial partitioning process During the partitioning process, communication efficiency can be checked again to change the communication connection.
  • R1-R2-R3-R4-R1 instead of the connection of R1-R2-R3-R4-R1 in the configuration shown in FIG. 16, communication may be connected in the same manner as R1-R2-R4-R3-R1.
  • 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.
  • the hub robot 10 performs repartitioning based on the received information (S41). Then, the re-partitioned information is transmitted as in S22 to S23 (S42). The T1 robot 11 transmits the re-partitioning information to the T2 robot 12 (S43).
  • each of the robots moves to the partitioned area and performs work (S45, S46, S47). Steps S31 to S47 may be performed until the execution of the task is completed.
  • 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 be divided as shown in FIG. 1, or information (partitioning information) about a divided region of a hub robot may be provided to another robot as shown in FIG. 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 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.
  • the remaining robots can collaborate and continue working, 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.
  • steps S22 and S23 of sharing 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 third robot can not operate the lower right region. Therefore, the region of the adjacent second robot and the region of the fourth robot, and the regions of the second and fourth robots It is possible to repartition the area of the first robot adjacent to the area. This will be described in more detail.
  • This re-partitioning scheme can be implemented differently according to the scheme of FIG. 1 (distributed communication scheme) and the scheme of FIG. 2 (hub scheme). First, the method of FIG. 1 will be described.
  • 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.
  • the robot moves to the partitioning area based on the partitioning information, and then performs each operation.
  • 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.
  • some robots may have undergone unexpected changes in the fixed map in the course of performing tasks in a given partitioning area.
  • An obstacle may be generated in the partitioning area of the third robot on the lower right side in the map of FIG.
  • the third robot R3 since the third robot R3 has a failure in the assigned partitioning area, the space available for actual operation is reduced. Therefore, the third robot R3 requests re-partitioning to other adjacent robots (R2 / R4) The third robot, and the third robot and the fourth robot are completed (S61, S62).
  • the second robot (R2) and the fourth robot (R4) can also request re-partitioning to neighboring other robots when their partitioning areas are changed according to the result of the re-partitioning. Therefore, the second robot R2 requests the first robot R1 to perform the redeposition (S63), and the fourth robot R4 requests the fifth robot R5 to repartition (S64). And as a result, repartitioning takes place. After that, the first robot Rl and the fifth robot R5 each have been re-partitioned, and after confirming whether a new partition is required (S65), the re-partitioning is completed or no longer proceeds.
  • Partitioning means changing the boundary area between adjacent robots. For example, in step S61, it is possible to repartition within the partitioning area allocated to the second robot and the third robot so that propagation of excessive repartitioning does not occur to other robots.
  • FIG. 7 is a diagram illustrating the configuration of a re-partitioned map according to an embodiment of the present invention.
  • the partitioning area of the third robot is narrowed due to obstacles (denoted by X)
  • the area in which the third robot can work can be reduced, so that the area of the adjacent robots R2 and R4 is repartitioned , which again leads to the result of repartitioning the area of the second robot / fourth robot with the adjacent first and fifth robots. Therefore, the robot can be operated faster by repartitioning the robot in a reduced working area of the robot.
  • re-partitioning can be performed according to the speed at which each robot performs the task. For example, if a particular robot performs a task quickly within the assigned partitioning, it can be repartitioned so that the work can be performed up to the adjacent area.
  • FIG. 8 is a diagram showing an area in which the operation is completed in the partitioning map of FIG. 5.
  • FIG. 8 shows a partitioning map 220c in which each robot has completed a task in the partitioning map of FIG. 5 as " C ".
  • each robot performs an operation based on the partitioning map 220a of FIG. 5 and displays the completed region as " C ". Then, the robot exchanges information about the ratio of the adjacent robot to the area where the robot has completed the work.
  • the first robot has completed the operation of six cells within the assigned area.
  • the second robot completed three cells
  • the third robot had 18 cells
  • the fourth robot had 20 cells
  • the fifth robot completed 12 cells.
  • Each robot confirms the work completion status (the number or the ratio of the covered area) of the adjacent robots and redistributes the adjacent robot and the area. Based on the links shown in FIG. 6, each robot communicates with each other, and performs repartitioning.
  • each robot can repartition based on the speed at which it has processed the work.
  • the second robot reflects state information of the robot (remaining amount of battery of the robot, etc.) and environmental information, and the processing speed is very low, and the adjacent robots (first / third robot) The area to be allocated can be reduced.
  • 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.
  • the fourth robot that processes 20 cells can widen the area to be allocated.
  • FIG. 9 is a diagram showing a result of repartitioning based on the partitioning map of FIG. 7 according to an embodiment of the present invention. 7, the partitioning area assigned to the fourth robot having a high processing speed is expanded. And each partitioning area can be adjusted so that the robots can operate more efficiently.
  • each of the robots performs communication with the adjacent robots and repartition.
  • FIG. 10 is a diagram illustrating a configuration of a communication network centered on a hub robot according to an embodiment of the present invention.
  • the first robot R1 is in a state in which it can communicate with the fourth robot R4 and the fifth robot R5 due to the distance and obstacle (Link14, Link51).
  • R4 and R5 become T1 robots.
  • the fourth robot can communicate with the second robot (Link24).
  • R2 becomes a T2 robot.
  • the third robot is blocked by the obstacle but can communicate with the fourth robot due to the reflection of the communication signal (Link 34). Likewise, R3 becomes a T2 robot.
  • the hub robot Rl and the other robots R2 to R5 perform tasks in their respective partitioning areas, and change the environment information such as the area where the task has been completed with a predetermined period and the information that a new obstacle is found Is collected by the hub robot R1.
  • the hub robot Rl can perform re-partitioning as shown in FIGS. 7 to 9 according to the changed state.
  • the flow of information differs from that of Fig. This will be described with reference to FIG.
  • FIG. 11 is a view showing a communication link of a hub communication method in a state where robots according to an embodiment of the present invention are moved to respective partitioning areas.
  • Each robot transmits the collected information to the hub robot R1 directly or indirectly according to a trigger of the hub robot R1 or according to a predetermined period.
  • R2 and R3 transmit environment information to R4 (S71, S72).
  • R5 transmits environment information to R1 (S73).
  • R4 transmits the environment information collected by itself and the environment information transmitted by R2 and R3 to R1 (S74).
  • the hub robot confirms whether an obstacle has occurred or re-partitioning is required for the completed area, and after performing the re-partitioning, transfers the new partitioning information to the R2 to R5 directly or indirectly.
  • the hub robot R1 transmits new partitioning information to the fifth robot R5 (S76).
  • the hub robot R1 transmits new partitioning information to the fourth robot R4 (S77).
  • the fourth robot R4 as the T1 robot transmits new partitioning information to the T2 robots R2 and R3 (S78 and S79). Then, as shown in S45 to S47 of FIG. 2, each of the robots moves to the re-partitioned area to perform an operation.
  • 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.
  • the present invention is not applied, it is not possible to reflect the change of the environment occurring in the work process and the area covered until now when the work is performed by dividing the area once initially and repartitioning is not performed .
  • the re-partitioning periodically performed in the present invention is performed periodically, it is possible to change the partitioned area so as to newly improve the operation efficiency by reflecting the area where the work has been performed so far and the area where the new obstacle has occurred.
  • the dynamic and static obstacles and the shape of the space are also reflected in order to optimize the coverage.
  • real-time partitioning is performed by reflecting the current situation (obstacle, coverage area, speed, etc.) including different work processing speeds for each robot in real time, thereby enabling efficient coverage work.
  • 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.
  • FIG. 12 is a diagram illustrating 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. 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.
  • 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.
  • the determination method of the neighboring robot is a distributed communication method in which a robot located in an adjacent partitioning region is determined as a neighboring robot, and a communication link is established with a neighboring robot.
  • the T1 robot sets a communication link with the hub robot to transmit partitioning information and environment information to the hub robot.
  • the T2 robot establishes a communication link with the T1 robot, and transmits the partitioning information and environment information to the T1 robot.
  • control unit 400 determines the number of robots to be operated in the space and space of the fixed object of the space stored in the map storage unit 200 and the initial partitioning map (220a).
  • the robot adjacent to the robot can be a robot that is allocated a partitioning area adjacent to the partitioning area allocated to the robot.
  • the control unit 400 transmits and receives environment information to and from the neighboring robot to create a new partitioning area.
  • the robot 500 when the robot 500 is based on hub communication, the robot 500 can serve as a hub robot.
  • the neighboring robot of the robot 500 as the hub is the T1 robot.
  • the neighboring robot of the T1 robot becomes a T2 robot, and this configuration can be increased to the Tk robot (k is smaller than the number N of robots)
  • the communication unit 300 of the robot 500 which is the hub, can directly receive the environment information of the neighboring robot and indirectly receive environment information (via the neighboring robot) from the neighboring robot of the neighboring robot.
  • the control unit 400 generates a redistribution map to be allocated to neighboring robots T1 & T2 & t & Tk based on the received environment information, and then directly or indirectly informs neighboring robots of the information To be transmitted by the communication unit (300).
  • the control unit 400 may calculate the operation speed of the robot based on the cells that have performed the tasks of the neighboring robot and the robot in the environment information, and generate a re-partitioning map in which more areas are allocated to the robot having a high operation speed .
  • a fourth robot with a high operation speed includes an embodiment in which a wider area is allocated.
  • the environment information may further include information on the workable time or workable area of the robot and the neighboring robot.
  • the workable time can be calculated based on the battery remaining amount of the robot.
  • the workable area can also be calculated based on the remaining battery power of the robot.
  • the workable area can be calculated based on the above-described working speed.
  • the control unit 400 can increase the work efficiency of the robot by generating a redistribution map to which more areas are allocated to the robot having the larger workable time or workable area among the neighboring robots and robots.
  • the configuration of the robot of Fig. 12 and the operation process of the robot are summarized as follows.
  • the criteria for repartitioning include the distance traveled to the center cell or the start cell (node) of each partition, the information of the obstacles currently placed, the area where each robot performed the work (the area covered), and the state information And the like.
  • obstacles of a certain size or smaller for example, smaller than the cell or smaller than the robot. This means eliminating obstacles of small size during repartitioning, and the robot works by avoiding obstacles of small size during movement and work process.
  • important things to be reflected in the repartitioning process are obstacles, dynamic obstacles that have not moved for a while.
  • the controller 400 may reflect various situations such as a case in which the cover is much smaller than other robots due to the obstacle, the partition type is simple, and the cover is large. Also, if the size of the obstacle is large, the robot can move efficiently by setting the position of the obstacle as the partitioning boundary rather than the way that the robot moves around the obstacle.
  • FIG. 13 is a view illustrating a process in which a robot divides and works on a space according to an embodiment of the present invention.
  • the control unit 400 of the robot 500 generates an initial partitioning map including a partitioning area of a plurality of robots 500 to be operated in space (S81 ).
  • the initial partitioning map may be configured as shown in FIG. 5 and stored in the map storage unit 200 as a partitioning map 220.
  • the initial partitioning map can be generated by all robots regardless of the distributed / hub communication method. If the hub communication method is employed, the process further includes transmitting the initial partitioning map generated by the hub robot to another robot.
  • the moving unit 310 of the robot 500 moves the robot 500 to the partitioning area allocated to the robot 500 (S82), and the operation unit 320 of the robot 500 moves the robot 500 in the partitioning area 500) (S83).
  • the control unit 400 determines that an object does not correspond to a fixed object stored in the map storage unit of the robot 500 among the objects sensed by the sensing unit 100 of the robot 500, And generates at least one of the information on the space as the first environment information (S84).
  • the generated information becomes information to be reflected in the generation of the re-partitioning map in the future.
  • the communication unit of the robot 500 receives the second environment information of the neighboring robot from at least one of the plurality of robots (S85).
  • the neighboring robot becomes a part of the whole robot such as one or two.
  • the neighboring robot is an adjacent distance robot capable of communication, and is shown in FIG.
  • control unit 400 generates a re-partitioning map to be allocated to some or all of the plurality of robots using the first environment information and the second environment information.
  • the control unit 400 exchanges environment information with neighboring neighboring robots and generates a re-partitioning map. In this case, only a part of the entire partitioning map can be updated.
  • the hub robot can convert the entire map into the re-partitioning map.
  • FIG. 14 is a diagram illustrating a process of generating an initial partitioning map according to an embodiment of the present invention, and then moving each robot to an adjacent area.
  • Fig. 14 is a process of setting a partitioning area between closely arranged robots.
  • each of the four robots R1 to R4 is adjacent to each other, and an initial partitioning map is calculated (S91).
  • one of the robots R1 calculates an initial partitioning map and broadcasts or unicasts (S92).
  • the control unit of each robot calculates a fitness with each partitioning region, selects a partitioning region having a high degree of fitness, sequentially broadcasts information on the selected partitioning region together with identification information of each robot in a message form (S93- S96) or information on the partitioning selected by the robots R2 to R4 to the specific robot R1 in a unicast manner.
  • R3 and R4 which select the fitness of the same partitioning area, can communicate with each other to determine the robot to be assigned P3.
  • the controllers of the two robots can communicate in the same way as determining the repartitioning area.
  • R1 When R1 receives all the selected partitioning area information in a unicast manner, R1 can transfer the information of the robot assigned to the partitioning area to each robot as in S92 by adjusting the overlapping partitioning area.
  • each robot can select a neighboring robot in advance before moving to the corresponding partitioning area. Since the partitioning map is also arranged with the position of the fixed obstacles, the robots can identify the other robots assigned to the adjacent partitioning area and can pre-connect the communication to the neighboring node.
  • the controller 400 of the robot searches for a robot capable of communication connection and selects a robot having the best communication signal as a neighboring robot.
  • FIG. 15 is a diagram illustrating a process in which robots according to another embodiment of the present invention are disposed at different positions to generate an initial partitioning map, and then move each robot to an adjacent area.
  • a message may be sent to the robots to instruct the robots to generate an initial partitioning map in a state where the robots are distributed and arranged.
  • robots can receive this message from the server and send the received message to the other robots.
  • the controller 400 of the robot can generate an initial partitioning map without any external instruction.
  • the controller 400 of each robot Similar to the process of FIG. 14, the controller 400 of each robot generates an initial partitioning map. Or the control unit 400 of the hub robot generates and broadcasts an initial partitioning map, and all the robots have stored the initial partitioning map as the partitioning map 220. If the robot can not communicate directly with the hub robot, another robot adjacent to the robot can forward the initial partitioning map.
  • FIG. 15 will now be described with the initial partitioning maps stored in each robot.
  • Each of the robots R1 to R4 can confirm the current position of each robot.
  • the positions of other robots are possible in both the identified embodiment and the unconfirmed embodiment.
  • Each of the robots can confirm the identification information of the nearest partitioning area based on their current position.
  • the control unit 400 of each robot can calculate the fitness with each partitioning region and select a partitioning region having a high degree of fitness.
  • each robot can sequentially broadcast the identification information of each robot and the identification information of the selected partitioning region, as shown in FIG.
  • Sequencing broadcasting means transmitting identification information and identification information of a partitioned area within a range where signals do not collide with each other.
  • each robot can generate or store a partitioning map, and broadcast it in the order of the robot's identification number after a preset time (scheduled time, for example, 5 seconds) has elapsed. In Fig. 15, it is transmitted to R1-R2-R3-R4.
  • each robot broadcasts the identification information of the broadcasting robot and the partitioning area information selected by the robot.
  • the MSG (R1, P1) which is a message indicating that the first robot R1 has selected the first partitioning area P1
  • S101 time point 011
  • the second robot R2 may broadcast the second partitioning area information P2 selected by the second robot R2 to the MSGs R2 and P2 at time point 02 (S101). Meanwhile, in a state in which the third robot R3 does not receive the message of the second robot, the third robot R3 transmits the R1 broadcast message R1 and P1 of its own at the time 03, (R1, P1), (R3, P3), which is a message that combines the messages P3 and P3 (S103).
  • the fourth robot R4 can receive both the message of R1 and R2 and the message of R3, and integrates them, and broadcasts the message including the information about the partitioned area selected by the fourth robot with the following message (S104).
  • the isolated second robot (R2) in the communication process can confirm the information about the partitioning areas of the first robot and the third robot.
  • the two robots R3 and R4 which have selected the same partitioning region P3, assign the P3 to one robot based on mutual communication or prioritize according to the identification information of the robot, and the remaining P4 regions are allocated to other robots . Then, the R3 and R4 robots broadcast information about the assigned partitioning area, and each robot moves to the partitioning area.
  • the controller 400 of the robot generates an initial partitioning map and selects each partitioning area.
  • the selection method is a distance required to move from the current position of the robot to the partitioning area and may reflect the position of the fixed objects stored in the fixed map 210 in the process of calculating the distance.
  • the controller 400 of the robot transmits a message including the identification information of the robot to the selected partitioning area and the partitioning area to another robot using the communication unit 300, and when there is another robot that selects the same partitioning area You can change the partitioning area.
  • the criterion for changing is the priority of the identification information of the robot or the remaining amount of the battery of the robot, the time or distance required for the robot to move to the partitioning area, or the priority set for the robots.
  • the distance may be changed considering the distance to the partitioning area and the distance to the unassigned partitioning area.
  • the distance from the R3 robot to P3 is 30 meters
  • the distance from the R3 robot to the unselected P4 is 50 meters
  • the distance from the R4 robot to P3 is 20 meters
  • the distance from the R4 robot to the unselected P4 is 35 meters .
  • the distance to P3 is closer to the R4 robot, but in this case the R3 robot must move to P4, which is 50 meters.
  • the R4 robot is 35 meters to P4, in this case, the R3 robot is assigned to P3 and the R4 robot is assigned to P4.
  • the R4 robot can be assigned to P3.
  • the robot can receive environment information from neighboring neighboring robots. Or receive environment information from all other neighboring robots. Then, based on the received environment information, it is possible to perform repartitioning with neighboring neighboring robots, or to provide a result of repartitioning to all the robots.
  • a robot for example, a cleaning robot
  • a specific function can perform work (cleaning) with active time fast collaboration in a large area through a collaboration system.
  • each robot can generate real-time environment information (obstacles, coverage area, speed, etc.) in real time, and perform real-time partitioning, thereby enabling efficient coverage work.
  • environment information obstacles, coverage area, speed, etc.
  • an optimal robot for performing the task is selected, and while the robot is performing its task, the remaining robots are adaptive System can be operated.
  • the optimal robot is selected as shown in FIG. 6, and a ring communication link is created to move the message for the task through the ring in the token format.
  • the hub robot can select a specific robot and transmit a command message to perform a task.
  • the robots can be selected according to the communication state of the current robot among the hub communication method and the distributed communication method.
  • the robots select the hub robot based on the preset priority or identification number, or the distance between the robots. And it can communicate around the hub robot.
  • control unit of each robot can perform communication using the hub communication method when there are few or few missing robots in the process of transmitting and receiving messages between the robots in FIG. 15
  • the robots can try to switch the communication method periodically in the process of performing the work.
  • a control unit of one robot in which communication signals of all robots are confirmed in a process of working in a distributed communication system can transmit a message informing all robots of the switching of the communication mode.
  • communication between robots is always performed by broadcasting, but in a distributed communication method, each robot ignores messages of other robots that are not linked to the robot itself.
  • 16 is a diagram illustrating a process in which a robot requests partitioning in a distributed communication method according to an embodiment of the present invention.
  • partitioning can be performed by request of a specific robot. For example, identify situations that require repartitioning while working on a partitioning area assigned by a particular robot. For example, a situation where a large number of obstacles are distributed, a floor condition in which an operation can not be performed, or a battery, or a case where the robot completes work very quickly.
  • R2 transmits environment information (obstacle, coverage, etc.) generated in the partitioning area allocated to R2 to R1 and R3 and requests repartitioning.
  • R2 sends to R1 and R3 is MSG (Repartition, R2_Environment) and is transmitted in steps S111 and S112.
  • R2 may be transmitted to only one of the robots R1 or R3.
  • the transmission results R1 and R3 respectively transmit their environmental information to R2 (S113, S114). Based on the environmental information of R1 / R3, R2 can select the priority to be re-partitioned, either R1 or R3. This can vary depending on the situation of R2.
  • R2 When R2 relays to relocate some of its partitioning area to another robot due to some new change, R2 selects a robot in a state where it can migrate some of its partitioning area out of R1 and R3. In this case, a robot that has few remaining partitioning regions to be processed among R1 or R3 can be selected.
  • R2 when R2 is repartitioned to relocate a part of the adjacent partitioning area to itself due to a certain new change, R2 selects a robot in a state where it can get some of their partitioning areas out of R1 and R3. In this case, a robot having a large number of partitioning areas to be processed among R1 or R3 can be selected.
  • the robots can move according to the re-partitioned area to perform the operation.
  • R2 performs a new repartitioning among the remaining robots (R3 and R1) that have not been repartitioned in R1 or R3 (S116, R2-R3 repartitioning), and the robots move according to the re- can do.
  • R1 / R4 / R3 can also be repartitioned by repeating steps S111 to S116.
  • a new optimal partitioning area can be calculated by communicating with the robot beside it.
  • R2 is performed first with R1 and then R3 and then with partition.
  • results reflecting the state of all the robots are derived.
  • partitioning is performed not on the whole area but on an area where the work is performed, that is, the area covered and the environment varying in cost.
  • the robots move to positions to increase coverage and continue to work. If a specific robot fails or is disconnected, the robot changes instantly to a position for ensuring communication with the remaining robots.
  • the remaining robots can actively cope with the situation and collaborate with each other. It can be performed in the optimum direction.
  • R2 in Fig. 15 can communicate with R4 in Fig. It is possible to share situation and changed environment with R4 by environment information.
  • all the robots may move to the respective partitioned partitioned areas at the same position, but each robot may move to the partitioned area while being disposed at different positions. If the robots are disposed adjacent to each other, the partitioning area on the initial partitioning map between the robots can be allocated and moved in a predetermined manner. In one embodiment, if each robot has a serial number, the order of the serial number and the partitioning area may be sequentially assigned. On the other hand, robots can select a specific partitioning area, which allows each robot to calculate the remaining battery power and moving speed of the robot. And these environmental characteristics can always be reflected in the repartitioning process.
  • FIGS. 17 and 18 are diagrams for re-partitioning each environment information by applying a weight to each environment information in a re-partitioning process according to an embodiment of the present invention.
  • the robot can at least re-partition based on its environment information and environment information of the neighboring robot.
  • the controller 400 of the first robot stores the first environment information of the first robot and the second environment information of the second robot (S121).
  • the environment information includes at least one of partitioning information (the identification information of the partitioning area and the number of cells in the partitioning area), the information of the working area (the number of cells in the working area), the information of the area in which the obstacle is disposed ), Information of the unprocessed area (the number of unworked cells), and the like.
  • the first robot may set the second environment information to a NULL value, and attempt to connect to another robot connected to the second robot.
  • the first robot sets a new partitioning area including the partitioning area allocated to the second robot and the partitioning area allocated to the first robot, You can perform repartitioning with robots or with other robots that were previously connected to the second robot.
  • the first environment information and the second environment information may include not only the number of cells in each field but also information on the shape of the space or the bent portion. In other words, even if the area has the same number of cells, it may take a lot of time to work on the long or bent area. Therefore, when there is an excessively large difference between the width and the length, Different stars can be weighted.
  • the number of remaining cells may be at least greater than the number of remaining cells in other partitioning regions. That is, in the case where the number of remaining cells in the three areas of FIG. 7 is 10, the number of remaining cells is 15, and the number of remaining cells is 4 in the area of FIG. 7, The number of remaining cells in the region is small, but it can be calculated by multiplying it by 1.5 to be equivalent to 15 cells.
  • control unit 400 applies weights to the fields of the environment information of the first robot and the second robot, respectively (S122 and S123). Then, the control unit 400 calculates the size of the area to be adjusted by the first robot and the second robot (S124). One of the cells in the current partitioning area of the first robot and the second robot corresponding to S122 and S123 is determined to be reduced by A cells in the first robot and by A cells in the second robot.
  • control unit 400 generates a re-partitioning map corresponding to the size to be adjusted (S125). This includes generating a re-partitioning map to reduce the travel distance of the robot, reflecting the moving speed of the robot, the location of the obstacles disposed in each partitioning area, and the working cells disposed within each partitioning area.
  • Reference numeral 131 in FIG. 18 is a map showing the state of the current partitioning area.
  • the controller of the first robot or the second robot can determine that one cell is increased in the area of the first robot and one cell is reduced in the area of the second robot.
  • the control unit can generate a re-partitioning map to increase the moving speed of the robot, such as 133. After the partitioning map is generated, each robot moves to the re-partitioning area information and performs an operation (S126).
  • the robot performs a process such as the size and dispersion of the area previously worked on, the size and dispersion of the area where the new obstacle is arranged, Can be applied as weights to generate a repartitioning map.
  • 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

Abstract

The present invention relates to a method by which multiple robots enable space partition and work in space, and a robot for implementing the same, and a robot enabling space partition and work in space, according to one embodiment of the present invention, comprises: a sensing unit; a map storing unit for storing a position of a fixed object in the space in which the robot moves; a moving unit; a communication unit for transmitting/receiving partitioning information and environmental information to/from one or more other robots; a working unit; and a control unit, wherein the control unit generates, as the environmental information, at least one among information on an object which does not correspond to the fixed object in the map storing unit among objects sensed by the sensing unit and/or information on the space in which the robot has performed work, and controls the communication unit so as to determine one or more neighboring robots to/from which the partitioning information and the environmental information are to be transmitted/received.

Description

다중 로봇이 공간을 분할-작업하는 방법 및 이를 구현하는 로봇A method for multi-robot space division work and a robot implementing it
본 발명은 다중 로봇이 공간을 분할-작업하는 방법 및 이를 구현하는 로봇에 관한 기술이다.The present invention relates to a method in which multiple robots divide-and-work a space, and a robot related to the method.
공항, 학교, 관공서, 호텔, 사무실, 공장, 체육관, 공연장과 같은 문화시설 등 인적, 물적 교류가 활발하게 발생하는 공간에서는 하나의 로봇이 전체 공간을 커버하여 동작할 수 없다. 따라서, 다수의 로봇들이 공간에 배치되어 동작하는 것이 필요하다.In a space where human and material exchanges actively occur such as airports, schools, public offices, hotels, offices, factories, gymnasiums, cultural facilities such as concert halls, etc., one robot can not cover the entire space. Therefore, it is necessary that a plurality of robots are arranged in the space and operated.
그런데, 다수의 로봇들이 동작하기 위해서는 공간을 효과적으로 분할하여 작업하는 것이 필요한데, 로봇이 동작하는 공간은 다양한 변수가 발생할 가능성이 높다. 특히, 대면적의 유동 인구가 많은 공간에서는 이동 장애물이 다수 배치될 수 있으며, 또한 로봇이 동작 과정에서 고장이 날 수도 있다. 또한, 로봇들 간의 통신이 원활하지 못할 수 있는데, 이는 대면적의 공간에서 로봇의 통신에 일시적인 장애가 발생할 수 있기 때문이다. However, in order for a plurality of robots to operate, it is necessary to effectively divide and work the space, and various variables are likely to occur in the space in which the robot operates. Particularly, in a space having a large flow area, a large number of moving obstacles can be arranged, and the robot may fail during operation. Also, the communication between the robots may not be smooth, because the robot may temporarily fail to communicate in a large space.
따라서, 본 명세서에서는 대면적의 공간에서 로봇들이 협업하여 공간에서 작업을 수행하는 방안에 대해 살펴본다. Therefore, in this specification, a method of performing work in a space by collaborating robots in a large-sized space will be described.
본 명세서에서는 전술한 문제점을 해결하기 위한 것으로, 다수의 로봇이 공간을 분할하여 작업하되 실시간 혹은 특정한 주기를 가지고 공간의 변화 상황에 대응하여 새로이 공간을 분할하여 작업하는 방법 및 로봇을 제안한다.In order to solve the above-mentioned problems, the present invention proposes a method and a robot for dividing and working a space in response to a change situation of a space with a real time or a specific period while a plurality of robots work by dividing the space.
또한. 본 명세서에서는 로봇들 간의 통신을 보장하기 위해 일부 로봇들 간의 통신망을 연결하는 방법 및 로봇을 제안한다. Also. In this specification, a method of connecting a communication network between some robots and a robot are proposed to ensure communication between robots.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention which are not mentioned can be understood by the following description and more clearly understood by the embodiments of the present invention. It will also be readily apparent that the objects and advantages of the invention may be realized and attained by means of the instrumentalities and combinations particularly pointed out in the appended claims.
본 발명의 일 실시예에 의한 공간을 분할-작업하는 로봇은 외부에 배치된 객체를 센싱하는 센싱부, 로봇이 이동하는 공간의 고정 객체의 위치를 저장하는 맵 저장부, 로봇을 이동시키는 이동부, 하나 이상의 다른 로봇과 파티셔닝 정보 및 환경 정보를 송수신하는 통신부, 로봇이 작업을 수행하는 작업부, 및 센싱부와 맵 저장부와 이동부와 통신부와 작업부를 제어하며, 센싱부가 센싱한 객체 중 맵 저장부의 고정 객체에 해당하지 않는 객체와 로봇이 작업을 수행한 공간에 대한 정보 중 어느 하나 이상을 환경 정보로 생성하며, 통신부를 제어하여 파티셔닝 정보와 환경 정보를 송수신할 하나 이상의 이웃 로봇을 결정하는 제어부를 포함한다. A robot for dividing-working a space according to an embodiment of the present invention includes a sensing unit for sensing an object disposed outside, a map storage unit for storing a position of a fixed object in a space to which the robot moves, A communication unit for transmitting and receiving the partitioning information and the environment information with the at least one other robot, a work unit for performing operations of the robot, and a sensing unit, a map storage unit, a movement unit, a communication unit and a work unit, One or more neighboring robots to transmit and receive the partitioning information and the environment information are determined by controlling the communication unit to generate at least one of the object not corresponding to the fixed object of the storage unit and the information about the space where the robot has performed the operation And a control unit.
본 발명의 다른 실시예에 의한 로봇이 공간을 분할-작업하는 방법은 로봇의 제어부가 공간에서 작업할 다수의 로봇들의 파티셔닝 영역을 포함하는 초기 파티셔닝 맵을 생성하는 단계, 로봇의 이동부가 로봇에게 할당된 파티셔닝 영역으로 로봇을 이동시키는 단계, 로봇의 작업부가 파티셔닝 영역에서 로봇에게 할당된 작업을 수행하는 단계, 제어부가 로봇의 센싱부가 센싱한 객체 중 로봇의 맵 저장부에 저장된 고정 객체에 해당하지 않는 객체와 로봇이 작업을 수행한 공간에 대한 정보 중 어느 하나 이상을 제1환경 정보로 생성하는 단계, 로봇의 통신부가 다수의 로봇들 중 하나 이상의 이웃 로봇으로부터 이웃 로봇의 제2환경 정보를 수신하는 단계, 및 제어부가 제1환경 정보 및 제2환경 정보를 이용하여 다수의 로봇들 중 일부 또는 전체의 로봇들에 할당할 재파티셔닝 맵을 생성하는 단계를 포함한다.A method for dividing-working a robot according to another embodiment of the present invention includes a step of generating an initial partitioning map including a partitioning area of a plurality of robots to be operated by a control unit of a robot, A step of performing a task assigned to the robot in the partitioning area of the robot, a step of moving the robot to a partitioning area in which the sensing part of the robot does not correspond to the fixed object stored in the map storage part of the robot, The method comprising the steps of: generating at least one of an object and information on a space in which a robot has performed a task as first environment information; receiving a second environment information of a neighboring robot from at least one of the plurality of robots; And a control unit for controlling the robot to perform a robot operation based on the first environment information and the second environment information to a robot of some or all of the plurality of robots And generating a re-partitioning map to be allocated.
본 발명의 실시예들을 적용할 경우, 다중로봇이 주어진 대면적 환경에서 환경의 형태 및 동적/정적 장애물 정보를 모두 고려한 실시간 파티셔닝을 통해 협업하여 최적으로 지역을 커버할 수 있다. When the embodiments of the present invention are applied, 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.
또한, 본 발명의 실시예들을 적용할 경우, 대면적 공간에서 다중로봇들이 분산형 통신 시스템을 이용하거나 허브형 통신 시스템을 이용하여 모든 로봇의 연결성이 확보되지 않아도 실시간 파티셔닝을 수행하여 각 로봇이 작업할 커버리지를 최적화 시킬 수 있다.In addition, when the embodiments of the present invention are applied, real-time partitioning can be performed even if the plurality of robots in the large-area space use the distributed communication system or the connectivity of all the robots is not secured using the hub-type communication system, You can optimize coverage.
본 발명의 효과는 전술한 효과에 한정되지 않으며, 본 발명의 당업자들은 본 발명의 구성에서 본 발명의 다양한 효과를 쉽게 도출할 수 있다. The effects of the present invention are not limited to the effects described above, and those skilled in the art of the present invention can easily derive the various effects of the present invention in the constitution of the present invention.
도 1은 본 발명의 일 실시예에 의한 분산 통신 방식으로 로봇이 동작하는 과정을 보여주는 도면이다.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.
도 2는 본 발명의 다른 실시예에 의한 허브 통신 방식으로 로봇이 동작하는 과정을 보여주는 도면이다.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 및 도 4는 본 발명의 일 실시예에 의한 고정맵의 구성을 보여주는 도면이다.3 and 4 are views showing the configuration of a fixed map according to an embodiment of the present invention.
도 5는 본 발명의 일 실시예에 의한 파티셔닝 맵의 구성을 보여주는 도면이다.5 is a diagram illustrating a configuration of a partitioning map according to an embodiment of the present invention.
도 6은 본 발명의 일 실시예에 의한 로봇들이 각각의 파티셔닝 영역으로 이동한 상태에서의 분산 통신 방식의 통신 링크를 보여주는 도면이다.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.
도 7은 본 발명의 일 실시예에 의한 재파티셔닝된 맵의 구성을 보여주는 도면이다.7 is a diagram illustrating the configuration of a re-partitioned map according to an embodiment of the present invention.
도 8은 도 5의 파티셔닝 맵에서 작업이 완료된 영역을 표시한 도면이다.FIG. 8 is a diagram showing an area in which the operation is completed in the partitioning map of FIG. 5. FIG.
도 9는 본 발명의 일 실시예에 의한 도 7의 파티셔닝 맵을 기준으로 재파티셔닝한 결과를 보여주는 도면이다.FIG. 9 is a diagram showing a result of repartitioning based on the partitioning map of FIG. 7 according to an embodiment of the present invention.
도 10은 본 발명의 일 실시예에 의한 허브 로봇을 중심으로 통신망의 설정을 보여주는 도면이다. FIG. 10 is a diagram illustrating a configuration of a communication network centered on a hub robot according to an embodiment of the present invention.
도 11은 본 발명의 일 실시예에 의한 로봇들이 각각의 파티셔닝 영역으로 이동한 상태에서의 허브 통신 방식의 통신 링크를 보여주는 도면이다.11 is a view showing a communication link of a hub communication method in a state where robots according to an embodiment of the present invention are moved to respective partitioning areas.
도 12는 본 발명의 일 실시예에 의한 로봇의 구성을 보여주는 도면이다.FIG. 12 is a diagram illustrating a configuration of a robot according to an embodiment of the present invention.
도 13은 본 발명의 일 실시예에 의한 로봇이 공간을 분할-작업하는 과정을 보여주는 도면이다.FIG. 13 is a view illustrating a process in which a robot divides and works on a space according to an embodiment of the present invention.
도 14는 본 발명의 일 실시예에 의한 초기파티셔닝맵을 생성한 후 각 로봇이 인접한 영역으로 이동하는 과정을 보여주는 도면이다.FIG. 14 is a diagram illustrating a process of generating an initial partitioning map according to an embodiment of the present invention, and then moving each robot to an adjacent area.
도 15는 본 발명의 다른 실시예에 의한 로봇들이 상이한 위치에 배치되어초기 파티셔닝 맵을 생성한 후 각 로봇이 인접한 영역으로 이동하는 과정을 보여주는 도면이다.FIG. 15 is a diagram illustrating a process in which robots according to another embodiment of the present invention are disposed at different positions to generate an initial partitioning map, and then move each robot to an adjacent area.
도 16은 본 발명의 일 실시예에 의한 분산 통신 방식에서 로봇이 파티셔닝을 요청하는 과정을 보여주는 도면이다. 16 is a diagram illustrating a process in which a robot requests partitioning in a distributed communication method according to an embodiment of the present invention.
도 17 및 도 18은 본 발명의 일 실시예에 의한 재파티셔닝 과정에서 각 환경 정보에 가중치를 적용하여 재파티셔닝하는 도면이다. FIGS. 17 and 18 are diagrams for re-partitioning each environment information by applying a weight to each environment information in a re-partitioning process according to an embodiment of the present invention.
이하, 도면을 참조하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings so that those skilled in the art can easily carry out the present invention. The present invention may be embodied in many different forms and is not limited to the embodiments described herein.
본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조 부호를 붙이도록 한다. 또한, 본 발명의 일부 실시예들을 예시적인 도면을 참조하여 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가질 수 있다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 수 있다.In order to clearly illustrate the present invention, parts not related to the description are omitted, and the same or similar components are denoted by the same reference numerals throughout the specification. Further, some embodiments of the present invention will be described in detail with reference to exemplary drawings. In the drawings, like reference numerals are used to denote like elements throughout the drawings, even if they are shown on different drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.
본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질, 차례, 순서 또는 개수 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 다른 구성 요소가 "개재"되거나, 각 구성 요소가 다른 구성 요소를 통해 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In describing the components 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. When a component is described as being "connected", "coupled", or "connected" to another component, the component may be directly connected or connected to the other component, Quot; intervening " or that each component may be " connected, " " coupled, " or " connected " through other components.
또한, 본 발명을 구현함에 있어서 설명의 편의를 위하여 구성요소를 세분화하여 설명할 수 있으나, 이들 구성요소가 하나의 장치 또는 모듈 내에 구현될 수도 있고, 혹은 하나의 구성요소가 다수의 장치 또는 모듈들에 나뉘어져서 구현될 수도 있다.The present invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. As shown in FIG.
이하 본 명세서에서는 인접한 로봇들 사이에서 협업하여 정보를 교환하고 작업할 공간을 파티셔닝(partitioning)하고 작업을 수행하며, 이 과정에서 발생한 변화 요소를 반영하여 재파티셔닝(Re-Partitioning)을 수행하는 과정 및 이를 구현하는 로봇에 대해 살펴본다.Hereinafter, a process of collaborating among adjacent robots to exchange information, partitioning a space to be operated and performing work, and performing re-partitioning reflecting the change elements generated in the process Let's look at a robot that implements this.
또한, 로봇은 공간에 대한 정보를 저장할 수 있다. 공간에 대한 정보를 저장하기 위해 공간을 소정의 단위가 되는 셀로 나눌 수 있으며, 각 셀은 정보를 저장할 수 있다. 일 실시예로, 고정된 장애물이 배치된 고정맵(Fixed Map), 고정맵에 추가하여 각 로봇이 작업하도록 파티셔닝된 파티셔닝 맵(Partitioning Map), 파티셔닝 맵에서 로봇이 작업을 수행한 영역을 표시하는 커버드 맵(Covered Map) 등이 존재한다. 커버드 맵은 파티셔닝 맵의 특정 셀을 표시하는 방식으로 구현할 수 있다.In addition, the robot can store information about the space. In order to store information about a space, a space can be divided into cells each having a predetermined unit, and each cell can store information. In one embodiment, a fixed map in which fixed obstacles are arranged, a partitioning map in which each robot is partitioned so as to work in addition to the fixed map, an area in which the robot performs an operation in the partitioning map, Covered Map and the like exist. The covered map can be implemented by displaying a specific cell of the partitioning map.
로봇은 전체 공간에 대한 고정맵을 저장하며, 전체 공간 중 해당 로봇에게 할당된 공간과 할당한 공간에 인접한 다른 로봇의 공간 등의 정보를 포함하는 임시맵(Temporary 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. Depending on the ability of the robot to communicate with other robots, 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.
한편, 본 명세서에서 로봇들의 통신 방식은 두 가지 방식으로 이루어진다. 로봇들이 통신에 있어서 수평적인 관계를 가지는 분산 통신 방식과 로봇들 중에서 하나의 로봇이 통신의 중심에 있는 허브 통신 방식으로 나뉘어진다. 분산 통신 방식의 실시예로 로봇들의 통신망은 링(Ring) 형태로 구성될 수 있다. 허브 통신 방식의 일 실시예로 로봇들의 통신망은 스타(Star) 형태로 구성될 수 있다.In the present specification, 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. In the embodiment of the distributed communication system, the communication network of the robots can be configured in the form of a ring. In one embodiment of the hub communication method, the communication network of the robots may be configured in a star form.
또한, 본 명세서에서 로봇은 특정한 목적(청소, 보안, 모니터링, 안내 등)을 가지거나 혹은 로봇이 이동하는 공간의 특성에 따른 기능을 제공하며 이동하는 장치를 포함한다. 따라서, 본 명세서에서의 로봇은 소정의 정보와 센서를 이용하여 이동할 수 있는 이동수단을 보유하며 소정의 기능을 제공하는 장치를 통칭한다. Also, in this specification, 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.
본 명세서에서 로봇은 맵을 보유하면서 이동할 수 있다. 맵은 공간에서 이동하지 않는 것으로 확인된 고정된 벽, 계단 등 고정 객체에 대한 정보를 의미한다. 또한, 주기적으로 배치되는 동적인 객체들에 대한 정보도 맵 상에 저장될 수 있다. 일 실시예로 로봇의 진행 방향을 기준으로 일정한 범위 내에 배치된 장애물들에 대한 정보도 맵 상에 저장될 수 있다.In this specification, 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. In addition, information about dynamic objects that are placed periodically can also be stored on the map. In one embodiment, information about obstacles disposed within a certain range based on the traveling direction of the robot can also be stored on the map.
전술한 본 발명의 실시예가 가지는 기술적 특징들에 기반하여 다음과 같이 로봇의 구성 및 동작 과정에 대해 살펴본다. Based on the technical features of the embodiment of the present invention, the configuration and operation of the robot will be described as follows.
도 1은 본 발명의 일 실시예에 의한 분산 통신 방식으로 로봇이 동작하는 과정을 보여주는 도면이다. 분산 통신 방식인 경우 로봇은 주어진 정보를 기준으로 각각 다음 정보를 산출할 수 있다. 본 발명의 일 실시예에서 로봇들은 주어진 정보가 동일할 경우 동일한 결과를 산출하도록 프로세싱할 수 있다. 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. In the case of a distributed communication system, the robot can calculate the following information on the basis of given information, respectively. In one embodiment of the invention, the robots can process to yield the same result if the given information is the same.
각 로봇들은 주어진 형태의 환경, 즉 공간의 환경을 고려하여 N-개로 공간을 파티셔닝한다(S1). 각 로봇에게 초기에 주어진 환경 정보(공간의 정보)가 동일할 경우 각 로봇이 산출하는 N 개의 공간의 파티셔닝 결과는 동일할 수 있다. 반면, 각 로봇이 초기에 주어진 환경 정보(공간의 정보) 외에 각각의 로봇이 센싱하거나 취득한 개별 정보가 있을 경우, 각 로봇이 산출하는 N 개의 공간의 파티셔닝 결과는 상이할 수 있다. 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.
각각의 로봇들은 파티셔닝된 영역(파티션)으로 이동한다(S2). 이동 후 로봇들은 근접하여 이웃하는 파티션의 로봇과 통신 연결성을 확인한다(S3). 통신 연결이 확인되면 각 파티션에서 로봇들은 각각의 작업을 수행한다(S4). 로봇이 수행하는 작업은 로봇이 수행하는 기능에 따라 상이할 수 있다. 청소 로봇인 경우 청소 작업을 수행할 수 있으며, 보안 로봇인 경우 위험물을 탐지하는 작업을 수행할 수 있다. 안내 로봇인 경우 파티션 내에서 사람들의 이동에 대응하여 안내 작업을 수행할 수 있다. 디스플레이 로봇인 경우, 파티션 내에서 일정한 정보를 지속하여 출력할 수 있다. 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.
로봇은 일정한 주기로 파티션에서 작업의 수행이 완료되었는지를 확인한다(S5). 일정한 주기란 시간적 주기를 의미한다. 시간적 주기가 무한대인 경우 로봇은 작업을 완료할 때까지 S1에서 결정된 파티션 내에서 작업을 수행한다. 시간적 주기가 10분인 경우, 로봇은 10분동안 작업을 수행한 후, 작업이 완료되지 않은 경우 S6 단계로 진행한다. 시간적 주기 내에 작업이 완료되면 전체 영역의 커버 완료를 확인하고(S7) 종료한다. 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 work is completed within the time period, completion of cover of the entire area is confirmed (S7) and the process is terminated.
S6 단계로 진행하면 각각의 로봇들은 최소 한대 이상 근접한 로봇과 연결성을 보장하면서 전체 영역의 커버리지를 최대화하는 파티셔닝을 수행한다(S6). 이는 재파티셔닝을 의미하며, 지금까지 로봇이 작업한 영역과 새로운 장애물로 인한 작업 불가 영역, 혹은 특정 로봇의 고장 등 변화한 환경을 반영하여 공간을 새롭게 파티셔닝하는 실시예를 포함한다. In step S6, each robot performs partitioning to maximize the coverage of the entire area while ensuring connectivity with at least one robot close to the robot (S6). This means repartitioning and includes an embodiment of newly partitioning the space by reflecting the changed environment such as the area where the robot has worked, the unavailable area due to the new obstacle, or the failure of the specific robot.
재파티셔닝(S6) 이후 로봇은 다시 새로운 파티셔닝된 영역으로 이동하여 S2 내지 S5 단계를 수행한다. After repartitioning (S6), the robot moves again to the new partitioned area and performs steps S2 to S5.
S6 단계에서 기존의 통신 연결을 재설정할 수 있다. 예를 들어, 4개의 로봇인 R1-R2-R3-R4들이 배치된 상태에서 초기 파티셔닝 과정에서는 R1-R2-R3-R4-R1과 같은 링 형태로 통신연결이 된 경우(도 16 참조)에서 재파티셔닝하는 과정에서 통신 효율을 재점검하여 통신 연결을 변경할 수 있다. In step S6, the existing communication connection can be reset. For example, in a case where four robots R1-R2-R3-R4 are arranged and communication is established in the form of a ring like R1-R2-R3-R4-R1 in the initial partitioning process During the partitioning process, communication efficiency can be checked again to change the communication connection.
즉, 도 16과 같은 구성에서 R1-R2-R3-R4-R1의 연결 대신, R1-R2-R4-R3-R1과 같은 방식으로 통신이 연결될 수도 있다. That is, instead of the connection of R1-R2-R3-R4-R1 in the configuration shown in FIG. 16, communication may be connected in the same manner as R1-R2-R4-R3-R1.
도 2는 본 발명의 다른 실시예에 의한 허브 통신 방식으로 로봇이 동작하는 과정을 보여주는 도면이다. 도 1은 각각의 로봇들이 각자 파티셔닝을 수행하며 다른 로봇과 정보를 교환하는 방식이다. 이와 달리 도 2는 허브 로봇이 각각의 로봇들로부터 정보를 수집하여 파티셔닝을 수행한 후 다른 로봇에게 정보를 제공하는 방식이다. 여기서 모든 로봇들이 허브 로봇에게 정보를 직접 제공할 수도 있으며, 혹은 허브 로봇에 근접한 로봇들은 허브 로봇에게 정보를 직접 제공하고, 허브 로봇과 멀리 있는 로봇들은 허브 로봇에 근접한 로봇을 이용하여 정보를 간접 제공할 수 있다. 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. In contrast, FIG. 2 illustrates a method in which a hub robot collects information from each robot, performs partitioning, and provides information to other robots. Here, 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.
이하, 허브 로봇에 근접하여 허브 로봇과 직접 통신이 가능한 로봇을 T1(Tier 1) 로봇이라고 한다. 한편, T1 로봇에 근접하여 T1 로봇과 직접 통신이 가능하지만 허브 로봇과는 통신이 불가능한 로봇을 T2(Tier 2) 로봇이라고 한다. 마찬가지로 Tk 로봇은 T(k-1) 로봇과 직접 통신이 가능하지만 허브 로봇과는 통신이 불가능한 로봇을 지시한다. k의 수가 작을수록 로봇들이 보다 통신 환경이 좋은 상태에 있음을 의미한다. k의 숫자가 커질 경우, 허브 로봇이 다른 로봇들과 통신이 원활하지 않으므로, 허브 역할을 새로운 로봇이 수행하도록 조정될 수 있다. Hereinafter, 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. On the other hand, 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. Similarly, 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.
앞서 로봇들을 R1, R2 등으로 지시할 경우, 특정한 로봇들이 T1 로봇이 될 수 있다. 예를 들어 R1 로봇이 허브이며 R2, R3 로봇이 T1 로봇이며, R4, R5 로봇이 T2 로봇이 될 수 있다. When the robots are designated by R1, R2, etc., the specific robots can be T1 robots. For example, the R1 robot is a hub, the R2 and R3 robots are T1 robots, and the R4 and R5 robots can be T2 robots.
허브 로봇(10)은 주어진 형태의 환경을 고려하여 로봇의 수 N에 따라 N개로 파티셔닝한다(S21). 허브 로봇(10)은 하나 이상의 T1 로봇(11)에게 파티셔닝 정보를 전송한다(S22). 파티셔닝 정보를 수신한 T1 로봇(11)은 T2 로봇(12)에게 파티셔닝 정보를 전송한다(S23). 이러한 과정은 T1 내지 Tk 로봇들에게 전달되어 전체 로봇들은 파티셔닝 정보를 확인하고 저장할 수 있다. 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). 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.
이후 허브 로봇(10) 및 다른 로봇들(11, 12)은 각각 파티셔닝된 영역으로 이동하여 작업을 수행한다(S25, S26, S27). 작업 수행 과정에서 각각의 로봇들(10, 11, 12)은 파티셔닝된 영역 내에서 작업을 수행한 공간에 대한 정보, 즉 작업 완료 정보를 생성하며, 또한 새로운 장애물과 같은 변화된 환경 정보를 생성한다. 그리고 생성된 정보는 S31(T1 로봇의 작업 완료 정보 및 변화된 환경 정보 전송), S32(T2 로봇이 T1 로봇에게 작업 완료 상황 및 변화된 환경 정보 전송), S33(T1 로봇이 T2 로봇의 작업 완료 정보 및 변화된 환경 정보 전송)의 단계에 따라 허브 로봇(10)에게 전송된다.Thereafter, 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.
허브 로봇(10)은 작업이 완료되지 않은 경우, 수신된 정보에 기반하여 재파티셔닝을 수행한다(S41). 그리고 S22 내지 S23 과 같이 재파티셔닝된 정보를 전송한다(S42). T1 로봇(11)은 T2 로봇(12)에게 재파티셔닝 정보를 전송한다(S43). If the task is not completed, the hub robot 10 performs repartitioning based on the received information (S41). Then, the re-partitioned information is transmitted as in S22 to S23 (S42). The T1 robot 11 transmits the re-partitioning information to the T2 robot 12 (S43).
이후 각 로봇들은 각각 각각 파티셔닝된 영역으로 이동하여 작업을 수행한다(S45, S46, S47). 작업의 수행이 완료되기 까지는 S31 내지 S47 단계를 진행할 수 있다. Then, each of the robots moves to the partitioned area and performs work (S45, S46, S47). Steps S31 to S47 may be performed until the execution of the task is completed.
도 1 및 도 2에서 살펴본 로봇들의 동작은 맵에 기반하여 이루어진다. 맵은 공간에 대한 정보를 의미하며 맵 상에는 다양한 정보들이 저장될 수 있다. 맵은 중첩적으로 구성될 수 있다. 앞서 살펴본 고정맵은 고정된 장애물의 위치가 배치된다. 고정맵은 전체 공간의 정보를 저장하며 장애물 등 로봇이 이동할 수 없는 지점을 보여준다. 고정맵에 기반하여 로봇은 전체 공간 또는 일부 공간에 대해 파티셔닝을 수행하며 작업을 수행하는 과정에서 커버드 맵을 생성할 수 있다. 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. 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.
따라서 파티셔닝 맵은 고정맵 전체 또는 일부를 둘 이상의 로봇이 동작할 수 있는 공간으로 나눈 맵을 의미한다. 커버드 맵은 각 로봇에게 할당된 파티셔닝된 공간 내에서 로봇이 작업을 수행한 맵을 의미한다. 커버드 맵은 전술한 고정맵 전체 또는 일부에 대응할 수 있다. 예를 들어 로봇들은 모두 전체 공간에 대응하는 고정맵 및 각 고정맵 내의 각 셀들에서 로봇이 작업했는지 여부를 확인하는 커버된 영역에 대한 정보를 임시로 저장할 수 있다. Thus, 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. For example, 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.
도 1 및 도 2를 정리하면 다음과 같다. 1 and 2 are summarized as follows.
N개의 로봇이 서로 협업하며, 주어진 공간을 N개의 파티션으로 초기 분할한다. 분할은 도 1과 같이 각각의 로봇이 분할할 수도 있고 도2와 같이 허브 로봇이 분할하여 분할된 영역에 대한 정보(파티셔닝 정보)를 다른 로봇에게 제공할 수 있다. 그리고 각 로봇들은 파티셔닝 정보에 따라 지정된 충전 위치에서 각자의 파티셔닝 영역으로 이동한다.N robots collaborate with each other and initially divide a given space into N partitions. As shown in FIG. 1, each robot may be divided as shown in FIG. 1, or information (partitioning information) about a divided region of a hub robot may be provided to another robot as shown in FIG. 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.
도 1의 분산 통신 방식에 따를 경우 통신망으로 연결되는 로봇들은 서로간의 현재 커버리지 상태와 현재 위치, 장애물 정보 등을 기반으로 다음 최적화된 파티셔닝을 진행하며 그를 토대로 다시 커버리지 작업을 수행한다.According to the distributed communication method of FIG. 1, 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.
도 2의 허브 통신 방식에 따를 경우 통신망으로 연결되는 로봇들은 각자의 커버리지 상태와 현재 위치, 장애물 정보를 직접 또는 간접으로 허브 로봇에게 전송한다. 허브 로봇은 전송받은 정보에 기반하여 다음 최적화된 파티셔닝을 진행하며 파티셔닝한 정보를 다른 로봇들에게 제공하고, 각각의 로봇들은 새로운 파티셔닝 정보에 기반하여 다시 커버리지 작업을 수행한다.According to the hub communication method of FIG. 2, the robots connected to the communication network transmit their respective coverage states, current position, and obstacle information directly or indirectly to 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.
이 과정에서 특정 로봇이 임무 수행이 불가능한 상황이 되면 그 로봇을 제외하고 남은 로봇들이 협업하여 작업을 지속할 수 있다. 예를 들어 R3 로봇이 동작할 수 없는 상황인 경우 R3 로봇을 제외하고 전체 공간을 4개로 재파티셔닝하여 모든 영역이 커버 될 때까지 작업을 수행할 수 있다. In this process, when a specific robot is unable to perform its mission, the remaining robots can collaborate and continue working, 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 및 도 4는 본 발명의 일 실시예에 의한 고정맵의 구성을 보여주는 도면이다. 전체 공간에서 장애물의 위치는 도 3의 51과 같이 확인될 수 있다. 그리고 전체 공간을 소정의 셀로 나누면 도 3의 52가 된다. 도 3의 52를 기반으로 장애물이 있는 셀과 장애물이 없는 셀의 값을 달리 설정하면 고정맵이 될 수 있다. 물론, 셀의 값 외에도 52와 같이 검은 색이라는 컬러로도 장애물을 표시할 수 있다. 컬러로 표시하는 것은 로봇의 디스플레이부가 저장된 셀의 값을 특정한 셀로 표시하는 것을 포함하며, 로봇의 맵 저장부에 저장될 경우에는 도 4와 같이 각 셀에 배치된 장애물을 지시하는 값이 저장될 수 있다.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. Of course, in addition to the cell value, 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.
도 4는 고정물들을 하나의 단일한 값인 F라는 값으로 설정한 실시예이다. 210은 고정맵을 보여주며, F가 표시된 셀은 고정물이 배치된 셀을 의미한다. 실시예에 따라 F 대신 숫자나 혹은 다른 기호(f, a, b 등)으로 고정물의 특성에 따라 분류할 수 있다. 물론, 도 3의 52와 같이 검은 색으로 표시할 수 있다. 즉 고정맵은 52 또는 210 등 다양한 형태로 표시 및 저장될 수 있다. 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, and F denotes a cell in which a fixture is disposed. Depending on the embodiment, it can be grouped according to the characteristics of the fixture by a number or other symbol (f, a, b, etc.) instead of F. Of course, it can be displayed in black as 52 in FIG. That is, the fixed map may be displayed and stored in various forms such as 52 or 210.
셀을 지시하기 위해 좌측 및 하단의 좌표 정보를 이용할 수 있다. 좌하단을 (0, 0)으로, 우상단을 (21, 13)으로 지시할 수 있다. 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).
도 1의 S1 또는 도 2의 S21은 로봇이 작업을 할 공간(최대 공간은 고정맵의 공간이며 최소 공간은 고정 맵의 하위 공간)을 로봇의 수 대로 파티셔닝을 수행한다. 고정맵에 대한 정보는 동일하며, 로봇이 작업을 할 공간 역시 동일한 입력값으로 주어지므로 다수의 로봇이 파티셔닝을 하여도 그 결과는 동일할 수 있다. 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.
그 결과 도 1의 S1 또는 도 2의 S21의 과정을 적용하면 로봇의 맵 저장부는 파티셔닝 맵이 저장된다. 파티셔닝 맵은 고정물의 위치나 공간을 고려하여 N개의 로봇들이 효율적으로 작업할 수 있도록 공간을 세분화한 것을 의미한다. 이하 로봇의 개수인 N 이 5인 실시예를 중심으로 살펴본다. As a result, when the process of S1 of FIG. 1 or S21 of FIG. 2 is applied, 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.
도 5는 본 발명의 일 실시예에 의한 파티셔닝 맵의 구성을 보여주는 도면이다. 도 4의 고정맵(210)에 각 로봇에게 할당된 영역이 로봇의 식별정보(1~5)가 표시된 파티셔닝 맵(220a)을 살펴본다. 1은 제1로봇에 할당된 셀이며, 2는 제2로봇에 할당된 셀을 의미한다. 이렇게 총 1~5까지 5개의 로봇들이 작업할 공간을 파티셔닝하였다. 시각적으로 구별될 수 있도록 F 부분에 해칭으로 표시하였으며 각 파티셔닝 공간 사이의 경계 부분을 굵은 선으로 표시하였다. 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, and 2 denotes a cell assigned to the second robot. Thus, a total of five to five robots were partitioned for work space. In order to be visually distinguishable, the part F is hatched and the boundary between the partitioning spaces is indicated by a bold line.
도 5에서 각 로봇들 간의 파티셔닝 공간을 설정한 후 로봇은 해당 파티셔닝 영역으로 이동한다(도 1의 S2 및 도 2의 S25~S27). 도 2의 경우 로봇들 간에 파티셔닝 정보를 공유하는 과정(S22, S23)가 추가적으로 수행될 수 있다.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). In the case of FIG. 2, steps S22 and S23 of sharing partitioning information among the robots may be additionally performed.
도 5에서 동그라미로 표시된 영역은 로봇이 파티셔닝한 영역으로 이동한 위치를 보여준다. The area indicated by circles in FIG. 5 shows the position where the robot has moved to the partitioned area.
로봇은 해당 파티셔닝 맵에서 작업하는 과정에서 일정한 시간이 지난 후, 변화된 환경 정보에 기반하여 재파티셔닝을 수행할 수 있다. 일 실시예로, 우하단에 예측하지 못한 이동 장애물이 발생한 경우 우하단 영역을 제3로봇이 작업할 수 없으므로 인접한 제2로봇의 영역과 제4 로봇의 영역, 그리고 이들 제2 및 제4로봇의 영역에 인접한 제1로봇의 영역까지 재파티셔닝할 수 있다. 이에 대해 보다 상세히 살펴본다. 이러한 재파티셔닝 방식은 도 1의 방식(분산 통신 방식) 및 도 2의 방식(허브 방식)에 따라 달리 구현될 수 있다. 먼저 도 1의 방식에 대해 살펴본다. 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. In one embodiment, when an unexpected moving obstacle is generated in the lower right corner, the third robot can not operate the lower right region. Therefore, the region of the adjacent second robot and the region of the fourth robot, and the regions of the second and fourth robots It is possible to repartition the area of the first robot adjacent to the area. This will be described in more detail. This re-partitioning scheme can be implemented differently according to the scheme of FIG. 1 (distributed communication scheme) and the scheme of FIG. 2 (hub scheme). First, the method of FIG. 1 will be described.
도 6은 본 발명의 일 실시예에 의한 로봇들이 각각의 파티셔닝 영역으로 이동한 상태에서의 분산 통신 방식의 통신 링크를 보여주는 도면이다. 각 로봇은 인접한 다른 로봇과 통신 채널을 연결한다. 제1로봇(R1), 제2로봇(R2), ..., 제5로봇(R5)이 배치되며, 도 5의 동그라미 위치에 대응한다. 인접한 로봇들 사이에는 통신 링크가 형성되는데 i번 로봇과 j번 로봇 사이의 링크를 Linkij라 표시한다.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.
도 6에는 5개의 링크들이 표시되어 있다. 로봇들 간의 링크 형성은 각 로봇의 현재 위치를 기준으로 시계 방향 또는 반시계 방향으로 구성할 수 있다. 또는 각 로봇이 할당된 파티셔닝 영역에서 인접한 경계선의 길이가 긴 파티셔닝 영역의 로봇과 통신 링크를 형성할 수 있다. 또는 로봇과 로봇 사이에 장애물이 배치되었는지 여부에 따라 통신 링크를 형성하거나 혹은 형성하지 않을 수 있다. In Fig. 6, five links are shown. Link formation between robots can be configured in a clockwise or counterclockwise direction based on the current position of each robot. Or 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.
특히, 장애물에 의해 통신이 원할하지 않은 로봇이 우선적으로 통신 링크를 설정할 수 있도록 할 수 있다. 이는 각 로봇이 자신의 파티셔닝 위치로 이동한 후 브로드캐스팅 방식으로 이동 완료 상태를 순서대로 메시지로 전송한 후 메시지가 다른 로봇들에게 전송되지 않은 횟수가 가장 많은 로봇이 통신 상태가 좋지 않은 것으로 판단하여, 다른 로봇과의 링크를 설정함에 있어 우선 순위를 줄 수 있다. Particularly, it is possible to allow a robot, which is not desired to communicate by an obstacle, 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.
로봇은 파티셔닝 정보에 기반하여 파티셔닝 영역으로 이동한 후 각각 작업을 수행한다. 수행 과정에서 일부 로봇은 주어진 파티셔닝 영역에서 작업을 수행하는데 있어 고정맵을 기준으로 변화가 발생하지 않은 상태가 될 수 있다. 그러나 일부 로봇은 주어진 파티셔닝 영역에서 작업을 수행하는 과정에서 고정맵에서 예측하지 못한 변화가 발생한 상태일 수 있다. 앞서 도 5의 맵에서 우측 하단의 제3 로봇의 파티셔닝 영역에 장애물이 발생할 수 있다. The robot moves to the partitioning area based on the partitioning information, and then performs each operation. In the course of execution, 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. However, some robots may have undergone unexpected changes in the fixed map in the course of performing tasks in a given partitioning area. An obstacle may be generated in the partitioning area of the third robot on the lower right side in the map of FIG.
이 경우, 제3로봇(R3)은 자신이 할당받은 파티셔닝 영역에 장애가 발생하여 실제로 작업할 수 있는 공간이 줄어들게 되므로, 인접한 다른 로봇들(R2/R4)에게 재파티셔닝을 요청하여 제2로봇 및 제3로봇, 그리고 제3로봇 및 제4로봇 사이에 재파티셔닝이 완료된다(S61, S62). In this case, since the third robot R3 has a failure in the assigned partitioning area, the space available for actual operation is reduced. Therefore, the third robot R3 requests re-partitioning to other adjacent robots (R2 / R4) The third robot, and the third robot and the fourth robot are completed (S61, S62).
한편, 제2로봇(R2) 및 제4로봇(R4) 역시 재파티셔닝 결과에 따라 자신의 파티셔닝 영역이 변경된 경우 인접한 다른 로봇들에게 재파티셔닝을 요청할 수 있다. 따라서, 제2로봇(R2)은 제1로봇(R1)에게 재파티셔닝을 요청하고(S63), 제4로봇(R4)은 제5로봇(R5)에게 재파티셔닝을 요청한다(S64). 그리고 그 결과 재파티셔닝이 이루어진다. 이후 제1로봇(R1)과 제5로봇(R5)은 각각 재파티셔닝을 했으며, 새로이 파티셔닝이 필요한지 상호 확인한 후(S65) 재파티셔닝을 완료하거나 더이상 진행하지 않는다. On the other hand, the second robot (R2) and the fourth robot (R4) can also request re-partitioning to neighboring other robots when their partitioning areas are changed according to the result of the re-partitioning. Therefore, the second robot R2 requests the first robot R1 to perform the redeposition (S63), and the fourth robot R4 requests the fifth robot R5 to repartition (S64). And as a result, repartitioning takes place. After that, the first robot Rl and the fifth robot R5 each have been re-partitioned, and after confirming whether a new partition is required (S65), the re-partitioning is completed or no longer proceeds.
파티셔닝은 인접한 로봇들 사이의 경계 영역을 변경하는 것을 의미한다. 예를 들어, S61 과정에서 제2로봇과 제3로봇에게 할당된 파티셔닝 영역 내에서 재파티셔닝 하여 다른 로봇들에게까지 과도한 재파티셔닝의 전파가 발생하지 않도록 할 수 있다. Partitioning means changing the boundary area between adjacent robots. For example, in step S61, it is possible to repartition within the partitioning area allocated to the second robot and the third robot so that propagation of excessive repartitioning does not occur to other robots.
도 7은 본 발명의 일 실시예에 의한 재파티셔닝된 맵의 구성을 보여주는 도면이다. 도 5와 비교할 때 제3로봇의 파티셔닝 영역이 장애물(X로 표시)들로 인해 좁아진 결과 제3로봇은 작업할 수 있는 면적이 줄어들게 되므로, 인접한 로봇들(R2, R4)의 영역과 재파티셔닝하고, 이는 다시 제2로봇/제4로봇과 인접한 제1로봇 및 제5로봇과의 영역도 재파티셔닝하는 결과를 도출한다. 따라서, 특정 로봇의 작업 영역이 줄어든 환경에서 줄어든 영역을 반영하여 재파티셔닝하여 로봇이 보다 빨리 동작할 수 있다. 7 is a diagram illustrating the configuration of a re-partitioned map according to an embodiment of the present invention. Compared with FIG. 5, as the partitioning area of the third robot is narrowed due to obstacles (denoted by X), the area in which the third robot can work can be reduced, so that the area of the adjacent robots R2 and R4 is repartitioned , Which again leads to the result of repartitioning the area of the second robot / fourth robot with the adjacent first and fifth robots. Therefore, the robot can be operated faster by repartitioning the robot in a reduced working area of the robot.
한편, 도 6의 과정에서 장애물이 발생하지 않은 경우라도 각자의 로봇이 작업을 수행한 속도에 따라 재파티셔닝을 수행할 수 있다. 예를 들어 특정 로봇이 할당된 파티셔닝 내에서 작업을 신속하게 수행한 경우에 재파티셔닝하여 인접한 영역까지 작업을 수행할 수 있도록 한다. Meanwhile, even if no obstacle occurs in the process of FIG. 6, re-partitioning can be performed according to the speed at which each robot performs the task. For example, if a particular robot performs a task quickly within the assigned partitioning, it can be repartitioned so that the work can be performed up to the adjacent area.
앞서 도 6의 과정을 그대로 적용할 수 있다. 이를 도 8의 파티셔닝 맵을 기준으로 살펴본다.The process of FIG. 6 can be applied as it is. This will be described with reference to the partitioning map of FIG.
도 8은 도 5의 파티셔닝 맵에서 작업이 완료된 영역을 표시한 도면이다. 도 8은 도 5의 파티셔닝 맵에서 각각의 로봇이 작업을 완료한 셀을 "C"로 표시한 파티셔닝 맵(220c)을 도시하고 있다. FIG. 8 is a diagram showing an area in which the operation is completed in the partitioning map of FIG. 5. FIG. FIG. 8 shows a partitioning map 220c in which each robot has completed a task in the partitioning map of FIG. 5 as " C ".
일정한 기간(예를 들어 10분 또는 30분 등)동안 각각의 로봇들은 도 5의 파티셔닝 맵(220a)을 기준으로 작업을 수행하고, 작업이 완료된 영역을 "C"와 같이 표시한다. 이후 로봇은 인접한 로봇들과 자신이 작업을 완료한 영역의 비율에 대한 정보를 교환한다. During a certain period of time (e.g., 10 minutes or 30 minutes), each robot performs an operation based on the partitioning map 220a of FIG. 5 and displays the completed region as " C ". Then, the robot exchanges information about the ratio of the adjacent robot to the area where the robot has completed the work.
예를 들어, 제1로봇은 할당된 영역 내에서 6개의 셀의 작업을 완료했다. 제2로봇은 3개의 셀을, 제3로봇은 18개의 셀을, 제4로봇은 20개의 셀을, 제5로봇은 12개의 셀을 완료했다. 각 로봇들은 인접한 로봇들의 작업 완료 상태(커버한 영역의 개수 또는 비율)을 확인하고 인접한 로봇과 영역을 재분배한다. 앞서 도 6에서 살펴본 링크들에 기반하여 각각의 로봇들끼리 통신을 한 후, 재파티셔닝을 수행한다. For example, the first robot has completed the operation of six cells within the assigned area. The second robot completed three cells, the third robot had 18 cells, the fourth robot had 20 cells, and the fifth robot completed 12 cells. Each robot confirms the work completion status (the number or the ratio of the covered area) of the adjacent robots and redistributes the adjacent robot and the area. Based on the links shown in FIG. 6, each robot communicates with each other, and performs repartitioning.
작업이 완료한 공간은 제외하고 나머지 셀들의 수를 기반으로 각 로봇들에게 할당하여 재파티셔닝을 수행할 수 있다. 재파티셔닝 과정에서 각 로봇이 작업을 처리한 속도를 기준으로 재파티셔닝할 수 있다. 예를 들어 제2로봇은 로봇이 가지는 상태 정보(로봇의 배터리 잔량 등)와 환경적 정보를 반영하여 처리 속도가 매우 낮은 것으로 인접한 로봇들(제1/제3 로봇)이 판단하여 제2로봇에 할당할 영역을 줄일 수 있다. It is possible to perform re-partitioning by allocating to each robot based on the number of remaining cells except the space that the work is completed. During repartitioning, each robot can repartition based on the speed at which it has processed the work. For example, the second robot reflects state information of the robot (remaining amount of battery of the robot, etc.) and environmental information, and the processing speed is very low, and the adjacent robots (first / third robot) The area to be allocated can be reduced.
마찬가지로 셀을 처리하는 속도가 높은 로봇은 새로이 파티셔닝이 될 경우라 하여도 작업 처리 속도가 높아질 것으로 가정하여 파티셔닝 공간을 더 많이 할당할 수 있다. 예를 들어 20개의 셀을 처리한 제4로봇이 할당받을 영역을 넓힐 수 있다. 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. For example, the fourth robot that processes 20 cells can widen the area to be allocated.
도 9는 본 발명의 일 실시예에 의한 도 7의 파티셔닝 맵을 기준으로 재파티셔닝한 결과를 보여주는 도면이다. 도 7과 달리 작업 처리 속도가 높은 제4로봇에게 할당된 파티셔닝 영역이 확장되었다. 그리고 각 파티셔닝 영역들이 조정된 결과 로봇들이 보다 효율적으로 동작할 수 있다. FIG. 9 is a diagram showing a result of repartitioning based on the partitioning map of FIG. 7 according to an embodiment of the present invention. 7, the partitioning area assigned to the fourth robot having a high processing speed is expanded. And each partitioning area can be adjusted so that the robots can operate more efficiently.
도 6 내지 도 9는 각 로봇들이 인접한 로봇들과 통신을 수행하며 재파티셔닝한다. 다음으로 허브 통신을 기준으로 재파티셔닝하는 과정을 살펴본다. 6 to 9, each of the robots performs communication with the adjacent robots and repartition. Next, look at the process of repartitioning based on hub communications.
도 10은 본 발명의 일 실시예에 의한 허브 로봇을 중심으로 통신망의 설정을 보여주는 도면이다. FIG. 10 is a diagram illustrating a configuration of a communication network centered on a hub robot according to an embodiment of the present invention.
도 5와 같이 파티셔닝된 공간에서 동그라미 위치로 이동한다. 설명의 편의를 위해 장애물만 표시된 도 3의 51 상에 로봇들의 위치를 표시한다. 도 10에서 제1로봇(R1)은 거리 및 장애물로 인해 제4로봇(R4)과 제5로봇(R5)과 통신이 가능한 상태이다(Link14, Link51). 여기서 R4, R5가 T1 로봇이 된다. And moves to the circle position in the partitioned space as shown in FIG. For convenience of explanation, the position of the robots on the 51 of FIG. In Fig. 10, the first robot R1 is in a state in which it can communicate with the fourth robot R4 and the fifth robot R5 due to the distance and obstacle (Link14, Link51). Here, R4 and R5 become T1 robots.
한편 제4로봇은 제2로봇과 통신이 가능하다(Link24). 여기서 R2는 T2 로봇이 된다. Meanwhile, the fourth robot can communicate with the second robot (Link24). Here, R2 becomes a T2 robot.
제3로봇은 장애물에 막혀있으나 통신 신호의 반사로 인해 제4로봇과 통신이 가능하다(Link34). 마찬가지로 R3는 T2 로봇이 된다. The third robot is blocked by the obstacle but can communicate with the fourth robot due to the reflection of the communication signal (Link 34). Likewise, R3 becomes a T2 robot.
따라서, 도 10에서 허브 로봇(R1) 및 다른 로봇들(R2~R5)은 각자 위치한 파티셔닝 영역에서 작업을 수행하고, 일정한 주기를 가지고 작업을 완료한 영역과 새로운 장애물이 발견된 정보 등 변경된 환경 정보를 허브 로봇(R1)이 수집한다. 수집한 결과 허브 로봇(R1)은 변경된 상황에 따라 도 7 내지 도 9와 같이 재파티셔닝을 수행할 수 있다. 다만 정보의 흐름이 도 6과 다르다. 이에 대해 도 11에서 살펴본다. Therefore, in FIG. 10, the hub robot Rl and the other robots R2 to R5 perform tasks in their respective partitioning areas, and change the environment information such as the area where the task has been completed with a predetermined period and the information that a new obstacle is found Is collected by the hub robot R1. As a result of the collection, the hub robot Rl can perform re-partitioning as shown in FIGS. 7 to 9 according to the changed state. However, the flow of information differs from that of Fig. This will be described with reference to FIG.
도 11은 본 발명의 일 실시예에 의한 로봇들이 각각의 파티셔닝 영역으로 이동한 상태에서의 허브 통신 방식의 통신 링크를 보여주는 도면이다.11 is a view showing a communication link of a hub communication method in a state where robots according to an embodiment of the present invention are moved to respective partitioning areas.
허브 로봇(R1)의 트리거에 따라, 혹은 미리 정해진 주기에 따라 각 로봇은 수집한 정보를 허브 로봇(R1)에게 직접 또는 간접으로 전송한다. Each robot transmits the collected information to the hub robot R1 directly or indirectly according to a trigger of the hub robot R1 or according to a predetermined period.
R2 및 R3가 R4에게 환경 정보를 전송한다(S71, S72). R5가 R1에게 환경 정보를 전송한다(S73). 그리고 R4는 자신이 수집한 환경정보와 R2, R3가 전송한 환경 정보를 R1에게 전송한다(S74). 허브 로봇은 수집한 환경정보들을 기반으로 장애물이 발생했거나 작업을 완료한 영역에 대해 재파티셔닝이 필요한지 확인하여, 재파티셔닝을 수행한 후 새로운 파티셔닝 정보를 R2~R5에게 직접 또는 간접으로 전송한다. R2 and R3 transmit environment information to R4 (S71, S72). R5 transmits environment information to R1 (S73). Then, R4 transmits the environment information collected by itself and the environment information transmitted by R2 and R3 to R1 (S74). Based on the collected environmental information, the hub robot confirms whether an obstacle has occurred or re-partitioning is required for the completed area, and after performing the re-partitioning, transfers the new partitioning information to the R2 to R5 directly or indirectly.
예를 들어, 허브 로봇(R1)은 제5로봇(R5)에게 새로운 파티셔닝 정보를 전송한다(S76). 또한, 허브 로봇(R1)은 제4로봇(R4)에게 새로운 파티셔닝 정보를 전송한다(S77). T1 로봇인 제4로봇(R4)은 T2로봇인 R2, R3에게 새로운 파티셔닝 정보를 전송한다(S78, S79). 이후 도 2의 S45 내지 S47에서 살펴본 바와 같이 재파티셔닝된 영역으로 각각의 로봇이 이동하여 작업을 수행한다. For example, the hub robot R1 transmits new partitioning information to the fifth robot R5 (S76). In addition, the hub robot R1 transmits new partitioning information to the fourth robot R4 (S77). The fourth robot R4 as the T1 robot transmits new partitioning information to the T2 robots R2 and R3 (S78 and S79). Then, as shown in S45 to S47 of FIG. 2, each of the robots moves to the re-partitioned area to perform an operation.
본 발명을 적용할 경우, 대면적 공간에서 다중로봇들이 분산형 통신 시스템을 이용하거나 허브형 통신 시스템을 이용하여 모든 로봇의 연결성이 확보되지 않아도 실시간 파티셔닝을 수행하여 각 로봇이 작업할 커버리지를 최적화 시킬 수 있다. 특히, 허브형 통신 시스템에 있어서도, 허브 로봇과 통신이 가능한 로봇들과 그렇지 않은 로봇들을 분류하여 계층적으로 로봇들이 통신할 수 있도록 한다. When the present invention is applied, it is possible to perform real-time partitioning even if the plurality of robots communicate with each other using a distributed communication system or a hub-type communication system in a large-area space, thereby optimizing the coverage of each robot . Particularly, even in the hub type communication system, robots capable of communicating with the hub robot and robots not capable of communicating with the hub robot are classified so that the robots can communicate hierarchically.
특히, 본 발명을 적용할 경우, 다중로봇이 주어진 대면적 환경에서 환경의 형태 및 동적/정적 장애물 정보를 모두 고려한 실시간 파티셔닝을 통해 협업하여 최적으로 지역을 커버할 수 있다. In particular, when the present invention is applied, 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.
만약, 본 발명을 적용하지 않을 경우, 초기에 1회 면적을 분할하여 작업을 수행하고 재분할(repartitioning) 작업을 수행하지 않을 경우 작업 과정에서 발생하는 환경의 변화와 현재까지 커버된 영역을 반영하지 못한다. 그러나 본 발명에서 살펴본 재파티셔닝을 주기적으로 수행할 경우 현재까지 작업한 영역 및 새로운 장애물이 발생한 영역을 반영하여 새로이 작업 효율을 높이도록 분할 영역을 변경할 수 있으므로 효율적인 커버리지 작업이 가능하다. 특히, 본 발명에서는 커버리지의 최적화를 위하여 동적 및 정적 장애물과 공간의 형태 또한 반영하여 재파티셔닝할 수 있다. If the present invention is not applied, it is not possible to reflect the change of the environment occurring in the work process and the area covered until now when the work is performed by dividing the area once initially and repartitioning is not performed . However, if the re-partitioning periodically performed in the present invention is performed periodically, it is possible to change the partitioned area so as to newly improve the operation efficiency by reflecting the area where the work has been performed so far and the area where the new obstacle has occurred. Particularly, in the present invention, the dynamic and static obstacles and the shape of the space are also reflected in order to optimize the coverage.
특히, 커버리지 정보에 기반하여 각 로봇마다 상이한 작업 처리 속도를 포함하는 현재 상황(장애물, 커버리지면적, 속도 등)을 실시간으로 반영하여 실시간 파티셔닝을 수행함으로서 효율적인 커버리지 작업이 가능하다. 즉, 특정 영역에 장애물이 많은 경우, 커버한 영역의 차이가 큰 경우 등 다양한 상황을 고려한 실시간 파티셔닝을 진행하여 효율적인 커버리지 작업이 가능하다.In particular, based on the coverage information, real-time partitioning is performed by reflecting the current situation (obstacle, coverage area, speed, etc.) including different work processing speeds for each robot in real time, thereby enabling efficient coverage work. In other words, 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.
도 12는 본 발명의 일 실시예에 의한 로봇의 구성을 보여주는 도면이다. 로봇(500)은 분산 통신 방식의 로봇이 될 수 있다. 또는 허브 통신 방식의 허브 로봇이 될 수 있다. 또는 허브 통신 방식에서 허브가 아닌 로봇이 될 수 있다. FIG. 12 is a diagram illustrating 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.
로봇(500)의 구성요소로 외부에 배치된 객체를 센싱하는 센싱부(100), 로봇이 동하는 공간의 고정 객체의 위치를 저장하는 맵 저장부(200), 로봇을 이동시키는 이동부(310), 공간에서 파티셔닝 정보 및 환경 정보를 송수신하는 통신부(300), 그리고 로봇이 작업을 수행하는 작업부(320)를 포함한다. 또한 각 구성요소들을 제어하는 제어부(400)와 로봇의 동작 상태를 출력하고 외부로부터 지시를 수신하는 인터페이스부(330)를 포함한다. A sensing unit 100 for sensing an object disposed outside as a component of the robot 500, a map storage unit 200 for storing the position of a fixed object in a space in which the robot moves, a moving unit 310 for moving the robot A communication unit 300 for transmitting and receiving the partitioning information and the environment information in the space, and a work unit 320 for performing the work of the robot. And a control unit 400 for controlling the respective components, and an interface unit 330 for outputting the operation state of the robot and receiving an instruction from the outside.
센싱부(100)는 외부 사물의 존재 혹은 거리, 특성 등을 센싱하는 다양한 종류의 센서들을 의미한다. 본 발명의 실시예들을 적용할 경우, 센싱부(100)는 뎁스 값을 산출하는 뎁스 센싱부, 비전 정보를 산출하는 비전 센싱부, 적외선(IR) 센싱부, 초음파 센싱부, 라이다 센싱부 등을 포함할 수 있다. The sensing unit 100 refers to various types of sensors that sense the presence, distance, and characteristics of an external object. When the embodiments of the present invention are applied, 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 >
제어부(400)는 맵 저장부(200)에 저장된 고정맵(210)에 기반하여 파티셔닝 맵(220)을 생성한다. 또한, 제어부(400)는 일정한 시간 간격 후에 센싱부(100)가 센싱한 객체 중 맵 저장부(200)의 고정 객체에 해당하지 않는 객체(새로운 장애물)와 로봇이 작업을 수행한 공간에 대한 정보 중 어느 하나 이상을 환경 정보로 생성한다. 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.
생성된 환경 정보는 이웃 로봇 또는 허브 로봇 등 다른 로봇과 송수신할 수 있다. 즉, 제어부(400)는 통신부를 제어하여 파티셔닝 정보와 환경 정보를 송수신할 하나 이상의 이웃 로봇을 결정하고 이웃 로봇에게 파티셔닝 정보와 환경 정보를 전송하거나 혹은 교환하여 새로운 파티셔닝을 수행하여 재파티셔닝 맵을 생성한다. The generated environment information can be transmitted / received to / from another robot such as a neighboring robot or a hub robot. 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.
이웃 로봇의 결정 방식은 도 6에서 살펴본 바와 같이 인접한 파티셔닝 영역에 배치된 로봇과을 이웃 로봇으로 결정하고, 이웃 로봇과 통신 링크를 설정하는 분산 통신 방식을 일 실시예로 한다. 또한, 도 10 및 도 11과 같이 허브 로봇을 중심으로 T1 로봇과 T2 로봇이 구분된 경우 T1 로봇은 허브 로봇과 통신 링크를 설정하여 허브 로봇에게 파티셔닝 정보와 환경 정보를 전송한다. 반면 T2 로봇은 T1로봇과 통신 링크를 설정하고, T1 로봇에게 파티셔닝 정보와 환경 정보를 전송한다. As shown in FIG. 6, the determination method of the neighboring robot is a distributed communication method in which a robot located in an adjacent partitioning region is determined as a neighboring robot, and a communication link is established with a neighboring robot. 10 and 11, when a T1 robot and a T2 robot are separated from each other by a hub robot, the T1 robot sets a communication link with the hub robot to transmit partitioning information and environment information to the hub robot. On the other hand, the T2 robot establishes a communication link with the T1 robot, and transmits the partitioning information and environment information to the T1 robot.
제어부(400)는 도 7에서 살펴본 바와 같이 맵 저장부(200)에 저장된 공간의 고정 객체의 위치와 공간의 넓이와 공간에서 작업할 로봇의 수 N을 입력값으로 하여 N 개로 분할된 초기 파티셔닝 맵(220a)을 생성할 수 있다. 7, the control unit 400 determines the number of robots to be operated in the space and space of the fixed object of the space stored in the map storage unit 200 and the initial partitioning map (220a).
도 1 및 도 6에서 살펴본 바와 같이 분산 통신 방식에 기반할 경우 로봇의 이웃 로봇은 로봇에 할당된 파티셔닝 영역에 인접한 파티셔닝 영역을 할당받은 로봇이 될 수 있다. 그리고 제어부(400)는 이웃 로봇과 환경 정보를 송수신하여 새로운 파티셔닝 영역을 생성하는 과정을 도 6에서 살펴보았다. As shown in FIGS. 1 and 6, when the robot is based on the distributed communication method, the robot adjacent to the robot can be a robot that is allocated a partitioning area adjacent to the partitioning area allocated to the robot. 6, the control unit 400 transmits and receives environment information to and from the neighboring robot to create a new partitioning area.
도 2 및 도 11에서 살펴본 바와 같이 허브 통신에 기반할 경우 로봇(500)은 허브 로봇의 역할을 수행할 수 있다. 이 경우 허브인 로봇(500)의 이웃 로봇은 T1로봇이다. 또한 T1 로봇의 이웃 로봇은 T2 로봇이 되며 이러한 구성은 Tk 로봇까지 증가할 수 있다(k는 로봇의 개수 N 보다 작은 수)As shown in FIGS. 2 and 11, when the robot 500 is based on hub communication, the robot 500 can serve as a hub robot. In this case, the neighboring robot of the robot 500 as the hub is the T1 robot. In addition, the neighboring robot of the T1 robot becomes a T2 robot, and this configuration can be increased to the Tk robot (k is smaller than the number N of robots)
허브인 로봇(500)의 통신부(300)는 이웃 로봇의 환경 정보를 직접 수신할 수 있으며 또한 이웃 로봇의 이웃 로봇으로부터 간접적으로(이웃 로봇을 매개로 하여) 환경 정보를 수신할 수 있다. 그 결과 제어부(400)는 수신한 환경 정보에 기반하여 이웃 로봇들(T1 & T2 & ... Tk)에게 할당할 재파티셔닝 맵을 생성한 후 이웃 로봇들에게 직접 또는 간접으로 파티셔닝 영역에 대한 정보를 통신부(300)가 전송하도록 제어한다. The communication unit 300 of the robot 500, which is the hub, can directly receive the environment information of the neighboring robot and indirectly receive environment information (via the neighboring robot) from the neighboring robot of the neighboring robot. As a result, the control unit 400 generates a redistribution map to be allocated to neighboring robots T1 & T2 & t & Tk based on the received environment information, and then directly or indirectly informs neighboring robots of the information To be transmitted by the communication unit (300).
또한, 분산 통신 방식 또는 허브 통신 방식 모두 로봇(또는 허브 로봇)의 제어부(400)는 재파티셔닝 하는 과정에서 변경된 환경 정보를 반영할 수 있다. 이 과정에서 어느 하나 이상의 로봇이 동작할 수 없는 상황이 발생할 수 있다. 따라서, 제어부(400)는 맵 저장부(200)에 저장된 공간의 고정 객체의 위치와 환경 정보, 그리고 공간에서 작업할 로봇의 수 N보다 작거나 같은 수를 입력값으로 하여 N보다 작거나 같은 개수로 분할된 재파티셔닝 맵을 생성한다. 모든 로봇이 동작 가능한 경우 N 개의 파티셔닝이 이루어진다. 하나의 로봇이 동작할 수 없는 경우 (N-1)개의 파티셔닝이 이루어진다. In addition, the control unit 400 of the robot (or the hub robot) in both the distributed communication system and the hub communication system can reflect the changed environment information in the process of re-partitioning. In this process, one or more robots can not operate. Accordingly, the control unit 400 determines whether the number of the robot N is greater than or equal to N by using the position and the environment information of the fixed object in the space stored in the map storage unit 200, Lt; RTI ID = 0.0 > partitioned < / RTI > If all the robots are operational, N partitions are done. (N-1) pieces of partitioning are performed when one robot can not operate.
앞서, 도 8 및 도 9에서 살펴본 바와 같이 로봇이 작업한 셀은 재파티셔닝 과정에서 제외시키고 파티셔닝을 수행한다. 이때, 제어부(400)는 환경 정보에서 이웃 로봇 및 로봇의 작업을 수행한 셀에 기반하여 로봇의 작업 속도를 산출하여 작업 속도가 높은 로봇에게 더 많은 영역이 할당된 재파티셔닝 맵을 생성할 수 있다. 도 9에서 작업 속도가 빠른 제4로봇에게 보다 넓은 영역이 할당된 실시예를 포함한다. 8 and 9, the cell on which the robot has been working is excluded from the re-partitioning process and the partitioning is performed. At this time, the control unit 400 may calculate the operation speed of the robot based on the cells that have performed the tasks of the neighboring robot and the robot in the environment information, and generate a re-partitioning map in which more areas are allocated to the robot having a high operation speed . In Fig. 9, a fourth robot with a high operation speed includes an embodiment in which a wider area is allocated.
다음으로 재파티셔닝 과정에서 로봇의 상태 정보를 반영하여 재파티셔닝 할 수 있다. 예를 들어, 환경 정보는 로봇 및 이웃 로봇의 작업 가능 시간 또는 작업 가능 면적에 대한 정보를 더 포함할 수 있다. 작업 가능 시간은 로봇의 배터리 잔량에 기반하여 산출할 수 있다. 작업 가능 면적 역시 로봇의 배터리 잔량에 기초하여 산출할 수 있다. 또는 전술한 작업 속도에 기반하여 작업 가능 면적을 산출할 수 있다. Next, it can be repartitioned by reflecting the state information of the robot in the re-partitioning process. For example, the environment information may further include information on the workable time or workable area of the robot and the neighboring robot. The workable time can be calculated based on the battery remaining amount of the robot. The workable area can also be calculated based on the remaining battery power of the robot. Alternatively, the workable area can be calculated based on the above-described working speed.
제어부(400)는 이웃 로봇 및 로봇 중 작업 가능 시간 또는 작업 가능 면적이 더 큰 값을 가지는 로봇에게 더 많은 영역이 할당된 재파티셔닝 맵을 생성하여 로봇의 작업 효율을 높일 수 있다. The control unit 400 can increase the work efficiency of the robot by generating a redistribution map to which more areas are allocated to the robot having the larger workable time or workable area among the neighboring robots and robots.
도 12의 로봇의 구성 및 전술한 로봇의 동작 과정을 정리하면 다음과 같다. 재파티셔닝 하는 기준으로는 각 파티셔닝의 중심 셀 혹은 시작 셀(노드) 까지의 이동 거리와, 현재 배치된 장애물의 정보, 그리고 각 로봇이 작업을 수행한 영역(커버한 영역), 그리고 로봇의 상태 정보와 같은 환경 정보가 기준이 된다. 장애물 정보를 환경 정보에 포함시키는 과정에서 효율을 고려하여 일정 크기 이하(예를 들어 셀 보다 작거나 로봇보다 작은 크기)의 장애물은 배제할 수 있다. 이는 재파티셔닝 과정에서 작은 크기의 장애물을 배제하는 것을 의미하며 로봇은 이동 및 작업 과정에서 작은 크기의 장애물을 회피하여 동작한다. 특히, 재파티셔닝 과정에서 중요하게 반영해야 하는 것은 장애물, 한동안 이동하지 않은 동적 장애물이다. The configuration of the robot of Fig. 12 and the operation process of the robot are summarized as follows. The criteria for repartitioning include the distance traveled to the center cell or the start cell (node) of each partition, the information of the obstacles currently placed, the area where each robot performed the work (the area covered), and the state information And the like. Considering efficiency in the process of including obstacle information in environment information, it is possible to exclude obstacles of a certain size or smaller (for example, smaller than the cell or smaller than the robot). This means eliminating obstacles of small size during repartitioning, and the robot works by avoiding obstacles of small size during movement and work process. Particularly, important things to be reflected in the repartitioning process are obstacles, dynamic obstacles that have not moved for a while.
한편, 커버한 영역을 환경 정보에 포함시킬 경우, 제어부(400)는 장애물에 의해 다른 로봇 보다 커버를 많이 못한 경우, 파티션 형태가 단순하여 커버를 많이 한 경우 등 다양한 상황을 반영할 수 있다. 또한 장애물의 크기가 큰 경우 로봇이 장애물의 주변을 이동하며 작업하는 방식 보다는 장애물의 위치를 파티셔닝 경계로 설정하여 로봇이 효율적으로 이동할 수 있도록 한다. Meanwhile, when the covered area is included in the environment information, the controller 400 may reflect various situations such as a case in which the cover is much smaller than other robots due to the obstacle, the partition type is simple, and the cover is large. Also, if the size of the obstacle is large, the robot can move efficiently by setting the position of the obstacle as the partitioning boundary rather than the way that the robot moves around the obstacle.
뿐만 아니라 로봇의 상태를 재파티셔닝 과정에서 반영할 수 있는데, 예를 들어 로봇이 동작하지 못한 상황이 발생하여 나머지 로봇만 작업이 가능한 경우, 혹은 로봇의 크기나 작업 처리 속도가 다른 경우를 반영할 수 있다. 도 13은 본 발명의 일 실시예에 의한 로봇이 공간을 분할-작업하는 과정을 보여주는 도면이다. 본 발명의 일 실시예에 의하면, 도 13에 제시된 바와 같이, 로봇(500)의 제어부(400)가 공간에서 작업할 다수의 로봇(500)들의 파티셔닝 영역을 포함하는 초기 파티셔닝 맵을 생성한다(S81). In addition, the state of the robot can be reflected in the re-partitioning process. For example, when the robot can not operate and only the remaining robot can work, or when the size or the processing speed of the robot is different have. FIG. 13 is a view illustrating a process in which a robot divides and works on a space according to an embodiment of the present invention. According to an embodiment of the present invention, as shown in FIG. 13, the control unit 400 of the robot 500 generates an initial partitioning map including a partitioning area of a plurality of robots 500 to be operated in space (S81 ).
초기 파티셔닝 맵은 도 5와 같이 구성될 수 있으며 맵 저장부(200)에 파티셔닝 맵(220)으로 저장된다. 초기 파티셔닝 맵은 통신 방식이 분산/허브와 무관하게 모든 로봇들이 생성할 수 있다. 만약 허브 통신 방식인 경우 허브 로봇이 생성한 초기 파티셔닝 맵을 다른 로봇에게 전송하는 과정을 추가로 포함한다. The initial partitioning map may be configured as shown in FIG. 5 and stored in the map storage unit 200 as a partitioning map 220. The initial partitioning map can be generated by all robots regardless of the distributed / hub communication method. If the hub communication method is employed, the process further includes transmitting the initial partitioning map generated by the hub robot to another robot.
이후, 로봇(500)의 이동부(310)가 로봇(500)에게 할당된 파티셔닝 영역으로 로봇(500)을 이동시키고(S82), 로봇(500)의 작업부(320)가 파티셔닝 영역에서 로봇(500)에게 할당된 작업을 수행한다(S83). 이후, 제어부(400)가 로봇(500)의 센싱부(100)가 센싱한 객체 중 로봇(500)의 맵 저장부에 저장된 고정 객체에 해당하지 않는 객체, 그리고 로봇(500)이 작업을 수행한 공간에 대한 정보 중 어느 하나 이상을 제1환경 정보로 생성한다(S84). 생성한 정보는 이후 재파티셔닝 맵의 생성에 반영할 정보가 된다. Thereafter, the moving unit 310 of the robot 500 moves the robot 500 to the partitioning area allocated to the robot 500 (S82), and the operation unit 320 of the robot 500 moves the robot 500 in the partitioning area 500) (S83). Thereafter, when the control unit 400 determines that an object does not correspond to a fixed object stored in the map storage unit of the robot 500 among the objects sensed by the sensing unit 100 of the robot 500, And generates at least one of the information on the space as the first environment information (S84). The generated information becomes information to be reflected in the generation of the re-partitioning map in the future.
또한, 로봇(500)의 통신부는 다수의 로봇들 중 하나 이상의 이웃 로봇으로부터 해당 이웃 로봇의 제2환경 정보를 수신한다(S85). 분산 통신 방식인 경우, 이웃 로봇은 하나 또는 두 개와 같이 전체 로봇의 일부가 된다. 그리고 이웃 로봇은 통신이 가능한 인접한 거리의 로봇이며 도 6에서 살펴보았다. In addition, the communication unit of the robot 500 receives the second environment information of the neighboring robot from at least one of the plurality of robots (S85). In the case of a distributed communication system, the neighboring robot becomes a part of the whole robot such as one or two. The neighboring robot is an adjacent distance robot capable of communication, and is shown in FIG.
허브 통신 방식인 경우 도 10 및 도 11에서 살펴본 바와 같이 허브 로봇을 중심으로 인접한 로봇들이 이웃 로봇들(T1 로봇)이 되고, 이웃 로봇들에 인접한 로봇들이 T2 로봇이 됨을 살펴보았다. As shown in FIGS. 10 and 11, in the case of the hub communication method, it has been observed that the adjacent robots become the neighboring robots (T1 robots) and the robots adjacent to the neighboring robots become the T2 robots.
이후 제어부(400)가 제1환경 정보 및 제2환경 정보를 이용하여 다수의 로봇들 중 일부 또는 전체의 로봇들에 할당할 재파티셔닝 맵을 생성한다. 분산 통신 방식의 경우, 인접한 이웃 로봇들과 환경 정보들을 교환하고 재파티셔닝 맵을 생성한다. 이 경우 전체 파티셔닝 맵 중 일부만 업데이트 될 수 있다. Thereafter, the control unit 400 generates a re-partitioning map to be allocated to some or all of the plurality of robots using the first environment information and the second environment information. In the case of the distributed communication method, it exchanges environment information with neighboring neighboring robots and generates a re-partitioning map. In this case, only a part of the entire partitioning map can be updated.
한편, 허브 통신 방식인 경우 허브 로봇은 전체 맵을 재파티셔닝 맵으로 변환할 수 있다.On the other hand, in case of the hub communication method, the hub robot can convert the entire map into the re-partitioning map.
도 14는 본 발명의 일 실시예에 의한 초기파티셔닝맵을 생성한 후 각 로봇이 인접한 영역으로 이동하는 과정을 보여주는 도면이다. 도 14는 근접하게 배치된 로봇들 사이에서 파티셔닝 영역을 설정하는 과정이다. FIG. 14 is a diagram illustrating a process of generating an initial partitioning map according to an embodiment of the present invention, and then moving each robot to an adjacent area. Fig. 14 is a process of setting a partitioning area between closely arranged robots.
도 14에서 4개의 로봇(R1~R4)가 인접한 상태에서 각자 초기 파티셔닝 맵을 산출하거나(S91) 혹은 어느 하나의 로봇(R1)이 초기 파티셔닝 맵을 산출하여 다른 로봇들에게 브로드캐스팅 또는 유니캐스트 방식으로 전송할 수 있다(S92). 이후, 각 로봇의 제어부는 각 파티셔닝 영역과의 적합도를 산출하여 적합도가 높은 파티셔닝 영역을 선정하고, 선정한 파티셔닝 영역에 대한 정보를 각 로봇의 식별 정보와 함께 메시지 형태로 순차적으로 브로드캐스팅하거나(S93~S96) 또는 특정한 로봇(R1)에게 각 로봇들(R2~R4)이 선정한 파티셔닝에 대한 정보를 유니캐스트 방식으로 전송할 수 있다. In FIG. 14, each of the four robots R1 to R4 is adjacent to each other, and an initial partitioning map is calculated (S91). Alternatively, one of the robots R1 calculates an initial partitioning map and broadcasts or unicasts (S92). Then, the control unit of each robot calculates a fitness with each partitioning region, selects a partitioning region having a high degree of fitness, sequentially broadcasts information on the selected partitioning region together with identification information of each robot in a message form (S93- S96) or information on the partitioning selected by the robots R2 to R4 to the specific robot R1 in a unicast manner.
브로드캐스팅의 경우 동일한 파티셔닝 영역의 적합도를 선정한 R3, R4는 서로 통신하여 P3를 할당받을 로봇을 결정할 수 있다. 파티셔닝 영역의 적합도를 선정하기 위해 두 로봇의 제어부는 재파티셔닝 영역을 결정하는 것과 같은 방식으로 통신할 수 있다. In the case of broadcasting, R3 and R4, which select the fitness of the same partitioning area, can communicate with each other to determine the robot to be assigned P3. In order to select the fitness of the partitioning area, the controllers of the two robots can communicate in the same way as determining the repartitioning area.
유니캐스트 방식으로 R1이 모든 선정된 파티셔닝 영역 정보를 수신한 경우 R1이 중복되는 파티셔닝 영역을 조정하여 다시 S92의 방식과 같이 파티셔닝 영역에 할당된 로봇의 정보를 각 로봇들에게 전송할 수 있다. When R1 receives all the selected partitioning area information in a unicast manner, R1 can transfer the information of the robot assigned to the partitioning area to each robot as in S92 by adjusting the overlapping partitioning area.
또한, 파티셔닝 영역에 대해 할당된 로봇들 및 이들의 위치가 확정되면 각 로봇들은 해당 파티셔닝 영역으로 이동하기 전에 이웃 로봇을 미리 선정할 수 있다. 파티셔닝 맵은 고정 장애물들의 위치도 배치되어 있으므로, 로봇들은 인접한 파티셔닝 영역에 할당된 다른 로봇들을 식별하여 이웃 노드로 통신을 미리 연결할 수 있다. Also, when the robots assigned to the partitioning area and their positions are determined, each robot can select a neighboring robot in advance before moving to the corresponding partitioning area. Since the partitioning map is also arranged with the position of the fixed obstacles, the robots can identify the other robots assigned to the adjacent partitioning area and can pre-connect the communication to the neighboring node.
혹은 파티셔닝 영역으로 이동한 후, 로봇의 제어부(400)는 통신 연결이 가능한 로봇을 검색하여 가장 통신 신호가 양호한 로봇을 이웃 로봇으로 선정할 수 있다. Alternatively, after moving to the partitioning area, the controller 400 of the robot searches for a robot capable of communication connection and selects a robot having the best communication signal as a neighboring robot.
도 15는 본 발명의 다른 실시예에 의한 로봇들이 상이한 위치에 배치되어초기 파티셔닝 맵을 생성한 후 각 로봇이 인접한 영역으로 이동하는 과정을 보여주는 도면이다. 로봇들이 분산되어 배치된 상태에서 서버가 초기 파티셔닝 맵을 생성할 것을 로봇들에게 명령하는 메시지가 로봇들에게 전송될 수 있다. 또는 로봇들 중 어느 하나 이상이 서버로부터 이러한 메시지를 수신하여, 다른 로봇들에게 수신한 메시지를 전송할 수 있다. 또는 로봇의 제어부(400)들이 일정한 시간에 초기 파티셔닝 맵을 생성하여 작업하도록 스케줄링된 경우 로봇의 제어부(400)는 외부의 지시 없이도 각각 초기 파티셔닝 맵을 생성할 수 있다. FIG. 15 is a diagram illustrating a process in which robots according to another embodiment of the present invention are disposed at different positions to generate an initial partitioning map, and then move each robot to an adjacent area. A message may be sent to the robots to instruct the robots to generate an initial partitioning map in a state where the robots are distributed and arranged. Or robots can receive this message from the server and send the received message to the other robots. Or when the controller 400 of the robot is scheduled to generate and operate the initial partitioning map at a predetermined time, the controller 400 of the robot can generate an initial partitioning map without any external instruction.
도 14의 과정과 유사하게 각 로봇들의 제어부(400)는 초기 파티셔닝 맵을 생성한다. 또는 허브 로봇의 제어부(400)가 초기 파티셔닝 맵을 생성하여 브로드캐스팅 한 결과 모든 로봇들이 초기파티셔닝 맵을 파티셔닝 맵(220)으로 저장한 상태이다. 허브 로봇과 직접 통신이 불가능한 로봇인 경우 이 로봇에 인접한 다른 로봇이 초기 파티셔닝 맵을 포워드할 수 있다. 각 로봇들에게 초기 파티셔닝 맵이 저장된 상태에서 도 15의 실시예를 살펴본다.Similar to the process of FIG. 14, the controller 400 of each robot generates an initial partitioning map. Or the control unit 400 of the hub robot generates and broadcasts an initial partitioning map, and all the robots have stored the initial partitioning map as the partitioning map 220. If the robot can not communicate directly with the hub robot, another robot adjacent to the robot can forward the initial partitioning map. The embodiment of FIG. 15 will now be described with the initial partitioning maps stored in each robot.
각 로봇들(R1~R4)는 각 로봇의 현재 위치를 확인할 수 있다. 다른 로봇의 위치는 확인한 실시예 및 확인하지 않은 실시예 모두 가능하다. 각각의 로봇들이 자신들의 현재 위치를 기준으로 가장 근접한 파티셔닝 영역의 식별정보를 확인할 수 있다. 또는 각 로봇의 제어부(400)는 각 파티셔닝 영역과의 적합도를 산출하여 적합도가 높은 파티셔닝 영역을 선정할 수 있다. Each of the robots R1 to R4 can confirm the current position of each robot. The positions of other robots are possible in both the identified embodiment and the unconfirmed embodiment. Each of the robots can confirm the identification information of the nearest partitioning area based on their current position. Alternatively, the control unit 400 of each robot can calculate the fitness with each partitioning region and select a partitioning region having a high degree of fitness.
선정 결과 각 로봇들은 도 14에서 살펴본 바와 같이, 각 로봇의 식별 정보와 선정한 파티셔닝 영역의 식별 정보를 함께 순차적으로 브로드캐스팅할 수 있다. 브로드캐스팅을 순차적으로 하는 것은 신호가 충돌하지 않는 범위 내에서 식별 정보와 파티셔닝 영역의 식별 정보를 전송하는 것을 의미한다. 순차적 전송을 위해 각 로봇들은 파티셔닝 맵을 생성하거나 저장한 후, 미리 약속된 시간(스케줄링된 시간, 예를 들어 5초 등)이 흐른 뒤 로봇의 식별 번호 순서대로 브로드캐스팅을 할 수 있다. 도 15에서는 R1-R2-R3-R4로 전송한다. As a result of the selection, each robot can sequentially broadcast the identification information of each robot and the identification information of the selected partitioning region, as shown in FIG. Sequencing broadcasting means transmitting identification information and identification information of a partitioned area within a range where signals do not collide with each other. For sequential transmission, each robot can generate or store a partitioning map, and broadcast it in the order of the robot's identification number after a preset time (scheduled time, for example, 5 seconds) has elapsed. In Fig. 15, it is transmitted to R1-R2-R3-R4.
그런데 브로드캐스팅 과정에서 각 로봇은 앞서 브로드캐스팅한 로봇의 식별정보 및 해당 로봇이 선택한 파티셔닝 영역 정보를 함께 브로드캐스팅한다. 예를 들어, 제1로봇(R1)이 제1파티셔닝 영역(P1)을 선택하였음을 알리는 메시지인 MSG(R1, P1)를 time01 시점에서 브로드캐스팅하는데(S101), 제2로봇(R2)은 장벽(55)으로 인해 R1의 브로드캐스팅된 메시지를 수신하지 못한 상태이다. However, in the broadcasting process, each robot broadcasts the identification information of the broadcasting robot and the partitioning area information selected by the robot. For example, the MSG (R1, P1), which is a message indicating that the first robot R1 has selected the first partitioning area P1, is broadcasted at time point 011 (S101) It is in a state that the broadcast message of R1 has not been received due to the message 55.
이 상황에서 제2로봇(R2)는 자신이 선택한 제2파티셔닝 영역 정보(P2)를 MSG(R2, P2)로 time02 시점에서 브로드캐스팅할 수 있다(S101). 한편, 제3로봇(R3)는 제2로봇의 메시지는 수신하지 못한 상태에서, 자신에게 할당된 순서에 따라 time03 시점에서 R1의 브로드캐스트 메시지인 (R1, P1)과 자신의 파티셔닝 영역 선택(R3, P3)을 결합한 메시지인 MSG((R1, P1), (R3, P3))를 브로드캐스팅한다(S103). In this situation, the second robot R2 may broadcast the second partitioning area information P2 selected by the second robot R2 to the MSGs R2 and P2 at time point 02 (S101). Meanwhile, in a state in which the third robot R3 does not receive the message of the second robot, the third robot R3 transmits the R1 broadcast message R1 and P1 of its own at the time 03, (R1, P1), (R3, P3), which is a message that combines the messages P3 and P3 (S103).
한편, 제4로봇(R4)는 R1, R2의 메시지 및 R3의 메시지를 모두 수신할 수 있으므로, 이들을 통합하고, 또한 제4로봇이 선택한 파티셔닝 영역에 대한 정보를 포함하여 다음과 같은 메시지로 브로드캐스팅한다(S104).On the other hand, the fourth robot R4 can receive both the message of R1 and R2 and the message of R3, and integrates them, and broadcasts the message including the information about the partitioned area selected by the fourth robot with the following message (S104).
MSG((R1, P1), (R2, P2), (R3, P3), (R4, P3))MSG ((R1, P1), (R2, P2), (R3, P3), (R4, P3)
이로 인해 통신 과정에서 고립된 제2로봇(R2)는 제1로봇 및 제3로봇의 파티셔닝 영역에 대한 정보를 확인할 수 있다. Accordingly, the isolated second robot (R2) in the communication process can confirm the information about the partitioning areas of the first robot and the third robot.
한편, 동일한 파티셔닝 영역인 P3를 선택한 두 개의 로봇인 R3 및 R4는 상호 통신에 기반하거나 로봇의 식별 정보에 따라 우선순위를 두어 P3를 어느 한 로봇에게 할당하고, 나머지 P4 영역을 다른 로봇이 할당받는다. 그리고 R3 및 R4 로봇은 자신이 할당받은 파티셔닝 영역에 대한 정보를 브로드캐스팅한 후 각각의 로봇들은 파티셔닝 영역으로 이동한다. On the other hand, the two robots R3 and R4, which have selected the same partitioning region P3, assign the P3 to one robot based on mutual communication or prioritize according to the identification information of the robot, and the remaining P4 regions are allocated to other robots . Then, the R3 and R4 robots broadcast information about the assigned partitioning area, and each robot moves to the partitioning area.
전술한 실시예들을 정리하면 다음과 같다. The above-described embodiments are summarized as follows.
로봇의 제어부(400)는 초기 파티셔닝 맵을 생성하고 각 파티셔닝 영역을 선택한다. 선택 방식은 로봇의 현재 위치에서 파티셔닝 영역까지 이동하는데 필요한 거리이며, 이 거리를 산정하는 과정에서 고정맵(210)에 저장된 고정 객체들의 위치를 반영할 수 있다. The controller 400 of the robot generates an initial partitioning map and selects each partitioning area. The selection method is a distance required to move from the current position of the robot to the partitioning area and may reflect the position of the fixed objects stored in the fixed map 210 in the process of calculating the distance.
또한, 로봇의 제어부(400)는 선택한 파티셔닝 영역 및 파티셔닝 영역에 대한 로봇의 식별 정보를 포함하는 메시지를 통신부(300)를 이용하여 다른 로봇에게 전송한 후, 동일한 파티셔닝 영역을 선택한 다른 로봇이 존재할 경우 파티셔닝 영역을 변경할 수 있다. In addition, the controller 400 of the robot transmits a message including the identification information of the robot to the selected partitioning area and the partitioning area to another robot using the communication unit 300, and when there is another robot that selects the same partitioning area You can change the partitioning area.
변경하는 기준은 로봇의 식별 정보의 우선순위, 또는 로봇의 배터리 잔량, 로봇이 파티셔닝 영역으로 이동하는데 소요되는 시간 또는 거리, 또는 로봇들에게 설정된 우선순위 등을 일 실시예로 한다. 특히, 파티셔닝 영역으로 이동하는 거리와 할당되지 않은 파티셔닝 영역으로 이동하는 거리를 고려하여 변경할 수 있다. The criterion for changing is the priority of the identification information of the robot or the remaining amount of the battery of the robot, the time or distance required for the robot to move to the partitioning area, or the priority set for the robots. In particular, the distance may be changed considering the distance to the partitioning area and the distance to the unassigned partitioning area.
일 실시예로 R3 로봇에서 P3까지 거리는 30미터이며, R3로봇에서 선택되지 않은 P4까지 거리는 50미터이며, R4 로봇에서 P3까지 거리는 20 미터이며, R4 로봇에서 선택되지 않은 P4까지 거리는 35미터인 경우를 살펴본다. In one embodiment, the distance from the R3 robot to P3 is 30 meters, the distance from the R3 robot to the unselected P4 is 50 meters, the distance from the R4 robot to P3 is 20 meters, and the distance from the R4 robot to the unselected P4 is 35 meters .
P3까지의 거리는 R4 로봇이 더 가깝지만, 이 경우 R3 로봇은 P4로 이동해야 하는데 이 거리는 50미터가 된다. 반면 R4 로봇은 P4까지 35미터이므로, 이 경우 R3 로봇은 P3에, R4 로봇은 P4에 할당된다. 물론, P4까지의 거리가 R3 로봇 및 R4 로봇 모두 동일할 경우 R4 로봇이 P3에 할당될 수 있다.The distance to P3 is closer to the R4 robot, but in this case the R3 robot must move to P4, which is 50 meters. On the other hand, since the R4 robot is 35 meters to P4, in this case, the R3 robot is assigned to P3 and the R4 robot is assigned to P4. Of course, if the distance to P4 is the same for both the R3 robot and the R4 robot, the R4 robot can be assigned to P3.
도 14 및 도 15의 과정은 재파티셔닝 과정에도 적용될 수 있다. 14 and 15 can also be applied to the re-partitioning process.
로봇들이 각 파티셔닝 영역에서 작업을 수행한 후, 지금까지 진행한 작업이 완료된 영역(셀 정보)과 새로운 장애물이 발생하여 작업할 수 없는 공간에 대한 정보, 그리고 로봇의 현재 상태 등을 환경정보로 하여 로봇들 사이에 교환하고, 파티셔닝 영역을 재조정할 수 있다. After the robot performs the work in each partitioning area, information on the completed area (cell information), the information about the space that can not be worked due to the occurrence of a new obstacle, and the current state of the robot Exchange between robots, and rearrange the partitioning area.
특히, 재파티셔닝 과정에서 로봇은 인접한 이웃 로봇들로부터 환경 정보를 수신할 수 있다. 또는 다른 모든 이웃 로봇들로부터 환경 정보를 수신할 수 있다. 그리고 수신한 환경 정보에 기반하여 인접한 이웃 로봇들과 재파티셔닝을 수행하거나, 혹은 모든 로봇들에게 재파티셔닝된 결과를 제공할 수 있다. Particularly, in the repartitioning process, the robot can receive environment information from neighboring neighboring robots. Or receive environment information from all other neighboring robots. Then, based on the received environment information, it is possible to perform repartitioning with neighboring neighboring robots, or to provide a result of repartitioning to all the robots.
본 발명에서 살펴본 바와 같이, 대면적 환경에서의 통신 불안정성을 감안한 분산형 협업 시스템을 구성함으로서 환경변화 및 로봇의 고장과 같은 비상상황에 강인하고 그 상황에 맞는 최적 커버리지 알고리즘을 토대로 운용할 수 있다. 일 실시예로 특정한 기능을 수행하는 로봇(예를 들어 청소 로봇)인 경우, 협업 시스템을 통하여 대면적에서의 능동적으로 빠른 시간 협업으로 작업(청소)을 수행할 수 있다. As described in the present invention, by constructing a distributed collaborative system considering communication instability in a large-scale environment, it is robust against an emergency situation such as an environmental change and a failure of a robot, and can be operated based on an optimal coverage algorithm suitable for the situation. In one embodiment, a robot (for example, a cleaning robot) that performs a specific function can perform work (cleaning) with active time fast collaboration in a large area through a collaboration system.
또한, 정찰, 보안, 안내 등 특정 임무를 나눠서 스케쥴링하여 협업하는 시스템에도 적용할 수 있다. 특히, 각 로봇들은 현재 상황(장애물, 커버리지면적, 속도 등)을 실시간으로 환경정보로 생성한 후, 실시간 파티셔닝을 수행함으로서 효율적인 커버리지 작업이 가능하다. Also, it can be applied to a system in which specific tasks such as reconnaissance, security, and guidance are divided and scheduled to collaborate. In particular, each robot can generate real-time environment information (obstacles, coverage area, speed, etc.) in real time, and perform real-time partitioning, thereby enabling efficient coverage work.
커버리지 작업 외에 특정 임무가 추가로 주어졌을 경우에 그 임무를 수행하기 위한 최적 로봇이 선정되고 해당 로봇이 그 임무를 수행하는 중에 나머지 로봇들은 협업하여 계속해서 커버리지 작업을 진행 하는 적응적(Adaptive)인 시스템으로 운영 될 수 있다. 최적 로봇의 선정은 분산 통신 방식의 경우 도 6과 같이 링 형 통신 링크를 만들어서 작업에 대한 메시지를 토큰 형식으로 링을 통해 이동시켜 이를 수행하기에 적합한 로봇이 메시지를 수신하면 해당 작업을 수행할 수 있도록 한다. 허브 통신 방식에서는 허브 로봇이 특정 로봇을 선택하여 작업을 수행하는 명령 메시지를 전송할 수 있다.  When a specific task is given in addition to the coverage task, an optimal robot for performing the task is selected, and while the robot is performing its task, the remaining robots are adaptive System can be operated. In the case of the distributed communication method, the optimal robot is selected as shown in FIG. 6, and a ring communication link is created to move the message for the task through the ring in the token format. When the robot receives the message, . In the hub communication method, the hub robot can select a specific robot and transmit a command message to perform a task.
또한, 로봇들은 허브 통신 방식과 분산 통신 방식 중에서 현재 로봇들의 통신 상태에 따라 선택할 수 있다. 도 15에서 파티셔닝 및 메시지를 전달하는 방식에 있어서, 모든 로봇들이 통신이 가능한 상태인 것으로 확인될 경우 로봇들은 미리 설정된 우선 순위 또는 식별번호, 혹은 로봇 간의 거리 등에 기반하여 허브 로봇을 선택한다. 그리고 허브 로봇을 중심으로 통신할 수 있다. In addition, the robots can be selected according to the communication state of the current robot among the hub communication method and the distributed communication method. In the method of transferring the partitioning and message in Fig. 15, when it is confirmed that all the robots are in a state of being able to communicate, the robots select the hub robot based on the preset priority or identification number, or the distance between the robots. And it can communicate around the hub robot.
따라서, 각 로봇의 제어부는 도 15 과정에서 로봇들 간의 메시지 송수신 과정에서 누락되는 로봇의 수가 없거나 혹은 적은 경우에 허브 통신 방식으로 통신을 수행할 수 있다 Accordingly, the control unit of each robot can perform communication using the hub communication method when there are few or few missing robots in the process of transmitting and receiving messages between the robots in FIG. 15
또한, 로봇들은 작업을 수행하는 과정에서 주기적으로 통신 방식의 전환을 시도할 수 있다. 예를 들어, 분산 통신 방식으로 작업하는 과정에서 모든 로봇들의 통신 신호가 확인되는 어느 하나의 로봇의 제어부가 통신 방식의 전환을 알리는 메시지를 모든 로봇에게 전송할 수 있다. Also, the robots can try to switch the communication method periodically in the process of performing the work. For example, a control unit of one robot in which communication signals of all robots are confirmed in a process of working in a distributed communication system can transmit a message informing all robots of the switching of the communication mode.
따라서 일 실시예에 의하면 로봇들 간에 통신은 항상 브로드캐스팅으로 이루어지되, 분산 통신 방식에서는 각 로봇은 자신과 링크가 연결되지 않은 다른 로봇의 메시지는 무시한다. 다만, 자신과 통신 링크가 연결된 로봇의 메시지만을 확인하여 재파티셔닝을 수행할 수 있다. 이 경우, 모든 로봇들 간의 통신은 다른 로봇도 확인할 수 있으며, 이 과정에서 분산 통신 방식에서 허브 통신 방식으로 전환할 수 있다. Therefore, according to an embodiment, communication between robots is always performed by broadcasting, but in a distributed communication method, each robot ignores messages of other robots that are not linked to the robot itself. However, it is possible to perform repartitioning by checking only the message of the robot to which the communication link is connected. In this case, communication between all the robots can be confirmed by other robots, and in this process, it is possible to switch from the distributed communication method to the hub communication method.
도 16은 본 발명의 일 실시예에 의한 분산 통신 방식에서 로봇이 파티셔닝을 요청하는 과정을 보여주는 도면이다. 16 is a diagram illustrating a process in which a robot requests partitioning in a distributed communication method according to an embodiment of the present invention.
한편, 파티셔닝은 특정한 로봇의 요청에 의해 이루어질 수 있다. 예를 들어, 특정 로봇이 할당받은 파티셔닝 영역을 작업하는 도중 재파티셔닝이 필요한 상황을 확인한다. 예를 들어 장애물이 다수 분포된 상황, 작업을 수행할 수 없는 바닥 상태, 혹은 배터리, 혹은 해당 로봇이 매우 빨리 작업을 완료한 경우 등 변화 요소가 발생한 경우이다. 도 16의 R1 내지 R4의 로봇들이 각각 통신 링크를 형성한 상태에서 R2가 R1 및 R3에게 R2가 할당받은 파티셔닝 영역에서 발생한 환경 정보(장애물, 커버리지 등)를 전송하며 재파티셔닝을 요청한다.On the other hand, partitioning can be performed by request of a specific robot. For example, identify situations that require repartitioning while working on a partitioning area assigned by a particular robot. For example, a situation where a large number of obstacles are distributed, a floor condition in which an operation can not be performed, or a battery, or a case where the robot completes work very quickly. In the state where the robots R1 to R4 of FIG. 16 respectively form the communication link, R2 transmits environment information (obstacle, coverage, etc.) generated in the partitioning area allocated to R2 to R1 and R3 and requests repartitioning.
R2가 R1 및 R3에게 전송하는 메시지는 MSG(Repartition, R2_Environment) 이며 S111 및 S112 단계에서 전송된다. 이와 달리, R2는 R1 또는 R3 중 어느 하나의 로봇에게만 전송할 수도 있다. The message that R2 sends to R1 and R3 is MSG (Repartition, R2_Environment) and is transmitted in steps S111 and S112. Alternatively, R2 may be transmitted to only one of the robots R1 or R3.
전송 결과 R1 및 R3는 각각 자신들의 환경 정보를 R2에게 전송한다(S113, S114). R2는 R1/R3의 환경 정보에 기반하여 재파티셔닝을 할 우선순위를 R1 또는 R3 중에 선택할 수 있다. 이는 R2의 상황에 따라 달라질 수 있다.The transmission results R1 and R3 respectively transmit their environmental information to R2 (S113, S114). Based on the environmental information of R1 / R3, R2 can select the priority to be re-partitioned, either R1 or R3. This can vary depending on the situation of R2.
R2가 소정의 새로운 변화로 인해 자신의 파티셔닝 영역 중 일부를 다른 로봇에게 이전시키기 위해 재파티셔닝 할 경우, R2는 R1 및 R3 중에서 자신의 파티셔닝 영역을 일부 이전해갈 수 있는 상태의 로봇을 선택한다. 이 경우 R1 또는 R3 중에서 처리할 파티셔닝 영역이 적게 남아 있는 로봇이 선택될 수 있다. When R2 relays to relocate some of its partitioning area to another robot due to some new change, R2 selects a robot in a state where it can migrate some of its partitioning area out of R1 and R3. In this case, a robot that has few remaining partitioning regions to be processed among R1 or R3 can be selected.
반대로, R2가 소정의 새로운 변화로 인해 인접한 파티셔닝 영역의 일부를 자신에게 이전시키기 위해 재파티셔닝 할 경우, R2는 R1 및 R3 중에서 그들의 파티셔닝 영역을 일부 가져올 수 있는 상태의 로봇을 선택한다. 이 경우 R1 또는 R3 중에서 처리할 파티셔닝 영역이 많이 남아 있는 로봇이 선택될 수 있다. Conversely, when R2 is repartitioned to relocate a part of the adjacent partitioning area to itself due to a certain new change, R2 selects a robot in a state where it can get some of their partitioning areas out of R1 and R3. In this case, a robot having a large number of partitioning areas to be processed among R1 or R3 can be selected.
선택한 로봇(R1 또는 R3)와 R2가 재파티셔닝을 수행한 후(S115, R1-R2 재파티셔닝), 재파티셔닝된 영역에 따라 로봇들이 이동하여 작업을 수행할 수 있다. After the selected robot (R1 or R3) and R2 perform the re-partitioning (S115, R1-R2 re-partitioning), the robots can move according to the re-partitioned area to perform the operation.
또는 R2는 R1 또는 R3 중에서 재파티셔닝을 하지 않은 남은 로봇(R3 또는과 R1) 중에서 새로이 재파티셔닝을 수행한 후(S116, R2-R3 재파티셔닝) 재파티셔닝된 영역에 따라 로봇들이 이동하여 작업을 수행할 수 있다. Or R2 performs a new repartitioning among the remaining robots (R3 and R1) that have not been repartitioned in R1 or R3 (S116, R2-R3 repartitioning), and the robots move according to the re- can do.
R2로부터 촉발된 재파티셔닝은 R1/R3와 재파티셔닝을 진행한 후, 각각 R1 및 R3가 R4에게 재파티셔닝을 다시 요청할 수 있다. 이 과정에서 R1/R4/R3 역시 앞서 S111 내지 S116의 과정을 반복하여 재파티셔닝할 수 있다. The repartitioning triggered from R2 may proceed with the re-partitioning with R1 / R3, then R1 and R3 may request the R4 partition again, respectively. In this process, R1 / R4 / R3 can also be repartitioned by repeating steps S111 to S116.
도 16과 같은 구성에서는 허브 혹은 그 역할을 하는 로봇이 있지 않고 분산 통신으로 진행된다. 따라서, 각 로봇의 식별 번호 혹은 각 로봇에 부여된 통신 상의 우선 순위 등에 기반하여 링 형태로 통신을 하며 각 순서마다 두 로봇의 최적 파티셔닝 영역을 구할 수 있다. 다만, 도 15의 R2와 같이 R4와만 연결이 가능한 로봇이 있는 경우 일부 로봇들만 링 형태를 구성할 수 있다. 도 15의 경우 R1-R4-R3가 링을 이루며, R2가 R4에 추가적으로 연결될 수 있다. In the configuration shown in FIG. 16, there is no hub or a robot serving as a hub, and distributed communication is performed. Therefore, communication is performed in the form of a ring based on the identification number of each robot or the priority of communication given to each robot, and the optimal partitioning area of the two robots can be obtained in each order. However, if there is a robot which can be connected only to R4 as in R2 of Fig. 15, only some robots can form a ring shape. In the case of FIG. 15, R1-R4-R3 form a ring, and R2 may be additionally connected to R4.
또 방금 전 로봇과 파티셔닝한 자신의 새로운 파티셔닝 영역을 기반으로 그 옆에 로봇과 통신하여 새로운 최적 파티셔닝 영역을 산출할 수 있다. 도 16에서 R2가 R1과 먼저 파티셔닝을 수행한 후 R3와 다음으로 파티셔닝을 수행하는 것을 일 실시예로 한다. 도 16과 같은 구성에서 전체 사이클을 돌면 모든 로봇의 상태를 반영한 결과가 도출 된다. Also, based on the new partitioning area of the robot that has just been partitioned with the previous robot, a new optimal partitioning area can be calculated by communicating with the robot beside it. In Fig. 16, R2 is performed first with R1 and then R3 and then with partition. In the configuration shown in FIG. 16, when the whole cycle is turned, results reflecting the state of all the robots are derived.
이때 전체 면적에 대한 파티셔닝을 진행 하는 것이 아니라 작업한 영역, 즉 커버한 면적 및 변화하는 환경의 코스트를 달리한 면적에 대해 파티셔닝을 진행한다. At this time, partitioning is performed not on the whole area but on an area where the work is performed, that is, the area covered and the environment varying in cost.
파티셔닝 후 커버리지를 높이기 위한 위치로 로봇들이 이동하여 계속하여 작업한다. 만약, 특정 로봇이 고장 나거나 연결이 끊긴 경우엔 나머지 로봇에 통신을 보장하는 위치로 즉각 변화 하며 그 상황을 나머지 로봇이 능동적으로 대처하여 협업할 수 있으며, 다중로봇이 협업하여 할당된 임무를 매 순간 최적의 방향으로 수행할 수 있다. After partitioning, the robots move to positions to increase coverage and continue to work. If a specific robot fails or is disconnected, the robot changes instantly to a position for ensuring communication with the remaining robots. The remaining robots can actively cope with the situation and collaborate with each other. It can be performed in the optimum direction.
일 실시예로, 도 15의 R2가 벽에 지나치게 근접하여 이동하여 작업을 수행하는 과정에서 도 15의 R4와의 통신이 끊어질 경우 도 15의 R2는 빠른 작업 후 다시 도 15의 R4와 통신이 가능한 위치로 이동하여 작업한 상황 및 변화된 환경을 환경 정보로 R4와 공유할 수 있다. In one embodiment, when the communication with R4 in Fig. 15 is broken in the process of performing the operation by moving to the wall excessively close to the wall in Fig. 15, R2 in Fig. 15 can communicate with R4 in Fig. It is possible to share situation and changed environment with R4 by environment information.
본 발명에서 모든 로봇들은 동일한 위치에서 각각의 파티셔닝 파티셔닝된 영역으로 이동할 수도 있으나, 각각의 로봇이 상이한 위치에 배치된 상태에서 파티셔닝 영역으로 이동할 수도 있다. 로봇들이 인접하여 배치된 경우에는 각 로봇들 간에 초기 파티셔닝 맵 상의 파티셔닝 영역을 미리 설정된 방식으로 배분하여 이동할 수 있다. 일 실시예로, 각 로봇들이 시리얼 번호가 있는 경우, 시리얼 번호 순서와 파티셔닝 영역을 순차적으로 대입할 수 있다. 반면, 로봇들이 특정 파티셔닝 영역을 선택할 수 있는데 이는 로봇의 배터리 잔량과 이동 속도 등을 각 로봇이 산출할 수 있다. 그리고 이러한 환경적인 특성은 재파티셔닝 과정에서도 항상 반영될 수 있다. In the present invention, all the robots may move to the respective partitioned partitioned areas at the same position, but each robot may move to the partitioned area while being disposed at different positions. If the robots are disposed adjacent to each other, the partitioning area on the initial partitioning map between the robots can be allocated and moved in a predetermined manner. In one embodiment, if each robot has a serial number, the order of the serial number and the partitioning area may be sequentially assigned. On the other hand, robots can select a specific partitioning area, which allows each robot to calculate the remaining battery power and moving speed of the robot. And these environmental characteristics can always be reflected in the repartitioning process.
도 17 및 도 18은 본 발명의 일 실시예에 의한 재파티셔닝 과정에서 각 환경 정보에 가중치를 적용하여 재파티셔닝하는 도면이다. FIGS. 17 and 18 are diagrams for re-partitioning each environment information by applying a weight to each environment information in a re-partitioning process according to an embodiment of the present invention.
허브 통신에 기반하거나 혹은 분산 통신에 기반하는 경우, 로봇은 최소한 자신의 환경 정보와 인접한 로봇의 환경 정보에 기반하여 재파티셔닝할 수 있다. If based on hub communication or distributed communication, the robot can at least re-partition based on its environment information and environment information of the neighboring robot.
제1로봇의 제어부(400)는 제1로봇의 제1환경 정보 및 제2로봇의 제2환경정보를 저장한다(S121). 환경정보는 현재 작업중인 파티셔닝 정보(파티셔닝 영역의 식별 정보와 셀 개수 등), 작업한 영역의 정보(작업한 영역의 셀의 개수), 그리고 장애물이 배치된 영역의 정보(장애물이 차지하는 셀의 개수), 미작업된 영역의 정보(미작업된 셀의 개수) 등이 될 수 있다. 한편, 제2로봇에 장애가 발생한 경우, 제1로봇은 제2환경 정보를 NULL 값으로 하고, 제2로봇에 연결된 또다른 로봇들에 연결을 시도할 수 있다. 또는 제2로봇에 장애가 발생하여 환경 정보를 전송하지 못하는 경우, 제1로봇은 제2로봇에 할당된 파티셔닝 영역 및 제1로봇에 할당된 파티셔닝 영역을 포함하는 새로운 파티셔닝 영역을 설정한 후, 인접한 다른 로봇들 혹은 앞서 제2로봇과 연결된 또다른 로봇들과 재파티셔닝을 수행할 수 있다. The controller 400 of the first robot stores the first environment information of the first robot and the second environment information of the second robot (S121). The environment information includes at least one of partitioning information (the identification information of the partitioning area and the number of cells in the partitioning area), the information of the working area (the number of cells in the working area), the information of the area in which the obstacle is disposed ), Information of the unprocessed area (the number of unworked cells), and the like. On the other hand, if a failure occurs in the second robot, the first robot may set the second environment information to a NULL value, and attempt to connect to another robot connected to the second robot. The first robot sets a new partitioning area including the partitioning area allocated to the second robot and the partitioning area allocated to the first robot, You can perform repartitioning with robots or with other robots that were previously connected to the second robot.
제1환경 정보 및 제2환경 정보는 각 필드별 셀의 개수뿐만 아니라, 해당 공간의 형상이나 굴곡된 부분에 대한 정보도 포함할 수 있다. 즉, 동일한 셀 개수를 가지는 면적이라 하여도 긴 형상 혹은 꺾인 형상의 영역은 작업하는데 있어 시간이 많이 소요될 수 있으므로, 가로-세로가 지나치게 큰 차이가 있거나 혹은 공간 내에 고정 장애물이 다수 배치된 경우에 필드 별 가중치를 달리할 수 있다. The first environment information and the second environment information may include not only the number of cells in each field but also information on the shape of the space or the bent portion. In other words, even if the area has the same number of cells, it may take a lot of time to work on the long or bent area. Therefore, when there is an excessively large difference between the width and the length, Different stars can be weighted.
즉, 작업하기 어려운 형상(예를 들어 도 7의 3 영역)에 대해서는 남은 셀의 수가 적어도 다른 파티셔닝 영역의 남은 셀의 수 보다 많은 가중치를 줄 수 있다. 즉, 도 7의 3영역에서 작업 대상으로 남은 셀의 수가 10개이고 이들이 분산된 경우와 도 7의 4영역에서 작업 대상으로 남은 셀의 수가 15개이고 이들이 하나의 덩어리로 배치된 경우를 비교할 때, 3영역의 남은 셀의 수가 적으나 이에 1.5를 곱하여 15개의 셀에 준하는 것으로 산출할 수 있다. That is, for a shape that is difficult to work (for example, the three regions in FIG. 7), the number of remaining cells may be at least greater than the number of remaining cells in other partitioning regions. That is, in the case where the number of remaining cells in the three areas of FIG. 7 is 10, the number of remaining cells is 15, and the number of remaining cells is 4 in the area of FIG. 7, The number of remaining cells in the region is small, but it can be calculated by multiplying it by 1.5 to be equivalent to 15 cells.
마찬가지로, 로봇이 작업한 영역의 셀 수를 비교함에 있어서도 작업한 셀들이 분산된 경우에는 로봇이 작업을 수행함에 있어 당연히 많은 시간을 소요한 것으로 판단할 수 있다. Likewise, when comparing the number of cells in the area where the robot is working, it can be determined that the robot takes a lot of time to perform the task when the cells are distributed.
따라서 제어부(400)는 제1로봇 및 제2로봇 각각의 환경 정보의 필드 별로 가중치를 적용한다(S122, S123). 그리고 제어부(400)는 제1로봇 및 제2로봇이 조정해야 하는 영역의 크기를 산출한다(S124). S122 및 S123에 대응하여 제1로봇과 제2로봇의 현재 파티셔닝 영역의 셀들 중에서 제1로봇에서 A개의 셀만큼 줄이고 제2로봇에서 A개의 셀만큼 늘리는 것으로 판단하는 것을 일 실시예로 한다. Accordingly, the control unit 400 applies weights to the fields of the environment information of the first robot and the second robot, respectively (S122 and S123). Then, the control unit 400 calculates the size of the area to be adjusted by the first robot and the second robot (S124). One of the cells in the current partitioning area of the first robot and the second robot corresponding to S122 and S123 is determined to be reduced by A cells in the first robot and by A cells in the second robot.
그리고, 제어부(400)는 조정해야 하는 크기에 대응하는 재파티셔닝 맵을 생성한다(S125). 이는 로봇의 이동 속도나 각 파티셔닝 영역에 배치된 장애물의 위치, 그리고 각 파티셔닝 영역 내에 배치된 작업된 셀 등을 반영하여 로봇의 이동거리를 줄이도록 재파티셔닝 맵을 생성하는 것을 포함한다. 일 실시예로 도 18을 살펴본다. Then, the control unit 400 generates a re-partitioning map corresponding to the size to be adjusted (S125). This includes generating a re-partitioning map to reduce the travel distance of the robot, reflecting the moving speed of the robot, the location of the obstacles disposed in each partitioning area, and the working cells disposed within each partitioning area. One embodiment will be described with reference to FIG.
도 18의 131은 현재 파티셔닝 영역의 상태를 보여주는 맵이다. 이 상태에서 재파티셔닝을 수행한 결과 제1로봇의 영역에서 1개의 셀을 늘리고, 제2로봇의 영역에서 1개의 셀을 줄이는 것으로 제1로봇 또는 제2로봇의 제어부가 판단할 수 있다. 이 경우 132와 같이 굴곡이 많은 경계를 가지는 경우 제1로봇 및 제2로봇 모두 굴곡을 따라 이동해야 하는 문제가 있다. 따라서 제어부는 133과 같이 로봇의 이동 속도를 높이도록 재파티셔닝 맵을 생성할 수 있다. 파티셔닝 맵이 생성된 후 각 로봇들은 재파티셔닝 영역 정보에 이동하여 작업을 수행한다(S126). Reference numeral 131 in FIG. 18 is a map showing the state of the current partitioning area. As a result of performing the re-partitioning in this state, the controller of the first robot or the second robot can determine that one cell is increased in the area of the first robot and one cell is reduced in the area of the second robot. In this case, in the case where the bend has many bends such as 132, there is a problem that both the first robot and the second robot must move along the bend. Accordingly, the control unit can generate a re-partitioning map to increase the moving speed of the robot, such as 133. After the partitioning map is generated, each robot moves to the re-partitioning area information and performs an operation (S126).
도 17 및 도 18에 제시된 바와 같이, 로봇은 재파티셔닝을 수행하는 과정에서 이전에 작업한 영역의 크기나 분산 정도, 새로운 장애물이 배치된 영역의 크기나 분산 정도, 그리고 작업 속도와 경계선의 형태 등을 모두 가중치로 적용하여 재파티셔닝맵을 생성할 수 있다. 제어부(400)는 동일한 개수의 셀들이라 하여도 해당 셀들의 분산 정도, 위치와 로봇의 배터리 상태 등을 가중치로 적용하여 재파티셔닝할 영역의 셀들의 개수를 먼저 산출하고, 개수를 적용함에 있어서 로봇의 이동 거리를 줄이는 경계선을 선택할 수 있다. As shown in FIGS. 17 and 18, in the course of performing the repartitioning, the robot performs a process such as the size and dispersion of the area previously worked on, the size and dispersion of the area where the new obstacle is arranged, Can be applied as weights to generate a repartitioning map. 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.
또한, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니며, 본 발명의 목적 범위 내에서 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 반도체 기록소자를 포함하는 저장매체를 포함한다. 또한 본 발명의 실시예를 구현하는 컴퓨터 프로그램은 외부의 장치를 통하여 실시간으로 전송되는 프로그램 모듈을 포함한다. In addition, it is to be understood that 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. In addition, although 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. As shown in FIG. 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. Also, a computer program embodying the present invention includes a program module that is transmitted in real time through an external device.
이상에서는 본 발명의 실시예를 중심으로 설명하였지만, 통상의 기술자의 수준에서 다양한 변경이나 변형을 가할 수 있다. 따라서, 이러한 변경과 변형이 본 발명의 범위를 벗어나지 않는 한 본 발명의 범주 내에 포함되는 것으로 이해할 수 있을 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. It is therefore to be understood that such changes and modifications are intended to be included within the scope of the present invention unless they depart from the scope of the present invention.
<부호의 설명><Explanation of Symbols>
100: 센싱부 200: 맵 저장부100: sensing unit 200: map storage unit
210: 고정맵 220: 파티셔닝맵210: fixed map 220: partitioning map
300: 통신부 310: 이동부300: communication unit 310:
320: 작업부 330: 인터페이스부320: Operation unit 330: Interface unit
400: 제어부 500: 로봇400: control unit 500: robot

Claims (14)

  1. 공간을 분할-작업하는 로봇에 있어서, In a robot that divides space,
    외부에 배치된 객체를 센싱하는 센싱부;A sensing unit for sensing an object disposed outside;
    상기 로봇이 이동하는 공간의 고정 객체의 위치를 저장하는 맵 저장부; A map storage unit for storing a location of a fixed object in a space in which the robot moves;
    상기 로봇을 이동시키는 이동부; A moving unit for moving the robot;
    하나 이상의 다른 로봇과 파티셔닝 정보 및 환경 정보를 송수신하는 통신부; A communication unit for transmitting and receiving the partitioning information and environment information with at least one other robot;
    상기 로봇이 작업을 수행하는 작업부; 및 An operation unit for performing operations of the robot; And
    상기 센싱부와 상기 맵 저장부와 상기 이동부와 상기 통신부와 상기 작업부를 제어하며, 상기 센싱부가 센싱한 객체 중 상기 맵 저장부의 고정 객체에 해당하지 않는 객체와 상기 로봇이 작업을 수행한 공간에 대한 정보 중 어느 하나 이상을 상기 환경 정보로 생성하며, 상기 통신부를 제어하여 상기 파티셔닝 정보와 상기 환경 정보를 송수신할 하나 이상의 이웃 로봇을 결정하는 제어부를 포함하는, 공간을 분할-작업하는 로봇. Wherein the control unit controls the sensing unit, the map storage unit, the moving unit, the communication unit, and the operation unit, and includes an object not corresponding to a fixed object of the map storage unit among the objects sensed by the sensing unit, And a controller for controlling the communication unit to determine one or more neighboring robots to transmit and receive the partitioning information and the environment information.
  2. 제1항에 있어서, The method according to claim 1,
    상기 제어부는 상기 맵 저장부에 저장된 공간의 고정 객체의 위치와 상기 공간의 넓이와 상기 공간에서 작업할 로봇의 수 N을 입력값으로 하여 N 개로 분할된 초기 파티셔닝 맵을 생성하는, 공간을 분할-작업하는 로봇.Wherein the controller generates an initial partitioning map, which is divided into N by using the position of the fixed object of the space stored in the map storage unit, the width of the space, and the number N of robots to work in the space as input values, Robot working.
  3. 제1항에 있어서, The method according to claim 1,
    상기 이웃 로봇은 상기 로봇에 할당된 파티셔닝 영역에 인접한 파티셔닝 영역을 할당받은 로봇이며, Wherein the neighboring robot is a robot assigned a partitioning area adjacent to the partitioning area allocated to the robot,
    상기 제어부는 상기 이웃 로봇과 상기 환경 정보를 송수신하여 재파티셔닝 맵을 생성하는, 공간을 분할-작업하는 로봇.Wherein the controller transmits and receives environment information to and from the neighboring robot to generate a re-partitioning map.
  4. 제1항에 있어서,The method according to claim 1,
    상기 로봇은 허브 로봇이며, The robot is a hub robot,
    상기 통신부는 상기 이웃 로봇 또는 상기 이웃 로봇의 이웃 로봇으로부터 상기 환경 정보를 수신하며,Wherein the communication unit receives the environment information from the neighboring robot or the neighboring robot of the neighboring robot,
    상기 제어부는 상기 수신한 환경 정보에 기반하여 상기 이웃 로봇들에게 할당할 재파티셔닝 맵을 생성한 후 상기 이웃 로봇들에게 직접 또는 간접으로 상기 파티셔닝 영역에 대한 정보를 상기 통신부가 전송하도록 제어하는, 공간을 분할-작업하는 로봇.Wherein the control unit generates a redistribution map to be allocated to the neighboring robots based on the received environment information and then controls the communication unit to transmit information on the partitioning area directly or indirectly to the neighboring robots, Split - A robot that works.
  5. 제1항에 있어서,The method according to claim 1,
    상기 제어부는 상기 맵 저장부에 저장된 공간의 고정 객체의 위치와 상기 환경 정보와 상기 공간에서 작업할 로봇의 수 N보다 작거나 같은 수를 입력값으로 하여 N보다 작거나 같은 개수로 분할된 재파티셔닝 맵을 생성하는, 공간을 분할-작업하는 로봇.Wherein the control unit is operable to control the position of the fixed object in the space stored in the map storage unit, the environmental information, and the number of robots to be operated in the space, A robot that creates a map, splits the space - works.
  6. 제5항에 있어서,6. The method of claim 5,
    상기 제어부는 상기 환경 정보에서 상기 이웃 로봇 및 상기 로봇의 작업을 수행한 셀에 기반하여 상기 로봇의 작업 속도를 산출하여 작업 속도가 높은 로봇에게 더 많은 영역이 할당된 재파티셔닝 맵을 생성하는, 공간을 분할-작업하는 로봇.Wherein the control unit calculates the working speed of the robot based on the cells that have performed the tasks of the neighboring robot and the robot in the environment information and generates a repartitioning map in which more areas are allocated to the robot having a high working speed, Split - A robot that works.
  7. 제5항에 있어서,6. The method of claim 5,
    상기 환경 정보는 상기 로봇 및 상기 이웃 로봇의 작업 가능 시간 또는 작업 가능 면적에 대한 정보를 더 포함하며, Wherein the environment information further includes information on a workable time or workable area of the robot and the neighboring robot,
    상기 제어부는 이웃 로봇 및 상기 로봇 중 상기 작업 가능 시간 또는 상기 작업 가능 면적이 더 큰 값을 가지는 로봇에게 더 많은 영역이 할당된 재파티셔닝 맵을 생성하는, 공간을 분할-작업하는 로봇.Wherein the control section generates a repartitioning map in which a robot having a larger value of the operable time or the workable area among the neighboring robot and the robot is assigned a more area to the robot.
  8. 로봇의 제어부가 공간에서 작업할 다수의 로봇들의 파티셔닝 영역을 포함하는 초기 파티셔닝 맵을 생성하는 단계; Generating an initial partitioning map including a partitioning area of a plurality of robots in which the control unit of the robot will work in the space;
    상기 로봇의 이동부가 상기 로봇에게 할당된 파티셔닝 영역으로 상기 로봇을 이동시키는 단계; Moving the robot to a partitioning area assigned to the robot by a moving part of the robot;
    상기 로봇의 작업부가 상기 파티셔닝 영역에서 상기 로봇에게 할당된 작업을 수행하는 단계; Performing a task assigned to the robot in the partitioning area by a work unit of the robot;
    상기 제어부가 상기 로봇의 센싱부가 센싱한 객체 중 상기 로봇의 맵 저장부에 저장된 고정 객체에 해당하지 않는 객체와 상기 로봇이 작업을 수행한 공간에 대한 정보 중 어느 하나 이상을 제1환경 정보로 생성하는 단계; Wherein the control unit generates at least one of an object not corresponding to a fixed object stored in a map storage unit of the robot and a space in which the robot has performed the operation among the objects sensed by the sensing unit of the robot as first environment information ;
    상기 로봇의 통신부가 상기 다수의 로봇들 중 하나 이상의 이웃 로봇으로부터 상기 이웃 로봇의 제2환경 정보를 수신하는 단계; 및 The communication unit of the robot receiving second environmental information of the neighboring robot from at least one of the plurality of robots; And
    상기 제어부가 상기 제1환경 정보 및 상기 제2환경 정보를 이용하여 상기 다수의 로봇들 중 일부 또는 전체의 로봇들에 할당할 재파티셔닝 맵을 생성하는 단계를 포함하는, 로봇이 공간을 분할-작업하는 방법.Wherein the controller is configured to generate a redistribution map to be allocated to some or all of the plurality of robots using the first environment information and the second environment information, How to.
  9. 제8항에 있어서, 9. The method of claim 8,
    상기 제어부는 상기 맵 저장부에 저장된 공간의 고정 객체의 위치와 상기 공간의 넓이와 상기 공간에서 작업할 로봇의 수 N을 입력값으로 하여 N 개로 분할된 초기 파티셔닝 맵을 생성하는 단계를 더 포함하는, 로봇이 공간을 분할-작업하는 방법.The control unit may further include a step of generating an initial partitioning map partitioned into N by using the position of the fixed object of the space stored in the map storage unit, the width of the space, and the number N of robots to work in the space as input values , How the robot divides the space - work.
  10. 제8항에 있어서, 9. The method of claim 8,
    상기 이웃 로봇은 상기 로봇에 할당된 파티셔닝 영역에 인접한 파티셔닝 영역을 할당받은 로봇이며, Wherein the neighboring robot is a robot assigned a partitioning area adjacent to the partitioning area allocated to the robot,
    상기 제어부는 상기 이웃 로봇과 상기 환경 정보를 송수신하여 재파티셔닝 맵을 생성하는 단계를 더 포함하는, 로봇이 공간을 분할-작업하는 방법.Wherein the controller further comprises transmitting and receiving environment information to and from the neighboring robot to generate a re-partitioning map.
  11. 제8항에 있어서,9. The method of claim 8,
    상기 로봇은 허브 로봇이며, The robot is a hub robot,
    상기 통신부는 상기 이웃 로봇 또는 상기 이웃 로봇의 이웃 로봇으로부터 상기 환경 정보를 수신하는 단계를 더 포함하며, Wherein the communication unit further comprises receiving the environment information from the neighboring robot or the neighboring robot of the neighboring robot,
    상기 제어부는 상기 수신한 환경 정보에 기반하여 상기 이웃 로봇들에게 할당할 재파티셔닝 맵을 생성한 후 상기 이웃 로봇들에게 직접 또는 간접으로 상기 파티셔닝 영역에 대한 정보를 상기 통신부가 전송하도록 제어하는 단계를 더 포함하는, 로봇이 공간을 분할-작업하는 방법.Wherein the controller generates a redistribution map to be allocated to the neighboring robots based on the received environment information and then controls the communication unit to transmit information on the partitioning area directly or indirectly to the neighboring robots Further included is how the robot divides the space - work.
  12. 제8항에 있어서,9. The method of claim 8,
    상기 제어부는 상기 맵 저장부에 저장된 공간의 고정 객체의 위치와 상기 환경 정보와 상기 공간에서 작업할 로봇의 수 N보다 작거나 같은 수를 입력값으로 하여 N보다 작거나 같은 개수로 분할된 재파티셔닝 맵을 생성하는 단계를 더 포함하는, 로봇이 공간을 분할-작업하는 방법.Wherein the control unit is operable to control the position of the fixed object in the space stored in the map storage unit, the environmental information, and the number of robots to be operated in the space, And generating a map, wherein the robot divides the space.
  13. 제12항에 있어서,13. The method of claim 12,
    상기 제어부는 상기 환경 정보에서 상기 이웃 로봇 및 상기 로봇의 작업을 수행한 셀에 기반하여 상기 로봇의 작업 속도를 산출하여 작업 속도가 높은 로봇에게 더 많은 영역이 할당된 재파티셔닝 맵을 생성하는 단계를 더 포함하는, 로봇이 공간을 분할-작업하는 방법.Wherein the control unit calculates the operation speed of the robot based on the cells that have performed the tasks of the neighboring robot and the robot in the environment information and generates a repartitioning map in which more areas are allocated to the robot having a higher operation speed Further included is how the robot divides the space - work.
  14. 제12항에 있어서,13. The method of claim 12,
    상기 환경 정보는 상기 로봇 및 상기 이웃 로봇의 작업 가능 시간 또는 작업 가능 면적에 대한 정보를 더 포함하며, Wherein the environment information further includes information on a workable time or workable area of the robot and the neighboring robot,
    상기 제어부는 이웃 로봇 및 상기 로봇 중 상기 작업 가능 시간 또는 상기 작업 가능 면적이 더 큰 값을 가지는 로봇에게 더 많은 영역이 할당된 재파티셔닝 맵을 생성하는 단계를 더 포함하는, 로봇이 공간을 분할-작업하는 방법.Wherein the control unit further comprises a step of the robot generating a redistribution map to which a more area is assigned to the robot having the larger value of the operable time or the operable area of the neighboring robot and the robot, How to work.
PCT/KR2018/008725 2017-08-30 2018-07-31 Method by which multiple robots enable space partition and work in space, and robot for implementing same WO2019045288A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170110171A KR20190023835A (en) 2017-08-30 2017-08-30 Method of space partitioning-working by multi-robot and robot implementing thereof
KR10-2017-0110171 2017-08-30

Publications (1)

Publication Number Publication Date
WO2019045288A1 true WO2019045288A1 (en) 2019-03-07

Family

ID=65525713

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/008725 WO2019045288A1 (en) 2017-08-30 2018-07-31 Method by which multiple robots enable space partition and work in space, and robot for implementing same

Country Status (2)

Country Link
KR (1) KR20190023835A (en)
WO (1) WO2019045288A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110716545A (en) * 2019-10-18 2020-01-21 深圳拓邦股份有限公司 Method and system for cooperative operation of multiple cleaning devices
CN113084807A (en) * 2021-03-31 2021-07-09 中国科学技术大学 Method for searching toxic gas leakage source of multi-robot system

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112060097B (en) * 2020-11-10 2021-02-05 纳博特南京科技有限公司 Multitask cooperative control method of multi-robot system
CN116069006A (en) * 2021-11-01 2023-05-05 速感科技(北京)有限公司 Map optimization method, map optimization device, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11267993A (en) * 1998-03-23 1999-10-05 Kawasaki Heavy Ind Ltd Work assigning method to a plurality of robots and interference avoiding method for a plurality of robots
KR20120068515A (en) * 2010-12-17 2012-06-27 한국생산기술연구원 Swarm robot and sweeping method using swarm robot
KR20130052768A (en) * 2011-11-14 2013-05-23 한국전자통신연구원 Method and system for multi-small robots control
KR20150061398A (en) * 2013-11-27 2015-06-04 한국전자통신연구원 Method and control apparatus for cooperative cleaning with multi-robot
KR101668078B1 (en) * 2015-04-23 2016-10-19 국방과학연구소 Autonomous robot collaborative system and method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11267993A (en) * 1998-03-23 1999-10-05 Kawasaki Heavy Ind Ltd Work assigning method to a plurality of robots and interference avoiding method for a plurality of robots
KR20120068515A (en) * 2010-12-17 2012-06-27 한국생산기술연구원 Swarm robot and sweeping method using swarm robot
KR20130052768A (en) * 2011-11-14 2013-05-23 한국전자통신연구원 Method and system for multi-small robots control
KR20150061398A (en) * 2013-11-27 2015-06-04 한국전자통신연구원 Method and control apparatus for cooperative cleaning with multi-robot
KR101668078B1 (en) * 2015-04-23 2016-10-19 국방과학연구소 Autonomous robot collaborative system and method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110716545A (en) * 2019-10-18 2020-01-21 深圳拓邦股份有限公司 Method and system for cooperative operation of multiple cleaning devices
CN113084807A (en) * 2021-03-31 2021-07-09 中国科学技术大学 Method for searching toxic gas leakage source of multi-robot system

Also Published As

Publication number Publication date
KR20190023835A (en) 2019-03-08

Similar Documents

Publication Publication Date Title
WO2019045288A1 (en) Method by which multiple robots enable space partition and work in space, and robot for implementing same
WO2018093055A1 (en) Mobile robot system and mobile robot
WO2021010502A1 (en) Robot and method for managing article by using same
WO2019045293A1 (en) Method for generating target-oriented local path and robot for implementing same
WO2020116948A1 (en) Robot vacuum cleaner and cleaning route planning method thereof
WO2016105093A1 (en) Method and apparatus for operating a security system
WO2018066816A1 (en) Airport robot and operation method therefor
WO2010021451A1 (en) System and method for qos support in a ubiquitous sensor network
AU2020209330B2 (en) Mobile robot and method of controlling plurality of mobile robots
WO2017082606A1 (en) System and method for smart evacuation guidance
EP3381206A1 (en) Apparatus and method for installing electronic device in wireless communication system
WO2019045284A1 (en) Method for moving robot while maintaining distance with object, and robot for implementing same
WO2021141396A1 (en) Robot cleaner using artificial intelligence and control method thereof
WO2020027515A1 (en) Mobile robot for configuring attribute block
CN113867181A (en) Robot cooperation method and device and first robot
WO2020230931A1 (en) Robot generating map on basis of multi-sensor and artificial intelligence, configuring correlation between nodes and running by means of map, and method for generating map
WO2021070984A1 (en) System and method for vr training
WO2019045294A1 (en) Communication method among a plurality of robots for partitioning space for operation and robot for implementing same
WO2020262721A1 (en) Control system for controlling plurality of robots by using artificial intelligence
WO2022225134A1 (en) Method and system for remote control of robot, and building in which robot boards on optical waiting position in elevator and is driven
WO2020251100A1 (en) Method for updating map in fusion slam and robot implementing same
WO2023074957A1 (en) Delivery robot
WO2014084577A1 (en) Installation guide system for air conditioner and using method thereof
WO2023080490A1 (en) Robot-friendly building, robot, and system for controlling multiple robots travelling in building
WO2022211225A1 (en) Method and system for controlling travelling of robot, and building where robot, having moving path thereof controlled on basis of congestion in space, travels

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

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

Country of ref document: EP

Kind code of ref document: A1