文档库 最新最全的文档下载
当前位置:文档库 › 风力发电监控系统的软件平台开发_王佳

风力发电监控系统的软件平台开发_王佳

机电工程技术2010年第39卷第11

期风力发电监控系统的软件平台开发

王佳,吕跃刚

(华北电力大学控制与计算机工程学院,北京102206)

收稿日期:2010-05-25

,设计了风力发电监控系统,实现该系统与SIMULINK 。采用虚拟仪器技术开发的监控系统用户界面友好、,体现了虚拟仪器的优越性。DSC 。

;虚拟仪器;DSC

文献标识码:A 文章编号:1009-9492(2010)11-0013-05

工业自动化

1引言

风能是一种清洁、储存量极其丰富的可再生能源,因

此风力发电已逐渐成为成熟而又重要的新能源。但由于风

速与风向随时变化且不可控,会影响所产生电能的稳定

性;且风电设备要承受来自恶劣风力条件下的十分不规则

的交变载荷,在野外运行,环境条件变化大,维修不便,

进而对其可靠性和自动控制方面要求很高[1]。因此,通过监控系统来监测和维护风电场的正常运行,实现风电机组的最优化运行、提高风能利用率,同时开发出高可靠性的智能型控制系统就极为必要。虚拟仪器(Virtual Instruments 简称VI )实质上就是利用最新的计算机技术来实现和扩展传统仪器的功能,真正实现由用户自己设计、自己定义,满足自己特殊要求的仪

器。虚拟仪器应用程序的开发平台有很多种,但用Lab-VIEW 作为虚拟仪器开发平台的最大优势是程序开发效率高,非常形象直观,用此来搭建风力发电的监视和控制界面,会使界面更直观、逼真、友好,进而方便操作人员的操作[2-3]。本文利用基于NI 公司的LabVIEW 软件开发平台的虚拟仪器技术,设计了一种风力发电机组的仿真系统,并将其分为两层,底层为以Matlab /SIMULINK 为基础的风电机组的仿真模型,上层为以LabVIEW 为基础的风电监控系统,本文主要研究上层的技术与开发工作,以及上层与底层之间的实时通讯。2风力发电监控系统底层Matlab 是一个技术性高能力强的编程语言,它的SIMULINK 模块能够方便的分析模型和模拟控制系统。

风力发电监控系统的底层主要利用Matlab 根据有关的控制策略,建立相应的SIMULINK 模型模拟风电系统从起机、并网到停机的整个风力发电的过程。图1表示利用Matlab /SIMULINK 搭建的风力发电模型。3风力发电监控系统上层(1)软件开发平台基础

本系统采用LabVIEW 作为软件开发平台基础,来设

计上层的风力发电监控系统。LabVIEW 是一个完全的、开

放式的虚拟仪器开发系统应用软件,利用它组建仪器测试

系统和数据采集系统可以大大简化程序设计。它使用图形

化程序设计语言G (Graphic ),用框图代替了传统的程序

代码,从而大大提高了工作效率。LabVIEW 程序设计实质上是设计一个的“虚拟仪器”,

即“VIs ”,它包括程序前面板(front panel )、框图程序

(block diagram )以及图标/连结器(icon /connector )三部

分。

程序前面板是VI 的交互式用户接口,与真实物理仪

器面板相似。前面板可以包含旋钮、刻度盘、开关、图表

和其它界面工具,允许用户通过键盘或者鼠标获取数据显

示结果。在程序前面板上,用户的输入通过control 的输入

控件实现;程序运行结果的显示通过indicator 的输出控件

实现。程序的控制和结果的显示是通过各种图标的形式在

前面板上表示。

框图程序用LabVIEW 图形编程语言编写,可以把它

理解成传统程序的源代码,也可以类似等效成传统测试仪

机电工程技术2010年第39卷第11

工业自动化器的内部电路。它由端口、节点、图框和连线构成。其中端口用来程序前面板的控制和显示传递数据;节点用来实现函数和功能调用;图框用来实现结构化程序的控制命令,如循环控制、事件控制等;连线用来代表程序执行过程中的数据流,定义了数据流的方向,且不同的数据类型用不同的颜色的连线来代表。

