1、1 摘 要 在各个大型电站或其他行业之中,直流电源屏和 UPS 电源系统对维持电力系统的稳定性有着十分重要的意义。而及时的发现失效电池对保持直流电源屏的正常工作起着关键的作用。 本次毕业设计论文主要是使用 MCS-51系列单片机中的一种 AT89C4051对蓄电池巡检仪的硬件电路和软件编制做出初步的设计 . 本 次设计 采用 AT89C4051 作为 CPU,辅以三态缓冲器 74HC244 来读取并储存蓄电池组的站号,通过对电池不断的测量, 如果上位机的发出的站号与电池的站号一致,那么测量值就可以发向上位机。 而蓄电池的模拟信号的 采集主要通过 TLC549 A/D 转换芯片来实现。数据通过光
2、藕隔离和上位机通讯,在一定的召唤和应答规约之下通过 RS485 通讯端口便可以与PC 机交换数据或与其他网络相连实现远程遥测的功能。 本篇论文采用 PROTEL99 软件来实现硬件电路的设计,软件采用 C 语言编程。 关键词:三态缓冲,数模转换,异步通讯 , 规约 Abstract The DC Power Supply and Uninterruptable Power System often play a key role in maintaining the safety of large electrical equipment in Power Plant or other Tra
3、nsmission Substation. So Detecting the Batteries, which are in bad working condition, immediately seems very meaningful and so often is. This thesis mainly concentrates on the application of one kind of chip-AT89C4051 in MCS-51 family. In my thesis, I use the At89c4051 to design the theoretic map of
4、 measuring hardware and peripheries. Meanwhile, I further the discussion of software with C programmable language. In my thesis, I choose At89c4051 as the Central Process Unit accompany with Tri-State Buffer 74HC244 which is used to collect the code of the battery. In most of occasion, the upper con
5、trol computer send the code of the battery in order to select the battery which we want to measure, at the same time, the measuring part could receive the signal. If the code accord exactly with protocol which is made by us, the measuring part start to upload the measuring result to the upper contro
6、l computer. In this situation we use Serial Interface (RS485) to communicate with remote control unit or other PC through optical-Segregation in order to carry out the Long Distance Measurement. This thesis use Protel 99 as main designing tool to achieve hardware design and C programmable language t
7、o accomplish software design. Keywords: Tri-State Buffer A/D Converter Asynchronous Communication Protocol 2 第一章 概述 第一节:蓄电池在电力行业中的运用 直流操作电源系统是变电站、发电厂不可缺少的二次设备。该系统由整流电源和蓄电池组组成。在正常情况下,整流电源为变电站、发电厂内直流设备供电,同时给蓄电池组充电,保证蓄电池处于满容状态。当发生交流停电时,蓄电池组放电,保证直流设备不会停电。目前在电力系统广泛使用的是阀控式密封铅酸蓄电池。随着变电站等级的提高,蓄电池的容量呈递增状态,而蓄
8、电池的费用也呈递增曲线。尤其是 500kV 变电站及发电厂用的直流操作电源系统,蓄电池组在整套设备的费用比重会远远大于整流电源所占费用比重。 因此蓄电池的维护成为非常重要的问题。 测量蓄电池品质最直观的办法就是测量蓄电池的端电压,其能直接反映蓄电池的过充和欠充。为了及时得到每节蓄电池的情况,并且减少维护的工作量(目前电力系统正在大力推行变电站无人值守),在较为重要的变电站,特别是 110kV 以上等级的变电站及发电厂的直流操作电源系统中大多要求配置蓄电池检测装置。 阀控式密封铅酸蓄电池以 2V 为基本单元,大容量的蓄电池均采用 2V/节,小容量的为内部 6 个单元串联,构成 12V/节,也有些
9、较少的品牌采用 6V/节。我国变电站内部直流设备通常为 220V/110V, 220V 的直流操作电源需配置 18/19 节 12V 蓄电池或 103 108 节 2V 蓄电池,110V 的直流操作电源以次类推。蓄电池头尾串联,最后与整流器的输出并联。 通信电源系统与直流操作电源系统类型相似,也是由整流器和蓄电池组组成,只是其输出电压为 -48V(其正端与大地相连),对应输出电压,蓄电池组由 4 节 12V 或 24 节 2V 蓄电池串联而成。对于重要的系统,特别是无人值守的通信基站,为蓄电池组配置蓄电池测试仪也成为一种趋势。 第二节:传统的蓄电池巡检仪 为检测单节蓄电池电压,要在蓄电池两极引
10、出采样线。例如: 18 节蓄电池一一串联组成蓄电池组,则要引出 19 根采样线;若是 108 节蓄电池组成蓄电池组,则需要 109 根采样线。目前应用比较普及的蓄电池测试仪采用巡检方式,通过端子接入采样线,如下图所示。 + 整流器 - 蓄电池测试仪 采样线 端子 3 蓄电池测试仪内部单片机控制继电器逐一切换,将每节电池分别与单片机测量系统共地相连,从而测得单节蓄电池端电压。蓄电池测试仪通过串行通讯口将数据传至直流操作电源微机监控装置,便于操作人员观察、记录,还可与直流操作电源系统其它信息一起再传给变电站综合自动化后台装置,直至电力系统主站。 采用巡检方式的蓄电池测 试仪的优点是造价低廉,但缺点
11、也很明显,主要有以下几点: 1) 现场连接线太多,尤其是采用 2V 蓄电池时,要连接大量的采样线; 2) 连接采样线有一定危险性。由于采样线是通过端子接入单片机系统,而考虑到体积和成本,相邻接线点距离很近;蓄电池采样线是带电作业,连接蓄电池具有一定危险性,而长距离连接蓄电池采样线,尤其是采样线数量较多,不易分辨其顺序,不但操作任务较重,发生事故的机率也高; 3) 可靠性低。蓄电池测试仪从直流母线上取电作为装置输入电源,若受到强电干扰,有可能造成某一时刻一节以上继电器动作,则蓄电池会通过采样线形成短路; 4) 寿命受采样频率影响。目前较好品牌的继电器的切换次数多为 105 106 次, 若切换频
12、率较高,会影响继电器进而整个装置的使用寿命,因此采用巡检方式的蓄电池测试仪均以加大继电器切换时间来延长装置寿命,但这样会造成数据更新周期偏长。 第三节:新型蓄电池巡检仪 新型蓄电池智能测试装置由若干测试单元组成,工作时每节蓄电池配置一块测试单元,测试单元内置单片机,以单节蓄电池作为其电源输入,通过电路将蓄电池电压变换成单片机工作电压,同时单片机通过自带的 AD 测试出蓄电池端电压。测试单元通过跳线对应唯一通讯站号,上位机通过隔 离的 485 总线,带站号分别召唤每个测试单元,获得每个蓄电池的端电压数据。 根据铅酸蓄电池的电压级别,测试单元分为 2V和 12V 两种。两者原理基本一致, 2V 的
13、测试单元要通过升压电路,将蓄电池端电压升到单片机的工作电压;而 12V 的测试单元则通过降压电路,将蓄电池端电压降到单片机的工作电压。 与传统的蓄电池巡检装置相比:新型蓄电池智能测试装置有以下几个优点: 1) 其测试单元尺寸很小,并且以每节蓄电池端电压作为其输入电源,因此可就近连线,甚至置于蓄电池表面。与蓄电池一一对应,连接线的危险性大大降低,只要注意正负即 可; 2) 根据蓄电池节数配置测试单元,通用于直流操作电源和通信电源。目前直流电源系统, 包括直流操作电源和通信电源 均配置微机监控装置,其装置也多配有 RS485 通讯口,若其使用合适的 RS485 驱动芯片,最多可支持 256 个通信
14、节点,则测试单元可直接作为若干通讯节点接入该通讯口的 485 总线,单节蓄电池端电压数据直接进入上一级监控装置,进一步节省资源; 3) 由于不采用继电器切换方式,不但使用寿命长,而且每个测试单元同时工作,数据更新速率取决于上位机召唤频率,数据刷新率大幅度提高。 4) 测试单元通过端子上 485 总线,与上位机只有两 根通讯线相连,取代了传统蓄电池巡检装置的大量采样长线,现场清爽,走线方便,如下图所示; 4 本次设计主要以 ATMEL 公司的 AT89C4051 为 CPU,辅以 74HC244, TLC549, MAX756等芯片来实现针对 2V 蓄电池的蓄电池测试单元的测量以及通讯。 下面的
15、章节将会对各种芯片结构和原理,和硬件电路的设计进行分别详细阐述。 第二章 硬件电路的核心芯片 第一节 ATMEL 系列的 AT89C4051 AT89C4051 是一种 8 位的, 4K FLASH 闪存, 128BIT RAM 的 CPU 一) 基本特征 2) 具有 MCS-51 系列产品的基本功能 3) 2.7V-6V 的工作电压 4) 双基准内存锁存器 5) 15 根可编程的 I/O 线 6) 6 个中断源 7) 直接 LED 的输出驱动 8) 低功率闲置和功率关闭模式 9) 4K 可重复编程的闪存 10) 全静态操作频率 0-24MHz 11) 128 8 位的 RAM 12) 2 个
16、 16 位计数器和定时器 13) 可编程的串行通信异步收发通道 14) On-Chip 模拟比较器 二) 基本描述 AT89C4051 有 4K 字节的闪存(可编程可擦除只读内存 EPROM)的低电压高效运行的 8 位微处理器。这个设备通过使用 AMTEL 的非易失的内存技术和工业标准与 MCS-51 兼容。 我们通过比较通用的 8 位 CPU 和单片集成电路中的 闪存可以知道 。对于许多的嵌入式控制系统来说, ATMEL 的 AT89C4051 具有更高的灵活性和高效性。 AT89C4051 提供下述标准特征: 1) 4K 字节的 FLASH 闪存 2) 128 字节的 RAM 3) 15
17、根I/O 线 4)两个 16 位的定时器 /计数器 5)一个 5 矢量双水平的中断系统 6)一个双向串行通道 7)一个精度模拟比较器 8)芯片中的震荡器和时间电路。此外 AT89C4051 零频率状态下 + 整流器 - 上位机系统 485 总线 测试单元 测试单元 测试单元 测试单元 A B 5 运行的静态逻辑并提供两个软件节能模式以供使用。 Idle Mode 闲置方式使 CPU 停止工作,但允许 RAM,计数器 /定时器,串行接口和中断系统继续工作。 Power Down Mode 会保存 RAM中的内容,但使震荡器停止工作,并且终止芯片其他功能直至重启。 如图 -2 所示基本管脚 一)
18、管脚的基本功能 VCC:供电电源 GND:接地 Port1:端口一是八位双向 I/O 口。 P1.2-P1.7 端口提供上拉。而 P1.0-P1.1 需要外部上拉。P1.0-P1.1 常常作为正向输入和反向输入, 这两个输入分别在芯片中的精度比较模拟器。端口1 输出缓冲能下降 20MA,并且可以直接驱动 LED 显示器。端口 1 置 1,它变为输入,当管脚 P1.2-P1.7 作为输入并且被外部拉低,那么他们将由于内部的拉阀而作为电流源。端口 1 同样在闪存编程和修改时接收代码数据。 Port3:管脚 P3.0-P3.5 和 P3.7 是 7 根双向 I/O 口,内存内部上拉阀, P3.6 为
19、比较器的输入和输出端口,但不能作为通用的 I/O 口。端口 3 的输出缓冲能下降 20MA。当端口 3 被置 1,端口 3 被内部拉阀上拉同时可以被视为输入。作为输入,端口 3 的管脚被外部拉 底,这样端口 3将形成 I1L,这些均是由内部拉阀所决定的。 同时端口 3 同样可以作为 AT89C4051 的各种特殊功能: P3.0: RXD P3.1: TXD P3.2: 0INT (作为外部中断 0) P3.3: 1INT (作为外部中断 1) P3.4: T0 计时器 0 的外部输入 P3.5: T1 计时器 1 的外部输入 RST:输入重置,所有的 I/O 引脚会被全置为 1,一旦 RST
20、 被置为高电平。如果保持 RST 引脚为高电平两个周期 那么震荡器将会重启。 每一个机器周期等于 12 个震荡周期或时钟周期 XTAL1:震荡转换放大器和内部时钟运行电路的输入端 XTAL2:震荡转换放大器和内部时钟运行电路的输出端 二) 震荡器的主要特征 XTAL1, XTAL2,分别是转换放大器的输入和输出,转换放大器往往可被作为震荡器使用如图 3 所示。震荡器可以是石英震荡器也可以是瓷共振震荡器。为了从外部时钟源去驱动这个电路,当 XTAL1 被驱动的时候,此时 XTAL2 应该被隔离。我们往往对外部时钟源的工作6 周期没有太多的要求,因为内部时钟电路往往通过两个连续的分割 ,但仍然要注
21、意最高电压和最低电压。 图三:震荡器的连接 图四:外部时钟驱动布置图 C1, C2=30PF 10PF(石英) 或 40PF 10PF(瓷) 三) 特殊功能寄存器 ( SFR) 如同单片机 MCS-51 中的一样,并不是所有的寄存器地址都被占据。芯片将不会去使用那些未被占据的地址。同样,对这些地址的读取将会被返回随机的地址,同时写操作将会产生不确定性。 用户不能对这些未列出的地址进行操作。因为这些地址主要被保留在未来使用以备新的功能,如果那样的话,重置或初始化这些地址将会是零。如表 1 所示 SFR 在寄存器中的分布: 四) 几种低功率工作方式 1) Idle Mode 闲置方式 所谓的闲置方
22、式就是将自身放入休眠状态,而其他所有芯片上的外围设备仍然处于激活状态,这种方式往往通过软件来激活。同时芯片上的 RAM 和 SFR 在这种方式下不会改变。这种方式往往通过有效中断或硬件重置 电路来结束。 如果没有外部上拉电阻那么 P1.0 &P1.1 应该被置零,反之应置为一。我们应该注意,如果闲置方式是通过硬件重置方式来被终止的,那么程序会在终止的地址上继续恢复程序的运行,但是在内部程序恢复之前存在两个机器周期,在这种情况之下,内部的硬件会禁止外部对内部 RAM 的修改 ,但修改端口却未被禁止。所以为了防止错误的对端口进行写操作当闲置模式终止时,那么我们激活闲置模式的过程应该与我们对端口引脚
23、或外部存储器的激活步骤不一样。 2)断电模式 断电模式下震荡器停止,并且激活断电模式的程序是最后一个执行的程序,同时 RAM 和7 SFR 会保持原来的值直到断电模式结束。硬件重置是结束断电模式的唯一办法,那么硬件重置会重新定义 SFR 但不会对 RAM 造成影响 。但只有当 CCV 恢复到正常的工作电压的时候,同时应该保持激活足够长的时间一直到晶振重新启动并稳定后我们才能进行重置。 3)褪色检测 当 CCV 下降到极限值时,所有端口除了 P1。 0, P1。 1 外全部被轻微的上拉, CCV 回到原值时,内部重置在 15Msec 后有效。一般来说褪色检测的电压范围在 101.2 V %,如图
24、 5 所示 图 5 第二节: MM74HC244 三态缓冲器的基本结构 a) 概述 MM74HC244 主要采用最先进的的硅门技术中的 CMOS 技术,具有高速,非逆转性的三态缓冲器。 MM74HC244 具有高驱动电流的驱动输出,这些强力的驱动在驱 动大总线时也能保持高速的运行。且内部电路中的传导速度可以与低功率肖特基持平,但其电路主要还是和 CMOS 电路有关。 MM74HC244 是一个非逆转的三态缓冲器,同时拥有两个低电平可使 1G, 2G 分别控制 4 个缓冲器,同样的这些设备没有施密特触发输入。 b) 基本特点 1) 基本的传导延迟: 14NS 2) 对系统总线的三态输出 3) 更
25、广 泛的电压工作范围 2-6V 4) 74 系列的低静态电源电流 A80 5) 输出电流 mA6 下图 6 所示为 MM74HC244 的连接图 8 下表 2 为管脚的真值表 第三节: 带串行控制 8 位模数转换器 TLC549 一) 概述 TLC549 是以 8 位开关电容逐次逼近 A/D 转换器为基础而构造的 CMOS A/D 转换器。它们设计成能通过 3 态数据输出和模拟输入与微处理器或外围设备串行接口。 TLC549 仅用输入 /输出时钟( I/O CLOCK )和芯片选择( CS )输入作数据控制。 TLC548 的最高 I/O CLOCK 输入频率为 2.048MHz ,而 TLC
26、549 的 I/O CLOCK 输入频率最高可达 1.1MHz 。有关与大多数通用微处理器接口的详细资料已由工厂准备好,可供使用。 TLC549 的运用与较复杂的 TLC540 和 TLC541 的运用非常相似;不过, TLC549 提供了片内系统时钟,它通常工作在 4MHz 且不需要外部元件。片内系统时钟使内部器件的操作独立于串行输入 /输出的时序并允许 TLC548 和 TLC549 象许多软件和硬件所要求的那样工作。 I/O CLOCK 和内部系统时钟一起可以实现高速数据传送以及对于 TLC548 为每秒 45,500 次转换、对于 TLC549 为每秒 40,000 次转换 的转换速度
27、。 TLC549 的其他特点包括通用控制逻辑,可自动工作或在微处理器控制下工作的片内采样 -保持电路,具有差分高阻抗基准电压输入端、易于实现比率转换( ratiometric conversion)的高速转换器,定标( scaling )以及与逻辑和电源噪声隔离的电路。整个开关电容逐次逼近转换器电路的设计允许在小于 17 s 的时间内以最大总误差为 0.5 最低有效位( LSB)的精度实现转换。 TLC549的工作温度范围为 0 至 70 TLC549 的工作温度范围为 -40 9 至 85 。 表 -3 二)特点 8 位分辨率 A/D 转换器 差分基准输入电压 转换时间 17 s Max 每
28、次总存取与转换周期数 TLC549 高达 40,000 片内软件可控采样棗保持 总不可调整误差( Total Unadjusted Error ) 0.5LSB Max 4MHz 典型内部系统时钟 宽电源范围 3V 至 6V 低 功耗 15mW Max 能理想地用于包括电池供电便携式仪表的低成本、高性能应用 引脚和控制信号与 TLC540 、 TLC545 8 位 A/D 转换器以及 TLC1540 10 位 A/D 转换器兼容 CMOS 工艺 三)基本管脚和内部功能 图 -7 10 c) 基本时序 上 图 -8 显示出 TLC549 的基本时序,本论文主要关心的是 CPU 在读取 Data_
29、out 的时序,下面将详细阐述: A. 转换周期需要 36 个系统时钟周期(最大为 17 s),它开始于 CS 变为低电平之后 I/O CLOCK 的第 8 个下降沿,这适用于该时刻其地址存在于存储器中的通道。 B. 在 CS 变为低电平之后,最高有效位( A7 )自动被放置在 DATA OUT 总线上。其余的 7 位( A6-A0)在前 7 个 I/O CLOCK 下降沿由时钟同步输出。 B7-B0 以同样的方式跟在其后 d) 基本工作特性 二、特性 工作温度范围内(自然通风)的极限参数(除非另有说明) +电源电压, VCC 6.5V 任何输入端输入电压范围 -0.3V 至 VCC+0.3V
30、 输出电压范围 -0.3V 至 VCC+0.3V 峰值输入电流范围(任何输入端) 10mA 峰值总输入电流范围(所有输入端) 30mA 工作温度范围(自然通风), TA : TLC548C , TLC549C 0至 70 TLC548I , TLC549I -40 至 85 储存温度范围, Tstg -65 至 150 引线温度,离外壳 1.6mm(1/16 英寸 ), 10 秒 260 + 强度超出所列的极限参数可能导致器件的永久性损坏。这些仅仅是极限参数,并不意味着在极限参数条件下或在任何其它超出推荐工作条件下所示 参数的情况下器件能有效地工作。延长在极限参数条件下的工作时间会影响器件的可靠性。 详见下表 -4: