WO2019141218A1 - Conflict management method and system for multiple mobile robots - Google Patents

Conflict management method and system for multiple mobile robots Download PDF

Info

Publication number
WO2019141218A1
WO2019141218A1 PCT/CN2019/072256 CN2019072256W WO2019141218A1 WO 2019141218 A1 WO2019141218 A1 WO 2019141218A1 CN 2019072256 W CN2019072256 W CN 2019072256W WO 2019141218 A1 WO2019141218 A1 WO 2019141218A1
Authority
WO
WIPO (PCT)
Prior art keywords
mobile robot
node
node area
mobile
area
Prior art date
Application number
PCT/CN2019/072256
Other languages
French (fr)
Chinese (zh)
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 WO2019141218A1 publication Critical patent/WO2019141218A1/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0289Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling with means for avoiding collisions between vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0217Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser

Definitions

  • the present invention relates to the field of robot technology, and in particular, to a conflict management method and system for a multi-mobile robot.
  • the robot has good conflict resolution capability through the current local environment information of the robot.
  • the second is centralized management conflict resolution, which is mainly to eliminate conflicts by segmenting the motion path of the robot.
  • the inventors of the present application found in the prior art that at least the following drawbacks exist in the prior art: First, the distributed method is simple in operation, real-time and flexible, but due to local poles, often The task cannot be completed completely; secondly, the centralized management method can perform the task more accurately, but it is very easy to cause the robot to run the path conflict. Usually, the optimal solution is found, but the calculation amount is large and the real-time performance is poor, especially due to multiple units. In the dense space, the mobile robots form obstacles between each other, which makes it impossible to form a non-universal figure of dual connectivity, which will form a deadlock state. For this reason, the industry still cannot propose a better solution.
  • An object of the embodiments of the present invention is to provide a deadlock conflict management method and system for a multi-mobile robot, which is used to at least manage a deadlock conflict caused by centralized scheduling of multiple mobile robots in a dense area.
  • an embodiment of the present invention provides a method for managing a deadlock conflict of a multi-mobile robot, including: acquiring a current location and a planned path of each of the plurality of mobile robots, wherein the planned path can bypass an obstacle in the predetermined area.
  • the predetermined area includes a plurality of node areas; and each of the mobile robots is assigned a node area adjacent to a position of the mobile robot according to respective current positions and planned paths of the plurality of mobile robots, wherein the The mobile robot is configured to pass only from the allocated node area; when there is a coincidence between the node area allocated for the second mobile robot and the node area assigned to the first mobile robot, the overlapping node area is marked a conflicting node area that is a conflicting state; determining whether the direction of the first planned path of the first mobile robot passes the direction of the conflicting node area and the direction of the second planned path of the second mobile robot passes the conflicting node area Conversely, and if so, determining the first mobile robot and the The second mobile robots are in a state of mutual deadlock.
  • the method further includes: determining whether there is a second planning path or the second planning a first idle node area and a second idle node area on the path for distribution to the first mobile robot and the second mobile robot; if the first idle node area and the second idle are present a node area, wherein the first mobile node and the second mobile node are respectively allocated the first idle node area and the second idle node area to replace the first mobile robot and the second mobile Position the robot and release the deadlock states.
  • the replacing the positions of the first mobile robot and the second mobile robot includes: controlling the first mobile robot and the second mobile robot to occupy the first idle node region and the a second idle node area; and a node area allocated to the first mobile robot, so that the first mobile robot passes the conflict node area, and occupies the node area of the second mobile robot corresponding to each other in a deadlock state; And assigning a node area to the second mobile robot, so that the second mobile robot occupies the node area of the first mobile robot corresponding to each other in a deadlock state.
  • the method further includes, if the idle node does not exist, stopping assigning a node area to the first mobile robot and the second mobile robot, and performing an alarm action.
  • the acquiring the current location and the planned path of each of the plurality of mobile robots comprises: sending a scheduling command to each of the mobile robots, wherein the scheduling command includes target node area information of each mobile robot; and responding to the scheduling Commanding, receiving a planning path from the plurality of mobile robots, wherein the planning path is determined by each of the mobile robots according to respective target node region information and calculated by an A* algorithm.
  • An embodiment of the present invention provides a deadlock conflict management system for a multi-mobile robot, including: an initial information acquiring unit configured to acquire a current location and a planned path of each of the plurality of mobile robots, wherein the planned path can be bypassed An obstacle in a predetermined area, the predetermined area including a plurality of node areas; a node area assigning unit configured to allocate and move the mobile robots according to respective current positions and planned paths of the plurality of mobile robots An adjacent node area of the robot, wherein the mobile robot is configured to pass only from the assigned node area; the conflict detection unit is configured to be assigned to the first movement when the node area assigned to the second mobile robot When there is a coincidence between the node regions of the robot, the conflicting node region in which the overlapping node regions are in conflict state is marked; the deadlock determining unit is configured to determine that the first planned path of the first mobile robot passes the conflicting node The direction of the area and the second planned path of the second mobile robot Whether the direction of the conflicting
  • the system further includes: an idle node area determining unit, configured to determine whether there is a non-located first after determining that the first mobile robot and the second mobile robot are in a mutual deadlock state a planned node or a free node area on the second planned path that can be allocated to the first mobile robot or the second mobile robot; a location replacement unit configured to be present if the free node area exists The first mobile robot or the second mobile robot allocates the idle node area to replace the positions of the first mobile robot and the second mobile robot, and release the mutual deadlock state.
  • an idle node area determining unit configured to determine whether there is a non-located first after determining that the first mobile robot and the second mobile robot are in a mutual deadlock state a planned node or a free node area on the second planned path that can be allocated to the first mobile robot or the second mobile robot
  • a location replacement unit configured to be present if the free node area exists The first mobile robot or the second mobile robot allocates the idle node area to replace the positions of the first mobile
  • the location replacement unit includes: an idle node allocation module, configured to control the first mobile robot and the second mobile robot to occupy the first idle node area and the second idle node area, respectively; And a first node allocating module configured to allocate a node area for the first mobile robot to pass the first mobile robot through the conflicting node area and occupy a position of the second mobile robot corresponding to each other in a deadlock state And a second node assigning module configured to allocate a node area to the second mobile robot, so that the second mobile robot occupies the position of the first mobile robot corresponding to each other in a deadlock state.
  • the system further includes: an alarm processing unit configured to stop assigning the node area to the first mobile robot and the second mobile robot if the idle node does not exist, and perform an alarm action.
  • an alarm processing unit configured to stop assigning the node area to the first mobile robot and the second mobile robot if the idle node does not exist, and perform an alarm action.
  • the initial information acquiring unit includes: a scheduling command sending module, configured to send a scheduling command to each of the mobile robots, where the scheduling command includes target node area information of each mobile robot; planning a path receiving module, configuring In response to the scheduling command, a planning path is received from the plurality of mobile robots, wherein the planning path is determined by each of the mobile robots according to respective target node area information and calculated by an A* algorithm.
  • a scheduling command sending module configured to send a scheduling command to each of the mobile robots, where the scheduling command includes target node area information of each mobile robot
  • planning a path receiving module configuring In response to the scheduling command, a planning path is received from the plurality of mobile robots, wherein the planning path is determined by each of the mobile robots according to respective target node area information and calculated by an A* algorithm.
  • the node area is allocated, and according to the allocated node area, it is determined and detected whether a plurality of mobile robots will each other have a deadlock conflict when moving in the next step.
  • FIG. 1 is a diagram showing an example of a map of a dense area of a deadlock conflict management method for a multi-mobile robot according to an embodiment of the present invention
  • FIG. 2 is a flowchart of a deadlock conflict management method for a multi-mobile robot according to an embodiment of the present invention
  • FIG. 3 is a flow chart of a method for acquiring a planned path of a mobile robot according to an embodiment of the present invention
  • FIG. 5 is an example of node allocation according to an embodiment of the present invention.
  • FIG. 6 is an example of a node resource table global with respect to a predetermined area
  • FIG. 8 is a flowchart of a deadlock conflict management method for a multi-mobile robot according to an embodiment of the present invention.
  • FIG. 9A is a schematic diagram of a first state of a deadlock state of a mobile robot by node allocation
  • 9B is a schematic diagram of a second state by means of node allocation to solve the deadlock state of the mobile robots
  • 9C is a schematic diagram of a third state by means of node allocation to solve the deadlock state of the mobile robots
  • 9D is a fourth state diagram of solving a deadlock state of a mobile robot by node allocation
  • FIG. 10 is a flowchart of a method for position replacement of a mobile robot according to an embodiment of the present invention.
  • 11 is an example of a neighbor node label that can be assigned in a node area
  • Figure 12 is a block diagram showing the structure of a collision management system for a multi-mobile robot according to an embodiment of the present invention.
  • a plurality of obstacles B1, B2, etc., a plurality of mobile robots A0, A1, etc., and a plurality of maps are arranged in a map of a dense area of a collision management method for a multi-mobile robot according to an embodiment of the present invention.
  • the dense area may be predetermined according to needs, for example, it may refer to an area in the warehouse, the plurality of mobile robots A0, A1 may refer to a plurality of logistics robots, and through the mobile robots A0, A1 Running the move can carry the goods, but when multiple logistics robots are running at the same time, it may cause conflicts.
  • the sizes of the different node regions N1 and N2 may be equal, which may be formed by equally dividing the map of the dense regions. It should be noted that the conflict management method of the embodiment of the present invention may be performed by a server that centrally manages the plurality of mobile robots.
  • a deadlock conflict management method for a multi-mobile robot includes:
  • the manner of obtaining the planned path may be determined by the mobile robot and uploaded to the server by the mobile device, or may be obtained by the server, and all of the above are within the protection scope of the present invention.
  • the mobile robot may be an AGV (Automated Guided Vehicle), wherein the acquisition method includes: S301, the server may send to each mobile robot.
  • a scheduling command wherein the scheduling command includes target node area information of each mobile robot.
  • each mobile robot After each mobile robot receives the respective scheduling command, it calculates respective corresponding planning paths according to the respective target node region information and through the A* algorithm.
  • Each mobile robot sends the respective planned path obtained by the calculation to the server. After the server obtains the planned path sent by each mobile robot, corresponding subsequent processing is performed to ensure that the path conflict does not occur during the execution of the planned path by the mobile robot.
  • the mobile robot A0 is receiving After the scheduling command, it is necessary to reach the target node area No. 31 from the node area of the current position 73. At this time, the mobile robot A0 calculates the shortest path to the target node area No. 31 by the A* algorithm, thereby ensuring that the mobile robot A0 can arrive quickly. Target node area.
  • the mobile robot performs the movement only when an instruction regarding the next allocated node area is received from the server, even though it may have independently planned the operation path.
  • the first mobile robot A may allocate a plurality of node areas for the next step, as shown in FIG. 5, according to the needs of the mobile robot (for example, when the speed of the mobile robot is fast).
  • the first mobile robot A is assigned a node area No. 24 and a node area No. 25 according to the running path of the robot, and the second mobile robot B is assigned a node area 146 and a node area No. 147, etc., and all of the above belong to the protection of the present invention.
  • each node resource is occupied and allocated by each robot is counted in a node resource table globally related to the predetermined area, including the node area ID currently occupied by the robot and the node area ID allocated to the robot, specifically Reference can be made to the example shown in FIG. 6.
  • the node resource region allocated for the first mobile robot A is the node node region No. 10
  • the node resource region allocated for the second mobile robot B is also the node node region No. 10, or in another
  • the node resource area allocated for the first mobile robot A includes the node areas No. 10 and No. 11
  • the node area allocated for the second mobile robot B includes the node area No. 9 and the node area No.
  • the conflict notification signal may be generated, and the conflict notification signal may be generated. Send to the operations staff to remind them to handle and resolve mobile robot conflicts.
  • the conflict between the mobile robots may be solved autonomously by the server, and specific details will be expanded below.
  • the server may re-convert the conflicting node area from the conflicting state to the available state, for example, may be different.
  • the identification distinguishes between the conflicting node area and the assignable node area, thereby realizing the redistribution work after the conflicting node returns to normal, and ensuring that the normal node resources can be The mobile robot is recycled, which improves the utilization efficiency of dense areas.
  • node 13 area becomes the conflict node area. Determining, according to S204 and S205, the first mobile robot and the first based on the direction of the first node path and the second node path relative to the conflicting node area after determining the existence path conflict between the first mobile robot and the second mobile robot Whether the conflict state between the mobile robots is a mutual deadlock state, and the detection of the mutual deadlock state is realized.
  • a deadlock conflict management method for a multi-mobile robot includes:
  • S402. Assign, to each mobile robot, a node region adjacent to a position of the mobile robot according to respective current positions and planned paths of the plurality of mobile robots, wherein the mobile robot is configured to pass only from the allocated node region.
  • S404 Determine whether the direction of the first planned path of the first mobile robot passes through the conflicting node area and the direction of the second planned path of the second mobile robot passes through the conflicting node area.
  • S406. Determine whether there is a first idle node area and a second idle node area that are not located on the first planning path or the second planning path and are allocated to the first mobile robot and the second mobile robot.
  • the replacement of the positions of the first mobile robot and the second mobile robot may be implemented by first controlling the first mobile robot and the second mobile robot to occupy the first idle node area and the second idle node area, respectively. Thereafter, a node area is allocated for the first mobile robot to pass the first mobile robot through the conflicting node area, and occupy the position of the second mobile robot corresponding to each other in a deadlock state. Finally, the node area is allocated for the second mobile robot, so that the second mobile robot occupies the position of the first mobile robot corresponding to each other in a deadlock state.
  • the embodiment shown in FIG. 8 can be seen as an optional implementation of the embodiment shown in FIG. 2. Specifically, the embodiment of FIG. 8 also discloses the operation of releasing the deadlock state, that is, by using the idle node.
  • the judging and allocation of the regions respectively allocates two mobile robots that are in a state of mutual deadlock to the corresponding free node regions, and further releases the mutual deadlock state between the mobile robots.
  • the node allocation is used to solve the deadlock state of the mobile robots. After the mobile robots A1 and A2 collide with each other as shown in FIG. 7, it is determined that the positions of A1 and A2 are to be replaced. A good solution to this conflict. Specifically, it may be that the planned path of the mobile robot A1 is: 18-13-8-3 node sequence, and the planned path of the mobile robot A2 is a sequence of 8-13-18-19-20 nodes. Therefore, if the condition is not in the 18-13-8-3 node sequence, nor in the 8-13-18-19-20 node sequence, it can be assigned to A1 and A0, and only the planned path node can be assigned to A1.
  • the mobile robot A1 in the first step, as shown in FIG. 9A, the mobile robot A1 may be assigned a node area No. 25, and specifically, the number 19 may be assigned before the mobile robot A1 is assigned the node No. 25. And the node area No. 20; in the second step, as shown in FIG. 9B, the mobile robot A2 is assigned a node No. 15 which is also not on the planned path. Specifically, it may be allocated 13 before the mobile robot A2 is assigned the node No. 15. In the third step, as shown in FIG.
  • the node area sequence is assigned to the A1 according to the target node area of the mobile robot A1, so that the allocation of the node area causes the A1 to reach the number 8 occupied by the previous A2.
  • the fourth step assigns a sequence of node regions to A2 according to the target node region of the mobile robot A2, so that A2 is reached by the allocation of the node region to reach the node node region occupied by the previous A1; Reassigning the target node area information for the mobile robots A1 and A2 to re-execute the task after the conflicts have been resolved.
  • the position replacement condition may be set as follows: the node area in which the replaced mobile robot is located has at least two walkable neighbor nodes (and the neighbor nodes are not on the planned path), and if The replaced mobile robot has only one neighbor node, then moves to this neighbor node and then continues to search for other neighbor nodes that can walk from the neighbor node, and if the node where the mobile robot is replaced does not have a walkable neighbor node, try another A mobile robot until it is released or has no solution.
  • a method for position replacement of a mobile robot includes:
  • the node areas of the mobile robots A and B may be stopped from being allocated, and an alarm action may be performed to alert the operation and maintenance personnel to take measures.
  • a deadlock conflict management system 120 of a multi-mobile robot includes: an initial information acquiring unit 1201 configured to acquire respective current positions and planned paths of a plurality of mobile robots, wherein the planning The path is capable of bypassing an obstacle in a predetermined area, the predetermined area including a plurality of node areas, and a node area assigning unit 1202 configured to select, according to respective current positions and planned paths of the plurality of mobile robots, each of the mobile robots Allocating a node area adjacent to a position of the mobile robot, wherein the mobile robot is configured to pass only from the allocated node area; the conflict detecting unit 1203 is configured to be a node area allocated for the second mobile robot When there is a coincidence between the node regions that have been allocated to the first mobile robot, the conflicting node region in which the overlapping node regions are in conflict state is marked; the deadlock determining unit 1204 is configured to determine the first of the first mobile robot Planning a path through the direction of
  • the system further includes: an idle node area determining unit configured to determine whether there is a non-located on the first planned path or the second planned path, and configured to be allocated to the first mobile a first idle node area and a second idle node area of the robot and the second mobile robot; and a position replacement unit configured to: if the first idle node area and the second idle node area are present, a mobile robot and the second mobile robot respectively assign the first idle node area and the second idle node area to replace positions of the first mobile robot and the second mobile robot, and release the Deadlocked to each other.
  • an idle node area determining unit configured to determine whether there is a non-located on the first planned path or the second planned path, and configured to be allocated to the first mobile a first idle node area and a second idle node area of the robot and the second mobile robot
  • a position replacement unit configured to: if the first idle node area and the second idle node area are present, a mobile robot and the second mobile robot respectively assign the first idle node area and
  • the location replacement unit includes: an idle node allocation module configured to control the first mobile robot and the second mobile robot to occupy the first idle node region and the second idle node, respectively And a first node allocating module configured to allocate a node area for the first mobile robot to pass the first mobile robot through the conflicting node area and occupy the second mobile robot corresponding to each other in a deadlock state a node area, configured to allocate a node area for the second mobile robot, so that the second mobile robot occupies the node area of the first mobile robot corresponding to each other in a deadlock state.
  • the system further includes: an alarm processing unit configured to stop assigning the node area to the first mobile robot and the second mobile robot and perform an alarm action if the idle node does not exist .
  • the initial information acquiring unit includes: a scheduling command sending module configured to send a scheduling command to each of the mobile robots, wherein the scheduling command includes target node area information of each mobile robot; and the planning path receiving module And configuring, in response to the scheduling command, receiving a planning path from the plurality of mobile robots, wherein the planning path is determined by each of the mobile robots according to respective target node region information and calculated by an A* algorithm.
  • the deadlock conflict management system of the multi-mobile robot provided by the embodiment of the present invention may be built on a server for centrally managing multiple mobile robots, and each unit and module as described above may refer to Program module or unit.
  • each unit and module as described above may refer to Program module or unit.
  • system of the embodiments of the present invention may be used to implement the corresponding method embodiments of the present invention, and correspondingly achieve the technical effects achieved by the foregoing method embodiments of the present invention, and details are not described herein again.
  • a related function module can be implemented by a hardware processor.
  • an embodiment of the present invention provides a storage medium having a computer program stored thereon, the program being executed by the processor as a step of a deadlock conflict management method of a multi-mobile robot executed by the server.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .

Abstract

Provided are a deadlock conflict management method and system for multiple mobile robots, belonging to the field of robots. The method comprises: acquiring respective current positions and planned paths of multiple mobile robots; allocating node regions adjacent to the positions of the mobile robots; when a node region allocated to a second mobile robot overlaps with a node region allocated to a first mobile robot, marking the overlapping node regions as conflicting node regions that are in a conflicting state; determining whether a direction where a first planned path of the first mobile robot passes through the conflicting node regions is exactly opposite to a direction where a second planned path of the second mobile robot passes through the conflicting node regions; and if so, determining the first mobile robot and the second mobile robot to be in a mutual deadlock state.

Description

多移动机器人的冲突管理方法及系统Multi-mobile robot conflict management method and system
相关申请的交叉引用Cross-reference to related applications
本申请要求2018年1月19日提交的中国专利申请201810053971.0的权益,该申请的内容通过引用被合并于本文。The present application claims the benefit of Chinese Patent Application No. 20181005397, filed on Jan. 19, 2011-0, the content of which is hereby incorporated by reference.
技术领域Technical field
本发明涉及机器人技术领域,具体地涉及一种多移动机器人的冲突管理方法及系统。The present invention relates to the field of robot technology, and in particular, to a conflict management method and system for a multi-mobile robot.
背景技术Background technique
在密集区域(例如物流仓库区域)内布设多个移动机器人,并由这些移动机器人来完成诸如搬运货物的任务,以替代人工劳动,是目前物联网领域的研究重点。It is the research focus of the current Internet of Things field to deploy a plurality of mobile robots in a dense area (for example, a logistics warehouse area), and to perform tasks such as moving goods to replace manual labor.
为了避免密集区域中的多个移动机器人之间在作业时候的碰撞,目前一般采用了如下两种不同的处理方案:其一,是通过机器人当前的局部环境信息,让机器人具有良好的冲突消解能力;其二,是集中管理式冲突消解,其主要是通过将机器人的运动路径分段来消除冲突。In order to avoid collisions between multiple mobile robots in a dense area during operation, two different processing schemes are generally adopted as follows: First, the robot has good conflict resolution capability through the current local environment information of the robot. The second is centralized management conflict resolution, which is mainly to eliminate conflicts by segmenting the motion path of the robot.
但是,本申请的发明人在实践本申请的过程中发现上述现有技术中至少存在如下缺陷:其一,分布式方法虽然运算简单、实时性和灵活性强,但由于会出现局部极点,往往无法完整地完成任务;其二,集中管理式方法能够较精确地执行任务,但极容易导致机器人运行路径冲突,通常要寻找最优解,但计算量很大、实时性差,特别是由于多台移动机器人在密集空间内,移动机器人之间相互构成障碍物,导致无法形成双连通非平凡图的情况,会形成相互死锁的状态,对此目前业界仍然无法提出较佳的解决方案。However, the inventors of the present application found in the prior art that at least the following drawbacks exist in the prior art: First, the distributed method is simple in operation, real-time and flexible, but due to local poles, often The task cannot be completed completely; secondly, the centralized management method can perform the task more accurately, but it is very easy to cause the robot to run the path conflict. Usually, the optimal solution is found, but the calculation amount is large and the real-time performance is poor, especially due to multiple units. In the dense space, the mobile robots form obstacles between each other, which makes it impossible to form a non-universal figure of dual connectivity, which will form a deadlock state. For this reason, the industry still cannot propose a better solution.
发明内容Summary of the invention
本发明实施例的目的是提供一种多移动机器人的死锁冲突管理方法及系统,用以至少管理多移动机器人在密集区域内集中调度所导致的死锁冲突问题。An object of the embodiments of the present invention is to provide a deadlock conflict management method and system for a multi-mobile robot, which is used to at least manage a deadlock conflict caused by centralized scheduling of multiple mobile robots in a dense area.
为了实现上述目的,本发明实施例提供一种多移动机器人的死锁冲突管理方法,包括:获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,所述预定区域包括多个节点区域;根据所述多个移动机器人各自的 当前位置和规划路径,为各个所述移动机器人分配与所述移动机器人的位置相邻的节点区域,其中所述移动机器人被配置成只从经分配的节点区域通过;当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记所述存在重合的节点区域为冲突状态的冲突节点区域;判断所述第一移动机器人的第一规划路径通过所述冲突节点区域的方向与所述第二移动机器人的第二规划路径通过所述冲突节点区域的方向是否正好相反,以及若是,则确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态。In order to achieve the above object, an embodiment of the present invention provides a method for managing a deadlock conflict of a multi-mobile robot, including: acquiring a current location and a planned path of each of the plurality of mobile robots, wherein the planned path can bypass an obstacle in the predetermined area. The predetermined area includes a plurality of node areas; and each of the mobile robots is assigned a node area adjacent to a position of the mobile robot according to respective current positions and planned paths of the plurality of mobile robots, wherein the The mobile robot is configured to pass only from the allocated node area; when there is a coincidence between the node area allocated for the second mobile robot and the node area assigned to the first mobile robot, the overlapping node area is marked a conflicting node area that is a conflicting state; determining whether the direction of the first planned path of the first mobile robot passes the direction of the conflicting node area and the direction of the second planned path of the second mobile robot passes the conflicting node area Conversely, and if so, determining the first mobile robot and the The second mobile robots are in a state of mutual deadlock.
可选的,在确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态之后,该方法还包括:判断是否存在不位于所述第一规划路径或所述第二规划路径上的、且用于分配至所述第一移动机器人和所述第二移动机器人的第一空闲节点区域和第二空闲节点区域;若存在所述第一空闲节点区域和所述第二空闲节点区域,则为所述第一移动机器人和所述第二移动机器人分别分配所述第一空闲节点区域和所述第二空闲节点区域,以置换所述第一移动机器人和所述第二移动机器人的位置,并解除所述互相死锁状态。Optionally, after determining that the first mobile robot and the second mobile robot are in a mutual deadlock state, the method further includes: determining whether there is a second planning path or the second planning a first idle node area and a second idle node area on the path for distribution to the first mobile robot and the second mobile robot; if the first idle node area and the second idle are present a node area, wherein the first mobile node and the second mobile node are respectively allocated the first idle node area and the second idle node area to replace the first mobile robot and the second mobile Position the robot and release the deadlock states.
可选的,所述置换所述第一移动机器人和所述第二移动机器人的位置包括:控制所述第一移动机器人和所述第二移动机器人分别占用所述第一空闲节点区域和所述第二空闲节点区域;以及为第一移动机器人分配节点区域,以令所述第一移动机器人通过所述冲突节点区域,并占用所述第二移动机器人对应互相死锁状态下的的节点区域;为所述第二移动机器人分配节点区域,以令所述第二移动机器人占用所述第一移动机器人对应互相死锁状态下的节点区域。Optionally, the replacing the positions of the first mobile robot and the second mobile robot includes: controlling the first mobile robot and the second mobile robot to occupy the first idle node region and the a second idle node area; and a node area allocated to the first mobile robot, so that the first mobile robot passes the conflict node area, and occupies the node area of the second mobile robot corresponding to each other in a deadlock state; And assigning a node area to the second mobile robot, so that the second mobile robot occupies the node area of the first mobile robot corresponding to each other in a deadlock state.
可选的,在判断是否存在不位于所述第一规划路径或所述第二规划路径上的且能够分配至所述第一移动机器人或所述第二移动机器人的空闲节点区域之后,所述方法还包括:若不存在所述空闲节点,则停止为所述第一移动机器人和所述第二移动机器人分配节点区域,并执行报警动作。Optionally, after determining whether there is a free node area that is not located on the first planning path or the second planning path and can be allocated to the first mobile robot or the second mobile robot, The method further includes, if the idle node does not exist, stopping assigning a node area to the first mobile robot and the second mobile robot, and performing an alarm action.
可选的,所述获取多个移动机器人各自的当前位置和规划路径包括:向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。Optionally, the acquiring the current location and the planned path of each of the plurality of mobile robots comprises: sending a scheduling command to each of the mobile robots, wherein the scheduling command includes target node area information of each mobile robot; and responding to the scheduling Commanding, receiving a planning path from the plurality of mobile robots, wherein the planning path is determined by each of the mobile robots according to respective target node region information and calculated by an A* algorithm.
本发明实施例另一方面提供一种多移动机器人的死锁冲突管理系统,包括:初始信息获取单元,配置为获取多个移动机器人各自的当前位置和规划路径,其中所述规划 路径能够绕开预定区域内的障碍物,所述预定区域包括多个节点区域;节点区域分配单元,配置为根据所述多个移动机器人各自的当前位置和规划路径,为各个所述移动机器人分配与所述移动机器人的位置相邻的节点区域,其中所述移动机器人被配置成只从经分配的节点区域通过;冲突检测单元,配置为当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记所述存在重合的节点区域为冲突状态的冲突节点区域;死锁判断单元,配置为判断所述第一移动机器人的第一规划路径通过所述冲突节点区域的方向与所述第二移动机器人的第二规划路径通过所述冲突节点区域的方向是否正好相反,以及若是,则确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态。An embodiment of the present invention provides a deadlock conflict management system for a multi-mobile robot, including: an initial information acquiring unit configured to acquire a current location and a planned path of each of the plurality of mobile robots, wherein the planned path can be bypassed An obstacle in a predetermined area, the predetermined area including a plurality of node areas; a node area assigning unit configured to allocate and move the mobile robots according to respective current positions and planned paths of the plurality of mobile robots An adjacent node area of the robot, wherein the mobile robot is configured to pass only from the assigned node area; the conflict detection unit is configured to be assigned to the first movement when the node area assigned to the second mobile robot When there is a coincidence between the node regions of the robot, the conflicting node region in which the overlapping node regions are in conflict state is marked; the deadlock determining unit is configured to determine that the first planned path of the first mobile robot passes the conflicting node The direction of the area and the second planned path of the second mobile robot Whether the direction of the conflicting node area is exactly opposite, and if so, determining that the first mobile robot and the second mobile robot are in a mutual deadlock state.
可选的,该系统还包括:空闲节点区域判断单元,配置为在确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态之后,判断是否存在不位于所述第一规划路径或所述第二规划路径上的、且能够分配至所述第一移动机器人或所述第二移动机器人的空闲节点区域;位置置换单元,配置为若存在所述空闲节点区域,则为所述第一移动机器人或所述第二移动机器人分配所述空闲节点区域,以置换所述第一移动机器人和所述第二移动机器人的位置,并解除所述互相死锁状态。Optionally, the system further includes: an idle node area determining unit, configured to determine whether there is a non-located first after determining that the first mobile robot and the second mobile robot are in a mutual deadlock state a planned node or a free node area on the second planned path that can be allocated to the first mobile robot or the second mobile robot; a location replacement unit configured to be present if the free node area exists The first mobile robot or the second mobile robot allocates the idle node area to replace the positions of the first mobile robot and the second mobile robot, and release the mutual deadlock state.
可选的,所述位置置换单元包括:空闲节点分配模块,配置为控制所述第一移动机器人和所述第二移动机器人分别占用所述第一空闲节点区域和所述第二空闲节点区域;以及第一节点分配模块,配置为为第一移动机器人分配节点区域,以令所述第一移动机器人通过所述冲突节点区域,并占用所述第二移动机器人对应互相死锁状态下的的位置;第二节点分配模块,配置为为所述第二移动机器人分配节点区域,以令所述第二移动机器人占用所述第一移动机器人对应互相死锁状态下的位置。Optionally, the location replacement unit includes: an idle node allocation module, configured to control the first mobile robot and the second mobile robot to occupy the first idle node area and the second idle node area, respectively; And a first node allocating module configured to allocate a node area for the first mobile robot to pass the first mobile robot through the conflicting node area and occupy a position of the second mobile robot corresponding to each other in a deadlock state And a second node assigning module configured to allocate a node area to the second mobile robot, so that the second mobile robot occupies the position of the first mobile robot corresponding to each other in a deadlock state.
可选的,所述系统还包括:警报处理单元,配置为若不存在所述空闲节点,则停止为所述第一移动机器人和所述第二移动机器人分配节点区域,并执行报警动作。Optionally, the system further includes: an alarm processing unit configured to stop assigning the node area to the first mobile robot and the second mobile robot if the idle node does not exist, and perform an alarm action.
可选的,所述初始信息获取单元包括:调度命令发送模块,配置为向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;规划路径接收模块,配置为响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。Optionally, the initial information acquiring unit includes: a scheduling command sending module, configured to send a scheduling command to each of the mobile robots, where the scheduling command includes target node area information of each mobile robot; planning a path receiving module, configuring In response to the scheduling command, a planning path is received from the plurality of mobile robots, wherein the planning path is determined by each of the mobile robots according to respective target node area information and calculated by an A* algorithm.
通过上述技术方案,在多个移动机器人在下一步运行移动之前,分配节点区域,并依据所分配的节点区域进行判断及检测出多个移动机器人在下一步运行移动时是否 会发生互相死锁冲突,有助于对多移动机器人的互相死锁冲突的管理;并且,在本发明实施例中通过对节点的分配和路径方向的监测来管理互相死锁冲突,实现对处理器资源的低消耗,具有较强的实时性。Through the above technical solution, before a plurality of mobile robots move in the next step, the node area is allocated, and according to the allocated node area, it is determined and detected whether a plurality of mobile robots will each other have a deadlock conflict when moving in the next step. Facilitating the management of mutual deadlock conflicts of multiple mobile robots; and, in the embodiment of the present invention, managing mutual deadlock conflicts by monitoring node allocation and path direction monitoring, achieving low consumption of processor resources, Strong real-time.
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。Other features and advantages of embodiments of the invention will be described in detail in the Detailed Description.
附图说明DRAWINGS
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:The drawings are intended to provide a further understanding of the embodiments of the invention. In the drawing:
图1是实施本发明一实施例的多移动机器人的死锁冲突管理方法的密集区域的地图示例;1 is a diagram showing an example of a map of a dense area of a deadlock conflict management method for a multi-mobile robot according to an embodiment of the present invention;
图2是本发明一实施例的多移动机器人的死锁冲突管理方法的流程图;2 is a flowchart of a deadlock conflict management method for a multi-mobile robot according to an embodiment of the present invention;
图3是本发明一实施例中关于获取移动机器人的规划路径方法的流程图;3 is a flow chart of a method for acquiring a planned path of a mobile robot according to an embodiment of the present invention;
图4是本发明一实施例中关于预定区域的节点分布表的示例;4 is an example of a node distribution table regarding a predetermined area in an embodiment of the present invention;
图5是本发明一实施例的关于节点分配的示例;FIG. 5 is an example of node allocation according to an embodiment of the present invention; FIG.
图6是关于预定区域全局的节点资源表的示例;6 is an example of a node resource table global with respect to a predetermined area;
图7是本发明一实施例中两个移动机器人互相死锁状态的示例;7 is an example of a state in which two mobile robots are deadlocked to each other in an embodiment of the present invention;
图8是本发明一实施例的多移动机器人的死锁冲突管理方法的流程图;8 is a flowchart of a deadlock conflict management method for a multi-mobile robot according to an embodiment of the present invention;
图9A是通过节点分配以解决移动机器人互相死锁状态的第一状态示意图;FIG. 9A is a schematic diagram of a first state of a deadlock state of a mobile robot by node allocation; FIG.
图9B是通过节点分配以解决移动机器人互相死锁状态的第二状态示意图;9B is a schematic diagram of a second state by means of node allocation to solve the deadlock state of the mobile robots;
图9C是通过节点分配以解决移动机器人互相死锁状态的第三状态示意图;9C is a schematic diagram of a third state by means of node allocation to solve the deadlock state of the mobile robots;
图9D是通过节点分配以解决移动机器人互相死锁状态的第四状态示意图;9D is a fourth state diagram of solving a deadlock state of a mobile robot by node allocation;
图10是本发明一实施例的移动机器人位置置换的方法的流程图;FIG. 10 is a flowchart of a method for position replacement of a mobile robot according to an embodiment of the present invention; FIG.
图11是节点区域可分配的邻居节点标注的示例;11 is an example of a neighbor node label that can be assigned in a node area;
图12是本发明一实施例的多移动机器人的冲突管理系统的结构框图。Figure 12 is a block diagram showing the structure of a collision management system for a multi-mobile robot according to an embodiment of the present invention.
附图标记说明Description of the reference numerals
A1、A0、A、B     移动机器人        B1、B2     障碍物A1, A0, A, B mobile robot B1, B2 obstacles
N1、N2     节点                    1202      节点区域分配单元N1, N2 node 1202 node area allocation unit
1201     初始信息获取单元           1203   冲突检测单元1201 initial information acquisition unit 1203 collision detection unit
1204     死锁判断单元1204 deadlock judgment unit
120      多移动机器人的死锁冲突管理系统Deadlock conflict management system for more than 120 mobile robots
具体实施方式Detailed ways
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。The specific embodiments of the embodiments of the present invention are described in detail below with reference to the accompanying drawings. It is understood that the specific embodiments described herein are merely illustrative of the embodiments of the invention.
如图1所示,在实施本发明一实施例的多移动机器人的冲突管理方法的密集区域的地图中标注了多个障碍物B1、B2等,多个移动机器人A0、A1等,以及多个节点区域N1、N2等。其中,该密集区域可以是根据需要所预定的,例如其可以是指代仓库内的区域,该多个移动机器人A0、A1可以是指代多个物流机器人,以及通过该移动机器人A0、A1的运行移动,可以实现搬运货物,但是在多个物流机器人同时运行的时候,可能会导致冲突。其中,不同的节点区域N1、N2的大小可以是相等的,其可以通过对密集区域的地图作等比例划分所形成的。需说明的是,本发明实施例的冲突管理方法可以是由集中管理该多个移动机器人的服务器所执行的。As shown in FIG. 1, a plurality of obstacles B1, B2, etc., a plurality of mobile robots A0, A1, etc., and a plurality of maps are arranged in a map of a dense area of a collision management method for a multi-mobile robot according to an embodiment of the present invention. Node areas N1, N2, and so on. Wherein, the dense area may be predetermined according to needs, for example, it may refer to an area in the warehouse, the plurality of mobile robots A0, A1 may refer to a plurality of logistics robots, and through the mobile robots A0, A1 Running the move can carry the goods, but when multiple logistics robots are running at the same time, it may cause conflicts. The sizes of the different node regions N1 and N2 may be equal, which may be formed by equally dividing the map of the dense regions. It should be noted that the conflict management method of the embodiment of the present invention may be performed by a server that centrally manages the plurality of mobile robots.
如图2所示,本发明一实施例的多移动机器人的死锁冲突管理方法,包括:As shown in FIG. 2, a deadlock conflict management method for a multi-mobile robot according to an embodiment of the present invention includes:
S201、获取多个移动机器人各自的当前位置和规划路径,其中规划路径能够绕开预定区域内的障碍物,预定区域包括多个节点区域。S201. Acquire a current location and a planned path of each of the plurality of mobile robots, wherein the planned path can bypass an obstacle in the predetermined area, and the predetermined area includes a plurality of node areas.
具体的,关于规划路径的获取方式,可以是由移动机器人所自主确定,并由其上传至服务器的,也可以是服务器通过计算所得出的,且以上都属于本发明的保护范围内。Specifically, the manner of obtaining the planned path may be determined by the mobile robot and uploaded to the server by the mobile device, or may be obtained by the server, and all of the above are within the protection scope of the present invention.
参见图3示出的是关于规划路径的获取方式的一种可选实施方式,移动机器人可以是AGV(Automated Guided Vehicle激光导航车辆),其中该获取方法包括:S301、服务器可以向各个移动机器人发送调度命令,其中调度命令包含各个移动机器人的目标节点区域信息。S302、在各个移动机器人接收到各自的调度命令之后,其会根据各自的目标节点区域信息并通过A*算法计算各自的相应的规划路径。S303、各个移动机器人会将计算所得到的各自的规划路径发送至服务器。在服务器获取到各个移动机器人所发送的规划路径之后,会执行相应的后续处理,以保障在移动机器人在执行规划路径的过程中不会发生路径冲突。作为示例,在地图上可以具有多个分别具有唯一的节点ID的节点区域(例如图4所示的关于密集区域的节点分布表中的0、1…99号节点区域),移动机器人A0在接收到调度命令之后,需要从当前位置73号节点区域到达31号目标节点 区域,此时移动机器人A0会通过A*算法计算到达31号目标节点区域的最短路径,由此保障移动机器人A0能够迅速到达目标节点区域。但是在此时的计算中并没有考虑到当前空间内的其他移动机器人例如A1的运行移动,其也只会考虑到静态的障碍物节点,而在移动机器人A0运行移动的过程中,空间内的其他移动机器人例如A1相对于这台移动机器人A0都是障碍物,因此需要采取防冲突措施以避开其他移动机器人以防止相撞。关于该冲突管理措施的细节,具体将在下文中展开。Referring to FIG. 3, which is an optional implementation manner of the acquisition manner of the planned path, the mobile robot may be an AGV (Automated Guided Vehicle), wherein the acquisition method includes: S301, the server may send to each mobile robot. A scheduling command, wherein the scheduling command includes target node area information of each mobile robot. S302. After each mobile robot receives the respective scheduling command, it calculates respective corresponding planning paths according to the respective target node region information and through the A* algorithm. S303. Each mobile robot sends the respective planned path obtained by the calculation to the server. After the server obtains the planned path sent by each mobile robot, corresponding subsequent processing is performed to ensure that the path conflict does not occur during the execution of the planned path by the mobile robot. As an example, there may be a plurality of node regions each having a unique node ID on the map (for example, node numbers 0, 1, ..., 99 in the node distribution table for the dense region shown in FIG. 4), and the mobile robot A0 is receiving After the scheduling command, it is necessary to reach the target node area No. 31 from the node area of the current position 73. At this time, the mobile robot A0 calculates the shortest path to the target node area No. 31 by the A* algorithm, thereby ensuring that the mobile robot A0 can arrive quickly. Target node area. However, in this calculation, the movement movement of other mobile robots such as A1 in the current space is not considered, and only the static obstacle nodes are considered, and in the process of moving the mobile robot A0, the space is Other mobile robots such as A1 are obstacles with respect to this mobile robot A0, so it is necessary to take anti-collision measures to avoid other mobile robots to prevent collision. Details on this conflict management measure will be expanded below.
S202、根据多个移动机器人各自的当前位置和规划路径,为各个移动机器人分配与移动机器人的位置相邻的节点区域,其中移动机器人被配置成只从经分配的节点区域通过。S202. Assign, to each mobile robot, a node region adjacent to a position of the mobile robot according to respective current positions and planned paths of the plurality of mobile robots, wherein the mobile robot is configured to pass only from the allocated node region.
关于移动机器人的配置,可以是移动机器人只有从服务器接收到关于下一分配的节点区域的指令时,才会执行移动,即使其可能已经自主规划好了运行路径。Regarding the configuration of the mobile robot, it may be that the mobile robot performs the movement only when an instruction regarding the next allocated node area is received from the server, even though it may have independently planned the operation path.
另外,可以是在机器人A0在0时间点根据规划路径从第73号节点区域运行到63号节点区域之前,预先为A0分配63号节点区域。可选地,可以在是根据移动机器人的需要(例如当移动机器人的速度较快时),第一移动机器人A分配多个供其下一步通过的多个节点区域,如图5所示,可以是根据机器人的运行路径为第一移动机器人A分配24号节点区域和25号节点区域,并为第二移动机器人B分配146号节点区域和147号节点区域等,且以上都属于本发明的保护范围内。In addition, it is possible to assign the node area No. 63 to A0 in advance before the robot A0 runs from the node node area 73 to the node area 63 according to the planned path at the time point 0. Alternatively, the first mobile robot A may allocate a plurality of node areas for the next step, as shown in FIG. 5, according to the needs of the mobile robot (for example, when the speed of the mobile robot is fast). The first mobile robot A is assigned a node area No. 24 and a node area No. 25 according to the running path of the robot, and the second mobile robot B is assigned a node area 146 and a node area No. 147, etc., and all of the above belong to the protection of the present invention. Within the scope.
S203、当为第二移动机器人所分配的第二节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记该存在重合的节点区域为冲突状态的冲突节点区域。S203. When there is a coincidence between the second node area allocated for the second mobile robot and the node area allocated to the first mobile robot, mark the conflicting node area where the overlapping node area is a conflicting state.
具体的,可以是在关于预定区域全局的节点资源表中统计各个节点资源的被各个机器人所占用及分配的情况,包括机器人现在所占用的节点区域ID以及为机器人所分配的节点区域ID,具体可参照如图6所示的示例。在一种情况下,如果为第一移动机器人A所分配节点资源区域为第10号节点区域,之后为第二移动机器人B所分配节点资源区域也为第10号节点区域,或者在另一种情况下,如果为第一移动机器人A所分配节点资源区域包含第10号和11号节点区域,为第二移动机器人B所分配的节点区域包含第9号节点区域和第10号节点区域,则表明第一移动机器人A和第二移动机器人B存在重合的第10号节点区域,相应地标记该第10号节点为处于冲突状态的冲突节点区域。相应地,可以确定在第一移动机器人A与第二移动机器人B之间存在规划路径冲突,此时应当采取相应的冲突管理措施,具体地,可以是生成冲突通知信号,并将该冲突通知信号发送至运维人员以提醒其来处理并解决移动机器人冲突。可选的,也可以 是由服务器自主解决移动机器人之间的冲突,具体细节将在下文中展开。Specifically, the situation in which each node resource is occupied and allocated by each robot is counted in a node resource table globally related to the predetermined area, including the node area ID currently occupied by the robot and the node area ID allocated to the robot, specifically Reference can be made to the example shown in FIG. 6. In one case, if the node resource region allocated for the first mobile robot A is the node node region No. 10, then the node resource region allocated for the second mobile robot B is also the node node region No. 10, or in another In the case where the node resource area allocated for the first mobile robot A includes the node areas No. 10 and No. 11, and the node area allocated for the second mobile robot B includes the node area No. 9 and the node area No. 10, then It is indicated that the first mobile robot A and the second mobile robot B have coincident node area No. 10, and the tenth node is marked as a conflicting node area in a conflict state. Correspondingly, it may be determined that there is a planned path conflict between the first mobile robot A and the second mobile robot B. At this time, corresponding conflict management measures should be taken. Specifically, the conflict notification signal may be generated, and the conflict notification signal may be generated. Send to the operations staff to remind them to handle and resolve mobile robot conflicts. Alternatively, the conflict between the mobile robots may be solved autonomously by the server, and specific details will be expanded below.
可选地,在检测到第一移动机器人A或第二移动机器人B已经通过第10号冲突节点区域时,服务器可以将冲突节点区域重新从冲突状态转换为可供分配的状态,例如可以以不同的标识(通过对节点颜色或形态的标注等)对冲突节点区域与可分配的节点区域之间进行区分,由此实现了对冲突节点恢复正常之后的再分配工作,保障了正常节点资源能够被移动机器人循环使用,提高了密集区域的利用效率。Optionally, when detecting that the first mobile robot A or the second mobile robot B has passed the No. 10 conflicting node area, the server may re-convert the conflicting node area from the conflicting state to the available state, for example, may be different. The identification (by labeling the color or shape of the node, etc.) distinguishes between the conflicting node area and the assignable node area, thereby realizing the redistribution work after the conflicting node returns to normal, and ensuring that the normal node resources can be The mobile robot is recycled, which improves the utilization efficiency of dense areas.
S204、判断第一移动机器人的第一规划路径通过冲突节点区域的方向与第二移动机器人的第二规划路径通过冲突节点区域的方向是否正好相反。S204. Determine whether the direction of the first planned path of the first mobile robot passes through the conflicting node area and the direction of the second planned path of the second mobile robot passes through the conflicting node area.
S205、若是,则确定第一移动机器人和第二移动机器人之间处于互相死锁状态。S205. If yes, determining that the first mobile robot and the second mobile robot are in a deadlock state.
如图7所示的是两个移动机器人互相死锁状态的示例,移动机器人A1需要往上行驶到3号节点,而路径当中移动机器人A2恰巧在其中,且A2需要往下行驶到目标20号节点,13号节点区域就成为了冲突节点区域。基于S204和S205,在确定第一移动机器人和第二移动机器人之间的存在路径冲突之后,进一步基于第一节点路径和第二节点路径相对于冲突节点区域的方向来确定第一移动机器人和第二移动机器人之间的冲突状态是否为互相死锁状态,实现了对互相死锁状态的检测。As shown in FIG. 7 is an example in which two mobile robots are deadlocked to each other, and the mobile robot A1 needs to travel up to the node No. 3, while the mobile robot A2 happens to be in the path, and A2 needs to travel down to the target No. 20 Node, node 13 area becomes the conflict node area. Determining, according to S204 and S205, the first mobile robot and the first based on the direction of the first node path and the second node path relative to the conflicting node area after determining the existence path conflict between the first mobile robot and the second mobile robot Whether the conflict state between the mobile robots is a mutual deadlock state, and the detection of the mutual deadlock state is realized.
如图8所示,本发明一实施例的多移动机器人的死锁冲突管理方法,包括:As shown in FIG. 8, a deadlock conflict management method for a multi-mobile robot according to an embodiment of the present invention includes:
S401、获取多个移动机器人各自的当前位置和规划路径,其中规划路径能够绕开预定区域内的障碍物,预定区域包括多个节点区域。S401. Acquire a current location and a planning path of each of the plurality of mobile robots, wherein the planning path can bypass an obstacle in the predetermined area, and the predetermined area includes a plurality of node areas.
S402、根据多个移动机器人各自的当前位置和规划路径,为各个移动机器人分配与移动机器人的位置相邻的节点区域,其中移动机器人被配置成只从经分配的节点区域通过。S402. Assign, to each mobile robot, a node region adjacent to a position of the mobile robot according to respective current positions and planned paths of the plurality of mobile robots, wherein the mobile robot is configured to pass only from the allocated node region.
S403、当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记存在重合的节点区域为冲突状态的冲突节点区域。S403. When there is a coincidence between a node area allocated for the second mobile robot and a node area allocated to the first mobile robot, the conflicting node area where the overlapping node area is a conflict state is marked.
S404、判断第一移动机器人的第一规划路径通过冲突节点区域的方向与第二移动机器人的第二规划路径通过冲突节点区域的方向是否正好相反。S404. Determine whether the direction of the first planned path of the first mobile robot passes through the conflicting node area and the direction of the second planned path of the second mobile robot passes through the conflicting node area.
S405、若是,则确定第一移动机器人和第二移动机器人之间处于互相死锁状态。S405. If yes, determining that the first mobile robot and the second mobile robot are in a deadlock state.
关于S401-S405更具体的细节,可以参照上文实施例的描述,在此便不赘述,For more specific details of S401-S405, reference may be made to the description of the above embodiments, and details are not described herein.
S406、判断是否存在不位于第一规划路径或第二规划路径上的、且用于分配至第一移动机器人和第二移动机器人的第一空闲节点区域和第二空闲节点区域。S406. Determine whether there is a first idle node area and a second idle node area that are not located on the first planning path or the second planning path and are allocated to the first mobile robot and the second mobile robot.
S407、若存在第一空闲节点区域和第二空闲节点区域,则为第一移动机器人和第 二移动机器人分别分配第一空闲节点区域和第二空闲节点区域,以置换第一移动机器人和第二移动机器人的位置,并解除互相死锁状态。S407. If there is a first idle node area and a second idle node area, assign a first idle node area and a second idle node area to the first mobile robot and the second mobile robot, respectively, to replace the first mobile robot and the second Move the robot's position and release the deadlock status.
具体的,关于置换第一移动机器人和第二移动机器人的位置,可以通过如下方式来实现:首先,控制第一移动机器人和第二移动机器人分别占用第一空闲节点区域和第二空闲节点区域。之后,为第一移动机器人分配节点区域,以令第一移动机器人通过冲突节点区域,并占用第二移动机器人对应互相死锁状态下的的位置。最后,为第二移动机器人分配节点区域,以令第二移动机器人占用第一移动机器人对应互相死锁状态下的位置。Specifically, the replacement of the positions of the first mobile robot and the second mobile robot may be implemented by first controlling the first mobile robot and the second mobile robot to occupy the first idle node area and the second idle node area, respectively. Thereafter, a node area is allocated for the first mobile robot to pass the first mobile robot through the conflicting node area, and occupy the position of the second mobile robot corresponding to each other in a deadlock state. Finally, the node area is allocated for the second mobile robot, so that the second mobile robot occupies the position of the first mobile robot corresponding to each other in a deadlock state.
图8所示的实施例可以被看作是图2所示实施例的一种可选实施方式,具体在于,图8实施例还公开了解除互相死锁状态的操作,也就是通过对空闲节点区域的判断及分配,分别将两个发生互相死锁状态的移动机器人分别分配到相应的空闲节点区域张,并进一步解除移动机器人之间的互相死锁状态。The embodiment shown in FIG. 8 can be seen as an optional implementation of the embodiment shown in FIG. 2. Specifically, the embodiment of FIG. 8 also discloses the operation of releasing the deadlock state, that is, by using the idle node. The judging and allocation of the regions respectively allocates two mobile robots that are in a state of mutual deadlock to the corresponding free node regions, and further releases the mutual deadlock state between the mobile robots.
具体的,如图9A-9D所示了节点分配以解决移动机器人互相死锁状态的示意图,在移动机器人A1与A2发生如图7所示的冲突之后,确定要置换A1和A2的位置就可以很好地解决这一冲突。具体的,可以是分析移动机器人A1的规划路径为:18-13-8-3节点序列,而移动机器人A2的规划路径为8-13-18-19-20节点序列。所以,满足条件的不在18-13-8-3节点序列,也不在8-13-18-19-20节点序列上的能够分配至A1和A0的,就只有能够分配给A1的距规划路径节点序列相邻的25号或15号节点区域了。因此,如图9A所示,第一步,如图9A所示,可以是为移动机器人A1分配25号节点区域,具体的,可以是在为移动机器人A1分配25号节点之前就先分配19号和20号节点区域;第二步,如图9B所示,为移动机器人A2分配同样不在规划路径上的15号节点,具体的,可以是在为移动机器人A2分配15号节点之前就先分配13、18、19和20号节点区域;第三步,如图9C所示根据移动机器人A1的目标节点区域为A1分配节点区域序列,以通过节点区域的分配令A1到达先前A2所占用的8号节点区域;第四步,如图9D所示,根据移动机器人A2的目标节点区域为A2分配节点区域序列,以通过节点区域的分配令A2到达先前A1所占用的18号节点区域;第五步,为移动机器人A1和A2重新分配目标节点区域信息,以令其在解决完了互相冲突之后重新执行任务。Specifically, as shown in FIG. 9A-9D, the node allocation is used to solve the deadlock state of the mobile robots. After the mobile robots A1 and A2 collide with each other as shown in FIG. 7, it is determined that the positions of A1 and A2 are to be replaced. A good solution to this conflict. Specifically, it may be that the planned path of the mobile robot A1 is: 18-13-8-3 node sequence, and the planned path of the mobile robot A2 is a sequence of 8-13-18-19-20 nodes. Therefore, if the condition is not in the 18-13-8-3 node sequence, nor in the 8-13-18-19-20 node sequence, it can be assigned to A1 and A0, and only the planned path node can be assigned to A1. The adjacent area of the 25th or 15th node is in the sequence. Therefore, as shown in FIG. 9A, in the first step, as shown in FIG. 9A, the mobile robot A1 may be assigned a node area No. 25, and specifically, the number 19 may be assigned before the mobile robot A1 is assigned the node No. 25. And the node area No. 20; in the second step, as shown in FIG. 9B, the mobile robot A2 is assigned a node No. 15 which is also not on the planned path. Specifically, it may be allocated 13 before the mobile robot A2 is assigned the node No. 15. In the third step, as shown in FIG. 9C, the node area sequence is assigned to the A1 according to the target node area of the mobile robot A1, so that the allocation of the node area causes the A1 to reach the number 8 occupied by the previous A2. The fourth step, as shown in FIG. 9D, assigns a sequence of node regions to A2 according to the target node region of the mobile robot A2, so that A2 is reached by the allocation of the node region to reach the node node region occupied by the previous A1; Reassigning the target node area information for the mobile robots A1 and A2 to re-execute the task after the conflicts have been resolved.
在本发明一实施例中,可以是设置如下的位置置换条件:被置换的移动机器人所处的节点区域至少由有两个可行走的邻居节点(且该邻居节点不在规划路径上),以及如果被置换移动机器人只有一个邻居节点,则先移动到这一邻居节点再继续寻找从该邻 居节点的可行走的其他邻居节点,并且如果被置换移动机器人所在节点没有可行走的邻居节点则先尝试另一个移动机器人,直到解除或者无解。In an embodiment of the present invention, the position replacement condition may be set as follows: the node area in which the replaced mobile robot is located has at least two walkable neighbor nodes (and the neighbor nodes are not on the planned path), and if The replaced mobile robot has only one neighbor node, then moves to this neighbor node and then continues to search for other neighbor nodes that can walk from the neighbor node, and if the node where the mobile robot is replaced does not have a walkable neighbor node, try another A mobile robot until it is released or has no solution.
如图10所示,本发明一实施例的移动机器人位置置换的方法,包括:As shown in FIG. 10, a method for position replacement of a mobile robot according to an embodiment of the present invention includes:
S501、计算B可行走的邻居节点N(B)的数量,并确定A到B的方向为D(A,B),其中,如果N(B)的数量为0,则表示无解,如果N(B)的数量等于1,则跳转至S504。S501. Calculate the number of neighbor nodes N(B) that B can walk, and determine that the direction of A to B is D(A, B). If the number of N(B) is 0, it means no solution, if N If the number of (B) is equal to 1, then jump to S504.
S502、确定B到N(B)={n1,n2,n3,n4}各邻居节点的方向D(B,n1),D(B,n2),D(B,n3),D(B,n4),计算B到邻居节点方向与A到B方向的角度R=D(B,nx)–D(A,B),并标记nα={nx|R=90},nβ={nx|R=-90},nγ={nx|R=0}(如图11所示)。S502. Determine a direction D(B, n1), D(B, n2), D(B, n3), D(B, n4) of each neighbor node of B to N(B)={n1, n2, n3, n4}. ), calculate the angle of B to the neighbor node direction and the direction of A to B R=D(B,nx)–D(A,B), and mark nα={nx|R=90}, nβ={nx|R= -90}, nγ={nx|R=0} (as shown in Fig. 11).
S503、将B移动到nα或nβ节点,并且将A移动到nγ(或nβ,nα)节点。将B再移动到之前的A的节点位置A’,再将A移动到B之前的节点位置B’,完成交换,返回。S503, moving B to an nα or nβ node, and moving A to an nγ (or nβ, nα) node. Move B again to the node position A' of the previous A, and then move A to the node position B' before B, complete the exchange, and return.
S504、将B移动到N(B)={n0}唯一邻居点,将A移动到B的节点B’,重复进行S501。S504, moving B to N(B)={n0} unique neighbor point, moving A to node B' of B, and repeating S501.
S505、如果Swap(A,B)与Swap(B,A)都无解,则无法交换AB位置。S505. If there is no solution between Swap (A, B) and Swap (B, A), the AB position cannot be exchanged.
进一步的,在确定无法交换A、B移动机器人的位置的情况下,可以是停止为移动机器人A和B分配节点区域,并执行报警动作,以警示运维人员采取措施。Further, in the case that it is determined that the positions of the A and B mobile robots cannot be exchanged, the node areas of the mobile robots A and B may be stopped from being allocated, and an alarm action may be performed to alert the operation and maintenance personnel to take measures.
如图12所示,本发明一实施例的多移动机器人的死锁冲突管理系统120,包括:初始信息获取单元1201,配置为获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,所述预定区域包括多个节点区域;节点区域分配单元1202,配置为根据所述多个移动机器人各自的当前位置和规划路径,为各个所述移动机器人分配与所述移动机器人的位置相邻的节点区域,其中所述移动机器人被配置成只从经分配的节点区域通过;冲突检测单元1203,配置为当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记所述存在重合的节点区域为冲突状态的冲突节点区域;死锁判断单元1204,配置为判断所述第一移动机器人的第一规划路径通过所述冲突节点区域的方向与所述第二移动机器人的第二规划路径通过所述冲突节点区域的方向是否正好相反,以及若是,则确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态。As shown in FIG. 12, a deadlock conflict management system 120 of a multi-mobile robot according to an embodiment of the present invention includes: an initial information acquiring unit 1201 configured to acquire respective current positions and planned paths of a plurality of mobile robots, wherein the planning The path is capable of bypassing an obstacle in a predetermined area, the predetermined area including a plurality of node areas, and a node area assigning unit 1202 configured to select, according to respective current positions and planned paths of the plurality of mobile robots, each of the mobile robots Allocating a node area adjacent to a position of the mobile robot, wherein the mobile robot is configured to pass only from the allocated node area; the conflict detecting unit 1203 is configured to be a node area allocated for the second mobile robot When there is a coincidence between the node regions that have been allocated to the first mobile robot, the conflicting node region in which the overlapping node regions are in conflict state is marked; the deadlock determining unit 1204 is configured to determine the first of the first mobile robot Planning a path through the direction of the conflicting node area with the second mobile robot The path is planned two opposite directions by the conflicting nodes region, and if it is determined in a deadlock state with each other between said first and said second robot moving mobile robot.
在一些实施方式中,该系统还包括:空闲节点区域判断单元,配置为判断是否存在不位于所述第一规划路径或所述第二规划路径上的、且配置为分配至所述第一移动机器人和所述第二移动机器人的第一空闲节点区域和第二空闲节点区域;位置置换单元, 配置为若存在所述第一空闲节点区域和所述第二空闲节点区域,则为所述第一移动机器人和所述第二移动机器人分别分配所述第一空闲节点区域和所述第二空闲节点区域,以置换所述第一移动机器人和所述第二移动机器人的位置,并解除所述互相死锁状态。In some embodiments, the system further includes: an idle node area determining unit configured to determine whether there is a non-located on the first planned path or the second planned path, and configured to be allocated to the first mobile a first idle node area and a second idle node area of the robot and the second mobile robot; and a position replacement unit configured to: if the first idle node area and the second idle node area are present, a mobile robot and the second mobile robot respectively assign the first idle node area and the second idle node area to replace positions of the first mobile robot and the second mobile robot, and release the Deadlocked to each other.
在一些实施方式中,所述位置置换单元包括:空闲节点分配模块,配置为控制所述第一移动机器人和所述第二移动机器人分别占用所述第一空闲节点区域和所述第二空闲节点区域;以及第一节点分配模块,配置为为第一移动机器人分配节点区域,以令所述第一移动机器人通过所述冲突节点区域,并占用所述第二移动机器人对应互相死锁状态下的的节点区域;第二节点分配模块,配置为为所述第二移动机器人分配节点区域,以令所述第二移动机器人占用所述第一移动机器人对应互相死锁状态下的节点区域。In some embodiments, the location replacement unit includes: an idle node allocation module configured to control the first mobile robot and the second mobile robot to occupy the first idle node region and the second idle node, respectively And a first node allocating module configured to allocate a node area for the first mobile robot to pass the first mobile robot through the conflicting node area and occupy the second mobile robot corresponding to each other in a deadlock state a node area, configured to allocate a node area for the second mobile robot, so that the second mobile robot occupies the node area of the first mobile robot corresponding to each other in a deadlock state.
在一些实施方式中,所述系统还包括:警报处理单元,配置为若不存在所述空闲节点,则停止为所述第一移动机器人和所述第二移动机器人分配节点区域,并执行报警动作。In some embodiments, the system further includes: an alarm processing unit configured to stop assigning the node area to the first mobile robot and the second mobile robot and perform an alarm action if the idle node does not exist .
在一些实施方式中,所述初始信息获取单元包括:调度命令发送模块,配置为向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;规划路径接收模块,配置为响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。In some embodiments, the initial information acquiring unit includes: a scheduling command sending module configured to send a scheduling command to each of the mobile robots, wherein the scheduling command includes target node area information of each mobile robot; and the planning path receiving module And configuring, in response to the scheduling command, receiving a planning path from the plurality of mobile robots, wherein the planning path is determined by each of the mobile robots according to respective target node region information and calculated by an A* algorithm.
需说明的是,本发明实施例所提供的多移动机器人的死锁冲突管理系统可以是搭建在用于集中管理多移动机器人的服务器上的,并且如上所述的各个单元和模块可以是指代程序模块或单元。以及,关于本发明实施例系统的更多的细节和相应的技术效果可以参照上文方法实施例的描述,在此便不再赘述。It should be noted that the deadlock conflict management system of the multi-mobile robot provided by the embodiment of the present invention may be built on a server for centrally managing multiple mobile robots, and each unit and module as described above may refer to Program module or unit. For more details and corresponding technical effects of the system of the embodiment of the present invention, reference may be made to the description of the method embodiment above, and details are not described herein again.
上述本发明实施例的系统可用于执行本发明中相应的方法实施例,并相应的达到上述本发明方法实施例所达到的技术效果,这里不再赘述。The system of the embodiments of the present invention may be used to implement the corresponding method embodiments of the present invention, and correspondingly achieve the technical effects achieved by the foregoing method embodiments of the present invention, and details are not described herein again.
本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。In the embodiment of the present invention, a related function module can be implemented by a hardware processor.
另一方面,本发明实施例提供一种存储介质,其上存储有计算机程序,该程序被处理器执行如上服务器所执行的多移动机器人的死锁冲突管理方法的步骤。In another aspect, an embodiment of the present invention provides a storage medium having a computer program stored thereon, the program being executed by the processor as a step of a deadlock conflict management method of a multi-mobile robot executed by the server.
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。The above products can perform the methods provided by the embodiments of the present application, and have the corresponding functional modules and beneficial effects of the execution method. For technical details that are not described in detail in this embodiment, reference may be made to the method provided by the embodiments of the present application.
以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明 实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。The embodiments of the present invention are described in detail above with reference to the accompanying drawings. However, the embodiments of the present invention are not limited to the specific details in the foregoing embodiments. The technical solution carries out a variety of simple variants, all of which fall within the scope of protection of embodiments of the invention.
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。It should be further noted that the specific technical features described in the above specific embodiments may be combined in any suitable manner without contradiction. In order to avoid unnecessary repetition, various possible combinations of the embodiments of the present invention are not separately described.
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。Those skilled in the art can understand that all or part of the steps of implementing the foregoing embodiments may be completed by a program instructing related hardware, and the program is stored in a storage medium, and includes a plurality of instructions for causing a single chip, a chip or a processor. The processor performs all or part of the steps of the method described in the various embodiments of the present application. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .
此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。In addition, the various embodiments of the present invention may be combined in any combination, as long as they do not deviate from the idea of the embodiments of the present invention, and should also be regarded as the disclosure of the embodiments of the present invention.

