楼宇自控系统集成中的OPC客户端软件开发
基于OPC 技术的楼宇自动化系统实现

基于OPC 技术的楼宇自动化系统实现在博物馆系统结构的管理级中,选用监控组态软件作为中央站的软件.利用软件工具对计算机及软件的各种资源进行配置,达到使计算机或软件按照预先设置,自动执行特定任务,满足使用者要求的目的.监控组态软件是面向监控与数据采集的软件平台工具,具有丰富的设置项目,使用方式灵活,功能强大.监控软件作为OPC 客户端,它的主要功能是与OPC Server 交换数据或报警信息,并将获得的数据和信息传送给监控软件的其它部分使用,这部分功能是监控软件的关键之一,其性能的好坏直接关系到数据与信息的传输效率.1.1 给排水系统设计给排水系统根据生活水管网压力设定值,控制生活水泵的启停,并监测水泵的运行状态、故障报警以及生活水池水位.由于博物馆只产生生活废水,不产生工业废水,因此仅需对给水进行监控.要实现对给排水系统的中央监控,就先要对它的运行信号进行采集.本系统对给排水系统运行信号的采集是通过信号采集卡实现的.采集到的给排水运行数据通过现场控制网络和OPC接口传送到OPC客户端——中央监控电脑,中央监控电脑接收到运行数据后,动画显示系统的运行状态.若有故障信息,则立即报警,管理器只能显示,不能控制.控制流程如图4 所示.1.2 监控组态软件设计1.2.1 监控点表的设计监控点表中的变量在监控软件的实时数据库中,与OPC 服务器中的变量是一一对应的,同时也随着OPC 服务器中变量的变化而变化.设计监控软件,每一个监控点的设置及其所完成的功能都必须明确,而且应对每个监控点完成功能的具体变量进行设定和详细的说明.表1给出了给排水系统的监控点表及其所对应变量的设置.1.2.2 监控图形主界面的设计图5 所示主界面中可以查看甘肃省博物馆中给排水的运行状态,包括每部水泵的运行状态和生活水池的液位变化,以及其他一些相关信息等,图中界面的动态变化反映了表1 中变量的变化.1.2.3 给排水报警若给排水系统出现异常,图6 中可以查看实时的给排水系统的报警信息,包括报警说明、日期、类型、级别和是否确认.基于OLE/COM机制的OPC技术是一种客户/服务器模式,具有语言无关性、代码重用性、易于集成性等优点.本文结合实例,提出了OPC 技术的三层四级的网络结构,给出了应用OPC技术的甘肃省博物馆楼宇自动化系统,现场运行效果良好.。
使用C#开发OPC Client的研究和应用

使用C#开发OPC Client的研究和应用作者:张晓科来源:《科技资讯》 2013年第2期张晓科(石家庄市联盛电子技术有限公司河北石家庄 050011)摘要:本文详细介绍了OPC的各种特性,和使用c#开发OPC Client的具体过程以及在实际工程中的应用。
关键词:OPC c# DCOM中图分类号:TP3 文献标识码:A文章编号:1672-3791(2013)01(b)-0000-001 OPC和C#概述1.1 OPC概述OPC(OLE for Process Control)是一种利用微软的 COM/DCOM 技术来达成自动化控制的协议,根据 OPC Specification 的定义,OPC is "a standard mechanism for communicating to numerous data sources, either devices on the factory floor, or a database in a control room."现代化企业中自动化程度越来越高,数据量也在成倍增长,为了能够充分利用这些数据,发展出了ERP/MES等信息化系统,这些系统架构大体如下所示:OPC协议做为一种通讯转换协议,介于下层控制系统与上层软件之间;它隐藏下层系统的不同,为上层的数据应用提供一个统一的接口,使得上层软件在数据集成时,无需考虑下层控制系统的协议和实现方式,只要符合OPC客户端的接口规范即可,这大大节省了上层软件在数据集成方面的工作。
OPC发展至今已有1.0、2.0、3.0等几个版本,在目前工业自动化中以2.0使用最为广泛。
1.2 C#概述C#(念法:C Sharp,音标[∫a:p])是微软公司在2000年6月发布的一种新的编程语言,并在微软职业开发者论坛(PDC)上登台亮相。
C#是微软公司研究员Anders Hejlsberg的研究成果。
C#看起来与Java有着惊人的相似;但是C#与Java也有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角。
OPC客户端的实现

