018 单片机控制的便携式瓦斯检测仪
                    联系方式 Email: lw510@qq.com      QQ: 497053418       MSN: lw510@qq.com
以下仅为该设计的基本说明介绍,若需要完整的设计和论文,建议您购买本设计.
018 单片机控制的便携式瓦斯检测仪样本
(样本只提供该系统的基本情况介绍,若需要完整的设计和论文,建议您购买本系统,凡是购买本站系统的,本站均根据您的要求,把系统上的开发信息,题目等修改成符合您的要求)
 

本系统开发工具:单片机/汇编
本设计包含内容:源代码+毕业论文+开题报告+答辩稿
论文大概:
 
 
 
 

摘  要
我国的煤炭年产量已超过19亿吨,在一次能源消费构成中,煤炭占到70%以上,是世界上最大的煤炭生产国和消费国,也是世界上受瓦斯危害最严重的国家。瓦斯是煤矿生产中的有害气体,它严重地威胁着矿工生命和国家财产的安全。为了防止瓦斯爆炸事故,人们使用了多种监测方法和监测仪器。随着国家对瓦斯治理的重视,煤矿安全方面的投入在不断加大。更迫切需要一种能连续,自动检测瓦斯的仪器。本课题设计的单片机控制的便携式瓦斯检测仪将空气中的瓦斯浓度转换为电信号,再经AD转换器,将模拟信号转为数字信号,用微处理器处理后,用4位七段LED数码管显示浓度数值。当空气中瓦斯浓度超限后有声光报警功能。本课题设计的单片机控制的便携式瓦斯检测仪有电源监控功能,实时监控仪表内部电源,当电源电压低于阈值时发出报警,提醒使用人员及时更换电池,并且外部有复位按钮,可是系统安全可靠。本课题所设计的瓦斯检测仪,针对便携的特点,内部芯片全采用贴片式封装,体积小,功耗低,测值报警准确,便于工作人员的携带,特别是在矿井下流动的工作人员随身携带。
关键字:单片机控制,便携式,报警,LED

  
 
 
 
 
 
 
 
 
Abstract
  The production of coal in china has reached 1.9 billion ton.70%of all the energy is coal. China is the biggest coal producer and consumer. Also china has many gas accidents. Gas is harmful in the mining activities. People use monitors to prevent gas accidents. We need auto gas monitors which could provide continuous protection. The single chip  controlled Portable gas monitor in this article could change the concentration of the gas into electric signals, and then through the AD converter the analog signals convert to the digital signals. After the dealing with the digital signals by the microcontroller , LED displays the concentration data.
When the gas concentration exceed the limit, the portable gas monitor alarms by sound and light. The single chip  controlled Portable gas monitor in this article, aimed at the feature of portable, all the chip used the CMOS chip ,and SMT package, so the cubage is small and lost-cost. It is convenient to use for the miner.
Keyword: single chip control, portable type, alarm
 
 
 
 
 
 
 
 

目  录
1.绪论………………………………………………………………………………1
1.1 瓦斯检测仪综述 …………………………………………………………1
1.2 单片机控制的便携式瓦斯检测仪的技术要求 …………………………2
1.2.1 AD采集瓦斯传感器信号 …………………………………………2
1.2.2 瓦斯浓度LED显示…………………………………………………2
1.2.3 瓦斯检测仪的声光报警功能………………………………………2
1.2.4电源监控以及复位功能 ……………………………………………2
1.2.5 外部扩展SRAM,用于数据存储及计算……………………………2
2.单片机控制的便携式瓦斯监测仪设计…………………………………………3
2.1 单片机控制的便携式瓦斯检测仪的系统原理框图 ……………………3
2.2  核心处理芯片,增强型P87CL54单片机………………………………3
2.2.1单片机介绍 …………………………………………………………3
2.2.2 单片机的特点………………………………………………………3
2.3 A/D数据采集以及软件滤波模块设计……………………………………4
2.3.1 A/D采集 ……………………………………………………………4
2.3.2 数字滤波 ……………………………………………………………8
2.4 LED显示瓦斯浓度模块设计………………………………………………13
2.4.1 4位LED数码管串行动态显示原理 ………………………………13
2.4.2 4位LED数码管串行动态显示与单片机硬件接口…………………14
2.4.3 串行接口方式下,LED动态显示子程序……………………………15
2.5  声光报警模块设计 ………………………………………………………17
2.5.1发光二极管声音报警驱动电路 ……………………………………17
2.5.2报警子程序 …………………………………………………………18
2.6 电源监控以及复位…………………………………………………………19
2.6.1 电源监控复位芯片MAX708介绍……………………………………20
2.6.2 MA708与单片机硬件接口……………………………………………20
2.6.3 电压不足报警程序设计 ……………………………………………21
2.7单片机扩展SRAM ……………………………………………………………21
2.7.1单片机与外RAM128硬件连接………………………………………22
2.7.2单片机与外RAM的读写程序 ………………………………………22
2.8 单片机抗干扰设计 …………………………………………………………22
2.8.1 硬件抗干扰设计 ……………………………………………………22
2.8.2单片机软件抗干扰 …………………………………………………25
3.完整程序…………………………………………………………………………27
结束语 ………………………………………………………………………………42
致谢 …………………………………………………………………………………43
参考文献 ……………………………………………………………………………44

1.  绪  论
1.1 瓦斯检测仪综述
我国的煤炭年产量已超过19亿吨,在一次能源消费构成中,煤炭占到70%以上,是世界上最大的煤炭生产国和消费国,也是世界上受瓦斯危害最严重的国家。瓦斯是煤矿生产中的有害气体,它严重地威胁着矿工生命和国家财产的安全。2004年10月河南大平煤矿发生特大瓦斯爆炸事故,147名矿工遇难;11月,陕西陈家山煤矿发生特大瓦斯爆炸事故,166名矿工遇难;最大的瓦斯矿难则是2005年2月14日辽宁阜新矿业集团公司孙家湾煤矿发生的特大瓦斯爆炸事故,214名矿工死亡;最近的一次瓦斯大矿难发生在今年7月13日的新疆阜康神龙煤矿,有83名矿工遇难……矿难震惊国人。2002年至今年8月,全国煤矿发生特大事故29起,死亡1743人。其中,瓦斯爆炸事故24起,死亡1579人,事故起数和死亡人数分别占83%和91%,呈居高不下的有增无减态势。据统计,新中国成立以来,全国煤矿共发生一次死亡百人以上的矿难19起。其中瓦斯矿难15起,占79%。
瓦斯灾害主要表现为瓦斯突出形成的爆炸事故。与其他国家相比,我国煤矿开采的煤层大多属于石灰岩二迭纪的煤层。这个时期煤层的特点就是瓦斯含量大、煤层透气性低,在开采前抽放瓦斯很不容易。因而我国煤矿高瓦斯矿井占多数。这种高瓦斯矿井的地质构造复杂,断层多,地应力大,煤层受到搓揉破坏严重,在采掘中,瓦斯容易放散,在一定的条件下会产生煤尘和瓦斯的突然喷出现象,极易形成瓦斯爆炸事故。再加之我国的煤炭多是地下开采,更增加了瓦斯治理的难度。
自2004年下半年我国煤矿瓦斯治理攻坚战全面展开以来,取得了很好的成绩,如煤矿监测、监控系统目前已达国际先进水平,安全监控的管理环节已基本成熟,安全资金也大幅增加。但为什么瓦斯导致的矿难仍然有增无减?在调查中我们发现,一个重要原因是瓦斯治理装备的科技含量仍然不高,必要的技术装备还没到位,这是当前煤矿瓦斯事故多发势头尚未得到遏制的重要原因之一。
为了防止瓦斯爆炸事故,人们使用了多种监测方法和监测仪器。但这些仪器有的安装在一个固定点,有的配备有专职检查员,只能进行定点定时检测,它的检测范围和时间往往受到检测人员的限制,而且一旦出现故障,直接危害井下人员的安全。在高浓度瓦斯矿井与综合机械化采煤工作面,更迫切需要一种能连续,自动检测瓦斯的仪器。
单片机控制的便携式瓦斯检测仪,它是集瓦斯检测与瓦斯检测报警器于一体,体积效,功耗低,可由井下流动工作人员随身携带,使用方便,随时检测并显示瓦斯浓度,当瓦斯浓度超限时,自动声光报警并发出报警,提醒人员及时撤离。
1.2 单片机控制的便携式瓦斯检测仪的技术要求
单片机控制的便携式瓦斯检测仪用于煤矿井下采掘,通风、维修等作业场使用,连续检测环境中瓦斯浓度;体积小,功耗低,使用方便,可供安全检测、生产管理人员携带流动检测使用。当瓦斯浓度超限时,自动声光报警。
主要要实现以下几个功能:
1.2.1 AD采集瓦斯传感器信号
使用A/D转换器,将瓦斯传感器的电流信号转换为单片机可接受的数字信号,并采用软件数字滤波对采集来的瓦斯浓度数字信息进行处理。
1.2.2 瓦斯浓度LED显示
采用4位七段LED数码管显示实时浓度值,整数位3位,小数位1位。
1.2.3 瓦斯检测仪的声光报警功能
当瓦斯浓度值超过限定值时,发出声光报警,报警灯闪烁,蜂鸣器响。
1.2.4 仪表工作电源实时监控以及复位功能
当仪表工作电压低于所设定的阈值时,仪表能发出电源欠压报警,仪表面板上有复位按钮,当程序跑飞或锁死需要外部干涉时,按一下手动复位按钮能使系统重新工作。
1.2.5 外部扩展SRAM,用于数据存储及计算。
 
 
 
 
2.  单片机控制的便携式瓦斯监测仪设计
2.1 单片机控制的便携式瓦斯检测仪的系统原理框图
单片机控制的便携式瓦斯检测仪的系统原理框图如图1所示:
 
图1 系统原理框图
2.2  核心处理芯片,增强型P87CL54单片机
2.2.1单片机介绍
增强型P87CL54单片机是由Philips公司生产的,具有256字节RAM,32个I/O口,3个16位定时器/计数器,一个6中断源,4优先级嵌套中断结构,一个串行口(可用作多机通讯,I/O扩展,全双工UART和片内振荡器及时钟电路)。
此外,芯片的低静态功耗设计提供非常宽的操作频率,可低至零。可实现两个由软件选择的节电模式——空闲模式和掉电模式。空闲模式冻结CPU,但RAM,定时器,串口和中断系统仍然工作。掉电模式保存RAM的内容,但是冻结振荡器,导致所有其他的片内功能停止工作。由于设计是静态的,所以时钟可停止而不会丢失用户数据。运行可从时钟停止处恢复。
2.2.2 单片机的特点
P87CL54单片机的主要特点有:
2.2.2.1 核心处理单元
 布尔处理器;
 全静态操作;
 256字节RAM;
 16KB OTP;
 多种封装形式,除常规的DIP/PLCC/QFP之外,还有TSSOP38超薄、超小型封装;
 低电压操作 1.8~3.3V
2.21.2.2 12时钟操作,可选6时钟。
2.2.2.3 多种低功耗电源控制模式
 时钟可停止和恢复;
 空闲模式;
 掉电模式。
2.2.2.4 兼容CMOS和TTL电平。
2.2.2.5 5V式有两个工作频率范围;
 6时钟模式时为0~33MHz;
 12时钟模式时为0~30 MHz。
2.2.2.6 扩展温度范围。
2.2.2.7 双数据指针。
2.2.2.8 重保密级别。
2.2.2.9 全双工UART:
 帧数据错误检测;
 自动地址识别。
