毕业设计(论文)基于AT89S52单片机的励磁调节器的软件设计.doc

上传人:文库蛋蛋多 文档编号:3978867 上传时间:2023-03-30 格式:DOC 页数:52 大小:662KB
返回 下载 相关 举报
毕业设计(论文)基于AT89S52单片机的励磁调节器的软件设计.doc_第1页
第1页 / 共52页
毕业设计(论文)基于AT89S52单片机的励磁调节器的软件设计.doc_第2页
第2页 / 共52页
毕业设计(论文)基于AT89S52单片机的励磁调节器的软件设计.doc_第3页
第3页 / 共52页
毕业设计(论文)基于AT89S52单片机的励磁调节器的软件设计.doc_第4页
第4页 / 共52页
毕业设计(论文)基于AT89S52单片机的励磁调节器的软件设计.doc_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《毕业设计(论文)基于AT89S52单片机的励磁调节器的软件设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于AT89S52单片机的励磁调节器的软件设计.doc(52页珍藏版)》请在三一办公上搜索。

1、 毕业设计(论文)题 目:励磁调节器的软件设计学 生: X X X 指导老师: X X X 系 别: 电子信息与电气工程系 专 业: 电气工程及其自动化 班 级: 电气X X X X 学 号: 20XX年XX月目 录摘 要1ABSTRACT21前言31.1 设计的背景及意义31. 2 同步发电机励磁自动控制系统简介41. 3 励磁控制系统的作用41. 4 励磁系统设计的内容和方法52 系统的硬件概况及控制算法分析72. 1 硬件总体结构框图72. 2励磁调节器的结构及各部分的功能82. 3 控制算法的分析82. 3. 1励磁控制系统的传递函数83 励磁调节器的软件设计113. 1 调节器的软件

2、结构163. 1. 1 软件的组成163. 1. 2 主程序163. 2 数据采集与处理183. 3 数据显示203. 4 中断处理213. 5 计算可控硅的控制角223. 5. 1 模糊PID参数计算223. 5. 2 控制角的计算243. 6 脉冲输出253. 7 逆变停车与限制动作264 调试与总结274. 1 Proteus与Keil介绍274. 2 调试与仿真294. 3 总结32致 谢33参考文献34附 录35附录A 仿真原理图35附录B 源程序36 励磁调节器的软件设计摘 要本次设计一种基于AT89S52单片机的小型同步发电机数字励磁调节器的系统。在描述自并励励磁系统的接线方式及

3、其控制系统的模型和调节器原理的基础上,侧重励磁调节器的软件部分进行分析和设计,配合调节器硬件部分使系统具有结构简单、功能可靠、配置灵活等优点。软件部分主要完成的功能有数据采集、运算控制、轮流显示等功能。单片机的开发使用C51语言。C51语言是一种结构化程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能,用C语言编写软件,可以大大缩短开发周期提高效率,并且增加程序的可读性,便于改进和扩充,从而研制出规模更大,性能更完备的系统。 关键词 单片机,励磁调节器,C51语言The software design of excitation regulatorABSTRACTThe desig

4、n of a micro-processor based on the AT89S52 small synchronous generator digital excitation regulator system. In describing the self-shunt connection of excitation system and its control system model and the principle of regulator on the basis of the excitation regulator focus on parts of the softwar

5、e analysis and design, with the regulator part of the system hardware is simple, reliable, the advantages of flexible configuration. Software to complete some of the major functions of data acquisition, operator control display features such as rotation. The development of micro-processors using C51

6、 language. C51 language is a structured programming language, which take into account the characteristics of a variety of high-level language and assembly language with the function, using C language software, can greatly shorten the development cycle to improve efficiency, and increase the readabil

7、ity of the procedure, facilitate the improvement and expansion in order to develop larger, more comprehensive system performance.KEY WORDS micro-processor,excitation regulator,c51 language1前言1.1 设计的背景及意义随着我国各项事业发展的需要和人民生活水平的不断提高,不仅用电负荷不断增加,而且对供电质量、用电环保提出了更高的要求。国产及原有发电机组设备已不能满足这一需要。由于柴油发电机组具有良好的运行可靠性

8、,且燃油及耗材经济,操作使用方便,使其成为大型主备用保障电源首选设备,在各重要部位为保障供电发挥了关键性作用,在各行各业中得到了广泛的应用。从20世纪末以来,国外柴油发电机组大量进入我国市场,与此同时,国产柴油发电机组也有了较大发展。北美、欧美的柴油发电机组基本上代表了当代柴油发电机的国际技术水准。因其质量好,可靠性高,技术先进,所以在我国有大量用户【1,6】。电力工业是一种先行工业,世界各国经济发展的经验表明,只有当电力工业的增长率高于其他工业的发展速度时,才能促使整个国民经济的全面快速增长,并满足人民生活的各种需求。柴油发电机组是主、备用电源的重要组成部分。用电设备技术现代化程度越来越先进

9、,对柴油发电机组的可靠性要求也越来越严格。同时柴油发电机组是集机械、电子为一体的技术密集型产品,涉及电磁学、电机学、机械工程、自动控制工程、现代设计方法等学科。20世纪90年代以来,其综合技术水平有了很大的提高。柴油发电机组由柴油发动机、交流同步发电机、配电及控制系统三大部分组成。按性能不同分为普通柴油发电机组和自动化柴油发电机组。按用途不同分为固定场所机组,移动汽车电站,挂车电站,低噪音柴油发电机组,特种柴油发电机组等。目前不管是普通机组还是自动化机组都有重大改进或重要的发展。其配电及控制系统部分广泛使用机电一体化新成果,使之从简单手控演变到由可编程控制器或微机处理器等一系列新技术实施控制。

10、为提高可靠性,采用从电机向多机联动冗余备份,以确保供电系统的可靠。其中,提高发电机励磁控制技术,是改善发电机组性能最经济有效的途径。利用计算机技术的专用控制器使机组使用过程更加灵活,运用更加可靠,归纳起来主要有以下几种模式:单机自动控制功能、单机自启动与ATS配合实现自动切换功能以及对两台或多台机组实施控制等模式。根据课题要求控制单台柴油发电机组选用单机自动控制功能模式,通过计算机软件设置一些相关参数,使实现发电机励磁调节的自动控制。同时将机组的电流、电压、频率等由原机械式或电磁式仪表向数字式显示方向转变,以便加强机组辅助装置的可靠性和可视性。1.2 同步发电机励磁自动控制系统简介 同步发电机

11、的运行特性与它的气隙电势Eq值的大小有关,而Eq的值是发电机励磁电流IL的函数,改变励磁电流就可影响同步发电机在电力系统中的运行特性。因此对同步发电机的励磁进行控制,是对发电机的运行实行控制的重要内容之一。 电力系统正常运行时,发电机励磁电流的变化主要影响电网的电压水平和并联运行机组间无功功率的分配。在某些故障情况下,发电机端电压降低将导致电力系统稳定水平下降。为此,当系统发生故障时,要求发电机迅速增大励磁电流,以维持电网的电压水平及稳定性。可见,同步发电机励磁的自动控制在保证电能质量,无功功率的合理分配和提高电力系统运行的稳定性及可靠性的方面都起着重要的作用【2,4,5】。 同步发电机的励磁

12、系统一般由励磁功率单元和励磁调节器两个部分组成。如图1-1所示。励磁功率单元向同步发电机转子提供直流电流,即励磁电流;励磁调节器根据输入信号和给定的调节准则控制励磁功率单元的输出。整个励磁自动控制系统是由励磁调节器,励磁功率单元和发电机构成的一个反馈控制系统。1.3 励磁控制系统的作用(1)维持同步发电机的端电压在一给定的稳定水平在同步发电机正常运行条件下,励磁控制系统应该维持发电机机端电压在给定的稳定水平。因为发电机在正常工作情况下,负载总在不断地变化着。而不同容量的负载,以及负载的不同功率因数,对同步发电机励磁磁场的反应作用是不同的,对同步发电机的内部阻抗压降也是不一样的。要维持同步发电机

13、端电压为一稳定水平,就必须根据负载的大小及负载的性质随时调节同步发电机的励磁电流。显然,这一调节过程只有通过电压的自动调节装置才能实现。 (2)提高电力系统的静态稳定性电力系统的静态稳定性实质是运行点的稳定性。通常是指发电机在稳态运行时遭到某种微小的扰动后,能自动地回复到原来的运行状态的能力。现代电力系统的发展趋势是增大输送距离和提高输送功率。这需要解决许多技术问题。而其中最重要的和最基本的困难之一是同步发电机只具有较小的静态稳定性。但由于自动励磁的调节装置的出现,使这一问题得到了圆满的解决。灵敏快速的励磁调节器可以维持发电机机端电压恒定,相当于补偿了全部发电机的定子同步电抗,即达到线路静稳功

14、率极限。(3)改善电力系统的动态稳定性动态稳定是研究电力系统受到扰动后,恢复原始平衡点或过渡到新的平衡点的过程稳定性。电力系统的动态稳定问题,可以理解为电力系统机电振荡的阻尼问题。当阻尼为正时,动态是稳定的;阻尼为负时,动态是不稳定的;阻尼为零时,是临界状态。零阻尼或很小的正阻尼,都是电力系统运行中的不安全因素,应采取措施提高系统的阻尼特性,即动态响应特性。增加励磁自动调节系统强励能力,降低励磁调节系统的时间常数,是提高电力系统动态稳定性的有效措施。1.4 励磁系统设计的内容和方法 图1-2是励磁系统外部的结构示意图,为了维持同步发电机机端电压在一稳定水平,需要测得发电机机端的电压Ug、定子电

15、流Ig、励磁电压UL、励磁电流IL以及发电机频率。本系统的数据采集是由互感器获得的,所采集是数据包括发电机的单相电压和电流、励磁电压和电流,通过程序测得正弦信号的有效值,与给定的电压比较,计算出相应的晶闸管控制角,输出对应的一组脉冲。励磁电流的大小,取决于可控硅的控制角,而可控硅的控制角由励磁调节器自动控制。当发电机的端电压高于整定值时,励磁调节器发出的信号脉冲推迟,可控硅的控制角变大,励磁电流减小。从而使发电机的端电压降低;当发电机的端电压低于整定值时,自动励磁调节器发出的脉冲提前,可控硅控制角变小,励磁电流增大,从而使发电机的端电压升高。上述两种过程都使发电机端电压趋近于整定值,达到恒压调

16、节的目的。2 系统的硬件概况及控制算法分析2.1 硬件总体结构框图发电机励磁调节器包括模拟信号采集单元、单片机数据处理单元、数据显示单元、脉冲输出单元、移动相触发单元、单片机与PC通信单元等几部分,各部分的基本功能实现过程如下图的硬件总体结构框图2-1所示。励磁电源取自发电机出口母线经励磁变压器,将发电机电压变至合适的值供整流装置整流后供给发电机转子绕组。整流电路采用三相桥式全控整流电路,该电路的工作特点是,既可工作于整流状态,将交流变成直流作为发电机励磁电源,也可工作于逆变状态,将直流变成交流,实现逆变灭磁停车,释放励磁绕组的能量,从而达到保护发电机的目的。发电机机端电压、定子电流分别经电压

17、互感器、电流互感器变换为二次值经信号处理使满足一定的要求再经A/D变换送至单片机,经过单片机内程序运算后输出控制量来控制晶闸管的导通角,从而控制励磁电流使电压稳定在一定的允许范围之内。图2-1硬件总体结构框图2.2励磁调节器的结构及各部分的功能本设计励磁调节器的主要由数据采集模块、数据显示模块、单片机数据处理模块、单片机与PC通信模块和脉冲触发及功率放大模块等组成。数据采集模块主要是采集三相的电压、电流及励磁电压、电流,经信号处理和信号隔离再送至A/D转换器,将模拟量转换成数字量。数据显示模块主要是用8个7段共阴数码管动态显示三相电压、电流,用8个7段共阴数码管动态显示励磁电压、电流。单片机数

