CN112256010A - 自动导引车的调度方法、装置及存储介质 - Google Patents
自动导引车的调度方法、装置及存储介质 Download PDFInfo
- Publication number
- CN112256010A CN112256010A CN201910601422.7A CN201910601422A CN112256010A CN 112256010 A CN112256010 A CN 112256010A CN 201910601422 A CN201910601422 A CN 201910601422A CN 112256010 A CN112256010 A CN 112256010A
- Authority
- CN
- China
- Prior art keywords
- guided vehicle
- automatic guided
- target node
- node
- waiting list
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000012544 monitoring process Methods 0.000 claims description 9
- 238000005516 engineering process Methods 0.000 abstract description 2
- 230000001737 promoting effect Effects 0.000 abstract 1
- 230000008859 change Effects 0.000 description 14
- 230000002159 abnormal effect Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 201000004569 Blindness Diseases 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0287—Control 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/0291—Fleet control
- G05D1/0295—Fleet control by at least one leading vehicle of the fleet
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本申请公开了一种自动导引车的调度方法、装置及存储介质,涉及自动导引车调度技术。具体方案包括:获取自动导引车针对行进路径上的目标节点的锁定请求;若目标节点已被锁定,则将自动导引车加入目标节点对应的等待列表中;等待列表用于存储等待锁定该节点的自动导引车的设备标识以及通过该节点时的行进方向;在获取目标节点被解除锁定的消息时,利用反向追溯方法从目标节点对应的等待列表中确定一个优先自动导引车,优先自动导引车是优先锁定所述目标节点的自动导引车;优先自动导引车锁定目标节点,并将优先自动导引车从目标节点对应的等待列表中删除。本申请的主要目的在于提升调度效率,进而提升自动导引车的行驶效率。
Description
技术领域
本申请涉及自动导引车调度技术,特别是涉及一种自动导引车的调度方法、装置及存储介质。
背景技术
为了便于进行路径规划和控制,防止多台自动导引车行走路径之间的冲突,目前主要采用使用自动导引车对即将途经的目标节点进行锁定的方式,进行多台自动导引车行走路径上的节点的分配。现有技术中的节点锁定方式为,自动导引车以预设时间间隔反复尝试对目标节点进行锁定,如果目标节点已被锁定,锁定不成功,就进入等待状态;如果目标节点未被锁定,锁定成功,就锁定目标节点,并向目标节点的方向行走。
现有技术的方法自动导引车只能等待预设时间间隔结束,才进行尝试锁定目标节点的操作,自动导引车的行驶效率较低。并且如果调度规模较大,自动导引车数量较多,同时进入等待状态的自动导引车也会增多,增加了调度压力,降低了调度效率。并且,现有技术中,如果出现多个自动导引车同时请求对目标节点进行锁定,会以随机的方式抢占对目标节点锁定的权限,调度效率很低。
发明内容
有鉴于此,本申请的主要目的在于提供一种自动导引车的调度方法,该方法可以克服仅由自动导引车以预设时间间隔尝试请求对目标节点进行锁定的缺陷,从而降低调度压力,提升调度效率,进而提升自动导引车的行驶效率。
为了达到上述目的,本申请提出的技术方案为:
第一方面,本申请实施例提供了一种自动导引车的调度方法,包括以下步骤:
获取自动导引车针对目标节点的锁定请求;所述目标节点为自动导引车行进路径上途经的下一个节点;
若所述目标节点已被锁定,则将所述自动导引车加入所述目标节点对应的等待列表中;所述等待列表用于存储等待锁定该节点的自动导引车的设备标识以及通过该节点时的行进方向;
在获取所述目标节点被解除锁定的消息时,利用反向追溯方法从所述目标节点对应的等待列表中确定一个优先自动导引车;所述优先自动导引车是优先锁定所述目标节点的自动导引车;
所述优先自动导引车锁定所述目标节点,并将所述优先自动导引车从所述目标节点对应的等待列表中删除。
一种可能的实施方式中,所述利用反向追溯方法从所述目标节点对应的等待列表中确定一个优先自动导引车的步骤包括:
从所述目标节点对应的等待列表中确定等待锁定所述目标节点的每个自动导引车,将每个等待锁定目标节点的自动导引车分别作为反溯起始自动导引车,将每个等待锁定目标节点的自动导引车所处的节点作为反溯起始节点;
从每个反溯起始节点开始,获取对应的反溯起始自动导引车的行进方向相反的方向上的预定数量个节点作为待检测节点,所述反溯起始节点和待检测节点构成反溯路径;
针对每条反溯路径,根据该反溯路径上的每个节点对应的等待列表中与所述反溯起始自动导引车行进方向相同的自动导引车的数量,确定该反溯路径的拥堵参数;
根据每条反溯路径的拥堵参数,从每个反溯起始自动导引车中选择一个作为优先自动导引车。
一种可能的实施方式中,在获取自动导引车针对目标节点的锁定请求,且所述目标节点未被锁定的情况下,所述方法还包括:
所述自动导引车锁定所述目标节点。
一种可能的实施方式中,在获取自动导引车针对目标节点的锁定请求之后,在将所述自动导引车加入所述目标节点对应的等待列表中的步骤之前,还包括:
判断是否发生服务异常,在发生服务异常的情况下,每隔预设时间间隔尝试使用所述自动导引车锁定所述目标节点,直至所述自动导引车成功锁定所述目标节点,或者确定所述目标节点已被锁定为止。
一种可能的实施方式中,在所述将所述自动导引车加入所述目标节点对应的等待列表中的步骤之后,在获取所述目标节点被解除锁定的消息的步骤之前,所述方法还包括:
针对每个所述等待列表中的所述自动导引车,当接收到路径更换指令时,根据所述路径更换指令确定需要进行路径更换的自动导引车;
将所述需要进行路径更换的自动导引车从所在的所述等待列表中删除。
一种可能的实施方式中,在所述自动导引车出现异常的情况下,所述方法还包括:
在所述自动导引车锁定了所述节点的情况下,解除所述自动导引车对所述节点的锁定;
或者,在所述自动导引车加入了所述等待列表的情况下,将所述自动导引车从所在的所述等待列表中删除。
一种可能的实施方式中,所述方法还包括监控等待列表中自动导引车个数的步骤:
确定每个等待列表中包含的自动导引车的第一总数;
根据所述第一总数与每个参与调度的所述自动导引车的第二总数,监控等待列表中的自动导引车个数。
第二方面,基于相同的设计构思,本申请实施例还提供一种自动导引车的调度装置,包括:
获取模块,用于获取自动导引车针对目标节点的锁定请求;所述目标节点为自动导引车行进路径上途经的下一个节点;
队列管理模块,用于在所述目标节点已被锁定的情况下,将所述自动导引车加入所述目标节点对应的等待列表中;所述等待列表用于存储等待锁定对应的节点的所述自动导引车的设备标识和通过对应的节点时的行进方向;还用于将所述优先自动导引车目标节点对应的等待列表中删除;
设备确定模块,用于在获取所述目标节点被解除锁定的消息时,利用反向追溯方法从所述目标节点对应的等待列表中确定一个优先自动导引车,所述优先自动导引车是优先锁定所述目标节点的自动导引车;
节点锁定模块,用于使用所述优先自动导引车锁定所述目标节点。
第三方面,本申请实施例还提供一种计算机可读存储介质,可以降低调度压力,提升调度效率,进而提升自动导引车的行驶效率。具体方案为:
一种计算机可读存储介质,存储有计算机指令,所述指令被处理器执行时可实现上述第一方面及第一方面中任一种可能的实施方式的步骤。
第四方面,本申请实施例还提供一种电子设备,可以降低调度压力,提升调度效率,进而提升自动导引车的行驶效率。具体方案为:
一种电子设备,该电子设备包括上述的计算机可读存储介质,还包括可执行所述计算机可读存储介质的处理器。
综上所述,本申请提出的一种自动导引车的调度方法、装置及存储介质。本申请在目标节点已被锁定的情况下,将请求对目标节点进行锁定的自动导引车加入目标节点对应的等待列表中,在目标节点解除锁定时,立即根据从等待列表中选择优先自动导引车,并使用优先自动导引车的设备表示锁定目标节点,与现有技术中,等待预设时间间隔尝试对目标节点进行锁定相比,在目标节点解除锁定时就尝试锁定目标节点,无需等待预设时间间隔,可以大幅提升调度效率和自动导引车的行驶效率;在获取所述目标节点被解除锁定的消息时,利用反向追溯方法从所述目标节点对应的等待列表中确定一个优先自动导引车,与现有技术中随机抢占对目标节点锁定权限相比,通过反向追溯方法可以确定目标节点周围的道路情况和自动导引车情况,根据目标节点周围的道路情况和自动导引车情况确定优先自动导引车,可以极大的提升调度效率,防止大面积拥堵的形成。
附图说明
图1为本申请实施例的应用场景示意图;
图2为本申请实施例一的流程示意图;
图3为本申请实施例二的流程示意图;
图4为本申请实施例三的结构示意图;
图5为本申请实施例五的结构示意图。
具体实施方式
本申请实施例可以应用于对多台自动导引车(Automated Guided Vehicl,AGV)进行调度的场景。
为了便于进行路径规划和控制,如图1所示,为AGV 102的行走空间设置若干个节点101,每个节点101可以以其坐标值作为节点标识。对每个AGV 102进行路径规划时,每个AGV 102的行进路径经过至少一个节点101,每个AGV 102的行驶方式为从规划的行进路径上的一个节点101行驶向下一个节点101。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本申请作进一步地详细描述。
实施例一
图2为本申请实施例一的流程示意图,如图2所示,该实施例主要包括:
S201:获取自动导引车针对目标节点的锁定请求;所述目标节点为自动导引车行进路径上途经的下一个节点。
每个自动导引车的行驶方式为从路径规划的行进路径上的一个节点行驶向目标节点,在驶向目标节点之前,为了防止不同自动导引车之间行进路径的冲突,仍然需要请求对目标节点进行锁定,自动导引车在锁定目标节点之后,行驶向目标节点,此时其他的自动导引车无法锁定上述目标节点。
S202:若所述目标节点已被锁定,则将所述自动导引车加入所述目标节点对应的等待列表中;所述等待列表用于存储等待锁定该节点的自动导引车的设备标识以及通过该节点时的行进方向。
与现有技术不同的是,在目标节点已被其他自动导引车锁定时,本申请实施例并不是由自动导引车以预设时间间隔不断请求对目标节点进行锁定,而是将请求锁定的自动导引车加入目标节点对应的等待列表中。这里,由于每个节点都有可能发生多个自动导引车对自身发起锁定请求的情况,因此,每个节点对应了一个等待列表。等待列表中除了存储请求锁定对应的被锁定节点的每个自动导引车的设备标识,还存储了每个自动导引车的行进方向。
示例性的,如图1所示,AGV 1021在当前节点即将向目标节点1011行驶之前,需要请求对目标节点1011进行锁定。在目标节点1011已被AGV 1023锁定时,将请求锁定的AGV1021加入目标节点对应的等待列表中。加入等待列表的AGV 1021在其当前已锁定的节点停留等待,直至锁定了目标节点1011之后,向目标节点1011行驶。在图1中,有两个AGV102,分别是AGV 1021和AGV 1022,均需要行走至目标节点1011,因此,将AGV 1021和AGV 1022均加入目标节点对应的等待列表中。目标节点对应的等待列表中存储了AGV1021和AGV1022的设备标识和行进方向,假设AGV1021需要向右行驶,AGV1022需要向上行驶。
S203:在获取所述目标节点被解除锁定的消息时,利用反向追溯方法从所述目标节点对应的等待列表中确定一个优先自动导引车;所述优先自动导引车是优先锁定所述目标节点的自动导引车。
为了克服现有技术中以随机的方式抢占对目标节点锁定的权限的盲目性,针对目标节点对应的等待列表中的每个自动导引车,根据目标节点附近的道路情况和自动导引车情况,从目标节点对应的等待列表中确定优先自动导引车。具体的,利用反向追溯方法从所述目标节点对应的等待列表中确定一个优先自动导引车。利用反向追溯方法根据目标节点附近的道路情况和自动导引车情况确定优先自动导引车,与现有技术中以随机方式抢占对目标节点锁定的权限相比,可以极大的提升调度效率,防止大面积拥堵的形成。
S204:所述优先自动导引车锁定所述目标节点,并将所述优先自动导引车从所述目标节点对应的等待列表中删除。
在优先自动导引车锁定目标节点后,优先自动导引车已无需存储在目标节点对应的等待列表中,因此将优先自动导引车从目标节点对应的等待列表中删除。
现有技术中由自动导引车以预设时间间隔不断请求对目标节点进行锁定的方式,若设置较大的时间间隔,例如1s,示例性的,如图1所示,若AGV1023在预设时间间隔的开始时已经解锁目标节点1011,AGV1021或AGV1022也只能在预设时间间隔结束后才可抢占对目标节点的锁定,加入过了100ms,AGV1023走后将目标节点1011释放,但AGV1021或AGV1022还要再等900ms才能抢占对目标节点的锁定,行驶效率较低。若设置较小的时间间隔,例如100ms,由于每个AGV102的行走需要一定的时间,过于频繁地请求对目标节点1011的锁定会产生很多冗余的请求信息,浪费计算资源。相对的,本申请实施例提供的方法可以提升调度效率和自动导引车的行驶效率。利用反向追溯方法根据目标节点附近的道路情况和自动导引车情况确定优先自动导引车,与现有技术中以随机方式抢占对目标节点锁定的权限相比,也可以极大的提升调度效率,防止大面积拥堵的形成。
实施例二
图3为本申请实施例二的流程示意图,如图3所示,该实施例主要包括:
S301:获取自动导引车对目标节点的锁定请求。
S302:判断是否发生服务异常。
如果发生网络不通、网络请求超时或位置服务应用失效等服务异常场景时,由于服务发生异常,在这些场景无法判断对目标节点的锁定最终是成功还是失败,每隔预设时间间隔尝试使用所述自动导引车锁定目标节点,具体的,可以使用异步定时调度器循环尝试对目标节点的锁定,直至网络服务或者位置服务应用恢复。网络服务或者位置服务应用恢复后,自动导引车成功锁定目标节点,或者确定了目标节点已被锁定,进入步骤S302。
S303:判断目标节点是否已被锁定。
如果目标节点未被其他自动导引车锁定,进入步骤S304;如果目标节点已被其他自动导引车锁定,进入步骤S305。
S304:自动导引车锁定所述目标节点。
具体的,可以使用自动导引车的设备标识锁定目标节点,在自动导引车锁定所述目标节点之后,自动导引车向目标节点行驶,且目标节点无法被其他自动导引车锁定。
S305:将所述自动导引车加入目标节点对应的等待列表。
目标节点对应的等待列表中存储了等待锁定该节点的自动导引车的设备标识以及通过该节点时的行进方向。加入目标节点对应的等待列表的自动导引车在当前所在的节点停留等待,直至目标节点解除锁定。
示例性的,如图1所示,目标节点对应的等待列表中存储了请求对目标节点1011进行锁定的AGV1021和AGV1022的设备标识和行进方向。AGV1021和AGV1022在其目前所在的节点停留等待,直至目标节点1011解除锁定。
S306:从所述目标节点对应的等待列表中确定等待锁定所述目标节点的每个自动导引车,将每个等待锁定目标节点的自动导引车分别作为反溯起始自动导引车,将每个等待锁定目标节点的自动导引车所处的节点作为反溯起始节点。
在获取目标节点被解除锁定的消息时,利用反向追溯方法从目标节点对应的等待列表中确定一个优先自动导引车,在利用反向追溯方法确定优先自动导引车的一开始,需要确定反向追溯的起始点,具体的,包括确定反溯起始自动导引车和反溯起始节点。反向追溯从目标节点对应的等待列表中的自动引导车开始,因此,将目标节点对应的等待列表中的每个等待锁定目标节点的自动导引车作为反溯起始自动导引车,将目标节点对应的等待列表中的每个等待锁定目标节点的自动导引车所处的节点作为反溯起始节点。
S307:从每个反溯起始节点开始,获取对应的反溯起始自动导引车的行进方向相反的方向上的预定数量个节点作为待检测节点,所述反溯起始节点和待检测节点构成反溯路径。
目标节点对应的等待列表中存储了每个等待锁定目标节点的自动导引车的行进方向,获取对应的反溯起始自动导引车的行进方向相反的方向上的预定数量个节点作为待检测节点:假设以东南西北表述自动导引车的行进方向,如果该自动导引车的行进方向是向东,获取由该自动导引车向西的预定数量个节点作为待检测节点,如果该自动导引车的行进方向是向北,获取由该自动导引车向南的预定数量个节点作为待检测节点;假设以上下左右表述自动导引车的行进方向,如果该自动导引车的行进方向是向右,获取由该自动导引车向左的预定数量个节点作为待检测节点,如果该自动导引车的行进方向是向上,获取由该自动导引车向下的预定数量个节点作为待检测节点。反溯起始节点和待检测节点构成反溯路径,这里,根据反溯路径可以确定,由于反溯起始自动导引车等待锁定目标节点,而可能存在拥堵的路径。
S308:针对每条反溯路径,根据该反溯路径上的每个节点对应的等待列表中与所述反溯起始自动导引车行进方向相同的自动导引车的数量,确定该反溯路径的拥堵参数。
之后,针对每条反溯路径,将该反溯路径上的每个节点分别对应的每个等待列表中与反溯起始自动导引车行进方向相同的自动导引车的数量,确定为该反溯路径的拥堵参数。这里,根据拥堵参数可以确定,由于反溯起始自动导引车等待锁定目标节点,而可能存在拥堵的路径上的拥堵程度。如果反溯路径上的每个节点分别对应的每个等待列表中存储有自动导引车,且存储的自动导引车与反溯起始自动导引车的行进方向相同,则说明反溯起始自动导引车由于等待目标节点的解锁而在当前节点的停留过程,造成了反溯路径上的其他自动导引车无法继续行进,也就是造成了可能存在拥堵路径上的拥堵。并且,反溯路径的拥堵参数,也就代表了由于反溯起始自动导引车而造成的可能存在拥堵的路径上的拥堵程度。
另外,为了进一步提升调度效率,在所述目标节点解除锁定时,还可以加入判断目标节点对应的等待列表中存储的自动导引车的个数的步骤,具体的:首先,判断目标节点对应的等待列表中存储的自动导引车的个数,如果目标节点对应的等待列表中只存储了一个自动导引车,将目标节点对应的等待列表中存储的自动导引车确定为目标自动导引车;如果目标节点对应的等待列表中存储了两个以上自动导引车,执行利用反向追溯方法从所述目标节点对应的等待列表中确定一个优先自动导引车的步骤。
具体实施过程中,可以以节点的坐标值为索引,节点对应的等待列表为内容,存储节点和节点对应的等待列表。因此,可以获取反溯起始节点,并根据反溯起始自动导引车的行进方向获取与反溯起始自动导引车的行进方向相反的预定数量个待检测节点的坐标值。并以上述待检测节点的坐标值为索引,分别获取每个待检测节点对应的等待列表。每个等待列表中存储了等待对应待检测节点解锁的自动导引车的设备标识和行进方向,将上述待检测节点分别对应的每个等待列表中与反溯起始自动导引车行进方向相同的自动导引车的数量,确定为拥堵参数。
示例性的,如图1所示,当目标节点对应的等待列表中存储了AGV1021和AGV1022的情况下,由于AGV1021的行进方向向右,因此,获取从AGV1021起向左的预定数量个节点;同样的,由于AGV1022的行进方向向上,因此,获取从AGV1022起向下的预定数量个节点。可以依据调度需求设置预定数量个节点的数量,例如获取与反溯起始自动导引车的所述行进方向相反的方向上的3-9个节点。图1中显示了获取以AGV1021作为反溯起始自动导引车,以AGV1021锁定的节点作为反溯起始节点,获得反溯起始节点起向左的4个节点作为待检测节点。
在反溯路径包括了反溯起始节点和待检测节点的情况,反溯路径分别对应了5个等待列表。对反溯起始节点来说,反溯起始自动导引车AGV1021占据的反溯起始节点的等待列表中包括AGV1024,假设AGV1024的行进方向与AGV1021相同,都是向右行驶,则AGV1024是由于AGV1021产生拥堵的自动导引车。从AGV1021起向左的第一个待检测节点为AGV1024占据的节点,该待检测节点的等待列表中包括AGV1025,假设AGV1025的行进方向与AGV1021相同,都是向右行驶,则AGV1025也是由于AGV1021产生拥堵的自动导引车。从AGV1021起向左的第二个待检测节点为AGV1025占据的节点,该待检测节点的等待列表中包括AGV1027,AGV1027的行进方向与AGV1021不同,是向上行驶,因此AGV1027不是由于AGV1021产生拥堵的自动导引车。从AGV1021起向左的第三个和第四个待检测节点的等待列表中没有自动导引车。综上,根据反溯路径包括的反溯起始节点和待检测节点分别对应的5个等待列表中,与AGV1021行进方向相同的自动导引车的数量为2。
同样的,对反溯起始节点来说,从反溯起始自动导引车AGV1022起向下的5个节点分别对应了5个等待列表。反溯起始自动导引车AGV1022占据的反溯起始节点的等待列表中包括AGV1026,AGV1026的行进方向向左,与AGV1022的行进方向不同,因此,AGV1026不是由于AGV1022产生拥堵的自动导引车。从AGV1022起向下的第一个至第四个待检测节点的等待列表中没有自动导引车。综上,根据反溯路径包括的反溯起始节点和待检测节点分别对应的5个等待列表中,与AGV1022行进方向相同的自动导引车的数量为0。
根据该反溯路径上的每个节点对应的等待列表中与所述反溯起始自动导引车行进方向相同的自动导引车的数量,确定拥堵参数时,可以直接该反溯路径上的每个节点对应的等待列表中与所述反溯起始自动导引车行进方向相同的自动导引车的数量,确定为拥堵参数,例如,如图1中,AGV1021的拥堵参数为2,AGV1022的拥堵参数为0。或者,在避免出现0参数的情况下,可以将反溯起始自动导引车也加入到确定拥堵参数的自动导引车数量中,例如,如图1中,AGV 1021的拥堵参数为3,AGV 1022的拥堵参数为1,也就是说,AGV 1021和AGV 1022拥堵参数均包括了AGV 1021或AGV 1022本身。
S309:根据每条反溯路径的拥堵参数,从每个反溯起始自动导引车中选择一个作为优先自动导引车。
具体的,可以采用下述两种可能的实施方式根据每个所述自动导引车的所述拥堵参数,确定所述优先自动导引车:
一种可能的实施方式中,可以从目标节点对应的等待列表的每个自动导引车中,选择拥堵参数最小的自动导引车,作为优先自动导引车。
选择拥堵参数最小的自动导引车,意味着将拥堵程度最小的路径上的自动导引车先放行,因为与放行拥堵参数较大的自动导引车相比,放行上述拥堵参数最小的自动导引车,拥堵参数最小的自动导引车通过目标节点后,后续需要锁定并通过目标节点的自动导引车较少,可以较快的打通其中一个需要通行的方向。如果选择拥堵参数较大的自动导引车放行,在一个自动导引车放行之后,拥堵参数最小的自动导引车有很大可能还需等待拥堵参数较大的自动导引车行进方向的路径上的其他的自动导引车继续通行,在等待的时间里,甚至有可能造成更大面积的拥堵,进入恶性循环。因此,优选的,从目标节点对应的等待列表的每个自动导引车中,选择拥堵参数最小的自动导引车,作为优先自动导引车。示例性的,在图1的目标节点对应的等待列表选择AGV1022作为优先自动导引车。
另一种可能的实施方式中,可以从目标节点对应的等待列表的每个自动导引车中,选择拥堵参数最大的自动导引车,作为优先自动导引车。
在实际应用时,有可能存在需要尽可能疏通拥堵参数较大的行进方向的路径的情况,以防止拥堵参数较大的行进方向的路径上停留等待了越来越多的自动导引车,此时,从目标节点对应的等待列表的每个自动导引车中,选择拥堵参数最大的自动导引车,作为优先自动导引车。示例性的,在图1的目标节点对应的等待列表选择自动导引车1021作为优先自动导引车。
另外,如果目标节点对应的等待列表存在两个以上的自动导引车的拥堵参数相同,从上述两个具有相同拥堵参数的自动导引车中,随机选择一个自动导引车确定为优先自动导引车。例如,如果从目标节点对应的等待列表的每个自动导引车中,选择拥堵参数最小的自动导引车,作为优先自动导引车时,存在两个拥堵参数最小且拥堵参数相同的自动导引车的情况下,从上述两个拥堵参数最小且相同的自动导引车中,随机选择一个自动导引车确定为优先自动导引车。或者,如果从目标节点对应的等待列表的每个自动导引车中,选择拥堵参数最大的自动导引车,作为目标自动导引车时,存在两个拥堵参数最大且拥堵参数相同的自动导引车的情况下,从上述两个拥堵参数最大且相同的自动导引车中,随机选择一个自动导引车确定为优先自动导引车。
S310:所述优先自动导引车锁定所述目标节点,并将所述优先自动导引车从所述目标节点对应的等待列表中删除。
示例性的,如图1所示,当AGV1021从目标节点1011解锁并走开时,在从目标节点对应的等待列表中选择AGV1022作为优先自动导引车的情况下,优先使用AGV1022锁定目标节点,例如使用AGV1022的设备标识锁定目标节点,并将AGV1022从目标节点对应的等待列表中删除。
另外,为了增加本申请实施例提供的自动导引车的调度方法的可靠性,需要本申请实施例提供的方法应对一些特殊的情况。
A:例如,在将所述自动导引车加入所述目标节点对应的等待列表中之后,在获取所述目标节点被解除锁定的消息的步骤之前,存储在等待列表中的自动导引车在位于当前节点停留等待的过程中,有可能收到路径更换指令,需要在获取到路径更换指令之后,在根据路径更换指令更换行进路径之前,需要将进行路径更换的自动导引车从所在的等待列表中删除,路径更换指令更换行进路径可能包括更换自动导引车的行进方向和/或目标节点。
由于通常以节点的坐标值为索引,节点对应的等待列表为内容,存储节点和节点对应的等待列表。因此当接收到路径更换指令时,需要根据根据所述路径更换指令确定需要进行路径更换的自动导引车。
例如路径更换指令可以携带设备标识,可以根据路径更换指令携带的设备标识查找需要进行路径更换的自动导引车。或者,在由自动导引车接收路径更换指令时,此时,自动导引车向应用了本方法的设备或装置发送更换路径消息,更换路径消息用于通知应用了本方法的设备或装置对应的自动导引车需要更换路径,更换路径消息可以携带自动导引车的设备标识和自动导引车请求锁定的目标节点的坐标值,根据自动导引车请求锁定的目标节点的坐标值和自动导引车的设备标识查找需要进行路径更换的自动导引车。
由于自动导引车更换路径后,可能获得了不同的行进方向和/或目标节点,因此需要将需要进行路径更换的自动导引车从所在的等待列表中删除,之后再下载或执行新的行进路径。
B:又例如,在自动导引车出现异常的情况下,例如,当自动导引车无法继续行走、自动导引车需要释放所有行进路径进行下线操作、自动导引车需要重启、或者自动导引车需要清除当前行进路径重新恢复运输任务的情况下,自动导引车无法继续正常执行运输任务,此时在自动导引车锁定了节点的情况下,解除自动导引车对节点的锁定,防止出现异常的自动导引车占据锁定的节点,妨碍其他正常自动导引车对其占据的节点的锁定;或者,在自动导引车加入了等待列表的情况下,将自动导引车从所在的等待列表中删除,此时自动导引车以无需继续等待锁定目标节点,即便被选为目标自动导引车,也无法正常锁定目标节点继续执行运输任务,因此,将其从所在的等待列表中删除,以防止出现将出现异常的自动导引车确定为目标自动导引车的情况,同时也可以防止等待列表中存在过多冗余信息,导致内存溢出等异常情况。当自动导引车无法继续行走时,通常需要运营人员人工解除自动导引车的设备标识对节点的锁定,并且将其推出自动导引车的行走空间,以免妨碍其他自动导引车的运行。
C:为了进一步提升方法的可靠性,防止某些不可控的异常情况的出现,本申请实施例提供的方法还包括监控等待列表中自动导引车个数的步骤:确定每个等待列表中包含的自动导引车的第一总数;确定每个参与调度的自动导引车的第二总数;根据所述第一总数与每个参与调度的自动导引车的第二总数,监控等待列表中的自动导引车个数。具体的,第一总数需要小于等于第二总数。并且,可以在第一总数大于第二总数的情况下,向监控***或监控人员发送警告信息。
基于相同的设计构思,本申请实施例还提供一种自动导引车的调度装置及存储介质。
实施例三
如图4所示,本申请实施例提供了一种自动导引车的调度装置400,包括:
获取模块401,用于获取自动导引车针对目标节点的锁定请求;所述目标节点为自动导引车行进路径上途经的下一个节点;
队列管理模块402,用于在所述目标节点已被锁定的情况下,将所述自动导引车加入所述目标节点对应的等待列表中;所述等待列表用于存储等待锁定对应的节点的所述自动导引车的设备标识和通过对应的节点时的行进方向;还用于将所述优先自动导引车目标节点对应的等待列表中删除;
设备确定模块403,在获取所述目标节点被解除锁定的消息时,利用反向追溯方法从所述目标节点对应的等待列表中确定一个优先自动导引车,所述优先自动导引车是优先锁定所述目标节点的自动导引车;
节点锁定模块404,用于使用所述优先自动导引车锁定所述目标节点。
一种可能的实施方式中,设备确定模块402,还用于:
从所述目标节点对应的等待列表中确定等待锁定所述目标节点的每个自动导引车,将每个等待锁定目标节点的自动导引车分别作为反溯起始自动导引车,将每个等待锁定目标节点的自动导引车所处的节点作为反溯起始节点;
从每个反溯起始节点开始,获取对应的反溯起始自动导引车的行进方向相反的方向上的预定数量个节点作为待检测节点,所述反溯起始节点和待检测节点构成反溯路径;
针对每条反溯路径,根据该反溯路径上的每个节点对应的等待列表中与所述反溯起始自动导引车行进方向相同的自动导引车的数量,确定该反溯路径的拥堵参数;
根据每条反溯路径的拥堵参数,从每个反溯起始自动导引车中选择一个作为优先自动导引车。
一种可能的实施方式中,在获取自动导引车针对目标节点的锁定请求,且所述目标节点未被锁定的情况下,节点锁定模块404,还用于:
所述自动导引车锁定所述目标节点。
一种可能的实施方式中,自动导引车的调度装置400,还包括,异常处理模块405,用于:
判断是否发生服务异常,在发生服务异常的情况下,每隔预设时间间隔尝试使用所述自动导引车的所述设备标识锁定所述目标节点,直至所述自动导引车成功锁定所述目标节点,或者确定所述目标节点已被锁定为止。
一种可能的实施方式中,自动导引车的调度装置400,还包括,路径更换模块406,用于:
针对每个所述等待列表中的所述自动导引车,当接收到路径更换指令时,根据所述路径更换指令确定需要进行路径更换的自动导引车;
将所述需要进行路径更换的自动导引车从所在的所述等待列表中删除。
一种可能的实施方式中,异常处理模块405,还用于::
在所述自动导引车锁定了所述节点的情况下,解除所述自动导引车对所述节点的锁定;
或者,在所述自动导引车加入了所述等待列表的情况下,将所述自动导引车从所在的所述等待列表中删除。
一种可能的实施方式中,异常处理模块404,还用于:
确定每个等待列表中包含的自动导引车的第一总数;
根据所述第一总数与每个参与调度的所述自动导引车的第二总数,监控等待列表中的自动导引车个数。
实施例四
一种计算机可读介质,所述计算机可读存储介质存储指令,所述指令在由处理器执行时使得所述处理器执行实施例一或实施例二提供的方法的步骤。实际应用中,所述的计算机可读介质可以为RAM、ROM、EPROM、磁盘、光盘等等,并不用于限制本申请保护的范围。
本申请所述的方法步骤除了可以用数据处理程序来实现,还可以由硬件来实现,例如,可以由逻辑门、开关、专用集成电路(ASIC)、可编程逻辑控制器和嵌微控制器等来实现。因此这种可以实现本申请所述方法的硬件也可以构成本申请。
实施例五
本申请实施例还提供一种电子设备,可以是计算机或服务器,其中可以集成本申请上述装置实施例的自动导引车的调度装置。如图5所示,其示出了本申请装置实施例三所涉及的电子设备500。
该电子设备可以包括一个或者一个以上处理核心的处理器501、一个或一个以上计算机可读存储介质502。该电子设备还可以包括电源503、输入输出单元504。本领域技术人员可以理解,图5中并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
其中:
处理器501是该电子设备的控制部分,利用各种接口和线路连接各个部分,通过运行或执行存储在计算机可读存储介质502中的软件程序,执行实施例一或实施例二提供的方法的步骤。
计算机可读存储介质502可用于存储软件程序,即实施例一或实施例二提供的方法中涉及的程序。
处理器501通过运行存储在计算机可读存储介质502的软件程序,从而执行各种功能应用以及数据处理。计算机可读存储介质502可包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如优先自动导引车的确定等)等;存储数据区可存储根据电子设备需要使用的数据等(比如等待列表等)。此外,计算机可读存储介质502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,计算机可读存储介质502还可以包括存储器控制器,以提供处理器501对计算机可读存储介质502的访问。
电子设备还包括给各个部件供电的电源503,优选的,电源503可以通过电源管理***与处理器501逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源503还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该服务器还可包括输入输出单元504,比如可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入;比如可用于显示由用户输入的信息或提供给用户的信息以及服务器的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。
综上所述,以上仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种自动导引车的调度方法,其特征在于,该方法包括:
获取自动导引车针对目标节点的锁定请求;所述目标节点为自动导引车行进路径上途经的下一个节点;
若所述目标节点已被锁定,则将所述自动导引车加入所述目标节点对应的等待列表中;所述等待列表用于存储等待锁定该节点的自动导引车的设备标识以及通过该节点时的行进方向;
在获取所述目标节点被解除锁定的消息时,利用反向追溯方法从所述目标节点对应的等待列表中确定一个优先自动导引车;所述优先自动导引车是优先锁定所述目标节点的自动导引车;
所述优先自动导引车锁定所述目标节点,并将所述优先自动导引车从所述目标节点对应的等待列表中删除。
2.根据权利要求1所述的方法,其特征在于,所述利用反向追溯方法从所述目标节点对应的等待列表中确定一个优先自动导引车的步骤包括:
从所述目标节点对应的等待列表中确定等待锁定所述目标节点的每个自动导引车,将每个等待锁定目标节点的自动导引车分别作为反溯起始自动导引车,将每个等待锁定目标节点的自动导引车所处的节点作为反溯起始节点;
从每个反溯起始节点开始,获取对应的反溯起始自动导引车的行进方向相反的方向上的预定数量个节点作为待检测节点,所述反溯起始节点和待检测节点构成反溯路径;
针对每条反溯路径,根据该反溯路径上的每个节点对应的等待列表中与所述反溯起始自动导引车行进方向相同的自动导引车的数量,确定该反溯路径的拥堵参数;
根据每条反溯路径的拥堵参数,从每个反溯起始自动导引车中选择一个作为优先自动导引车。
3.根据权利要求1所述的方法,其特征在于,在获取自动导引车针对目标节点的锁定请求,且所述目标节点未被锁定的情况下,所述方法还包括:
所述自动导引车锁定所述目标节点。
4.根据权利要求1所述的方法,其特征在于,在获取自动导引车针对目标节点的锁定请求之后,在所述将所述自动导引车加入所述目标节点对应的等待列表中的步骤之前,还包括:
判断是否发生服务异常,在发生服务异常的情况下,每隔预设时间间隔尝试使用所述自动导引车锁定所述目标节点,直至所述自动导引车成功锁定所述目标节点,或者确定所述目标节点已被锁定为止。
5.根据权利要求1所述的方法,其特征在于,在将所述自动导引车加入所述目标节点对应的等待列表中的步骤之后,在获取所述目标节点被解除锁定的消息的步骤之前,所述方法还包括:
针对每个所述等待列表中的所述自动导引车,当接收到路径更换指令时,根据所述路径更换指令确定需要进行路径更换的自动导引车;
将所述需要进行路径更换的自动导引车从所在的所述等待列表中删除。
6.根据权利要求1所述的方法,其特征在于,在所述自动导引车出现异常的情况下,所述方法还包括:
在所述自动导引车锁定了所述节点的情况下,解除所述自动导引车对所述节点的锁定;
或者,在所述自动导引车加入了所述等待列表的情况下,将所述自动导引车从所在的所述等待列表中删除。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括监控等待列表中自动导引车个数的步骤:
确定每个等待列表中包含的自动导引车的第一总数;
根据所述第一总数与每个参与调度的所述自动导引车的第二总数,监控等待列表中的自动导引车个数。
8.一种自动导引车的调度装置,其特征在于,包括:
获取模块,用于获取自动导引车针对目标节点的锁定请求;所述目标节点为自动导引车行进路径上途经的下一个节点;
队列管理模块,用于在所述目标节点已被锁定的情况下,将所述自动导引车加入所述目标节点对应的等待列表中;所述等待列表用于存储等待锁定对应的节点的所述自动导引车的设备标识和通过对应的节点时的行进方向;还用于将所述优先自动导引车目标节点对应的等待列表中删除;
设备确定模块,用于在获取所述目标节点被解除锁定的消息时,利用反向追溯方法从所述目标节点对应的等待列表中确定一个优先自动导引车,所述优先自动导引车是优先锁定所述目标节点的自动导引车;
节点锁定模块,用于使用所述优先自动导引车锁定所述目标节点。
9.一种计算机可读存储介质,存储有计算机指令,其特征在于,所述指令被处理器执行时可实现权利要求1~7任一项所述的方法的步骤。
10.一种电子设备,其特征在于,该电子设备包括如权利要求9所述的计算机可读存储介质,还包括可执行所述计算机可读存储介质的处理器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910601422.7A CN112256010A (zh) | 2019-07-04 | 2019-07-04 | 自动导引车的调度方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910601422.7A CN112256010A (zh) | 2019-07-04 | 2019-07-04 | 自动导引车的调度方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112256010A true CN112256010A (zh) | 2021-01-22 |
Family
ID=74224365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910601422.7A Pending CN112256010A (zh) | 2019-07-04 | 2019-07-04 | 自动导引车的调度方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112256010A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835431A (zh) * | 2021-09-23 | 2021-12-24 | 江苏智库智能科技有限公司 | 一种用于多台四向穿梭同区域作业的调度方法和*** |
CN114326707A (zh) * | 2021-11-30 | 2022-04-12 | 深圳优地科技有限公司 | 机器人的移动控制方法、机器人及计算机可读存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012123795A (ja) * | 2010-11-18 | 2012-06-28 | Sumitomo Electric Ind Ltd | 時差現示評価支援装置及び時差現示評価支援方法 |
US20170274531A1 (en) * | 2016-03-25 | 2017-09-28 | Locus Robotics Corporation | Robot queueing in order-fulfillment operations |
CN108268016A (zh) * | 2018-01-19 | 2018-07-10 | 广东美的智能机器人有限公司 | 多移动机器人的冲突管理方法及*** |
CN108563219A (zh) * | 2017-12-29 | 2018-09-21 | 青岛海通机器人***有限公司 | 一种agv避让方法 |
CN108648492A (zh) * | 2018-06-26 | 2018-10-12 | 深兰科技(上海)有限公司 | 一种车辆引导的方法、装置、服务器和可读存储介质 |
CN109814580A (zh) * | 2019-04-03 | 2019-05-28 | 深圳市佳顺智能机器人股份有限公司 | 自动导引运输车的避障方法、***、主机及存储介质 |
CN109901569A (zh) * | 2017-12-11 | 2019-06-18 | 菜鸟智能物流控股有限公司 | 移动装置导航方法及相关设备 |
-
2019
- 2019-07-04 CN CN201910601422.7A patent/CN112256010A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012123795A (ja) * | 2010-11-18 | 2012-06-28 | Sumitomo Electric Ind Ltd | 時差現示評価支援装置及び時差現示評価支援方法 |
US20170274531A1 (en) * | 2016-03-25 | 2017-09-28 | Locus Robotics Corporation | Robot queueing in order-fulfillment operations |
CN109901569A (zh) * | 2017-12-11 | 2019-06-18 | 菜鸟智能物流控股有限公司 | 移动装置导航方法及相关设备 |
CN108563219A (zh) * | 2017-12-29 | 2018-09-21 | 青岛海通机器人***有限公司 | 一种agv避让方法 |
CN108268016A (zh) * | 2018-01-19 | 2018-07-10 | 广东美的智能机器人有限公司 | 多移动机器人的冲突管理方法及*** |
CN108648492A (zh) * | 2018-06-26 | 2018-10-12 | 深兰科技(上海)有限公司 | 一种车辆引导的方法、装置、服务器和可读存储介质 |
CN109814580A (zh) * | 2019-04-03 | 2019-05-28 | 深圳市佳顺智能机器人股份有限公司 | 自动导引运输车的避障方法、***、主机及存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835431A (zh) * | 2021-09-23 | 2021-12-24 | 江苏智库智能科技有限公司 | 一种用于多台四向穿梭同区域作业的调度方法和*** |
CN113835431B (zh) * | 2021-09-23 | 2024-03-19 | 江苏智库智能科技有限公司 | 一种用于多台四向穿梭同区域作业的调度方法和*** |
CN114326707A (zh) * | 2021-11-30 | 2022-04-12 | 深圳优地科技有限公司 | 机器人的移动控制方法、机器人及计算机可读存储介质 |
CN114326707B (zh) * | 2021-11-30 | 2024-05-10 | 深圳优地科技有限公司 | 机器人的移动控制方法、机器人及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110264720B (zh) | 驾驶模式提示方法、装置、设备及存储介质 | |
JP7136750B2 (ja) | 無人運転自動車配車方法、装置、機器及び記憶媒体 | |
US10827399B2 (en) | Method for switching roadside navigation unit in navigation system, and device | |
CN112208516A (zh) | 支持自动代客泊车的***和方法以及基础设施和车辆 | |
CN112256010A (zh) | 自动导引车的调度方法、装置及存储介质 | |
EP3704573B1 (de) | Verfahren zum durchführen eines softwareupdates in einem steuergerät eines kraftfahrzeugs sowie entsprechend eingerichtetes kraftfahrzeug | |
CN114281080B (zh) | 一种amr调度***中解死锁的方法 | |
WO2020184252A1 (ja) | 自動バレーパーキングシステム、自動バレーパーキングプログラムおよび記憶媒体 | |
CN112606881A (zh) | 一种基于车车通信的道岔自动触发方法及装置 | |
CN113212495B (zh) | 虚拟编组列车的道岔资源控制方法及道岔管理设备 | |
KR102644646B1 (ko) | Agv 이상 발생시 처리 방법, 장치, 전자설비 및 저장매체 | |
JP2007257154A (ja) | 搬送車管理装置、搬送車管理システム、搬送車管理方法及び搬送車管理プログラム | |
CN116468232B (zh) | 一种异常处理的方法、装置、设备及介质 | |
CN114815824A (zh) | 路径规划方法、路径规划装置以及计算机可读存储介质 | |
CN110580014A (zh) | 用于控制自动导引运输车的方法、装置和*** | |
JP2014172542A (ja) | 進路制御装置、進路制御方法、および進路制御プログラム | |
CN116030655A (zh) | 一种车辆控制方法、装置及*** | |
CN110968445A (zh) | 一种基于流程引擎的节点跳转方法、装置及电子设备 | |
CN112236349B (zh) | 列车控制装置和列车控制方法 | |
CN116880476B (zh) | 一种基于交通管控的agvs运行控制方法 | |
US11403725B2 (en) | Information processing apparatus and moving vehicle system | |
CN111079967B (zh) | 设备控制方法、装置、服务器、存储介质及设备控制*** | |
JP2001030905A (ja) | 列車制御システム、列車運転支援システム | |
CN106241522A (zh) | 电梯的地震管制运行控制***及其方法 | |
CN111695750B (zh) | 车辆调度方法、车辆调度装置及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |