1、本科毕业设计(论文)基于单片机的励磁调节试验装置研究-硬件设计学 院 自动化学院 专 业 电气工程及其自动化 (电力系统自动化方向)年级班别 学 号 学生姓名 指导教师 年 月摘要励磁系统是同步发电机的一个重要组成部分,它直接影响发电机的运行特性,对电力系统的安全稳定运行有重要的影响。随着现代电力系统和计算机技术的发展,对同步发电励磁控制系统提出了更高要求,智能控制方式应运而生。智能控制方式能够在无人干预的情况下驱动目标机器实现自动控制,提高自动化程度。这是未来发展的趋势,具有重要的研究意义。本文首先介绍了同步发电机励磁系统的基本概念、分类、研究现状等,再阐述了模糊控制理论的基本知识和模糊控制
2、器在matlab中的建立和参数的设置。其次,以WDT-III电力系统综合自动化试验台的参数为基础,在Matlab/Simulink软件上搭建系统仿真模型,并嵌入由模糊规则生成的fis文件,进行仿真并分析仿真波形,验证模糊励磁控制的效果。最后,将励磁系统的控制逻辑以C语言的方式写入单片机,验证触发控制信号的波形,再将单片机与整流桥连接,观察输出的励磁电压的变化。关键词:模糊控制,建模,C语言,单片机AbstractExcitation system is an important part in synchronous generator. It can directly affect the
3、operating performance of the generator, and therefore has an important impact on the safe and stable operation of the electric power system. With the development of modern electric power system and computer technology, higher requirements have been put forward to the excitation control system for sy
4、nchronous generator,then The intelligent control methods emerge as the times require. The intelligent control methods can control the machine automatically without peoples intervention, and improve the level of automation consequently. This is the future trend of development, the research has import
5、ant significance.First, a brief introduction of the excitation control system for synchronous generator on its basic concepts, classification, current research status are given. And the theory of fuzzy control with its sets in matlab is elaborated. Then, basing on the parameters of WDT-III Power Sys
6、tem Integrated Automation Test Bed, we build a simulation model with the fit file produced by fuzzy rules. By the analysis of the simulation waveform, we can inspect the results of fuzzy excitation control.Finally, we can change the logic of fuzzy control algorithm into C language and write it into
7、the MCU, inspecting the waveform of control signal and observing the change of the excitation voltage output.Key word: Fuzzy control, build the model, C language, MCU目录绪论 11.1课题研究的目的和意义 11.2本文研究的主要内容 22 同步发电机励磁自动控制系统 22.1同步发电机励磁控制系统的概述 22.2同步发电机励磁控制系统的任务 32.3对励磁系统的基本要求 52.4同步发电机励磁系统数学模型的建立 52.4.1 同步
8、发电机的传递函数 .52.4.2 电压测量单元的传递函数 .62.4.3 综合放大单元的传递函数 .62.4.4 功率放大单元的传递函数 .62.4.5 励磁控制系统的传递函数 .63 模糊控制器的设计 73.1模糊控制的概述 73.2模糊控制的基础 73.3模糊控制模块的设计 83.3.1 模糊控制器的结构 .83.3.2 模糊规则的确定 .83.3.3 在 Matlab 中模糊控制模块的设置 .104 Matlab/Simulink系统模型的建立及仿真 .124.1仿真系统模型 124.2相关模块的选择与设置 124.2.1 发电机模块 .124.2.2 负荷与断路器模块 .134.2.3
9、 电压测量模块与转换模块 .144.2.4 模糊 PID 控制器的设置 164.3仿真条件设置 184.4仿真结果与分析 185 C语言程序设计及仿真调试 .215.1 STC89C52RC单片机及 LY51(AVR) L3A学习板简述 215.2程序设计软件 Keil Vision2 .215.2.1 系统概述 215.2.2 Keil C51 单片机软件开发系 统的整体结构 .225.3硬件连接图及各模块说明 235.3.1 同步信号模块 .235.3.2 AD 数模转换器模块 245.4程序流程图 245.5程序模块说明 255.5.1 管脚定义 .255.5.2 函数声明与定义 .26
10、5.5.3 主函数 .275.5.4 中断程序及各模块说明 .285.6 程序仿真及结果分析 .345.6.1 计算部分验证 .345.6.2 触发输出部分验证 .37结论 40参考文献 41致谢 42附录 A C语言源程序代码(计算部分) 4311 绪论1.1课题研究的目的和意义随着电力工业的迅速发展,电力系统的规模越来越大,保证系统运行的可靠性和稳定性,提供合格的电能质量和良好的动态品质,对国民经济和人民生活具有极为重要的意义。为了达到提高系统稳定性和改善运行质量及动态品质的目的,采用控制发电机组励磁比其他方法更具有明显的优越性,它不仅节约投资,而且在系统正常运行中能起到其它措施起不到的作
11、用。发电机励磁控制系统是电力系统控制的重要组成部分,它直接影响着发电机的运行可靠性、经济性和系统运行的稳定性 15。在电力系统正常运行情况下,发电机的励磁控制能够起到减小电压波动 11、平衡无功功率分配的作用;在系统发生事故时,调节发电机的励磁电流可以提高系统抗干扰能力,维持系统的运行稳定性。所以研究和设计发电机励磁控制系统一直是电力系统学者关注的课题,它的优化和发展对发电机乃至整个电力系统的运行具有决定性的意义,因此本课题的研究是具有理论意义和实用价值的。目前广泛采用的是典型 PID 控制,这种控制方式包括三个参数:P(比例),I(积分),D(微分)。三个参数的作用分别为 3:比例系数 ,其
12、作用是实时成比例的反应控制系统偏差信号; 越大,系pk pk统响应速度越快,调节精度越高,太大时易造成超调,从而严重时导致系统不稳定; 过小时,会降低调节精度,响应速度变缓,延长调节时间。因此,比p例控制是基于偏差的调节。积分系数 ,其作用是通过记忆误差,消除稳态误差,提高系统的抗干扰ik能力和无静差度。 越大,静态误差消除越快。但过大时,在响应初期会产生i几分饱和现象,引起较大的超调;过小时,静态误差难以消除,影响系统的调节精度。微分系数 ,其作用是改善系统的动态特性,抑制响应过程中偏差向任何dk2方向变缓。 过大时,会提前制动响应过程,延长调节时间,还会降低系统的dk抗干扰能力;过小时,调
13、节过程的减速会滞后,超调量增加,稳定性变差 6。通过人为改变这三个参数的值,可以改变输出的励磁电流,达到控制发电机电压的效果。该方式优点在于控制结构较简单,因此得到广泛应用;但由于模糊规则是人们对过程或对象模糊信息的归纳,对高阶、非线性、大时滞、时变参数以及随机干扰严重的复杂控制过程,人们的认识往往比较贫乏或难以总结完整的经验,这就使得单纯的模糊控制在某些情况下很粗糙,难以适应不同的运行状态,影响了控制效果。 812。而模糊 PID 控制采用当前电压偏差(当前值与目标值的差),以及偏差的变化率作为输入量,并通过一系列的规则,模糊化及去模糊化,在典型 PID 的基础,代替操作人员修改 PID 参
14、数,最终达到控制效果 9。模糊控制 5913141617的优势在于能够代替人手操作,提高自动化程度;但由于目前只是处于研究阶段,并且其稳定性还有有待考证。但可以断定的是,随着研究的深入和计算机技术的发展,模糊控制理论将会广泛应用于发电机励磁控制当中,因此模糊控制的研究具有重要意义 1。同时,由于单片机具有结构简单,可靠性高,采用 C 语言编程更是逻辑简单且移植性强。因此采用单片机可以比较容易实现所需达到的效果 2 4。1.2本文研究的主要内容本文主要分析模糊控制理论的特点与算法,设计以单片机为硬件载体的发电机励磁模糊控制器,并进行仿真验证。主要任务有:1)介绍发电机励磁控制系统的类型,结构以及
15、控制模型;2)阐述模糊控制理论及其应用,对模糊控制理论进行全面的深入理解;3)在 Matlab 软件上搭建仿真模型,设置仿真数据,调试仿真模型。4)将模糊控制模块逻辑编写成 C 语言程序,并写入单片机,进行仿真调试。32 同步发电机励磁自动控制系统2.1同步发电机励磁控制系统的概述同步发电机的运行特性与它的空载电动势 Eq值的大小有关,而 Eq的值是发电机励磁电流 IEF的函数,改变励磁电流就可影响同步发电机在电力系统中的运行特性 10。因此,对同步发电机的励磁进行控制,是对发电机的运行实行控制的重要内容。电力系统在正常运行时,发电机励磁电流的变化主要影响电网的电压水平和并联运行机组间无功功率
16、的分配。在某些故障情况下,发电机机端电压降低将导致电力系统稳定水平下降。为此,当电力系统发生故障时,要求发电机迅速增大励磁电流,以维持电网的电压水平及稳定性。可见同步发电机励磁的自动控制在保证电能质量、无功功率的合理分配和提高电力系统的运行的可靠性方面都起着十分重要的作用。2.2同步发电机励磁控制系统的任务在电力系统正常运行或事故运行中,同步发电机的励磁控制系统起着重要的作用。优良的励磁控制系统不仅可以保证发电机可靠运行,提供合格的电能,而且还可有效地提高系统的技术指标。根据运行方面的要求,励磁控制系统应该承担如下任务:(1)维持发电机机端和系统指定中枢点的电压在给定水平上满足这一要求首先考虑
17、的是保证电力系统运行设备的安全性,即在较小偏差干扰下的微动情况和系统发生大扰动的暂态情况下保证发电机的电压维持在给定水平上。其次保证发电机运行的经济性,因为发电机在额定电压附近运行是最经济的。如果发电机电压下降,则输出相同功率所需要的定子电流将增加,从而使损耗增大。此外,维持发电机机端电压和提高电力系统稳定性方面的要求也是一致的。(2)合理分配并联运行发电机间的无功功率4电力系统中有很多台发电机并联运行。为了保证系统的电压质量和无功潮流的合理分布,要求合理控制电力系统中并联运行机组输出的无功功率。所谓“合理控制”包含两层意思:(1)每台发电机发出的无功功率数量要合理。(2)当系统电压变化时,每
18、台发电机发出的无功功率要随之自动调节,且调节量要合理。(3)提高电力系统静态稳定性当电力系统受到小的扰动后,发电机能继续保持与系统同步运行的特性称为电力系统的静态稳定性。现代电力系统的发展趋势是增大输送距离和提高输送功率。这需要解决许多技术问题。而其中最重要的和最基本的困难之一是同步发电机只具有较小的静态稳定性。但自从自动励磁调节装置的出现,使这一问题得到圆满的解决。(4)提高电力系统的暂态稳定性暂态稳定是电力系统受到大扰动后的稳定性。励磁控制系统的作用主要由以下三个因素决定。 励磁系统强励顶值倍数提高励磁系统强励倍数可以提高电力系统暂态稳定性。提高励磁系统强励倍数的要求,与提高调压精度并没有
19、矛盾。 励磁系统电压响应比励磁系统电压响应比越大,励磁系统输出电压达到顶值的时间越短,对提高暂态稳定性就越有利。电压响应比主要由励磁系统的型式决定,但是,励磁控制器的控制规律和参数对电压响应比也有举足轻重的影响。在相同的控制规律下,增大励磁控制系统的开环增益可以提高励磁电压响应比,同时,也提高了点了呀的调节精度。 励磁系统强励倍数的利用程度充分利用励磁系统强励倍数,也是发挥励磁系统改善暂态稳定作用的一个重要因素。如果电力系统发生故障时励磁系统的输出电压达不到顶值,或者维持顶值的时间很短,在发电机电压还没恢复到故障前的值时,就不再进行强励了,那么它的强励倍数就没有得到很好发挥,改善暂态稳定的效果
20、也就不好。充分利用励磁系统顶值电压的措施之一,就是提高励磁控制系统开环增益。开5环增益越大,励磁倍数利用就越充分,调压精度也越高,也越有利于改善电力系统的暂态稳定性。由此可见,提高励磁控制系统保持端电压水平的能力,与提高电力系统的暂态稳定性是一致的。(5)提高继电保护装置动作的准确性当系统处于低负荷运行状态时,发电机的励磁电流不大。若系统此时发生短路故障,短路电流较小,且随时间衰减,以致带时限继电保护不能正常动作。励磁自动控制系统可以通过调节发电机励磁电流来增大短路电流,使继电保护正确动作。(6)保证并联运行系统的正常工作系统的无功分配单元可保证参加并联运行的各发电机的输出无功功率获得均衡分配
21、,增加了稳定环节的无功分配单元是保证强励能力大的并联运行系统能正常稳定工作的重要条件之一。2.3对励磁系统的基本要求(1)励磁系统应提供足够的励磁容量和调节容量,并保证励磁电源的可靠性。(2)当发电机励磁电流和电压不超过其额定电压的 1.1 倍时,励磁系统应保证连续运行。(3)励磁系统的顶值电压倍数不宜超过 2,允许强励时间不宜超过 20s,电压相应不宜小于 2s-1。如有特殊要求时,可在设计中拟定。(4)当励磁电流不大于 1.1 倍额定值时,发电机励磁绕组两端所加的整流电压瞬时值不应大于规定的励磁绕组出场试验电压幅值得 30%(5)灭磁开关及其励磁绕组之间的电气组件要满足出 场试验电压规定
22、的数值。(6)安装工地现场验收电压为出厂试验电压的 75%,允许反复试验电压及维修后的试验电压为出场电压的 65%。62.4同步发电机励磁系统数学模型的建立2.4.1同步发电机的传递函数同步发电机的传递函数相当复杂,这里只研究发电机空载起励的过程,因此,可对发电机的数学描述进行简化。在转速为额定转速时,同步发电机的传递函数可以用一阶滞后环节来表示。电压最大值在额定电压的附近,因此,该过程中可以忽略饱和现象,故同步发电机的传递函数为:GG(S)=KG(1+T GS)TG表示其时间常数,主要为励磁绕组EW的时间常数,其数值较小,取5 s,K G为发电机的电压放大系数,当忽略发电机的饱和影响时,K
23、G可用发电机的定子电压和发电机空载额定转子电压之比表示。2.4.2电压测量单元的传递函数电压测量单元由测量变压器、整流滤波电路等组成,作用是把发电机机端电压变成与之成正比的直流电压,在正常情况下,电压互感器和测量变压器均不会饱和,可近似用一个一阶滞后环节来描述。GR(S)=KR(1+T RS)式中,其时间常数T R是由滤波电路引起的,T R 的数值通常为几十毫秒。2.4.3综合放大单元的传递函数综合放大单元在电子型调节器中是由运算放大器组成,在电磁型调节器中则采用磁放大器。它们的传递函数通常都可视为放大系数为K A的一阶惯性环节,其传递函数为GA(S)=KA/(1+TAS)式中K A表示电压放
24、大系数,T A表示放大器的时间常数。2.4.4功率放大单元的传递函数电子型励磁调节器的功率放大单元是晶闸管整流器。由于晶闸管整流元件工作是断续的,因而它的输出与控制信号间存在着时滞。这一断续控制现象就有可能造成输出平均电压U d滞后于触发器控制电压信号U SM。按照上述分析经过化简可得到简化后的综合放大单元的传递函数为G(S)=KZ/(1+TZ S)7式中K Z为电压放大系数,T Z放大器的时间常数。2.4.5励磁控制系统的传递函数图2.183 模糊控制器的设计3.1模糊控制的概述模糊逻辑控制(Fuzzy Logic Control)简称模糊控制(Fuzzy Control),是以模糊集合论、
25、模糊语言变量和模糊逻辑推理为基础的一种计算机数字控制技术。1965年,美国的L.A.Zadeh创立了模糊集合 论;1973年他给出了模糊逻辑控制的定义和相关的定理。1974年,英国E.H.Mamdani 首先用模糊控制语句组成模糊控制器,并把它应用于锅炉和蒸汽机的控制,在实验室获得成功。这一开拓性的工作标志着模糊控制论的诞生。模糊控制实质上是一种非线性控制,从属于智能控制的范畴。模糊控制 的一大特点是既具有系统化的理论,又有着大量实际应用背景。模糊控制的发展最初在西方遇到了较大的阻力;然而在东方尤其是在日本,却得到了迅速而广泛的推 广应用。近20多年来,模糊控制不论从理论上还是技术上都有了长足
26、的进步,成为自动控制领域中一个非常活跃而又硕果累累的分支。其典型应用的例子涉及生产 和生活的许多方面,例如在家用电器设备中有模糊洗衣机、空调、微波炉、吸尘器、照相机和摄录机等;在工业控制领域中有水净化处理、发酵过程、化学反应釜、 水泥窑炉等的模糊控制;在专用系统和其它方面有地铁靠站停车、汽车驾驶、电梯、自动扶梯、蒸汽引擎以及机器人的模糊控制等。3.2模糊控制的基础模糊控制的基本思想是利用计算机来实现人的控制经验,而这些经验多是用语言表达的具有相当模糊性的控制规则。模糊控制器(Fuzzy Controller,即FC)获得巨大成功的主要原因在于它具有如下一些突出特点: 模糊控制是一种基于规则的控
27、制。它直接采用语言型控制规则,出发点是现场操作人员的控制经验或相关专家的知识,在设计中不需要建立被控对象的精确数学模型,因而使得控制机理和策略易于接受与理解,设计简单,便于应用。9 由工业过程的定性认识出发,比较容易建立语言控制规则,因而模糊控制对那些数学模型难以获取、动态特性不易掌握或变化非常显著的对象非常适用。 基于模型的控制算法及系统设计方法,由于出发点和性能指标的不同,容易导致较大差异;但一个系统的语言控制规则却具有相对的独立性,利用这些控制规律间的模糊连接,容易找到折中的选择,使控制效果优于常规控制器。 模糊控制算法是基于启发性的知识及语言决策规则设计的,这有利于模拟人工控制的过程和
28、方法,增强控制系统的适应能力,使之具有一定的智能水平。因此,模糊控制基本解决了用计算机模仿人类对这类系统进行自动控制的问题。3.3模糊控制模块的设计3.3.1模糊控制器的结构模糊 PID 控制器由两部分组成:普通 PID 调节器器和模糊控制器。+输入给定-P I D 控制器 被控对象输出G e cG e模糊化模糊推理计算去模糊G k pG k dG k ieuee cdt图 3.1 模糊 PID 控制器的结构图如图 3.1 所示,控制器的输入为双变量:电压偏差 E 以及电压偏差变化率EC。通过模糊模块的一系列计算后,经去模糊化得到 PID 三个参数 , ,pki的变化量 , , ,最后与普通
29、PID 的参数叠加后,得到所求的三个dkpkidk参数。图中 , 分别为电压偏差及其变化率的量化因子,其作用是将输入eGc变量的基本论域转换成相应模糊模块中的论域;而 , , 是输出量 ,PkGidkpk, 的比例因子,其作用则是将输出量的模糊论域转换成控制对象实际所ikd需的论域。103.3.2模糊规则的确定根据实际运行经验,模糊规则制定如下 7: 1、当(E0,EC0)时,系统的输出已经大于稳态值,并且朝着偏差变大的方向前进,此时,控制作用应当设置为减小超调,加大偏差控制的份量;2、当(E0,EC0)时,系统输出应越快趋向稳态值越好,因而要尽快消除偏差,加大控制偏差的份量;为避免趋近稳态值
30、时出现超调,应适当减小积分作用,避免积分调节带来的振荡,以利于稳定;4、当(ERules,将表 3.13.3 的模糊规则填入,采用以下方式进行填写(如图 3.5):if (e is NB) and (ec is NB) then (kp is PB) (ki is NB) (kd is PS)if (e is NB) and (ec is NM) then (kp is PB) (ki is NB) (kd is NS) 图 3.5 模糊规则填写填写完成后,将文件保存为 MUPIDFIS1.fis 文件,同时在 Matlab 中 M 文件编辑器建立一个名为 MUPIDFIS1 的文件,其内容为
31、:matrix=readfis(MUPIDFIS1.fis),在 Simulink 当中调用 Fuzzy Logic Controller的时候,双击模块,输入 MUPIDFIS1,便可以应用该模块。134 Matlab/Simulink系统模型的建立及仿真4.1仿真系统模型总的系统模型如图 4.1 所示:图 4.1本系统主要由发电机模块、电压测量模块、负荷模块、电压转化模块、滤波模块、模糊控制器模块、触发角转化模块、同步信号发生器模块和整流桥模块组成。采用一台发电机,连接两个负荷,第一个负荷为基荷,第二个负荷为变化负荷,通过一个断路器来控制该负荷的投入与切断。利用测量模块测得发电机机端电压标
32、幺值,通过反馈回路,经过模糊 PID 控制器模块及触发角模块的计算,通过信号发生器后作为整流桥控制信号输入,有整流桥输出的直流电压作为励磁电压供给发电机转子。4.2相关模块的选择与设置4.2.1发电机模块Simulink 中提供三种类型的发电机。如图 4.2 所示:图 4.2 三种类型的发电机14图 4.2 中依次为:标幺制(p.u.)下的标准(standard)同步发电机模块、标幺制(p.u.)下基本(fundamental)同步发电机模块、国际单位制(SI)下的基本(fundamental )同步发电机模块。p.u.标准同步电机模块与 SI 基本同步电机模块快的主要区别在于输入数据的单位,
33、SI 基本同步电机模块输入的大部分参数为有名值,而 p.u.基本同步电机模块要求输入标幺值。而 p.u. 标准同步电机模块和 p.u.基本同步电机模块的区别在于 p.u.基本同步电机模块需要输入阻尼绕组参数,p.u.标准同步电机模块则不需要。由于采用标幺值有利于励磁控制系统的仿真和分析,以及考虑到本文中使用的 WDT-III 实验电机中没有阻尼绕组参数,所以选用 p.u.标准同步电机模块作为研究对象。根据 WDT-III 实验发电机的参数,设置 p.u.标准同步电机模块的参数,如图 4.3 所示:图 4.3 p.u.标准同步电机模块参数设置4.2.2负荷与断路器模块1.本模型中采用的三相负荷模
34、块有两个。一个作为固定负荷,功率为1600W,占发电机容量的 80%;而第二个负荷则作为变化负荷,通过断路器进15行切换,功率为 200W,占发电机容量的 10%。功率因数为 0.8。两个负荷的参数设置如图 4.4 所示:图 4.4 两个三相负荷的参数设置2.断路器则采用三相断路器模块,设置初始状态为断开,经 4s 后闭合,再经 6s 后断开,从而模拟负荷变化的暂态过程。参数设置如图 4.5 所示:图 4.5 三相断路器模块4.2.3电压测量模块与转换模块1、电压测量采用三相电压电流测量模块(Three-PhaseV-I Measurement) ,采用标幺值模式,基准值为发电机额定电压 40
35、0V,设置如下:16图 4.6 电压测量模块2、由于模糊 PID 控制器的输入为线电压瞬时有效值的偏差,而电压测量模块得到的是线电压的瞬时值。因此要通过函数模块来进行转换。线电压瞬时有效值的推到如下:假设三相对称,线电压 , 。 为所2sinabUt2sin(10)bcUtU求的有效值。则有:(4.1)sisi(10)abbctt有:2sin(10)2(sinco2sin120)bc bcUUttt(4.2 )由 , (4.3)sin2abUt2cos1abUt代入式(4.2)得:3(i)bctt172 213162()()bc bcabababaUUU(4.4)等式两边同乘于分母部分得:(4
36、.5)2162ababcU化简得:有效值: (4.6)22()3abbc因此,可采用函数模块,利用测量模块的输入,转换电压瞬时值,函数模块设置如图 4.7 所示:图 4.7 函数模块参数设置4.2.4模糊 PID控制器的设置在经过滤波后得到的值为实际电压的标幺值,并不是模糊控制器所需的输入量(即不是电压偏差) 。因此还需要一个转换,即将测量得到的值与 1(即基准值)做减法,从而得到偏差值。如图 4.8 所示:图 4.8 输入输出量的转换根据第三章的相关结论,可以得到模糊 PID 的结构,如图 4.9 所示。封装18方法与滤波延时模块一样。图 4.9 模糊 PID 的内部结构其中核心部分为 Fu
37、zzy Logic Controller 模块。双击该模块,输入MUPIDFIS,即可调用第三章所设置好的模糊控制模块。如图 4.10 及 4.11 所示:图 4.10 模糊模块的设置图 4.11 模糊 PID 的设置194.3仿真条件设置将励磁控制系统的 matlab 模型构建好后,我们还必须合理的设置算法和精度。力求仿真结果不偏离理论与实际。Matlab 中提供了两大仿真算法:定步长(Fixed Step)与变步长(Variable Step) 。可在 Simulink 中的 Configuration Parameters 中进行选择,界面如图 4.20 所示。图 4.12 Config
38、uration Parameters 设置界面本文中由于包含了电机模块的刚性系统,采用 ode15s 与 ode23tb 算法比较适合,因此采用变步长的算法指令。4.4仿真结果与分析对上述各模块参数和仿真条件进行设置后,点击 按钮,进行仿真,仿真20时间设置为 8s。仿真结果如图 4.21 所示下:图 4.21a 机端电压总体波形图 4.21b 10%容量的负荷在 4s 投入时机端电压的变化21图 4.17c 10%容量负荷在 6s 切除时机端电压的变化结果分析:1、 由图 4.17a 可以看出,发电机机段电压的超调量为额定值的 10%左右,振荡次数 2-3 次,调节时间大约在 5s 左右,符
39、合中华人民共和国水利电力部发布的汽轮发电机交流励磁机励磁系统技术条件。 (超调量不大于 15%,振动次数不超过 3-5 次,调节时间不大于 10)2、 由图 4.17b 可以看出,4s 投入 10%的负荷,使得机端电压下降 10%左右,经过 0.4s 慢慢恢复稳定。3、 由图 4.17c 可以看出,6s 切除 10%的负荷,使得机端电压上升 10%左右,经过 0.3s 慢慢恢复稳定。225 C语言程序设计及仿真调试5.1 STC89C52RC单片机及 LY51(AVR)L3A 学习板简述该单片机开发板集实验、学习、下载、编程和应用于一体。板子上主要部件有:ADC 数模转换 IC(ADC0831
40、)、时钟 IC(DS1302)、存储器EEOROM(24C02)、红外接收 IC(1838)、红外发射电路、电机驱动IC(ULN2003A)、串口电平转换处理 IC(MAX232)等等。是学习与应用的理想选择。本实验板所采用的单片机为 STC89C52RC。STC89C52RC 是一种低功耗、高性能 CMOS8 位微控制器,具有 8K 在系统可编程 Flash 存储器。使用高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完全兼容。片上 Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位 CPU 和在线系统可编程 Flash,使得 STC89C5
41、2 为众多嵌入式控制应用系统提供高灵活、有效的解决方案。图 5.1 STC89C52RC 的管脚图235.2程序设计软件 Keil Vision25.2.1 系统概述Keil C51 是美国 Keil Software 公司出品的 51 系列兼容单片机 C 语言软件开发系统,与汇编相比,C 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易 用。Keil 提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这 些部分组合在一起。Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全W
42、indows 界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 Keil C51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。5.2.2 Keil C51 单片机软件开发系统的整体结构 C51 工具包的整体结构,uVision 与 Ishell 分别是 C51 for Windows 和for Dos 的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用 IDE 本身或其它编辑器编 辑 C 或汇编源文件。然后分别由 C51 及 C51 编译器编译生成目标文件(.OBJ)。目标文
43、件可由 LIB51 创建生成库文件,也可以与库文件一起经 L51 连 接定位生成绝对目标文件(.ABS)。ABS 文件由 OH51 转换成标准的 Hex 文件,以供调试器 dScope51 或 tScope51 使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如 EPROM 中。 使用独立的 Keil 仿真器时,注意事项 * 仿真器标配 11.0592MHz 的晶振,但用户可以在仿真器上的晶振插孔中换插其他频率的晶振。 * 仿真器上的复位按钮只复位仿真芯片,不复位目标系统。 * 仿真芯片的 31 脚(/EA)已接至高电平,所以仿真时只能使用片内ROM,不能使
44、用片外 ROM;但仿真器外引插针中的 31 脚并不与仿真芯片的 31 脚相连,故该仿真器仍可插入到扩展有外部 ROM(其 CPU 的/EA 引脚接至低电平)的目标系统中使用。245.3硬件连接图及各模块说明图 5.2 硬件连接图5.3.1同步信号模块图 5.3 同步信号输入模块如图 5.3 所示,该模块核心部分采用比较器 LM339。其输入端分别为 A 相与 B 相的电压,经电阻 R1,R1 起到限流和保护的作用,正弦同步信号经 VD1和 VD2 两个限制比较器输入电压的箝位二极管削波后,送入比较器 LM339 的输入端,LM339 输出为 180与电源相位相同的方波。同步检测信号发生正跳变时
45、,经反相以中断方式向单片机的 INT0(引脚 6)提供中断信号。接收到中断信号后,25由单片机内部程序开始执行相应的控制。5.3.2 AD数模转换器模块该模块主要用于在单片机接收到中断信号后,读取实时的机端电压值。连接图如图 5.4 所示:图 5.4 AD 数模转换模块由式(4.5)可知,在三相对称情况下,要得到线电压瞬时有效值,必须知道两个线电压的瞬时值。因此采用两个 AD 数模转换器,该数模转换器为 8 位的串行通信方式,其中,SDA 管脚为串行数据的输入,而 SCLK 则是控制时钟的输入。Vin(+)及 Vin(-)则接到电压互感器相应的相,已形成相应的相电压。单片机在接到中断信号后,开始读取数据,通过内部程序运算后,相应的输出脉冲,单片机的 P0.0-P0.5 口作为脉冲的输出口,通过 P0 各口接到整流桥晶闸管门极触发端口,最后由整流桥输出的励磁电压接回发电机的励磁控制端口上。本文只讨论到单片机输出部分,其他部分不作详细讨论。5.4程序流程图本程序可分为两大部分,包括数据读取及处理部分和数据输出部分。总的程序流程图如图 5.5 所示: