OPC通讯在扁平件分拣机中的应用

2010-04-23 10:02黄现科时良平北京邮电大学自动化学院北京100876
物流科技 2010年6期
关键词:分拣机扁平组态

黄现科,时良平(北京邮电大学 自动化学院,北京 100876)

0 引 言

扁平件分拣机是由一组夹叉式小车组成的封闭输送分拣系统,主要应用于EMS扁平邮件的分拣,效率高、噪声小、平稳性好,在邮政物流中应用的越来越多。本文就是以某扁平件分拣机为蓝本介绍OPC通讯的应用,此机器的外形见图1。

本扁平件分拣机的控制层次图如图2所示。本扁平件分拣机的控制系统分为:设备控制层、信息处理层、车间管理层。

设备控制层分为:现场设备控制单元、分拣控制单元、数据处理单元。现场设备控制单元采用远程控制模块(SIEMENS公司的ET200S)实现,该模块和分拣控制单元之间采用PROFIBUS实现数据通讯;分拣控制单元采用SIEMENS公司的S7-300系列PLC实现,该单元和现场设备之间的通讯采用PROFIBUS实现;数据处理单元即上位机,其与PLC采用OPC方式通讯,其实现过程是本文论述的重点,该单元和信息处理层之间采用以太网实现通讯。

信息处理层包含:信息处理服务器、通讯处理计算机、打印终端计算机、打印机等设备。信息处理层主要完成:和车间管理层的通讯处理、分拣原始信息的采集分类、分拣处理后的信息处理、实时控制信息的传送等。

车间管理层由上一级部门完成。

图1 扁平件分拣机

1 OPC简介

1.1 OPC是什么

OPC是Object Linking and Embedding(OLE)for Process Control的缩写,它是微软公司的对象链接和嵌入技术在过程控制方面的应用。OPC以OLE/COM/DCOM技术为基础,采用客户/服务器模式,为工业自动化软件面向对象的开发提供了统一的标准,这个标准定义了应用Microsoft操作系统在基于PC的客户机之间交换自动化实时数据的方法。

1.2 OPC的特点

(1)采用标准的Windows体系接口,硬件制造商为其设备提供的接口程序的数量减少到一个,软件制造商也仅需要开发一套通讯接口程序。即有利于软硬件开发商,更有利于最终用户。

图2 分拣机控制层次图

(2)OPC规范以OLE/DCOM为技术基础,而OLE/DCOM支持TCP/IP等网络协议,因此可以将各个子系统从物理上分开,分布于网络的不同节点上。

(3)OPC按照面向对象的原则,将一个应用程序(OPC服务器)作为一个对象封装起来,只将接口方法暴露在外面,客户以统一的方式去调用这个方法,从而保证软件对客户的透明性,使得用户完全从底层的开发中脱离出来。

(4)OPC实现了远程调用,使得应用程序的分布与系统硬件的分布无关,便于系统硬件配置,使得系统的应用范围更广。

(5)采用OPC规范,便于系统的组态,将系统复杂性大大简化,可以大大缩短软件开发周期,提高软件运行的可靠性和稳定性,便于系统的升级与维护。

(6)OPC规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而实现系统的开放性,易于实现与其它系统的接口。

OPC通讯概览如图3所示。

图3 OPC通讯概览

1.3 OPC技术的主要应用

OPC技术对工业控制系统的影响和应用是基础性和革命性的,简单地说,它的应用主要表现在以下几个方面:

(1)OPC解决了设备驱动程序开发中的异构问题。随着计算机技术的不断发展,以DCS(集散控制系统)为主体的工业控制系统功能日趋强大,一套工业控制系统往往选用了几家甚至十几家不同公司的控制设备或系统集成一个大的系统,但由于缺乏统一的标准,开发商必须对系统的每一种设备都编写相应的驱动程序,而且,当硬件设备升级、修改时,驱动程序也必须跟随修改。同时,一个系统中如果运行不同公司的控制软件,也存在着相互冲突的风险。有了OPC后,硬件厂商只需提供一套符合OPC技术的程序,软件开发人员也只需编写一个接口,所有的数据交换都通过OPC接口进行,而不论连接的控制系统或设备是哪个具体厂商提供。