2.2.2.10  异步端口复位。
2.2.2.11  可编程时钟输出。
2.2.2.12  6个中断源,4个中断优先级和4个8位I/O口。
2.2.2.13  3个16位定时器/计数器:T0,T1和增加的T2(捕获和比较)。
2.2.2.14  低EMI(禁止ALE),掉电模式可通过外部中断唤醒。
2. 3  A/D数据采集以及软件滤波模块设计
瓦斯传感器输出的信号为模拟信号,必须经过模数转换,才能用单片机进行数据处理和控制。
2.3.1 A/D数字采集
2.3.1.1 带仪器放大器的A/D转换器AD670介绍
一般的被测信号如温度,压力,流量等。在输入到普通的A/D转换器之前,首先要经过变送器的转换,将传感器输出的信号编程0~5V的统一电信号,然后才能与A/D转换器进行接口。这在一般的过程控制中是完全可行的。但是在智能化仪表中这种结构将显得比较复杂,特别是一些便携式的现场测试仪表更是如此。AD670则满足了这种要求,片内带有仪器放大器。
AD670是一个完整的8位逐次逼近型A/D转换器,它由集成在片内的前级仪器放大器,D/A转换器、比较器、逐次逼近型寄存器(SAR)、精密电压基准和一个三态输出缓冲器组成。
AD670的应用非常便利,因为它所有的元件都被集成在芯片内部,且出厂时以及校准,用户可直接采用。
AD670引脚说明见表1:
表1 AD670引脚说明
R/-W(引脚13) -CS(引脚14) -CE(引脚15) 操作
0 0 0 启动A/D转换
1 0 0 读A/D输出数据
× × 1 无
× 1 × 无
STATUS(引脚9)=1时,表示正在转换;
STATUS(引脚9)=0时,表示转换已经完成。
BPO/-UPO(引脚11)在单极性输入接法时应接地;
-RORMAT(引脚12)作为单极性及双极性信号选择输入方式;具体单极性,双极性连接方式详见Protel原理图。
2.3.1.2 AD与单片机的硬件连接
单片机的P1.0与AD670的R/-W相连,用来启动和读控制A/D转换器;
单片机的P2.7与AD670的-CS相连,用于片选AD670;
单片机的外部中断0:-INT0与AD670的STATUS相连,当AD670转换完成后以中断方式通知单片机;
单片机的P0口与AD670的DB0~DB7一一相连,用于读取AD670转换数据。
AD670与单片机的硬件连接示意图如图2所示:

图2  AD670与单片机硬件接口连接图
2.3.1.3 A/D采集的软件编程
根据需要,设定采样频率为16Hz。定时器定时为0.062秒。当AD采集时间到即定时器时间到时,启动AD转换,并等待转换完成,读取AD转换结果,将数据存入外部RAM。
A/D采集子程序流程图如图3所示
 
图3 A/D采集子程序流程图
程序说明:
定时器选用定时器0,工作方式1,单片机外部晶体振荡器频率为12MHz,工作使用12分频。定时0.0625秒,可计算定时器初值为:
(216-初值)×10-6=0.0625
定时器初值=3036=0BDCH;
在定时器0中断复位程序中,启动A/D采集
A/D数据转换完后,通过外部中断0通知单片机,在外部中断0的中断服务中置位读A/D数据标志:RDAD_FLAG。
T0_INITIAL:  MOV  TMOD,#01H         ; 定时器初始化,定时器0工作方式1
             MOV  TH0,#0BH
             MOV  TL0,#0DCH           ;
             SETB  TR0                 ;启动定时器0
             SETB  ET0                 ;允许定时器0中断
             SETB  EX0                 ;允许外部中断0
             CLR   IT0                 ;外部中断0低电平有效
             SETB  EA                 ;开放总中断
AD_DATA:    JBC    RDAD_FLAG,AD_RD
            AJMP  AD_DATA
AD_RD:      SETB  R_W
MOV   DPTR ,#AD_ADDRESS  ;AD地址
            MOVX  A , @DPTR           ;读入AD转换数据
              MOV   DPTR,#RAM_ADDRESS  ;外部RAM地址
              MOV   @DPTR,A             ;数据存入外RAM
              LCALL  FSAV                ;调数据处理子程序
              LJMP   AD_DATA            ;循环采集数据
T0_INT:       PUSH     DPH               ;定时器0中断服务程序
              PUSH     DPL
              PUSH     PSW
              PUSH     ACC
              MOV     TH0,#0BH
              MOV     TL0,#0DCH 
              CLR      R_W               ;启动A/D转换
              POP      ACC
              POP      PSW
              POP      DPL
              POP      DPH
              RETI
INT0_INT:     PUSH     DPH               ;外部0中断服务程序
              PUSH     DPL
              PUSH     PSW
              PUSH     ACC
              SETB     RDAD_FLAG       ;置位A/D转换完毕标志位
              POP      ACC
              POP      PSW
              POP      DPL
              POP      DPH
              RETI
