m无线传感器网络WSN的时间同步捕获算法matlab仿真,对比单步捕获法,双步捕获法以及锯齿波匹配捕获法

1.算法仿真效果

matlab2022a仿真结果如下:


2.算法涉及理论知识概要

2.1WSN同步概要

由于,信息传输和计算会消耗大量的能量,无线传感器网络中的节点都是由电池供电,能源有限,让节点长时间持续时间同步过程以达到极高精确度的时钟同步将导致极大的损耗,节点持续进行时钟同步对能量有限的无线传感器网络来说是一种巨大的浪费。因此,在实际中,需要对节点的同步精度进行规划,此外,为了降低每个节点的反馈次数,可以考虑多节点协作的反馈方式。对于原算法,主机和目标节点的反馈是基于1对1的方式,即对于任何一个节点,需要进行同步,那么需要通过主机和节点之间进行反馈运算:


每个节点需要做相位估计和反馈操作。为了进一步降低每个节点损耗,需要降低每个节点的运算量,那么我们采取如下的网络结构进行。



即节点将相位估计的结果,以最小的功率发送到相邻节点,再由相邻节点发送给主机,这样,对于节点1,其在同一时间段内,只需要使用相位估计和短距离发送的功率,从而大大降低了单个节点的使用寿命。


采用这种方式,可以大大降低发送功率,但是采用这种方式,需要在主机端设计多对一的接收机制,需要引入波速成形等技术。通过上述的思想,可以降低单个节点损耗,从而延长了单个节点的使用寿命。而采用多个相邻节点组合的方式,更进一步降低了发送节点的功耗,在接收端只要通过接收n个节点的信息来提取目标节点1的相位估计值。


2.2锯齿波匹配法

利用锯齿波的这种线性特性进行分析:




锯齿波的鉴相范围是指PFD的输出电压随相位误差单调、线性变化的范围。理想的PFD


的鉴相范围是,如商图所示。



以上就是使用锯齿波线性特性的基本原理,下面将其特性应用到本课题中。


由于实际中,主机发送的是窄脉冲信号,而不是直接发送一个相位信息,因此,需要通过将主机发送的窄脉冲信号和本地节点的锯齿波做相关操作,获得相关值。


2.3单步捕获算法和双步捕获算法的优缺点

两步捕获算法(MS算法)包括两次主机捕获过程,其区别在于主机所发射的同步脉冲信号宽度。基本思想是把搜索空间内总的相位点数F划分为Q个子区间,每个子区间包括M个相位。Q和M的表示为:Q=[F/M],[ ]表示向上取整。正确相位就在某个子区间内。两步过程为:


第一步,粗相位的捕获:



对Q个相位值,首先判断Q/2情况,计算其相关值(不同于原算法的相关运算),判断其正负,如果为正,所以真实相位<Q/2,如果为负说明真实相位>Q/2。


然后进入下一个搜索区间,比如进入了1~Q/2区间,开始计算与Q/4的相关值,,,依次进行下去,那么搜索到正确值所需要的运算次数为:log2(Q)。


那么其平均搜索次数为(1+log2(Q))/2 < (1+Q)/2


第二步:精相位的捕获:


和上面同样道路,在定位粗相位的时候,开始下一步搜索,其平均搜索次数仅为


(1+log2(M))/2



3.MATLAB核心程序

Ts    = 100;    % 搜索的最大相位差

Ts1   = 10;     % 初步搜索步长

Ts2   = Ts/Ts1; % 初步搜索宽度,要求Ts是Ts1整数倍!

T     = 1;      % 捕获积分宽度,单位:信号周期数


N     = 500;    % 特定相位差条件下求均值的随机次数

pnacq = zeros(1,Ts);

nnacq = zeros(1,N);



Nacq  = zeros(1,length(fPd));       % 仿真获得不同fPd时的平均反馈次数

for pdi=1:length(fPd)

for i=1:Ts          % 不同初始相位求平均

rndphase = i-1; % 初始相位差, 设本振相位为0            

rndp1 = floor(rndphase/Ts1);       % 分为两步搜索

rndp2 = mod(rndphase,Ts1);

for j=1:N       % 指定初始相位条件求平均


nacq  = 0;                  % 捕获时长,单位:T

curphase = rndp1;           % 主机当前调整的相位

while(1)

if(curphase==0)         % 正好在同步相位位置

if(rand()>fPd(pdi) || rand()>rPack)   % 同步漏检 或 同步确认丢失

curphase = Ts2-1;

else

nacq = nacq + 1; % 同步确认,设同步确认是理想的

break;          % 同步捕获完成

end;

else

if(rand()<fPfa)     % 出现虚警

curphase = curphase -1;

nacq = nacq + 1;

else

curphase = curphase -1;

end;

end;

end;

nacq = nacq+1;


% 第二步搜索

curphase = rndp2;

while(1)

.................................................

end;


nnacq(j)=nacq+1;

end; % end j cycle

pnacq(i)=mean(nnacq);


end; % end i cycle

Nacq(pdi) = mean(pnacq)


end;

plot(fPd,Nacq,'gx-'); hold on;

save sbfkcs.mat fPd Nacq

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,100评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,308评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,718评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,275评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,376评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,454评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,464评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,248评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,686评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,974评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,150评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,817评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,484评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,140评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,374评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,012评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,041评论 2 351

推荐阅读更多精彩内容