基于单片机的红外自动淋浴器毕业设计Word格式.docx
《基于单片机的红外自动淋浴器毕业设计Word格式.docx》由会员分享,可在线阅读,更多相关《基于单片机的红外自动淋浴器毕业设计Word格式.docx(33页珍藏版)》请在冰豆网上搜索。
7、适合厂矿、公共浴池等使用环境。
8、喷头与电磁阀合二为一,便于检修、除垢。
9、浴池整体布局合理,墙面整洁,管路明快简捷,方便浴后清理卫生。
10、人在淋浴时不用触摸开关,温馨舒适,充分享受高科技带来的全自动的文明服务。
.4论文的主要研究内容
针对目前国内淡水资源大量浪费的现状,结合国内外现有的相关研究成果及现有的成熟技术。
本论文进行了基于单片机的红外淋浴器系统的研究与设计。
论文的主要内容有:
第1章绪论。
简要介绍本文的研究目的及意义、红外传感技术在国内外发展和现状。
第2章系统整体方案设计。
主要包括系统的设计思路与系统方案对比。
第3章系统硬件设计。
这部分主要包括系统各模块的主要芯片选型、各芯片的功能介绍、各模块的功能作用阐述及其红外传感模块及报警显示模块硬件电路设计等。
第4章系统软件设计。
软件设计部分包括系统主程序、红外采集程序、显示程序及报警程序等,并给出了各自的设计流程图。
第二章系统整体方案设计
本章提出了系统的设计思路,明确了系统的功能特点。
制定了系统方案框图在系统结构设计部分给出了红外淋浴系统的结构图。
2.1系统设计思路
红外淋浴系统的设计思路:
当人靠近淋浴器时,系统中的红外传感器检测模块便器检测到相应的人体红外信号,系统便被触发;
送给单片机控制系统进行判断处理后,打开电磁阀、触发报警、时间显示等一系列操作。
2.2系统方案设计
2.2.1方案一
采用SNS9201红外传感器进行对人体红外信号采集,经SNS9201芯片处理之后传给单片机,单片机作相应的操作,如电磁阀和蜂鸣器的开关,并将时间用数码管显示出来。
但SNS9201芯片处理红外信号时有延时电路,电磁阀不能马上打开;
其次数码管功耗大并对电流非常敏感,不能极好显示时间。
所以该方案只能较好完成系统功能。
图2-1方案一
2.2.2方案二
采用RE200B红外传感器进行对人体红外信号采集,经BISS0001芯片处理之后传给单片机,单片机作相应的操作。
如电磁阀和蜂鸣器的开关,并将时间用LCD显示出来。
BISS0001是一款具有较高性能的传感信号处理集成电路,能及时对红外信号进行采集并触发单片机的控制操作;
LCD体积小、工作电流比LED小几个数量级,故其功耗低,且有着良好的人机界面。
该方案能很好完成系统功能。
图2-2方案二
从以上两种方案,采用方案二。
电路比较简单、费用较低、可靠性高、软件设计也比较简单,故采用了方案二。
第三章系统硬件设计
根据系统采用的方案,本章设计了系统的总体结构图。
阐述了系统硬件的总体结构;
其次进行系统的硬件设计,包括红外信号采集模块设计和电磁阀控制模块设计,液晶显示模块设计,报警电路设计等。
详细阐述了各个模块的芯片选型,根据所选芯片的功能特点、工作原理及接口电路,设计了各模块的具体硬件电路。
3.1单片机的选择
STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K可编程Flash存储器[2]。
使用高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案[3]。
3.1.1STC89C52单片机的特点
1、超低功耗
(1)掉电模式:
典型功耗0.5uA,可由外部中断唤醒,中断返回后,继续执行原程序
(2)空闲模式:
典型功耗2mA
(3)正常工作模式:
典型功耗4mA-7mA
2、超强抗干扰
(1)I/O口
输入/输出口经过特殊处理,很多干扰是从I/O进去的,,每个I/O均有对VCC/对GND二级管箝位保护。
(2)电源
单片机内部的电源供电系统经过特殊处理,很多干扰是从电源进去的。
(3)时钟
单片机内部的时钟电路经过特殊处理,很多干扰是从时钟部分进去的。
(4)看门狗
单片机内部的看门狗电路经过特殊处理,打开后无法关闭,可放心省去外部看门狗。
(5)复位电路
单片机内部的复位电路经过特殊处理,很多干扰是从复位电路部分进去的。
STC89C51RC/RD+系列单片机为高电平复位。
推荐外置复位电路为MAX810/STC810,STC6344,STC6345,813L,706P;
也可用R/C复位10uF电容/10k电阻,22uF/8.2k等。
(6)宽电压
不怕电源抖动,5v:
6v-3.4v3v:
4v-1.9v。
3、具体特征如下:
(1)增强型6时钟、机器周期12时钟、机器周期8051CPU。
(2)工作电压:
5.5V-3.4V(5V单片机)/3.8V-2.0V(3V单片机)。
(3)工作频率范围:
0–40MHZ相当于普通8051的0~80MHZ。
实际工作频率可达48MHZ。
(4)用户应用程序空间4K/8K/13K/16K/32K/64K字节。
(5)片上集成1280字节/512字节RAM。
(6)通用I/O口(32/36个)复位后为:
P1/P2/P3/P4是准以向口/弱上拉(普通8051传统I/O口)P0口是开漏输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。
(7)ISP(系统可编程)/IAP(在应用可编程),无需专用编程器/仿真器可通过串口(P3.0/P3.1)直接下载用户SK程序3秒即可完成一片。
(8)CCPROM功能。
(9)看门狗电路。
(10)内部集成MAXS10专用复位电路(D版本才有)外部晶体20M以下时,可省外部复位电路。
(11)共3个16位定时器/计数器。
其中定时器0还不可以当成2个8位定时器使用。
(12)外部中断4路,下降沿中断或低电平触发中断,PowerDown模式可由外部中断低电平触发中断方式唤醒。
(13)通用异步串行口(UART)还可用定时器软件实现多个UART。
(14)工作温度范围:
0-750C/-400C-+850C。
(15)封装:
LQFP-44,PDIP-40,PLCC-44,PQFP-44。
3.1.2STC89C52单片机的管脚说明
STC89C52芯片如图3-1[7]:
图3-1STC89C52管脚图
具体介绍如下:
(1)主电源引脚(2根)
VCC(Pin40):
电源输入接+5V电源;
GND(Pin20):
接地线;
(2)外接晶振引脚(2根)
XTAL1(Pin19):
片内振荡电路的输入端;
XTAL2(Pin20):
片内振荡电路的输出端;
(3)控制引脚(4根)
RST/VPP(Pin9):
复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):
地址锁存允许信号;
PSEN(Pin29):
外部存储器读选通信号;
(4)可编程输入/输出引脚(32根)
STC89C52单片机有4组8位的可编程I/O口。
分别位P0、P1、P2、P3口,每个口有8位(8根引脚)共32根。
PO口(Pin39~Pin32):
8位双向I/O口线,名称为P0.0~P0.7;
P1口(Pin1~Pin8):
8位准双向I/O口线,名称为P1.0~P1.7;
P2口(Pin21~Pin28):
8位准双向I/O口线,名称为P2.0~P2.7;
P3口(Pin10~Pin17):
8位准双向I/O口线,名称为P3.0~P3.7;
STC89C52主要功能如表3.1所示。
表3.1STC89C52主要功能
主要功能特性
兼容MCS51指令系统
8K可反复擦写FlashROM
32个双向I/O口
256x8bit内部RAM
3个16位可编程定时/计数器中断
时钟频率0-24MHz
2个串行中断
可编程UART串行通道
2个外部中断源
共6个中断源
2个读写中断口线
3级加密位
低功耗空闲和掉电模式
软件设置睡眠和唤醒功能
3.2红外信号的采集电路设计
红外信号采集都是指从传感器或者其他待测的设备等模拟被测单元或数字被测单元中自动采集信息的一个过程。
信号采集系统是结合计算机的测量软硬件相关产品来实现灵活、用户自定义的测量系统[4]。
一个完备的数据采集系统应该包括传感器或变换器、信号调理设备、数据采集和分析硬件、驱动程序和应用软件等等。
本系统中被检测的信号为模拟量,要经过BISS0001转换成数字量,才能实现单片机的控制。
数据采集模块是将人体红外的传感器信号,经过BISS0001送给单片机进行处理,终端单片机判断处理并作时间数码显示及蜂鸣器报警。
在数据采集模块部分,本系统采用STC89C52单片机作为前端警情采集中心控制单元,主要完成对所采集数据的处理。
下面介绍采集模块各芯片的选型。
3.2.1RE200B热释红外传感器结构图及工作原理
RE200B热释电红外传感器[5]的通常由热释电晶体、氧化膜、滤光镜片、结型场效应管FET和电阻等部分组成。
热释电晶体一般采用PZT或其他压电晶体材料,将敏感材料PZT的上、下表面做成电极,并在其上表面上加1层黑色氧化膜,以提高转换效率。
在管壳顶端装有滤光镜片,它可以阻止不需要的红外线或其他光线进入传感器,其结构如图3-2所示。
红外传感器工作原理与红外线有关,它是利用红外线的物理性质来进行测量的传感器,热释电红外传感器内部的热释电晶体具有极化现象,并且随温度的变化而变化。
这种传感器对于不同波长的光线照射都能产生不同程度的响应,因此在传感器前会加入一个滤镜窗口,这就是为什么我们能看到的RE200B的to5封装形式中有一个像玻璃似的小窗。
当然通过这个滤镜可以限定晶体对特定波长的光线产生响应,一般在8um~14um,这样就非常接近人体辐射的红外线波长了。
当恒定的红外辐射照射在探测器上时,热释电晶体温度不变,晶体对外呈电中性,探测器没有电信号输出,因而恒定的红外辐射不能被检测到。
当交变的红外线照射到晶体表面时,晶体温度迅速变化,这时才发生电荷的变化,从而形成一个明显的外电场,这种现象称为热释电效应。
由于热释电晶体输出的是电荷信号,不能直接使用,需要用电阻将其转换为电压形式,该电阻阻抗高达104兆,故引入N沟道结型场效应管接成共漏形式(即源极跟随器)来完成阻抗变换。
热释电红外传感器,其内部结构示意图如图3-3所示。
该传感器将两个特性相同的热释电晶体逆向串联,用来防止其他红外光引起传感器误动作。
另外,当环境温度改变时,两个晶体的参数会同时发生变化,这样可以相互抵消,避免出现检测误差。
该传感器使用时,D端接电源正极,G端接电源负极,S端为信号输出。
图3-2红外传感器结构图图3-3热释电红外传感器内部结构示意图
3.2.2热释电红外传感器RE200B处理芯片BISS0001
RE200B红外热释电处理芯片BISS0001,BISS0001是一款具有较高性能的传感信号处理集成电路,它配以热释电红外传感器和少量外接元器件构成被动式的热释电红外开关。
它能自动快速开启各类白炽灯、荧光灯、蜂鸣器、自动门、电风扇、烘干机和自动洗手池等装置,特别适用于企业、宾馆、商场、库房及家庭的过道走廊等敏感区域,或用于安全区域的自动灯光、照明和报警系统[6]。
该处理芯片具有CMOS工艺,数模混合,具有独立的高输入阻抗运算放大器;
内部的双向鉴幅器可有效抑制干扰,内设延迟时间定时器和封锁时间定时器,采用16脚DIP封装等特点。
红外热释电处理芯片BISS0001[7]管脚如下图3-4:
图3-4BISS0001管脚图
BISS0001管脚说明如下表3.2:
表3.2管脚说明
引脚
名称
I/O
功能说明
1
A
I
可重复触发和不可重复触发选择端。
当A为“1”时允许重复触发;
反之不可重复触发
2
VO
O
控制信号输出端。
由VS的上跳变沿触发使Vo输出从低电平跳变到高电平时视为有效触发。
在输出延迟时间Tx之外和无VS的上跳变时Vo保持低电平状态。
3
RR1
--
输出延迟时间Tx的调节端
4
RC1
5
RC2
触发封锁时间Ti的调节端
6
RR2
7
VSS
工作电源负端
8
VRF
参考电压及复位输入端。
通常接VDD当接“0”时可使定时器复位
9
VC
触发禁止端。
当Vc<
VR时禁止触发;
当Vc>
VR时允许触发(VR≈0.2VDD)
10
IB
运算放大器偏置电流设置端
11
VDD
工作电源正端
12
2OUT
第二级运算放大器的输出端
13
2IN-
第二级运算放大器的反相输入端
14
1IN+
第一级运算放大器的同相输入端
15
1IN-
第一级运算放大器的反相输入端
16
1OUT
第一级运算放大器的输出端
BISS0001是由运算放大器、电压比较器、状态控制器、延迟时间定时器以及封锁时间定时器等构成的数模混合专用集成电路。
3.2.3红外采集电路
红外传感器接收到人体红外信号经BISS0001处理后输出输给单片机P1.0口,TEL0表示接STC89C52是的P1.0口,通过对P1.0电平的判断,实现对单片机外围电路的控制,如电磁阀控制水阀电路,液晶显示淋浴时间等。
红外采集电路[7]如图3-5:
图3-5红外采集电路
3.3显示电路设计
在本系统中,用LCD液晶屏来构成显示部分,主要在人来时对淋浴计时时间和定时时间的显示。
LCD液晶显示器具有功耗低、寿命长、无辐射、不易引起视疲劳等优点,正在被广泛应用于仪表、家用电器、计算机、医疗仪器及交通和通信领域[8]。
本系统中,选择JHD162A作为液晶屏的显示驱动控制器。
3.3.11602液晶模块JHD162A简介
字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD目前常用16*116*220*2和40*2行等的模块。
是一种很常用的小型液晶显示模块在单片机系统、嵌入式系统等的人机界面中得到了广泛的应用。
1、1602LCD主要技术参数如下:
(1)显示容量:
16×
2个字符
(2)芯片工作电压:
4.5-5.5V
(3)工作电流:
2.0mA(5.0V)
(4)模块最佳工作电压:
5.0V
(5)字符尺寸:
2.95×
4.35(W×
H)mm
2、引脚功能说明:
1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表3.3所示:
表3.3引脚接口说明表
编号
符号
引脚说明
电源地
D2
数据
电源正极
D3
VL
液晶显示偏压
D4
RS
数据/命令选择
D5
R/W
读/写选择
D6
E
使能信号
D7
D0
BLA
背光源正极
D1
BLK
背光源负极
3、1602LCD的指令说明及时序
1602液晶模块内部的控制器共有11条控制指令,如表3.4所示:
表3.4指令说明
序号
指令
清显示
光标返回
*
置输入模式
I/D
S
显示开/关控制
D
C
B
光标或字符移位
S/C
R/L
置功能
DL
N
F
置字符发生存贮器地址
字符发生存贮器地址
置数据存贮器地址
显示数据存贮器地址
读忙标志或地址
BF
计数器地址
写数到CGRAM或DDRAM)
要写的数据内容
从CGRAM或DDRAM读数
读出的数据内容
1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。
(说明:
1为高电平、0为低电平)。
指令1:
清显示指令码01H,光标复位到地址00H位置。
指令2:
光标复位光标返回到地址00H。
指令3:
光标和显示模式设置I/D:
光标移动方向高电平右移低电平左移S:
屏幕上所有文字是否左移或者右移。
高电平表示有效低电平则无效。
指令4:
显示开关控制。
D:
控制整体显示的开与关高电平表示开显示低电平表示关显示C:
控制光标的开与关高电平表示有光标低电平表示无光标B:
控制光标是否闪烁高电平闪烁低电平不闪烁。
指令5:
光标或显示移位S/C:
高电平时移动显示的文字低电平时移动光标。
指令6:
功能设置命令DL:
高电平时为4位总线低电平时为8位总线N:
低电平时为单行显示高电平时双行显示F:
低电平时显示5×
7的点阵字符高电平时显示5×
10的点阵字符。
指令7:
字符发生器RAM地址设置。
指令8:
DDRAM地址设置。
指令9:
读忙信号和光标地址BF:
为忙标志位高电平表示忙此时模块不能接收命令或者数据如果为低电平表示不忙。
指令10:
写数据。
指令11:
读数据。
读操作时序如图3-6所示:
图3-6读操作时序图
写操作时序如图3-7所示:
图3-7写操作时序图
3.3.2单片机与1062LCD接口电路设计
根据1062LCD的工作原理,我们可以设计单片机与1062LCD的接口电路图如3-8所示:
图3-8单片机与JHD162A的应用电路
3.4报警电路设计
本系统采用蜂鸣器作为报警,淋浴时当设置的定时时间还有一分钟时,蜂鸣器响应单片机进行报警。
蜂鸣器报警原理比较简单,单片机对IO口P1.2控制;
当定时时间还有一分钟时,单片机给P1.2口输出低电平,蜂鸣器工作,达到报警的效果。
报警电路如图3-9:
图3-9蜂鸣器与单片机的接口电路图
3.5电磁阀控制电路设计
本系统采用电磁阀控制浴室水阀的开关,电磁阀是利用电线圈通电时产生电磁力,使动铁芯克服弹簧力同静铁芯吸合直接开启阀,介质呈通路;
当线圈断电时电磁力消失,铁芯在弹簧力的作用下复位,直接关闭阀口,介质不通[9]。
系统中由单片机stc89C52的P1.1脚输出信号使驱动电路工作于相应的工作状态。
当P1.1输出高电平时,经过电阻R4使开关三极管8050饱和导通,电流从R3经三极管的CE极流向光电耦合器,发光二极管点亮,次极三极管导通,水管电磁阀通电,吸合动铁芯,阀门打开,水开始流出。
当P1.1输出低电平时,三极管8050截止,水管电磁阀断电,阀门关闭。
电磁阀的控制电路如图3-10:
图3-10电磁阀控制电路
第四章系统软件设计
分析单片机的系统功能可知,它是数据采集模块的主控制器,主要完成对人头红外信号的采集,然后通过红外传感模块传送给单片机处理。
根据系统功能要求,单片机的软件设计部分主要包括主程序设计、红外信号采集程序设计和LCD显示程序设计以及报警程序设计。
4.1主程序设计
系统主程序主要是在系统上电后进行的一系列初始化工作,包括对I/O口、定时器/计数器、中断系统等特殊功能寄存器赋值,使得数据采集、LCD显示、电磁阀控制、报警等模块与单片机的数据传输正常[10]。
其程序运行框图如图4-1所示。
当把采集到红外信号进行相应的处理后,通过LCD进行时间显示,同时对电磁阀、蜂鸣器进行相应的控制。
4.2红外信号采集程序
通过对单片机P1.0口的高低电平判断来完成红外信号的采集,当P1.0口为低电平时判断人来,否则继续循环检测,当人来时完成信号采集。
程序如图4-2:
4.3报警程序
当淋浴时定时时间还有一分钟结束时,蜂鸣器报警。
报警时,单片机给IO口P1.2赋予低电平,此时进