WO2019141228A1 - 多移动机器人的冲突管理方法及系统 - Google Patents

多移动机器人的冲突管理方法及系统 Download PDF

Info

Publication number
WO2019141228A1
WO2019141228A1 PCT/CN2019/072271 CN2019072271W WO2019141228A1 WO 2019141228 A1 WO2019141228 A1 WO 2019141228A1 CN 2019072271 W CN2019072271 W CN 2019072271W WO 2019141228 A1 WO2019141228 A1 WO 2019141228A1
Authority
WO
WIPO (PCT)
Prior art keywords
mobile robot
node
mobile
time
robots
Prior art date
Application number
PCT/CN2019/072271
Other languages
English (en)
French (fr)
Inventor
刘清
Original Assignee
库卡机器人(广东)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 库卡机器人(广东)有限公司 filed Critical 库卡机器人(广东)有限公司
Publication of WO2019141228A1 publication Critical patent/WO2019141228A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes

Definitions

  • the present invention relates to the field of robots, and in particular to a method and system for conflict management of multiple mobile robots.
  • 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 tasks more accurately, but it is very easy to cause the robot to run path conflicts. Usually, the optimal solution is found, but the calculation is large and the real-time performance is poor. No better solution can be proposed.
  • An object of the embodiments of the present invention is to provide a collision management method and system for a multi-mobile robot, which is to solve at least a path conflict problem caused by centralized scheduling of multiple mobile robots in a dense area.
  • an embodiment of the present invention provides a conflict management method for a multiple 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, And the predetermined area includes a plurality of node areas; establishing a node resource table according to a current location of the plurality of mobile robots and the planned path, wherein the node resource table records a mobile robot ID, a node area ID, and an occupation time Corresponding relationship between the three, and any two of the plurality of mobile robot IDs do not jointly correspond to the same occupied time under the same node area ID in the node resource table; controlling the plurality of mobile robots to respectively follow The occupied time corresponding to the respective mobile robot IDs in the node resource table, occupying the node area of the corresponding node area ID; acquiring the actual time of occupying the node area when the plurality of mobile robots actually execute the planned path; And determining whether
  • the sending the speed control command to the first mobile robot to adjust the moving speed of the first mobile robot includes: when the first mobile robot does not reach the first node in the corresponding occupied time And transmitting an acceleration command to the first mobile robot to accelerate the movement of the first mobile robot; and when the first mobile robot has passed the first node area during the corresponding occupied time, Sending a deceleration command to the first mobile robot to cause the first mobile robot to decelerate.
  • the establishing a node resource table according to the current location of the plurality of mobile robots and the planned path includes: acquiring a desired moving speed of each of the plurality of mobile robots; determining, according to the desired moving speed, the determining a unit distance that each of the plurality of mobile robots can respectively pass in a unit time; determining the resource at the node according to the current position of the plurality of mobile robots, the unit distance, the planned path, and the size of the node area
  • the table indicates the node area ID and the corresponding occupied time respectively assigned to each of the mobile robot IDs.
  • the sending the speed control command to the first mobile robot to adjust the moving speed of the first mobile robot comprises: acquiring a first moving speed of the first mobile robot at a current actual time; Determining corresponding acceleration information for the first desired speed, the first moving speed, and the window time of the first mobile robot; transmitting a speed control command including the acceleration information to the first mobile robot to The first mobile robot performs an acceleration movement or a deceleration movement in accordance with the acceleration information in a next window time of the current actual time.
  • 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.
  • Another aspect of the embodiments of the present invention provides a 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 bypass the predetermined area An obstacle within the block, and the predetermined area includes a plurality of node areas; a node resource table establishing unit configured to establish a node resource table according to a current location of the plurality of mobile robots and the planned path, wherein the node resource table Corresponding relationship between the mobile robot ID, the node area ID, and the occupation time is recorded, and any two of the plurality of mobile robot IDs do not jointly correspond to the same node area ID in the node resource table.
  • control occupation unit is configured to control the plurality of mobile robots to occupy the node area corresponding to the node area ID according to the occupation time corresponding to the respective mobile robot IDs in the node resource table;
  • actual time acquisition unit Configuring to acquire the plurality of mobile robots each in actual execution of the When the path is planned, the actual time of the node area is occupied;
  • the determining unit is configured to determine, according to the node resource table and the actual time, whether the first mobile robot corresponding to the first mobile robot ID does not occupy the corresponding occupied time The first node area of the node area ID;
  • the speed control unit is configured to, if present, send a speed control command to the first mobile robot to adjust the moving speed of the first mobile robot.
  • the speed control unit includes: an acceleration speed adjustment module, configured to send an acceleration instruction to the first when the first mobile robot does not reach the first node area in the corresponding occupied time Moving the robot to accelerate the movement of the first mobile robot; and decelerating the speed control module, configured to send a deceleration command to the first mobile robot when the corresponding occupied time has passed through the first node area The first mobile robot moves the first mobile robot to decelerate.
  • an acceleration speed adjustment module configured to send an acceleration instruction to the first when the first mobile robot does not reach the first node area in the corresponding occupied time Moving the robot to accelerate the movement of the first mobile robot
  • decelerating the speed control module configured to send a deceleration command to the first mobile robot when the corresponding occupied time has passed through the first node area The first mobile robot moves the first mobile robot to decelerate.
  • the node resource table establishing unit includes: a desired moving speed acquiring module configured to acquire a desired moving speed of each of the plurality of mobile robots; and a unit distance determining module configured to determine according to the expected moving speed a unit distance that each of the plurality of mobile robots can respectively pass in a unit time; the resource allocation module is configured to be configured according to the current position of the plurality of mobile robots, the unit distance, the planned path, and the node area The size determines a node area ID and a corresponding occupation time respectively allocated for each of the mobile robot IDs in the node resource table.
  • the speed control unit includes: a first speed acquiring module configured to acquire a first moving speed of the first mobile robot at a current actual time; and an acceleration information determining module configured to be configured according to the first a first desired speed of the mobile robot, the first moving speed, and a window time, determining corresponding acceleration information; the speed control command sending module is configured to send a speed control command including the acceleration information to the first mobile robot And causing the first mobile robot to perform an acceleration movement or a deceleration movement according to the acceleration information in a next window time of the current actual time.
  • 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; and the planning path receiving module is configured to 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.
  • 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
  • the planning path receiving module is configured to 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.
  • the current location and the planned path of the mobile robot are acquired, and the node resource table is established according to the current location and the planned path of the plurality of mobile robots, and between any two mobile robot IDs in the node resource table.
  • the same occupation time under the same node area ID is not matched, and the plurality of mobile robots are further controlled to occupy the node area of the corresponding node area ID according to the occupation time corresponding to the respective mobile robot IDs in the node resource table. Therefore, in the scheduling process of the mobile robot, the node resource table including the time variable is introduced, which avoids the situation that two robots are in the same node at the same time point, and eliminates the path conflict of the mobile robot when executing the planned path.
  • the implementation of the embodiment of the present invention also implements The rational allocation of resources makes it possible to efficiently utilize the spatial resources of the closed area and increase the number of concurrent tasks without conflict, and optimize the transportation efficiency of mobile robots in the space.
  • the actual time occupied by the node area when the mobile robot actually executes the path is obtained, and according to the actual time, it is determined whether the mobile robot is consistent with the node area corresponding to the node resource table, and when the inconsistency is sent, the speed control command is sent to the mobile robot. By adjusting the moving speed of the mobile robot, it is ensured that the actual operation of the mobile robot can be consistent with the allocation of the node resource table, and the probability of occurrence of the conflict is reduced.
  • FIG. 1 is an example of a map of a dense area of a collision management method for a multi-mobile robot according to an embodiment of the present invention
  • FIG. 2 is a flowchart of a 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 a node resource table regarding a three-dimensional coordinate axis
  • FIG. 6 is an example of a flow chart of establishing a node resource table according to an embodiment of the present invention.
  • FIG. 7 is an example of a node resource table according to an embodiment of the present invention.
  • FIG. 8 is a schematic diagram showing a specific execution flow of S206 in the conflict management method of the multiple mobile robot of FIG. 1;
  • FIG. 9 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 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 in the embodiment of the present invention may be an AGV (Automated Guided Vehicle), wherein the obtaining method includes: S301, a server A scheduling command may be transmitted to each mobile robot, 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.
  • AGV Automate Guided Vehicle
  • 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 node resource table records a correspondence between the mobile robot ID, the node area ID, and the occupied time, and any two of the plurality of mobile robot IDs do not jointly correspond to the same node area ID in the node resource table. The same occupation time.
  • the node area is managed as an assignable resource, and the occupation time of the node area is introduced as a variable to maintain it, as shown in FIG. 5, in the coordinates, the x and y axes Represents the position in the two-dimensional space, respectively, and the z-axis is the time coordinate.
  • the three-dimensional coordinates of the mobile robot at a certain moment can be calculated according to the planned path of the mobile robot. For example, the mobile robot can be displayed from the current position node region S to the three-dimensional coordinate axis shown in FIG. The trajectory and coordinates of the target node region T at various times.
  • the mobile robot since the mobile robot is a process from entering to leaving a certain node, it takes a period of time, for example, the occupied time may have a certain number of unit time, and thus the occupied time in the node resource table may refer to the time period.
  • the mobile robot A0 in the process in which the mobile robot A0 runs from the current position node area S to the target node area T, it autonomously circumvents the stationary obstacle, but cannot eliminate collision collisions with other running mobile robots;
  • an embodiment of the present invention provides a node resource table, which records a correspondence between a mobile robot ID, a node area ID, and an occupation time, and any two of the plurality of mobile robot IDs are in a node resource.
  • each mobile robot may be configured with a unique mobile robot ID (for example, 10A, 10B, 10C, etc.), and each node area may also be configured with a unique node area ID (as shown in FIG. 4). Shown).
  • the mobile robot may be configured to pass only from the allocated node area. Specifically, the mobile robot may perform the movement only when receiving an instruction about the next allocated node area from the server, even though it may already The operating path is planned independently.
  • FIG. 6 is a flowchart of establishing a node resource table according to an embodiment of the present invention, including: S401: a server acquires a desired moving speed of each of a plurality of mobile robots; S402. The server determines, according to a desired moving speed, a plurality of mobile robots. a unit distance that can be passed in a unit time; S403. The server determines a node area ID respectively allocated to each mobile robot ID in the node resource table according to the current position, the unit distance, the planned path, and the size of the node area of the plurality of mobile robots. And the corresponding occupation time.
  • the server may calculate the distance that the mobile robot passes in a unit time by changing the historical position coordinates of each mobile robot, and determine the desired moving speed (the moving speed of each mobile robot may be different); On the one hand, the server may also be determined by comprehensively analyzing the dynamic performance parameters of the mobile robot and the environmental parameters of the closed area. For example, when the mobile robot of the same model is selected, the same moving speed may be selected for the multiple robots. So that we can calculate the distance traveled by the mobile robot in a time unit t x :
  • the position of the node area where all the mobile robots are located at any time can be calculated. For example, when the moving distance of the first mobile robot A1 per unit time is exactly one node area, it may be for one unit time. The next node area is allocated, and the corresponding occupied time can be occupied by one unit time or other time length. In the normal case, it is only necessary to allocate one unit time for the next node area of the first mobile robot A1, but there may be a special path conflict.
  • the node area and the occupation time are also allocated to the second mobile robot A0 in the above manner, but there may be a case where the first mobile robot A1 and the second mobile robot A0 occupy the same node area at the same occupation time, and when it is detected When such a situation occurs, it is determined that there is a risk of conflict or collision in the path plan at this time, and the node area ID and the corresponding occupation time should be newly allocated for the second mobile robot A0 that finds the resource conflict to plan for the second mobile robot A0. The path is adjusted to avoid conflicts.
  • the first mobile node may be allocated a plurality of first node regions according to respective current positions, state transit times, and planned paths of the first mobile robot and the second robot. Corresponding first occupation time, and allocating a plurality of second node regions and corresponding second occupation time for the second mobile robot; and judging one of the first node regions when one of the first node regions is identical to one of the second node regions Whether the first occupied time corresponding to the first node area and the second occupied time corresponding to one of the second node areas overlap; if yes, one of the second node areas that overlaps with the mark is a conflicting node area, and is at the node The node area ID and the corresponding occupied time are newly allocated to the second mobile robot in the resource table. Thereby, any two of the plurality of mobile robot IDs can be effectively realized, and the same occupied time under the same node area ID is not collectively associated in the node resource table.
  • 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.
  • FIG. 7 is an example of a node resource table according to an embodiment of the present invention, which is a result obtained by performing a dimensionality reduction process on a node resource table, which exemplarily shows that the current time is 0 in the node area 73.
  • the mobile robot A0 plans the resource allocation situation to the node No. 31 in the target area, and the resource allocation situation of the mobile robot A1 located at node 55 at the current time 0 to the node No. 19 of the target node.
  • each node ID is unique to a resource at a certain time, and can be identified by a hash table, such as node area 73 occupying time 1 and number 73 occupying time 2 Node areas are different resources.
  • the resources allocated for different mobile robots (for example, A0 and A1) do not coincide, that is, any two of the plurality of mobile robot IDs do not collectively correspond to the same node region ID in the node resource table. Take up time.
  • the server may send a control command to the mobile robot, and after receiving the control command, the mobile robot can parse the node area information matching the node resource table and the corresponding occupied time information from the control command. Further, when the planning path is executed after the mobile robot, the mobile robot needs to occupy the corresponding node area in the parsed occupied time.
  • the inventor of the present application found in the course of practicing the present application that the moving speed of the mobile robot when performing the planned path may not be the speed of the movement acquired in advance (the historical position calculation or the dynamic performance parameter analysis as described above). The same, even due to environmental factors, can cause the actual moving speed to differ greatly from the calculated or acquired moving speed. In a case, the operation of the actual mobile robot will not and cannot operate according to the node resource table, which may easily cause the node resource table to fail. At this point, in order to make the calculated node resources work effectively, it is necessary to make some adjustments. In view of this, in the S204-S206 of the method of the embodiment of the present invention, a corresponding solution based on the speed regulation command to adjust the moving speed of the mobile robot is proposed.
  • the server may obtain the actual time by receiving the location information reported by the mobile robot and the corresponding time in real time.
  • S205 Determine, according to the node resource table and the actual time, whether the first mobile robot corresponding to the first mobile robot ID does not occupy the first node area of the corresponding node area ID in the corresponding occupied time.
  • the mobile robot A0 should reach the node area 53 at time 2, but finds that the mobile robot A0 is in the node area 43 or 63 at time 2, and it is necessary to move The robot makes a corresponding speed adjustment operation to restore its speed to the previously calculated desired speed to ensure the validity of the node resource table.
  • the server sends an acceleration command to the mobile robot A0, and at the mobile robot A0.
  • the acceleration command After receiving the acceleration command, the acceleration command is recognized to perform the acceleration movement; on the other hand, when the mobile robot A0 has passed the node 53 area at the corresponding occupied time 2, the server may send a deceleration command to the mobile robot A0, The mobile robot A0 is caused to recognize the deceleration command and decelerate accordingly.
  • FIG. 8 shows an example of a specific execution flow diagram of S206, specifically including:
  • S2061 The server acquires a first moving speed of the first mobile robot at the current actual time.
  • S2062 The server determines corresponding acceleration information according to the first desired speed, the first moving speed, and the window time for the first mobile robot.
  • the server sends a speed control command including acceleration information to the first mobile robot, so that the first mobile robot performs an acceleration movement or a deceleration movement according to the acceleration information in a next window time of the current actual time.
  • the embodiment shown in FIG. 8 can be regarded as further disclosure and optimization of the embodiment shown in FIG. 2.
  • how to make the actual moving speed of the mobile robot return to the desired moving speed as soon as possible is disclosed. For example, the desired speed is restored within a window time period.
  • window time means that an event or thing can be processed or reacted during this time period.
  • the server allocates resources for a plurality of robots, the mobile robot is controlled in units of window time.
  • ⁇ t is set equal to the window time Ts, such that each window time occupies a new node if desired.
  • ⁇ t>Ts that is to say, the speed v0 of the mobile robot is slower than the ideal speed
  • acceleration is required at this time.
  • it should be allocated. Acceleration command, and the acceleration corresponding to the acceleration command it is also possible to calculate the case where the deceleration is controlled when the actual movement of the mobile robot is faster than the desired state, and will not be described here.
  • a conflict management system 90 for a multi-mobile robot includes: an initial information acquiring unit 901 configured to acquire a current position and a planned path of each of the plurality of mobile robots, wherein the planned path can bypass the predetermined area An internal obstacle, and the predetermined area includes a plurality of node areas; the node resource table establishing unit 902 is configured to establish a node resource table according to the current location of the plurality of mobile robots and the planned path, wherein the node resource The correspondence between the mobile robot ID, the node area ID, and the occupation time is recorded in the table, and any two of the plurality of mobile robot IDs do not jointly correspond to the same node area ID in the node resource table.
  • control occupation unit 903 is configured to control the plurality of mobile robots to occupy the node area of the corresponding node area ID according to the occupation time corresponding to the respective mobile robot IDs in the node resource table;
  • the obtaining unit 904 is configured to acquire, by the plurality of mobile robots, the actual execution of the planning
  • the determining unit 905 is configured to determine, according to the node resource table and the actual time, whether the first mobile robot corresponding to the first mobile robot ID does not occupy the corresponding occupied time.
  • the first node area of the node area ID; the speed adjustment unit 906 is configured to transmit a speed control command to the first mobile robot if present to adjust the moving speed of the first mobile robot.
  • the speed control unit includes: an acceleration speed adjustment module configured to send an acceleration command to the first mobile robot when the corresponding occupancy time does not reach the first node area a first mobile robot to accelerate the movement of the first mobile robot; and a deceleration speed control module configured to send a deceleration when the first mobile robot has passed the first node area when the corresponding occupied time has passed Directing to the first mobile robot to cause the first mobile robot to decelerate.
  • the node resource table establishing unit includes: a desired moving speed acquiring module configured to acquire a desired moving speed with respect to each of the plurality of mobile robots; a unit distance determining module configured to be according to the desired moving speed Determining a unit distance that each of the plurality of mobile robots can respectively pass in a unit time; the resource allocation module is configured to be configured according to the current position of the plurality of mobile robots, the unit distance, the planned path, and the node The size of the area determines the node area ID and the corresponding occupied time respectively allocated for each of the mobile robot IDs in the node resource table.
  • the speed control unit includes: a first speed acquisition module configured to acquire a first movement speed of the first mobile robot at a current actual time; and an acceleration information determination module configured to Determining, according to the first desired speed of the first mobile robot, the first moving speed and the window time, determining corresponding acceleration information; the speed control command sending module is configured to send a speed control command including the acceleration information to the first The robot is moved to cause the first mobile robot to perform an acceleration movement or a deceleration movement according to the acceleration information in a next window time of the current actual time.
  • 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.
  • 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 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. .

