APP下载

基于STM32的巢湖水域综合监测系统的设计与实现①

2021-11-10刘佳祺

关键词:巢湖长距离水域

刘 运, 刘佳祺

(巢湖学院信息工程学院,安徽 巢湖 238024)

0 引 言

巢湖地处合肥市与巢湖市之间,是我国第五大淡水湖。作为省内重要的淡水湖泊资源,是安徽长期可持续发展的重要支撑。由于巢湖水域面积较大,降水量的时间和空间分布都不一致,周边地域环境也不一致,采用人力进行水域环境综合监测不仅耗费巨大的成本,而且还可能造成监测精度不准确。因此,提出了一种基于多传感器组合的巢湖水域环境综合监测网络系统。该系统采用低功耗的长距离模块用于通信,在保证精确程度的情况下,以降低的设备成本和能耗,实现巢湖水域综合监测,并提出了一种基于模糊决策的数据融合算法。

1 总体设计

构建一个结合水质、空气质量和土壤参数以监测和评估巢湖水域环境的无线传感器网络(WSN)系统。系统是一个基于云架构的综合监测系统,该系统采用由小型电池供电的传感器组成,该传感器通过无线链路连接到能够将数据路由到云系统的小型接收器。对于在野外环境中长距离传输的WSN,采集节点的传感器需要具有较低的功耗。同时,由于该系统部署在河流和湖泊等广阔的区域,节点之间具有较长的传输距离。针对这两个问题,系统是一个低功耗、长距离WSN网络系统,系统部署示例如图1所示。

图1 系统部署示例图

数据收集是水域环境综合监测网络系统的基础。该系统使用传感器来构建物联网的传感层。由于水域的众多环境参数以及对监控网络的实时长期运行的需求,因此要求传感器节点的功耗较低,因此我们以STM32作为多传感器模块节点的核心。最耗电的操作是信息传输,而长距离传输是一种有效的解决方案,可解决传输信息消耗大量功率的问题。用户最想看到的是结果,而不是数据。将所有数据传输到云端以进行数据处理会产生较高的延迟,因此提出了一种将数据融合到采集节点和基站的方案,以减少数据量,提高效率。

2 多传感器组合模块(MultiSM)

降低网络功耗是构建低功耗传感层的首要任务。有两种降低功耗的方法,一种是使用低功耗传感器,另一种是使用低功耗处理算法。提出了一种新的解决方案,即多传感器组合模块(MultiSM)。数据采集节点由低功耗STM32处理器、多个传感器和低功耗长距离通信模块组成。多个传感器连接到STM32的输入/输出(I/O),并同时与它们通信。基站(BS)使用STM32作为处理器进行数据收集。系统包含了水质监测模块和空气监测模块,这两个模块均由MultiSM组成。

水质监测的MultiSM包括水温传感器、水位传感器、照度传感器、pH传感器、浑浊度传感器、电导率传感器和溶氧(DO)传感器。当建立硬件电路时,在敏感电极和处理器之间需要一个处理电路,以便对传感器收集的信号进行预处理。电路处理器使用STM32F103RCT6,这是一种嵌入式微控制器集成电路(IC),其内核大小为32位,速度为72 MHz,程序存储器大小为256kB,程序存储器类型为FLASH,RAM容量是48k[1]。

空气质量监测MultiSM包含了用于空气检测的PM2.5传感器、空气温度、湿度传感器和有害气体检测传感器,用于检测土壤的土壤湿度传感器和光传感器以检测照明。上述的各种传感器构成水面外模块。

一个MultiSM节点包含了多个传感器,能够获得全面的感测信息。一组传感器使用同一个处理器,以提高资源利用效率。传感器和处理器均为有线连接,以确保易于部署且高度准确。在检测环境中部署的大量MultiSM以采集巢湖水域的综合数据。此外,系统中的每个MultiSM节点上均安装了全球定位系统(GPS)以便查找出现问题的数据,这能提高水域环境管理的效率。巢湖水域环境复杂,地理分布广泛,因此不容易发现环境污染等问题。但是,这种环境不需要很高的定位精度。因此,仅需要在每个MultiSM上安装GPS并在发送数据时发送节点的位置信息。

3 监测网络部署

系统需要实现数据的自动传输,并在某些情况下提供反馈机制,以优化数据收集的粒度。通常,无线传感器节点由传感器单元、接口电路、处理器、收发器系统和电源单元[2]组成。无线传感器网络的能耗主要体现在两个方面,一个是数据收集节点,另一个是无线通信,其中射频通信比信息收集消耗更多的能量。因此,在构建低功率网络系统时,无线通信模式的选择非常重要。如果将长距离广域网技术[3]用于射频通信,则组织网络非常简单,可以使用简单的星型网络。MultiSM作为数据获取节点直接与基站进行通信,中间不需要路由节点。

通过使用高扩频因子,长距离通信技术可以通过广泛的无线电频谱传输少量数据。巢湖水域面积大,环境参数监测需要远距离传输,使用长距离通信能够节约能源,以增加电池寿命,并降低成本。该系统使用LoRaWan(长距离广域网)建立水域综合监测网络。系统的网络体系结构是典型的星形拓扑。在此网络体系结构中,长距离通信网关是连接终端设备和后端中央服务器的传输中继。网关和服务器通过标准IP连接,终端设备通过单跳与一个或多个网关通信。所有节点和网关都进行双向通信,并支持诸如云升级之类的操作以减少云通信时间。

系统使用SX1278模块,用于超远程扩频通信的长距离通信远程调制解调器。它具有强大的抗干扰能力,并最大程度地降低了功耗。SX1278是单通道收发器模块,以433 MHz的频率运行,并使用时分多路复用。它的吞吐量约为19bps,理论上可以连接超过60,000个传感器节点。但是,该系统使用MultiSM,并且每个MultiSM都连接有7个传感器,因此系统的基站理论上可以接收8500个以上的MultiSM节点。

基站负责收集并处理数据并将其上传到服务器或云[4]。该系统中的基站采用STM32作为核心处理器,而长距离通信接收器负责接收MultiSM的数据。同时具有显示、报警和上传功能。串行端口连接LCD屏幕以显示当前收集的数据。如果数据值超过环境标准参数,则将激活警报功能。同时,基站通过LTE将数据上传到云中。由于长距离通信的抗干扰能力强、传输距离长,数据采集节点可以直接与基站通信,而无需中继路由和多径传输,从而保证了信息的准确性。

4 数据采集

WSN的数据收集和传输有两种类型:一种是基站收集传感层的数据,另一种是从基站到服务器或云的数据传输[5]。第一类要求数据完整性和新鲜度,并避免数据拥塞。第二类要求是消息简洁,最好具有判断结果,而最重要的是快速。系统的收集节点是MultiSM,因此来自传感器的数据以数据队列的形式传输到BS。BS对收集到的数据进行判断,以使传输的数据量相对较小,因此应用了GPRS上传。

每个MultiSM连接了多个传感器,例如MultiSM中有6个传感器和一个GPS定位模块,用于水质监测。每个传感器收集的数据结构在数据类型和字节长度方面有所不同。由于STM32中有很多串行端口,因此可以用作MultiSM的核心处理器。每个串行端口分别连接到传感器,并且可以根据需要扩展。收集数据需要遵循以下的规则,即,没有数据丢失、方便存储、一个周期内没有重复数据。对于采集节点,数据收集不是目的,目的是将数据发送到基站。因此,采集节点还需要根据RF模块要求打包数据,并且需要数据的新鲜度和及时性。考虑到以上指标,排队方法符合要求。因此,提出了一种基于队列的数据上传算法。它根据时分多路复用的原理,为传感器感测到的每种数据类型设置一个ID,并将其排队以便上载。如果基站需要重复调用某种类型的信息,则基站会发送一个中断消息以提供要接收的ID。

