依据物联网的树干径流自动监测系统1)

2020-03-25 06:22王广胜朱睦楠汪思龙颜绍馗尹攀
东北林业大学学报 2020年2期
关键词:微控制器径流杉木

王广胜 朱睦楠 汪思龙 颜绍馗 尹攀

(湖北生态工程职业技术学院,武汉,430000) (中国科学院沈阳应用生态研究所)

在森林水循环方面,森林对林外降雨通过林冠截留、树干径流、穿透雨、蒸散、径流等因素来调节和分配森林生态系统水循环途径[1-3]。在森林水文中,树干径流指被林冠层截留的雨水经过树叶、树枝沿着树干流向地面的雨水[4]。虽然在森林水分平衡中占得比重小,却起到将部分雨水进行汇集作用,能将冠层养分通过树干径流方式直接汇入树根区域,有利于树木生长[5]。目前用于监测树干径流的常用的方法有两种,第一种为塑料桶承接法,沿树干下来的雨水经过绕树U型橡胶管汇集到一定体积的密闭塑料桶,每次降雨过后,由人工去测量塑料桶内汇集雨水体积,这种方法工作量大,人工误差也大,特别是在南方森林雨季时期,经常降雨量过大,树干汇集的雨水体积超过塑料桶体积造成数据无法准确测量。第二种方法为翻斗式雨量计法,将收集桶更换为翻斗式雨量计进行直接计数测量雨水体积[6]。然而,这种翻斗式雨量计翻斗容积不适合计量树干汇集的雨水,长时间放置野外容易造成堵塞。同时一套翻斗式雨量仪器系统只能监测一棵树,容易造成成本过高,无法达到多棵树同时在线监测的效果,不适合广泛使用。

物联网技术主要是物品与物品之间信息通过互联网技术相连接通信和控制,它的核心技术包括智能传感器技术、射频识别(RFID)技术、全球定位系统(GPS)技术、嵌入式系统技术等[7]。随着这些技术的发展,已经逐步应用于中国森林生态系统的监测和预警中,例如物候监测、树干胸径监测、土壤水分监测、气象监测等[8]。

本文基于物联网技术在树干径流监测方面还不完善情况下,自行研发一套树干径流自动监测系统,在降雨过程中能准确的将每棵监测树木的径流原始数据收集传送到嵌入式系统进行处理储存,利用4G移动通信网络技术将储存数据传输到互联网服务器数据库进行后台处理,最终在终端界面将数据实时在线显示出来,有效的降低人力和物力成本,大幅度提升了数据质量。

1 系统总体框架

本文研究的树干径流自动监测系统由翻斗式水量传感器、数据采集和处理模块、无线通信模块、服务器、客户端等构成(图1)。

数据采集、存储与传输系统:数据采集系统包括翻斗式传感器、处理器、无线通信等。处理器接收来自传感器发来的脉冲信号,并进行初步处理和存储进移动储存卡(SD)中,无线通信模块读取SD卡中数据通过分组无线服务技术(GPRS)上传到服务器,以达到实时在线上传数据的效果。

图1 系统总体框架

网络无线通信系统:利用全球移动通信系统(GSM)的无线分组交换技术,在GSM协议构架的基础上增加了支持分组交换的协议,而实现基于分组的无线通信服务通过网络传输,采集终端采集的数据,对数据进行编码封装,经4G网络无线通信系统传输,传送到云数据服务器中心。

数据管理中心:下位机以GSON的格式发送数据,服务器收到数据后,进行分类,分析及汇总,相关人员在客户机或移动设备可以请求对应的数据,并以图表的形式展现,达到对树干径流实时在线监测。

2 系统硬件设计

2.1 野外监测系统硬件平台

数据采集平台核心部件是STM32F407VGT6微控制器(图2),它采用32位ARMCortex-M4F内核、1MB Flash、192KB RAM、LQFP100封装、工作频率最高可达到72 MHz。板上的ST-LINK/V2可以单独使用自己的目标板,其接口是SWD接口。整套电路板采用太阳能12 V稳定供电。

图2 STM32F407VGT6微控制器

GPRS模块是主控芯片和后台服务器端的硬件桥梁,以IP包的形式进行数据的传输。其和主控芯片串口分别连接TX、RX、GND,采用RS232通信接口传输数据,数据按协议帧格式串行传送,以字节为传送单位,采用波特率9 600 bps、8位数据位、1位停止位、无奇偶校验位的串口配置,按照此协议发送AT指令至GPRS模块(图3)。

图3 GPRS模块电路

翻斗式水量传感器为自主设计组装完成。根据野外长期监测树干径流数据情况来设计翻斗最适合量程,经过设计画图后由3D打印技术打印,把不同的翻斗经过实验室人工标定选择出翻转一次为15 mL的翻斗。利用磁铁—干簧管式距离磁控开关将信号接入微控制器的接口(图4)。

图4 传感器接口电路

设置人工监测数据对照,主要包括每棵树独立安装一个计数器,同时每棵树下安装经过翻斗计量流出后用于收集水的塑料大桶。

2.2 室内数据显示终端平台

服务器用python实现,以GSON的格式接收数据,服务器收到数据后,判定是否合法判断他说进行分类,分析及汇总,相关人员在客户机或移动设备可以请求对应的数据,并以图表的形式展现。

3 系统软件设计

3.1 数据的接收和采集程序设计

数据采集我们采用了微控制器(STM32F407)内部的中断控制器外设。首先是在程序启动之后对微控制器中断外设进行初始化为高低电平触发中断方式,初始化各个对应引脚,初始化系统RTC时钟以同步服务器时间,初始化数据缓存BUF,初始化设备外设SD存储卡等工作。当外部量水翻斗磁控开关信号对应触发中断引脚有高低电平产生时,微控制器会发生中断响应,程序指针会跳转到事先设定好的中断响应地址执行汇编程序,再通过判断微控制器内部外设寄存器的值来区分是那个中断源产生的中断,再跳转到相应的中断处理函数执行c代码程序。在c代码程序中我们主要是对数据缓存BUF累加计数,同时标记每次数据的对应时间。与此类推,每个电磁开关传感器通过每个LM393电压比较器接到微控制器的各个中断引脚,以同样的方式记录采集数据,以此来完成对沿树干汇集水量数据的采集(图5)。

图5 数据接收和采集流程图

3.2 数据的处理、存储、发送程序设计

数据的处理主要对每个数据采集通道所累加的数据缓存变量重组。数据重组是取各个通道的累加变量的数据和此刻的RTC时间进行“打包处理”(整合到一个结构体以方便存储和发送)。具体过程表现为程序一开始先初始化整个数据结构体变量data_count,data_time为零,初始化“程序运行时间标记变量(i1、i2、i3)”为零,接着开始进行逻辑判断1,判断内容为:此时刻的RTC时间(比如取单位为秒)减去i1的值是否大于一个自定义变量K1(此变量为周期控制变量,如K1等于60,就是周期为60 s)。如果逻辑判断1结果为真则执行如下:将上述的“各个采集通道的数据缓存变量”数值拷贝到数据结构体中,假设采集通道的数据缓存变量为count,结构体对应的变量为data_count,则直接另count=data_count。类似的把此时刻的RTC时间也拷贝进上述结构体里,同时以同样的方式处理其他数据通道。最后把i1的值变成此时RTC时间的值以做下一个周期判断,之后进行逻辑判断2。上述如果逻辑判断1为假则直接进行逻辑判断2,逻辑判断2的判断内容,此时刻的RTC时间值减去i2的值是否大于K2(其中K2与前面的K1性质类似)。如果判断2为真则运行:把在判断1为真时所打包好的数据结构体内容存入SD卡内,存储完后把i2的值变成此时RTC时间的值以做下一个周期判断,之后执行逻辑判断3。如果逻辑判断2为假则直接执行逻辑判断3程序。逻辑判断3的判断内容,此时刻的RTC时间值减去i3的值是否大于K3(其中K3与前面的K1、K2性质类似)。如果判断3为真,则执行如下程序:将逻辑判断1为真时所打包好的数据结构体内容转换成json数据格式,再将此数据包通过GPRS模块发送到远程服务器上,最后把i3的值变成此时RTC时间的值以做下一个周期判断,之后进行逻辑判断1,如果逻辑判断3为假则直接执行逻辑判断1,如此循环下去。在本设备设计中,我们定义的K1、K2、K3都等于60,其目的为每60 s(一分钟)存储和发送一次数据。

数据的存储,设备外设设计有一块8G内存miniSD卡,微控制器可以自由的往SD卡内写入数据,在本程序设计中我们是以定时的方式往SD卡内写入上述所“打包”好的数据,数据会存储在SD卡内,数据包过各个传感器通道的变量计数值和对应的时间点的值,以方便工作人员对数据的二次分析等。

数据的发送,数据的发送主要是把数据从我们的设备通过GPRS模块发送到互联网上的服务器,以实时获取到每个地区每个传感器设备的数据。同时数据打发送包过数据的处理,数据发送过程,此处的数据处理主要是对上述的各个中断通道的数据计数值、通过微控制器计算到的降雨量数据和对应各个时间点的值进行转换,把它们转换成json格式的数据再通过GPRS模块把数据发送到特定的服务器上。在发送数据程序设计上同数据存储也是定时发送,以send_time变量控制发送周期单位是分钟(图6)。

图6 数据的处理、存储、发送流程图

3.3 数据在服务器和终端换算和显示程序设计

