王辉、赵慧坤、安丰明
(上汽通用五菱汽车股份有限公司青岛分公司,青岛 266555)
汽车制造业转型的方向是由单纯的“生产制造”转向“供应链协同”,要建立快速生产响应物料保障,同时保持零部件的低库存率和高周转率,仓储管理系统的设计是其关键要素。在汽车制造业,零部件的种类一般多达几千甚至上万种,供应商几百家,因此管理模式也多样化。本文基于微服务架构,采用多种新技术开发,实现以业务策略方式设计的WMS,可以根据不同零件的管理需要,以配置的方式支持业务模式的变化调整,大大提高了系统的业务兼容性,实现出入库等作业的快速响应。
仓储管理系统在国内起步时,大多使用更易于C/S 开发的C# .net 进行开发。后来由于Java 和Spring 的兴起,仓储管理系统也开始基于SSM 或SSH 进行开发。而随着近年来SOA 架构和微服务技术体系的发展和完善,各个行业的系统均开始逐渐使用微服务架构来开发,仓储行业也不例外。微服务架构的应用,将会使传统单体架构在开发中遇到的许多难题(如集体开发冲突、代码耦合度太高等)迎刃而解[1]。
本文中主要介绍使用微服务架构的系统设计方案,这是近年来兴起的一种软件架构,是由面向服务架构(SOA)发展来的。它将传统的单体架构根据不同的需求拆分成多个小的项目,也就是微服务。每个微服务之间相互独立,将传统项目的各个业务之间进行解耦。
零部件物流每日的出入库作业、库存转移等业务量最高能达到2 万箱,料箱级管理的WMS 系统,对于系统的可用性需求、功能性需求和质量需求等要求较高。因此本文中系统设计时使用了较多的行业先进技术,以提高系统性能及稳定性,满足业务需求。主要使用的技术如下。
(1)MySQL 数据库:数据库只做存储,不参与任何业务计算,提升读写性能。
(2).NET6 开发语言:拥有较之前版本更强的性能、稳定性和生态优势。跨浏览器、云端、桌面、物联网设备和移动平台,所有应用程序都可以使用相同的.NET 库轻松进行代码共享。性能全面提升特别是文件 I/O 的性能提升,这可以显著降低执行时间、等待时间以及降低内存等资源的使用率。ASP.NET Core 中引入最小化API,用以简化入门体验同时可以提高 HTTP 服务的性能等。添加HTTP/3 支持以便ASP.NET Core、HttpClient 和gRPC 等服务都可以与HTTP/3 客户端或服务器进行交互[2]。
(3)缓存技术:WMS 部分功能采用缓存技术,使部分请求减少数据库访问,以缩短业务处理时间。
(4)定时作业技术:采用毫秒级误差的定时任务执行程序,可以确保定时的任务可以在预定的时间执行。
(5)Jenkins 自动化部署机制:Jenkins 是一款功能丰富、易于使用、高度可扩展的自动化构建工具。它可以帮助团队提高效率和生产力,同时保证软件质量。在软件开发过程中,使用Jenkins 可以实现自动化构建、部署和测试,从而节省时间和成本,提高团队效率和竞争力[3]。
(6)K8S:可以自动管理容器的扩展和缩容,使得项目能够应对高流量的压力。K8S 可以自动保证容器的高可用性,在容器故障时自动重启容器;可以自动管理容器的资源(如 CPU 和内存),避免资源浪费;可以方便地管理容器的版本和更新,使得项目的维护变得简单;还可以支持微服务架构,将一个大型应用拆分成多个独立的服务,提高可维护性和可扩展性[4]。
(7)超融合技术:基于通用x86 服务器的全资源融合、按需横向扩展、全分布式架构以及开箱即用等技术,交付简单、资源统一管理。与传统方式相比,超融合可让应用交付时间缩短至数小时,优异的I/O 能力提升了应用访问速度,应用可在不同设备之间在线迁移,并支持故障高可用,大幅减少业务停机时间[5]。
(8)SSO 单点登录:在多个应用系统中,用户只需要登录一次,就可以访问其他相互信任的应用系统。统一了身份认证和机制,使用统一的账号和密码,安全、便捷地访问信息化体系内部的各个应用系统,避免了由于应用系统过多、密码规则复杂而造成用户需要反复输入用户名和密码以及密码的丢失等问题,使用户能够更加灵活、便捷、高效地登录各个应用系统,提高信息系统的易用性、安全性和稳定性[6]。
汽车零部件物流业务管理模式多样化,主要体现在零件种类不同、库存管理精细度不同、拉动方式不同、出入库方式不同、料帐方式不同等,并且跟随车型生产变化,其管理模式随时有可能进行调整,这就要求WMS 系统具有较高的业务兼容性和适应能力。本文中WMS 系统设计以下几种功能模块,以支持多样化的业务管理模式。
(1)数据管理:分为PFEP(plan for every part)基础数据和业务策略数据。WMS 配置数据接口,从MDM 系统接收PFEP基础数据,实现数据上下游统一,保证数据的准确性和时效性;业务策略数据定义了业务类型、作业规则、库存增减规则和财务规则等,通过自由的策略配置,极大程度上满足了业务多样化需求,并能及时响应业务模式的变化调整。
(2)库存管理:分为料箱级管理和零件级管理两种模式。料箱级物料具备唯一料箱标签,实现对每一箱物料的全周期监控,出入库记录跟踪到箱,做到精准库存管理;零件级管理的零件针对直供件、标准件等无需精细化管理的零件类型,简化员工的作业流程。
(3)单据及标签管理:同步上下游单据和标签信息。单据包括拉动单、送货单和排序单;标签包括零件料箱标签、唯一托盘标签和标签组托关系等。实现上下游数据协同,通过接口,实时同步单据状态。
(4)PDA 作业:基于Android 系统开发的APP 应用,支持无线扫描作业、在线提交、查询和单据签署等日常作业功能,提高作业效率。
(5)任务管理:根据业务策略里提前设定的规则,包括上架任务、下架任务、拣货任务、翻包任务和盘点任务等,自动生成任务。任务管理分为“指派”和“抢单”两种单据分配方式,员工作业更灵活。
(6)智能设备管理:定义4 组API 接口。标签校验接口,提供给智能设备进行调用,以验证标签的合法性;出入库接口,将智能设备出入库结果传输给WMS,生成出入库记录和增减库存;盘点接收接口,将智能设备的盘点结果传输给WMS,并调整库存;封存接口,将智能设备封存的物料传输给WMS。WMS 自动将相关库存移库到不良品区,实现了WMS 系统与各种不同类型的IOT 设备完成对接和信息交互。
(7)系统管理:包含用户管理模块和全局配置模块。其中用户账号信息对接SSO 系统,WMS 系统配置用户的角色信息,并赋予角色权限;全局配置模块包含配置字典、APP 版本管理等。
物流的主数据包括PFEP 数据与主数据,精准的主数据规划是做好系统功能的基础。
PFEP(Plan For Every Part)数据是指对生产过程中每个零部件或物料制定详细的计划,并注明所有与生产过程相关的信息。PFEP 是供应链管理过程中精细化管理物料的一种方式,是一个企业精益物流系统建立和持续改进的基础[7]。而主数据是可以在企业内跨业务部门、跨业务系统被重复使用,是相对高价值、高共享且相对稳定的数据。PFEP 数据包含了大部分主数据的内容。主数据具有以下3 大特点。
(1)唯一的数据实例:主数据应该代表企业中的某个业务对象的唯一实例,对应企业中真实的对象。重复创建实例将导致数据的不一致,进而影响业务流程;例如当前的“零件工厂库存”数据囊括了零件基础信息、零件库位信息和零件包装信息。我们所有的包装属性都应在“零件工厂库存”数据的基础上拓展。如额外创建包装相关数据,将可能造成数据属性的重复,在差异维护的时候将会导致业务操作的不一致。
(2)单一的数据源:为确保系统跨系统、跨流程的唯一性和一致性,需要对每个属性的创建、更新、读取确定一个系统作为数据源,即MDM(主数据管理系统)。
(3)统一的管控:结合业务现状,对主数据制定政策、标准和模型,由数据维护工程师和用户在各个流程实施对应的政策、标准、模型。不同于数据维护人员,主数据的制定需要数据owner 结合业务发展对关键数据进行识别、分类、定义及标准化。数据owner 对数据的产生到退出的全流程负责。
例如之前老版的系统中维护的“包装类型”,其实是“包装箱型”(如:A、B)。但是随着业务发展,我们更需要对包装信息进行归档、分析。而“包装箱型”显然是不利于系统信息的分组归类的。这个时候我们就需要通过“包装类型”(标准塑料周转箱、围板箱和卡板箱)对包装进行标识。这个时候包装的数据owner,就需要对包装类型进行识别、分类、定义及标准化。并将对应标准发布到各区域指导数据维护、包装识别等业务操作。
PFEP 报表数据指在PFEP 数据中,对应业务未形成系统化作业或未形成完善的业务标准,且未统一的数据。但该数据是在生产过程中能起到指导生产、数据查询等功能的数据。
面向复杂的作业场景和任务,本文中系统采用设计业务策略来驱动仓储业务实现。首先,业务流程配置化,可将多个业务进行串联,适应各种仓储业务。其次,智能化作业驱动提供了上架、拣货和发货等多种作业规则配置,通过任务驱动仓储作业。最后,智能的任务分配提供按区域任务分解、作业量分解等多种任务分解和分配方式。业务策略主要配置的规则设计如表1 所示。
表1 零部件仓储管理系统业务策略配置规则设计
面向汽车制造业的零部件仓储管理系统,将越来越多承担供应链智慧协同的关键功能决策,实现对仓库管理的精细化、柔性化、智能化和数字化,将是未来零部件仓储管理系统的发展方向。本文中设计的系统,充分发挥新一代信息技术的应用,考虑业务变化的可适应性,基于业务策略驱动业务实现的方式,贯穿仓库出入库管理、库存及库内作业管理、不良品及退货管理、单据及标签管理、盘点管理和料帐管理等一系列仓储业务,支持未来10年的业务发展应用能力,为当前及未来零部件仓储管理系统提供了一种设计方案。
同时,本系统在设计时还充分考虑了与上下游系统间的数据集成,打通了企业内外应用数据链路,消除数据孤岛。同时,该系统结合手持终端PDA 作业和IOT 智能设备对接,有效提高物流作业效率,为未来物流全链路无人化奠定了基础。随着系统应用的不断扩展和业务深入,产生大量的业务数据,依托于统一的数据标准,企业可建立对数据的二次利用和开发,进一步支持企业的经营决策。