一种低功耗环境监测模块设计
2015-11-10刘亚宾杨军常涛杨泰
刘亚宾 杨军 常涛 杨泰
摘 要:低功耗环境监测模块可完成对温度、湿度、露点等气象要素以及实时时钟、粉尘、噪声、振动、磁场强度、锂电池电量等物理要素的监测。文章从电路设计、机械机构与软件编程等方面对设计方案进行了介绍。该模块不仅可用于测试铸造设备及厂房环境参数,也可用于重要铸件运输过程中的环境要素的监测与记录。
关键词:环境监测;低功耗;数据处理;电源管理
中图分类号:TP393 文献标识码:A 文章编号:2095-1302(2015)10-00-03
0 引 言
铸造设备与厂房环境以及运输中的重要铸件都需要在整个过程中能了解并记录其使用情况、环境状况、运输情况等,从而分析设备、铸件及厂房所经历的环境条件及其变化情况。利用嵌入式技术将众多要素监测集成在一块电路板上,可提供一种可剪裁、低功耗、全天候、性价比高的环境监测解决方案。
1 功能需求
环境监测模块的基本测量要素包括温度、湿度、露点[1];扩展监测要素有粉尘、噪声、X/Y/Z三轴方向的振动(加速度)及磁场强度、锂电池电量等。同时具备上电后24小时不间断监测、工业Modbus标准通信、人机交互、循环数据存储、模拟量实时输出与报警等功能,并易于与PLC系统集成,以满足海洋运输高温、高湿、高盐雾的使用环境。
2 总体设计及其工作原理
2.1 总体设计
环境监测模块主要由大容量锂电池与PCB组成,单元对外接口主要为供电、模拟量输出、报警输出及Modbus通信接口,PCB设计相对独立,可与锂电池并置,也可单独存在,利用9~36 V电压供电。为提高模块的通用性,功能单元采取模块化设计,PCB采用母板加扩展板方式[2],根据使用需求将相应功能模块插入母板上的接插件即可。系统结构如图1所示。
本设计重点对模块的供电进行了滤波、过流、过压保护设计,PCB在外部供电与电池供电之间可进行无扰切换,从而保护PCB关键功能器件。通过电源转换器BUCK-BOOST工作原理,在保证电路供电电压稳定的前提下,最大限度地延长了锂电池的工作寿命。在功能元器件及结构件的选型上,尽可能地选用宽温宽压型的工业级型号,在结构设计上充分考虑散热及抗震因素,以提高对恶劣环境和长途运输的适应能力。同时,依据工程经验及各三防措施性价比对比,采用三防漆进行涂覆,对接插件部位以硅胶灌封,实现防潮湿、防盐雾、防霉菌的三防设计[3]。
图1 系统结构图
2.2 工作原理
环境传感模块的功能组成主要可分为以下三部分:电源转换、数据采集与存储、对外信息交互。
电源转换将DC 5~28 V外部供电转换为系统所需的DC 5 V与DC 3.3 V供电电源。DC 5 V使用于粉尘传感及模拟电路,DC 3.3 V用于其他功能电路供电。
数据采集与存储分为两类,模拟式传感(噪声与粉尘)与数字式传感(温度、湿度、露点、X/Y/Z三轴方向振动(加速度)及磁场强度、锂电池电量、RTC实时时钟)。
对外信息交互主要为工业Modbus标准通信、液晶显示、模拟量实时输出与报警等功能。
3 具体实现
本文根据模块功能组成部分从硬件、软件角度分别设计。
3.1 硬件设计
3.1.1 电源转换
电源转换以锂电池充放电及为系统提供稳定的所需电源为设计要点,同时满足锂电池无关性,即无论锂电池具备与否,系统均能平稳运行,以满足不同的应用场合。
除发光二极管指示外部电源与否外,本设计还利用光耦TLP521-1进行外部电源与系统电源进行电压匹配,以将外部电源状态输入至MCU的IO管脚加以判断。
如图2所示,宽压输入范围的隔离稳压单输出电源模块ZY2405WHBBD-3W可为锂电池提供DC 5 V的安全充电电压。后级电源转换芯片TPS63001DRC与TPS63002DRC采用BUCK-BOOST原理,在锂电池有效充放电压范围内,为系统提供稳定的DC 3.3 V与DC 5 V供电电源。
图2 电源转换
3.1.2 数据采集与存储
环境数据采集以ARM Cortex-M0(LPC11E67JBD100)为核心处理器[4],3.3 V单电源供电(1.8~3.6 V),内置20 KB SRAM、4 KB E2PROM、5个UART、2个I2C、2个SSP、4个Timer、12通道AI(12 b)、80个GPIO等外设,12 MHz正常工作模式消耗电流3 mA(普通睡眠模式仅2 mA),可满足功能设计及低功耗需求。
所用各传感模块的参数如表1所列。表中露点温度指空气在此温度下能保持最多的水汽,当温度冷却到露点,空气变得饱和,就会出现雾、露或霜。露点根据温度与湿度计算而得[5]:
Log EW= (0.660 77+7.5T /(237.3+T)+(log 10(RH)-2)
(1)
Dp= ((0.660 77 –log EW) × 237.3) / (log EW-8.160 77)
(2)
在公式(1)与公式(2)中,T为测试温度,RH为测试湿度,Dp为露点计算结果。
数据存储根据监测需求,在定时间隔中断及振动越限发生时,将采集到的环境数据以SPI通信方式存储至128 Mb的NOR FLASH(MMX25L12845EZNI-10G)中。其中,RTC实时时钟SD3088AS具备锂电池电量检测功能,其中断输出频率范围为4 096 Hz~1/16 Hz,可根据不同应用场合灵活设置对应的数据采集频率。
3.1.3 对外信息交互
对外信息交互主要采用以下4种方式:LCD液晶屏显示、Modbus_RTU/TCP通信、数字量报警输出、模拟量4-20 mA输出。
(1)LCD液晶屏显示:LCD12864-ST(3.3 V蓝屏),串行SPI通信方式,分4行两段实时显示8个环境参数。由外部电源供电情况决定背光功能开启与否。
(2)Modbus_RTU/TCP通信:分别由SP3485与嵌入式以太网转串口模块IPORT-1提供RS 485与以太网底层通信,高低字节交换的CRC16检验方式,保证通信的高可靠性。
(3)数字量报警输出:在外部电源供电情况下,根据环境监测参数的设定阈值,采用光继电器TLP3554提供2.5 A的报警负载输出。
(4)模拟量4~20 mA数据输出:在外部电源供电情况下,以SPI通信方式,采用LTC2620CGN#PBF提供8路0~5 V的电压输出,分别对应温度、湿度、露点、噪声、粉尘浓度及X/Y/Z三轴振动加速度数据,经信号调理芯片ZCM436BS将0~5 V的电压信号转换为4~20 mA的电流信号。
3.2 软件设计
模块的软件设计分为初始化、休眠/循环与中断(定时、振动越限、串口通信)三类,图3所示是模块的主循环流程图,图4所示为其中断流程图。
(1)初始化:核心处理器LPC11E67JBD100上电复位后,进行内部12 MHz晶振时钟配置。延时稳定后,对芯片引脚功能分配、GPIO输入输出特征、IO上升沿中断、SPI与I2C通信等内置外设功能进行配置,此步所有中断使能需关闭,以防程序跑飞。之后读取内置E2PROM中存储的参数配置数据(报警阈值、串行通信地址、RTC定时中断间隔等),根据功能模块子板插入母板情况,决定对应参数是否读取,以及对应中断使能是否开启。
(2)休眠/循环:初始化后当外部电源存在时,进入循环模式,否则进入休眠模式,等待中断唤醒。在循环模式下,首先检测RTC实时时钟模块是否在线,在线则读取实时时钟数据。否则检测各传感模块是否在线,在线则读取相应数据,当锂电池电量不足时,便提示充电。否则检测模拟量输出模块是否在线,在线则输出温度、湿度、露点、噪声、粉尘、X/Y/Z三轴方向加速度值共8路输出,无论模拟量输出模块在线与否,均按照参数配置报警阈值进行判断,决定报警输出使能与否,之后检测存储模块是否在线,在线则将所采集的数据存储至NOR FLASH中。否则,当环境参数处于正常值范围时,检测LCD液晶屏模块是否在线,在线则进行数据更新,不在线则进入下一轮循环。
图3 主循环流程图
(3)中断:中断可分为RTC实时时钟定时中断、X/Y/Z三轴加速度振动中任一轴向越限中断及Modbus通信中断。
①RTC实时时钟定时中断:根据参数配置中RTC定时中断间隔(决定数据采集频率),利用IO中断唤醒核心处理器或打断循环过程。类似循环模式,读取在线环境传感模块数据(除振动外)后,根据存储模块在线情况,决定采集数据存储还是直接退出中断,当锂电池电量不足时,提示充电。具体如图4(a)所示。
②X/Y/Z三轴加速度振动中任一轴向越限中断:根据参数配置中的报警阈值,利用IO中断唤醒核心处理器或打断循环过程。读取振动及磁场数据后,根据存储模块在线情况,决定采集数据存储还是直接退出中断。如果在单位时间内频繁触发,则置为运输状态,计时5分钟后再重新记录,并直接退出中断。具体如图4(b)所示。
③Modbus通信中断:第一次上电时,默认9 600 b/s,无校验,8位数据位,通信地址为1,用户可根据具体需求进行配置,配置的数据保存至核心处理器内置的E2PROM中,断电重启或按下手动复位键后配置生效。根据数据写入或读取命令进行数据长度解析,接收到CRC校验后进行判断,校验正确则给予反馈输出。Modbus RTU与Modbus TCP分用不同的串口中断,但同时仅能一个进行响应。具体如图4(c)所示。
(a)RTC实时时钟定时中断 (b)振动越限中断 (c)Modbus通信中断
图4 中断流程图
3.3 数据存储格式与计算
存储至NOR FLASH中的数据格式如表2及表3所示。除RTC实时时钟外,所有环境参数扩大10倍四舍五入后取整存储,类别值为0x5A5A时,代表该记录为RTC、温度、温度、露点、噪声、粉尘、锂电池电量数据,当类别值为0xA5A5时,代表该记录为X/Y/Z三轴加速度及磁场强度数据。
假设数据采集频率设置为1 Hz,1天24小时不间断采集的数据量为:
24(h)×60(m)×60(s)×20(Byte) = 1 728 000 Byte
则128 M NOR FLASH能循环存储9天的数据,现场可根据使用需求灵活调整采集频率。
由于采取循环与中断相结合的方式,既保证了关键数据的实时性,又保证了参数采集与输出的连续性,并兼顾存储空间的需求。
当需要更大存储空间时,可采用SD卡方式进行数据存储,同时程序与电路板需做对应微调。SD卡片插入插座后,采用硅胶弹性固定。
4 结 语
本模块借鉴自动气象站的监测要素与技术指标,结合铸造设备与厂房环境监控以及运输过程中的重要铸件需要重点关注的环境参数,利用嵌入式技术将众多要素的监测集成在一块电路板上,采用母板加功能插件方式,提供一种可剪裁、低功耗、全天候、性价比高的环境监测解决方案,具备实时监控与关键历史数据追溯功能。
本模块对外交互采用4-20 mA输出、隔离型光继电器可接中小功率负载、标准Modbus RTU与Modbus TCP通信,可方便地与工业PLC、DCS等系统进行无缝集成,具有良好的应用推广价值。
参考文献
[1]胡玉峰.自动气象站原理与测量方法[M].北京:气象出版社,2004.
[2]桂电-丰宝联合实验室.LPC1100系列处理器原理及应用[M].北京:电子工业出版社,2011.
[3]谢义水.舰载电子设备的三防设计[J].机械工程学报, 2007,43 (1):83-86.
[4]李宁.基于MDK的LPC1100处理器开发应用[M].北京:北京航空航天大学出版社,2010.
[5] Principles of Soil Physics. Introduction to Humidity Basic Principles on Physics of Water [J/OL].(2014-2-2).http://www.sensirion.com Introduction to Humidity Basic Principles on Physics of Water Vapor Version 2.0--August 2009.