掌桥专利:专业的专利平台
掌桥专利
首页

一种基于多通信模块的传感器节点数据传输方法

文献发布时间:2023-06-19 11:17:41


一种基于多通信模块的传感器节点数据传输方法

技术领域

本发明涉及物联网无线传感网络技术领域,特别涉及一种基于多通信模块的传感器节点数据传输方法。

背景技术

近年来,随着物联网技术的飞速发展,物联网相关业务越来越多,美国市场研究公司(Forrester)曾经预测,截至2020年末,物联网所带动相关的产业业务将会是2013年互联网产业业务的30倍之多,而不断增长的业务需求也使得人们对无线传感器网络的要求也逐渐提高。目前的无线传感器节点还大多采用星型组网方式,传感器节点数据传输方式也大多只支持一种协议,主要通过网关将不同协议的数据进行汇聚并加以融合。这样的无线传感器网络虽然能够满足基本的需求,但是面对环境的突发变化导致数据量激增的情况时,由于传感器节点搭载的通信模块通常是以低功耗作为主要目的来选取的,这些模块的传输速率普遍较慢,无法满足突然增多的数据及时传输。同时无人机这类可移动节点在飞行过程中也无法从局部传感器节点获取快速及时、精准的环境数据。另一方面,虽然随着技术的发展,诞生了一批诸如LoRa(一种低功耗局域网无线标准),Sigfox(一种连接低功耗设备的无线网络,主要用于低功耗物联网)等低功耗广域网技术,但基于这些技术部署的无线传感器网络的数据传输速率较低,数据吞吐量也不大,而传统的蓝牙、Wi-Fi技术虽然有着不错的传输速率,但因其较高的功耗严重限制节点的部署范围。

因此,研究一种既能以低功耗的方式大范围部署传感器节点,完成环境数据的采集工作,又可以短时间内在局部为可移动的节点设备提供高速率的数据传输服务,成为了该领域亟待解决的问题。

发明内容

本发明提供了一种基于多通信模块的传感器节点数据传输方法,其目的是为了解决背景技术中大范围部署传感器节点功耗高,在局部为可移动的节点设备提供高速率的数据传输服务耗时长的技术问题。

为了达到上述目的,本发明提供的一种基于多通信模块的传感器节点数据传输方法,包括如下步骤:

步骤S1、部署传感器节点:传感器节点搭载传感器模块以及传感器节点通信模块,传感器模块负责采集环境数据,传感器节点通信模块负责将采集的环境数据,以多线程的方式上传给数据汇聚节点,传感器节点通信模块包括传感器节点低功耗通信模块及传感器节点高速传输通信模块;

步骤S2、部署数据汇聚节点:数据汇聚节点搭载汇聚节点通信模块,汇聚节点通信模块负责接收通过传感器节点通信模块上传的传感器节点数据,并能根据消息类别做出回应,汇聚节点通信模块包括汇聚节点低功耗通信模块及汇聚节点高速传输通信模块;

步骤S3、默认状态时数据传输以“低功耗模式”运行:对于传感器节点,默认状态下,仅开启传感器节点低功耗通信模块的数据传输线程,阻塞传感器节点高速传输通信模块的数据传输线程;对于数据汇聚节点,默认状态下仅开启汇聚节点低功耗通信模块的数据传输线程,阻塞汇聚节点高速传输通信模块的数据传输线程;传感器模块、传感器节点低功耗通信模块及汇聚节点低功耗通信模块上电,负责传感器模块的数据传输线程开始工作,周期性地将传感器模块采集到的环境数据发送给数据指定接收端的汇聚节点低功耗通信模块;

步骤S4、在遇到突发情况导致数据量激增或者有外部请求时,数据传输开启“高性能模式”:通过已连接的传感器节点低功耗通信模块及汇聚节点低功耗通信模块通信,获取收发设备双方共有的高速传输通信设备模块,通过分支限界的方法确定出能满足数据传输需求且功耗最低的通信设备模块搭配方案,收发设备双方开启通信设备模块搭配方案中选择出的通信设备模块,进行多通信模块并发数据传输;当环境恢复稳定或完成高速数据传输服务之后,其余线程回到阻塞状态,传感器节点通信模块及数据汇聚节点通信模块重新回到步骤S3的“低功耗模式”。

优选地,步骤S1中的传感器节点低功耗通信模块及步骤S2中的汇聚节点低功耗通信模块均包括低功耗、长距离传输的LoRa通信设备模块或Sigfox通信设备模块,以及低功耗、短距离的Zigbee通信设备模块或RFID通信设备模块;步骤S1中的传感器节点高速传输通信模块及步骤S2中的汇聚节点高速传输通信模块均包括高速、近距离传输的蓝牙通信设备模块或高速、远距离传输的Wi-Fi通信设备模块。

优选地,步骤S2中数据汇聚节点包括固定地点的汇聚节点以及可移动的汇聚节点,固定地点的汇聚节点以及可移动的汇聚节点与传感器节点通信模块之间以多线程的方式工作,所述多线程包括各模块数据接收、发送线程,以及数据处理线程。

优选地,步骤S1中传感器节点中传感器模块数量为多个,传感器节点还包括MCU,MCU通过UART串口分别与传感器节点低功耗通信模块及传感器节点高速传输通信模块相连,通过ADC或I2C或SPI或GPIO的接口连接各传感器模块;步骤S2中数据汇聚节点还包括数据汇聚节点设备,数据汇聚节点设备通过UART串口分别与汇聚节点低功耗通信模块及汇聚节点高速传输通信模块相连。

优选地,步骤S3中的“低功耗模式”包括如下步骤:

步骤S31、设置传感器节点高速传输通信模块和汇聚节点高速传输通信模块的标志位变量为false,仅开启传感器节点低功耗通信模块和汇聚节点低功耗通信模块的数据传输线程;

步骤S32、对传感器节点低功耗通信模块和汇聚节点低功耗通信模块进行初始化,配置好各项参数以及数据接收端的地址信息;

步骤S33、向数据指定接收端发送连接请求,建立连接;

步骤S34、调用传感器模块周期性地收集环境数据并通过传感器节点低功耗通信模块和汇聚节点低功耗通信模块上报给数据指定接收端。

优选地,步骤S4中的“高性能模式”包括如下步骤:

步骤S41、传感器节点结合自身情况和外部数据请求,计算出满足需求的最低数据传输速率;

步骤S42、传感器节点通过与数据接收端已建立连接的传感器节点低功耗通信模块及汇聚节点低功耗通信模块进行沟通,确认双方共有的高速传输的通信设备模块;

步骤S43、由步骤S42得到的双方共有的通信设备模块,根据其传输速率和功耗,通过分支限界的方法确定能满足传输速率要求且功耗最低的通信设备模块搭配方案;

步骤S44、将步骤S43中确定的通信设备模块搭配方案要使用的传感器节点高速传输通信模块或汇聚节点高速传输通信模块的标志位设定为true,唤醒负责其数据传输的线程,与数据接收端建立连接进行多通信模块并发数据传输。

优选地,所述步骤S43中,通过分支限界的方法确定能满足传输速率要求且功耗最低的通信设备模块搭配方案,具体包括如下步骤:

步骤S431、设满足需求的最小传输速率为S,总共有n个通信设备模块,每个通信设备模块的传输速率为si,通信设备模块的功耗为ei,可按如下方式建立次序:

e

用xi表示是否选用该通信设备模块,1表示选用,0表示不选,该问题可转换为表达式1):

步骤S432、确立代价函数,设已选k个通信设备模块,对于

步骤S433、分支过程采用深度优先的策略,每一次的分支都有两种选择,即选用该通信设备模块和不选该通信设备模块,因此分支过程可由二叉树表示,每一个结点用表达式2)计算代价函数的值作为所有子树可行解的下界,用R

步骤S434、定界过程开始初始值为所有通信设备模块全开的功耗,在搜索过程中得到一组可行解,将这组可行解的值更新为新的界,若后续过程有新的值更小的可行解,则将其跟新为新的界;若在计算代价函数的过程中,代价函数的值大于界的值,则可以进行剪枝操作,无需进行后续搜索;

步骤S435、得到的界即为最终可行解,即最佳模块搭配方案。

优选地,所述汇聚节点通信模块的数据接收过程中,数据处理流程包括如下步骤:

步骤S341、数据接收包括汇聚节点低功耗通信模块及汇聚节点高速传输通信模块的数据接收,默认情况下只监听汇聚节点低功耗通信模块串口,来接收传感器节点发送过来的消息,其它线程通过使用python事件类Event中的clear方法设置标志位为false,同时使用wait方法使其处于等待阻塞状态;

步骤S342、汇聚节点低功耗通信模块接收到数据之后将其放入消息接收队列,以便于消息处理线程使用;

步骤S343、判断消息类别:若消息为普通环境上报消息,则交给相应的处理线程处理这些数据;若消息为“高性能模式”开启请求,则将数据汇聚节点自身的高速传输通信设备模块信息加入发送队列;若消息为通过分支限界选出的通信设备模块搭配方案,则调用Event类的set方法,开启选用的高速传输通信设备模块进行多通信模块并发数据传输;若消息为“低功耗模式”开启消息,则关闭汇聚节点高速传输通信模块,回到使用步骤S341的“低功耗模式”运行。

本发明能够取得下列有益效果:本发明针对现有的无线传感网络存在的局限性,设计了一种基于多通信模块的数据传输方法,用于解决物联网无线传感网络只能服务单一的应用场景,无法完成复杂的数据采集需求的问题。该发明能让传感器节点不仅能以低功耗的模式完成常规的数据采集、上报工作,在遇到突发情况导致数据量激增以及面对外部请求例如无人机等可移动节点短时间内的高速数据传输请求时,还可以根据数据接收端和节点自身双方都搭载的通信模块,通过分支限界的方法确定出满足数据传输需求且功耗最低的模块搭配方案,进行多通信模块并发数据传输。

附图说明

图1为本发明的一种基于多通信模块的传感器节点数据传输方法的流程图;

图2(a)为本发明的一种基于多通信模块的传感器节点数据传输方法的一较佳实施例的传感器节点的结构示意图;

图2(b)为本发明的一种基于多通信模块的传感器节点数据传输方法的一较佳实施例的数据汇聚节点的结构示意图;

图3为本发明的一种基于多通信模块的传感器节点数据传输方法的一较佳实施例的“低功耗模式”的工作流程图;

图4为本发明的一种基于多通信模块的传感器节点数据传输方法的一较佳实施例的“高性能模式”的工作流程图;

图5为本发明的一种基于多通信模块的传感器节点数据传输方法的一较佳实施例的采用分支限界法确定模块搭配方案的工作流程图;

图6为本发明的一种基于多通信模块的传感器节点数据传输方法的一较佳实施例的数据处理流程的工作流程图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。

本发明针对现有的问题,提供了一种基于多通信模块的传感器节点数据传输方法,如图1所示,本发明的一种基于多通信模块的传感器节点数据传输方法包括如下步骤:

步骤S1、部署传感器节点:

终端设备的传感器节点作为物联网的感知层,相当于人的感官系统,用于识别、感知物体,采集数据,实现对环境的监控和动态调整。如图2(a)所示,传感器节点搭载传感器模块、传感器节点通信模块及MCU(微控制单元,Microcontroller Unit),传感器模块负责采集环境数据,传感器节点通信模块负责将采集的环境数据,以多线程的方式上传给数据汇聚节点,传感器节点通信模块包括传感器节点低功耗通信模块及传感器节点高速传输通信模块;传感器节点中传感器模块数量为多个;MCU通过UART(通用异步收发传输器,Universal Asynchronous Receiver/Transmitter)串口分别与传感器节点低功耗通信模块及传感器节点高速传输通信模块相连,通过ADC(Analog-to-Digital Converter,模数转换器)或I2C(一种简单、双向二线制同步串行总线)或SPI(串行外设接口,SerialPeripheral Interface)或GPIO(General-purpose input/output,通用型之输入输出)的接口连接各传感器模块;

步骤S2、部署数据汇聚节点:如图2(b)所示,数据汇聚节点搭载汇聚节点通信模块,汇聚节点通信模块负责接收通过传感器节点通信模块上传的传感器节点数据,并能根据消息类别做出回应,汇聚节点通信模块包括汇聚节点低功耗通信模块、汇聚节点高速传输通信模块及数据汇聚节点设备,数据汇聚节点设备通过UART串口分别与汇聚节点低功耗通信模块及汇聚节点高速传输通信模块相连;

