数字信号处理3:A/D、D/A转换

news/2024/11/24 14:06:10/

信号这个东西,我们是实际应用中用的大多都是模拟信号,比如说语音、地震、雷达、声纳信号,这些都是模拟信号,但是,计算机想要通过数学方法处理模拟信号,就要先将模拟信号转换成具有有限精度的数字序列,从模拟信号转换成数字信号,这一过程称为模数转换(A/D),反过来,数模转换就是(D/A),

A/D从概念上有三个步骤:

1、采样:

这个我知道,学计算机网络的时候接触了一点,奈奎斯特定理和香农定理,就是对连续信号在离散时间点处的样本值获取,设输入时x_a(t),那么输出时x_a(nT)\equiv x(n),同时,T是采样间隔。

2、量化:

离散时间连续信号转换到离散时间离散值(数字)信号的转换过程,每个信号样本值是从可能值的有限集中选取的。

量化误差:未量化样本和量化输出之间的差

3、编码:

欸一个离散值在编码过程汇总都会转换为b位长度的二进制序列。


二、模拟信号的采样:

方式有很多种,常用的方法是周期采样或者是均匀采样。

对模拟信号x_a(t)每隔T秒取样本值得到的离散时间信号:x(t)

x(n)=x_a(nT),-\infty<n<\infty

在这一过程中,两个连续样本之间的时间间隔T被称为采样周期或者是采样间隔,其倒数F则被称为采样率(样本数/s)或者是采样频率(Hz)。

实际上,周期采样建立了连续时间信号的时间变量和离散时间信号的时间变量之间的关系,这些变量是通过采样周期T或者等价的通过采样率F_s=1/T线性相关的,也就是:

t=nT=\frac{n}{F_s}

那么,由上式就可以推出在模拟信号的频率变量F(或者\Omega)和离散时间信号的频率变量f(或者\omega)之间的一种关系,举个例子,假设这里有一个信号:

x_a(t)=A cos(2\pi Ft+\theta)

如果我们以F_s=1/T个样本/s的采样率进行周期采样,那么,上面的这个信号就变成了:

x_a(nT)\equiv x(n)=Acos(2\pi FnT+\theta)=Acos(\frac{2\pi nF}{F_s}+\theta)

再和这个信号作比较:

x(n)=Acos( 2\pi f n +\theta),-\infty<n<\infty,

这里我们可以注意到,F和f是由线性关系的:

f=\frac{F}{F_s}

也就是说:\omega=\Omega T

这样子,我们就知道了:只要我们知道了采样率F_s,就可以用f来确定以赫兹为单位的频率F

世家上,连续时间信号和离散时间信号的基本不同就在于频率F和f(或者\Omega\omega)的取值范围不同,书上有张频率变量之间的关系表格,我给贴上来:

 其实我一直很不解,sin是正弦啊,为什么书上说cos是正弦信号呢?

然后我问了问学通信的同学,得到了一个不算解释的解释:信号与系统和通原里面,cos和sin都被称做正弦信号,原因就是,从诱导公式出发,正弦和余弦就差了\frac{\pi}{2}个相位,在处理的时候,就把他俩统称正弦信号了。。。。。。。。。。当事人在风中凌乱。。。。。。。。。。。。。。。

一般来说,连续时间正弦信号:x_a(t)=Acos(2\pi F_0 t+\theta)F_s=1/T的采样率采样,将会产生一个离散时间信号:x(n)=Acos(2\pi f_0n+\theta),其中,f=\frac{F}{F_s}是正弦信号的相对频率。

无数的连续时间正弦信号通过采样可以由相同的离散时间信号(相同样本集)表示。

看的人麻,不知所云的情况下,我觉得,还不如直接看采样定理,这个起码是个定理,还好懂一些,

采样定理的目的就是,对于一个给定的模拟信号,通过采样定理来选择采样周期T或者采样率F_s

如果我们直到一般类型信号的最大频率范围,那么就可以指定将模拟信号转换成数字信号所必须的采样率。

假设哈,任何模拟信号都可以表示成不同振幅、频率和相位的正弦信号的和:

x_a(t)=\sum_{i=1}^{N}A_icos(2\pi F_i t+\theta_i)

其中N代表的是频率成分的数目,所有信号都可以通过任意的短时分割服从于注意表示形式,这些振幅、频率和相位通常会从一个时间段到另一个时间段随着时间慢慢改变,但是,要假定,这些信号的频率不i会超过某个已知频率Fmax,这个Fmax就是我们需要的,有了Fmax,我们就能选择合适的信号。

采样定理:如果包含在某个模拟信号x_a(t)中的最高频率是Fmax=B,而信号以采样率F_s>2F_max\equiv 2B,那么x_a(t)可以从样本值中准确恢复出来, 插值函数是:

g(t)=\frac{sin(2\pi Bt)}{2\pi Bt}

