摘 要: 当前国内对汽车尾气排放情况进行检测的方式主要是在台架上对汽车进行检测,不能对正在实际路况上行驶的汽车进行检测。针对上述存在的问题,设计了一种基于单片机的汽车尾气检测系统,该系统通过电化学传感器检测气体,并用无线通信技术将探测到的数据进行传输,提高了汽车尾气检测的灵活方便性,实现对汽车尾气的全面实时监测。实验结果表明,该检测系统运行稳定可靠,有利于加强对汽车尾气污染的防治,具有一定的推广价值。
关键词:尾气检测;电化学传感器;单片机;无线通信
近年来国内城市汽车的拥有量越来越大,汽车尾气对城市大气环境的危害也日益加剧。因此,快速、简便、准确地检测汽车尾气的成分和含量对控制汽车尾气的排放以及改善城市大气环境具有重要的现实意义。然而,由于技术条件的限制,目前国内主要采用年检方式对汽车尾气排放情况进行检测[1],不能在实际路况上对汽车尾气进行检测,汽车实际运行时其尾气所含的污染物不能及时掌握,从而无法及时有效地控制汽车的尾气污染。
针对上述问题,本文给出了一种基于单片机的汽车尾气检测系统方案,本方案以低功耗的控制器作为控制核心,利用电化学传感器采集尾气信号,并通过无线通信技术将最后的数据传输到监控设备,使得相关检测者能随时随地检测汽车尾气,实时掌握汽车的尾气排放情况,及时制止超标车辆上路,最大程度
上减少汽车尾气对空气的污染。
1 系统工作原理和总体方案
1.1 系统工作原理
在汽车尾气排放口安装电化学传感器,采集行驶中的汽车尾气信息。由于采集来的信号很小,因此需利用运算放大器将该信号进行放大,放大后的信号传输给单片机,先进行A/D转换,再进行信息处理,处理的结果通过无线通信技术传输。
1.2 系统总体方案
系统包含两部分,第一部分安装在汽车排气管附近,由电化学传感器、运算放大器ADA4505、单片机STC12C5A60S2、供电模块、无线通信模块NRF24L01等部分组成;第二部分由监测人员手持,由单片机STC12C5A60S2、供电模块、无线通信模块NRF24L01、显示屏1602、按键等几个部分组成。车速传感器测得的车速通过CAN总线传到安装在汽车上的单片机,最终在1602显示屏显示当前的车速。由于电路功耗很低,供电模块都采用锂电池供电。系统结构框架。
2 系统的硬件设计
2.1 电化学传感器
电化学传感器通过与被测气体发生反应并产生与气体浓度成正比的电信号来工作。电化学传感器由传感电极(或工作电极)和
反电极组成,并由一个薄电解层隔开。图2为电化学传感器测量电路的原理示意图。气体通过薄膜扩散到传感器内,并与工作电极(WE)相互作用。传感器参考电极(RE) 提供反馈,以便通过改变反电极(CE) 上的电压保持WE引脚的恒定电位,流入WE引脚的电流对于每ppm气体浓度低于100 nA,其中Vout = 2.5 V + IWE × RF。气体传感器模块是一氧化碳传感器TGS2201、氮氧化合物传感器4Nox-1500和碳氢化合物传感器4CHx-1500。
2.2 微处理器
汽车尾气检测 STC12C5A60S2/AD/PWM系列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8~12倍。内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250 Kb/s),针对电机控制,强干扰场合。
图3为安装在汽车排气管附近部分的传感器与STC12C5A60S2的接口电路。通过STC12C5A60S2的A/D转换可对传感器信号进行精确的测量由于传感器输出的电压信号较小,因此需要通过放大电路与STC12C5A60S2的A/D连接。图4为手持部分的输入输出设备与STC12C5A60S2的接口电路,其中STC12C5A60S2的A0为A/D转换串口。
2.3 无线通信模块
本文所涉及的系统采用的无线通信模块为NRF24L01。NRF24L01是一款内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型Shockburst技术的新型单片射频收发器件。NRF24L01工作于2.4~2.5 GHz ISM频段,其中输出功率和通信频道可通过程序进行配置[3]。NRF24L01功耗低,在以-6 dBm的功率发射时,工作电流也只有9 mA;接收时,工作电流只有12.3 mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便。
NRF24L01的工作原理图,CSN、SCK、MOIS、MISO为SPI引脚端,由微处理器的P1.1、P1.2、P1.3、P1.4来配置NRF24L01,CE为使能发射或接收端,由微处理器的P1.0控制;IRQ为中断标志位,由P1.5控制。
2.4 CAN总线设计
为了使CAN总线能够实现通信功能,在设计硬件电路的过程中,本文采用了STC12C5A60S2和CAN总线驱动器PCA82C250组成的CAN总线接口电路,。
3 系统的软件设计
按照系统控制功能要求,确定了系统软件的主要功能有:系统初始化,采集传感器输出的气体浓度信
号,对采集后的数据进行处理、存储、输出等。按照软件功能要求,给出了程序总体结构框图,。
3.1 主程序设计
本系统的主程序流程图即图7、8所示的流程图。主程序在完成系统初始化后,按下手持部分的启动按钮,将启动信息通过无线模块传输给汽车部分的单片机,此时单片机回复接收启动指令给手持部分,同时启动检测系统,传感器开始采集气
体成分,并将其转换成电信号。检测系统启动后,调用A/D转换子程序,将采集到的电信号转换成数字信号进行处理运算。
3.2 无线通信模块子程序
本系统的无线通信模块子程序流程图。无线通信模块子程序在完成相关函数的初始化后,单片机将信息按照时序由SPI口写入nRF24L01缓存区,然后CE置为高电平,并延时一段时间后发射数据;在应答模式下,nRF24L01在发射数据后立即进入接收模式,接收应答信号。如果在有效的应答时间范围内收到应答信号,则认为数据成功发送到了接收端,此时将状态寄存器TX_FIFO恢复为默认值;若未收到应答,说明发送失败,记录下发送失败的次数,并自动重新发射数据[4]。
(1) nRF24L01 模块设置为发送模式部分代码如下[5]:
void SetTxMode ( )
{
nrfTxBuf [0] =0x20;
nrfTxBuf [1] = 0x0e;
SPI_SendData (nrfTxBuf, nrfRxBuf,2);
nrfTxBuf [0] =0xe2;
SPI_SendData (nrfTxBuf,nrfRxBuf,1);
}
(2) nRF24L01 模块设置为接收模式部分代码为:
void SetRxMode ( )
{nrfTxBuf [0] = 0x20;
nrfTxBuf [1] = 0x0f;
SPI_SendData (nrfTxBuf, nrfRxBuf,2);
nrfTxBuf [0] =0xe2;
SPI_SendData (nrfTxBuf,nrfRxBuf, 1);
PORTB|= (1<<3);
_NOP( ); _NOP ( ); _NOP ( );
}
3.3 A/D转换部分子程序
STC12C5A60S2的ADC模块能够实现10位精度的模数转换,A/D转换部分程序比较简单,程序只需要完成3项功能:选取模拟输入通道;配置控制寄存器ACON;读取A/D转换后的数值,再返还数据。
本系统利用超低功耗STC12C5A60S2单片机对电化学传感器采集来的数据进行处理,替代目前的检测方式,对尾气的控制从台架到实际路况全面监测,切实实现了环保,加强了对汽车尾气污染的防治。
虽然目前国内在控制汽车尾气排放方面越来越严格,在引入或在国内生产的新车上都必须安装一个OBD车载自诊断系统来判断该车尾气排放是否达到国Ⅲ或国Ⅳ标准[6],但该系统不能检测汽车在实际路况上运行时的尾气排放所含的污染物的浓度,而本文所设计的基于单片机的汽车尾气检测系统能很好地解决这个问题。此外,该项技术还可以扩展应用于温湿测量、工业控制、水文检测以及环境卫生应用等领域,因此本设计具有较强的通用价值。
发布评论