CN113588195B - 碰撞堵塞检测方法及装置 - Google Patents
碰撞堵塞检测方法及装置 Download PDFInfo
- Publication number
- CN113588195B CN113588195B CN202110915039.6A CN202110915039A CN113588195B CN 113588195 B CN113588195 B CN 113588195B CN 202110915039 A CN202110915039 A CN 202110915039A CN 113588195 B CN113588195 B CN 113588195B
- Authority
- CN
- China
- Prior art keywords
- robot
- position information
- collision
- serial number
- relation
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01M—TESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
- G01M7/00—Vibration-testing of structures; Shock-testing of structures
- G01M7/08—Shock-testing
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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
Abstract
本发明提供一种碰撞堵塞检测方法及装置,包括以下步骤:获取第一机器人的第一位置信息和第二位置信息;所述第一位置信息为所述第一机器人执行移动指令前所在位置的信息;所述第二位置信息为所述第一机器人执行所述移动指令后所在位置的信息;基于所述第一位置信息和所述第二位置信息,遍历所述机器人组,创建机器人关系有向图、机器人碰撞关系表和机器人堵塞关系表;基于所述机器人关系有向图、所述机器人碰撞关系表以及所述机器人堵塞关系表,确定机器人碰撞堵塞检测结果。本发明的碰撞堵塞检测方法及装置无需将一个机器人和其他所有机器人进行比较判断,保证了碰撞堵塞检测的低复杂度,提高整体智能系统的工作效率。
Description
技术领域
本发明涉及路径控制领域,特别是涉及一种碰撞堵塞检测方法及装置。
背景技术
目前,智能仓储使用机器人代替人力进行货物运输已成为趋势,相比于传统仓库作业模式,这种方式能够节省5-7成的人工成本,有效提高平均效率,降低错单率和产品损耗率,从而大幅降低仓库的运营成本。这种处理方法的关键是机器人路径的规划,其中,对机器人碰撞堵塞的检测是重要的技术环节,检测方法的复杂度影响自动导引车(AutomatedGuided Vehicle,AGV)的路径规划和安全管理的实际部署。
现有技术中的智能体路径规划算法,如基于冲突的搜索(Conflict BasedSearch,CBS)中用于检测碰撞的算法的计算复杂度为o(n2),使得CBS的实际部署变得困难。
因此,如何保证碰撞堵塞检测方法的低复杂度是一个亟待解决的问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种碰撞堵塞检测方法及装置,用于解决现有技术中碰撞检测算法的高复杂度的问题。
为实现上述目的及其他相关目的,本发明提供一种碰撞堵塞检测方法及装置,包括以下步骤:获取第一机器人的第一位置信息和第二位置信息;所述第一位置信息为所述第一机器人执行移动指令前所在位置的信息;所述第二位置信息为所述第一机器人执行所述移动指令后所在位置的信息;所述第一机器人为机器人组中的任一机器人;所述移动指令为在非碰撞堵塞条件下移动一次的操作指令;基于所述第一位置信息和所述第二位置信息,遍历所述机器人组,创建机器人关系有向图、机器人碰撞关系表和机器人堵塞关系表;基于所述机器人关系有向图、所述机器人碰撞关系表以及所述机器人堵塞关系表,确定机器人碰撞堵塞检测结果。
于本发明的一实施例中,所述第一位置信息包括第一机器人的编号和第一位置坐标,所述第一位置信息应用哈希函数以键值对的形式记录;所述第二位置信息包括所述第一机器人的编号、第二位置坐标以及移动指令,所述第二位置信息应用所述哈希函数以键值对的形式记录。
于本发明的一实施例中,所述基于所述第一位置信息和所述第二位置信息,遍历所述机器人组,创建机器人关系有向图、机器人碰撞关系表和机器人堵塞关系表,包括:基于所述第二位置信息,获取第一键值对,所述第一键值对包括所述第一机器人的编号、所述第二位置坐标以及第一移动指令;所述第一移动指令包括第一移动方向;基于所述第一位置信息和所述第一键值对中的第二位置坐标,遍历所述机器人组;当所述第一位置信息中存在所述第二位置坐标对应的第二机器人的编号时,根据所述第二机器人的编号、所述第二位置信息,遍历所述机器人组,确定第二键值对,所述第二键值对包括所述第二机器人的编号、第三位置坐标以及第二移动指令;所述第二移动指令包括第二移动方向;当所述第一移动方向和所述第二移动方向相同时,将所述第二机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;当所述第一移动方向和所述第二移动方向相反时,将所述第一机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;并将所述第一机器人的编号和所述第二机器人的编号添加至所述机器人碰撞关系表中;当所述第一移动方向和所述第二移动方向不同且不相反时,将所述第一机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;并将所述第一机器人的编号和所述第二机器人的编号添加至所述机器人堵塞关系表中。
于本发明的一实施例中,所述基于所述第一位置信息和所述第一键值对中的第二位置坐标,遍历所述机器人组之后,还包括:当所述第一位置信息中不存在所述第二位置坐标对应的第二机器人的编号时,新建第一编号,所述第一编号不属于所述机器人组中的任一机器人的编号;将所述第一编号指向所述第一机器人的编号添加至所述机器人关系有向图中。
于本发明的一实施例中,所述基于所述机器人关系有向图、所述机器人碰撞关系表以及所述机器人堵塞关系表,确定机器人碰撞堵塞检测结果,包括:当所述机器人关系有向图中存在所述第一编号指向所述第一机器人的编号和第三机器人的编号时,将所述第一机器人的编号和所述第三机器人的编号更新至所述机器人碰撞关系表中;基于更新后的所述机器人碰撞关系表和所述机器人堵塞关系表,确定所述机器人碰撞堵塞检测结果。
对应地,本发明提供一种碰撞堵塞检测装置,包括:获取模块,用于获取第一机器人的第一位置信息和第二位置信息;所述第一位置信息为所述第一机器人执行移动指令前所在位置的信息;所述第二位置信息为所述第一机器人执行所述移动指令后所在位置的信息;所述第一机器人为机器人组中的任一机器人;所述移动指令为在非碰撞堵塞条件下移动一次的操作指令;处理模块,用于基于所述第一位置信息和所述第二位置信息,遍历所述机器人组,创建机器人关系有向图、机器人碰撞关系表和机器人堵塞关系表;确定模块,用于基于所述机器人关系有向图、所述机器人碰撞关系表以及所述机器人堵塞关系表,确定机器人碰撞堵塞检测结果。
于本发明的一实施例中,所述第一位置信息包括第一机器人的编号和第一位置坐标,所述第一位置信息应用哈希函数以键值对的形式记录;所述第二位置信息包括所述第一机器人的编号、第二位置坐标以及移动指令,所述第二位置信息应用所述哈希函数以键值对的形式记录。
于本发明的一实施例中,所述处理模块,具体用于:基于所述第二位置信息,获取第一键值对,所述第一键值对包括所述第一机器人的编号、所述第二位置坐标以及第一移动指令;所述第一移动指令包括第一移动方向;基于所述第一位置信息和所述第一键值对中的第二位置坐标,遍历所述机器人组;当所述第一位置信息中存在所述第二位置坐标对应的第二机器人的编号时,根据所述第二机器人的编号、所述第二位置信息,遍历所述机器人组,确定第二键值对,所述第二键值对包括所述第二机器人的编号、第三位置坐标以及第二移动指令;所述第二移动指令包括第二移动方向;当所述第一移动方向和所述第二移动方向相同时,将所述第二机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;当所述第一移动方向和所述第二移动方向相反时,将所述第一机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;并将所述第一机器人的编号和所述第二机器人的编号添加至所述机器人碰撞关系表中;当所述第一移动方向和所述第二移动方向不同且不相反时,将所述第一机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;并将所述第一机器人的编号和所述第二机器人的编号添加至所述机器人堵塞关系表中。
本发明提供一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的碰撞堵塞检测方法。
本发明提供一种碰撞堵塞检测系统,包括存储器,用于存储计算机程序;处理器,用于运行所述计算机程序以实现上述的碰撞堵塞检测方法。
如上所述,本发明的碰撞堵塞检测方法及装置,具有以下有益效果:
基于机器人执行移动指令前后的位置,以及不同机器人对应位置的关联关系,确定出机器人的碰撞堵塞检测结果,从而无需将一个机器人和其他所有机器人进行比较判断,进而保证了碰撞堵塞检测的低复杂度,提高了整体智能系统的工作效率。
附图说明
图1显示为本发明的碰撞堵塞检测方法于一实施例中的流程图。
图2显示为本发明的碰撞堵塞检测方法于一实施例中的机器人分布情况。
图3显示为本发明的碰撞堵塞检测方法于一实施例中的机器人关系有向图。
图4显示为本发明的碰撞堵塞检测装置于一实施例中的结构示意图。
图5显示为本发明的碰撞堵塞检测装置于一实施例中的碰撞堵塞检测系统。
元件标号说明
41 获取模块
42 处理模块
43 确定模块
51 处理器
52 存储器
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
本发明的碰撞堵塞检测方法及装置基于机器人执行移动指令前后的位置,以及不同机器人对应位置的关联关系,确定出机器人的碰撞堵塞检测结果,从而无需将一个机器人和其他所有机器人进行比较判断,进而保证了碰撞堵塞检测的低复杂度,提高了整体智能系统的工作效率。
如图1所示,于一实施例中,本发明的碰撞堵塞检测方法包括以下步骤:
步骤S1、获取第一机器人的第一位置信息和第二位置信息;所述第一位置信息为所述第一机器人执行移动指令前所在位置的信息;所述第二位置信息为所述第一机器人执行所述移动指令后所在位置的信息;所述第一机器人为机器人组中的任一机器人;所述移动指令为在非碰撞堵塞条件下移动一次的操作指令。
具体地,所述第一位置信息包括第一机器人的编号和第一位置坐标,所述第一位置信息应用哈希函数以键值对的形式记录;所述第二位置信息包括所述第一机器人的编号、第二位置坐标以及移动指令,所述第二位置信息应用所述哈希函数以键值对的形式记录。
进一步具体地,在获取第一机器人的第一位置信息和第二位置信息之前,对机器人所在环境进行栅格地图建模,对建模的栅格地图上的结点赋予属性位置P,要求不同地图结点的位置P不同;并选择一个哈希函数,记为hash以用于对栅格地图进行搜索,对搜索到的第一位置信息和第二位置信息进行键值对形式的记录。其中,属性位置P的标记形式可以设定为地图结点的唯一ID,也可以设定为地图结点的二维坐标。比如,对第一机器人,获取到的第一位置信息包括第一机器人的编号AGV-ID和位置P;当P设定为ID时,对第一位置信息的记录为键值对<P,AGV-ID>;当P设定为二维坐标(Px,Py)时,先计算hashP=hash(hash(Px)+Py);再对第一位置信息进行记录,记录的键值对为<hashP,AGV-ID>。类似地,对第一机器人,获取到的第二位置信息包括第一机器人的编号AGV-ID、位置P以及移动指令A;当P设定为ID时,对第二位置信息的记录为键值对<AGV-ID,(P,A)>;当P设定为二维坐标时,先计算hashP=hash(hash(Px)+Py),再对第二位置信息进行记录,记录的键值对为<AGV-ID,(hashP,A)>,本实施例中以P设定为二维坐标为例,其他情况不再赘述。
如图2所示,于本实施例中的机器人分布情况,其中箭头表示对应机器人需要执行的移动指令,以1号机器人为例,其AGV-ID=1,位置P=(2,3),计算hashP=hash(hash(2)+3),第一位置信息记录的键值对为<hash(hash(2)+3),1>;在执行移动指令且该移动指令是不考虑碰撞堵塞的情况下,移动至第二位置信息,其AGV-ID=1,执行的指令为向右,位置P=(3,3),计算hashP=hash(hash(3)+3),第二位置信息记录的键值对为<1,(hash(hash(3)+3),右)>。图2中机器人组共有8个机器人,应用哈希函数对栅格地图上的机器人进行遍历搜索,得到每个机器人的第一位置信息和第二位置信息,比如5号机器人的第一位置信息为<hash(hash(7)+3),5>;第二位置信息为<5,(hash(hash(7)+4),下)>;8号机器人的第一位置信息为<hash(hash(6)+6),8>;第二位置信息为<8,(hash(hash(5)+6),左)>,其他机器人的位置信息详情如下表一所示。
表一
步骤S2、基于所述第一位置信息和所述第二位置信息,遍历所述机器人组,创建机器人关系有向图、机器人碰撞关系表和机器人堵塞关系表。
具体地,基于所述第二位置信息,获取第一键值对,所述第一键值对包括所述第一机器人的编号、所述第二位置坐标以及第一移动指令;所述第一移动指令包括第一移动方向;基于所述第一位置信息和所述第一键值对中的第二位置坐标,遍历所述机器人组;当所述第一位置信息中存在所述第二位置坐标对应的第二机器人的编号时,根据所述第二机器人的编号、所述第二位置信息,遍历所述机器人组,确定第二键值对,所述第二键值对包括所述第二机器人的编号、第三位置坐标以及第二移动指令;所述第二移动指令包括第二移动方向;当所述第一移动方向和所述第二移动方向相同时,将所述第二机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;当所述第一移动方向和所述第二移动方向相反时,将所述第一机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;并将所述第一机器人的编号和所述第二机器人的编号添加至所述机器人碰撞关系表中;当所述第一移动方向和所述第二移动方向不同且不相反时,将所述第一机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;并将所述第一机器人的编号和所述第二机器人的编号添加至所述机器人堵塞关系表中。其中,第一移动方向、第二移动方向都包括有上、下、左、右四个方向;机器人关系有向图中的节点为机器人的编号,第二机器人的编号指向第一机器人的编号表示如果第二机器人能够正常移动则第一机器人也能够正常移动。
举例来说,预先初始化空的机器人关系有向图G,初始化机器人碰撞关系表R以及初始化机器人堵塞关系表T;基于第二位置信息,获取第一键值对,记为<AGV-ID0,(P0,A0)>;如果此时遍历机器人组都未获得第二位置信息对应的键值对,说明还未有机器人移动位置,结束操作。基于P0,遍历机器人组,查询第一位置信息中是否存在P0;当第一位置信息中存在P0时,获取P0对应的键值对为<P0,AGV-ID1>,基于AGV-ID1,遍历机器人组,查询第二位置信息,确定第二键值对,记为<AGV-ID1,(P1,A1)>。
第一种情况,当A0与A1方向相同时,将边AGV-ID1→AGV-ID0添加至机器人关系有向图G中;以8号机器人为例,第一键值对为<8,(hash(hash(5)+6),左)>,根据hash(hash(5)+6),查询第一位置信息得到的键值对为<(hash(hash(5)+6)),7>,再根据机器人编号7,查询第二位置信息,确定第二键值对为<7,(hash(hash(4)+6),左)>。这里A0为左,A1为左,方向相同,将边7→8添加至机器人关系有向图G中。
第二种情况,当A0与A1方向相反时,将边AGV-ID0→AGV-ID0添加至机器人关系有向图G中,并将键值对<AGV-ID0,碰撞信息>添加至机器人碰撞关系表R中;以5号机器人为例,第一键值对为<5,(hash(hash(7)+4),下)>,根据hash(hash(7)+4),查询第一位置信息得到的键值对为<(hash(hash(7)+4),6>,再根据机器人编号6,查询第二位置信息,确定第二键值对为<6,(hash(hash(7)+3),上)>。这里A0为下,A1为上,方向相反,将边5→5添加至机器人关系有向图G中,将键值对<5,与6发生碰撞>添加至机器人碰撞关系表R中。
其余情况,即A0与A1方向不同且不相反时,比如A0为下,A1为右;将边AGV-ID0→AGV-ID0添加至机器人关系有向图G中,并将键值对<AGV-ID-0,堵塞信息>添加至机器人堵塞关系表T中;以1号机器人为例,第一键值对为<1,(hash(hash(3)+3),右)>,根据hash(hash(3)+3),查询第一位置信息得到的键值对为<(hash(hash(3)+3),2>,再根据机器人编号2,查询第二位置信息,确定第二键值对为<2,(hash(hash(3)+4),下)>。这里A0为右,A1为下,属于其他情况,将边1→1添加至机器人关系有向图G中,将键值对<1,与2发生堵塞>添加至机器人堵塞关系表T中。
上述情况的步骤处理都是在基于P0,遍历机器人组,查询第一位置信息中存在P0的条件下发生的;当查询第一位置信息中不存在P0时进行的步骤处理详情如下。
进一步具体地,当所述第一位置信息中不存在所述第二位置坐标对应的第二机器人的编号时,新建第一编号,所述第一编号不属于所述机器人组中的任一机器人的编号;将所述第一编号指向所述第一机器人的编号添加至所述机器人关系有向图中。
举例来说,新建的第一编号和机器人组中任一机器人的编号都不同,记为startNode,将边startNode→AGV-ID0添加至机器人关系有向图G中;以2号机器人为例,第一键值对为<2,(hash(hash(3)+4),下)>,根据hash(hash(3)+4)查询第一位置信息,并不存在对应的键值对,这时生成一个和所有AGV-ID不同的ID,此处取-1,将边-1→2添加至机器人关系有向图G中。
按照上述步骤处理,遍历机器人组,得到机器人关系有向图如图3所示,于本实施例中的机器人关系有向图,机器人碰撞关系表和机器人堵塞关系表如下表二所示。
表二
步骤S3、基于所述机器人关系有向图、所述机器人碰撞关系表以及所述机器人堵塞关系表,确定机器人碰撞堵塞检测结果。
具体地,当所述机器人关系有向图中存在所述第一编号指向所述第一机器人的编号和第三机器人的编号时,将所述第一机器人的编号和所述第三机器人的编号更新至所述机器人碰撞关系表中;基于更新后的所述机器人碰撞关系表和所述机器人堵塞关系表,确定所述机器人碰撞堵塞检测结果。
举例来说,以3号机器人和4号机器人为例,这两个机器人的第二位置信息中的位置坐标都为P=(5,2),根据这个位置坐标查询第一位置信息都不存在对应的机器人编号,因此新建一个机器人编号C,并且该机器人编号C既指向机器人编号3也指向机器人编号4,即在机器人关系有向图中存在新建机器人编号C同时指向2个其他的机器人编号,在这种情况下,将3号机器人和4号机器人添加至机器人碰撞关系表中,确定出最终的碰撞堵塞检测结果如下表三所示。
表三
机器人编号 | 碰撞堵塞检测结果 |
1 | 与2发生堵塞 |
3 | 与4发生碰撞 |
4 | 与3发生碰撞 |
5 | 与6发生碰撞 |
6 | 与5发生碰撞 |
图5
进一步具体地,根据表三中列出的机器人编号,可以得到能正确执行移动指令的机器人的编号有2、7、8;不能正确执行移动指令的机器人的编号有1、3、4、5、6;或者根据机器人关系有向图中仅指向一个机器人编号的新建第一编号为起点,对机器人关系有向图进行访问,以得到一条以新建第一编号为起点的轨迹,该轨迹上的点即为能正确执行移动指令的机器人的编号2、7、8;除这些编号外的剩余机器人的编号1、3、4、5、6即为不能正确执行移动指令的机器人的编号。
如图4所示,于一实施例中,本发明的碰撞堵塞检测装置包括:
获取模块41,用于获取第一机器人的第一位置信息和第二位置信息;所述第一位置信息为所述第一机器人执行移动指令前所在位置的信息;所述第二位置信息为所述第一机器人执行所述移动指令后所在位置的信息;所述第一机器人为机器人组中的任一机器人;所述移动指令为在非碰撞堵塞条件下移动一次的操作指令;
处理模块42,用于基于所述第一位置信息和所述第二位置信息,遍历所述机器人组,创建机器人关系有向图、机器人碰撞关系表和机器人堵塞关系表;
确定模块43,用于基于所述机器人关系有向图、所述机器人碰撞关系表以及所述机器人堵塞关系表,确定机器人碰撞堵塞检测结果。
其中,所述第一位置信息包括第一机器人的编号和第一位置坐标,所述第一位置信息应用哈希函数以键值对的形式记录;所述第二位置信息包括所述第一机器人的编号、第二位置坐标以及移动指令,所述第二位置信息应用所述哈希函数以键值对的形式记录。
本实施例的碰撞堵塞检测装置具体实现的技术特征与实施例1中碰撞堵塞检测方法中的各步骤的原理基本相同,方法和装置之间可以通用的技术内容不作重复赘述。
本发明的存储介质上存储有计算机程序,该程序被处理器执行时实现上述的碰撞堵塞检测方法。
如图5所示,于一实施例中,本发明的碰撞堵塞检测系统包括:处理器51及存储器52。
所述存储器52用于存储计算机程序。
所述存储器52包括:ROM、RAM、磁碟、U盘、存储卡或者光盘等各种可以存储程序代码的介质。
所述处理器51与所述存储器52相连,用于执行所述存储器52存储的计算机程序,以使所述碰撞堵塞检测系统执行上述的碰撞堵塞检测方法。
优选地,上述的处理器51可以是通用处理器,包括中央处理器(CentralProcessing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-ProgrammableGate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
综上所述,本发明的碰撞堵塞检测方法及装置基于机器人执行移动指令前后的位置,以及不同机器人对应位置的关联关系,确定出机器人的碰撞堵塞检测结果,从而无需将一个机器人和其他所有机器人进行比较判断,进而保证了碰撞堵塞检测的低复杂度,提高了整体智能系统的工作效率。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (6)
1.一种碰撞堵塞检测方法,其特征在于,所述碰撞堵塞检测方法包括以下步骤:
获取第一机器人的第一位置信息和第二位置信息;所述第一位置信息为所述第一机器人执行移动指令前所在位置的信息;所述第二位置信息为所述第一机器人执行所述移动指令后所在位置的信息;所述第一机器人为机器人组中的任一机器人;所述移动指令为在非碰撞堵塞条件下移动一次的操作指令;所述第一位置信息包括第一机器人的编号和第一位置坐标,所述第一位置信息应用哈希函数以键值对的形式记录;所述第二位置信息包括所述第一机器人的编号、第二位置坐标以及移动指令,所述第二位置信息应用所述哈希函数以键值对的形式记录;
基于所述第一位置信息和所述第二位置信息,遍历所述机器人组,创建机器人关系有向图、机器人碰撞关系表和机器人堵塞关系表;包括:
基于所述第二位置信息,获取第一键值对,所述第一键值对包括所述第一机器人的编号、所述第二位置坐标以及第一移动指令;所述第一移动指令包括第一移动方向;
基于所述第一位置信息和所述第一键值对中的第二位置坐标,遍历所述机器人组;
当所述第一位置信息中存在所述第二位置坐标对应的第二机器人的编号时,根据所述第二机器人的编号、所述第二位置信息,遍历所述机器人组,确定第二键值对,所述第二键值对包括所述第二机器人的编号、第三位置坐标以及第二移动指令;所述第二移动指令包括第二移动方向;
当所述第一移动方向和所述第二移动方向相同时,将所述第二机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;
当所述第一移动方向和所述第二移动方向相反时,将所述第一机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;并将所述第一机器人的编号和所述第二机器人的编号添加至所述机器人碰撞关系表中;
当所述第一移动方向和所述第二移动方向不同且不相反时,将所述第一机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;并将所述第一机器人的编号和所述第二机器人的编号添加至所述机器人堵塞关系表中;
基于所述机器人关系有向图、所述机器人碰撞关系表以及所述机器人堵塞关系表,确定机器人碰撞堵塞检测结果。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第一位置信息和所述第一键值对中的第二位置坐标,遍历所述机器人组之后,还包括:
当所述第一位置信息中不存在所述第二位置坐标对应的第二机器人的编号时,新建第一编号,所述第一编号不属于所述机器人组中的任一机器人的编号;
将所述第一编号指向所述第一机器人的编号添加至所述机器人关系有向图中。
3.根据权利要求2所述的方法,其特征在于,所述基于所述机器人关系有向图、所述机器人碰撞关系表以及所述机器人堵塞关系表,确定机器人碰撞堵塞检测结果,包括:
当所述机器人关系有向图中存在所述第一编号指向所述第一机器人的编号和第三机器人的编号时,将所述第一机器人的编号和所述第三机器人的编号更新至所述机器人碰撞关系表中;
基于更新后的所述机器人碰撞关系表和所述机器人堵塞关系表,确定所述机器人碰撞堵塞检测结果。
4.一种碰撞堵塞检测装置,其特征在于,包括:
获取模块,用于获取第一机器人的第一位置信息和第二位置信息;所述第一位置信息为所述第一机器人执行移动指令前所在位置的信息;所述第二位置信息为所述第一机器人执行所述移动指令后所在位置的信息;所述第一机器人为机器人组中的任一机器人;所述移动指令为在非碰撞堵塞条件下移动一次的操作指令;所述第一位置信息包括第一机器人的编号和第一位置坐标,所述第一位置信息应用哈希函数以键值对的形式记录;所述第二位置信息包括所述第一机器人的编号、第二位置坐标以及移动指令,所述第二位置信息应用所述哈希函数以键值对的形式记录;
处理模块,用于基于所述第一位置信息和所述第二位置信息,遍历所述机器人组,创建机器人关系有向图、机器人碰撞关系表和机器人堵塞关系表;所述处理模块,具体用于:
基于所述第二位置信息,获取第一键值对,所述第一键值对包括所述第一机器人的编号、所述第二位置坐标以及第一移动指令;所述第一移动指令包括第一移动方向;
基于所述第一位置信息和所述第一键值对中的第二位置坐标,遍历所述机器人组;
当所述第一位置信息中存在所述第二位置坐标对应的第二机器人的编号时,根据所述第二机器人的编号、所述第二位置信息,遍历所述机器人组,确定第二键值对,所述第二键值对包括所述第二机器人的编号、第三位置坐标以及第二移动指令;所述第二移动指令包括第二移动方向;
当所述第一移动方向和所述第二移动方向相同时,将所述第二机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;
当所述第一移动方向和所述第二移动方向相反时,将所述第一机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;并将所述第一机器人的编号和所述第二机器人的编号添加至所述机器人碰撞关系表中;
当所述第一移动方向和所述第二移动方向不同且不相反时,将所述第一机器人的编号指向所述第一机器人的编号添加至所述机器人关系有向图中;并将所述第一机器人的编号和所述第二机器人的编号添加至所述机器人堵塞关系表中;
确定模块,用于基于所述机器人关系有向图、所述机器人碰撞关系表以及所述机器人堵塞关系表,确定机器人碰撞堵塞检测结果。
5.一种存储介质,存储有程序指令,其中,所述程序指令被执行时实现如权利要求1至权利要求3任一项所述的碰撞堵塞检测方法的步骤。
6.一种检测系统,其特征在于:包括存储器,用于存储计算机程序;处理器,用于运行所述计算机程序以实现如权利要求1至权利要求3任一权利要求所述的碰撞堵塞检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110915039.6A CN113588195B (zh) | 2021-08-10 | 2021-08-10 | 碰撞堵塞检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110915039.6A CN113588195B (zh) | 2021-08-10 | 2021-08-10 | 碰撞堵塞检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113588195A CN113588195A (zh) | 2021-11-02 |
CN113588195B true CN113588195B (zh) | 2022-07-26 |
Family
ID=78256837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110915039.6A Active CN113588195B (zh) | 2021-08-10 | 2021-08-10 | 碰撞堵塞检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113588195B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105760468A (zh) * | 2016-02-05 | 2016-07-13 | 大连大学 | 移动环境下基于倒排位置敏感哈希索引的大规模图象查询系统 |
CN107962569A (zh) * | 2017-11-23 | 2018-04-27 | 珠海格力电器股份有限公司 | 一种机器人的碰撞检测方法、装置及智能机器人 |
CN108415420A (zh) * | 2018-01-25 | 2018-08-17 | 上海思岚科技有限公司 | 一种用于移动机器人搜索路径的方法及设备 |
CN110009519A (zh) * | 2019-01-29 | 2019-07-12 | 上海七印信息科技有限公司 | 一种基于区块链社交平台的社群检测方法 |
CN110147091A (zh) * | 2018-02-13 | 2019-08-20 | 深圳市优必选科技有限公司 | 机器人运动控制方法、装置及机器人 |
CN111248819A (zh) * | 2020-03-13 | 2020-06-09 | 深圳市银星智能科技股份有限公司 | 一种清洁路径执行方法及清洁机器人 |
CN112060079A (zh) * | 2020-07-30 | 2020-12-11 | 深圳市优必选科技股份有限公司 | 机器人及其碰撞检测方法和装置 |
CN112580630A (zh) * | 2020-12-23 | 2021-03-30 | 上海有个机器人有限公司 | 机器人反光标志的识别方法、系统、机器人及计算机存储介质 |
-
2021
- 2021-08-10 CN CN202110915039.6A patent/CN113588195B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105760468A (zh) * | 2016-02-05 | 2016-07-13 | 大连大学 | 移动环境下基于倒排位置敏感哈希索引的大规模图象查询系统 |
CN107962569A (zh) * | 2017-11-23 | 2018-04-27 | 珠海格力电器股份有限公司 | 一种机器人的碰撞检测方法、装置及智能机器人 |
CN108415420A (zh) * | 2018-01-25 | 2018-08-17 | 上海思岚科技有限公司 | 一种用于移动机器人搜索路径的方法及设备 |
CN110147091A (zh) * | 2018-02-13 | 2019-08-20 | 深圳市优必选科技有限公司 | 机器人运动控制方法、装置及机器人 |
CN110009519A (zh) * | 2019-01-29 | 2019-07-12 | 上海七印信息科技有限公司 | 一种基于区块链社交平台的社群检测方法 |
CN111248819A (zh) * | 2020-03-13 | 2020-06-09 | 深圳市银星智能科技股份有限公司 | 一种清洁路径执行方法及清洁机器人 |
CN112060079A (zh) * | 2020-07-30 | 2020-12-11 | 深圳市优必选科技股份有限公司 | 机器人及其碰撞检测方法和装置 |
CN112580630A (zh) * | 2020-12-23 | 2021-03-30 | 上海有个机器人有限公司 | 机器人反光标志的识别方法、系统、机器人及计算机存储介质 |
Non-Patent Citations (1)
Title |
---|
"层状装配系统的自动装配规划研究";王武荣;《中国机械工程》;20051230;第16卷(第23期);第2157-2161页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113588195A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109724612B (zh) | 一种基于拓扑地图的agv路径规划方法及设备 | |
US11300964B2 (en) | Method and system for updating occupancy map for a robotic system | |
US11269336B2 (en) | Method and system for free space detection in a cluttered environment | |
US8255077B2 (en) | Apparatus, method and program for creating tool reference plane | |
KR20160079853A (ko) | 피처들의 가시성을 결정하기 위한 시스템들, 방법들, 및 산업 차량들 | |
Senarathne et al. | Efficient frontier detection and management for robot exploration | |
CN112526993A (zh) | 栅格地图更新方法、装置、机器人及存储介质 | |
WO2018189845A1 (ja) | 作業管理システム及び作業管理方法 | |
CN109816131B (zh) | 路径规划方法、路径规划装置及计算机可读存储介质 | |
CN113671965A (zh) | 路径规划方法及装置 | |
CN113588195B (zh) | 碰撞堵塞检测方法及装置 | |
Le et al. | Search-based planning and replanning in robotics and autonomous systems | |
CN113253675B (zh) | 一种面向二维的三轴刀位点运算方法及系统 | |
CN110688439A (zh) | 一种基于区域地理编码自动识别企业信息和分析的方法 | |
CN114675292A (zh) | 库位状态检测方法、装置、设备、存储介质及程序产品 | |
Fan et al. | Research and implementation of multi-robot path planning based on genetic algorithm | |
CN110968738B (zh) | 智能站描述文件数据类型模板嵌套环检测方法及系统 | |
CN111591775A (zh) | 可移动设备码垛的方法、装置、存储介质与处理器 | |
CN110851955A (zh) | 多边形与多边形位置关系判断方法、系统和计算机可读存储介质 | |
EP3828789A1 (en) | Method and apparatus for planning path of unmanned device | |
US7653498B2 (en) | Apparatus for and method of calculating many-body problem | |
CN113465621B (zh) | 一种考虑冲突概率的Dijkstra路径规划方法、装置及存储介质 | |
CN109299125A (zh) | 数据库更新方法及装置 | |
JP3755268B2 (ja) | 無人搬送車制御装置および無人搬送車制御方法 | |
CN111912407B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |