基于AT89C51的同步发电机励磁控制系统设计
2011-07-12张秀珍
张秀珍
(福建工程学院 电子信息与电气工程系 福州 350108)
0 引言
随着科学技术的快速发展,对电网的质量要求也越来越高。一些小型水电站发电机保护简单且不可靠,自动化程度低,影响了小型水电站的运行。另外,小型水电站受农村电网和灌溉条件的限制,使其频繁起停,手动并网操作时间长,缩短了有效发电时间。所以提高小型水电站的自动化水平具有良好的经济效益。目前,数字式发电机电压调节器(简称DVR)的主导产品是以微型计算机为核心构成的,但其造价高,需要高技术支持,在一些小型电站中不适合推广,而可以采用小规模的,以单片机为核心的发电机电压调节器。
1 系统硬件设计
励磁控制系统的电路结构图如图1所示,系统主要硬件电路大致分为信号调理处理及采样保持电路、A/D转换电路、LED显示电路、励磁控制装置以及报警装置,下面分别予以简单介绍。
图1 硬件电路结构图
1.1 数据采集处理电路
发电机的输出电压和电流经过电压互感器和电流互感器转换后变为电压信号,经由运算放大器组成的信号调理电路转化为-5V~+5V的电压,再送到采样保持器采样保持,使得两个电压信号能够保持时间上的一致,经过多路开关CD4051送给A/D转换器,把转换后的数字信号保存在AT89C51的外部扩展数据存储器。LF398采样保持器,是利用B2-FET技术获得超高的直流(DC) 精度,具有信号快速采样和低下降率。采样时间低于6μs时达到0.01%。外加Analog Device公司的12位逐次逼近式AD574,实现A/D转换,满足系统对转换速率与精度的要求。
1.2 LED显示及报警电路
多位LED显示时,将四位段选码并联在一起,由一片移位寄存器芯片74HC595来实现LED的动态显示。在每一瞬间,4位LED会显示相同的字符。想要每位显示不同的字符,就必须采用扫描的方法,即在每一瞬间只使用一位显示字符。在此瞬间,74HC595并行输出口输出相应字符段选码,而位选则控制I/O口在该显示位送入选通电平,以保证该位显示相应字符。如此轮流,使每位分时显示该位应显示字符。由于74HC595具有锁存功能,而且串行输入段选码需要一定时间,因此,不需要延时,即可形成视觉暂留效果。
为了使用安全,在计算完数据以后,根据显示控制标志来判断要显示电压值还是频率值。在完成上面数据处理的基础上来判断发电机过电压或过电流或频率过低,只要上面有一个条件成立,马上输出报警信号并停止励磁输出。如果发电机工作正常,则调用PID控制算法子程序,控制励磁的输出。
2 软件设计
2.1 系统主程序流程图
在主程序中,要对单片机系统、外部各个芯片进行初始化。系统的主程序流程图如图2所示。在初始化各个端口的时候,设置芯片的工作模式。中断系统初始化是指用户对这些特殊功能寄存器中的各控制位进行赋值。
图2 主程序流程图
(1)开相应中断源的中断
其中EA是允许中断总控位,0为关闭,1为开放。EX0和EX1为外部中断控制位;ET0,ET1和ET2为定时器的溢出中断允许控制位;ES为串行口中断允许控制位。这些控制位均可以由用户通过程序设定,0为关断,1为开放。
(2) 设定所用中断源的中断优先级
响应中断时,CPU先响应高优先级中断,然后响应低优先级中断。如果两个中断处于同一个优先级,单片机将按照系统内部规定的优先级顺序响应中断。其顺序从高到低分别为INT0,T0 ,INT1,T1,串行口中断。本系统中使用两个中断,一个是串行口中断,一个是定时器溢出中断T1,并设置串行口中断为高优先级,T1为低优先级。
串口中断设置。串口工作方式选择方式3(其波特率可变,11位异步通信方式,起止为各一位,9位数据,其中有一位是校验位)波特率设置为9600,各寄存器设置如下:SCON=01010000B,SMOD=0,TMOD=02H,计数初值X=0FDH,采用中断的方式接收和发送数据。
定时中断设置。选择定时/记数器1作为定时,采用定时方式1,TMOD=10H,由于要在20ms内采集100个数据,所以定时200μs中断一次,计算记数初值:机器周期 为12/f0sc =1μs。应记数的脉冲个数:200/1=200=C8H,因为记数器是加1记数,所以记数初值为-200=FF38H。
2.2 串行通信服务子程序
AT89C51单片机通过引脚RXD(P3.0,串行数据接收端)和引脚TXD(P3.1,串行数据发送端)与外界通讯。SBUF是串行口缓冲寄存器,包括发送寄存器和接收寄存器。它们有相同名字和地址空间,但不会出现冲突,因为它们两个一个只能被CPU读出数据,一个只能被CPU写入数据。
串行口控制寄存器SCON:它用于定义串行口的工作方式及实施接收和发送控制。字节地址为98H,其各位定义如表1所示。
表1 串行口的工作方式
在单片机与上位计算机之间采用RS232的串行数据传输方式。单片机采用中断方式接收和发送数据,单片机与上位计算机之间的数据传输格式为:数据的发送和接收以数据帧为单位。每帧11个字节。数据帧的格式为表2所示。在一帧格式中,先是一个起始位0,然后是8个数据位,规定低位在前,高位在后,接下来是奇偶校验位(可以省略),最后是停止位1。用这种格式表示字符,则字符可以一个接一个地传送。
表2 数据帧格式
当单片机检测到串口中断时,进入通信中断服务子程序,接收数据到ACC寄存器里面(ACC=SBUF),再将其保存在内部的一个存储单元里面(shuju=ACC),判断奇偶校验位RB8是否与程序状态字PSW的第一位P相等,如果相等,说明接收的数据是正确的,接着判断其是什么命令,如果是0x01则回复0xaa表示单片机以准备就绪,可以发送或接收数据,在单片机发送采集的电压数据到PC时,为提高数据的通信效率和实时性,发送和接收数据不进行奇偶校验,只进行简单的数据传送,用TI和RI来判断数据是否已经从SBUF读取或发送完毕。如果奇偶校验判断错误则回复0xff表示信息发送错误,PC重发命令字。
2.3 PID控制
PID控制是最早发展起来的控制策略之一,由于其算法简单、鲁棒性好和可靠性高,被广泛应用于工业过程控制,至今仍有90%左右的控制回路具有PID结构。尤其适合可建立数学模型的控制系统,其控制规律如式(1)、(2)所示
式中Kp、Ki= Kp/ Ti、Kd= Kp×Td分别为比例系数、积分时间常数、微分时间常数有关的系数。
(1)模糊PID励磁控制原理
该励磁控制器是由模糊控制器和PID调节器构成,模糊控制器的输入变量为偏差值E。
图3 模糊PID励磁控制系统原理图
和电压偏差变化率EC,输出变量为PID控制器的3个参数Kp、Ki、Kd,它首先进行模糊化计算,然后根据模糊控制规则进行逻辑推理和判决,得到3个输出变量Kp、Ki、Kd。将整定出来的3个参数进行常规的PID运算,得到PID的控制量,再经过一定的环节处理后,以达到对同步发电机输出电压进行控制的目的。其基本组成如图3所示。
(2) MATLAB仿真
在MATLAB的SIMULINK环境下对同步发电机励磁控制系统进行仿真,首先是没有任何控制的情况下的阶跃响应,然后分别采用传统的PID控制和参数模糊自适应PID控制两种控制方法,通过仿真比较它们的控制性能。
仿真结果表明:对于同样一个励磁控制系统,相对与采用常规的PID励磁调节规律来控制,拥有了参数自调整功能的模糊自适应PID励磁调节规律,具有较多的优点。从仿真的波形图可以看出,采用常规的PID控制,响应速度较慢,且具有一定的超调量,如图4。而应用模糊自适应PID控制的系统阶跃响应曲线响应速度明显加快了,并且是一条平滑的曲线,基本上消除了超调所带来的影响,如图5。因此,可以确定的是,模糊自适应PID励磁控制较常规PID励磁控制有着更好的动态品质。
3 结论
从实际应用出发,设计了基于AT89C51的全数字式同步发电机模糊自适应PID励磁控制系统。从仿真和样机的试验结果来看,控制算法精确,可以达到系统控制要求。随着经济的快速发展,城乡电力供应紧张引起的中、小型备用电源需求的增长等等,都将使微机励磁同步发电机具有广阔的应用前景和乐观的市场前景。因此,开发完善的同步发电机微机励磁系统具有现实意义。
[1]徐咏梅,丁明华.中小型同步发电机组励磁系统改造[J].电力自动化设备, 2008,28(2):119-121.
[2]聂振宇.复合控制数字励磁电压调节器设计[J].微特电机,2007,40(2):58-61.
[3]王伟,鲍宇飞.基于PLC的水轮发电机励磁系统技术改造研究[J].水利水电工程,2008,30(8):96-97.
[4]夏加宽,王大朋.同步电动机单参数模糊PID励磁控制器的研究[J].船电技术,2007,27(2):69-71.
[5]彭瑜,阳木林,徐敏.基于MATLAB的电力系统非线性控制器的设计[J].南昌大学学报,2008,30(2):188-192.
[6]周洪彦,杨润生,周发琳,等.小型发电机通用励磁调节器设计[J].电气开关,2009(1):20-26.
[7]周旭辉,周有庆,鲁文军,等.一种发电机微机励磁实验装置的研制[J].电力系统及其自动化学报,2009,10(5):113-118.
[8]杨瑞帆,郭晓鹏,崔顺.基于C8051F330D单片机的多路数据采集系统设计[J].电子测试,2010 (4):72-75.