基于单片机的烟雾检测系统,毕业论文

更新时间:2024-05-02 23:25:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于单片机的烟雾检测系统

摘 要

为了早期发现和通报有害烟雾,防止和减少危害,保护人身和财产安全。烟雾报警器能给人们提前警示。随着“信息时代”的到来,传感器技术得到了显著的进步,其应用领域越来越广泛,对其需求越来越迫切,要求越来越高。本文采用MQ-7型半导体电阻式烟雾传感器和AT89C2051单片机为核心技术设计的烟雾报警器,实现了烟雾报警、报警限设置、延时报警及与上位机串口通信等功能,对烟雾检测报警的实现技术进行了的有意义的探索与研究,在有害气体监测实现方面有一定的参考价值。

关键词 烟雾 报警器 AT89C2051 传感器

I

SMOKE DETECTION SYSTEM BASED

ON SINGLE CHIP

Abstract

For early detection and notification of harmful fumes, to prevent and reduce hazards and protect life and property safety. Smoke alarm can give people advance warning. With the \age\the arrival of sensor technology has been significant progress, more and more widely its applications, its demand for more and more urgent, requiring higher and higher. In this paper, MQ-7-type semiconductor resistance type smoke sensor and AT89C2051 microcontrollers as the core technology smoke alarm designed to achieve a smoke alarm, alarm limit settings, delay alarm and serial communication with the host computer and other functions, the implementation of the smoke detection alarm Technology for a meaningful exploration and research, monitoring the achievement of the harmful gas have some reference value.

KEY WORDS smoke alarm AT89C2051 sensor

II

目录

中文摘要 ...................................................................................................................... I 英文摘要 .................................................................................................................... II 1 绪论.......................................................................................................................... 1

1.1 问题由来.................................................................................................... 1 1.2 课题现状.................................................................................................... 2 1.3 论文的主要任务...................................................................................... 2 2 系统原理概述 ....................................................................................................... 4

2.1 烟雾检测报警器的设计思路 .............................................................. 4 2.2 系统硬件组成原理 ................................................................................. 4 2.3 烟雾传感器的选择 ................................................................................. 5 2.4 运放与A/D的选择 ................................................................................. 6 2.5 单片机系统部分...................................................................................... 9

2.5.1 单片机AT89C51介绍........................................................................ 9 2.5.2 定时/计数器的结构及控制............................................................ 10 2.5.3 中断控制.......................................................................................... 11 2.5.4 单片机外围电路介绍...................................................................... 12

2.6 报警部分.................................................................................................. 13 2.7 软件系统工作流程 ............................................................................... 15

2.7.1 工作过程及程序设计...................................................................... 16

3 系统设计 .............................................................................................................. 17

3.1 系统的硬件设计.................................................................................... 17 3.2 软件设计.................................................................................................. 19

3.2.1 A/D采样双通道流程....................................................................... 19 3.2.2 报警流程设计.................................................................................. 20

4 系统的仿真.......................................................................................................... 23

4.1 A/D转换的仿真 ..................................................................................... 24 4.2 滤波及报警算法调试 .......................................................................... 25 5 设计总结 .............................................................................................................. 27

5.1 实现目标与特点.................................................................................... 27 5.2 结论及不足 ............................................................................................. 28 致 谢........................................................................................................................ 29 参考文献 ................................................................................................................... 30 附 录1 .................................................................................................................... 31 附 录2 .................................................................................................................... 32

1

1 绪论

1.1 问题由来

随着社会的发展,人们对生活质量的要求越来越高,环境污染问题对人们的危害也越来越明显。烟雾有一定的社会性,可能诱发多种疾病,多个体健康危害极大,可以引起致癌,提高心﹑脑血管疾病的发病率,引起呼吸道疾病等多种危害。为了早期的发现和通报有害的气体,防止对环境的污染和人体得危害,保卫现代化建设,防止因有害烟雾而引起的中毒、污染等事故,造成严重的经济损失,甚至危害人的生命安全。

烟雾检测报警装置是能够检测环境中的烟雾浓度并具有报警功能的仪器。该报警装置是石油化学工业、有气体泄漏可能的生产工厂及家庭防火防爆必备的仪器。烟雾报警器属于《中华人民共和国强制检定的工作计量器具目录》中第46项,它归类于物理化学计量器具。《建筑设计防火规范》(GBJ16-87)第10.3.2条明确规定:“散发可燃烟雾、可燃蒸汽的甲类厂房和场所,应设置烟雾浓度检测报警装置”。2003年12月,国家执行新的烟雾探测器标准(GB 15322-2003)《可燃烟雾探测器》,2004年10月国家颁布《可燃烟雾检测报警器规程JJG693-2004》,研究新型、性能稳定、准确监测可燃性气体,并合乎国家相关规定的报警器具有极其重要得意义。公共场所的烟雾直接影响到人们的健康[1]。2011年5月1日卫生部公布修订后的《公共场所卫生管理条例实施细则》,其中新增加了“室内公共场所禁止吸烟”等规定。这是中国为兑现世界卫生组织控烟框架公约采取的最新举动。

目前我国烟雾报警器使用十分广阔,不仅可以及时检测工厂的气体,还可以让我们及早做好防患措施。现在有许多城市铺设了煤气管道,使用人口约达二亿人,煤气发生基地及中转站也达几千家。如果这些家用燃气和煤气基地及中转站的报警率按10% 计算,烟雾检测报警器的需求量就达2000万台以上。随着全社会对防火防爆及人身安全的重视程度的提高,这个数字会继续增长。因此,研究烟雾的检测方法与研制烟雾报警器就成为传感器技术发展领域的一个重要课题。

1

1.2 课题现状

国外从20世纪30年代开始研究及开发烟雾传感器,且发展迅速,一方面是因为人们安全意识增强,对环境安全性和生活舒适性要求提高;另一方面是因为传感器市场增长受到政府安全法规的推动。据有关统计,美国1996年至2002年烟雾传感器年均增长率为27%~30%。随着传感器生产工艺水平逐步提高,传感器日益小型化、集成度不断增大,使得烟雾检测 仪器的体积也逐渐变小,提高了烟雾检测仪器的便携性,更加利于生产、运输及市场推广。

1963年5月,日本开发完成第一台接触燃烧式家用燃气泄漏报警器,次年12月其改良产品问世,改良的报警器可以检测燃气、一氧化碳等气体,可以安装在浴室或者采用集中监视。在很多国外家庭,国家强制规定必须要安装烟雾报警器,目的就是为了防止火灾的发生,本产品在火灾发生的早期一旦有烟雾发生就可感应到烟雾,同时发出85分贝的声音和发出光报警告知用户发生了火灾,应及时采取措施[2]。

我国在70年代初期开始研制烟雾报警器,生产型号多样、品种较齐全,应用范围也由单一的炼油系统扩展到几乎所有危险作业环境的各种类型报警器,产品数量也在不断增加。但主要是在引进国外先进的传感器技术和先进的生产工艺基础上,进行研究与开发形成自己的特色。近年来,在烟雾选择性和产品稳定性上也有很大进步。中国烟雾探测报警系统产业发展研究报告阐述了世界烟雾探测报警系统产业的发展历程,分析了中国烟雾探测报警系统产业发展现状与差距,开创性地提出了“新型烟雾探测报警系统产业” 及替代品产业概念,在此基础上,从四个维度即“以人为本”、“科技创新”、“环境友好”和“面向未来”准确地界定了“新型烟雾探测报警系统产业” 及替代产品的内涵。根据“新型烟雾探测报警系统产业” 及替代品的评价体系和量化指标体系,从全新的角度对中国烟雾探测报警系统产业发展进行了推演和精准预测,在此基础上,对中国的行政区划和四大都市圈的烟雾探测报警系统产业发展进行了全面的研究。

1.3 论文的主要任务

目前,我们已经学习了许多相关知识,如单片机与单片机控制电路,传感器

2

与其相关电路,D/A转换电路,A/D转换电路,放大电路设计,以及语音芯片等,已经具备对信号的采集、放大、传输控制,语音芯片的语音录制及放音控制,微控制电路的应用设计等能力,并具备一定的实践创新能力。

通过对微控制器,语音电路,烟雾传感器电路以及报警电路的整合,形成一个可靠性好稳定度高,性能优良的电路,能够实现对低浓度烟雾的有效检测,并给予语音警示的功能。如果配以精美的外壳,则可以形成一个优秀的有良好社会效益和经济效益的产品。本设计是以单片机为核心,通过烟雾传感器发出的信号对烟雾进行报警,最后通过语音报警电路报警,达到对烟雾报警的目的。

研究内容:

第一,电子语音芯片的录音和放音控制,以及音效的处理和信号的放大; 第二,烟雾检测装置的选型以及在低浓度下灵敏度域有效检测的方法与算法;

第三,控制电路的实现方式以及MCU的选型; 第四,电路的抗干扰能力和可靠性。

3

2 系统原理概述

2.1 烟雾检测报警器的设计思路

吸烟警示器是能够检测环境中的烟雾,并具有报警功能的仪器,仪器的最基本组成部分应包括:烟雾信号采集模数转换电路、单片机控制电路、录音报警电路。

烟雾信号采集电路一般由烟雾传感器和模拟放大电路组成,将烟雾信号转化为模拟的电信号。模数转换电路将从烟雾检测电路送出的模拟信号转换成单片机可识别的数字信号后送入单片机。单片机对该数字信号进行滤波处理,并对处理后的数据进行分析,是否大于或等于某个预设值(也就是报警限),如果大于则启动报警电路发出报警声音,反之则为正常状态,以上是根据报警器应具备的功能,提出的整体设计思路。

烟雾传感器及单片机是可燃烟雾检测报警器的两大核心,根据报警器功能的需要,选择合适、精确、经济的烟雾传感器及单片机芯片是至关重要的。