数据汇聚节点包括固定地点的汇聚节点,如网关,以及可移动的汇聚节点,如无人机可移动节点。固定地点的汇聚节点以及可移动的汇聚节点与传感器节点通信模块之间以多线程的方式工作,所述多线程包括各模块数据接收、发送线程,以及数据处理线程。

步骤S1中的传感器节点低功耗通信模块及步骤S2中的汇聚节点低功耗通信模块均包括低功耗、长距离传输的LoRa通信设备模块或Sigfox通信设备模块,以及低功耗、短距离的Zigbee(一种应用于短距离和低速率下的无线通信技术)通信设备模块或RFID(射频识别,Radio Frequency Identification,一种阅读器与标签之间进行非接触式的数据通信技术)通信设备模块;步骤S1中的传感器节点高速传输通信模块及步骤S2中的汇聚方法节点高速传输通信模块均包括高速、近距离传输的蓝牙通信设备模块或高速、远距离传输的Wi-Fi通信设备模块。

首先按照图2(a)及图2(b)所示的结构图组装连接好各设备之后,分别设置各节点以多线程的方式运作。其中传感器节点通过设置全局变量的标志位来控制各线程的唤醒与阻塞,将此类节点分为了两种不同的模式,“低功耗模式”及“高性能模式”。

步骤S3、默认状态时数据传输以“低功耗模式”运行:对于传感器节点,默认状态下,仅开启传感器节点低功耗通信模块的数据传输线程,阻塞传感器节点高速传输通信模块的数据传输线程;对于数据汇聚节点,默认状态下仅开启汇聚节点低功耗通信模块的数据传输线程,阻塞汇聚节点高速传输通信模块的数据传输线程;传感器模块、传感器节点低功耗通信模块及汇聚节点低功耗通信模块上电,负责传感器模块的数据传输线程开始工作,周期性地将传感器模块采集到的环境数据发送给数据指定接收端的汇聚节点低功耗通信模块;

步骤S4、在遇到突发情况导致数据量激增或者有外部请求时,数据传输开启“高性能模式”:通过已连接的传感器节点低功耗通信模块及汇聚节点低功耗通信模块通信,获取收发设备双方共有的高速传输通信设备模块,通过分支限界的方法确定出能满足数据传输需求且功耗最低的通信设备模块搭配方案,收发设备双方开启通信设备模块搭配方案中选择出的通信设备模块,进行多通信模块并发数据传输;当环境恢复稳定或完成高速数据传输服务之后,其余线程回到阻塞状态,传感器节点通信模块及数据汇聚节点通信模块重新回到步骤S3的“低功耗模式”。

如图3所示,步骤S3中的“低功耗模式”包括如下步骤:

步骤S31、设置传感器节点高速传输通信模块和汇聚节点高速传输通信模块的标志位变量为false,仅开启传感器节点低功耗通信模块和汇聚节点低功耗通信模块的数据传输线程;

步骤S32、对传感器节点低功耗通信模块和汇聚节点低功耗通信模块进行初始化,配置好各项参数以及数据接收端的地址信息;

步骤S33、向数据指定接收端发送连接请求,建立连接;

步骤S34、调用传感器模块周期性地收集环境数据并通过传感器节点低功耗通信模块和汇聚节点低功耗通信模块上报给数据指定接收端。

如图4所示,步骤S4中的“高性能模式”包括如下步骤:

步骤S41、传感器节点结合自身情况和外部数据请求,计算出满足需求的最低数据传输速率;

步骤S42、传感器节点通过与数据接收端已建立连接的传感器节点低功耗通信模块及汇聚节点低功耗通信模块进行沟通,确认双方共有的高速传输的通信设备模块;

步骤S43、由步骤S42得到的双方共有的通信设备模块,根据其传输速率和功耗,通过分支限界的方法确定能满足传输速率要求且功耗最低的通信设备模块搭配方案;

步骤S44、将步骤S43中确定的通信设备模块搭配方案要使用的传感器节点高速传输通信模块或汇聚节点高速传输通信模块的标志位设定为true,唤醒负责其数据传输的线程,与数据接收端建立连接进行多通信模块并发数据传输。

