基于OPC的穿楼层立体库上位机控制系统的实现

2017-06-03 12:52田雅芳
物联网技术 2017年5期

田雅芳

摘 要:穿楼层立体库可以充分利用建筑高度在最小占地面积上实现最大的存储空间,有利于企业实现现代化自动库房的集中建设。如何实现穿楼层立体库设备的上位机控制系统并确保控制系统对设备运行控制的准确性和稳定性,成为产品研发过程中的关键环节。结合OPC服务的远程访问技术以及C#编程语言在DCOM自动化编程方面的优势,研发团队开发并实现了穿楼层立体库的上位机控制系统。自主设计开发的上位机控制系统在立体库研发调试过程中可灵活进行功能调试,同时可有效集成库存管理系统,在实际生产使用中有着重要价值。

关键词:OPC;DCOM;穿楼层立体库;上位机控制系统

中图分类号:TP273+.5 文献标识码:A 文章编号:2095-1302(2017)05-0-03

0 引 言

随着智能存储技术的日趋成熟和迅猛发展,自动化库房在企业现代化车间、智能配送中心、设备管理中心等部门逐步建立并取代传统的库房和货架。穿楼层立体库的设计实现,可以根据客户现场建筑场地的实际情况,充分利用建筑高度,实现在最小占地面积上产生最大的存储空间。根据实际使用需求,在穿楼层立体库的每个建筑楼层设置控制平台,对不同的部门开放操作权限,以便部门管理人员根据实际生产情况进行物品的存取操作。控制系统根据库内空间使用情况以及物品的实际高度来计算存储单元的存放位置,操作员无需记忆识别物品在库内的存放位置即可通过配套库存管理系统进行物品的出入库操作。在企业的现代化建设过程中,穿楼层立体库的实现对于集中建设现代化库房、减少物料搬运时间、提高库房使用效率具有重要意义。

本文以某公司车间穿楼层立体库的设计实现为案例,探讨穿楼层立体库中上位机控制系统设计实现的关键技术和思路,为广大同仁提供参考。

1 硬件组态及远程访问配置

穿楼层立体库的下位控制系统采用西门子S1200PLC。S1200PLC作为西门子在SIMATIC系列产品中最新一代的可编程控制器,具备S7系列PLC卓越的性能和强大的网络通信功能,且CPU具有一个集成的以太网接口,该接口支持基于以太网的OPC通讯。此外,由于上位软件不能直接访问该系列PLC,因此需要通讯软件SIMATIC.NET提供的OPC服务功能来解决上位软件与PLC的通讯问题。S1200PLC的通讯技术、OPC服务的远程访问技术以及操作系统的正确配置是立体库控制系统实现的关键技术之一。

1.1 硬件组态

使用SIMATIC.NET软件在上位系统创建OPC服务,操作步骤如下:

(1)配置控制台Configuration Console的设置,将S7 ONLINE指向PC internal(local),为PC站点的下载做准备;

(2)使用TIA Portal软件在项目中创建一个PC站点,并将OPC服务器和以太网通讯模块IE General插入PC站点插槽内;

(3)建立PC站点与S1200PLC的以太网接口的S7连接,使之互为通讯伙伴。连接建立后,系统默认连接的名称为“S7_Connection_1”,该连接名在后续上位系统创建通讯变量时需要使用;

(4)配置PC站点中以太网通讯模块与S1200PLC的以太网设置;

(5)组態PC站点;

(6)下载PC站点硬件组态及网络连接;

(7)使用OPC Scout软件测试是否能够正确连接OPC Server。

1.2 OPC服务远程访问配置

OPC技术依赖于微软的COM和DCOM在自动化硬件和软件之间进行数据交换,在使用和访问OPC服务之前需要对PC终端的DCOM环境进行正确配置。若要建立有效可靠的DCOM通讯,首先应移除Windows安全,建立相互能识别的用户账户,配置系统宽泛的DCOM设置与Server特殊的DCOM设置后再恢复Windows安全。

2 上位机控制系统的技术实现

