基于单片机的FTU测控保护一体化装置设计_第1页
基于单片机的FTU测控保护一体化装置设计_第2页
基于单片机的FTU测控保护一体化装置设计_第3页
基于单片机的FTU测控保护一体化装置设计_第4页
基于单片机的FTU测控保护一体化装置设计_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中文摘要论文题目:基于单片机的FTU测控保护一体化装置设计中文摘要:在微机保护毕业设计论文中,主要介绍了在CygnalC8051F020单片机基础上的一个过流保护电路以及它的初步的编程思想,硬件接口电路主要包括:12路数据采集模块,开关量输入输出模块,保护模块,人机接口模块,软件程序包括初始化程序,中断服务程序,线路保护程序等。第一章介绍了C8051单片机的特点;阐述了选题背景,提出了设计方案及整体框图,并介绍了设计中CygnalC8051F020混合信号ISPFLASH微控制器目标板的一些基本特点。介绍了微机保护的硬件原理,分别详细介绍了接口电路几个模块的功能以及框图。第三章介绍了微机保护的软件原理,分别详细介绍了软件部分的几个模块的编程思想,并介绍了几种微机保护的算法。第四章介绍了线路保护的程序逻辑原理,主要给出的是线路保保护测控单元的逻辑原理框图以及注释。第五章介绍了设计中所用到的目标板详细的资料,包括控制器内核,模拟外设,数字外设,存储器等,分别给出了结构框图以及相关寄存器内容。第六章总结了设计中的结果以及自己的一些体会附录中文摘要关键词:C8051,FTU,保护,接口电路,交叉开关,数据采集ABSTRACT InthethesisthatIdesignbeforegraduating,Imostlyintroduceoneprotectcircuitbasedontheone-chipmachine:CygnalC8051F020andthethoughtofprogrammingonthecircuit.Thecircuitinclude:12-bitADC,switchstatesinandout,UART0,interfacecircuitbetweenpeopleandmachineandsoon.Thesoftwareincludeinitialprogram,interruptserviceprogramandtheprotectingprogram.Inthefirstchapter,IintroducethemainfunctionandcharactersoftheC8051,introducethedesignmethod,andintroducesomemaincharactersoftheaimboard:CygnalC8051F020.Inthesecondchapter,Iintroducethehardwarethesisofcomputerprotectionincludingthemainpartsoftheinterfacecircuit.Inthethirdchapter,Iintroducethesoftwarethesisofcomputerprotectionandsomethoughtsofprogramming.Intheforthchapter,Iintroducethelogicoftheprogram.Includesomelogicpictureofthecontrollingpart.InthefifthchapterIintroduceaimboardcarefully.IncludetheC8051core,theanalogperipherals,digitalperipherals,memoryandsoon.Inthesixthchapter,IsummarizethethingsIhavegaininthedesign.keywords:C8051,FTU,protect,interfacecircuit,switch,A/D.目录1.开题报告 41.1选题背景 41.2方案提出。 61.3CygnalC8051F020混合信号ISPFLASH微控制器目标板简介 71.3.1概述 71.3.2Cygnal公司的C8051F对80C51的重要技术发展有: 71.3.3特性 82.微机保护装置的硬件原理 92.1概述 92.2数据采集系统 102.2.1电压形成回路 102.2.2采样保持电路(S/H)和模拟低通滤波器(ALF) 102.2.3A/D转换器(ADC) 132.3开关量输入及输出回路 142.3.1开关量输入回路 142.3.2开关量输出回路 162.4人机接口回路原理 172.4.1人机接口框图 172.4.2串行通信接口电路 173.微机保护的软件原理 193.1微机保护系统软件系统配置 193.1.1概述 193.1.2保护软件的配置 193.1.3保护软件的3种工作状态 203.2微机保护的算法 203.2.1算法基本概念 203.2.2半周积分算法 203.2.3傅氏变换算法 213.2.4解微分方程算法 223.3微机保护的主程序原理框图 233.3.1初始化 233.3.2自检的内容和方式 253.3.3自检循环 253.4采样中断服务程序原理 253.4.1采样中断服务程序原理框图 253.4.2采样计算 263.4.3TV断线的自检 263.4.4TA断线的自检 273.4.5起动元件原理 273.5故障处理程序框图原理 283.5.1故障处理程序框图 283.5.2中断服务程序与主程序各基本模块间的关系 294.保护部分逻辑 314.1三段式方向电流保护程序逻辑原理 315.目标板结构及框图 361.整体结构 362.C8051F020原理框图 373.片内各器件原理及框图说明 373.1片内时钟及复位 373.2片内存储器 383.3可编程数字I/O和交叉开关 393.4可编程计数器阵列 393.5串行端口 403.612位模/数转换器 406.结果分析及心得体会 42附录 44参考文献 461.开题报告1.1选题背景基于单片机的FTU测控保护一体化装置是王仲东教授实验室的实际课题项目之一,这些项目都有实际的工作意义,所以对我们将是很好的锻炼。我们这次的设计是利用C8051F020单片机系统组成对供电系统的过流保护装置,由我和王老师的一位研究生共同完成。近年来电子计算机特别是微型计算机技术发展很仇其应用已广泛而深入地影响着科学技术、生产和生活等各个领域.它使各部门的面貌发生了巨大的,往往是质的变化,继电保护技术也不例外。微机继电保护装置的特点:维护调试方便目前在国内大量使用的整流型或晶体管型继电保护装置的调试工作量很大,尤其是一些复杂的保护,例如超高压线路的保护设备,调试一套保护常常需要一周,甚至更长的时间。究其原因,这类保护装置都是布线逻辑的,保护的每一种功能都由相应的硬件器件印连线来实现.为确认保护装置是否完好,就需要把所具备的各种功能都通过模拟试验来校核一遍。微机保护则不同,它的硬件是一台计算机,各种复杂的功能是由相应的软件(程序)来实现的。换言之,它是用一个只会做几种单调的、简单操作(如读数,写数以及简单的运算)的硬件,胶以软件,把许多简单操作组合而完成各种复杂功能的。因而只要用几个简单的操作就可以检验微机的硬件是否完好.或者说如果微机硬件有故障,将会立即表现出来.如果硬件完好,对于己成熟的软件只要程序和设计时一样(这很容易检查),就必然会达到设计的要农用不着逐台做各种模拟试验来检验每一种功能是否正确.实际上如果经检数程序和设计时的完全一样,就相当于布线逻辑的保护装置的各种功能已被检查完毕,第四章将介绍,微机保护装置具有自诊断功能对硬件各部分和存放在EPILoM中的程序不断地进行自动检测,一旦发现异常就会发出警报.通常只要给上电源后没有警比就可确认装置是完好的.所以对微机保护装置可以说几乎不用调民从而可大大减轻运行维护的工作量.(2)可靠性高计算机在程序指挥下,有极强的综合分析和判断能九因而它可以实现常规保护很难办到的自动纠错即自动地识别和排除于比防止由于干扰而造成误动作.另外它有自诊断能力能够自动检测出本身硬件的异常部分配合多重化可以有效地防止拒乱因此可靠性很高。(3)易于获得附加功能应用微型计算机后,如果配置一个打印比或者其他显示设备,可以在系统发生故障后提供多种信息.例如保护各部分的动作顺序和动作时间记录,故酶类型和相别及故障前后电压和电流的波形记录等.对于线路保P,还可以提供故障点的位置(测距).这将有助于运行部门对事故的分折和处理.灵活性大由于计算机保护的特性主要由软件决定(不同原理的保护可以来用通用的硬件),因此只要改变软件就可以改变保护的特性和功能.从而可灵活地适应电力系统运行方式的变化。保护性能得到很好改善由于计算机的应用,使很多原有型式的继电保护中存在的技术问忍可找到新的解决办法.例如对接地距离保护的允许过渡电阻的能力,距离保护如何区别振荡和短路,大型变压器差动保护如何识别励磁涌流和内部故障等问题都已提出了许多新的原理和解决方法.1.2方案提出。我在过流保护装值设计中协助保护电路以及数据采集部分硬件电路的软件编程,所以主要工作是在已经设计好的硬件电路上根据C8051F020的用户手册中个寄存器定义,以及各器件功能表,用用户光盘中提供的CygnalIDE开发工具用C语言进行软件编程。在设计数据采集电路时需要对12路信号进行A/D变换,并对目标板自带的A/D转换芯片设置工作方式,选择输入输出端口。在保护电路中需要考虑到I段,II段,III段分别的逻辑关系,在硬件上都通过一些逻辑器件实现,这些在后面都会详细介绍。整体程序的关系如下所示:图1.1可以看到,整个程序包括初始化,数据采集,保护逻辑判断,保护动作等几个部分,同时硬件接口电路包括五个模块,包括数据采集,线路保护模块,开关量输入,开关量输出,人机接口,其中人机接口模块包括了键盘,LED显示以及一个485通信模块。1.3CygnalC8051F020混合信号ISPFLASH微控制器目标板简介1.3.1概述我们所使用的开发系统是沈阳新华龙公司代理的Cygnal系列单片机C8051Fxxx系列的C8051F020.在嵌入式系统低端的单片机领域,从8位机诞生至今,已近30年,在百花齐放的单片机家族中,8051系列单片机一直扮演着一个独特的角色。Cygnal公司推出的C8051F系列更令业界人士刮目相看。由intel公司推出的MCS-51提供了最佳兼容性,使MCS-51在被“肢解”改造后,还能以不变的指令系统,基本单元的兼容性保持着8051内核的生命延续,并在未来SOC发展中担任8位CPU内核的重任。当前Cygnal公司推出的C8051F又将8051兼容单片机上推上了8位机的先进行列。总结80C51系列的发展历史,可以看出单片机的3次技术飞跃。第一次飞跃是以Plilips公司为主力,将以“单片微型计算机”形态的MCS-51系列迅速推进到80C51的MCU时代,形成了可满足各种嵌入式应用要求的单片机系列产品;第2次飞跃则是ATMEL公司以其先进的FLASHROM技术推出AT89Cxx系列形成的引领单片机的FLASHROM潮流;而当前Cygnal公司推出的C8051F则是将80C51系列从MCU推向SOC时代的第3次飞跃。1.3.2Cygnal公司的C8051F对80C51的重要技术发展有:大力提高指令运行速度。随着单片及技术的发展,MCS-51已成为8位机中运行速度最慢的系列。为了提升速度,采用将机器周期从12个时钟周期缩短到4个和6个,速度提升有限。Cygnal公司在提升8051速度上采取了新的途径,推出了CIP-51的CPU模式。在这种模式中,废除了机器周期的概念,指令以时钟周期位运行单位。平均每个时钟可以执行完一条单周期指令。与8051相比,在相同时钟下,单周期指令运行速度为原来的12倍;全指令及平均运行速度为原来的9.5倍。C8051F进入了8位高速单片机行列。I/O从固定方式到交叉开关配置。迄今为止,I/O端口大多是固定位某个特殊功能的输入输出端口,这种固定方式的I/O端口,既占引脚多,配置又不够灵活。Secinx公司在推出的8位SX单片机系列中曾采取虚拟外设的方法将I/O口的固定方式转变为软件设定方式;而在Cygnal公司的C8051F中,则采用开关网络以硬件方式实现I/O端口的灵活配置。在这种通过交叉开关配置的I/O端口系统中,单片机外部为通用I/O端口,如P0口,P1,P2口;内部又输入输出的电路单元,通过相应的配置寄存器控制得的交叉开关配置到所选择的端口上。为单片机提供了一个完善的时钟系统。早期单片机都是用一个时钟控制片内所有步序。进入CMOS时代后,由于低功耗设计的要求,出现了在一个主时钟下,CPU运行速度可选择在不同的时钟频率下操作;或设置高,低两个主时钟,按系统操作要求选择合适的时钟速度或关闭时钟。而Cygnal公司的C8051F则提供了一个完整而先进的时钟系统。在这个系统中,片内设置有一个可编程的时钟振荡器,可提供2Mhz,4Mhz,8Mhz和16Mhz时钟的编程设定,外部振荡器可选择4中工作方式。当程序运行时,可实现内外时钟的动态切换。编程选择的时钟输出SYSCLK除片内使用外,还可从任意选择的I/O口输出。还有其他重要的技术发展,由于设计中涉及的不是很多,故在此不一一赘述了,只简略介绍如下:从传统的仿真调试到基于JTAG接口的在系统调试。从引脚复位到多源复位。最小功耗系统的最佳支持1.3.3特性C8051F虽然摆脱了5V供电,但仍可与5V电路方便的连接,所有的I/O端口可以接收5V逻辑电平的输入,在选择开漏加上拉电阻到5V后,也可驱动5V逻辑器件。这次毕业设计使用到的是C8051F020型号的单片机系统,属于C8051F02x系列。C8051F02x系列MCU是高度集成的片上系统。主要特点如下:25MIPS8051CPU64k字节Flash4352字节RAM外部数据存储接口2UARTs,SPI,SMBus/I2C5

