【数字信号处理】带通采样定理及其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.

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

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

相关文章

C++OpenCV(2):图像处理基础概念与操作

🔆 文章首发于我的个人博客:欢迎大佬们来逛逛 🔆 OpenCV项目地址及源代码:点击这里 文章目录 图形读取与显示加载图片显示图片打印图片信息保存图片 色彩模型转换RGB颜色模型HSV颜色模型HLS模型LAB模型 图像像素读写操作像素算数运…

macOS 源码编译 qpress

╰─➤ git clone https://github.com/PierreLvx/qpress.git ╰─➤ cd qpress ╰─➤ make g -O3 -o qpress -x c quicklz.c -x c qpress.cpp aio.cpp utilities.cpp -lpthread -Wall -Wextra -Werror ╰─➤ sudo make install …

怎么快速定位bug?怎么编写测试用例?

目录 01定位问题的重要性 02问题定位技巧 03初次怎么写用例 作为一名测试人员如果连常见的系统问题都不知道如何分析,频繁将前端人员问题指派给后端人员,后端人员问题指派给前端人员,那么在团队里你在开发中的地位显而易见 ,口碑…

垃圾回收标记阶段算法

1.标记阶段的目的 主要是在GC在前,判断出哪些是有用的对象,哪些是需要回收的对象,只有被标记为垃圾对象,GC才会对其进行垃圾回收。判断对象是否为垃圾对象的两种方式:引用计数算法和可达性分析算法。 2.引用计数算法…

如何搭建使用dubbo-Admin?

dubbo-Admin介绍 一款用于dubbo可视化界面操作的管理平台 dubbo-Admin特点 dubbo-Admin是dubbo的管理界面平台,且是一个前后端分离的项目,前端使用vue,后端使用springboot。 软件下载 dubbo-admin-0.5.0.zip 软件使用

会议OA项目之会议审批(亮点功能:将审批人签名转换为电子手写签名图片)

🥳🥳Welcome Huihuis Code World ! !🥳🥳 接下来看看由辉辉所写的关于OA项目的相关操作吧 目录 🥳🥳Welcome Huihuis Code World ! !🥳🥳 一.主要功能点介绍 二.效果展示 三.前端…

MongoDB 的日常使用

一、简介 1、 常见的数据库分类 RDBMS(关系型数据库):常见的关系型数据库有 Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL; NoSQL(非关系型数据库):常见的非关系型数据库有 …

thinkphp实现无限分类(使用递归)

thinkphp实现无限分类(使用递归) 本文实例为大家分享了thinkphp实现无限分类的详细代码,希望对大家学习无限分类有所启发。 数据库:test 数据表:(tp_category): Common/conf/conf…

在VSCode中实现Rust编程调试指南

在 VS Code 中调试 Rust:终极指南 在本教程中,您将学习如何使用 VS Code 调试 Rust。可用于使用 VS Code 调试 Rust 的操作。设置 VS Code 来调试 Rust Rust因其易用性、安全性和高性能而继续保持其作为最受欢迎的编程语言的地位。随着 Rust 的流行&…

elementui el-table折叠表格,点击主表数据展开从表明细

用element-ui 的el-table实现&#xff1a;主表table可实现展开行显示关联的明细表table的列表数据&#xff0c;效果图如下 <el-tableref"tableData"v-loading"listLoading":data"tableData"row-key"id"borderstripehighlight-curr…

自动驾驶感知系统-激光雷达

感知系统 现有的车载传感器主要包括超声波雷达、激光雷达、毫米波雷达、车载摄像头、红外探头等。主流的自动驾驶感知平台以雷达和车载摄像头为主&#xff0c;呈现多传感器融合发展趋势。基于测量能力和环境适应性&#xff0c;预计雷达和车载摄像头会保持其感知平台霸主地位&a…

在react中配置less

第一步&#xff1a;暴露出webpack配置文件 终端命令&#xff1a;npm run eject (此命令一旦运行不可逆) 第二步&#xff1a;安装less以及less-loader npm install less less-loader --save-dev 第三步&#xff1a;修改webpack的配置文件 运行完以上命令后&#xff0c;项目…

精通自动化,Pytest自动化测试框架-fixture用例的前后置(实现)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 测试用例实现前后…

crmeb部署

安装宝塔 教程 安装所需要的软件 php mysql5.7 redis fileinfo nginx 安装crmeb 重启mysql 前台http://192.168.216.128/ 后台http://192.168.216.128/admin admin admin888登录 访问前台

自动化运维工具--saltstack部署及使用

目录 一、saltstack简介 1、介绍 2、Salt的核心功能 3、saltstack通信机制 二、saltstack部署 1、部署环境 2、配置yum源 3、安装master与minion 4、连接认证master和minion 三、salt运行 1、执行格式 2、实操演示 一、saltstack简介 1、介绍 saltstack是一个配置管…

连锁反应开始了!Linux 发行版迎新变化!

任何企业都有合法权利捍卫其模型和产品。撇开大量不真正了解开源许可证如何工作的人不谈&#xff0c;我们的印象是&#xff0c;有很多人觉得仅仅因为这是Linux&#xff0c;他们就有某种权利免费获得它。但事实上&#xff0c;他们没有。这不是自由软件中的“自由”的意思&#x…

浮点型在内存中的存储

目录 1.浮点数是什么&#xff1f; 2. 浮点数存储规则 1.浮点数是什么&#xff1f; 就是数学中的小数。 常见的浮点数&#xff1a; 3.14159 1E10&#xff08;1*10^10&#xff09; 浮点数家族包括&#xff1a; float、double、long double 类型。 浮点数表示的范围&#x…

前端 | ( 十二)CSS3简介及基本语法(中)| 变换、过渡与动画 | 尚硅谷前端html+css零基础教程2023最新

学习来源&#xff1a;尚硅谷前端htmlcss零基础教程&#xff0c;2023最新前端开发html5css3视频 系列笔记&#xff1a; 【HTML4】&#xff08;一&#xff09;前端简介【HTML4】&#xff08;二&#xff09;各种各样的常用标签【HTML4】&#xff08;三&#xff09;表单及HTML4收尾…

【C++基础(六)】类和对象(中) --构造,析构函数

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:C初阶之路⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学习C   &#x1f51d;&#x1f51d; 类和对象-中 1. 前言2. 构造函数3. 构造函数的特性4…

分布式系统的应用程序性能监视工具-skywalking

分布式系统的应用程序性能监视工具,专为微服务、云原生架构和基于容器(Docker、K8s、Mesos)架构而设计。提供分布式链路日志追踪、剖析、服务网格遥测分析、度量聚合和可视化一体化解决方案。 在应用系统进行实时监控,实现对应用性能管理和故障定位的系统化解决方案中常用的…