室内外环境监测报警系统设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
|
太原工业学院大学生科技创新
】
室内外环境监测报警系统
设计报告
…
系部名称:电子工程系
项目名称:室内外环境监测报警系统
指导教师:陆锋
申请者:冯国栋
年级专业:11级电子信息工程
申请日期:2013年11月24日
联系电话:
;
一、项目主要内容
本项目将利用单片机与传感器等电子器件,设计一款实用方便的室内外环境监测报警系统。
设计分为两个模块,室内模块和室外模块。
室内模块主要功能是:测量室内温度和湿度、火灾监测报警、烟雾(或有害气体)监测报警;室外模块的主要功能是:测量室外温湿度。
两个模块可以通过无线(采用ZigBee)连接,单片机将收集的数据进行处理,将温度、湿度及室内外温差显示在LCD显示器上;当出现火情、有害气体泄漏时,蜂鸣器用不同频率的响声分别对各种情况进行预警。
二、项目主要创新
1.设计的室内外环境监测报警系统灵巧、简便。
2.将日常生活中需要的几种监测报警系统进行统一的整合。
最主要的是设计了温湿检测、火灾监测、烟雾及有害气体监测报警。
!
3.可以用我们设计的系统作为控制系统,外接风扇、水雾喷洒或换气系统。
根据温度变化调节风扇、根据湿度喷洒水雾或根据空气质量开关换气系统。
4.使用了ZigBee近距离无线组网通讯技术。
三、硬件电路设计
硬件电路包括室内模块和室外模块。
室内模块相当于协调器,使用了STM32和CC2530两款芯片,主要用于检测室内温湿度并显示、监测火灾、有毒气体以及报警装置、接收室外温湿信息并显示、控制继电器等。
室外模块相当与终端设备,使用CC2530芯片,主要用于检测室外或其他地方温湿参数,并把这些参数无线发射到室内模块进行显示。
下面是主要的硬件设计。
1.STM32核心板电路图
}
2530核心板电路图
&
^
3. 电源电路设计
;
是5V 转芯片
4. DS18B20电路设计
5. DHT11电路设计。
6.火灾、烟雾监测电路设计
~
烟雾、有害气体监测使用MQ_2,利用红外接受二极管监测是否有火灾发生。
LM393是一种低功率失调电压双比较器,它类似于增益不可调的运算放大器。
每个比较器有两个输入端和一个输出端,两个输入端一个称为同向输入端,一个称为反相输入端。
在比较两个电压时,任意一个输入端加一个固定电压作参考电压,另一端加一个待比较信号电压。
7.)
8.LCD 显示电路设计
9.继电器电路设计
*
10.按键电路
-
2530串口通信电路设计
\
四、…
五、部分软件设计
由于程序较长,这里提供部分程序。
1.STM32主程序部分
#include ""
#include ""
#include ""
#include ""
#include ""
%
#include ""
#include ""
#include ""
#include ""
#include ""
#include ""
#include ""
#include ""
|
#include ""
void Deal_With(u8,u8);
void Deal_Temp(u8,u8);
extern unsigned char TH, TL, RH, RL;
extern unsigned char temp[7];
extern u8 RES;
~
int main(void)
{
u8 ts = 0;
u8 fs = 1;
u8 mq = 0;
u8 ir = 0;
u8 h_norm = H_TEMP;
^
u8 l_norm = L_TEMP;
delay_init();
LED_Init();
Buzzer();
RELAY_Init();
IR_Init();
MQ_Init();
#
USART1_Configuration();
USARTx_NVIC_Configuration();
LCD_Init(0x38,0x0c,0x06,0x01);
DS18B20_WriteEEPROM();
Scan_Key_Configuration();
while(1)
{
"
DHT11_ReadData();
DS18B20_ReadTemperature();
Temp_Conversion();
Slect_Model();
mq = MQ_Scan();
ir = IR_Scan();
ts = Key_Scan();
|
switch(ts)
{
case KVALUE1 : fs = Set_LCD(ts); break;
case KVALUE2 : h_norm = Set_H_Param(ts,fs); break;
case KVALUE3 : l_norm = Set_L_Param(ts,fs); break;
case KVALUE4 : Reset_Instrument(ts); break;
default : break;
}
【
switch(fs)
{
case 0 : break;
case 1 : Display_Indoor(); break;
case 2 : Display_Outdoor_1(); break;
case 3 : Display_Outdoor_2(); break;
case 4 : Display_Set_Temp_Param(h_norm,l_norm); break;
!
default : break;
}
Deal_With(mq,ir);
Deal_Temp(h_norm,l_norm);
}
}
2530监测温度程序
}
#ifndef __DS18B20_H__
#define __DS18B20_H__
extern unsigned char Ds18b20Initial(void);
extern void Temp_test(void);
extern void Temp_Conversion(void);
extern unsigned char temp[7];
extern unsigned char tflag;。
#endif
#include ""
#include ""
#define uint unsigned int
#define uchar unsigned char
#define Ds18b20Data P0_6 成了软件编程。
分别使用了Keil和IAR 软件完成了对STM32和CC2530的软件设计,并完成了软件测试。
3.使用了Zigbee 低功耗个域网协议,实现了无线数据联网、传递。
4.结合软件和硬件进行系统测试,分别进行了火灾监测报警、烟雾监测报警、有害气体报警监测、联网收集室内外温湿度测试,
基本达到了设计要求。
通过本次创新设计,我掌握了很多知识,动手实践能力有了很大的提高,为我以后的学习、工作打下了良好的基础。