您现在的位置:首页 >> 网络协议 >> 内容

m基于马尔科夫随机场和Gardner环的WSN网络时间同步matlab仿真

时间:2023/3/12 21:52:13 点击:

  核心提示:12_026_m,包括程序操作录像+说明文档+参考文献...

1.完整项目描述和程序获取

>面包多安全交易平台:https://mbd.pub/o/bread/ZJaWmpxt

>如果链接失效,可以直接打开本站店铺搜索相关店铺:

点击店铺

>如果链接失效,程序调试报错或者项目合作可以加微信或者QQ联系。

2.部分仿真图预览



3.算法概述

       ERBS是在RBS算法的基础上改进得到的,但其性能上依旧存在如下几个方面的缺陷:在非确定性相位偏差估计方面,EBRS算法假定了相位偏差测量值服从均值为0,方差为的高斯分布,此外,其非确定性相位偏差估计是基于有限个相位偏差测量值来获得的,因此这种方法当WSN网络环境发生较大程度的改变的时候,则会产生较大的估计误差。在时钟漂移估计方面,EBRS算法将其节点时钟漂移模型简化为线性模型进行估计,而实际中,时钟漂移是一个动态变化的过程,对时钟漂移的估计需要进行实时的跟踪和估计才能获得一个较为精确的估计结果。针对这两个问题,提出了一种新型的高精度能量有效无线传感器网络时间同步算法。

4.部分源码

function yout=func_gardner(data0);

nsamp     = 2;

data = zeros(1,nsamp*length(data0));

for i = 1:length(data)-2

    data(i) = data0(floor(i/nsamp)+1);

end

interplen = length(data);

 

w         = 0.5;%lf输出

q0        = 0.9;

q         = zeros(1,interplen);

m         = 5;

j         = 3;

C1        = 0.001;

C2        = C1 * 0.0005;

datarcosI = data(9:end) ;

datarcosQ = data(9:end) ;

s0        = 2;%插值乘法器值

Detector_out   = zeros(1,interplen);%误差检测输出

interp_outI    = zeros(1,interplen * 2);%插值filter输出;

interp_outQ    = zeros(1,interplen * 2);

interp_outI(1) = datarcosI(2);

interp_outI(2) = datarcosI(4);

interp_outQ(1) = datarcosQ(2);

interp_outQ(2) = datarcosQ(4);

     

for i = 2 : interplen - 12

 

 for k = 1 : 1

      y_temp = q0 - w;%=============================

      q(m) = q0;

      if y_temp > 0

          q0 = y_temp;

      else 

          q0 = mod(y_temp,1);

          mk = m;

          uk = s0 * q(m);

          uu(j) = uk;

          data1 = datarcosI(mk);

          data2 = datarcosI(mk + 1);

          interp_outI(j) = uk * data2 + (1 - uk) * data1;

          if mod(j,2) ~= 0

              qoutI((j+1)/2) = interp_outI(j);

          end

          data1 = datarcosQ(mk);

          data2 = datarcosQ(mk + 1);

          interp_outQ(j) = uk * data2 + (1 - uk) * data1;

          if mod(j,2) ~= 0

              qoutQ((j+1)/2) = interp_outQ(j);

          end

          j = j + 1;

      end

      m  = m + 1;

 end         

  Detector_out(i) = (interp_outI((i - 2)* 2 + 2)) * ((interp_outI((i - 1)* 2 + 1)) - (interp_outI((i - 2)* 2 + 1)))...

                   + (interp_outQ((i - 2)* 2 + 2)) * ((interp_outQ((i - 1)* 2 + 1)) - (interp_outQ((i - 2)* 2 + 1)));

  w = w + (C1 * (Detector_out(i) - Detector_out(i - 1)) + C2 * Detector_out(i));  

  Wm(i) = w;

end

yout = (interp_outI + interp_outQ)/2/nsamp;

12_026_m

作者:我爱C编程 来源:我爱C编程
本站最新成功开发工程项目案例
相关评论
发表我的评论
  • 大名:
  • 内容:
本类固顶
  • 没有
  • FPGA/MATLAB商业/科研类项目合作(www.store718.com) © 2025 版权所有 All Rights Reserved.
  • Email:1480526168@qq.com 站长QQ: 1480526168