2.2 系统硬件组成原理

本系统由烟雾传感器、A/D转换电路、MCU控制电路、语音模块及功放电路组成。系统组成框图如图2-1所示:

LED显示图烟雾传感器放大A/D转换MCU语音芯片及语音处理电路功放电路语音输出 图2-1 系统组成框图

本系统采用的是以mq-7为传感器,以AT89C2051作为系统的主控芯片,通过语音录放电路报警的过程。

4

2.3 烟雾传感器的选择

由于本次设计的是针对公共场所的烟雾,而这些烟雾大多都含有一氧化碳,所以就选用对一氧化碳具有很高灵敏度的mq-7气体传感器[3]。

Mq-7气体传感器特点:对一氧化碳具有很高的灵敏度和良好的选择性;具有长期的使用寿命和可靠的稳定性。

传感器的表面电阻Rs,是通过与其串联的负载电阻RL上的有效电压信号VRL输出而获得的。二者之间的关系为:

Rs/RL = (Vc-VRL) / VRL (2-1)

图2-2 电压与co浓度的关系

图2-2为利用回路测得在传感器由洁净空气转移至一氧化碳气氛中时,RL上的信号输出变化情况,输出信号的测定是在一个完整的加热周期(由高电压至低电压2.5分钟)或在两个完整的加热周期内测得。

灵敏度调整:

MQ-7型气敏器件对不同种类,不同浓度的气体有不同的电阻值。 因此,在使用此类型气敏器件时,灵敏度的调整是很重要的。当精确测量时,报警点的设定应考虑温湿度的影响。

灵敏度的调整程序:

第一, 将传感器连接在应用回路中;. 第二, 接通电源,通电老化48小时以上;.

第三, 调整负载电阻RL至获得对应于某一个一氧化碳浓度时所需信号值。 MQ-7型气敏元件的敏感层是用非常稳定的二氧化锡制成的。因此,它具有

5

优秀的长期稳定性,在正常使用条件下,其使用寿命可达5年。根据MQ-7型烟雾传感器的工作原理,烟雾浓度的变化体现于其自身电阻的变化,将MQ-7与电阻串联构成分压电路。考虑到整个系统的灵敏度,通过多次调试和测试,得到MQ-7型烟雾传感器与20K电阻串联的效果较好,为了保证采样数据的稳定性和可靠性,将分压输出的电压信号经由运放LM358构成的电压跟随电路跟随输出,减小电源波动、外界因素对采样数据的影响[4]。

2.4 运放与A/D的选择

图2-3 LM358引脚图

LM358 内部包括有两个独立的、高增益、内部频率补偿的双运算放大器,适合于电源电压范围很宽的单电源使用,也适用于双电源工作模式,在推荐的工作条件下,电源电流与电源电压无关。它的使用范围包括传感放大器、直流增益模块和其他所有可用单电源供电的使用运算放大器的场合。LM358封装有塑封8引线双插式和贴片式两种。

LM358的特点: (1)内部频率补偿; (2)低输入偏流;

(3)低输入失调电压和失调电流; (4)共模输入电压范围宽,包括接地; (5)差模输入电压范围宽,等于电源电压范围; (6)直流电压增益高(约100dB); (7)单位增益频带宽(约1MHz); (8)电源电压范围宽:单电源(3—30V);

6

(9)双电源(±1.5 一±15V);

(10)低功耗电流,适合于电池供电; (11)输出电压摆幅大(0 至Vcc-1.5V)。

图2-4 LM386的管脚图

LM386是美国国家半导体公司生产的功率放大器,主要应用于低电压消费类产品。LM386是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点,广泛应用于录音机和收音机之中。LM386是美国国家半导体公司生产的音频功率放大 器,主要应用于低电压消费类产品。为使外围元件最少,电压增益内置为20。但在1脚和8脚之间增加一只外接电阻和电容,便可将电压增益调为任意值,直至200。输入端以地位参考,同时输出端被自动偏置到电源电压的一半,在6V电源电压下,它的静态功耗仅为24mW,使得LM386特别适用于电池供电的场合。LM386的封装形式有塑封8引线双列直插式和贴片式[5]。

表2-1 LM386的管脚说明

引脚序号 1 2 3 4 符号 GAIN N.F IN GND 功能 增益调整 负反馈 输入 地 引脚序号 5 6 7 8 符号 OUT VCC FC GAIN 功能 输出 电源 滤波 增益调整 A/D转换选用MCP3002,MCP3002器件提供了两种选择,可将模拟输入通道配置为2个单端输入(由VSS 提供参考电压)或一个伪差分输入对。通信配置作为串行命令的一部分在转换开始之前完成。当用于伪差分模式时,通过发送

7

