历史上的今天
返回首页

历史上的今天

今天是:2025年04月01日(星期二)

正在发生

2021年04月01日 | 基于发电机励磁调节器实现发电机故障录波系统的设计

2021-04-01 来源:eefocus

1.引言

发电机是电力系统的重要组成部分,它的可靠运行对于保证电力系统的稳定具有重要意义。发电机故障录波装置所记录的数据为工作人员正确分析发电机故障原因,研究事故对策,及时处理事故提供了可靠的依据,同时,根据故障录波数据还可以分析系统的故障参数、各电气量的变化规律,进行故障定位等,这些对于保证电力系统的安全可靠运行起着十分重要的作用。可编程控制器(Programmable Logic Controller,简称PLC)作为工业控制专用的计算机,由于其结构简单、性能优良,抗干扰性能好,可靠性高,在机械、化工、橡胶、电力等行业工业控制现场已日趋广泛地得到应用,成为工控现场进行实时控制的最主要的控制装置。本文介绍一种利用可编程控制器和扩展模拟量模块实现发电机故障录波的方法。


2. 系统的组成和工作原理

系统的组成框图如图1所示,由上位计算机和1套PLC测控系统组成。PLC通过外部变送器、互感器与发电机组相连,发电机机端电压U、定子电流I为三相交流电,分别经电压互感器(PT)和电流互感器(CT)转换成三相100V、5A的二次信号,发电机转子励磁电流经过分流器RS转换成75mV信号,再经过三相功率(含有功、无功)变送器、三相电压变送器、直流电流变送器转换成与其成比例的0~10V电压信号后输入到PLC的模拟量模块。模拟量经过A/D转换,然后根据互感器、变送器的变换比例计算出机端电压U、转子电流If、有功功率P和无功功率Q的等机组运行量。PLC每隔20毫秒采样一次,每40毫秒将采样的数据保存到故障数据区中。当发生故障后,PLC记录下故障发生以后的13秒数据,故障数据记录过程结束。当PLC接收到上位机发送来的传送命令时,PLC将记录的故障数据通过串口通讯传送给上位机。上位机将数据完整的接收下来,经过数据处理显示出机组运行量U、If、P、Q、Ug(电压给定)在故障前7秒、后13秒的波形曲线,这样就可以对发电机故障进行分析了。在本系统中,PLC选用SIMATIC S7-226;模拟量模块选用与S7-226配套的产品EM235LC与计算机之间通过PC/PPI电缆连接以串行方式进行通讯。

 

图1 发电机故障录波系统框图

 

3. 下位机程序设计

PLC属于下位机,其程序共分为3个模块,它们是初始化子程序、录波子程序和通信子程序。以下将分别说明各模块的设计思想。

 

3.1 初始化子程序

初始化子程序包括初始化自由口通信参数,设置接收命令RCV启动和结束条件,数据指针赋初值,连接20ms采样、接收和发送中断。

 

3.2 录波子程序

录波子程序在20ms采样中断中调用,负责记录机组运行量U、If、P、Q、Ug在故障前7秒、后13秒的数据。

 

在PLC中定义一个连续的数据区VW4000~VW8998,用来保存故障数据。每个运行量的数据占用1000字节的数据块,地址分配如下,U:VW4000~VW4998 If:VW5000~VW5998 P:VW6000~VW6998 Q:VW7000~VW7998 Ug:VW8000~VW8998。

 

录波子程序每隔40毫秒将采样的数据送到各自的数据块中。为每个数据块定义一个数据指针,其初始值分别指向各数据块的首地址。每传送一次数据,各指针向下移动2字节。故障前7秒数据(350字节)是循环记录的,即如果在故障到来之前数据已存满,各数据指针将重新指向数据块的首地址。定义指针index用来记录20秒故障数据开始的位置。当故障到来时,数据指针指向故障后13秒数据(后650字节),此时指针index将前7秒数据分为前后两部分,正确的顺序是将前后两部分交换过来。当后13秒数据记录完后,录波子程序结束。程序流程图如图2所示。

 

3.3 通信子程序

通信子程序负责与上位机通信,将存储在数据区的故障数据通过串口分批传送给上位机。上位机每发送一次传送命令(用整数255表示),PLC在接收中断程序中判断收到的字符是否为传送命令,如果是则将传送命令标志M6.0置位并且在主程序中调用通信子程序。

 

定义指针tran_pointer用来指向待传送数据的首地址,其初值为&VW4000,即指向数据区首地址。定义变量count用来记录传送的次数。在通信子程序中,首先停止自由口的接收,然后将以指针tran_pointer为首地址,大小200字节的数据传送到发送缓冲区中,接着用发送命令通过串口发送出去。每发送一次数据,将指针tran_pointer向下移动200字节,变量count值加1, M6.0复位。当上位机发送完第26次传送命令时,PLC中数据区VW4000~VW8998的5000个字节已发送完毕,再将额定电压、额定电流、额定有功功率、额定无功功率和指针index发送出去, count值清零,指针tran_pointer重新初始化,M6.0复位。至此,一次完整的故障数据传送过程结束。

 

图2. 录波子程序流程图

 

4. 上位机程序设计

上位机程序设计是以Visual Basic 6.0 为平台,利用MS Comm控件,以事件驱动方式实现计算机与PLC之间串行通讯,完成数据间的交换。上位机程序包括用户界面设计、通讯和数据处理程序、显示程序等。

 

4.1 用户界面设计

本系统中,设计了两个窗体(Form1和Form2)。其中Form1为主界面,Form2为波形显示界面。在Form1中设计了一个MSComm控件、一个定时器控件(Timer1)和两个按钮控件(Command1和Command2)。其中Command1是开始按钮,即按下时开始和PLC通讯,读取其中的数据。Command2是显示按钮,即按下时调用窗体Form2,显示每个运行量的波形曲线。在Form2中设计了一个图片框控件(Picture1),用来显示图形。

 

4.2 通讯和数据处理程序设计

设置Timer1 的Interval属性等于500,MSComm的InputMode属性为二进制方式,RThreshold属性等于5010。定时器每隔500毫秒发送一次传送命令,当发送到第26次时,关闭定时器,这时接收缓冲区将收到5010个字节的数据并触发MSComm的OnComm事件。在OnComm事件子程序中,将接收缓冲区中的数据依次分配到全局数组U_data、If_data、P_data、Q_data和Ug_data中,再根据各运行量的额定值计算出百分比值。各个数组的前350字节需要根据指针Index进行调整,具体方法是将数组下标范围Index~349的数据移到前面,下标范围1~Index-1的数据移到后面。

 

4.3 显示程序设计

在窗体Form2的装载事件Form_Load中编写图形显示程序。首先在图片框控件Picture1中设置自定义坐标系。设置ScaleMode属性值等于3,即以象素为度量单位。然后在该坐标系下画出坐标轴。X轴以秒为单位,曲线上两点间的时间间隔是40毫秒,换算成象素等于1.47。Y轴以百分比为单位,每个单位刻度换算成象素等于2.1。最后根据数组U_data、If_data、P_data、Q_data和Ug_data分别画出相应运行量的波形图。以机端电压波形为例,给出编写的程序如下:

Picture1.DrawWidth = 1 ‘线宽为1

Picture1.CurrentX = 0 ‘指定当前坐标的位置

Picture1.CurrentY = U_data(0) * 2.1

For i= 1 To 499 ‘画出曲线

Picture1.Line -(1.47 * i, U_data(i) * 2.1), vbBlue

Next i

 

5. 系统的运行与实验结果

在系统运行前,要对PLC的通讯参数进行设置,包括波特率、校验方式、数据位位数和停止位位数等,此设置要和上位机一致。在S7-226中使用自由口模式和上位机进行串口通信时,可以通过特殊寄存器SMB30(端口0)或SMB130(端口1)来设定。下面以发电机空载停机实验为例说明系统的运行过程。

 

当发电机在正常空载下停机时,PLC检测到停机信号,将故障标志置位,然后记录下停机后13秒的数据。运行上位机程序,在主界面上按下“传送”按钮后,上位机开始读取PLC中数据。等到程序提示“数据传送完毕”后,按下“显示”按钮,将弹出“波形显示”窗口如图3所示。从图中可以看出,该曲线较好的反映了发电机停机前后机端电压、励磁电流的变化。

 

图3 波形显示窗口

 

6. 结束语

此系统已经成功应用于中、小型同步发电机励磁系统中,通过发电机的动态模拟实验和实际中的应用来看,该系统性能可靠、操作方便、界面友好,能够较好地满足电力系统对于故障记录、故障分析的需要。

 

一般情况下,采用微机控制或以微处理器为内核的工业嵌入式发电机励磁调节器较容易实现发电机运行参量的故障录波,采用PLC作为发电机励磁调节器的硬件平台,具有应用成本低、运行可靠性高但程序设计难度大的特点,其内部成功地嵌入发电机重要运行参量的故障录波具有较大的实用价值,尤其适用于目前大量开发的中小型水力发电站的水轮发电机组,对于保证发电机组的安全、稳定、可靠运行具有重要的意义。


推荐阅读

史海拾趣

Baumer Electric Ag公司的发展小趣事

随着公司规模的不断扩大和市场竞争的加剧,Baumer Electric Ag开始实施国际化战略。1979年,公司加大了出口力度,积极开拓海外市场。1980年,堡盟在法兰克福成立了堡盟电气有限公司,进一步扩大了在欧洲市场的影响力。此后,公司陆续在全球各地设立子公司和分支机构,形成了覆盖全球的销售和服务网络。

Fillfactory Nv公司的发展小趣事

FIDELIX公司成立于1990年,是一家专注于存储芯片研发与销售的韩国企业。在公司成立初期,FIDELIX凭借对技术的深入研究和对市场的敏锐洞察,成功推出了多款性能优越的NAND FLASH(闪存)和SDR/DDR(单/双数率同步动态存储器)等存储芯片产品。这些产品不仅在韩国市场上获得了良好的口碑,同时也开始逐步进入国际市场。

随着技术的不断进步和市场的不断扩大,FIDELIX逐渐在韩国存储芯片领域崭露头角。公司不断投入研发资金,加强技术创新,努力提升产品的性能和品质。同时,FIDELIX也积极拓展销售渠道,与多家国内外知名厂商建立了合作关系,为公司的持续发展奠定了坚实的基础。

Comtech AHA Corp公司的发展小趣事

在电子行业快速发展的背景下,Comtech AHA Corp敏锐地洞察到了物联网、5G等新兴领域的市场潜力。公司及时调整战略方向,加大在这些领域的研发投入,推出了一系列符合市场需求的新产品。凭借精准的市场定位和优质的产品质量,Comtech AHA Corp成功抓住了市场机遇,实现了业务的快速增长。

Bellin公司的发展小趣事

随着国内市场的饱和,Comtech AHA Corp开始积极寻求国际化发展。公司先后在多个国家和地区设立了分支机构,拓展国际市场。通过与国际知名企业的合作与交流,Comtech AHA Corp不断提升自身的技术水平和市场竞争力。如今,公司的产品已经远销海外多个国家和地区,国际化战略取得了显著成效。

CYANLITE公司的发展小趣事

在XXXX年,CYANLITE公司迎来了一次重要的技术突破。他们成功研发出了一种新型的LED芯片,这种芯片具有更高的发光效率和更长的使用寿命。这一技术的突破使得CYANLITE公司的产品在市场上更具竞争力,公司也借此机会进一步扩大了市场份额。随着品牌知名度的提升,CYANLITE公司开始拓展国际市场,其产品逐渐出口到欧洲、北美等地区,公司的业绩也实现了快速增长。

