CN112085385B - 基于订单的稳定混箱垛型供箱序列的生成系统及其方法 - Google Patents

基于订单的稳定混箱垛型供箱序列的生成系统及其方法 Download PDF

Info

Publication number
CN112085385B
CN112085385B CN202010939275.7A CN202010939275A CN112085385B CN 112085385 B CN112085385 B CN 112085385B CN 202010939275 A CN202010939275 A CN 202010939275A CN 112085385 B CN112085385 B CN 112085385B
Authority
CN
China
Prior art keywords
box
boxes
axis
stacking
tray
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
Application number
CN202010939275.7A
Other languages
English (en)
Other versions
CN112085385A (zh
Inventor
陈学能
樊海平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Weihil Intelligent Technology Co ltd
Original Assignee
Guangzhou Lisheng Robot Technology Co ltd
Guangdong Lisheng Intelligent Co ltd
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 Guangzhou Lisheng Robot Technology Co ltd, Guangdong Lisheng Intelligent Co ltd filed Critical Guangzhou Lisheng Robot Technology Co ltd
Priority to CN202010939275.7A priority Critical patent/CN112085385B/zh
Publication of CN112085385A publication Critical patent/CN112085385A/zh
Application granted granted Critical
Publication of CN112085385B publication Critical patent/CN112085385B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06313Resource planning in a project environment
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G57/00Stacking of articles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06312Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Data Mining & Analysis (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Educational Administration (AREA)
  • Mathematical Physics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Tourism & Hospitality (AREA)
  • Pure & Applied Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Stacking Of Articles And Auxiliary Devices (AREA)

Abstract

本发明公开了一种基于订单的稳定混箱垛型供箱序列的生成系统及其方法,S1、导入Excel订单并自动解析得到订单内所有物品的数量信息和三维尺寸数据;S2、根据订单中每个箱子三维尺寸与数量,首先根据箱子尺寸对订单中的箱子进行分类处理,其次根据各类箱子的数量,对其进行分垛处理,最后通过基于动态规划的交错整垛处理或者组合块处理,得到每个托盘对应的稳定垛型;S3、根据已分垛处理后生成的垛型,计算每个托盘中每个箱子的具体空间位置,按照一层层的摆放顺序生成码放顺序,生成含有每垛型垛号、层数、箱子具体空间位置、箱子摆放方向以及码垛顺序的供箱序列。

Description

基于订单的稳定混箱垛型供箱序列的生成系统及其方法
技术领域
本发明属于机器人码垛的技术领域,具体涉及一种基于订单的稳定混箱垛型供箱序列的生成系统及其方法。
背景技术
随着现代工业化标准的不断发展和推行,物流行业不断扩大,因此物资集装问题也越来越常见。现有的机器人自动码垛技术是针对三维装箱问题进行研究,这种方式对同一类物资比较适用。但是需要进行繁琐的人工示教过程,提高了码垛成本。这种码垛技术用于实际应用场景仍存在局限性。在实际场景中,箱子数据的获取是通过导入出库的订单处理的。实际码垛具有边界约束,几何约束,重量约束,摆放约束。且码垛过程中必须确保码垛的每个箱子被支撑,以确保整个垛型的稳定性。同时,码放多种类型物资多数是依赖于工作人员的操作经验进行。码垛的装载率依赖人工熟练程度,码垛成本增加,影响了物流效率。
申请号201911008782.2的专利《一种码垛稳定性好的离线混合码垛方法及系统》以及申请号201410818182.3的专利《一种错位码垛规划的方法》所述箱子信息的获取方式,是通过用户直接向输入模块中直接输入箱型。其不足在于用户手动输入箱型,易出现手动录入出错的情况,且箱子信息的获取效率低。
申请号201910959610.7的专利《一种用于相同货物的码垛方法及系统》所述的单层分布方案是指,通过对整个托盘面积范围递推箱子组合得到多个单层分布方案,再从中过滤不符合约束的方案。其不足在于,计算规模大,码垛算法的时间复杂度高,效率低。
申请号201910959610.7的专利《一种用于相同货物的码垛方法及系统》所述的层间分布方案是指单个托盘码垛方案从最底层开始偶数层相对于奇数层的单层码垛方案旋转180°,形成交错码放垛形的层间分布。其不足在于,码垛结构的稳定性较低。
发明内容
本发明的目的在于针对现有技术中的上述不足,提供一种基于订单的稳定混箱垛型供箱序列的生成系统及其方法,以解决现有自动混箱码垛,码垛成本高,自动化和智能化低的问题。
为达到上述目的,本发明采取的技术方案是:
一种基于订单的稳定混箱垛型供箱序列的生成系统,其包括:
导入订单模块,用于导入Excel订单并自动解析得到订单内所有物品的数量信息和三维尺寸数据;
基于动态规划的稳定混箱垛型生成模块,用于首先根据箱子尺寸对订单中的箱子进行分类处理,其次根据各类箱子的数量,对其进行分垛处理,最后通过基于动态规划的交错整垛处理或者组合块处理,得到每个托盘对应的稳定垛型;
供箱序列生成模块,用于根据交错整垛处理或组合块处理后生成的垛型,计算每个托盘中每个箱子的具体空间位置,按照一层层的摆放顺序生成码放顺序,并生成含有每垛型垛号、层数、箱子具体空间位置、箱子摆放方向以及码垛顺序的供箱序列。
一种基于订单的稳定混箱垛型供箱序列的生成方法,包括:
S1、订单数据导入:导入Excel订单并自动解析得到订单内所有物品的数量信息和三维尺寸即长宽高数据;
S2、基于动态规划生成稳定混箱垛型:首先根据箱子尺寸对订单中的箱子进行分类处理,其次根据各类箱子的数量,对其进行分垛处理,最后通过基于动态规划的交错整垛处理或者组合块处理,得到每个托盘对应的稳定垛型;
S3、生成供箱序列:根据交错整垛处理或组合块处理后生成的垛型,计算每个托盘中每个箱子的具体空间位置,按照一层层的摆放顺序生成码放顺序,并生成含有每垛型垛号、层数、箱子具体空间位置、箱子摆放方向以及码垛顺序的供箱序列。
进一步,S1中导入Excel订单并自动解析得到订单内所有物品的数量信息和三维尺寸数据,包括:
S1.1、导入订单,解析订单中的箱子的数量信息和三维尺寸信息,构建箱子集合B={bi|i=1,2,…,n},其中,箱子集合B中每个箱子b的数量信息和三维尺寸信息包括长length、宽width、高height、数量count、重量weight、摆放方向flag、箱子在X、Y、Z轴上摆放的空间位置(x,y,z)以及码垛序号order;
S1.2、按顺序对箱子集合B编号,生成初始码垛序列。
进一步,S1.1中箱子的摆放方向为正放或横放,即箱子旋转角度为0°或90°;并设定每个箱子b的初始摆放方向为正放,即flag标记为0。
进一步,S2中根据订单中各类箱子的数量,首先根据箱子尺寸对订单中的箱子进行分类处理,其次根据各类箱子的数量,对其进行分垛处理,最后通过基于动态规划的交错整垛处理或者组合块处理,得到每个托盘对应的稳定垛型,包括:
S2.1、分类处理:将订单中的各个箱子以相同尺寸即相同的长宽高归纳为一类,进行分类处理;实际混箱码垛场景中,Excel订单中存在某货物多条记录的情况,以及多个货物属于相同箱子尺寸即相同的长宽高的情况;将订单中的各个箱子以相同的长宽高归纳为一类,分类后的每一类箱子列表中的元素为一组具有相同长宽高的箱子;
S2.2、分垛处理:对于分类后的箱子,若订单中每类箱子的数量满足满码条件,将箱子添加到满码箱子列表FullPalletsList,进入步骤S2.3;若订单中每类箱子的数量小于满码数量,将箱子加入非满码列表IncompletePalletsList,进入步骤S2.4;
S2.3、交错整垛处理:对于箱子数量满足满码条件的每类箱子,比较其沿着X轴和沿着Y轴摆放的两种码放方案的所含箱子个数,选择个数多的方案进行箱子的码放;为了垛型的稳固,层与层之间的箱子交错,每个箱子都被支撑;因此每种码垛方案均设计层间分布方案,每个托盘对应一个优层列表LayerList,托盘中箱子为沿着X轴摆放的码垛方案,标记FlageXorY为0;托盘中箱子为Y轴摆放的码垛方案,则标记FlageXorY为1;
S2.4、组合块处理:基于码垛过程中的边界约束中码垛垛型的高度不能超过托盘的限高,将非满码列表中箱子叠成多个高度不超过托盘限高Lh的竖立组合块Mb,优先堆叠同类箱子。组合块Mb是箱子集合B的子集,记录组合块Mb和组合块Mb在X轴、Y轴、Z轴的最大值,分别定义X轴、Y轴、Z轴的最大值为lMb、wMb、hMb,组合块Mb的体积VMb与填充率FRMb分别为,
VMb=lMb*wMb*hMb
FRMb=VMb/(lMb*wMb*hMb)
记录每个组合块的高度与托盘限高Lh的差值为余高Rh,并记录组合块以及对应其属性信息至组合块列表Mb={Mbi|i=1,2,…,n}。
进一步,S2.2中当箱子的数量满足满码托盘条件时,将箱子添加到满码箱子列表FullPalletsList,并按照箱子重量从大到小排序;
根据箱子的满码条件,得到每类箱子可分到码垛的托盘数量PNum以及剩余不可码放一个托盘的数量;
更新每个箱子的剩余数量,并将剩余箱子加入非满码列表IncompletePalletsList,将订单中不满足满码条件的剩余箱子加入非满码箱子列表IncompletePalletsList;
其中所述满码托盘条件为:
RNum≥LNum×WNum×HNum
其中,LNum为该类箱子沿着托盘的长可摆放的个数,WNum为该类箱子沿着托盘的宽可摆放的个数,HNum为该箱子沿着托盘的限高可摆放的个数,RNum为该类箱子的总数量。
进一步,S2.3中两种码放方案分别为沿着X轴摆放的单层分布方案和沿着Y轴摆放的单层分布方案;
其中,沿着X轴摆生成的单层码垛方案为:
首先确定沿X轴的第一行摆放,通过动态规划选出在托盘的长上可摆放存在多个箱子的最优组合,且组合一定存在一组旋转角度为0°和旋转为90°的箱子;
分别将旋转角度相同的箱子放在一起,旋转角度为0°的箱子放入列表LList,旋转角度为90°的箱子放入列表Wlist,之后的每一行都按照第一行的摆放方式,并更新LList列表和WList列表;
直至无法放下箱子为止,整理箱子与箱子之间的间隙,确保列表LList和列表WList中的箱子,在Y轴上的长度一致。
进一步,层之间生成层间分布方案,包括:
偶数层将单层分布方案中列表LList和列表WList中的箱子区域交换,奇数层保持不变;
比较同一类箱子两种码放方案的所含箱子个数,选择个数多的方案进行类箱子的码放。
进一步,S2.4还包括:
搜索剩余箱子集合B,若当前箱子高度小于组合块余高,判断是否箱子可叠加在当前组合块最上方;判断当前箱子的长小于组合块的长并且当前箱子的宽小于组合块的宽,将箱子加入当前组合块中,且标记箱子的摆放方向为正放,flag的值不变;判断当前箱子的宽小于组合块的长并且当前箱子的长小于组合块的宽,将箱子加入当前组合块中,且标记该箱子的摆放方向为正放,flag的值更新为1;
调整组合块中的顺序,由底向上组合块中的箱子底面积大小递减,更新组合块列表以及剩余箱子集合,其每个组合块中优先将同尺寸的箱型向上堆叠,且相邻箱子之间下层箱子的底面积均大于等于上层所在箱子的底面积;
构建普通墙,将构建组合模块中生成的组合块放入托盘后会割裂出剩余空间,在不断生成的剩余空间中,同时沿着剩余空间的X轴方向和Y轴方向,将组合块拼接成普通墙pw,当pw是沿着X方向拼接码放,其中所包含的组合块在X轴上的最大值lpl之和不能超过托盘上剩余空间的长;同样,当pw是沿着Y方向码放的时候,其所有优条在Y轴上的最大值wpl之和是不能超过托盘剩余空间的宽;在组合块列表集合中动态求解最优组合,记录每一个pw在X轴或是Y轴上的最大值lpw、wpw,普通墙pw的体积Vpw为各个组合块的体积相加,填充率FRpw表示为,
构建优墙,优墙列表存放着一个托盘上垛型的码放方案,每个托盘对应一个优墙列表,首先创建一个空的优墙列表pw={pwi|i=1,2,…,n}待存放托盘的码放方案,比较沿着剩余空间的X轴方向和Y轴方向码放的普通墙pw的填充率,动态搜索填充率最大的普通墙记录到优墙列表,直到托盘的剩余空间放不下箱子为止,得到单个托盘的码放方案;更新剩余箱子集合B,重复拼接普通墙的操作,直到剩余箱子集合的数量为0为止。
进一步,根据交错整垛处理或组合块处理后生成的垛型,计算每个托盘中每个箱子的具体空间位置,按照一层层的摆放顺序生成码放顺序,并生成含有每垛型垛号、层数、箱子具体空间位置、箱子摆放方向以及码垛顺序的供箱序列,包括:
S3.1,基于经过交错满垛处理后分垛的托盘,建立坐标系:以托盘左下角为初始点(0,0,0)建立空间坐标系,并以每个箱子的中心点设置箱子坐标;
S3.2,根据所述优层列表LayerList,生成已分垛托盘中每个箱子的空间位置,并得到在一个垛型上最底部第一行的所有箱子、码放的方向、每一行箱子在X轴或是Y轴的最多个数、垛型满码时的层数;当层列表中的行列表的FlageXorY为0时,代表整个层列表的箱子是沿着X轴码放;当层列表中的行列表的FlageXorY为1时,代表整个层列表的箱子是沿着Y轴码放;每个箱子的Roate值为0时,表示箱子正放,即箱子的长平行于X轴,宽平行于Y轴;每个箱子的Roate值为1时,表示箱子旋转,即箱子的长平行于Y轴,宽平行于X轴;当FlageXorY为0时,用箱子平行于Y轴的长度乘以箱子在Y轴上的最大个数,分别获得箱子正放时平行于Y轴的长WSumL与箱子旋转时平行于Y轴的长LSumL,比较WSumL与LSumL两者的大小,得到箱子在码放时需要设置间隔,并使用WSumL与LSumL两者相减时的绝对值除以设置间隔的箱子间隔数获得每一个间隔值GapW;当FlageXorY为1时,用箱子平行于X轴的长度乘以此类箱子在X轴上的最大个数,分别获得箱子正放时平行于X轴的长WSumW与箱子旋转时平行于X轴的长LSumW,通过比较WSumW与LSumW两者的大小,得到箱子在码放时需要设置的间隔,并使用WSumW与LSumW两者相减时的值除以需要设置间隔的箱子间隔数获得每一个间隔值GapW;
S3.3,在码放第一层时,首先码放箱子正放时的情况,第一个箱子根据初始点(0,0,0)、每个箱子的长、宽、高、间隔值获得箱子对应的坐标值,箱子依据上一个箱子在X、Y坐标轴上的值、上一个箱子的长宽、箱子本身的长宽高与间隔值获得其对应坐标;其次码放箱子旋转时的情况,第一个箱子根据在行列表中已码放箱子的总长设置新的初始坐标(x,0,0)或(0,y,0),其次获得每个箱子的长、宽、高与间隔值获得其对应的坐标值,此后箱子依据上一个箱子在X、Y坐标轴上的值、上一个箱子的长宽、此箱子本身的长宽高与间隔值获得对应坐标,最后获得第一层每个箱子的空间坐标;
在第二层时,与第一层码放相反,先码放箱子旋转时的情况,再码放箱子正放时的情况,并且箱子在Z轴上的高应当是加上第一层箱子高的值,其余计算与第一层计算相同,最后获得第二层每个箱子的空间坐标;之后的层,当层数为偶数则使用第一层的码垛方式,当层数为奇数,则使用第二层的码垛方式,并且在Z轴方向的坐标值应当叠加上一层在Z轴上的坐标值;
其中,在S3.2中计算箱子坐标时即可直接依次获得码垛次序,其码垛次序从1开始;
S3.4,基于组合块处理后分垛的托盘,建立坐标系:以托盘左上角为(0,0,0)建立空间坐标系,并基于每个箱子的中心点设置其坐标;
S3.5,根据所述优墙列表pw,生成已分垛托盘中每个箱的空间位置,得到每个优墙的码放方向是X轴或Y轴和其中的组合块集合;
当优墙沿着X轴码放,由托盘的长减去托盘的剩余长、由托盘的宽减去托盘的剩余宽得到优墙的放置起点,并使用优墙列表中第一个组合块列表底部箱子的宽、高直接获得此箱子在Y、Z轴上的空间坐标,X坐标为优墙在X轴上最大值的一半;这个组合块的所有箱子在X、Y坐标值均为底部箱子在X、Y轴坐标上的坐标值,其Z坐标上的值为上一个箱子的Z坐标值、上一个箱子高的一半、箱子本身高的一半这三值相加得到;
此优墙中之后的组合块坐标,对于最底部箱子在X轴上的坐标即为上一个组合块最底部箱子在X轴的坐标、上一个组合块最底部箱子长的一半、此组合块最底部箱子长的一半这三者相加,在Y轴上的坐标即为上一个组合块最底部箱子Y坐标值,在Z轴上的值可通过箱子本身高计算;除底部箱子以外的箱子坐标X、Y坐标值通过其最底部箱子获得,Z坐标上的坐标值为上一个箱子的Z坐标值、上一个箱子高的一半、箱子本身高的一半这三值相加;
当优墙沿着Y轴码放,与上述沿X轴时相比X、Y轴坐标值获取过程互换即可;
根据步骤S2.4和S3.5得到码垛时的优墙合集,依次记录每一个优墙中每一个组合块最底部的箱子,获取每个箱子的码垛次序,此码垛次序,从上一过程已记录的码垛次序加一开始计数;每一个优墙中的每一个组合块最底部箱子记录完毕后,依次记录上一层的箱子,若某个组合块中所有箱子已记录完毕,则跳过该组合块,记录下一个组合块,依次记录直至所有箱子都已记录完毕为止。
本发明提供的基于订单的稳定混箱垛型供箱序列的生成系统及其方法,具有以下有益效果:
本发明构思巧妙,灵活考虑订单中存在多种箱型(混箱)情况,生成稳定垛型,指导机器人自动混箱码垛,且该供箱序列包含多个垛型方案,可用于多台机器人并行码垛,实现混合箱型码垛的自动化与智能化,提高码垛效率,有效地解决了现有自动混箱码垛,码垛成本高,自动化和智能化低的问题。
附图说明
图1为本发明的混箱码垛方案总流程图。
图2为本发明的交错整垛处理流程图。
图3为本发明的组合块处理流程图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
根据本申请的一个实施例,本方案的基于订单的稳定混箱垛型供箱序列的生成系统,包括:
导入订单模块,用于导入Excel订单并自动解析得到订单内所有物品的数量信息和三维尺寸(长宽高)数据;
基于动态规划的稳定混箱垛型生成模块,用于首先根据箱子尺寸对订单中的箱子进行分类处理,其次根据各类箱子的数量,对其进行分垛处理,最后通过基于动态规划的交错整垛处理或者组合块处理,得到每个托盘对应的稳定垛型;
供箱序列生成模块,用于根据交错整垛处理或组合块处理后生成的垛型,计算每个托盘中每个箱子的具体空间位置,按照一层层的摆放顺序生成码放顺序,并生成含有每垛型垛号、层数、箱子具体空间位置、箱子摆放方向以及码垛顺序的供箱序列。
根据本申请的一个实施例,参考图1,一种基于订单的稳定混箱垛型供箱序列的生成方法,包括:
S1、订单数据导入:导入Excel订单并自动解析得到订单内所有物品的数量信息和三维尺寸(长宽高)数据;
S2、基于动态规划生成稳定混箱垛型:首先根据箱子尺寸对订单中的箱子进行分类处理,其次根据各类箱子的数量,对其进行分垛处理,最后通过基于动态规划的交错整垛处理或者组合块处理,得到每个托盘对应的稳定垛型;
S3、生成供箱序列:根据交错整垛处理或组合块处理后生成的垛型,计算每个托盘中每个箱子的具体空间位置,按照一层层的摆放顺序生成码放顺序,并生成含有每垛型垛号、层数、箱子具体空间位置、箱子摆放方向以及码垛顺序的供箱序列。
根据本申请的一个实施例,参考图1-图3,以下将对一种基于订单的稳定混箱垛型供箱序列的生成方法,进行详细描述。
步骤S1、导入订单模块:
导入Excel订单可自动解析得到订单内所有物品的数量信息以及三维尺寸数据,其具体包括:
步骤S1.1、构建箱子集合:
通过导入订单,解析订单中的箱子的数量信息与三维尺寸信息,构建箱子集合B={bi|i=1,2,…,n}。
其中,箱子集合B中每个箱子b都包括箱子本身的长length、宽width、高height、数量count、重量weight、摆放方向flag、箱子在X、Y、Z轴上摆放的空间位置(x,y,z)以及码垛序号order。
其中,箱子的摆放方向为正放或横放,即箱子旋转角度为0°或90°。设定每个箱子b的初始摆放方向为正放,flag标记为0。
步骤S1.2、建立初始码垛序列:
对于箱子集合B按顺序编号,生成初始码垛序列。
相比传统技术,如申请号201911008782.2的专利《一种码垛稳定性好的离线混合码垛方法及系统》以及申请号201410818182.3的专利《一种错位码垛规划的方法》所述箱子信息的获取方式是通过用户直接向输入模块中直接输入箱型。
而本发明设计了导入订单信息模块,直接导入Excel订单可自动解析得到订单内所有物品的数量信息以及三维尺寸数据。避免手动录入出错的情况,在实际码垛场景中可便捷获取待码垛箱子信息,提高工作效率。
步骤S2、基于动态规划的稳定混箱垛型生成模块:
首先根据箱子尺寸对订单中的箱子进行分类处理,其次根据各类箱子的数量,对其进行分垛处理。
若订单中每种箱子的数量小于满码数量,则转到步骤S2.4,通过基于动态规划的组合块处理模块,得到每个托盘对应的稳定垛型。
步骤S2.1、分类处理:
将订单中的各个箱子以相同尺寸(相同的长宽高)归纳为一类,进行分类处理。实际混箱码垛场景中,Excel订单中存在某货物多条记录的情况,以及多个货物属于相同箱子尺寸(相同的长宽高)的情况。将订单中的各个箱子以(相同的长宽高)归纳为一类,分类后的每一类箱子列表中的元素为一组具有相同长宽高的箱子;
步骤S2.2、分垛处理:
对于分类后的箱子,若订单中每类箱子的数量满足满码条件,将箱子添加到满码箱子列表FullPalletsList,进入步骤S2.3;若订单中每类箱子的数量小于满码数量,将箱子加入非满码列表IncompletePalletsList,进入步骤S2.4;
具体的,构建满码箱子集合和非满码箱子集合:
当箱子的数量满足可以满码托盘的条件时,将其添加到满码箱子列表FullPalletsList,并按照箱子重量从大到小排序;根据箱子的满码条件,可得到每类箱子可分到码垛的托盘数量PNum以及剩余不可码放一个托盘的数量;更新每个箱子的剩余数量,并将这些剩余箱子加入非满码列表IncompletePalletsList;将订单中不满足满码条件的剩余箱子加入非满码箱子列表IncompletePalletsList。
其中,满码托盘条件为:
RNum≥LNum×WNum×HNum
其中,LNum为该类箱子沿着托盘的长可摆放的个数,WNum为该类箱子沿着托盘的宽可摆放的个数,HNum为该箱子沿着托盘的限高可摆放的个数,RNum为该类箱子的总数量。
步骤S2.3、交错整垛处理:
由于满码箱子列表FullPalletsList中每一类箱子具有两种码放方案,即沿着X轴、Y轴摆放的码放方案。
比较同类箱子两种码放方案的所含箱子个数,选择个数多的方案进行该类箱子的码放。每个托盘对应一个优层列表LayerList,该托盘是沿着X轴摆放的码垛方案,标记FlageXorY为0。该托盘为Y轴摆放的码垛方案,则标记FlageXorY为1。两种码垛方案的区别在于,每种码放方案的单层分布方案不同,分别为沿着X轴摆放的单层分布方案、沿着Y轴摆放的单层分布方案。
其中,生成单层码垛方案的具体流程为:
如确定沿着X轴摆放的单层分布方案,每个层SingleLayer都有存放正放箱子的区域列表LList和横放箱子的区域列表WList。
首先确定沿X轴的第一行摆放,通过动态规划选出,在托盘的长上可摆放存在多个箱子的最优组合,该箱子组合一定存在一组旋转角度为0°和旋转为90°的箱子,分别将旋转角度相同的箱子放在一起,旋转角度为0的箱子放入列表LList,旋转角度为90的箱子放入列表WList。
之后的每一行都按照第一行的摆放方式,更新LList列表和WList列表,直到无法放下箱子为止。
最后整理箱子与箱子之间的间隙。确保列表LList和列表WList中的箱子,在Y轴上的长度一致,沿着Y轴摆放的单层分布方案原理基本相同,在此不进行重复表述。
其中,生成层间分布方案的具体流程为:
为了垛型的稳固,层与层之间的箱子交错,每个箱子都被支撑,因此每种码垛方案都具有层间分布方案:
偶数层将单层分布方案中列表LList和和列表WList中的箱子区域交换,奇数层保持不变。减少层与层之间的间隙,有利于垛型的稳定。比较同一类箱子两种码放方案的所含箱子个数,选择个数多的方案进行该类箱子的码放。
相比传统技术,如申请号201910959610.7的专利《一种用于相同货物的码垛方法及系统》所述的单层分布方案是指,通过对整个托盘面积范围递推箱子组合得到多个单层分布方案,再从中过滤不符合约束的方案。而本发明则是针对托盘长或者宽的长度值,通过动态规划挑选一组符合存在旋转0°和90°的箱子组合,进而确定整个单层分布方案,计算规模小,码垛算法的时间复杂度较低,效率高。
再如申请号201910959610.7的专利《一种用于相同货物的码垛方法及系统》所述的层间分布方案是指单个托盘码垛方案从最底层开始偶数层相对于奇数层的单层码垛方案旋转180°,形成交错码放垛形的层间分布。而本发明则是将存放旋转0°箱子的区域与存放旋转90°箱子的区域交换,并在码放时计算每个箱子的间隙值,使得每一层的边缘轮廓平整,因此在旋转之后整个垛型的边缘轮廓一致,码垛结构的稳定性较高。
步骤S2.4、组合块处理:
首先构建组合块,结合实际工业场景中的码垛约束,设定以下所述启发式规则叠成多个高度不超过托盘限高Lh的竖立组合块。
基于码垛过程中的边界约束中码垛垛型的高度不能超过托盘的限高,将非满码列表中箱子叠成多个高度不超过托盘限高Lh的竖立组合块Mb,优先堆叠同类箱子。组合块Mb是箱子集合B的子集,记录组合块Mb和组合块Mb在X轴、Y轴、Z轴的最大值,分别定义X轴、Y轴、Z轴的最大值为lMb、wMb、hMb,组合块Mb的体积VMb与填充率FRMb分别为,
VMb=lMb*wMb*hMb
FRMb=VMb/(lMb*wMb*hMb)
记录每个组合块的高度与托盘限高Lh的差值为余高Rh,并记录组合块以及对应其属性信息至组合块列表Mb={Mbi|i=1,2,…,n}。
还包括:
搜索剩余箱子集合B:
若当前箱子高度小于组合块余高,判断是否该箱可叠加在当前组合块最上方,以及实际场景中箱子的摆放方向约束有正放和横放两种;判断当前箱子的长小于组合块的长并且当前箱子的宽小于组合块的宽,将该箱子加入当前组合块中,且标记该箱子的摆放方向为正放,flag的值不变;判断当前箱子的宽小于组合块的长并且当前箱子的长小于组合块的宽,将该箱子加入当前组合块中,且标记该箱子的摆放方向为正放,flag的值更新为1;
调整组合块中的顺序:
为确保组合块的稳定性以及符合实际码垛中的稳定性约束,设定组合块的摆放规则,由底向上组合块中的箱子底面积大小递减,更新组合块列表以及剩余箱子集合,基于此种启发式规则生成的组合块集合,其每个组合块中优先将同一尺寸的箱型向上堆叠,且相邻箱子之间下层箱子的底面积均大于等于上层所在箱子的底面积,其托盘表面覆盖率较高,因此码垛方案具有较高稳定性。
构建普通墙:
将构建组合模块中生成的组合块放入托盘后会割裂出剩余空间,在不断生成的剩余空间中,同时沿着剩余空间的X轴方向和Y轴方向,将组合块拼接成普通墙pw,当pw是沿着X方向拼接码放,其中所包含的组合块在X轴上的最大值lMb之和不能超过托盘上剩余空间的长,同样,当pw是沿着Y方向码放的时候,其所有优条在Y轴上的最大值wMb之和是不能超过托盘剩余空间的宽;在组合块列表集合中动态求解最优组合,记录每一个pw在X轴或是Y轴上的最大值lpw、wpw,普通墙pw的体积Vpw为各个组合块的体积相加,填充率FRpw表示为,
构建优墙:
优墙列表存放着一个托盘上垛型的码放方案,每个托盘对应一个优墙列表,首先创建一个空的优墙列表pw={pwi|i=1,2,…,n}待存放托盘的码放方案,比较沿着剩余空间的X轴方向和Y轴方向码放的普通墙pw的填充率,动态搜索填充率最大的普通墙记录到优墙列表,直到托盘的剩余空间放不下箱子为止,由此得到单个托盘的码放方案。更新剩余箱子集合B,重复拼接普通墙的操作,直到剩余箱子集合的数量为0为止。
步骤S3、供箱序列生成模块:
根据已分垛处理后生成的垛型,计算每个托盘中每个箱子的具体空间位置,按照一层层的摆放顺序生成码放顺序,最终生成含有每垛型垛号、层数、箱子具体空间位置、箱子摆放方向以及码垛顺序的供箱序列,并将供箱序列存入数据库,便于机器人获取并进行实际自动码垛;其具体包括:
步骤S3.1、为经过交错满垛处理后分垛的托盘,建立坐标系:
以托盘左下角为(0,0,0)建立空间坐标系,并以每个箱子的中心点设置其坐标。
步骤S3.2,生成上述已分垛托盘中每个箱子的空间位置:根据步骤S2.3中得到的优层列表LayerList,得到在一个垛型上最底部第一行的所有箱子、其码放的方向(码放方向分为沿着X轴或Y轴两种)、每一行箱子在X轴或是Y轴的最多个数(当码放方向是X轴的时候,最多个数即为沿Y轴的最多个数;反之则为沿X轴的最多个数)、此垛型满码时的层数。当层列表中的行列表的FlageXorY为0时,代表整个层列表的箱子是沿着X轴码放;当层列表中的行列表的FlageXorY为1时,代表整个层列表的箱子是沿着Y轴码放。
每个箱子的Roate值为0时,表示箱子正放,即箱子的长平行于X轴,宽平行于Y轴;每个箱子的Roate值为1时,表示箱子旋转,即箱子的长平行于Y轴,宽平行于X轴。当FlageXorY为0时,用箱子平行于Y轴的长度乘以此类箱子在Y轴上的最大个数,分别获得箱子正放时平行于Y轴的长WSumL与箱子旋转时平行于Y轴的长LSumL,通过比较WSumL与LSumL两者的大小,得知哪一种箱子在码放时需要设置间隔,并使用WSumL与LSumL两者相减时的绝对值除以需要设置间隔的箱子间隔数获得每一个间隔值GapW。当FlageXorY为1时,用箱子平行于X轴的长度乘以此类箱子在X轴上的最大个数,分别获得箱子正放时平行于X轴的长WSumW与箱子旋转时平行于X轴的长LSumW,通过比较WSumW与LSumW两者的大小,得知哪一种箱子在码放时需要设置间隔,并使用WSumW与LSumW两者相减时的值除以需要设置间隔的箱子间隔数获得每一个间隔值GapW。
步骤S3.3、在码放第一层时,首先码放箱子正放时的情况,第一个箱子根据初始点(0,0,0)、每个箱子的长、宽、高、间隔值便可获得其对应的坐标值,此后箱子依据上一个箱子在X、Y坐标轴上的值、上一个箱子的长宽、此箱子本身的长宽高与间隔值获得其对应坐标。其次码放箱子旋转时的情况,第一个箱子根据在行列表中已码放箱子的总长设置新的初始坐标(x,0,0)或(0,y,0),其次获得每个箱子的长、宽、高与间隔值获得其对应的坐标值,此后箱子依据上一个箱子在X、Y坐标轴上的值、上一个箱子的长宽、此箱子本身的长宽高与间隔值获得对应坐标,最后便可获得第一层每个箱子的空间坐标。
在第二层时,与第一层码放相反,先码放箱子旋转时的情况,再码放箱子正放时的情况,并且此时箱子在Z轴上的高应当是加上第一层箱子高的值,其余计算与第一层计算相同,最后便可获得第二层每个箱子的空间坐标。之后的层,当层数为偶数则使用第一层的码垛方式,当层数为奇数,则使用第二层的码垛方式,并且在Z轴方向的坐标值应当叠加上一层在Z轴上的坐标值。
其中,计算坐标时即可直接依次获得码垛次序,其码垛次序从1开始。
步骤S3.4,为经过组合块处理后分垛的托盘,建立坐标系:
以托盘左上角为(0,0,0)建立空间坐标系,并以每个箱子的中心点设置其坐标。
步骤S3.5,生成上述已分垛托盘中每个箱的空间位置:
根据优墙列表pw,从中得到每个优墙的码放方向是X轴或Y轴和其中的组合块集合,当优墙沿着X轴码放,由托盘的长减去托盘的剩余长、由托盘的宽减去托盘的剩余宽得到该优墙的放置起点(第一个起点为(0,0,0)点),并使用优墙列表中第一个组合块列表底部箱子的宽、高直接获得这个箱子在Y、Z轴上的空间坐标,X坐标为此优墙在X轴上最大值的一半。此后这个组合块的所有箱子在X、Y坐标值均为底部箱子在X、Y轴坐标上的坐标值,其Z坐标上的值为上一个箱子的Z坐标值、上一个箱子高的一半、箱子本身高的一半这三值相加得到。
此优墙之后的组合块坐标,对于最底部箱子在X轴上的坐标即为上一个组合块最底部箱子在X轴的坐标、上一个组合块最底部箱子长的一半、此组合块最底部箱子长的一半这三者相加,在Y轴上的坐标即为上一个组合块最底部箱子Y坐标值,在Z轴上的值可通过箱子本身高计算。除底部箱子以外的箱子坐标X、Y坐标值通过其最底部箱子获得,Z坐标上的坐标值为上一个箱子的Z坐标值、上一个箱子高的一半、箱子本身高的一半这三值相加。当优墙沿着Y轴码放,与上述沿X轴时相比X、Y轴坐标值获取过程互换即可。
其中,在步骤S2.4和S3.5中可以得到码垛时的优墙合集,依次记录每一个优墙中每一个组合块最底部的箱子,获取每个箱子的码垛次序。此码垛次序,从上一过程已记录的码垛次序加一开始计数,每一个优墙中的每一个组合块最底部箱子记录完毕后,依次记录上一层的箱子,如果某个组合块中所有箱子已记录完毕,则跳过改组合块,记录下一个组合块,依次记录直至所有箱子都已记录完毕为止。
相比现有的技术,如申请号201510602432.4的专利《基于三步动态规划的三维装箱方案生成方法》的应用场景是针对于集装箱装载货物。其与本发明应用场景不同,本发明是对托盘这种四周无支撑的容器进行码垛货物,更要求垛型的稳定性,更符合实际码垛需求,设计交错整垛处理模块构造稳定的垛型,在构造组合块阶段设定每个组合块中,下层箱子的底面积均比上层箱子的底面积大,托盘表面覆盖率较高,每个组合块单元均具有较高稳定性;即本发明生成的垛型具有稳定性,更适合广泛用于仓储物流场景中的机器人码垛操作。
相比现有的技术,如申请号201510602432.4的专利《基于三步动态规划的三维装箱方案生成方法》是将三维装箱方案的生成过程转换为三个01背包问题的求解。该方法是沿着容器宽度方向将优条组合成优层,之后沿容器长度方向将优层拼接为优箱,从而得到一个三维装箱方案。而本发明则是通过沿容器长度与宽度方向拼接组合块,取两个方向中最优填充率的方案,同时在拼接组合块的过程中,考虑组合块旋转0°或90°两种摆放方式,在有限的托盘空间上尽可能多的放置箱子,托盘利用率大,降低码垛运货成本,增加企业利润。
相比现有的技术,如申请号201510602432.4的专利《基于三步动态规划的三维装箱方案生成方法》的输出为三维装箱模型。申请号201911008782.2的专利《一种码垛稳定性好的离线混合码垛方法及系统》的输出为各箱子的空间位置及其摆置方向,申请号201910959610.7的专利《一种用于相同货物的码垛方法及系统》的输出为相同货物的单个托盘码垛方案。本发明方法生成含有码垛顺序、箱子摆放方向与具体空间位置的供箱序列,货物摆放方向、码垛顺序、在某垛中的具体空间位置这些信息便于指导机器人码垛货物,无需繁琐的人工示教,节省大量的人力物力,在已知每一个垛的码垛顺序下,可供多台机器人并行码垛,提高码垛效率,更能满足实际码垛场景中实时性、多任务的需求。
综上,相比现有技术,本发明具有如下有益效果:
满足以订单作为码垛输入的需求:实际工业中对箱子数据的获取是以订单的形式,本方法提供导入订单信息模块,直接导入Excel订单可自动解析得到订单内所有物品的数量信息以及三维尺寸数据。避免手动录入出错的情况,实际码垛场景中便捷获取待码垛箱子信息,提高工作效率。
灵活考虑订单中存在的混箱情况生成对应码垛垛型:根据每类箱子的数量,将订单中所含箱子进行分类分垛处理,本方法针对混箱订单的特性,灵活考虑订单中存在多种箱型情况,解决实际码垛场景中对订单中包含多种箱型进行码垛的需求。
生成的混码垛型具有稳定性:在交错整垛处理模块设计层间分布方案,使层与层之间的箱子交错,每个箱子都被支撑,确保垛型稳固,在组合块处理模块中,依据启发式规则生成的组合块集合,其每个组合块中优先将同一尺寸的箱型向上堆叠,且相邻箱子之间下层箱子的底面积均大于等于上层所在箱子的底面积,其托盘表面覆盖率较高,垛型具有较高稳定性。本发明有效提高码垛结构的稳定性,确保在实际码垛场景中整垛货物转运时安全性。
生成混码垛型供箱序列:对已分垛的箱子处理方法都是基于动态规划策略来选择最优匹配箱子组合,整个垛型有较高的空间利用率,计算规模小,计算时间短,由此生成的含有每垛型垛号、层数、箱子具体空间位置以及码垛顺序的供箱序列,使机器人直接获取码垛数据,简化码垛编程过程,为指导实际码垛过程提供条件。
用于多台机器人并行码垛,提高码垛效率:该供箱序列包含每个垛的垛号、层号、每个垛型中箱子的具体空间位置与码垛顺序。货物摆放方向、码垛顺序、在某垛中的具体空间位置这些信息便于指导机器人码垛货物,无需繁琐的人工示教,节省大量的人力物力,在已知每一个垛的码垛顺序下,可供多台机器人并行码垛,提高码垛效率。更能满足实际码垛场景中实时性、多任务的需求。
虽然结合附图对发明的具体实施方式进行了详细地描述,但不应理解为对本专利的保护范围的限定。在权利要求书所描述的范围内,本领域技术人员不经创造性劳动即可做出的各种修改和变形仍属本专利的保护范围。

Claims (8)

1.一种基于订单的稳定混箱垛型供箱序列的生成方法,其特征在于,包括生成系统,生成系统包括:
导入订单模块,用于导入Excel订单并自动解析得到订单内所有物品的数量信息和三维尺寸数据;
基于动态规划的稳定混箱垛型生成模块,用于首先根据箱子尺寸对订单中的箱子进行分类处理,其次根据各类箱子的数量,对其进行分垛处理,最后通过基于动态规划的交错整垛处理或者组合块处理,得到每个托盘对应的稳定垛型;
供箱序列生成模块,用于根据交错整垛处理或组合块处理后生成的垛型,计算每个托盘中每个箱子的具体空间位置,按照一层层的摆放顺序生成码放顺序,并生成含有每垛型垛号、层数、箱子具体空间位置、箱子摆放方向以及码垛顺序的供箱序列;
生成方法,包括:
S1、订单数据导入:导入Excel订单并自动解析得到订单内所有物品的数量信息和三维尺寸即长宽高数据;
S2、基于动态规划生成稳定混箱垛型:首先根据箱子尺寸对订单中的箱子进行分类处理,其次根据各类箱子的数量,对其进行分垛处理,最后通过基于动态规划的交错整垛处理或者组合块处理,得到每个托盘对应的稳定垛型;
S3、生成供箱序列:根据交错整垛处理或组合块处理后生成的垛型,计算每个托盘中每个箱子的具体空间位置,按照一层层的摆放顺序生成码放顺序,并生成含有每垛型垛号、层数、箱子具体空间位置、箱子摆放方向以及码垛顺序的供箱序列,其包括:
S3.1,基于经过交错满垛处理后分垛的托盘,建立坐标系:以托盘左下角为初始点(0,0,0)建立空间坐标系,并以每个箱子的中心点设置箱子坐标;
S3.2,根据优层列表LayerList,生成已分垛托盘中每个箱子的空间位置,并得到在一个垛型上最底层第一行的所有箱子、码放的方向、每一行箱子在X轴或是Y轴的最多个数、垛型满码时的层数;当层列表中的行列表的FlageXorY为0时,代表整个层列表的箱子是沿着X轴码放;当层列表中的行列表的FlageXorY为1时,代表整个层列表的箱子是沿着Y轴码放;每个箱子的Roate值为0时,表示箱子正放,即箱子的长平行于X轴,宽平行于Y轴;每个箱子的Roate值为1时,表示箱子旋转,即箱子的长平行于Y轴,宽平行于X轴;当FlageXorY为0时,用箱子平行于Y轴的长度乘以箱子在Y轴上的最大个数,分别获得箱子正放时平行于Y轴的长WSumL与箱子旋转时平行于Y轴的长LSumL,比较WSumL与LSumL两者的大小,得到箱子在码放时需要设置间隔,并使用WSumL与LSumL两者相减时的绝对值除以设置间隔的箱子间隔数获得每一个间隔值GapW;当FlageXorY为1时,用箱子平行于X轴的长度乘以此类箱子在X轴上的最大个数,分别获得箱子正放时平行于X轴的长WSumW与箱子旋转时平行于X轴的长LSumW,通过比较WSumW与LSumW两者的大小,得到箱子在码放时需要设置的间隔,并使用WSumW与LSumW两者相减时的值除以需要设置间隔的箱子间隔数获得每一个间隔值GapW;
S3.3,在码放第一层时,首先码放箱子正放时的情况,第一个箱子根据初始点(0,0,0)、每个箱子的长、宽、高、间隔值获得箱子对应的坐标值,箱子依据上一个箱子在X、Y坐标轴上的值、上一个箱子的长宽、箱子本身的长宽高与间隔值获得其对应坐标;其次码放箱子旋转时的情况,第一个箱子根据在行列表中已码放箱子的总长设置新的初始坐标(x,0,0)或(0,y,0),获得每个箱子的长、宽、高与间隔值获得其对应的坐标值,此后箱子依据上一个箱子在X、Y坐标轴上的值、上一个箱子的长宽、此箱子本身的长宽高与间隔值获得对应坐标,最后获得第一层每个箱子的空间坐标;
在第二层时,与第一层码放相反,先码放箱子旋转时的情况,再码放箱子正放时的情况,并且箱子在Z轴上的高应当是加上第一层箱子高的值,其余计算与第一层计算相同,最终获得第二层每个箱子的空间坐标;之后的层,当层数为偶数则使用第一层的码垛方式,当层数为奇数,则使用第二层的码垛方式,并且在Z轴方向的坐标值应当叠加上一层在Z轴上的坐标值;
其中,在S3.2中计算箱子坐标时即可直接依次获得码垛次序,其码垛次序从1开始;
S3.4,基于组合块处理后分垛的托盘,建立坐标系:以托盘左上角为(0,0,0)建立空间坐标系,并基于每个箱子的中心点设置其坐标;
S3.5,根据优墙列表pw,生成已分垛托盘中每个箱的空间位置,得到每个优墙的码放方向是X轴或Y轴和其中的组合块集合;
当优墙沿着X轴码放,由托盘的长减去托盘的剩余长、由托盘的宽减去托盘的剩余宽得到优墙的放置起点,并使用优墙列表中第一个组合块列表底部箱子的宽、高直接获得此箱子在Y、Z轴上的空间坐标,X坐标为优墙在X轴上最大值的一半;这个组合块的所有箱子在X、Y坐标值均为底部箱子在X、Y轴坐标上的坐标值,其Z坐标上的值为上一个箱子的Z坐标值、上一个箱子高的一半、箱子本身高的一半这三值相加得到;
此优墙中之后的组合块坐标,对于最底部箱子在X轴上的坐标即为上一个组合块最底部箱子在X轴的坐标、上一个组合块最底部箱子长的一半、此组合块最底部箱子长的一半这三者相加,在Y轴上的坐标即为上一个组合块最底部箱子Y坐标值,在Z轴上的值可通过箱子本身高计算;除底部箱子以外的箱子坐标X、Y坐标值通过其最底部箱子获得,Z坐标上的坐标值为上一个箱子的Z坐标值、上一个箱子高的一半、箱子本身高的一半这三值相加;
当优墙沿着Y轴码放,与上述沿X轴时相比X、Y轴坐标值获取过程互换即可;
根据步骤S2.4和S3.5得到码垛时的优墙合集,依次记录每一个优墙中每一个组合块最底部的箱子,获取每个箱子的码垛次序,此码垛次序,从上一过程已记录的码垛次序加一开始计数;每一个优墙中的每一个组合块最底部箱子记录完毕后,依次记录上一层的箱子,若某个组合块中所有箱子已记录完毕,则跳过该组合块,记录下一个组合块,依次记录直至所有箱子都已记录完毕为止。
2.根据权利要求1所述的基于订单的稳定混箱垛型供箱序列的生成方法,其特征在于,S1中导入Excel订单并自动解析得到订单内所有物品的数量信息和三维尺寸数据,包括:
S1.1、导入订单,解析订单中的箱子的数量信息和三维尺寸信息,构建箱子集合B={bi|i=1,2,…,n},其中,箱子集合B中每个箱子b的数量信息和三维尺寸信息包括长length、宽width、高height、数量count、重量weight、摆放方向flag、箱子在X、Y、Z轴上摆放的空间位置(x,y,z)以及码垛序号order;
S1.2、按顺序对箱子集合B编号,生成初始码垛序列。
3.根据权利要求1所述的基于订单的稳定混箱垛型供箱序列的生成方法,其特征在于,所述S1.1中箱子的摆放方向为正放或横放,即箱子旋转角度为0°或90°,并设定每个箱子b的初始摆放方向为正放,即flag标记为0。
4.根据权利要求1所述的基于订单的稳定混箱垛型供箱序列的生成方法,其特征在于,所述S2中首先根据箱子尺寸对订单中的箱子进行分类处理,其次根据各类箱子的数量,对其进行分垛处理,最后通过基于动态规划的交错整垛处理或者组合块处理,得到每个托盘对应的稳定垛型,包括:
S2.1、分类处理:将订单中的各个箱子以相同尺寸即相同的长宽高归纳为一类,进行分类处理;实际混箱码垛场景中,Excel订单中存在某货物多条记录的情况,以及多个货物属于相同箱子尺寸即相同的长宽高的情况;将订单中的各个箱子以相同的长宽高归纳为一类,分类后的每一类箱子列表中的元素为一组具有相同长宽高的箱子;
S2.2、分垛处理:对于分类后的箱子,若订单中每类箱子的数量满足满码条件,将该类箱子添加到满码箱子列表FullPalletsList,进入步骤S2.3;若订单中每类箱子的数量小于满码数量,将箱子加入非满码列表IncompletePalletsList,进入步骤S2.4;
S2.3、交错整垛处理:对于箱子数量满足满码条件的每类箱子,比较其沿着X轴和沿着Y轴摆放的两种码放方案的所含箱子个数,选择个数多的方案进行箱子的码放;为了垛型的稳固,层与层之间的箱子交错,每个箱子都被支撑;因此每种码垛方案均设计层间分布方案,每个托盘对应一个优层列表LayerList,托盘中箱子为沿着X轴摆放的码垛方案,标记FlageXorY为0;托盘中箱子为Y轴摆放的码垛方案,则标记FlageXorY为1;
S2.4、组合块处理:基于码垛过程中的边界约束中码垛垛型的高度不能超过托盘的限高,将非满码列表中箱子叠成多个高度不超过托盘限高Lh的竖立组合块Mb,优先堆叠同类箱子;组合块Mb是箱子集合B的子集,记录组合块Mb和组合块Mb在X轴、Y轴、Z轴的最大值,分别定义其在X轴、Y轴、Z轴的最大值为lMb、wMb、hMb,组合块Mb的体积VMb与填充率FRMb分别为,
VMb=lMb*wMb*hMb
FRMb=VMb/(lMb*wMb*hMb)
记录每个组合块的高度与托盘限高Lh的差值为余高Rh,并记录组合块以及对应其属性信息至组合块列表Mb={Mbi|i=1,2,…,n}。
5.根据权利要求4所述的基于订单的稳定混箱垛型供箱序列的生成方法,其特征在于,所述S2.2中当箱子的数量满足满码托盘条件时,将箱子添加到满码箱子列表FullPalletsList,并按照箱子重量从大到小排序;
根据箱子的满码条件,得到每类箱子可分到码垛的托盘数量PNum以及剩余不可码放一个托盘的数量;
更新每个箱子的剩余数量,并将剩余箱子加入非满码列表IncompletePalletsList,将订单中不满足满码条件的剩余箱子加入非满码箱子列表IncompletePalletsList;
其中所述满码托盘条件为,
RNum≥LNum×WNum×HNum
其中,LNum为该类箱子沿着托盘的长可摆放的个数,WNum为该类箱子沿着托盘的宽可摆放的个数,HNum为该箱子沿着托盘的限高可摆放的个数,RNum为该类箱子的总数量。
6.根据权利要求4所述的基于订单的稳定混箱垛型供箱序列的生成方法,其特征在于,所述S2.3中两种码放方案分别为沿着X轴摆放的单层分布方案和沿着Y轴摆放的单层分布方案;
其中,沿着X轴摆生成的单层码垛方案为:
首先确定沿托盘X轴第一行的箱子摆放组合,通过动态规划选出在托盘的长上可摆放存在多个箱子的最优组合,且该组合一定存在一组旋转角度为0°和旋转为90°的箱子;
分别将旋转角度相同的箱子放在一起,旋转角度为0°的箱子放入列表LList,旋转角度为90°的箱子放入列表Wlist,之后的每一行都按照第一行的摆放方式,并更新LList列表和WList列表;
直至无法放下箱子为止,整理箱子与箱子之间的间隙,确保列表LList和列表WList中的箱子,在Y轴上的长度一致。
7.根据权利要求4所述的基于订单的稳定混箱垛型供箱序列的生成方法,其特征在于,所述S2.3中层间分布方案,包括:
偶数层将单层分布方案中列表LList和列表WList中的箱子区域交换,奇数层保持不变;
比较同一类箱子两种码放方案的所含箱子个数,选择个数多的方案进行类箱子的码放。
8.根据权利要求4所述的基于订单的稳定混箱垛型供箱序列的生成方法,其特征在于,所述S2.4还包括:
搜索剩余箱子集合B,若当前箱子高度小于组合块余高,判断是否箱子可叠加在当前组合块最上方;判断当前箱子的长小于组合块的长并且当前箱子的宽小于组合块的宽,将箱子加入当前组合块中,且标记箱子的摆放方向为正放,flag的值不变;判断当前箱子的宽小于组合块的长并且当前箱子的长小于组合块的宽,将箱子加入当前组合块中,且标记该箱子的摆放方向为正放,flag的值更新为1;
调整组合块中的顺序,由底向上组合块中的箱子底面积大小递减,更新组合块列表以及剩余箱子集合,其每个组合块中优先将同尺寸的箱型向上堆叠,且相邻箱子之间下层箱子的底面积均大于等于上层所在箱子的底面积;
构建普通墙,将构建组合块模块中生成的组合块放入托盘后会割裂出剩余空间,在不断生成的剩余空间中,同时沿着剩余空间的X轴方向和Y轴方向,将组合块拼接成普通墙pw,当pw是沿着X方向拼接码放,其中所包含的组合块在X轴上的最大值lMb之和不能超过托盘上剩余空间的长,同样,当pw是沿着Y方向码放的时候,其所有优条在Y轴上的最大值wMb之和是不能超过托盘剩余空间的宽;在组合块列表集合中动态求解最优组合,记录每一个pw在X轴或是Y轴上的最大值lpw、wpw,普通墙pw的体积Vpw为各个组合块的体积相加,填充率FRpw表示为,
构建优墙,优墙列表存放着一个托盘上垛型的码放方案,每个托盘对应一个优墙列表,首先创建一个空的优墙列表pw={pwi|i=1,2,…,n}待存放托盘的码放方案,比较沿着剩余空间的X轴方向和Y轴方向码放的普通墙pw的填充率,动态搜索填充率最大的普通墙记录到优墙列表,直到托盘的剩余空间放不下箱子为止,得到单个托盘的码放方案;更新剩余箱子集合B,重复拼接普通墙的操作,直到剩余箱子集合的数量为0为止。
CN202010939275.7A 2020-09-09 2020-09-09 基于订单的稳定混箱垛型供箱序列的生成系统及其方法 Active CN112085385B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010939275.7A CN112085385B (zh) 2020-09-09 2020-09-09 基于订单的稳定混箱垛型供箱序列的生成系统及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010939275.7A CN112085385B (zh) 2020-09-09 2020-09-09 基于订单的稳定混箱垛型供箱序列的生成系统及其方法

Publications (2)

Publication Number Publication Date
CN112085385A CN112085385A (zh) 2020-12-15
CN112085385B true CN112085385B (zh) 2024-08-06

Family

ID=73732402

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010939275.7A Active CN112085385B (zh) 2020-09-09 2020-09-09 基于订单的稳定混箱垛型供箱序列的生成系统及其方法

Country Status (1)

Country Link
CN (1) CN112085385B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113772306A (zh) * 2021-02-26 2021-12-10 北京京东振世信息技术有限公司 货品码垛系统和方法
CN112938011B (zh) * 2021-03-12 2023-03-24 上汽通用五菱汽车股份有限公司 一种基于无序混合纸箱的机器人码垛系统及方法
CN113387189A (zh) * 2021-08-17 2021-09-14 天津施格自动化科技有限公司 一种码垛垛型自动生成方法
CN114313892B (zh) * 2022-01-26 2024-08-23 武汉科技大学 多种类直型耐火砖自动化码垛方法及装置
CN114803525B (zh) * 2022-04-18 2023-02-10 中国农业大学 一种码垛机器人的控制方法及码垛机器人
CN114800497B (zh) * 2022-04-19 2023-08-29 东莞市尔必地机器人有限公司 一种基于组件拼接的码垛机器人控制方法
CN114735487B (zh) * 2022-05-10 2024-06-14 北自所(北京)科技发展股份有限公司 一种针对多种纸箱型号的柔性码垛方法和系统
CN114940386B (zh) * 2022-05-26 2023-11-03 梅卡曼德(北京)机器人科技有限公司 混合码垛规划方法、装置、计算设备及计算机存储介质
CN114862063B (zh) * 2022-07-04 2022-09-30 杭州灵西机器人智能科技有限公司 一种在线混合码垛的方法、系统、电子装置和存储介质
CN115456526B (zh) * 2022-09-07 2024-02-27 北京天下先智创机器人技术有限责任公司 一种存储容器盘点方法及货物存取系统
CN115504255A (zh) * 2022-09-30 2022-12-23 安徽凤阳淮河玻璃有限公司 一种错位码垛机控制方法
CN115488897B (zh) * 2022-10-28 2024-07-19 安徽省凤阳县前力玻璃制品有限公司 机械手臂码垛最优空间轨迹规划方法
CN115392842B (zh) * 2022-10-30 2023-01-31 合肥焕智科技有限公司 一种基于人工智能的托盘识别分析方法
CN115893028A (zh) * 2022-12-30 2023-04-04 北京远通信德科技有限公司 装箱控制方法、系统及电子设备
CN117049199B (zh) * 2023-10-11 2024-02-13 季华实验室 一种集装箱装箱方法及其相关设备
CN118446623A (zh) * 2024-07-05 2024-08-06 杭州灵西机器人智能科技有限公司 基于序列预测动态规划的混码方法、电子设备和存储介质
CN118446382A (zh) * 2024-07-05 2024-08-06 杭州灵西机器人智能科技有限公司 针对混码单层垛型的松弛优化方法、电子设备和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109264110A (zh) * 2018-08-23 2019-01-25 武汉智能装备工业技术研究院有限公司 一种物流装箱方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108750685B (zh) * 2018-04-28 2020-02-14 武汉库柏特科技有限公司 一种离线混合码垛方法及系统
CN109665328B (zh) * 2018-11-29 2021-05-11 湖南视比特机器人有限公司 一种动态优化箱子码垛方法、信息数据处理终端
US10706387B1 (en) * 2019-09-19 2020-07-07 Coupang Corp. Systems and methods for computer-determined efficient packaging determination
CN111099363B (zh) * 2020-01-09 2021-10-22 湖南视比特机器人有限公司 码垛方法、码垛系统和存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109264110A (zh) * 2018-08-23 2019-01-25 武汉智能装备工业技术研究院有限公司 一种物流装箱方法

Also Published As

Publication number Publication date
CN112085385A (zh) 2020-12-15

Similar Documents

Publication Publication Date Title
CN112085385B (zh) 基于订单的稳定混箱垛型供箱序列的生成系统及其方法
CN108750685B (zh) 一种离线混合码垛方法及系统
CN112001535B (zh) 物流装箱方法、装置、设备及存储介质
US9663309B2 (en) Automated palletization method, system and software
CN110443549B (zh) 一种物流仓库中物品的装箱方案生成方法及系统
CN112850013B (zh) 一种适用于多规格纸箱随机来料的混合码垛规划方法
CN108861619B (zh) 一种半离线混合码垛方法、系统及机器人
CN113222257B (zh) 一种基于缓冲区的在线混合码垛方法
CN110723553B (zh) 一种基于搬运机器人用的垛型生成方法
CN110077772B (zh) 组托盘方法及其应用
CN111573292A (zh) 码垛方法、装置、电子设备及计算机可读存储介质
CN110294251B (zh) 一种多品种小批量物品的箱中箱式立体库库位设计方法
CN111507644B (zh) 一种多点卸货约束的三维多容器装载方法
CN113525987A (zh) 一种基于物联网技术的轻量级物流货物分拣运送方法、装置及电子设备
CN116187499A (zh) 货运配载方法、装置、电子设备及存储介质
CA2826533C (en) Automated palletization method, system and software
CN110228640B (zh) 一种多规格板件打包方法
CN113722921A (zh) 一种车厢装载系统及方法
CN112938011B (zh) 一种基于无序混合纸箱的机器人码垛系统及方法
CN114330822A (zh) 三维装箱方法及系统
CN115310917B (zh) 一种入库管理方法
CN116681151A (zh) 一种基于组合堆垛与最低水平线的装箱优化方法
CN114940386B (zh) 混合码垛规划方法、装置、计算设备及计算机存储介质
Abdou et al. 3D random stacking of weakly heterogeneous palletization problems
CN112200390A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220509

Address after: No.15 Ningjiang Road, Daning community, Humen Town, Dongguan City, Guangdong Province

Applicant after: GUANGDONG LISHENG INTELLIGENT Co.,Ltd.

Applicant after: Guangzhou Lisheng Robot Technology Co.,Ltd.

Address before: 523930 No. 15, Ningjiang Road, Daning community, Humen Town, Dongguan City, Guangdong Province

Applicant before: GUANGDONG LISHENG INTELLIGENT Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CB02 Change of applicant information
CB02 Change of applicant information

Country or region after: China

Address after: No.15 Ningjiang Road, Daning community, Humen Town, Dongguan City, Guangdong Province

Applicant after: GUANGDONG LISHENG INTELLIGENT Co.,Ltd.

Applicant after: Guangzhou Weihil Intelligent Technology Co.,Ltd.

Address before: No.15 Ningjiang Road, Daning community, Humen Town, Dongguan City, Guangdong Province

Applicant before: GUANGDONG LISHENG INTELLIGENT Co.,Ltd.

Country or region before: China

Applicant before: Guangzhou Lisheng Robot Technology Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20240920

Address after: No. 101, No. 16 Liye Road, Dongyong Town, Nansha District, Guangzhou City, Guangdong Province, 510000

Patentee after: Guangzhou Weihil Intelligent Technology Co.,Ltd.

Country or region after: China

Address before: No.15 Ningjiang Road, Daning community, Humen Town, Dongguan City, Guangdong Province

Patentee before: GUANGDONG LISHENG INTELLIGENT Co.,Ltd.

Country or region before: China

Patentee before: Guangzhou Weihil Intelligent Technology Co.,Ltd.