• 工作总结
  • 工作计划
  • 读后感
  • 发言稿
  • 心得体会
  • 思想汇报
  • 述职报告
  • 作文大全
  • 教学设计
  • 不忘初心
  • 打黑除恶
  • 党课下载
  • 主题教育
  • 谈话记录
  • 申请书
  • 对照材料
  • 自查报告
  • 整改报告
  • 脱贫攻坚
  • 党建材料
  • 观后感
  • 评语
  • 口号
  • 规章制度
  • 事迹材料
  • 策划方案
  • 工作汇报
  • 讲话稿
  • 公文范文
  • 致辞稿
  • 调查报告
  • 学习强国
  • 疫情防控
  • 振兴乡镇
  • 工作要点
  • 治国理政
  • 十九届五中全会
  • 教育整顿
  • 党史学习
  • 建党100周
  • 当前位置: 蜗牛文摘网 > 实用文档 > 公文范文 > 数字式多要素集成气象测量模块开发

    数字式多要素集成气象测量模块开发

    时间:2023-04-20 11:20:08 来源:千叶帆 本文已影响

    吕雪芹,黄宏智,何艳丽

    (广东省气象探测数据中心,广州 510080)

    世界进入新时代,城市飞速发展、高层建筑林立,城市群高度密集,致使城市气象灾害频发,突发性、极端性和不可预见性明显增加。城市已经成为气象灾害的高风险地区,气象防灾减灾形势十分严峻。同时,城市运行对气象条件具有高度敏感性,因此,新型智慧城市的智慧安全运行、建设和发展,更加需要有针对性、精细化的气象观测业务。气象标准观测对周边环境要求较高,在复杂的城市环境存在较多局限性,所以需要一种更加便利的适应物联网大数据应用的微型气象观测仪器,如在城市智慧综合杆上挂载微型自动气象站,那么,微型化多要素的集成气象测量模块开发显得非常迫切。

    气象传感器是气象探测的重要基础。随着科学技术的不断发展,气象传感器的测量精度和稳定性也不断提高。早期一般使用模拟型传感器,通过机械式指针标识参量、人工读数,测量误差通常比较大。近十多年来发展到数字型传感器,即是分离传感元件+A/D转换电路组成的数字转换电路。这些电路主要是集成度不高,占PCB面积大,很难微型化,抗干扰和稳定性相对较弱。甘志强[1]等根据目前已有气象数据采集器特点,分析低功耗智能型气象传感器的设计方案,设计温度和湿度测量电路,构建无线网络完成数据传输,认为一体化设计能够提高采集精度和稳定性。安学武[2]通过微芯片计算技术和小型化集成技术等多技术融合,实现了一种农业物联网多传感器一体化数据采集系统,用于农业信息化、智能化监测。吴法太[3]等设计一种同时具有温度湿度气压三合一的气象传感器,安装使用方便,适应物联网大面积监测场景。以往多要素气象传感器基本上基于分立元件配置外围电路设计,占用PCB面积大,确实存在相对较高成本以及稳定性较低等缺点[4]。目前MEMS技术发展很快,温度、湿度和气压传感器采用MEMS工艺制备,具有微型化、高精度和集成度高的优点,很小封装就可以集成温度湿度气压3个要素的传感器,使传感器微型化成为可能,而且通过某种总线方式输出数字信号。

    气象行业的基础气象观测,一般是为了满足气候研究和预报预警服务应用开展的标准观测,观测数据追求准确、稳定、连续、代表性强等特点。随着智慧城市的建设和发展,面向智慧城市的智能化运行管理、发展,借助城市智能化基础设施(城市云、物联网、智慧灯杆等),布设微型化气象环境仪器,拓展社会观测大数据,形成“泛在感知网”,不断完善地空天一体化大城市气象观测能力,拓展社会观测等大数据信息采集渠道,形成新型、精细化的城市气象观测业务。目前在城市的多功能智能杆安装微型化气象仪器,开展社会观测的需求非常迫切。

    作者利用高度集成芯片BME280为核心进行二次开发,成功开发了微型数字化的智能气象传感器,实现温度、湿度和气压三个要素的精准测量。硬件设计上对外围电路的电源电路进行了抗干扰优化设计,设计PCB时注重信号线布线的等长原则、平行原则和电磁兼容原则,减少串扰几率,提高整体性能。单片机STC15W408AS对传感器件的测量数据做进一步的软件质量控制,形成高质量的气象报文组包输出。模块里设计了通用的RS232接口和USB接口便于与上位机交互,通用性和便捷性得到大幅度提高。这种数字型多要素微型化的气象测量模块,能够较好地适应社会观测所需的微型化气象测量仪器使用。

    以下把多要素测量模块设计细节描述出来,供读者参考。

    BME280是一款具有温度、大气压力和湿度的环境传感器,非常适合各种天气/环境要素测量的可行解决方案。属于MEMS集成式环境传感器,数字式输出,专门为满足移动应用如手机等设备需要重点考虑小尺寸和低功耗关键要求而开发的新一代产品。具有高精度压力、湿度和温度测量性能,线性度很高。采用 2.5×2.5×0.93(mm3)的8引脚、金属盖 LGA 封装,低功耗(1 Hz 时3.6 μA)设计,长期稳定工作,EMC鲁棒性极强。其主要技术指标如下:

    工作电压:3.3 V/5 V

    温度检测:-40~85 ℃ (分辨率 0.01 ℃,精度±1 ℃)

    湿度检测:0~100%RH (分辨率 0.008%RH,精度±3%RH,响应时间1 s,滞后≤2%RH)

    气压检测:300~1 100 hPa (分辨率0.18 Pa,精度±1 hPa)

    支持I2C接口通信,可设置从机地址。也可支持SPI接口通信,默认为I2C接口,可通过I/O口设置为SPI接口方式,非常方便在目前市场上普遍使用的单片机场景中应用。连接使用板载电平转换电路,可兼容5 V/3.3 V电平,从而可以简化外围电路的复杂性和降低成本。

    芯片还有一个优异特点就是具有较好的温度补偿能力,能够对气压和湿度进行实时温度修正,确保在全量程范围内湿度、气压测量的准确性。

    从芯片自身具备的性能指标来看,湿度指标达到气象部门颁布的《自动气候站功能规格需求书》要求,温度和气压准确度尚有差距。但是如果用于社会气象观测用途,按照气象部门要求,温度和气压性能指标也是满足的,因此可作为微型化的社会观测设备使用。

    2.1 主电路设计

    BME280是一种纯粹的数字式传感器,由于只能输出当前时刻的温度、湿度及气压值,也即是气象术语的“瞬时值”,仅仅是这些瞬时值还不能满足气象智能传感器的功能要求,不能输出气象标准报文所需的各种气象要素值,所以需要MCU读数并处理成标准报文再输出。MCU采用纯国产芯片STC15W408AS,SOP16封装,是新一代的16位简化指令单片机,内嵌系统时钟频率高达48 MHz。芯片体积非常小,便于实现产品微型化。市场上普遍使用而且市场份额比较大,供货能够得到保证。由于BME280芯片接口为I2C或者SPI总线,不方便适配外围数据采集终端设备连接,因此,模块设计有RS232和USB接口对外通信,增强模块的通用性和便利性。模块的主要电路原理如图1所示。

    图1 集成传感器电路原理图

    对于一个精密测量模块来说,硬件设计应该注意几个方面技术问题,首先是电源设计是至关重要,纹波是否足够小及稳定,对一个精密测量仪器来说非常关键,需要综合考虑电磁兼容技术。另一方面就是输出的接口电平应该符合标准规范要求,才能与外围终端设备匹配,具备较好的通用性。因此,设计时必须注意的问题,MCU芯片STC15W408AS规定使用3.3 V电源,为了电平匹配,BME280以及串口MAX202和CH340N统一使用3.3 V供电。STC15W408AS有2个串口,其中一个与MAX202连接成为标准RS232接口,输出大约-5~+5 V电平,满足RS232标准规范电平要求。另一个串口通过CH340N将MCU的RS232TTL电平串口转换为USB,一般来说,用户端设备需要CH340驱动程序才能与CH340N通信。

    电阻R1、R2、R3、R4是为了增强接口的可靠性而串联在信号线上的,能够有效防止异常电压冲击[5-6],保护电路安全。

    为了减少电源对BME280测量精度的影响,引脚6和引脚8接入的3.3 V需要加滤波电容C6和C8,滤掉高频干扰信号。

    BME280通过SPI总线(通过寄存器设置为SPI)与MCU通信,四线连接,SDI、SDO、CSK分别连接单片机的MOSI、MISO、SCLK,本模块总线中只有一片BME280,片选CSB引脚可以直接接地GND。SPI总线读写速度非常快。

    STC15W408内部有8 kB程序空间,5 kB不易失EEPROM,以及512字节RAM。对于处理温度、湿度和气压三种要素的数据,计算环境条件都是足够的,完全胜任读取瞬时值并处理报文。单片机的运行速度也非常快,还可以做一些数据质控比较复杂的运算,也足以胜任高速通信的要求。

    2.2 电源设计

    把模块看作集成传感器,5 V供电取自与其连接的数据采集设备。如果链接USB,那么采集器端的USB接口5 V即供给模块使用。如果连接采集器端RS232串口,则通过外接5 V对模块供电。图2为稳压电路。5 V通过三端稳压器LM1117S-3.3输出3.3 V,驱动电流可以达到1 A,封装采用SOT-223体积很小。输入和输出均加上高频及低频滤波电容是必须的,最好采用高频陶瓷电容。

    图2 稳压电路

    需要注意的是,用户端5 V电源接入端使用LC滤波电路[7-9],如图1中的滤波电路L1、C1及L2、C3,L1和L2使用磁珠代替。

    2.3 PCB设计

    微型化、数字式是本次设计的目的。PCB大小设计为50 mm×25 mm,有利于制作成笔状传感器,便于安装在微型百叶箱里面。PCB板设计如图3所示。为了增强抗干扰能力,顶层和底层需要敷铜,谨记敷铜与信号地GND连接[10-13]。在PCB上放置滤波电容电感器件应该尽量靠近芯片的电源输入引脚,如C6、C8须紧靠BME280的引脚6及引脚6放置,增强滤波效果。电源布线走线尽量宽一些,一般不要小于12 mil,本设计中电源走线采取25 mil线宽。输入端导线与输出端导线应尽量避免平行布线以免发生耦合。STC15W408AS单片机芯片与BME280链接的数据线和地址线应尽量平行布线。

    图3 模块的PCB

    模块的内嵌软件采用C语言编写。本设计重点是对BME280编写代码。包括芯片初始化、总线逻辑、寄存器写、AD数据读取等。单片机STC15W408初始化比较简单,主要是完成引脚功能定义就可以使用。BME280芯片支持SPI和I2C两种通信模式,因为模块中只有一片BME280,可以把CSB引脚固定接地,上电就决定了它的接口方式为SPI,MCU实现SPI读写可以采用硬件逻辑完成,也可以使用软件模拟来完成[14-16],本设计使用软件模拟总线逻辑来实现,使用起来更加灵活方便。

    #include "bmp280.h"

    #include "spi.h"

    #include "STC8A_GPIO.h"

    #define SCK_D(X) (X?(P15=1):(P15=0))

    #define MOSI_D(X) (X?(P13=1):(P13=0))

    #define MISO_I() P14

    对BME280初始化代码如下:

    unsigned char BME280_Init(void)

    {

    unsigned char BME280_ID,ch;

    //以下两行软件模拟SPI初始化

    MOSI_D(1);

    SCK_D(0);

    BME280_ID=SPI_Receiver_Dat(ch,CHIP_ID_Addr);//Read the CHIP_ID- 0x58读取芯片ID= 0x58

    Parameter_Reading(); //读取温度、湿度和气压校准系数

    SPI_Send_Dat(CMD_Addr,0xB6);//RESET

    delay_ms(1000);

    SPI_Send_Dat(IF_CONF_Addr,0x00);//设置4线SPI接口,禁止I2C看门狗启动

    SPI_Send_Dat(CONFIG_Addr,0x00);//设置IIR滤波器为旁路,即是没有过滤

    SPI_Send_Dat(FIFO_CONFIG,0x02);//设置寄存器包含FIFO帧内容配置

    SPI_Send_Dat(INT_CTRL_Addr,0x02);//设置INT中断引脚高电平有效,禁止所有中断

    SPI_Send_Dat(ODR_Addr,0x05);//设置输出数据速率 0x04=80ms 0x05=160ms

    SPI_Send_Dat(OSR_Addr,0x2d);//设置过采样率x32

    SPI_Send_Dat(ch,PWR_CTRL_Addr,0x33);//设置测量模式为正常模式,启用压力和温度测量

    delay_ms(1000);//需要适当延时等待芯片设置好

    returnBME280_ID;

    }

    初始化以后,就可以对BME280进行读写了。下面通过软件模拟SPI逻辑实现读写例程,代码如下:

    voidSPI_Send_Dat(unsigned char dat)

    { unsigned char n;

    for(n=0;n<8;n++)

    { SCK_D(0);

    if(dat&0x80)MOSI_D(1);

    else MOSI_D(0);

    dat<<=1;

    SCK_D(1);

    }

    SCK_D(0);

    }

    unsigned char SPI_Receiver_Dat(void)

    { unsigned char n ,dat;

    for(n=0;n<8;n++)

    { SCK_D(0);

    dat<<=1;

    if(MISO_I())dat|=0x01;

    else dat&=0xfe;

    SCK_D(1);

    }

    SCK_D(0);

    returndat;

    }

    上述读和写例程是一次读取或者写入一个字节,可以进行寄存器参数设置,读取AD转换器的结果等。三个要素的数据都是通过SPI总线读取。下面给出读取温度和气压代码:

    int32_t bmp280_read_Tdata()// 读取温度

    {

    unsigned char Temp_Data[3]={0};

    intTemp_Result=0;

    SPI_Receiver_Dat(BMP280_Read|BMP_Temp_msb);

    Temp_Data[2]=SPI_Receiver_Dat(0xFF);

    Temp_Data[1]=SPI_Receiver_Dat(0xFF);

    Temp_Data[0]=SPI_Receiver_Dat(0xFF);

    Temp_Result=Temp_Data[0]>>4;

    Temp_Result|=Temp_Data[1]<<4;

    Temp_Result|=Temp_Data[2]<<12;

    returnTemp_Result;

    }

    Intbmp280_read_Pdata()// 读取气压

    {

    unsigned char Press_Data[3]={0};

    intPress_Result=0;

    SPI_Receiver_Dat(BMP280_Read|BMP_Press_msb);

    Press_Data[2]=SPI_Receiver_Dat(0xFF);

    Press_Data[1]=SPI_Receiver_Dat(0xFF);

    Press_Data[0]=SPI_Receiver_Dat(0xFF);

    Press_Result=Press_Data[0]>>4;

    Press_Result|=Press_Data[1]<<4;

    Press_Result|=Press_Data[2]<<12;

    returnPress_Result;

    }

    湿度读取例程的代码与温度例程类似,限于篇幅,这里不再累述。读取的瞬时值还需要进一步修正才能够得到正确的温度、湿度和气压值,芯片文档有详细说明,这里也不再累述。

    获得了正确的气象要素数值后,需要进一步生成气象报文,比如瞬时最大值最小值,1分钟平均值,10分钟滑动平均值等等,可以按照协议格式通过RS232或者USB接口输出至用户终端接收。

    外场试验的考核评估依据主要参考了《新型自动气象(气候)站功能需求书(修订版)》和《气象观测专用技术装备测试方法总则(修订)》,对比观测试验内容包括对温度、湿度、气压等数据获取率、相关性、平均误差、绝对离差、标准差等。

    测量模块的技术性能验证需要实验室静态检测和外场动态试验,在实验室静态检测满足技术要求以后,开展外场观测试验是非常重要的,通过对外场实际观测的数据进行评估和对比分析,来验证测量模块在实际工作的性能好坏[20-21]。

    外场考核试验处于自然环境中,存在各种各样的干扰源,甚至恶劣的自然条件,动态试验的结果能够进一步说明模块是否具有符合规定的测量准确性、长期工作稳定性以及组网应用的便捷性。评估结果表明了模块的测量误差和稳定性均达到了设计要求。

    4.1 试验方法

    在广州地区一个标准气象观测场范围内,安装了一套投入业务使用的具有气象部门认证的自动气象站作为参考标准,在参考标准站旁边安装一套被测的测量模块,使两者所处自然环境条件基本相同,确保两者之间的可比性。测量模块通过RS232接口连接数据采集器获得实际观测数据,参考标准自动站的数据正常上传。为了试验多变的天气状况,春天季节容易出现高湿天气,因此选择2019年11月至2020年2月时间段。外场观测数据进行合理的数据质量控制,剔除个别人为因素造成的野值,形成数据集。对两者之间的观测数据进行如下对比分析。

    在整个外场试验考核的过程中,被测模块与标准自动气象站设备都采取自动校时机制,保持系统时间严格同步,保证获取的观测数据在时间上是一致的。同时,定期对两种设备进行维护保养减少额外干扰。

    4.2 评估方法

    为了更好地反映被试验模块的观测数据和标准参考站的观测数据,统计两者之间的相关系数、相对误差、平均绝对误差和标准差等几个参数,这些参数能够反映测量指标。具体的统计方法:

    1)相关系数:相关系数是反应两个研究变量之间线性相关程序的量,当相关系数的绝对值越接近1时,表示两个研究变量之间线性相关程度越大,当相关系数的绝对值越接近0时,表示两个研究变量之前线性相关程度越弱。

    其中:ρXY代表相关系数,Cov(X,Y)代表X、Y的协方差D(X)、D(Y),分别为X、Y的方差。

    2)相对误差:为绝对误差与真值的比值。

    其中:δ表示相对误差,Y表示测试设备数据,X表示标准器数据。

    3)平均绝对离差:平均绝对离差表示每个误差值与平均误差值之间的差的平均值。

    4)标准差:

    其中:σ为标准差,xi的平均值(算术平均值)为μ。

    4.3 评估结果

    数据分析时段:温、湿、压使用2019年11月至2020年2月的观测数据。数据分析以正式业务使用的自动站观测数据作为参考标准器,被考核模块分别与标准器做各要素进行对比分析。

    4.3.1 温度

    图4为评估时间段的温度曲线,黑色为标准参考站温度,灰色为被测模块温度。

    图4 二者温度曲线

    为了更好地评估各个温度段的线性关系,把所有样本中的各个温度段分别统计出来样本个数,如表1所示。

    表1 模块测量数据各温度范围误差

    从表1可以看出,不同的温度段的平均相对误差相差比较小,说明测量线性比较好。

    统计结果表明,被测模块与标准器温度的相关系数为0.993 479,平均相对误差为0.031,绝对离差为0.015,标准差为0.029。这些误差都满足地面气象观测规定指标要求。

    4.3.2 相对湿度

    图5为评估时间段的相对湿度曲线,黑色为标准参考站的相对湿度,灰色为被测模块的相对湿度。

    图5 二者相对湿度曲线

    与温度评估方法类似,为了更好地评估各个湿度段的测量线性关系,把所有样本中的各个相对湿度段分别统计出来样本个数,如表2所示。

    表2 被测模块各相对湿度范围误差

    从表2可以看出,不同的湿度段的平均相对误差相差只有0.033,说明测量线性比较好。

    统计结果表明,被测模块与标准器相对湿度的相关系数为0.992 673,平均相对误差为-0.004,绝对离差为0.032,标准差为0.047。这些误差都没有超过规定指标要求。

    4.3.3 气压

    图6为评估时间段的气压曲线,黑色为标准参考站气压,灰色为被测模块气压。

    图6 二者气压曲线

    与温度评估方法类似,为了更好地评估各个气压段的测量线性关系,把所有样本中的各个气压段分别统计出来样本个数,列表如表3。

    表3 被测模块各气压范围误差

    从表3可以看出,不同的气压段的平均相对误差相差只有-0.000 22,说明测量线性很好。

    统计结果表明,被测模块与标准器气压的相关系数为0.991 766,平均相对误差为-0.000 22,绝对离差为0.000 385,标准差为0.000 479。这些误差都没有超过规定指标要求。

    对于精密测量仪器来说,硬件设计和软件设计的方法和经验十分重要,方法得当才能保证精密仪器的性能和稳定性。基于BME280多要素环境传感器设计的集成气象多要素测量模块,实现了一体化、微型化结构。虽然BME280本身有比较完善的误差补偿方法,但是电源和外设的影响不容忽视,还与外围电路关系较大,通过科学合理的硬件设计,尤其是外围电路的技术细节设计,对确保模块的测量精度至关重要。用户端提供的电源纹波大小和其他干扰可能会影响测量精度,本设计通过增加电源的LC滤波电路是非常必要的。软件处理方法上,注意超采样时间适当长一些,也就是AD转换器的积分时间长一些。另外,采取连续读取3次数值再做质控[17-19],提取合理准确的数据,这也是全量程最大允许误差指标不超标的重要保证。

    国产单片机STC15W408自带内部时钟RTC,最高频率可达24 MHz,不需要外部复位引脚,只有16根引脚,体积非常小,总体性能可以满足一般用途,十分适合微型化产品设计,微型化设计适应大面积物联网气象监测的应用场景[20-21]。测量模块两个串口为实际应用提供极大便利。在实际的应用中,用于社会观测的微型自动气象站中使用,硬件性能稳定。

    一个稳定可靠的精密仪器产品,需要经过长时间的外场试验和评估,通过评估数据来说明产品性能的好坏。本模块进行了四个月时间的外场试验,通过实际观测数据对其动态性能进行练综合的评估,结果表明,模块与标准器两者之间的相关系数、相对误差、平均绝对误差和标准差等达到设计要求。当然,试验也存在欠缺,一方面外场试验时间只有四个月,相对来说时间比较短,而且只在冬天和春天,未能横跨一年四季;
    另一方面是冬天和春天的天气变化范围不是太大,远没有接近全量程范围;
    还有一方面是只有南方区域的试验而缺少北方天气场景。总的来说数据评估的代表性还是有点欠缺,需要以后进一步试验和评估。

    猜你喜欢微型化气压湿度看不见的气压幼儿画刊(2021年5期)2021-12-02工业锅炉饱和蒸汽湿度的运行控制中国特种设备安全(2021年9期)2021-03-02文思构建,开展微型化写作作文成功之路·小学版(2020年6期)2020-07-27What is VR疯狂英语·新读写(2019年10期)2019-10-24压力容器气压端盖注射模设计模具制造(2019年4期)2019-06-24基于湿度控制的室内空气净化器高压电源设计测控技术(2018年9期)2018-11-25泰州大桥主缆纵向湿度分布及相关性分析上海公路(2018年1期)2018-06-26碳酸氢钠分解实验的微型化改进中学化学(2017年5期)2017-07-07关于微博兴起大众传播微型化倾向的探讨新闻传播(2016年12期)2016-07-10跟踪导练(二)(2)时代英语·高二(2015年2期)2015-05-18
    相关热词搜索:要素气象测量

    • 名人名言
    • 伤感文章
    • 短文摘抄
    • 散文
    • 亲情
    • 感悟
    • 心灵鸡汤