资源描述
资料内容仅供您学习参考,如有不当之处,请联系改正或者删除。
绪论
随着社会信息化的加快, 人们的工作、 生活和通讯、 信息的关系日
益紧密。信息化社会在改变人们生活方式与工作习惯的同时, 也对传统的
住宅提出了挑战, 社会、 技术以及经济的进步更使人们的观念随之巨变。
人们对家居的要求早已不只是物理空间, 更为关注的是一个安全、 方便、
舒适的居家环境。家居智能化技术起源于美国, 它是以家为平台进行设计
的。
正是因为通信技术、 计算机技术、 网络技术、 控制技术的迅猛发展与
提高, 促使了家庭实现了生活现代化, 居住环境舒适化、 安全化。这些高
科技已经影响到人们生活的方方面面, 改变了人们生活习惯, 提高了人们
生活质量, 家居智能化也正是在这种形势下应运而生的。智能家居控制系
统的主要功能包括通信、 设备自动控制、 安全防范三个方面。
智能家居控制系统的总体目标是经过采用计算机技术、 网络技术、 控
制技术和集成技术建立一个由家庭到小区乃至整个城市的综合信息服务和
管理系统, 以此来提高住宅高新技术的含量和居民居住环境水平。
课题研究的目的及意义在于智能家居控制系统能够定义为一个过程或
者一个系统。利用先进的计算机技术、 网络通讯技术、 综合布线技术、 将
与家居生活有关的各种子系统, 有机地结合在一起, 经过统筹管理, 让家
居生活更加舒适、 安全、 有效。与普通家居相比, 智能家居不但具有传统
的居住功能, 提供舒适安全、 高品位且宜人的家庭生活空间。还将原来的
被动静止结构转变为具有能动智慧的工具, 提供全方位的信息交换功能,
帮助家庭与外部保持信息交换畅通, 优化人们的生活方式, 帮助人们有效
安排时间, 增强家居生活的安全性, 甚至为各种能源费用节约资金。
设计目的:
以提高家居生活的安全性、 舒适度、 人性化为目的, 设计智能家居监控系统。利用所学的传感器与检测技术知识, 实现家居温度、 煤气泄漏、 外人闯入、 火灾( 烟雾) 的检测。各监测节点可经过无线方式连接到主机, 检测到危险信号后, 主机可采用声光报警或远程报警。
要求:
(1) 用Protel画出设计原理图;
(2) 采用Quaters II、 Maxplus II、 EWB、 pspice、 Proteus中的一种或几种软件, 完成系统电路中的部分或全部仿真, 在设计说明书中体现仿真结果;
(3) 写设计说明书;
(4) 每位同学必做;
总体设计方案:
分模块设计各个功能。
选题背景
智能家居是以住宅为平台, 利用综合布线技术、 网络通信技术、 智能家居系统设计方案安全防范技术、 自动控制技术、 音视频技术将家居生活有关的设施集成, 构建高效的住宅设施与家庭日程事务的管理系统。本系统是针对常见的安全问题如温湿度、 燃气泄露和火灾报警而设计的, 主要侧重于安全方面。
各模块设计( 硬件设计、 软件设计) :
一.家居环境温度检测和报警:
本设计主要是介绍了单片机控制下的温度检测系统, 详细介绍了其硬件和软件设计, 并对其各功能模块做了详细介绍, 其主要功能和指标如下:
由于传统的热敏电阻等测温元件测出的一般都是电压, 再转换成对应的温度, 需要比较多的外部元件支持, 且硬件电路复杂, 制作成本相对较高。这里采用DALLAS公司的数字温度传感器DS18B20作为测温元件。即利用温度传感器( DS18B20) 测量某一点环境温度
测量范围为-55℃~+99℃, 精度为±0.5℃
用液晶进行实际温度值显示
能够根据需要方便设定上下限报警温度
( 一) 、 温度传感器( DS18B20) 的介绍:
1、 DS18B20 简单介绍:
DALLAS 最新单线数字温度传感器DS18B20是一种新型的”一线器件”, 其体积更小、 更适用于多种场合、 且适用电压更宽、 更经济。DALLAS 半导体公司的数字化温度传感器DS18B20是世界上第一片支持”一线总线”接口的温度传感器。温度测量范围为-55~+125 摄氏度, 可编程为9位~12 位转换精度, 测温分辨率可达0.0625摄氏度, 分辨率设定参数以及用户设定的报警温度存储在EEPROM 中, 掉电后依然保存。被测温度用符号扩展的16位数字量方式串行输出; 其工作电源既能够在远端引入, 也能够采用寄生电源方式产生; 多个DS18B20能够并联到3 根或2 根线上, CPU只需一根端口线就能与诸多DS18B20 通信, 占用微处理器的端口较少, 可节省大量的引线和逻辑电路。因此用它来组成一个测温系统, 具有线路简单, 在一根通信线, 能够挂很多这样的数字温度计, 十分方便。
DS18B20 的性能特点如下:
独特的单线接口方式, DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯
DS18B20支持多点组网功能, 多个DS18B20能够并联在唯一的三线上, 实现组网多点测温
DS18B20在使用中不需要任何外围元件, 全部传感元件及转换电路集成在形如一只三极管的集成电路内
适应电压范围更宽, 电压范围: 3.0~5.5V, 在寄生电源方式下可由数据线供电
温范围-55℃~+125℃, 在-10~+85℃时精度为±0.5℃
零待机功耗
可编程的分辨率为9~12位, 对应的可分辨温度分别为0.5℃、 0.25℃、 0.125℃和0.0625℃, 可实现高精度测温
在9位分辨率时最多在93.75ms内把温度转换为数字, 12位分辨率时最多在750ms内把温度值转换为数字, 速度更快
用户可定义报警设置
报警搜索命令识别并标志超过程序限定温度( 温度报警条件) 的器件
测量结果直接输出数字温度信号, 以"一线总线"串行传送给CPU, 同时可传送CRC校验码, 具有极强的抗干扰纠错能力
负电压特性, 电源极性接反时, 温度计不会因发热而烧毁, 但不能正常工作
以上特点使DS18B20非常适用与多点、 远距离温度检测系统。
DS18B20内部结构主要由四部分组成: 64位光刻ROM、 温度传感器、 非挥发的温度报警触发器TH和TL、 配置寄存器。DS18B20的管脚排列、 各种封装形式如图 4.2 所示, DQ 为数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下, 也能够向器件提供电源; GND为地信号; VDD为可选择的VDD引脚。当工作于寄生电源时, 此引脚必须接地。其电路图 4.3所示.。
图 4.2 外部封装形式 图4.3传感器电路图
2、 DS18B20 使用中的注意事项:
DS18B20 虽然具有测温系统简单、 测温精度高、 连接方便、 占用口线少等优点, 但在实际应用中也应注意以下几方面的问题:
DS18B20 从测温结束到将温度值转换成数字量需要一定的转换时间, 这是必须保证的, 不然会出现转换错误的现象, 使温度输出总是显示85。
在实际使用中发现, 应使电源电压保持在5V 左右, 若电源电压过低, 会使所测得的温度精度降低。
较小的硬件开销需要相对复杂的软件进行补偿, 由于DS1820与微处理器间采用串行数据传送, 因此, 在对DS1820进行读写编程时, 必须严格的保证读写时序, 否则将无法读取测温结果。在使用PL/M、 C等高级语言进行系统程序设计时, 对DS1820操作部分最好采用汇编语言实现。
在DS18B20的有关资料中均未提及单总线上所挂DS18B20 数量问题, 容易使人误认为能够挂任意多个DS18B20, 在实际应用中并非如此, 当单总线上所挂DS18B20 超过8 个时, 就需要解决微处理器的总线驱动问题, 这一点在进行多点测温系统设计时要加以注意。
在DS18B20测温程序设计中, 向DS18B20 发出温度转换命令后, 程序总要等待DS18B20的返回信号, 一旦某个DS18B20 接触不好或断线, 当程序读该DS18B20 时, 将没有返回信号, 程序进入死循环, 这一点在进行DS18B20硬件连接和软件设计时也要给予一定的重视。
3、 DS18B20 内部结构
图为DS1820的内部框图, 它主要包括寄生电源、 温度传感器、 64位激光ROM单线接口、 存放中间数据的高速暂存器( 内含便笺式RAM) , 用于存储用户设定的温度上下限值的TH和TL触发器存储与控制逻辑、 8位循环冗余校验码( CRC) 发生器等七部分。
DS18B20采用3脚PR-35 封装或8脚SOIC封装, 其内部结构框图如图 4.4所示
图 4.4 DS18B20内部结构框图
4、 DS18B20测温原理
DS18B20的测温原理如图2所示, 图中低温度系数晶振的振荡频率受温度的影响很小用于产生固定频率的脉冲信号送给减法计数器1, 高温度系数晶振随温度变化其震荡频率明显改变, 所产生的信号作为减法计数器2的脉冲输入, 图中还隐含着计数门, 当计数门打开时, DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数, 进而完成温度测量.计数门的开启时间由高温度系数振荡器来决定, 每次测量前, 首先将-55 ℃所对应的基数分别置入减法计数器1和温度寄存器中, 减法计数器1和温度寄存器被预置在-55 ℃所对应的一个基数值。
减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数, 当减法计数器1的预置值减到0时温度寄存器的值将加1, 减法计数器 1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时, 停止温度寄存器值的累加, 此时温度寄存器中的数值即为所测温图2中的斜率累加器用于补偿和修正测温过程中的非线性其输出用, 于修正减法计数器的预置值, 只要计数门仍未关闭就重复上述过程, 直至温度寄存器值达到被测温度值, 这就是DS18B20的测温原理。
另外, 由于DS18B20单线通信功能是分时完成的, 她有严格的时隙概念, 因此读写时序很重要。系统对DS18B20的各种操作必须按协议进行。操作协议为: 初始化DS18B20( 发复位脉冲) →发ROM功能命令→发存储器操作命令→处理数据。
图( 2) DS18B20测温原理图
在正常测温情况下, DS1820的测温分辨力为0.5℃, 可采用下述方法获得高分辨率的温度测量结果: 首先用DS1820提供的读暂存器指令( BEH) 读出以0.5℃为分辨率的温度测量结果, 然后切去测量结果中的最低有效位( LSB) , 得到所测实际温度的整数部分Tz, 然后再用BEH指令取计数器1的计数剩余值Cs和每度计数值CD。考虑到DS1820测量温度的整数部分以0.25℃、 0.75℃为进位界限的关系, 实际温度Ts可用下式计算:
Ts=( Tz-0.25℃) +(CD-Cs)/CD
( 二) 硬件设计电路:
本温度计大致分三个工作过程。首先, 由DS18820温度传感器芯片测量当前的温度, 并将结果送入单片机。然后, 经过89C205I单片机芯片对送来的测量温度读数进行计算和转换, 井将此结果送入液晶显示模块屏上。 由图1可看到, 本电路主要由DSl8820温度传感器芯片、 89C2051单片机芯片和声光报警电路组成。其中, DSI8B20温度传感器芯片采用”一线制”与单片机相连, 它独立地完成温度测量以及将温度测量结果送到单片机的工作。
当温度传感器检测到室内温度超过某一限定值时, 发出声光报警
温度计电路设计proteus仿真图
1、 温度检测电路
DS18B20与芯片连接电路如图 5.2所示:
图 5.2 DS18B20与单片机的连接
2、 显示电路
显示电路由lcd1602和上拉电阻组成。
LCD1602简介 LCD1602是工业字符型液晶, 能够同时显示16x02即32个字符。( 16列2行)
1602液晶也叫1602字符型液晶, 它是一种专门用来显示字母、 数字、 符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成, 每个点阵字符位都能够显示一个字符, 每位之间有一个点距的间隔, 每行之间也有间隔, 起到了字符间距和行间距的作用, 正因为如此因此它不能很好地显示图形。
1602LCD是指显示的内容为16X2,即能够显示两行, 每行16个字符液晶模块( 显示字符和数字) 。
管脚功能
1602采用标准的16脚接口, 其中:
第1脚: VSS为电源地
第2脚: VCC接5V电源正极
第3脚: V0为液晶显示器对比度调整端, 接正电源时对比度最弱, 接地电源时对比度最高( 对比度过高时会 产生”鬼影”, 使用时能够经过一个10K的电位器调整对比度) 。
第4脚: RS为寄存器选择, 高电平1时选择数据寄存器、 低电平0时选择指令寄存器。
第5脚: RW为读写信号线, 高电平(1)时进行读操作, 低电平(0)时进行写操作。
第6脚: E(或EN)端为使能(enable)端。
第7~14脚: D0~D7为8位双向数据端。
第15~16脚: 空脚或背灯电源。15脚背光正极, 16脚背光负极。
时序
写操作时序
写指令: RS=0;R/W=1;E=1;
写数据: RS=1;R/W=0;E=1;
读操作时序
读状态: RS=0;R/W=1;E=1;
读数据: RS=1;R/W=1;E=1;
( 三) 、 软件设计电路:
DS18B20在单片机控制下分三个阶段:
18B20 初始化: 初始化流程图见6.1
DS18B20的初始化
( 1) 先将数据线置高电平”1”。
( 2) 延时( 该时间要求的不是很严格, 可是尽可能的短一点)
( 3) 数据线拉到低电平”0”。
( 4) 延时750us( 该时间的时间范围能够从400到960us) 。
( 5) 数据线拉到高电平”1”。
( 6) 延时等待( 如果初始化成功则在15到60us时间之内产生一个由DS18B20所返回的低电平”0”。据该状态能够来确定它的存在, 可是应注意不能无限的进行等待, 不然会使程序进入死循环, 因此要进行超时控制) 。
( 7) 若CPU读到了数据线上的低电平”0”后, 还要做延时, 其延时的时间从发出的高电平算起( 第( 5) 步的时间算起) 最少要480us。
( 8) 将数据线再次拉高到高电平”1”后结束。
void Init_18B20(void)
{
// unsigned char x;
DQ=0;
delay_18B20(103);
DQ=1;
delay_18B20(4);
delay(1);
// x=DQ;
// DQ=0;
// delay_18B20(480);
// DQ=1;
wr_ds18_1(0xcc);
// wr_ds18_1(0xbe);
wr_ds18_1(0x44);
}
读18B20时序: 读DS18B20流程见图 6.3
DS18B20的读操作
( 1) 将数据线拉高”1”。
( 2) 延时2微秒。
( 3) 将数据线拉低”0”。
( 4) 延时3微秒。
( 5) 将数据线拉高”1”。
( 6) 延时5微秒。
( 7) 读数据线的状态得到1个状态位, 并进行数据处理。
( 8) 延时60微秒。
DS18B20的读操作时序图如图4.15所示
unsigned char ReadByte(void)
{
unsigned char i,k;
i=8;
k=0;
while(i--)
{
DQ=1;
// Delay_us(1);
_nop_();
_nop_();
DQ=0;
k=k>>1;
DQ=1;
// Delay_us(60);
// _nop_();
if(DQ) k|= 0x80;
Delay_us(60);
}
return(k);
}
( 1) 数据线先置低电平”0”。
( 2) 延时确定的时间为15us。
( 3) 按从低位到高位的顺序发送字节( 一次只发送一位) 。
( 4) 延时时间为45us。
( 5) 将数据线拉到高电平。
( 6) 重复上( 1) 到( 6) 的操作直到所有的字节全部发送完为止。
( 7) 最后将数据线拉高。
void wr_ds18_1(char dat)
{
signed char idata i=0;
unsigned char idata j;
bit testb;
for(j=1;j<=8;j++)
{
testb=dat & 0x01;
dat = dat>>1;
if(testb) //写1
{
DQ=0;
_nop_();
_nop_();
DQ=1;
delay_18B20(8);
}
else //写0
{
DQ=0;
delay_18B20(8);
DQ=1;
_nop_();
_nop_();
}
}
}
( 二) .燃气泄露报警系统
( 一) 传感器的选择
气敏传感器TGS813
燃气(人工煤气、 天然气、 液化石油气)的普及, 提高了生产效率、 市民的生活质量, 但在使用燃气的过程中, 因燃气泄漏、 废气等原因造成的燃气爆炸、 中毒等意外事故时有发生, 给人们的生命和财产安全带来了严重的威胁, 因此安全使用燃气一直是燃气主管部门工作的重中之重。燃气泄漏报警器能有效监测环境中可燃气体或毒性气体(如CO)的浓度, 一旦其浓度超出报警限定值, 就能发出声光报警信号, 而且能自动开启排风扇把燃气排出室外, 甚至能经过联动装置自动切断燃气供应防止燃气继续泄漏, 起到安全防范的作用。但报警器选用得是否合理, 直接关系到其功能的充分发挥。该设计所研究的可燃性气体报警器正是应这种要求而开发的。
该设计所研究的可燃性气体报警系统是利用传感器对可燃气体浓度信号进行监测而且转变成电压信号, 然后与设定的电压信号进行比较, 当气体浓度超过设定值时实现智能报警并能打开风扇进行换气。当前市场上家用可燃性气体报警器的价格一直居高不下, 而且需要定期更换传感器, 更让人们进一步加大了投资, 使得普通用户难以承受。该设计的燃气报警装置的线路简单, 各种器件的价格相对低廉, 这使得整体成本大大降低。相信在科技飞速发展的今天, 燃气报警装置的价格逐步降低是必然趋势, 燃气报警装置将广泛地被人们认可并普及使用, 为人们的人身财产安全树立一道可靠的屏障。该设计采用气敏传感器TGS813对可燃性气体浓度进行监测, 正常工作时气敏传感器输出电压信号与设定的电压值经过比较器进行比较。当气体浓度超标时, 气敏传感器输出的电压值超过正常时的电压值, 从而使比较器正向输出; 然后经过三极管放大后, 输出驱动音响装置发出声音而且驱动继电器线圈使风扇自动打开, 从而实现音响报警及自动换气功能。
二) 特点
它对氢气、 一氧化碳、 丙烷、 乙醇等一般可燃性气体均有较高的灵敏度; 后期电路简单; 长寿命、 低功耗。
电源模块的设计
具体的电源模块及三端稳压管连接图如图2所示。
气敏传感器的选择
为了补偿温度和湿度对传感器特性的影响, 同时为了获得更高的精度, 故使用热敏电阻或湿敏传感器对电路进行补偿。该设计的传感器电路及温度补偿电路如图3所示。
信号比较放大回路的设计
信号比较放大电路的作用: 当气体浓度超标时, 传感器将输出比设定电压更大的电压信号。该信号经过电压比较器后正向输出, 然后在经过放大三极管进行放大, 从而有足够的电流去驱动继电器线圈和音响报警装置。信号比较放大的基本电路图如图4所示。
报警装置电路的设计
报警电路是系统的重要组成部分之一。要求设计的报警装置能够连续报警, 故不能够直接在电路中接蜂鸣器和喇叭装置, 必须在电路中接有能够连续产生脉冲信号的装置。多谐振荡器是一种自激振荡器, 在接通电源以后, 不需要外加触发信号, 便能自动地产生矩形脉冲, 由于矩形波中含有丰富的高次谐波分量, 因此习惯上又把矩形波振荡器叫作多谐振荡器。
555定时器是一种多用途的数/模混合集成电路, 利用它能极方便地构成多谐振荡器、 施密特触发器等装置。它使用灵活、 方便, 因此555定时器在波形的产生与变换、 测量与控制等很多领域都得到了广泛的应用。故该设计选择NE555构成的多谐振荡器作为脉冲信号源。在NE555多谐振荡器的输出引脚接一个起放大作用的三极管, 从而保证电路有足够大的电流去驱动扬声器。风扇控制电路也是系统的组成部分之一。该设计的风扇控制采用了继电器控制的方式。继电器是一种根据外界输入的一定信号(电的或非电的)来控制电路中电流”通”与”断”的自动切换电器。它主要用来反映各种控制信号, 其触点一般接在控制电路中。
报警电路图
报警电路有电源电路、 检测电路、 电压比较电路和指示电路四部分组成。
当有可燃性气体超量出现时, TGS813的电阻下降, 比较器IC4的2脚电压上升, 当达到2, 5V以上时, IC4输出高电平, 晶体管VT2导通, 从而激励蜂鸣器发声报警。
( 三) .火灾报警系统
原理
在20±5℃清洁空气条件下, 收集电极( 即C电极) 的平衡电位为5.0~5.6V; 有烟雾时, 收集电极的电位变化可达1.1~1.2V。极间电容为4PF, AM241放射源为0.81~0.99uCi; 器件重量为12g,主要结构材料为不锈钢和塑料。
用电加热器加热到440~480℃时, 对不同材料所产生的烟雾, 其传感器收集电极电位变化1.0V时的灵敏度见表所示:
燃烧材料 烟雾含量( mg/) 阴暗度(%)
硅橡胶 26 1.0
乙烯基材料 29 1.1
纸烟 115 3
过滤纸 40 1.8
棉花 56 2.5
电路原理
在无烟幕时VDW导通, VT导通, IC1的adj端与地呈低阻态, 输出端Uo较低, 不足以使IC2和KA工作。
当发生火灾时, VDW截止, VT截止, LM317的adj端呈高阻态, 输出端Uo电压较高。IC2驱动扬声器Y发出报警器, 且KA吸合。
KA外接自动灭火装置或切断室内电源。
(四) 外人闯入警报系统
本设计就是为了满足现代住宅防盗的需要而设计的家庭式电子防盗系统。就当前市面上装备主要有压力触发式防盗报警器、 开关电子防盗报警器和压力遮光触发式防盗报警器等各种报警器, 但这几种比较常见的报警器都存在一些缺点。而本设计中所使用的红外线是不可见光, 有很强的隐蔽性和保密性, 因此在防盗、 警戒等安保装置中得到了广泛的应用。这种热释电红外传感器能以非接触形式检测出人体辐射的红外线, 并将其转变为电压信号, 同时, 热释电红外传感器既可用于防盗报警装置, 也可用于制动控制、 接近开关、 遥测等领域。
基础知识介绍
1、 热释电红外传感器简单介绍
热释电红外线(PIR)传感器是80年代发展起来的一种新型高灵敏度探测元件。是一种能检测人体发射的红外线而输出电信号的传感器, 它能组成防入侵报警器或各种自动化节能装置。它能以非接触形式检测出人体辐射的红外线能量的变化, 并将其转换成电压信号输出。将这个电压信号加以放大, 便可驱动各种控制电路[2]。如图所示为热释电红外传感器的内部电路框图。
2、 PIR的原理特性
热释电红外线传感器主要是由一种高热电系数制成的探测元件, 在每个探测器内装入一个或两个探测元件, 并将两个探测元件以反极性串联, 以抑制由于自身温度升高而产生的干扰。由探测元件将探测并接收到的红外辐射转变成微弱的电压信号, 经装在探头内的场效应管放大后向外输出。
人体辐射的红外线中心波长为9--10um, 而探测元件的波长灵敏度在0.2--20um范围内几乎稳定不变。在传感器顶端开设了一个装有滤光镜片的窗口, 这个滤光片可经过光的波长范围为7--10um, 正好适合于人体红外辐射的探测, 而对其它波长的红外线由滤光片予以吸收, 这样便形成了一种专门用作探测人体辐射的红外线传感器。一旦人侵入探测区域内, 人体红外辐射经过部分镜面聚焦, 并被热释电元接收, 可是两片热释电元接收到的热量不同, 热释电也不同不能抵消, 经信号处理而输出电压信号。
3、 方案设计
3.1 总体设计思路
本设计包括硬件和软件设计两个部分。模块划分为数据采集、 键盘控制、 报警等子模块。电路结构可划分为: 热释电红外传感器、 报警器、 单片机控制电路、 LED控制电路及相关的控制管理软件组成。用户终端完成信息采集、 处理、 数据传送、 功能设定、 本地报警等功能。
就此设计的核心模块来说, 单片机就是设计的中心单元, 因此此系统也是单片机应用系统的一种应用。单片机应用系统也是有硬件和软件组成。硬件包括单片机、 输入/输出设备、 以及外围应用电路等组成的系统, 软件是各种工作程序的总称。单片机应用系统的研制过程包括总体设计、 硬件设计、 软件设计等几个阶段。
从设计的要求来分析该设计须包含如下结构: 热释电红外传感探头电路、 报警电路、 单片机、 复位电路及相关的控制管理软件组成; 它们之间的构成框图如总体设计框图所示:
AT89
C51
复位电路
信号检测电路
报警执行电路
LED发光显示
放大
驱动
驱动
处理器采用51系列单片机AT89C51。整个系统是在系统软件控制下工作的。设置在监测点上的红外探头将人体辐射的红外光谱变换成电信号, 经放大电路、 比较电路送至门限开关, 打开门限阀门送出TTL 电平至AT89C51单片机。在单片机内, 经软件查询、 识别判决等环节实时发出入侵报警状态控制信号。驱动电路将控制信号放大并推动声光报警设备完成相应动作。当报警延迟10s一段时间后自动解除, 也可人工手动解除报警信号, 当警情消除后复位电路使系统复位, 或者是在声光报警10s钟后有定时器实现自动消除报警。
3.2 具体电路模块设计
3.2.1 热释电红外传感器原理
本设计所用的热释感器就采用这种双探测元的结构。其工作电路原理及设计电路如图所示, 在VCC电源端利用C1和R2来稳定工作电压, 同样输出端也多加了稳压元件稳定信号。当检测到人体移动信号时, 电荷信号经过FET放大后, 经过C2, R1的稳压后使输出变为高电位, 再经过NPN的转化, 输出OUT为低电平。
3.2.2 放大电路的设计
如图所示为最基本的放大电路, Vi是输入电压信号, Vo是输出放大的电压信号。
3.2.3 时钟电路的设计
XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器能够配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件, XTAL2应不接。
因为一个机器周期含有6个状态周期, 而每个状态周期为2个振荡周期, 因此一个机器周期共有12个振荡周期, 如果外接石英晶体振荡器的振荡频率为12MHZ, 一个振荡周期为1/12us, 故而一个机器周期为1us。如图所示为时钟电路。
3.2.4 复位电路的设计
复位方法一般有上电自动复位和外部按键手动复位, 单片机在时钟电路工作以后, 在RESET端持续给出2个机器周期的高电平时就能够完成复位操作[6]。例如使用晶振频率为12MHz时, 则复位信号持续时间应不小于2us。本设计采用的是外部手动按键复位电路。如图示为复位电路。
3.2.5 发光二极管报警电路的设计
由4个发光二极管接上电阻后连上单片的RXD的引脚, 外接VCC, 当单片机的RXD引脚被置低电平后, 发光二极管被点亮, 起到报警作用。如图所示为发光二极管报警电路。
3.2.6 声音报警电路的设计
如下图所示, 用一个Speaker和三极管、 电阻接到单片机的TXD引脚上, 构成声音报警电路, 如图所示为声音报警电路。
3.3 系统硬件电路的选择及说明
硬件电路的设计见附图示, 从以上的分析可知在本设计中要用到如下器件: AT89C51、 热释电红外传感器、 LED、 按键、 反相器74LS04、 蜂鸣器等一些单片机外围应用电路, 以及单片机的手工复位电路等。其中D1为电源工作指示灯, D2是正常工作指示灯, D3—D6是起报警指示作用, 当RXD脚被置低电平时, D3—D6亮红灯开始报警, 同样, TXD脚置高电平时声音报警电路开始工作。电路设有2个按键, S1键作为倒计时的暂停键, S2键作为作为电路复位键。
3.4 软件的程序实现
3.4.1 主程序工作流程图
按上述工作原理和硬件结构分析可知系统主程序工作流程图如下图所示;
系统初始化
声光报警结束
检测外部有
无信号输入
声光报警是否持续10秒
开始
启动声光报警电路开始报警
是否还有检测信号等待下次报警
结束
Y
N
N
Y
Y
N
3.4.2 中断服务程序工作流程图
本主程序实现的功能是: 当单片机检测到外部热释电传感器送来的脉冲信号后, 表示有人闯入监控区, 从而经过单片机内部程序处理后, 驱动声光报警电路开始报警, 报警持续10秒钟后自动停止报警,然后程序开始循环工作, 检测是否还有下次触发信号, 等待报警从而使报警器进入连续工作状态。同时, 利用中断方式能够实现报警持续时间未到10秒时, 用手工按键停止的声光报警的作用。手工按键停止报警中断服务程序工作流程图, 如下图11所示;
中断源发出中断申请
关中断、 保护现场
INTO端有输入信号关闭报警
恢复现场、 开中断
中断返回
图11 中断服务程序工作流程图
设计编程程序
1. 主程序清单如下:
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP PINT0
ORG 0200H
MAIN: MOV IE,#81H ;CPU开放中断, INT0允许中断
SETB IT0 ;外部中断为边沿触发方式
MOV SP,#30H ;指针入口地址
SETB P3.0
CLR P3.1
MOV P1,#0FFH ;使P1口全部置1
MOV P2,#00H ;P2口清零
CLR P1.2
LP: JNB P1.0,LA ;监测输入信号, 是否有输入信号
LA: ACALL DELAY ;延时消抖
JNB P1.0,ALARM ;再次监测输入信号, 若有输入信号转入报警子程序
AJMP LP
DELAY:MOV R1,0AAH
LD2:MOV R2,0BBH
LD1:NOP
DJNZ R2,LD1
DJNZ R1,LD2
RET
ALARM:SETB P1.2 ;开始报警使运行正常绿指示灯熄灭, 红灯和声报警启动
CPL P3.0
CPL P3.1
;10S钟定时:
MOV 51H,#14H ;10S循环次数
MOV TMOD,#01H ;定时器T0定时 方式1
MOV TL0,#0B0H ;置50ms定时初值
MOV TH0,#3CH
SETB TR0 ;启动T0
L2:JBC TF0,L1 ;查询记数溢出
SJMP L2
L1:MOV TL0 #0B0H
MOV TH0 #3CH
DJNZ 51H,L2 ;未到10S继续循环
SETB P3.0 ;10s到关闭报警
CLR P3.1
CLR P1.2 ;报警结束, 正常运行绿指示灯亮
LJMP LP ;循环,继续工作
2. 外部中断INTO服务程序:
PINT0: CLR EX0 ;外部中断0服务程序开始, 屏蔽外部中断
PUSH PSW
PUSH ACC
JNB P3.2,LN ;监测是否有中断输入
LN: LCALL DELAY ;延时消抖
JNB P3.2,LN1
AJMP LN2 ;无中断输入,中断返回
LN1: SETB P3.0
CLR P3.1
CLR P1.2 ;使报警结束, 绿指示灯亮
POP ACC
POP PSW
SETB EX0 ;开放外部中断0
LCALL LP ;在中断继续检测是否有输入信号
LN2: RETI
END
展开阅读全文