18、据处理模块主要是将采集进行的数字量进行交流信号求有效值或直流信号求平均值处理。取处理后的A相电压跟给定的电压进行比较,用比较后的电压偏差和偏差变化率送模糊PID控制计算得到一组新的比例、积分、微分控制量,由此可算出此时的控制角,最后用控制角控制脉冲相对同步信号的触发时间。单片机与PC机通信模块是为了实现单片机内数据与PC机的数据传输。可以通过PC机对系统的监控和调整。脉冲触发及功率放大模块的对单片机输出的脉冲信号进行功率放大处理,保证晶闸管有效的触发导通。2.3 控制算法的分析2.3.1励磁控制系统的传递函数1、各个环节的传递函数 对励磁控制系统进行分析,首先要求写出控制系统各个单元的传递函数

19、。(1) 同步发电机假定发电机在运行区域内,压稳定幅值与励磁电压成正比,不考虑发电机电压的饱和特性时,可以认为发电机端电发电机的传递函数可用一阶惯性环节来表示,即 G(s)= (2-1) 式中K发电机端电压与励磁电压之比; T发电机正常运行时,励磁回路时间常数,一般取4秒; s微分因子。(2)电压测量单元一般认为经过整流滤波后,输出电压U1的幅值与发电机端电压UG成正比。滤波作用可用时间常数来表示,其传递函数为 G(s)= (2-2)式中K测量单元输出电压与输入电压之比; T滤波回路时间常数,一般为0 0.06s(3)功率放大单元该单元可认为是一阶惯性环节,其传递函数为 G(s)= (2-3)

20、 式中K放大环节输出电压与输入电压之比; T放大环节时间常数,一般很小,T0。(4)可控硅整流环节可挣硅整流环节也可示为一阶惯性环节,其传递函数为 G(s)= (2-4)式中K可控硅整流环节输出电压与输出电压之比; 可控硅整流环节的时间常数,=; m整流电路受控制的可控硅个数,m=6。(5)采用PID控制方式,所以控制器传递函数可表示为 (2-5)2、励磁控制系统传递函数前向传递函数为输出量与作用误差信号之比: (2-6)后向传递函数为反馈信号与输出信号之比:H(s)= (2-7) 开环传递函数为反馈信号与作用信号之比:G(s)=G(s)H(s)=G. G(s) . G(s) . G(s) .

21、 G(s) = = (2-8)闭环传递函数为闭环系统输出量与输入量之比:G(s)= (2-9)图2-2 励磁调节器的自动控制环动态结构框图励磁调节器的自动控制环动态结构框图如图2-2所示,其中U=U-U。3 励磁调节器的软件设计本设计用C语言进行基于AT89S52单片机的软件开发,选择C语言编程是因为C语言是一种结构化程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能,已成为开发语言的主流,用汇编语言编写的程序结构紧凑,运行速度快,但编程复杂,开发效率低,而且可读性差;而用C语言编写软件,可以大大缩短开发周期提高效率,并且增加了程序的可读性和可移植性,便于改进和扩充,从而研制出规模

22、更大,性能更完备的系统【3,8】。图3-1单片机AT89S52各引脚接口 本设计中AT89S52单片机的各个引脚如图3-1所示,ADC0809模数转换器转换完成的数据通过P0口输入单片机中进行数据的处理和保存。将采集的发电机机端数据通过P1口送7段共阴数码管进行动态显示。而将采集的励磁数据通过8255A的PB口同样送7段共阴数码管进行动态显示。通过比较当前电压与参考电压,得到调整的控制角,用控制角调整触发信号的触发时间,再通过P2口的前六位对应6个晶闸管送相应的触发信号。 图3-2 ADC0809模数转换器的引脚接口 ADC0809与单片机的引脚接线如图3-2所示。AD转换器的启动转换信号端S

