0导言
跟着工业操控体系上钩算机的引进,运用于主动工业操控的软件和协议也越来越纷繁复杂。但任何纷繁复杂的技能终究都要走向一致的规范,因而全世界各大工业操控厂商联手推出了OPC规范,专门用于主动化工业操控。随同而来的便是支撑OPC技能的各种组态软件,美国国家仪器公司NI也不甘落后,在2006年推出了最新的LabVIEW 8.0 DSC模块用以支撑OPC技能。因为LabVIEW作为开发软件,它具有一般组态软件不行比较的编程灵活性,因而在工业测验和主动化范畴方面,LabVIEW 8.0及其DSC模块弥补了一般组态软件的丧命缺点。
1 OPC技能简介
OPC(OLE for Process Control——用于进程操控的OLE)是一个工业规范,它是许多世界抢先的主动化和软、硬件公司与微软公司协作的结晶。这个规范界说了运用Microsoft操作体系在根据PC的客户机之间交流主动化实时数据的方法。传统的硬件与软件通讯都是直接在软件中编写自界说接口和驱动完成的,可是这样不只价格昂贵并且硬件通用性不高。有了OPC技能作为通讯“中介”,这一切就变得很简略了。软件不再需求为每一种硬件都编写驱动,只需求做到的便是能与契合工业规范的OPC Server通讯。硬件供给商也不用再忧虑许多软件是否能支撑他们的硬件,他们只需求供给支撑硬件的契合规范的OPC Server就行了。因而OPC技能避免了重复开发,极大的下降了本钱,加快了软件开发速度并进步了功率。现在OPC规范现已被上百家公司的上千个项目所运用。办理该规范的安排是OPC基金会。该基金会由1996的五家公司树立,现在全球现已有360个成员在促进和运用这项技能。
OPC的详细优势:
1) 选用规范的Windows体系接口,不论现场设备以何种方法存在,客户都以一致的方法去拜访,然后完成体系的开放性,易于完成与其它体系的接口。
2) OPC规范以OLE/DCOM为技能根底,而OLE/DCOM支撑TCP/IP等网络协议,因而能够将各个子体系从物理上分隔,散布于网络的不同节点上。
3) 选用OPC规范,便于体系的组态,将体系复杂性大大简化,能够大大缩短软件开发周期,进步软件运转的可靠性和稳定性,便于体系的晋级与保护。
2 LabVIEW 8.0 DSC模块简介
LabVIEW是一个业界抢先的工业规范软件东西,用于开发测验、丈量和操控体系。它是专为工程师和科学家而规划的直观的图形化编程言语。它将开发软件和各种不同的丈量仪器硬件及计算机集成在一起,树立虚拟仪器体系,以构成用户自界说的处理方案。经过20年的演化和改善,在根据PC的丈量主动化范畴,LabVIEW确立了其主导地位,并成为业界的事实规范。最新推出的LabVIEW 8包括上百种新特性,更新力度超越任何一个前版别。其附加的DSC(Datalogging and Supervisory Control) 数据记载与监控模块专为SCADA体系规划。能轻松的与OPC Server通讯,也能生成自己的OPC Server。此外还有许多SCADA常用功用,例如根据装备的警报和事情,运用程序的用户级安全机制,散布式监测和操控的图形化开发,实时与历史数据追寻,内置联网便于与第三方设备的数据同享和集成,散布式数据记载的联网数据库等。因为DSC模块能与LabVIEW开发环境无缝集成,因而根据LabVIEW 8.0 及其DSC模块开发的SCADA体系能充分运用LabVIEW强壮的数据处理与剖析功用,具有传统SCADA组态软件无可比较的优势。
图1 根据OPC Server和LabVIEW 8.0 DSC模块的SCADA体系结构示意图
3经过LabVIEW 8.0 DSC模块拜访OPC Server
经过LabVIEW与OPC Server进行通讯有3种方法:1)经过ActiveX主动化接口完成对OPC Server的拜访;2)经过NI的DataSocket技能完成与OPC Server的通讯;3)运用其DSC模块与OPC Server通讯。其间前两种方法只合适与少量点数的OPC标签衔接。因为需求编写多段重复代码或是经过For循环来读写,因而当点数增多时会下降读写速度并让体系变得不利于保护。经过DSC模块内建的与OPC Server通讯的机制,编程就变得适当简略了,并且其编程规划和读写速度写不受点数约束。因而这儿只详细介绍第三种方法,假如读者对前两种方法也感兴趣的话请参阅LabVIEW 8.0用户手册。
3.1 OPC Server的装置与装备
大部分需求计算机收集操控的硬件设备供给厂商都为其设备供给了OPC Server。现在不少OPC Server供货商乃至开发了与ODBC数据源衔接的OPC Server,用户经过它能够经过拜访OPC Server来拜访数据库。现在大部分的OPC Server都是在Windows下运转,也有少量的OPC Server能够在Linux下运转。依照供给商供给的手册装置就行了。因为选用了DCOM技能,通常情况下网络上其它计算机也能拜访你的OPC Server。可是假如你的操作体系是WinXP SP2,你就必须做一些相应的设置才行,详细请参阅相关文献。
大部分OPC Server都选用XML装备文件进行相关装备,例如硬件地址,相关参数等。装备好后,重新发动计算机,OPC Server作为Windows的服务在计算机发动时主动发动。运用任何一种OPC client都能完成对OPC Server的拜访,阅读OPC标签信息。例如NI免费供给Server Explorer(能够在NI网站上免费下载)。
3.2与OPC标签树立衔接
经过LabVIEW 8.0 DSC模块与OPC标签的衔接方法与前版别彻底不同。LabVIEW 8.0引进了同享变量的概念。同享变量能够与本地或网络上任何一台电脑上的OPC标签绑定。当绑定好后,用户只需求把同享变量当作一般的变量相同操作就能够了,而不需求知道这个同享变量的底层到底在和哪台电脑的哪个OPC标签通讯。
与OPC标签的绑定十分简略。
1) 新建一个LabVIEW Library。
2) 在library里新建一个I/O Server,在树立进程中能够阅读到本机或网络上有哪些OPC Server能够衔接,然后将I/O Server与你需求衔接的OPC Server绑定。
3) 在Library中新建一个同享变量与I/O Server中列出的OPC 标签绑定。与此同时还能够设定该同享变量的一些其它特点,例如:是否存储,报警上下限,变量描绘,用户获取权限等。
图2运用同享变量事情特性读取OPC标签数据
可是该事情只能在OPC标签的值发生变化时才激起,许多的OPC标签还用Quality来标志其当时值是否正确。例如当OPC Server与硬件衔接中止时,其标签的Quality将显现为“bad”。因而当OPC标签的值由“good”变为“bad”时,上面的程序并不能发现。为处理这个问题,咱们只要经过DataSocket的方法来实时读取其Quality的状况。如图3所示。
4.运用LabVIEW树立自己的OPC Server
当用户开发出自己的硬件设备或许某些硬件厂商不供给OPC Server时,编写该硬件设备的OPC Server就很重要了。可是专用的OPC Server开发东西一般价格昂贵,并且难于运用。而经过LabVIEW生成自己的OPC Server十分简略。咱们能够首要经过LabVIEW来与硬件设备的驱动直接进行通讯。然后将读取的数据放在OPC Server中作为一个个的OPC标签发布即可。