根据某公司车间现场的实际情况,穿楼层立体库跨越三层建筑楼层,每个楼层分别面向一个使用部门并为其开放具备独立操作权限的控制平台,实现了该公司车间库房的集中建设。

该穿楼层立体库硬件使用西门子S7系列的S1200PLC作为中心控制器,上位机控制系统采用C#语言自主开发实现,上位机控制系统与PLC的数据传递选用OPC通讯技术。穿楼层立体库的运行控制由分别位于三个楼层的子控制平台、OPC服务器以及作为中心控制器的PLC系统组成,由此构成立体库的控制系统。

2.1 系统功能

穿楼层立体库的上位机控制系统由一楼主控制台、二/三楼子控制台组成,该系统负责完成设备状态的实时监控和设备控制。

2.1.1 设备状态的实时监控

主要监控设备故障信息及故障代码、设备当前运行状态、设备空间参数和托盘参数。设备上电时,上位机控制系统会通过读取PLC存储区域中的变量值判断设备是否有故障信息,存取平台当前状态并提取机构的当前位置。上位机控制系统将以上信息以图形化界面的方式展现给设备管理人员。同时系统运行时读取数据库中托盘单元的数据信息和立体库的空间参数信息,并以不同的颜色区分空间当前的存放状态。设备管理人员通过图形化界面可充分了解设备当前运行状态、立体库存储空间利用情况。

2.1.2 设备控制

控制系统对设备的控制主要指动作指令的下达,包括对立体库自动门及提取机构的控制。上位机控制系统对设备的控制主要分为手动调试与自动运行指令。

手动调试:一楼主控制台具备设备手动调试功能,包括开关门、提取机构的升降、托盘抓取机构的前移和后移以及提取机构的指定位置运行。这些功能只有维修人员才能使用,因此设备的维修和调试在一楼主控制台完成,设备维修时子控制台的操作界面锁定,操作员不能进行出入库操作。

自动运行指令:即指定对几号托盘的取出或存入。该指令的完成可以在控制界面由操作人员手动输入目标托盘号并点击“托盘入”、“托盘出”控制按钮完成操作。也可在系统集成中完成托盘的自动存取。主控制台和其余两个子控制台均具备自动操作功能。

2.2 上位机控制系统与库存管理的集成

由于上位机控制平台为自主研发设计,可与自主研发的库存管理系统相结合,完成与厂级信息系统的集成。库存管理系统可以接收来自厂级信息系统的出入库指令。管理员也可以在库存管理系统中编制物品的出入库单据。库存管理系统通过解析指令中的目标货位信息、出入库动作信息得到相应的设备号、托盘号、行号、列号、格号,以及托盘出/入的指令信息。上位机控制系统向下位控制系统PLC下发指令,如出/入托盘、目标托盘号以及货位指示机构需要指示的位置状态如行号、列号、格号。下位控制系统PLC联合设备运动机构完成托盘的出入、存取平台的货位指示,由此完成物品的出入库操作。控制系统构成如图1所示。

2.3 关键技术

不同于普通立体库,由于多个操作平台的设置,各操作平台共享一个立体库空间,共同拥有一套立体库电气控制系统和运动结构,控制系统需要更加严密谨慎。控制系统流程图如图2所示。關键技术阐述如下:

(1)系统权限设置。穿楼层立体库设有多个操作平台,各平台面向独立的使用部门,各使用部门管理立体库内存放的托盘单元以及主控制台和子控制台不同的功能设置。控制系统针对两个平台设置了系统管理员、管理员和操作员三级权限,同时针对使用部门、人员角色、部门设置了人员托盘权限判断,即操作人员在某个平台进行设备操作以及托盘出入库操作时需要具备相应的权限才能继续操作。

(2)平台互锁及任务队列。各操作平台共享一个立体库空间,因此在其中一个操作平台进行设备操作时,其余操作平台系统会自动锁定界面,以免设备误操作情况的发生。在此基础上,系统设置指令缓冲区,操作员可根据实际使用情况将待操作指令存入任务队列,系统将在设备空闲时依次执行任务队列中的动作指令,实现设备操作的自动化,节省操作员的出入库等待时间。

