可燃气体传感器应用开发
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
value = ADCL >> 2;
value |= (ADCH << 6)>> 2;
//取得最终转化结果,存入value中
return value;
//返回有效值
}
15:16 / 15
项目思考
可燃气体传感器的工作原理? 项目中需要控制哪些因素?
15:16 / 16
项目分析
燃气报警器内部硬件构造一般由单片机, 气体传感器,蜂鸣器,LED灯与电源相 关模块组成。
本项目设计中主要是掌握气体传感器的 使用,硬件结构主要由CC2530单片机、 气体传感器组成。
CC2530
MP4气体传感器
串口通信
15:16 / 11
项目硬件图
安防类传感器板与可燃气体传感器原理图
对被测气体以外的共存气体或物质不敏感;
性能稳定、重复性好; 动态特性好、反应迅速; 使用、维护方便,价格便宜。
15:16 / 5
气体传感器的主要特性
稳定性
• 稳定性是指传感器在整个工作时间内基本响应的稳定性,取决于零点漂移 和区间漂移。
灵敏度
• 灵敏度是指传感器输出变化量与被测输入变化量之比,主要依赖于传感器 结构所使用的技术。
面向物联网的传感器应用开发技术
3-2 可燃气体传感器应用开发
目录 Contents
项目场景说明 气体传感器介绍 MP-4可燃气体传感器 项目实践
Education Solutions
Internet+
项目场景
可燃性气体在给我们带来极大便利的同 时,也存在巨大隐患。由于管道设备的 老化,地理、气候条件等等各种因素的 影响以及人为的破坏,经常会造成泄漏 事故。因此,采用可靠的燃气报警装置, 严密监测室内环境中可燃性气体的浓度, 及早发现事故隐患,采取有效措施,避 免事故发生,才能确保家庭生活安全。
选择性
• 选择性也被称为交叉灵敏度。可以通过测量由某一种浓度的干扰气体所产 生的传感器响应来确定。
抗腐蚀性
• 抗腐蚀性是指传感器暴露于高体积分数目标气体中的能力。
15:16 / 6
气体传感器的选择
根据测量对象与 测量环境
灵敏度的选择
响应特性 (反应时间)
线性范围
15:16 / 7
MP-4可燃气体传感器
15:16 / 3
任务目标
电子产品公司要开发一款家用燃气检测设备,需要使用MP-4燃气检 测传感器,对厨房燃气是否泄露进行监测。
15:16 / 4
气体传感器介绍
气体传感器是一种把气体(多数为空气)中的特定成分检测出来,并将 其转换为电信号的器件。
气体传感器的性能必须满足下列条件:
能够检测并及时给出报警、显示与控制信号;
15:16 / 12
可燃气体报警程序逻辑
开始 定义存储变量, 串口发送数组 初始化系统时钟
初始化LED
初始化传感器
初始化串口
获取可燃气体状态 将状态字符写入 到缓冲数组中
打印到串口
延时1s
15:16 / 13
项目实现
气体模块初始化
void combustiblegas_init(void) { APCFG |= 0x20; P0SEL |= 0x20; P0DIR &= ~0x20; ADCCON3 = 0xB5; ADCCON1 |= 0x30; }
百度文库
//模拟 I/O 使能 //端口0_5 功能选择外设功能 //设置输入模式 //选择AVDD5为参考电压;12分辨率;P0_5 ADC //选择ADC的启动模式为手动
15:16 / 14
项目实现
气体模块采集数据
unsigned int get_combustiblegas_data(void)
{
传感器使用中避免的情况
暴露于有机硅蒸气中 高腐蚀性的环境 碱、碱金属盐、卤素的污染 接触到水 结冰 施加电压过高
传感器MP4内部结构
15:16 / 9
目录 Contents
项目场景说明 气体传感器介绍 MP-4可燃气体传感器 项目实践
Education Solutions
Internet+
MP-4型可燃气体传感器采用平面半导体气敏元件,当有被检测气体存在 时,空气中该气体的浓度越高,传感器的电导率就越高。使用简单的电 路即可将这种电导率的变化转换为与气体浓度对应的输出信号。
主要用于家庭、工厂、商业用所的可燃气体泄漏监测装置,防火/安全探 测系统。可燃气体泄漏报警器,气体检漏仪。
15:16 / 8
unsigned int value;
ADCCON3 = 0xB5;
//选择AVDD5为参考电压;12分辨率;P0_5 ADC
ADCCON1 |= 0x30;
//选择ADC的启动模式为手动
ADCCON1 |= 0x40;
//启动AD转化
while(!(ADCCON1 & 0x80));
//等待ADC转化结束