目录

1.算法仿真效果

2.MATLAB核心程序

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

4.完整MATLAB


1.算法仿真效果

matlab2022a仿真结果如下:

RBS算法的累积误差在50us大于80%;ERBS算法的累积误差在25us大于80%;本文所提出的MRF-MAP-Gardner ERBS算法的累积误差在10us大于80%。因此,在降低同步误差方面,MRF-MAP-Gardner ERBS算法性能优于RBS算法和ERBS算法。

RBS算法的同步误差在40us到100us所在比重最大,ERBS算法的的同步误差则主要集中在20us以内,而MRF-MAP-Gardner ERBS算法的同步误差集中在18us之内.

2.MATLAB核心程序

function yout=func_gardner(data0);
nsamp     = 2;
data = zeros(1,nsamp*length(data0));
for i = 1:length(data)-2data(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 - 12for k = 1 : 1y_temp = q0 - w;%=============================q(m) = q0;if y_temp > 0q0 = 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) ~= 0qoutI((j+1)/2) = interp_outI(j);enddata1 = datarcosQ(mk);data2 = datarcosQ(mk + 1);interp_outQ(j) = uk * data2 + (1 - uk) * data1;if mod(j,2) ~= 0qoutQ((j+1)/2) = interp_outQ(j);endj = j + 1;endm  = 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

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

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

算法通过一种基于马尔科夫随机场的最大后验估计方法对无线传感器网络中不相邻的两个接收节点在多个参考广播消息条件下的相位偏差进行估计,然后通过Gardner环对时钟漂移进行实时的估计和跟踪,实现时间同步过程。

在非确定性相位偏差估计方面,本文采用了一种基于马尔科夫随机场的最大后验估计算法。定义WSN中任意两个不相邻的的节点i和节点j交换m个参考消息包的相位偏差为:

其中,和分别表示接收节点i和接收节点j接收到参考包k时的本地时间。公式近似服从高斯分布,因此相位偏差可以通过最大后验概率进行估计,基于这个前提,

假设真实的相位偏差数据为S,观察得到的数据为,选择不同的先验模型来构造表示数据的先验知识,选择不同的观察模型来构造表示数据在特定先验数据下观察得到某个结果的可能性,根据最大后验概率估计方法可知,最优化所有相位偏差的联合概率可以通过如下公式表示:

在时钟漂移估计方面,由于WSN中各个节点的时钟漂移是由于晶振的频率漂移导致的,假设一个晶振的频率为100Mhz,其频率漂移为20ppm,那么晶振的实际输出频率为100Mhz2Khz。因此,接收节点将存在接收信号与本节点频率不同步的问题。同时,即便是同一型号的晶振,其频率漂移也是存在偏差的,因此需要通过一种实时跟踪和估计的方法来获得各种晶振的时钟漂移值。

4.完整MATLAB

V

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

  1. 【网络时间同步】基于马尔科夫随机场最大后验估计和Gardner环的无线传感器网络时间同步算法matlab仿真

    1.软件版本 matlab2021a 2.本算法理论知识 通过一种基于马尔科夫随机场的最大后验估计方法对无线传感器网络中不相邻的两个接收节点在多个参考广播消息条件下的相位偏差进行估计,然后通过Gard ...

  2. 马尔科夫随机场之图像分割【二】

    由于经常有读者说运行出错,我又本地校准了下程序,由于版权限制,lena图MATLAB新版已经撤除了,这里改成了cameraman的图 参考:http://blog.csdn.net/on2way/ar ...

  3. 马尔科夫链和马尔科夫随机场

    From:http://blog.csdn.net/j123kaishichufa/article/details/7638181 1.什么是随机过程? 在当代科学与社会的广阔天地里,人们都可以看到一 ...

  4. MRF,马尔科夫随机场

    之前自己做实验也用过MRF(Markov Random Filed,马尔科夫随机场),基本原理理解,但是很多细节的地方都不求甚解.恰好趁学习PGM的时间,整理一下在机器视觉与图像分析领域的MRF的相关 ...

  5. 马尔科夫随机场和马尔科夫链

    1.什么是随机过程? 在当代科学与社会的广阔天地里,人们都可以看到一种叫作随机过程的数学模型:从银河亮度的起伏到星系空间的物质分布.从分子的布朗运动到原子的蜕变过程,从化学反应动力学到电话通讯理论.从 ...

  6. 关于马尔科夫随机场(MRF)在图像分割中应用的个人理解

    首先明确几个基本概念(个人理解): 先验概率: 基于历史经验得到的当前事件发生的概率 后验概率: 根据数据或证据得到的事件发生的概率 (由因到果) 似然概率: 已知事件发生的概率下数据或证据发生的概率 ...

  7. 概率图模型(6)马尔科夫随机场

    文章目录 概率图模型的综合叙述: 马尔科夫随机场综述: 马尔科夫随机场定义: MRF的因式分解: 一个简单的例子: 概率图模型的综合叙述: 特征函数便是图中的conditional.对图简单的说明,综 ...

  8. 马尔科夫随机场Markov Random Field

    马尔可夫随机场,描述了具有某种特性的集合.拿种地打比方,如果任何一块地里种的庄稼的种类仅仅与它邻近的地里种的庄稼的种类有关,与其它地方的庄稼的种类无关,那么这些地里种的庄稼的集合,就是一个马尔可夫随机 ...

  9. 马尔科夫随机场简单理解

    MRF(Markov Random Filed,马尔科夫随机场)类似贝叶斯网络用于表示依赖关系.但是,一方面它可以表示贝叶斯网络无法表示的一些依赖关系,如循环依赖:另一方面,它不能表示贝叶斯网络能够表 ...

最新文章

  1. JavaWeb——多个Filter代码的执行顺序
  2. C# 线程池和编程实例
  3. Java忽略算术溢出,IEEE-754:“最小”溢出条件
  4. Android官方开发文档Training系列课程中文版:Activity测试之创建单元测试
  5. LayoutInflater.inflate()方法两个参数和三个参数
  6. python找出有向图的所有环,Python:有向图中的所有简单路径
  7. 专业修复数据库修复软件不能修复的数据库
  8. 计算机应用超期,电脑程序数字签名过期怎么办
  9. 《从零开始学Swift》学习笔记(Day 12)——说几个特殊运算符
  10. Linux下ICMP洪水***实例
  11. PDFLIB C++修改及使用说明
  12. 精细化管理设备资产,降低企业运营成本
  13. 菜鸟教程:Js数据类型
  14. Requests爬取chinadaily海量新闻数据
  15. vba根据列名获取列号 获取总列数 求和
  16. 【JY】结构动力学初步-单质点结构的瞬态动力学分析
  17. submit()和onsubmit()的区别
  18. linux 查看文件创建时间
  19. 基于Axure的火车售票系统——高保真原型图
  20. 大型游戏行业网络技术解决方案

热门文章

  1. AD开发用户(User)属性完全手册(AD User)
  2. java莱茨狗_女神节特辑 | 程序媛可以多牛逼?温暖颜高技术好!
  3. #Android--无需 ROOT 实现自动化脚本,让你的手机拥有无穷的可能(非宣传 APP)
  4. HTML彩色渐变字效果
  5. 使用OpenGL画出四边形不完整的解决
  6. simscape 使用
  7. ECharts 多条坐标轴轴线,合并为一条线
  8. 220v 中间可以直接接多大多少瓦的电阻
  9. swift 4.1 可选型optional
  10. 小夜灯方案开发触摸RGB遥控调光小夜灯单片机便携锂电池水晶台灯IC