23、TART和地址锁存允许信号端ALE通过一个非门接到单片机的写信号端WR,转换结束状态信号端EOC通过一个非门接到单片机的外部中断0口INT0,输出允许信号端OE通过一个非门接到单片机的读信号端RD。转换器的时钟脉冲CLOCK通过单片机的地址锁存允许信号端ALE经二分频得到。转换器的转换通道选择端口A、B、C接8255A的PB口的低三位。AD0809的启动方式为脉冲启动方式,启动信号START启动后开始转换,EOC信号在START的EOC输下降沿10us后才变为无效的低电平。这要求查询程序待EOC无效后再开始查询,转换完成后,出高电平,再由OE变为高电平来输出转换数据。在设计程序时可以利用EOC

24、信号来通知单片机(查询法或中断法)读入已转换的数据,也可以在启动AD0809后经适当的延时再读入已转换的数据【9,10】。 图3-3 并行接口芯片8255A的各引脚接线本设计中并行接口芯片8255A接线如图3-3所示,它与A/D转换器、LED数码管显示构成数据采集系统和数据显示系统。它有三个数据端口A、B、C,每个端口为8位,并均可设成输入和输出方式,但各个端口仍有差异: 端口A(PA0PA7):8位数据输出锁存/缓冲器,8位数据输入锁存器; 端口B(PB0PB7):8位数据I/O锁存/缓冲器,8位数据输入缓冲器; 端口C(PC0PC7):8位输出锁存/缓冲器,8位输入缓冲器(输入时没有锁存)

25、;在模式控制下这个端口又可以分成两个4位的端口,它们可单独用作为输出控制和状态输入。端口A、B、C又可组成两组端口(12位):A组和B组。在每组中,端口A和端口B用作为数据端口,端口C用作为控制和状态联络线。在8255A中,除了这三个端口外,还有一个控制寄存器,用于控制8255A的工作方式。因此8255A共有4个端口寄存器,分别用A0、A1指定:A1=0,A0=0,表示访问端口A; A1=0,A0=1,表示访问端口B; A1=1,A0=0,表示访问端口C;A1=1,A0=1,表示访问控制寄存器;在本设计中它的三个数据端口A、B、C都是用作输出口用,所以其方式控制字如下:D7=1,D6=0,D5

26、=0,D4=0,D3=0,D2=0,D1=0,D0=0;D7:方式标志为1;D6、D5:A组的工作方式位取00;D4:端口A的输入输出控制位取0;D3:端口C高4位的输入输出控制位取0;D2:B组的工作方式位取0;D1:端口B的输入输出控制位取0;D0:端口C低4位的输入输出控制位取0; 8255A的引脚定义如表1所示表1 8255A引脚定义 图3-4 数码管显示接口线路 本设计的数据显示采用动态数码管显示如图3-4所示,可以大幅度地降低硬件成本和电源的功耗,因为某一时刻只有一个数码管工作,也就是所谓的分时显示,故显示所需的硬件电路可以分时复用。本设计中端信号的显示与单片机的P1口相接,励磁信

27、号的显示与8255A的PB口相接。因此可以分为两路的8位动态显示电路。每一路都使用了两片74LS373作为7段码和位码驱动锁存器,8个数码管是共阴极数码管,一片ULN2803 8位反相驱动器作为增强驱动器。3.1 调节器的软件结构3.1.1 软件的组成本励磁调节器的控制软件有以下几个部分:(1) 实时采集;(2) 数据处理;(3) 中断处理;(4) 模糊PID控制;(5) 控制角的计算;(6) 数据轮流显示;(7) 同步脉冲输出;系统只用一片单片机,同时还用的一片并行接口芯片8255A来扩展I/O口。单片机上的I/O口用来数据的采集输入、发电机端电压、电流的数据显示,以及产生晶闸管六路触发脉冲

