基于80C51太阳能发电量检测设计毕业设计.docx

上传人:b****8 文档编号:13123641 上传时间:2023-06-11 格式:DOCX 页数:66 大小:992.77KB
下载 相关 举报
基于80C51太阳能发电量检测设计毕业设计.docx_第1页
第1页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第2页
第2页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第3页
第3页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第4页
第4页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第5页
第5页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第6页
第6页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第7页
第7页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第8页
第8页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第9页
第9页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第10页
第10页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第11页
第11页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第12页
第12页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第13页
第13页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第14页
第14页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第15页
第15页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第16页
第16页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第17页
第17页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第18页
第18页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第19页
第19页 / 共66页
基于80C51太阳能发电量检测设计毕业设计.docx_第20页
第20页 / 共66页
亲,该文档总共66页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于80C51太阳能发电量检测设计毕业设计.docx

《基于80C51太阳能发电量检测设计毕业设计.docx》由会员分享,可在线阅读,更多相关《基于80C51太阳能发电量检测设计毕业设计.docx(66页珍藏版)》请在冰点文库上搜索。

基于80C51太阳能发电量检测设计毕业设计.docx

基于80C51太阳能发电量检测设计毕业设计

基于80C51太阳能发电量检测设计

摘要

本设计对太阳能发电系统的电量监测器进行了深入研究,提出了一种低耗能、低成本电量监测器新的设计方法,制作出了该系统,完成了相关实验和测试。

本设计的第一部分首先介绍了太阳能发电系统的电量监测器的研究背景及研究现状。

其次指出本文的主要工作。

第二部分首先提出了一种低耗能、低成本电量监测器新的设计方法。

在详细分析了A/D转换模块、I/V、V/V转换模块、电源模块、输出显示模块基础上,给出了系统硬件设计的总体方案。

并特别详细分析了系统的设计创新之处---采用霍尔电流传感器几乎在不消耗能量的情况下就可以实现I/V转换。

第三部分对系统的软件进行了设计和编程,都是利用Proteus软件对A/D转换和液晶显示进行了仿真。

第四部分实际制作了小型太阳能发电系统的电量监测器,并对系统的精度进行了测试分析,结果表明所制作出的电量监测器低功耗,随着测试时间的延长,精度将逐渐提高。

最后,对本研究课题进行了总结,并指出了新的工作方向。

关键词:

太阳能发电系统AT89S52电量监测器霍尔传感器

 

Abstract

Thedesignconductedin-depthresearchaboutthepowermonitorofsolarpowersystem,putforwardanewkindoflowenergyconsumption,lowcostdesignmethodofelectricalquantitymonitor,madethesystemandcompletedtherelevantexperimentsandtests.

Thefirstpartofthisdesignfirstintroducestheresearchbackgroundandpresentconditionaboutelectricitymonitorofsolarpowersystem.Secondly,itpointsoutthemainworkofthispaper.

Thesecondpartofthepaperputsforwardanewkindoflow-energyconsumption,lowcostdesignmethodofelectricalquantitymonitor.BasingonadetailedanalysisoftheA/Dconversionmodule,I/V,V/Vconversionmodule,powersupplymodule,outputmodule,itgivestheoverallschemeofthesystemhardwaredesignandparticularlyanalysestheinnovationofthissystemdesignindetail---realizingI/VconversionbyHallcurrentsensoralmostwithouttheconsumptionofenergy.

ThethirdpartcarriesonthedesignandprogramofthesystemsoftwareandsimulatesA/DconvertorandLCDmonitorbyProteus.

Theforthpartactuallyproducestheelectricitymonitorofsmallsolarpowersystem,testsandanalysestheprecisionofthesystem.Theresultshowsthattheelectricalquantitymonitorislow-powerconsumptionandwiththetesttimegoing,itsaccuracywillgraduallyimprove.

Finally,thestudysubjectissummarized,andanewdirectionispointedout.

Keywords:

solarpowersystem,AT89S52,powermonitor,Hallsensor

 

第一章绪论

1.1研究背景

太阳电池能量转换的基础是结的光生伏特效应。

当光照射到pn结上时,产生电子一空穴对,在半导体内部结附近生成的载流子没有被复合而到达空间电荷区,受内建电场的吸引,电子流入n区,空穴流入p区,结果使n区储存了过剩的电子,p区有过剩的空穴。

它们在pn结附近形成与势垒方向相反的光生电场。

光生电场除了部分抵消势垒电场的作用外,还使p区带正电,N区带负电,在N区和P区之间的薄层就产生电动势,这就是光生伏特效应。

此时,如果将外电路短路,则外电路中就有与入射光能量成正比的光电流流过,这个电流称作短路电流,另一方面,若将PN结两端开路,则由于电子和空穴分别流入N区和P区,使N区的费米能级比P区的费米能级高,在这两个费米能级之间就产生了电位差VOC。

可以测得这个值,并称为开路电压。

由于此时结处于正向偏置,因此,上述短路光电流和二极管的正向电流相等,并由此可以决定VOC的值。

太阳光照在半导体p-n结上,形成新的空穴-电子对,在p-n结电场的作用下,空穴由n区流向p区,电子由p区流向n区,接通电路后就形成电流。

这就是光电效应太阳能电池的工作原理。

太阳能发电方式太阳能发电有两种方式,一种是光—热—电转换方式,另一种是光—电直接转换方式。

第一:

光—热—电转换方式通过利用太阳辐射产生的热能发电,一般是由太阳能集热器将所吸收的热能转换成工质的蒸气,再驱动汽轮机发电。

前一个过程是光—热转换过程;后一个过程是热—电转换过程,与普通的火力发电一样.太阳能热发电的缺点是效率很低而成本很高,估计它的投资至少要比普通火电站贵5~10倍。

第二:

光—电直接转换方式该方式是利用光电效应,将太阳辐射能直接转换成电能,光—电转换的基本装置就是太阳能电池。

太阳能电池是一种由于光生伏特效应而将太阳光能直接转化为电能的器件,是一个半导体光电二极管,当太阳光照到光电二极管上时,光电二极管就会把太阳的光能变成电能,产生电流。

当许多个电池串联或并联起来就可以成为有比较大的输出功率的太阳能电池方阵了。

太阳能电池是一种大有前途的新型电源,具有永久性、清洁性和灵活性三大优点.太阳能电池寿命长,只要太阳存在,太阳能电池就可以一次投资而长期使用;与火力发电、核能发电相比,太阳能电池不会引起环境污染;太阳能电池可以大中小并举,大到百万千瓦的中型电站,小到只供一户用的太阳能电池组,这是其它电源无法比拟的。

电池板原料:

玻璃,EVA,电池片、铝合金壳、包锡铜片、不锈钢支架、蓄电池等而太阳能发电系统基本分为三类:

1)独立光伏系统,

2)并网光伏系统,3)混合系统。

其中独立光伏系统、离网/并网混合系统组成如图1.1所示,主要组成部分为:

1)光伏组件,2)监控系统,3)控制系统(充电控制、供电控制、状态控制),4)监控系统(简单的独立光伏系统可以没有监控系统),5)蓄电池组,6)负载。

图1独立光伏发电系统结构框图

在太阳能发电系统中,无论是独立光伏系统,还是并网光伏系统,抑或是混合系统,环境数据是决定太阳能发电的重要指标,对太阳能发电质量起着决定性作用;同时也是对太阳能发电站的设计提供有效的数据保证。

所以在太阳能发电系统中,需要读系统的工作状况进行实时采集,在大型并网系统中往往要求采集风速、风向、环境温度、太阳能电池温度、蓄电池温度、太阳总辐射、太阳直接辐射、充电电流、充电电压、逆变输出电流、逆变输出电压、工作电流、工作电压等,这些数据要保存10年以上。

但在小型太阳能发电系统中,如果对其电量进行采集,往往要消耗系统能量,所以如何设计出一种低成本、低耗电的电量监测器是十分必要的。

1.2主要工作

本课题提出了一种太阳能电池发电量实时采集系统的设计方案。

系统利用AT89S52单片机进行控制,采用霍尔电流传感器对太阳能电池的输出电流进行测量,其突出优点是可以在几乎不消耗能量情况下,将电流转换为电压进行测量。

研究和探讨了太阳能电池发电量实时采集系统,系统主要由太阳能电池组、霍尔电流传感器组成的I/V转换电路、液晶1602组成的显示装置、AT89S52单片机构成的控制系统、以及铅酸蓄电池构成的储能系统五部分组成。

研究内容及关键技术:

(1)原理电路的设计;

(2)I/V转换时传感器的选取;

(3)滤除电源纹波及单片机相邻元件不受噪声干扰的设计。

第二章系统方案设计

2.1工作原理

如图2-1所示,电量监测器主要由太阳电池、转换电路、控制系统,稳压保护电路、显示系统和蓄电池六部分组成。

其工作过程为太阳能电池接收光照时,产生电流,对蓄电池充电,控制系统通过稳压电路由蓄电池提供驱动电压,对太阳能电池产生的电量进行实时信号采集。

由于控制系统由单片机组成,只能接收电压信号,所以在信号接收前由I/V、V/V转换模块构成的转换电路将信号调至合适的电压,经内部运算处理,结果送显示系统显示太阳电池的发电量。

图2-1太阳能电量监测器

2.2系统硬件设计

图2-2电量监测器原理电路