给器件的命令字符串,将CH0和 CH1 通道配置为IN+和IN-输入。IN+输入的范围从IN-至参考电压VDD。IN-输入被限定在VSS满幅值± 100mV的范围内。IN-输入可用于消除IN+和IN-输入端都存在的小信号共模噪声。为了适应不同环境及不同的报警门限要求,方便使用者自定义调节,接入一个滑动变阻器,以简单而有效的实现报警门限可调功能[6]。下图2-5是MCP3002的引脚分布图:

图2-5 芯片引脚图

MCP3002各个引脚的功能如表2-2所示:

图表2-2 MCP3002引脚功能 名称 VDD CH0 CH1 CLK DIN DOUT ———功能 +2.7v至5.5v电源和参考电压输入 通道0模拟输入 通道1模拟输入 串行时钟 串行数据输入 串行数据输出 片选、关断输入 CS/SHDN

MCP3002的特性: (1)±1 LSB DNL (最大值);

(2) ±1 LSB INL (最大值); (3)模拟输入可编程为单端输入或伪差分输入对;

(4)片上采样和保持电路; (5)SPI 串行接口(模式0,0 和模式 1,1); (6)单电源供电的电压范围:2.7V 至5.5V;

8

(7)在VDD = 5V 时的最大采样速率为200 ksps; (8)在VDD = 2.7V 时的最大采样速率为75 ksps; (9)低功耗 CMOS 技术: - 5 nA 典型待机电流,最大2 μA; - 5V 时,工作电流最大为550 μA; (10)工业级温度范围:-40°C 至 +85°C;

(11)8引脚MSOP、PDIP、SOIC 和TSSOP 封装; (12)传感器接口;

(13)数据采集; (14)电池供电系统; (15)过程控制。

2.5 单片机系统部分

2.5.1 单片机AT89C51介绍

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案[7]。

图2-6 AT89C51引脚图

9

2.5.2 定时/计数器的结构及控制

定时/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。TMOD是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。定时/计数器结构如图2-7所示:

图2-7 定时/计数器结构图

AT89S51单片机定时/计数器的工作由两个特殊功能寄存器控制。TMOD用于设置其工作方式;TCON用于控制其启动和中断申请[9]。 1.工作方式寄存器TMOD

工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T0,高四位用于T1。其格式如表3-2:

表2-3 工作方式寄存器格式

位号 符号 D7 GATE D6 C/T D5 M1 D4 M0 D3 GATE D2 C/T D1 M1 D0 M0 GATE:门控位。

GATE=0时,以运行控制位TRX(X=0,1)来启动定时/计数器运行; GATA=1时,要用软件使TR0或TR1为1,同时外部中断引脚或也为高电平时,才能启动定时/计数器工作;

C/T计数器模式和定时器模式选择位:

C/T=1时,选择计数器模式,计数器对外部输入引脚T0(P3.4)或T1(P3.5)的外部脉冲计数;C/T=0时,选择定时器模式。

M1M0:工作方式设置位。定时/计数器有四种工作方式,由M1M0进行设置。

10

表2-4 工作方式及功能

M1 M0 0 0 0 1 1 0 1 1 工作方式 工作方式0 工作方式1 工作方式2 工作方式3 功能 13位计数器 16位计数器 自动再装入8位计数器 定时器0:分成两个8位计数器 定时器1:停止计数 2.控制寄存器TCON

TCON的低4位用于控制外部中断,已在前面介绍。TCON的高4位用于控制定时/计数器的启动和中断申请。其格式如下:

表2-5 控制寄存器格式

位 字节地址:88H D7 TF1 D6 TR1 D5 TF0 D4 TR0 D3 IE1 D2 IT1 D1 IE0 D0 IT0 TF1(TCON.7):

T1溢出中断请求标志位。T1计数溢出时由硬件自动置TF1为1。CPU响应中断后TF1由硬件自动清0。T1工作时,CPU可随时查询TF1的状态。所以,TF1可用作查询测试的标志。TF1也可以用软件置1或清0,同硬件置1或清0的效果一样。

TR1(TCON.6):

T1运行控制位。TR1置1时,T1开始工作;TR1置0时,T1停止工作。TR1由软件置1或清0。所以,用软件可控制定时/计数器的启动与停止。

TF0(TCON.5):

T0溢出中断请求标志位,其功能与TF1类同。 TR0(TCON.4):

T0运行控制位,其功能与TR1类同。

2.5.3 中断控制

CPU对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。

11

表2-6 中断寄存器地址控制

位 字节地址:88H 7 EA 6 5 4 ES 3 ET1 2 EX1 1 ET0 0 EX0 IE EX0(IE.0),外部中断0允许位;

ET0(IE.1),定时/计数器T0中断允许位; EX1(IE.2),外部中断0允许位; ET1(IE.3),定时/计数器T1中断允许位; ES(IE.4),串行口中断允许位;

EA (IE.7), CPU中断允许(总允许)位。

2.54 单片机外围电路介绍

AT89C51单片机的复位输入引脚RST为AT89C51提供了初始化的手段。有了它可以使程序从指定处开始执行,即从程序存储器中的0000H地址单元开始执行程序。在89C51的时钟电路工作后,只要在RST引脚上出现两个机器周期以上的高电平时,单片机内部则初始复位。只要RST保持高电平,则89C51循环复位。只有当RST由高电平变成低电平以后,89C51才从0000H地址开始执行程序[8]。

复位电路通常采用上电自动复位和按钮复位两种方式。

本系统的复位电路是采用按键复位的电路,如图2-8所示,是常用复位电路之一。单片机复位通过按动按钮产生高电平复位称手动复位。上电时,刚接通电源,电容C相当于瞬间短路,+5V立即加到RESET端,该高电平使89C51全机自动复位,这就是上电复位;若运行过程中需要程序从头执行,只需按动按钮即可。按下按钮,则直接把+5V加到了RESET端从而复位称为手动复位。复位后,P0到P3并行I/O口全为高电平,其它寄存器全部清零 。

12

图2-8 AT89C51复位电路

按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST端经电阻与电源Vcc接通而实现的。时钟频率选用6MHZ时,C取22uF,Rs取200Ω,RK取1KΩ。

2.6 报警部分

美国 ISD 公司于 2001 年最新推出一种单片 8~20 秒单段语音录放电路 ISD1810,它的基本 结构与 ISD1110、1420完全相同,采用 CMOS 技术,内含振荡器,话筒前置放大,自动增益控制,防混淆滤波器,扬声器驱动及 FLASH 阵列[9]。

一、 主要特性:

(1)使用方便的单片8至20秒语音录放;

(2)外接电阻调整录音时间,高质量,自然的语音还原技术; (3)内置喇叭驱动放大电路;

(4)边沿、电平触发放音 10000次录音周期(典型); (5)自动节电,维持电流0.5uA,3-5v单电源工作;

(6)不耗电信息保存100年(典型值) ,借助专用设备可以批量拷贝。 二、 封装形式:

现在有四种形式的封装供客户选择:

(1)通用的,硬包封双列直插 14脚的 DIP14,字符标记为 ISD1820P; (2)通用的,软包封单列直插 12脚的 COB12,字符标记为 1810COB; (3)录音喊话器及录音门铃专用的,软包封单列直插 10脚的,字符标记

13

为 VT8375;

(4)通用的,软包封双列直插 12脚的组件板 M12,字符标记为 ISD1810M。 在此选用的是第3种封装方式如下

图2-9 元件的封装

三、使用操作

电源电压3-5V,在录放模式下,按住 REC 录音按键不放即录音,RECLED 灯会亮起,录音在该组件只需外 加电池、按键、喇叭、话筒即可使用。

松开按键时停止,放音有三种情况:

1、边沿触发放音,按 PE 键一下即将全段语音放出,除非断电或语音结束不能停止放音;

2、电平触发放音,按住 PL 键时即放音,松开按键即停止;

3、循环放音,置循环放音开关闭合,按动 PE 键即开始循环放音,只能断电才能停止。

在直通模式下,直通开关闭合,对话筒说话会从喇叭里扩音播放出来,构成喊话器功能,由于该模式下的话筒放大同时经过AGC 自动增益调节和带通滤波器,其音质比通常的话筒放大器要好很多,而且不会出现喇叭过载的情况。

如果用户不需要直通模式,而且对电路的静态耗电有要求,就可以改变话筒的接入方 式,将话筒下端的偏置电阻接到 RECLED 端,这样,在平时由于 RECLED 端为高电平话筒没有电压电流,整个电路的耗电几乎为零。但这种方式下直通模式不能工作。如果用户只需要电路做放音用,可以在芯片录好音测试无误后,将芯片的 REC 端长期接低电平。取消 REC 按键,这样可以防止意外抹音

14

表2-7 工作环境

条件 工作温度 录放音电源电压 地电平 参数 0℃~+50℃ +2.7 ~+4.5V 0V 如果用户想制作变调电路,现在 ISD 芯片也可以了,原来的 ISD 系列芯片的内部时钟固定,几乎不能产生变调效果,而 ISD1820P可以方便的实现,只需要录音和放音时的外部振荡电阻不同就能改变声音的录入和播放速度,详见振荡电阻和取样率表。将 ROSC 端所接的振荡电阻改为电位器可以无级调节语音的快慢,录入的时间越短音质越好,录入的时间越长音质越差。

表2-8 录音采样

Rosc 80KΩ 100KΩ 120KΩ 160KΩ 200KΩ 录放时间 8 10 12 16 20 采样频率 8.0KHZ 6.4KHZ 5.3KHZ 4.0KHZ 3.2KHZ 典型带宽 3.4KHZ 2.6KHZ 2.3KHZ 1.7KHZ 1.3KHZ ISD1820P 的批量拷贝,可以借助 ISD1425 编程拷贝机加 ISD1820P 拷贝模块的方案。用户可以先将需要的语音编程制作在ISD2532或 ISD2560 芯片上,然后即可向 ISD1820P拷贝模块上的芯片拷贝即可,时间长度在模块上事先设定。