28、的输出,而8255A扩展的I/O口用来显示励磁电压、电流,控制信号保持电路和74LS373地址锁存器的工作状态。3.1.2 主程序本调节器的软件采用C语言模块化结构设计,由相应的子程序来完成各个功能的实现。调节器软件的主程序流程图如图3-5所示。调节器上电后,对系统进行初始化,包括调节器电源初始加电时对单片机进行原始状态的初始化,中断初始化,以及各接口芯片的初始化。主循环部分,首先是8通道数据采集处理部分,该部分利用外部中断1给出信号开始进行采集,设计一周期采集8个位置,每个位置都用信号保持电路保持同一时刻的数据,使进行8个通道同相位采集。并通过16片7位数码管进行端电压、电流和励磁电压、电流

29、的轮流显示。接着是通过外部中断1和计数器0完成信号周期的计算,为最后的触发脉冲输出做准备。控制角的计算模块包括限制判断,通过采集进来的电压与参考电压进行比较得到偏差电压和偏差变化率送模糊PID控制计算,最后得到一组新的比例系数Kp、积分系数Ki、微分系数Kd进行控制角的计算。用得到的控制角控制6个晶闸管触发脉冲的输出时间和顺序。图3-5 励磁调节器主程序流程图整个控制软件用一个主程序和21个子程序来实现励磁调节的基本功能,程序整体结构紧凑、操作灵活、编程效率高、复查简便。3.2 数据采集与处理 励磁调节器的数据采集过程经电压、电流互感器采得当时的电压电流值,再经信号处理电路和信号保持电路才能送

30、ADC0809转换器进行模数的转换。数据采集的程序流程如下图3-6所示。通过8255A的PA口高四位和PC口低四位共同控制信号保持器保持住该时刻的数值,接着通过8255A的PA口低三位选择要转换的通道,将转换好的数据送一数组暂时保存,然后判断是否已经将第8个通道的数据转换了,是则完成这一轮的数据采集并将信号保持器打开。否则进行下一通道的数据转换,依次循环转换至最后一个通道。 图3-6 AD采集转换流程图 根据单片机的处理速度与AD转换所需要的时间,本设计数据的采集每周期采8个点,按所写的采集程序,8个通道采集一轮所需要的时间为0.8ms左右,延时1ms后进行0.3ms左右的最初的数据处理。因此

31、一轮采集加处理所花的时间接近2.5ms即八分之一周期的时间,这样可以让八个采集点平均分配在一个周期之内,保证了用八个点平方值的平均值求开方根作为有效值一定的准确性。图3-7 周期数据处理流程图通过计数器0可以计算所采集信号的周期。用A相电压信号从负变正的过零点即同步的矩形波下降沿触发计数器0开始计数,直到下一上降沿时再停止计数。该单片机用的时钟频率是12MHZ,所以计数器计数1次表示1us,上述所得的计数值就是A相电压的半个周期值。再经过左移1位处理就是该信号的周期值了。将该周期值的六分之一做为定时器0定时设定值定时触发脉冲。在每一轮数据采集完成之后都有相应的数据处理,如图3-7流程图上部所示

32、,将第六个通道之前采集进来的数据都进行求平方处理,第六通道之后的数据不变,然后存入指定的一个二维数组。如此,将一周期内的8组数据都做一样的处理。接着将处理好的数据又分两个部分再进行处理,前一部分是第六通道之前的发电机机端数据,由于是交流信号,所以用八个点平方值的平均值求开方根作为有效值,后一部分是第六通道之后的励磁端数据,是直流信号,所以用八个点的平均值作为励磁显示的数据值。3.3 数据显示 本设计的数据显示采用动态扫描工作方式,即采用分时显示的方式,利用人的视觉暂留效应,达到稳定显示的效果。数据显示的流程图如下图3-8所示。 显示程序是将上述处理后的数据进行动态显示。程序开始取得机端数据sh

33、ow1b,判断其中b的奇偶性,若b是奇数则将数据送电压显示子程序显示,并将show2b%2送励磁电压显示子程序显示。若b是偶数则将数据送电流显示子程序显示,并将show2b%2送励磁电流显示子程序显示。最后判断b是否达到5,若b为5则将b清零,否则将b做加一处理。下面就四个显示子程序里的机端电流显示程序进行说明。总所周知,经过AD转换器采集进来的数据与真实的数据缩小的很多,在显示的时候需要按比例将采集数据放大,然后再送显。在机端电流显示子程序里,将AD采集进来的最大值255对应真实电流20A,将255乘以40再除以51得到200,再将十位数的小数点点亮,就可以显示20.0与实际相同。显示的时候

34、先将要显示的位码锁存在一个373锁存器中,再将相应的段码锁存在另一个373锁存器中。图3-8 数据显示流程图3.4 中断处理用A相电压信号从负变正的过零点即同步的矩形波下降沿触发外部中断1,进入外部中断子程序如图3-9,将a置位,使执行AD采集子程序。在脉冲触发产生的子程序中,设定了1/6信号周期的定时器0,当定时器0定时到时进入定时中断子程序中如图3-10所示,首先关闭中断总允许位EA,再重装1/6周期定时设置,接着启动定时器0,开中断总允许位。图3-9外部中断1 图3-10定时中断03.5 计算可控硅的控制角3.5.1 模糊PID参数计算PID控制系统原理框图如图3-11所示,系统由PID

35、控制器和被控对象组成,其中PID控制器在本设计中用单片机软件实现。模糊PID控制是通过给定的r(t)与实际的输出值y(t)的偏差e(t)和偏差变化率ec(t)的比例(P)、积分(I)、微分(D)的线性组合构成控制量u(t),包含Kp、Ki、Kd三个变化量,对被控对象进行控制。其控制规律写成传递函数形式为 (3-1)式中:Kp为比例增益;Ti为积分时间常数;Td为微分时间常数;图3-11 模糊PID控制系统原理框图根据偏差和偏差的变化率计算输入量,再由模糊PID自整定控制算法得出输出控制量。采用模糊PID自整定控制的目的是使控制器能够根据实际情况调整比例系数Kp、积分系数Ki和微分系数Kd,以达

36、到调节作用的实时最优。模糊PID自整定控制是将输入量包括偏差和偏差的变化率进行模糊化处理,即将输入变量变换到相应的论域,并将输入数据转换成合适的语言值。结合本系统的特性,这里选择模糊变量的模糊集隶属函数采用三角函数。根据该规则可把实际误差e、误差变化率ec对应的语言变量E、EC表示成模糊量。E、EC的基本论域为-3,+3,将其离散成7个等级即-3,-2,-1,0,+1,+2,+3。考虑到控制的精度要求,本设计将-3,+3分为负大NB、负中NM、负小NS、零ZO、正小PS、正中PM、正大PB等7个语言变量,然后由e、ec隶属函数根据最大值法得出相应的模糊变量。接着为比例、积分和微分增益的模糊偏差

37、分别建立相应的模糊控制规则表。通过偏差和偏差变化率的模糊量取得相应的比例、积分、微分偏差的模糊量,最后通过去模糊转化公式将模糊量变为实际量,下式是以比例增益为例kkp=ekp*dkp+kp (3-2)式中:kkp是比例增益去模糊化的实际值;ekp是比例因子;dkp是比例增益模糊偏差量;kp是给定的比例增益的实际值;3.5.2 控制角的计算控制角计算是整个软件的关键部分,其程序流程图如图3-12所示。先通过AD转换器采集并读取当前的电压值与设定的给定电压进行比较得到电压的偏差和偏差变化率,将其送入模糊PID控制计算程序中调整得到新的比例、积分和微分系数,这个过程如上一点内容所述。接着判断是否达到

