APP下载

基于RT-Thread 的海洋环境监测站的设计*

2021-06-29刘帅朱洪海

数字技术与应用 2021年5期
关键词:监测站温湿度环境监测

刘帅 朱洪海,2,3

(1.齐鲁工业大学(山东省科学院),山东省科学院海洋仪器仪表研究所,山东青岛 266061;2.山东省海洋环境监测技术重点实验室,山东青岛 266061;3.国家海洋监测设备工程技术研究中心,山东青岛 266061)

0 概述

海洋环境是海上空中环境、海气边界层环境、水下环境和目标环境等环境状况的总称[1],随着沿海经济的快速发展,我国的海洋环境问题日益突出,当前海洋资源的可持续开发与利用已成为共识,因此对海洋环境进行监测具有重要意义。但我国海域广阔,导致海洋环境监测存在难度大、成本高的问题。RT-Thread是一款完全由国内团队开发和维护的来源RTOS,是一款组件丰富,功能强大的嵌入式实时操作系统。针对当前海洋环境监测存在的问题,结合当下技术的发展,本文设计了一款基于RT-Thread的海洋环境监测站系统,能够对海洋环境的基本气象要素进行监测,同时将数据进行存储和无线传输,用户可通过主机或移动终端实时获取海洋环境数据。

1 海洋环境监测站总体设计

海洋环境监测站主要实现气象水文要素的监测,如风、温湿度、气压、水温、皮温、盐度等要素,系统整体由数据采集控制器、数据传输单元、海洋环境监测终端三部分组成,同时移植RT-Thread物联网实时操作系统。数据采集控制器主要由各种水文气象传感器和MCU组成,如风传感器、温湿度传感器、气压传感器、温盐传感器等实现对数据的采集,同时将数据保存至SD卡。数据传输单元包括LORA无线通信模块及ESP8266模块,将数据采集控制器得到的数据通过传输单元发送到海洋环境监测终端,用户可通过终端主机或移动云平台对海洋环境要素实时监测。海洋环境监测站的总体架构如图1 所示。

图1 海洋环境监测站总体架构Fig.1 Overall architecture of marine environmental monitoring station

2 监测站平台硬件设计

2.1 数据采集控制器

在监测站系统中,数据采集控制器是关键的组成部分,MCU通过串口转换电路或直接与传感器连接,在监测站监测的水文气象要素中选取的风传感器、采用RS485接口,温湿度传感器通过单总线方式连接到主控中心,气压传感器采用IIC总线的连接方式、温盐传感器则采用的是RS232接口通信方式。数据采集完成后,数据保存至SD卡,同时通过数据传输单元中的LORA无线通信模块将数据发送到主机,经ESP8266 网络通信模块把数据传送到云端。移植RT-Thread实时操作系统,以此为基础采用多线程的方式对各个功能模块进行实现。

2.1.1 主控单元

传感器采集控制器的MCU 采用ST 公司生产的STM32 F103VET6芯片,该芯片是以ARM32位cortex-M3架构为基础的微处理器,工作频率可达72Mhz,其功耗低、稳定性强,以及丰富的片上资源完全满足本监测站的设计需求。

2.1.2 风传感器单元

监测站采用的风传感器为山东省科学院海洋仪器仪表研究所生产的XZC2-2型号,风速测量范围在0~75m/s,风向测量范围在0~360°,测量精度为±5°,采用RS485的通信接口,与MCU的连接简单,RS485 的通信方式极大增加了通信距离与数据的抗干扰性,满足监测站对风监测精度等方面的要求。

2.1.3 温湿度采集单元

温湿度采集单元使用DHT11传感器,采用单总线的传输方式。它是一款含有已校准数字信号输出的温湿度复合传感器。其内置电容式感湿元件、NTC 测温元件和一个高性能8位单片机,测量相对湿度范围为5%~95%RH,具有极高的可靠性与稳定性,同时还具有结构简单、成本低等特点[2],DHT11传感器接口如图2所示。

图2 DHT11 接线图Fig.2 DHT11 Wiring diagram

2.1.4 气压传感器

BMP180是一种高精度数字型压力传感器,在低功耗、高精度的模式下,采集数据精度 达到0.06hPa,在高线性模式时,精度可高达0.03hPa[3]。采用IIC方式进行通信,连接电路如图3 所示。

图3 BMP180 接线图Fig.3 BMP180 Wiring diagram

2.1.5 温盐传感器

温盐传感器采用日本JFE生产的型号ACTW-CAR,水温测量范围为-5℃~45℃,测量精度为±0.01℃,分辨率可达0.001℃,盐度测量范围在2~70ms/cm之间,测量精度达到±0.01mS/cm(2~65mS/cm),采用RS232的通信方式。

2.2 数据传输单元设计

数据传输单元包括LORA 通信模块和ESP8266 模块两部分,其中LORA 模块负责将数据传输至主机显示,ESP8266 模块将数据上传至云端。

LORA通信单元主要采用Semtech公司的SX1278射频芯片实现LORA数据的传输,该芯片用于超长距离扩频通信,抗干扰性强,能够最大限度降低电流消耗。相较传统调制技术,LORA 调制技术在抗阻塞和选择性方面也具有明显优势,解决了传统设计方案无法同时兼顾距离、抗干扰和低功耗的问题[4]。

ESP8266 是一款集成32位MCU的WIFI芯片,内置AT指令,通过AT指令,可以快速的开发网络应用,不需要关心具体的网络协议栈的内容,ESP8266 WiFi模块为乐鑫公司开发的一款物联网专用芯片,利用ESP8266模块只需要对串口设备进行对应的串口配置,即可将数据通过WIFI传输,实现物联功能。ESP8266 具备COM-AP 模式、COM-STATIOM 模式和COM-STA+AP 模式,每个模式都有各自的功能和应用场合[5],STA模式通过路由器和英特网相连,属于英特网内通信;AP模式将ESP8266作为一个热点,上位机通过连接此热点通信,属于局域网内通信;STA 混合AP模式是以上两种模式的混合,用户既可在局域网内通信,也可使用英特网通信[6]。

2.3 海洋环境监测终端

移动终端选用OneNET 平台,该平台是中国移动基于物联网产业打造的生态平台,具有高并发可用、多协议接入、丰富API支持、数据安全存储、快速应用孵化等特点。可以适配各种网络环境和协议类型,现在支持的协议有LWM2M(NB-IOT)、EDP、MQTT、HTTP、MODBUS、JTT808、TCP透传、RGMP等。用户可以根据不同的应用场景选择不同的接入协议。同时RT-Thread 针对OneNET平台做了软件包的适配,通过这个软件包可以让设备在RT-Thread上非常方便的连接OneNet平台完成数据的发送、接收、设备的注册和控制等功能。

3 软件设计

RT-Thread,全称是Real Time-Thread,它是一个嵌入式实时多线程操作系统,相较于Linux 操作系统,RTThread体积小,成本低,功耗低、启动快速,除此以外RTThread还具有实时性高、占用资源小等特点,非常适用于各种资源受限(如成本、功耗限制等)的场合。RT-Thread与其他很多RTOS如FreeRTOS、uC/OS的主要区别之一在于它不仅仅是一个实时内核,还具备丰富的中间层组件。

系统软件在集成开发环境RT-Thread Studio上开发,采用模块化设计包括数据采集模块、数据传输模块和数据上传模块三部分,在软件设计过程中通过移植RT-Thread物联网操作系统,其具有的体积小、启动快速、实时性高、占用资源小等优良特性完全符合该系统的设计需求。根据模块的功能分割成若干个独立的任务,每个任务相互独立,互不干扰,同时该操作系统还提供了丰富的组件和软件包资源,结合RT-Thread的丰富资源,海洋环境监测站的软件架构如图4 所示。

图4 软件架构Fig.4 Software Architecture

数据采集控制器是该海洋环境监测站的核心部分,主要功能是完成对各水文气象传感器水文数据的采集,数据的保存、实现环境监测终端对风、温湿度、气压、温盐等要素的监测,同时数据采集控制器将数据通过LORA无线通信模块及ESP8266网络通信模块将数据上传至主机和云端。系统的软件流程如图5 所示。

图5 软件流程图Fig.5 Software flow chart

4 结语

本文以RT-Thread操作系统为基础,STM32为主控核心,应用各种水文气象传感器包括XZC2-2风传感器、DHT11 温湿度传感器、ACTW-CAR 温盐传感器、BMP180气压传感器等仪器设计了开发了海洋环境监测站系统,详细阐述了软件硬件的设计思路,RT-Thread 支持多任务的属性使程序运行更加高效,同时其内部丰富组件和软件包资源使程序设计更加简捷。数据传输单元采用无线传输的方式可以有效解决有线传输对数据采集带来的不便,简单实用,可以实现海洋环境信息的实时监测,有一定的推广价值。

猜你喜欢

监测站温湿度环境监测
温湿度控制器在回收砂冷却系统中的应用
环境监测系统的数据分析与处理
基于DSP的多路温湿度监测系统
北京市监测站布局差异分析
对辐射环境空气自动监测站系统开展数据化运维的探讨
基于温湿度控制的天气预测装置
大气污染问题的环境监测
蒸发冷却温湿度独立控制空调系统的应用
与酷暑奋战的环保英雄——宜兴市环境监测站现场采样组的一天
对环境监测数据造假必须零容忍