APP下载

基于STM32的多气体检测系统设计*

2016-04-20郎宝华蔡莉媛

计算机与数字工程 2016年3期
关键词:检测仪串口气体

郎宝华 蔡莉媛

(西安工业大学电子信息工程学院 西安 710021)



基于STM32的多气体检测系统设计*

郎宝华蔡莉媛

(西安工业大学电子信息工程学院西安710021)

摘要大多数气体检测仪都具有价格高、体积大、检测气体单一、准确度低等缺点,为了克服这些缺点,设计了一种以STM32F103RCT6微处理器为核心的便携式多气体浓度检测仪。论文介绍了检测仪的工作原理,硬件电路以及软件的设计。试验结果表明,检测仪精度高、速度快。

关键词气体检测仪; STM32F103RCT6; 便携式; 硬件电路; 软件设计

Design of Multi Gas Detection System Based on STM32

LANG BaohuaCAI Liyuan

(College of Electronic and Information Engineering, Xi’an Technological University, Xi’an710021)

AbstractMost of the gas detector has the shortcomings of high price, large volume, gas detection single, accuracy shortcomings, in order to overcome these shortcomings a multi gas concentration detecting instrument with stm32f103rct6 microprocessor as the core of the portable is designed. The working principle,hardware circuit and software design of the detector are introduced in this paper. Test results show that the accuracy and speed of the detector are high.

Key Wordsgas detector, STM32F103RCT6, portable, hardware circuit, software design

Class NumberTP29

1引言

科学技术的快速发展也使环境污染日趋严重,人类赖以生存的大气质量正在不断地恶化,环境问题已经上升为全球性问题。然而当今危害环境和人类身体健康的主要污染物之一就是工业排放的气体。工业化大发展,尤其是重工业的发展、化石燃料的燃烧,都伴随着大量污染性气体的排出,给人类造成的健康问题也是不言而喻的,越来越多的人们已经认识到问题的严重性,加强检测、净化空气势在必行。

2系统工作原理

本系统能够在混合气体中同时检测五种气体的浓度(氧气、二氧化硫、二氧化氮、一氧化氮和一氧化碳)。首先,被测混合气体经皮托管泵吸式进入仪器,与相应气体传感器进行充分接触后,检测到的气体浓度信号经传感器内部化学反应,产生与气体浓度呈线性的微弱电流信号[1],经过信号调理电路处理后把电流转换成电压并经滤波、放大得出与STM32F103中ADC匹配的电压值,送入STM32F103的ADC进行数据处理,然后通过LCD显示,同时还可以利用RS232串口通信方式将检测结果传送到PC机进行后期分析。

3系统设计方案

系统采用模块化的设计思想,由气体信号采集与调理模块、STM32F103最小系统模块、键盘输入模块、显示模块、串口通讯模块五部分组成。系统总体结构图如图1所示。

图1 系统总体结构图

3.1系统硬件设计

3.1.1电源模块

图2 电源电路

本设计中STM32F103RCT6需要3.3V电压,集成运放采用±5V进行双电源供电,NO信号采集与调理模块需要-5V来设置偏压。综上所述本设计所需电源为3.3V和±5V电源电路如图2所示。

3.1.2信号采集与调理模块

电化学传感器既能满足一般检测中对灵敏度和准确性的需要,又具有体积小、操作简单、携带方便、可用于现场监测且具有价格低廉等优点。故本设计传感器选择城市技术公司生产的5系列电化学式气体传感器,具体型号为:O2(5FO),SO2(5SF/F),NO2(5ND),NO(5NF),CO(A5F)。

气体信号采集模块的设计根据气体传感器的技术手册,由五种气体浓度传感器以及为保证传感器正常工作的外围电路组成[2],它们将气体在空气中的含量(即浓度)转化为与之呈线性关系的电流信号。调理模块则将采集模块得到的电流信号转换成能与主控芯片匹配的电压信号(0~3.3V)。

3.1.3STM32F103最小系统模块

系统采用基于Cortex-M3核心的STM32F103RCT6作为主控芯片,最高工作频率72MHz,内含256KB的FLASH、48KB的SRAM以及丰富的I/O端口,此处理器高度集成很大程度上简化了外围电路,增强了系统的可靠性和扩展性,降低了监测系统的成本。

芯片内嵌12位A/D转换电路将气体信号采集与调理模块输出的模拟信号转化成可识别的数字信号。STM32F103RCT6最小系统如图3所示。

图3 STM32F103RCT6最小系统

3.1.4显示模块

由于液晶显示器(LCD)具有低功耗、绿色环保、使用寿命长等特点被广泛应用于一些便携式仪器仪表中[3]。本系统采用2.8寸TFTLCD模块以ILI9320控制器为其驱动芯片,ILI9320液晶控制器自带显存。模块可以显示字母、数字符号、中文字型及图形、具有绘图及文字画面混合显示功能。LCD显示电路如图4所示。

图4 LCD显示电路

3.1.5串口通讯电路模块