图标/连接器的功能就像一个图形化参数列表,可在VI 和SubVI 之间传递数据。一个VI 既可以作为上层独立程序,也可以作为其它程序(或子程序)的子程序。图标是子VI 在其它程序框图中被调用的节点表现形式;而连接器则表示节点数据的输入/输出口[3-4]。(2)LabVIEW 的功能模块-DSC 模块DSC 模块即数据记录和监测控制模块(Datalogging and Supervisory Control Module )是LabVIEW 附加的用于开发人机界面(HMI )/数据采集(SCADA )系统或高信道数据记录的应用程序。它扩展了LabVIEW 的图形化开发功能,增加的功能模块可快速开发应用于交互式分散监测、控制系统和报警程序而无需自行编程。DSC 模块增强了LabVIEW 的共享变量的功能,使用共享变量在LabVIEW 项目下的不同VI 之间存取和传输数

据。一个共享变量可代表一个数值或一个I /O 接口。通过DSC 模块,就可以自动方便的存储数据,对共享变量添加

报警,限定范围和进行安全设置等操作,也可通过编程来对共享变量进行配置。DSC 模块还提供了历史或实时趋势曲线的工具包,加强了前面板的安全性,并可自定义I /O 服务器。可以从OLE 中读写数据来实现与OPC 的连接,与PLC 的连接或者是与自定义的I /O 服务器的连接。通过LabVIEW 的图

形化编程,DSC 模块也可以解决

分散系统监控的开发问题。

1)共享变量引擎(SVE )

共享变量引擎(SVE )是一

个使网络发布的共享变量能够过

网络传送数据的软件框架。在

Windows 下,LabVIEW 配置SVE

为一个服务器,并在系统启动时

引导SVE 启动。对实时目标,

SVE 是一个随系统开机加载的可

安装启动组件。为了使用网络发

布的共享变量,SVE 至少需要在

分布系统中的一个节点上运行。

网络上的任何节点都可以读写

SVE 发布的共享变量。只有安装

SVE ,节点才可以引用到一个变

量。如果需要根据应用需要在不

同地点部署共享变量,也可以在

多个系统中同时安装多个SVE 。

2)共享变量LabVIEW 可以创建三种类型的共享变量:单进程,网络发布,以及时间触发的共享变量。在本系统中,用的是网络发布类型的共享变量。网络发布的共享变量的通讯是依靠NI-PSP 通讯协议来完成的。NI Publish -Subscribe Protocol (NI-PSP )是用于传输网络共享变量的优化网络协议,是一个支持在LabVIEW 中进行快速可靠数据传输的

所有权通讯技术。网络发布的共享变量通过共享变量引擎(SVE )在不同的VI 之间通讯。共享变量引擎利用NI-PSP 数据传输协议来允许用户读写数据。创建一个共享变量时,需要右键点击一个计算机设备,如项目树中的″我的电脑″或实时目标,并选择新建>>变量来显示共享变量属性对话框。在对话框中可对新的变量进行具体配置。必须在一个打开的项目中创建共享变量。若右键点击一个不在项目库中的目标或文件夹,LabVIEW 会自动创建一个新的项目库并将共享变量包含在其中。在项目中添加共享变量时,需要在项目浏览窗口中右键单击一个目标,一个项目库,或者项目库内的一个文件夹,在快捷菜单中选择新建>>变量来打开共享变量属性对话框。配置各个选项,之后单击确定按钮。LabVIEW DSC 模块对网络发布的共享变量新增如下

功能:①NI 总数据库的历史记录;②联网报警和报警记录;

③缩放;

④基于用户的安全;

⑤初始值;

⑥创建自定义I /O 服务器;

机电工程技术2010年第39卷第11

期⑦共享变量中集合Lab-

VIEW 的事件结构功能;

⑧编程控制共享变量各个方

面和共享变量引擎的LabVIEW

VI ,这些VI 特别有利于管理大

量共享变量。

3)Citadel 数据库

Citadel 是一个网络,多客户

的数据库。DSC 模块将共享变量

的数值变化存储到Citadel 数据

库。它存储历史数据,报警数据

和事件,可以利用历史数据观测

器或历史VIs 来进入和观测

Citadel 里的数据。

使用历史数据观测器可以观

测到存入Citadel 数据库的数据。

