基于温度感知补偿的无线传感器网络节能型时间同步
徐淼,南卡罗来纳大学徐文渊,南卡罗来纳大学,浙江大学韩挺睿和林志赟,浙江大学
时间同步对于无线传感器网络(WSNs)至关重要,因为数据融合和占空比循环方案都依赖于同步的调度。传统的同步协议假设无线信道全天可用。然而,这一假设并不适用于部署在潮间带的无线传感器网络。本文提出了 TACO,一种针对具有间歇性无线信道和剧烈变化环境温度的无线传感器网络的同步方案。TACO通过求解一个约束最小二乘问题来估计时钟偏斜与温度的相关性,并根据温度持续利用预测的时钟偏移调整本地时间。我们在潮间带进行的实验表明,TACO能够显著减少时钟漂移并延长重同步间隔。
1. 引言
时间同步对于无线传感器网络(WSNs)至关重要,因为许多无线传感器网络的应用和协议都依赖于它。例如,为了提高能效,传感器节点通常在睡眠状态和唤醒状态之间交替[Szewczyk 等人,2004;托尔等人,2005年;Hartung 等人 2006], ,相邻节点必须协调其唤醒间隔以进行数据传输,而分布式事件监测则需要传感器节点之间的同步以实现正确的数据融合。大多数现有研究[埃尔森等,2002;加内里瓦尔等,2003;Ping 2003]通过广播消息使传感器节点与参考节点同步,并且需要周期性地重新同步以补偿随时间推移产生的时钟漂移(即不同时钟之间的时间累积差异)。例如,必须广播重新同步消息
图1. 间歇性无线信道示意图。(a)传感器节点暴露在空气中,在低潮期间可以进行通信。(b)传感器节点淹没在水下,在高潮期间无法通信。
每34分钟一次,以确保使用TPSN [Ganeriwal等 2003]时相邻节点间的时间差小于10毫秒。当无线通信信道始终可用时,此类同步协议是有效的。然而,由于环境干扰,无线信道可能是间歇性的。如何在间歇性无线信道存在的情况下维持时间同步尚未得到充分研究。
在本研究中,我们关注部署在潮间带的无线传感器网络(以下简称WSN‐IT)。由于潮汐周期的影响,WSN‐IT中的无线信道可能变得不可用(如图1所示):在高潮期间,传感器节点被海水淹没,由于海水中的信号衰减强烈,其通信范围会降至几厘米[Vasilescu等 2005]。根据潮位和海拔的不同,传感器节点可能持续处于水下长达24小时,导致上述基于消息的同步协议失效。时钟不同步会带来问题,尤其是在低潮期间传感器重新暴露于空气中时——传感器刚刚恢复通信能力并希望上传缓存的测量数据,但它们的时钟不同步,无法与邻居节点协调数据上传。因此,需要一种能够在不依赖信道可用性的情况下估计时钟漂移的时间同步协议。
此外,部署在户外的传感器节点会受到剧烈的温度变化影响,并且由于安装位置的不同(例如,处于阴影内/外、海平面以下/以上),它们可能经历不同的温度。例如,图2显示了两个节点在炎热的夏日测得的温度:其中一个节点放置在不受潮汐周期影响的陆地上,另一个则位于潮间带,会周期性地被海水淹没。这两个节点都经历了从23◦C到 50◦C的大范围温度变化,但在时间上的温度表现各不相同。受温度影响,这两个节点的时钟偏移(即时钟漂移率的瞬时方差)出现差异。大多数现有的时钟偏移估计方法未考虑温度因素,因此在WSN‐IT中的同步效果不足。
在本文中,我们设计了一种面向无线信道间歇性且传感器节点可能经历剧烈且不同温度变化的WSN‐IT的、基于温度感知补偿(TACO)的同步协议。本质上,TACO的提出基于以下观察:时钟偏移与温度变化高度相关,且呈二次关系。因此,在初始化阶段,传感器
图2. 乔治敦,南卡罗来纳州在24小时内记录的温度。一个节点安装在潮间带,另一个安装在陆地。在第一次和第二次涨潮期后,它们的时间漂移分别为7.5毫秒和13毫秒。
节点可以通过同步消息估计二次关系,之后根据环境温度持续调整其本地时间。TACO 可与基于广播的同步方案结合使用,以延长重新同步间隔;因此,在这个意义上,它对许多现有的同步协议[埃尔森等,2002;加内里瓦尔等,2003;Ping2003]具有互补性。
先前的研究 [Schmid 等人,2009;Yang 等人 2012] 利用温度来估计时钟偏移,但依赖于从温度到时钟偏移的映射表。为了调整时间,传感器节点根据其当前温度查找该表。如果当前温度超出表中的温度范围,则会触发重新同步,以估计该温度下的时钟偏移。这种方案不适用于 WSN‐IT,在 WSN‐IT 中无线信道可能长达 24小时 不可用。相比之下, TACO 建模了时钟偏移与温度变化之间的相关性。通过少量测量,传感器节点可以高效地估计该相关性,并预测未见过的温度下的时钟偏移,而无需重新同步广播。本文的贡献包括以下几点:
—我们提出根据时钟偏移与温度的相关性来预测时钟偏移,并使用最小二乘法从数学上估计这种相关性。
—我们实现了TACO,一种时间同步协议,该协议估计温度与时钟偏移之间的相关性,并根据环境温度调整时钟。
—我们提出了一种能量模型,用于描述能耗与时间同步之间的关系。该模型考虑了多种能量消耗,包括计算、温度感知和通信。
本文的其余部分组织如下。我们在第2节介绍网络模型并对问题进行概述。在第3节中,我们讨论时钟偏移的基本原理并建立相关性模型。我们在第4节介绍测量时钟偏移的方法,并在第5节介绍实现细节。在第6节中,我们通过现场测试评估TACO的性能。在第7节中,我们建立能量模型以分析TACO的能量效率。我们在第8节讨论相关工作,并在第9节总结我们的工作。
2. 问题概述
在本节中,我们介绍用于潮间带的无线传感器网络(WSN‐IT)以及我们的时间同步方案概述。
2.1. WSN‐IT 架构
类似于之前的无线传感器网络 [托尔等人,2005年;哈通等人 2006],,WSN‐IT 也包含两种类型的节点:一个汇聚节点和一组海洋传感器节点。
海洋传感器节点为电池供电,部署在潮间带,受潮汐周期影响,可能周期性地被海水淹没。每个节点都配备有板载传感器,用于监测环境参数(例如温度)以及用于通信的无线电收发器。由于传感器节点由电池供电,因此采用占空比循环方案以降低能耗。
汇聚节点从海洋传感器节点收集测量数据,并将数据中继到数据中心。与海洋传感器节点不同,汇聚节点位于陆地,不受潮汐周期的影响。在不失一般性的前提下,我们假设汇聚节点作为参考节点1,向海洋传感器节点提供参考时间。由于配备了先进硬件,我们假设汇聚节点不会受到温度变化引起的任何时钟偏移影响。稍后我们将放宽这一假设,并探讨当汇聚节点也存在时钟偏移时的应对问题。
2.2. WSN‐IT 特性
图1显示了我们的一个部署地点。在低潮期,海洋传感器节点会露出水面,而在高潮期,这些节点会被海水淹没。这种显著的环境变化使得我们的传感器网络表现出以下两个重要特征。
间歇性无线信道 。当节点处于水下时,由于信号衰减较大,其无线信道不可用,信号衰减可通过以下公式计算: α=0.0173 ×√f × σ,其中 f为以赫兹为单位的无线电频率, σ为海水的电导率(通常为4姆欧/米[Butler 1987])。考虑一个工作在916兆赫的传感器网络,其水下衰减为1,046分贝/米,在10分贝毫瓦的发射功率下,通信范围不足12厘米。因此,在涨潮期间,节点无法相互通信。根据潮位和安装位置的不同,传感器节点的信道可能最长连续24小时无法使用。间歇性无线信道对WSN‐IT网络提出了新的同步策略需求。
大幅温度变化 。与许多户外传感器网络类似,WSN‐IT会受到由天气状况和阳光照射引起的大幅温度变化的影响。例如,处于岩石阴影下的节点所经历的温度将低于直接暴露在阳光下的节点。此外,海洋传感器节点的温度还会受到潮汐周期的影响。例如,在炎热的夏日,当涨潮时,即使空气温度较高,节点的温度也会迅速下降至海水温度。图2展示了这一情景——相较于陆地上的节点,潮间带内节点的温度相对稳定。
为了理解温度对时钟偏移的影响,我们将一个海洋传感器节点暴露在不同温度下,并测量了24小时内累积的时钟漂移。结果(如图3所示)表明,温度是影响时钟偏移的一个不可忽视的因素——当暴露在43◦C时,该节点的时钟在24小时后比参考时间慢了1.24秒;而当暴露在26◦C时,则慢了0.06秒。回顾图2所示的例子,在不同的温度下,即使两个海洋传感器节点的时钟在每个涨潮周期开始时都进行了同步,但在第一个和第二个涨潮周期结束时,它们的时钟分别漂移了7.5毫秒和13毫秒。
图3. 海洋传感器节点在24小时内累积的时间漂移。时间漂移随温度升高而增加。
图4。基于广播的同步失败示意图。节点s在t3,时刻与汇聚节点r实现同步,而节点s′由于在t3时刻丢失同步消息,在此之后失去同步。
室外节点之间较大的温度范围和温度变化导致的时钟漂移比室内无线传感器网络更大,使得WSN‐IT中的时间同步具有挑战性。
2.3. TACO 概述
由于WSN‐IT在睡眠和唤醒状态之间交替,同步时间对于调度节点的唤醒周期至关重要。图 4展示了传统基于广播的同步方案失效的场景:部署在陆地上的传感器s和部署在潮间带的传感器s′试图与参考节点(汇聚节点r)同步其时钟。在t0,时刻,两个传感器均已同步。随着时间推移,由于时钟漂移,它们的唤醒周期逐渐落后于r的唤醒周期。在时间t3,,来自r的重新同步消息使传感器s能够更新其时钟,从而将其唤醒周期与r的唤醒周期对齐。然而,处于涨潮期被海水淹没的传感器s′无法接收重新同步消息,最终将导致其唤醒周期完全错位。
一种简单的方法是增加唤醒持续时间,但这会因空闲监听而导致过高的能耗。在本研究中,我们提出了一种时间同步方案(TACO),使传感器能够预测时钟漂移,并在无需频繁重新同步的情况下对本地时钟进行调整。特别地,TACO利用了时钟偏移与温度之间的相关性,该相关性可用二次函数表示。一旦确定了这种相关性,传感器节点便可根据环境温度估计时钟偏移,并执行时间补偿。
TACO 包含两个阶段:初始化阶段和补偿阶段。初始化阶段通常在具有稳定无线信道的低潮周期内进行。所有传感器形成一个以汇聚节点为根的基于树的网络拓扑。汇聚节点周期性地广播带时间戳的信标。每个传感器节点借助信标估计其时钟偏斜,并测量温度。一旦收集到足够多的时钟偏斜和温度对,传感器节点便估算相关性。在补偿阶段,传感器节点测量温度,根据初始化阶段估算出的相关性计算时钟偏移,并调整本地时钟。
TACO非常适合WSN‐IT网络,因为它仅在初始化期间需要可靠的无线通信,并且能够在本地调整时钟而无需持续通信。然而,该补偿方案也存在一些挑战:
(1) 温度是影响时钟偏移的主导因素吗?我们如何量化温度与时钟偏移之间的相关性?(2) 如何测量时钟偏斜?(3) 在已知相关性的前提下,如何调整本地时间?
我们将在接下来的章节中解决上述所有问题。
2.4. 定义与符号
我们遵循Sundararaman等人关于时钟的相关常见术语[Sundararaman et al. 2005]的惯例,这些术语定义如下。
时钟是一种以特定速率滴答运行并从起始点开始计数滴答次数的设备。
时间是时钟报告的滴答数。用Cs(t)表示传感器节点s在参考时间t的本地时间。参考节点r的时间为Cr(t) = t。
时钟偏移是本地时间与参考时间之间的差异。传感器节点s在t时刻的时钟偏移为Os(t) = Cs(t)−t。
时钟频率是时钟滴答的速率(即时间的一阶导数)。设Cs(t)为节点s的时间,则 ˙Cs (t)是在t时刻的时钟频率。参考节点r的时钟频率为1。
时钟偏移是指节点s与参考节点r之间的时钟频率差异。设Cs (t)为节点s的时间;在时间t的时钟偏移为Ps (t) = ˙Cs (t)−˙t = ˙ s O(t)。
通常,时钟精度通过时钟偏移来描述,并以百万分之一(ppm)为单位进行测量。例如,20ppm的时钟偏移将导致每天相对于参考时间产生1.73秒的时钟漂移。
3. 时钟偏移建模
在本节中,我们研究时钟偏斜与温度的相关性。首先介绍晶体振荡器和时钟偏移来源,然后将该相关性建模为一个约束最小二乘问题。
3.1. 晶体基础
3.1.1. 晶体振荡器
晶体振荡器是一种电子电路,通过持续振动产生电信号。它通常用于计时,一般使用石英晶体。例如,流行的Telos [Polastre等2005]节点使用一个以 32.768kHz振荡的石英晶体来维持实时时钟(RTC)。
晶体振荡器可以被切割成不同的形状,例如矩形板或音叉。在计时应用中,最广泛使用的是音叉,因为其尺寸更小、价格更低且精度更高[Lam 2008]。因此,在本文中,我们专注于tuning fork切割的晶体。
3.1.2. 时钟偏移的来源
时钟精度取决于晶体振动频率的精度。晶体的任何振动偏差都会导致时钟相对于参考时间发生漂移。这些偏差主要由机械振动干扰、负载电容不匹配、环境温度变化以及晶体老化引起[Microchip 2008;Walls 和 Gagnepain 1992]。
机械振动源可能包括扬声器、蜂鸣器、电机等[Microchip 2008]。为了避免机械振动的干扰,在部署传感器节点或设计传感器电路时,应将潜在的振动源远离晶体。
时钟偏移的另一个来源是不匹配的负载电容器,这些电容器用于将晶体接地。不匹配的电容器可能导致显著的晶体误差[Walls和Gagnepain 1992]。为避免此问题,应选择晶体规格推荐的电容器。
环境温度是导致时钟偏移的另一个主要原因。晶体的振动频率会随着温度变化而发生变化[Walls 和 Gagnepain 1992]。由于传感器网络通常部署在户外并受到温度变化的影响,因此温度效应不可忽略。为解决这一问题,可采用温度补偿晶体振荡器(TCXO)。然而,TCXO 会增加成本和功耗[Schmid 等人 2009],,因此由于资源受限,不适合用于传感器节点。
所有晶体都会发生老化,老化定义为“由于振荡器内部变化而导致频率随时间发生的系统性改变”[Lombardi 2001]。通常在晶体振荡器运行一段时间后(例如前两个月到第一年内)才会观察到老化现象。这种晶体老化将导致频率变化。以海洋传感器节点中的晶体振荡器为例,由老化引起的频率变化每年最高可达3ppm,相当于频率公差的15%[Epson 2014]。频率公差是指晶体振荡器频率相对于室温下的绝对频率的初始偏差。
总之,一些时钟偏移来源(如振动干扰和电容不匹配)可以通过精心设计和部署传感器节点来避免。然而,由于温度变化和晶体老化所导致的误差给系统设计者带来了挑战,因为这些因素在设计阶段未知,因此必须在运行时执行期间加以处理[Microchip 2008]。基于这一观察,我们提出了TACO,其重点在于估计由动态环境条件引起的时钟偏移。
3.2. 温度与时钟偏移
与其他许多类型的晶体振荡器一样,音叉切割晶体对温度变化敏感。这一特性由温度系数(用α T 表示)描述,其定义为时钟偏移差与温度的比值
与turnover温度2(记为T0)的差值,即PT −P0= αT(T −T0),其中PT和P0分别为在温度 T和T0,下的时钟偏移。研究表明,对于石英晶体振荡器,αT是温度[Strout 1928]的线性函数(即αT= k(T − T0))。这里,k是取决于晶体物理特性的常数。因此,时钟偏移与温度的相关性可表示为一个二次函数:
$$
PT= P0+ k×(T − T0)^2, \quad (1)
$$
其中k、T0,和P0是由晶体物理特性决定的常数。
音叉晶体振荡器通常被切割成使得T0处于某一温度范围内,且k为负值。例如,T0的典型范围是25◦C± 5◦C,k的典型值约为 −0.04ppm/◦C;2。形式上,k和T0需满足以下约束条件:
$$
\begin{cases}
k< 0, & (2a) \
\mathcal{L}_1 \le T_0 \le \mathcal{L}_2, & (2b)
\end{cases}
$$
其中$\mathcal{L}_1$和 $\mathcal{L}_2$分别是T0的下限和上限。
3.3. 问题建模
如公式(1)所建模,估计时钟偏移与温度的相关性的关键在于获得常数k、T0,和P0。估计这些常数的基本思想是在不同温度下测量一组时钟偏移Pi,然后建立并求解一组方程。假设我们在不同温度下有N组时钟偏移的观测值(即$\mathbb{D}={(P_i,T_i)|i \in[1, N], N \ge 3}$)。则我们可以得到N个方程:
$$
P_i= P_0+ k×(T_i − T_0)^2.
$$
展开这些方程,我们得到
$$
P_i= kT_i^2 −2kT_0T_i+(P_0+ kT_0^2).
$$
为了简化说明,我们定义
$$
(\beta_1, \beta_2, \beta_3)=(k, −2kT_0, P_0+ kT_0^2),
$$
并得到以下线性模型:
$$
\mathbf{y}= \mathbf{X}\boldsymbol{\beta}, \quad (3)
$$
其中
$$
\mathbf{y}^t=(P_1,…, P_N), \quad \boldsymbol{\beta}^t=(\beta_1, \beta_2, \beta_3),
$$
and
$$
\mathbf{X}= \begin{bmatrix}
T_1^2 & T_1 & 1 \
\vdots & \vdots & \vdots \
T_N^2 & T_N & 1
\end{bmatrix}.
$$
鉴于N ≫ 3,线性模型是超定的,因此我们可以使用最小二乘法来求解该问题。设‖·‖2为 欧几里得范数,‖·‖F为弗罗贝尼乌斯范数;我们将估计相关性的问题定义为如下约束最小二乘法(LSQ)问题。
PROBLEM 1
$$
\min_{\boldsymbol{\beta}} |\mathbf{y} −\mathbf{X}\boldsymbol{\beta}|_2^2
$$
$$
\text{s.t. } \mathbf{A}\boldsymbol{\beta} \le \mathbf{b}
\quad (4)
$$
其中
$$
\mathbf{A}=\begin{bmatrix}−2\mathcal{L}_1 & −1 & 0 \ 2\mathcal{L}_2 & 0 & 0\end{bmatrix}, \quad \text{and} \quad \mathbf{b}=\begin{bmatrix} 0 \ −\varepsilon \end{bmatrix} .
$$
具体而言,$\mathcal{L}_1$ 和 $\mathcal{L}_2$ 是方程(2b)中提到的常数,而 $\varepsilon$ 是一个足够小的正常数,以确保方程(2a)成立。我们强调,包含这些约束条件很重要,因为时钟偏移测量包含误差,且约束条件可以限制估计误差。
为了解决这一问题,我们采用由Goldfarb和Idnani提出的积极集对偶方法[1983]。该对偶算法从无约束目标函数开始,然后基于更新乔列斯基分解和QR分解的结果进行迭代,直到满足原始可行性为止。与其他一些方法[Fletcher 1971;Goldfarb1972],相比,该算法在时间复杂度方面具有更好的性能。更多细节请参考Goldfarb的研究工作[Goldfarb和 Idnani 1983]。一旦估计出 $\boldsymbol{\beta}$,我们便可按如下方式计算k、T0,和P0:
$$
(k, T_0, P_0)=\left(\beta_1, − \frac{\beta_2}{2\beta_1}, \beta_3 − \frac{\beta_2^2}{4\beta_1}\right) .
$$
3.4. 误差分析
TACO的性能由 $\boldsymbol{\beta}$的估计精度决定。直观上, $\boldsymbol{\beta}$的精度越高,TACO的性能就越好。而 $\boldsymbol{\beta}$的精度依赖于训练集$\mathbb{D}={(P_i,T_i)}$的精度。在实际中,训练样本Ti和Pi总是存在测量误差。然而,TACO的一个优势在于,只要Ti和Pi的测量误差是有界的,那么 $\boldsymbol{\beta}$的估计误差就能被严格限制在一定范围内。在本节中,我们将量化 $\boldsymbol{\beta}$的估计误差与Ti和Pi的测量误差之间的界限关系。
对于给定的约束最小二乘问题(见问题(1)),令X和y为真实值, ˜X和 ˜y为测量值。它们满足
$$
\mathbf{X}= \tilde{\mathbf{X}}+\Delta\mathbf{X}, \quad \text{and} \quad \mathbf{y}= \tilde{\mathbf{y}}+\Delta\mathbf{y},
$$
其中$\Delta\mathbf{X}$ 和 $\Delta\mathbf{y}$ 是测量值与真实值之间的误差。令 $\boldsymbol{\beta}$ 和 $\tilde{\boldsymbol{\beta}}$ 分别为两个最小二乘问题的解,即 $\boldsymbol{\beta}$ 求解使用真实值 $(\mathbf{X},\mathbf{y})$ 的最小二乘问题,而 $\tilde{\boldsymbol{\beta}}$ 求解使用测量值 $(\tilde{\mathbf{X}}, \tilde{\mathbf{y}})$ 的最小二乘问题。不失一般性,我们假设 rank(X) = 3 且 rank($\tilde{\mathbf{X}}$) = 3,因为 N ≫ 3 且所有数据是在一段时间内不同温度下采集的。
我们在此引入矩阵 pseudoinverse的概念,记为 $\mathbf{X}^\dagger$。X的伪逆定义为满足以下四个条件的矩阵 X †:
$$
\mathbf{X}\mathbf{X}^\dagger\mathbf{X}= \mathbf{X}, \quad \mathbf{X}^\dagger\mathbf{X}\mathbf{X}^\dagger= \mathbf{X}^\dagger ,
(\mathbf{X}\mathbf{X}^\dagger)^t= \mathbf{X}\mathbf{X}^\dagger ,(\mathbf{X}^\dagger\mathbf{X})^t= \mathbf{X}^\dagger\mathbf{X}.
$$
现在我们说明以下事实:给定测量误差 $\Delta\mathbf{X}$ 和 $\Delta\mathbf{y}$ 是有界的,则估计误差 $\Delta\boldsymbol{\beta}$ 也是有界的,其中 $\Delta\boldsymbol{\beta}= \boldsymbol{\beta} − \tilde{\boldsymbol{\beta}}$。
THEOREM 3.1. 如果每次测量j的时钟偏移Pj和温度Tj的测量误差分别被ψ1和ψ2所限定:
$$
| \tilde{P}_j − P_j | \le\psi_1 \quad \text{and} \quad | \tilde{T}_j − T_j | \le\psi_2,
$$
then
$$
|\Delta\boldsymbol{\beta}|_2 \le \max{\eta_1, \eta_2}, \quad (5)
$$
其中
$$
\eta_1= \max_{i\in[1,6]}\left{ | \tilde{\mathbf{M}}|_2(|\Delta\mathbf{b}_i|_2+ |\Delta\mathbf{A}_i|_2|\tilde{\boldsymbol{\beta}}|_2)
+ \varepsilon[|(\tilde{\mathbf{X}} \tilde{\mathbf{Q}})^\dagger|_2(|\tilde{\mathbf{y}}|_2+ |\tilde{\mathbf{X}}|_F|\tilde{\boldsymbol{\beta}}|_2)]+ O(\varepsilon^2)\right},
$$
with
$$
\tilde{\mathbf{Q}}= \mathbf{I} −(\tilde{\mathbf{A}}_i)^\dagger \tilde{\mathbf{A}}_i, \quad \tilde{\mathbf{M}}=(\mathbf{I} −(\tilde{\mathbf{X}} \tilde{\mathbf{Q}})^\dagger \tilde{\mathbf{X}})(\tilde{\mathbf{A}}_i)^\dagger,
$$
and
$$
\eta_2= \varepsilon| \tilde{\mathbf{X}}^\dagger|_2(|\tilde{\mathbf{y}}|_2+ |\tilde{\mathbf{X}}|_F|\tilde{\boldsymbol{\beta}}|_2)+ O(\varepsilon^2).
$$
特别地, $\varepsilon$是 $\psi_1$和 $\psi_2$的函数,当 $\psi_1$和 $\psi_2$趋近于0时, $\varepsilon$也趋于0。此外,$\Delta\mathbf{A}_i= − \tilde{\mathbf{A}}_i$和$[\mathbf{A}_i|\mathbf{b}_i]$来自以下六种情况:
$$
[-2\mathcal{L}_1 -1\ 0\ |\ 0],\ [2\mathcal{L}_2\ 1\ 0\ |\ 0],
[1\ 0\ 0\ | -\varepsilon],\ [-2\mathcal{L}_1 -1\ 0\ |\ 0\ 2\mathcal{L}_2\ 0],
[-2\mathcal{L}_1 -1\ 0\ |\ 0\ 0\ 0\ 1\ 0\ |\ 0 -\varepsilon].
$$
PROOF 。我们开始证明时考虑无约束的最小二乘问题——即
$$
\min_{\boldsymbol{\beta}} |\mathbf{y} −\mathbf{X}\boldsymbol{\beta}|_2^2. \quad (6)
$$
由于rank(X) = 3,这意味着X是一个列满秩矩阵,因此方程(6)的解为 $\boldsymbol{\beta}=\mathbf{X}^\dagger\mathbf{y}$。它分为两类:(1) $\boldsymbol{\beta}$不满足Aβ ≤b;(2) $\boldsymbol{\beta}$满足 Aβ ≤ b。
在第一种情况下,当 $\boldsymbol{\beta}=\mathbf{X}^\dagger\mathbf{y}$不满足Aβ ≤b时,问题(1)的解与方程(6)的解不相同,因为Aβ ≤ b中有一个或多个等式约束将变为活跃等式。我们用Ai β= bi表示这些活跃等式。此时,问题(1)变为
$$
\min_{\boldsymbol{\beta}} |\mathbf{y} −\mathbf{X}\boldsymbol{\beta}|, \quad (7a)
$$
$$
\text{s.t. } \mathbf{A}_i \boldsymbol{\beta}= \mathbf{b}_i . \quad (7b)
$$
设X,y, A i ,和bi表示真实值,而 ˜X ˜y ˜Ai和 ˜bi表示扰动后的值。扰动范数由最小的 ε测量。
$$
|\Delta\mathbf{X}|_F \le \varepsilon|\tilde{\mathbf{X}}|_F, \quad |\Delta\mathbf{y}|_2 \le \varepsilon|\tilde{\mathbf{y}}|_2, \quad (8)
$$
图5. 偏移量估计中存在的不确定性示意图:(1)dc+dw表示参考节点r处的发送延迟与接入延迟之和;(2)d t+dp表示无线传输过程中的传输延迟与传播延迟之和;(3)dr+ du表示传感器s处的接收延迟与处理延迟之和。
节点s以 1/τ的速率采样温度,并计算连续信标之间的平均时钟漂移。给定N个连续信标,节点s将获得N −1个方程,并更新线性模型y= Xβ,其中
$$
\mathbf{y}= \begin{bmatrix} \bar{P}
1 \ \vdots \ \bar{P}
{N-1} \end{bmatrix}, \quad \text{and} \quad \mathbf{X}= \begin{bmatrix}
\bar{T}^{(2)}
1 & \bar{T}^{(1)}_1 & 1 \
\vdots & \vdots & \vdots \
\bar{T}^{(2)}
{N-1} & \bar{T}^{(1)}_{N-1} & 1
\end{bmatrix}.
$$
4.3. 基于关键路径的时间戳
平均时钟漂移 $\bar{P}$的精度由Os(t)的测量决定。实际上,我们使用估计偏移量$\hat{O}_s(t)$来代替,其中$\hat{O}_s(t) = O_s(t)+ \delta$,且 δ为数据包延迟。正如现有研究所指出的,数据包延迟包括以下几部分延迟[Ganeriwal et al. 2003]:发送延迟dc、信道接入延迟dw、传输延迟dt、传播延迟dp、接收延迟dr以及接收处理延迟du。
为了减小估计误差的不确定性,我们采用基于关键路径(CP‐based)的时间戳记录方法,如图5所示:发送方r在信标发出前立即打上时间戳,接收方s在起始符号到达后立即打上另一个时间戳。因此,估计误差δ仅包含dt和dp。设$\hat{\bar{P}}$为t与t+Δt之间的平均时钟漂移估计值;则估计误差为
$$
\hat{\bar{P}} − \bar{P}= \frac{\hat{O}_s(t+\Delta t)− \hat{O}_s(t)}{\Delta t} − \frac{O_s(t+\Delta t)− O_s(t)}{\Delta t} = \frac{\delta’ − \delta}{\Delta t}=\frac{(d’_t+ d’_p) −(d_t+ d_p)}{\Delta t}.
$$
对于固定长度消息,dt是常数。鉴于传感器节点是静止的,dp也是常数。因此,基于CP的方法提高了 $\bar{P}$的精度。该方法类似于TPSN [Ganeriwal et al. 2003]和DMTS [Ping 2003]中使用的方法。
5. 实现
5.1. 传感器节点硬件
我们在定制海洋传感器节点(图6)上实现了TACO。每个传感器节点由STM32F103RC低功耗微控制器单元(微控制器)、TI TMP102温度传感器、用于数据存储的512kB外部闪存以及ATMEL AT86RF212射频模块组成。
图6. 海洋传感器节点(不含电池)。
支持IEEE 802.15.4的收发器。微控制器单元的系统时钟由一个16MHz外部振荡器驱动。由于当微控制器单元进入低功耗模式时系统时钟会被禁用,因此我们使用一个始终运行的 32.768kHz外部振荡器来维持实时时钟。实时时钟具有一个32位寄存器用于计数滴答,并提供30.5μs的时钟粒度。
5.2. 实现:初始化阶段
在初始化阶段,汇聚节点周期性地广播带时间戳的信标。每个传感器节点仅接收来自其父节点的信标,并将接收到的信标转发给其子节点。对于来自非父节点的信标,该节点将予以忽略。例如,深度1的节点将接收来自汇聚节点的信标,然后将其转发给位于深度2的子节点。通过逐跳方式,来自汇聚节点的信标将传播至整个树形结构。为了避免信标从汇聚节点传输到某一节点过程中同步误差的累积,该节点会通过将本地经过的滴答数添加到信标的时间戳中来调整时间戳。因此,从父节点到其子节点的同步误差最多为单跳误差。
特别是在初始化阶段,每个节点将执行算法1中总结的算法,以建立温度与时钟偏移之间的相关性。节点每隔 τ秒测量一次温度,并监听来自其父节点的时间戳信标。当收到父节点的信标后,节点会检查过去窗口内的平均温度是否之前已观测到。如果该温度尚未被观测到,节点将计算 $\bar{P}$、 $\bar{T}^{(1)}$和 $\bar{T}^{(2)}$,并建立一个方程(如公式(22)所示)。这里我们定义:若新温度与训练集中任何已有温度相差不大,则认为“该温度未被观测到”。这一条件由TemperatureUnseen函数保证,该函数确保训练集中任意两个温度之间的差值大于传感器的测量误差(即本例中的0.5◦°C)。此过程将持续进行,直到方程数量N达到阈值 γ,以确保节点拥有足够的训练样本来建立相关性。理论上,三个方程即可确定 β,但为了最小化测量误差的影响,更倾向于使用更多的方程。然而,过高的阈值会增加基于最小二乘法的计算开销以及初始化阶段的持续时间。在我们的实验中,选择六到八之间的值作为阈值,因为实地测试表明这些值能在精度和
算法1: 在初始化阶段建立相关性
Require:
输入:
θ: 定时器
γ: 期望的方程数
τ:采样间隔
输出:
β
步骤:
1: N= 0;
2: SetTimer(θ);
3: SetTimer(τ);
4: 设置阈值(γ);
5: 重复
6: 如果 超时(τ) 那么
7: 测量温度();
8: 结束 如果
9: 如果 接收到信标() 且 TemperatureUnseen() 那么
10: FormEquation();
11: N++;
12: 结束 如果
13: 直到 Timeout(θ)或 N= γ
14: 如果 N= γ 那么
15: β=SolveModel();
16: 结束 如果
开销。一旦获得足够的训练样本,节点将求解约束最小二乘问题并估计参数(即k、T0,和 P0)。最后,节点将进入补偿阶段,利用已建立的相关性进行补偿。
通常,节点在获得足够的训练样本并建立相关性后将退出初始化阶段。然而,在环境温度很少变化的部署地点,可能需要异常长的时间才能形成足够的方程。因此,在这种情况下设置了定时器 θ以强制终止初始化。我们将在第5节.4中讨论这一特殊情况。
5.3. 实现:补偿阶段
节点在初始化后进入补偿阶段。在补偿阶段,节点周期性地调整其本地时间。设Cs(ti)为第 i个时间窗口开始时的本地时间,Ps(ti)为第i个时间窗口内的时钟偏移。假设每个时间窗口的持续时间为 ζ,则Cs(ti+1)可通过以下方式计算
$$
C_s (t_{i+1})= C_s (t_i)+ \zeta(P_s (t_i)+ 1) = C_s (t_1)+ \zeta \sum_{j=1}^{i} (P_s (t_j)+ 1).
$$
不失一般性,我们假设节点 s 在第一个时隙开始时与参考时间同步(即Cs(t1) = t1)。因此,第 i 个时隙开始的已调整的本地时间 $\hat{t}_i$ 为
$$
\hat{t}
i= C_s (t_i) − \zeta \sum
{j=1}^{i-1} \hat{P}_s (t_j) , \quad (23)
$$
其中,$\hat{P}_s(t_j)$ 是第 j 个时隙中时钟偏移的估计值。为了获得 $\hat{P}_s(t_j)$,节点可以在 $t_j$ 时刻采样温度 T,并基于已建立的相关性 $P= P_0+k(T − T_0)^2$ 计算时钟偏移 $\hat{P}_s(t_j)$。
总之,在补偿阶段,每个节点通过以下方式调整其本地时间:周期性地测量温度,估计时钟偏移,然后根据公式(23)调整本地时间。
5.4. 特殊情况
大多数情况下,节点会在初始化阶段获得足够的训练样本。然而,在环境温度很少变化的部署地点,节点可能需要异常长的时间才能建立 γ个方程。如果发生这种情况,将会中断节点的正常功能。因此,在这种特殊情况下必须设置一个定时器,以强制终止初始化阶段。
超时值 θ可由网络运营商根据部署要求确定。如果节点在定时器超时前未能获取γ个样本 (即N< γ),则无法在初始化阶段建立相关性。此时,节点将训练集$\mathbb{D}={(P_i,T_i)}$视为一个查找表。在这种情况下,该表将在补偿阶段暂时用于估计时钟偏移(Schmid 等人, 2009;Yang 等人 2012])。同时,节点继续获取训练样本。一旦形成足够多的方程,便通过基于最小二乘法的方法识别相关性参数。
我们预计需要偶尔执行基于最小二乘法的计算,以克服晶体老化带来的影响。如第3.1 节所述,晶体振荡器的频率会因老化而随时间变化,这种现象通常在两个月后开始出现, 并可能导致每年高达15%的频率公差。因此,必须在运行时偶尔进行长期的基于最小二乘法的计算,以反映这种变化。例如,可以每月重复一次,以更新相关性。
5.5. 讨论
理解时钟漂移P0和PT 。根据公式(1),对于一个传感器节点s,其时钟偏移PT包含两个组件:常数组件P0和由温度变化引起的动态组件k×(T −T0)^2。考虑一个具有参考节点的传感器网络,该参考节点的时钟始终精确,P0是在温度T0下节点s与参考节点r之间由于非相同的振荡器频率所导致的差异。由于该差异P0并未描述随温度变化而变化的动态部分,TACO 通过采用PT而非常数校准值P0提供了更好的性能。我们将在第6节中基于实地测试结果对此进行验证。
参考节点的时钟偏移 。参考节点也可能受到温度变化引起的时钟偏移影响,导致信标中的时间戳与挂钟时间不同。为解决此问题,参考节点可以使用温控晶体振荡器(TCXO)。或者,我们可以将TACO应用于参考节点——参考节点在初始化阶段之前,利用GPS等精确时钟源估计自身时钟偏移与温度之间的相关性。在初始化阶段,参考节点将根据环境温度调整其本地时间,从而减少其时钟偏移对其他传感器节点的影响。
Initialization in the lab 。在部署前,可以在实验室中进行温度‐时钟偏斜相关性估计的初始化阶段。然而,由于晶体老化,每个节点的相关性可能会随时间发生变化,因此在补偿阶段需要在实地定期更新相关性估计。
拓扑依赖性 。TACO 假设路由协议会自动形成树形结构。因此,它会在以汇聚节点为根的树形结构建立之前不启动初始化节点形成。传感器节点在低潮周期内安装,此时通信信道可用,以确保树形结构形成。然而,TACO与树形结构的形成方式无关。例如,它可以在初始化阶段之前或当节点的父节点失效时,采用TPSN[Ganeriwal等人的层级发现阶段 2003]来创建分层拓扑。此外, TACO可以与现有的基于树的同步协议(如TPSN)协同工作。这些协议中的周期性SYNC消息可在补偿阶段用作带时间戳的信标。
6. 实验与评估
在本节中,我们评估TACO的性能。我们验证了基于CP的时钟偏移估计,检验了TACO的有效性,并将TACO与基于表格的时间同步算法进行了比较。
6.1. 基于CP时间戳的精度
第3节中的误差分析表明,如果温度T和时钟偏移P的测量误差有界,则估计误差$\Delta\boldsymbol{\beta}$也有界。对于温度T,通常由温度传感器进行测量,其测量精度由制造商给出并指定。例如, TI TMP102温度传感器的测量误差在0.5◦C以内。因此,提高时钟偏移P的测量精度对于确保 β(即温度系数)的精度至关重要。为了提高时钟偏移测量P的精度,我们在第4节中提出了基于CP的测量方法。在本节中,我们通过在实验室中使用数据采集单元(DAQ)直接测量时钟偏移作为基准,来验证所提出方法的精度。
图7. 实验设置。(a) 室内温控箱(此处未显示箱盖)。(b) 潮间带中的户外部署拓扑。
表I. 数据采集设备和基于CP的方法测量的时钟偏移
| 温度 | NI数据采集设备 | 基于CP | 误差 |
|---|---|---|---|
| 26◦C | 59.94ppm | 59.99ppm | 0.08% |
| 35◦C | 56.56ppm | 56.52ppm | 0.07% |
图7(a)展示了我们在实验室中的实验设置。我们将一个海洋传感器节点放置在一个温控箱内(图中未显示箱体盖子),并将一个汇聚节点置于室温下。汇聚节点和传感器节点由同一电源供电。在基于基准的测量中,我们将每个节点的两个引脚连接到NI USB‐6009 DAQ [National Instruments 2012],,以10kHz的频率对引脚输出进行采样。我们为每个节点设置了一个定时器,每1分钟翻转一次引脚状态。这些引脚输出被采集并上传到一台笔记本电脑。上传的数据由一个Perl脚本处理,并计算出平均时钟漂移。
同时,我们还让传感器节点运行基于CP的测量。汇聚节点每5分钟广播一次带时间戳的信标。传感器节点在接收到信标后立即计算时钟偏移 Os(t),并将该偏移量上传到笔记本电脑,随后对这些数据进行处理以计算基于CP的时钟漂移平均值。
我们在两种不同温度下分别进行了实验:一次在室温(26◦C)下,另一次在较高温度(35◦C)下。每次实验持续1小时,表I总结了实验结果。结果显示,基于CP的测量与基准之间的估计误差小于0.1%。
6.2. TACO的性能
为了评估TACO,我们在南卡罗来纳州乔治敦的潮间带部署了九个海洋传感器节点(图1)。其中三个部署在陆地上,其余六个传感器位于潮间带,形成了图7(b)所示的拓扑结构。我们还在陆地上安装了一个汇聚节点,该节点为传感器节点提供参考时间。
在初始化阶段,所有传感器节点以τ= 10s.的间隔采样温度。汇聚节点每 ω= 5分钟广播一次带时间戳的信标。在补偿阶段,所有传感器节点以间隔调整其本地时间
图8. 节点BB05上TACO的性能评估。TACO能够估计时钟偏移,92%的时钟偏移估计误差小于1ppm。在温度变化为 14◦C的情况下,时间漂移为4.6s。TACO有效调整本地时钟,将时间漂移减少至57ms。
ζ= 1分钟。为了评估性能,我们仍然让汇聚节点在补偿阶段每5分钟广播一次带时间戳的信标。这些信标并不用于同步节点,而是用于记录随时间变化的时间漂移:每当传感器节点接收到一个带时间戳的信标时,会记录其未调整的本地时间Cs(ti)以及使用TACO调整后的时间$\hat{t}_i$。结合信标中包含的时间戳,这些记录被用来评估以下两个指标:
图9. TACO补偿的时间与使用常数P0补偿的时间对比。使用常数时,4天后时间漂移为375ms,而使用TACO时时间漂移为 57ms。
— 时间漂移 指的是本地时间与参考时间之间的差异。在我们的实验中,我们收集了未调整的本地时间和已调整的本地时间的时间漂移。理想的时间调整算法应使时间漂移为零。
— 偏斜估计误差 是估计的偏斜 $\hat{\bar{P}}_s(t)$(即基于公式(4.2)建模的温度‐时钟偏移相关性)与根据信标中包含的参考时间按照公式(21)计算得到的实测时钟偏移 $\bar{P}$之间的比较。$\hat{\bar{P}}_s(t)$和 $\bar{P}$均在两个信标之间计算得出。我们将 $\bar{P}$视为比较基准,因为在我们的首次实验中,基于CP的时间戳表现出较高的测量精度。
为了说明TACO的性能,我们在图8中展示了距离汇聚节点一跳的节点(BB05)的数据。图8(a)显示温度变化约为 14◦C。从图8(b)所示的时间漂移可以看出,在不进行本地时间调整的情况下,4天后时间漂移(红色线)超过了4.6秒,而使用TACO时时间漂移(绿色线)仅为57毫秒。需要注意的是,图中的线条是间歇性的,因为在高潮位期间由于通信丢失而未接收到带时间戳的信标;由于传感器节点未能根据信标调整其本地时间,时钟漂移持续增大。在第3.4节中,公式(20)表明预测的时钟偏移的误差界由训练样本决定,特别是由训练集中的温度均值决定。基于这一点
图10. Ove所有传感器节点的TACO性能。(a)使用和不使用TACO的时间漂移。(b) The mean and st 补偿阶段偏斜估计误差的标准差。
根据BB05的方程和训练集,我们对时钟偏移误差界的计算得出以下两点发现:(1) BB05在25◦C到 40◦C之间的上限将在0.12ppm至2ppm之间;(2)当环境温度偏离33◦C越远时,其误差界将变得越大。这两点发现得到了图8(c)和图8(d)的验证。图8(c)显示,估计的时钟偏移(绿色)与测量的时钟偏斜(红色)非常接近。最大时钟偏移误差为2ppm, 92%的估计误差小于1ppm(图8(d)),表明相关性估计是有效的。
如第5.5节所述,TACO通过采用PT而非P0提供了更好的性能。为了验证这一点,我们利用实地测试结果和Matlab模拟了仅考虑常数时钟偏移P0的场景。图9展示了节点BB05的结果,表明TACO优于仅使用常数值P0的补偿方案。根据图9,如果仅使用P0,在4天后时间漂移将达到375ms,是使用PT所产生的时间漂移的6.6倍。诚然,在某些情况下,P0在PT中是主导组件。然而,在温度变化的情况下,应用PT仍能提供更好的结果。
图10(a)显示了所有部署的传感器节点的整体性能。在未使用TACO的情况下,时间漂移范围从4.66秒(节点BB05)到21.92秒(节点BB09)。大多数传感器节点的时钟在4天后漂移超过10秒。应用TACO后,所有节点的时间漂移均减少,最大漂移为591毫秒(节点 BB08)。我们还分析了每个传感器节点的偏斜估计误差,如图10(b)所示。我们观察到 BB04、BB07和BB08的估计误差大于其他节点,因此它们在应用TACO后的漂移略大(超过470毫秒)。这验证了我们的直觉:时钟偏移估计误差越大,时间调整的效果越差。此外,传感器节点与汇聚节点之间的时间漂移受节点深度的影响:节点BB05和节点BB09位于深度1,其漂移小于它们的子节点。这可以通过定理3.1解释:估计误差的上限 $\Delta\beta$是ψ1和 ψ2的函数,其中 ψ1和 ψ2分别为时钟偏移和温度的测量误差。温度误差ψ2与节点深度无关,但时钟偏移误差
表二. 按不同跳数分组的绝对估计误差
| Tidal Zone | Dry Land | 平均值 | |
|---|---|---|---|
| 1跳 | 0.22ppm | 0.49ppm | 0.355ppm |
| 2跳 | 0.85ppm | 1.82ppm | 1.335ppm |
ψ1会沿着树形结构路径累积。这是因为当一个节点转发信标时,会引入额外的时间不确定性,从而导致时钟偏移的测量误差。我们注意到,与BB05的其他子节点相比,BB01经历的时间漂移较小。这可能是由温度差异引起的,因为在训练集中,它的温度读数平均比其他节点高出约3◦C。表二总结了按跳数分组的绝对估计误差,证实了绝对误差可能沿路径累积。然而,关键是确保节点与其父节点或子节点之间的通信,真正重要的是相对误差。
6.3. 与基于表格方案的比较
先前利用温度 [Schmid 等人,2009;Yang 等人 2012] 来调整本地时钟的研究依赖于温度与时钟偏移成对的表格。如果温度超出表中范围,则启动消息交换以获取时钟偏移 [Schmid 等人 2009]。如果参考节点不可用,则选择表中最近温度对应的时钟偏移作为替代 [Yang 等人 2012]。
为了将TACO与基于表格的方案进行比较,我们使用在南卡罗来纳州乔治城采集的温度数据和信道条件轨迹对基于表格的方案进行了仿真。为了构建时钟偏移表,我们识别了无线信道可用时所有可观测到的温度(如图11(a)所示),并利用二次函数(公式(1))计算了相应的时钟偏移。需要注意的是,在低潮期未观测到27.30◦C至30.40◦C的温度范围,因此该范围未被包含在表中。由于时钟偏移是通过公式(1)计算得出的,所仿真的表格不受实际基于表格方案中粒度限制的影响,能够以较高粒度调整时钟。尽管如此,TACO仍优于基于表格的方案。图11(b)总结了应用不同校准方案(包括TACO、基于表格和基于常数)后的时间漂移情况。结果表明,在4天后,基于表格方案的时间漂移约为168ms,是TACO漂移量的两倍。
图11. 不同校准方案的比较。(a) 温度范围。非重叠温度范围内的任何偏斜均设置为相近温度下的偏斜。(b) 应用 TACO、基于表格的方案和基于常数(P0=12.9)方案后的时间漂移。
(57毫秒)。这是因为基于表格的方案无法为未观测到的温度(即27.30◦C到30.40◦C)预测准确的时钟偏移。
7. 能量建模与分析
我们提出TACO,因为其本地补偿方案延长了重新同步所需的时间间隔,从而节省了广播 SYNC消息所消耗的能量。然而,这种节能是以周期性温度测量为代价实现的。
在本节中,我们提出这样一个问题:通过执行TACO,我们能否真正节省能量?具体而言,我们考虑以下两种网络场景:S1,一种完全依赖广播SYNC消息进行时间同步的网络;以及S2,一种结合广播SYNC消息和执行TACO来进行时间同步的网络。给定一个时间窗口Δ,设EΔ1和EΔ2分别为场景S1和S2中的能耗;该问题等价于:为了达到相同的同步精度,在什么条件下会满足EΔ2 < EΔ1成立?
为了解决这一问题,我们首先建立一个通用能量模型来开展分析,该模型可应用于 TACO及其他温度感知补偿方案。随后,我们将该能量模型应用于前述网络场景,并证明在大多数情况下,S2 比 S1 消耗更少的能量。
7.1. 能量模型
在本节中,我们为时间同步建立了一个通用能量模型。我们假设节点的每个组件都可以单独开启或关闭。例如,节点可以在使用温度传感器测量环境温度时关闭其无线电收发器。类似地,在节点传输SYNC消息时可以关闭温度传感器。因此,在给定的时间窗口Δ内,时间同步所消耗的能量(记为EΔ)由以下几部分组成:(1)同步消息通信所消耗的能量EM,(2)温度感知所消耗的能量ET,以及(3)计算开销所消耗的能量EL。换句话说,
$$
E_\Delta= E_M+ E_T+ E_L.
$$
我们首先考虑EM。一个节点周期性地开启其射频芯片以接收同步消息并将其转发给其子节点。设nM为在时间窗口 Δ内无线电开启的次数,eM为每次无线电开启时消耗的平均值能量;因此,
$$
E_M= e_M × n_M.
$$
假设 ω为周期性SYNC消息的时间间隔;那么,
$$
n_M= \frac{\Delta}{\omega}.
$$
对于eM,它包括空闲监听、接收和发送消息所消耗的能量[Polastre等,2004年;Wu等 2012]。此外,考虑到侦听到的消息和重传消息,我们可以将eM表述为
$$
e_M= e_{idle}+(q_1+ 1)× e_{rx}+(q_2+ 1)× e_{tx}.
$$
此处,erx和etx分别为接收和发送一条SYNC消息的能耗,q1和q2为反映侦听到的消息和重传消息影响的系数。
对于能量 ET,我们有
$$
E_T= e_T × n_T,
$$
其中eT是温度传感器单次测量所消耗的能量,nT是时间窗口 Δ内的测量次数。
EL 是计算开销所消耗的能量,其值取决于具体实现。我们假设计算可以划分为不同的任务(例如,最小二乘计算),并且每个任务周期性地重复执行。因此,我们有
$$
E_L=\sum_i e_{L_i} × n_{L_i},
$$
其中eLi是任务i单次操作的能量,nL i是任务i在时间窗口 Δ内的重复次数。
将它们综合起来,我们最终得到以下能量模型:
$$
E_\Delta= E_M+ E_T+ E_L = e_M × n_M+ e_T × n_T+\sum_i e_{L_i} × n_{L_i}.
$$
7.2 能量分析
考虑本节开头提出的两种网络场景:S1,一种完全依赖同步消息(即n T= 0和n L= 0)的网络,以及S2,一种依赖同步消息与TACO相结合的网络。设EΔ1和EΔ2分别为场景S1和 S2中的能耗。直观上,执行本地补偿
表III. 海洋节点的典型值
| 组件 | 电流消耗 | 持续时间 | 能量(毫安·秒) |
|---|---|---|---|
| TMP | 0.01毫安 | 26ms | eT= 2.6× 10−4 |
| COMP | 12.8毫安 | — | —– |
| 无线电 | 9.2毫安(空闲) | 20ms | eM= 0.37 |
| 无线电 | 25毫安(发送/接收) | eM= 0.37 |
注意:补偿模块(计算)的持续时间取决于实现。
增加了发送SYNC消息的时间间隔,从而减少了nM。因此,场景S2中SYNC消息所消耗的能量EM得以降低。这一目标的实现是以增加ET为代价的。然而,由于感知组件通常比通信组件消耗更少的能量,因此应有EΔ2< EΔ1。
表III总结了一个海洋节点的典型值。能量eM更为复杂,因为它受到两个因素的影响: (1)q1,由于非父节点邻居导致的被监听到的消息数量,以及(2)q2,由于碰撞导致的重传消息数量。为了简化讨论,我们考虑最佳情况,即没有发生重传(即,q2= 0),也没有消息被侦听(即,q1= 0)。一个SYNC消息长度为30字节(包括前导码和帧校验和),数据速率为40千比特每秒;因此,接收一个SYNC消息持续6毫秒。同样,转发同步消息也持续6毫秒。此外,为了在父节点和子节点之间成功发送和接收一个SYNC消息,射频芯片必须至少开启两倍于期望精度界限的时间。例如,如果任意一对邻居之间的期望最坏情况精度界限为10毫秒,则节点必须至少开启其无线电20毫秒。因此,
$$
e_M= 9.2 ×(0.020 −2 × 0.006)+ 25 × 0.006+ 25 × 0.006 = 0.37\text{mA·s}.
$$
以节点BB05为例。为了达到10毫秒的精度边界,在场景S1中必须每12.6分钟广播一次 SYNC消息,而在场景S2中则必须每16.8小时广播一次SYNC消息。设时间窗口Δ为1个月;那么,在场景S1中,n为428,将生成428条同步消息,总能耗为
$$
E_{\Delta1}= 0.37 × 3428+ 0+ 0= 1268.36\text{mA·s}.
$$
在场景S2中,1个月内仅生成nM= 43条同步消息,因此
$$
E_M= 0.37 × 43= 15.91\text{mA·s}.
$$
我们假设让我知道温度感知每分钟执行一次,这导致了t o
$$
E_T= 2.6 × 10^{-4} × 43200= 11.23\text{mA·s}.
$$
计算开销包括两个主要任务。首先,每次温度感知后,节点根据公式(1)预测时钟偏移,每次引入 2.56 × 10−5 mA·s 的能量消耗。其次,为了反映运行时的晶体老化,节点每月执行一次最小二乘计算以更新相关性,每次计算持续0.8ms。因此,
$$
E_L= 2.56 × 10^{-5} × 43200+ 12.8 × 0.0008 × 1= 1.12\text{mA·s}.
$$
因此,场景S2中的总能耗为
$$
E_{\Delta2} = E_M+ E_T+ E_L= 28.26\text{mA·s},
$$
仅为2.2%的EΔ1。
表IV. 不同时间同步方案所用海洋节点的能耗
| 纯消息 | 1268.36mA·s |
| SYNC +TACO | 28.26mA·s |
| SYNC+ Table Based | 57.85mA·s |
7.3. 模型讨论
本文提出的能量模型可应用于其他温度补偿协议,例如基于表格的协议,因为该模型与补偿的具体实现方式无关。类似于TACO,在基于表格的协议中,通过执行基于局部温度的校准而非频繁的消息交换来降低总能耗EΔ和EM。例如,考虑第6.3节中讨论的基于表格的协议。根据我们的仿真结果,为达到10毫秒的精度,每5.7小时需广播一次SYNC消息。换句话说,一个月内仅产生126条SYNC消息。假设温度采样率与TACO相同,并且查表算法实现高效,使得EL可以忽略不计。令EΔ3表示基于表格的协议的总能耗,则
$$
E_{\Delta3}= 0.37 × 126+ 2.6 × 10^{-4} × 43200= 57.85\text{mA·s},
$$
仅为EΔ1的4.6%,但略大于EΔ2。表IV总结了不同场景下时间同步能耗。
总之,该能量模型描述了时间同步的总能耗,包括通信、感知和计算等主要能耗。此外,利用该模型,我们表明TACO通过减少大量同步消息节省了能量。我们注意到,该模型未考虑无线电启动和载波侦测等次要开销,这将是我们的未来工作。
8. 相关工作
互联网上最广泛采用的时间同步协议是NTP [Mills1991],,该协议通过主NTP服务器与客户端之间交换包含发送和接收时间的时间戳的NTP数据包来实现同步。NTP提供的精度在几毫秒以内,但由于其较高的同步开销,不适用于无线传感器网络。
许多为无线传感器网络提出的基于广播的同步协议[埃尔森等,2002;埃尔森和斯特林 2003;加内里瓦尔等,2003;Mar´oti 等 2004;Ping 2003;伊尔迪里姆和坎塔尔吉 2014;Ferrari 等 2011]。埃尔森等人[2002]提出了RBS,其中相邻节点通过利用它们几乎同时接收到相同同步消息这一事实来相互同步。RBS将发送路径上的不确定性从关键路径中移除,从而实现了比网络时间协议更高的精度。在他们后续的工作[埃尔森和斯特林 2003],中,作者提出了一种低功耗同步方案——事后同步。在此方案中,一个“第三方”节点仅在触发信号到达时向其相邻节点广播一个同步脉冲,而接收到该脉冲的节点则将其作为本地触发时间戳的参考。事后同步对于那些波束成形应用而言是节能的,但不适用于远距离通信场景。TPSN[加内里瓦尔等 2003]包含
551

被折叠的 条评论
为什么被折叠?