所述步骤S43中,通过分支限界的方法确定能满足传输速率要求且功耗最低的通信设备模块搭配方案,具体包括如下步骤:

步骤S431、设满足需求的最小传输速率为S,总共有n个通信设备模块,每个通信设备模块的传输速率为si,通信设备模块的功耗为ei,可按如下方式建立次序:

e

用xi表示是否选用该通信设备模块,1表示选用,0表示不选,该问题可转换为表达式1):

步骤S432、确立代价函数。设已选k个通信设备模块,对于

步骤S433、分支过程采用深度优先的策略,每一次的分支都有两种选择,即选用该通信设备模块和不选该通信设备模块,因此分支过程可由二叉树表示,如图5所示,每一个结点用表达式2)计算代价函数的值作为所有子树可行解的下界,用R

步骤S434、定界过程开始初始值为所有通信设备模块全开的功耗,在搜索过程中得到一组可行解,将这组可行解的值更新为新的界,若后续过程有新的值更小的可行解,则将其跟新为新的界;若在计算代价函数的过程中,代价函数的值大于界的值,则可以进行剪枝操作,无需进行后续搜索;

步骤S435、得到的界即为最终可行解,即最佳模块搭配方案。

网关和无人机等设备均可根据环境需求搭载不同的通信设备模块,该类设备同样采用多线程的方式运作,使用python语言进行编程。

如图6所示,所述汇聚节点通信模块的数据接收过程中,数据处理流程包括如下步骤:

步骤S341、数据接收包括汇聚节点低功耗通信模块及汇聚节点高速传输通信模块的数据接收,默认情况下只监听汇聚节点低功耗通信模块串口,来接收传感器节点发送过来的消息,其它线程通过使用python事件类Event中的clear方法设置标志位为false,同时使用wait方法使其处于等待阻塞状态;

步骤S342、汇聚节点低功耗通信模块接收到数据之后将其放入消息接收队列,以便于消息处理线程使用;

步骤S343、判断消息类别:若消息为普通环境上报消息,则交给相应的处理线程处理这些数据;若消息为“高性能模式”开启请求,则将数据汇聚节点自身的高速传输通信设备模块信息加入发送队列;若消息为通过分支限界选出的通信设备模块搭配方案,则调用Event类的set方法,开启选用的高速传输通信设备模块进行多通信模块并发数据传输;若消息为“低功耗模式”开启消息,则关闭汇聚节点高速传输通信模块,回到使用步骤S341的“低功耗模式”运行。

本发明能够取得下列有益效果:本发明针对现有的无线传感网络存在的局限性,设计了一种基于多通信模块的数据传输方法,用于解决物联网无线传感网络只能服务单一的应用场景,无法完成复杂的数据采集需求的问题。该发明能让传感器节点不仅能以低功耗的模式完成常规的数据采集、上报工作,在遇到突发情况导致数据量激增以及面对外部请求例如无人机等可移动节点短时间内的高速数据传输请求时,还可以根据数据接收端和节点自身双方都搭载的通信模块,通过分支限界的方法确定出满足数据传输需求且功耗最低的模块搭配方案,进行多通信模块并发数据传输。

本发明步骤S1改进了无线传感器网络感知节点的通信方式,使其从原本的单一数据传输方式改进为支持多模块、多协议并发传输数据的方式,在不影响原本的数据采集和上报的情况下,还提供了局部高速、高频率、高精度的数据传输方式。

本发明步骤S2改进了数据接收端的一般服务方式。数据接收端通过搭载多通信模块,采用多线程的工作方式,实现了对多协议数据交换的支持。网关作为中间件对多协议消息的支持完成了数据的转换和融合,无人机等可移动节点通过选配需要的通信模块,可以直接与最近的节点进行数据交换,而无需飞到网关附近获取数据,可以提高其工作的效率

本发明步骤S3、步骤S4所描述的通过开启、阻塞不同的通信模块,让设备进入不同的模式,使整个无线传感器网络既能保持总体低功耗的特性,又能短时间内提供高性能的数据交换服务。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

相关技术
  • 一种基于多通信模块的传感器节点数据传输方法
  • 一种基于缓存节点过滤的无线传感器网络数据传输方法
技术分类

06120112876828