服务器端使用python编写服务器,使用多线程技术监听各个站点,一旦连接,回一个握手信号开始接受数据,每个数据进行一个判断,符合json格式和内部协议要求,连接数据库,并把它写入mysql数据库.用户需要什么数据则在客户端发个post请求,服务器收到信息则以回调函数显示在客户端(图7)。

695snamesid02019/4/20 0:006696snamesid12019/4/21 0:004697snamesid22019/4/21 0:006698snamesid32019/4/21 0:002699snamesid42019/4/21 0:007700snamesid02019/4/21 0:309701snamesid12019/4/21 0:304702snamesid22019/4/21 0:307703snamesid32019/4/21 0:305704snamesid42019/4/21 0:3011705snamesid02019/4/21 1:0015706snamesid12019/4/21 1:009707snamesid22019/4/21 1:0011708snamesid32019/4/21 1:009709snamesid42019/4/21 1:0019710snamesid02019/4/21 1:3026711snamesid12019/4/21 1:3021712snamesid22019/4/21 1:3018713snamesid32019/4/21 1:3020714snamesid42019/4/21 1:3029715snamesid02019/4/21 2:0020716snamesid12019/4/21 2:0017717snamesid22019/4/21 2:0011718snamesid32019/4/21 2:0016719snamesid42019/4/21 2:0021721snamesid02019/4/21 2:3011722snamesid12019/4/21 2:3012723snamesid22019/4/21 2:308724snamesid32019/4/21 2:3010725snamesid42019/4/21 2:3014

图7数据库数据截图

4 调试与结果

4.1 系统稳定性测试

测试地点在中国科学院会同森林生态实验站实验林场的杉木人工林样地内,选取林内5棵杉木树,编号由1到5并估算树冠投影面积,杉木1树冠投影面积7 m2、杉木2树冠投影面积6 m2、杉木3树冠投影面积5 m2、杉木4树冠投影面积6 m2、杉木5树冠投影面积9 m2。将自动监测系统设置为每半小时采集一次数据,同时在对应的5棵树分别安装5个计数器用于验证系统是否会丢失数据。随机选取数据库中2019年4月21日记录的一部分降雨时段过后人工读取计数器数据(杉木1计数96次、杉木2计数80次、杉木3计数67次、杉木4计数70次、杉木5计数112次)与系统数据累计情况一致(表1),表明系统对磁控开关计数准确并且运行稳定正常。

表1 自动监测系统记录数据

注:时间为2019年4月21日的00:00-04:00。

4.2 数据精度测试

系统利用转换公式得出每棵树的水量和人工在塑料桶测量的水量进行比较(表2),两者偏差不大于10%,在允许范围内,满足使用要求,表明系统精度可靠。

表2 自动监测系统与人工测量值比较

4.3 两种不同监测方式的树干径流数据结果表现

随着降雨的进行,自动监测系统所计算的树干径流数据每半个小时产生一个结果,能够真实地反映出降雨对树干径流影响的时段变化(表3)。传统的人工监测只能等雨停过后,到现场记录、换算树干径流总数据。树干径流人工观测时段数据为杉木1的树干径流0.217 1 mm、杉木2的树干径流0.211 7 mm、杉木3的树干径流0.216 0 mm、杉木4的树干径流0.166 7 mm、杉木5的树干径流0.178 9 mm。

表3 树干径流自动监测系统换算数据

注:时间为2019.04.21的00:00-04:00。

5 结论

本文利用物联网技术设计出森林树干径流自动监测系统,通过微控制器(STM32F407)接受并处理翻斗式传感器磁控开关信号,对有效数据先进行存储入SD卡后在野外信号通畅条件下利用SIM900A模块以4G方式上传到服务器,工作人员通过客户端口直接获取数据并进行实时在线观测分析。与传统获取数据方式相比,不难发现自动监测系统能够完成描述一场降雨过程中的不同时段树干径流变化过程细节分量和全时段总量,而人工监测只能体现出一个全时段总量。因此,树干径流自动监测系统能为科研工作者在研究降雨、风速、温度等气候因素与树干径流之间关联情况提供更有效的数据。经过野外复杂环境长期测试以及人工数据比较,系统整体表现安全可靠、数据准确,节约了大量人力和物力成本,具有很强的推广应用性。

猜你喜欢
微控制器径流杉木
格陵兰岛积雪区地表径流增加研究
流域径流指标的构造与应用
基于SWAT模型的布尔哈通河流域径流模拟研究
杉木阔叶化改造对生态系统碳储量的影响
TASKING针对英飞凌第三代AURIX微控制器推出多核开发环境
杉木黄化病的防治技术措施研究
杉木造林技术的实施要点研究
人工降雨下三种屋面径流过程环境质量比较
简洁杉木装饰吊顶 打造高雅自然居室空间
电磁导向智能车设计探讨