所以,x_a(t)也就可以表示为:

x_a(t)=\sum_{n=-\infty}^{\infty}x_a(\frac{n}{F_s})g(t-\frac{n}{F_s})

其中,x_a(n/F_s)=x_a(nT)\equiv x(n)就是x_a(t)的样本。

x_a(t)的采样以最小采样率F_s=2B执行的时候,上面的公式就变成了:

x_a(t)=\sum_{n=-\infty}^{\infty}x_a(\frac{n}{2B})\frac{sin 2\pi B(t-n/2B)}{2\pi B(t-n/2B)},

采样率F_N=2B=2F_{max}称为奈奎斯特率。

我记得之前,计网里面有两个定理,一个是奈奎斯特,一个是香农,忘光了忘光了,在网上找了一下,在这给大家写一下,也当时大家都在复习了:

奈奎斯特:

如果一个系统以超过信号最高频率至少两倍的速率对模拟信号进行均匀采样,那么原始模拟信号就能从采样产生的离散值中完全恢复。

为了防止由于混叠引起的信号被破坏,需要以奈奎斯特速率或更高的速率进行采样。如果不遵守这个基本要求,就无法消除混叠(混叠永久与原始频谱混合,两者无法区分)。

香农:

给出了信道信息传送速率的上限(比特每秒)和信道信噪比及带宽的关系。香农定理可以解释现代各种无线制式由于带宽不同,所支持的单载波最大吞吐量的不同。

在有随机热噪声的信道上传输数据信号时,信道容量Rmax与信道带宽W,信噪比S/N关系为: Rmax=W*log2(1+S/N)。注意这里的log2是以2为底的对数。

emm,我觉得,到现在,啥都不会,成废物了。。。。。。。

 


http://www.ppmy.cn/news/63608.html

相关文章

Java每日一练(20230510) 生成器类、螺旋矩阵II、删除链表的重复元素II

目录 1. 定义一个类Generator &#x1f31f;&#x1f31f; 2. 螺旋矩阵 II &#x1f31f;&#x1f31f; 3. 删除排序链表中的重复元素 II &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日…

强烈推荐:一款中文AI问答、创作、绘画工具

前言 相信很多人已经听过ChatGPT这款人工智能机器人了&#xff0c;它能够根据用户输入的内容&#xff0c;自动生成智能回复。它使用自然语言处理技术&#xff0c;通过学习大量的文本资料&#xff0c;能够模拟人类的对话行为。它是由OpenAI开发的&#xff0c;一家非常伟大的人工…

【语义分割】标注工具ISAT with segment anything介绍

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 极速分割标注工具 1. 正文 1.1 安装 创建虚拟环境 conda create -n ISAT_with_segment_anything python3.8 conda activate ISAT_with_segment_anyt…

云原生Istio安装和使用

目录 1 Kubernetes集群环境2 安装Istio2.1 快速部署Istio2.2 回顾K8S组件以及使用2.2.1 Deployment2.2.2 Labels and Selectors2.2.3 Namespace2.2.4 Service2.2.5 Ingress 2.3 初步感受istio2.4 手动注入2.5 自动注入sidecar 1 Kubernetes集群环境 Istio支持在不同的平台下安装…

【数组排序算法】

目录 一、数组排序算法1、冒泡排序算法1.1、图形解释1.2、冒泡算法的脚本写法 二、直接选择排序1.1、动态图解1.2、直接选择排序算法的脚本编写 三、直接插入排序1.1、基本思想&#xff1a;1.2、动态图解1.3、直接插入排序的算法脚本编写 四、反向序列算法1.1、反向序列算法的脚…

Hive为什么要分桶?

1.获得更高的查询处理效率 在 分区数量过于庞大 以至于可能导致文件系统崩溃时&#xff0c;或数据集 找不到合理的分区字段 时&#xff0c;我们就 需要 使用分桶 来解决问题了。 分区中的数据可以被进一步拆分成桶 &#xff0c;不同于分区对列直接进行拆分&#xff0c;桶往往使…

深入了解Dubbo SPI 工作机制——@Adaptive(6)

Adaptive这个注解就是适配策略&#xff0c;我都是称呼为最佳适配子类&#xff0c;或者最佳适配类。就是找到最佳的子实现类的&#xff0c;其实就是默认的类。这个注解可以打在类上方&#xff0c;那么dubbo SPI机制通过接口获取实例类&#xff0c;就是获取到有Adaptive注解的实现…

【MySQL】SQL优化

记录Mysql学习笔记&#xff0c;大部分图片来自黑马程序员MySQL教程。 文章目录 插入数据insert优化load 主键优化order by优化group by优化limit优化count优化update优化总结 插入数据 insert优化 插入多条数据的时候&#xff0c;可以按以下方式优化。 批量插入时&#xff…