目录

1.算法描述

2.仿真效果预览

3.MATLAB部分代码预览

4.完整MATLAB程序


1.算法描述

BOC-Binary Offset Carrier,也叫二进制偏置载波调制,是在Galileo系统设计过程中提出的一种新的载波调制方式。它的基本原理是在原有的BPSK调制基础上,再增加一个二进制副载波(目前主要是由正弦或余弦型符号函数构成的副载波,即形似sgn(sin(t))或sgn(cos(t)),以正弦或余弦信号为参数的符号函数)。这种调制方式的最大特点是,其功率谱的主瓣分裂成对称的两部分,而且根据选择的参数不同,两个分裂主瓣的距离也可以变化。一般常用的表示方式为BOC(m,n)的形式,其中m表示的是副载波频率,n表示的是扩频码速率,具体数值分别是1.023MHz的m倍和n倍。

关于BOC调制,Betz的文章《Binary Offset Carrier Modulations for Radionavigation》是比较经典的,特别是附录里关于功率谱表达式的推导,让我省却了很多自行推导的烦恼。不过里面有一处印刷错误,有兴趣的朋友应该不难发现。中文资料里我认为邱致和的《GPS M码信号的BOC调制》,可以作为参考,特别是关于BOC基本概念的介绍。

BOC 调制就是在原有 BPSK 调制的基础上,再加上一个二进制副载波对 BPSK 信号进行二次扩频。由于方波易于生产,因此采用方波来替代正弦波,这样可以节约硬件资源。一般用 BOC(sf ,cf)来表示sf 代表副载波频率,cf 代表伪码速率。因为sf 和cf都是 1.023MHz 的整数倍,所以文献中用 BOC(m,n)的表示形式,其中 m 表示的是副载波频率,n 表示的是扩频码速率,它们分别表示 1.023MHz 的 m 倍和 n 倍。

BOC 调制的频谱可以分为两个对称独立的边带,它的自相关函数是一种多峰结构,其中主峰较窄,所以有可能对接收机处理方式做一些改变,以便在实现时获得性能的改善。另外一种可行的方法是使鉴相器工作在一个带宽信号的相对函数上,进而保持对主峰的粗跟踪,之后再转入用双边带信号工作的鉴相器,来作精跟踪。由此可见,BOC 调制信号的频谱中上边带和下边带的冗余,自相关函数中的多峰,如果加以开发利用有可能在接收机的信号截获、码跟踪以及数据解调等处理中带来利益。

BOC 调制信号是在载波调制前对扩频信号用副载波进行二次扩频。其流程如下图所示:

正、余弦BOC调制信号的码片波形可以分别表示为


正弦BOC调制信号BOCs(m,n)和余弦BOC调制信号BOCc(m,n)的自相关函数分别为

boc和bpsk区别很多:

1 功率谱不同,boc将基带信号能量搬移到±fs处,bpsk基带信号能量集中在0频。boc的这种特性使得一个频点可以发射多个信号分量。

2 相关函数不同,boc有多个峰,会使得接收机产生误锁,而bpsk不会。

总结,boc是的导航信号调制方式设计更具灵活性,但接收处理更有挑战。bpsk接收处理简单。

2.仿真效果预览

matlab2022a仿真结果如下:

3.MATLAB部分代码预览