OPC客户端的实现OPC(OLE for Process Control)是工业自动化领域常用的通信标准之一,它为不同的硬件设备和软件系统之间提供了一种标准的通信协议。
OPC客户端是指作为OPC通信的接收方,从OPC服务器获取和处理数据的软件应用程序。
下面将介绍OPC客户端的实现过程以及需要考虑的一些关键点。
1.确定需求:首先,需要明确需求,确定OPC客户端的功能和目标。
例如,需要读取实时数据还是历史数据?需要对数据进行分析和处理吗?实时性是否有要求?这些问题的答案将直接影响OPC客户端的设计和实现。
2. 开发环境搭建:在开始OPC客户端的实现之前,需要搭建相应的开发环境。
一般来说,使用基于Windows操作系统的开发工具比较方便,例如Visual Studio。
这些工具提供了开发OPC客户端的相关库和模板,可以简化开发的过程。
3.寻找OPC服务器:在开发OPC客户端之前,需要找到一个合适的OPC服务器作为数据源。
这个OPC服务器可能是来自硬件设备厂商提供的,也可能是通过软件模拟生成的虚拟OPC服务器。
根据需求,选择合适的OPC服务器进行连接和通信。
4.建立连接:在OPC客户端中,首先要与OPC服务器建立连接。
连接可以通过OPC服务器提供的API函数来实现。
一般来说,需要提供OPC服务器的地址和相关参数进行连接。
成功建立连接后,OPC客户端就可以与OPC服务器进行通信了。
5.数据读取和写入:建立连接之后,OPC客户端可以通过API函数来读取OPC服务器的数据。
一般来说,需要提供数据项的名称或ID来获取相应的数据。
读取到的数据可以进行后续的处理和分析。
除了读取数据,OPC客户端还可以通过API函数将数据写入OPC服务器,实现对远程设备的控制。
6.错误处理和异常处理:在OPC通信中,可能会出现各种错误和异常情况。
OPC客户端需要对这些情况进行处理,以确保通信的稳定性和可靠性。
例如,网络连接中断、OPC服务器崩溃等情况都需要进行相应的错误处理和异常处理。
基于OPC技术分析建筑智能化系统集成

基于OPC技术分析建筑智能化系统集成摘要:伴随技术进展,建筑特有的智能化水准被不断提升。
这种状态下,建筑融汇了居住性能、美观特性,含有多样空间。
智能化架构下的集成建筑,整合了高层级的舒适及安全性,有着交互特性,整合多重节点。
为了适应需求,应着力增添建筑架构内的智能要素[1]。
本文探析了OPC特有的技术路径,这类新颖技术架构内的集成体系,提升了互联特性,可以互动操作。
关键词:OPC技术;建筑智能化;集成系统智能化特有的新颖建筑体系,集成了原有的分散设备,融汇各类信息。
依托微机网络,建筑细分出来的多重空间都被涵盖在完备的体系内。
依照这种思路,供应了便捷及高效的、舒适安全的新颖空间。
智能化范畴的集成体系,历经传统路径下的集散调控,进展至现有的总线管控。
然而,各类厂商制备出来的多样配件,存在拟定的接口差异。
这就缩减了彼此关联着的子系统性能,影响彼此互联。
为此,有必要探析新颖的集成体系,采纳OPC这一技术新思路,建构集成模型。
一、解析集成模式(一)中心集成框架BAS特有的集成体系,包含中心形式。
它紧密关联着安全管控、建筑火情警报,串联各类体系。
它增添了平日内的信息互通,联动控制模块,监管着FAS及体系内的SAS。
BAS设定了体系内的监控中心,以便联动微机。
这种途径优势,是运用特有的网关转化来衔接彼此的子系统。
然而,它也含有弊病:若BAS建构的中心凸显了故障,那么关联着的其他分支,都会失去控制。
工程建造中,中心系统特有的总构架还是偏复杂的。
子系统拓展出来的互联分支,关系着网络拓扑平常的稳定特性。
此外,体系开放状态也应被考量。
例如:布设的开放接口,是否可支撑OPC;是否配有明晰的协议[2]。
考量这些要素,这类模式很难采纳固定的架构来描绘。
结合真实状态,才可确认适宜的拓扑框架。
(二)平等集成框架集成体系衔接着多层级的子系统,它们彼此平等,同时彼此独立。
某一分支停机,不会干扰其他。
采纳开放接口,把存留着的实时数据变更为拟定好的某一格式,然后再次存留于数据库。
基于OPC的智能建筑系统集成软件接口技术及其应用