选择工具>>DSC 模块>>观测历

史数据来打开Measurement &

Automation Explorer (MAX )。然

后展开历史数据目录,选择显示

在Citadel 5Universe 下的一个数据库来观测数据。

利用共享变量监测器可以观测到一个共享变量的实时数据以及它的状态和报警状态。选择工具>>DSC 模块>>监测变量来打开共享变量监测器。

(3)风力发电监控系统的上层

本平台采用LabVIEW+DSC 模块来开发上层风电监控系统。图形化的编程不仅使开发人员易于操作,节省开发时间,而且DSC 模块本身所自带的扩展功能能有效地提高开发效率,并方便地完成数据记录,数据存储,数据分析和数据计算等方面的操作。其支持多线程运行的特性又可以大大提高系统程序的运行速度;专业的工业设备与仪器图库可以最大限度的帮助设计友好的监控画面;独有的共享变量技术还可以高效的帮助实现与其他软件或是硬件的通讯,因此添加了DSC 模块的LabVIEW 非常适合用来开发风电机组仿真系统中的上层风力发电监控系统。

(4)LabVIEW 与Matlab 的实时通讯LabVIEW 附加的Simulation Interface Toolkit (SIT)软件工具包提供了一种方法能创建和SIMULINK 模型连接的LabVIEW 用户界面(如图2)。在结合了SIMULINK 和Re-al-Time Workshop 和LabVIEW 的功能后,Simulation In-terface Toolkit 能够帮助将Simulation 模型导入LabVIEW 中。为了让LabVIEW 能成功和SIMULINK 模型通讯,必须先打开Matlab 来启动SIT 服务器。SIT 服务器能帮助成功连接LabVIEW 和MATLAB 。

在这个SIMULINK 模型中,SIMULINK 利用Math-Works Real-Time Workshop 一起来完成对实时应用的要求,首先,将仿真停止时间设为无限值,这样仿真就会一直进

行到人为停止它。然后,在系统输入量与输出量的端口分别添加已经设置了模型仿真的具体步长的Analog Input 和Analog Output 模块来延长仿真时间。最后,在模型中放置NI 探针来监测输出信号。(5)风力发电仿真上层与下层的通讯为了能用LabVIEW 用户界面来监控SIMULINK 风电模型,需要创建LabVIEW 监控界面来指示所有关于风力发电仿真过程中的重要数据。选择Tools>>SIT Connection Manager 来启动SIT Con-nection Manager 对话框。在标签Model and Host 下,点击Change 按钮来加载mdl 文件:vscf.mdl ,即风力发电系统的SIMULINK 模型。设置Simulation Environment 为local-host ,将Port 设置为6011来确立LabVIEW 与SIT 服务器的连接。之后,前面板所有的指示器和控件就出现在Map-pings 栏中(如图3)。

工业自动化

机电工程技术2010年第39卷第11

在加载了SIMULINK 模型后,需要指出LabVIEW 中的控制器和指示器将要响应哪些SIMULINK 模型中的模拟量。因此还要在图4所示的Mappings 对话框中对它们建立一一对应的连接。在完成连接设置后,程序框图中会自动生成如图5所示的图形化程序。框图程序初始化了仿真的基本信息,定义了LabVIEW 的指示器,控制器和SIMULINK 的操作单元、输出数值的关系。当改变了前面板控制器的数值,框图程序会将新值传递给SIMULINK 模型。在框图程序接收到SIMULINK 模型的更新数据时,会将数值显示在相应的LabVIEW 指示器中[5]。(6)创建风力发电监控界面从DSC Module>>Image Navigator 中选择合适的设备图形[6]来设计风电系统的结构图。对前面板的控件使用数据绑定后,改变控件的值就改变了与其绑定的共享变量的值。在VI 运行时,如果成功连接到SVE ,则在VI 的前面板对象旁边会出现一个绿色指示。选择工具>>共享变

量>>前面板批量绑定配置,打开了前面板批量绑定配置对话框,来创建一个绑定多个输入和显示控件到共享变量的用户界面。1)主监控界面

主监控界面如图6所示是用来快速监测风电系统状态的。该界面实现了四个功能:第一,数据采集并显示:成功与SIMULINK 模型通讯并采集到实时数据,从图6中可以看到所有数据已经从模型中被实时准确的读取并显示;

第二,数据储存:仿真系统读取信号量,同时将被显示的数据存入数据库中;第三,操作:监控界面上的操作按钮可以向SIMULINK 模型下达运行/暂停/停止等命令来控制

风电模型系统,操作者还可以通过一些其他按钮来查看各种信息,如历史数据曲线、统计数据和报警事件;第四,数据传递:因为主监控界面需要向其它子界面实时传输数据,所以在每一个指示器的右上角有一个三角形的标签来指示数据通讯的情况。绿颜色表示通讯良好,红颜色表示通讯失败。如所有的三角标签都显示为绿色,表明所有数据通讯都已成功。

在报警操作中,选取的是

对温度的报警,监测风力机的

各个部分的温度是否超过额定

的最大值。在共享变量的属性

对话框必须要选中Enable Alarming 标签,不然的话共享

变量是不会产生报警的。选择

Enable Alarming 标签,对共享

变量的报警进行设置。选择一

个合适的报警类型。一个真正

的报警是当报警发生时,需要

人工确认来保证用户注意到了

报警(如图7)。

2)电力参数监测界面

电力参数监测界面是为了

工业自动化

机电工程技术2010年第39卷第11

期观测发电机和电网的实时状态。如图8所示,可以看见实时数据已经从主监控界面传输到了电力参数监测界面,绿色的三角标签证明了通讯良好。根据程序框图中的公式计算得出发电量的数据和统计数据。界面中的曲线显示了定子有功、定子无功、功率因数和两相电压,通过这些曲线可以方便、清楚、直观的监测发电过程的特性变化。

3)历史数据曲线查询界面

图9显示的是历史曲线查询界面。通过该界面可以从数据库中查询过去任一时间段的历史数据。该程序可以完成以下功能:数据查询和多参量的历史曲线显示。①数据查询:先选择查询的时间段,再在数据名称或数据列表标题下点击下拉按钮,选择要查询的参量,最后点击查询或显示按键即可观测到历史数据或曲线。②多参量的历史数据和曲线显示:不同参量的曲线以不同颜色来显示,同时可以通过控制游标指示曲线上任何一点的数据,当把鼠标放在图表中的游标上时,上方的游标显示窗口会显示当前游标指示的点的数据;保持点击左键并移动鼠标,会发现游标在曲线上滑动,相应的显示的数据也在变化。除了利用鼠标也可以点击游标控制器来控制游标。通过这个界面程序设计可以方便快捷准确的进行历史数据查询和曲线显示。

4结论

本文开发的实时风力发电监测系统高效可靠的完成了从SIMULINK 模块的实时数据采集、数据分析、储存和查询功能。并在DSC 模块的帮助下优化了仿真系统,使得此系统使用方便,传输高效,功能完善,相对于使用简单版本LabVIEW 开发的监控系统有了很大的进步。LabVIEW SIT 与MATLAB real-time workshop 的成功结合运用解决了LabVIEW 与SIMULINK 实时通讯的问题。此外,共享变量技术在不同VI 之间通讯与实时数据存储方面发挥了重要的作用。

参考文献:

[1]芮晓明,柳亦兵,马志勇.风力发电机组设计[M ].北京:

机械工业出版社,2010.

[2]雷振山,赵晨光,魏丽,等.LabVIEW 8.2基础教程[M ].

北京:中国铁道出版社,2008.

[3]杨乐平,李海涛,杨磊.LabVIEW 程序设计与应用[M ].北

京:电子工业出版社,2004.

[4]孙守江,姚国兴.风电电能质量监测系统的设计[J ].机电

工程技术,2007,36(5):32-33.[5]李迺璐,吕跃刚,范晓旭.基于LabVIEW 风电监控系统的通信设计与实现[J ].计算机应用与软件,2010(5):30-33.[6]Johnson G W ,Jennings R.LabVIEW graphical programming

[M ].New York:McGraw-Hill ,2006.

第一作者简介:王

佳,女,1986年生,吉林人,硕士研究生。研究领域:风电机组仿真系统模型通信及人机界面的研究与开发。(编辑:吴智恒)!!!!!!!!!!!

工业自动化

相关文档