控制工程ControlEngineeringofChinaMar.2005Vol.12,No.22005年3月第12卷第2期文章编号:167127848(2005)0220153203
收稿日期:2004204205; 收修定稿日期:2004206216 基金项目:辽宁省教育厅重大资助项目(202031003) 作者简介:乔 毅(19652),男,山西太原人,副教授,硕士,主要从事现场总线控制系统等方面的教学与科研工作。基于LabVIEW和OPC的数据通信的实现乔 毅1,栾美艳2,袁爱进1,唐明新1(1.大连交通大学三合仪表公司,辽宁大连116028;2.大连交通大学电气信息分院,辽宁大连116028)摘 要:提出了在系统中利用LabVIEW作为上位机监控软件,使其通过OPC接口实现和现场智能设备的数据通信的方法。阐述了开放式虚拟仪器平台LabVIEW和开放式标准接口技术OPC的特点,并介绍了在此平台上LabVIEW的DataSocket编程技术和OPC服务器的设计方法,并通过实验证明采用这种方法省去了复杂的语言编程,缩短了软件的开发时间,简化了开发过程,同时也增加了应用的灵活性,充分验证了利用此方法实现数据通信的可行性。关 键 词:LabVIEW;OPC服务器;DataSocket编程技术;虚拟仪器技术中图分类号:TP393 文献标识码:ARealizationofDataCommunicationBasedonLabVIEWandOPCQIAOYi1,LUANMei2yan2,YUANAi2jin1,TANGMing2xin1(1.InstrumentCorporation,DalianRailwayInstitute,Dalian116028,China;2.SchoolofElectricityandInformation,DalianRailwayInstitute,Dalian116028,China)Abstract:Basedonthepurposeofachievingreal2timemeasurementofmoretypeparametersandreal2timedatashareinmeasurementandcon2trolsystem,LabVIEWistakenassupervisoryandcontrolsoftware,combiningOPCinterfacetoimplementtheobjective.OpenVirtualInstru2mensplatformLabVIEWandstandardinterfacetechnologyOPCaresetforth,andDataSockettechnologyofLabVIEWandthedesignmethodofOPCserverareintroduced.Theexperimentresultsshowthat,thisdesignmethodmaysavecomplicatedprogramming,decreasedevelopmenttimeofsoftware,simplifytheprocessofdevelopmentandenhancethediversityofapplication,andhavethefeasibilityofthedatacommunica2tionimplement.Keywords:LabVIEW;OPCserver;datasocketprogrammingtechnology;virtualinstrumentstechnology1 引 言LabVIEW(LaboratoryVirtualInstrumentEngineeringWorkbench)是实验室虚拟仪器工程平台的简称,是一种用图标代码来代替编程语言创建应用程序的开发环境,主要用于开发数据采集、仪器监控及过程监测等领域的应用程序[1]。LabVIEW的图控环境内置丰富的函数库,提供了多种网络的接口,支持先进的流动数据传输等先进技术,使系统的开发更加方便,其中基于TCPPIP协议的网络实时数据交换编程技术)数据套接(DataSocket)技术便是一特色。这种技术是一种开放的技术,与人们已习惯采用的TCPPIP编程接口、DDE等网络环境下的数据共享技术比较,使用起来更方便,开发效率更高,而且不需要大量的编程工作量。数据套接提供统一的API编程接口,从数据共享的角度,它是对WinSock的高级封装,允许用户与各种服务器进行交互并在应用之间交换信息,比如LabVIEW以及一些不同的数据源或目标,源和目标包括其他的应用、文件、OPC服务器、Web服务器以及FTP服务器[2]。使用DataSocket类和统一资源定位器(UniformResourceLocator,简称URL),就可建立数据套接的源与目标的连接,用户可以像使用LabVIEW中的其他数据类型一样用DataSocket读写数据,实现测量数据的实时共享。OPC(OLEForProcessControl)是微软公司的对象链接和嵌入技术在过程控制方面的应用,是一种连接硬件装置与过程控制客户应用程序之间的标准化的接口协议[3]。在过去,为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数,由于现场设备的种类繁多,且产品的不断升级,往往给用户和软件开发商带来了巨大的工作负担,利用OPC技术可以大大提高系统的开放性和可互操作性。它以OLEPCOMPDCOM机制作为应用程序级的通信标准,采用客户P服务器模式,以OPC服务器的形式提供给用户,解决了软硬件厂商的矛盾,完成了系统的集成,显著地增强了过程控制领域中的控制系统、现场设备、管理应用程序之间的互操作性。2 数据通信任务的具体设计这里实现的数据通信任务是通过LabVIEW能够实时地读写现场测量数据。由于LabVIEW软件平台支持DataSocket技术,DataSocket技术是一种能很容易地通过各种连接传送测量数据,实现实时数据共享的技术。DataSocket技术支持OPC通信协议[4],要使用OPC通信协议,就要求运行一个OPC服务器。这里用的OPC服务器是Matrikon公司的,它支持应用层所用的MODBUS协议,通过物理接口RS232传送数据,整个通信过程可以简单地理解为:LabVIEW将要发布的数据先送到OPC服务器,然后OPC服务器通过串口RS232传给底层设备;LabVIEW读现场数据就是将传到OPC服务器中的数据读上来并在前面板显示出来。1)OPC服务器的配置 设计过程是首先建立OPC服务器与底层智能设备地址的一一对应,对OPC服务器的总体配置框图,如图1所示。