Claims (10)

  1. 一种多移动机器人的死锁冲突管理方法,包括:A deadlock conflict management method for multiple mobile robots, comprising:
    获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,所述预定区域包括多个节点区域;Obtaining a current location and a planned path of each of the plurality of mobile robots, wherein the planned path is capable of bypassing an obstacle within the predetermined area, the predetermined area including a plurality of node areas;
    根据所述多个移动机器人各自的当前位置和规划路径,为各个所述移动机器人分配与所述移动机器人的位置相邻的节点区域,其中所述移动机器人被配置成只从经分配的节点区域通过;Assigning, to each of the mobile robots, a node region adjacent to a position of the mobile robot according to respective current positions and planned paths of the plurality of mobile robots, wherein the mobile robot is configured to only from the allocated node region by;
    当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记所述存在重合的节点区域为冲突状态的冲突节点区域;When there is a coincidence between a node area allocated for the second mobile robot and a node area allocated to the first mobile robot, marking the overlapping node area as a conflicting node area of the conflict state;
    判断所述第一移动机器人的第一规划路径通过所述冲突节点区域的方向与所述第二移动机器人的第二规划路径通过所述冲突节点区域的方向是否正好相反,以及Determining whether the direction of the first planned path of the first mobile robot through the conflicting node area is opposite to the direction of the second planned path of the second mobile robot through the conflicting node area, and
    若是,则确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态。If yes, it is determined that the first mobile robot and the second mobile robot are in a deadlock state.
  2. 根据权利要求1所述的方法,其特征在于,在确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态之后,该方法还包括:The method according to claim 1, wherein after determining that the first mobile robot and the second mobile robot are in a mutual deadlock state, the method further comprises:
    判断是否存在不位于所述第一规划路径或所述第二规划路径上的、且用于分配至所述第一移动机器人和所述第二移动机器人的第一空闲节点区域和第二空闲节点区域;Determining whether there is a first idle node area and a second idle node that are not located on the first planning path or the second planning path and are allocated to the first mobile robot and the second mobile robot region;
    若存在所述第一空闲节点区域和所述第二空闲节点区域,则为所述第一移动机器人和所述第二移动机器人分别分配所述第一空闲节点区域和所述第二空闲节点区域,以置换所述第一移动机器人和所述第二移动机器人的位置,并解除所述互相死锁状态。Assigning the first idle node area and the second idle node area to the first mobile robot and the second mobile robot respectively if the first idle node area and the second idle node area are present And replacing the positions of the first mobile robot and the second mobile robot, and releasing the mutual deadlock state.
  3. 根据权利要求2所述的方法,其特征在于,所述置换所述第一移动机器人和所述第二移动机器人的位置包括:The method of claim 2, wherein the replacing the locations of the first mobile robot and the second mobile robot comprises:
    控制所述第一移动机器人和所述第二移动机器人分别占用所述第一空闲节点区域和所述第二空闲节点区域;以及Controlling the first mobile robot and the second mobile robot to occupy the first idle node area and the second idle node area, respectively;
    为第一移动机器人分配节点区域,以令所述第一移动机器人通过所述冲突节点区域,并占用所述第二移动机器人对应互相死锁状态下的的节点区域;Assigning a node area to the first mobile robot, so that the first mobile robot passes the conflict node area, and occupies the node area of the second mobile robot corresponding to each other in a deadlock state;
    为所述第二移动机器人分配节点区域,以令所述第二移动机器人占用所述第一移动机器人对应互相死锁状态下的节点区域。And assigning a node area to the second mobile robot, so that the second mobile robot occupies the node area of the first mobile robot corresponding to each other in a deadlock state.
  4. 根据权利要求2所述的方法,其特征在于,在判断是否存在不位于所述第一规划路径或所述第二规划路径上的且能够分配至所述第一移动机器人或所述第二移动机器人的空闲节点区域之后,所述方法还包括:The method according to claim 2, wherein determining whether there is a non-located on the first planning path or the second planning path and being assignable to the first mobile robot or the second mobile After the idle node area of the robot, the method further includes:
    若不存在所述空闲节点,则停止为所述第一移动机器人和所述第二移动机器人分配节点区域,并执行报警动作。If the idle node does not exist, the node areas are allocated for the first mobile robot and the second mobile robot, and an alarm action is performed.
  5. 根据权利要求1所述的方法,其特征在于,所述获取多个移动机器人各自的当前位置和规划路径包括:The method according to claim 1, wherein the obtaining the current location and the planned path of each of the plurality of mobile robots comprises:
    向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;Sending a scheduling command to each of the mobile robots, wherein the scheduling command includes target node area information of each mobile robot;
    响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。A planning path is received from the plurality of mobile robots in response to the scheduling command, wherein the planning path is determined by each of the mobile robots according to respective target node area information and calculated by an A* algorithm.
  6. 一种多移动机器人的死锁冲突管理系统,包括:A deadlock conflict management system for multiple mobile robots, comprising:
    初始信息获取单元,配置为获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,所述预定区域包括多个节点区域;An initial information acquiring unit configured to acquire a current location and a planned path of each of the plurality of mobile robots, wherein the planned path is capable of bypassing an obstacle within the predetermined area, the predetermined area including a plurality of node areas;
    节点区域分配单元,配置为根据所述多个移动机器人各自的当前位置和规划路径,为各个所述移动机器人分配与所述移动机器人的位置相邻的节点区域,其中所述移动机器人被配置成只从经分配的节点区域通过;a node area allocating unit configured to allocate, to each of the mobile robots, a node area adjacent to a position of the mobile robot according to respective current positions and planned paths of the plurality of mobile robots, wherein the mobile robot is configured to Pass only from the assigned node area;
    冲突检测单元,配置为当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记所述存在重合的节点区域为冲突状态的冲突节点区域;a conflict detecting unit configured to mark, when the node area allocated for the second mobile robot overlaps with the node area allocated to the first mobile robot, the conflicting node area in which the overlapping node area is a conflicting state;
    死锁判断单元,配置为判断所述第一移动机器人的第一规划路径通过所述冲突节点区域的方向与所述第二移动机器人的第二规划路径通过所述冲突节点区域的方向是否正好相反,以及若是,则确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态。a deadlock determining unit, configured to determine whether the direction of the first planned path of the first mobile robot passes through the conflicting node area and the direction of the second planned path of the second mobile robot passes through the conflicting node area And if so, determining that the first mobile robot and the second mobile robot are in a deadlock state.
  7. 根据权利要求6所述的系统,其特征在于,该系统还包括:The system of claim 6 further comprising:
    空闲节点区域判断单元,配置为判断是否存在不位于所述第一规划路径或所述第二规划路径上的、且用于分配至所述第一移动机器人和所述第二移动机器人的第一空闲 节点区域和第二空闲节点区域;The idle node area determining unit is configured to determine whether there is a first one that is not located on the first planned path or the second planned path and is allocated to the first mobile robot and the second mobile robot a free node area and a second idle node area;
    位置置换单元,配置为若存在所述第一空闲节点区域和所述第二空闲节点区域,则为所述第一移动机器人和所述第二移动机器人分别分配所述第一空闲节点区域和所述第二空闲节点区域,以置换所述第一移动机器人和所述第二移动机器人的位置,并解除所述互相死锁状态。a location replacement unit configured to allocate the first idle node region and the first mobile node and the second mobile robot respectively if the first idle node region and the second idle node region are present The second idle node area is described to replace the positions of the first mobile robot and the second mobile robot, and the mutual deadlock state is released.
  8. 根据权利要求7所述的系统,其特征在于,所述位置置换单元包括:The system of claim 7 wherein said location replacement unit comprises:
    空闲节点分配模块,配置为控制所述第一移动机器人和所述第二移动机器人分别占用所述第一空闲节点区域和所述第二空闲节点区域;以及a idle node allocation module configured to control the first mobile robot and the second mobile robot to occupy the first idle node area and the second idle node area, respectively;
    第一节点分配模块,配置为为第一移动机器人分配节点区域,以令所述第一移动机器人通过所述冲突节点区域,并占用所述第二移动机器人对应互相死锁状态下的的节点区域;a first node allocation module, configured to allocate a node area to the first mobile robot, so that the first mobile robot passes the conflict node area, and occupy a node area of the second mobile robot corresponding to each other in a deadlock state ;
    第二节点分配模块,配置为为所述第二移动机器人分配节点区域,以令所述第二移动机器人占用所述第一移动机器人对应互相死锁状态下的节点区域。The second node allocation module is configured to allocate a node area to the second mobile robot, so that the second mobile robot occupies the node area corresponding to the mutual deadlock state of the first mobile robot.
  9. 根据权利要求7所述的系统,其特征在于,所述系统还包括:The system of claim 7 wherein said system further comprises:
    警报处理单元,配置为若不存在所述空闲节点,则停止为所述第一移动机器人和所述第二移动机器人分配节点区域,并执行报警动作。The alarm processing unit is configured to stop assigning the node area to the first mobile robot and the second mobile robot if the free node does not exist, and perform an alarm action.
  10. 根据权利要求6所述的系统,其特征在于,所述初始信息获取单元包括:The system according to claim 6, wherein the initial information acquisition unit comprises:
    调度命令发送模块,配置为向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;a scheduling command sending module, configured to send a scheduling command to each of the mobile robots, wherein the scheduling command includes target node area information of each mobile robot;
    规划路径接收模块,配置为响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。a planning path receiving module configured to receive a planning path from the plurality of mobile robots in response to the scheduling command, wherein the planning path is calculated by each of the mobile robots according to respective target node area information and by an A* algorithm definite.