[signal_BOC] = source_BOC(SNR,2,fword_code,fword_sub_carrier,fword_carrier);for index = 1:loopnumindex%信号跟踪[signal_BOC,prn_source] = source_BOC(SNR,point,fword_code,fword_sub_carrier,fword_carrier);%本地码载波产生[local_prn_E,local_prn_P,local_prn_L,...local_BOC_E,local_BOC_P,local_BOC_L,...fll_carrier_cos,fll_carrier_sin,...pll_carrier_cos,pll_carrier_sin] = local_gen(point);%相关运算%ASPeCTDcm_I_E1 = sum(signal_BOC.*fll_carrier_cos.*local_BOC_E);Dcm_I_E2 = sum(signal_BOC.*fll_carrier_cos.*local_prn_E); Dcm_I_E  = Dcm_I_E1^2-Dcm_I_E2^2;                                Dcm_Q_E1 = sum(signal_BOC.*fll_carrier_sin.*local_BOC_E);Dcm_Q_E2 = sum(signal_BOC.*fll_carrier_sin.*local_prn_E);Dcm_Q_E  = Dcm_Q_E1^2-Dcm_Q_E2^2;Dcm_I_P1 = sum(signal_BOC.*fll_carrier_cos.*local_BOC_P);Dcm_I_P2 = sum(signal_BOC.*fll_carrier_cos.*local_prn_P);Dcm_I_P  = Dcm_I_P1^2-Dcm_I_P2^2+abs(Dcm_I_P1^2-Dcm_I_P2^2);   Dcm_Q_P1 = sum(signal_BOC.*fll_carrier_sin.*local_BOC_P);Dcm_Q_P2 = sum(signal_BOC.*fll_carrier_sin.*local_prn_P);Dcm_Q_P  = Dcm_Q_P1^2-Dcm_Q_P2^2+abs(Dcm_Q_P1^2-Dcm_Q_P2^2);Dcm_I_L1 = sum(signal_BOC.*fll_carrier_cos.*local_BOC_L);Dcm_I_L2 = sum(signal_BOC.*fll_carrier_cos.*local_prn_L);Dcm_I_L  = Dcm_I_L1^2-Dcm_I_L2^2;  Dcm_Q_L1 = sum(signal_BOC.*fll_carrier_sin.*local_BOC_L);Dcm_Q_L2 = sum(signal_BOC.*fll_carrier_sin.*local_prn_L);Dcm_Q_L  = Dcm_Q_L1^2-Dcm_Q_L2^2;%码鉴别滤波,计算频率字pow_E                  = Dcm_I_E^2+Dcm_Q_E^2;pow_L                  = Dcm_I_L^2+Dcm_Q_L^2;code_dis               = (pow_E-pow_L)/(pow_E+pow_L)/2;code_dis_result(index) = code_dis;if index ==1last_out_DDL = 0;last_in_DDL  = 0;endcode_filter               = last_out_DDL + [code_dis last_in_DDL]*[C1 (-1)*C2]';last_out_DDL              = code_filter;last_in_DDL               = code_dis;code_filter_result(index) = code_filter;local_fword_code          = (fc+code_filter)*2^40/fsamp;local_fword_sub_carrier   = (fs+code_filter)*2^40/fsamp;
end
A_050

4.完整MATLAB程序

matlab源码说明_我爱C编程的博客-CSDN博客

V