(3)指令解析。普通立体库只需要判断设备状态以及指令类型即可下达任务指令。由于多个子控制平台的设置,系统进行指令解析时除人员权限外,还需要根据操作平台类型、发出指令的操作平台编号、操作平台当前状态、设备的实时状态以及指令类型等进行指令验证及解析,以防托盘存入操作时动作机构到错误的操作台取回托盘,或者托盘取出操作时动作机构不能够正确将托盘送达目标操作台,抑或操作平台状态判断错误导致托盘取出操作时与平台上已有的托盘发生碰撞等。

(4)数据一致性维护。多个操作平台的存在对立体库的托盘数据维护提出新的要求。各控制系统读写访问位于服务器上的统一数据库,以保证数据的一致性。此外,控制系统在进行托盘出入库操作时需进行托盘参数的校验:各操作平台上存在的托盘数和立体库内存放的托盘数总和应等于立体库托盘总数。控制系统需要通过位于操作平台上的传感器及PLC存储区里维护的平台状态综合判断操作平台上存放托盘的状态。托盘参数数据的一致性有效维护保证了控制系统的稳定运行。

3 结 语

本文穿楼层立体库的上位机控制系统的实现已经成功应用于该公司的库房建设,并成功完成与企业信息系统的信息化集成,系统已投入实际生产中。自投入生产使用,至今没有出现托盘数据丢失、托盘走错平台或指令执行错误等控制系统方面问题。

穿楼层立体库的设计实现以及设备上位机控制系统的实现,提出了一种全新的立体库实现思路。在寸土寸金的当今社会,可以充分利用建筑高度,在最小占地面积上实现最大的存储空间,有利于企业实现现代化自动库房的集中建设。此外,自主研发设计的上位机控制系统可充分集成企业的信息管理系统,实现设备的在线监控、智能物流信息管理、物流设备集成,并参与到企业的信息化建设中去。

参考文献

[1]日本OPC协会.OPC应用程序入门[Z].北京:0PC

[2]王大鹏,苏孝国,王涛.基于C# 语言的工业计算机与S7-1200的OPC通讯[J].自动化与仪器仪表,2014(11):147-150.

[3]段润群,谢云山.上位机软件与S7-1200 PLC的OPC通信研究[J].自动化与仪器仪表,2014(5):13-15.

[4]石灵丹,朱斌,朱歆州,等.基于OPC技术的PC与西门子PLC的实时通讯[J].船电技术,2011,31(1):9-12.

[5]西门子(中国)自动化与驱动集团.Connecting a PC Station to an S7-1200 using OPC[Z].北京:2015.

[6]西门子(中国)自动化与驱动集团.S7-1200基本以太网通信使用指南[Z].北京:2010.

[7]黄现科,时良平.OPC通讯在扁平件分拣机中的应用[J].物流科技,2010,33(6):29-32.

[8]张宏坡,康龙云.基于OPC技术的PLC上位机管理系统[J].制造业自动化,2011,33(18):72-75.

[9]龙祖明.面向Wince终端的OPC数据采集系统设计与开发[D].广州:华南理工大学,2016.

[10]何永亚.OPC数据访问服务器的开发研究及实现[D].广州:华南理工大学,2012.

[11]江声.基于OPC通讯协议的油田分布式共享系统研究[D].大庆:东北石油大学,2016.

[12]肖孟.基于OPC规范的通用监控模块的研究与实现[D].成都:电子科技大学,2014.

[13]张磊.OPC技术在ASP连铸机控制系统中的设计应用[J].可编程控制器与工厂自动化,2015(4):75-78.

[14]黄娟.基于C#的OPC数据通信的设计与实现[J].工业控制计算机,2013,26(11):14-15.

[15]李蕊,徐立鸿.基于OPC的温室智能控制系统接口设计与应用[J].机电一体化,2011,17(1):52-55.