【数字信号处理】带通采样定理及其MATLAB仿真

目录

    • 一、带通采样定理
      • 1.1 内容
      • 1.2 公式推导
    • 二、MATLAB信号仿真
      • 2.1 信号仿真实验
      • 2.2 MATLAB代码
    • 三、总结
    • 参考

一、带通采样定理

按照奈奎斯特采样定理(低通采样),采样频率 f s f_{s} fs 要大于等于信号中最高频率 f m a x f_{max} fmax 的2倍,才可以保证采样后的数字信号通过DAC转换后,可以无失真的恢复为原信号。然而,如果信号的频率分布在某一有限频带上,并且信号的最高频率 f m a x f_{max} fmax 远大于信号的带宽 B B B(带通信号),若此时仍依据低通采样定理进行处理,则需要特别高的采样率,一方面会导致后续信号处理的计算量极大,无法保证数字信号处理的实时性;另一方面,ADC器件的性能受限,无法实现对应的采样频率。因此,需要一种适用于带通信号的采样方式,以达到上述要求。

1.1 内容

带通采样定理:设一时间连续的模拟信号 x ( t ) x(t) x(t),其频带限制在( f L f_{L} fL f H f_{H} fH)内,如果信号的采样频率满足:
f s = 2 ( f L + f H ) 2 m − 1 = 4 f 0 2 m − 1 − − − − − − − − − ( 1 − 1 ) f_{s}=\frac{2(f_{L}+f_{H})}{2m-1}=\frac{4f_{0}}{2m-1} ---------(1-1) fs=2m12(fL+fH)=2m14f0(11)
f s ≥ = 2 ( f H − f L ) = 2 B − − − − − − − − − − − ( 1 − 2 ) f_{s}≥=2(f_{H}-f_{L})=2B-----------(1-2) fs≥=2(fHfL)=2B(12)
式中, f 0 = ( f L + f H ) 2 f_{0}=\frac{(f_{L}+f_{H})}{2} f0=2(fL+fH) 为带通信号的中心频率, B = f H − f L B=f_{H}-f_{L} B=fHfL为信号的带宽, m = 1 , 2 , . . . m=1,2,... m=1,2,...,取可以满足以上两式的正整数。
则此时用 f s f_{s} fs 进行等间隔采样所得到的信号采样值可以不失真的恢复为原始信号。

1.2 公式推导

二、MATLAB信号仿真

2.1 信号仿真实验

以64KHz的采样频率对3KHz和67KHz的信号进行采样,采样后信号的频率会怎么样呢?
在这里插入图片描述
可以发现,利用采样频率为64KHz对67KHz的信号进行采样,采样后的信号波形与3KHz的信号波形一致,说明采样后信号的频谱进行了搬移,即67-64=3。

2.2 MATLAB代码

clc;
clear;
close all;

fs = 64000;     % 采样频率
f1 = 3000;
f2 = 67000;
N = 100;        % 数据长度
t = (0:N-1)/fs;

x1 = sin(2*pi*f1*t);
x2 = sin(2*pi*f2*t);

figure;
subplot(2,1,1);plot(t,x1);title('f1 = 3KHz');
subplot(2,1,2);plot(t,x2);title('f2 = 67KHz');

三、总结

(1)采样的本质是对信号的频谱进行搬移,最根本的要求就是采样后信号的频谱不混叠。
(2)低通采样定理要求采样频率 f s f_{s} fs 要大于等于信号中最高频率 f m a x f_{max} fmax 的2倍,而带通采样的采样频率与信号的最高频率没有关系,只与信号的带宽有关。
(3)带通采样定理中采样频率的取值是不连续的分段区间,而不同于低通采样信号的最小采样频率。
(4)带通采样的采样频率最小可等于信号带宽的2倍,实际工程应用中常取信号带宽的4倍或更高。

参考