So t r n e f c c fwa e I t r a e Te hno o y a l g nd App i a i n o n e lg n lc to f I t l e t i
Bu l i g S se I t g a in Ba e n OPC i n y t m n e r t s d o d o
要: 阐述 了智能建筑软件接 I技术和 O C技术 的概念 , Z I P 就某智 能建筑系统 集
苏 玮 ( 9 9 ) 15 一 ,
成工程 , 详细说明 了运行在 E I 的 、 于 O C的组 件化集 成模式 的智能 建筑系统 集 B上 基 P
成接 口技术及其在工程中的应用。给出了运行在 E I B 上的} 防子系统软件接 口的开发 肖
S
( e igU i nvri ,B in 0 , hn ) B in no U iesy e ig10 1 C i j n t j 1 0 a
Absr c t a t:Th a i o c p s ft e ot r ne f e tc noo y o ntlie tbul i g a e b sc c n e t o h s fwa e i trac e h lg fi elg n id n nd OPC e hn lg t c oo y
不兼容 , 能直接 建 立连接 。因此 , 不 软件 接 口技 术
的研究 已成 为智 能建 筑 系统集 成 中必不 可少 的一 项 关 键技术 。 下面 就天 津某 智 能 建 筑工 程 , 细说 明智 能 详
个集 多厂 商 、 多协 议 和 各 种应 用 为 一 体 的体 系结
接 和信息 交换 。所 谓软 件接 口是 指一 个 能使智 能 化 系统 ( 为 主 系 统 ) 另 外 一 个 智 能 化 系 统 或 称 与 机 电设 备 ( 为 分 系 统 ) 间建 立起 通 信 连 接 的 称 之
楼宇自控系统集成中的OPC客户端软件开发

1 oP 系统构 成 C
O C以 0 E C M机制作为应 用程序 级 的通信标 准 , P L/ O 采用 客 户/ 服务器模式 , 把开 发访 问接 口的 任务放 在硬 件生 产厂 家或 第
O C 自动化 接 口( P L uo t n It f e ) P P O C O E A t i ne a s 。O C自定 义 mao rc 接 口是 O C服务器必须提供 的, O C自动化接 口则不一定提供。 P 而 P
系统 , 以来 没有建 立 国际性 的标 准通 信协议 , 得各 个设 备 长期 使
或子 系统不能无缝 地集 成 到一个 操作 平 台上来 。这 种局 面严 重 阻碍 了智能建筑技术 的发展 。在这种情 况下 , 把不 同厂家 的设 要
O C服务 器对象 除 了维 护 自身信息外 , P 还作 为组 对象 的容器 , 可 动态地创建或释放组对象 ; 而组对象相对 于项而言也 是一个 包容
施 。厕所 化粪 池必须做抗 渗处 理。城市 内施 工一般 规定 晚上 1 0
一
、
预防为主 ” 方针。 的
点至 清晨 6点不准 施工 , 如需 要在 此 时间段 施工 , 要建 设单 位 参考文献 : 需
三方厂家 , O C服务器 的形式提供 给用户 , 以 P 解决 了软 、 硬件厂商 的矛盾 , 完成 了系统 的集成 , 提高 了系统 的开放性 和互操作性 。
0 C技术是 以 Mir o 的 0 E C M 技术为基础建立 的一项 P c sf o t L/ O
筑 的主要 组成部分之一 , 智能建筑 通过楼宇 自动化 系统实现 建筑 物 内设备 与建筑环境 的全 面监控与管理 。 楼 宇 自动化系统应属过程控 制范畴 , 在楼宇 自动化 技术 发展 过程 中 , 由于历史 的原 因 , 各个 设备 制造 厂商 封 闭地 发展 自己 的
楼宇自动化系统集成中的OPC技术运用研究

