第一章 绪论
1.1 选题目的及意义
近年来,我国经济实力有了很大的提高,这给人民的生活带来了极大的便利,人们的物质生活十分丰富[1],但是人类生存的环境却没能和经济发展齐头并进,那样让人感到心旷神怡,事实是空气质量并不好,全国各地的环境问题比较严重。政府在 2007 年的时候就出台相关政策来治理环境,对工业废气废水排放标准做了严格限制,由此可推断出环境问题已经十分严峻。我们生存环境的好坏和森林植被的生长有着密切联系[2],森林对环境有以下几点好处。第一,留住水源,有效防止水土流失带来土地荒漠化的影响;第二,调节气候,空气流通性很大程度上受到森林的影响,森林中植物的光合作用能吸收空气中大量的二氧化碳气体,释放氧气,使空气质量提高;第三,防止风沙,森林中的植被能够挡住风沙侵蚀的作用。
上个世纪七十年代末到八十年代初,林业部对国家森林占地面积进行了统计,统计结果显示:我国总共有 11528 公顷的森林面积,森林蓄积量达到 90.3亿立方米,在世界森林资源排行榜上的第五位[3]。但是我国是人口大国,人均占有量比较低,森林资源受地形影响分布不均。根据我国第八次森林资源统计结果来看,全国仅有 21.63%的森林覆盖率,新疆、青海等地更是不到 1%的森林覆盖率,即便是以山地为主的贵州省,也仅有 10%多一点的森林覆盖率[4]。值得注意的是,中国的土地沙漠化程度越来越严重,上个世纪 70 年代每年 1500 多平方公里被沙漠化,本世纪初期每年土地沙漠化的面积已经超过了 3400 平方公里。目前,我国每年的土地荒漠化面积已经很让人吃惊了,大约是一个中等县的面积大小。土地荒漠化之所以会产生,主要是因为干旱和森林退化的缘故造成。很久以前,生活在我国西北地区黄土高原的人民,有着丰富的森林资源,生存环境非常优越,空气质量全国领先。如今我国土地沙漠化的代表之一就有黄土高原,风沙长年影响着生活在那里的人,他们不得已选择了远离家乡,这一切后果都是人们对森林过度破坏带来的。尽管政府也发布了相关政策来补救,如:退耕还林、人工种植等。但是人们缺乏生态保护的意识,这些措施带来的收效并不明显,土地荒漠化的情况,并没有得到很好的改善和解决。时至今日,国家仍然要投入大量的财力物力来改变这种土地荒漠化的现象。现阶段我国正践行生态文明建设,环境友好,资源节约,同时让经济发展与生态文明建设完美结合[5]。
..............................
1.2 森林生态环境监测系统概述
1.2.1 森林生态环境监测的方法
进行森林生态环境监测的时候要通过可比较的方案才能达到目的,需要从时间和空间两个维度出发,针对一定区域内的森林生态系统的类型、结构以及功能在内的重要组成要素进行测定和观测的结果[7]。通常是对植被的温度、湿度、光照强度、土壤温湿度、风速、风向等数据进行采集时用的较多,获取相关数据,并且对采集的数据进行分析处理,为相关行业提供准确有效的数据来源。在进行森林生态环境监测的时候,要充分考虑森林的空间结构特性,时间变异特性以及季节特征等因素的影响。从不同的监测目的和检测内容出发,存在多种不同的监测手段:(1)专项监测,对森林的某一特定植物的一项或者多项参数进行有规律或者是随机的进行数据收集和研究;(2)定期监测,在给定的监测区域内,对森林中的环境因子有规律周期性的采集和研究;(3)日常监测,需要对监测的区域进行全天候周期性采集和研究影响生态环境的影响因子。我们在完成监测任务的时候有着不同的目的,这时需要根据实际需求来选择合适的监测方法,对于那种对监测数据有着高要求的场合,可以用专项监测来完成,如果是对森林当中某个环境影响因子比较感兴趣,则可以采用定期监测的方案完成。依据内容、场地、周期来分类,可以将监测方法分为定位监测和半定位监测两种,这两个监测方法也有着各自使用的场景,如果需要对森林环境进行长期监测,可以采取定位监测的办法,现在我国在森林中建立了许多固定的监测点。根据区域大小和检测对象的标准进行分类,可分为:宏观监测、微观监测、重点区域监测以及典型区域监测[8]。
国家的发展和人类生存空气质量的好坏都和森林生态环境的质量有所关联,我国的地面监测设备同欧美国家相比有一定差距,很多监测项目无法直接通过智能设备完全胜任,需要人工的配合。人工测量的数据准确性和实时性都是无法做到完美。尽管人工操作也可以获取丰富的数据,但是存在的问题是数据的有效性不好保证,反而会给那些对数据进行分析的工作人员带来困难,从而影响政府对于森林管理制定的政策和计划。通过物联网设备承载森林生态环境监测系统既完成了数据采集又通过程序算法提高数据有效性,降低了数据分析的难度,对管理方案的制定提供了更加有力的帮助。
.................................
第二章 系统框架设计和关键技术分析
2.1 系统总体方案
论文基于物联网的三层网络结构模型出发,研究设计了一个生态环境监测系统,系统包括数据采集节点、网关节点以及应用程序三部分构成。系统总体框架如图 2.1 所示:

