机器人智能托盘码垛规划PalletOptimizer引擎文档手册
高效智能·精准适配——PalletLayoutEngine 引擎,解锁物料摆放新效率在仓储分拣、物流配送、生产摆盘等场景中,物料排样的合理性直接决定空间利用率、作业效率与成本控制。PalletLayoutEngine 引擎,专为各类物料托盘化摆放需求研发,以“智能算法、灵活适配、高效追加、精准可控”为核心,打破传统排样的繁琐与低效,为各行业提供一站式、高适配的排样解决方案,让每一寸空间都发挥最大价
PalletLayoutEngine引擎
一、产品简介
高效智能·精准适配——PalletLayoutEngine 引擎,解锁物料摆放新效率
在仓储分拣、物流配送、生产摆盘等场景中,物料排样的合理性直接决定空间利用率、作业效率与成本控制。PalletLayoutEngine 引擎,专为各类物料托盘化摆放需求研发,以“智能算法、灵活适配、高效追加、精准可控”为核心,打破传统排样的繁琐与低效,为各行业提供一站式、高适配的排样解决方案,让每一寸空间都发挥最大价值。
- 双规则灵活适配,覆盖全场景需求:支持两种核心排样规则,规则1(层递进四角循环)与规则2(分组垂直堆叠)按需切换,既满足“每层起始角递进循环、层内四角轮流摆放”的精细化需求,也适配“同规格物料分组堆叠、满额自动新开组”的批量摆放场景,兼顾精准度与批量效率。
- 智能追加排样,操作更便捷:支持无限次重复调用追加物料,无需重新初始化,历史排样状态(占用区域、分组信息、层号)自动持久化,避免重复操作,大幅提升分批物料摆放的作业效率,适配多批次、小批量物料的动态排样需求。
- 空间利用率拉满,降本增效看得见:内置优化算法,物料按尺寸优先级排序,结合四角循环、旋转适配(自动判断物料旋转后是否更适配空间),最大化利用托盘空间,减少闲置区域;同时通过分组堆叠、边距/间距可控,降低物料碰撞损耗,间接降低仓储、物流成本。
- 参数可定制,适配多规格场景:托盘尺寸、边距、物料间距、堆叠上限、尺寸误差等参数均可灵活配置,适配不同行业、不同规格的物料(箱子、零件、包装等)与托盘,无需二次开发,直接对接现有系统(如Hnzkvision视觉软件系统)。
- 稳定可靠,易于集成:代码简洁无冗余,可直接编译使用,支持与各类.NET项目、可视化界面无缝集成;内置溢出判断、利用率计算,排样结果清晰可查,兼顾稳定性与易用性。
PalletLayoutEngine 不局限于单一行业,凡是涉及物料托盘化摆放、空间优化的场景,均可完美适配,核心适用场景包括:
- 仓储物流行业:仓库货物分拣后托盘摆放、快递包裹批量摆盘、电商仓库出库打包排样,提升仓储空间利用率与分拣效率。
- 生产制造行业:零部件生产摆盘、成品包装托盘堆放、生产线物料补给排样,适配多规格、多批次生产需求。
- 冷链物流行业:冷藏货物托盘摆放,通过空间优化减少冷藏仓占用,降低能耗,同时避免物料挤压损坏。
- 商超/零售行业:商品进货后托盘整理、仓储货架补货排样,提升补货效率与仓储空间利用率。
- 定制化生产场景:多规格、小批量物料的动态排样,支持按需调整参数,适配个性化生产需求。
核心特色,区别于传统规划算法
相较于传统规划、PalletLayoutEngine 以“智能、灵活、高效”脱颖而出,核心特色不可替代:
- 告别手动计算:无需人工判断物料摆放位置、层号,算法自动完成空间适配与角位循环,减少人为误差。
- 动态追加无压力:支持多批次物料依次追加,历史状态自动保存,无需重新排样,适配实际作业中的分批处理场景。
- 双规则按需切换:既支持精细化的四角循环排样,也支持高效的按物料编码和尺寸动态分组堆叠,一份工具满足多种摆放需求。
- 结果可视化可追溯:结果包含物料位置、层号、旋转状态、利用率等信息,便于后续作业与数据统计。
1. 软件概述
PalletLayoutEngine 是一款轻量级、高适配的物料托盘排样引擎,可直接集成于.NET项目或可视化界面(如Hnzkvision视觉软件系统),核心功能是实现物料在托盘上的智能排样、动态追加,支持两种规则可适配常见所有场景的工况,参数可灵活配置,适用于多行业物料托盘化摆放需求。
核心功能:双规则算法、动态追加摆放规划、参数定制、算法结果输出、空间利用率计算、溢出判断。
2. 环境准备
2.1 运行环境
- 框架要求:.NET Framework 4.5及以上
- 开发环境:Visual Studio 2022及以上(用于集成开发)
- 运行设备:支持WindowsX64架构运行.NET程序的设备(服务器、工业电脑、普通PC均可)
2.2 集成方式
将PalletLayoutEngine.dll文件引用至项目中,导入命名空间 PalletLayoutEngine,即可直接调用核心方法,无需额外配置。
3. 核心参数说明(必看)
智能规划功能的核心是参数配置,所有参数均可根据实际场景灵活调整,以下为详细说明(均为调用时必填/可选参数):
|
参数名称 |
参数类型 |
说明 |
示例值 |
|
materials |
List<InputMaterial> |
待规划物料列表,需包含物料编码、宽度、高度 |
new List<InputMaterial>{ new InputMaterial { Code = "BOX-A", Width = 200, Height = 150 } } |
|
palletWidth |
int |
托盘宽度(单位:mm,根据实际托盘尺寸设置) |
1200 |
|
palletHeight |
int |
托盘高度(单位:mm,根据实际托盘尺寸设置) |
1000 |
|
edgeMargin |
int |
托盘边距(物料与托盘边缘的距离,单位:mm,防止物料超出托盘) |
20 |
|
itemMargin |
int |
物料间距(相邻物料之间的距离,单位:mm,防止碰撞) |
10 |
|
layoutRule |
int |
规划规则:1=层递进四角循环,最大化利用空间;2=编码+尺寸双冗余动态分组多层堆叠 |
1 或 2 |
|
clearExistingItems |
bool |
是否清空历史规划:true=清空重新规划;false=追加规划(核心功能) |
false(推荐用于分批追加) |
|
maxStackCount |
int |
规则2专用:每组物料堆叠上限,满额自动新开组 |
5(每组最多堆叠5个物料) |
|
sizeTolerance |
int |
规则2专用:尺寸误差(允许物料尺寸与分组基准尺寸的偏差,单位:mm) |
10 |
4. 详细操作步骤
4.1 基础操作(单次排样)
适用于单批次物料一次性排样,步骤如下:
- 引用DLL文件:将PalletLayoutEngine.dll导入项目,添加命名空间 using PalletLayoutEngine;。
- 配置规划参数:根据实际托盘、物料情况,设置上述核心参数(重点确认托盘尺寸、边距、规划规则)。
- 构建物料列表:创建InputMaterial列表,添加待规划物料(每个物料需填写Code、Width、Height)。
- 调用规划方法:执行ExecuteLayout方法,传入所有参数,获取规划结果。
- 处理规划结果:从返回的OutputMaterial列表中,获取每个物料的摆放位置、层号、旋转状态等信息,用于后续作业(如可视化显示、物料摆放)。
4.2 核心操作(动态追加规划)
适用于多批次物料,需在原有规划基础上追加摆放(核心优势功能),步骤如下:
- 首次规划:按基础操作步骤执行,设置 clearExistingItems = true,完成第一批次物料规划。
- 追加规划:保持所有参数(托盘尺寸、边距、排样规则等)不变,仅更新物料列表(添加新批次物料),设置 clearExistingItems = false。
- 重复调用:每次追加新物料,均执行ExecuteLayout方法(clearExistingItems设为false),算法会自动保留历史规划状态,将新物料追加至现有托盘空间中。
- 溢出处理:若托盘空间不足,排样结果中Pallet.IsOverflow会设为true,可提示用户更换托盘或调整参数。
4.3 两种规划规则操作说明
规则1:层递进四角循环(layoutRule = 1)
核心逻辑(重点特色):
- 层1起始角:0(左上)→ 层内物料依次循环 0→1→2→3→0…
- 层2起始角:1(右上)→ 层内物料依次循环 1→2→3→0→1…
- 层3起始角:2(右下)→ 层内物料依次循环 2→3→0→1→2…
- 层4起始角:3(左下)→ 层内物料依次循环 3→0→1→2→3…
- 层5及以后:起始角回到0,循环往复。
适用场景:需要精细化摆放、物料尺寸多样、追求空间利用率最大化的场景(如仓储分拣、定制化物料摆放)。
规则2:分组垂直堆叠(layoutRule = 2)
核心逻辑:
- 同规格物料(编码+尺寸误差范围内)自动分组,每组物料垂直堆叠(同一位置、不同层号)。
- 每组堆叠数量达到maxStackCount时、物料编码不同时、物料尺寸范围超误差时,自动新开组,在托盘上寻找新位置摆放。
- 未找到匹配分组的物料,自动在托盘上寻找空位摆放,并创建新分组。
适用场景:物料规格尺寸繁多、需要批量堆叠、追求摆放效率的场景(如生产成品摆盘、批量货物仓储)。
5. 完整调用示例(Hnzkvision)
|
using System.Collections.Generic; |
6. 常见问题与解决方案
- 问题1:第二次调用规划无结果 → 解决方案:确认clearExisting设为false,且参数(托盘尺寸、边距等)与首次调用一致,避免参数不一致导致历史状态无法识别。
- 问题2:规则1四角循环不生效 → 解决方案:确认layoutRule设为1,无需额外配置,算法自动执行层递进四角循环逻辑。
- 问题3:物料无法摆放(溢出) → 解决方案:检查托盘尺寸是否足够、边距是否过大,或调整物料顺序(算法按尺寸优先级排序,可手动调整物料列表顺序)。
- 问题4:规则2分组不生效 → 解决方案:确认物料编码、尺寸在sizeTolerance误差范围内,且maxStackCount参数设置合理。
- 问题5:规划结果与预期位置不符 → 解决方案:检查边距、物料间距参数,或确认物料是否开启旋转适配(算法自动判断,无需手动设置)。
7. 注意事项
- 参数设置时,托盘尺寸需大于物料尺寸+2*边距,否则物料无法摆放(会触发溢出)。
- 追加规划时,需保持托盘尺寸、边距、排样规则等核心参数不变,仅更新物料列表。
- 物料尺寸建议按实际尺寸填写,尺寸误差(sizeTolerance)不宜设置过大,避免分组错误。
- 若需集成至可视化界面(如Hnzkvision),可通过OutputMaterial中的CenterX、CenterY、Layer等参数,实现物料摆放位置的可视化显示。
PalletLayoutEngine引擎,以智能算法为核心,以灵活适配为特色,完美解决多行业物料托盘化摆放的痛点,既实现了精细化的四角循环排样,也支持高效的分组堆叠,同时具备动态追加排样功能,大幅提升作业效率、降低空间浪费。
无论是单批次还是多批次物料,无论是精细化还是批量摆放,PalletLayoutEngine 都能精准适配,无需复杂操作,参数可定制、集成便捷,是仓储、生产、物流等行业提升排样效率、降本增效的优选工具。
河南智控科技(研发组)
2026年4月9日
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)