详细介绍
P0972VA
P0972VA
1 时钟模型
WSN中各节点的时钟主要包括一个统一的基准时钟,一个相对于基准时钟的偏移,和由于时钟频率不*而导致的扭曲。定义c(t)为一个参考时钟,是一个统一稳定的基准值。每个节点有自己的时钟,是一个关于t的函数ci(t),每个节点的本地时钟相对基准时钟的偏移是指由于*累积而导致的时钟不*,扭曲是指由于石英晶体振荡器振荡频率不*,从而导致了时钟与基准时钟之间存在差别。
设两个节点的时钟分别为ci(t)和cj(t),如果时钟在时间t*正确,则ci(t)=cj(t)=c(t),但是在实际中两个时钟往往是不相等的。这是由于晶体振荡器本身技术原因和外部工作环境(如温度、压力)等因素引起的,因此,t时刻每个节点的时钟模型为:ci(t)=αit+βi,其中αi为晶体振荡器自身频率的不*而带来的扭曲,βi为时钟*积累的偏移。
为达到时钟*,zui关键的问题是使得任何节点的ci(t)=c(t),即补偿时钟的扭曲αi和时钟偏移βi,在任何时刻各节点的时钟不再偏移,且振荡频率也**。
3.2 算法实现
TSMA要达到的目标是内部*。在每个同步循环,算法更新每个节点的补偿参数,通过这样的方式使时钟达到*:limt→∞ci(t)=cv(t)。其中cv(t)是本算法的虚拟时钟,虚拟时钟并不是一个现实中存在的时钟,而是所有节点以之为基准的一个时钟,是由本算法在运行过程中产生的。虚拟时钟有相对于实际时钟的扭曲率和相对偏移。各节点对本节点扭曲和偏移进行补偿,从而同步于虚拟时钟,实现全网同步。
设虚拟时钟为cv(t)=α·t+β,为使得各节点时钟zui后同步于虚拟时钟,需要采用修正参数,设对于扭曲的修正参数为α′,对于偏移的修正参数为β′,则运行过程中,通过修正参数使得时钟保持*的条件为:limt→∞(α′ci(t)+β′)=cv(t)=α·t+β,即limt→∞(α′ αit+α′βi+β′)=α·t+β,由此可得到修正参数为:
为得到补偿各节点的时钟扭曲和偏移,每个节点在算法执行周期内完成对两种参数的修正。修正主要包括两个过程:*个过程为扭曲修正,通过修正扭曲值使得节点与虚拟时钟频率*;第二个过程为偏移修正,通过修正偏移值确保全网时钟同步。