最终热水箱的温度加热到设定值N。
综上所述,太阳能供热控制系统不仅节约而且高度只能化,方便省事,不论日常家居,还是对宾馆、学校等都是最佳选择。
控制装置的工作原理:
本控制系统分为手动和自动两种控制方式,在系统处于自动状态下,当检测温度高于设置温度,且水位未达到最高时,控制器打开电磁水阀YV1和YV2进行上水,同时点亮上水指示灯,当水位上至上一目标水位时,自动停止上水(即关闭电磁水阀YV1和YV2),若水箱内无水,则自动上水至最低水位处。
在系统处于手自动状态下,可自由上水或停止上水(上水时水箱水位必须未满),若水位达到最高则自动停止上水;若需要启动加热器则必须先设定加热温度,然后按下加热键进行加热;若需洗浴时,则需打开手动阀YV4,系统自动打开电磁水阀YV2,可通过YV5自由调节水温;当电磁水阀YV1和YV2损坏或停电时,可通过打开YV5和YV6进行上下水解决燃眉之急;此系统设置YV3是为了防止冬天气温过低引起水管因内有积水而冻裂(即手动打开此阀放完水管中的积水)
(二)主要原器件介绍
1、AT89S51高性能8位单片机
AT89S51是一个低功耗高性能CMOS8位单片机,4kBytesFlash只读程序存储器(ROM),512Bytes内部数据存储器(RAM),该微处理器采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,引脚兼容80C51和80C52芯片,片内的Flash存储器可以像常规程序存储器一样进行烧写,AT89S51片内总共有256字节的用户数据区,而128字节的内部扩展数据区需通过清SFR(8EH)的位1并用MOVX指令访问,片内置通用8位中央处理器和Flash存储单元,另一个256BytesRAM区与ATMEL之AT89系列8052兼容的单片机是一致的,AT89C51结合通用的8位微处理器和Flash存储技术构成功能强大单片微处理器,可提供许多高性能低价位的系统控制应用场合。
(1)AT89S51主要特点:
40个引脚,32kBytes的程序存储器,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,内置时钟振荡器,其Flash存储器,可反复擦写1000次的Flash存储器可有效地降低开发成本。
软件设置电源省电模式,睡眠其间,定时/计数器,串行口和中断口均停止工作,RAM中的数据被“冻结”,直到下次被中断激活或硬件复位方可恢复工作。
(2)AT89S51主要功能特性
兼容MCS51指令系统
32k可反复擦写(>1000次)FlashROM
32个双向I/O口
硬件看门狗WDT电路
3个16位可编程定时/计数器
时钟频率0-33MHz
两个串行中断
512×8bit内部RAM
2个外部中断源
内置时钟振荡器
中断激活睡眠模式
3级加密位
双重数据存储器
软件设置睡眠和唤醒功能
2、数码管显示
由单片机的定时器To做16位计数器(为便于数据处理,这里只用低8位计数值,即寄存器TL0中的值)。
一边记录脉冲数量,一边以厘米为单位由四位数码飞管显示出来。
四位数码管采用动态扫描方式显示。
长度计量仪采用0.5英寸共阳极连接的LED数码管。
LED数码管由发光二极管作为显示字段的数码型显示器件。
右图为LED数码管外形和引脚图,其中7只发光二极管分别对应a-g笔段,构成“日”字形,另一只发光二极管DP作为小数点,因此这种LED显示器称为八段数码管。
(如图3所示)
共阳极型LED数码管,是将各段发光二极管的阳极连在一起,作为公共端com,应接高电平。
a——g、Dp各笔段中,某笔段接低电平时发光,高电平时不发光。
为了节省单片机I/O口的数量,将各位数码管的a——g对应笔画并联起来分别与单片机的P2.0——P2.7引脚连接。
显示时,由P2口依次输出各位数字的笔段码,并依次由P1.0、P1.1、P1.2、P1.3输出低电平位选信号接通数码管的公共端,轮流进行,循环不止,由于循环的频率较高(约50Hz),加上人眼的视觉暂留,既保障了各位数字的对应显示,又不会出现闪烁现象,实现动态扫描显示。
本系统需显示水温,测量范围为0~990C,用四个八位LED数码管显示。
(1)LED结构和显示原理。
LED(LightEmittingDiode)显示器是由发光二极管作为显示字段的显示器件,最常见的是由7段型发光二极管(a~g7段)和1个圆点型发光二极管(常以dp表示,主要用来显示小数点)组成的LED显示器,其排列形状如下图所示。
这种LED显示器也可称为7段数码显示器(或8段数码显示器)。
LED显示中的发光二极管根据其连接的方法有共阴极和共阳极两种结构。
共阴极结构:
把各段发光二极管的阴极连接在一起构成公共阴极,如图a所示。
使用时,公共阴极接地,根据要求需点亮发光二极管的阳极输入高电平,不需点亮的发光二极管的阳极输入低电平。
共阳极结构:
把各段发光二极管的阳极连接在一起构成公共阳极,如图b所示。
使用时,公共阳极接+5V,根据要求需要点亮发光二极管的阴极输入低电平,不需点亮的发光二极管的阴极输入高电平。
通过控制7个段的发光二极管的亮暗的不同组合,可以显示多种数字、字母以及其他符号。
(2)字段码。
为了显示各个数字或字符,就需要为LED提供相应的代码,因为这些代码是控制各段的亮或灭,供显示器显示字形的,所以称为字段码(也可以称为段选码或字形码)。
七段发光二极管再加上1个小数点位,共计8段,因此提供给LED显示器的字段码正好1个字节。
各代码位的对应关系如下:
D7D6D5D4D3D2D1D0
Dp
G
f
e
d
c
b
a
下图所示为共阴极LED所显示的不同字符的字段码,测量范围为0~990C,当温度超出范围时,显示器均显示F。
显示字符
共阴极字段码
0
3FH
1
06H
2
5BH
3
4FH
4
66H
5
6DH
6
7DH
7
07H
8
7FH
9
6FH
F
71H
(3)N位LED显示器。
在单片机应用系统中,实际使用的LED显示器有多个,N位LED显示器的显示要从两个方面来控制:
其一是控制N位的字段显示(即显示什么字符);其二是控制字位(即哪一位到哪一位亮)。
由LED的显示原理可知,要使某N位LED显示器的某一位显示某个字符,就必须将此字符转换为对应的字段码来控制该位的8个段,同时,该位的字位线也要控制有效,这要通过一定接口来实现。
LED显示器有两种显示方式,即静态显示方式和动态显示方式。
N位LED显示器有N根字位选线(简称:
“位选线”)和N*8根字段选线(简称:
“段选线”)。
根据显示方式不同,位选线和段选线的连接方式也不同。
各种字符的字段码的获取方法有两种:
即软件译码和硬件译码法。
目前通常所用的各种型号的单片机开发系统或实验装置普遍采用软件译码。
当单片机应用系统中的LED显示器位数较多时,为了简化电路降低成本,本设计采用动态显示的方式。
动态显示方式的接口电路的连接方法是:
将所有LED位的段选线(a~dp)同名并联,即所有a段并联,所有b段并联。
依次类推,然后由一个8位I/O接口来控制各个段,而所有位的位选线则由另外一个相应的I/O接口线来控制。
这样用两个8位I/O接口就能控制8位LED显示器。
LED显示器是由电流型控制器件,其工作电流为2mA~20mA,使用时须加限流电阻。
本设计中限流电阻选用1K。
动态扫描显示控制方式就是逐个地循环点亮各位显示器,即在某一瞬间,只让某一位的位选线处于选通状态(共阳极的为高电平,共阴极的为低电平)其它各位的位选线处于段开状态,同时段选线上输出相应位要显示字符的字段码。
这样在每一个瞬间,8位LED中只有选通的那一位LED显示出字符,而其它7位则是熄灭的。
同样,在下一瞬间,只显示下1位LED。
如此继续下去,等8位LED都显示完毕后,在循环进行。
虽然这些字符是在不同的瞬时轮流点亮的,但由于人眼的视觉残留效应,看到的是8位稳定显示的字符,与静态显示的效果完全一样。
所以为了简化电路、降低成本,此系统中采用动态显示方式。
3、数字温度传感器DS18B20主要特性及测温原理
一线式数字温度传感器DS18B20是DS1820的更新换代产品(由美国DAIIAS公司生产)。
它具有体积小,分辨率高,转换快等优点。
由于每片DS18B20含有唯一的硅串行数,所以在一条总线上可以挂接多达248≈218×1014只DS18B20,再加上DS18B20独特的单线总线结构,决定了DS18B20特别适合于大型的多路温度实时测控系统的温度检测。
温度实时测控集装箱的设计,在实现测控系统的温度检测方面就较好地利用了DS18B20的独到
特点,使系统得到了极大的简化。
(1)DS18B20的特性
独特的单线接口方式。
DS18B20在I/O处理器连接时,仅需要一个I/O口即可实现微处理器同DS18B20的双向通讯;DS18B20支持组网功能,多个DS18B20可以并联在唯一的单线上,实现多点测温;DS18B20的测温范围为:
-55℃~+125℃,在-10℃~+85℃时,其精度为+015℃;DS18B20的测温结果的数字量位数从9~12位,可编程进行选择。
数字化温度传感器DS1820测温范围为-55~+125℃,增量值为0.5℃(9位温度读数),它主要由4个数据部件部分组成:
64位ROM;温度传感器;非易失性的温度告警触发器TH和TL;高速便笺存储器64位ROM用于存储序列号,其首字节固定为28H,表示产品类型码,后6个字节是每个器件的编码,最后1个字节是CRC校验码.温度告警触发器TH和TL存储用户通过软件写入的报警上下限值,高速便笺存储
器由9个字节组成,其中有2个字节RAM单元用来存放温度值前1个字节为温度值的补码低8位,后1个字节为符号位和温度值的补码高3位。
(2)DS18B20测温原理
DS18B20内部结构框图,如图4所示。
图4DS18B20内部结构框图
DS18B20的测温原理:
DS18B20测量温度采用了特有的温度测量技术,它是通过计数时钟周期来实现的,内部计数器对一个受温度影响的振荡器的脉冲计数,低温时,振荡器的脉冲可以通过门电路。
而当到达某一设置高温时,振荡器的脉冲无法通过门电路。
计数器设置为-55℃。
同时,计数器复位在当前的温度值时,电路对振荡器的温度系数进行补偿,计数器重新开始计数直到回零。
如果门电路仍未关闭,则系统重复上述过程。
(3)DS18B20的操作协议
DS18B20单纯通信功能是分时完成的。
单线信号包括复位脉冲,响应脉冲,写“0”,写“1”,读“1”。
它们有严格的时隙概念。
系统对DS18B20的操作以ROM命令(5个)和存储器命令(6个)形式出现。
对它的操作协议是:
初始化DS18B20发复位脉冲)→发ROM功能命令→处理数据→发存储器命令处理数据。
各种操作都有相应的时序图。
DS18B20在使用时,一般都采用单片机来实现数据采集。
只需将DS18B20信号线与单片机1位I/O线相连,且单片机的1位I/O线可挂接多个DS18B20,就可实现单点或多点温度检测。
DS18B20传感器精度高、互换性好;它直接将温度数据进行编码,可以只使用一根电缆传输温度数据,通信方便,传输距离远且抗干扰性好:
与用传统温度传感器组成的多点测温系统相比可节省大量电缆,而且系统得以简化,系统扩充维护十分方便。
DS18B20可以广泛用于工厂工业过程、大型粮仓、酿酒厂,食品加工厂的温度检测以及宾馆、仪器仪表室等处的温度检测和控制。
4、ADC0832转换器
ADC0832引脚图(图5):
ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片。
由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。
学习并使用ADC0832可是使我们了解A/D转换器的原理,有助于我们单片机技术水平的提高。
ADC0832具有以下特点:
(1)8位分辨率;
(2)双通道A/D转换;
(3)输入输出电平与TTL/CMOS相兼容;
(4)5V电源供电时输入电压在0~5V之间;
(5)工作频率为250KHZ,转换时间为32μS;
(6)一般功耗仅为15mW;
(7)8P、14P—DIP(双列直插)、PICC多种封装;
(8)商用级芯片温宽为0°Cto+70°C,工业级芯片温宽为−40°Cto+85°C;
芯片图:
图5ADC0832程序
程序占用资源有累加器A,工作寄存器R7,通用寄存器B和特殊寄存器CY。
通道功能寄存器和转换值共用寄存器B。
在使用转换子程序之前必须确定通道功能寄存器B的值,其赋值语句为“MOVB,#data”(00H~03H)。
运行转换子程序后的转换数据值被放入B中。
子程序退出后即可以对B中数据处理。
5、继电器(relay)的工作原理和特性
当输入量(如电压、电流、温度等)达到规定值时,使被控制的输出电路导通或断开的电器。
可分为电气量(如电流、电压、频率、功率等)继电器及非电量(如温度、压力、速度等)继电器两大类。
具有动作快、工作稳定、使用寿命长、体积小等优点。
广泛应用于电力保护、自动化、运动、遥控、测量和通信等装置中。
继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。
故在电路中起着自动调节、安全保护、转换电路等作用。
(1)电磁继电器的工作原理和特性
电磁式继电器一般由铁芯、线圈、衔铁、触点簧片等组成的。
只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