2.3.2 数字滤波
2.3.2.1 数字滤波原理
考虑到实时性,数字滤波采用的是滑动平均值法。采用队列作为测量数据存储器,队列长度固定为N(本设计采用16),每进行一次新的测量,把测量结果放入队尾,而扔掉原来队首的数据。这样在队列中始终有N个“最新”的数据。计算平均值时,只要把队列中的N个数据进行算术平均,即可得到新的算术平均值。这样每进行一次测量,就可计算得到一个新的算术平均值。
2.3.2.2 数字滤波程序设计
程序说明:程序采用浮点数,在A/D采样完后,将A/D采集的数据转换为浮点数。然后进行数字滤波。
调用读取RAM子程序,输入最新采集的数据,放入单片机的工作寄存器区R6(阶)R2R3中,然后把它放入外部RAM2000~202FH的队列中(队列长16,队尾指针为R7FH),最后计算队列中16个数据的算术平均值,结果存放到(R1)指向的三字节内部RAM中。
本程序使用的外部RAM2000H~202FH的循环队列,它的队尾指针尾R7F,值为015,初始时,循环队列中各元素均为0,指针也为0。插入一个新数据后,指针加1,当指针值等于16时,重新调整为0。累加时,最新的一个数据已在工作寄存器中,故只需要累加15次。在把累加和除以16时,采用阶码减4的方法,以加快程序运行速度。
滑动平均值法子程序如下:
FSAV:  LCALL   RD_NEW_DATA        ;调用读取新数据子程序
       MOV     A,7FH                 ;队尾指针
       MOV     B,#3
       MUL     AB
       MOV   DPTR,#2000H          ;队首指针
       ADD   A,DPL                 ;计算队尾地址
       MOV   DPL,A
       MOV   A,R6                 
       MOVX  @DPTR,A
       INC    DPTR
       MOV   A,R2
       MOVX  @DPTR,A
       INC     DPTR
       MOV    A,R3
       MOVX   @DPTR,A
       MOV    A,7FH              ;调整队尾指针
       INC     A
       CJNE    A,#16,FSA1
       CLR     A
FSA1: MOV    7FH,A
      MOV    R0,#15
      INC     DPTR
FSA2: MOV    A,DPL
      CJNE    A,#30H,FSA3
      MOV    DPL,#0               ;循环
FSA3: MOV    A,@DPTR
      MOV    R7,A
      INC      DPTR
      MOVX   A,@DPTR
      MOV    R4,A
      INC     DPTR
      MOVX  A,@DPTR
      MOV    R5,A
      INC     DPTR
      CLR    3AH                ;执行加法
      LCALL  FABP               ;浮点数加法
      MOV    A,R4
      MOV    R6,A
      DJNZ    R0,FSA2
      MOV    C,A.7
      DEC    A
      DEC    A
      DEC    A
      DEC    A
      MOV   A.7,C
      MOV   R4,A
LCALL  FSTR        ;调存放浮点数子程序
RET
FABP:MOV   A,R6          ;浮点数加减法处理子程序
     MOV   C,A.7
     MOV   38H,C
     XRL   A,R7
     JNB   A.7,FA1
     CPL  3AH
FA1:MOV   A,R6
MOV   C,A.6
MOV   A.7,C
MOV   R6,A
MOV   A,R7
MOV   C,A.6
MOV   A.7,C
MOV   R7,A
CLR   C
MOV   A,R6
SUBB  A,R7
JZ    FA2
CLR   F0
CLR   39H
JB    A.7,FA5
CJNET  R4,#0,FA6
CJNE   R5,#0,FA6
FA2:JB  3AH,FA8
MOV  A,R3
ADD  A,R5
MOV  R3,A
MOV  A,R2
ADDC A,R4
MOV  R2,A
JNC  FA4
SETB  39H
CLR  C
FA3: CLR  F0
     LCALL  FSDT
FA4:CJNE  R2,#0,FAA
CJNE  R3,#0,FAA
MOV   R4,#41H
RET
FAA:MOV  A,R6
   MOV  C,38H
   MOV  A.7,C
   XCH  A,R4
   MOV  R6,A
   RET
FA5:CJNE  R2,#0,FA7
CJNE  R3,#0,FA7
MOV   A,R7
MOV   R6,A
SJMP  FA2
FA6:CPL   F0
FA7:CLR   C
LCALL  FSDT
SJMP   FA1
FA8:MOV  A,R3
CLR  C
SUBB  A,R5
MOV   R3,A
MOV   A,R2
SUBB  A,R4
MOV   R2,A
JNC   FA9
CLR   A
CLR   C
SUBB  A,R3
MOV   R3,A
CLR   A
SUBB  A,R2
MOV   R2,A
CPL   38H
FA9:SETB   C
   SJMP   FA3
