新闻

小型风力发电机控制器的设计毕业论文

作者:365真人游戏 发布时间:2020-10-22 21:48 点击数:

  1 引言 1. 1 本课题的意义 1 . 1. 1 风力发电的意义 随着现代工业的发展和社会的进步, 人们对供电持续性和供电量的要求也越来越高。而煤炭、 石油的日趋减少, 开发新能源成为当今社会最热门的话题之一。 风能作为一种自然资源, 它有取之不尽、 清洁无污染等优点, 所以被人们称为“绿色资源” 受到青睐[1]。利用可再生能源可以节约能源和保护环境, 而风力发电与其它再生能源相比, 更具竞争潜力, 因而发展迅速。 我国幅员辽阔, 居民分布东多西少。 考虑到生活在边远地区的农、 牧民以及沿海地区岛屿上的渔民、 边、 海防哨所、 通讯塔站及微波中继站等居民...

  1 引言 1. 1 本课题的意义 1 . 1. 1 风力发电的意义 随着现代工业的发展和社会的进步, 人们对供电持续性和供电量的要求也越来越高。而煤炭、 石油的日趋减少, 开发新能源成为当今社会最热门的话题之一。 风能作为一种自然资源, 它有取之不尽、 清洁无污染等优点, 所以被人们称为“绿色资源” 受到青睐[1]。利用可再生能源可以节约能源和保护环境, 而风力发电与其它再生能源相比, 更具竞争潜力, 因而发展迅速。 我国幅员辽阔, 居民分布东多西少。 考虑到生活在边远地区的农、 牧民以及沿海地区岛屿上的渔民、 边、 海防哨所、 通讯塔站及微波中继站等居民的用电特点,用常规电网覆盖他们十分困难, 而且也很不经济。 因此在我国的许多边远地区, 电力短缺造成经济, 文化与教育的严重落后。 但由于这些地区一般风力资源比较丰富, 因此在这些地区大力推广小型风力发电机系统的应用也将是一种比较理想的策略[2]。 1. 1. 2 目前户用小型风力发电存在的问题 风力发电是涉及电机、 电力电子、 电化学、 机械、 空气动力学、 计算机、 自动控制、气象等多种学科的综合课题, 大型风力发电机组发出的电能直接并到电网上, 向电网馈电;小型风力发电机一般将风力发电机组发出的电能用除能设备储存起来(一般用蓄电池) , 需要时再提供给负载(可直流供电, 亦可用逆变器变换为交流供给用户) 。 常见的独立运行小型风力发电系统框图如图 1. 1 所示[3]。 控制器交流负载蓄电池逆变器直流负载 由于风能的随机性和不稳定性以及负载的随时变化使得现有小型风电系统仍然存在不少问题。 1、 效率较低, 现有系统一般采用发电机输出直接对蓄电池进行充电, 并没有对风电转换环节进行控制, 使得风能利用系数比较低, 一般在 0. 3 左右。 据贝茨理论风能利用系数的极限值为 0. 593, 如果控制风力机总是以最佳叶尖速比运行, 年发电量可以提 20%~ 图 1.1 小型风力发电系统框图 30%。 2、 蓄电池的工作状态不尽合理, 使得其寿命短暂, 一般两三年就得更换, 增加了整机维护成本, 不合理使用主要是充电方式与蓄电池可接受特性相距甚远。电池使用寿命短,则会使得度电成本居高不下, 从而使小型风力发电系统难于推广应用。 3、 小型风力发电系统中, 蓄电池的充电设备均有欠、 过压保护装置, 如果电压波动不稳, 变化幅度较大, 势必会造成这些装置频频动作, 对这些保护装置的寿命造成直接的影响。 4、 没有考虑风能变化、 负载变化以及蓄电池状态相互之间的关系; 5、 小型风力发电系统由于成本的原因, 发电机和蓄电池的保护措施比较简单, 这就导致系统的综合可靠性和效率较差, 往往达不到设计使用寿命[4]。 1. 1. 3 本课题的重点 现有的小型风力发电系统存在能量转换效率低、 蓄电池使用寿命短、 控制简单和缺乏完整的系统功率控制等问题。 因此提高对蓄电池的充电速度, 减少充电损耗, 正确地监控蓄电池状态, 确保蓄电池的正确使用、 延长蓄电池的使用寿命对小型风力发电有着重要意义。 本文研究的目的是在分析现有的小型风力发电系统的基础上, 设计简单、 高效、 高可靠性的风机控制器, 实现风电系统可靠及优化运行。 控制器是由一些电子元器件组成, 起一个“开关” 的作用[5]。 当风力发电机输出的交流电经过整流后, 如果蓄电池电压低于系统设定的电压时, 控制器使充电电路接通, 风力发电机开始向蓄电池充电; 当蓄电池电压上升到保护电压的时候充电控制开关电路截止, 风力发电机停止向蓄电池充电, 以免蓄电池过充影响寿命。 在实际运行中, 控制器应具有以下主要功能: 1、 保证风机安全运行, 在电气特性和机械特性允许范围内运行; 2、 减少风速随机变化对输出电能的影响, 使输出电压稳定, 减少纹波; 3、 合理调度系统电能, 保证向负载提供连续电能; 4、 保护蓄电池, 防止过充和过放, 提供足够充电能量进行快速充电[6]。 综上所述, 研究可靠性更高、 价格更廉的小型风力发电控制器, 对于增强市场竞争能力, 加速小型风力发电的普及和应用, 节约能源和保护环境都具有重要意义。 1. 2 蓄电池的工作原理 1. 2. 1 铅蓄电池的电化学特性 蓄电池在风力发电系统中是作为储能器件使用的。常见的蓄电池有铅酸蓄电池和碱性蓄电池。 本文采用铅蓄电池, 它是用铅和二氧化铅作为负极和正极的活性物质, 以 27%~37%浓度的硫酸作为电解液的电池, 即通常所说的铅酸蓄电池。 依据哥来德斯东和特利浦双硫酸化理论: 铅酸电池释放化学能的过程是负极进行氧 化, 正极进行还原的过程; 电池补充化学能的过程则是负极进行还原, 正极进行氧化的过程[7]。 铅蓄电池充电时, 正极上的硫酸铅氧化成二氧化铅, 负极上的硫酸铅还原成金属铅;放电后正、 负两极都生成硫酸铅(PbSO4) 这种硫酸盐。 放电反应和充电反应互为可逆反应。 放电反应消耗电解液中的硫酸, 生成水, 结果是硫酸溶液的浓度下降。充电时极板中的硫酸铅转变成铅和二氧化铅, 把硫酸根放回电解液,与水形成硫酸(H2SO4) , 浓度又逐渐上升, 最后达到一稳定值。 因此, 可以用电池中硫酸溶液的密度来衡量电池充放电的程度。 铅蓄电池放电时, 它的大部分化学能转换成电能供给外电路, 一小部分化学能转换成热能散失掉。 同时活性物质和电解液转变成 PbSO4+2H2O+PbSO4这个物质体系。 在放电过程中, 蓄电池内的电化学反应吸收热量, 内阻产生的热量被电化学反应吸收, 所以放电时蓄电池温升较低。 充电时, 蓄电池把外界传输给它的电能转换成化学能储蓄到 Pb+2H2S04+S02 这个物质体系之中。 这个物质体系比 PbSO4+2H20+PbSO4含有更多的化学能。 因此, 刚充足电的蓄电池电压高, 电解液浓, 能量多。 所以要特别注意和小心避免发生短路。 在充电过程中, 蓄电池内的电化学反应释放热量; 此外, 充电电流流过蓄电池的内阻时, 也产生热量, 蓄电他的温度因此升高[8]。 蓄电池充电电流越大, 温升越高, 就是这个缘故。 充电时还伴随着一个很难避免的副反应, 就是电解水生成氢气和氧气。 特别是充电后期, 电压升高了, 电能主要消耗在电解水方面, 而且对极板活性物质很不利。 因此在充电过程中要对蓄电池进行过充电保护。 1. 2. 1 蓄电池充电器的发展 充电方式的选择直接影响着电池的使用效率和使用寿命, 充电技术近年来发展非常迅速。 充电器的发展经历了三个阶段: 1、 限流限压式充电器 最原始的就是限压式充电, 然后过渡到限流限压式充电, 它使用的方式就是浅充浅 寿命表述就是时间, 没有次数, 比如 10 年[9]。 这种充电模式的效果较差。 2、 恒流/限压式充电器是充电器发展的第二阶段, 这种模式的充电器占据了充电器市场近半个世纪。 首恒电流充电至预定的电压值, 然后, 改为恒电压完成剩余的充电。 一般两阶段之换电压就是第二阶段的恒电压。这种充电器充电电流总是低于电池的可接受能成充电效率低, 大大降低了电池的寿命。 3、 自适应智能充电器 随着大规模集成 IC 的出现, 充电设备进入了一个全新的自适应、 智能阶段, 即称 代充电器。 自适应充电器遵循各类电池的充、 放电规律进行充、 放电。 并且具有温度补偿功能。 充电系统由具有特殊功能的单片机控制, 不断检测系统参数, 按模糊法不断调整充电参数, 同一充电器可适应不同种类电池的充电, 充电器自适应调的输出电流, 无需人工 选择, 避免操作失误[10]。 2 系统总体设计 2. 1 课题要求 目前, 小型风力发电机都采用蓄电池贮能, 电器的用电都由蓄电池提供, 蓄电池放电后能及时由风力发电机给以补充。 由于风能的随机性以及风速变化范围比较大, 给蓄电池充电带来困难。本课题将初步设计一个风力发电系统中的控制器, 实现蓄电池的充电控制。 具体内容和要求包括: 1、 对国内外小型风力发电能量存储研究现状和常用的蓄电池充电方法有深入了解。 2、 完成控制蓄电池充电的硬件设计方案, 包括硬件选型。 建立起以单片机为主控制芯片的控制系统, 带有必要的保护功能。 3、 完成基本程序的编写和调试, 能满足蓄电池在充电电流不超过 Imax= (0. 1C~0. 5C)A, 充电电压不高于过充电压的情况下, 快速给蓄电池供电。 4、 所设计的系统应能实现基于单片机的蓄电池安全快速充电, 并能带有必要的显示功能, 使适用者及时了解蓄电池的充电情况。 2. 2 采取的充电控制策略 本文结合了一些普通充电器的充电策略, 又根据风力发电的不稳定性和蓄电池的充电特性做出了 以下的充电策略: 充电过程分为三个阶段: 涓流充电阶段、 大电流充电阶段和浮充电阶段。 通过采样电路得到实时的蓄电池的充电电流和充电电压数据, CPU 根据 A/D 送来的数据判断蓄电 的充电状态, 输出相应的 D/A 数据, 从而得到合适脉宽的 PWM 波, 调节蓄电池的充电电流。 在每个充电阶段, 如果充电电流大于了规定的电流值, CPU 会调节 D/A 输出, 从而调节充电电流。 另外, 系统还包括键盘模块, 当使用者不满意当前的充电电流时, 可以用键盘设置 D/A 参数, 调节电流。 在本设计中, 为了节省 CPU 的时间, 键盘采用的是中断扫描的方式。 LED 显示模块实时显示充电电流、 充电电压和 PWM 输出百分比。 3 硬件电路部分 3. 1 硬件原理图的总体设计 如图 3. 1 所示: 蓄电池充电控制系统的电路框图如图 3. 1 所示, 主控制器采用 AT89C51 微处理器为控制核心, 辅助电源用于提供电路所需的多路电压, A/D 采样电路完成电流和电压的采样,驱动电路驱动充电电路中的 MOS 管的通断来调节充电电流, 实时打开卸荷电路防止蓄电池过充。 3. 2 风力机选型 在本设计中选用的是 HY-400 型风力机。 其技术参数如表 3. 1 所示。 风力涡轮机叶片由超高强度的工程塑料精密铸造成型, 风轮运转平稳而宁静。 该风轮的翼型经气动力学专家精心设计而成, 具有极低的启动及切入点, 极高的风能利用效率并能依藉叶片自身的气动力效应防止任何风况下飞车。 发电机采用优质高强永磁材料, 发电机体积小、 重量轻而且发电效率高。 电机专家独特的电磁设计技术造就了 该发电机具有及其微小的起动阻力矩, 有效保证了 HY 系列在微风中便能启动。 该发电机的 发电效率、 起动性能以及超速过载能力堪称当今世界一流。 整机全部采用优质铝合金精密压铸部件与不锈钢配件, 整机重量极轻。 广泛适用于-30℃~60℃气温、 高湿度、 风沙及盐雾等多种环境, 具有极高的可靠性。 HY 型小型风力发电机造型优美、 安装简便[11]。 图 3. 1 硬件结构框图 3. 3 蓄电池选型 在这里选择两个 150AH/12V 的蓄电池。 其主要的技术参数如表 3. 2 所示: 电池参数 名称 定义及计算公式 取值 V 电池组电压 24V NC 单格电池数量 串联电池个数 2 Crate 电池组容量 300Ah Vc.min Ibuck 最大充电电流 Ibuck=0.1C~0.5C 50A Itrickle 涓流充电电流 Itrickle=0.04C 6A If 浮充电流 If=0.05C 7A Vj 涓流充电电压 20.4V Vbuck 大电流充电电压 20.4V~28.0V Vfloat 浮充充电电压 28.0V 表 3. 2 蓄电池技术指标 3. 4 控制面板设计 产品名称 小型风力发电机 HY-400 起动风速(m/s) 2. 3 额定风速(m/s) 12 切入风速(m/s) 3 额定电压(DCV) 24 额定功率(W) 400 最大功率(W) 450 风叶直径(m) 1. 4 风叶数量 3 超速保护 叶片失速及电磁制动 过载保护 电磁制动或加卸荷器 表 3. 1 风力发电机技术指标 按照课题要求, 设计的控制面板如图 3. 2 所示。“ON”、“OFF” 键是控制器的总开关,按下“ON” 蓄电池开始充电, 按下“OFF” 控制器停止工作。“充电” 灯亮表示风力发电机已经接通可以给蓄电池充电了。“正常” 灯亮表示蓄电池连接正常。“反接” 灯亮表示蓄电池反接。“U”、“V”、“W” 几个接线柱连接风力发电机。“+”、“-” 接线柱接蓄电池的正负极。 三个按键用来实现调节 PWM 输出百分比的功能。 七个 LED 分别显示充电电流、 充电电压和 PWM 输出百分比。 3. 5 AT89C51 单片机 3. 5. 1 AT89C51 简介 单片机AT89C51是本系统的核心。 单片机是把微机主要部分都集成在一个芯片上的单芯片微型计算机。 由于它的结构与指令功能都是按照工业控制要求设计的, 故又叫单片控制器(Single Chip Microcontroller) 。 AT89C51是美国ATMEL公司最近生产的一种高性能、 低功耗、 带4kFlash Memory的8位CMOS单片微型计算机芯片。 Flash Memory又称闪烁存贮器, 它是EPROM和EEPROM技术有机结合的产物。 其既具有EPROM一样的可编程能力, 又带有EEPROM的电可擦除性能, 而且还具有不挥发性、 访问速度快和密度高等特点。 由于以上优点使AT89C51可靠性高、 实时性好、速度快、 系统掉电后重要数据和状态信息不会丢失, 并可方便的在线]。 它为解决许多嵌入式控制应用提供了更多的灵活性。 通常, 一个微计算机由微型计算机与外部设备组成, 而微型计算机则包括微处理器(CPU) , 存储器, 输出/输入口(I/O口) 及其它功能部件如定时/计数器, 中断系统等。它们通过地址总线(AB) , 数据总线(DB) 和控制总线(CB) 连接起来。 通过输入/输出口线与外部设备及外围芯片相连。 CPU中配置有指令系统。 计算机系统中配有主机监控程序,系统操作软件及用户应用软件。 单片机相当于一个没有显示器, 没有键盘, 不带监控程序正常 充电 反接 ON OFF U W V OK+ _ UP DOWN 电流(A) 电压(V) PWM(%) 图 3. 2 控制面板示意图 的单板机。 其结构如图3. 3: 单片计算机有以下特点: 1、 受集成度限制, 片内存储器容量较小, 一般ROM小于4/8K字节, RAM小于256字节,但可在外部扩展, 通常ROM, RAM可分别扩展至64K字节。 2、 可靠性好。 芯片本身是按工业测控环境要求设计的, 其抗工业噪声干扰优于一般通用CPU; 程序指令及常数、 表格固化在ROM中不易被破坏; 许多信号通道均在一个芯片内,故可靠性高。 3、 易扩展。 片内具有计算机正常运行所必须的部件。 芯片外部有许多供扩展用三总线并行、 串行输入/输出管脚, 很容易构成各种规模的计算机应用系统。 4、 控制功能强。 为了满足工业控制要求, 一般单片机的指令系统中均有极丰富的条件分支转移指令、 I/O口的逻辑操作以及位处理功能。 一般说来, 单片机的逻辑控制功能及运行速度均高于同一档次的微处理器。 5、 一般单片机内无监控程序或系统通用管理软件, 只放置用户调试好的应用程序。 3. 5. 2 引脚功能说明 XTAL1: 接外部晶振的一个引脚。 在单片机内部, 它是一反相放大器输入端, 这个放大器构成了 片内振荡器。 它采用外部振荡器时, 该引脚应接地。 XTAL2: 接外部晶振的一个引脚。 在片内接至振荡器的反相放大器输出端和内部时钟发生器输入端。 当采用外部振荡器时, 则此引脚接外部振荡信号的输入。 RST: AT89C51的复位信号输入引脚, 高电位工作, 当要对芯片复位时, 只要将此引脚电位提升到高电位, 并持续两个机器周期以上的时间, AT89C51便能完成系统复位的各项时钟 复位 CPU ROM RAM 定时计数器中断系统I/O口 外部设备 AB CB DB 图3. 3 单片机结构 工作, 使得内部特殊功能寄存器的内容均被设成已知状态。 ALE/ PROG : ALE是英文“ADDRESS LATCH ENABLE” 的缩写, 表示地址锁存允许信号。当访问外部存储器时, ALE信号负跳变来触发外部的8位锁存器(如74LS373) , 将端口P0的地址总线) 锁存进入锁存器中。 在非访问外部存储器期间, ALE引脚的输出频率是系统工作频率的1/16, 因此可以用来驱动其他外围芯片的时钟输入。 EA /VPP: 该引脚为低电平时, 则读取外部的程序代码(存于外部EPROM中) 来执行程序。 因此在8031中, EA引脚必须接低电位, 因为其内部无程序存储器空间。 如果是使用AT89C51或其它内部有程序空间的单片机时, 此引脚接成高电平使程序运行时访问内部程序存储器, 当程序指针PC值超过片内程序存储器地址(8051/8751/89C51的PC超过0FFFH) 时, 将自动转向外部程序存储器继续运行。 此外, 在将程序代码输入至8751内部EPROM、 89C51内部Flash时, 可以利用此引脚来输入提供编程的电压。 PSEN: 此为“Program Store Enable” 的缩写。 访问外部程序存储器选通信号, 低电平有效。 在访问外部程序存储器读取指令码时, 每个机器周期产生二次 PSEN 信号。 在执行片内程序存储器指令时, 不产生 PSEN 信号, 在访问外部数据时, 亦不产生 PSEN 信号。 P0 口: PO 口是一组 8 位漏极开路型双向 I/0 口, 也即地址/数据总线复用口。 作为输出口用时, 每位能吸收电流的方式驱动 8 个 TTL 逻辑门电路, 对端口写“1” 可作为高阻抗输入端用。 在访问外部数据存储器或程序存储器时, 这组口线 位)和数据总线复用, 在访问期间激活内部上拉电阻。 在 Flash 编程时, PO 口接收指令字节,而在程序校验时, 输出指令字节, 校验时, 要求外接上拉电阻。 Pl 口: P1 是一个带内部上拉电阻的 8 位双向 I/O 口, P1 的输出缓冲级可驱动(吸收或输出电流) 4 个 TTL 逻辑门电路。 对端口写“1”, 通过内部的上拉电阻把端口拉到高电平, 此时可作输入口。 作输入口使用时, 因为内部存在上拉电阻, 某个引脚被外部信号拉低时会输出一个电流。 Flash 编程和程序校验期间, P1 接收低 8 位地址。 P2 口: P2 是一个带有内部上拉电阻的 8 位双向 I/O 口, P2 的输出缓冲级可驱动(吸收或输出电流) 4 个 TTL 逻辑门电路。 对端口写“1”, 通过内部的上拉电阻把端口拉到高电平, 此时可作输入口, 作输入口使用时, 因为内部存在上拉电阻, 某个引脚被外部信号拉低时会输出一个电流。 在访问外部程序存储器或 16 位地址的外部数据存储器时, P2 口送出高 8 位地址数据。 在访问 8 位地址的外部数据存储器时, P2 口线上的内容在整个访问期间不改变。 Flash 编程或校验时, P2 亦接收高位地址和其它控制信号。 P3 口: P3 口是一组带有内部上拉电阻的 8 位双向 I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流) 4 个 TTL 逻辑门电路。 对 P3 口写“1” 时, 它们被内部上拉电阻拉高并可作为输入端口。 作输入端时, 被外部拉低的 P3 口将用上拉电阻输出电流。 P3 口除了作为一般的 I/0 口线外, 更重要的用途是它的第二功能, 如下所示: P3. 0 RXD 串行通信输入。 P3. 1 TXD 串行通信输出。 P3. 2 INT0 外部中断0 输入, 低电平有效。 P3. 3 INT1外部中断1输入, 低电平有效。 P3. 4 T0计数器0外部事件计数输入端。 P3. 5 T1计数器1外部事件计数输入端。 P3. 6 WR外部随机存储器的写选通, 低电平有效。 P3. 7 RD外部随机存储器的读选通, 低电平有效 EA/VP31X119X218RESET9INT0INT1T0T112131415P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.712345678P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.32P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.28RDWRPSENALE/PTXDRXD0 图3. 4 AT89C51引脚图 3. 5. 3 时钟振荡器 AT89C51 中有一个用于构成内部振荡器的高增益反相放大器, 引脚 XTAL1 和 XTAL2 分别是该放人器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器, 振荡电路参见图 3. 5。 接石英晶体(或陶瓷谐振器) 及电容 C1, C2接在放大器的反馈回路中构成并联振荡电路。 对外接电容 C1, C2 虽然没有十分严格的要求, 但电容容量的大小会轻微影响振荡频率的高低、 振荡器工作的稳定性、 起振的难易程序及温度稳定性, 如果使用石英晶体, 推荐电容使用 30pF10pF, 而如使用陶瓷谐振器建议选择 4pF10F[13]。 图 3. 5 振荡电路 3. 6 看门狗电路的选型 89C51 的复位操作使单片机进入初始化状态, 其中包括使程序计数器 PC=0000H, 这表明程序从 0000H 地址单元开始执行。只要在复位引脚 RST 出现两个机器周期以上的高电平时, 单片机内部则初始复位。 只要 RST 引脚保持高电平, 则 89C51 循环复位。 只有 RST变成低电平时, 它才从 0000H 地址开始执行程序[14]。 21 个特殊功能寄存器复位后的状态为确定值。 表 3. 3 中符号*为随机状态。 特殊功能寄存器 初始状态 特殊功能寄存器 初始状态 A 00H TMOD 00H B 00H TCON 00H PSW 00H TH0 00H SP 07H TL0 00H DPL 00H TH1 00H DPH 00H TL1 00H P0~P3 FFH SCON 不定 IP ***00000B SCON 00H IE ***00000B PCON 0*******B 目前, 监控电路在微处理器中已得到广泛的应用, 它可以有效的防止程序的 “跑飞”,并自动将系统复位。当外来干扰导致数据总线、I/O 总线或控制总线上的数字信号错乱时, 将引发一系列的后果 , 特别是程序指针计数器 PC 值受到干扰而改变时, 将引起程序 “跑飞”, 使系统出现死机或其他一些不可预知的情况。 常用的看门狗主要有 2 种: 软件狗和硬件狗。 ①软件狗实际上就是通常所说的软件陷阱, 是纯软件的处理方法。 它是在程序存储器的空余地址中全部填上 1 条跳转指令, 一旦程序跑飞, 只要程序指针指向这些地址, 便立即被强行跳转至程序开头或其他指定地址处, 从而使程序继续正常执行。 ②硬件狗现在更多地被采用。 所谓硬件狗, 就是一个能够发出“复位” 信号的计数器或定时器电路。 设计中看门狗复位电路的工作原理是: 喂狗引脚 P2. 0 每隔 1. 6s 发出一个脉冲, 计数器对脉冲进行计数。 程序正常运行时, CPU 在计数器溢出之前通过 I/O 口对计数器清, 使计数器不能溢出。 一旦程序运行出现异常, 不能及时对计数器清零, 计数器将发生溢出。 此时, 由于溢出端 RES 处于高电平与 CPU 的 RST端相连接, 所以使单片机系统“复位” , 使其能够重新正常运行。 单片机系统的供电电源有时候因为各种原因而不稳定, 发生电压波动或瞬间掉电的现象, 从而影响系统的正常工表 3. 3 特殊功能寄存器复位后的状态 作和数据保存。 如果能对电源电压进行监视, 当电源电压下降到某一特定值时, 发出 1个信号给单片机和电源切换电路, 那么就能使 CPU 及时进行必要的操作和维持工作电源的稳定。 MAX813L 是美国 MAXIM 公司生产的低价格单片机监控电路。 它减少了在微处理器系统中采用分离元件来实现监控功能所用的元器件数量和复杂性, 并能提高系统的可靠性和准确性。 它除有看门狗作用以外, 还有电源电压检测的功能。 图 3. 6 MAX813L 3. 7 信号转换电路的选型 转换电路是数模信号和模数信号的转换, 数模转换使用 DAC0832; 模数转换器使用ADC0809。 在单片机的实时控制和智能仪表等应用系统中, 控制或测量的有关变量往往是一些连续变化的模拟量, 如温度、 压力、 流量、 速度等物理量[15]。 这些模拟量必须转换成数字量后才能输入到单片机中进行处理。 单片机处理的结果, 也常常需要转换成模拟信号, 若输入的是非电量模拟信号还需经过传感器或电位器转换成模拟电信号。实现模拟两转换成数字量的器件称为模拟转换器(ADC), 数字量转换成模拟量的器件称为数模转换器(DAC)。 数/ 模转换器, 也就是说单片机通过数据总线将某个数字量送入 D/ A, D/ A 就输出一个与数字量成比例的模拟电压或电流。 那么, 这种转换精度是多少呢? 转换能在多快时间内完成呢? 这就是我们在选择 D/ A 时首先要考虑的问题。 D/ A 转换的精度主要决定于 D/ A 的分辨率, 但是其前提条件是电源及参考电源必须稳定, 否则达不到应有的精度。 此外应该说明的是, D/ A 实际输出值在满量程时比标称值小一个最小位。 如一个 10 位 D/ A, 参考电压为-5V, 当 10 位输入全为 1 时, 标称值为+5V1023/ 1024=4. 995V; 当 D/ A 输入的 10 位全部为 0 时, 由于存在零点误差, D/ A输出与 OV 有一定偏差, 常采用片外调零电位器使之为零。 D/ A 器件中有电阻网络、 模拟开关、 驱动电路。 从 D/ A 输入数据到 D/ A 输出模拟电压或电流是需要一定时间的, 这个时间除了受器件本身特性制约外还和数字量的变化幅值有关。 当输入数字量从全部为 0 到全部为 1(或反之) , 输出建立时间最长, 不同的器件, 建立时间可以从几十纳秒到几十微秒不等, 设计中应根据控制对象对时间响应的不同要求加以选择。 在这里采用的是 12 位的 ADC574 和 8 位的 DAC0832. 因为在本系统中, 最 高采样电流为 50A, 显示的精度为 0. 1A, 50/2048=0. 024, 故选用的是 ADC574 满足精度。D/A 输出的最大值为 2. 3V, 2. 3/256=0. 009. 故 DAC0809 满足精度。 它是和单片机兼容的 8位 D/ A 芯片, 其输出电流建立时间为 1 微秒, 工作电源+5V~+15V, 功耗为 20mw。 3. 7. 1 DAC0832 及其转换电路 DAC0832 引脚如图 3. 7 所示。 DI0~DI7: 8 位数据输入端; ILE: 数据允许所存信号;WR1: 输入寄存器写信号; XFER: 数据传送信号; WR2: DAC 寄存器写信号; Vref: 基准电压输入引脚; Rfb: 反馈信号输入端; Iout1: 电流输出 1 端; Iout2: 电流输出 2 端; VCC:电源; AGND: 模拟地。 由于 DAC0832 是电流输出型的, 而且与之相连接的芯片输入输出都是电压信号, 所以常用运算放大器转换成电压信号。 转换电路如图 3. 7 所示: 图 3. 7 DAC0832 管脚图及其连接图 3. 7. 2 A/D 转换器及外围电路 ADC0809 是 National 半导体公司生产 CMOS 材料的 A/D 转换器。 它具有 8 个通道的模拟量输入线, 可在程序控制下对任意通道进行 A/D 转换, 得到 8 位二进制数字量。 引脚图如图 3. 8。 图 3. 8 ADC0809 的引脚图 ADC0809 是 8 位 A/D 转换芯片, 它是采用逐次逼近的方法完成 A/D 转换的。 ADC0809由单一+5V 电源供电; 片内带有锁存功能的 8 路模拟多路开关, 可对 8 路 0~5V 的输入信号分时进行转换, 完成一次转换需 100 S; 片内具有多路开关的地址译码器和锁存器、高阻抗斩波器、 稳定的比较器, 256R 电阻 T 型网络和树状电子开关以及逐次逼近寄存器。输出具有 TTL 三态锁存缓冲器, 可直接接到单片机数据总线上; 通过适当的外接电路,ADC0809 可对 0~5V 的双极性模拟信号进行转换[16]。 D7~D0: 8 位数字量输出引脚; INT0~INT7: 8 路模拟量输入引脚; VCC: +5V 工作电压; GND: 地; REF(+): 参考电压正端; REF(-): 参考电压负端; START: A/D 转换启动信号输入端; ALE: 地址锁存允许信号输入端; EOC: 转换结束信号输出引脚, 开始转换时为低电平, 当转换结束时为高电平; OE: 输出允许控制端, 用以打开三态数据输出锁存器; CLK: 时钟信号输入端。 A、 B、 C: 地址输入线, 经译码后可选通 INT0~INT7 八通道中的一个通道进行转换。 ADC0809 与 AT89C51 接口电路设计: 由于 ADC0809 片内无时钟, 可利用 AT89C51 提供的地址锁存允许信号 ALE 经 D 触发器二分频后获得, ALE 脚的频率是 AT89C51 时钟频率的 1/6。 单片机时钟频率采用 6MHz, 则ALE 脚的输出频率为 1MHz, 再二分频后为 500KHz, 恰好符合 ADC0809 对时钟频率的要求。地址译码引脚 A、 B、 C 分别与地址总线 相连, 以选通 IN0~IN7 中的一个通路。 将 P2. 6 作为片选信号, 在启动 A/D 转换时, 由单片机的写信号和 P2. 6 控制ADC 的地址锁存和转换启动, 由于 ALE 和 START 连在一起, 因此 ADC0809 在锁存通道地址的同时, 启动并进行转换。 由图 3. 9 可知, P2. 6 与 ADC0809 的 ALE、 START 和 OE 之间有如下关系: 1 . 2PWRSTARTALE 可见 P2.6 应设置为低电平。 在工作过程中 ADC0809 处于随时选通的状态。 本设计采用的是查询方式的接法, 图 3. 9 所示为 ADC0809 与 AT89C51 的接口电路。 图 3. 9 ADC0809 与 AT89C51 的接口电路 3. 8 8155A接口电路 由于单片机 I/O 口有限, 所以采用 8155 芯片扩展 89C51 单片机的 I/O 口, 用 8155芯片管理键盘和显示电路。 8155 内部 RAM 用于控制参数的存储, PA、 PB 口用于发光二极管示, PC 口用于键盘输入。 图 3. 10 8155 引脚图 1 . 2PRDOE 8155 采用 40 脚双列直插式封装, 单一+5V 电源。 其引脚图如图 3. 10 所示。 带有 RAM和定时器的并行口 8155 的引脚功能: RESET: 复位信号线, 高电平有效, 在该输入端加一脉冲宽度为 600ns 的高电平信号,就可使 8155 可靠复位, 复位时三个输入/输出口预置为输入方式。 CE: 片选端, 8155 为低电平有效, 8156 为高电平有效, 当 8155 上加上一个低电平时,芯片被选中, 可以与单片机交换信息。 AD0~AD7: 三态地址/数据总线, 在 ALE 的下降沿把 8 位地址锁存于内部地址锁存器,地址可代 RAM 或输入/输出用, 由 IO/M 信号的极性而定, 8 位数据的流向取决于 RD 或 WR信号的状态。 ALE: 地址锁存器启用信号线, 高电平有效, 其下降沿把 AD0~AD7 上的地址, 片选信号、 IO/M 信号锁存起来。 IO/M: IO 和 RAM 选择信号线, 高电平造反输入/输出, 该线低电平选择存储器。 RD: 读信号线, 低电平有效, 当片选信号与 RD 有效时, 开启 AD0~AD7 缓冲器, 如果IO/M 为低电平, 则 RAM 的内容读至 AD0~AD7, 如果 IO/M 为高电平, 则选中的输入/输出口的内容读到 AD0~AD7。 WR: 写信号线, 低电平有效, 当片选信号和 WR 信号有效时, AD0~AD7 上的数据将根据 IO/M 极性写入 RAM 或 I/O 口[17]。 PA0~PA7: 输入/输出口 A 的信号线 位输入/输出口, 输入/输出的方向通过对命令/状态寄存器的编程来选择。 PB0~PB7: 输入/输出口 B 的信号线 位输入/输出口, 输入/输出的方向通过对命令/状态寄存器的编程来选择。 PC0~PC5: 输入/输出口 C 的信号线 位可编程输入/输出口, 也可用作 A 和 B 口的控制信号线, 通过对命令/状态寄存器编程来选择。 INT: 定时/计数器输入信号线, 定时/计数器的时钟由此线输入。 TOUT: 定时/计数器的输出信号线, 输出信号为方波还是脉冲则由定时/计数器的工作方式而定。 VCC: 电源线 V 直流电源。 VSS: 接地线 LED 显示电路 在数字系统中, 经常要用到字符显示器。 目前, 最常用字符显示器为发光二极管LED字符显示器。 LED显示器是由发光二极管显示字段组成的显示器件。 这种显示块有共阴极和共阳极两种。 通常七段LED显示块中有八个发光二极管, 故也有人叫做八段显示器。 其中七个发光二极管构成七笔字形“8” , 一个发光二极管构成小数点。 LED显示方式有动态显示和静态显示两种。 因为动态显示电路能大大节省硬件开销,又因为要显示的位数比较多, 所以本设计采用的是动态显示方式。 设计通过 8155 控制 7 位 LED 共阳极动态显示。 其中 2 位显示蓄电池的充电电流, 显示精确到 1A, 3 位显示蓄电池的充电电压, 显示精确到 0. 1V。 2 位显示 PWM 输出百分比,显示精确到 1。 8155 提供两个 8 为输出口, PB 输出段选码, PA 口输出位选码。 BIC8718为 8 位集成驱动芯片。 图 3. 11 为显示及键盘接口电路。 3. 9. 2 按键及其接口 因为按键数量较少, I/O 口占用较少, 采用独立式按键。 独立式按键电路配置灵活,软件结构简单, 每个按键占用一根 I/O 口线。 按键输入采用低电平有效, 上拉电阻保证了按键断开时, I/O 口线有确定的高电平。 控制系统按键部分如图3. 11所示, 其主要设定PWM波的输出宽度。 设计采用独立式按键, 工作形式为中断扫描方式。 8155 PC0口为“UP” 键, PC1口为“DOWN” 键, PC2口为“OK” 键。“UP” 键每按下一次PWM输出百分比就加一, 同时LED将会显示相应的参数值。“DOWN” 键每按下一次PWM输出百分比就减一。 “OK” 键按下后, 表示参数设定完毕, 系统按照相应的设定值工作。 如果设定值工作一段时间, 不能满足充电的基本要求系统将推出中断返回主程序。 图 3. 11 LED 动态显示及键盘接口电路 3. 10 驱动电路 3. 10. 1 MOSFET 驱动电路设计 驱动电路功能是将控制电路送来的 PWM波变成能直接驱动MOSFET的电压信号。MOSFET的驱动电路如图 3. 12 所示。 。。。。。。 (7 个) 具体分析如下: 1、 在驱动电路和它的前置电路(即控制电路) 之间运用光耦进行隔离, 以减充电主电路对控制电路的干扰。 2、 驱动电路的主干采用推挽式电路, 以降低驱动电路的静态功并提高驱动能力, 驱动更加稳定。 推挽式电路由两个处于开关工作状态的三极管 Q3, 、 Q5 组成, 电路工作的任何时间内, 两个三极管处于一个导通另一个关断状态。 要使 MOSFET 导通时, 三极管 Q3,导通, 为栅极提供通向高电位的通路, 栅源间 Vgs 电压大到使 MOSFET 稳定导通。 要使MOSFET 关断时, 三极管 Q5 导通, 提供栅极通向低电位的通路, 栅源间电压 Vgs 小到使MOSFET 稳定关断。 3、 自举电容 C, 负端接 MOSFET 源极, 正端接驱动电路的 12V 电源, 电源和自举电容正端之间放一个二极管 D3, 使电流只能从 12V 电源流向自举电容而不能反向流动。 当MOSFET 处于关闭的状态时, 续流二极管 Dl 起作用, 源极电位为负 O. 7V, 12V 电源和负 0. 7V的电势差对自举电容充电, 和自举电容串联的电容充电限流电阻 R7 阻值很小, 较大的电流使自举电容很快充足电, 其两端电位差达到 12V 左右。 当 MOSFET 处于由断到通的瞬时,三极管 Q3 开始导通, 提供自举电容正端和栅极的通路, 自举电容两端的电压加在栅源极之间, 对 MOSFET 栅极供电, 使 MOSFET 导通。 MOSFET 一旦导通, 源极电压升高到几十伏,使自举电容负端电位值也升高到同样大小。 由于自举电容容值较大, 且自举电容对 MOSFET栅极放电电流较小, 因此自举电容两端电压保持 12V 几乎不变, 于是, 自举电容的正端电位保持比源极电压大 12V, 这就使栅源极之间电压为 12V, 因而 MOSFET 稳定导通。 自举电图 3. 12 MOSFET 驱动电路 容正端电位在几十伏以上, 大于 12V 电压值, 这时, +12V 电源和自举电容正端存在的二极管几使自举电容不会对+l2V 电源放电。 D3 选快速恢复型的, 以缩短在其反向恢复前自举电容对+12V 电源的放电时间。 在本设计中, 主回路上的 MOSFET1 的栅源极分别连接驱动电路的 f1, f2 端, 而卸荷电路上的 MOSFET2 的栅源极分别连接 f2, f3 端。 当 MOSFET1 处于关断状态时, f2, f3 两端电压是 12. 7V, 因此 MOSFET2 是导通的。 当 MOSFET1 处于导通状态时, f2, f3 两端电压是负的, 因此 MOSFET2 此时是关断的。 这样就行成了两个 MOS 管工作在一个关断另一个导通的状态。 3. 11 控制电路 控制电路用来产生 PWM 波, 我们采用 TL494 来实现。 TL494 是美国德州仪器公司生产的一种电压驱动型脉宽调制控制集成电路, 主要应用在各种开关电源中。 TL494 价格低廉、易购得, 和分立单元系统相比, 在一个芯片内, 同时解决了电流和电压调节器, 脉宽调制,最大电流限制。 芯片内还设有附加监控保护功能, 使得它可获得更优良的工作性能, 提高了抗干扰能力和可靠性, 系统结构更简洁, 缩小了空间。 由 TL494、 单片机组成的充电控制回路, 构成闭环控制系统。 3. 11. 1 用 TL494 实现 PWM 输出 TL494 回路控制原理如下: TL494 内部振荡器产生的锯齿波送到 PWM 比较器的反相输入端, 脉冲调宽电压 AD574检测到电池电压、 电流参数经处理做出判断, 确定当前的充电阶段, 经 D/A 转换器输出电压信号送到比较器的同相输入端 DTC, TL494 内部 PWM 比较器比较后输出一定宽度的脉冲波。 当调宽电压变化时, TL494 输出的脉冲宽度也随之改变, 从而改变 MOSFET 的导通时间, 达到调节、 稳定输出电流的目的, 使电池充电电流值与设定值保持一致, 形成闭环回路控制。 本次设计只采用一组 PWM 输出, 故 TL494 采用单端输出方式。 单端输出时 TL494的 Ql 和 Q2 并在一起输出 PWM 波, 如图 3. 13 所示。 图 3. 13 单端输出连接图 检测到的电池电流转换为 0~5V 的电信号, 通过简单滤波电路进行平滑、 去除杂波干扰后的 CURRENT 送给 TL494 的误差放大器 I 的 IN+同相输入端。 设定输入信号是由 TL494的+5V 基准电压源经一精密多圈电位器分压, 由电位器滑动端通过滤波电路接入 TL494 的误差放大器 I 的 IN-反相输入端。 反馈信号和设定信号通过 TL494 的误差放大器后进行比较放大, 进而输出占空比较低的 PWM 波, 防止过充电。 在本控制器中只用到了 TL494 的误差放大器 I, 故将误差放大器 II 的 2IN+(16 脚) 接地、 2IN-(15 脚) 接高电平。 TL494 的电路连接如图 3. 14 所示。 3. 12 检测电路 检测电路包括充电电压检测、 充电电流检测。 3. 12. 1 电压检测 图 3. 14 TL494 连接图 电压检测电路的设计主要考虑的问题有: 在正常充电的过程中, 电池端电压 U 的变化范围是 20. 4V 至 28V, 要使单片机检测 U, 需以某种途径把 U 的变化映射到 O 至 5V 的范围内; 在测量中, 需要用低压器件去测量高电压、 强电流模拟量, 如果模拟量与数字量之间没有电气隔离, 那么, 高电压、 强电流很容易串入低压器件, 并将其烧毁。 本次设计采用精密电阻进行比例衰减, 把输入电压量程范围转化为 AD 转换器的量程范围, 然后经 RC滤波, 再送给 AD 转换器测量。 线性光耦可以较好的实现输入侧和输出侧之间的隔离, 且输出跟随输入变化, 线%。 电压采样电路的工作原理如图 3. 15 所示: 3. 12. 2 电流检测 1、 蓄电池的充电电流检测电路如图 3. 16 所示, 通过霍尔传感器来检测蓄电池的充电电流值的大小。 图 3. 15 电压采样电路 图 3. 16 充电流采样电路 2、 霍尔电流传感器的选型 因为充电电路中最大的充电电流为 50A, 选择了 HNC-100US 型霍尔传感器。 其技术参数如表 3. 4 所示: 3. 13 充电电路设计 风力充电拓扑结构: 风机充电总体结构图。 如图 3. 17 所示, 充电控制器 U、 V、 W 接的三相输出整流部分采用简单的不可控三相整流, 开关管选择驱动简单、 驱动功率小、 开关速度快且工作频率高的电力 MOSFTE。 风机充电控制部分工作过程如下: 正常充电情况下两个 MOS 管交替导通和关断给蓄电池充电, 当外界风速过大时蓄电池充电电流可能过大, 这时 CPU 就会调整主充电电路上的 MOSFET1 的导通时间, 从而调节充电电流, 这样防止蓄电池因大电流充电缩短寿命。 蓄电池不能吸收的电能将通过 MOSFET2导通在卸荷电阻上, 从而保护蓄电池, 即失速保护。 事项 参数 额定输入电流(A) 100 测量电流范围(A) 0~200 额定输出电流(A) 50 转换率 1: 2000 电源电压(V) -12V、 +12V 电流消耗(mA) 20 图 3. 17 充电电路图 表 3. 4 霍尔传感器技术指标 极性电容 C1 起滤波作用。 当 MSOFET1 导通时电路通过 L1 给 C2 充电, 当 MOSFET1 关断时 C2 通过 L2 给蓄电池充电。 L1、 L2 是平滑电流用的。 4 软件设计 程序流程图包括主程序流程图、 A/D 转换子程序流程图、 控制子程序、 UP、 DOWN 子程序、 键盘中断子程序流程图、 显示子程序流程图等。 4. 1 主程序流程图 对整个充电系统进行总的控制。软件程序运行时首先初始化单片机的定时器和外部中断等。 首先, 主程序对 8155、 INTO 进行初始化, 然后 CPU 进行定时采样, 调用 A/D 转换子程序, CPU 判断充电电压是否小于涓流充电电压, 如果小于则系统用 6A 的涓流电流进行充电。 如果大于则判断是否小于浮充电压, 如果小于则系统用 50A 的大电流充电, 否则用 7A 的浮充电流充电。 调用显示子程序, 开始定时, 定时时间到了 进行下一次 A/D 采样,如此进入循环充电状态。 图 4. 1 主程序流程图 4. 2 控制子程序流程图 4. 2. 1 “k1” 子程序 PWM 输出截止时间百分比 2%~100%是与 DA 输出电压 0V~3. 3V 呈线性关系的。风力发电机的额定功率为 400W, 额定电压为 24V, 因此额定输出电流为 400/24=16. 7A。 因为蓄电池均流电流值为 6A, 6/16. 7=0. 36, 因此 PWM 输出导通时间百分比应为 36%。 根据上述线性关系计算得 D/A 输出为 2. 1V。 所以 D/A 数字输入为 6DH。 把“3” 存储在 5AH, “6”存储在 59H 以便送往 LED 显示。 在以下几个子程序中用到的几组数据如表 4. 1 所示。 在此程序中, 如果风速过大, 实际充电电流大于涓流电流, 程序会跳转到“k4” 子程序, 使充电电流变小, 蓄电池会以更小的电流充电。 图 4. 2 “k1” 子程序流程图 图 4. 3 “k2” 子程序流程图 表 4. 1 部分 D/A 输入数字与电压输出的对应关系 4. 2. 2 “k2” 子程序流程图 “K2” 子程序中 D/A 输出信号算法与上述相同, 这里不再赘述。 如果实际电流大于50A, 程序会跳转到“k5” 子程序, 蓄电池会以较小的电流充电。 流程图如图 4. 3 所示。在“k3” 子程序中, 如果实际电流大于了 7A, 程序会跳转到“k4” 子程序, 蓄电池会以较小的电流充电。 流程图如图 4. 4 所示。 图 4. 4 “k3” 子程序流程图 4. 2. 3 “k4”、“K5” 子程序流程图 “k4” 子程序使涓流状态或浮充状态的充电电流变小。“k5” 子程序使大电流充电状态的电流变小。 D/A 输入数字信号 D/A 输出模拟信号 00H 0V 2FH 0. 9V 62H 1. 9V 6DH 2. 1V 75H 2. 3V 图 4. 5 “k4” 子程序流程图 4. 3 A/D 转换子程序流程图 先选通 A/D, 选定 A/D 通道。 这里硬件连接为 IN0 通道为采样电流通道, IN1 通道为采样电压通道。 由以上 ADC0809 硬件分析可知, 在软件编写时, 应令 P2. 6=A14=0。 A0、A1、 A2 给出被选择的模拟通道的地址。 执行一条输出指令, 启动 A/D 转换。 执行一条输入指令, 读取转换结果。 程序是采用软件延时的方法, 分别对 2 路模拟信号进行转换, 并依次把结果转储到数据存储区 54H~5AH。 图 4. 6 “k5” 子程序流程图 开始选通AD, 选定通道数, 置数据存储指针, 启动A/D转换转换完成?转储转换结果,指向下一个通道两通道转换完成?电流、 电压A/D转换数据变成BCD码将BCD码转储在显示缓冲单元54H~5AHNYNY中断是否确认键按下?调用ADC输出当前DA设置值采样电压值小于涓流电压值?采样电压值是否小于浮充电压值?转UP子程序转k6子程序调用显示子程序转k7子程序浮充电流值大于7A?返回主程序NYNYYNNY 4. 4 按键子程序流程图 4. 4. 1 按键子程序流程图 设计采用独立式按键, 工作形式为定时查询方式。 8155 PC0口为“UP” 键, PC1口为“DOWN” 键, PC2口为“OK” 键。“UP” 键每按下一次PWM输出百分比就加一, 同时LED将会显示相应的参数值。 “DOWN” 键每按下一次PWM输出百分比就减一。 “确认” 键按下后,表示参数设定完毕, 系统按...


365真人游戏

@SHENZHEN ENERGY Corporation All Rights Reserved.

365真人游戏