考虑到系统应用的背景是森林环境,所以整个系统的供电选择了锂电池的供电方式,另外系统中各个模块的工作电压有所区别,因此要设计相关的电压转换电路,满足系统的整体供电需要。
(2)传感器模块
采集节点位于物联网系统的感知层,实时准确地获取森林各种环境信号是采集节点的核心工作。本系统需要监测的参数包括:空气的温湿度、光照强度、土壤水分、土壤温度、CO2 浓度、PM2.5、降雨量、风速风向等。
(3)LoRa 无线通信模块
本系统应用于森林这种对无线通信干扰因素较多的恶劣环境中,对无线短距离通信模块的通信覆盖距离和抗干扰性方面都有着较高要求,因此采用基于LoRa 调制技术的无线射频收发器 SX1278[22]完成无线传感网络的通信任务,它有着通信覆盖距离广、网络容量大、低功耗以及抗干扰能力强等优势,应用于森林生态环境的监测是很好的选择。
.........................
2.2 无线传感器网络
无线传感器网络(Wireless Sensor Networks, WSN)[23-24]是一种分布式架构传感器网络,完整的 WSN 通常有采集节点、汇聚节点和网络服务器这三个部分组成。节点之间根据特定的网络通信协议,通过自组网的方式构建合理的传感器网络。在监测区域随机部署大量采集节点完成数据收集功能,然后沿着数据传输通道到达汇聚节点,汇聚节点通过对数据进行处理和分析,借助移动通信网络将数据传送到网络服务器,用户通过应用端的 GUI 平台来完成数据的查看和控制指令的下发等功能。无线传感器网络中的采集节点一般使用电池供电的方式,并且节点本身并不需要很强大的数据处理功能。汇聚节点在无线传感器网络中负责协调网络的通信,因此它的数据处理和通信能力相对要更强,它是 WSN 中感知节点和远程服务器连接的桥梁,实现将 WSN 局域网与 Internet 网络之间的数据传输。
无线传感器网络中的采集节点之间可以根据特定的通信协议实现自组网,并且可以动态完成不同形式网络组网[25],提高网络的整体性能。WSN 采用无线通信技术完成数据传输,根据实际情况将采集节点随机部署于监测区域,尤其是在那种恶劣、布线不方便的场景中,但是 WSN 通常通信距离有限,并且受环境的干扰较大,通信过程中信号容易受到外部干扰和多径衰退的影响,导致数据不能正常传输到汇聚节点。