基于matlab的BOC调制解调的同步性能仿真,输出跟踪曲线以及不同超前滞后码距下的鉴别曲线相关推荐

  1. 基于MATLAB的GMSK调制解调系统的设计仿真

    目录 1.算法概述 2.仿真效果 3.MATLAB仿真源码 1.算法概述 MSK调制是调制指数为0.5的二元数字频率调制,具有很好的特性,如恒包络.相对窄的带宽.并可以相干检测.MSK[最小频移键控] ...

  2. 基于MATLAB的自适应调制解调通信系统的误码率仿真,对比BPSK,QPSK,16QAM,64QAM

    目录 1.算法仿真效果 2.MATLAB核心程序 3.算法涉及理论知识概要 4.完整MATLAB 1.算法仿真效果 matlab2022a仿真结果如下: 2.MATLAB核心程序 .......... ...

  3. am解调matlab程序,基于Matlab的AM调制解调.doc

    学号20100602050101 密级 公 开 本科毕业论文 基于Matlab的AM调制解调 及抗噪性能分析 学 院 名 称: 专 业 名 称: 学 生 姓 名: 指 导 教 师: 讲师 二〇一四年五 ...

  4. 脉位调制解调 matlab,基于matlab的am调制解调

    基于matlab的am调制解调 基于 Matlab 的 AM 调制解调一.AM 的调制原理AM 是指对信号进行幅度调制 [2].一般做法是先在原信号上叠加一个直流信号,以保证信号 , 然后乘上一个高频 ...

  5. matlab实现ofdm调制解调,基于MATLAB的OFDM调制解调仿真

    基于MATLAB的OFDM调制解调仿真 题目:基于 MATLAB的 OFDM调制解调仿真2009年 6 月 13 日目 录摘要 .IIAbstract IV第 1章 正交频分复用的来源 - 1 -1. ...

  6. 基于Matlab的DSB调制解调,课程设计(论文)-基于MATLAB的DSB调制与解调分析.doc

    目 录 前言2 1 DSB调制与解调原理3 1.1DSB调制原理3 1.2DSB解调原理与抗噪性能5 2 DSB调制解调分析的MATLAB实现7 2.1正弦波调制7 2.1.1调制信号幅度=0.8×载 ...

  7. 基于matlab的BOC调制信号捕获仿真

    目录 1.算法描述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法描述 随着全球导航卫星系统的高速发展,导航系统的数量也越来越多,比如使用最广泛的GPS导航系统,以 ...

  8. 基于 VIVADO 的 AM 调制解调(3)仿真验证

    一.概述 本文通过设计 Testbench 对 AM 调制解调模块进行功能验证,主要检查以下几点: (1)各阶段波形是否正确输出. (2)各信号幅值是否符合预期. (3)调制深度是否接近预设值. (4 ...

  9. 信号的调制与解调matlab仿真,基于MATLAB对信号调制与解调的仿真

    基于MATLAB对信号调制与解调的仿真 2.3 2PSK的基本原理和调制解调实现 数字相移键控,记作PSK(Phase shift-keying ),二进制相位键控记作2PSK. 2PSK就是根据基带 ...

最新文章

  1. 居然出错.谁能帮我解决一下.
  2. 3.Factory Method 工厂方法模式(创建型模式)
  3. 网速dns怎么调快_怎么设置dns?教你快速解决网速慢的问题
  4. python mqtt broker_python Mqtt 的安装及使用
  5. 令人惊讶的手机端实时 4K 风格迁移!谷歌又出牛文
  6. 计算机二级文字处理解题步骤,计算机二级Msoffice~文字处理答案解析(解题步骤)...
  7. 一行 Python 实现并行化 -- 日常多线程操作的新思路
  8. Python数据结构与算法(附录)——块状链表的动态调整
  9. 网络营销的关键你知道多少
  10. jquery_datatables
  11. 两年以后重读了一篇文章,写了点东西。
  12. Altium designer--DB接口DB9/DB15/DB25/DB37/DB50
  13. linux运维工程师的发展,Linux运维工程师发展前景
  14. 计算机电子书 2019 归档
  15. 永中office属于职称计算机吗,职称计算机考核永中OFFICE辅导之电子表格.doc
  16. Google浏览器并行下载设置
  17. python测验6_Python语言程序设计 - 测验6: 组合数据类型 (第6周)
  18. 莫言2012诺贝尔奖颁奖词
  19. React使用高德地图 (react-amap)(一)
  20. 【新年返程离不开Python】最新12306抢票源程序Python版就此分享给大家啦!

热门文章

  1. js获取android mac地址,JS获取客户端IP地址、MAC和主机名的7个方法汇总
  2. Contest3117 - 2021级新生个人训练赛第24场_问题 E: 打印方阵
  3. mysqldump: Couldn‘t execute 以及 mysqldump:Can‘t create/write to file
  4. Python就业:Python就业岗位职能要求解析
  5. springboot+springcloud+mybatis+redis+mysql+rabbitMQ+netty技术栈学习
  6. kafka基础架构(概念篇)
  7. Xposed使用技巧-反射
  8. 灌区智能测控一体化闸门系统解决方案
  9. php输出到特定位置,如何使用php从指定位置开始替换字符串
  10. 精品软件推荐 网站流量提升工具