个16位定时器,可编程计数器阵列(PCA)64

个I/O口12位ADC

:100ksps;8位ADC

:500ksps12位DAC比较器;电压基准;温度传感器JTAG非侵入式在系统调试-40℃到+85℃;TQFP-100封装2.微机保护装置的硬件原理2.1概述(1)模拟量插入系统(或称数据采集系统)包括电压形成、模拟滤波(ALP),采样保持(S/H)、多路转换(MPX)以及模数转换(A/D)等功能块,完成将模拟输入量准确地转换为所需的数字量。(2)CPU主系统包括微处理器(MPU)、只读存储器(一般用啪0M)、随机存取存储(RAM)以及定时器等。MPU执行存放在EPEOM中的程序,对由数据采集系统输入至RAM区的原始数据进行分析处理,以完成各种继电保护的功能。(3)开关量(或数字量)输入/输出系统由若干并行接口适配器(PIA或PIO)、光电隔离器件及有接点的中间继电器等组成,以完成各种保护的出口跳闸、信息警报、外部接点输入及人机对话等功能.硬件示意框图如图1.1所示.图2.1微机保护硬件示意框图2.2数据采集系统2.2.1电压形成回路微机要从被保护的电力线路或设备的电流互感器,电压互感器上取得信息,但这些互感器上的二次数值,数值范围对微机电路却不适用,故需要降低和变换。2.2.2采样保持电路(S/H)和模拟低通滤波器(ALF)(一)。S/H电路原理S/H电路的作用是在一个极短的时间内测量模拟输入量在该时刻的瞬时值,并在模拟-数字转换器进行转换的期间内保持其输出不变。S/H电路的工作原理可用图l—2来说明。它由一个电子模拟开关AS,电容Gb以及两个阻抗变换器组成。开关朋受逻辑输入端电乎控制。在高电平时46闭合此时,电路处于采样状态。Ch迅速充电或放电到Usr也采样时刻的电压值。AS的闭合时间应满足使Ch有足够的充或放电时间即采样时间。显然希望采样时间越短越好,因而应用阻抗变换器I,它在输入端呈现高阻抗,而输出阻抗很低,使Ch上的电压能迅速跟踪到Usr值。A3打开时,电容Ch上保持住AS打开瞬间的电压,电路处于保持状态。同样,为了提高保持能力,电路中应用了另一个阻抗变换器,它对Ch呈现高阻况,而输出阻抗(Usc侧)很低,以增强带负载能力。阻抗变换器可由运算放大器构成。(二).对采样保持电路的要求高质量的采样保持电路应满足以下几点:1)使cA上电压技一定的精度(例如误差小于0.1%)跟踪上Usr所需要的小采样宽度Tc(或称为截获时间),对快速变化的倍号采样阶要求Tc尽量短,以便可用很窄的采样脉冲,这样才能准确的反映某一时刻的Usr值。2)保持时间要长。通常用下降率U/(Ts-Tc)来表示保持能力。3)模拟开关的动作延时、闭合电阻和开断时的漏电流要小。上述1)和2)两个指标一方面决定于图1—2中所用阻抗变换器的质量,另一方面和电容器Ch的容量有关。就截获时间来说,希望Ch越小越好,但就保持时间而言,Ch则越大越好。阅此设计者应根据使用场合的特点,在二者之间权衡后选择合适的Ck值下面通道图l—4所示的一种典型采样保持器的特性曲线进一步说明采样保持电路性能与电容Ch大小的关系。图2.2采样保持电路性能与电容Ch大小的关系。由图1—4可见,Ch不宜用太小的值,这不仅因为保持能力随Ch下降而下降(图中曲线1),还因为Ch和采样脉冲输入电路之间不可避免地有一定的通过分市电容的耦合。因而在从采样状态转到保持状态的瞬间,采样脉冲由高电乎变到低电平,这种电平的跳变可能要通过分市电容的耦合影响Ch的保持值,由于这种原因造成的误差叫保持跳变误差(holdstep).不难理解Ch值越小,保持跳变误差越大(图中的曲线2)。对微机保护来说,通常可选用Ch=o.olpF此时从曲线1可见,保持下降率约为2mV/s,完全可以忽略(以后将看到保护系统的采样间隔一般不大于2ms),而达到0.1%的采样跟踪精度所需的最小截获时间约为20ps,仅相当于工频的o.36。,也是完全允许的。(三)采样频率的选择和ALF的应用图l—3中所示采样间隔Ts的倒数称为采样频率fs.采样频率的选择是微机保护硬件设计中的一个关键问题,为此要综合考虑很多因素并从中作出权衡。采样频率越高,要求CPU的速度越高。因为微机保护是一个实时系统,数据采集系统以采样频率不断地向CPu输入数据,CPU必须要来得及在两个相邻采样间隔时间Ts内处理完对每一组采样值所必须作的各种操作和运算,否则CPU将跟不上实时节拍而无法工作.相反采样频率过低将不能真实地反映被采样信号的情况。可以证明,如果被采样信号中所含最高频率成份的频率为Fmax则采样频率fs必须大于fmax的二倍,否则将造成频率混叠.这里仅从概念上来说明采样频率过低造成频率混叠的原因。图2.3频率混叠示意图对微机保护系统来说,在故障初瞬,电压、电流中可能合有相当高的频率分量(例如2KHz以上),为防止混叠,fs将不得不用得很高,从而对硬件速度提出过高的要求.但实际上目前大多数的微机保护原理都是反映工频量的,在这种情况下可以在采样前用一个低通模拟滤波器(ALF)将高频分量滤纸这样就可以降低fs,从而降低对硬件提出的要求。2.2.3A/D转换器(ADC)(一)AOC的一般原理由于计算机只能对数字量进行运算,而电力系统中的电流、电压信号均为模拟量,因此必须采用模数转换器将连续的模拟量变为离散的数字量。模数转换器可以认为是一编码电路。它将输入的模拟量相对于模拟参考量Ur经一编码电路转换成数字量D输出。一个理想的A/D转换器,其输出与输入的关系式为;D=[Ua/Ub](2.1)式中D是小于1的二进制数.对于单极性的模拟量,小数点在最高位前,即要求输入Ua必须小于Ur,D可表示为(2.2)式中为其最高位,常用英文MSB缩写为最低位,简称为LSB,~均为二进制码,其值只能是“1”或“0”。因而又可写为:)(2.3)以上即为A/D转换器中模拟信号量化的表示式。由于编码电路的位数总是有限的,例如式(1)中有n位,而实际的模拟公式却可能为任意值,因而对连续的模拟量用有限长位数的二进制数表示时不可避兔的要舍去比最低位(LSB)更小的数,从而引入一定的误差。显然这种量化误差的绝对值最大不会超过和LSB相当的值。因而模数转换编码的位数越多,即数值分得越细,所引入的量化误差就越小,或称分辨率就越高.(二).C8051F020ADC0的启动及工作方式ADC0的最高转换速度为100ksps,其转换时钟来源于系统时钟分频,分频值保存在寄存器ADC0CF的ADCSC位。有4种启动转换方式,由ADC0CN中的ADC)启动转换方式位(ADC0CM1,ADC0CM0)的状态决定.转换的触发源有:1.向ADC0CN的AD0BUSY位写1;2.定时器3溢出(即定时的连续转换);3.外部ADC转换启动信号的上升沿,CNVSTR;4.定时器2溢出(即定时器的连续转换)。在本社几种主要用到的是定时器3溢出,即定时器3计时一旦溢出,就会产生中断并启动ADC0,在转换期间AD0BUSY被置“1”,转换结束后复“0”,AD0BUSY位的下降沿触发一个中断并将中断标志AD0INT置“1”。转换数据被保存在ADC数据字的MSB和LSB寄存器:ADC0H和ADC0L.转换数据在寄存器对其中的存储方式可以是左对齐或右对齐。(三)D/A转换器(DAC)由ADC的原理分析可知,为了实现模数变换(ADC),在A/D变换中必须具备有用于反馈比较的数模转换器(DAC)。因此达里先简单介绍一下数模转换器.数模转换器的作用是将数字量D经一解码电路变成模拟电压输出。数字量是用代码按数位的权组合起来表示的,每一位代码都有一定的权,即代表一具体数值。因此为了将数字量转换成模拟量,必须将每一位代码技其权的值转换成相应的模拟量,然后将代表各位的模拟量相加,即得与被转换数字量相当的模拟量,亦即完成了数模转换。2.3开关量输入及输出回路2.3.1开关量输入回路对微机保护装置的开关量输入即接点状态(接通或断开)的输入可以分成以下两大类:1)安装在装置面板上的接点。这类接点包括在装置调试时用的或运行中定期检查装置用的键盘接点以及切换装置工作方式用的转换开关等。2)从装暨外部经过端子排引入装置的接点.例如需要由运行人显不打开装置外盖而在运行中切换的各种压板,转换开关以及其他保护装置和操作继电器的接点等。对于装在装置面板上的接点,对直接接至微机的并行接口,如图所示,只要在初始化时规定图中可编程的并行口的PA,为输入口,则CPU就可以通过软件查询,随时知道图中外部接点K1的状态。图2.4对于从装置外部引入的接点,如果也按上图接线将给微机引入干扰,故应经光电隔离如下图所示。图中虚线框内置—个光电耦合器件,集成在一个芯片内。当外部接点K1接通时,有电流通过光电器件的发光二极管回路,使光敏三极管导通。Kl打开时,则光敏三极管截止。因此三极管的导通和截止完全反映了外部接点的状态,如同将K1接到三极管的位置一样。不同点是图中可能带有电磁干扰的外部接线回路和微机的电路之间无电的联系,而光电耦合芯片的两个互相隔离部分间的分布电容仅仅是几个微法,因此可大大削弱于扰。图2.52.3.2开关量输出回路开关量输出主要包括保护的跳闸出口以及本地和中央信号等。一般都采用并行接口的输出口来控制有接点继电器(干簧或密封小中间继电器)的方法,但为提高抗于扰能力,最好也经过一级光电隔离如图所示。只要由软件使并行口的PB0输出“0”,PB1输出“1’,便可使与非门Hl输出低电平,光敏三极管导通,继电器J被吸合。图2.6在初始化和需要继电器J返还时,应使PB0输出“1”,PB1输出“0”。设置反相器B1及与非门H1而不是将发光二极管直接同并行口相连,一方面是因为并行口带负载能力有限,不足以驱动发光二极管,另一方面因为采用与非门后要满足两个条件才能使J动作,增加了抗干扰能力。最后应当注意图中的PB0经一反相器而PB1却不经反相器,这样接可防止拉合直流电源的过程中继电器J的短时误动。因为在拉合直流电源过程中,当5V电源处在中间某一临界电压值时,可能由于逻轮电路的工作紊乱而造成保护误动作,特别是保护装置的电源往往接有大量的电容器,所以拉合直流电源时,无论是5V电源还是驱动继电器J用的电源E,都可能相当缓慢的上升或下降,从而完全可能来得及使继电器J的接点短时闭合。采用图示的接法后,由于两个相反的条件的互相制约,可以可靠的防止误动作。2.4人机接口回路原理2.4.1人机接口框图一般说来,微机保护的人机接口是指键盘,显示器及接口CPU插件电路,人机接口回路的主要作用是通过键盘和显示器完成人机对话任务,时钟校对及与各保护CPU插件通信和巡检任务。在单CPU结构的保护中,接口CPU就由保护CPU兼任。为了减轻保护CPU的负担,可由可编程键盘,显示器专用接口芯片来完成键盘,显示器与保护CPU的接口任务,在本设计中用到的是8位的键盘接口。图2.7多CPU保护的人机接口插件原理图2.4.2串行通信接口电路人机接口与保护CPU之间的串行通信(一).串行通信接口电路及其作用人机接口与保护CPU之间的串行通信的作用是人机对话和巡检,其电路如图所示。这个串行通信系统是主从分布式的系统,接口CPU是主机,保护CPU是从机,主机发讯的T段接收从机收讯的R端,从机发讯的T端接主机收讯的R端。接口插件的串行通信回路,由接口CPU串行接口与各保护插件的串行口按辐射状相连,每个保护插件都可以同人机接口进行双向的串行通信,而各保护插件之间不能互相通信,。图中8256,CPU1,CPU2,CPU3,CPU4分别代表人机串行通信接口及高频,距离,零序电流和综重插件的CPU。串行接口在调试状态下用于传送人机接口的键盘命令或接收保护CPU插件的数据。在运行状态下,用于巡检各保护CPU插件,当系统发生故障后,则能通过串行接口向主机传送故障报告,并通过显示器显示出来。(二).巡检及巡检中断告警正常运行状态,接口插件不断的通过串行口向各CPU插件发出巡检令,当各CPU军正常时,分别作出回答,如果某一保护CPU插件自检出硬件故障,一方面驱动本CPU告警继电器AXJN切断跳闸出口电源,另方面在受到巡检令后向接口插件传送故障信息及出错码,接口插件受到出错码后,驱动总告警继电器,并显示或打印出故障信息。如果接口插件发出巡检令,某一保护CPU未做出回答,则接口插件通过外部复位开出,强制该CPU复位,然后再发出巡检令,如果仍得不到回答,则驱动总告警开出,并显示或打印出该CPU出错信息。采用先复位后告警是为了防止某一保护插件因干扰造成出格,但并无硬件损环时,可再复位后使其恢复正常工作,不必告警,如果人机接口插件发生故障而不能执行循环监测程序时,各保护CPU插件在规定的时间内收不到巡检命令,就驱动巡检中断继电器告警。3.微机保护的软件原理3.1微机保护系统软件系统配置3.1.1概述由于微机保护的硬件分为人机接口和保护两大部份,因此相应的软件也就分为接口软件和保护软件两大部份。我在此主要介绍保护软件的原理及设计。3.1.2保护软件的配置各保护CPU插件的保护软件配置为主程序和两个中断服务程序。主程序通常都有3个基本模块:初始化和自检循环模块,保护逻辑判断模块和跳闸处理模块(即故障处理模块)。一般来说前后两个模块在不同的保护装置是基本上相同的,而保护逻辑判断模块就随不同的保护装置而相差甚远。中断服务程序有定时采样中断服务程序和串行口通信中断服务程序,在不同的保护装置中,采样算法是不同的,例如采样算法上有些不同或者因保护装置有些特殊要求,是的采样中断服务程序部分也不尽相同。不同保护的通信规约不同,也会造成程序的很大差异。3.1.3保护软件的3种工作状态保护软件有3种工作状态:运行,调试,不对应状态。不同状态时程序流程也就不相同了。有的保护没有不对应状态,只有运行和调试两种状态。3.2微机保护的算法3.2.1算法基本概念微机保护的算法是软件中的关键问题。微机保护算法有很多种,主要考虑的是计算机的精度和速度。速度包括两个方面:采样点数,运算工作量。精度往往与速度相矛盾,本节主要分析保护常用的三种算法:半周积分算法,傅氏变换算法,解积分方程式算法。3.2.2半周积分算法当被采样的模拟量是交流正弦量时可使用半周积分算法。该算法的依据是一个正弦量载任意半周期内绝对值的积分为一个常数。并且积分值和积分的起始点和出相角无关,如图2.1所示的正弦波中画有斜线的两块面积是相等的据此,半周期的面积可写成:(3.1)在半周期面积S常数求出后,可利用上式算出交流正弦量i的有效值(电压类似)。而半周期面积S常数可以通过图2.2所示的梯形法求和算出:(3.2)只要采样点数足够多,用梯形法近似积分的误差可以做到很小。这种算法不能抑制直流,对于一些要求不高的保护可以采用此法。图3.1图3.23.2.3傅氏变换算法当被采样的模拟量不是正弦波而是一个周期性时间函数时,可采用傅氏变换算法。傅氏算法来源于傅立业级数,可用下式表示:(3.3)式中n为自然数,n=0,1,2,……表示谐波分量次数。根据傅立业级数的逆变换原理可求得:(3.4)于是x(t)中的基波分量为:(3.5)合并正,余弦项,可写为:(3.6)式中X为基波分量的有效值。将用和角公式展开,得到:(3.7)对此可根据a1和b1求出有效值和相角:(3.8)在用计算机用梯形法处理积分可求得:(3.9)于半周积分算法相比,傅氏变换算法可以计算周期性时间函数,还可以算出初相位角,其积分运算结果同样具有数字滤波功能,运算工作量也不大,但是这种算法容易受输入模拟量中的非周期分量影响很大,通常要加一些措施克服误差。3.2.4解微分方程算法解微分方程算法主要用于微机距离保护中计算阻抗,它利用电力线路的电压微分方程关系式,求解二元一次方程的未知数:短路故障线路电阻R1和线路电感L1。该算法前提条件式假设输电线路的分布电容可以忽略。当输电线路发生故障时,从故障点到保护安装出的线路可用电阻R1和电感L1串联电路来表示,下列微分方程式成立:(3.10)可见,当已知采样电压和电流时,通过解上式可求得R1和L1。如果在两个不同时刻t1,t2分别采样计算出u,I,di/dt,那么就可以得到两个独立的方程式:(3.11)连立以上两式就可以求出未知数R1,L1,也就是可以求出线路阻抗Z=R1+jL1,这就是二元一次代数方程式求解短路线路阻抗的基本原理。连立求得R1和L1有:(3.12)在用计算机处理以上两式时,电流导数可以用差分法计算,即取t1和t2分别为两个相邻的采样瞬间的中间值如下图所示:图3.3于是近似有下式:(3.13)可见只要采样点数N取得足够多,其结果就可以计算的足够精确。解微分方程法所依据的微分方程式忽略了输电线分布电容。由此带来的误差只要用一个低通滤波器预先滤出电压和电流种的高频分量就可以基本消除,因为分布电容的容抗只有对高频分量才是不可忽略的。3.3微机保护的主程序原理框图3.3.1初始化初始化是指保护装置在上电或按下复位键时首先执行的程序,它主要是对单片机及可编程扩展芯片的工作方式,参数的设置,以便在后面的程序中按预定方案工作。初始化(一)是对单片微机及其扩展芯片的初始化,使保护输出的开关量出口初始化,赋以正常值,以保证出口继电器均不动作。初始化(一)是运行与监控程序都需要用到的初始化程序。初始化(二)包括采样定时器的初始化,控制采样间隔时间,对RAM区中所有运行时要使用的软件计数器及各种标志为清零等程序。数据采集系统的初始化主要指采样值存放地址指针初始化。图3.43.3.2自检的内容和方式RAM的读写检查定值检查EPROM求和自检及CRC自检开出自检3.3.3自检循环在开放了中断后,所有准备工作就绪了,主程序就进入自检循环程序阶段。故障处理程序结束返回主程序,也是在这里进入自检循环的。自检循环包括查询检测报告,专用及通用自检等内容。3.4采样中断服务程序原理3.4.1采样中断服务程序原理框图采样中断服务程序主要包括采样计算,TV,TA断线自检和保护启动元件三个部分。同时还可以根据不同的保护特点,增加一些检测被保护系统状态的程序。采样中断服务程序原理框图如下:图3.53.4.2采样计算在计算之前必须分别对三相电流,零序电流,三相电压,零序电压及线路电压的瞬时值同时采样。保护采样计算就是采用某种之前介绍的算法分别计算各向电压电流的有效值,相位,频率及阻抗等。微机保护的采样计算是利用微机能进行数值计算和存储的特点,实现了许多常规保护靠硬件根本无法实现的功能,还是的保护实现复杂的动作特性变得十分简单灵活而方便。3.4.3TV断线的自检检查TV二次是否断线可以有以下两种判据:正序电压小于30V,而任一相电流大于0.1A;负序电压大于8V.并非所有保护都有该项功能,如三段式的电流保护就不需要做TV断线自检3.4.4TA断线的自检在TA二次回路断线或电流通道的中间环节接触不良时,有的保护有可能误动作,因此对TA二次回路必须监视,在断线时闭锁保护并应告警。对大接地电流系统可采用如下两个零序电流的判据:(1)变压器“”侧出现零序电流则判为该侧断线;(2)“Y”接线侧,比较自产零序电流()和变压器中性点侧TA引入的零序电流(3),出现差流则判断该侧TA断线。对于中低压变电所也可选择其他判断方法。以下是变压器保护采用负序电流来判断TA断线的两个判据:(1)TA断线时产生负序电流仅在断线一侧出现,而在故障是至少有两侧会出现负序电流(2)以上判据在变压器空载时发生故障的情况下,因仅电源侧出现负序电流,将误判TA断线。因此要求另加条件,降压变压器低压侧三相都有一定的负荷电流。在TA断线期间,软件同样要标志位DLDX=1来标志TA断线,并根据整定的字决定是否应退出运行。3.4.5起动元件原理(一)起动元件作用为了提高保护动作的可靠性,保护装置的出口均经起动元件闭锁,只有在保护起动元件起动后,保护装置的出口闭锁才被解除。在微机保护装置里,起动元件是由软件来完成的。起动元件起动以后,标志位KST置一。(二)保护起动元件逻辑中低压变电所通常采用III段电流起动元件,是常规保护的起动逻辑以下是保护起动元件逻辑框图:图3.6当采样中断服务程序的起动元件保护起动,则转入故障处理程序。在进入故障处理程序后,CPU的定时采样仍不断进行。因此在执行故障处理程序过程中,每隔采样周期Ts,程序将重新转入采样中断服务程序。在采样计算完成之后,检测保护是否起动过,如KST=1则不需再进入TV,TA自检及保护起动程序部分,直接转到中断服务程序出口,再回到故障处理程序。3.5故障处理程序框图原理3.5.1故障处理程序框图故障处理程序包括保护软压板的投切检查,保护定值比较,保护逻辑判断,跳闸处理程序和后加速部分。故障处理程序框图如下所示:图3.73.5.2中断服务程序与主程序各基本模块间的关系采样中断服务程序与主程序及保护逻辑,跳闸及后加速处理程序之间的关系,如下图所示:图3.8保护CPU芯片内有四个定时器,定时时间可由初始化决定。在中断响应后就转入采样中断服务程序。正常运行时采样中断服务程序结束后就自动转回执行主程序中原被中断的指令。但是在采样计算后如发现被保护的线路,设备有故障,就会起动保护,随即修改中断返回地址,强迫中断服务程序结束后进入故障处理程序,。在执行故障处理程序时,仍然要定时进入采样中断服务程序的,只是因这是起动标志位KST=1,中断结束后就不再修改中断返回地址了,在中断结束后自动回到原被中断了的故障处理程序,即使是在执行跳闸后加速程序的时候,也要定时进入中断服务程序,这样做可是的保护任何时候都获得实时的采样数据,保证了保护的实时性和动作的正确性,这正是微机保护的优越之处。在进入故障处理程序以后,显示保护逻辑判断,处理结束后返回到主程序的自检循环部分,如果保护逻辑判断不应动作,仍返回到自检循环。4.保护部分逻辑在微机保护故障处理程序中,最主要的部分是保护逻辑程序。各种不同的保护因功能和原理不相同,他们的逻辑顺序也相差甚远。本章将介绍设计中用到的线路保护测控单元的逻辑原理及其框图。4.1三段式方向电流保护程序逻辑原理与常规保护相同,微机电流保护也是设计成三段式的。I段是瞬时电流保护,II段是弦时电流速断保护,III段是过电流保护,三段均可选择带方向保护保护或不带方向馈线保护。为了提高过电流保护的灵敏度及提高整套保护动作的可靠性,线路的电流保护均经低电压闭馈。这样做看起来较复杂,在常规保护中通常很少这样配置,但对于微机线路保护设置低电压闭锁时不需要增加任何硬件,完全采用软件来实现。下面会给出本设计中三段保护的测控单元逻辑原理图及相应注释:线路保护测控单元功能配置:图4.1低压闭锁方向过流保护I段I1set为过流I段保护电流定核。Uzd为低电压闭锁定值。SW1为过流I段方向闭锁投退控制字。SW2为过流I段保护投退控制字图4.2低压闭锁方向过流保护II段I2set为过流II段保护电流定值Uzd为低电压闭锁定值。T2zd过流II段保护时间定植SW1为过流II段方向闭锁投退控制字SW2为过流II段保护投退控制字图4.3重合闸保护Tzd重合闸保护时间定值。Uzd为任意相别的电压定植。注:由于过流III段和过流II段基本配置一样,只是III段可以选择定时限或反时限,III段保护功能原理图不再给出。线路保护测控单元功能配置:图4.4过流后加速保护Iset为过流后加速保护电流定值。Tzd过流后加速保护时间定植。SW为过流后加速保护投退控制字图4.5过负荷告警保护Iset为过负荷告警保护电流定值Tzd过负荷告警保护时间定值SW为过负荷告警保护投退控制字图4.6零序过流保护IOset为零序过流保护电流定值Tzd为零序过流保护是定值SW1为零序过流保护跳闸投退控制字SW2为零序过流保护发信号投退控制字图4.7零序过压保护Tzd为零序过压保护时间定值U0zd为零序过压保护电压定值SW为零序过压保护跳闸投退控制字图4.8低周减载Iset为无流闭锁低周电流定值。Sset为无流闭锁滑差低周定值。Tzd为低周减载动作时间定值。SW1为滑差闭锁低周投退控制字SW2为无流闭锁低周投退控制字SW3为低周减载投退控制字。线路保护测控单元功能配置:图4.9控制回路断线告警图4.10小电流接地选线SW1为零序过流保护跳闸投退控制字SW2为零序过流保护发信号投退控制字Tzd为零序过流保护时间定值图4.11母线充电保护Iset为电流保护整定值Tzd为过流保护时间定值电流整定应躲过母现对地的电流定值。5.目标板结构及框图1.整体结构C8051F020结构框图如下:C8051F02x系列MCU是高度集成的片上系统。主要特点如下:25MIPS8051CPU64k字节Flash4352字节RAM外部数据存储接口2UARTs,SPI,SMBus/I2C5