2.7 软件系统工作流程

在硬件设计完毕之后,接下来就是设计中最核心和最为主要的软件部分设计。所谓软件设计就是把软件需求变换成软件的具体设计方案(即模块结构)的过程。产品犹如我们人类一样,硬件系统是整个外形,软件系统则是大脑,程序犹如思维。整个系统的工作流程,保证了系统的正常运行;想要充分利用好MCU,就要将其资源按需分配,有条有理,这就需要将MCU的内存详细合理分配,各个单元各尽其责;MCU的端口分配,不仅有助于程序控制,而且对PCB制版大

15

有裨益。

2.7.1 工作过程及程序设计

本系统主要分为2个状态:烟雾浓度较低时的正常状态和烟雾浓度较高时的报警状态。

正常状态时,为了能够指示整个系统是在正常工作的,采用绿色LED指示此状态,同时考虑到功耗问题,控制绿色LED一秒钟闪烁一次,定时器T0配合工作;报警状态时,红色有警示作用,所以利用红色LED指示此状态,并使其一直亮着,同时,控制语音芯片放音,通过喇叭音频输出。定时器T0配合工作,报警状态时,若烟雾浓度一直较高,则只报警一次。10秒钟后,若烟雾浓度较低,则恢复正常状态;若烟雾浓度仍较高,则再报警。

图2-10为整个系统工作的主流程。MCU初始化完成了内存清空,端口配置,AD配置,定时、中断设置等操作;AD转换包括通道0、通道1的采样;数据处理包括报警值的滑动滤波、烟雾浓度信号的滑动滤波、有符号增量计算等一系列计算。放音和LED控制由MCU通过I/O口直接控制[10]。

START初始化MCU初始化传感器A/D转换N数据处理是否有烟?Y放音LED显示

图2-10 系统流程图

16

3 系统设计

3.1 系统的硬件设计

MCP3002的模拟输入通道CH0接入烟雾浓度信号,模拟输入通道CH1接入报警门限可调电阻。具体电路,如图3-1所示。

图3-1 传感器连接电路

语音录放电路中音频信号由J1接入麦克风,通过1K和4.7K电阻形成串联分压,以给音频信号直流偏置;将振荡电阻调整为100K,使得录放时间大致为10秒;AGC端接入22uF的电容,动态调整前置增益以补偿话筒输入电平的宽幅变化,使得录制变化很大的音量时失真都能保持最小录音时;按下开关KEY,红色LED亮,表明已进入录音状态,可以语音输入要录制的音频;放音时,按一下按键AN即可实现一次放音操作,在结束放音时红色LED会闪烁一下,表明放音结束[11]。图3-2所示:

17

图3-2 语音录放电路

为了有效地抑制共模噪声,采用双音频输入输出。通过接在1脚、8脚间的电容来改变增益,经过测试发现,接入大小为10uF的电解电容,效果较好。BYPASS引脚接大小为470u的电解电容能够起到不错的滤噪效果。输出端接入耦合电容,作用之一是隔直耦合,隔断直流电压,直流电压过大有可能会损坏喇叭线圈;耦合音频的交流信号。通过电阻和电容构成了一阶高通滤波器,输出给扬声器负载,能够起到良好的滤波效果。减小电容C14的值,可使噪声能量冲击的幅度变小、宽度变窄;但调试发现C14太低则会使截止频率提高。经反复测试发现10uF时效果较为合适。经过反复的调试,确定LM386音频功放电路设计如图3-3所示。

图3-3 音频功放电路

如此设计,明显改善了音频的输出效果,由于录音环境的较差,使得录音质量不是很好,但其放音效果已经达到预期的设计目标。

前向通道:烟雾传感器电路主要负责探测空气中CO的气体浓度,能够随着CO浓度的不同,体现出不同的变化,将变化信号转化为易于MCU处理的电压

18

信号。由于烟雾传感器的输出信号不大,经过运放比例放大电路,适当放大所得的电压信号,通过A/D转换器将模拟电压信号转换为数字电压信号,便于MCU处理。

MCU接收前向通道输入的数字信号,经过运算、处理,输出控制给后向通道(LED显示、语音芯片)等。

后向通道:语音电路,主要负责语音滤波和受控放音功能,配合功放电路,放大音频信号,输出给喇叭,实现良好的放音效果。

3.2 软件设计

系统的软件编程设计运用的是汇编语言,因为自己学过所以比较容易,汇编语言有一定的优越点,汇编语言直接同计算机的底层软件甚至硬件进行交互,它具有如下一些优点:汇编语言比机器语言易于读写、调试和修改,同时具有机器语言全部优点。但在编写复杂程序时,相对高级语言代码量较大,而且汇编语言依赖于具体的处理器体系结构,不能通用,因此不能直接在不同处理器体系结构之间移植[12]。

汇编语言的特点:

