学位论文—基于单片机的智能低压电动机综合保护器的研究--硬件设计.doc
毕业设计(论文)任务书题目: 基于单片机的智能低压电动机综合保护器的研究硬件设计 专业班级:电气及其自动化 05-22 学院: 科信学院 设计起止日期: 2009.3.162009.5.25 题目性质: 联系实际的题目 假想的题目技术要求及原始数据: 要求低压鼠笼式异步电动机功保护器具有过载、过电流、断 相、漏电、短路等保护。过载保护时间滞后时间为60180s,断相保护动作滞后时间小 于1s,短路保护滞后时间小于0.2s。可显示故障时间和类型。 动作值的修改。 主要任务: 1 综合保护器总体方案的确定 2系统的软件设计 (流程图) 3软件编程和调试 4手工绘制一张1#图纸,用计算机绘制12 5撰写并打印设计说明书一份张1#图纸 学 生 (签 字): 系主任(签字): 指导教师(签字): 院 长 (签字): 摘 要摘 要 电动机因具有结构简单、价格低廉、使用维护方便等优点,在国民经济各方面被广泛采用。然而,由于供电状态和机械负荷的多变性,使得电动机的故障率较高,不仅会损坏电动机本身,而且会影响整个生产,造成较大的经济损失。因此,电动机的安全运行对保证厂矿企业的正常生产是非常重要的。本文首先分析了异步电动机的常见故障,以交流采样的方法进行数据采集为依据,采用检测三相电压、三相电流、零序电流的方法,得出了电动机故障的准确判据,确定了各种故障的保护措施,对电动机实现了短路、欠压、断相、漏电、过载等保护功能。本文以8位单片机AT89C52做微处理器,AT89C52单片机内置256字的RAM和8K字的ROM,可以进行外部扩展数据存储器和程序存储器,具有性能较好的I/O、运算等功能,有合适的指令系统,能够实现电机智能保护,电路简单,功能齐全。为了实现电机分布检测和控制的要求,控制系统具有便于集中管理和信息共享的特点。 关键词:电动机;智能保护;单片机AT89C52;故障保护I摘要Abstract Because the electric motor has the structure simply, the price inexpensive, merits and so on use maintenance convenience, is widely used in the national economy various aspects.However, as a result of the power supply condition and the machinery load polytropy, causes electric motor the failure rate to be high, not only can damage electric motor itself, moreover can affect the entire production, creates the big economic loss.Therefore, the electric motor safe operation to guaranteed the factory and mining enterprise the regular production is extremely important. This article has first analyzed the asynchronous motor common breakdown, take exchanges the sampling method to carry on the data acquisition as the basis, uses the examination three-phase voltage, the three-phase current, the zero foreword electric current method, has obtained the electric motor breakdown accurate criterion, had determined each kind of breakdown protective measures, realized the short circuit to the electric motor, have owed press, break, protection functions and so on the leakage, overload. This article makes the microprocessor by 8 monolithic integrated circuit AT89C52, in at89C52 monolithic integrated circuit sets at 256 character RAM and 8K character ROM, may carry on exterior expansion data-carrier storage and the program memory, has functions and so on performance good I/O, operation, has the appropriate command system, can realize the electrical machinery intelligence protection, the electric circuit is simple, the function is complete. In order to realize the request which the electrical machinery distribution examines and controls, the control system has is advantageous for the centralized management and the information sharing characteristic. Keywords: Electric motor; intelligent protection; monolithic integrated circuit AT89C52; fail safe河北工程大学毕业设计说明书 目 录目 录摘要IAbstractII1 绪论1.1研究目的11.2国内外研究现状1 1.3本文主要研究内容22 总体方案设计3 2.1基本原理32.2原理框图33 AT89C52单片机介绍43.1芯片简介43.2引脚介绍43.3存储区结构64 模块电路设计74.1数据采集模块74.1.1数据采集所用器件7 4.1.2信号采样保持电路7 4.1.3采样模块原理84.2多路转换模块8 4.2.1AD7501芯片介绍8 4.2.2转换模块工作原理84.3A/D转换模块8 4.3.1A/D574芯片介绍8 4.3.2A/D574工作原理94.4存储器扩展模块6264104.5LED显示驱动模块11 5 综合保护器软件设计115.1软件编程思想115.2软件总体设计11 5.3各模块软件具体流程图125.3.1主程序部分125.3.2数据采集部分155.3.3电压、电流显示部分17 5.3.4故障类型、时间显示部分17结论20 致谢21参考文献22附录123附录2441 绪 论1.1 研究目的电动机保护器(电机保护器)是发电、供电、用电系统的重要器件。是跨行业、量大面广、节能效果显著的节能机电产品。几乎渗透到所有用电领域;是工业、农业和国防建设及人民生活正常生产和安全工作的重要保证,在国民经济和节能事业中有着不可替代的重要地位和作用。电气、机械、冶金、建筑、煤炭、石油、化工、汽车、飞机以及造船工业等都离不开电机。据不完全统计,全国使用的中型电机大约有2000万台,每年烧毁的电机约占16%,约320万台,平均每台的维修费用1000元,总费用为32亿元左右。另外,由于电机的故障、损坏所造成的其它事故以及导致工厂停产所造成的间接经济损失则更为巨大。造成这种现象的原因是多方面的,除了管理措施不完善等因素外,关键的问题是在目前各种电机保护装置中,普遍存在着要么智能化程度高而价格过高、体积较大不便在有限制的控制装置中安装,推广难度大;要么价格低而智能化程度低,对故障的判断由于缺少智能分析而影响使用效果,目前广泛使用不带CPU 的集成电路制作的电机故障检测仪,虽然可判断电流超限、缺相等故障,但无智能判断,只能简单地以电流超限为判据,而实际使电机发生故障是电流的时间和环境温度的函数,同时也不能对故障情况存储记录和数据显示,另外,仪器没有适时运行参数显示功能,设定的参数与实际运行的参数无法对照,不能根据实际负荷情况设定电流,因此使用时既不准确可靠、又不直观方便,很不利于故障的排除,导致现场经常放弃使用这类保护。为避免影响生产,开发一种性能稳定、保护种类齐全、动作速度快、灵敏度高、可靠性好的智能监测电机保护仪显然十分必要。1.2 国内外研究现状世界上第一台电子式电机保护器诞生在韩国的三和公司,EOCR-SS的电子式电动机保护器对我国的保护器行业发展起到了巨大的推动作用。已由晶体管发展到集成电路至今已发展到微处理芯片厚模电路,从功能上一般分为断相保护、综合保护(多功能保护)、温度保护和智能保护。此类保护器具有节能、动作灵敏、精确度高、耐冲击振动,重复性好、保护功能齐全、功耗小等优点。 随着我国用户对保护器的了解逐步加深,目前我们国内也有很多厂家生产出了与世界先进水平接近的产品,我们这些厂家还需要在产品的性能稳定、抗干扰等方面尽快缩短与世界先进水平的距离,我们有信心相信在中国的市场上会涌现出越来越多的性能优异的电机保护器产品。1.3 本文主要研究内容本论文针对低压电动机容易出现的故障,以交流采样的方法进行数据采集为依据,采用检测三相电压、三相电流、零序电流的方法,得出了电动机故障的准确判据,确定了各种故障的保护措施,对电动机实现了短路、欠压、断相、漏电、过载等保护功能。本文以8位单片机AT89C52做微处理器,AT89C52单片机内置256字的RAM和8K字的ROM,可以进行外部扩展数据存储器和程序存储器,具有性能较好的I/O、运算等功能,有合适的指令系统,能够实现电机智能保护,电路简单,功能齐全。在实现自动化的过程中,最关键的环节是数据采集。交流采样是将二次测得的电压、电流经高精度的CT、PT变成计算机可测量的交流小信号,然后再送入计算机进行处理。由于这种方法能够对被测量的瞬时值进行采样,因而实时性好,相位失真小。它用软件代替硬件的功能又使硬件的投资大大减小。2 总体方案设计2.1 基本原理通过电流互感器,电压互感器和零序电流互感器得到得到每相电路的的电流电压信号,再通过电压变换器和电流变换器将所得信号转换成5V的电压信号。经过二阶RC滤波电路后,模拟信号通过采样保持器,多路转换开关,A/D转换器变成数字信号被单片机所接收。单片机通过参数判断,若有故障则发出信号使继电器动作,断开电路保护电机,同时显示故障的类型和发生时间;若没有故障电机继续工作。2.2 原理框图电源电流互感器零序电流互感器电机A/D转换器电流变换器电压互感器电压变换器电流变换器 采样保持器单片机多路转换器故障显示继电器光电隔离图2-1 硬件原理框图3 AT89C52单片机介绍3.1 芯片简介AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可提供许多较复杂系统控制应用场合。 AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。3.2 引脚介绍89C52引脚图如下:图3-1 AT89C52引脚图P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对断口P0写“1”时,可作为高阻抗输入端使用。在访问外部数据存储器或程序存储器时,这组端口线分时转换地址和数据总线复用,在访问期间激活内部上拉电阻。P1口:P1口是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动4个TTL逻辑门电路。对端口写“1”,通过内部上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。P2口:P2口是一个带内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动4个TTL逻辑门电路。对端口写“1”,通过内部上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。P3口:P3口是一个带内部上拉电阻的8位双向I/O口,P3的输出缓冲级可驱动4个TTL逻辑门电路。对端口写“1”,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流。此外,P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。RST:复位输入,当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输入脉冲或用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效PSEN:程序存储允许PSEN输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。EA/VPP:外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。XTAL1:振荡器反相放大器的内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。3.3 存储区结构程序存储器一个微机系统之所以能够按照定的次序进行工作,主要在于内部存在着程序,程序实际上是由用户程序形成的一串二进制码,该二进制码存放在程序存储器之中,8952有8K内部ROM用来存放程序内部数据存储器8952内部有256个字节的随机存取存储器RAM,作为用户的数据寄存器,它能满足大多数控制型应用场合的需要,用作处理问题的数据缓冲器。特殊功能寄存器(SFRSpecial Function Register)特殊功能寄存器反映了8952的状态,实际上是8952的状态字及控制字寄存器。SFR综合的、实际的反映了整个单片机基本系统内部的工作状态及工作方式。位地址空间8952的一个很大优点在于它具有一个功能很强的位处理机。在8952(兼容MCS51)的指令系统中,有一个位处理指令的子集,使用这些指令,所处理的数据仅为一位二进制数(0或1)。在8952单片机内共有211个可寻址位,它们存在于内部RAM(128个)和特殊功能寄存器区(83个)中。外部数据寄存器8952应用系统往往是一个扩展系统。当片内RAM不够用时,可在片外部扩充数据存储器。8952给用户提供了可寻址2*64K字节的外部扩充RAM的能力,至于扩多少RAM,则根据实际需要来定。中断寄存器AT89C52有6个中断源,2个中断优先级,IE寄存器控制各中断位,IP寄存器中6个中断源的每一个可定为2个优先级。4 模块电路设计4.1 数据采集模块4.1.1 数据采集所用器件电压互感器本设计选用JDG1-0.5 380/100电压互感器。额定输入电压为500V,可输入380V电压输出100V。电流互感器LMZJ1-0.5 1500/5电流互感器本设计选用LMZJ1-0.5电流互感器。工作额定电压为500V,额定电流比为20/5。电流互感器二次侧是不允许开路的零序电流互感器零序电流互感器型号为CT(Z)-FL-150本设计选用一次侧电流为10MA100A,二次TH44交流电压信号隔离变换器/变送器 TH44 交流电压信号隔离变换器/变送器,用来测量工频交流电压量,输出隔离的标准模拟量信号。最小测量范围工频020mV,最大测量范围为侧电流为0.02530MA电压变换器工频0450V。本设计选用输入电压为0270V,输出为05V电流变换器本设计选用武汉格蓝若光电互感器有限公司的电流变换器。RC二阶滤波电路采样保持器LF3984.1.2 信号采样保持电路采用保持器LF398对电压信号进行采样/保持。在单片机P2.5口的控制下,高电平,采样;低电平,保持。芯片特点:LF398是一种高性能单片采样/保持器。它具有很高的直流精度、很快的采样时间和低的下降速度。器件的动态性能和保持性能可通过合适的外接保持电容达到最佳。例如选择1000PF的保持电容,具有6us的采样时间,可达到12bit的精度。LF398的价格低廉。电源电压可从±5±18V任意选择,其性能几乎无影响。采样/保持的逻辑控制可与TTL或CMOS电平接口。它可广泛地应用于高速A/D转换系统、数据采集系统和要求同步采样的领域。该器件外形采用8脚DIP封装结构。4.1.3 采样模块原理通过电压互感器,电流互感器,变换器,滤波电路得到的电压信号由采样保持器LF398的引脚3输入。引脚8是逻辑输入端,它与单片机的P1.3脚连接。由单片机输出高低电平控制采样保持器采样或保持(高电平采样,低电平保持)。通过调节保持电容CH来改变采样频率,CH减小可以提高采样频率,相反,适当增大也可以降低采样频率。4.2 多路转换模块在切换速度要求高、路数多的情况下,宜选用多路模拟开关。考虑到其后级AD转换的速度,又由于本设计共有7个采样信号,所以选用8路的转换器AD7501.,它的速度略大于AD转换器的速度。 4.2.1 AD7501原理介绍AD7501型多路模拟开关集成芯片,这是具有8路输入通道、1路公共输出的多路开关CMOS集成芯片。由三个地址线(A0、A1、A2)的状态及EN端来选择8个通道之中的一路,片上所有的逻辑输入端与TTL/DTL及CMOS电路兼容。4.2.2 转换模块工作原理由7路采样保持器LF398的引脚5输出的采样值分别与多路转换开关AD7501的S1S7引脚相接。AD7501的EN脚与单片机的P1.4相接,当EN被置1时,多路转换开关开始工作。它的A0,A1,A2引脚分别与单片机的P1.0,P1.1,P1.2引脚相接,有单片机发出信号指示多路转换开关选通哪个通道。4.3 A/D转换模块采样得到的信号都是模拟信号,不能被单片机识别,所以采用AD转换器将模拟信号转换成数字信号。考虑到分辨率和转换精度此次设计采用12位的转换器AD574.4.3.1 A/D574芯片介绍AD574是一个完整的12位逐次逼近式带三态缓冲器的A/D转换器,它可以直接与8位或16位微型机总线进行接口。AD574有6个等级,其中AD574AJ、AD574AK和AD574AL适合在0+70温度范围内工作,AD574AS、AD574AT和AD574AV适合在-55+125温度范围内工作。 AD574各主要管脚的功能如下: DB0DB1112位数据输出,分三组,均带三态输出缓冲器。 ULOGIC逻辑电源+5V(+4.5+5.5V)。 UCC正电源+15V(+13.5+16.5V)。 UEE负电源-15V(-13.5-16.5V)。 AGND、DGND模拟和数字地。STS转换状态信号。转换开始STS1,转换结束STS0。 10VIN模拟信号输入。单极性010V,双极性±5V。 20VIN模拟信号输入。单极性020V,双极性±10V。 REFIN参考电压输入。 REFOUT参考电压输出。 BIPOFF双极性偏置。 CS:片选信号,低电平有效。CE:芯片允许信号,高电平有效。只有CS和CE同时有效,AD574A才能工 作。RC:读出或转换控制信号,用于控制ADC574A是转换还是读出。当为低电 平时,启动AD转换;当为高电平时,将转换结果读出。128:数据输出方式控制信号。当为高电平时,输出数据为12位;当为 低电平时,数据是作为两个8位字输出。A0:转换位数控制信号。当为高电平是,进行8位转换,为低电平进行12位转换。 4.3.2 A/D574工作原理逻辑控制信号由 A1、A7和A0和单片机的数据口P0发出,并由三态锁存器74LS373锁存到输出端Q0、Q1和Q7上,用于控制AD574A的工作过程。AD转换器的数据输出也通过P0数据总线连至89C52,由于我们只使用8位数据口,但是AD574A输出12位数据,故单片机应分两次读取转换结果数据,先读高8位数据,再读低4位数据。由A=0或A=1分别控制高,低位数据的读取。8,12位数据分两次读进89C52,所以12/8非接地。单片机可以采用中断或查询方式来读取AD574A的转换结果数据。采用查询方式时,应将转换结束状态线STS与单片机的某一I/O口线相连。本设计中STS与单片机的P1.6口相连。当单片机89C52执行对外部数据存储器的写指令时,使CE=1,CS=1,R/C非=0,A0=0,从而启动装换。然后89C52通过P1.6口线 不断查询STS的状态。当STS等于0时,表示A/D转换结束,89C52执行两次读取外部存储器的操作,读取12位转换结果。当CE=1,CS=1,R/C非=1,A0=0时读取转换结果的高8位;当CE=1,CS=1,R/C非=1,A0=1时,读取转换结果的低4位。这里不管AD574A是处在启动、转换和输出结果,使能端CE都必须为1,因此将8051的写控制线 和读控制线 通过与非门74LS00与AD574A的使能端CE相连。4.4 存储器扩展模块6264Intel sram6264是8K ×8位的静态随机存储器芯片,采用CMOS工艺制造,单一+5V供电,额定功耗200mW,典型存取时间200ns,28线双列直插式封装. 所有的输入端和输出端都与, TTL电路兼容。6264引脚介绍:A12A0(address inputs):地址线,可寻址8KB的存储空间。 D7D0(data bus):数据线,双向,三态。 OE(output enable):读出允许信号,输入,低电平有效。 WE(write enable):写允许信号,输入,低电平有效。CE1(chip enable):片选信号1,输入,在读/写方式时为低电平。 CE2(chip enable):片选信号2,输入,在读/写方式时为高电平。 VCC:+5V工作电压。GND:信号地。 6264的操作方式: 写入:当和为低电平,且和CE2为高电平时,数据输入缓冲器打开,数据由数据线D7D0写入被选中的存储单元。 读出:当和为低电平,且和CE2为高电平时,数据输出缓冲器选通,被选中单元的数据送到数据线D7D0上。 保持:当为高电平,CE2为任意时,芯片未被选中,处于保持状态,数据线呈现高阻状态。 4.5 LED显示驱动模块74ls164是一个串入并出的8位移位寄存器,它常用于单片机系统中是移位寄存器,也就是从AB入数据一步一步的向Q7移动,当第二个字节移入后,原第一个已经从Q7端移出.两位数据是不会交错的。5 综合保护器软件设计5.1 软件编程思想程序在编制的时候,在完成系统基本功能的前提下,还要考虑以下几点:功能的可扩充性。系统具有的功能应随着实际的需求而扩充,当实际应用中提出新的要求时,系统应能够方便地在原有基础上增加新的功能。程序的可读性。程序的可读性对系统的后续维护、功能扩充有重要意义。系统的更新。当系统微控制器或某些器件被更高性能的器件替代时,系统的程序要易于更新。程序运行确实稳定可靠、易于维护。因此,在软件的结构设计上采用模块化的编程方法,即将整个系统软件按照一定的规则和功能分解为一个个单独的模块,模块之间相对独立,负责完成各自的功能。模块是系统设计和实现的基本单元,每个模块实现一个完整单独的功能模块之间可以相互调用,共享数据。全部模块构成整个系统。模块化编程有以下优点:采用模块化结构的最大的优点是效率高。小块程序更容易理解和调试,如当知道模块的输入、输出,就可直接调用该模块。由于模块之间共享数据,可互相调用,因此可以非常灵活地组织每个模块,达到非常高的整体效率。当相同功能的需求较多时,可把程序放入库中以备使用。如果需要某一块某一功能升级,只需要改写相应的模块,而不需要改动整个软件结构。当增加系统功能时,也只需要增加相应的软件功能模块即可。模块化编程使得要解决的问题只与特定模块有关,出现故障时,很容易找到出错的模块,大大简化了调试,同时使系统更易维护。5.2 软件总体设计软件方面本系统也一共分为5个部分:主程序部分定时中断数据采集部分电压、电流显示部分定时中断时钟显示部分故障类型、时间显示部分 5.3 各模块软件具体流程图下面分别介绍各个部分的具体编程:5.3.1 主程序部分主程序部分完成的工作主要有系统初始状态的设计、系统状态的显示以及各种开关状态的判断等。其中系统初始状态的设置内容较多,这一部分也就是通常所说的初始化内容。初始化内容一般随设计者的思想而定,并非完全一样,对本系统而言大致包括定时器初始化,输入、输出口初始化。开始时,输入数据,判断电机是否起动,等待起动,起动后进行数据采集。再将数据转换为有效值,进行各类参数的比较判断。如无故障显示电压、电流值;若出现故障显示故障类型及时间。主程序流程图如图5-1。表5-1 电机保护参数表保护项目比较参数延时动作备注短路断相过载欠压漏电I>5INI=0I>1.2INU<20%UNI0>30mA0.2s0.8s120s15s0.2s继电器断开IN额定电流IN=5AUN额定电压UN=100VI0零序电流注释:当出现漏电故障,故障类型显示数字1当出现欠压故障,故障类型显示数字2当出现过载故障,故障类型显示数字3当出现断相故障,故障类型显示数字4当出现短路故障,故障类型显示数字5开始1系统初始化保存比较参数电机是否启动进行数据采集有效值计算读入比较参数判断是否漏电送显示数字1判断是否欠压送显示数字2判断是否过载送显示数字3YNYNYNYN1判断是否断相判断是否短路送显示数字4送显示数字5乘相应系数转换为一次侧数值二进制数转换为十进制数显示电压或电流值故障报警保护电路动作显示故障类型及时间YYNN 图5-1 主程序流程图5.3.2 数据采集部分在实现自动化的过程中,最关键的环节是数据采集。交流采样是将二次测得的电压、电流经高精度的CT、PT变成计算机可测量的交流小信号,然后再送入计算机进行处理。由于这种方法能够对被测量的瞬时值进行采样,因而实时性好,相位失真小。它用软件代替硬件的功能又使硬件的投资大大减小。系统的数据采集处理子程序的功能是在定时中断服务程序中完成的。在定时中断服务程序中主要进行三相交流电压、电流和零序电流的采集。AT89C52内部有256bytes的随机存取数据存储区ROM,本设计需要7个通道进行数据采集,定周期采样点数为13,将采样所得数据通过公式(1)进行有效值计算。通过LED显示器显示电压、电流的实时值,在故障时进行声光报警。实践证明,采用交流采样方法进行数据采集,通过算法运算后获得的电压、电流等电力参数有着较好的精确度和稳定性。数据采集中断服务程序流程图。如图5-2交流采样原理:若将电压有效值公式离散化,以一个周期内有限个采样电压数字量来代替一个周期内连续变化的电压函数值,则式中:Tm为相邻两次采样的时间间隔;um为第m-1个时间间隔的电压采样瞬时值;N为1个周期的采样点数。若相邻两采样的时间间隔相等,则有式(1)就是根据一个周期各采样瞬时值及每周期采样点数计算电压信号有效值的公式。图5-2 数据采集中断服务程序流程图系统初始化采样次数=0选定第0通道启动LF398启动A/D转换A/D转换是否结束NY断开LF398读取瞬时值整理存片内缓冲区改变缓冲区地址指针通道数加1通道数是否为7NY返回缓冲区地址指针采样次数加1采样次数是否为13中断返回YNT0中断开始5.3.3 电压、电流显示部分本文采用了74LS164 这个串入并出的移位寄存器,很好地解决了AT89C52 与LED 的显示接口电路。从AB入数据一步一步的向Q7移动,当第二个字节移入后,原第一个已经从Q7端移出.两位数据是不会交错的.比如要向164写入11011100(第一字节)10011000(第二字节),当第一个8位输入后164的内容为11011100 ,第二字节的第一位输入后164为01101110,第二位输入后164为00110111,依次类推,当输入完8个位后,164输出端为10011000 正是第二个字节的内容.电压、电流显示部分流程图如图5- 显示初始化74LS164输出清0取显示值数据转换送转换数值显示数值图5-3 电压、电流显示流程图开始5.3.4 故障类型、时间显示部分主程序中进行数据比较判断是否有故障,若有故障发生则发送相应的数据表示故障类型。时间显示子程序每次显示6个连续内存单元的十进制BCD码数据,首地址在调用显示程序时先指定。定时器T1用于时间计时。定时溢出中断周期设为50ms,中断进入后先进行定时中断处置校正,当中断累计20次时,对秒计数单元进行加1操作。内存中F0F6为显示单元,时钟计数单元地址分别在F0F1(秒)、F7F8(分)、F9-FA(时)中,最大计时值为23时59分59秒。在计数单元中,采用十进制BCD码计数,满十进位。故障显示子程序流程图如图5-4,T1中断程序流程图如图5-5。开始初始化显示参数关所有位显示取显示数据数据移位输出到164输出时钟脉冲到1648断码完成指向下一个显示数据7位完成返回NYYN图5-4 故障显示子程序流程图T中断开始保护现场定时初值校正到1s?秒值加1到60s?秒值清0,分值加1到60min?分值清0,小时加1到24h?小时值清0恢复现场中断返回NNNNYYYY图5-5 T1中断程序流程图