一种便携式多参数环境监测仪器的设计

来源:中电网 作者: 时间:2003-06-02 17:47

     本文以智能建筑为应用背景,介绍一种通用性很强的便携式多参数环境监测仪。它以MSP430F437超低功耗单片机为核心,配置新式的微型低功耗传感器,实现了建筑物内温度、湿度、光照度、有害气体浓度等参数的采集处理、存储、通信等功能。文中详细阐明了传感器的选取、硬件结构、软件流程等相关技术,并指出该仪器的特点和优势。
    
     1 传感器的选取
    
     传感器是决定监测仪精度的关键元件。传感器的选择主要依据工作环境、测量精度、线性度、互换性、灵敏度、响应速度、稳定性、功耗、体积大小以及易于与MCU接口等。本监测仪选用的各类传感器分别为:集成温度传感器TMP35、集成湿度传感器HM1500、热线型半导体气敏传感器MR511以及集成光照度传感器TSL253。与同类产品相比,它们在上述方面有一定的优点,很适合便携式仪表使用。
    
     TMP35电压输出量与被测温度T成线性关系,其式如1;HM1500输出量为电压,与被测湿度%RH成正比,且与温度T有关系,其式如2;MR511内有温度补偿,其输出电压与被测气体浓度C成近似线性关系(线性度≤±5%),其式如3,式中NC为器件灵敏度,环境湿度对VC的值有影响;TSL253电压输出量与被测光照度Ee成正比,且与温度T有关,其式如4,式中Ne为传感器的灵敏度。
    
    VT=10×TmV 1
    VRH=600×(%RH+38.5)/39.1-0.056TmV 2
    VC=NC×CmV 3
    VEe=(Ne×Ee)×(1.05-0.002T)mV 4
    
     上述各式说明,高精度的监测仪必须考虑传感器的非线性、温湿度影响、测量误差及环境误差等问题,尤其要着重解决测量中的非线性校正及温湿度补偿。在布置印刷电路板时应尽量减少引线电阻和分布电容以降低测量误差。在电路设计上要加线性化处理电路及温湿度补偿电路,或借助于单片机系统,由软件查表等方法进行处理、修正(用软件实现传感器的校正补偿功能可降低仪器功耗)。如有可能可用标准测量仪进行校准,以提高测量精度。
    
     2 硬件设计
    
     监测仪主要由MSP430单片机、测量转换、键盘显示、串口通信、电池电源等部分组成。电路中器件很少,功耗较低且功能强大。具体硬件电路原理图如图1所示。
    


     2.1 MSP430单片机
    
     单片机系统是监测仪的核心,它完成仪器的功能设定、测量对象选择、信号处理存储、状态信息显示、数据通讯等功能。相对于MCS51、MCS96及PIC等系列,TI公司带闪速存储器的MSP430F系列超低功耗单片机有着很大的优势。MSP430F单片机有多种型号,其功能组合各异,能满足不同应用场合的要求。本设计采用MSP430F437,它的主要特点如下:
    
     ·工作电压低(1.8~3.6V),电流小(280μA/1MHz/活动模式),5种低功耗模式;
    
     ·16位RISC架构,27条精简指令,125ns指令周期;
    
     ·丰富的中断源并可任意嵌套,用中断请求将系统从备用状态唤醒仅需6μs
    
     ·片内看门狗及上电复位电路,可选时钟源(XTAL1、XTAL2或内部DCO);
    
     ·具有中断功能的内部比较器A;
    
     ·双向并行I/O口P1和P2(有中断功能)及P3~P6口,多数口有复用功能;
    
     ·两个16位定时器A、B,均各带3个比较/捕获模块,每个模块可独立编程,用于产生定时脉冲,捕获外部事件;
    
     ·片内集成4×32段LCD液晶驱动器,其外部引线复用P3~P5口;
    
     ·通用通信模块UARST0,软件可选同步/异步方式;
    
     ·具有自动循环采集功能的8通道12位ADC12,自带采样保持器和可选电压基准;
    
     ·JTAG接口或片内BOOT ROM使程序下载调试极其简便,程序代码由安全熔丝保护。
    
     MSP430F437不需加装存储器片内自带1K字节RAM及在线可擦除编程32K字节主Flash+256字节信息Flash。片内Flash模块包含3个控制寄存器、时序发生器、擦除/编程电压发生器及Flash存储器本身。其中主Flash分为每段512字节的段0~63,信息Flash分为每段128字节的段A、B。MSP430F437存储器可存放大型数表,有高效的查表处理方法。本监测仪安排段0~23为程序代码区、段24为LCD显示字型表、段25~31存放校正和补偿表格、段32~63为用户采集数据保存区、段A+B存放各类参数。
    
     在电路中,其他主要模块的功能分配为:16位定时器A的比较/捕获模块0实现时分秒计时,比较/捕获模块1控制A/D采样周期;16位定时器B可实现PWM输出,预留作控制口; ADC12用于环境参数测量;比较器A作电池欠压监测;复用P3~P5口驱动LCD液晶显示器;通用通信模块UARST0实现RS485串行通信;预留JTAG接口以方便用户对仪器更新升级。
    
     2.2 测量转换
    
     MSP430F437的ADCl2转换模块具有高速通用的特点,12位的转换精度能保证一般采样的分辨率要求。它的8个外部模拟采样通道可任意配置,转换参考电平VR+和VR-来自内部或外部,也可以是两者的组合;内嵌的采样/保持电路给用户提供了对采样时序的各种选择,采样时序可以通过软件位、3种内部或外部信号来直接控制。ADCl2有4种工作模式。可以在单通道上实现单次转换或多次转换,在序列通道上实现单次转换或重复转换。对于序列通道转换,采样顺序完全由用户定义。
    
     ADC12转换结果保存在16个转换存储寄存器ADC12MEM0~ADC12MEM15中。其值如5式:
    
     NADC=4096×(Vin-VR-)/VR+-VR- 5
    
     每个存储寄存器有各自相应的控制寄存器ADC12CTL0~ADC12CTL15,可用软件独立配置采样通道号及转换所需参考电平。
    
     本监测仪中,各环境参数传感器的输出经U2前置放大后,送入A0~A3模拟输入端。4路信号的转换参考电平均取VR+=2.5V和VR-=0V。ADC12工作模式设为序列通道单次转换,每次转换由定时器A比较/捕获模块1的定时输出OUT1启动。序列单次转换完成后,将置位ADC12中断请求。
    
     序列通道为ADC12MEM0~ADC12MEM12,对应的控制寄存器ADC12CTL0~ADC12CTL12中通道重复配置A0~A3。这样等时间间隔内每个环境参数可连续采样3次,然后在ADC12中断服务程序内使用中值滤波得到转换结果。
    
     需要指出的是,ADC12的转换内核与参考电平发生器可分别进入省电模式,为低功耗设计提供便利,而且进一步降低功耗、延长传感元件的使用寿命。测量电路的电源设置为单独可控,由U3的OUT2输出供给,并通过单片机的P2.0来切合。
    
     2.3 键盘显示
    
     MSP430F437有6个带复用功能的P1~P6双向I/O口。其中P1、P2设置成输入时,引脚上任何状态变化都会触发中断。本设计将P3~P5复用于LCD驱动,P1.0~P1.4作3×2快速键盘。
    
     为读取按键值,首先设置端口功能。P1.0~P1.2为输出口,依次输出低电平;P1.3、P1.4为输入口,开放中断,选定下降沿触发。当有键按下时,在P1口中断服务程序内,完成去抖动延时、键值读取等功能,得到的键值交后续程序处理。
    
     片内LCD驱动器可工作于静态及2~4多选四种模式,最多可接4×32=128段液晶。图1中R33、R23、R13、R03引脚设定模拟偏置电压,提供驱动能力,典型接线为电阻分压VR33=VCC、VR23=2/3VCC、VR13=1/3VCC、VR03=0V;S0~S31为段输出(每段3μA);COM0~COM3为公共输出,接LCD背极。对LCD的软件控制极其简单,它有一个控制寄存器LCDCTL,定义工作模式及电流消耗。20个显示存储器LCDM(使用16个)存放128段要显示的状态信息,其内容可采用高效的寻址方式查显示字型表获得。
    
     单片机根据控制键的命令信息,可分别选择仪器“测量/通信”使用方式、“单次/循环”采集类型,并可按键校时、设置参数、启动采集、数据存储确定等。LCD显示屏可由定制、时分、超量程和电池欠电告警组成1×32段,剩余3×32为多用显示区,可依次显示操作提示、工作状态、环境参数测量结果,从而大大方便了用户。
    
     2.4 串口通信
    
     为了对采集到的数据进行深入处理(如统计分析、打印存档、绘制曲线图表等),需将数据从检测仪送至计算机中。数据传输使用MSP430F437的标准USART通信模块(复位SYNC=0选择异步功能),并外接低功耗器件MAX485E,构成一个半双工RS485串行通信口。
    
     为提高通信的可靠性,便于仪器与其它智能设备组网实现控制功能,本监测仪使用异步通信的地址位多机通信格式。异步帧由1起始位、8数据位、1地址位、1停止位组成,波特率编程为9600bps。USART通信模块的地址位多机通信协议如图2所示。
    

     通信时,先置RS485处于接收状态,并置接收唤醒中断允许位URXWIE=1(此时只有地址字符能触发接收中断)。当接收到一个地址位置位的字符时,通信模块的接收器被激活,字符送入URXBUF,同时接收中断标志URXIFG置位。在串口接收中断服务程序内可以检验收到的地址,如果匹配,置URXWIE=0,单片机将读取数据块的后续数据;如果地址不匹配,则等待下一地址字符的到来。
    
     RS485接收到主机命令后,转入发送状态,先置控制字符地址位的
    TXWake=1。当地址字符的8位数据从UTXB

相关文章

资讯排行榜

  • 每日排行
  • 每周排行
  • 每月排行

华强资讯微信号

关注方法:
· 使用微信扫一扫二维码
· 搜索微信号:华强微电子