第三章 感知层设计........................................16
3.1 系统硬件选型......................................................16
3.1.1 单片机选型.............................................16
3.1.2 部分传感器选型...........................................17
第四章 网络层设计............................................28
4.1 网络层结构分析......................................28
4.2 LoRa 自组网 MAC 协议设计...................................28
第五章 APP 设计.....................................37
5.1 需求分析................................................37
5.2 Android 开发平台搭建............................37
第五章 APP 设计
5.1 需求分析
在森林生态环境监测系统中,GUI 也是至关重要地存在。上一章我们的网关节点中采用了 4G 模块作为广域网的通信硬件,通过模块 GPRS 功能作为 TCP网络通信的客户端与远端的 TCP 网络服务器进行数据交互。其中远端的 TCP 网络服务器其实是和某个公网 IP 绑定在了一起,也就是说,我们如果要访问感知层采集到的环境数据,要在浏览器中输入那个公网的域名或者 IP 才可以。这样一来,每次想访问采集的数据,都要在浏览器输入域名或 IP 的做法显然过于复杂,给用户的操作带来了不好的体验。因此有必要为本系统设计一个专用的应用程序来简化用户访问数据时的复杂操作,提升用户体验。该应用程序主要负责在Android 手机端为用户提供一个人机交互界面,把传感器采集到的环境数据实时地在 APP 的界面中显示出来,方便用户直接通过 APP 就能够方便查看感知层传感器采集的环境数据。
Android studio 是 Android 应用开发过程中使用到的开发工具,这是一个Android 集成开发工具,由谷歌公司推出的基于 IntelliJ IDEA[54],类似于 EclipseADT,Android studio 提供了集成的 Android 开发工具用于 APP 的开发和调试,是目前最流行的 Android 应用开发工具[55]。使用 Android studio 做 Android 开发应用的时候,支持两种编程语言供开发者选择,分别是:kotlin 语言和 Java 语言。kotlin 语言是 Google 公司在 2017 年宣布成为 Android 官方开发语言,kotlin 语言凭借其强大的安全性、简洁性,给广大的开发者带来了耳目一新的开发体验[56],但是 Java 语言在 Android 应用开发方面已经使用多年,有着更好的资源渠道和更好的向下兼容特性。所以在本论文的应用程序开发中选择了 Java 语言进行编程,Java 是一种面向对象的编程语言,具有跨平台、通用性和高效性等显著特点[57]。选择 Java 语言,就必须在桌面电脑中提供 JDK(Java 程序开发工具包)。下面就将通过 64 位 Windows7 操作系统的计算机,对 Android 应用开发平台搭建进行说明。
...............................
第六章 总结与展望
6.1 研究工作总结
本论文以贵州森林场景作为研究背景,针对现有的森林环境监测系统存在的系统工作功耗大、节点组网方式旧、数据查看不方便等问题,专门研究设计了一套完整的基于物联网的森林生态环境监测系统,论文主要完成了如下工作:
(1)森林生态环境监测系统硬件平台构建。根据整个项目的低功耗要求,分别对项目中用到的微控制器(MCU)、各种环境数据传感器等硬件设备进行了严格的选型;另外,完成了整个项目的硬件电路原理图和 PCB 设计和硬件电路焊接工作。
(2)底层硬件单片机驱动程序编写。搭建好 keil MDK5 开发环境,使用 C语言编写相关硬件驱动代码、单片机时钟系统管理代码以及电源系统管理代码,使系统能够完成环境数据的采集和功耗管理功能。
(3)LoRa 自组网功能的设计。基于 LoRaWAN 通信协议开发系统 LoRa 自组网,完成了节点入网算法和时分复用算法的设计以及节点和网关的软件。
(4)4G 远距离网络开发。通过 SIM800 4G 模块的 GPRS 功能和远端服务器建立 TCP 连接,并且将各个节点采集的环境数据按照一定的数据包格式上传到服务器端。
(5)应用层 APP 的设计。搭建好 Android Studio 开发环境,通过 Java 语言和 xml 脚本设计好应用程序的启动界面和登录界面,使用 Android WebView 控件完成对对网页内容的获取并显示在应用端。
参考文献(略)