现代物业Modern Property Management随着楼宇自动化技术不断发展,自动化系统规模也逐渐扩大,人们对系统各方面的性能要求也越来越高。
但是由于供应商所提供的设备不同,通信协议不统一,不同生产厂家的设备不能实现互通,难以相互融合进行统一操作和控制,是当前系统控制和信息网络集成中的很大难题。
那么要想强化楼宇自动化的水平,就要将这些相互独立的设备整合起来,进行协调控制,统一监管。
OPC技术能够很好的解决这些障碍,实现不同设备和系统之间的融合,为楼宇自动化系统集成开辟了新的途径,本文就楼宇自动化系统集成中OPC技术的应用进行分析和探讨。
1 楼宇自动化系统集成和OPC技术概述1.1 楼宇自动化系统。
楼宇自动化系统涉及的控制设备种类很多,测控点很分散。
必须对系统的交互操作性进行加强,运用更加成熟的技术,且尽可能降低系统应用的成本,以实现对建筑物内部所有机电设备进行全方位协调控制和统一管理,营造健康、安全、和谐的生活氛围。
随着科学技术的不断革新以及人们对技术和管理手段要求的提高,楼宇自动化必须通过网络系统集成和监控信息集成,来提升楼宇自动化系统的可靠性。
信息的集成,要依赖完整的网络监控管理平台,对各个子系统的实时数据进行收集和存储,发布在集成的网络系统上,能够满足资源和管理服务的共享需求。
此外,自动化系统具有人工操作的平台,能够应用在各个不同的领域,满足不同作业的需求。
1.2 OPC技术概述。
OPC技术是一种对数据进行交换与融合的集成技术,当前在国际上应用十分广泛,属于软件技术。
同时,OPC又是一种设备服务器的标准接口。
其应用目的是解决软件和各种设备驱动程序的通讯。
OPC对接口函数进行了规范,对于不同的现场设备,客户能够通过统一的途径实现访问。
此外,OPC提供一种即插即用的软硬件组件,使用户能够方便将现场总线、组态软件等软硬件设备集成为完整的自动化系统。
OPC包含客户机和服务器两个部分,是基于微软OLE/COM开发的技术。
基于OPC技术的建筑智能化系统集成研究