1.面向机器的低级语言,通常是为特定的计算机或系列计算机专门设计的;

2.保持了机器语言的优点,具有直接和简捷的特点;

3.可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等;

4.目标代码简短,占用内存少,执行速度快,是高效的程序设计语言; 5.经常与高级语言配合使用,应用十分广泛。

3.2.1 A/D采样双通道流程

将模拟量或连续变化的量进行量化(离散化),转换为相应的数字量的电路。 A/D变换包含三个部分:抽样、量化和编码。一般情况下,量化和编码是同时完成的。 抽样是将模拟信号在时间上离散化的过程; 量化是将模拟信号在幅度上离散化的过程; 编码是指将每个量化后的样值用一定的二进制代码来表示。

19

图3-4为AD采样双通道的流程,两个通道要轮流切换采样,且两个通道的配置数据不同。

入口是否采样通道0Y配置通道0发送N配置通道1发送数据接收出口

图3-4 AD转换流程

3.2.2 报警流程设计

在单片机测控系统中,使用之前必须进行静态标定,以得到输出信号与被测信号的关系输出曲线,用来作为使用过程中的计量依据。但是标定时输出曲线往往不是一条理想的直线,所以要对标定曲线进行线性化处理,用一条拟合直线近似代替输出曲线,线性化是智能仪表的典型功能之一[13]。报警器主要针对一氧化碳烟雾检测,在软件线性化处理时,以传感器对一氧化碳的响应曲线为依据。

本论文报警器使用的MQ-7型传感器的电阻是随着烟雾浓的升高而降低的,因此,输入单片机的电压也是随之降低的。图3-5为单片机采集电压值与烟雾浓度百分比的对应曲线,可以看出,电压值与烟雾浓度之间是非线性的关系,为了实时显示烟雾浓度.需要对其进行线性化处理。在误差许可范围内,根据标定曲线形状,以及单片机处理能力,把曲线分成若干小段,对每小段分别线性化[20]。

20

图3-5 单片机采集电压值与烟雾浓度百分比线性化曲线

在单片机进行数据采集时,会遇到数据的随机误差,随机误差是由随机干扰引起的,其特点是在相同条件下测量同一量时,其大小和符号会现无规则的变化而无法预测,但多次测量的结果符合统计规律。为克服随机干扰引起的误差,硬件上可采用滤波技术,软件上可采用软件算法实现数字滤波。滤波算法往往是系统测控算法的一个重要组成部分,实时性很强。

图3-6为滤波算法及报警判断流程,滤波算法是将每次的采集的烟雾值与这次前的32次平均值相减得到变化量,并累加变化量,将变化量累加和作为报警的判别依据。

21

入口通道0数据最新32次平均通道0采样新值与平均值相减累计减量是否达到报警值Y是否处于非报警状态Y放音操作N绿色LED灭红色LED亮N初值配置开定时器T0置报警标志出口

图3-6 滤波算法及报警判断流程

22

4 系统的仿真

时下,流行使用的模拟仿真软件有2款:伟福和Keil,二者均可以仿真51单片机。鉴于实验室有伟福仿真器,便于调试,同时在学习微控制器原理及应用课程时,专门对此软件进行过系统学习,使用起来轻车熟路。仿真器使用9 针串行口,与PC 机用两头为孔的串行电缆连接.对于一些只有USB 口而没有串口的计算机,可以使用USB转串口电缆将USB 转成串行口,串行电缆内部连接根据仿真器型号不同,逻辑测试钩插座可能只有一个[14]。

由于程序使用汇编编写的,所以在wave仿真器设置中语言栏选择伟福汇编器,具体设置如图4-1所示:

图4-1 仿真器语言设定

实验室使用的伟福仿真器型号为E6000/L,仿真头选择为POD-H8X5X,CPU选择型号为8X5X,具体设定如图4-2所示:

图4-2 仿真器的型号选择

通信设置如图4-3所示,波特率设定为115200,选择串口号,点击测试串行口,通过则证明串口端口正确,可以进行下一步的仿真调试。

23

图4-3 仿真器通信设置

图4-4为伟福软件主界面,可以进行调试单步、跟踪、全速等等调试,可以观察内存数据,设置P口,修改状态等等,操作方便。

图4-4 伟福软件主界面

4.1 A/D转换的仿真

MCP3002是双通道、标准SPI通信接口。首先,要验证两通道是否都是正常的。通道0的采样数据放在40H-7FH单元,通道1的采样数据放在25H-2DH单元。在烟雾传感器工作稳定后,通道0的采样数据基本不变;通过调节电位器,调节其阻值最小时,采样25H至2DH数据应为00H,调节其阻值最大时,采样数据应为FFH,可以验证通道0和通道1是否正常。

图4-5、图4-6分别为调节输入通道的电压为0V和电源电压时,利用伟福

24

软件仿真器测到的数据,观察图中25H至2CH单元及40H单元而后的数据,可见,两通道均正常。

图4-5 输入电压为0V时采样数据

图4-6 输入电压为电源电压时采样数据

4.2 滤波及报警算法调试

将每次的采集值与这次前的32次采样值的平均值相减得到变化量,并将此变化量累加,将其累加和作为报警的判别依据。报警门限值可直接通过滑动滤波算法进行处理。

当烟雾传感器有变化时,图4-7、图4-8分别为操作前后单片机的内存数据,观察比较两次的3CH、3DH单元数据,它们就是增量累加和,也即是报警参考依据。操作前,它们很小为全零;操作后它们变成了很大的数据,超过了报警门限2BH、2CH单元数据,可以证明此滤波算法及报警判断程序有效[15]。

25

图4-7 操作前单片机内存单元数据

图4-8 操作后单片机内存单元数据

26

附 录2

W_DAT EQU 30H W_CS EQU 31H WZ EQU 33H DZ_WZ EQU 34H

LEDCS1 EQU 39H;;;;;;1S延时

LEDCS2 EQU 3AH;;;;;;结束红灯;;;;;;;;;;;;;;;;;;;;;;;;; FHW EQU 3BH CH1_DZ EQU 32H BZ_Z BIT 00H

BZ_ZC BIT 02H ;标志,正常:为0不正常;为1正常 BZ_DD BIT 03H ;等待标志: 为0不等待;为1等待 OVER BIT 04H CH1 BIT 05H FY_W BIT 06H;放音位 R_LED BIT P3.1;;;;;;;;;;;;; G_LED BIT P3.0;;;;;;;;;;;;; YY_KZ BIT P3.5 CS BIT P1.7 CLK BIT P1.6 DI BIT P1.4 DO BIT P1.5 LATCH BIT P1.2 DI_595 BIT P1.3 CP_595 BIT P1.1 ORG 0000H LJMP MAIN ORG 000BH

32

LJMP LED_T0 ORG 0030H MAIN: LCALL QNC MOV DZ_WZ,#40H MOV CH1_DZ,#25H MOV FHW,#00H ;LCALL XS MOV TMOD,#11H MOV TH0,#3CH MOV TL0,#0B0H CLR TR0 CLR ET0 CLR EA SETB OVER SETB R_LED SETB G_LED CLR BZ_DD SETB FY_W MOV P1,#0FFH MOV P3,#0FFH CLR CH1

LCALL CGQ_CSH ;传感器初始化 CLR OVER ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SETB TR0 SETB ET0 SETB EA

MOV LEDCS1,#20 MA_1: LCALL PJ_CL;平均处理 LCALL MCP3002

33

JNB CH1,CH_8 LCALL LJ

CPL CH1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LJMP MA_1 CH_8: LCALL D_JH ;D加和 LCALL JB_PD;级别判断 ; LCALL XS ;显示 CPL CH1 LJMP MA_1

;===================================================== ;子程部分============================================= QNC: MOV R0,#20H MOV R5,#60H QNC_1: MOV @R0,#00H INC R0 DJNZ R5,QNC_1 RET

;======================================================= MCP3002:CLR EA CLR TR0 CLR ET0 SETB CS

CLR CS ;片选 CLR CLK

JB CH1,CH_1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MOV W_DAT,#0D0H;写入要发送的数据 1101 LJMP CH_11

CH_1: MOV W_DAT,#0F0H;取CH1通道的数据;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

CH_11: MOV W_CS,#04H

34

LCALL FS_SJ ;以上发送数据 ;空操作位 CLR CLK NOP

SETB CLK ;接收数据 LCALL JS_SJ ;状态复位 SETB CS CLR CLK NOP

JB OVER,MCP_3 SETB TR0 SETB ET0 SETB EA

MCP_3: JB CH1,CH_4 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MOV A,DZ_WZ ;判断是否到7FH单元 CJNE A,#80H,MCP_2 MOV DZ_WZ,#40H LJMP MCP_2

CH_4: MOV A,CH1_DZ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CJNE A,#2DH,MCP_2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MOV CH1_DZ,#25H;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MCP_2: RET

;===================================================== FS_SJ: MOV A,W_DAT MOV R2,W_CS FS_1: RLC A MOV DI,C SETB CLK

35

CLR CLK DJNZ R2,FS_1 RET

;====================================================== ;接收数据放40H开始的单元-----7FH单元,64个单元 JS_SJ: PUSH 00H MOV R3,#8

JB CH1,CH_2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MOV R0,DZ_WZ ;给首址 LJMP CH_22

CH_2: MOV R0,CH1_DZ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CH_22: MOV A,@R0 CLR CLK SETB CLK MOV C,DO RLC A CLR CLK SETB CLK MOV C,DO RLC A ANL A,#02H

MOV @R0,A ;以上接收高2位 ;

MOV 23H,A

INC R0 ;指向下一个,存储单元 JS_1: CLR CLK SETB CLK MOV C,DO RLC A DJNZ R3,JS_1

36

本文来源:https://www.bwwdw.com/article/qkmg.html

Top