38、欠励限制,是则直接将angle取为180完成控制角的计算,否则接着判断是否达到强励、过励限制,若是则直接将angle取为0并完成控制角的计算,否则由这组新的Kp、Ki、Kd系数计算当前需要的励磁电压UL,UL=Ug1+kkp*(Uent1-Uent2)+kki*Uent1+kkd*(Uent1-Uent2-Uent2+Uent3) (3-3)其中Ug1为上次的励磁电压,Uent1为本次的电压偏差,Uent2为上次的电压偏差,Uent3为上上次的电压偏差,kkp、kki、kkd是通过模糊PID控制计算得到的新控制量。再通过 angle=180*(acos(0.427*UL/Elab)/3.14

39、(3-4)得到控制角angle。图3-12 控制角计算流程图3.6 脉冲输出图3-13脉冲输出流程图脉冲输出主程序如图3-13所示。根据控制角的大小将触发脉冲输出的顺序分成三组,angle在0到60之间的用pulseai,angle在60到120之间的用pulseci,angle大于120的用pulsebi。第一组脉冲的输出时间是根据控制角确定的,之后的五组脉冲每隔1/6周期输出一组。3.7 逆变停车与限制动作 根据设计任务要求,当遇到励磁过电流、电压限制、发电机过电压、低于低频保护以及电压检测信号或丢失时调节器需要控制控制角实现逆变停车。程序中只要有一个满足上述条件的都会将逆变信号contr

40、a置位提示调节器停止电流的输出。限制条件包括强励、过励限制和欠励限制。强励、过励限制是当发电机端电压低于额定电压的80%时的励磁限制,欠励限制是当发电机端电压高于额定电压的130%时的励磁限制。4 调试与总结4.1 Proteus与Keil介绍1、ProteusProteus是一种低投资的电子设计自动化软件,提供Schematic Drawing、SPICE仿真与PCB设计功能,这一点proteus 与 multisim比较类似,只不过它可以仿真单片机和周边设备,可以仿真51系列、AVR,PIC等常用的MCU,与keil和MPLAB不同的是它还提供了周边设备的仿真,只要给出电路图就可以仿真,例

41、如373,led,示波器,Proteus提供了大量的元件库,有RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件,编译方面支持Keil和MPLAB,里面有大量的例子参考。(1)、Proteus可提供的仿真元件资源 Proteus软件提供了可仿真数字和模拟、交流和直流等数千种元器件达30多个元件库。 (2)、Proteus可提供的仿真仪表资源 虚拟仪器仪表的数量、类型和质量,是衡量仿真软件实验室是否合格的一个关键因素。在Proteus软件中,理论上同一种仪器可以在一个电路中随意的调用。除了现实存在的仪器外,Proteus还提供了一个图形显示功能,可以将线路上变

42、化的信号,以图形的方式实时地显示出来,其作用与示波器相似但功能更多。这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗。这些都尽可能减少了仪器对测量结果的影响。(3)、Proteus可提供的调试手段 Proteus提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。2、Keil是德国开发的一个51单片机开发软件平台,最开始只是一个支持C语言和汇编语言的编译器软件。后来随着开发人员的不断努力以及版本的不断升级,使它已经成为了一个重要的单片机开发平台,不过Keil的界面并不是非常复杂,操作也不是非常困难,很多工程师的开发的优秀程序都是在Keil的平台上编

43、写出来的。可以说它是一个比较重要的软件,熟悉他的人很多很多,用户群极为庞大,要远远超过伟福等厂家软件用户群,操作有不懂的地方只要找相关的书看看,到相关的单片机技术论坛问问,很快就可以掌握它的基本使用了。 (1)、Keil的Vision2可以进行纯粹的软件仿真(仿真软件程序,不接硬件电路);也可以利用硬件仿真器,搭接上单片机硬件系统,在仿真器中载入项目程序后进行实时仿真;还可以使用Vision2的内嵌模块Keil Monitor-51,在不需要额外的硬件仿真器的条件下,搭接单片机硬件系统对项目程序进行实时仿真。 (2)、uVision2调试器具备所有常规源极调试,符号调试特性以及历史跟踪,代码覆盖,复杂断点等功能。DDE界面和shift语言支持自动程序测试。3、Proteus与

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号