完整版太阳能热水器控制最新毕业设计Word文档格式.docx
《完整版太阳能热水器控制最新毕业设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《完整版太阳能热水器控制最新毕业设计Word文档格式.docx(20页珍藏版)》请在冰点文库上搜索。
CS——
A1、A0——
RD——
WR——
片选线
端口选择线(选片内四个端口寄存器)
读信号线
写信号线
输入
(2)内部逻辑部分
(3)外设接口部分
可由编程决定三个端口的功能
输入
输出
其它
A口
8位锁存缓冲
8位锁存
双向
B口
C口
可分成两组分别作A口、B口的选通联络线
2、8255A的端口操作
A1
A0
选中
0
PA口
1
PB口
PC口
控制寄存器
二、8255A的工作方式及方式选择
1、8255A的工作方式
(1)方式0——基本输入输出方式
A口、B口、C口均有此方式,无选通,是单片机与外部设备之间的直接数据通道。
(2)方式1——选通输入输出方式
仅PA口、PB口有此方式,PC口中若干位作联络信号线。
各联络信号线的意义:
STB——
IBF——
INTR——
INTE——
OBF——
ACK——
输入选通信号,外设发来。
输入缓冲器满信号,发给外设(通知外设数据未被取走,暂不能接收新数据)
中断请求信号,外部设备发给单片机
中断允许信号
输出缓冲器满信号,发给外设(单片机将数据已送到指定口,外部设备可以取走)
外设响应信号,由外部设备发来(数据已送到外部设备)
(3)方式3——双向方式
仅PA口有此方式。
PC3~PC7作联络线
此时,PB口可以是方式0;
也可以是方式1(PC0~PC1作联络线)。
2、8255A的方式控制字
用编程方法向8255A的控制口写控制字,可决定它的工作方式。
有两个控制字:
(1)方式选择控制字
“1”——方式控制标志位
D6、D5——决定A组的工作方式,00——方式0
01——方式1
1×
——方式2
D4——A口的传输方向,1——入,0——出。
D3——PC7~PC4的传输方向,1——入,0——出。
D2——决定B组的工作方式,0——方式0,1——方式1。
D1——B口的传输方向,1——入,0——出。
D0——PC3~PC0传输方向,1——入,0——出。
(2)PC口置位复位控制字
“0”——标志位。
D6、D5——不使用位。
D3、D2、D1——位选择位,000~111分别对应PC7~PC0。
D0——位状态位,1——置位,0——复位。
3太阳能热水器中央控制器的硬件设计
3.1前端模拟电路设计
3.1.1温度传感器选用
本系统采用接触式温度传感器DS18B20。
DS18B20、DS1822“一线总线”数字化温度传感器是DALLAS最新单线数字温度传感器,同DS1820一样,DS18B20也支持“一线总线”接口,测量温度范围为-55°
C~+125°
C,在-10~+85°
C范围内,精度为±
0.5°
C。
DS1822的精度较差为±
2°
C。
3.1.2DS18B20与单片机的典型接口设计
可以采用外接电源与寄生电源供电(就是供电电源从数据线上得到):
图3.8外接电源供电
图3.9寄生电源供电
3.28255A与单片机的接口电路设计
3.2.1ADC0809与89C51单片机的接口设计
ADC0809是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式AD模数转换器。
89C51与ADC0809接口电路图如图3-3所示。
将ADC0809作为外扩的并行IO口,由P2.7和WR端的脉冲同时有效时启动AD转换,通道选择端与A、B、C分别与地址线A0、A1、A2相连。
其端口地址为7FF8H—7FFFH。
AD转换结束后,EOC向89C51的INT1端输入一个高电平,既向单片机产生一个外部中断1信号。
.
图3-3ADC0809与89C51的中断方式原理图
3.3键盘和显示器接口设计
3.3.1键盘工作原理[3]
键盘在单片机应用系统中能实现向单片机输入数据、传送命令等功能,是人工干预单片机的主要手段。
键盘输入应解决的问题
1.键盘输入的特点
键盘的实质是一组开关的集合。
3.键盘接口的工作原理
常见的键盘接口分为独立式键盘接口和矩阵式键盘接口两种。
本系统采用矩阵式键盘接口。
图3-4矩阵式4*4键盘原理图
1)矩阵式键盘接口的工作原理
按键设置在行、列线的交叉点上,行、列线分别连接开关的两端。
行线通过上拉电阻接到正+5V。
平时无按键时,行线处于高电平状态,而当有按键按下时,行线电平状态键由此行线相连的列电平决定。
列线如果为低电平,这行线电平为低;
列线电平如果为高,则行线电平也高。
这是识别矩阵键盘按键是否被按下的关键所在。
由于矩阵键盘中行、列线为多键共用,各按键均影响该键所在的电平。
因此各按键彼此间互相发生影响,所以必须将行、列线信号配合起来并作适当的处理,才能确定闭合键的位置。
3.3.3键盘显示电路
系统键盘显示接口采用8279芯片,用硬件完成键盘与显示器扫描[4]。
键盘由0-9数字键,报警值设定键,时钟设定键,左位移键,确认键,运行键等组成,采用4×
4键盘。
用户可以通过键盘完成人机接口的各种操作。
键盘以中断方式工作。
当有按键时,8279申请中断CPU响应中断后转入键盘监控处理程序。
显示器采用4个LED数码管,系统检测数据经AT89C51单片机处理后通过IO口送到驱动电路
8279与单片机AT89C51的硬件接口电路图如图3-13所示。
8279芯片外接4×
8键盘和4位显示器,工作于4位显示和键盘输入工作方式,均为编码扫描,其组成可分为三个部分:
图3-68279芯片与单片机AT89C51的硬件接口电路图
1.显示接口:
由4个7段LED显示器组成。
SL0-SL2经74LS138
(1)译码低四位扫描控制位选口,显示字符的段选码由8279芯片的一个4位输出口OUB0-3同步输出实现,并且经74LS06非门轮流驱动7段LED显示器。
消隐显示信号输出线与74LS138
(1)的使能端E3相连,当显示功换时,输出低电平关闭74LS138
(1),从而达到显示消隐的目的。
2.键盘接口:
16个键排成4行4列的矩阵。
8279工作于键盘输入方式,4根列扫描线由SL0-SL7经74LS138
(2)译码获得,只用其中的四根,4根行信号线由RL0,RL1,RL2,RL3引入。
由于8279的输入线RL0-RL7内部有上位电阻,当无键按下时均为高电平,而当有键按下时则被键盘上的按键拉成低电平,该键的行、列号信息被读人FIFORAM缓冲器中。
同时8279的中断请求信号IRQ为高电平,可向CPU申请中断,读取键值代码。
3.8279与AT89C51的接口:
在硬件连线图中,单片机AT89C51的P2.7脚经反向器接片选信号CS。
8279的A0端用于控制读写命令状态和数据,A0与地址锁存器74LS373输出的最低位地址线AB0相接,所以8279的数据口地址为8FFEH,命令状态口地址为8FFFH。
8279的CNTL、SHIFT引脚接地。
3.4单片机复位电路的设计
复位是单片机的初始化操作。
其主要功能是把程序计数器PC值初始化为0000H,使单片机从0000H单元开始执行程序。
除了进入系统的正常初始化之外,程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需要按复位键重新启动单片机。
RST引脚是复位信号的输入端,高电平有效,其有效时间应持续24个震荡周期(即两个机器周期)以上。
若使频率为6MHZ的晶振,则复位信号持续时间超过4μs才能完成复位操作。
复位操作由上电复位和按键手动复为两种方式。
上电自动复位是通过外部复位电路的电容充电来实现的,其电路如图3-7所示。
只要电源VCC的上电时间不超过1ms,就可以实现自动上电复位,即接通电源就完成了系统的复位初始化。
按键手动复位分为电平方式和脉冲方式两种。
其中,电平复位是复位端通过电阻与Vcc电源接通而实现的。
脉冲复位是利用RC微分电路产生的正脉冲来实现的。
在计算机测控系统中,为了保证微处理器稳定而可靠地运行,需要配置电压监控电路;
为了实现掉电数据保护,需备用电池及切换电路;
为了使微处理器尽快摆脱因干扰而陷入的死循环,需要配置看门狗电路,将完成这些功能的电路集成在一起的芯片中称为微处理器监控器。
图3-7单片机系统复位电路
在单片机系统中,为了摆脱“死循环”通常采用“看门狗技术”也就是程序监控技术。
“看门狗”技术就是不断监视程序循环运行时间,若发现时间超过已知的循环设定时间,则认为系统陷入了“死循环”,。
本系统采用美国MAXIM公司的处理器监控器MAX690A完成硬件“看门狗”电路。
MAX690A具有以下功能:
(1)在微处理器上电、掉电及低压供电时,产生一个复位输出信号。
(2)具有备用电池切换电路,备用电池可供给其他低功耗逻辑电路。
(3)具有看门狗电路,该电路的触发脉冲时间间隔超过1.6s时,将产生一个复位输出。
(4)可用于低电压检测。
MAX690A的主要电气参数为:
·
工作电压Vcc(1.2~5.5V);
静态电流200μA;
备用电池方式静态电流50μA;
复位脉冲宽度TRS为200ms;
看门狗定时时间为1.6s;
复位门限电平4.65V。
MAX690A与89C51单片机的接口电路如图3-8所示:
图3-8MAX690A与89C51的接口电路
本电路有复位电路和看门狗电路功能,R1、R2选取说明如下:
(3-1)
当R1=1kΩ,R2=2.6kΩ,使+5V电压跌落到4.5V,PFI的输出电压低于1.25V时,PFO输出高电平作为单片机的中断信号。
单片机正常工作时,P1.0口定期(小于1.6s)改变WDI输入端的电平,使看门狗电路不发出复位电路。
当出现“死机”,单片机将不能定期改变WDI电平,看门狗电路便会在1.6s后产生一个复位信号,使单片机复位,待经过200ms复位脉冲宽后,单片机复位结束,程序从0000H开始重新执行,保证了系统的正常运转。
本系统采用内部时钟方式。
89C51单片机内部有一个用于构成振荡器的高增益反相放大器,用于构成振荡器。
反相放大器的输入端为XTAL1,输出端为XTAL2,分别是89C51的19脚和18脚。
在XTAL1和XTAL2两端跨接石英晶体及两个电容就可以构成稳定的自激振荡器。
89C51内部时钟方式的振荡电路如图3-9所示。
晶体的振荡频率范围通常在1.2MHz到24MHz之间。
晶体的频率越高,则系统的频率越高单片机的运行速度越快。
本系统选择振荡频率为24MHz的石英晶体。
图3-9AT89C51内部时钟方式电路
3.6系统原理综述
系统硬件原理如原理图(附)所示。
通过原理图,我们可以分析出系统的原理,于是系统主要原理如下:
温度的测量通过温度传感器输出正比于不同温度的电压值来实现,在和8255A接口相连的pc中,通过二极管分别显示四个不同的水位情况。
通过两个按键s2和s3来实现加热和加水的功能,当s2按下时,就触发外部中断0,进入中断子程序,执行加热功能。
当s3按下时,就出发了外部中断1进入中断子程序,执行手动加水功能。
单片机通过P0口用一个8255A扩展芯片实现8位LED显示,Po口和373相连锁存地址信号,P2.0~P2.3和水位检测传感器接口电路连接,P2.6和P2.7分别接有加水继电器和加热继电器。
作为8255A的PC口接有6个二极管,分别用来显示水位1、2、3、4状态,还有加水状态和加热状态的提示信号。
再通过接口电路8255A反映到显示屏上。
单片机其余IO口线安排:
VCC:
接+5V电源。
GND:
接地。
RST:
接MAX690A的RESET。
P3.0(ALE):
与8255H的ALE脚相连提供时钟信号。
XTAL1、XTAL2:
通过晶振实现单片机内部时钟。
PSEN:
允许程序存储器输出控制端。
EA:
内外程序存储器选择控制端。
P1.7:
接MAX960的WDI端。
RD:
接8255H的RD端。
WR:
接8255H的WR端。
4太阳能热水器中央控制器的软件设计
在完成太阳能热水器中央控制器的硬件设计后,要达到系统设计需求,用单片机实现自动控制,就需要进行软件设计。
同时运用软件设计可以相对地简化硬件结构,有效地降低设计成本并提高系统的性能。
根据系统设计要求,软件设计应具备以下功能:
·
对水的温度数据的读入;
对数码管显示子程序的实现;
通过键盘输入实现数据采集;
将数据存入EPROM中实现掉电保护;
将采集到的数据通过LED显示。
4.1系统总体软件设计
本系统主要是完成由89C51为核心控制器来实现对太阳能热水器水位和水温的检测,并在适当的时候报警,并把温度数据体现在8位数码管上。
主程序首先完成对串口,定时器,中断源的初始化设置,初始运行参数,开中断,然后循环读取键盘状态,检测系统是否漏电。
一旦检测到系统漏电,立即进行声音和显示报警,并切断所有执行机构电源;
若系统不漏电,则根据存储的键盘状态和检测的水温,水位等状态信号进行相应的处理并等待中断服务程序的执行。
其主要的软件原理图如图1和2。
系统正常控制时,首先显示水温和水位,若检测到水流开关打开用水时,自动断开上水阀和电加热体电源,即实现水电联动,用水停电。
当检测到水位过低时,控制单片机在8255A的PC3口的二极管提示加水,然后手动加水。
达到最高水位时同样提醒停止加水。
在水位超过第二档时,将检测到的实际水温和设置水温进行比较,若实际水温低于设置水温时,则加热体通电进行辅助电加热;
若水温高于设置水温时,切断加热体电源;
若检测到水位低档,不管温度设置高低,总是停止加热,防止加热体干烧,在加热功能中将最高水温控制在适当的温度,超温时停止加热并报警。
图一系统主程序流程图
4.2数据采集软件设计
4.2.1中断服务子程序
4.2.2水位检测子程序
4.3 显示和键盘软件设计
当要进行显示和软件设计时,单片机首先要通过P2.7端向8155H的CE端输出一个高电平,选中8155H。
4.3.1动态显示程序设计
在AT89C51内部的RAM中设置4个显示缓冲单元79H—7CH,分别存放显示器的4位数据,8155H的PA口扫描输出总是只有一位高电平,即显示器的4位中仅有一位公共阴极为低电平,其它位高电平,8155H的PB口输出相应位(阴极为低)的显示字形的断码,使其一位显示出一个字符,其它位为暗,依次改变PA口输出为高的位,PB口输出对应的段码,显示器的四位就动态地显示出由缓冲区中显示数据所得字符[18]。
其显示流程如图4-3所示。
图4-3 动态显示程序流程图
4.3.2键盘子程序设计
当键盘无键输入时,8155H的PC0到3口不全为1,只有当键盘有键输入时PC0-3口全为1时,向单片机提出外部中断申请,单片机响应中断请求,由外部中断0的中断服务程序将输入的键号存入模拟通道指针R7,从而使系统采集键号所代表的模拟通道的量,并将其值通过LED显示出来。
其键盘产生外部中断时的中断服务程序流程图如图4-4所示。
通过延时子程序达到去键盘抖动的目的,并将所输入键的键号存入模拟通道选择指针R7中。
中断结束后,返回主程序。
从而实现通过按键选择模拟通道,并采集相应通道的数据。
此外采集到的数据还需存入单片机片内的EPROM内,防止单片机突然掉电造成采集到的数据丢失。
图4-4键盘中断服务程序5抗干扰技术设计
单片机测控系统体积小、价格低、功能灵活、使用方便,已在工业领域中得到广泛应用,单片机系统越来越受到人们的关注。
单片机系统的可靠性是由多种的,其中系统的抗干扰性能的好坏是影响系统可靠性的重要因素。
因此,研究抗干扰技术,对保证单片机测控系统稳定、可靠的工作是非常必要的。
一般把影响单片机测控系统正常工作的信号称为噪音,又称干扰。
环境对单片机系统得干扰一般都是以脉冲的形式进入系统的,干扰窜入单片机的渠道主要有三条:
1.空间干扰。
2.供电系统干扰。
3.过程通道干扰。
5.1主要抗干扰技术[20]
提高单片机系统的技术措施有降低单片机的频率,时钟监测电路、看门狗技术与低电压复位技术等技术。
外时钟是高频的噪声源,除能引起对本应用系统的干扰之外,还可能产生对外界的干扰,使电磁兼容检测不能达标。
在对系统可靠性要求很高的应用系统中,选用频率低的单片机是降低系统噪声的原则之一。
监测系统时钟,当发现系统时钟停振时产生系统复位信号以恢复系统时钟,是单片机提高系统可靠性的措施之一。
而时钟监控有效与省电指令STOP是一对矛盾。
只能使用其中之一。
看门狗技术是监测应用程序中的一段定时中断服务程序的运行状况,当这段程序不工作时判断为系统故障,从而产生系统复位。
低电压复位技术是监测单片机电源电压,当电压低于某一值时产生复位信号。
由于单片机技术的发展,单片机本身对电源电压范围的要求越来越宽。
电源电压从当初的5V降至3.3V并继续下降到2.7V、2.2V、1.8V。
在是否使用低电压复位功能时应根据具体应用情况权衡一下。
5.2提高单片机系统抗干扰能力的主要方法
提高单片机抗干扰能力的主要方法有接地,隔离与屏蔽和滤波。
接地指接大地,也称作保护地。
为单片机系统提供良好的地线,对提高系统的抗干扰能力极为有益。
特别是对有防雷击要求的系统,良好的接地至关重要。
系统运用一系列抗干扰元件,目的在于将雷击、浪涌式干扰以及快脉冲群干扰去除,而去除的方法都是将干扰引入大地,如果系统不接地,或者虽有地线但接地电阻过大,则这些元件都不能发挥作用。
为单片机供电的电源的地俗称逻辑地,它们和大地的关系可以相通、浮空、或接一电阻,要视应用场合而定。
不能把地线随便接在暖气管子上。
绝对不能把接地线与动力线的火线、零线中的零线混淆。
典型的信号隔离是光电隔离。
使用光电隔离器件将单片机的输入输出隔离开,一方面使干扰信号不得进入单片机系统,另一方面单片机系统本身的噪声也不会以传导的方式传播出去。
屏蔽则是用来隔离空间辐射的,对噪声特别大的部件,如开关电源,用金属盒罩起来,可减少噪声源对单片机系统的干扰。
对特别怕干扰的模拟电路,如高灵敏度的弱信号放大电路可屏蔽起来。
而重要的是金属屏蔽本身必须接真正地上。
滤波指各类信号按频率特性分类并控制它们的方向。
常用的有各种低通滤波器、高通滤波器、带通滤波器。
低通滤波器用在接入的交流电源线上,旨在让50HZ的交流电顺利通过,将其它高频噪声导入大地。
低通滤波器的配置指标是插入损耗,选择的低通滤波器插入损耗过低起不到抑制噪声的作用,而过高的插入损耗会导致“漏电”,影响系统的人身安全性。
高通、带通滤波器则应根据系统中对信号的处理要求选择使用。
印制电路板的设计对单片机系统能否抗干扰非常重要。
要本着尽量控制噪声源、尽量减小噪声的传播与耦合,尽量减小噪声的吸收这三大原则设计印制电路板和布线。
当你设计单片机用印制电路板时应注意以下原则:
1.印制电路板要合理区分,单片机系统通常可分三区,即模拟电路区(怕干扰),数字电路区(即怕干扰、又产生干扰),功率驱动区(干扰源)。
2.印刷板按单点接电源、单点接地原则送电。
三个区域的电源线、地线由该点分三路引出。
噪声元件与非噪声元件要离得远一些。
使用满足系统要求的最低频率的时钟,时钟产生器要尽量靠近用到该时钟的器件。
3.石英晶体振荡器外壳要接地,时钟线要尽量短,使用45度的折线布线,不要使用90度的折线,以减小高频信号的发射。
时钟线垂直于IO线比平行于IO线干扰小,时钟线要远离IO线。
每个集成电路要加一个去耦电容,要选高频信号好的独石电容式瓷片电容作去耦电容。
去耦电容焊在印制电路板上时,引脚要尽量短。
需要时,电源线、地线上可加铜线绕制铁氧用体而成的高频扼流器件阻断高频噪传导。
除了上述介绍的通过滤波器滤波外,对于随机干扰,可以用数字滤波方法予以削弱或滤除。
所谓数字滤波,就是通过一定的计算或判断程序减少干扰信号中的比重,实际上它是一个程序滤波。
数字滤波克服了模拟滤波器的不足,它与模拟滤波器相比有以下优点:
数字滤波是用程序实现的,不需要增加设备,所以可靠性高、稳定性好;
数字滤波可以对频率很低(如0.01Hz)的信号实行滤波,具有灵活、方便、功能强的特点。
由于数字滤波具有以上优点,所有数字滤波在单片机应用系统中得到了广泛的应用。
6结论
本设计主要完成以AT89C51为智能核心的太阳能热水器中央控制器的硬件电路设计以及相应的软件设计。
完成的工作主要包括:
根据系统的功能和相应的技术指标,完成了系统的整体硬件电路的设计;
详细阐述了系统中各主要部分之间的接口设计的具体思路以及相应的电路原理图,包括AT89C51控制单元各个接口之间的设计,并简要阐述了如何提高系统的抗干扰问题。
软件部分主要讨论了数据的采集处理以及各个中断处理系统。
本系统的主要功能是对太阳能热水器的水位检测,温度检测并显示,定时上水,报警电路以及显示电路等。
实现多任务融为一体,成本比较低且实现起来简单易行。
本系统硬件结构简单,软件设计灵活,充分发挥了单片机结构紧凑、功能强的优点,是一种电路设计新颖,操作方便的太阳能热水器控制器。
参考文献
[1]张毅刚,彭喜元,姜守达,乔立岩.MCS-51单片机应用设计.哈尔滨:
哈尔滨工业大学出版社,2003
[2]何立明.MCS-51单片机应用系统设计.北京:
北京航天航空大学出版社,1990
[3]蔡惟铮,吴建强主编.常用电子元器件简明手册.哈尔滨工业大学出版社,1989
[4]李振格等.微机高级语言与汇编语言接口技术及和实例.北京:
北京航天航空大学出版社,1994
[5]周航兹单片机应用程序设计.北京:
北京航天航空大学出版社,1992
[6]孙俊逸,盛秋林,张铮.单片机原理及应用.北京:
清华大学出版社,2006