CN116443527B - 基于激光雷达的托盘叉取方法、装置、设备和介质 - Google Patents
基于激光雷达的托盘叉取方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN116443527B CN116443527B CN202310692858.8A CN202310692858A CN116443527B CN 116443527 B CN116443527 B CN 116443527B CN 202310692858 A CN202310692858 A CN 202310692858A CN 116443527 B CN116443527 B CN 116443527B
- Authority
- CN
- China
- Prior art keywords
- tray
- information
- robot
- identification
- identification point
- 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
- 238000000034 method Methods 0.000 title claims abstract description 55
- 239000011159 matrix material Substances 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 17
- 238000012216 screening Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101000822695 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C1 Proteins 0.000 description 1
- 101000655262 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C2 Proteins 0.000 description 1
- 101000655256 Paraclostridium bifermentans Small, acid-soluble spore protein alpha Proteins 0.000 description 1
- 101000655264 Paraclostridium bifermentans Small, acid-soluble spore protein beta Proteins 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G43/00—Control devices, e.g. for safety, warning or fault-correcting
- B65G43/08—Control devices operated by article or material being fed, conveyed or discharged
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G43/00—Control devices, e.g. for safety, warning or fault-correcting
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G47/00—Article or material-handling devices associated with conveyors; Methods employing such devices
- B65G47/74—Feeding, transfer, or discharging devices of particular kinds or types
- B65G47/90—Devices for picking-up and depositing articles or materials
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B66—HOISTING; LIFTING; HAULING
- B66F—HOISTING, LIFTING, HAULING OR PUSHING, NOT OTHERWISE PROVIDED FOR, e.g. DEVICES WHICH APPLY A LIFTING OR PUSHING FORCE DIRECTLY TO THE SURFACE OF A LOAD
- B66F9/00—Devices for lifting or lowering bulky or heavy goods for loading or unloading purposes
- B66F9/06—Devices for lifting or lowering bulky or heavy goods for loading or unloading purposes movable, with their loads, on wheels or the like, e.g. fork-lift trucks
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B66—HOISTING; LIFTING; HAULING
- B66F—HOISTING, LIFTING, HAULING OR PUSHING, NOT OTHERWISE PROVIDED FOR, e.g. DEVICES WHICH APPLY A LIFTING OR PUSHING FORCE DIRECTLY TO THE SURFACE OF A LOAD
- B66F9/00—Devices for lifting or lowering bulky or heavy goods for loading or unloading purposes
- B66F9/06—Devices for lifting or lowering bulky or heavy goods for loading or unloading purposes movable, with their loads, on wheels or the like, e.g. fork-lift trucks
- B66F9/075—Constructional features or details
- B66F9/0755—Position control; Position detectors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G2201/00—Indexing codes relating to handling devices, e.g. conveyors, characterised by the type of product or load being conveyed or handled
- B65G2201/02—Articles
- B65G2201/0235—Containers
- B65G2201/0258—Trays, totes or bins
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G2203/00—Indexing code relating to control or detection of the articles or the load carriers during conveying
- B65G2203/04—Detection means
- B65G2203/042—Sensors
- B65G2203/044—Optical
Landscapes
- Engineering & Computer Science (AREA)
- Transportation (AREA)
- Structural Engineering (AREA)
- Mechanical Engineering (AREA)
- Civil Engineering (AREA)
- Life Sciences & Earth Sciences (AREA)
- Geology (AREA)
- Manipulator (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本发明公开了一种基于激光雷达的托盘叉取方法、装置、设备和介质。控制机器人行驶至当前执行的托盘搬运任务对应的预识别点位,并在预识别点位处获取激光雷达点云数据;根据激光雷达点云数据确定中间托盘位姿信息,并根据中间托盘位姿信息对预先标注的参考再识别点位信息进行更新,得到更新再识别点位信息;控制机器人行驶至更新再识别点位,在更新再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息,并根据所述目标托盘位姿信息控制所述机器人进行托盘叉取。本发明通过机器人根据在再识别点位获取的托盘位姿信息进行托盘精准叉取,可以有效减少车体调整次数和调整幅度,避免在狭窄场景中多次来回调整车体姿态,提高托盘叉取效率。
Description
技术领域
本发明涉及激光雷达信号技术领域,尤其涉及一种基于激光雷达的托盘叉取方法、装置、设备和介质。
背景技术
AMR(Automatic Mobile Robot 自主移动机器人)是一种工业机器人,可以用来运输托盘等物料,随着信息技术的进步和自动化水平的成熟,AMR被广泛应用在搬运、堆垛、物流等各个领域。
AMR在运输托盘前需要对托盘进行精准叉取,现有技术中在叉取托盘时AMR需要在离托盘一段距离的位置处对托盘进行扫描,获取到托盘位姿信息,然后根据托盘位姿信息调整AMR的车体姿态以对托盘进行精准叉取。
但是由于AMR进行车体姿态调整需要在宽敞场景下,因此若托盘放置在狭小空间下,AMR行驶的巷道宽度较窄,就需要AMR多次来回调整车体姿态,导致叉取耗时较长,严重损失对托盘的叉取效率。
发明内容
本发明提供了一种基于激光雷达的托盘叉取方法、装置、设备和介质,以解决受场景环境影响导致的待搬运托盘的叉取效率低的问题。
根据本发明的一方面,提供了一种基于激光雷达的托盘叉取方法,其特征在于,所述激光雷达位于搬运托盘的机器人上,所述方法包括:
控制所述机器人行驶至当前执行的托盘搬运任务对应的预识别点位,并在所述预识别点位处获取激光雷达点云数据;其中,所述预识别点位根据任务执行场景、所述托盘搬运任务对应的规划行驶路径以及所述激光雷达的属性信息在任务执行场景地图中进行预先标注;
根据所述激光雷达点云数据确定中间托盘位姿信息,并根据所述中间托盘位姿信息对预先标注的参考再识别点位信息进行更新,得到更新再识别点位信息;其中,所述预先标注的参考再识别点位信息根据所述托盘搬运任务中预先确定的参考托盘位姿信息进行确定;
控制所述机器人行驶至更新再识别点位,在所述更新再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息,并根据所述目标托盘位姿信息控制所述机器人进行托盘叉取。
根据本发明的另一方面,提供了一种基于激光雷达的托盘叉取装置,其特征在于,所述激光雷达位于搬运托盘的机器人上,所述装置包括:
预识别点位识别模块,用于控制所述机器人行驶至当前执行的托盘搬运任务对应的预识别点位,并在所述预识别点位处获取激光雷达点云数据;其中,所述预识别点位根据任务执行场景、所述托盘搬运任务对应的规划行驶路径以及所述激光雷达的属性信息在任务执行场景地图中进行预先标注;
再识别点位更新模块,用于根据所述激光雷达点云数据确定中间托盘位姿信息,并根据所述中间托盘位姿信息对预先标注的参考再识别点位信息进行更新,得到更新再识别点位信息;其中,所述预先标注的参考再识别点位信息根据所述托盘搬运任务中预先确定的参考托盘位姿信息进行确定;
再识别点位识别模块,用于控制所述机器人行驶至更新再识别点位,在所述更新再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息,并根据所述目标托盘位姿信息控制所述机器人进行托盘叉取。
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的基于激光雷达的托盘叉取方法。
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的基于激光雷达的托盘叉取方法。
本发明实施例的技术方案,通过在任务执行场景地图中预先标注参考托盘位姿信息、预识别点位和参考再识别点位信息,并通过在预识别点位处识别到的托盘位姿信息对参考再识别点位进行更新,通过再识别点位的托盘位姿二次识别,实现对托盘的精准识别叉取,机器人根据在再识别点位获取的托盘位姿信息进行托盘叉取可以有效减少车体调整次数和调整幅度,避免在狭窄场景中多次来回调整车体姿态,提高托盘叉取效率。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例一提供的一种基于激光雷达的托盘叉取方法的流程图;
图2是根据本发明实施例二提供的另一种基于激光雷达的托盘叉取方法的流程图;
图3是根据本发明实施例三提供的一种基于激光雷达的托盘叉取装置的结构示意图;
图4是实现本发明实施例的基于激光雷达的托盘叉取方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“候选”、“目标”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一
图1为本发明实施例一提供了一种基于激光雷达的托盘叉取方法的流程图,本实施例可适用于机器人按照规划路径对托盘进行搬运时根据激光雷达确定准确的托盘位姿的情况,激光雷达安装在搬运托盘的机器人上,用于获取实时的机器人周围的环境点云信息,该方法可以由基于激光雷达的托盘叉取装置来执行,该基于激光雷达的托盘叉取装置可以采用硬件和/或软件的形式实现,该基于激光雷达的托盘叉取装置可配置于执行托盘搬运任务的机器人中。如图1所示,该方法包括:
S110、控制机器人行驶至当前执行的托盘搬运任务对应的预识别点位,并在预识别点位处获取激光雷达点云数据。
其中,机器人是指执行托盘搬运任务的自主移动机器人,托盘搬运任务是指机器人需要到指定位置对摆放在该处的托盘进行拿取搬运,例如,机器人上安装叉取装置,对托盘进行叉取搬运。由于托盘搬运任务中的待搬运托盘是摆放在固定区域的,因此机器人按照规划行驶路径行驶至该区域对托盘进行搬运。但是若机器人直接按照规划行驶路径行驶到托盘前进行搬运时,受托盘摆放精度的影响以及场景环境的限制,例如空间狭窄,障碍物多,可能会导致扫描得到的激光点云数据并不能很好的表征出托盘的位姿信息,进而导致机器人拿取托盘失败,或者根据扫描得到的托盘位姿信息进行叉取会导致机器人需要大幅度调整车体姿态才能满足精准叉取。为了减小机器人对托盘进行精准叉取时受到场景环境以及托盘摆放精度的过多影响,本实施例在预识别点对托盘进行初次识别,预识别点是在规划行驶路径上预先标注出的对托盘可以进行完整识别的位置点。
机器人调度服务器在下发托盘搬运任务给机器人后,机器人根据托盘搬运任务确定该任务对应的规划行驶路径中的预识别点位,并行驶到该预识别点位处,通过机器人上安装的至少一个激光雷达在该点位获取激光雷达点云数据。
具体的,预识别点位根据任务执行场景、托盘搬运任务对应的规划行驶路径以及激光雷达的属性信息在任务执行场景地图中进行预先标注。
其中,预识别点位的选取需要满足在机器人的规划行驶路径中,且在预设别点位处机器人可以获取到足够的托盘点云信息以对托盘位姿信息进行识别。预识别点位的选取影响因素中任务执行场景用于表示机器人在前往托盘位置时所行驶的环境信息,例如托盘在所述任务执行场景中的位置信息和摆放精度;托盘搬运任务对应的规划行驶路径用于表示机器人前往搬运托盘时的固定行驶路径;激光雷达的属性信息用于表示激光雷达在扫描时对托盘点云获取造成干扰的因素,例如激光雷达的属性信息包括激光雷达的视场角信息、角度分辨率以及雷达在机器人上的安装位置。
具体的,在机器人执行托盘搬运任务前,需要先对该任务对应的预识别点位进行标注。在考虑到托盘任务执行场景中的位置信息和摆放精度、托盘识别任务对应的规划路径、激光雷达的视场角、角度分辨率和在机器人上的安装位置后,在规划路径上选择至少一个点位作为预识别点位,以实现机器人在行驶过程中对托盘位姿进行初步识别。
在一个可行的实施例中,预识别点位的选取条件至少包括如下两项:在预识别点位处机器人上存在至少一个与托盘的距离处于预设距离范围内的激光雷达,且该激光雷达的视场边缘与托盘之间的角度差大于预设角度阈值。
一般在机器人上会包括多个激光雷达,多个激光雷达会安装在机器人上的不同位置,由于位置不同,各个激光雷达所能获取到的点云数据并不完全相同。因此,为了保证在预识别点位处机器人通过激光雷达尽可能获取完整的托盘点云数据,预设识别点位的选取条件需要包括在预识别点位处机器人上存在至少一个与托盘的距离处于预设距离范围内的激光雷达,且激光雷达的视场边缘与托盘之间的角度差大于预设角度阈值。即从距离和角度上保证机器人上存在至少一个激光雷达可以在预识别点位获取到托盘点云数据。
S120、根据激光雷达点云数据确定中间托盘位姿信息,并根据中间托盘位姿信息对预先标注的参考再识别点位信息进行更新,得到更新再识别点位信息。
中间托盘位姿信息表示机器人在预识别点位进行初步识别得到的托盘位姿信息,机器人此时距离托盘仍有一定距离,因此中间托盘位姿信息并不能表示准确的托盘位姿信息,利用中间托盘位姿信息对二次托盘识别的再识别点位进行更新,以保证在更新后的再识别点位可以实现对托盘位姿的精准识别。
其中,预先标注的参考再识别点位信息根据托盘搬运任务中预先确定的参考托盘位姿信息进行确定。
参考再识别点位用于对托盘进行二次精准识别,参考再识别点位信息中包括参考机器人位置信息和参考机器人姿态角度信息,参考机器人位置信息用于保证在该位置上机器人可以对托盘进行拿取以及准确识别,参考机器人姿态角度信息保证机器人以该姿态角度可以对托盘进行直接拿取,不需要再进行大幅度调整,提高托盘搬运效率。
参考托盘位姿信息是根据托盘搬运任务中预先确定的托盘摆放位置在地图进行标注得到。示例性的,参考托盘位姿信息中包括参考托盘位置信息和参考托盘姿态角度信息。
具体的,按照托盘摆放精度要求,预先确认托盘搬运任务中托盘摆放的位置,并且在地图中进行标注,得到参考托盘位姿信息。由于在再识别点位处机器人需要精准识别托盘位姿以及精准拿取托盘,因此在再识别点位处的参考机器人位置信息需要距离参考托盘位置信息在一定范围内,该范围可以根据机器人对托盘的拿取条件进行确定;同时为了保证在再识别点位处机器人可以直接对托盘进行拿取,参考机器人姿态角度信息需要根据参考托盘姿态角度信息进行确定。
示例性的,根据在预识别点位获取到的激光雷达点云数据确定托盘位姿信息,作为中间托盘位姿信息。在预识别点位处激光雷达可以获取到足够的待叉取托盘点云数据,中间托盘位姿信息比预先标注的参考托盘位姿信息更可靠,并根据中间托盘位姿信息对预先标注的参考再识别点位信息进行更新,得到更新再识别点位信息。以避免预先标注的参考托盘位姿信息偏差给参考再识别点位信息带来的偏差,进而给托盘叉取带来不利影响。同时由于中间托盘位姿信息是由搬运托盘的机器人进行获取,根据该中间托盘位姿信息对参考再识别点位信息进行更新,通过保证点位信息和位姿信息确定来源的一致性,可以消除一部分计算带来的偏差。
在一个可行的实施例中,预先标注的参考再识别点位信息中包括参考机器人位置信息、参考机器人姿态角度信息和预设距离值,其中,预设距离值表示机器人距离托盘的参考识别距离,预设距离值根据任务执行场景的通道宽度、机器人的机械参数以及托盘的摆放精度进行确定;
相应的,在控制机器人行驶至当前执行的托盘搬运任务对应的预识别点位之前,方法还包括:
根据托盘搬运任务确定待搬运托盘的参考托盘位姿信息;其中,参考托盘位姿信息中包括参考托盘位置信息和参考托盘姿态角度信息;
根据参考托盘姿态角度信息确定参考旋转矩阵;
根据参考托盘位置信息、参考旋转矩阵和预设距离值确定参考机器人位置信息;
根据参考托盘姿态角度信息确定参考机器人姿态角度信息。
在机器人执行托盘搬运任务前,需要先对参考托盘位姿信息和参考再识别点位信息进行预先标注。
具体的,位置信息表示坐标信息,用()表示,姿态角度信息表示托盘或机
器人在坐标系下的朝向角度信息,用()表示,分别表示在轴
与正方向轴之间的角度信息。
按照托盘摆放精度要求,预先确认托盘搬运任务中托盘摆放的位置,并且在地图
中进行标注,得到参考托盘位置信息和参考托盘姿态角度信息。根据参考托盘姿态角度信
息确定对应的参考旋转矩阵。参考旋转矩阵表征了参考托盘姿态角度信息对应的旋转特
征。示例性的,参考旋转矩阵的计算公式如下所示:
其中,上式中的()表示参考托盘姿态角度信息。
确定参考旋转矩阵后,根据参考旋转矩阵表征的旋转特征对预设距离值进行处理后,再加上参考托盘位置信息即为参考机器人位置信息。由于在再识别点位,机器人需要对托盘进行精准识别且进行搬运拿取,在再识别点位机器人和托盘之间的距离需要根据实际搬运情况进行确定,因此,预设距离值需要根据任务执行场景的通道宽度、机器人的机械参数以及托盘的摆放精度进行确定。示例性的,在任务执行场景的通道宽度允许的情况下,根据托盘摆放的精度要求、机器人姿态调整性能及机器人转弯性能,计算托盘精确识别点到托盘的距离为预设距离值,供机器人在再识别点位进行位姿的调整以对托盘进行搬运拿取。如果任务执行场景的通道宽度小于预设宽度阈值,则优先考虑机器人转弯性能,计算托盘精确识别点到托盘的距离为预设距离值。
具体的,依据如下公式根据参考托盘位置信息、参考旋转矩阵和预设距离值确定
参考机器人位置信息。
;
其中, 表示参考机器人位置信息,/>表示参考旋转矩阵,/>表示参考托盘位置信息。
为了便于机器人在再识别点位对托盘进行快速搬运拿取,参考机器人姿态角度信息与参考托盘姿态角度信息一致。即使由于偏差导致机器人行驶至再识别点位处的机器人姿态角度信息与实际不一致,或者参考托盘姿态角度信息有偏差,机器人在再识别点位获取到最终的目标托盘位姿信息后,与最终的目标托盘姿态角度信息偏差也不会很大,只需要进行位置和角度的小幅度调整即可,适用于狭窄空间的托盘叉取。
示例性的,依据如下公式根据参考托盘姿态角度信息确定参考机器人姿态角度信息:
其中,表示参考机器人姿态角度信息,/>表示参考托盘姿态角度信息。
在一个可行的实施例中,在根据中间托盘位姿信息对预先标注的参考再识别点位信息进行更新之前,该方法还包括:
根据中间托盘位姿信息确定托盘识别结果;其中,所述托盘识别结果包括托盘识别失败和托盘识别成功;
若托盘识别结果为托盘识别失败,则根据预先标注的参考再识别点位信息控制机器人行驶至参考再识别点位,并在参考再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息。
具体的,中间托盘位姿信息中包括中间托盘尺寸信息和中间托盘位置信息,若中间托盘尺寸信息与预先标注的托盘尺寸属性信息的误差小于第一预设误差阈值,且中间托盘位置信息与预先标注的参考托盘位置信息的误差小于第二预设误差阈值,则确定托盘识别成功,否则托盘识别失败。
示例性的,在预识别点位处通过获取到的激光雷达点云数据确定托盘尺寸与托盘位置,若托盘尺寸与托盘预设属性信息匹配且托盘位置与预先标注的托盘摆放位置匹配,则确定托盘识别成功,否则,托盘识别失败。若托盘识别成功,则根据中间托盘位姿信息对预先标注的参考再识别点位信息进行更新;若托盘识别失败,则根据预先标注的参考再识别点位信息控制机器人行驶至参考再识别点位,并在参考再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息。
对于托盘识别失败的场景,按照地图中预先存储的参考再识别点位信息进行再次识别处理,避免因暂时的障碍物遮挡导致的对托盘叉取识别的影响和增加识别叉取检测次数,提高识别叉取成功率。
S130、控制机器人行驶至更新再识别点位,在更新再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息,并根据目标托盘位姿信息控制机器人进行托盘叉取。
控制机器人从预识别点位行驶到更新再识别点位,在此进行托盘精准识别。在更新再识别点位处通过获取到的激光雷达点云数据对托盘进行识别,如果识别成功,则根据当前激光雷达点云数据确定目标托盘位姿信息,并根据目标托盘位姿信息控制机器人进行托盘叉取;若对托盘识别失败,则可以根据调度服务器设定,机器人返回休息区或者重新执行当前托盘搬运任务。
由于目标托盘位姿信息是在再识别点位确定的,且机器人在再识别点位的位姿信息是根据在预识别点位获取的托盘位姿信息进行确定的,因此在机器人从预识别点位行驶到再识别点时已经对机器人的车体姿态进行了相应的调整,与目标托盘位姿信息之间的差别并不大,最后根据目标托盘位姿信息进行车体调整时只需要进行小幅度调整即可,不需要再进行多次来回调整。
示例性的,在更新再识别点位处通过获取到的激光雷达点云数据确定托盘尺寸与托盘位置,若托盘尺寸与托盘预设尺寸属性信息匹配且托盘位置与预先标注的托盘摆放位置匹配,则确定托盘识别成功,否则,托盘识别失败。
本发明实施例的技术方案,通过在任务执行场景地图中预先标注参考托盘位姿信息、预识别点位和参考再识别点位信息,并通过在预识别点位处识别到的托盘位姿信息对参考再识别点位进行更新,通过再识别点位的托盘位姿二次识别,实现对托盘的精准识别叉取,机器人根据在再识别点位获取的托盘位姿信息进行托盘叉取可以有效减少车体调整次数和调整幅度,避免在狭窄场景中多次来回调整车体姿态,提高托盘叉取效率。
实施例二
图2为本发明实施例二提供的一种基于激光雷达的托盘叉取方法的流程图,本实施例在上述实施例的基础上进行进一步细化描述。如图2所示,该方法包括:
S210、判断机器人当前执行的托盘搬运任务对应的规划行驶路径中是否存在预识别点位。
由于预识别点位是根据托盘搬运任务进行预先标注的,且预识别点位的选取需要满足一定条件,因此若在该托盘搬运任务的规划行驶路径中未选取到符合条件的预识别点,则该托盘搬运任务中不存在预识别点位。
示例性的,托盘搬运任务对应的规划行驶路径中未找到符合如下两项条件的点位:在预识别点位处机器人上存在至少一个与托盘的距离处于预设距离范围内的激光雷达,且该激光雷达的视场边缘与托盘之间的角度差大于预设角度阈值。
S220、若不存在,则根据预先标注的参考再识别点位信息控制机器人行驶至参考再识别点位,在参考再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息,并根据目标托盘位姿信息控制机器人进行托盘叉取。
若规划行驶路径中不存在预识别点位说明任务执行场景空间狭小,机器人上的激光雷达所能获取到的信息有限,此时直接根据预先标注的参考再识别点位信息控制机器人行驶到参考再识别点位。由于参考再识别点位信息是根据预先标注的参考托盘位姿信息进行确定的,因此参考再识别点位处机器人也可以很好地对托盘进行精准识别以及搬运。根据在参考再识别点识别到的激光雷达点云数据确定托盘点云数据,进而确定目标托盘位姿信息,根据目标托盘位姿信息控制机器人进行托盘叉取。
通过预先标注的参考再识别点信息在任务执行场景空间有限的情况下,可以很好的根据激光雷达点云数据对托盘位姿进行精准识别叉取。
S230、若存在,则控制机器人行驶至当前执行的托盘搬运任务对应的预识别点位,并在预识别点位处获取激光雷达点云数据。
具体的,一般在机器人上会安装多个不同类型的激光雷达,以保证可以获取到各个方向上的激光点云数据。在预识别点位机器人以特定位姿行驶时,会存在有些激光雷达无法获取到托盘的点云数据。因此,在预识别点位如果根据机器人的位姿信息以及激光雷达的安装位置信息确定无法获取到托盘点云的无关激光雷达,将无光激光雷达的点云信息进行滤除,保留能够采集到托盘点云的激光雷达获取到的点云数据。
示例性的,根据不同类型的激光雷达特性,使用不同的策略进行点云数据的采集。对于重复性扫描激光雷达,获取一帧点云数据作为在预识别点位获取的激光点云数据;对于非重复性扫描激光雷达,对点云数据进行预设时间段的累积,将点云数据的累积结果作为在预识别点位获取的激光点云数据。遍历机器人上非无关激光雷达,根据激光雷达的位置与托盘位置,按照如上策略采集能扫描到托盘的激光数据,并统一到车体坐标系下,确保数据的准确性。
当机器人上安装多个不同类型的激光雷达时,本方案自动采集能够扫描到托盘的激光数据。针对不同类型的激光雷达自动采用不同的点云采集策略,提高数据的准确性。
S240、根据预先确定的托盘位置区域信息从激光雷达点云数据中筛选出托盘点云数据,并根据托盘点云数据确定中间托盘位姿信息。
托盘位置区域信息用于表示托盘所在的空间位置信息,根据参考托盘位姿信息以及托盘尺寸进行确定。将位于托盘位置区域中的激光雷达点云数据进行地面点云滤除后提取托盘点云数据,避免无关点云数据对托盘姿态识别的干扰。再根据托盘点云数据确定托盘位姿信息,作为中间托盘位姿信息。
示例性的,在预识别点位处通过获取到的激光雷达点云数据确定托盘尺寸与托盘位置,若托盘尺寸与托盘预设尺寸属性信息匹配且托盘位置与预先标注的托盘摆放位置匹配,则确定托盘识别成功,否则,托盘识别失败。若托盘识别成功,根据托盘点云数据确定中间托盘位姿信息;若托盘识别失败,则根据预先标注的参考再识别点位信息控制机器人行驶至参考再识别点位,并在参考再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息。
对于托盘识别失败的场景,按照地图中预先存储的参考再识别点位信息进行再次识别处理,避免因暂时的障碍物遮挡导致的对托盘叉取识别的影响和增加识别叉取检测次数,提高识别叉取成功率。
其中,托盘位置区域信息根据参考托盘位姿信息和预设方向偏差进行确定,预设方向偏差根据托盘摆放精度、机器人定位精度、以及托盘尺寸信息进行确定。
确定参考托盘位姿信息中的参考托盘位置信息所表示的托盘位置点,再结合预设
方向偏差以及托盘尺寸确定托盘位置区域信息。示例性的,参考托盘位置信息表示托盘前
表面中心点,托盘摆放精度为,托盘摆放精度中包括托盘摆放精度位置信息和托盘摆放精度姿态角度信息,机器人定位精度,机器人定
位精度中包括机器人定位精度位置信息和机器人定
位精度姿态角度信息,托盘长为,宽
为,保留冗余空间。根据如下公式确定预设方向偏差,其中,表示在方
向上的偏差,表示在方向上的偏差;
相应的,基于预设方向偏差,确定托盘位置区域信息,其中,托盘位置区域信包括托盘左下角位置信息,右下角位置信息,左上角位置信息和右上角位置信息/>。托盘位置区域信息的确定公式如下所示:
;
;
;
;
;
;
;
在一个可行的实施例中,在S240之前,该方法还包括:
对激光雷达点云数据进行栅格化,得到多个候选栅格;
确定候选栅格中点云数据在垂直方向上的最大垂直距离差;
若目标栅格的最大垂直距离差小于预设垂直阈值,则对目标栅格中的点云数据进行剔除。
在预识别点位获取到激光点云数据后,由于直接获取到的激光点云数据中会包括地面点云信息,因此为了提高对后续中间托盘位姿信息确定的准确性,需要对地面点云信息进行滤除。
具体的,确定在预识别点位获取到的激光点云数据为,对点云进行栅格化,示例性的,使用10cm*10cm的大小构建栅格。并分别确定每个点云落入的候选栅格信息,确定公式如下:
其中,表示激光点云的x轴和y轴坐标信息,
若满足如上关系,则确定落入候选栅格ogm(x,y)中。
分别计算候选栅格ogm(x,y)中的所有点云,记录为,计算该候选栅格内的点云坐标信息中最大和最小的z,计算公式如下所示:
;
;
其中,表示候选栅格内激光点云的z轴坐标信息,在垂直方向上的最大垂
直距离差为,若存在目标栅格的最大垂直距离差小于预设垂直阈值,则认
为该栅格点为地面栅格点,对目标栅格内的所有点云数据进行丢弃。示例性的,虽然该方法
会过滤掉一部分非地面物体的上表面点云,但是该部分点云的过滤对托盘识别影响较小。
滤除掉目标栅格内的点云后的激光点云数据为非地面点云数据,在此基础上进行托盘位姿
识别叉取。
具体的,对目标栅格中的点云数据进行剔除之后,该方法还包括:
根据预先确定的托盘位置区域信息从剔除后的激光雷达点云数据中筛选出托盘点云数据;
根据托盘点云数据确定中间托盘位姿信息;其中,托盘位置区域信息根据参考托盘位姿信息和预设方向偏差进行确定,预设方向偏差根据托盘摆放精度、机器人定位精度、以及托盘尺寸信息进行确定。
S250、根据中间托盘姿态角度信息确定更新旋转矩阵。
其中,更新旋转矩阵表示了中间托盘姿态角度信息对应的旋转特征。示例性的,更新旋转矩阵的计算公式如下所示:
其中,上式中的()表示中间托盘姿态角度信息。
S260、根据中间托盘位置信息、更新旋转矩阵和预先标注的参考再识别点位信息中的预设距离值确定更新机器人位置信息。
其中,预设距离值表示机器人距离托盘的参考识别距离。
确定更新旋转矩阵后,根据更新旋转矩阵表征的旋转特征对预设距离值进行处理
后,再加上中间托盘位置信息即为更新机器人位置信息。具体的,依据如下公式根据中间托
盘位置信息、更新旋转矩阵和预设距离值确定更新机器人位置信息。
;
其中,表示更新机器人位置信息,/>表示更新参考旋转矩阵,/>表示中间托盘位置信息。
S270、根据中间托盘姿态角度信息确定更新机器人姿态角度信息,并根据更新机器人位置信息和更新机器人姿态角度信息确定更新再识别点位信息。
由于中间托盘位姿信息表征了机器人识别到的当前最新托盘信息,而对再识别点位进行更新也是为了保证在再识别点位对托盘进行位姿识别时准确性更高,搬运效率更高,因此为了便于机器人在更新再识别点位对托盘进行快速搬运拿取,更新机器人姿态角度信息与中间托盘姿态角度信息一致。即使由于偏差导致机器人行驶至更新再识别点位处的机器人姿态角度信息与实际不一致,或者中间托盘姿态角度信息有偏差,机器人在更新再识别点位获取到最终的目标托盘位姿信息后,与最终的目标托盘姿态角度信息偏差也不会很大,只需要进行位置和角度的小幅度调整即可,适用于狭窄空间的托盘叉取。
示例性的,依据如下公式根据中间托盘姿态角度信息确定更新机器人姿态角度信息:
其中,表示更新机器人姿态角度信息,/>表示中间托盘姿态角度信息。
S280、控制机器人行驶至更新再识别点位,在更新再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息,并根据目标托盘位姿信息控制机器人进行托盘叉取。
具体的,对在更新再识别点位处通过获取到的激光雷达点云数据进行地面点云数据滤除后确定目标托盘位姿信息。
本发明实施例对托盘位姿进行精准识别的整体流程为:
在任务执行场景地图中预先标注参考托盘位姿信息、预识别点位和参考再识别点位信息。
通过调度服务器下发托盘搬运任务,控制机器人到达预识别点位,采集托盘激光雷达点云数据进行初次托盘识别,如果识别成功,根据托盘位姿识别结果对预先标注的再识别点位信息进行更新;
调度服务器下发任务控制机器人到达更新后的再识别点位,进行二次托盘位姿精准识别,如果识别成功,进行托盘叉取搬运;
下发任务控制机器人将托盘运输到指定位置。
本发明实施例公开的托盘叉取方法准确性较高,无需额外安装传感器或者进行大量的数据训练,仅使用机器人上安装的激光雷达即可实现托盘位姿的精确识别,在预识别点位对托盘识别成功后,在再识别点位处机器人不需要进行位置与角度的大幅度调整,只需要较小的调整幅度,适用于狭窄空间的托盘叉取。
本发明实施例可以根据任务执行场景空间信息以及机器人的属性信息预先标注预识别点位和再识别点位,基于激光雷达采集到的点云数据对托盘在预识别点位进行初次识别,以及在再识别点位进行二次识别,并且根据在预识别点位的托盘位姿识别结果对再识别点位信息进行自动更新,保证了二次识别的再识别点位选择的合理性,进而提高对托盘识别叉取的准确性;通过对托盘位姿的多次识别保证了位姿检测的准确性,并且可以在狭窄空间识别多种不同尺寸的托盘,不受场景环境的影响,适用性高,且多次托盘位姿识别可以减少机器人在叉取时的车体姿态调整幅度和次数,提高叉取效率,同时对机器人行驶巷道空间要求较低。
实施例三
图3为本发明实施例三提供的一种基于激光雷达的托盘叉取装置的结构示意图。激光雷达位于搬运托盘的机器人上,如图3所示,该装置包括:
预识别点位识别模块310,用于控制所述机器人行驶至当前执行的托盘搬运任务对应的预识别点位,并在所述预识别点位处获取激光雷达点云数据;其中,所述预识别点位根据任务执行场景、所述托盘搬运任务对应的规划行驶路径以及所述激光雷达的属性信息在任务执行场景地图中进行预先标注;
再识别点位更新模块320,用于根据所述激光雷达点云数据确定中间托盘位姿信息,并根据所述中间托盘位姿信息对预先标注的参考再识别点位信息进行更新,得到更新再识别点位信息;其中,所述预先标注的参考再识别点位信息根据所述托盘搬运任务中预先确定的参考托盘位姿信息进行确定;
再识别点位识别模块330,用于控制所述机器人行驶至更新再识别点位,在所述更新再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息,并根据所述目标托盘位姿信息控制所述机器人进行托盘叉取。
可选的,所述装置还包括预识别点位判断模块,用于在控制所述机器人行驶至当前执行的托盘搬运任务对应的预识别点位之前,判断所述机器人当前执行的托盘搬运任务对应的规划行驶路径中是否存在预识别点位;
若不存在,则根据所述预先标注的参考再识别点位信息控制所述机器人行驶至参考再识别点位,并在所述参考再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息。
可选的,所述预识别点位的选取条件至少包括如下两项:在所述预识别点位处所述机器人上存在至少一个与托盘的距离处于预设距离范围内的激光雷达,且该激光雷达的视场边缘与所述托盘之间的角度差大于预设角度阈值。
可选的,所述中间托盘位姿信息中包括中间托盘位置信息和中间托盘姿态角度信息;更新再识别点位信息中包括更新机器人位置信息和更新机器人姿态角度信息;
相应的,再识别点位更新模块,具体用于:
根据所述中间托盘姿态角度信息确定更新旋转矩阵;
根据所述中间托盘位置信息、所述更新旋转矩阵和所述预先标注的参考再识别点位信息中的预设距离值确定更新机器人位置信息;其中,预设距离值表示机器人距离托盘的参考识别距离;
根据所述中间托盘姿态角度信息确定更新机器人姿态角度信息。
可选的,所述预先标注的参考再识别点位信息中包括参考机器人位置信息、参考机器人姿态角度信息和预设距离值,其中,所述预设距离值表示机器人距离托盘的参考识别距离,所述预设距离值根据任务执行场景的通道宽度、机器人的机械参数以及托盘的摆放精度进行确定;
相应的,所述装置还包括参考再识别点位确定模块,用于在控制所述机器人行驶至当前执行的托盘搬运任务对应的预识别点位之前,根据所述托盘搬运任务确定待搬运托盘的参考托盘位姿信息;其中,所述参考托盘位姿信息中包括参考托盘位置信息和参考托盘姿态角度信息;
根据所述参考托盘姿态角度信息确定参考旋转矩阵;
根据所述参考托盘位置信息、所述参考旋转矩阵和所述预设距离值确定参考机器人位置信息;
根据所述参考托盘姿态角度信息确定参考机器人姿态角度信息。
可选的,再识别点位更新模块,具体用于:
对所述激光雷达点云数据进行栅格化,得到多个候选栅格;
确定所述候选栅格中点云数据在垂直方向上的最大垂直距离差;
若目标栅格的最大垂直距离差小于预设垂直阈值,则对所述目标栅格中的点云数据进行剔除;
根据预先确定的托盘位置区域信息从所述剔除后激光雷达点云数据中筛选出托盘点云数据;
根据所述托盘点云数据确定中间托盘位姿信息;
其中,所述托盘位置区域信息根据所述参考托盘位姿信息和预设方向偏差进行确定,所述预设方向偏差根据托盘摆放精度、机器人定位精度、以及托盘尺寸信息进行确定。
可选的,再识别点位更新模块中还包括托盘识别单元,用于在根据中间托盘位姿信息对预先标注的参考再识别点位信息进行更新之前,根据中间托盘位姿信息确定托盘识别结果;其中,所述托盘识别结果包括托盘识别失败和托盘识别成功;
若托盘识别结果为托盘识别失败,则根据预先标注的参考再识别点位信息控制机器人行驶至参考再识别点位,并在参考再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息。
本发明实施例所提供的基于激光雷达的托盘叉取装置可执行本发明任意实施例所提供的基于激光雷达的托盘叉取方法,具备执行方法相应的功能模块和有益效果。
实施例四
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图4示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图4所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如方法基于激光雷达的托盘叉取。
在一些实施例中,基于激光雷达的托盘叉取方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的方法基于激光雷达的托盘叉取的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法基于激光雷达的托盘叉取。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用参考产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (9)
1.一种基于激光雷达的托盘叉取方法,其特征在于,所述激光雷达位于搬运托盘的机器人上,所述方法包括:
控制所述机器人行驶至当前执行的托盘搬运任务对应的预识别点位,并在所述预识别点位处获取激光雷达点云数据;其中,所述预识别点位根据任务执行场景、所述托盘搬运任务对应的规划行驶路径以及所述激光雷达的属性信息在任务执行场景地图中进行预先标注;
根据所述激光雷达点云数据确定中间托盘位姿信息,并根据所述中间托盘位姿信息对预先标注的参考再识别点位信息进行更新,得到更新再识别点位信息;其中,所述预先标注的参考再识别点位信息根据所述托盘搬运任务中预先确定的参考托盘位姿信息进行确定;
控制所述机器人行驶至更新再识别点位,在所述更新再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息,并根据所述目标托盘位姿信息控制所述机器人进行托盘叉取;
其中,所述预先标注的参考再识别点位信息中包括参考机器人位置信息、参考机器人姿态角度信息和预设距离值,其中,所述预设距离值表示机器人距离托盘的参考识别距离,所述预设距离值根据任务执行场景的通道宽度、机器人的机械参数以及托盘的摆放精度进行确定;
相应的,在控制所述机器人行驶至当前执行的托盘搬运任务对应的预识别点位之前,所述方法还包括:
根据所述托盘搬运任务确定待搬运托盘的参考托盘位姿信息;其中,所述参考托盘位姿信息中包括参考托盘位置信息和参考托盘姿态角度信息;
根据所述参考托盘姿态角度信息确定参考旋转矩阵;
根据所述参考托盘位置信息、所述参考旋转矩阵和所述预设距离值确定参考机器人位置信息;
根据所述参考托盘姿态角度信息确定参考机器人姿态角度信息。
2.根据权利要求1所述的方法,其特征在于,在控制所述机器人行驶至当前执行的托盘搬运任务对应的预识别点位之前,所述方法还包括:
判断所述机器人当前执行的托盘搬运任务对应的规划行驶路径中是否存在预识别点位;
若不存在,则根据所述预先标注的参考再识别点位信息控制所述机器人行驶至参考再识别点位,并在所述参考再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息。
3.根据权利要求1或2所述的方法,其特征在于,所述预识别点位的选取条件至少包括如下两项:在所述预识别点位处所述机器人上存在至少一个与托盘的距离处于预设距离范围内的激光雷达,且该激光雷达的视场边缘与所述托盘之间的角度差大于预设角度阈值。
4.根据权利要求1所述的方法,其特征在于,所述中间托盘位姿信息中包括中间托盘位置信息和中间托盘姿态角度信息;更新再识别点位信息中包括更新机器人位置信息和更新机器人姿态角度信息;
相应的,根据所述中间托盘位姿信息对预先标注的参考再识别点位信息进行更新,得到更新再识别点位信息,包括:
根据所述中间托盘姿态角度信息确定更新旋转矩阵;
根据所述中间托盘位置信息、所述更新旋转矩阵和所述预先标注的参考再识别点位信息中的预设距离值确定更新机器人位置信息;其中,预设距离值表示机器人距离托盘的参考识别距离;
根据所述中间托盘姿态角度信息确定更新机器人姿态角度信息。
5.根据权利要求1所述的方法,其特征在于,根据所述激光雷达点云数据确定中间托盘位姿信息,包括:
对激光点云数据进行栅格化,得到多个候选栅格;
确定所述候选栅格中点云数据在垂直方向上的最大垂直距离差;
若目标栅格的最大垂直距离差小于预设垂直阈值,则对所述目标栅格中的点云数据进行剔除;
根据预先确定的托盘位置区域信息从剔除后的激光雷达点云数据中筛选出托盘点云数据;
根据所述托盘点云数据确定中间托盘位姿信息;
其中,所述托盘位置区域信息根据所述参考托盘位姿信息和预设方向偏差进行确定,所述预设方向偏差根据托盘摆放精度、机器人定位精度、以及托盘尺寸信息进行确定。
6.根据权利要求1所述的方法,其特征在于,在根据所述中间托盘位姿信息对预先标注的参考再识别点位信息进行更新之前,所述方法还包括:
根据中间托盘位姿信息确定托盘识别结果;其中,所述托盘识别结果包括托盘识别失败和托盘识别成功;
若所述托盘识别结果为托盘识别失败,则根据所述预先标注的参考再识别点位信息控制所述机器人行驶至参考再识别点位,并在所述参考再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息。
7.一种基于激光雷达的托盘叉取装置,其特征在于,所述激光雷达位于搬运托盘的机器人上,所述装置包括:
预识别点位识别模块,用于控制所述机器人行驶至当前执行的托盘搬运任务对应的预识别点位,并在所述预识别点位处获取激光雷达点云数据;其中,所述预识别点位根据任务执行场景、所述托盘搬运任务对应的规划行驶路径以及所述激光雷达的属性信息在任务执行场景地图中进行预先标注;
再识别点位更新模块,用于根据所述激光雷达点云数据确定中间托盘位姿信息,并根据所述中间托盘位姿信息对预先标注的参考再识别点位信息进行更新,得到更新再识别点位信息;其中,所述预先标注的参考再识别点位信息根据所述托盘搬运任务中预先确定的参考托盘位姿信息进行确定;
再识别点位识别模块,用于控制所述机器人行驶至更新再识别点位,在所述更新再识别点位处通过获取到的激光雷达点云数据确定目标托盘位姿信息,并根据所述目标托盘位姿信息控制所述机器人进行托盘叉取;
其中,所述预先标注的参考再识别点位信息中包括参考机器人位置信息、参考机器人姿态角度信息和预设距离值,其中,所述预设距离值表示机器人距离托盘的参考识别距离,所述预设距离值根据任务执行场景的通道宽度、机器人的机械参数以及托盘的摆放精度进行确定;
相应的,所述装置还包括参考再识别点位确定模块,用于在控制所述机器人行驶至当前执行的托盘搬运任务对应的预识别点位之前,根据所述托盘搬运任务确定待搬运托盘的参考托盘位姿信息;其中,所述参考托盘位姿信息中包括参考托盘位置信息和参考托盘姿态角度信息;
根据所述参考托盘姿态角度信息确定参考旋转矩阵;
根据所述参考托盘位置信息、所述参考旋转矩阵和所述预设距离值确定参考机器人位置信息;
根据所述参考托盘姿态角度信息确定参考机器人姿态角度信息。
8.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的基于激光雷达的托盘叉取方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-6中任一项所述的基于激光雷达的托盘叉取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310692858.8A CN116443527B (zh) | 2023-06-13 | 2023-06-13 | 基于激光雷达的托盘叉取方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310692858.8A CN116443527B (zh) | 2023-06-13 | 2023-06-13 | 基于激光雷达的托盘叉取方法、装置、设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116443527A CN116443527A (zh) | 2023-07-18 |
CN116443527B true CN116443527B (zh) | 2023-09-08 |
Family
ID=87128783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310692858.8A Active CN116443527B (zh) | 2023-06-13 | 2023-06-13 | 基于激光雷达的托盘叉取方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116443527B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117381804B (zh) * | 2023-12-13 | 2024-04-02 | 珠海格力智能装备有限公司 | 智能搬运机器人的物料放置部件自动摆正方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108932736A (zh) * | 2018-05-30 | 2018-12-04 | 南昌大学 | 二维激光雷达点云数据处理方法以及动态机器人位姿校准方法 |
CN111533051A (zh) * | 2020-05-08 | 2020-08-14 | 三一机器人科技有限公司 | 托盘位姿检测方法、装置、叉车和货运系统 |
CN112017240A (zh) * | 2020-08-18 | 2020-12-01 | 浙江大学 | 一种面向无人叉车的托盘识别定位方法 |
CN113537096A (zh) * | 2021-07-21 | 2021-10-22 | 常熟理工学院 | 基于ros的agv叉车库位托盘识别及辅助定位方法及系统 |
KR20210128579A (ko) * | 2020-04-17 | 2021-10-27 | (주)케이비파워랩 | 물류 이송로봇 및 이를 이용한 물류이송 방법 |
CN114047750A (zh) * | 2021-10-26 | 2022-02-15 | 南京理工大学 | 一种基于移动机器人的快递入库方法 |
CN114862301A (zh) * | 2022-03-31 | 2022-08-05 | 浙江科钛机器人股份有限公司 | 基于二维码辅助定位的托盘叉车agv自动装载方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3032531C (en) * | 2016-08-10 | 2023-05-02 | John Bean Technologies Corporation | Pallet localization systems and methods |
-
2023
- 2023-06-13 CN CN202310692858.8A patent/CN116443527B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108932736A (zh) * | 2018-05-30 | 2018-12-04 | 南昌大学 | 二维激光雷达点云数据处理方法以及动态机器人位姿校准方法 |
KR20210128579A (ko) * | 2020-04-17 | 2021-10-27 | (주)케이비파워랩 | 물류 이송로봇 및 이를 이용한 물류이송 방법 |
CN111533051A (zh) * | 2020-05-08 | 2020-08-14 | 三一机器人科技有限公司 | 托盘位姿检测方法、装置、叉车和货运系统 |
CN112017240A (zh) * | 2020-08-18 | 2020-12-01 | 浙江大学 | 一种面向无人叉车的托盘识别定位方法 |
CN113537096A (zh) * | 2021-07-21 | 2021-10-22 | 常熟理工学院 | 基于ros的agv叉车库位托盘识别及辅助定位方法及系统 |
CN114047750A (zh) * | 2021-10-26 | 2022-02-15 | 南京理工大学 | 一种基于移动机器人的快递入库方法 |
CN114862301A (zh) * | 2022-03-31 | 2022-08-05 | 浙江科钛机器人股份有限公司 | 基于二维码辅助定位的托盘叉车agv自动装载方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116443527A (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2021534481A (ja) | 障害物又は地面の認識及び飛行制御方法、装置、機器及び記憶媒体 | |
CN111209978B (zh) | 三维视觉重定位方法、装置及计算设备、存储介质 | |
CN110793512A (zh) | 位姿识别方法、装置、电子设备和存储介质 | |
CN110738183B (zh) | 路侧相机障碍物检测方法及装置 | |
CN116443527B (zh) | 基于激光雷达的托盘叉取方法、装置、设备和介质 | |
AU2021266204B2 (en) | Mobile robot pose correction method and system for recognizing dynamic pallet terminals | |
CN113050636A (zh) | 一种叉车自主拾取托盘的控制方法、系统及装置 | |
AU2021288667A1 (en) | Control method and apparatus for warehouse robot, and robot and warehouse system | |
CN114862301A (zh) | 基于二维码辅助定位的托盘叉车agv自动装载方法 | |
CN116309882A (zh) | 一种面向无人叉车应用的托盘检测和定位方法及系统 | |
CN116469073A (zh) | 目标识别方法、装置、电子设备、介质及自动驾驶车辆 | |
CN115139303A (zh) | 一种栅格井盖检测方法、装置、设备及存储介质 | |
CN115973724B (zh) | 航空行李自动化调姿方法、装置、设备及介质 | |
CN113310484B (zh) | 一种移动机器人定位方法和系统 | |
CN114283193A (zh) | 一种栈板三维视觉定位方法及系统 | |
CN113706610A (zh) | 基于rgb-d相机的栈板位姿计算方法 | |
CN113516013A (zh) | 目标检测方法、装置、电子设备、路侧设备和云控平台 | |
CN117444982B (zh) | 机器人舵轮自动标定方法和装置 | |
CN114720993B (zh) | 机器人定位方法、装置、电子设备以及存储介质 | |
CN116969100A (zh) | 库存容器的取出方法、装置、电子设备以及存储介质 | |
CN114688992B (zh) | 一种反光物的识别方法、装置、电子设备及存储介质 | |
CN115032615B (zh) | 一种激光雷达标定点确定方法、装置、设备及存储介质 | |
CN115902817A (zh) | 库存容器识别方法以及电子设备 | |
CN118608556A (zh) | 一种目标检测处理方法、装置、设备及存储介质 | |
CN116834002A (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 |