系统方案电路如图2-2所示,主要由太阳能电池组、霍尔电流传感器组成的I/V转换电路、液晶1602组成的显示装置、AT89S52单片机构成的控制系统、以及铅酸蓄电池构成的储能系统五部分组成。

其工作过程为太阳能电池接收光照时,产生光生电流,对蓄电池充电,单片机通过稳压装置由蓄电池提供驱动电压,对太阳能电池产生的电量进行实时信号采集。

由于单片机只能接收电压信号,所以在信号接收前由I/V、V/V转换模块将信号调至合适的电压,经内部运算处理,结果送1602液晶显示装置显示电池发电量。

2.2.1单片机电路设计

(1)单片机最小硬件系统

图2-3最小单片机系统

图2-3为单片机的最小硬件系统,单片机采用ATMEL公司研制生产的MCS-51系列AT89S52,该单片机的工作电源VCC为5V,由终端电源接口提供;单片机的时钟电路一般是在它的时钟引脚外接晶体振荡器,和内部的高增益反相放大器构成自激振荡电路,振荡频率取决于晶体的频率,频率范围小于33MHz,C1、C2起频率微调和稳定作用,容值为5-50pf。

复位电路由基本的RC微分电路实现,该电路可以在上电初期其RESET引脚获得一定时间的高电平,MCS-51单片机复位操作是在复位引脚加2个机器周期以上的高电平。

有效复位与所加高电平时间与系统晶振的频率有关。

(2)AT89S52的主要性能

1、与MCS-51单片机产品兼容;

2、8K字节在系统可编程Flash存储器;

3、1000次擦写周期;

4、全静态操作:

0Hz-33MHz;

5、三级加密程序存储器;

6、32个可编程I/O口线;

7、三个16位定时器/计数器;

8、8个中断源;

9、全双工UART串行通道;

10、低功耗空闲和掉电模式;

11、掉电后中断可唤醒;

12、看门狗定时器;

13、双数据指针;

14、掉电标识符。

(3)AT89S52的引脚及其功能

图2-4AT89S52的引脚图(DIP封装)

P0口:

P0口是一个8位漏极开路的双向I/O口。

作为输出口,每位能驱动8个TTL逻辑电平。

对P0端口写“1”时,引脚用作高阻抗输入。

当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。

在这种模式下,P0不具有内部上拉电阻。

在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。

程序校验时,需要外部上拉电阻。

P1口:

P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。

此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。

在flash编程和校验时,P1口接收低8位地址字节。

引脚号第二功能:

P1.0T2(定时器/计数器T2的外部计数输入),时钟输出

P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)

P1.5MOSI(在系统编程用)

P1.6MISO(在系统编程用)

P1.7SCK(在系统编程用)

P2口:

P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。

对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。

在这种应用中,P2口使用很强的内部上拉发送1。

在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。

在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

P3口:

P3口是一个具有内部上拉电阻的8位双向I/O口,p3输出缓冲器能驱动4个TTL逻辑电平。

P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。

在flash编程和校验时,P3口也接收一些控制信号。

端口引脚第二功能:

P3.0RXD(串行输入口)

P3.1TXD(串行输出口)

P3.2INTO(外中断0)

P3.3INT1(外中断1)

P3.4TO(定时/计数器0)

P3.5T1(定时/计数器1)

P3.6WR(外部数据存储器写选通)

P3.7RD(外部数据存储器读选通)

此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。

RST:

复位输入。

当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。

ALE/PROG:

当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。

一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。

要注意的是:

每当访问外部数据存储器时将跳过一个ALE脉冲。

对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。

如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。

该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。

此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。

PSEN:

程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

EA/VPP:

外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。

需注意的是:

如果加密位LB1被编程,复位时内部会锁存EA端状态。

如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。

FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

XTAL1:

振荡器反相放大器和内部时钟发生电路的输入端。

XTAL2:

振荡器反相放大器的输出端。

(4)AT89S52的寄存器

AT89S52单片机的存储器从物理上分为片内程序存储器、片外程序存储器、片内数据存储器和片外数据存储器。

从逻辑上看,上述四个存储空间,归为如下三点,即:

*片内片外统一编址的64K的程序存储器(也就是说逻辑上只有一个程序存储器地址空间),AT89S52的片内程序存储器有8K字节,它和片外程序存储器一起用来存放程序和固定的数据。

*256字节的片内数据存储器空间——片内数据存储器比较小,用来存放数据和变量。

数据存储器的速度比程序存储器快。

*64K的片外数据存储器,外部RAM、外设端口统一编址(0000--FFFFH)。

程序存储器中,保留了如下一些特定单元:

0000H:

初始化程序入口。

CPU在复位后,总是从0单元开始执行程序,所以,此处一般设置一条无条件转移指令

0003H:

外部中断INT0的处理程序入口地址