兵字(BingZi)公司的发展小趣事

为了进一步提升公司的管理水平和市场竞争力,兵字公司决定进行企业规范化和市场化运作。公司建立了完善的管理体系和运营机制,优化了业务流程和组织结构,提高了工作效率和响应速度。同时,兵字公司还积极引进外部投资和战略合作伙伴,为公司的发展注入了新的活力和动力。

问答坊 | AI 解惑

IC购买时对假冒翻新货的识别

从网上找的识别大法,看看对大家有没有帮助。 我一般不会去柜台购买,都是从渠道商和代理商拿货。…

查看全部问答>

问题解决了啊---Keil MDK,RDI调试出现程序乱跳

今天早上5点中突然醒了,好像有个概念不知道什么时候出现在我大脑------编译器代码优化。前两天一直解决不了的程序乱跳和代码优化有没有关系,立马翻看工具手册提到了4种代码优化级别,编译器默认最好的优化,最好的优化,是最差的调试视图。我改了 ...…

查看全部问答>

串口接收缓冲区故障

我现在在调试RFID射频卡的一个程序,我向模块(功能用于读写卡)发送一个读卡命令,通过串口调试助手接收一切都正常。正常发送的读卡命令为15个字节,返回的数据应该为26个字节。而我通过自己的程序实现该过程时,发送的字节为正确的15个字节,但在 ...…

查看全部问答>

零基础学单片机视频教程——04讲 中断仿真实例

零基础学单片机视频教程——04讲  中断仿真实例     51系列单片机总共提供了5个中断源,包括2个定时中断源、2个外部中断源和1个串行中断源。部分增强型的单片机还提供了更多的中断源。本讲在程序中分别定义了外部中断0和1的 ...…

查看全部问答>

CXimage类库

请教大侠们,我下载了一个CXimage库代码,但是加入到EVC工程中后,提示:fatal error C1083: Cannot open include file: \'errno.h\': No such file or directory,请问一下,我怎么将这个代码移植到EVC下面编译啊?谢谢。…

查看全部问答>

WINCE打印问题?求解

我的WINCE系统 可以PING通局域网内其他PC的IP 但是 连接外网的时候就不行, 我主要是想在局网内打印(特性目录中PCL Print driver添加进去了) ,打印IE浏览器的时候 点 file/print 没反应!  我用的是HP的激光打印机支持PCL的!是不是 ...…

查看全部问答>

请问:我在运行evc的工程时,提示我说sdk 不能运行在emulator device,这是什么原因呀?

错误为: an application targeting a Standard SDK for Windows CE.NET and built for the MIPSII_FP CPU cannot be run on the Emulator device.In order to run this application on any CPU other than the Emulator,you will have to install ...…

查看全部问答>

MAX8790A LED 驱动芯片使用详解

MAX8790A LED驱动芯片特点:   最多可以驱动6串多个LED串联的的灯; 每串LED间电流差别在+—1.5% 外部连接MOSFET 允许若干LED串联; 开路与短路LED保护 输入电压4.5~26V   典型电路:   电路工作简单,如果使用不是6 ...…

查看全部问答>

8962不能调试

我用IAR v6.0编译下载EasyArm第四章实验程序的bootloader例程到EasyArm8962开发板上,但是下载后没有出现实验指导书上的结果。再试其它的程序(原来都成功了)时,IAR一进入调试就死机了,死得非常彻底,我等了近二个小时也没有提示出现。 请问这 ...…

查看全部问答>

用stm32l152芯片控制mma7455l遇到的一个问题!

我使用stm32l152模拟IIC接口控制mma7455l加速的传感器。 iic驱动程序,对加速的传感器的0x16控制寄存器的访问是完全正确,例如先向0x16寄存器写入0x45,然后可以正确的读取到0x45。 但是读取数据寄存器0x06、0x07、0x08和地址寄存器0x0d的时候却不 ...…

查看全部问答>