利用Hilbert变换进行相位调制信号的解调
1. 相位调制信号
相位调制中,相位信息叠加到载波上,数学表达式如下:
其中,是原始信号,是载波频率,是载波相位,是载波幅值。
并且,.
调制信号可以简化成如下形式:
其中,是瞬时相位。
2,相位调制信号的解调
为了从调制信号中解调出原始信号,可以将实值信号变成解析信号,然后求解的瞬时相位,就得到了,再从瞬时相位中减去,最终就可以得到原始信号。
那么问题来了,如果收端预先不知道载波频率和相位,那么该怎么求解呢?
注意到,因此,可以近似为关于t的一条直线。如下图所示。
因此,可以用一阶多项式近似的方法求解出。
3,Matlab代码和图示
代码如下:
%Demonstrate simple Phase Demodulation using Hilbert transform
pkg load signal;clearvars; clc;
fc = 210; %carrier frequency
fm = 10; %frequency of modulating signal
alpha = 1; %amplitude of modulating signal
theta = pi/4; %phase offset of modulating signal
beta = pi/5; %constant carrier phase offset
receiverKnowsCarrier= 'False';
%Set True if receiver knows carrier frequency & phase offsetfs = 8*fc; %sampling frequency
duration = 0.5; %duration of the signal
t = 0:1/fs:duration-1/fs; %time base%Phase Modulation
m_t = alpha*sin(2*pi*fm*t + theta); %modulating signal
phi_t = 2*pi*fc*t + beta + m_t;
x = cos(phi_t); %modulated signalfigure(); subplot(2,1,1); plot(t,m_t) %plot modulating signal
title('Modulating signal'); xlabel('t'); ylabel('m(t)')
subplot(2,1,2); plot(t,x) %plot modulated signal
title('Modulated signal'); xlabel('t');ylabel('x(t)')%Add AWGN noise to the transmitted signal
nMean = 0; nSigma = 0.1; %noise mean and sigma
n = nMean + nSigma*randn(size(t)); %awgn noise
r = x + n; %noisy received signal%Demodulation of the noisy Phase Modulated signal
z= hilbert(r); %form the analytical signal from the received vector
inst_phase = unwrap(angle(z)); %instaneous phase%If receiver knows the carrier freq/phase perfectly
if strcmpi(receiverKnowsCarrier,'True')offsetTerm = 2*pi*fc*t+beta;
else %else, estimate the subtraction termp = polyfit(t,inst_phase,1);%linearly fit the instaneous phase%re-evaluate the offset term using the fitted valuesestimated = polyval(p,t); offsetTerm = estimated;
end
demodulated = inst_phase - offsetTerm;
figure(); plot(t,demodulated); %demodulated signal
title('Demodulated signal'); xlabel('n'); ylabel('\hat{m(t)}');
图示如下:
利用Hilbert变换进行相位调制信号的解调相关推荐
- 相位调制信号matlab,信号的相位调制及解调.doc
信号的相位调制及解调 MATLAB仿真信号的相位调制与解调 专业:通信与信息系统 姓名:赵* 学号:********* 指导老师:****教授 摘要 Psk调制是通信系统中最为重要的环节之一,Psk调 ...
- 信号与系统sa函数求积分_利用傅立叶变换的对称性,求信号Sa(t)的频谱密度函数!(大学信号与系统)!!!急急急急!!...
展开全部 δ(t)是单位冲激响应32313133353236313431303231363533e59b9ee7ad9431333431363536,当a趋于0时,F(jw)在w=0时为无穷大,在w≠ ...
- 【盲解调】基于频率和滤波器参数估计的FH-GFSK调制信号盲解调算法matlab仿真
目录 一.理论基础 二.核心程序 三.仿真测试结果 一.理论基础 在无线通信中,为了对抗信道衰落和保证传输信息的安全常采用跳频(Frequency Hopping, FH)通信技术.高斯移频键控(Ga ...
- python 希尔伯特变换_Python在信号与系统中的应用(1)——Hilbert变换,Hilbert在单边带包络检波的应用,FIR_LPF滤波器设计,还有逼格高高的FM(PM)调制...
多谢董老师,董老师是个好老师! 心情久久不能平静,主要是高频这门课的分析方法实在是让我难以理解,公式也背不过,还是放放吧. 最近厌恶了Matlab臃肿的体积和频繁的读写对我的Mac的损害,所以学习了一 ...
- python 波形包络线_Python在信号与系统中的应用(1)——Hilbert变换,Hilbert在单边带包络检波的应用,FIR_LPF滤波器设计,还有逼格高高的FM(PM)调制...
多谢董老师,董老师是个好老师! 心情久久不能平静,主要是高频这门课的分析方法实在是让我难以理解,公式也背不过,还是放放吧. 最近厌恶了Matlab臃肿的体积和频繁的读写对我的Mac的损害,所以学习了一 ...
- Hilbert变换求信号的包络线及MATLAB代码
一.Hilbert变换表达式 Hilbert变换是信号与的卷积,表达式如下: 由于本质是卷积,因此可以从"线性系统","调幅-调频"等角度思考.进一步可参考如下 ...
- 信号处理——Hilbert变换及谱分析
原文链接 Hilbert通常用来得到解析信号,基于此原理,Hilbert可以用来对窄带信号进行解包络,并求解信号的瞬时频率,但求解包括的时候会出现端点效应,本文对于这几点分别做了简单的理论探讨. 本文 ...
- c++ 包络谱分析代码_信号处理——Hilbert变换及谱分析
作者:桂. 时间:2017-03-03 23:57:29 前言 Hilbert通常用来得到解析信号,基于此原理,Hilbert可以用来对窄带信号进行解包络,并求解信号的瞬时频率,但求解包括的时候会出 ...
- 【 FPGA 】FIR滤波器之 Hilbert 变换的实现
上篇博文:半带 FIR 滤波器(Half-band FIR Filter) 希尔伯特变换在数字通信系统中有很多种使用方式.理想的希尔伯特变换为正频率提供90度的相移,为负频率提供-90度的相移. 希尔 ...
- Hilbert变换和接收机(I)
参考:Razavi 射频微电子 第四章 1.Hilbert变换和解析信号 Hilbert变换时域上是一个系统响应为 的系统.信号通过此系统对应的频域变换为.其中正频率成分乘-j,负频率成分乘j.对应 ...
最新文章
- 第一讲 IDLE使用
- 003_onreadystatechange事件
- 507. Perfect Number(Python)
- Ubuntu 16.04安装Bless十六进制编辑器
- KVM 管理与使用说明
- LSTM模型实战案例:TensorFlow实现预测3位彩票号码
- delphi让exe开机自启动
- [转] 做一个让人欣赏的女子
- ElasticSearch学习(三):配置与集群
- 数据结构:实验一 线性表的基本功能实现
- 【D-S证据理论】学习笔记
- 论坛php网站模板,自适应discuz论坛门户网站模板
- 【Java从入门到精通】第九篇:##你会继承你父亲的遗产吗?##来看看Java中是如何继承的吧#
- 李密(582~619)
- 每年10万被动收入目标分解 | 进击
- 开发EduSoho v8.7.10 本地播放视频超时或者快进后网络错误导致视频下载中途失败。鉴权播放次数问题
- 安卓上通过pydorid 3来使用jupyter notebook(鸿蒙/华为/安卓手机/平板进行python编程学习)
- charles常用功能使用说明
- 从数学史角度看丁小平的微积分研究
- 计算机算法对程序设计的作用,【程序设计论文】高中算法与程序设计教学意义及有效性(共3796字)...
热门文章
- 创建美区苹果账户ID
- 模拟京东商城登陆HttpRequest
- linux dhcpv6 客户端,Linux(RedHat6.4)下配置radvd和dhcpv6
- winserve2016 万能驱动网卡_windows server 2016 安装网卡驱动
- Hadoop 十年解读与发展预测(插图+排版)
- 安川机器人如何注释化指令_安川机器人 命令介绍-内部版
- 安川机器人焊枪切换设定方法_安川机器人工具、用户、安全模式设定方法
- 深度置信网络 Deep belief network
- OBS 录制黑屏的解决方法
- uni-app h5 分享好友与朋友圈等功能