个16位定时器,可编程计数器阵列(PCA)64

个I/O口12位ADC

:100ksps;8位ADC

:500ksps12位DAC比较器;电压基准;温度传感器JTAG非侵入式在系统调试-40℃到+85℃;TQFP-100封装2.C8051F020原理框图C8051F020原理框图如下3.片内各器件原理及框图说明3.1片内时钟及复位扩展的中断系统向CIP-51提供22个中断源,允许大量的模拟以及数字中断控制器。MCU有多达7个复位源。MCU内部有一个独立运行的时钟发生器,在复位后被默认为系统时钟。片内时钟及复位原理框图如下:3.2片内存储器片内存储器组织框图:3.3可编程数字I/O和交叉开关该MCU具有标准8051的端口(0,1,2,3)以及附加开关(4,5,6,7),由于可以按位寻址,因此共有64个通用I/O端口。数字交叉开关,允许将内部数据资源映射到P0,P1,P2,P3端口的I/O引脚数字交叉开关原理框图:3.4可编程计数器阵列片内可编程计数器/定时器阵列(PCA)包括一个专用的计数器/定时器时间基准和5个可编程的捕捉/比较模块。每个捕捉/比较模块都有6种工作方式

可编程计数器阵列(PCA)原理框图:3.5串行端口C8051F020的MCU内有2个增强型全双工UART0,UART1.SPI总线和SMBus/I2C.3.612位模/数转换器C8051F020片内有一个12位SARADC(ADC0),一个9通道输入多路选择开关和可编程增益放大器。该ADC工作在100ksps的最大采样速率时可提供真正的12位精度。ADC0的的基准电压可以在DAC0输出和外部VREF之间选择。ADC完全由CIP-51通过特殊功能寄存器控制。A/D转换有4种启动方式:软件命令,定时器2溢出,定时器3溢出和外部信号输入。在本次设计中我们主要用到的A/D启动方式为定时器3溢出。在转换完成后,12位转换结果数据字被锁存到两个特殊功能寄存器ADC0L和ADC0H中,并可由软件控制为左对齐或右对齐。12位ADC原理框图如下:6.结果分析及心得体会基于C8051单片机的过流保护系统包括硬件和软件两个部分,在设计中我主要负责软件的部分,任务是在设计好的硬件电路上进行软件编程,以及对目标板的测试。由于硬件电路完成的时间比较晚,因此,我的工作主要放在对目标板的测试上,并尝试编写了一些如两路以及十二路数据采集的程序,通信模块的程序等。过流保护系统的硬件接口电路分为五个模块,包括数据采集,线路保护模块,开关量输入,开关量输出,人机接口,其中人机接口模块包括了键盘,LED显示以及一个485通信模块。我们所使用的目标板CygnalC8051F020拥有一个高速8051微控制器内核,4K+256字节内部存储,64K闪存,64K外部存储,8字节的I/O端口,16位的可编程计数器/定时器阵列,12位的ADCSAR,片内JTAG调试和边界扫描(支持在系统调试),2-16MHz内部可编程振荡器等等。对这块加值不菲的板子我最大的感受就是它的在系统调试功能的确很强大,在附带的编译软件中,我们可以很轻松的用一些初始化程序对其进行测试,并且可以随时进行修改后就调试,十分方便。微机保护的软件部分为4个大的模块,分别是初始化程序,数据采集模块,中断服务程序模块以及故障处理模块。其中故障处理模块为最重要的部分,它包括比较,逻辑判断,跳闸处理,保护动作等部分。而且在编写软件之前要先学习微机保护的算法,包括对正弦信号采样的算法,周期时间函数采样的算法以及微分算法等,这是软件编写的基础。然后是画出保护线路的逻辑框图,即第4章所交代的内容,最后根据逻辑框图进行编写在参考了一些资料,基本了解了微机保护的硬件原理和软件原理后,我尝试着编写了几个程序。最先编写的是一个两路的数据采集子程序,由于C8051F020中附带的的ADC为12路的,所以这个程序只是个基础,在2路的基础上只要做不多的修改就可以做出12路的程序。在最初做2路的子程序时,我还是遇到了不少的麻烦,由于以前从来没有用C语言对硬件进行编程,所以一下子觉得模不着头脑,特别是地址分配的问题困扰了我好久,后来明白了每一个路接模拟信号其实都已经有硬件连线确定了对应的地址,用P0端口的0,1,2,3这四位来确定每一路的输入,如给P0置0x01就是指对第2路信号进行采样.另外还有就是模数转换后数据结果存储的问题,由于转换后数据存储在ADC0中,而要求把结果存储在RAM的一个地址空间中,即存储在一个事先定义好的数组中,而在不知道ADC0中的数据可以直接存储到数组的情况下,我用了一个很繁琐的算法将数据一位一位的转移,走了不必要的弯路。另外在编写及调试程序的过程中,我大量接触到了结构化程序的例子,最初我觉得没有必要一个端口或者一个寄存器的初始化就用一个子程序,但是渐渐的我发现了结构化编写程序的好处,条理清晰,易于看懂,容易修改,不容易出错并且容易发现错误,和起我们以前编程时的一个main()函数到底的做法相比,虽然篇幅上可能多一些,但是绝对值得,而且在编写大的程序是,由于子函数可以多次调用,还可以省去许多不必要的内容,让我下决心改掉以前的习惯,这次就开始尝试了用结构化的方法编写,虽然还不是很熟练,但是我相信经过一个过程,我会逐步掌握它的。在这次工作中,由于实际的电路是整个程序的基础,所以在没有最终电路图的时候,最终没有编写出完整的程序,不能不说是一个遗憾。致谢毕业设计就要结束了,在这将近半年的时间里,从接受课题到接触课题到课题的完成,大大增长我了实际工作的经验.在本次设计中,我得到了王仲东教授的详细指导和热情帮助,从课题的选定到器件的配置,从课题的展开到论文的完成,都凝聚着王老师的关心和热情指导。另外,带领我设计的研究生雷雨师姐也给与了我巨大的帮助,从一开始,他给我介绍整个设计的具体环节和步骤,到后来借给我多本参考资料,并指导我学习例程,在我不懂的时候极有耐心的帮我讲解,再后来指导我在目标板上进行程序的调试,到最后对我论文的修改以及对我编写的程序提出的诸多意见与建议,都给了我真正的帮助,在此表示衷心的感谢最后,我还要感谢和我同班的陈秀峰同学,虽然我们做的不是一个项目,但在最后写论文的过程中,他对我论文格式以及一些要求都提出了中肯的建议,使我论文的完成少走了不少弯路,在此一并感谢附录1.十二路ADC转换子程序:#include<c8051f020.h>//SFRdeclarations#include<stdio.h>////由于c8051f020.h中只有定义八位的特殊寄存器地址,因此需要在此再定义一次以下16位的特殊寄存器地址//sfr16DP=0x82;sfr16TMR3RL=0x92;sfr16TMR3=0x94;sfr16ADC0=0xbe;sfr16ADC0GT=0xc4;sfr16ADC0LT=0xc6;sfr16RCAP2=0xca;sfr16T2=0xcc;sfr16RCAP4=0xe4;sfr16T4=0xf4;sfr16DAC0=0xd2;sfr16DAC1=0xd5;//全局定量//#defineSYSCLK22118400//系统时钟频率为11.1184MHZ#defineBAUDRATE115200//UART的波特率#defineSAMPLERATE050000//ADC0的采样频率#defineNUM_SAMPLES12//定义采样的路数#defineTRUE1#defineFALSE0sbitLED=P1^6;//LED='1'对应P1第6位即LED//显示sbitSW1=P3^7;//SW1=0表示转换开关按下////函数定义//voidSYSCLK_Init(void);voidPORT_Init(void);voidUART0_Init(void);voidADC0_Init(void);voidTimer3_Init(intcounts);voidADC0_ISR(void);////全局变量GLOBAL_VARIABLES//xdataunsignedsamples[NUM_SAMPLES];//定义转换结果存储的数组bitADC0_DONE;//为1的时候ADC0正在进行转换////主程序MAINRoutine//voidmain(void){inti;WDTCN=0xde;//禁用看门口定时器WDTCN=0xad;SYSCLK_Init();//初始化系统时钟UART0_Init();//初始化端口UART0Timer3_Init(SYSCLK/SAMPLERATE0);ADC0_Init();//初始化ADCEA=1;//Enable所有中断while(1){//不断循环ADC0_DONE=FALSE;LED=1;//当ADC0处转换过程中时,LED亮EIE2|=0x02;//enableADC0中断while(ADC0_DONE==FALSE);//等待ADC0各路采样全部完成LED=0;//全部采样完后,LED灭for(i=0;i<NUM_SAMPLES;i++){printf("%u\n",samples[i]);}printf("\n");//显示出所有的采样值}}////系统时钟函数初始化SYSCLK_Init////这个源程序给系统时钟初始化为22.1184MHZ//voidSYSCLK_Init(void){inti;OSCXCN=0x67;//用22.1184MHZ晶振对外部震//荡器启动for(i=0;i<256;i++);//等待振荡器启动while(!(OSCXCN&0x80));OSCICN=0x88;//选择外部震荡作为时钟源}////端口初始化////配置交叉开关和GPI0端口//voidPORT_Init(void){XBR0=0x04;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论