陆赛杰,李云骥,彭 力*
(江南大学物联网应用技术教育部工程中心,江苏 无锡 214122)
无线传感器网络是最近数年研究的一个热点,其在军事、环境监测和预报、健康护理、智能家居、建筑物状态监控、复杂机械监控、城市交通、空间探索、大型车间和仓库管理,以及机场、大型工业园区的安全监测等领域应用十分广泛。传感器节点受制于体积,通常采用锂电池进行供电,相比于外部供电的方式,传感器本身携带的能量十分的有限[1]。在一些环境比较恶劣的环境下,电池的更换十分困难,如果一个节点发生故障,那么很有可能会对整个网络的稳定性造成影响,在一些特殊的情况下甚至会造成整个网络的瘫痪。这是制约无线传感网络设计的一个瓶颈。
根据传感器数据传输的频率,可以将其分为两类:周期性(也称为时间驱动型)和非周期性(也称为事件驱动型)数据传输[2],在时间驱动型的传输中,每一个节点周期性的将数据传输到下一个节点或者传输到终端设备,而在事件驱动型的网络中,数据在满足一定的条件下才会发送,所以在事件驱动型的数据传输中的,传感器节点不是每个周期进行数据传输,在不传输的情况下,传感器节点可以进行休眠,以达到一定的节能作用。最近几年,事件驱动传输的控制和估计已经受到了国内外学者的广泛关注[3-8]。例如,文献[9]设计了自适应事件驱动下马尔科夫跳变系统的状态估计器,文献[10]研究了在网络丢包下的可靠传输策略,并将其策略应用在一类化工过程的远程监测中。文献[11]又利用随机事件驱动策略同时对网络化系统进行最优估计和状态反馈控制。
尽管考虑事件驱动传输的控制和估计已经取得一系列进展,现有的研究一般考虑单跳网络的数据传输,即远程估计器能够完全接收到传感器所发送到的数据。然而,传感器节点传输的距离是有限的,一旦超过了节点所要求的传输距离,就很有可能造成大范围的丢包,甚至无法正常工作,此外,使用添加天线的方案来提高传输距离的方法将极大地增加能量的消耗和设备的安装。本文考虑一类远程监测系统如图1所示,由于传感器节点传输距离有限,需要通过一组多跳节点将数据传输到远程端,传感器节点和中继节点通过锂电池供电,其节点电池能量也是有限的,利用所设计的事件驱动的传输策略,减少中继节点的电池消耗,并使远程估计器能鲁棒地监测本地的信息。此外,由于网络不稳定现象的发生,中继节点所传输的数据有可能在传输过程中丢失,这一类问题也将在本文中被解决。所以考虑在网络数据丢包情况下基于远程状态估计的事件驱动传输策略具有一定的实际意义。
本文主要工作总结如下:
①提出了适用于含中继节点的远程状态估计器,通过求解一类近似二次性能指标的上界推导了基于新息驱动的中继节点传输策略,以保证远程估计精度和节点的电池能耗获得最优的平衡;
②利用所设计的传输策略有效地解决了含中继节点的无线网络发生丢包、数据无法传输的情况;
③从工程角度出发,完整地设计了包含硬件、软件的中继节点模块,并通过观测一组锂电池电压放电过程的实验对所提出的算法进行了估计性能和节能效果的验证。
传统上,标准卡尔曼滤波器需要知道每个k时刻传感器收集的测量数据。然而,为了使得中继节点可以延长生命周期并尽可能的节省能源,可以采取减少节点与节点之间的传输次数的方案。在这种情况下,测量值无法立刻在每一个时间节点获得;因此,估计值也就无法通过标准的卡尔曼滤波计算得到。在这里我们将为每一个传输节点设计一种新息驱动的数据转发方案。
图1 系统传输模型
由图1可知,整个系统是一个离散的线性系统:
xk+1=Axk+wk
(1)
这里k是一个离散的时间指标,xk∈Rn是一个状态向量,wk∈Rn是一个零均值的高斯噪声,并且wk的方差满足:
(2)
测量值yk满足下面的方程:
yk=Cxk+vk
(3)
式中:yk∈Rm,vk∈Rm,并且vk满足如下的方程:
(4)
传统上,标准卡尔曼滤波器需要知道每个时刻k传感器收集的测量数据。然而,为了使中继节点可以延长生命周期并尽可能的节省能源,可以采取减少节点与节点之间的传输次数的方案。然而在这种情况下,测量值无法立刻在每一个时刻获得;因此,估计值也就无法通过标准的卡尔曼滤波计算得到。在这里我们将介绍一种适用于含中继节点的状态估计器。
对于节点i一个事件驱动的估计器满足如下:
(5)
式中:
(6)
(7)
(8)
(9)
假定:
(10)
同时假设测量误差Δi有统一的分布,Δi的均值和方差如下:
(11)
在(11)中,φi满足minλQw(i,i)>φi,minλ(·)指矩阵的最小特征值。
图2 基于新息驱动的数据传输示意图
考虑一类性能指标J在文献[12]中被提出:
(12)
式中:误差权重Q>0,传输权重λ>0。
引理1[13]假如存在一个马尔科夫链z0,z1,…,满足状态空间
X,f:X→R,b:X→R
定义:
(13)
如果存在c∈R满足对任意的x∈X,
h(x)≥c
(14)
则
(15)
接下来我们将利用式(13)来设计新息驱动的决策规则以此权衡估计性能和电池能耗,为了推导的方便,先定义一些变量:
(16)
(17)
(18)
(19)
定理1考虑节点i的性能上界Ji,给定矩阵Qi>0,系数λi>0,如果存在Hi>0,那么:
(20)
其约束条件:
(21)
并且
(22)
此外,新息驱动的决策规则如下所示
(23)
式中:
(24)
(25)
(26)
(27)
定义函数f的形式为:
(28)
进一步可以得到:
(29)
(30)
因为
(31)
所以有:
(32)
所以通过上边的等式可以得到:
(33)
(34)
(35)
(36)
(37)
因此,式(28)可以进一步化简成:
(38)
化简得:
(39)
(40)
(41)
式(35)可以化简成下面的形式:
(42)
因为
(43)
因此
(44)
进一步可以得到:
(45)
在网络发生丢包的情况下,网络中的节点将无法完成数据传输的任务,本章节将利用所设计的新息驱动策略有效地解决了含中继节点的无线网络发生丢包、数据无法传输的情况。
算法1详细说明了网络丢包下的数据传输方案。
算法1
如图3所示,本文通过估计一组锂电池放电电压的过程来验证上述理论算法的可行性和实用性,该实验平台由一组锂电池,3个中继节点和一远程计算机组成。其中,中继节点选用STM32F407[14]作为计算模块,该芯片集成了FPU和DSP指令,具有192 kbyte的SRAM、1 024 kbyte的FLASH、12个16位定时器、14个定时器、3个SPI、6个串口、3个12位的ADC,适合计算上述所提到的理论算法。
图3 系统框图
图5是中继节点工作流程图,节点1在传输数据之前需要给节点2一个唤醒信号,等节点2唤醒之后再往节点2发送数据,节点2到节点3之间的数据与节点1到节点2一样,因此我们必须在各个节点之间加上一个用于发送唤醒信号的模块。这里选用nRF24L01[15]芯片来实现这个功能。每一个模块都工作在不同的地址,所以互不干扰。作用是产生一个唤醒信号,实验中的数据传输通过USR-C210 WIFI模块实现,该模块有3种工作模式:STA、AP、AP+STA,AP模式表示的是一个无线网络中的中心节点,本实验中总共有3个节点,节点2作为整个网络的中心节点其上挂载的WIFI模块设置为AP模式,可以通过AT指令来进行设置。同时,模块支持低功耗模式,在正常状态下,如果UART接口持续一定时间没有接收数据那么模块就可以进入低功耗模式。最后,图6是本实验所设计的中继节点的PCB电路图。
图5 中继节点工作流程图
图6 中继节点的PCB电路图
实验对象利用了一个由3节电池组成的锂电池组,参数如表1所示。
表1 ANR26650电池规格表
观测其放电电压的过程,此锂电池组线性模型借用文献[16-17],如下所示:
式中:
将连续系统离散化并且设定采样时间为1 s,系统方程重写为:
xk+1=Axk+Buk
yk=Cxk>
式中:
实验的步长设置为100次,丢包率假设为10%。通过STM32F407单片机实时采集上传数据显示当前的测量值以及估计值,用于比较跟随效果。图7~图9绘制了远程端系统的状态、周期性传输的远程状态估计以及基于事件驱动传输机制的远程状态估计的对比曲线,从图中可以看出,采用了事件驱动传输机制的远程状态估计和系统状态以及周期性传输的远程状态估计之间的偏差很小,即系统性能并未受到很大的影响.在整个过程中,传感器节点发送了64次数据,通过事件驱动机制减少发送次数为36,即相对于周期性传输机制,减少资源使用约30%。
图9 第3节电池电压曲线
图7 第1节电池电压曲线
图8 第2节电池电压曲线
为了更加清晰地验证远程估计器的估计性能,实验2通过考虑节点3的均方误差,将本文所设计的事件驱动的估计、周期性传输的估计和利用时间驱动的学习观测器[17]的估计进行比较。图10绘制了其蒙托卡罗100次的均方误差的对比曲线,根据对比曲线可知,相较于周期性传输机制,基于事件驱动的传输机制的蒙托卡罗均方根误差没有明显的增大,此外,相应的传输模态在图11中进行绘制。
图10 远程估计误差曲线
图11 传输模态轨迹
从图10和图11可以看出,所提出的算法在节约资源的同时,远程估计器的性能没有明显的下降。
实验3选取80mAh的锂电池,每隔5 min采集一次电池的剩余电压节点1、节点2、节点3的剩余电量对比如表2~表4所示,为了方便描述,周期性传输的电压设置为U1,事件驱动传输的电压设置为U2。
表2 节点1电压对照表
表3 节点2电压对照表
表4 节点3电压对照表
本文提出了一种在丢包的多跳网络环境下的新息驱动传输策略,利用增加中继节点延长数据传输的距离,通过所设计的传输策略来控制传感器节点和中继节点何时发送数据,降低整个无线网络的平均功耗,并延长了传感器数据传输的距离。另外,利用所设计的传输策略解决了无线网络发生丢包、数据无法传输的情况。最后将这套传输策略应用到一个锂电池电量检测的实际系统中,并且完成了整套系统的软硬件设计,验证了事件驱动算法的有效性。
参考文献:
[1] 黄慧燕. 事件驱动型无线传感网络功耗分析及节能协议设计[D]. 电子科技大学,2013.
[2] 汪泉弟,孔卫,李彬,等. 事件驱动型无线传感器网络生存期分析[J]. 重庆大学学报,2007,30(6):30-34.
[3] Quevedo D E,Ahlén A,∅stergaard J. Energy Efficient State Estimation with Wireless Sensors through the Use of Predictive Power Control and Coding[J]. Electrical Engineering,2010,58(9):4811-4823.
[4] 王弟. 基于事件驱动的网络化预测控制器设计及实现[D]. 北京:北京理工大学,2015.
[5] 侯鑫,张东文,钟鸣. 基于事件驱动和神经网络的无线传感器网络数据融合算法研究[J]. 传感技术学报,2014,27(1):142-148.
[6] Durand S. Event-Based Stabilization of Linear System with Communication Delays in the Measurements[C]//American Control Conference. 2013:152-157.
[7] 高洁,吴延红,白建侠,等. 无线传感器网络最小覆盖能量优化算法[J]. 传感技术学报,2016,29(9):1435-1440.
[8] Forni F,Galeani S,Dragan,et al. Event-Triggered Transmission for Linear Control over Communication Channels[J]. Automatica,2013,50(2):490-498.
[9] 祁琼. 自适应事件驱动下马尔科夫跳变系统的状态估计[J]. 湖北理工学院学报,2016,32(2):42-49.
[10] Li Y,Li P,Chen W. An Energy-Efficient Data Transmission Scheme for Remote State Estimation and Applications to a Water-Tank System[J]. Isa Transactions,2017,70:494-501.
[11] 祝超群,杨彬,鲁春燕,等. 随机事件驱动通信的网络化系统最优估计与状态反馈控制[J]. 信息与控制,2015,44(6):654-659.
[12] Arapostathis A,Borkar V S,Ndez-Gaucherand E,et al. Discrete-Time Controlled Markov Processes with Average Cost Criterion:A Survey[J]. SIAM Journal on Control and Optimization,1993,31(2):282-344.
[13] Cogill R,Lall S. Suboptimality Bounds in Stochastic Control:A Queueing Example[C]//American Control Conference. IEEE,2006:1642-1647.
[14] 李志明,檀永,徐石明,等. STM32嵌入式系统开发实战指南[M]. 机械工业出版社,2013.
[15] 时志云,盖建平,王代华,等. 新型高速无线射频器件nRF24L01及其应用[J]. 电子设计工程,2007(8):42-44.
[16] Chen W,Chen W T,Saif M,et al. Simultaneous Fault Isolation and Estimation of Lithium-Ion Batteries via Synthesized Design of Luenberger and Learning Observers[J]. IEEE Transactions on Control Systems Technology,2013,22(1):290-298.
[17] 张利,朱雅俊,刘征宇. 锂离子电池SOC与模型参数联合估算研究[J]. 电子测量与仪器学报,2012,26(4):320-324.