基于costas环的载波同步系统matlab性能仿真

目录

1.算法运行效果图预览

2.算法运行软件版本

3.部分核心程序

4.算法理论概述

5.算法完整程序工程


1.算法运行效果图预览

2.算法运行软件版本

matlab2022a

3.部分核心程序

............................................................................
I_Data=round(rand(N,1))*2-1;
Q_Data=round(rand(N,1))*2-1;
%QPSK信号源
s=I_Data + j*Q_Data;
fs=2400;                    %采样率
fdelta=-40;                 %频偏
Time_Sample=1/fs;           %每个采样值的持续时间
Delta_Phase=rand(1)*2*pi;   %初始相位
sin_cos=exp(j*(fdelta/fs*(1:len)+Delta_Phase));  %载波%调制
r=s.*sin_cos'; %r=Icos+Qsin %环路处理
C1=0.022;  
C2=0.00024;for i=2:N
..........................................................................
endfigure
plot(Discriminator_Out);
grid on;
title('鉴相器输出');
% axis([1 len 0 7]);figure
plot(mod(NCO,2*pi));
grid on;
title('NCO响应曲线');
axis([1 len 0 7]);figure
subplot(211)
plot(-PLL_out(2:len)*fs);
grid on;
title('锁相环频率响应曲线');
axis([1 len -100 100]);subplot(212)
plot(PLL_out2(2:len)*180/pi);
title('锁相环相位响应曲线');
axis([1 len -2 2]);
grid on;figuresubplot(2,2,1)
plot(I_Data(500:550));
grid on;
title('I路信息数据');
axis([1,50,-2,2]);subplot(2,2,2)
plot(Q_Data(500:550));
grid on;
title('Q路信息数据');
axis([1,50,-2,2]);subplot(2,2,3)
plot(I_PLL(500:550));
grid on;
title('锁相环输出I路信息数据,注意可能会出现相位模糊现象,即倒PI现象');
axis([1,50,-2,2]);subplot(2,2,4)
plot(Q_PLL(500:550));
grid on;
title('锁相环输出Q路信息数据,注意可能会出现相位模糊现象,即倒PI现象');
axis([1,50,-2,2]);
15_001m

4.算法理论概述

        基于Costas环的载波同步系统是一种用于恢复接收信号的载波频率和相位同步的系统。Costas环是一种特殊的环路锁相环路,广泛用于调制解调器、无线通信和雷达等领域。以下是基于Costas环的载波同步系统的基本原理和结构:Costas环是一种相位锁定环路,用于估计接收信号的载波频率和相位。它的基本原理是通过不断迭代比较接收信号的相位差来实现频率和相位的同步。通过调整本地振荡器的频率和相位,使得接收信号与本地振荡器的相位差保持在一个特定的范围内,从而实现同步。

结构:

一个基本的基于Costas环的载波同步系统通常包括以下组件:

  1. 接收信号: 接收来自信道的调制信号,这通常是经过载波频率和相位偏移的信号。

  2. 混频器: 接收信号与本地振荡器的混频器将信号从中心频率移到基带频率。混频器输出的是相位差信号。

  3. 本地振荡器: 本地振荡器产生一个与接收信号频率和相位相近的信号。

  4. Costas环路: Costas环路包括两个分支,一个用于估计频率,另一个用于估计相位。这两个分支分别用于控制本地振荡器的频率和相位。其基本公式如下:

       两路信号(I为上面一路,Q为下面一路)通过低通成形滤波器后与cos,sin相乘完成系统的调制,然后将两路调制信号相加完成混频,再发送出去。

  1. 相位差计算器: 用于计算混频器输出的相位差,以便反馈给Costas环路。

  2. 频率和相位调整器: 根据相位差计算结果,调整本地振荡器的频率和相位,以实现载波同步。

  3. 输出: 同步后的信号可用于进一步的解调或数据提取。

       基于Costas环的载波同步系统是一种有效的方式,用于恢复接收信号的载波频率和相位,以便正确解调信号并提取数据。这种系统在数字通信系统中非常常见,特别是在调制解调器和同步接收机中。

5.算法完整程序工程

OOOOO

OOO

O

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/115482.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring-5.0.x源码下载及本地环境搭建

一、Spring源码下载 从github上下载Spring的源代码 下载地址:https://github.com/spring-projects/spring-framework 访问地址之后,打开Spring的代码页面找到你想下载的版本,如5.0.x,如下图所示: 下载方式一&#x…

java+jsp+servlet+mysql蛋糕商城

项目介绍: 本系统为基于jspservletmysql的蛋糕商城,包含管理员和用户角色,用户功能如下: 用户:注册、登录系统;查看商品分类;查看热销、新品商品;查看商品详情;搜索商品…

电磁式电压互感器直流电阻测试

试验目的 测量电磁式电压互感器直流电阻的目 的是检查其一次、 二次绕组的质量及回路的完整性, 以发现各种原因所造成的导线断裂、 接头开焊、 接触不良、 匝间短路等缺陷。 试验设备 变压器直流电阻测试仪 厂家: 湖北众拓高试 试验方法 一次绕组直流…

C++信息学奥赛1177:奇数单增序列

#include<bits/stdc.h> using namespace std; int main(){int n;cin>>n; // 输入整数 n&#xff0c;表示数组的大小int arr[n]; // 创建大小为 n 的整型数组for(int i0;i<n;i) cin>>arr[i]; // 输入数组元素for(int i0;i<n;i){ // 对数组进行冒泡排序f…

【JavaSE】String类

两种创建String对象的区别 String s1 "hello"; String s2 new String("hello");s1是先查看常量池是否有 “hello” 数据空间&#xff0c;如果有就直接指向它&#xff0c;如果没有就创建然后指向它。s1最终指向的是常量池的空间地址。 s2是先在堆中创建空…