Landscapes

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

Abstract

一种多移动机器人(A0、A1)的冲突管理方法及系统(90)。移动机器人(A0、A1)的冲突管理方法包括:获取移动机器人(A0、A1)当前位置和规划路径(S201);根据移动机器人(A0、A1)的当前位置和规划路径建立节点资源表(S202);按照节点资源表,控制移动机器人(A0、A1)占用相应的节点区域ID的节点区域(N1、N2) (S203);获取移动机器人(A0、A1)各自在实际执行规划路径时占用节点区域(N1、N2)的实际时间(S204);判断是否存在第一移动机器人ID所对应的第一移动机器人(A1)在对应的占用时间未占用相应的节点区域ID的第一节点区域(S205);若存在,则发送调速指令至第一移动机器人(A1),以调整第一移动机器人(A1)的移动速度(S206)。由此保障了移动机器人(A0、A1)的实际运行能够与节点资源表的分配保持一致,并降低了冲突发生的概率。

Description

多移动机器人的冲突管理方法及系统
相关申请的交叉引用
本申请要求2018年01月19日提交的中国专利申请201810053991.8的权益,该申请的内容通过引用被合并于本文。
技术领域
本发明涉及机器人领域,具体地涉及一种多移动机器人的冲突管理方法及系统。
背景技术
在密集区域(例如物流仓库区域)内布设多个移动机器人,并由这些移动机器人来完成诸如搬运货物的任务,以替代人工劳动,是目前物联网领域的研究重点。
为了避免密集区域中的多个移动机器人之间在作业时候的碰撞,目前一般采用了如下两种不同的处理方案:其一,是通过机器人当前的局部环境信息,让机器人具有良好的冲突消解能力;其二,是集中管理式冲突消解,其主要是通过将机器人的运动路径分段来消除冲突。
但是,本申请的发明人在实践本申请的过程中发现上述现有技术中至少存在如下缺陷:其一,分布式方法虽然运算简单、实时性和灵活性强,但由于会出现局部极点,往往无法完整地完成任务;其二,集中管理式方法能够较精确地执行任务,但极容易导致机器人运行路径冲突,通常要寻找最优解,但计算量很大、实时性差,对此目前业界仍然无法提出较佳的解决方案。
发明内容
本发明实施例的目的是提供一种多移动机器人的冲突管理方法及系统,用以至少解决多移动机器人在密集区域内集中调度所导致的路径冲突问题。
为了实现上述目的,本发明实施例提供一种多移动机器人的冲突管理方法,包括:获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,以及所述预定区域包括多个节点区域;根据所述多个移动机器人的当前位置和所述规划路径建立节点资源表,其中所述节点资源表中记录有移动机器人ID、节点区域ID和占用时间三者之间的对应关系,以及多个所述移动机器人ID中的任意两者 在所述节点资源表中不共同对应同一节点区域ID下的同一占用时间;控制所述多个移动机器人分别按照所述节点资源表中各自的移动机器人ID所对应的占用时间,占用相应的节点区域ID的节点区域;获取所述多个移动机器人各自在实际执行所述规划路径时占用节点区域的实际时间;以及根据所述节点资源表和所述实际时间,判断是否存在第一移动机器人ID所对应的第一移动机器人在对应的占用时间未占用相应的节点区域ID的第一节点区域;若存在,则发送调速指令至所述第一移动机器人,以调整所述第一移动机器人的移动速度。
具体的,所述发送调速指令至所述第一移动机器人以调整所述第一移动机器人的移动速度包括:当所述第一移动机器人在所述对应的占用时间未到达所述第一节点区域时,发送加速指令至所述第一移动机器人,以令所述第一移动机器人加速移动;以及当所述第一移动机器人在所述对应的占用时间已经通过所述第一节点区域时,发送减速指令至所述第一移动机器人,以令所述第一移动机器人减速移动。
具体的,所述根据所述多个移动机器人的当前位置和所述规划路径建立节点资源表包括:获取关于所述多个移动机器人各自的期望移动速度;根据所述期望移动速度,确定所述多个移动机器人在单位时间内各自分别能够通过的单位距离;根据所述多个移动机器人的当前位置、所述单位距离、所述规划路径以及所述节点区域的大小,确定在所述节点资源表中为各个所述移动机器人ID分别分配的节点区域ID和相应的占用时间。
可选的,所述发送调速指令至所述第一移动机器人以调整所述第一移动机器人的移动速度包括:获取所述第一移动机器人在当前的实际时间下的第一移动速度;根据针对所述第一移动机器人的第一期望速度、所述第一移动速度和窗口时间,确定相应的加速度信息;发送包含所述加速度信息的调速指令至所述第一移动机器人,以令所述第一移动机器人在所述当前的实际时间的下一个窗口时间内按照所述加速度信息执行加速移动或减速移动。
可选的,所述获取多个移动机器人各自的当前位置和规划路径包括:向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。
本发明实施例另一方面提供一种多移动机器人的冲突管理系统,包括:初始信息获取单元,配置为获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径 能够绕开预定区域内的障碍物,以及所述预定区域包括多个节点区域;节点资源表建立单元,配置为根据所述多个移动机器人的当前位置和所述规划路径建立节点资源表,其中所述节点资源表中记录有移动机器人ID、节点区域ID和占用时间三者之间的对应关系,以及多个所述移动机器人ID中的任意两者在所述节点资源表中不共同对应同一节点区域ID下的同一占用时间;控制占用单元,配置为控制所述多个移动机器人分别按照所述节点资源表中各自的移动机器人ID所对应的占用时间,占用相应的节点区域ID的节点区域;实际时间获取单元,配置为获取所述多个移动机器人各自在实际执行所述规划路径时占用节点区域的实际时间;判断单元,配置为根据所述节点资源表和所述实际时间,判断是否存在第一移动机器人ID所对应的第一移动机器人在对应的占用时间未占用相应的节点区域ID的第一节点区域;调速单元,配置为若存在,则发送调速指令至所述第一移动机器人,以调整所述第一移动机器人的移动速度。
可选的,所述调速单元包括:加速调速模块,配置为当所述第一移动机器人在所述对应的占用时间未到达所述第一节点区域时,发送加速指令至所述第一移动机器人,以令所述第一移动机器人加速移动;以及减速调速模块,配置为当所述第一移动机器人在所述对应的占用时间已经通过所述第一节点区域时,发送减速指令至所述第一移动机器人,以令所述第一移动机器人减速移动。
可选的,所述节点资源表建立单元包括:期望移速获取模块,配置为获取关于所述多个移动机器人各自的期望移动速度;单位距离确定模块,配置为根据所述期望移动速度,确定所述多个移动机器人在单位时间内各自分别能够通过的单位距离;资源分配模块,配置为根据所述多个移动机器人的当前位置、所述单位距离、所述规划路径以及所述节点区域的大小,确定在所述节点资源表中为各个所述移动机器人ID分别分配的节点区域ID和相应的占用时间。
可选的,所述调速单元包括:第一速度获取模块,配置为获取所述第一移动机器人在当前的实际时间下的第一移动速度;加速信息确定模块,配置为根据针对所述第一移动机器人的第一期望速度、所述第一移动速度和窗口时间,确定相应的加速度信息;调速指令发送模块,配置为发送包含所述加速度信息的调速指令至所述第一移动机器人,以令所述第一移动机器人在所述当前的实际时间的下一个窗口时间内按照所述加速度信息执行加速移动或减速移动。
具体的,所述初始信息获取单元包括:调度命令发送模块,配置为向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息; 规划路径接收模块,配置为响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。
通过上述技术方案,一方面,获取移动机器人的当前位置和规划路径,并根据多个移动机器人的当前位置和规划路径建立节点资源表,并且在节点资源表中的任意两个移动机器人ID之间不会对应同一节点区域ID下的同一占用时间,进一步地控制多个移动机器人分别按照节点资源表中各自的移动机器人ID所对应的占用时间来占用相应的节点区域ID的节点区域。由此,在对移动机器人的调度过程中,引入了包含时间变量的节点资源表,避免了在同一时间点两个机器人同处一个节点的情形,消除了移动机器人在执行规划路径时的路径冲突及相碰撞的问题;并且,在本发明实施例中对节点资源表的维护能够实现对处理器资源的低消耗,具有较强的实时性;另外,通过本发明实施例的实施,还实现了对资源的合理分配,使得在不发生冲突的前提下,高效地利用密闭区域的空间资源和增加了并发任务的数量,优化了空间内移动机器人的运输效率。另一方面,获取移动机器人实际执行路径时占用节点区域的实际时间,并根据该实际时间判断移动机器人是否与节点资源表所对应的节点区域一致,并在不一致时发送调速指令至移动机器人,使得通过对移动机器人的移速的调整,保障了移动机器人的实际运行能够与节点资源表的分配保持一致性,并降低了冲突发生的概率。
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
图1是实施本发明一实施例的多移动机器人的冲突管理方法的密集区域的地图的示例;
图2是本发明一实施例的多移动机器人的冲突管理方法的流程图;
图3是本发明一实施例中关于获取移动机器人的规划路径方法的流程图;
图4是本发明一实施例中关于预定区域的节点分布表的示例;
图5是关于三维坐标轴的节点资源表的示例;
图6是本发明一实施例的建立节点资源表的流程图的示例;
图7是本发明一实施例的节点资源表的示例;
图8是图1的多移动机器人的冲突管理方法中的S206的具体执行流程示意图;
图9是本发明一实施例的多移动机器人的冲突管理系统的结构框图。
附图标记说明
A1、A0 移动机器人            B1、B2 障碍物
N1、N2 节点                  90 冲突管理系统
901 初始信息获取单元        902 节点资源表建立单元
903 控制占用单元            904 实际时间获取单元
905 判断单元                906 调速单元
具体实施方式
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
如图1所示,在实施本发明一实施例的多移动机器人的冲突管理方法的密集区域的地图中标注了多个障碍物B1、B2等,多个移动机器人A0、A1等,以及多个节点区域N1、N2等。其中,该密集区域可以是根据需要所预定的,例如其可以是指代仓库内的区域,该多个移动机器人A0、A1可以是指代多个物流机器人,以及通过该移动机器人A0、A1的运行移动,可以实现搬运货物,但是在多个物流机器人同时运行的时候,可能会导致冲突。其中,不同的节点区域N1、N2的大小可以是相等的,其可以通过对密集区域的地图作等比例划分所形成的。需说明的是,本发明实施例的冲突管理方法可以是由集中管理该多个移动机器人的服务器所执行的。
如图2所示,本发明一实施例的多移动机器人的冲突管理方法包括:
S201、获取多个移动机器人各自的当前位置和规划路径,其中规划路径能够绕开预定区域内的障碍物,以及预定区域包括多个节点区域。
具体的,关于规划路径的获取方式,可以是由移动机器人所自主确定,并由其上传至服务器的,也可以是服务器通过计算所得出的,且以上都属于本发明的保护范围内。
参见图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都是障碍物,因此需要采取防冲突措施以避开其他移动机器人以防止相撞。关于该冲突管理措施的细节,具体将在下文中展开。
S202、根据多个移动机器人的当前位置和规划路径建立节点资源表。其中节点资源表中记录有移动机器人ID、节点区域ID和占用时间三者之间的对应关系,以及多个移动机器人ID中的任意两者在节点资源表中不共同对应同一节点区域ID下的同一占用时间。
在本发明实施例中,将节点区域作为一种可分配的资源进行管理,并引入了关于节点区域的占用时间作为变量对其进行维护,如图5所示,在坐标中,x、y轴分别表示二维空间中位置,而z轴为时间坐标。随着时间的推移,可以根据移动机器人的规划路径,计算出移动机器人在某一时刻的三维坐标,例如可以在图5所示的三维坐标轴上显示出移动机器人从当前位置节点区域S运行到目标节点区域T在各个时刻下的轨迹及坐标。具体的,由于移动机器人从进入到离开某一个节点是一个过程,需要一段时间进行,例如占用时间可以是具有一定数量的单位时间,因此节点资源表中的占用时间可以是指代时间段。如上所述的,在移动机器人A0从当前位置节点区域S运行到目标节点区域T的过程中,其会自主绕开静止障碍物,但是无法消除与其他运行中的移动机器人之间的碰撞冲突;为此,本发明实施例提供了一种节点资源表,其记录了移动机器人ID、节点区域ID和占用时间三者之间的对应关系,并且多个移动机器人ID中的任意两者在节点资源表中不共同对应同一节点区域ID下的同一占用时间。可以理解的是,每一移 动机器人可以是被配置有唯一的移动机器人ID(例如10A、10B、10C等),以及每一节点区域也可以是被配置有唯一的节点区域ID(如图4所示的)。其中,移动机器人可以是被配置成只从经分配的节点区域通过,具体的,可以是移动机器人只有从服务器接收到关于下一分配的节点区域的指令时,才会执行移动,即使其可能已经自主规划好了运行路径。
如图6示出了本发明一实施例的建立节点资源表的流程图,包括:S401、服务器获取多个移动机器人各自的期望移动速度;S402、服务器根据期望移动速度,确定多个移动机器人在单位时间内分别能够通过的单位距离;S403、服务器根据多个移动机器人的当前位置、单位距离、规划路径以及节点区域的大小,确定在节点资源表中为各个移动机器人ID分别分配的节点区域ID和相应的占用时间。
具体的,一方面,可以是服务器可以通过对各个移动机器人的历史位置坐标变化,计算移动机器人在单位时间内通过的距离,据此确定期望移动速度(各个移动机器人的移动速度可以不同);另一方面,也可以是服务器通过对移动机器人的动力性能参数、密闭区域环境参数进行综合分析所确定的,例如当选定相同型号的移动机器人时,可以为该多个机器人选定相同移动速度v,这样就可以计算出在一个时间单位t x,移动机器人所通过的距离为:
S(N x)=v*t x
进一步的,可以计算出所有的移动机器人在任意时刻所处的节点区域的位置,例如当单位时间内的第一移动机器人A1的移动距离正好为一个节点区域时,可以是为其在一个单位时间分配下一个节点区域,以及相应的占用时间可以是一个单位时间或其他时间长度的占用。其中,在正常情况下,只需要为第一移动机器人A1的下一个节点区域分配一个单位时间即可,但可能存在特殊的路径冲突的情况。例如,同样使用上述方式为第二移动机器人A0分配节点区域和占用时间,但是可能存在第一移动机器人A1和第二移动机器人A0在同样的占用时间占用同样的节点区域的情况,以及当检测到这样的情况发生时,确定此时的路径规划存在冲突或相撞的风险,应当重新为发现资源冲突的第二移动机器人A0分配节点区域ID及相应的占用时间,以对第二移动机器人A0规划路径进行调整,以避免冲突。
可选的,在节点资源表的建立的过程中,可以是根据第一移动机器人和第二机器人各自的当前位置、状态通行时间、规划路径,为第一移动机器人分配多个第一节点区域及相应的第一占用时间,以及为第二移动机器人分配多个第二节点区域及相应的第二 占用时间;以及当存在其中一个第一节点区域与其中一个第二节点区域相同时,判断其中一个第一节点区域所对应的第一占用时间与其中一个第二节点区域所对应的第二占用时间是否存在重合;若是,则标记存在重合的其中一个第二节点区域为冲突节点区域,并在节点资源表中重新为第二移动机器人分配节点区域ID及相应的占用时间。由此,能够有效实现多个移动机器人ID中的任意两者,在节点资源表中不共同对应同一节点区域ID下的同一占用时间。
关于移动机器人的配置,可以是移动机器人只有从服务器接收到关于下一分配的节点区域的指令时,才会执行移动,即使其可能已经自主规划好了运行路径。
如图7所示的是本发明一实施例的节点资源表的示例,其是节点资源表进行降维处理之后的所得到的结果,其示例性地表示了当前时间0下位于73号节点区域的移动机器人A0规划前往目标区域31号节点的资源分配情况,以及当前时间0下位于55号节点的移动机器人A1规划前往目标节点19号节点的资源分配情况。从图7中可以看出来,每个节点ID对于某一个时间的资源都是唯一的,其可以通过哈希表进行标识,例如占用时间为1的73号节点区域和占用时间为2的73号节点区域就是不同的资源。并且,为不同的移动机器人之间(例如A0和A1)所分配的资源没有重合的,也就是多个移动机器人ID中的任意两者在节点资源表中不共同对应同一节点区域ID下的同一占用时间。
S203、控制多个移动机器人分别按照节点资源表中各自的移动机器人ID所对应的占用时间,占用相应的节点区域ID的节点区域。
作为示例,可以是服务器发送控制命令至移动机器人,移动机器人在接收到该控制命令之后,能够从控制命令中解析出匹配于节点资源表的节点区域信息和相应的占用时间信息。进一步的,在移动机器人之后执行规划路径时,移动机器人需要在所解析的占用时间占据了相应的节点区域。
但是,本申请的发明人在实践本申请的过程中发现:移动机器人在执行规划路径的时候的移动速度可能不会与预先获取的移动速度(如上所述的历史位置计算或动力性能参数分析)相同,甚至由于环境因素会导致实际移动速度与所计算或获取的移动速度相差很大。使得在一种情况下,会导致实际移动机器人的运行不会也无法按照节点资源表运作,容易导致节点资源表失效。此时,为了让已经计算好的节点资源能够有效运行,就势必作出一些调整。有鉴于此,在本发明实施例方法的S204-S206中提出了相应的基于调速指令以调整移动机器人移动速度的解决方案。
S204、获取多个移动机器人各自在实际执行规划路径时占用节点区域的实际时间。
具体的,可以是服务器通过实时接收移动机器人所上报的位置信息和相应的时间来获取该实际时间。
S205、根据节点资源表和实际时间,判断是否存在第一移动机器人ID所对应的第一移动机器人在对应的占用时间未占用相应的节点区域ID的第一节点区域。
S206、若存在,则发送调速指令至第一移动机器人,以调整第一移动机器人的移动速度。
示例性地,根据节点资源表的记载,移动机器人A0在时刻2应当到达53号节点区域,但是却发现在时刻2时移动机器人A0却处于43或63号节点区域,此时就有必要对移动机器人作出相应的速度调整操作,以令其速度恢复到先前所计算的期望速度,以保障节点资源表的有效性。当移动机器人A0在对应的占用时间2时刻未到达节点资源表中所记录的53号节点区域时(例如处于63号节点区域),那么服务器会发送加速指令至移动机器人A0,以及在移动机器人A0在接收到加速指令之后,会识别该加速指令以执行加速移动;另一方面,当移动机器人A0在对应的占用时间2时刻已经通过53号节点区域时,服务器可以发送减速指令至移动机器人A0,以令移动机器人A0识别该减速指令,并相应地减速移动。
在一些实施方式中,图8示出的是S206的具体执行流程示意图的示例,具体包括:
S2061、服务器获取第一移动机器人在当前的实际时间下的第一移动速度。
S2062、服务器根据针对第一移动机器人的第一期望速度、第一移动速度和窗口时间,确定相应的加速度信息。
S2063、服务器发送包含加速度信息的调速指令至第一移动机器人,以令第一移动机器人在当前的实际时间的下一个窗口时间内按照加速度信息执行加速移动或减速移动。
该图8所示实施例可以被看作是图2所示实施例进一步的公开和优化,可选地,本实施例中公开了如何让移动机器人的实际移动速度能够尽快恢复到期望移动速度,例如在一个窗口时间的时间段内恢复到期望速度。
需说明的是,术语“窗口时间”是指在这一时间段内,可以对事件或事物进行处理或者反应。在服务器为多个机器人分配资源时,是以窗口时间为单位对移动机器人实施控制的。
举例说明,假设机器人当前的速度为v0,窗口时间为Ts,移动机器人本来在窗口 时间内行驶的距离应该为一个节点的距离Sn,或者从一个节点到达下一个节点的时间δt=t’–t0,例如当δt被设置成与窗口时间Ts相等,使得在期望情况下,每一个窗口时间会占用一个新的节点。在一种情况下,如果δt>Ts,也就是说移动机器人运行的速度v0比理想速度慢了,这个时候需要进行加速,相应地,为了让移动机器人在下个节点恢复到期望速度,就应当分配加速指令,且该加速指令所对应的加速度
Figure PCTCN2019072271-appb-000001
另一方面,同样的,也可以计算当移动机器人实际移动比期望状态快的时候,控制实施减速的情况,在此便不赘述。
如图9所示,一种多移动机器人的冲突管理系统90,包括:初始信息获取单元901,配置为获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,以及所述预定区域包括多个节点区域;节点资源表建立单元902,配置为根据所述多个移动机器人的当前位置和所述规划路径建立节点资源表,其中所述节点资源表中记录有移动机器人ID、节点区域ID和占用时间三者之间的对应关系,以及多个所述移动机器人ID中的任意两者在所述节点资源表中不共同对应同一节点区域ID下的同一占用时间;控制占用单元903,配置为控制所述多个移动机器人分别按照所述节点资源表中各自的移动机器人ID所对应的占用时间,占用相应的节点区域ID的节点区域;实际时间获取单元904,配置为获取所述多个移动机器人各自在实际执行所述规划路径时占用节点区域的实际时间;判断单元905,配置为根据所述节点资源表和所述实际时间,判断是否存在第一移动机器人ID所对应的第一移动机器人在对应的占用时间未占用相应的节点区域ID的第一节点区域;调速单元906,配置为若存在,则发送调速指令至所述第一移动机器人,以调整所述第一移动机器人的移动速度。
在一些实施方式中,所述调速单元包括:加速调速模块,配置为当所述第一移动机器人在所述对应的占用时间未到达所述第一节点区域时,发送加速指令至所述第一移动机器人,以令所述第一移动机器人加速移动;以及减速调速模块,配置为当所述第一移动机器人在所述对应的占用时间已经通过所述第一节点区域时,发送减速指令至所述第一移动机器人,以令所述第一移动机器人减速移动。
在一些实施方式中,所述节点资源表建立单元包括:期望移速获取模块,配置为获取关于所述多个移动机器人各自的期望移动速度;单位距离确定模块,配置为根据所述期望移动速度,确定所述多个移动机器人在单位时间内各自分别能够通过的单位距离;资源分配模块,配置为根据所述多个移动机器人的当前位置、所述单位距离、所述 规划路径以及所述节点区域的大小,确定在所述节点资源表中为各个所述移动机器人ID分别分配的节点区域ID和相应的占用时间。
在一些实施方式中,所述调速单元包括:第一速度获取模块,配置为获取所述第一移动机器人在当前的实际时间下的第一移动速度;加速信息确定模块,配置为根据针对所述第一移动机器人的第一期望速度、所述第一移动速度和窗口时间,确定相应的加速度信息;调速指令发送模块,配置为发送包含所述加速度信息的调速指令至所述第一移动机器人,以令所述第一移动机器人在所述当前的实际时间的下一个窗口时间内按照所述加速度信息执行加速移动或减速移动。
在一些实施方式中,所述初始信息获取单元包括:调度命令发送模块,配置为向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;规划路径接收模块,配置为响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。
上述本发明实施例的系统可用于执行本发明中相应的方法实施例,并相应的达到上述本发明方法实施例所达到的技术效果,这里不再赘述。
本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
另一方面,本发明实施例提供一种存储介质,其上存储有计算机程序,该程序被处理器执行如上服务器所执行的多移动机器人的冲突管理方法的步骤。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、 随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。

Claims (10)

  1. 一种多移动机器人的冲突管理方法,包括:
    获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,以及所述预定区域包括多个节点区域;
    根据所述多个移动机器人的当前位置和所述规划路径建立节点资源表,其中所述节点资源表中记录有移动机器人ID、节点区域ID和占用时间三者之间的对应关系,以及多个所述移动机器人ID中的任意两者在所述节点资源表中不共同对应同一节点区域ID下的同一占用时间;
    控制所述多个移动机器人分别按照所述节点资源表中各自的移动机器人ID所对应的占用时间,占用相应的节点区域ID的节点区域;
    获取所述多个移动机器人各自在实际执行所述规划路径时占用节点区域的实际时间;以及
    根据所述节点资源表和所述实际时间,判断是否存在第一移动机器人ID所对应的第一移动机器人在对应的占用时间未占用相应的节点区域ID的第一节点区域;
    若存在,则发送调速指令至所述第一移动机器人,以调整所述第一移动机器人的移动速度。
  2. 根据权利要求1所述的方法,其特征在于,所述发送调速指令至所述第一移动机器人以调整所述第一移动机器人的移动速度包括:
    当所述第一移动机器人在所述对应的占用时间未到达所述第一节点区域时,发送加速指令至所述第一移动机器人,以令所述第一移动机器人加速移动;以及
    当所述第一移动机器人在所述对应的占用时间已经通过所述第一节点区域时,发送减速指令至所述第一移动机器人,以令所述第一移动机器人减速移动。
  3. 根据权利要求1所述的方法,其特征在于,所述根据所述多个移动机器人的当前位置和所述规划路径建立节点资源表包括:
    获取关于所述多个移动机器人各自的期望移动速度;
    根据所述期望移动速度,确定所述多个移动机器人在单位时间内各自分别能够通过的单位距离;
    根据所述多个移动机器人的当前位置、所述单位距离、所述规划路径以及所述节 点区域的大小,确定在所述节点资源表中为各个所述移动机器人ID分别分配的节点区域ID和相应的占用时间。
  4. 根据权利要求3所述的方法,其特征在于,所述发送调速指令至所述第一移动机器人以调整所述第一移动机器人的移动速度包括:
    获取所述第一移动机器人在当前的实际时间下的第一移动速度;
    根据针对所述第一移动机器人的第一期望速度、所述第一移动速度和窗口时间,确定相应的加速度信息;
    发送包含所述加速度信息的调速指令至所述第一移动机器人,以令所述第一移动机器人在所述当前的实际时间的下一个窗口时间内按照所述加速度信息执行加速移动或减速移动。
  5. 根据权利要求1所述的方法,其特征在于,所述获取多个移动机器人各自的当前位置和规划路径包括:
    向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;
    响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。
  6. 一种多移动机器人的冲突管理系统,包括:
    初始信息获取单元,配置为获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,以及所述预定区域包括多个节点区域;
    节点资源表建立单元,配置为根据所述多个移动机器人的当前位置和所述规划路径建立节点资源表,其中所述节点资源表中记录有移动机器人ID、节点区域ID和占用时间三者之间的对应关系,以及多个所述移动机器人ID中的任意两者在所述节点资源表中不共同对应同一节点区域ID下的同一占用时间;
    控制占用单元,配置为控制所述多个移动机器人分别按照所述节点资源表中各自的移动机器人ID所对应的占用时间,占用相应的节点区域ID的节点区域;
    实际时间获取单元,配置为获取所述多个移动机器人各自在实际执行所述规划路径时占用节点区域的实际时间;
    判断单元,配置为根据所述节点资源表和所述实际时间,判断是否存在第一移动机器人ID所对应的第一移动机器人在对应的占用时间未占用相应的节点区域ID的第一节点区域;
    调速单元,配置为若存在,则发送调速指令至所述第一移动机器人,以调整所述第一移动机器人的移动速度。
  7. 根据权利要求6所述的系统,其特征在于,所述调速单元包括:
    加速调速模块,配置为当所述第一移动机器人在所述对应的占用时间未到达所述第一节点区域时,发送加速指令至所述第一移动机器人,以令所述第一移动机器人加速移动;以及
    减速调速模块,配置为当所述第一移动机器人在所述对应的占用时间已经通过所述第一节点区域时,发送减速指令至所述第一移动机器人,以令所述第一移动机器人减速移动。
  8. 根据权利要求6所述的系统,其特征在于,所述节点资源表建立单元包括:
    期望移速获取模块,配置为获取关于所述多个移动机器人各自的期望移动速度;
    单位距离确定模块,配置为根据所述期望移动速度,确定所述多个移动机器人在单位时间内各自分别能够通过的单位距离;
    资源分配模块,配置为根据所述多个移动机器人的当前位置、所述单位距离、所述规划路径以及所述节点区域的大小,确定在所述节点资源表中为各个所述移动机器人ID分别分配的节点区域ID和相应的占用时间。
  9. 根据权利要求8所述的系统,其特征在于,所述调速单元包括:
    第一速度获取模块,配置为获取所述第一移动机器人在当前的实际时间下的第一移动速度;
    加速信息确定模块,配置为根据针对所述第一移动机器人的第一期望速度、所述第一移动速度和窗口时间,确定相应的加速度信息;
    调速指令发送模块,配置为发送包含所述加速度信息的调速指令至所述第一移动机器人,以令所述第一移动机器人在所述当前的实际时间的下一个窗口时间内按照所述加速度信息执行加速移动或减速移动。
  10. 根据权利要求6所述的系统,其特征在于,所述初始信息获取单元包括:
    调度命令发送模块,配置为向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;
    规划路径接收模块,配置为响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。
PCT/CN2019/072271 2018-01-19 2019-01-18 多移动机器人的冲突管理方法及系统 WO2019141228A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810053991.8 2018-01-19
CN201810053991.8A CN108267149B (zh) 2018-01-19 2018-01-19 多移动机器人的冲突管理方法及系统

Publications (1)

Publication Number Publication Date
WO2019141228A1 true WO2019141228A1 (zh) 2019-07-25

Family

ID=62776056

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/072271 WO2019141228A1 (zh) 2018-01-19 2019-01-18 多移动机器人的冲突管理方法及系统

Country Status (2)

Country Link
CN (1) CN108267149B (zh)
WO (1) WO2019141228A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110673594A (zh) * 2019-08-27 2020-01-10 广州蓝胖子机器人有限公司 一种用于amr集群的调度和寻路方法及系统
CN110850828A (zh) * 2019-11-18 2020-02-28 江苏六维智能物流装备股份有限公司 一种四向穿梭车路径冲突调度方法
CN113534803A (zh) * 2021-07-15 2021-10-22 北京京东振世信息技术有限公司 运动路径确定方法、装置、电子设备及存储介质
CN114626794A (zh) * 2022-05-17 2022-06-14 山东西曼克技术有限公司 基于物联网的仓储立库穿梭车路径规划方法及系统

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108267149B (zh) * 2018-01-19 2021-10-15 广东美的智能机器人有限公司 多移动机器人的冲突管理方法及系统
CN108919813A (zh) * 2018-08-07 2018-11-30 北京云迹科技有限公司 路径冲突处理方法及系统
CN109116847B (zh) * 2018-08-29 2021-12-07 广州安商智能科技有限公司 路径调度方法、装置、后台服务端及存储介质
CN109543872B (zh) * 2018-09-19 2021-08-31 北京科技大学 多机器人无停车调度方法和系统
CN113450589B (zh) * 2020-03-27 2022-10-18 比亚迪股份有限公司 车辆的调度方法、装置和系统
CN112729326B (zh) * 2020-12-23 2023-12-26 北京易控智驾科技有限公司 运动智能体轨迹规划方法、装置、存储介质和电子设备
CN117325185B (zh) * 2023-11-27 2024-04-09 成都越凡创新科技有限公司 移动机器人解死锁的方法及调度设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007260792A (ja) * 2006-03-27 2007-10-11 Fujitsu Ltd 機能モジュールの拘束条件を適用したロボットシステム及びその制御方法
CN102830702A (zh) * 2012-09-07 2012-12-19 无锡普智联科高新技术有限公司 一种用于密集存储区域的移动机器人路径规划方法
CN105446343A (zh) * 2016-01-04 2016-03-30 杭州亚美利嘉科技有限公司 一种机器人的调度方法及装置
CN106556406A (zh) * 2016-11-14 2017-04-05 北京特种机械研究所 多agv调度方法
CN108267149A (zh) * 2018-01-19 2018-07-10 广东美的智能机器人有限公司 多移动机器人的冲突管理方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105698796B (zh) * 2016-01-15 2018-05-25 哈尔滨工大服务机器人有限公司 一种多机器人调度系统的路径搜索方法
CN105652838B (zh) * 2016-01-29 2018-04-03 哈尔滨工大服务机器人有限公司 一种基于时间窗的多机器人路径规划方法
CN106251016B (zh) * 2016-08-01 2019-05-07 江苏海事职业技术学院 一种基于动态时间窗的泊车系统路径规划方法
CN106547271B (zh) * 2016-10-20 2019-07-09 大族激光科技产业集团股份有限公司 Agv交通管制方法和装置
CN106843218A (zh) * 2017-02-16 2017-06-13 上海理工大学 车间用自动导引装置调度方法
CN107091648A (zh) * 2017-05-11 2017-08-25 江苏保千里视像科技集团股份有限公司 一种激光雷达与差分gps的数据融合方法及系统
CN107179078B (zh) * 2017-05-24 2020-04-03 合肥工业大学 一种基于时间窗优化的agv路径规划方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007260792A (ja) * 2006-03-27 2007-10-11 Fujitsu Ltd 機能モジュールの拘束条件を適用したロボットシステム及びその制御方法
CN102830702A (zh) * 2012-09-07 2012-12-19 无锡普智联科高新技术有限公司 一种用于密集存储区域的移动机器人路径规划方法
CN105446343A (zh) * 2016-01-04 2016-03-30 杭州亚美利嘉科技有限公司 一种机器人的调度方法及装置
CN106556406A (zh) * 2016-11-14 2017-04-05 北京特种机械研究所 多agv调度方法
CN108267149A (zh) * 2018-01-19 2018-07-10 广东美的智能机器人有限公司 多移动机器人的冲突管理方法及系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110673594A (zh) * 2019-08-27 2020-01-10 广州蓝胖子机器人有限公司 一种用于amr集群的调度和寻路方法及系统
CN110850828A (zh) * 2019-11-18 2020-02-28 江苏六维智能物流装备股份有限公司 一种四向穿梭车路径冲突调度方法
CN113534803A (zh) * 2021-07-15 2021-10-22 北京京东振世信息技术有限公司 运动路径确定方法、装置、电子设备及存储介质
CN114626794A (zh) * 2022-05-17 2022-06-14 山东西曼克技术有限公司 基于物联网的仓储立库穿梭车路径规划方法及系统

Also Published As

Publication number Publication date
CN108267149B (zh) 2021-10-15
CN108267149A (zh) 2018-07-10

Similar Documents

Publication Publication Date Title
WO2019141228A1 (zh) 多移动机器人的冲突管理方法及系统
WO2019141222A1 (zh) 多移动机器人的冲突管理方法及系统
WO2019141217A1 (zh) 多移动机器人的冲突管理方法及系统
WO2019141221A1 (zh) 多移动机器人的冲突管理方法及系统
Cardarelli et al. Cooperative cloud robotics architecture for the coordination of multi-AGV systems in industrial warehouses
WO2019141223A1 (zh) 移动机器人的路径规划方法及系统
WO2019141226A1 (zh) 多移动机器人的冲突管理方法及系统
WO2019141225A1 (zh) 多移动机器人的冲突管理方法及系统
WO2019141224A1 (zh) 多移动机器人的冲突管理方法及系统
WO2019141219A1 (zh) 多移动机器人的调度方法及系统
EP2851760A1 (en) Multi-robot system
WO2019178319A1 (en) Method and apparatus for dynamic obstacle avoidance by mobile robots
WO2019141220A1 (zh) 移动机器人的路径规划方法及系统
CN111077900B (zh) 一种基于任务交换的无人机编队控制方法
KR20150137166A (ko) 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법
Gregoire et al. Priority-based intersection management with kinodynamic constraints
WO2016135378A1 (en) Resolution of route conflict
CN111142567B (zh) 一种无人机系统中的无人机目标位置交换方法及装置
Zhao et al. Spare zone based hierarchical motion coordination for multi-AGV systems
JP2017191373A (ja) マルチエージェントシステム、タスク割当装置、タスク割当方法及びプログラム
Liu et al. A hierarchical framework for coordinating large-scale robot networks
Xu et al. Dynamic spare point application based coordination strategy for multi-AGV systems in a WIP warehouse environment
JP7014289B2 (ja) 移動体制御装置、移動体、移動体制御システム、移動体制御方法および移動体制御プログラム
Wubben et al. FFP: A Force Field Protocol for the tactical management of UAV conflicts
KR102397338B1 (ko) 자율 주차 로봇 시스템의 작업 계획 관리 장치 및 관리 방법

Legal Events

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

Ref document number: 19740711

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

Country of ref document: EP

Kind code of ref document: A1