串口通讯电路模块则需要完成与上位机通信,实现数据的保存和实时监控。系统采用RS232C总线标准实现检测仪与上位机的通讯,利用串口通信将数据传送至上位机实现数据的存储和分析。系统与上位机通信时,设置特定的按键,当该键按下去时系统将进行串口通信[4]。

3.2系统软件设计

图5 系统主程序流程图

系统软件设计利用STM32的固件函数库在KeiluVision5环境下采用C语言进行模块化设计。系统上电后,先对STM32内部进行初始化,初始化完毕直接进入采样状态,主要将ADC采集到的信号进行相应的数据处理,由TFTLCD液晶显示器显示其被测值。系统主程序流程图如图5所示。

3.2.1气体浓度数据滤波程序设计

本系统ADC时钟配置为12MHz,工作模式为扫描并且连续转换模式。连续采集5路模拟信号,每路采集10次。ADC在每次转换结束后,由DMA循环将50个转换的数据传输到内存中进行数据处理[5]。

图6 去极值平均滤波流程图

通过模拟量输入通道采集到的数据,不可避免会混杂一些干扰噪声,为了提高数据采集的可靠性和准确性,本设计选用去极值平均滤波方法对ADC采样的数据要进行滤波处理,无论是缓慢变化还是快速变化过程的信号,都能起到很好的滤波效果。流程图如图6所示。

3.2.2气体浓度数据除交叉干扰程序设计

本课题为减少各气体传感器之间的交叉干扰[6],通过互相干扰的系数来进行补偿。推算出各浓度的真实值。具体方法如下:

设气体交叉干扰系数矩阵为A:

其中a,b,…,x,y为五种气体对五种传感器的干扰系数。

数据滤波结果矩阵为b,浓度实际值矩阵为x。

由于b和A可以测出来,故可通过jacobi(雅克比)迭代法解线性方程组求出x。

4实验结果与分析

在传感器数据的标定阶段,利用氧气、二氧化硫、二氧化氮、一氧化氮和一氧化碳标准气体来测试传感器的检测精度和稳定性。表1给出了五种气体仪器检测数据与对应标准气体的比较结果,测试结果表明相对误差在要求的范围以内。同时,从仪器试用的情况来看,五种气体检测可靠,测量误差在4%范围内达到了系统所要求的性能指标。

表1 标准气体与检测结果对比表

5结语

本文以STM32F103RCT6作为核心控制器,充分发挥其硬件资源丰富、数据处理与实时控制性强的特点。设计出的多功能气体检测仪成本低、方便携带、功能强大、工作稳定可靠并且易于操作和维护,具有良好的应用价值,是一种新型的手持式气体检测仪器。

参 考 文 献

[1] 党恒耀,赵进宣,郭兴敏.气体传感器在工业中的应用[C]//2010年全国冶金物理化学学术会议专辑(下册),2010,6.

DANG Hengyao, ZHAO Jinxuan, GUO Xingmin. Application of gas sensor in industry[C]//The 2010 National Conference on Metallurgical Physical Chemistry album (Part 2),2010:6.

[2] 杜黎.电化学传感器测试电路设计与实现[D].大连:大连理工大学,2009.

DU Li. Design and implementation of electrochemical sensor test circuit[D]. Dalian: Dalian University of Technology,2009.

[3] 彭刚,秦志强.基于ARM Cortex-M3的STM32系列嵌入式微控制器应用实践[M].北京:电子工业出版社,2011:196-206.

PENG Gang, QIN Zhiqiang. Application of STM32 series embedded microcontroller based on ARM Cortex-M3[M]. Beijing: Electronic Industry Press,2011:196-206.

[4] 曹乐南,霍大勇.单片机与PC机串行通信的实现[J].中国科技信息,2006(11):192-203.

CAO Lenan, HUO Dayong. Realization of serial communication between single chip microcomputer and PC[J]. China Science and Technology Information,2006(11):192-203.

[5] 刘军.例说STM32[M].北京:北京航空航天大学出版社,2011:207-215.

LIU Jun. Example of STM32[M]. Beijing: Beihang University Press,2011:207-215.

[6] 蒋学悟,刘海韬,魏海明.电化学气体传感器测量干扰排除的探讨[C]//中国土木工程学会城市燃气分会应用专业委员会2010年年会论文集,2010:4.

JIANG Xuewu, LIU Haitao, WEI Haiming. Discussion on interference elimination of electrochemical gas sensor[C]//China Civil Engineering Society of urban gas branch application professional committee 2010 annual meeting,2010:4.

中图分类号TP29

DOI:10.3969/j.issn.1672-9722.2016.03.037

作者简介:郎宝华,男,博士,副教授,研究方向:高精度交流电机控制、嵌入式系统等。蔡莉媛,女,硕士研究生,研究方向:控制理论与控制工程,嵌入式系统。

收稿日期:2015年9月2日,修回日期:2015年10月28日

猜你喜欢

检测仪串口气体
二维定常Chaplygin气体绕直楔流动
浅谈AB PLC串口跟RFID传感器的通讯应用
非等熵Chaplygin气体测度值解存在性
一种防雷接地装置的便携式检测仪电路
吃气体,长大个
基于555振荡器的地沟油频率检测仪
多功能空气质量远程检测仪
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信