我国汽车行业近些年迅速发展, 其在我国国民经济中的位置日益重要。但是与此同时, 我们应该清醒地认识到, 我国汽车工业目前还存在着发展瓶颈, 也面临着严峻挑战。尽管我国已经在汽车整车生产规模和制造工艺上逐渐积累了一定优势, 但是在与其配套的零部件物流供应的信息化管理方面, 与国外发达国家有着明显的差距, 成为制约我国汽车工业发展的一个重要因素[1]。
一辆汽车的零部件由上百家的供应商提供, 汽车的零件有上万种, 整车制造厂、供应商在零件物流仓储流程化、信息化管理中需要做大量的工作。由于市场竞争越来越激烈, 汽车整车厂必须不断要求零部件供应商保证产品质量并降低价格的同时, 对其零部件仓储物流系统进行科学化、信息化管理。对于这些需求, 传统的库存管理方法和原有的信息系统显然已经无法适应。面对这些挑战, 本文在结合我国大型汽车整车制造厂物流系统自身特点的基础上, 建立了面向立体仓库群集中数据采集与监控、提供开放性集成接口、体现企业资源整合思想的零部件仓储实时监控与数据采集系统的体系架构。
该体系架构能够对仓储汽车零部件的立体仓库群进行集中的科学化管理, 实现现场设备层、控制层与上层应用系统之间的无缝集成, 最大限度地发挥自动化立体仓库群的整体存储效能, 体现了物流信息化给我国汽车制造企业带来的直接经济效益。
自动化立体仓库又称立库、高层货架仓库、自动仓储AS/RS (Automatic Storage & Retrieval System) 。它是一种用高层立体货架 (托盘系统) 存储物资, 用电子计算机管理与控制, 自动导引运输车和自动堆垛机进行存取作业的仓库[2]。仓库的功能由简单地进行物资的存储保管发展到担负物资的接受、分类、包装、分拣配送和存档等多种功能。自动化立体仓库是一个复杂的综合自动化系统, 包括多种仓库组织形式。其中单元货架式是使用最广、适用性较强的一种仓库组织形式, 我国一些大型汽车生产基地的零部件物流中心多采用这一形式。
一般大型的整车零部件物流中心依照整车各部件总成划分而建有多个立体仓库 (图1) , 如何对相对分散的立体仓库群进行集中的现场数据采集和工程应用是我国现代汽车制造企业物流中心亟待解决的一个重要课题。
针对立体仓库群现场数据分散的特点, 本文在依赖企业外联网、企业内联网、工业以太网和现场总线等多层网络结构的基础上, 实现汽车制造企业零部件物流中心的设备层、控制层与上层应用系统之间实时信息交互的软硬件支撑环境, 建立汽车零部件仓储实时监控与数据采集系统。
汽车零部件仓储实时监控与数据采集系统的信息集成框架如图2所示, 该系统主要由控制层和设备层2部分组成。设备层负责将分布在立体仓库群的现场数据集中采集上来提供给控制层。控制层依据采集上来的数据对立体仓库群进行监控与管理, 并提供开放性集成接口。横向集成, 可以开发面向具体工程的应用软件, 丰富对立体仓库群的监控功能;纵向集成, 可以向上整体接入企业局域网进一步搭建基于J2EE架构的企业应用管理平台, 各职能机构均可获取现场的实时数据和工程应用分析结果, 实现底层现场控制系统与上层应用系统——企业资源规划 (ERP) 和各生产车间的制造执行系统 (MES) 信息交互及与其它企业应用系统如客户关系管理 (CRM) 、供应链管理 (SCM) 、售后服务4S店管理信息 (4S-MIS) 等系统的信息集成, 从而有效保障全面支持整车企业各制造车间、各制造流程的零部件物流供应[3]。
某汽车制造企业零部件物流中心拥有3个立体仓库, 分别为发动机变速箱零部件总成、内饰线零部件总成、外饰线零部件总成提供物流仓储, 各立体仓库分别包含多条零部件出、入库输送线。
对发动机变速箱总成的零部件出入库输送线控制 (图3) , 采用主流的PROFIBUS-DP现场总线, 总线上的主要控制设备如下。
1) 可编程逻辑控制器PLC (Programmable Logic Controller) 。采用西门子S7-300系列PLC, 通过挂到总线上的西门子变频器MM440 (输出功率<0.75 kW) , 控制辊道输送带电动机的传动方式;接受控制面板以及接近开关的电信号输入、并控制现场的其它执行机构。此外S7-300PLC通过安装CP343通讯模块, 与上一层的实时工业以太网PROFINET无缝连接;
2) PLC编程设备 (个人计算机或西门子SIMATIC专用编程设备) 。通过编程软件STEP-7将PLC程序通过PROFIBUS-DP总线下载到S7-300PLC, 从而实现单条零部件出、入库输送线控制功能, 功能流程图见图4;
3) 人机界面HMI (Human Interface) 设备。采用西门子TP270系列触摸屏, TP270直接与PLC交互控制整条零部件出、入库输送线的运行方式;并提供友好的人机交互界面, 现场人员可通过触击屏幕上的按钮对出入库输送线进行控制操作, 例如切换入库/出库操作、数据状态查询、故障诊断显示等等;
4) 按钮面板 (Manual Panel) 。位于各人工作业工位, 向PLC发送当前人工作业状态。以零件入库贴标工位为例, 当接近开关发出零件到达工位的信号时, 辊道传输带停止, 人工进行零部件条码标签打印及贴标作业, 作业完毕后按下按钮面板上按钮, PLC重新启动传输带运转输送零件到下一工位。
由于本文所解决的问题对象是按照零部件总成划分的立体仓库群, 纯粹地采用PROFIBUS现场总线远远满足不了应用需求, 主要体现在:一方面, 随着现场设备智能程度的不断提高, 越来越多的智能设备被应用在底层的控制中, 现场设备之间数据的交换量飞速增长;另一方面, 控制变得越来越分散, 分布在现场各处的设备之间以及设备和企业需要连续交换控制数据之间的控制层。
基于这样的需求, 本文采用PROFINET建立企业设备层与控制层的桥接。PROFINET由PROFIBUS国际组织 (PROFIBUS International) 推出, 是新一代基于工业以太网技术的工业自动化通信标准。PROFINET解决方案囊括了诸如实时以太网、运动控制、分布式自动化、故障安全以及网络安全等当前自动化领域的热点话题, 并且完全兼容所有主流的现场总线技术。
为了达到立体仓库的自动化管理, 针对每一条出、入库输送线, 把一些智能设备挂在PROFINET上, 如机器视觉设备、无线射频识别设备、条码读写仪、无线网络基站等, 用工业计算机来实现对这些设备的现场级管理。本文采用西门子PC670面板式工业计算机实现对本地设备的功能管理, 并通过运行主控程序与位于上一层的控制层应用服务器进行实时数据传输。
PC670上运行的软件结构见图5。
1) DataCollection程序利用OPC (OLE for Process Control) 技术提供标准的OLE/COM接口, 实现与控制层应用服务器进行实时数据传输功能, 具体包括以下模块:OPCSiemens插件通过基于脚本编程语言而定义的标准接口, 可以供使用如Visual Basic等编程语言开发OPC服务器的客户应用;MailBox程序将需要发送的XML数据文件以毫秒级向控制层应用服务器传送;PortDispatcher模块响应请求抽取数据库里的实时数据并转换成XML数据文件;PortReceiver把从控制层应用服务器接收的XML数据文件的信息 (如内部码信息, 零件存放的最佳地址等) 分类, 并存在本地数据库相应的表里;
2) PLCAccessing程序用于访问PROFIBUS-DP总线上的PLC全局数据包, 从而掌握当前总线运行状态和总线上各设备状态;
3) CodePrint程序通过访问本地数据库获得从控制层分析工作站分配下来的零部件内部码 (ASCII文字) , 并转换成条形码图案, 提供给条码打印机打印;
4) CodeIdentify 程序负责将条码扫描仪读取出来的条形码图案转换成的ASCII文字, 并保存在本地数据库里;
5) AGVDriver程序通过无线网络基站向自动导引运输车的车载计算机发出工作命令和当前零件的存储地址, 车载计算机指引自动导引运输车将零件运送到指定的存放地点。
以零部件总成为单元的仓库区域出入库数据采集采用西门子OSM (Optical Switch Module) 光纤交换机ITP62, 将发动机变速箱总成立体仓库现场所有的零部件出入库输送线PROFINET联接在一起 (图6) , 并与光纤环网链接将现场数据传输到位于上一层的控制层应用服务器。
每个数据采集层实时采集一个立体仓库的零部件出入库情况;对于整车企业全局的物流管理而言, 需要将所有的立体仓库存储信息汇总, 以进行统一的协调管理和全局调度。
本文采用西门子SCALANCE X400系列实时以太网交换机搭建PROFINET环网, 将各个立体仓库的OSM链接起来, 使控制层与设备层进行实时通讯, 实现PROFINET的分布式自动化。
零部件仓储实时监控与数据采集系统整体结构见图7。考虑到面向底层数据的实时性和快速响应, 仓储实时监控与数据采集系统的控制层采用客户机-服务器架构, 系统的各功能组成部分如下。
负责与分布于设备层的面板式工业计算机PC670进行实时通讯, 获取设备层实时数据, 并向设备层发送零部件内部码及其存储地址等信息;
用于存放实时数据和历史数据, 实现数据的存储与可追溯, 并提供数据访问接口以便应用服务器和其它工作站访问;
通过访问数据库服务器的实时数据库, 监视各个现场仓库的工作情况和设备运行状态;
由于采用的是客户机-服务器架构, 数据库服务器提供数据访问接口, 方便功能横向集成, 针对各具体工程, 通过访问数据服务器开发相应的工程应用软件。
在以OPC为服务器的多客户机方案中, 本文采用自定义客户机方案, 如图8所示。在这种情况下, 客户机不需要安装组态软件, 直接用高级语言开发监控界面控制系统进行具体应用。
在设备层的PC670上安装OPC服务组件 (DataCollection程序内嵌) 的基础上, 控制层的软件程序通过OPC服务器与设备层进行数据访问, 依赖XML文件实现数据传输。控制层软件模块结构见图9, 具体包括内容如下。
1) WarehouseServer程序负责管理立体仓库群的工作运营活动:Operation模块启动各立体仓库进入出入库工作状态;Suspend/Restart模块挂起/重新启动各立体仓库的出入库工作;内嵌DataDispatch程序将控制层处理后的数据 (如内部码信息, 零部件存放的最佳地址等) 以XML文件的形式以毫秒级的频率向设备层的各工业PC670端口发送, 具体功能与运行于PC670端口上的DataCollection相反, 但实现原理相似;
2) Supervisor程序负责监视零部件物流中心的整个生产经营活动状况:StatusShow模块以平面动态的方式显示设备层的运行状态;RealDBAccess模块访问实时数据库;HistDBAccess模块访问历史数据库;DataStatistics模块进行历史数据的分析和统计;ReportOutput模块输出统计报表;
3) CodeDispatcher程序对每一存储的零部件生成唯一标识的内部码, 便于零部件的自动化查询与管理;
4) LocationMaker程序对每一到达零部件分配最佳存放地址;
5) 其他工程应用软件程序。
5纵向集成搭建企业应用层协同工程应用与管理平台
将面向现场仓库群的零部件仓储实时监视与数据采集系统纵向集成, 采用JSP (Javaserverpages) 、Javabean和MacromediaDreamweaverMX编程语言开发基于BRI (basicrateinterface) 接口的综合数字业务网 (Integrated Services Digital Network, IS-DN) [4], 向上接入整车企业局域网的汇聚层, 通过WEB服务、消息通知与事件发布等途径, 搭建基于J2EE架构的企业协同应用管理平台, 建立与发动机车间、冲压车间、焊装车间、涂装车间和总装车间的MES制造执行系统的数据交换与信息桥接, 形成整车制造各环节零部件供应的物流支撑。整个平台网络结构见图10。
1) 本文所建立的汽车零部件仓储实时监控与数据采集系统, 为实现大范围异构分布环境下设备与设备之间、设备与上层管理系统之间和设备与人之间的信息交互提供了信息集成框架, 从而可方便地实现整车制造企业内不同车间、部门人员、监控和管理软件系统及设备资源的纵横向集成。
2) 零部件仓储实时监控与数据采集系统虽然是专门面向汽车制造企业的立体仓库群而开发, 但是由于本系统硬件结构的可拓展性以及软件模块体现网络化制造思想, 采用XML文件传输和OPC技术的普遍适用性, 只需要修改数据库结构以及适当调整软硬件相应模块, 即可应用到其它类似的诸如食品医药、烟草加工等诸多生产线、装配线的集中信息化管理等工程技术领域中去。
上一篇: 基于MVC的文件仓库管理系统的设计与实现
下一篇: 自动化立体仓库仓储管理系统的开发