c++ boost::json

Boost社区12月11日发布了1.75版本&#xff0c;在之前&#xff0c;​​Boost使用Boost.PropertyTree解析​​JSON​​​&#xff0c;​​XML​​​&#xff0c;​​INI​​​和​​INFO​​​格式的文件。但是由于成文较早及需要兼容其他的数据格式&#xff0c;相比较于其他的​…

buildAdmin的使用笔记

安装buildAdmin 下载完整包&#xff0c;解压进入 buildadmin 的文件夹&#xff0c; 输入命令 composer install 启动的时候使用&#xff0c; php think run 就可以了 为什么启动只需要&#xff0c; php think run 这种启动方式&#xff0c; 我是头一回看见 &#xff0c;后来才…

angular抛出 ExpressionChangedAfterItHasBeenCheckedError错误分析

当变更检测完成后又更改了表达式值时&#xff0c;Angular 就会抛出 ExpressionChangedAfterItHasBeenCheckedError 错误。Angular 只会在开发模式下抛出此错误。 在开发模式下&#xff0c;Angular 在每次变更检测运行后都会执行一次附加检查&#xff0c;以确保绑定没有更改。这…

Mediasoup在node.js下多线程实现

mediasoup基于socket.io的交互消息来完成join-room的请求过程。Join的过程&#xff0c;实际就是获取stream的过程&#xff0c;也就是视频加载时间(video-load-speed)。在RTMP系统&#xff0c;视频加载时间是秒开。Mediasoup给出的第一个frame是I-frame&#xff0c;但由于交互的…

C++编辑修改PDF

PDFWriter是一个易于使用的C创建、修改PDF文档的库 1.创建一个PDF文件 #include #include “PDFWriter.h” int main() { std::cout << “Hello World!\n”; PDFWriter pdfWriter; int retpdfWriter.StartPDF(“D:\mytestwriterpdf.pdf”, ePDFVersion13); if (ret eS…

认识ESP32(什么是RSP32)

一、认识ESP32 ESP32 是一款由乐鑫信息科技&#xff08;Espressif Systems&#xff09;开发的微控制器&#xff08;Microcontroller&#xff09;&#xff0c;它广泛用于物联网&#xff08;IoT&#xff09;和嵌入式系统应用。以下是一些 ESP32 的主要特点&#xff1a; 双核处理…

26 Linux高级篇-Linux面试题

26 Linux高级篇-Linux面试题 文章目录 26 Linux高级篇-Linux面试题1.分析日志t.txt(访问量)&#xff0c;将各个ip地址截取&#xff0c;并统计出现次数&#xff0c;并按从大到小排序(腾讯)2.统计连接到服务器的各个ip情况&#xff0c;并按连接数从大到小排序(腾讯)3.如忘记了mys…

Linux枚举文件目录、获取文件属性

目录 1.枚举指定路径下的文件目录2.获取文件属性stat其他方式&#xff1a;Linux获取文件属性stat()、fstat()、lstat()函数实现stat属性代码 1.枚举指定路径下的文件目录 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <dirent.…

C++11——右值引用和移动语义

✅<1>主页&#xff1a;&#xff1a;我的代码爱吃辣 &#x1f4c3;<2>知识讲解&#xff1a;C11——右值引用 ☂️<3>开发环境&#xff1a;Visual Studio 2022 &#x1f4ac;<4>前言&#xff1a;右值引用&#xff0c;是C11更新的一个非常有价值的语法&am…

[ES]mac安装es、kibana、ik分词器

一、安装es和kibana 1、创建一个网络&#xff0c;网络内的框架(eskibana)互联 docker network create es-net 2、下载es和kibana docker pull elasticsearch:7.12.1 docker pull kibana:7.12.1 3、运行docker命令部署单点eskibana&#xff08;用来操作es&#xff09; doc…

七、高并发内存池--Page Cache

七、高并发内存池–Page Cache 7.1 PageCache的工作原理 PageCache是以span的大小(以页为单位)和下标一一对应为映射关系的哈希桶&#xff0c;下标是几就说明这个哈希桶下挂的span的大小就是几页的&#xff0c;是绝对映射的关系。因为PageCache也是全局只有唯一一个的&#x…

Unity MonoBehaviour事件函数的生命周期

Unity运行时候的默认的几个函数的执行顺序&#xff1a; 首先是Awake&#xff0c;OnEnable&#xff0c;Start等&#xff0c;后面是FixUpdate Update 最后是OnDisable、OnDestroy

VUE之jspreadsheet电子excel表格实时动态高度设置

问题&#xff1a;excel电子表格在不同屏幕大小下横向滚动条会被遮挡 排查原因&#xff1a;由于excel高度固定导致 解决方法&#xff1a;设计页面较多&#xff0c;所以封装公共方法 步骤&#xff1a; 1.使用混入封装动态设置excel高度方法&#xff1a; const mixinJexcel …

WPF实战项目十四(API篇):登录注册接口

1、新建UserDto.cs public class UserDto : BaseDto{private string userName;/// <summary>/// 用户名/// </summary>public string UserName{get { return userName; }set { userName value;OnPropertyChanged(); }}private string account;/// <summary>…

基于侏儒猫鼬算法优化的BP神经网络(预测应用) - 附代码

基于侏儒猫鼬算法优化的BP神经网络&#xff08;预测应用&#xff09; - 附代码 文章目录 基于侏儒猫鼬算法优化的BP神经网络&#xff08;预测应用&#xff09; - 附代码1.数据介绍2.侏儒猫鼬优化BP神经网络2.1 BP神经网络参数设置2.2 侏儒猫鼬算法应用 4.测试结果&#xff1a;5…