空气监测节点所接收的数据队列是GPS、有害气体检测、照度、土壤湿度、PM2.5、空气温度、湿度和雨雪。每个节点收集的数据都打包为长距离通信数据结构的有效负载。长距离通信调制解调器同时使用显式模式和隐性模式,其区别在于:使用显式模式时,数据包头部包含数据包传输的字节数、数据编码率以及是否使用循环冗余校验;而如果有效载荷长度、编码率和循环冗余校验是固定的或已知的,则可以调用隐式报头模式以缩短发送时间。如果扩展因子设置为6,则只能使用隐式头部模式。长距离通信数据包结构主要由前导码、标头和循环冗余校验(显式模式)、有效负载和有效负载的循环冗余校验组成。

当接收器有数据流流入时,前导码用于保持数据同步,设置范围为6到65,535字节。标头主要包含有效载荷信息、前向纠错编码率和可选的16位有效负载CRC。如果在开发过程中已确定显式报头相关信息,则可以通过选择隐式报头来减少传输时间,并为接收器和发送器编写相关的有效载荷长度、前向纠错编码率和CRC。

长距离通信的物理层将上行链路信息与下行链路信息区分开,它是一种非对称通信协议。采集节点的数据上传是上行,这需要具有物理层的标头和上行链路CRC标头。CRC检查以确保整个数据的完整性。

系统使用SX1278,工作频率为433 MHz。它是具有半双工传输的低中频收发器。它的接收电路是一个由电容和电感构成的低通滤波器。长距离通信调制技术用于通过调整扩频因子、调制带宽和纠错编码率来平衡链路预算、抗干扰、频谱占用和标称数据速率。

另外,为了节省能量,在软件设计中,终端节点设置两种类型的阈值。第一种是数据阈值,当收集到10组以上的相同数据时,该节点将进入睡眠状态60min。第二个是数据传输阈值,当收集的数据在一定范围内时,它将停止将数据发送到协调器。例如收集pH值,当pH值介于6.5和7.5之间时,将停止发送数据。为了节省能量并延长网络寿命,系统采用数据融合来处理由采集节点收集的数据。为了减少上传的数据量,采集节点和基站可以在数据采集过程中融合采集到的数据。第一级数据融合计算来自传感器的每种数据类型的统计平均值和标准偏差,并将统计平均值作为第二级数据融合的样本,标准偏差用作第二级数据融合的基础数据融合。如果标准偏差超过允许值,则无需进行第二级数据融合,而直接将传感器数据发送到监视平台。

5 实验评估

通过在实验室中创建不同的实验环境以对系统进行测试,评估测试的标准如下所示:正常温度为18℃~35℃,最合适的温度为25℃~32℃;pH值的正常范围为6.5~8.5,低于6.5则为不正常;浑浊度小于等于25为正常,浊度太高表明水中硅盐过多,影响水生生物的正常生长;在水质标准中,没有电导率的指标,但是电导率和水的盐含量之间存在转换关系,电导率的确定有助于理解水中的盐含量;溶氧需要大于等于3 mg/L。

在相同位置但不同时间收集了20组数据,以分析采集系统的稳定性。图2显示了各个参数的变化曲线。从以上数据可以看出,同一水域位置在不同时间的各项参数值是动态变化的,并且在不同位置之间的参数值也是变化的。由图2可知,各个参数曲线的变化基本一致。因此,图2的变化不是由采集系统的波动引起的,而是由水域参数在不同时间的变化引起的。

(a)溶氧

6 结 语

巢湖水域是拥有丰富资源的生态系统,为了在水域中部署无线传感器网络进行环境监测,设计了一种基于多传感器组合模块和长距离通信的水域综合环境监测系统。未来的工作会集中在将该系统移植到巢湖水域的显示环境中以验证其鲁棒性,并结合云计算和数据挖掘算法来进行数据分析和环境预测,并将分析结果反馈给网络,以自动启动网络中的执行设备,从而达到保护水域的目的。

猜你喜欢

巢湖长距离水域
巢湖流域2020年洪水分析
提升水域救援装备应用效能的思考
超长距离水平MJS工法桩钻进水平度实例分析
巢湖 外一首
抗疫,在三峡两坝船闸水域
进博会水域环境保障研究及展望
巢湖,我的母亲
巢湖,我的母亲
柳江水域疍民的历史往事
宝马一举打破两项世界纪录 连续漂移8小时 边跑边加油