APP下载

舰艇舱室二氧化碳检测装置

2012-06-11郝毫毫

武汉工程大学学报 2012年1期
关键词:低功耗时钟应用程序

郝毫毫

(武汉工程大学电气信息学院,湖北 武汉 430074)

0 引 言

舰艇舱室是人员休息和工作或在核化条件以及生化污染条件下用于集体防护的场所,环境相对封闭,人员高度集中,舱内排出的废气浓度高,尤其是晚间门窗紧闭,舱内空气质量差,其中二氧化碳的含量对舰员的生理影响表现为:当CO2浓度小于0.05%时,人员感觉舒适;当CO2浓度大于0.05%小于1.55%时,人员短期无明显影响,但长期会影响战斗力;当CO2浓度大于1.55%小于2.00%时,人员会出现轻微反应(疲劳、烦闷、头晕、气喘),使用武器装备困难;当CO2浓度大于3.00%时,人员会有剧烈反应(呼吸困难),不能使用武器装备甚至引起死亡[1].

由此可见,二氧化碳的浓度测量是十分重要的.舰船舱室气体检测装置多采用质谱仪[2],虽具有检测范围广、运行稳定、分析速度快等优点,但其体积大、价格昂贵,因此不便携带和安装.本文采用低功耗器件并采用合适的软件方案设计了一种二氧化碳浓度和温湿度检测装置,采用电池供电,具有功耗低、体积小、便于携带和安装、接口灵活等特点,适合舰艇舱室环境应用.

1 硬件设计

检测装置的电路原理图如图1所示.它主要由MCU(微控制器)控制单元、通信接口、温湿度传感器、二氧化碳传感器等构成.所有单元均采用低功耗器件,MCU采用TI的具有休眠功能的MSP430F449单片机,温度和湿度测量单元采用SENSIRON公司的具有休眠功能的SHT21温湿度传感器,CO2浓度测量采用GSS公司的功率仅为3.5 mW的COZIR传感器.所有器件均采用3.3 V供电,便于电池集中供电.

图1 检测装置的电路结构图Fig.1 Structure diagram of the acquisition system

1.1 MCU单元

MSP430F449是IT公司推出的一种超低功耗单片机,其主要特点有:

a) 超低功耗:其供电电压为1.8~3.6 V,工作在LPM3(低功耗模式3)模式时电流为0.7~0.9 μA,工作在活动模式时电流为0.2~0.3 mA,I/O(数字输入/输出口)口的漏电流不超过50nA[3].它的矢量中断支持多个中断源,并可以任意嵌套.当MSP430F449工作在低功耗模式时,外部事件所引起的中断请求最短只需1 μs唤醒系统.

b) 处理能力强大:MSP430(单片机)系列为16位单片机,使用精简指令集,它的机器周期为一个振荡周期.同时它还采用了16位多功能硬件乘法器等一系列先进的体系结构.

c) 高性能模拟技术及丰富的片上外围模块:MSP430F449组合了许多功能模块,其中包括LCD(液晶显示器)驱动器,这大大节省了外围硬件的开销.

d) 系统工作稳定可靠:上电复位后,先由其内置的DCO(数字控制振荡器)时钟启动CPU(中央处理器),在外接的晶振稳定后,通过软件编程来确定系统时钟频率.如果外接晶体振荡器在用作主时钟时发生故障,内置DCO会自动启动,以保证系统正常工作.

在本应用中,MCU是检测装置的核心,在无事件发生的情况下工作于LPM3低功耗状态.此时,高速时钟和CPU停止,32768 Hz低速时钟处于活动状态,将UART0和TIMER0(定时器0)的时钟源设为ACLK(辅助系统时钟),当USART0有数据接收或TIMER0定时发生时,MCU可响应并退出LPM3状态进入活动工作状态.MSP430F449功能丰富,编程方式灵活,完全可满足检测装置的设计要求.

1.2 低功耗传感器单元

温度和湿度测量单元采用SENSIRON公司的具有休眠功能的SHT21温湿度传感器,休眠时的电流仅为0.15 μA左右.SHT21配有一个全新设计的CMOSens®(芯片的一种结构)芯片、一个经过改进的电容式湿度传感元件和一个标准的能隙温度传感元件,其性能已经大大提升甚至超出了前一代传感器(SHT1x和SHT7x型号)的可靠性水平.SHT21的测量分辨率高,可以达到14 bit(温度)、12 bit(湿度).量程范围广,温度为-40~120 ℃,湿度为:0~l00%RH[4].通信采用标准I2C接口,便于微控制器访问.在每次测量和通讯结束后,SHT21会自动转入休眠模式,大大降低了功耗.

这里对SHT21采用3.3 V供电,SHT21的SCL脚接单片机的P2.0口,SDA脚接单片机的P2.1口,单片机模拟I2C(一种串行通信的标准)口.

CO2浓度测量采用GSS公司的COZIR-A型传感器,其功耗仅3.5 mW,可温度补偿,湿度补偿,以及感知白天黑夜的环境状态[5].预热时间仅10 s,量程2 %.性能: 1)功耗3.5 mW;2)峰值电

流33 mA;3)平均电流小于1.1 mA;4)电源3.3 V;5)响应时间30 s;6)标准型号温度范围0 ~ 50 ℃(可扩展-25 ℃~55 ℃);7) 湿度适用范围 0~95 % RH;8)存储温度-30 °C~+70 ℃;9)尺寸:传感器18 mm×20 mm.

COZIR连接简单,除了3.3 V电源和地线外,还有RX(引脚名称)和TX(引脚名称)引脚可直接连接单片机的USART1(串口1)口.所有的通信均使用ASCII(编码名称)码,命令格式按照文献[6]的规定执行.传感器有三种工作模式:命令模式(Command Mode),流模式(Streaming Mode)和查询模式(Polling Mode).

其中工作于查询模式时传感器并不产生数据,但是周期性的测量在后台继续,当传感器收到读取命令时,会将最近的测量值转换成数据送出.查询模式的功耗与查询频率有关,但是几乎接近3.5 mW.

该设计将COZIR的通讯口接到单片机的USART1(串口1)口,COZIR工作在查询模式(Polling Mode).

2 软件设计

软件的开发环境为IAR Embedded Workbench(一种软件开发环境),使用C430语言.检测装置作为从机其USART0口执行标准MODBUS协议,为点对多点的通信方式.MODBUS协议是免费的用于工业现场的总线协议.在我国,MODBUS已经成为国家标准GB/T19582-2008[7].可以支持多种电气接口,如RS-232、RS-485等[8].每一个检测装置都拥有一个唯一的MODBUS地址,工作方式为主站轮询,从站监听的方式.检测装置软件的主要流程如图2所示.

2.1 程序流程

系统初始化时,MCU进入LPM3模式,Timer0(定时器0)选择32.768 kHz晶振作时钟源,定时1 min中断.有两个事件会将MCU唤醒:Timer0定时和USART0数据接收.

在Timer0(定时器口)的中断服务子程序中做两件工作:1、软时钟计时.由于系统对实时性要求不高,时钟可以分钟为最低计时单位.并且上位机可定期通过写指令对时钟进行校准;2、采集数据.从温湿度传感器和二氧化碳浓度传感器读取数据并按规定格式存放在规定缓冲区,等待上位机读取,刷新LCD显示器.

图2 系统程序框图Fig.2 Program flow chart

2.2 数据存储

MSP430F449拥有较大的存储区,其FLASH区有60KB+256B.本系统地址分配如下:

USART0配置参数 0X1000~0X107F

MOBUS通信协议配置参数 0X1080~0X10FF

用户参数(用户信息等) 0X1100~0X1FFF

用户程序区 0X2000~0X6FFF

升级程序区 0XE000~0XFDFF

实时数据区位于RAM(随机存取存储器)区,在MCU处于LPM3模式下能够得到保存.实时数据的存放格式如表1所示.每次读取的采样数据和时间存放在两个位置,一是地址0x7003~0x7008,二是沿地址0x7009~0x707A顺序循环存放.

2.3 程序升级

MSP430F系列单片机的FLASH(存储器的类型)存储器模块是可以通过程序擦写的.由于采用的是普林斯顿结构,所有存储器安排在同一个线性地址空间中,地址结构清晰,便于访问.FLASH部分被分为多个可单独擦除的段(512字节,信息段大小为128/64字节),因此特别适合在线程序升级(in-system program).