[1] 王坡. PD雷达信号处理关键算法研究与实现[D].南京信息工程大学,2019.DOI:10.27248/d.cnki.gnjqc.2019.000075.
[2] 工程中的带通采样定理 [学以致用系列课程之数字信号处理]
[3] 陈伯孝, 等. 现代雷达系统分析与设计[M]. 西安:西安电子科技大学出版社, 2012.9.

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

28.1 kibana

Kibana 是一个免费且开放的用户界面,能够对 Elasticsearch 数据进行可视化操作,从跟踪查询负载,到理解请求如何流经整个应用,都能轻松完成。 1.Kibana安装 注意要与ES版本保持一致 https://www.elastic.co/downloads/past-relea…

C# 目标平台为x64,自定义控件不可用,显示控件未能加载,错误解决方法

由于项目加载第三方的dll需要编译成x64,设置编译目标为x64 结果打开窗口设计器时,自定义的控件不能显示及加载 错误消息:未能找到类型“XXX”。请确保已引用包含此类型的程序集。如果此类型为开发项目的一部分,请确保已使用针对当…

Android 在程序运行时申请权限——以自动拨打电话为例

Android 6.0及以上系统在使用危险权限时必须进行运行时权限处理。 main_activity.xml <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"http://sche…

HDFS的文件块大小(重点)

HDFS 中的文件在物理上是分块存储 &#xff08;Block &#xff09; &#xff0c; 块的大小可以通过配置参数( dfs.blocksize&#xff09;来规定&#xff0c;默认大小在Hadoop2.x/3.x版本中是128M&#xff0c;1.x版本中是64M。 如果一个文件文件小于128M&#xff0c;该文件会占…

【C#】并行编程实战:使用 Visual Studio 调试任务

并行编程可以提高应用程序的性能&#xff0c;但是调试起来会更困难&#xff0c;这一点在之前的章节中我们已经有了很直观的感受。对于程序而言&#xff0c;保证程序的正确性和保证性能同样重要。 本章将介绍可以在 Visual Studio 中的调试工具&#xff08;包括 Thread 窗口、Ta…

Qt Core学习日记——第三天QMetaEnum(上)

QMetaEnum用来代表枚举信息,内部也是访问moc文件。从moc文件中得到对应值 需要在头文件中声明 Q_ENUM,如下红框部分 moc中qt_meta_stringdata_XTest变为&#xff1a; qt_meta_data_XTest变为 static const uint qt_meta_data_XTest[] { // content: 8, // revision 0, // …

(二)RabbitMQ【安装Erlang、安装RabbitMQ 、账户管理、管控台、Docker安装 】

Lison <dreamlison163.com>, v1.0.0, 2023.06.22 RabbitMQ【安装Erlang、安装RabbitMQ 、账户管理、管控台、Docker安装 】 文章目录 RabbitMQ【安装Erlang、安装RabbitMQ 、账户管理、管控台、Docker安装 】**安装Erlang**安装RabbitMQ账户管理管控台Docker安装RabbitM…

打家劫舍系列