PCT/CN2019/072256 2018-01-19 2019-01-18 Conflict management method and system for multiple mobile robots WO2019141218A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810053971.0 2018-01-19
CN201810053971.0A CN108279675A (en) 2018-01-19 2018-01-19 The method for collision management and system of multiple mobile robot

Publications (1)

Publication Number Publication Date
WO2019141218A1 true WO2019141218A1 (en) 2019-07-25

Family

ID=62804178

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/072256 WO2019141218A1 (en) 2018-01-19 2019-01-18 Conflict management method and system for multiple mobile robots

Country Status (2)

Country Link
CN (1) CN108279675A (en)
WO (1) WO2019141218A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111061272A (en) * 2019-12-24 2020-04-24 广东嘉腾机器人自动化有限公司 AGV trolley control method and device, electronic equipment and storage medium
CN111798041A (en) * 2020-06-18 2020-10-20 北京卫星制造厂有限公司 AGV intelligent scheduling method based on time window
CN112990806A (en) * 2019-12-17 2021-06-18 北京京东乾石科技有限公司 Method and system for dispatch control of transportation equipment
CN113671965A (en) * 2021-08-24 2021-11-19 同济大学 Path planning method and device
CN113945216A (en) * 2021-10-15 2022-01-18 上海懒书智能科技有限公司 Path planning and managing system and method of mobile machine equipment
CN114281080A (en) * 2021-12-22 2022-04-05 杭州蓝芯科技有限公司 Method for solving deadlock in AMR (adaptive multi-rate) scheduling system
CN116880476A (en) * 2023-07-05 2023-10-13 湘南学院 AGVS operation control method based on traffic control
CN117325185A (en) * 2023-11-27 2024-01-02 成都越凡创新科技有限公司 Method for removing deadlock of mobile robot and scheduling equipment
WO2024066072A1 (en) * 2022-09-28 2024-04-04 劢微机器人科技(深圳)有限公司 Agv deadlock problem processing method and apparatus, device, and storage medium

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108279675A (en) * 2018-01-19 2018-07-13 广东美的智能机器人有限公司 The method for collision management and system of multiple mobile robot
CN109298386B (en) * 2018-10-17 2020-10-23 中国航天系统科学与工程研究院 Three-dimensional unknown area rapid detection method based on multi-agent cooperation
CN109189081A (en) * 2018-11-16 2019-01-11 湖北文理学院 AGV dispatch control method and device
CN109460036A (en) * 2018-12-18 2019-03-12 广东嘉腾机器人自动化有限公司 A kind of AGV traffic control dispatching method and storage device
CN109781110B (en) * 2019-01-18 2022-09-27 安徽宏途机器人科技有限公司 System and method for detecting deadlock of mobile robot path
CN110394800B (en) * 2019-07-10 2020-12-22 浙江欣奕华智能科技有限公司 Obstacle avoidance method and system for multiple robots
CN112783145B (en) * 2019-11-11 2023-03-31 上海快仓智能科技有限公司 Traffic control method, device, equipment and computer readable storage medium
CN110889918B (en) * 2019-11-28 2021-04-16 安徽江淮汽车集团股份有限公司 Magnetic navigation deadlock unlocking control method and device and computer readable storage medium
CN111784249A (en) * 2020-07-03 2020-10-16 上海木木聚枞机器人科技有限公司 Method for locking and unlocking scheduling driving state, server and storage medium
CN112214013A (en) * 2020-08-07 2021-01-12 上海海得控制系统股份有限公司 Linear reciprocating type multi-RGV deadlock avoidance and conflict real-time control method, system, medium and terminal
CN114355867B (en) * 2020-09-27 2024-04-16 顺丰科技有限公司 Multi-AGV collision-free and deadlock-free motion planning method and device
CN113156950A (en) * 2021-04-20 2021-07-23 杭州壹悟科技有限公司 Multi-robot intelligent traffic control method and device
CN113485341B (en) * 2021-07-12 2024-03-05 湛江科技学院 Path planning method and device based on double-machine mutual interference and computer equipment
EP4202588A1 (en) * 2021-12-22 2023-06-28 Mobile Industrial Robots A/S Detection of an occurring deadlock conflict in a robot fleet of autonomous mobile robots
CN114326753B (en) * 2022-03-07 2022-06-24 杭州蓝芯科技有限公司 Deadlock detection method for multiple robots in regulation and control area
CN115167477A (en) * 2022-08-23 2022-10-11 广东爱吉尔机器人科技有限公司 Resource-limited central centralized dynamic path planning method and electronic equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102865877A (en) * 2012-10-08 2013-01-09 无锡普智联科高新技术有限公司 Solution for multiple mobile robot path conflict based on dense storage regions
CN106251016A (en) * 2016-08-01 2016-12-21 南通大学 A kind of parking system paths planning method based on dynamic time windows
WO2017095493A2 (en) * 2015-09-11 2017-06-08 The Trustees Of The University Of Pennsylvania Systems and methods for generating safe trajectories for multi-vehicle teams
CN108268016A (en) * 2018-01-19 2018-07-10 广东美的智能机器人有限公司 The method for collision management and system of multiple mobile robot
CN108279675A (en) * 2018-01-19 2018-07-13 广东美的智能机器人有限公司 The method for collision management and system of multiple mobile robot

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106556406B (en) * 2016-11-14 2020-02-14 北京特种机械研究所 Multi-AGV scheduling method
CN106843218A (en) * 2017-02-16 2017-06-13 上海理工大学 Workshop homing guidance device dispatching method
CN107179078B (en) * 2017-05-24 2020-04-03 合肥工业大学 AGV path planning method based on time window optimization
CN107452218B (en) * 2017-09-22 2020-04-03 西北工业大学 Intersection centralized scheduling method for multi-unmanned vehicle formation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102865877A (en) * 2012-10-08 2013-01-09 无锡普智联科高新技术有限公司 Solution for multiple mobile robot path conflict based on dense storage regions
WO2017095493A2 (en) * 2015-09-11 2017-06-08 The Trustees Of The University Of Pennsylvania Systems and methods for generating safe trajectories for multi-vehicle teams
CN106251016A (en) * 2016-08-01 2016-12-21 南通大学 A kind of parking system paths planning method based on dynamic time windows
CN108268016A (en) * 2018-01-19 2018-07-10 广东美的智能机器人有限公司 The method for collision management and system of multiple mobile robot
CN108279675A (en) * 2018-01-19 2018-07-13 广东美的智能机器人有限公司 The method for collision management and system of multiple mobile robot

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
VICTOR J. BLUE ET AL.: "Cellular Automata Microsimulation for Modeling Bi-directional Pedestrian Walkways", TRANSPORTATION RESEARCH PART B., 31 December 2001 (2001-12-31), pages 295 - 302, XP055630735 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112990806A (en) * 2019-12-17 2021-06-18 北京京东乾石科技有限公司 Method and system for dispatch control of transportation equipment
CN111061272A (en) * 2019-12-24 2020-04-24 广东嘉腾机器人自动化有限公司 AGV trolley control method and device, electronic equipment and storage medium
CN111798041A (en) * 2020-06-18 2020-10-20 北京卫星制造厂有限公司 AGV intelligent scheduling method based on time window
CN113671965B (en) * 2021-08-24 2024-03-12 同济大学 Path planning method and device
CN113671965A (en) * 2021-08-24 2021-11-19 同济大学 Path planning method and device
CN113945216A (en) * 2021-10-15 2022-01-18 上海懒书智能科技有限公司 Path planning and managing system and method of mobile machine equipment
CN114281080A (en) * 2021-12-22 2022-04-05 杭州蓝芯科技有限公司 Method for solving deadlock in AMR (adaptive multi-rate) scheduling system
CN114281080B (en) * 2021-12-22 2024-03-15 杭州蓝芯科技有限公司 Method for deadlock removal in AMR scheduling system
WO2024066072A1 (en) * 2022-09-28 2024-04-04 劢微机器人科技(深圳)有限公司 Agv deadlock problem processing method and apparatus, device, and storage medium
CN116880476A (en) * 2023-07-05 2023-10-13 湘南学院 AGVS operation control method based on traffic control
CN116880476B (en) * 2023-07-05 2024-01-19 湘南学院 AGVS operation control method based on traffic control
CN117325185A (en) * 2023-11-27 2024-01-02 成都越凡创新科技有限公司 Method for removing deadlock of mobile robot and scheduling equipment
CN117325185B (en) * 2023-11-27 2024-04-09 成都越凡创新科技有限公司 Method for removing deadlock of mobile robot and scheduling equipment

