西门子模块6ES7214-2AS23-0XB8现货充足
为了改善发电机励磁控制系统的动态调节品质,运用模糊规则设计了一种发电机励磁系统的模糊控制器,并给出了基于西门子可编程逻辑控制器(PLC)的模糊控制器的实现方法。仿真和试验结果表明,控制器在改善发电机励磁系统的动态行为上具有突出的优势,对工程应用有实用价值。
0 引 言
目前,工业控制中使用为广泛的仍是典型的PID控制,主要是因为这种控制策略结构简单,且具有一定的鲁棒性。但在实际的情况中,常规PID调节器固化的一组参数难以满足其调节品质的要求,因此,研究和改善现有的控制方式显得尤为重要,并具有实用价值。模糊控制作为一种智能控制方式,在工业控制中逐步得到了应用。模糊控制主要用于克服由于过程本身的不确定性、不jingque性和噪声带来的控制问题,因而在处理发电机组励磁模型参数的不确定性、复杂性和非线性方面具有突出的优势。因此,模糊控制技术很适合应用于发电机励磁控制系统中。
模糊控制技术己经成为当前研究者们较为关注的热点。但在发电机励磁系统,将模糊控制技术应用于控制器的设计却很少,相关的资料论文也很有限,在模糊控制大力发展和应用日益广泛的做一些这方面的探讨是有益的。
1 发电机励磁模糊控制系统组成
1.1 模糊控制系统的一般结构
模糊控制属于计算机智能控制的一种形式,模糊控制系统的结构如图1所示。
图1 模糊控制系统的一般结构
它的核心部分为模糊控制器,模糊控制器的规则可由程序实现,规则是来自于人的经验形式化、模拟化。同时,应用相应的模糊判据,将其转化为jingque量,实现对被控制对象的控制作用。
常用的模糊控制器有一维、二维和三维模糊控制器,其中典型的是二维模糊控制器。二维模糊控制器是用系统输出的偏差e和输出的偏差变化率Δe作为控制系统的输入量。在实际模糊控制系统中,需要先构造模糊控制表,模糊控制表是根据系统的输入输出个数、隶属函数及控制规则等决定。
1.2 发电机励磁系统数学模型的建立
1.2.1 同步发电机的传递函数
同步发电机的传递函数相当复杂,这里只研究发电机空载起励的过程,因此,可对发电机的数学描述进行简化。在转速为额定转速时,同步发电机的传递函数可以用一阶滞后环节来表示。电压大值在额定电压的附近,因此,该过程中可以忽略饱和现象,故同步发电机的传递函数为:
TG表示其时间常数,主要为励磁绕组EW的时间常数,其数值较小,取5s,KG为发电机的电压放大系数,当忽略发电机的饱和影响时,KG可用发电机的定子电压和发电机空载额定转子电压之比表示。
1.2.2 电压测量单元的传递函数
电压测量单元由测量变压器、整流滤波电路等组成,作用是把发电机机端电压变成与之成正比的直流电压,在正常情况下,电压互感器和测量变压器均不会饱和,可近似用一个一阶滞后环节来描述。
式中,其时间常数TR约为几十毫秒,KR=UCHE/UGE,UCHE为对应UGE时测量单元的输出电压。
1.2.3 功率放大单元的传递函数
调节器中的功率放大单元是晶闸管调节器,由于晶闸管整流元件工作是断续的,所以它的输出与控制信号间存在着时滞。
式中:UL——晶闸管整流电路的输出电压;
ULK——晶闸管整流电路输出开路时的输出电压;
UHK——换相电抗形成的输出电压降;
UT——晶闸管整流元件的电压降(每只晶闸管的管压降约为1V,在分析励磁系统时一般情况下可忽略不计)。
发电机励磁控制系统一般都有非线性环节,这就要进行线性处理。线性处理时,首先要确定在哪一点线性化,也就是首先要确定系统各环节的定态工作点,然后假定在整个运行过程中各环节的输入量和输出量在定态工作点附近变化的值一直保持很小。这样就可以把本来是非线性的环节近似地当成线性环节对待。分析发电机励磁自动控制系统,一般假定发电机在空载额定状态(即发电机空载额定转速额定定子电压)运行时各环节对应的输入、输出为定态工作点,而且励磁系统的输入信号只有很小变化。同时考虑到发电机空载运行时励磁电流较小,晶闸管整流电路的换相电抗压降不大,也可忽略。
因此功率放大单元的传递函数可以简化为:
因此,励磁系统总的传递函数框图如下图2所示。
图2 发电机励磁系统传递函数
2 基于西门子PLC的模糊系统设计
目前,各PLC生产厂家推出的中、小型PLC模块虽然提供了PID指令,可以实现PID控制,但是都没有提供模糊控制模块和软件包。为了获得模糊PID控制特性,本文提出了一种在不增加任何PLC硬件开销的情况下,通过软件编程在PLC上实现模糊控制的新方法。
2.1 输入输出的模糊集与论域确定
各变量隶属函数的确定根据PID自整定原则,用于PID参数控制的模糊控制器采用2输入1输出的模糊控制器,该模糊器是以e(t)和Δe(t)为输人语言变量,以控制电压U为输出语言变量。
e(t)和Δe(t)的模糊子集取值为:
e(t) ={PB,PM,PS,PO,NO,NS,NM,NB};
Δe(t) ={PB,PM,PS,O,NS,NM,NB}。
其中,{PB =“正大”,PM =“正中”,PS =“正小”,PO =“正零”,O =“零”,NO =“负零”,NS =“负小”,NM =“负中”,NB=“负大”}
控制电压U的模糊子集取值为:
U ={ -7,-6,-5,-4,-3,-2,-1,0,+1 ,+2,+3,+4,+5,+6,+7};
模糊子集为:“负很大”、“负较大”、“负大”、“负中”、“负小”、“负较小”、“负很小”、“零”、“正很小”、“正较小”、“正小”、“正中”、“正大”、“正较大”、“正很大”。
采用阶跃信号作为输入信号,根据模糊控制器的原理,选择其输入(e(t)、Δe(t))输出(U)。取e(t)、Δe(t)、U的论域和模糊子集可得到隶属度曲线,图3、图4为变量e(t)与Δe(t)所对应的曲线。
图3 e(t)隶属函数曲线
图4 Δe(t)隶属函数曲线
2.2 模糊规则设计
模糊规则来自于人的经验,根据实际经验规则可以得出U的调节规则表如表1所示:
表1 模糊控制规则表
2.3 基于PLC的模糊控制器设计
微机上实现模糊控制一般采用3种方式:强度转移方式、直接查表方式和公式计算方式。要想在PLC上实现模糊控制,考虑到PLC运算能力较差,宜采用直接查表方式。
在设计中,选用西门子公司的S7-200型PLC,利用其A/D模块将输入量采集到PLC中,利用其D/A模块实现执行元件的输出,模糊控制流程图如图5所示。
图5 模糊控制系统流程图
上面给出的是模糊规则表中查询求U值的一段程序。其余程序与上述程序类似。
3 系统仿真
某电厂发电机励磁系统的主要参数为:KG=20.15,UGE=400V,UCHE=6V,KR=UCHE=/UGE=5,KSCR=2.82,T=0.0045。
利用Matlab6.0中的模糊工具箱进行模糊系统的设计,在模糊编译窗口中进行输入输出变量以及隶属度函数的设定,在模糊规则编辑器中设定规则,同时采取重心法进行解模糊化,后利用Simubbbb中的模糊工具集中的FuzyController元件将已经建立的2输入 — 1输出的Mamdani模糊控制系统导入Simubbbb被控系统,与被控系统进行无缝连接,终实现对系统进行仿真,获取仿真结果。
系统仿真的结构图如图6所示:
图6 系统仿真结构图
仿真结果如图7所示。
图7 励磁控制系统仿真结果图
可见,引入模糊控制算法后明显改善了发电机励磁系统的调节特性,并具有良好的跟踪特性。仿真结果表明,基于模糊控制算法的励磁系统的调节过程,都能很好地满足励磁系统的动态特性,所得到的系统响应曲线过程极小,调节速度快且调节过程平稳(没有频繁的波动),具有良好的调节品质。
4 结 语
随着大容量发电机组的使用和大规模电力系统的形成,对励磁系统的可靠性和技术性能的要求越来越高,需要研究新型的励磁调节器来满足要求。同时,计算机技术和自动控制理论的发展也为研究新型励磁调节器和励磁系统提供了良好的基础。把模糊控制技术应用在发电机励磁系统将有很好的和潜在的应用前景,并有明显的理论意义和实际意义。
本文介绍了发电厂励磁控制系统的模型和模糊控制在励磁控制中的应用,并讨论了其在PLC上的硬件实现。研究结果表明,该控制器具有良好的调节品质,并且硬件电路易于实现。它的应用,将会给电厂发电机励磁控制系统带来更大的技术进步和更高的经济效益。
图2. 录波子程序流程图
4. 上位机程序设计
上位机程序设计是以Visual Basic 6.0 为平台,利用MS Comm控件,以事件驱动方式实现计算机与PLC之间串行通讯,完成数据间的交换。上位机程序包括用户界面设计、通讯和数据处理程序、显示程序等。
4.1 用户界面设计
本系统中,设计了两个窗体(bbbb1和bbbb2)。其中bbbb1为主界面,bbbb2为波形显示界面。在bbbb1中设计了一个MSComm控件、一个定时器控件(Timer1)和两个按钮控件(Command1和Command2)。其中Command1是开始按钮,即按下时开始和PLC通讯,读取其中的数据。Command2是显示按钮,即按下时调用窗体bbbb2,显示每个运行量的波形曲线。在bbbb2中设计了一个图片框控件(Picture1),用来显示图形。
4.2 通讯和数据处理程序设计
设置Timer1 的Interval属性等于500,MSComm的bbbbbMode属性为二进制方式,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 显示程序设计
在窗体bbbb2的装载事件bbbb_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作为发电机励磁调节器的硬件平台,具有应用成本低、运行可靠性高但程序设计难度大的特点,其内部成功地嵌入发电机重要运行参量的故障录波具有较大的实用价值,尤其适用于目前大量开发的中小型水力发电站的水轮发电机组,对于保证发电机组的安全、稳定、可靠运行具有重要的意义。