张鹏程 应斌铖 王金怡 朱毅文 陈锡爱
摘 要:本文基于ARM微处理器平台,设计了一种低成本、高灵敏度的一氧化碳浓度检测报警系统。本系统以STM32F103为主控芯片,通过ADC通道采集现场环境的一氧化碳浓度。通过串口将数据上传至上位机,形成实时浓度曲线图,便于分析浓度的变化趋势,并将历史数据存入数据库,同时将数据上传至云端,方便用户在其他客户端读取信息。
关键词:STM32 一氧化碳检测 物联网 在线检测
中图分类号:U46 文献标识码:A 文章编号:1672-3791(2018)05(c)-0043-02
一氧化碳是种无色、无味的气体,吸入后对人体有十分大的伤害。它会结合血红蛋白生成碳氧血红蛋白导致人缺氧。随着现代工业的发展、城市化的进程加快以及车辆的普及,工业上的有害气体大量产生,其中最常见的便是一氧化碳,暴露在过量一氧化碳中可能严重损害心脏和中枢神经系统,会有后遗症。因此对一氧化碳浓度的检测研究是必不可少的。
基于STM32的一氧化碳浓度检测系统,以STM32为主控芯片,利用ADC通道采集一氧化碳检测模块的输出信号,同时以500ms为一个发送周期,将信号简单滤波处理后通过串口传至服务器端的上位机,上位机可根据所接受数据拟合出实时浓度变化曲线,并将所得数据保存至SQLite数据库,再由服务器将数据更新至网页传至云端。当使用者需要了解所测地区的一氧化碳浓度时,使用身边的终端设备连接互联网登录主页,即可查看实时的一氧化碳浓度。
1 系统整体设计
该检测系统由上下位机和云端网页三部分组成,其中上位机由QT Creator开发制作完成,可以运行在Windows系统环境下,其功能包括串口通讯、数据记录、曲线拟合、数据库更新等。下位机是以STM32微处理器为主控芯片,与多个外设模块连接而成的硬件系统,在下位机中,以STM32为主控芯片,利用ADC通道采集一氧化碳检测模块的输出信号,将信号简单处理后通过串口传至服务器端的上位机,上位机可以拟合出实时浓度变化曲线,并将数据同时保存至数据库,再由服务器将数据更新至网页传至云端。当使用者需要了解所测地区的一氧化碳浓度时,使用终端设备连接互联网登录主页,即可查看实时的一氧化碳浓度。系统结构如图1所示。
2 上下位机软件设计
下位机的开发基于MDK,上电后,系统分别初始化LCD模块、ADC模块、串口通讯模块。通过ADC通道采集检测模块的模拟电压信号后,获得一氧化碳浓度的数据。将原始数据进行简单均值滤波处理后显示在所接LCD外设上,同时以500ms为一个发送周期通过串口模块发送数据至服务器。
上位机基于Qt Cteator开发,在上位机界面设置好串口以及波特率,连接下位机后可以接收到数据,将数据以曲线形式显示,能够直观看到浓度随时间变化的曲线。同时,利用Qt自带的数据库SQLite能够将数据进行历史备份。利用上位机可以方便地查看到历史采集数据。图2是上位机界面。
上位机中历史数据查看栏下可以对历史数据进行简单的操作,可以根据时间对数据库进行搜索,同时对行数据进行删除操作。
3 网页设计
网页开发基于WampServer,WampServer是一款多平台的Apache Web服务器、PHP解释器以及MySQL数据库的整合软件包。开发语言采用PHP语言与HTML超文本语言。通过PHP接入SQLite,实例化后,打开数据库,读取其中的数据,再以表格的形式显示在网页上并上传至云端,当使用者利用终端设备接入互联网登录主页时,便可以随时随地查看所测的浓度数据。
4 结语
对于现代工业快速发展导致的有害气体大量产生的现象,亟需对一氧化碳浓度进行研究检测,过高浓度的有害气体,将严重威胁到人员的生命安全,给社会带来巨大的经济损失,因此我们需要一种方便使用者能够即时查看所测地的一氧化碳浓度的装置。本文所研究的一氧化碳浓度检测系统能够有效地解决这个问题,在所需测量的地区架设好检测装置,利用总线即能够有效监测浓度,一旦浓度超标,便发出警报,避免灾害的发生。
参考文献
[1] 马忠梅.单片机的C语言应用程序设计[M].北京:航空航天大学出版社,2001.
[2] 程德福.传感器原理及应用[M].北京:机械工业出版社, 2010.
[3] 隋越,董明,郑传涛,等.差分式中红外一氧化碳检测仪的研制[J].仪器仪表学报,2016,37(10):2282-2289.
[4] 张炯.一氧化碳检测仪的设计与研究[J].价值工程,2011,30(24):139.
[5] 贺玉凯,关中辉,王汝琳.新型矿用智能红外一氧化碳检测仪研究[J].煤炭科学技术,2005(3):73-76.
[6] 程蓓.电厂烟气一氧化碳检测技术及应用[J].安徽电气工程职业技术学院学报,2005(3):54-57.
[7] 王樉.一氧化碳检测仪的測量原理与应用[J].中国计量,2010(1):67.