表1 实时数据的存放格式

程序升级的原理是在单片机中放置2段地址不重叠的相互独立的程序代码:一段为升级程序,另一段为用户应用程序.同时为两者的特殊功能寄存器分配两个不同的区域用于保存寄存器内容,以便在程序跳转时使用.

单片机复位后先进入引导程序,由它判断应用程序是否存在或错误.若有正确的应用程序则引导程序指针跳入应用程序,恢复特殊功能寄存器内容.否则进入升级程序,开放通信接口,等待升级.

引导程序的C430语言描述如下

Void main()

{

While(1)

{

If(App_Valid()) // 判断应用程序是否存在,或存在错误

Application(); // 进入应用程序

else

Updata(); // 进入升级程序

}

}

在编写应用程序时,要在链接文件(*.XCL)中指定应用程序的地址范围,编译完成后输出TXT(文本)文件.在应用程序和升级程序之间跳转时,可通过使用“asm(" mov &0xXXXX, PC;");”语句改变程序指针,同时注意保存必要的寄存器的值.

3 实验测试

经测量,系统在绝大部分时间段工作电流为1.4 mA,采用ER18505H型(3 500 mAh)锂电池可连续工作3个月左右.

采用MF-4B型标准气体稀释装置,用高纯氮作稀释气体对1%的标准CO2气体稀释得到6组不同浓度的CO2气体.分别用气相色谱仪和本装置对配置的6组气体进行测量比较,结果如表2所示.

表2 测量数据比较

4 结 语

上述所设计的舰艇舱室二氧化碳检测装置硬件结构简单,成本低,技术开发成熟,所采用的器件均为超低功耗器件,使得整个系统的功耗很低,可采用锂电池供电,因此安装方便,也便于携带.检测装置每分钟更换一次数据并在LCD上显示,预留的USART0口可以对外通信,服从MODBUS协议,用户可根据需要升级用户程序.由于体积小,安装屏蔽罩容易,安装屏蔽罩的检测装置在舰艇舱室复杂电磁环境下可正常工作.

另外,依据MODBUS协议可通过USART0口对装置的采样时间等工作参数进行修改,以满足用户需求.同时由于检测装置具有升级功能,经过改动可适用于其它多种应用场合,如蔬菜大棚的空气质量监测等,具有较大的推广价值和广阔的市场前景.

参考文献:

[1] 王武田,杨洪禹. 舰艇舱室毒害气体的危害及消除[J]. 海军大连舰艇学院学报,2003,26(4):50-52.

[2] 彭光明. AIP潜艇舱室大气环境控制系统研究[J]. 中国舰船研究,2006,1(2): 62-65.

[3] 沈建华,杨艳琴. MSP430系列16位超低功耗单片机原理与实践[M].北京:北京航空航天大学出版社,2008.

[4] Sensirion Inc. Datasheet SHT21 [EB/OL]. http://www.sensirion.com/en/pdf/ product_information/Datasheet-humidity-sensor-SHT21.pdf.2011-05-09/2011-11-18.

[5] GSS Ltd. COZIRTMUltra Low Power Carbon Dioxide Sensor [EB/OL]. http:// www. apollounion.com/Upload/DownFiles/GSS%20COZIR%20Wide%20Range%20Data%20Sheet.pdf.2010-01-01/2011-11-18.

[6] GSS Ltd. COZIRTMSoftware User’s Guide [Z]. Glasgow United Kingdom: GSS Ltd., 2011.

[7] GB/T19582-2008.基于Modbus协议的工业自动化网络规范[S].

[8] 王欣,文小玲,刘义亭,等. 基于MODBUS协议的TMS32OLF24O7A与PC机串口通信软件设计[J]. 武汉工程大学学报,2011,33(1):75-78.

猜你喜欢

低功耗时钟应用程序
别样的“时钟”
一种高速低功耗比较器设计
古代的时钟
删除Win10中自带的应用程序
一种宽带低功耗四合一接收机设计
谷歌禁止加密货币应用程序
一种用于6LoWPAN的低功耗路由协议
低功耗技术在驾驶行为管理模块中的应用
有趣的时钟
时钟会开“花”