(2)OPC解决了现场总线系统中异构网段之间数据交换的问题。现场总线系统仍然存在多种总线并存的局面,有了OPC作为异构网段集成的中间件,只要每个总线段提供各自的OPC服务器,任一OPC客户端软件都可以通过一致的OPC接口访问这些OPC服务器。

(3)OPC可作为访问专有数据库的中间件。实际应用中,许多控制软件都采用专有的实时数据库或历史数据库,只要数据库的开发商在提供数据库的同时也能提供一个访问该数据库的OPC服务器,那么当用户要访问时只需按照OPC规范的要求编写OPC客户端程序而无需了解该专有数据库特定的接口要求。

(4)OPC便于集成不同的数据,为控制系统向管理系统升级提供了方便。无论是管理系统还是控制系统,无论是PLC还是DCS,或者是FCS(现场总线控制系统),都可以通过OPC快速可靠的彼此交换信息。换句话说,OPC是整个企业网络的数据接口规范,所以,OPC提升了控制系统的功能,增强了网络的功能,提高了企业管理的水平。

2 OPC通讯在扁平件分拣机中的实现

PLC在与上位机通讯时,可以采用Ethernet和PROFIBUS等方式,在本设备中,主控PLC使用的是SIMATIC S7-300系列的CPU315-2PN/DP,选择Ethernet方式,上位机客户端程序采用C#编写。下面就详细论述通过Ethernet建立SIMATIC NETOPC服务器与PLC的S7连接。

用于Ethernet的OPC服务器随SIMATIC NET软件提供,SIMATIC NET是SIEMENS在工业控制层面上提供的一个开放的、多元的通讯系统,通过它能将工业现场的PLC、主机、工作站和个人电脑联网通讯。

2.1 用于Ethernet的OPC通讯PC机的软件及硬件要求

(1)软件

SIMATIC NET PC SOFTWARE V6.0 SP5或以上版本;STEP 7 V5.1+SP2或以上版本;SOFTNET-IE S7授权。

(2)硬件

CP1613或普通10/100自适应以太网卡。

(3)本例中所使用的主要软件

SIMATIC NET PC SOFTWARE V6.4;STEP7 V5.4 SP3。

(4)本例中所使用的主要硬件

S7-300 CPU315-2PN/DP;普通网卡;为保证PLC正常运行的其他组件或模块。

2.2 OPC服务器具体配置操作过程

(1)将硬件连接完成。

(2)打开 SIMATIC Manager。

(3)新建项目,插入PC站,站名为本机主机名。

(4)组态PC站。在硬件目录SIMATIC PC Station/User Application/OPC Server下,将与安装在本机上的SIMATIC NET PC SOFTWARE相匹配的OPC Server(本例中为SW V6.4)放入槽1,将目录SIMATIC PC Station/CP Industrial Ethernet/IE General下的SW V6.2 SP1放入槽3。将IP Address设置为本机的IP地址,并点击“New…”新建以太网连接。保存并编译PC站组态。

(5)插入S7-300站。

(6)组态相关硬件,设置CPU315-2PN/DP的以太网接口。IP地址为PLC的IP地址,将PLC连接到以太网上。将其他PLC硬件组态完成后,保存并编译组态。

(7)打开NetPro,组态网络。在PC站的OPC Server处鼠标右键单击,选择“Insert New Connection”,在“Connection Partner”项选择已组态的CPU,“Type”项选择“S7 connection”。保存并编译网络组态。

(8)打开Station Configurator,单击“Import Station…”按钮,到上述项目文件夹中的XDBs文件夹下选择其中的*.xdb文件,完成站的导入。

(9)设置SIMATIC Manager的PG/PC接口为“PC internal(local)”,下载PC站。

(10)设置SIMATIC Manager的PG/PC接口为“TCP/IP(Auto)”,下载S7-300站。

2.3 数据通讯的测试-OPC Scout

OPC Scout工具随Simatic Net软件一起提供,当完成PC Station组态下载后,可用此工具进行OPC Server和PLC的数据通讯测试。

(1)打开 OPC Scout,(Start>SIMATIC>SIMATIC Net>OPC Scout),双击“OPC.SimaticNet” 在随之弹出的“ADD Group”对话框中输入组名,本例命名为“OPC_ETHERNET”。点击OK确认。

(2)双击已添加的连接组(OPC_ETHERNET),即弹出“OPC Navigator”对话框,此窗口中显示在Configuration Console所激活的连接协议。双击“S7:”,在PC Station组态NetPro中所建的连接名会被显示(S7 connection_1)。双击此连接,即可出现有可能被访问的对象树(objects tree),此处以输出映像为例,在“Q”下定义新条目,以 QB0为例,“Datatype” 选“B”,“Address” 写“0”,“No.Values” 写“1”。点击“—>” 添加条目,确认之后,出现条目状态信息,“Quality”列显示为“good”时表明OPC Server与PLC的S7连接已经建立,双击“Value”列,可对条目进行修改,如果组态了相应的输出模块,则可直观地显示出通讯结果。

3 API函数说明

本例中需要用到OPCDAAuto.dll。

用到的API函数如下所述:

void Connect(string ProgID,object Node)//连接本地服务器:服务器名+主机名或IP

OPCAutomation.OPCGroup Add(object Name)//添加组

OPCAutomation.OPCItem AddItem(string ItemID,int ClientHandle)//添加item

void Read(short Source,out object Value,out object Quality,out object TimeStamp)//同步读

void Write(object Value)//同步写

void AsyncRead(int NumItems,ref System.Array ServerHandles,out System.Array

Errors,int TransactionID,out int CancelID)//异步读

void AsyncWrite(int NumItems,ref System.Array ServerHandles,ref System.Array Values,out System.Array Errors,int TransactionID,out int CancelID)//异步写

void RemoveAll()//释放所有组

void Disconnect()//断开OPC服务器

4 可能出现的问题及解决方法

4.1 可能出现的问题

无法下载硬件组态;OPC服务器与PLC无法建立连接;通讯质量一直显示“bad”。

4.2 参考的解决办法

硬件连接要完整、可靠;PLC要置于RUN模式;站地址分配不能重复;PC站的名字要与主机名相同;PC站及S7-300站都要下载。

5 OPC通讯在工业控制领域的前景展望

随着基于OPC标准的控制组件的推广和普及,不仅使控制组件的增设和组件的置换更加简单,而且使过程数据的访问也变得容易。比如过程控制程序可以直接和数据分析软件包或电子表格应用程序连接,从而达成高度的工厂控制系统的信息化。

在以前的自动化领域的通讯技术规范方面,很少有像OPC新技术标准那样引起轰动的。OPC在今天已经理所当然的被自动化组件的制造商逐步发展成一个事实上的新技术标准。当今,软件在自动化领域内使用的重要性与日俱增。无论项目是否涉及到操作、可视化、数据存档或控制,向纯粹的、基于PC的软件解决方案的发展趋势是不可阻挡的。因此,OPC技术的发展前景是被众多业内人士所看好和期待的。

[1]时良平.邮政机械设计[M].北京:人民邮电出版社,1993.

[2]崔坚.西门子工业网络通信指南[M].北京:机械工业出版社,2006.

[3]廖常初.S7-300/400 PLC应用技术[M].北京:机械工业出版社,2006.

[4]文孟飞,何海江,阳春华.C#实现OPC历史数据存取研究[J].微计算机信息,2007,23(1):52-54.

[5]何海江.C#程序与基于COM的OPC数据存取服务器交换数据研究[J].微计算机信息,2004,20(10):112-113.

[6]廖常初.西门子工业通信网络组态编程与故障诊断[M].北京:机械工业出版社,2009.

[7]吉顺平,等.西门子现场总线通信原理与应用[M].北京:机械工业出版社,2009.

[8]Christian Nagel,Bill Evjen,Jay Glynn.C#高级编程[M].4版.李敏波,译.北京:清华大学出版社,2006.

[9]殷泰晖.C#编程从基础到实践[M].北京:电子工业出版社,2007.

[10]何华.深入浅出西门子WinCC V6[M].2版.北京:北京航空航天大学出版社,2005.

猜你喜欢
分拣机扁平组态
交叉带式邮件分拣机常见故障的分析及处理
福特phve冷板检测定位pin自动分拣机控制系统的研究
全球治理趋向扁平
基于PLC及组态技术的恒温控制系统开发探讨
基于SVM-DTC的测试分拣机下压机构电机力矩控制
基于PLC和组态的智能电动拧紧系统
基于STM32 的自动硬币分拣机控制系统设计
PLC组态控制在水箱控制系统的应用
铸造行业三维组态软件的应用
熔体直纺238 dtex/228f细旦扁平涤纶POY生产技术