太阳能热水器控制电路设计应用电子技术专业毕业设计毕业论文.docx
- 文档编号:8059056
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:20
- 大小:214.59KB
太阳能热水器控制电路设计应用电子技术专业毕业设计毕业论文.docx
《太阳能热水器控制电路设计应用电子技术专业毕业设计毕业论文.docx》由会员分享,可在线阅读,更多相关《太阳能热水器控制电路设计应用电子技术专业毕业设计毕业论文.docx(20页珍藏版)》请在冰豆网上搜索。
太阳能热水器控制电路设计应用电子技术专业毕业设计毕业论文
太阳能热水器控制电路设计
一、系统设计
1.设计原理
太阳能热水器自动控制电路采用AT89S52单片机作为控制核心,外围加蜂鸣器控制电路、数码显示电路、水位检测电路、电机控制电路、按键电路、温度检测电路等。
数码管实时切换显示当前温度与当前液位,当液位过高时,蜂鸣器报警,并且电机反转模拟排水过程;当液位过低时,蜂鸣器报警,并且电机正转模拟进水过程。
本系统设计简单,成本低,性能优良,具有一定的稳定性和实用性。
三、硬件电路设计
1.基本原理框图
图一:
原理框图
(1)太阳能热水器控制装置主要组成
由CPU、显示电路、按键电路、蜂鸣器电路、电机电路、液位检测电路、温度检测电路、电源电路组成,如图一。
(2)太阳能热水器控制装置的工作原理
接通电源后,显示当前水位,水位被分为16个点。
并且显示当前温度。
液位显示与温度的显示切换进行。
当水位显示低于或等于1时,蜂鸣器报警,并且电机正转,表示进水;当水位显示高于或等于15时,蜂鸣器报警,并且电机反转,表示排水。
液位检测利用CD4051
2.各部分电路原理
(1)最小系统
最小系统电路如图二所示。
图二:
最小系统
(2)显示电路
采用LED数码管显示,该方案具有实现容易、发光亮度大、驱动电路简单等优点,其可靠性也优于LCD的显示。
。
由6个数码管和6个74LS164组成,采用串行静态显示的方法。
将数码管的8个输入端与74LS164的输出端Q0~Q7相连。
P1.0和74LS164的CLK连接,作为时钟;P1.4接74LS164的A端,作为显示数据的输入端。
显示电路如图三所示。
图三:
显示电路
但是使用74LS164串显会出现消隐的问题。
为了消除消隐,那么就必须在硬件上与软件上结合来消除消隐的问题。
消隐电路如图四所示。
软件上,在传数据时,先传一个高电平,直到数据传完再传送一个低电平即可。
图四:
消隐电路
(3)按键电路
键按下后,进行温度及液位检测的切换,也可不使用。
按键电路如图五所示。
图五:
按键电路
(4)蜂鸣器电路
以Q51的基极作为蜂鸣器控制信号的输入端与单片机I/O口相连,主要由蜂鸣器、9013与9014两个三极管及5.1K偏置电阻组成。
当输入端为高电平时,Q51导通,Q52截止,蜂鸣器回路开路,蜂鸣器不响;当输入端为低电平时,Q51截止,Q52导通,蜂鸣器回路闭合,蜂鸣器发出响声。
蜂鸣器电路如图六所示。
图六:
蜂鸣器电路
(5)电机电路
控制信号从IN端输入并经前级缓冲后送入片内控制器,然后由控制部分处理并驱动晶体管,最后由OUT端输出方波信号以控制电机的运行。
触发使能端口(CE)的作用是分别对两个通道的输出进行控制,当CE端为低电平时,无论有无输入控制信号,输出端OUT始终呈高阻抗状态。
因此,要使FAN8200控制器输出工作正常,器件的触发使能端必须为高电平。
当CE为高电平时,IN1为1时,电机正转;IN1为0时电机反转。
电机电路如图七所示。
图七:
电机电路
(6)液位检测电路
液位检测控制电路,由两片CD4051与CD4066构成,但是由于考虑到成本,并且所设计的电路I/O口使用并不是太多,所以,可以将CD4066省略,仅仅用两片CD4051即可实现功能。
它是一种单片、COMS、8通道开关。
该芯片由DTL/TTL-COMS电平转换器,带有禁止端的8选1译码器输入,分别加上控制的8个COMS模拟开关TG组成。
例如当检测到液位在端点4位置时,0、1、2、3、4点被没过,与公共端之间形成水电阻,由于水电阻阻值非常的笑,所以这几点的电平被拉低。
此时就可以确定在ABC点读到的数为“100”此时就可以通过单片机计算得出液位的高度。
液位检测电路如图八所示。
图八:
液位检测电路
(7)温度检测电路
采用DS18B20数字温度传感器。
它是DALLAS公司生产的单总线式数字温度传感器,它具有微型化、低功耗、高性能、搞干扰能力强、易配处理器等优点,特别适用于构成多点温度测控系统,可直接将温度转化成串行数字信号(提供9位二进制数字)给单片机处理,且在同一总线上可以挂接多个传感器芯片。
它具有3引脚TO-92小体积封装形式,温度测量范围为-55℃~+125℃,可编程为9位~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出,其工作电源既可在远端引入,也可采用寄生电源方式产生,多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与多个DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。
以上特点使DS18B20非常适用于远距离多点温度检测系统。
根据设计要求,DS18B20硬件电路的链接非常简单,仅一根电源线,一根地线和一根数据线即可。
温度检测电路如图九所示。
图九:
温度检测电路
(8)电源电路
由于电源电压为5V,所以电路中省去了稳压电源部分的电路,直接使用电源电压即可。
在电源与地之间加滤波电容,稳定输入到芯片上的电源电压。
电源电路如图十所示。
图十:
电源电路
四、软件设计
2.I/O口分配
I/O口
P3.0
P3.1
P3.3
P3.5
P1.1
分配
74LS164数据端
74LS164时钟
电机转向控制端
蜂鸣器控制端
4051-A
I/O口
P1.2
P1.3
P1.4
P1.6
P1.7
分配
4051-B
4051-C
4051-INH
K1
K2
3.软件流程图
五、实现功能
1.液位检测
将水尺放进水中,通电之后,显示当前的水位。
最低点水位为1,最高点水位为16。
当水位低于点2时,显示H02的同时蜂鸣器响,电机正转,模拟进水过程;直到水位高于点2后,蜂鸣器停止发声,电机不转。
当高于水位点15时,显示H15的同时蜂鸣器响,电机反转,模拟排水过程;直到水位低于点15后,蜂鸣器停止发生,电机不转。
2.温度检测
实时监测当前温度,与水位切换显示。
例如显示为C27.6。
七、参考文献
[1]阎石《数字电子技术》
[2]胡汉才.《单片机原理及接口技术》.清华大学出版社,1996
[3]童诗白.《模拟电子技术基础》。
高等教育出版社,2001
附录一程序
;标志
;32H水位标志
;BAOZHIBIT33H;显示标志;33H=0显水位,33H=1显温度
;DINGSBIT34H;34H=0定时,34H=1计数
;alarmflagBIT24H;蜂鸣器报警标志
;74164ABITP3.0;164数据端
;CLKBITP3.1;164时钟
;CEBITP1.5;电机控制端为1
;M1BITP3.3;P3.3=1电机正转,反之反转。
;SPKBITP3.5;蜂鸣器控制
;LABITP1.1;4051点A
;LBBITP1.2;4051点B
;LCBITP1.3;4051点C
;4051INHBITP1.4;4051的INH端
;K1BITP1.6;按键1(水位检测状态)
;K2BITP1.7;按键2(温度检测状态)
ORG0000H
LJMPMAIN
ORG0100H
MAIN:
MOVSP,#60H
CLRP1.5;电机不转
MM3:
MOV50H,#20H;水位显示时长
MM33:
LCALLSWEI;水位检测
DJNZ50H,MM33
LCALLXIANC;显C
SJMPMM1
MM1:
MOV50H,#10H;温度显示时长
MM2:
LCALLWDCJ;温度检测
DJNZ50H,MM2
LCALLXIANH;显H
SJMPMAIN
WDCJ:
LCALLGET_TEMP;采集温度值以16进制数,低位放R7,高位放R6
CHENGFA:
MOVR3,#0AH;0AH乘以温度值R7R6,结果在R2R3R4R5中,R2最高字节
MOVR2,#00H
LCALLMULD
CHUFA:
MOVR6,#00H;被除数在R2R3R4R5中,R2最高字节,除数在R6R7,R6高字节,结果在R2R3。
MOVR7,#10H
MOVR2,#00H
MOVR3,#00H
LCALLDIVD
MOV20H,R3;R3低字节
MOV21H,R2
ACALLYASO;压缩16进制数变成压缩10进制数
ACALLL11;压缩--非压缩
ACALLDAIM;代码--段码
ACALLXIAN;显示
LCALLXIANC
LCALLXIAOSH
LCALLDEL2
RET
GET_TEMP:
CLRPSW.4
CLRPSW.3;设置工作寄存器当前所在的区域
CLREA;使用DS1820一定要禁止任何中断产生
LCALLINT;调用初始化子程序
MOVA,#0CCH
LCALLWRITE;送入跳过ROM命令
MOVA,#44H
LCALLWRITE;送入温度转换命令
LCALLINT;温度转换完全,再次初始化DS1820
MOVA,#0CCH
LCALLWRITE;送入跳过ROM命令
MOVA,#0BEH
LCALLWRITE;送入读温度暂存器命令
LCALLREAD
MOVR7,A;读出温度值低字节存入R7
LCALLREAD
MOVR6,A;读出温度值高字节存入R7
SETBEA
RET
INT:
CLREA;初始化DS1820
L0:
CLRP3.4;DS1820总线为低复位电平
MOVR2,#200
L1:
CLRP3.4
DJNZR2,L1;总线复位电平保持400US
SETBP3.4;释放DS1820总线
MOVR2,#30H
L4:
DJNZR2,L4;释放DS1820总线保持60US
CLRC;清存在信号
ORLC,P3.4
JCL0;存在吗?
不存在则重新来。
MOVR6,#80H
L5:
ORLC,P3.4
JCL3
DJNZR6,L5
SJMPL0
L3:
MOVR2,#240
L2:
DJNZR2,L2
RET
WRITE:
CLREA
MOVR3,#8
WR1:
SETBP3.4
MOVR4,#8
RRCA
CLRP3.4
WR2:
DJNZR4,WR2
MOVP3.4,C
MOVR4,#20
WR3:
DJNZR4,WR3
DJNZR3,WR1
SETBP3.4
RET
READ:
CLREA
MOVR6,#8;连续读8个BIT
RE1:
CLRP3.4;读前总线保持为低
MOVR4,#4
NOP
SETBP3.4;开始读,总线释放
RE2:
DJNZR4,RE2;持续8US
MOVC,P3.4;从臘S1820总线读得一个BIT
RRCA;
MOVR5,#30
RE3:
DJNZR5,RE3;持续60US
DJNZR6,RE1;读下一个BIT
SETBP3.4;重新释放DS1820总线
RET
YASO:
MOVR0,#20H;压缩16进制数变成压缩10进制数
MOVR7,#02H
MOVR1,#28H
LCALLLY1
RET
LY1:
MOVA,R0
MOVR5,A
MOVA,R1
MOVR6,A
MOVA,R7
INCA
MOVR3,A
CLRA
LY2:
MOV@R1,A
INCR1
DJNZR3,LY2
MOVA,R7
MOVB,#08H
MULAB
MOVR3,A
LY3:
MOVA,R5
MOVR0,A
MOVA,R7
MOVR2,A
CLRC
LY5:
MOVA,@R0
RLCA
MOV@R0,A
INCR0
DJNZR2,LY5
MOVA,R6
MOVR1,A
MOVA,R7
MOVR2,A
INCR2
LY4:
MOVA,@R1
ADDCA,@R1
DAA
MOV@R1,A
INCR1
DJNZR2,LY4
DJNZR3,LY3
RET
L11:
MOVR1,#10H;压缩10进制数变成非压缩十进制数
MOVR2,#03H
MOVR0,#28H
L12:
MOVA,@R0
ANLA,#0FH
MOV@R1,A
INCR1
MOVA,@R0
SWAPA
ANLA,#0FH
MOV@R1,A
INCR0
INCR1
DJNZR2,L12
RET
DAIM:
MOVR2,#05H;代码变段码码
MOVR0,#10H
MOVR1,#20H
L12F:
MOVA,@R0
ADDA,#06H
MOVCA,@A+PC
MOV@R1,A
INCR0
INCR1
DJNZR2,L12F
RET
DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H
DB7FH,6FH,77H,7CH,39H,5EH,79H,71H
DB00H,40H,73H,03H,18H,23H,1CH,3DH,76H,0FH,1EH,38H
XIAN:
CLRP3.2
MOVR0,#20H;显示
MOVR2,#05H
LP1:
MOVR1,#08H
MOVA,@R0
LP2:
RLCA
MOVP3.0,C
CLRP3.1
SETBP3.1
DJNZR1,LP2
INCR0
DJNZR2,LP1
SETBP3.2
RET
DEL:
MOVR5,#14H
Y3:
MOVR6,#0FFH
Y2:
MOVR7,#0FFH
Y1:
DJNZR7,Y1
DJNZR6,Y2
DJNZR5,Y3
RET
XIAOSH:
MOVA,21H;小数点程序
ORLA,#80H
MOV21H,A
LCALLXIAN
RET
LBB:
MOVA,#10H;清显示
MOVR0,#10H
MOVR2,#05H
LB1:
MOV@R0,A
INCR0
DJNZR2,LB1
RET
BEING:
MOV10H,#10H
MOV11H,#10H
MOV12H,#10H
MOV13H,#10H
MOV14H,#18H
ACALLDAIM;代码--段码
ACALLXIAN;显示
RET
XIANC:
;MOV10H,#10H
;MOV11H,#10H
;MOV12H,#10H
MOV13H,#10H
MOV14H,#0CH
ACALLDAIM;代码--段码
ACALLXIAN;显示
RET
MULD:
MOVA,R3;双字节乘法子程
MOVB,R7
MULAB
MOVR4,B
MOVR5,A
MOVA,R3
MOVB,R6
MULAB
ADDA,R4
MOVR4,A
CLRA
ADDCA,B
MOVR3,A
MOVA,R2
MOVB,R7
MULAB
ADDA,R4
MOVR4,A
MOVA,R3
ADDCA,B
MOVR3,A
CLRA
RLCA
XCHA,R2
MOVB,R6
MULAB
ADDA,R3
MOVR3,A
MOVA,R2
ADDCA,B
MOVR2,A
RET
DIVD:
CLRC;双字节除法子程
MOVA,R3
SUBBA,R7
MOVA,R2
SUBBA,R6
JCDVD1
SETBOV
RET
DVD1:
MOVB,#10H
DVD2:
CLRC
MOVA,R5
RLCA
MOVR5,A
MOVA,R4
RLCA
MOVR4,A
MOVA,R3
RLCA
MOVR3,A
XCHA,R2
RLCA
XCHA,R2
MOVF0,C
CLRC
SUBBA,R7
MOVR1,A
MOVA,R2
SUBBA,R6
ANLC,/F0
JCDVD3
MOVR2,A
MOVA,R1
MOVR3,A
INCR5
DVD3:
DJNZB,DVD2
MOVA,R4
MOVR2,A
MOVA,R5
MOVR3,A
CLROV
RET
SWEI:
MOV32H,#10H;把16送32H
SW1:
MOVA,32H;A=16
DECA;减1
RLA;乘以2
ADDA,#0E1H;保护没有用的位
MOVP1,A;输出扫描值
NOP
NOP
NOP
NOP
NOP
NOP
JNBP1.0,SW11;为0该点在水中应显示,否则点位减1
MOVA,32H
CLRC
SUBBA,#01H
JCSW11
MOV32H,A
SJMPSW1
LCALLDEL
RET
SW11:
LCALLDEL2
MOV20H,32H;
MOV21H,#00H
ACALLYASO;压缩16进制数变成压缩10进制数
ACALLL11;压缩--非压缩
LCALLDAIM
LCALLXIAN
LCALLXIANH
BJ:
CLRP1.5
SETBP3.5
MOVA,32H
CLRC
SUBBA,#01H
JCSWL
MOVA,32H
CLRC
SUBBA,#0FH
JNCSWH
RET
SWL:
CLRP3.5;水位低报警
SETBP1.5;电机正转
SETBP3.3
LCALLDEL
SETBP3.5
CLRP1.5
RET
SWH:
CLRP3.5;水位低报警
SETBP1.5;电机反转
CLRP3.3
LCALLDEL
SETBP3.5
CLRP1.5
RET
XIANH:
MOV12H,#10H
MOV13H,#10H
MOV14H,#18H
ACALLDAIM;代码--段码
ACALLXIAN;显示
RET
DEL2:
MOVR5,#80H
Y33:
MOVR7,#0FFH
Y11:
DJNZR7,Y11
DJNZR5,Y33RETEN
附录一原理图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 太阳能热水器 控制电路 设计 应用 电子技术 专业 毕业设计 毕业论文