Also Published As

Publication number Publication date
CN108279675A (en) 2018-07-13

Similar Documents

Publication Publication Date Title
WO2019141218A1 (en) Conflict management method and system for multiple mobile robots
WO2019141221A1 (en) Conflict management method and system for multiple mobile robots
WO2019141222A1 (en) Conflict management method and system for multiple mobile robots
WO2019141224A1 (en) Conflict management method and system for multiple mobile robots
WO2019141227A1 (en) Method and system for planning routes of plurality of moving robots
WO2019141217A1 (en) Conflict management method and system for multiple mobile robots
CN108267149B (en) Conflict management method and system for multiple mobile robots
RU2589869C2 (en) Method and system for efficient scheduling for plurality of automated nonholonomic vehicles using scheduler of coordinated routes
EP3610340B1 (en) Roadmap annotation for deadlock-free multi-agent navigation
CN108268038B (en) Dispatching method and system for multiple mobile robots
US10994418B2 (en) Dynamically adjusting roadmaps for robots based on sensed environmental data
WO2019141223A1 (en) Path planning method and system for mobile robot
CN102865877B (en) Solution for multiple mobile robot path conflict based on dense storage regions
CN108268037B (en) Conflict management method and system for multiple mobile robots
WO2019141220A1 (en) Mobile robot path planning method and system
CN106548247B (en) Traffic control method of mobile robot system
CN110867095B (en) Method for coordinating and monitoring objects
EP3262475A1 (en) Resolution of route conflict
CN109048909A (en) Minor matters formula path dispatching method, device, background server and the first robot
CN114611896A (en) Robot task scheduling method, computer device and storage medium
CN108287546A (en) The method for collision management and system of multiple mobile robot
Lian et al. Improved coding landmark-based visual sensor position measurement and planning strategy for multiwarehouse automated guided vehicle
CN116700298B (en) Path planning method, system, equipment and storage medium
Sharma Control classification of automated guided vehicle systems
Xu et al. Dynamic spare point application based coordination strategy for multi-AGV systems in a WIP warehouse environment

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 04/12/2020)

122 Ep: pct application non-entry in european phase

Ref document number: 19741423

Country of ref document: EP

Kind code of ref document: A1