class Solution { public:int dp[105];//dp[i]表示偷取前i个房间获取的最大值int rob(vector<int>& nums) {// // dp[i][0];不偷取第i间房&#xff0c;偷取前i-1间房的最大值// //dp[i][1];偷取第i间房&#xff0c;偷取前i间房的最大值// memset(dp,0,siz…

案例研究|DataEase助力亚加达智能医学实验室场景BI展示

深圳市亚加达信息技术有限公司&#xff08;以下简称为亚加达&#xff09;成立于2018年&#xff0c;是一家专注于医疗信息系统研发的高科技公司&#xff0c;隶属于亚辉龙集团。 亚加达深入理解医疗实验室业务和日常工作流程&#xff0c;通过物联网和大数据技术&#xff0c;基于…

ubuntu环境安装centos7虚拟机网络主机不可达,ping不通

【NAT模式下解决】1.首先vi /etc/sysconfig/network-scripts/ifcfg-ens33检查ONBOOTyes&#xff0c;保存 2.输入systemctl restart network命令重启网关

GBASE南大通用出席CCF第38届中国计算机应用大会

在数据要素市场化分论坛上&#xff0c;GBASE南大通用高级副总裁赵伟发表“以自主可控的国产基础软件新兴技术保障数据要素安全高效流通”的主题演讲&#xff0c;向参会嘉宾分享基于GBASE数据库的自主可控国产软件&#xff0c;保障数据要素安全流通、高效流转的创新实践。 赵伟讲…

Maven学习笔记

Maven学习笔记 一、MAVEN基础1.1、Maven作用1.2、Maven基础概念1.2.1、仓库1.2.2、坐标1.2.2、仓库配置 1.3、 手动写一个maven程序1.4、依赖管理1.5、生命周期与插件1.5.1、构建生命周期1.5.2、插件 一、MAVEN基础 1.1、Maven作用 Maven的本质是一个项目管理工具&#xff0c…

王道考研数据结构--4.3链队列

目录 前言 1.链队列的定义 2.链队列的结构 3.链队列的操作 3.1定义链队列 3.2初始化 3.3入队 3.4出队 3.5遍历求表长 3.6清空&#xff0c;销毁 4.完整代码 前言 日期&#xff1a;2023.7.25 书籍&#xff1a;2024年数据结构考研复习指导&#xff08;王道考研系列&…

Cesium态势标绘专题-自由多边形(标绘)

标绘专题介绍:态势标绘专题介绍_总要学点什么的博客-CSDN博客 入口文件:Cesium态势标绘专题-入口_总要学点什么的博客-CSDN博客 辅助文件:Cesium态势标绘专题-辅助文件_总要学点什么的博客-CSDN博客 本专题没有废话,只有代码,代码中涉及到的引入文件方法,从上面三个链…

蓝桥杯专题-真题版含答案-【加法变乘法】【三羊献瑞】【交换瓶子】【卡片换位】

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列点击跳转>蓝桥系列 &#x1f449;关于作者 专注于Android/Unity和各种游…

力扣 56. 合并区间

题目来源&#xff1a;https://leetcode.cn/problems/merge-intervals/description/ C题解&#xff1a;根据左区间排序&#xff0c;更新每一段的右区间最大值&#xff0c;直到间断。 class Solution { public:static bool cmp(vector<int> & a, vector<int> &a…

PHP 药店管理系统mysql数据库web结构apache计算机软件工程网页wamp

一、源码特点 PHP 药品管理系统 是一套完善的web设计系统,系统采用smarty框架进行开发设计&#xff0c;对理解php编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。 PHP 药店管理系统mysql数据库web结构apache计 下载地址…

Python实现九宫格数独小游戏

1 问题 有1-9个数字&#xff0c;将他们填入一个3*3的九宫格中&#xff0c;使得他们的每行&#xff0c;每列&#xff0c;以及对角线上的和相等&#xff0c;且要求每个格子的数字不可以重复。使用python列出所有可能的组合。示例如下: 2 方法 每行&#xff0c;列&#xff0c;对角…

Tomcat 的使用(图文教学)

Tomcat 的使用&#xff08;图文教学&#xff09; 前言一、什么是Tomcat&#xff1f;二、Tomcat 服务器和 Servlet 版本的对应关系三、Tomcat 的使用1、安装2、目录介绍3、如何启动4、Tomcat 的停止5、如何修改 Tomcat 的端口号6、如何部暑 web 工程到 Tomcat 中6.1 方式一6.2 …

什么是Java中的JVM(Java虚拟机)?

JVM&#xff08;Java虚拟机&#xff09;是Java平台的核心组件之一&#xff0c;是一个用于执行Java字节码的虚拟计算机。Java源代码经过编译器编译&#xff0c;生成字节码文件&#xff08;.class文件&#xff09;&#xff0c;然后由JVM来解释和执行这些字节码。JVM负责将字节码翻…