000BH:

计数器/定时器T0的溢出中断处理程序入口地址

0013H:

外部中断INT1的处理程序入口地址

001BH:

计数器/定时器T1的溢出中断处理程序入口地址

0023H:

串行口中断处理程序入口地址

002BH:

T2断处理程序入口地址

使用片内程序存储器和片外程序存储器反映在外部引脚上差别很大。

主要是使用片外程序存储器时P0口和P2口必须作为总线,而只有在使用片内程序存储器时,P0口和P2口才有可能作为I/O口使用。

由于存在片内带有从2KB至64KB甚至更大Flash存储器的MCS-51单片机,现在一般很少扩展片外程序存储器,编程设计中发现片内程序存储器不够时,换一个大一点的即可,引脚完全兼容。

Flash存储器。

使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。

片上Flash允许程序存储器在系统可编程,亦适于常规编程器。

在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

AT89S52具有以下标准功能:

8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。

另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。

掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

2.2.2A/D转换模块

(1)ADC0832的基本参数与引脚功能

当模拟信号输入单片机后需要转换为数字信号,由于需要同时测量太阳能电池输出电压和电流,故采用ADC0832是八位串行双通道A/D转换器(如图2.4所示)。

图2-5ADC0832转换器芯片接口说明:

ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片。

ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。

其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0-5V之间。

芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。

独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。

引脚功能:

CS_片选使能,低电平芯片使能;

CH0模拟输入通道0,或作为IN+/-使用;

CH1模拟输入通道1,或作为IN+/-使用;

GND芯片参考零电位(地);

DI数据信号输入,选择通道控制;

DO数据信号输出,转换数据输出;

CLK芯片时钟输入;

Vcc/REF电源输入及参考电压输入(复用)

(2)单片机对ADC0832的控制原理:

正常情况下ADC0832与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。

但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI并联在一根数据线上使用。

当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK和DO/DI的电平可任意。

当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。

此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。

在第1个时钟脉冲的下沉之前DI是高电平,表示启始信号。

在第2、3个脉冲下沉之前DI端应输入2位数据用于选择通道功能。

当此2位数据为“1”、“0”时,只对CH0进行单通道转换。

当2位数据为“1”、“1”时,只对CH1进行单通道转换。

当2位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。

当2位数据为“0”、“1”时,将CH0作为负输入端IN-,CH1作为正输入端IN+进行输入。

到第3个脉冲的下沉之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行转换数据的读取。

从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7,随后每一个脉冲下沉DO端输出下一位数据。

直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成。

也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATA0。

随后输出8位数据,到第19个脉冲时数据输出完成,也标志着一次A/D转换的结束。

最后将CS置高电平禁用芯片,直接将转换后的数据进行处理就可以了。

作为单通道模拟信号输入时ADC0832的输入电压是0-5V且8位分辨率时的电压精度为19.53mV。

如果作为由IN+与IN-输入的输入时,可是将电压值设定在某一个较大范围之内,从而提高转换的宽度。

但值得注意的是,在进行IN+与IN-的输入时,如果IN-的电压大于IN+的电压则转换后的数据结果始终为00H。

图2-6ADC0832的工作时序与D1,D0的输入输出关系

(3)ADC0832的简单应用

下面是测试程序,选择CH1,单片机晶振为,18.432MHz

;ADC0832简单测试(改)

A_0832_CSEQUP1.0;CS

A_0832_CLKEQUP1.1;CLK

A_0832_DIEQUP1.2;DI

A_0832_DEQUP1.3;DO

A_0832_TEQU40H;读取时的脉冲计数

A_0832_DAEQU41H;数据所存位置

ORG0

LJMPMAIN

ORG30H

MAIN:

LCALLADC_RD

MOVA,A_0832_DA

AJMP$

ADC_RD:

MOVA_0832_T,#8

CLRA_0832_CLK

CLRA_0832_CS

SETBA_0832_DI;START

SETBA_0832_CLK;第一个上升沿

NOP

NOP

NOP

CLRA_0832_CLK

NOP

NOP

SETBA_0832_DI;选择CH1,通过组合选取通道(SGL/DIF)

NOP

SETBA_0832_CLK;第二个上升沿

NOP

NOP

NOP

CLRA_0832_CLK

NOP

NOP

SETBA_0832_DI;选择CH1,通过组合选取通道(ODD/SIGN)

NOP

SETBA_0832_CLK;第三个上升沿

NOP

NOP

NOP

CLRA_0832_CLK;首个下降沿

NOP

NOP

NOP

SETBA_0832_CLK

NOP

NOP

A_0832_RD:

;读取前,8位

CLRA_0832_CLK

NOP

NOP

NOP

SETBA_0832_CLK

MOVC,A_0832_D

RLC

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2