一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于托盘空间规划结果的码垛方法、装置及电子设备与流程

2022-02-20 01:11:23 来源:中国专利 TAG:

基于托盘空间规划结果的码垛方法、装置及电子设备
1.分案说明
2.本技术是2020年6月1日递交的、名称为“托盘空间规划方法、码垛方法及其装置、及电子设备”的发明专利申请cn 202010485758.4的分案申请。
技术领域
3.本发明涉及智能机器人技术领域,特别涉及一种托盘空间规划方法、码垛方法及其装置、及电子设备。


背景技术:

4.相关技术中,通过码垛机器人对搬运物料自动堆叠,以便运输机器人进行运输,实现自动搬运的目的。
5.然而,相关技术的码垛方法,基于较为简单的垛型规划方法,大多由操作人员进行手动排布规划,其所规划出的垛型单一,无法适应托盘尺寸与填充物料尺寸间非整数倍匹配的情况,而这一情况在现实应用中非常普遍。对于上述非整数倍匹配情况,若基于现有技术的规划方法,容易导致托盘空间规划不合理、空间利用率低的问题。


技术实现要素:

6.本技术的目的旨在至少在一定程度上解决上述的技术问题之一。
7.为此,本技术的第一个目的在于提出一种托盘空间规划方法。
8.本技术的第二个目的在于提出一种基于托盘空间规划结果的码垛方法。
9.本技术的第三个目的在于提出一种托盘空间规划装置。
10.本技术的第四个目的在于提出一种基于托盘空间规划结果的码垛装置。
11.本技术的第五个目的在于提出一种电子设备。
12.本技术的第六个目的在于提出一种计算机可读存储介质。
13.本技术的第一个目的提出的一种托盘空间规划方法,基于所述托盘空间的建模进行模拟规划,所述方法包括:
14.步骤s1:基于各形状的分割线,分别多循环地对所述托盘空间的模型映像进行迭代分割,其中:各形状的分割线中任意一条与需要填充所述托盘空间的填充物料的填充面边缘相匹配并且,包括与所述填充面边缘相匹配的折角;在单循环中:任意形状的分割线分别作为迭代分割的初次分割的依据对所述托盘空间的模型映像进行第一次分割,其余各次分割在前次分割结果的映像的基础上,基于任意形状的分割线进行分割;若某一次迭代,前一次的某一分割结果的空间区域小于所述填充物料的填充面,则停止对该分割结果的迭代分割;直至所有迭代分割停止,单循环结束;不同循环中,分割线序列不同,各分割线分割位置不同,其中,单循环中迭代分割所参考的分割线遵循相应分割线序列,在相应分割结果的空间区域的某一位置进行分割;步骤s2:基于各循环结束时,各循环对应的分割结果个数,选取个数最大值;
15.步骤s3:根据所述个数最大值,确定对应的循环过程为最佳规划。
16.可选地,所述步骤s1的单循环中,其余各次分割在前次分割结果的映像的基础上,基于任意形状的分割线进行分割,包括:
17.基于任意形状的分割线在前次分割结果的映像对应的空间区域内的任意分割位置对其进行分割。
18.可选地,所述步骤s1的单循环中,还包括:
19.针对任一次迭代分割所基于的分割线及其分割位置,记录此次迭代分割前所有基于该分割线及其分割位置进行分割所产生的循环内分割结果平均次个数;
20.所述基于任意形状的分割线在前次分割结果的映像对应的空间区域内的任意分割位置对其进行分割,包括:
21.以循环内分割结果平均次个数数值最大的分割线及其分割位置,对前次分割结果的映像对应的空间区域进行分割。
22.可选地,在所述步骤s3之后,还包括:
23.将所述填充面的填充面映像嵌入所述最佳规划结果对应的各空间区域内,并在所述托盘空间内向预设方向平移使紧凑化,获得最小区域。
24.可选地,所述方法还包括:
25.在所述最小区域内,将紧凑化后的各填充面映像向所述最小区域边缘移动;和/或将向所述最小区域边缘移动后的结果进行旋转操作、或者镜像操作。
26.可选地,所述方法还包括:
27.根据所述个数最大值,判断预设的田字型规划或预设的风车型规划中,是否存在相同数量空间区域的与所述填充面相匹配的目标规划结果、且所述目标规划结果的总体区域尺寸不大于所述最佳规划的结果的总体区域尺寸,其中,所述风车型规划的空间区域数量包括4的整数倍;
28.若是,则根据预设相应类型规划中与所述目标规划结果对应的规划方式,更新所述最佳规划。
29.本技术的第二个目的提供的一种基于托盘空间规划结果的码垛方法,所述方法包括:
30.基于所述空间规划结果的总体区域的总体尺寸、以及所述空间规划结果中各分割区域的区域尺寸,确定包围所述总体区域的迫近区域;
31.当码放至相应分割区域的填充物料基于预规划码垛路径进入所述迫近区域时,根据该填充物料的进入点与所进入分割区域的中心点,确定该填充物料的迫近路径。
32.可选地,所述基于所述空间规划结果的总体区域的总体尺寸、以及所述空间规划结果中各分割区域的区域尺寸,确定包围所述总体区域的迫近区域,包括:
33.根据所述区域尺寸的对角线确定外扩值;
34.根据所述外扩值将所述总体区域外扩。
35.本技术的第三个目的提供的一种托盘空间规划装置,基于所述托盘空间的建模进行模拟规划,所述装置包括:
36.分割模块,用于基于各形状的分割线,分别多循环地对所述托盘空间的模型映像进行迭代分割,其中:各形状的分割线中任意一条与需要填充所述托盘空间的填充物料的
填充面边缘相匹配并且,包括与所述填充面边缘相匹配的折角;在单循环中:任意形状的分割线分别作为迭代分割的初次分割的依据对所述托盘空间的模型映像进行第一次分割,其余各次分割在前次分割结果的映像的基础上,基于任意形状的分割线进行分割;若某一次迭代,前一次的某一分割结果的空间区域小于所述填充物料的填充面,则停止对该分割结果的迭代分割;直至所有迭代分割停止,单循环结束;不同循环中,分割线序列不同,各分割线分割位置不同,其中,单循环中迭代分割所参考的分割线遵循相应分割线序列,在相应分割结果的空间区域的某一位置进行分割;
37.选取模块,用于基于各循环结束时,各循环对应的分割结果个数,选取个数最大值;
38.规划模块,根据所述个数最大值,确定对应的循环过程为最佳规划。
39.可选地,所述分割模块包括:
40.分割单元,用于基于任意形状的分割线在前次分割结果的映像对应的空间区域内的任意分割位置对其进行分割。
41.可选地,所述分割模块还包括:
42.记录模块,用于针对任一次迭代分割所基于的分割线及其分割位置,记录此次迭代分割前所有基于该分割线及其分割位置进行分割所产生的循环内分割结果平均次个数,以使所述分割模块进一步用于以循环内分割结果平均次个数数值最大的分割线及其分割位置,对前次分割结果的映像对应的空间区域进行分割。
43.可选地,所述装置还包括:
44.压缩模块,用于将所述填充面的填充面映像嵌入所述最佳规划结果对应的各空间区域内,并在所述托盘空间内向预设方向平移使紧凑化,获得最小区域。
45.可选地,所述装置,还包括:
46.处理模块,用于在所述最小区域内,将紧凑化后的各填充面映像向所述最小区域边缘移动;和/或将向所述最小区域边缘移动后的结果进行旋转操作、或者镜像操作。
47.可选地,所述装置,还包括:
48.判断模块,用于根据所述个数最大值,判断预设的田字型规划或预设的风车型规划中,是否存在相同数量空间区域的与所述填充面相匹配的目标规划结果、且所述目标规划结果的总体区域尺寸不大于所述最佳规划的结果的总体区域尺寸,其中,所述风车型规划的空间区域数量包括4的整数倍;
49.调整模块,用于在存在所述相同数量空间区域的目标规划结果、且所述目标规划结果的总体区域尺寸不大于所述最佳规划的结果的总体区域尺寸时,根据预设相应类型规划中与所述目标规划结果对应的规划方式更新所述最佳规划,并根据所述填充面映像长宽尺寸,调整更新后的最佳规划。
50.本技术的第四个目的提供的一种基于托盘空间规划结果的码垛装置,包括:
51.确定模块,用于基于所述空间规划结果的总体区域的总体尺寸、以及所述空间规划结果中各分割区域的区域尺寸,确定包围所述总体区域的迫近区域;
52.码垛模块,用于当码放至相应分割区域的填充物料基于预规划码垛路径进入所述迫近区域时,根据该填充物料的进入点与所进入分割区域的中心点,确定该填充物料的迫近路径。
53.可选地,所述确定模块包括:
54.获取单元,用于根据所述区域尺寸的对角线确定外扩值;
55.外扩单元,用于根据所述外扩值将所述总体区域外扩。
56.本技术的第五个目的提供的一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本技术的第一个目的提供的托盘空间规划方法,或者,实现本技术第二个目的提供的基于托盘空间规划结果的码垛方法。
57.本技术的第六个目的在于提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本技术的第一个目的提供的托盘空间规划方法,或者,实现本技术第二个目的提供的基于托盘空间规划结果的码垛方法。
58.本技术公开的空间规划方法及装置,多循环地对托盘空间的模型映像进行迭代分割,并确定分割结果个数最大的循环过程为最佳规划,可以在填充托盘的填充物料尺寸与托盘尺寸非整数倍匹配的情况下,提高托盘空间的利用率。
59.基于相关空间规划方法的码垛方法及装置,在提高托盘利用率的基础上,根据最佳规划的结果确定码垛的迫近区域,并在填充物料进入迫近区域后根据填充物料所进入的分割区域以及迫近区域确定迫近路径,在以最高空间利用率码垛的基础上,保证填充物料以最短的路径迫近的同时避免了当前填充物料与其他填充物料间的碰撞,进而保证码放填充物料过程中填充物料的安全,以及机器人码垛操作过程的安全,提高了机器人工业操作的智能程度。
60.本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
61.本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
62.图1为本技术实施例提供的一种托盘空间规划方法的流程图;
63.图1b本技术实施例提供的一种分割线;
64.图2为本技术实施例的一个分割结果示例图;
65.图3a为本技术实施例提供的另一种托盘空间规划方法的流程图;
66.图3b为本技术实施例的填充面示意图;
67.图4-图6为本技术实施例的不同分割结果示例图;
68.图7为本技术实施例的码垛方法的流程图;
69.图8为最佳规划结果的示意图;
70.图9为本技术实施例的迫近区域示意图;
71.图10为本技术实施例的托盘空间规划装置的示例图;
72.图11为本技术实施例的基于托盘空间规划方法进行的码垛装置的示例图;
73.图12为本技术实施例的电子设备示意图。
具体实施方式
74.下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
75.下面参考附图描述本技术实施例的托盘空间规划方法、码垛方法及其装置。
76.第一方面,介绍本技术的托盘空间规划方法,该方法基于空间建模进行。对相关的空间的建模的映像进行多循环的模拟操作,获得相应结果。
77.一些实施例中,机器人码垛基于托盘空间规划的规划结果而进行,进而托盘空间规划定义为针对待机器人码放的某一用于填充托盘空间的物料进行的、基于托盘空间的建模进行分割相应运算的过程,执行该过程即为生成相应待填充的垛型的过程;执行该过程所获得的最佳规划,对应所生成的最优剁型的生成方式;最佳规划的结果为分割后的托盘空间的建模,其中包括分割而成的各分割区域,即为最优垛型的形状。部分实施例中,上述提及的机器人可以为机器人手臂,当然也可以为具有携带物体运动功能的其他机器人。
78.当然,另一些实施例中,托盘空间规划方法可以应用于机器人码垛以外的其他场景,例如基于托盘的同规格物品摆放等。
79.图1为本技术实施例提供的一种托盘空间规划方法的流程示意图。其中,需要说明的是,本实施例的托盘空间规划方法的执行主体可以为托盘空间规划装置,该托盘空间规划装置配置在电子设备。对于托盘空间规划装置、以及电子设备的说明,请参见后续实施例。其中,电子设备可以包括但不限于终端设备、服务器等,本技术对此不作限定。
80.可选地,如图1所述,该托盘空间规划方法可以包括:
81.步骤s1,基于各形状的分割线,分别多循环地对托盘空间的模型映像进行迭代分割。
82.在一些实施例中,为了解决相关技术中未充分利用托盘空间的问题,本技术实施例提供一种托盘空间规划方法,通过在电子设备上建立的模型,模拟对实际托盘进行空间规划,以得到托盘空间规划结果。其中,规划可以通过安装在电子设备的托盘空间建模的仿真平台进行。
83.部分实施例中,在进行迭代分割时,基于托盘空间的建模模型进行,该模型与托盘的实际空间保持高度一致。
84.可以理解到的是,对某一事物的分割是一次性的操作,对事物进行某一方式的分割以后,就不能再对相同状态的该事物进行另一方式的分割操作。故而,在不同循环中以不同分割方式进行操作时,可以基于模型的映像进行。同一模型可以包括多个映像,各映像与其所对应的模型保持高度一致,进而可以达到分别以方式a、方式b、方式c对同一模型进行分割操作的效果。因此部分实施例中,在不同循环中以不同分割方式进行的分割操作,是对模型映像进行的操作。
85.部分实施例中,分割线的形状与即将填充托盘空间的填充物料的边缘形状相匹配。例如,若填充物料为箱子,则分割线可以与箱子的两相交边匹配进而呈现l形状,或者分割线可以在与箱子两相交边匹配的基础上,还与前述两边处于同一平面内的第三边的反向延长线匹配进而呈现如图1b所示的各种台阶形状。
86.另一些实施例中,填充物料也可以为梯形、三角形、或者其他不规则形状。
87.部分实施例中,填充物料的尺寸形状相同,也就是说,如果确定了一个物料,则在后续迭代、循环过程中,基于所确定的物料进行分割线形状的确定。
88.部分实施例中,迭代分割是基于前一次分割结果进行再一次分割的过程,各次迭代分割,可以基于相同分割线、或者可以基于不同分割线,可以基于同一姿态的分割线、或者也可以基于不同姿态的分割线,可以在前次结果对应的区域内的同一位置进行分割、也可以在前次结果对应的区域的不同位置进行分割,该位置可以为基于相关区域某一参考点的相对位置、也可以为模型映像中预先划分的多个处于相关区域内的固定位置。对于以上相关内容,本实施例不做具体限定。当迭代分割满足迭代结束的条件时,结束迭代。对于迭代结束条件的示意性实施例,请见后述相关描述。
89.部分实施例中,由第一次分割,后续进行多次迭代分割,而后满足迭代退出条件停止分割,这一过程称之为一个循环。部分实施例中,不同个循环中,各次迭代所基于的分割线形状不相同;部分实施例中,不同个循环中,各次迭代所基于的分割线进行分割的位置不同。部分实施例中,上述所提及的不同可以体现为完全不相同、或者部分不相同。
90.为方便说明,在后续实施例中,对一次循环中,对于不同次迭代所基于的分割线形状及多次迭代所形成的顺序,以分割线序列进行称呼描述。但需要理解到的是,分割线序列仅仅是相关说明性实施例中,对一次循环中每次迭代所基于的分割线形状、以及多次迭代中以何种顺序基于相关分割线形状进行分割进行的命名,该名称并不意味着相关实施例中的相关过程预先对分割线形状、顺序进行设定。
91.可选地,填充物料可以为机器人所能操作的任意物体,例如,箱体、工业零件、小型实体、物流包裹、各类型的包装、包装盒等,以使相关物料填充空间规划所形成的各分割区域,本技术对填充物料不作具体限定。
92.在某些实施例中,托盘空间的模型可以是二维平面模型,例如是现实中托盘空间的俯视角度的平面,或者现实中托盘空间的侧视角度的平面。对应的二维维度可以以笛卡尔坐标系的两轴向进行描述,两轴形成平面例如xoy、yoz、xoz平面。
93.在一些情况下,托盘空间的模型可以在二维平面模型基础上随时间改变,一些情况下改变内容与以相应视角的托盘空间实际所改变内容相匹配对应,一些情况下改变内容与以相应视角的托盘空间实际所改变的内容中的一部分内容相匹配对应。例如,若托盘的位置移动,则托盘空间的模型的位置也相应移动;若托盘的空间形状、空间面积发生改变,则托盘空间的模型的空间形状、空间面积也相应发生改变。
94.在某些实施例中,托盘空间的模型可以是三维立体模型,三维立体模型可以通过笛卡尔坐标系以任意实际空间点作为参考进行描述。
95.在一些情况下,托盘空间的模型可以在三维立体模型基础上随时间改变,一些情况下改变内容与托盘空间实际所改变内容相匹配对应,一些情况下改变内容与托盘空间实际所改变内容中的一部分内容相匹配对应。
96.可选地,托盘空间的模型是基于托盘所在现实场景的场景图像而预先建立的。可选地,可基于视觉传感器(例如三维工业相机、智能工业相机、高精度工业相机)对该现实场景进行图像采集,并根据所采集到的场景图像,得到托盘空间的模型。
97.可选地,可基于视觉传感器对该现实场景进行图像采集,并根据所采集到的托盘空间图像,得到该托盘空间的点云数据进而建立相应模型。
98.步骤s2,基于各循环结束时,各循环对应的分割结果个数,选取个数最大值。
99.基于其他相关实施例的说明可以理解到的是,当退出迭代,停止迭代分割,分割的效果在相应被分割的模型映像体现。以下基于图2进行示意性说明。图2(a)中包括阴影、非阴影在内共同区域为与现实托盘空间相对应的模型,分割操作基于复制该模型而得的模型映像进行,在某一个循环中对该模型的一个模型映像进行迭代分割,其结果可通过如图2(a)体现,迭代分割结果体现为包括可被物料码放填充的空间区域,如图2(a)中的空白方格所示。进行一个循环后,还包括其空间不足以填放物料的空闲区域,如图2(a)中的阴影区域。部分实施例中,一个循环的分割结果个数,只包括可被物料码放填充的空间区域数量,例如只包括如图2(a)所示的空白区域数量。在另一循环中对图2(a)实施例模型的另一个模型映像进行迭代分割,结果可如图2(b)所体现。进而部分实施例中,图2(a)所对应循环的分割结果个数为8,图2(b)所对应循环的分割结果个数为6。
100.对于一个循环内的分割迭代的说明,请参见后续实施例。
101.步骤s3,根据个数最大值,确定对应的循环过程为最佳规划。
102.部分实施例中,根据分割结果个数的个数最大值,确定相应的循环过程为最佳规划。
103.可以理解到的是,部分实施例中,一个循环内,基于分割线序列对托盘空间的模型映像进行分割,进而一个循环即包括分次进行的多种分割所形成的组合,进而一个循环对应的是针对托盘空间的一种规划。部分实施例中,当根据分割结果个数确定相应循环则确定出相应规划。分割结果个数的个数最大值即对应最佳规划。
104.本技术公开的空间规划方法,多循环地对托盘空间的模型映像进行迭代分割,并确定分割结果个数最大的循环过程为最佳规划,进而可以在填充托盘的填充物料尺寸与托盘尺寸非整数倍匹配的情况下,提高托盘空间的利用率。
105.对于单循环中所进行的迭代分割,请参见以下部分实施例。
106.在单循环中:任意形状的分割线分别作为迭代分割的初次分割的依据对托盘空间的模型映像进行第一次分割,其余各次分割在前次分割结果的映像的基础上,基于任意形状的分割线进行分割;若某一次迭代,前一次的某一分割结果的空间区域小于填充物料的填充面,则停止对该分割结果的迭代分割;直至所有迭代分割停止,单循环结束。
107.部分实施例中,在单循环中的迭代分割可如图3所示,包括:
108.步骤s301:将第一分割线作为迭代分割的第一次分割的依据对托盘空间的模型映像进行第一次分割,得到第一模型映像;
109.如用l型分割线对托盘的容纳空间进行分割,第一次分割得到两个子托盘。
110.步骤s302:将第二分割线作为迭代分割的第二次分割的依据对第一模型映像进行分割,得到第二模型映像;
111.也就是说,在第一次分割得到两个子托盘的基础上,继续对每个子托盘的容纳空间进行分割,得到四个子托盘。
112.而步骤s302所基于的第二分割线的形状,可以不同于步骤s301中的第一分割线。具体可以是分割线本身的不同,例如不再基于l型分割线进行分割而是基于图1b中任一分割线进行;当然也可以是分割姿态不同,也就是说第二分割线可以基于第一分割线进行旋转、或镜像而得。
113.步骤s303:将第三分割线作为迭代分割的第三次分割的依据对第二模型映像进行分割,得到第三模型映像;
114.步骤s30n:以此类推,直至第n-1模型映像小于填充物料的填充面,停止迭代分割。
115.在一些示例中,当出现一个子托盘的空间区域并不能容纳单个物料时,即某一分割结果的空间区域小于填充物料的填充面,停止对这个子托盘继续分割,以此类推,直至所有分割而得的子托盘的容纳空间均不能容纳单个物料时,停止分割操作,至此,单循环结束。
116.部分实施例中,对于托盘空间的规划可在立体空间的相应维度基础上降低维度进行,降低维度有助于降低规划过程的计算量。进而部分实施例,通过参考填充物料的填充面,判断是否退出迭代。部分实施例中填充面所基于的视角,与建立托盘的空间模型所基于的视角相一致。
117.对于降低维度的规划,可以理解为平面空间规划,可通过不同深度的多次平面规划,实现对于三维立体空间的立体规划。举例而言,可基于托盘空间的模型映像,首先对最底层进行空间规划,确定底层最佳规划;而后对第二层进行空间规划,确定第二层最佳规划......直至到最高层,确定最高层的最佳规划。各层托盘空间的模型映像的位置可基于实际情况进行调整,或者,托盘空间的模型映像形状可参考三维空间相关稳定条件进行调整,例如,为使填充相关空间规划结果后各层填充物料稳定,可将托盘空间的模型映像相应缩小等。
118.在另一些实施例中,可基于托盘空间的模型映像,首先对最底层进行空间规划,确定底层最佳规划,而后通过旋转操作、镜像操作获得更高层的最佳规划,进而满足基于空间规划进行填充物料后,物料的稳定性。
119.部分实施例中,对于降低维度的规划,其用于迭代分割的分割线形状与填充物料的填充面边缘相匹配,并且分割线包括与该填充面边缘相匹配的折角。例如若填充面为矩形,则分割线形状可以为l型即包括一个折角,或者如图1b中所示的形状,其包括两个折角;若填充面为如图3b所示的圆角矩形,则分割线的折角形状相应匹配。
120.在实际执行过程中,每次迭代分割操作的分割线可以随机确定。
121.部分实施例中,迭代分割中的不同次分割,可基于任意形状的分割线在前次分割结果的映像对应的空间区域内的任意分割位置对其进行分割。上述位置可以为基于相应空间区域的某一参考部位的相对位置,例如是相应固定区域某一边的中心点、或者某一边的三分之一点等等。
122.在一些示例中,由于迭代分割中每一次分割的分割线的种类、分割线的放置位置可以不同,导致不同循环的分割结果个数不同。如4所示,图4左、右为基于不同分割线种类、分割线放置位置所得的结果,左边包括4个结果,右边包括6个结果。
123.部分实施例中,在单循环迭代分割过程中,记录每一次迭代分割所基于的分割线及其分割位置所产生的结果个数,用于:针对任一次迭代分割所基于的分割线及其分割位置,记录此次迭代分割前所有基于该分割线及其分割位置进行分割所产生的循环内分割结果平均次个数;进而可以以循环内分割结果平均次个数数值最大的分割线及其分割位置,对在前次分割结果的映像对应的空间区域进行分割。列举简单说明性实施例而言,如图4所示,初次分割:基于图4(a)中虚线分割线形状a,对托盘空间的模型映像的左侧边中点进行
分割,记录循环内分割结果个数为2。第二次分割将关注点聚集在图4(a)的上半区域,即图4(b)中非阴影部分。针对图4(b)中非阴影部分,若基于分割线形状a在左侧边中点进行分割,则得到循环内分割结果个数为3,如图4(c)所示;若基于同一型状分割线形状a在左侧边三分之一点进行分割,则得到循环内分割结果个数为2,如图4(d)所示。此时,所记录的“形状a分割位置在左侧边中点”的循环内分割结果平均次个数为:(初次分割的循环内分割结果个数 第二次分割的循环内分割结果个数)
÷
2次=2.5个/次;而“形状a分割位置在左侧边三分之一点”的循环内分割结果平均次个数,因为只有第二次分割基于“形状a分割位置在左侧边三分之一点”进行分割,进而为2个/次。则在第三次分割时,优先选取“形状a分割位置在左侧边中点”方式进行分割。
124.需要说明的是,上述实施例仅为最简单的说明性实施例,意在解释说明迭代分割过程中,基于前次分割的经验,对当前、以及以后的各次分割所带来的决策优化机制。上述实施例的说明,并不对分割线形状,分割线在各次分割中所形成的顺序、分割位置、迭代次数进行限制。
125.部分实施例中,由于分割线形状、分割位置等的随意性,当循环结束时,可能出现各种形式的分割结果,进而所确定的最佳规划对应的空间区域间可能存在空隙,空隙如图5中(a)所示的12个分割结果中的阴影部分。本技术部分实施例中,将分割结果紧凑化处理获得如图5(b)所示效果。具体包括步骤:将填充面的填充面映像嵌入最佳规划结果对应的各空间区域内,并在托盘空间内向预设方向平移使紧凑化,获得最小区域。
126.部分实施例中,还可以在最小区域内,将紧凑化后的各填充面映像向最小区域边缘移动使其分布均匀,获得如图5(c)所示效果。部分实施例中,可以将向最小区域边缘移动后的结果进行旋转操作、或者镜像操作。
127.在本技术的一些实施例中预先设置常规规划方式,可以包括如图6(a)所示的4种风车型规划,或者如图6(b)所示的2种田字型规划。常规规划方式中的空间数量可以以相应方式进行调整。例如以阵列分布为规则的田字型规划,可调整规划所依据的行/列个数,进而形成相应行/列规划结果;以类似“矩形的各边”分布方式为排列规则的风车型规划,将“矩形的各边”作为不同的单元,可如图6(a)中由4种所示,增加/减小每一单元的空间区域数量。进而部分实施例中,在获得最佳规划后,根据最佳规划对应的个数最大值,判断预设的田字形规划或预设的风车型规划中,是否存在相同数量空间区域的与填充面相匹配的目标规划结果、且目标规划结果的总体区域尺寸不大于最佳规划的结果的总体区域尺寸,其中,风车型规划的空间区域数量包括4的整数倍;若是,则根据预设相应类型规划中与目标规划结果对应的规划方式更新最佳规划,并根据填充面映像长宽尺寸,调整更新后的最佳规划。
128.可以理解的是,若各循环后所确定的个数最大值为2、或4的整数倍,则存在一种可能,在预设规划方式中可能存在与最佳规划相一致的规划方式,进而可以基于预设规划方式进行相关操作,例如机器人码垛操作。故而,如果个数最大值为2、或4的整数倍,则将最佳规划所对应的规划结果与预设规划结果相对比,进而决定是否能够基于预设规划进行操作。对比的内容包括两方面。第一方面,各结果的空间区域分布情况及各区域姿态与预设规划方式结果相一致;第二方面,预设规划方式结果所占用的总体面积不大于各结果的总体面积。
129.第二方面,本技术实施例提供一种基于托盘空间规划结果的码垛方法,可以理解为基于空间规划结果对相关区域进行填充方法。在基于空间规划方法进行空间规划后,可以基于本技术提供的码垛方法对规划结果进行填充。本技术的码垛方法基于与现实相匹配的虚拟场景进行,在模拟仿真的基础上确定相应码垛路径、并将结果发送至机器人进行码垛。
130.部分实施例中,基于托盘空间规划结果的码垛方法对应相关虚拟装置,相关虚拟装置基于电子设备运行,该电子设备用于与机器人进行通信进而发送码垛方法,从而在机器人对物料进行码垛时防止物料间的碰撞,提高了机器人工业操作的智能程度。对于虚拟装置、电子设备的相关说明,请见后续实施例。
131.一些实施例中,机器人可选地涉及机器人手臂,本技术对于机器人手臂的形式不做具体限定,六轴机器人、四轴机器人、以及本技术未提及的机器人手臂等进行的本技术的相关操作,都列为本发明保护范围内。
132.本发明实施例提供的基于托盘空间规划结果的码垛方法,如图7所示,包括如下步骤:s701:基于空间规划结果的总体区域的总体尺寸、以及空间规划结果中各分割区域的区域尺寸,确定包围总体区域的迫近区域;s702:判断码放至相应分割区域的填充物料基于预规划码垛路径是否进入迫近区域;s703:若是,根据该填充物料的进入点与所进入分割区域的中心点,确定该填充物料的迫近路径。
133.可以理解到的是,在机器人码垛过程中,所码放的物料被机器人带动而填充预先规划好的空间区域,在进行相应区域填充即进行某一物料的码放时,需要注意避免当前物料与其他物料间的碰撞,这一碰撞在各空间区域所组成的总体区域的较远处不会发生,而只会在接近总体区域处发生,因此在基于最佳空间规划进行空间规划后,在规划所形成的总体区域周围确定迫近区域,用于作为码垛过程中调整码垛路径的参考。
134.以下列举实施例,示意性说明总体区域以及分割区域。若规划结果如图8所示,则分割区域可如图8中点阵填充区域所示,如图8中存在12个分割区域,可以用于码放填充物料;12个分割区域与斜线阴影部分共同组成总体区域。部分实施例中,分割区域尺寸相同。
135.部分实施例中,迫近区域在总体区域基础上进行外扩,具体外扩的程度,可以根据分割区域的区域尺寸进行确定。
136.部分实施例中,区域尺寸包括长度、宽度;或者包括基于长度、宽度所计算出的区域尺寸的最大跨度,例如矩形的对角线、椭圆的长轴、不规则图形的最长部位等;或者包括基于长度、宽度所计算出的区域尺寸的最大跨度的某一部分,例如最大跨度的一半、最大跨度的三分之一、最大跨度的三分之二等等。
137.部分较佳实施例中,为确定迫近区域而基于总体区域进行的外扩,其程度可如图9所示,图9中总体区域的总体尺寸为w*l,对角线尺寸为2*d,而迫近区域可在总体区域的总体尺寸基础上外扩d。也就是说,外扩程度可以为对角的一半。实际情况下是由于机器人对物料的抓取点,位于图9所示的、与物料形状相匹配的分割区域的中心点,进而将外扩程度确定为物料对角线的一半。
138.本领域技术人员应该理解到的是,若某些场景下,机器人抓取点不位于中心点,则根据抓取点位置在最大跨度基础上确定迫近区域的外扩程度。
139.需要说明的是,部分实施例s702中对于物料是否进入迫近区域的判断,是基于虚
拟场景仿真模型的计算进行的判断,进而本技术的码垛方法,是基于虚拟场景进行的预规划。
140.一些实施例中,可以根据托盘空间规划方法,获得最佳规划,并得到相应规划结果。部分实施例中,最佳规划可以包括对于托盘空间的一种规划方式,该方式中基于与填充物料相配的各形状分割线分别多循环地对托盘空间进行分割,获得最佳规划。最佳规划的结果,包括划分好分割完成的托盘空间的各分割区域,在进行码垛时,将填充物料码放至相应分割区域。
141.部分实施例中可以基于填充物料的尺寸对最佳规划形成的结果进行紧凑化处理,使其更为紧凑,或者还可进行平移、旋转、镜像操作,优化最佳规划。
142.部分实施例中基于最佳规划进行码垛,被码放的物料进入迫近区域后进行的移动称之为迫近路径,迫近路径基于物料进入迫近区域的进入点和物料的中心点确定。
143.部分实施例中,可先基于进入点和中心点的连线确定初始迫近路径,而后根据所码放物料的高度调整初始迫近路径相对于水平面的夹角以避免与其他物料发生碰撞。
144.部分实施例中,还可以通过确定物料填充相应分割区域的顺序,进一步避免物料码放过程中的碰撞。可选地,可根据确定好的进入各分割区域的迫近路径反向延长线的交点确定顺序参考点,进而根据各分割区域中心点与顺序参考点间的距离,由远及近在相应分割区域内码放相应物料。若遇到上述距离相同的情况,可以优先码放边缘的分割区域。
145.第三方面,本技术实施例提供一种托盘空间规划装置。
146.图10为本技术实施例提供的一种托盘空间规划装置的结构示意图。
147.如图10所示,该托盘空间规划装置,基于托盘空间的建模进行模拟规划,该装置可以包括:分割模块1010、选取模块1020和规划模块1030,其中:
148.分割模块1010,用于基于各形状的分割线,分别多循环地对托盘空间的模型映像进行迭代分割,其中:各形状的分割线中任意一条与需要填充托盘空间的填充物料的填充面边缘相匹配并且,包括与填充面边缘相匹配的折角;在单循环中:任意形状的分割线分别作为迭代分割的初次分割的依据对托盘空间的模型映像进行第一次分割,其余各次分割在前次分割结果的映像的基础上,基于任意形状的分割线进行分割;若某一次迭代,前一次的某一分割结果的空间区域小于填充物料的填充面,则停止对该分割结果的迭代分割;直至所有迭代分割停止,单循环结束;不同循环中,分割线序列不同,各分割线分割位置不同,其中,单循环中迭代分割所参考的分割线遵循相应分割线序列,在相应分割结果的空间区域的某一位置进行分割;
149.选取模块1020,用于基于分割模块执行各循环结束时,各循环对应的分割结果个数,选取个数最大值;
150.规划模块1030,用于根据个数最大值,确定对应的循环过程为最佳规划。
151.在本技术的一个实施例中,分割模块1010包括:分割单元。其中,分割单元,用于基于任意形状的分割线在前次分割结果的映像对应的空间区域内的任意分割位置对其进行分割。
152.在本技术的一个实施例中,分割模块1010还包括:记录模块。其中,记录模块,用于针对任一次迭代分割所基于的分割线及其分割位置,记录此次迭代分割前所有基于该分割线及其分割位置进行分割所产生的循环内分割结果个数,以使分割模块进一步用于以循环
内分割结果个数数值最大的分割线及其分割位置,对在前次分割结果的映像对应的空间区域进行分割。
153.在本技术的一个实施例中,该装置还包括:压缩模块。其中,压缩模块,用于将填充面的填充面映像嵌入最佳规划结果对应的各空间区域内,并在托盘空间内向预设方向平移使紧凑化,获得最小区域。
154.在本技术的一个实施例中,该装置还包括:处理模块。其中,处理模块,用于在最小区域内,将紧凑化后的各填充面映像向最小区域边缘移动;和/或将向最小区域边缘移动后的结果进行旋转操作、或者镜像操作。
155.在本技术的一个实施例中,该装置还包括:判断模块和调整模块,其中:
156.判断模块,用于根据个数最大值,判断预设的田字型规划或预设的风车型规划中,是否存在相同数量空间区域的与填充面相匹配的目标规划结果、且目标规划结果的总体区域尺寸不大于最佳规划的结果的总体区域尺寸,其中,风车型规划的空间区域数量包括4的整数倍。
157.调整模块,用于在存在相同数量空间区域的目标规划结果、且目标规划结果的总体区域尺寸不大于最佳规划的结果的总体区域尺寸时,根据预设相应类型规划中与目标规划结果对应的规划方式更新最佳规划,并根据填充面映像长宽尺寸,调整更新后的最佳规划。
158.其中,需要说明的是,上述对托盘空间规划方法实施例的解释说明也适用于该实施例的托盘空间规划装置,此处不再赘述。
159.本技术实施例的托盘空间规划装置,多循环地对托盘空间的模型映像进行迭代分割,并确定分割结果个数最大的循环过程为最佳规划,通过本技术进行的空间规划可以在填充托盘的填充物料尺寸与托盘非整数倍匹配的情况下,提高托盘空间的利用率。
160.第四方面,介绍本技术的基于托盘空间规划结果的码垛装置。
161.图11为本技术实施例提供的一种基于托盘空间规划结果的码垛装置的结构示意图。
162.如图11所示,该基于托盘空间规划结果的码垛装置,可以包括:确定模块1110和码垛模块1120,其中:
163.确定模块1110,用于基于空间规划结果的总体区域的总体尺寸、以及所述空间规划结果中各分割区域的区域尺寸,确定包围所述总体区域的迫近区域。
164.码垛模块1120,用于当码放至相应分割区域的填充物料基于预规划码垛路径进入所述迫近区域时,根据所述填充物料的进入点与所进入分割区域的中心点,确定所述填充物料的迫近路径。
165.在本技术的一个实施例中,确定模块1110包括:获取单元和外扩单元,其中:
166.获取单元,用于根据所述区域尺寸的对角线确定外扩值。
167.外扩单元,用于根据所述外扩值将所述总体区域外扩。
168.其中,需要说明的是,上述对基于托盘空间规划结果的码垛方法实施例的解释说明也适用于该实施例的基于托盘空间规划结果的码垛装置,此处不再赘述。
169.本技术实施例的基于托盘空间规划结果的码垛装置,在提高托盘利用率的基础上,根据最佳规划的结果确定码垛的迫近区域,并在填充物料进入迫近区域后根据填充物
料所进入的分割区域以及迫近区域确定迫近路径,在以最高空间利用率码垛的基础上,保证填充物料以最短的路径迫近的同时避免了当前填充物料与其他填充物料间的碰撞,进而保证码放填充物料过程中填充物料的安全,以及机器人码垛操作过程的安全,提高了机器人工业操作的智能程度。
170.图12为本技术实施例提供的电子设备的结构示意图。该电子设备可以包括:
171.存储器1201、处理器1202及存储在存储器1201上并可在处理器1202上运行的计算机程序。
172.处理器1202执行程序时实现上述实施例中提供的托盘空间规划方法。
173.在本技术的一个实施例中,上述处理器1202执行程序时实现上述实施例中提供的基于托盘空间规划结果的码垛方法。
174.进一步地,电子设备还包括:
175.通信接口1203,用于存储器1201和处理器1202之间的通信。
176.存储器1201,用于存放可在处理器1202上运行的计算机程序。
177.存储器1201可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
178.如果存储器1201、处理器1202和通信接口1203独立实现,则通信接口1203、存储器1201和处理器1202可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(industry standard architecture,简称为isa)总线、外部设备互连(peripheral component,简称为pci)总线或扩展工业标准体系结构(extended industry standard architecture,简称为eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
179.可选的,在具体实现上,如果存储器1201、处理器1202及通信接口1203,集成在一块芯片上实现,则存储器1201、处理器1202及通信接口1203可以通过内部接口完成相互间的通信。
180.处理器1202可能是一个中央处理器(central processing unit,简称为cpu),或者是特定集成电路(application specific integrated circuit,简称为asic),或者是被配置成实施本技术实施例的一个或多个集成电路。
181.本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上的托盘空间规划方法,或者,基于托盘空间规划结果的码垛方法。
182.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或n个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
183.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者
隐含地包括至少一个该特征。在本发明的描述中,“n个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
184.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更n个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
185.在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或n个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
186.应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,n个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
187.本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
188.此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
189.上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献