基于OPC技术的建筑智能化系统集成研究摘要:随着建筑逐渐朝向智能化的方向发展迈进,在目前的智能建筑当中,建筑智能化系统集成已经成为广泛热议的焦点,包括建筑物自动化系统在内的通信自动化和办公自动化系统构成了集成化的智能建筑系统。
文章立足于OPC技术,通过分析OPC技术的内容以及采集端、访问端等作为根本出发点,着重分析研究基于OPC技术的建筑智能化系统集成。
关键词:OPC技术;智能化系统;建筑工程引言建筑智能化系统集成,是将分散在建筑物内的各种设备以及信息点,在计算机网络的帮助下构成一个能够相互联通、可进行统一协调的系统,进而有效实现方便管理、提高管理效率,同时达到节省人力成本的目的,并为住户营造一个和谐良好的生活居住环境。
而随着时间的流逝,建筑智能化系统集成也从原来集散的控制系统发展成为现如今的现场总线控制系统。
文章将通过引入OPC技术,着重分析基于OPC技术下的建筑智能化系统集成。
1.OPC技术概述OPC是英文ObjectLinKingandEmbedeeingforProcessControl的缩写,也是在过程控制当中OLE即连接与嵌入部件对象的实际应用。
作为建立在OLE基础之上的一种通信标准,在OPC当中具有一套标准完整的接口、属性以及方法标准级,经常被用在自动化系统当中。
应用软件同过程控制设备间的数据读取、写入、传输等均可以通过OPC技术得以解决,在沿用传统的CliendServer模式基础之上,OPC将服务器定义为数据采集端,而Clicent则被定义为其他访问端。
在OPC的服务器当中主要由服务器、组以及数据项组成,其服务范围包括规范各种存储数据、报警、事件等。
2.OPC技术为建筑智能化系统集成开辟了新途径2.1采用统一通信协议,实现系统的集成建筑智能化系统属于多学科范畴,它涵盖了信息系统、自动控制和现代通信等领域。
在通信协议方面,由于长时间没有建立统一的、国际性的标准通信协议,这种局面严重阻碍了智能建筑技术的发展及向深层次推广应用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
楼宇自控系统集成中的OPC客户端软件开发
杜晓克魏运均
摘要:依据当前楼宇自动化系统集成的发展,介绍了OPC的相关概念、原理和运行机制,重点论述了楼宇自控系统集成中应用VC++来编写OPC客户端应用软件,从而实现了楼宇自控的开放化、集成化、信息化。
关键词:OPC,楼宇自控,系统集成,Visual C++
中图分类号:TU855 文献标识码:A 文章编号:1009-6825(201 1)36—0255—02
0 引言
楼宇自动化系统(Building Automation System,BAS)是智能建筑的主要组成部分之一,智能建筑通过楼宇自动化系统实现建筑物内设备与建筑环境的全面监控与管理。
楼宇自动化系统应属过程控制范畴,在楼宇自动化技术发展过程中,由于历史的原因,各个设备制造厂商封闭地发展自己的系统,长期以来没有建立国际性的标准通信协议,使得各个设备或子系统不能无缝地集成到一个操作平台上来。
这种局面严重阻碍了智能建筑技术的发展。
在这种情况下,要把不同厂家的设备和控制系统连接到一起是非常困难的。
OPC 就是在这种情况下产生的,它提供了一个标准接口,使得楼宇自控各子系统通过OPC客户接口与具有标准OPC服务器接口的现场设备实现数据交互,这种软件数据集成使得楼宇自控在真正意义上实现了开放化、集成化、信息化。
1 OPC系统构成
OPC以OLE/COM机制作为应用程序级的通信标准,采用客户/服务器模式,把开发访问接口的任务放在硬件生产厂家或第三方厂家,以OPC服务器的形式提供给用户,解决了软、硬件厂商的矛盾,完成了系统的集成,提高了系统的开放性和互操作性。
OPC技术是以Microsoft的OLE/COM技术为基础建立的一项技术规范与标准,它以组件对象模型和分布式组件对象模型COM/DCOM技术为基础,采用客户/服务器模型,定义了一组COM对象及其双接口。
OPC对象主要包括服务器(Server)、组(Group)和项(Item)。
OPC服务器对象除了维护自身信息外,还作为组对象的容器,可动态地创建或释放组对象;而组对象相对于项而言也是一个包容器,它提供一套管理项的机制;OPC项则表示了与OPC服务器中数据的连接,包括:值(Value)、品质(Quality)、时间戳(Timer Stamp)三个基本属性。
图1为OPC服务器结构图。
OPC标准中的接口主要有两种:客户端和服务器程序员所使用的OPC自定义接口(OPC COM Custom Interfaces)和支持用高端商业应用(如用Visual Basic,Delphi,Excel等)开发的客户程序的OPC自动化接口(OPC OLE Automation Interfaces)。
OPC自定义接口是OPC服务器必须提供的,而OPC自动化接口则不一定提供。
利用这两种接口与OPC服务器通信的方式见图2。
两种接口的OPC服务器通信方式对于客户端应用程序的开发,采用自定义接口的方式运行效率高,但开发难度大;采用自动化接口的方式运行效率低,但开发简单。
本文采用Visual C++高级编程语言通过定制接口的形式编写了OPC客户端软件。
2 OPC 客户端的编程实现
OPC客户程序访问OPC服务器,实际上就是一个典型的客户访问进程外组件的过程。
编写OPC客户程序的步骤可以概括为:指定服务器、建立OPC组、添加OPC项、接收数据、断开连接。
//创建OPC服务器对象,并查询对象的IID_IOPCServer接口
rl=CoCreateInstance(clsid,NULL,CLSCTX_LOCAL_SERVER,IID_IOPCServer,(viod**)
&m_IOPCServer);
//添加一个group对象,并查询IOPCItemMgt接口
rl=m_IOPCServer->AddGroup(L”grpl”,//[in]组名字
TRUE,//[in]是否活动状态
500,//[in]刷新率(毫秒)
1,//[in]客户句柄
&TimeBias,//[in]
&PercentDeadband,//[in]死区参数
LOCALE_ID,//[in]语言
&m_GrpSrvHandle,//[out]服务器句柄
&RevisedUpdateRate,//[out]服务器返回的刷新率
IID_IOPCItemMgt,//[in]需要的接口指针
(LPUNKNOWN*)&m_IOPCItemMgt);//[out]返回的需要的接口指针
//为AddItem定义item表的参数
m_Item[0].szAccessPath=L””;//不需要Accesspath
m_Item[0].szItemID=szItemID;//ItemID
m_Item[0].bActive=TURE;
m_Item[0].hClient=1;
m_Item[0].dwBlobSize=0;
m_Items[0].pBlob=NULL;
m_Items[0].vtRequestedDataType=0;//数据类型
rl = m_IOPCItemMgt->AddItems(1,//[in]添加1个item m_Items,//[in]前面定义&m_ItemResult,//[out]结果信息指针
&m_pErrors);//[out]错误码
//接收数据
OPCHANDLE*phServer;
OPCITEMSTA TE*pltemValue;
HRESULT*pErrors;
HRESULT rl;
UINT qnr;
if(m-pErrors[0]!=S_OK)//Item不可用
{AfxMessageBox(‘OPC Item 不可用,不能用同步读功能!’);
return;}
//内存分配
phServer=new OPCHANDLE[1];
//通过sever句柄选择item(由AddItem得到的)
phServer[0]=m_ItemResult[0].hServer;
rl=m_IOPCSyncIO->Read(OPC_DS_DEVICE,1,phServer,&pItemValue,&pErrors);
//释放内存
Detele[]phServer;
//释放服务器
m_IOPCServer->release();
m_IOPCServer=NULL;
3 OPC客户端软件实现
应用Visual C++编写的OPC客户端程序。
次程序即可与楼宇自控各子系统OPC服务器接口实现现场设备数据交互以及数据信息化集成。
4 结语
OPC技术的出现使得楼宇自动化各子系统之间实现了开放的无缝连接,在提高系统互操作性的同时,简化了系统集成环境,从软件层面解决了不同厂家的各种子系统和设备往往由于不具备标准的接口而存在可集成性的问题。
随着OPC规范的不断推出和完善,其在智能楼宇系统集成中的应用将会越来越广泛。
参考文献
[1] 周鸣,曲波基于OPC技术的楼宇自动化系统集成[J] 现代电子技术2006(9):99-101
[2] 蔡翔云,郑小虎,姜麟OPC规范及开发应用[J] 昆明理工大学学报,2002(6):73-74
[3] 陈丹,徐利梅OPC技术在楼宇自动化系统集成中的应用[J] 楼宇自动化,2007(2):62-63。