FSDT:JC   FS2                  ;通用规格化子程序
     MOV  C,39H
   JB  F0,FS1
   MOV  A,R2
   RRC  A
   MOV  R2,A
   MOV  A,R3
   RRC  A
   MOV  R3,A
   INC  R6
   RET
FS1:MOV  A,R4
RRC  A
MOV  R4,A
MOV  A,R5
RRC  A
MOV  R5,A
INC  R7
RET
FS2:MOV  A,R2
JNZ  FS4
CJNE  R3,#0,FS5
MOV   R6,#41H
FS3:RET
FS4:JB A.7,FS3
FS5:MOV  C,F0
MOV  A,R3
RLC  A
MOV  R3,A
MOV  A,R2
RLC  A
MOV  R2,A
CLR  F0
DEC  R6
SJMP  FS2

FSTR:MOV  A,R4    ;三字节浮点数存放在(R1)指向单元中
     MOV  @R1,A
     INC  R1
     MOV  A,R2
     MOV  @R1,A
     INC  R1
     MOV  A,R3
     MOV  @R1,A
     DEC  R1
     DEC  R1
     RET
2. 4  LED显示瓦斯浓度模块设计
在矿井下,光线不足,所以采用LED显示,比液晶显示更清楚,明亮。本设计采用4位七段LED数码管显示,3位为整数,最后1位为小数部分,采用动态循环显示。为节约单片机的I/O端口,使用串行接口和串并转换电路输出要显示的数字代码。
2.4.1  4位LED数码管串行动态显示原理
4位LED数码管若将各位从左至右由位选信号依次进行显示,每个数码管连续显示1ms,显示完最后一位数后,再重复上述过程,这样,人们看到的就毫像4位数同时显示的一样。
段码与字形的对应关系(共阳)如表2所示
表2  段码与字形的对应关系(共阳)
字形 D7 D6 D5 D4 D3 D2 D1 D0 段码
 dp g f e d c b a 
0 1 1 0 0 0 0 0 0 0C0H
1 1 1 1 1 1 0 0 1 0F9H
2 1 0 1 0 0 1 0 0 0A4H
3 1 0 1 1 0 0 0 0 0B0H
4 1 0 0 1 1 0 0 1 99H
5 1 0 0 1 0 0 1 0 92H
6 1 0 0 0 0 0 1 0 82H
7 1 1 1 1 1 0 0 0 0F8H
8 1 0 0 0 0 0 0 0 80H
9 1 0 0 1 0 0 0 0 90H
使用单片机的P3.1作串口数据线SDA,P3.0作为时钟信号线CLK。
LED动态显示原理:
首先以串行方式由SDA口向LED显示器数据端口发送第1个8位数据,位选数据由P1.4~P1.7决定。先使P1.7为低电平,其他为高电平,这样LED1显示数据,同样使其对应的位码为低电平且保证其他位为高电平。依此类推,对各显示器进行扫描,显示器轮流工作。虽然每次只有一个显示器显示,但由于人的视觉暂留现象,仍会感觉所有的显示都在同时的显示。动态显示电路的优点是:硬件电路简单,占用较少的I/O口,但其传输的速度较慢。
2.4.2  4位LED数码管串行动态显示与单片机硬件接口
4位LED数码管串行动态显示与单片机硬件连接示意图如图4所示,详细接口电路图见Protel原理图。
P1.4~P1.7的驱动能力有限,采用9012三极管提高其驱动能力,
 
图4 LED数码管串行动态显示与单片机硬件连接示意图
2.4.3  串行接口方式下,LED动态显示子程序
动态显示程序流程图如图5所示
 
图5  动态显示程序流程图
018 单片机控制的便携式瓦斯检测仪
 

关闭窗口

与本站联系的时候,为了提高效率,请告诉本站您需要的设计编号与题目。如:001VBAC人事管理系统
编码说明:001VBAC人事管理系统,其中001VBAC 为该毕业设计的编号,VB代表开发语言,AC代表数据库(ACCESS)
版权所有:510计算机论文网:http://www.lw510.com/程序制作:510论文
Email: LW510@QQ.COM  QQ: 497053418   MSN: LW510@QQ.COM