CN114866976A - 一种基于LoRa自组网的智能感知终端装置及方法 - Google Patents
一种基于LoRa自组网的智能感知终端装置及方法 Download PDFInfo
- Publication number
- CN114866976A CN114866976A CN202210429158.5A CN202210429158A CN114866976A CN 114866976 A CN114866976 A CN 114866976A CN 202210429158 A CN202210429158 A CN 202210429158A CN 114866976 A CN114866976 A CN 114866976A
- Authority
- CN
- China
- Prior art keywords
- node
- network
- communication
- gateway
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/38—Services specially adapted for particular environments, situations or purposes for collecting sensor information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/04—Arrangements for maintaining operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0231—Traffic management, e.g. flow control or congestion control based on communication conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
- H04W28/065—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/12—Communication route or path selection, e.g. power-based or shortest path routing based on transmission quality or channel quality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0261—Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/16—Gateway arrangements
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Abstract
本发明是一种基于LoRa自组网的智能感知终端装置及方法,所述装置包括终端节点和通信网关,终端节点采集信息后发送给通信网关,并由其上传数据至云平台,实现远程监控;其中,终端节点包括了电源模块、信息采集处理模块、STM32控制器和LoRa通信模组,通信网关包括了电源模块、STM32控制器、LoRa通信模组和NB‑IoT/4G通信模组;本发明基于LoRa通信技术,以智能感知终端为物理载体,能够实现终端网络的动态组网和功能重构,解决了现有物联网系统容错率低、健壮性不高的问题。
Description
技术领域
本发明属于通信的技术领域,特别涉及一种基于LoRa自组网的智能感知终端装置及方法。
背景技术
近年来,随着物联网应用场景对节点组网需求的增加,出现了很多短距通信协议比如Zigbee、BLE等。随着LPWAN技术的发展,LoRa、NB-IoT等通信技术得到快速发展。其中,LoRa通信技术较其他LPWAN技术具有功耗低、覆盖面积广等优势。同时,自组网作为一种自组织、去中心化的新型通信网络,能够适应网络拓扑结构的动态变化,较传统星型组网有较大优势。
如专利申请201921961306.8公开了一种智能环网柜的LoRa自组网通讯系统,包括N个检测模块,N个LoRa单元、LoRa网卡以及通讯终端;N个检测模块及N个LoRa单元均分别设置于N个环网柜中。该实用新型通过设置在各个环网柜中的检测模块采集环网柜中的温度、湿度、气压等数据,并由对应的LoRa单元分别接受各检测模块获取到的数据,由LoRa网卡构成的LoRa无线传感网络与通讯终端建立连接,可进行下达指令以及查看环网柜数据。
因此,在现有物联网通信技术的基础上设计一种新型的、基于LoRa自组网的智能感知终端装置及方法是非常重要的。
发明内容
为解决上述问题,本发明的首要目的在于提供一种基于LoRa自组网的智能感知终端装置及方法,该装置及方法基于LoRa通信技术,以智能感知终端为物理载体,能够实现终端网络的动态组网和功能重构,解决了现有物联网系统容错率低、健壮性不高的问题。
为实现上述目的,本发明的技术方案如下。
一种基于LoRa自组网的智能感知终端装置,包括终端节点和通信网关,终端节点采集信息后发送给通信网关,并由其上传数据至云平台,实现远程监控;其中,终端节点包括了电源模块、信息采集处理模块、STM32控制器和LoRa通信模组,通信网关包括了电源模块、STM32控制器、LoRa通信模组和NB-IoT/4G通信模组。
本发明在物理层面包括若干终端节点、若干网关。其中,终端节点用于采集处理多维信息并上传给网关,同时接收来自网关的通信指令。网关一方面用于接收、处理终端节点的信息并上传给上位机,另一方面传递、执行来自上位机或者网关自身的通讯指令。
电源模块由可充电电源、稳压芯片、电源保护装置和整流滤波模块组成,可以稳定提供+5V、+3.3V等级电压,保证终端始终处于稳定工作状态。
信息采集处理模块由多维传感器组成,包括温湿度传感器、空气质量传感器、烟雾传感器等,其中温湿度传感器负责采集监测环境中的温湿度数据;空气质量传感器和烟雾传感器负责采集监测环境中的大气质量指标和烟雾浓度。上述信息采集处理模块可以收集环境中的多维信息,并转化为模拟/数字信号传输至微控制器。该模块由多维传感器组成,包括SHT31型温湿度传感器、MQ-2型烟雾传感器、MQ-135型空气质量传感器。其中,SHT31型温湿度传感器采用IIC与微控制器通信,MQ-2型传感器和MQ-135型传感器向微控制器直接传送模拟/数字量。
STM32控制器由STM32F103ZET6/STM32F407ZGT6(终端节点/网关)及其配套电路组成,信息采集处理能力强且工作稳定可靠,可以长时间、低功耗、高速率地采集、处理、上传数据,同时实现对整个终端节点的控制,有效支持了终端节点和通信网关的智能感知。
LoRa通信模组采用SX1278低功耗远距离收发器,承担微控制器的无线串口功能,能够实现通信网络中点对点、点对多的透明传输和定向传输。上述的LoRa通信模组包括了SX1278型芯片、射频天线及其附属驱动电路,可以接收微处理器的串口数据,并传输至接收天线,实现信息无线交互。
所述的NB-IoT/4G通信模组,其中4G模组采用高新兴物联的ATK-GM510型LTE制式移动网络通信模组,NB-IoT模组采用基于联发科MT2625芯片的BC28通信模组,4G/NB-IoT通信模组能将终端节点的采集数据从MAC层传至网络层,实现网关的双路入网。
一种LoRa自组网方法,该方法主要涉及MAC层通信协议设计、链路选择策略和系统程序架构三部分,实现智能感知终端的动态组网和功能重构,其中:
MAC层通信协议可以实现节点与节点、节点与网关、网关与网关之间组网和通信,包括了数据帧设计、设备表数据结构设计、节点时间片管理三部分,其中数据帧用于LoRa自组网通信的数据解析和功能实现,设备表用于记录节点的属性和状态并储存在网关中,节点时间片管理用于规避从节点应答机制中的同频干扰。MAC层通信协议利用数据帧及其控制码、校验码管理等规范了终端节点和网关之间的通信过程,链路选择策略根据通信测试结果确定节点网络的拓扑结构,系统程序架构规定了节点入网、数据采集、动态组网、功能重构等具体流程。
链路选择策略综合考虑了多个不同的通信链路指标,能够在通信网络拓扑结构变化时为子网中的终端节点需要选择新的通信链路,实现动态组网。链路选择策略包括链路通信指标确定和最优链路方案两部分,确保网络拓扑结构和功能结构变化时通信网络正常工作。
系统程序架构包括了节点入网流程、数据采集流程、动态组网流程、功能重构流程四部分,保证了通信的规范和高效。
进一步,数据帧分为单播帧和广播帧两种,其中单播帧由帧头、网络ID、源地址、目的地址、信道、控制码、长度、数据、校验码、帧尾构成,用于点对点通信,发送给指定地址、信道的目标节点;广播帧由帧头、网络ID、广播地址、信道、控制码、长度、数据、校验码、帧尾构成,用于广播监听,发送给同一信道内的全部终端节点。
更进一步,上述的单播帧设计中,单播帧从前向后依次是帧头、网络ID、源地址、目标地址、信道、控制码、长度、数据、校验位、帧尾。
a.帧头由0xAA表示,是一帧信息的开始标志位;
b.网络ID是终端节点的编号,用于标识终端节点的所属子网;
c.源地址和目的地址为两个2字节的十六进制标识,分别表示数据帧的发送设备地址和接收设备地址,其中高8位代表网络ID编号,低8位代表子网地址编号;
d.信道用于表示LoRa通信模组的工作频段,默认值0x17代表终端节点工作的433MHZ频段,0x18代表网关工作的434MHZ频段,本协议总共支持410-441MHZ的32个信道;
e.控制码代表数据帧携带的通信指令,不同的控制码表示不同的功能指令;
f.长度表示整个数据帧的字节长度;
g.数据是该帧信息实际传输的内容,数据帧可以根据实际需求填充不同的内容,以ASCII码的形式逐位传输,完成具体指令;
h.校验位采用了CRC16校验,用以检测数据是否出错,误码率为2^16/1;
i.帧尾用0XFF表示,作为一帧数据的结束标志位。
更进一步,上述的单播帧设计中,数据帧的控制码部分能够传输指定的通信指令,且指令的具体内容与发送设备相关。
a.当控制码为0x00时,终端节点和网关发送的数据帧仅用于数据传输;
b.当控制码为0x01时,终端节点申请直连入网,网关接收到请求后发送直连应答;
c.当控制码为0x02时,终端节点发送中继入网请求,并根据链路策略确定中继节点,随后接收来自网关的中继入网应答;
d.当控制码为0x03时,网关发送通信测试请求,终端节点在接收到请求后广播通信测试应答,并通过时间片管理收集得到节点的通信链路向量;
e.当控制码为0x04时,网关发送通信指标请求,终端节点在接收到请求后发送相应的通信指标;
f.当控制码为0x05时,网关发送数据采集请求,终端节点在接收到请求后发送传感器的采集信息;
g.当控制码为0x06时,终端节点发送时间同步广播,接收到对应广播的网关发送时间同步应答;
h.当控制码为0x07时,接收到对应广播的终端节点发送时间同步应答,网关则发送拓扑重构指令,调整终端节点的通信链路;
在广播帧设计中,广播帧的结构和单播帧相似,但广播帧没有目的地址,且广播地址的默认值为0xFFFF,广播帧将被发送给同一信道内的全部节点。
进一步,设备表的数据结构包括节点地址、目的地址、节点类型、节点状态、节点负荷、信道、时间片编号。其数据结构包括记录节点的网络ID、节点地址、目的地址、节点类型、节点状态、节点负荷、信道、时间片编号等信息。其中,
a.节点类型标志节点是终端节点还是中继节点,默认值是0x00,表示一般节点,0x01表示中继节点;
b.节点状态标志节点是否正常工作,默认值0x01表示正常工作,0x00表示损坏;
c.节点负荷标志中继节点连接的子节点数量,默认值0x00表示子节点数为零。
进一步,节点时间片管理采用定时发送时间同步报文(Ts_brd)的方式,获取每个同步周期内时间片编号对应从节点的时间同步应答(Ts_rep),时间片编号每同步周期自增1次。
上述的节点时间片管理中,当终端节点(主节点)申请加入子网或完成通信测试后,接收设备(从节点,网关或终端节点)需要向主节点发送相应的应答指令,流程设计如下:
步骤1,当主节点需要从节点依次应答时,发送时间同步广播Ts_brd,统一节点时间;
步骤2,每隔一个周期,主节点通过Ts_brd报文从0x0000开始广播当前的时间片编号,时间片编号每周期自增1次。
步骤3,若主节点在某一同步周期内未接收到应答,则重复广播当前周期的时间片编号1次,若仍未接收到应答,则判定当前时间片编号节点不能作为从节点。
步骤4,当主节点广播完网络中的全部时间片编号后,退出广播模式,时间片编号清零。
更进一步,上述的节点时间片管理中,每个从节点都需要一个特定的时间片编号。根据网络ID和节点地址,本发明设计时间片编号Node_time如下:
Node_time=(0x00FF&Node_src)*Net_num+Net_id
更进一步,上述的节点时间片管理中,节点的时间片编号等于子网地址(节点地址的低8位,即0x00FF&Node_src)同子网数量(Net_num)的积再与节点网络ID(Net_id)求和。采用本发明的节点时间片编号设计,一方面,能让每个子网节点都有独立的时间片编号;另一方面,能够并行处理各个子网的节点响应,节省时间。
链路选择策略包括链路通信指标确定和最优链路方案两部分,确保网络拓扑结构和功能结构变化时通信网络正常工作。
进一步,上述的链路选择策略中,选择丢包率、通信时延、节点负荷3个指标分析链路的通信质量,且3个指标均可以通过终端节点的通信测试获取。其中丢包率是指链路通信测试中丢失数据包数量占发送数据包总量的比率,通信时延是指一个数据块从链路或网络的一端传送到另一端所需要的时间,节点负荷是指是指中继节点或网关分管的终端节点数量。
a.丢包率(PL)指链路通信中丢失数据包数量(p_loss)占发送数据包总量(p_total)的比率,计算公式为:
b.通信时延(TD)指一个数据帧从链路或网络的一端传送到另一端所需要的时间,计算公式为:
TD=std+ptd+ftd;
c.节点负荷(NL)指中继节点或网关分管的终端节点数量,若节点不承担中继功能或网关不分管终端节点,则节点负荷为0x00。
上述的链路选择策略中,主从节点之间通信测试的开展流程如下:
步骤1,网关向主节点发送通信测试报文Ct_ask,或主节点主动申请通信测试;
步骤2,开始测试,在一段时间内,主节点连续广播Ct_rep通信测试应答报文;
步骤3,从节点计算接收广播过程中丢失的数据包个数以及平均通信时延;
步骤4,广播Ct_rep报文完毕后,主节点通过时间片管理依次获得各个从节点的丢包率、通信时延以及节点负荷,并更新n列的通信链路向量(R_vector);
步骤5,根据从节点类型,获取相应的通信测试结果;
步骤5.1,若从节点是终端节点(信道0x17),则n表示终端节点数,R_vector(i)表示主节点和终端节点i之间的通信链路指标,网关向终端节点定向发送通信指标请求报文Ci_ask,逐个合并各终端节点的R_vector,得到n行n列的通信链路矩阵(R_matrix),其中R_matrix(i,j)表示终端节点i和终端节点j之间的通信链路指标;
步骤5.2,若从节点是网关(信道0x18),则n表示网关数量,R_vector(i)表示主节点和网关i之间的通信链路指标。
上述的链路选择策略中,通信测试结果R_vector中的链路指标需要进一步预处理。
a.针对丢包率,考虑了从节点与网关之间上行链路的丢包率,PL(i)表示待入网节点到从节点i的丢包率,记PL’(i)为待入网节点通过从节点i与网关通信的理论丢包率,PL(i)j为从节点i的第j段上行链路的丢包率,n为从节点i与网关之间的上行链路数(若从节点i即为网关,则n=0),得到修正公式如下:
b.针对通信时延,考虑了从节点与网关之间上行链路的通信时延,TD(i)表示待入网节点到从节点i的通信时延,记TD’(i)为待入网节点通过从节点i到网关的通信时延,TD(i)j为从节点i的第j段上行链路的通信时延,得到修正公式如下:
c.针对节点负荷,考虑了从节点自身负荷和整条链路上的最大节点负荷,NL(i)表示从节点i的节点负荷,记NL’(i)为从节点i所在通信链路的节点负荷水平,NLmax为从节点i所在通信链路的最大节点负荷,得到修正公式如下:
上述的链路选择策略中,为简化链路通信质量LQ的计算,同时消除量纲影响,对得到的PL’、TD’、NL’数据进行归一化处理得到链路可靠性指标PL*、链路快速性指标TD*和链路抗风险指标NL*,使得各指标中最大值为1,最小值为0。
上述的链路选择策略中,为综合评估终端节点与各网关之间通信的可靠性、抗风险性和快速性,记a、b、c为PL*、NL*、TD*权重,定义链路通信质量LQ如下:
LQ=a×PL*+((PL*!=0)?∞:1)×b×NL*+(((PL*!=0)|(NL*!=0))?∞:1)×c×TD*
上述的链路选择策略中,LQ越小,则链路的通信质量越好,节点将选择LQ小的链路入网。本发明为优先保证可靠性与抗风险能力,将链路选择策略的优先级从大到小依次设为PL*、NL*、TD*。结合上式可知,若通信链路的PL*或NL*不为0,则LQ无穷大,链路不在终端节点选择范围。即,若可选择链路中不存在PL*同时最小,则LQ仅由可靠性指标PL*决定;若链路中存在PL*同时最小,但不存在NL*同时最小,则LQ由PL*、NL*二者共同决定;若链路中同时存在PL*和NL*最小,则LQ由PL*、NL*、TD*三者共同决定。
上述的链路选择策略中,当终端节点申请入网或通信故障时,通信网络的拓扑结构发生变化,网关能够依据最优链路方案确定待入网/通信故障节点的通信链路,流程如下:
a.终端节点申请入网,
步骤1,以待入网节点为主节点,广播Ct_rep报文,完成通信测试,得到R_vector;
步骤2,预处理待入网节点通信测试结果R_vector中的通信链路指标;
步骤3,依据预处理得到的PL*、TD*、NL*,计算得到链路通信质量LQ;
步骤4,选择LQ最小的通信链路入网。
b.终端节点通信故障,
步骤1,网关轮询发出Ct_ask指令,获取终端节点的通信链路矩阵R_matrix;
步骤2,判断通信故障节点A的故障类型,有以下三种情况;
步骤2.1,若节点A无法与任一终端节点通信,则故障类型为节点损坏;
步骤2.2,若节点A能与所在子网其余节点通信,则故障类型为通信受阻;
步骤2.3,若节点A只能与另外子网的节点通信,则故障类型为通信丢失;
步骤3,根据步骤2中节点A故障类型,采取相应操作;(步骤3.1对应步骤2.1后续,以下同理)
步骤3.1,将节点A从当前子网中切除,根据链路质量评估为其子节点确定中继节点;
步骤3.2,根据链路质量评估为节点A重新确定中继节点;
步骤3.3,将节点A及其子节点从当前子网切除,根据链路质量评估加入新的子网。
最优链路方案通过链路指标预处理和链路质量评估确定通信网络的拓扑结构,其中链路选择的优先级从大到小依次为丢包率、节点负荷、通信时延。
本发明的有益效果在于:
本发明基于LoRa通信技术,以智能感知终端为物理载体,能够实现终端网络动态组网和功能重构,解决了现有物联网系统容错率低、健壮性不高的问题。
附图说明
图1为本发明终端节点系统架构图。
图2为本发明信息采集处理模块及LoRa通信模组结构示意图。
图3为本发明采用双路通信的网关示意图。
图4为本发明单播帧格式示意图。
图5为本发明广播帧格式示意图。
图6为本发明控制码格式示意图。
图7为本发明节点设备表示意图。
图8为本发明时间片管理流程图。
图9为本发明链路选择策略示意图。
图10为本发明节点入网流程图。
图11为本发明数据采集流程图。
图12为本发明动态组网流程图。
图13为本发明功能重构流程图。
图14为本发明Fun_rec报文结构示意图。
图15为本发明控制码格式示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1所示,参照图1,本系统架构包括了终端节点和网关。
终端节点主要包括了信息采集处理模块、STM32控制器和LoRa通信模组、电源模块。其中信息采集处理模块包括了温湿度检测、空气质量检测、烟雾检测三部分;STM32控制器采用了STM32F103ZET6;LoRa模组包括了SX1278型芯片、射频天线及其附属电路;电源模块包括可充电电源、稳压芯片、电源保护装置和整流滤波模块。
结合图2、3,网关主要包括了LoRa模组、STM32控制器、4G/NB-IoT模组、电源模块。其中LoRa模块包括了SX1278芯片、射频天线及其附属电路;STM32微控制器采用了STM32F407ZGT6芯片;4G通信模组采用ATK-GM510型LET制式移动网络通信模组;NB-IoT模组采用基于联发科MT2625芯片的BC28通信模组;电源模块包括可充电电源、稳压芯片、电源保护装置和整流滤波模块。
主要模块间的工作流程为:电源模块为终端节点和网关中的各个部分供电,信息采集处理模块从环境中采集到相关信息(如温湿度值、烟雾浓度),经电路预处理后传至STM32F103ZET6微处理器,信号经过微处理器处理后通过USART3传输至LoRa通信模组,再经由射频天线发送到其他终端节点或网关。网关的LoRa通信模组接收到节点发送的信息后,通过USART3将信息传送到STM32F407ZGT6微处理器,该处理器将信息压缩处理后动态选择入网通道,在4G和NB-IoT模组中选择网络拥挤度较低的进行入网,将信息传给上位机。
本发明所实现的LoRa自组网方法,主要涉及MAC层通信协议设计、链路选择策略和系统程序架构三部分,实现智能感知终端的动态组网和功能重构,其中:
MAC层通信协议可以实现节点与节点、节点与网关、网关与网关之间组网和通信,包括了数据帧设计、设备表数据结构设计、节点时间片管理三部分,其中数据帧用于LoRa自组网通信的数据解析和功能实现,设备表用于记录节点的属性和状态并储存在网关中,节点时间片管理用于规避从节点应答机制中的同频干扰。MAC层通信协议利用数据帧及其控制码、校验码管理等规范了终端节点和网关之间的通信过程,链路选择策略根据通信测试结果确定节点网络的拓扑结构,系统程序架构规定了节点入网、数据采集、动态组网、功能重构等具体流程。
链路选择策略综合考虑了多个不同的通信链路指标,能够在通信网络拓扑结构变化时为子网中的终端节点需要选择新的通信链路,实现动态组网。链路选择策略包括链路通信指标确定和最优链路方案两部分,确保网络拓扑结构和功能结构变化时通信网络正常工作。
系统程序架构包括了节点入网流程、数据采集流程、动态组网流程、功能重构流程四部分,保证了通信的规范和高效。
具体地说,数据帧分为单播帧和广播帧两种,其中单播帧由帧头、网络ID、源地址、目的地址、信道、控制码、长度、数据、校验码、帧尾构成,用于点对点通信,发送给指定地址、信道的目标节点;广播帧由帧头、网络ID、广播地址、信道、控制码、长度、数据、校验码、帧尾构成,用于广播监听,发送给同一信道内的全部终端节点。
数据帧能够通过控制码实现数据传输、网关直连、中继入网、通信测试、数据采集、同步广播、拓扑重构等功能,且数据帧采用校验码实现CRC16校验。
上述的单播帧设计中,单播帧从前向后依次是帧头、网络ID、源地址、目标地址、信道、控制码、长度、数据、校验位、帧尾。其中:
a.帧头由0xAA表示,是一帧信息的开始标志位;
b.网络ID是终端节点的编号,用于标识终端节点的所属子网;
c.源地址和目的地址为两个2字节的十六进制标识,分别表示数据帧的发送设备地址和接收设备地址,其中高8位代表网络ID编号,低8位代表子网地址编号;
d.信道用于表示LoRa通信模组的工作频段,默认值0x17代表终端节点工作的433MHZ频段,0x18代表网关工作的434MHZ频段,本协议总共支持410-441MHZ的32个信道;
e.控制码代表数据帧携带的通信指令,不同的控制码表示不同的功能指令;
f.长度表示整个数据帧的字节长度;
g.数据是该帧信息实际传输的内容,数据帧可以根据实际需求填充不同的内容,以ASCII码的形式逐位传输,完成具体指令;
h.校验位采用了CRC16校验,用以检测数据是否出错,误码率为2^16/1;
i.帧尾用0XFF表示,作为一帧数据的结束标志位。
更进一步,上述的单播帧设计中,数据帧的控制码部分能够传输指定的通信指令,且指令的具体内容与发送设备相关,具体如下:
a.当控制码为0x00时,终端节点和网关发送的数据帧仅用于数据传输;
b.当控制码为0x01时,终端节点申请直连入网,网关接收到请求后发送直连应答;
c.当控制码为0x02时,终端节点发送中继入网请求,并根据链路策略确定中继节点,随后接收来自网关的中继入网应答;
d.当控制码为0x03时,网关发送通信测试请求,终端节点在接收到请求后广播通信测试应答,并通过时间片管理收集得到节点的通信链路向量;
e.当控制码为0x04时,网关发送通信指标请求,终端节点在接收到请求后发送相应的通信指标;
f.当控制码为0x05时,网关发送数据采集请求,终端节点在接收到请求后发送传感器的采集信息;
g.当控制码为0x06时,终端节点发送时间同步广播,接收到对应广播的网关发送时间同步应答;
h.当控制码为0x07时,接收到对应广播的终端节点发送时间同步应答,网关则发送拓扑重构指令,调整终端节点的通信链路。
在广播帧设计中,广播帧的结构和单播帧相似,但广播帧没有目的地址,且广播地址的默认值为0xFFFF,广播帧将被发送给同一信道内的全部节点。
设备表的数据结构包括节点地址、目的地址、节点类型、节点状态、节点负荷、信道、时间片编号。在设备表数据结构设计中,设备表用于记录终端节点的属性和状态,存储在对应网关中。其数据结构包括记录节点的网络ID、节点地址、目的地址、节点类型、节点状态、节点负荷、信道、时间片编号等信息。其中,
a.节点类型标志节点是终端节点还是中继节点,默认值是0x00,表示一般节点,0x01表示中继节点;
b.节点状态标志节点是否正常工作,默认值0x01表示正常工作,0x00表示损坏;
c.节点负荷标志中继节点连接的子节点数量,默认值0x00表示子节点数为零。
节点时间片管理采用定时发送时间同步报文(Ts_brd)的方式,获取每个同步周期内时间片编号对应从节点的时间同步应答(Ts_rep),时间片编号每同步周期自增1次。
上述的节点时间片管理中,当终端节点(主节点)申请加入子网或完成通信测试后,接收设备(从节点,网关或终端节点)需要向主节点发送相应的应答指令。但考虑到SX1278通信模组一次只能接收来自同一频段的一组数据,为了避免同频干扰,从节点需要应用时间片管理模式,即每个从节点只有在对应时间片内才能回复主节点,流程设计如下:
步骤1,当主节点需要从节点依次应答时,发送时间同步广播Ts_brd,统一节点时间;
步骤2,每隔一个周期,主节点通过Ts_brd报文从0x0000开始广播当前的时间片编号,时间片编号每周期自增1次。
步骤3,若主节点在某一同步周期内未接收到应答,则重复广播当前周期的时间片编号1次,若仍未接收到应答,则判定当前时间片编号节点不能作为从节点。
步骤4,当主节点广播完网络中的全部时间片编号后,退出广播模式,时间片编号清零。
上述的节点时间片管理中,每个从节点都需要一个特定的时间片编号。根据网络ID和节点地址,本发明设计时间片编号Node_time如下:
Node_time=(0x00FF&Node_src)*Net_num+Net_id
上述的节点时间片管理中,节点的时间片编号等于子网地址(节点地址的低8位,即0x00FF&Node_src)同子网数量(Net_num)的积再与节点网络ID(Net_id)求和。采用本发明的节点时间片编号设计,一方面,能让每个子网节点都有独立的时间片编号;另一方面,能够并行处理各个子网的节点响应,节省时间。
链路选择策略包括链路通信指标确定和最优链路方案两部分,确保网络拓扑结构和功能结构变化时通信网络正常工作。
上述的链路选择策略中,选择丢包率、通信时延、节点负荷3个指标分析链路的通信质量,且3个指标均可以通过终端节点的通信测试获取。其中丢包率是指链路通信测试中丢失数据包数量占发送数据包总量的比率,通信时延是指一个数据块从链路或网络的一端传送到另一端所需要的时间,节点负荷是指是指中继节点或网关分管的终端节点数量,具体算法如下:
a.丢包率(PL)指链路通信中丢失数据包数量(p_loss)占发送数据包总量(p_total)的比率,计算公式为:
b.通信时延(TD)指一个数据帧从链路或网络的一端传送到另一端所需要的时间,计算公式为:
TD=std+ptd+ftd;
c.节点负荷(NL)指中继节点或网关分管的终端节点数量,若节点不承担中继功能或网关不分管终端节点,则节点负荷为0x00。
上述的链路选择策略中,主从节点之间通信测试的开展流程如下:
步骤1,网关向主节点发送通信测试报文Ct_ask,或主节点主动申请通信测试;
步骤2,开始测试,在一段时间内,主节点连续广播Ct_rep通信测试应答报文;
步骤3,从节点计算接收广播过程中丢失的数据包个数以及平均通信时延;
步骤4,广播Ct_rep报文完毕后,主节点通过时间片管理依次获得各个从节点的丢包率、通信时延以及节点负荷,并更新n列的通信链路向量(R_vector);
步骤5,根据从节点类型,获取相应的通信测试结果;
步骤5.1,若从节点是终端节点(信道0x17),则n表示终端节点数,R_vector(i)表示主节点和终端节点i之间的通信链路指标,网关向终端节点定向发送通信指标请求报文Ci_ask,逐个合并各终端节点的R_vector,得到n行n列的通信链路矩阵(R_matrix),其中R_matrix(i,j)表示终端节点i和终端节点j之间的通信链路指标;
步骤5.2,若从节点是网关(信道0x18),则n表示网关数量,R_vector(i)表示主节点和网关i之间的通信链路指标。
上述的链路选择策略中,通信测试结果R_vector中的链路指标需要进一步预处理。其中:
a.针对丢包率,考虑了从节点与网关之间上行链路的丢包率,PL(i)表示待入网节点到从节点i的丢包率,记PL’(i)为待入网节点通过从节点i与网关通信的理论丢包率,PL(i)j为从节点i的第j段上行链路的丢包率,n为从节点i与网关之间的上行链路数(若从节点i即为网关,则n=0),得到修正公式如下:
b.针对通信时延,考虑了从节点与网关之间上行链路的通信时延,TD(i)表示待入网节点到从节点i的通信时延,记TD’(i)为待入网节点通过从节点i到网关的通信时延,TD(i)j为从节点i的第j段上行链路的通信时延,得到修正公式如下:
c.针对节点负荷,考虑了从节点自身负荷和整条链路上的最大节点负荷,NL(i)表示从节点i的节点负荷,记NL’(i)为从节点i所在通信链路的节点负荷水平,NLmax为从节点i所在通信链路的最大节点负荷,得到修正公式如下:
上述的链路选择策略中,为简化链路通信质量LQ的计算,同时消除量纲影响,对得到的PL’、TD’、NL’数据进行归一化处理得到链路可靠性指标PL*、链路快速性指标TD*和链路抗风险指标NL*,使得各指标中最大值为1,最小值为0。
上述的链路选择策略中,为综合评估终端节点与各网关之间通信的可靠性、抗风险性和快速性,记a、b、c为PL*、NL*、TD*权重,定义链路通信质量LQ如下:
LQ=a×PL*+((PL*!=0)?∞:1)×b×NL*+(((PL*!=0)|(NL*!=0))?∞:1)×c×TD*
上述的链路选择策略中,LQ越小,则链路的通信质量越好,节点将选择LQ小的链路入网。本发明为优先保证可靠性与抗风险能力,将链路选择策略的优先级从大到小依次设为PL*、NL*、TD*。结合上式可知,若通信链路的PL*或NL*不为0,则LQ无穷大,链路不在终端节点选择范围。即,若可选择链路中不存在PL*同时最小,则LQ仅由可靠性指标PL*决定;若链路中存在PL*同时最小,但不存在NL*同时最小,则LQ由PL*、NL*二者共同决定;若链路中同时存在PL*和NL*最小,则LQ由PL*、NL*、TD*三者共同决定。
上述的链路选择策略中,当终端节点申请入网或通信故障时,通信网络的拓扑结构发生变化,网关能够依据最优链路方案确定待入网/通信故障节点的通信链路,流程如下:
a.终端节点申请入网,
步骤1,以待入网节点为主节点,广播Ct_rep报文,完成通信测试,得到R_vector;
步骤2,预处理待入网节点通信测试结果R_vector中的通信链路指标;
步骤3,依据预处理得到的PL*、TD*、NL*,计算得到链路通信质量LQ;
步骤4,选择LQ最小的通信链路入网。
b.终端节点通信故障,
步骤1,网关轮询发出Ct_ask指令,获取终端节点的通信链路矩阵R_matrix;
步骤2,判断通信故障节点A的故障类型,有以下三种情况;
步骤2.1,若节点A无法与任一终端节点通信,则故障类型为节点损坏;
步骤2.2,若节点A能与所在子网其余节点通信,则故障类型为通信受阻;
步骤2.3,若节点A只能与另外子网的节点通信,则故障类型为通信丢失;
步骤3,根据步骤2中节点A故障类型,采取相应操作;(步骤3.1对应步骤2.1后续,以下同理)
步骤3.1,将节点A从当前子网中切除,根据链路质量评估为其子节点确定中继节点;
步骤3.2,根据链路质量评估为节点A重新确定中继节点;
步骤3.3,将节点A及其子节点从当前子网切除,根据链路质量评估加入新的子网。
最优链路方案通过链路指标预处理和链路质量评估确定通信网络的拓扑结构,其中链路选择的优先级从大到小依次为丢包率、节点负荷、通信时延。
参照图4,是MAC层通信协议中单播帧格式,从头至尾依次为帧头(占位1Byte)、网络ID(占位1Byte)、源地址(占位2Byte)、目的地址(占位2Byte)、信道(占位1Byte)、控制码(占位1Byte)、长度(占位1Byte)、数据(占位nByte)、校验(占位2Byte)、帧尾(占位1Byte)。
参照图5,是MAC层通信协议中广播帧格式,从头至尾依次为帧头(占位1Byte)、网络ID(占位1Byte)、广播地址(2Byte)、信道(占位1Byte)、控制码(占位1Byte)、长度(占位1Byte)、数据(占位nByte)、校验(占位2Byte)、帧尾(占位1Byte)。较单播帧相比广播帧没有定向目标,因此没有目的地址。
参照图6,是MAC层通信协议中控制码的对照表,控制码从0x00依次递增至0x07,对应的终端节点指令为数据传输、申请网关直连、申请中继入网、通信测试应答、通信指标应答、数据采集应答、时间同步广播、时间同步应答。对应的网关指令为数据传输指令、网关直连应答、中继入网应答、通信测试请求、通信指标请求、数据采集请求、时间同步应答、拓扑重构指令。
参照图7,是MAC层通信协议中设备表的数据结构,其中网络ID对应标识为Net_id,默认值为0x01;节点地址对应标识为Node_src,默认值为0x0000;目的地址对应标识为Node_des,默认值为0x0000;节点类型对应标识为Node_Type,默认值为0x00;节点状态对应标识为Node_status,默认值为0x01;节点负荷对应标识为Node_load,默认值为0x00;信道对应标识为Node_Chan,默认值为0x17;时间片编号对应标识为Node_time,默认值为0x00。
参照图8,是MAC层通信协议中节点网络时间片管理的时序图,当主节点需要从节点依次应答时,主节点会从节点1时间片编号开始通过Ts_brd广播节点报文,节点接收到自身的时间片编号时,会向主节点发送时间同步应答(Ts_rep),并在主节点处更新节点状态。若主节点在某一同步周期内无法接收到应答,则重复广播当前周期的时间片编号1次;若重复广播后仍未接收到应答,则判定当前时间片编号节点不能作为从节点。从而开始广播2节点的时间片编号。以此类推,直至主节点广播完组网系统中的全部时间片编号后,退出广播模式,时间片编号清零。
参照图9,gateway(黑色节点)为网关;relay node(褐色)为中继节点;new node为待入网节点;link为通信链路;communication zone为通信范围;PL(i)j代表从节点i的第j段上行链路的丢包率。由于通信范围有限,待入网节点不能直连入网,从而采取逐点上行,选择中继入网。系统完成通信链路指标的数据处理后,通过评估各条链路的通信质量,选择链路质量最高的一条作为通信链路,即选择链路最优。
参照图10,节点入网过程如下。
步骤1,待入网节点在网关工作的0x18信道广播Dc_ask报文,申请直连入网;
步骤2,待入网节点在0x18信道连续广播Ct_rep报文,完成通信测试;
步骤3,待入网节点在0x18信道定时广播Ts_brd报文,等待网关回复通信测试结果,得到通信链路向量R_vector;
步骤4.1,若待入网节点接收到网关的Ts_rep应答,则在接收应答完毕后应用链路选择策略确定拟入网的网关,并在网关处注册节点地址;
步骤4.2,若待入网节点没有接收到网关的Ts_rep应答,则在节点工作的0x17信道广播Tc_ask报文,申请中继入网;
步骤5.1,待入网节点接收网关的Dc_rep报文,更新自身地址(原先为默认地址),节点成功直连入网;(步骤5.1接步骤4.1,以此类推)
步骤5.2,待入网节点在0x17信道重复步骤2、3操作,等待节点响应;
步骤6.1,待入网节点成功直连入网;
步骤6.2.1,若待入网节点接收到节点的Ts_rep应答,则在接收应答完毕后应用链路选择策略确定中继节点,通过中继节点在网关处注册节点地址;
步骤6.2.2,若待入网节点未接收到节点的Ts_rep应答,则中继入网失败;(步骤6.2.2接步骤6.2.1接步骤5.2,以此类推)
步骤7.1,待入网节点成功直连入网;
步骤7.2.1,待入网节点接收节点的Tc_rep报文,更新自身地址,成功中继入网;
步骤7.2.2,待入网节点中继入网失败。
(步骤x.1在第5步完成,成功直连入网;步骤x.2.1在第7步完成,成功中继入网;步骤x.2.2在第6步完成,中继入网失败)
参照图11,当终端节点正常收集数据并上传至网关的具体步骤为:
步骤1,网关等待TIM3定时器的数据采集触发信号,触发信号每分钟到达1次;
步骤2,接收到触发信号后,网关向当前目的节点定向发送Da_ask报文,初始目的节点为最先入网的终端节点;
步骤3,终端节点在接收到Da_ask报文后,先判断目的地址是否为自身。若是,则向网关定向发送Da_rep报文;若不是,则中继发送Da_ask报文给对应的终端节点,并为该节点回传Da_rep报文;
步骤3.1,若网关收到目的节点的Da_rep报文,则解码得到采集数据,并上传给上位机;
步骤3.2,若网关没有接收到目的节点的Da_rep报文,则重复步骤2操作;
步骤4.1,回到步骤1,按照入网顺序轮询新的终端节点;
步骤4.2,若网关此次接收到目的节点的Da_rep报文,则重复步骤3.1操作;若网关仍未接收到Da_rep报文,则标记该节点,同时在轮询结束后通过动态组网更新拓扑结构;
步骤5,节点轮询完毕,等待下一轮数据采集。
参照图12,当系统丢包率、通信时延明显上升、节点负荷不平衡且三者均超过警戒线时,本智能监控验证平台自动辨识为网络出现故障,会自行开启动态组网功能来改变网络的拓扑结构,以提高网络的处理效率。具体流程如下:
步骤1,网关向当前在网络中的目的节点发送Ct_ask报文,开启通信测试,发送报文的顺序是节点的入网顺序;
步骤2,终端节点在接收到Ct_ask报文后,先判断目的节点是否为自身,判断依据为自身地址是否与网关发出的目标地址相同。若是则在0x17信道广播Ct_rep指令,完成通信测试;若不是,则作为中继节点发送Ct_ask报文给对应的终端节点;
步骤3,终端节点在0x17信道定时广播Ts_brd报文,等待节点回复通信测试结果,得到该节点对应的通信链路向量R_vector;
步骤4,终端节点得到通信链路向量后通过Ci_rep报文向网关定向发送R_vector;
步骤5,网关接收到目的节点的Ci_rep报文后,按照入网顺序轮询新的终端节点,同时合并各节点传输的R_vector;
步骤6,网关完成轮询,得到对应的通信链路矩阵R_matrix,并通过链路选择策略确定子网的新拓扑结构;
步骤7,网关按照入网顺序轮询终端节点,定向发送携带上级节点编号的Tp_rec报文,终端节点在接收到Tp_rec报文后对通信链路作出相应调整;
步骤8,动态组网完成,网关实现了子网的拓扑重构。
参照图13,本智能监控验证平台实现功能重构的具体步骤如下:
步骤1,上位机向目的网关发送Fun_rec功能重构报文;
步骤2,网关接收到Fun_rec报文,同时向目的节点转发;
步骤3,目的节点解码Fun_rec报文,完成功能重构。
上述系统程序架构中,与MAC层通信协议规定的报文不同,网关转发的Fun_rec报文来自网络层,终端节点能够解码Fun_rec报文并实现对应功能,其中,Fun_rec报文由帧头、网络ID、目的节点、控制码、长度、数据、校验、帧尾组成。
a.网络ID表示接收上位机报文的网关编号,默认值0x01;
b.目的节点表示上位机拟调控节点的设备地址,默认值为0x0000;
c.控制码可取0x01到0x04,分别对应不同的功能重构指令。
参照图14,是上位机发送的Fun_rec控制报文格式。从头至尾依次为帧头(占位1Byte)、网络ID(占位1Byte)、目的节点(占位2Byte)、控制码(占位1Byte)、长度(占位1Byte)、数据(占位nByte)、校验(占位2Byte)、帧尾(占位1Byte)。
参照图15,是Fun_rec控制报文中的控制码格式。控制码从0x01依次递增至0x04,对应的控制功能为开启/关闭某项数据采集功能,增加/删除某个终端节点,唤醒/休眠某个终端节点,调整节点通信链路。Fun_rec报文中的控制码及数据部分设计如下:
a.当控制码为0x01时,上位机开启或关闭目的节点的某项数据采集功能,此时Fun_rec报文数据部分长度2字节,第1个字节代表采集功能的编号,第2个字节代表控制采集功能开启或关闭的0-1变量;
b.当控制码为0x02(0x03)时,上位机增加(唤醒)或删除(休眠)目的节点,此时数据部分是控制节点增加(唤醒)或删除(休眠)的0-1变量;
c.当控制码为0x04时,上位机调整目的节点的通信链路,此时数据部分表示调整后目的节点的上级节点地址。
总之,本发明基于LoRa通信技术,以智能感知终端为物理载体,能够实现终端网络的动态组网和功能重构,解决了现有物联网系统容错率低、健壮性不高的问题。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于LoRa自组网的智能感知终端装置,其特征在于所述装置包括终端节点和通信网关,终端节点采集信息后发送给通信网关,并由其上传数据至云平台,实现远程监控;其中,终端节点包括了电源模块、信息采集处理模块、STM32控制器和LoRa通信模组,通信网关包括了电源模块、STM32控制器、LoRa通信模组和NB-IoT/4G通信模组;
电源模块由可充电电源、稳压芯片、电源保护装置和整流滤波模块组成,可以稳定提供+5V、+3.3V等级电压,保证终端始终处于稳定工作状态;
信息采集处理模块由多维传感器组成,包括温湿度传感器、空气质量传感器、烟雾传感器,其中温湿度传感器负责采集监测环境中的温湿度数据;空气质量传感器和烟雾传感器负责采集监测环境中的大气质量指标和烟雾浓度;
STM32控制器由STM32F103ZET6/STM32F407ZGT6及其配套电路组成,信息采集处理能力强且工作稳定可靠,可以长时间、低功耗、高速率地采集、处理、上传数据,同时实现对整个终端节点的控制,有效支持了终端节点和通信网关的智能感知;
LoRa通信模组采用SX1278低功耗远距离收发器,承担微控制器的无线串口功能,能够实现通信网络中点对点、点对多的透明传输和定向传输;
所述的NB-IoT/4G通信模组,其中4G模组采用高新兴物联的ATK-GM510型LTE制式移动网络通信模组,NB-IoT模组采用基于联发科MT2625芯片的BC28通信模组,4G/NB-IoT通信模组能将终端节点的采集数据从MAC层传至网络层,实现网关的双路入网。
2.如权利要求1所述的基于LoRa自组网的智能感知终端装置,其特征在于上述信息采集处理模块收集环境中的多维信息,并转化为模拟/数字信号传输至微控制器。该模块由多维传感器组成,包括SHT31型温湿度传感器、MQ-2型烟雾传感器、MQ-135型空气质量传感器;其中,SHT31型温湿度传感器采用IIC与微控制器通信,MQ-2型传感器和MQ-135型传感器向微控制器直接传送模拟/数字量。
3.一种基于LoRa自组网的方法,其特征在于该方法主要涉及MAC层通信协议设计、链路选择策略和系统程序架构三部分,实现智能感知终端的动态组网和功能重构,其中:
MAC层通信协议可以实现节点与节点、节点与网关、网关与网关之间组网和通信,包括了数据帧设计、设备表数据结构设计、节点时间片管理三部分,其中数据帧用于LoRa自组网通信的数据解析和功能实现,设备表用于记录节点的属性和状态并储存在网关中,节点时间片管理用于规避从节点应答机制中的同频干扰;
链路选择策略包括链路通信指标确定和最优链路方案两部分,确保网络拓扑结构和功能结构变化时通信网络正常工作;
系统程序架构包括了节点入网流程、数据采集流程、动态组网流程、功能重构流程四部分,保证了通信的规范和高效。
4.如权利要求3所述的基于LoRa自组网的方法,其特征在于数据帧分为单播帧和广播帧两种,其中单播帧由帧头、网络ID、源地址、目的地址、信道、控制码、长度、数据、校验码、帧尾构成,用于点对点通信,发送给指定地址、信道的目标节点;广播帧由帧头、网络ID、广播地址、信道、控制码、长度、数据、校验码、帧尾构成,用于广播监听,发送给同一信道内的全部终端节点。
5.如权利要求4所述的基于LoRa自组网的方法,其特征在于单播帧设计中,单播帧从前向后依次是帧头、网络ID、源地址、目标地址、信道、控制码、长度、数据、校验位、帧尾,其中:
a.帧头由0xAA表示,是一帧信息的开始标志位;
b.网络ID是终端节点的编号,用于标识终端节点的所属子网;
c.源地址和目的地址为两个2字节的十六进制标识,分别表示数据帧的发送设备地址和接收设备地址,其中高8位代表网络ID编号,低8位代表子网地址编号;
d.信道用于表示LoRa通信模组的工作频段,默认值0x17代表终端节点工作的433MHZ频段,0x18代表网关工作的434MHZ频段,本协议总共支持410-441MHZ的32个信道;
e.控制码代表数据帧携带的通信指令,不同的控制码表示不同功能指令;
f.长度表示整个数据帧的字节长度;
g.数据是该帧信息实际传输的内容,数据帧可以根据实际需求填充不同的内容,以ASCII码的形式逐位传输,完成具体指令;
h.校验位采用了CRC16校验,用以检测数据是否出错,误码率为2^16/1;
i.帧尾用0XFF表示,作为一帧数据的结束标志位。
6.如权利要求3所述的基于LoRa自组网的方法,其特征在于设备表的数据结构包括节点地址、目的地址、节点类型、节点状态、节点负荷、信道、时间片编号;在设备表数据结构设计中,设备表用于记录终端节点的属性和状态,存储在对应网关中;其数据结构包括记录节点的网络ID、节点地址、目的地址、节点类型、节点状态、节点负荷、信道、时间片编号等信息;其中,
a.节点类型标志节点是终端节点还是中继节点,默认值是0x00,表示一般节点,0x01表示中继节点;
b.节点状态标志节点是否正常工作,默认值0x01表示正常工作,0x00表示损坏;
c.节点负荷标志中继节点连接的子节点数量,默认值0x00表示子节点数为零。
7.如权利要求3所述的基于LoRa自组网的方法,其特征在于节点时间片管理采用定时发送时间同步报文Ts_brd的方式,获取每个同步周期内时间片编号对应从节点的时间同步应答Ts_rep,时间片编号每同步周期自增1次;上述的节点时间片管理中,当终端节点申请加入子网或完成通信测试后,接收设备需要向主节点发送相应的应答指令,流程设计如下:
步骤1,当主节点需要从节点依次应答时,发送时间同步广播Ts_brd,统一节点时间;
步骤2,每隔一个周期,主节点通过Ts_brd报文从0x0000开始广播当前的时间片编号,时间片编号每周期自增1次;
步骤3,若主节点在某一同步周期内未接收到应答,则重复广播当前周期的时间片编号1次,若仍未接收到应答,则判定当前时间片编号节点不能作为从节点;
步骤4,当主节点广播完网络中的全部时间片编号后,退出广播模式,时间片编号清零。
8.如权利要求3所述的基于LoRa自组网的方法,其特征在于链路选择策略包括链路通信指标确定和最优链路方案两部分,确保网络拓扑结构和功能结构变化时通信网络正常工作;上述的链路选择策略中,选择丢包率、通信时延、节点负荷3个指标分析链路的通信质量,且3个指标均可以通过终端节点的通信测试获取;其中丢包率是指链路通信测试中丢失数据包数量占发送数据包总量的比率,通信时延是指一个数据块从链路或网络的一端传送到另一端所需要的时间,节点负荷是指是指中继节点或网关分管的终端节点数量;
a.丢包率(PL)指链路通信中丢失数据包数量(p_loss)占发送数据包总量(p_total)的比率,计算公式为:
b.通信时延(TD)指一个数据帧从链路或网络的一端传送到另一端所需要的时间,计算公式为:
TD=std+ptd+ftd;
c.节点负荷(NL)指中继节点或网关分管的终端节点数量,若节点不承担中继功能或网关不分管终端节点,则节点负荷为0x00。
9.如权利要求3所述的基于LoRa自组网的方法,其特征在于节点入网过程如下:
步骤1,待入网节点在网关工作的0x18信道广播Dc_ask报文,申请直连入网;
步骤2,待入网节点在0x18信道连续广播Ct_rep报文,完成通信测试;
步骤3,待入网节点在0x18信道定时广播Ts_brd报文,等待网关回复通信测试结果,得到通信链路向量R_vector;
步骤4.1,若待入网节点接收到网关的Ts_rep应答,则在接收应答完毕后应用链路选择策略确定拟入网的网关,并在网关处注册节点地址;
步骤4.2,若待入网节点没有接收到网关的Ts_rep应答,则在节点工作的0x17信道广播Tc_ask报文,申请中继入网;
步骤5.1,待入网节点接收网关的Dc_rep报文,更新自身地址,节点成功直连入网;
步骤5.2,待入网节点在0x17信道重复步骤2、3操作,等待节点响应;
步骤6.1,待入网节点成功直连入网;
步骤6.2.1,若待入网节点接收到节点的Ts_rep应答,则在接收应答完毕后应用链路选择策略确定中继节点,通过中继节点在网关处注册节点地址;
步骤6.2.2,若待入网节点未接收到节点的Ts_rep应答,则中继入网失败;
步骤7.1,待入网节点成功直连入网;
步骤7.2.1,待入网节点接收节点的Tc_rep报文,更新自身地址,成功中继入网;
步骤7.2.2,待入网节点中继入网失败。
10.如权利要求3所述的基于LoRa自组网的方法,其特征在于当终端节点正常收集数据并上传至网关的具体步骤为:
步骤1,网关等待TIM3定时器的数据采集触发信号,触发信号每分钟到达1次;
步骤2,接收到触发信号后,网关向当前目的节点定向发送Da_ask报文,初始目的节点为最先入网的终端节点;
步骤3,终端节点在接收到Da_ask报文后,先判断目的地址是否为自身;若是,则向网关定向发送Da_rep报文;若不是,则中继发送Da_ask报文给对应的终端节点,并为该节点回传Da_rep报文;
步骤3.1,若网关收到目的节点的Da_rep报文,则解码得到采集数据,并上传给上位机;
步骤3.2,若网关没有接收到目的节点的Da_rep报文,则重复步骤2操作;
步骤4.1,回到步骤1,按照入网顺序轮询新的终端节点;
步骤4.2,若网关此次接收到目的节点的Da_rep报文,则重复步骤3.1操作;若网关仍未接收到Da_rep报文,则标记该节点,同时在轮询结束后通过动态组网更新拓扑结构;
步骤5,节点轮询完毕,等待下一轮数据采集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210429158.5A CN114866976A (zh) | 2022-04-22 | 2022-04-22 | 一种基于LoRa自组网的智能感知终端装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210429158.5A CN114866976A (zh) | 2022-04-22 | 2022-04-22 | 一种基于LoRa自组网的智能感知终端装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114866976A true CN114866976A (zh) | 2022-08-05 |
Family
ID=82632431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210429158.5A Pending CN114866976A (zh) | 2022-04-22 | 2022-04-22 | 一种基于LoRa自组网的智能感知终端装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114866976A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115604870A (zh) * | 2022-11-18 | 2023-01-13 | 深圳开鸿数字产业发展有限公司(Cn) | 通信方法、终端设备及存储介质 |
CN116614449A (zh) * | 2023-07-19 | 2023-08-18 | 中国电子科技集团公司第二十九研究所 | 一种面向应用层的自适应流量控制装置及方法 |
-
2022
- 2022-04-22 CN CN202210429158.5A patent/CN114866976A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115604870A (zh) * | 2022-11-18 | 2023-01-13 | 深圳开鸿数字产业发展有限公司(Cn) | 通信方法、终端设备及存储介质 |
CN115604870B (zh) * | 2022-11-18 | 2023-05-02 | 深圳开鸿数字产业发展有限公司 | 通信方法、终端设备及存储介质 |
CN116614449A (zh) * | 2023-07-19 | 2023-08-18 | 中国电子科技集团公司第二十九研究所 | 一种面向应用层的自适应流量控制装置及方法 |
CN116614449B (zh) * | 2023-07-19 | 2023-10-31 | 中国电子科技集团公司第二十九研究所 | 一种面向应用层的自适应流量控制装置及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114866976A (zh) | 一种基于LoRa自组网的智能感知终端装置及方法 | |
CN107148069B (zh) | 一种树型传感器网络的自组网和低功耗数据汇集方法 | |
CN105792305B (zh) | 一种超低功耗无线数据传输网络设计方法 | |
CN102238697B (zh) | 一种加入无线传感网络的方法和装置 | |
CN110474756B (zh) | 一种智能电网用电信息采集方法 | |
CN101488975A (zh) | 实现无线传感器网络与IPv6网络全IP通信的系统 | |
CN106686686A (zh) | 一种用于作物温室栽培的无线传感器网络自组网方法 | |
CN103916214B (zh) | 无线通信装置及通过无线通信装置执行的方法 | |
CN113692019B (zh) | 电力物联网的无线组网方法及终端 | |
CN107018545B (zh) | 一种应用于无线通信系统中的自组网方法 | |
CN112492669A (zh) | 一种输变电设备物联网节点设备无线通信方法与系统 | |
CN107948332A (zh) | 一种基于IPv6的农业物联网系统及控制方法 | |
CN108040339A (zh) | 基于LoRa的离线组网方法及其系统 | |
CN108171956A (zh) | 一种基于大数据和wsn技术的电力变压器环境监测系统 | |
CN109104704A (zh) | 用于水产养殖物联网环境调控系统的应用及调控方法 | |
CN111787122A (zh) | 一种用于农业物联网无线组网的通信系统及方法 | |
CN108181830A (zh) | 一种基于wsn技术的智能家居系统 | |
CN112954727B (zh) | 一种隧道无线传感网络通信方法及系统 | |
CN111935797B (zh) | 一种用于低压开关柜无线通信网络的动态路由方法 | |
CN107071873B (zh) | 一种树型传感器网络自组网的协调器 | |
CN108322930A (zh) | 一种基于LoRa技术的寻呼方法 | |
CN112423364B (zh) | 一种无线移动式自组通信方法和系统 | |
CN114679696B (zh) | 实现LoRa网关MESH的系统及方法 | |
CN102802166A (zh) | 一种改进的Zigbee网络分层方法 | |
CN113573392B (zh) | 一种物联网网关异常状态下的节能通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |