当前位置: 首页 > article >正文

「计算机控制系统」2. 采样与数据保持

计算机控制系统中的信号
理想采样过程的数学描述
信号的恢复与重构

文章目录

  • 计算机控制系统中的信号
    • 基础知识
    • A/D中的信号
    • D/A中的信号
  • 理想采样过程的数学描述
    • 采样过程的描述
    • 理想采样信号的描述
    • Shannon采样定理
  • 信号的恢复与重构
    • Shannon重构法
    • 信号保持重构法


计算机控制系统中的信号

基础知识

消息:待发送的符号
信号:用于描述、记录和传输消息的物理过程
信息:包含在消息中的有效成分
信号是消息的表现形式,消息是信号的具体内容

注意连续时间信号和离散时间信号的定义:
在这里插入图片描述

注意离散幅值信号和数字信号(二进制信号)的定义:
在这里插入图片描述

信号根据时间可分为离散和连续,根据幅值可分为离散、连续和二进制,总共可以组合出六种信号:

A/D中的信号

在这里插入图片描述
(1) 采样:把时间连续信号转变成时间离散信号
称完成信号转换的装置为采样开关
相邻两次采样之间的间隔时间称为采样周期
(我们只讨论均匀采样,即采样周期恒定不变)
在这里插入图片描述
注:采样过程存在时域信息损失。采样周期一定时,已知采样前信号,可以唯一确定采样后信号。但已知采样后信号,不能唯一确定采样前信号。

(2) 量化:把采样时刻的信号幅值转变为最小量化单位的整数倍
f ( k T ) = L q f(kT)=Lq f(kT)=Lq, T为采样周期,q为最小量化单位,L为整数, k = 0 , 1 , 2 , ⋯ k=0, 1, 2, \cdots k=0,1,2,
在这里插入图片描述

(3) 编码:将信号幅值用二进制编码表示
在这里插入图片描述

D/A中的信号

在这里插入图片描述

(1) 解码:将数字量转换成幅值对应的脉冲信号
把完成解码的装置称为解码器
在这里插入图片描述

(2) 保持:把脉冲信号转换成时间连续信号
完成保持的装置称为保持器信号恢复器
在这里插入图片描述

注:以上出现了ABCDE共5种信号。还有一种信号F:时间连续、幅值二进制的信号,存在于计算机内部。
在这里插入图片描述
比如观察某一个内存单元,在时间上是连续的,而其内容是二进制的数字。

理想采样过程的数学描述

采样过程的描述

在方框图中,采样开关绘制为:
在这里插入图片描述
用*号来表示经过采样的离散信号。
描述采样过程有这几个指标:
采样周期: T T T
采样频率: f s = 1 T f_s=\frac{1}{T} fs=T1
采样角频率: ω s = 2 π f s = 2 π T \omega_s =2\pi f_s = \frac{2\pi}{T} ωs=2πfs=T2π

理想的采样过程即是忽略采样开关的闭合时间,认为采样是在一瞬间完成的。

理想采样信号的描述

对于连续的函数 f ( t ) f(t) f(t)采样,得到数字序列: f ( 0 ) , f ( T ) , f ( 2 T ) , ⋯ f ( k T ) ⋯ f(0), f(T), f(2T), \cdots f(kT) \cdots f(0),f(T),f(2T),f(kT)
脉冲函数乘以另一个函数,相当于筛选出 t = 0 t=0 t=0时的函数值(筛选性)
利用一系列脉冲函数来筛选出间隔为T的一系列时刻的信号值:
f ∗ ( t ) = f ( t ) δ ( t ) + f ( t ) δ ( t − T ) + ⋯ + f ( t ) δ ( t − k T ) + ⋯ = ∑ k = 0 ∞ f ( t ) δ ( t − k T ) = f ( t ) ∑ k = 0 ∞ δ ( t − k T ) \begin{aligned} f^*(t)=&f(t)\delta(t)+f(t)\delta(t-T)+\cdots+ f(t)\delta(t-kT)+\cdots\\ =&\sum_{k=0}^{\infty}f(t)\delta(t-kT)\\ =&f(t)\sum_{k=0}^{\infty}\delta(t-kT) \end{aligned} f(t)===f(t)δ(t)+f(t)δ(tT)++f(t)δ(tkT)+k=0f(t)δ(tkT)f(t)k=0δ(tkT)

定义理想采样开关: δ T ( t ) = ∑ k = − ∞ ∞ δ ( t − k T ) \displaystyle \delta_T(t)=\sum_{k=-\infty}^{\infty}\delta(t-kT) δT(t)=k=δ(tkT)
一般情况下,我们认为 t < 0 t<0 t<0时, f ( t ) = 0 f(t)=0 f(t)=0,所以理想采样开关也可以表示为: δ T ( t ) = ∑ k = 0 ∞ δ ( t − k T ) \delta_T(t)=\sum_{k=0}^{\infty}\delta(t-kT) δT(t)=k=0δ(tkT)

时域描述
采样后的信号有以下四种表示方法:(都要认识)

  • f ∗ ( t ) = f ( t ) δ T ( t ) f^*(t)=f(t)\delta_T(t) f(t)=f(t)δT(t)
  • f ∗ ( t ) = f ( t ) ∑ k = 0 ∞ δ ( t − k T ) f^*(t)=f(t)\sum_{k=0}^{\infty}\delta(t-kT) f(t)=f(t)k=0δ(tkT)
  • f ∗ ( t ) = ∑ k = 0 ∞ f ( t ) δ ( t − k T ) f^*(t)=\sum_{k=0}^{\infty}f(t)\delta(t-kT) f(t)=k=0f(t)δ(tkT)
  • f ∗ ( t ) = ∑ k = 0 ∞ f ( k T ) δ ( t − k T ) f^*(t)=\sum_{k=0}^{\infty}f(kT)\delta(t-kT) f(t)=k=0f(kT)δ(tkT)

复域描述
即是求Laplace变换:
这里要注意,采样后信号的复域描述,并不等于采样前信号复域描述的采样。必须通过以下两种方法计算:

  1. 未采样时域描述 ->采样后复域描述
    F ∗ ( s ) = L [ f ∗ ( t ) ] = ∫ 0 ∞ ∑ k = 0 ∞ [ f ( t ) δ ( τ − k T ) ] e − s τ d τ = ∑ k = 0 ∞ f ( k T ) e − k T s \begin{aligned} F^*(s) =& \mathscr{L}[f^*(t)]\\ =& \int_0^\infty \sum_{k=0}^\infty[f(t)\delta(\tau-kT)]e^{-s\tau} \rm{d}\tau\\ =& \sum_{k=0}^\infty f(kT)e^{-kTs} \end{aligned} F(s)===L[f(t)]0k=0[f(t)δ(τkT)]esτdτk=0f(kT)ekTs
    由于认为 t < 0 t<0 t<0时, f ( t ) = 0 f(t)=0 f(t)=0,所以也写作:
    F ∗ ( s ) = ∑ k = − ∞ ∞ f ( k T ) e − k T s \displaystyle F^*(s)=\sum_{k=-\infty}^{\infty}f(kT)e^{-kTs} F(s)=k=f(kT)ekTs

  2. 未采样复域描述 -> 采样后复域描述
    F ∗ ( s ) = 1 T ∑ n = − ∞ ∞ F ( s + j n ω s ) \displaystyle F^*(s)=\frac{1}{T} \sum_{n=-\infty}^{\infty}F(s+jn\omega_s) F(s)=T1n=F(s+jnωs)

可以看出:

  • F ∗ ( s ) F^*(s) F(s)是周期函数,周期为 j ω s j\omega_s jωs
  • F ( s ) F(s) F(s) s = s 1 s=s_1 s=s1处有一极点,那么 F ∗ ( s ) F^*(s) F(s)必然在 s = s 1 + j m ω s s=s_1+jm\omega_s s=s1+jmωs处具有极点, m = ± 1 , ± 2 , ⋯ m=\pm1, \pm2,\cdots m=±1,±2,
  • 一采样前信号与一采样后信号相乘再采样,相当于两信号分别采样再相乘 Y ∗ ( s ) = [ E ∗ ( s ) G ( s ) ] ∗ = E ∗ ( s ) [ G ( s ) ] ∗ = E ∗ ( s ) G ∗ ( s ) Y^*(s)=[E^*(s)G(s)]^*=E^*(s)[G(s)]^*=E^*(s)G^*(s) Y(s)=[E(s)G(s)]=E(s)[G(s)]=E(s)G(s)

频域描述
即是求Fourier变换:
δ T ( t ) = ∑ k = 0 ∞ δ ( t − k T ) \displaystyle \delta_T(t)=\sum_{k=0}^{\infty}\delta(t-kT) δT(t)=k=0δ(tkT),展开成Fourier级数: δ T ( t ) = 1 T ∑ n = − ∞ ∞ e j n ω s t \displaystyle \delta_T(t)=\frac{1}{T}\sum_{n=-\infty}^{\infty}e^{jn\omega_st} δT(t)=T1n=ejnωst
f ∗ ( t ) = f ( t ) δ T ( t ) = 1 T ∑ n = − ∞ ∞ f ( t ) e j n ω s t \displaystyle f^*(t)=f(t)\delta_T(t)=\frac{1}{T}\sum_{n=-\infty}^\infty f(t)e^{jn\omega_st} f(t)=f(t)δT(t)=T1n=f(t)ejnωst,根据频移定理:

F ∗ ( j ω ) = 1 T ∑ n = − ∞ ∞ F ( j ω + j n ω s ) \displaystyle F^*(j \omega)=\frac{1}{T} \sum_{n=-\infty}^{\infty}F(j \omega+jn\omega_s) F()=T1n=F(+jnωs)

n = 0 n=0 n=0时, F ∗ ( j ω ) = 1 T F ( j ω ) \displaystyle F^*(j \omega)=\frac{1}{T} F(j \omega) F()=T1F(),称为主频谱
n ≠ 0 n\ne0 n=0时,相当于主频谱每隔 ω s \omega_s ωs被复制一遍。称为高频频谱

假设连续信号的频谱带宽有限(最高频率为 ω m \omega_m ωm),则采样前后信号频谱如图:

  1. 下图中复制后频谱没有重叠,因为 ω s − ω m > ω m \omega_s-\omega_m>\omega_m ωsωm>ωm,即 ω s > 2 ω m \omega_s>2\omega_m ωs>2ωm。称为不发生混叠
    在这里插入图片描述
  2. 下图中, ω s < 2 ω m \omega_s<2\omega_m ωs<2ωm,发生混叠。
    在这里插入图片描述

观察上面两张图,采样后信号频谱关于 n ω s 2 \frac{n\omega_s}{2} 2nωs左右对称。称 ω s 2 \frac{\omega_s}{2} 2ωs这个频率为折叠频率(Nyquist频率)

Shannon采样定理

ω m \omega_m ωm是模拟信号 f ( t ) f(t) f(t)的上限频率, ω s \omega_s ωs为采样频率,则当 ω s ≥ 2 ω m \omega_s \ge2\omega_m ωs2ωm时,经过采样得到的信号可以无失真地复现原信号。

这里的失真,是由于发生了混叠,高频频谱的低频部分,被叠加到主频谱的高频部分。

在实际工程中,为了防止发生混叠,常采用前置滤波器(也称抗混叠滤波器)。即在采样开关前串连一个低通滤波器,滤除高于 ω s 2 \frac{\omega_s}{2} 2ωs的频谱分量,避免发生混叠。同时,这个滤波器也有助于滤除高频干扰。

选取采样频率时,受到计算机性能的限制,不能选得太高。对于伺服系统,一般取 ω s ≥ 6 ∼ 10 ω c \omega_s \ge 6\sim 10 \omega_c ωs610ωc

信号的恢复与重构

信号重构:采样的逆过程。

Shannon重构法

无失真地复现原信号,就是采用了以下的方法:使用理想低通滤波器
G ( j ω ) = { 1 , ∣ ω ∣ ≤ ω s 2 0 , ∣ ω ∣ > ω s 2 G(j\omega)=\left\{ \begin{aligned} 1,|\omega|\le\frac{\omega_s}{2}\\ 0,|\omega|>\frac{\omega_s}{2} \end{aligned} \right. G()= 1,ω2ωs0,ω>2ωs

在这里插入图片描述
但理想低通滤波器是不存在的,因此这种方法也只是一个理想的重构过程,不能用于实际系统。

信号保持重构法

Signal Hold,使用保持器实现。
基本思想是,由过去时刻的采样值 f ( k T ) , k ≤ t / T f(kT),k\le t/T f(kT),kt/T,推出当前时刻 f ( t ) f(t) f(t)的值

假设在一次采样之后,下一次采样还没到来之间的这一段时间( 0 < Δ t < T 0<\Delta t<T 0<Δt<T),取:
f ( t ) = f ( k T + Δ t ) = a 0 + a 1 Δ t + a 2 Δ t 2 + ⋯ + a n Δ t n f(t)=f(kT+\Delta t)=a_0+a_1\Delta_t+a_2\Delta_t^2+\cdots + a_n\Delta_t^n f(t)=f(kT+Δt)=a0+a1Δt+a2Δt2++anΔtn
选择阶数n,根据过去的采样值可以计算出各参数,进而计算出两次采样之间的 f ( t ) f(t) f(t)值。

零阶保持器
Zero Order Holder (ZOH)
f ( t ) = f ( k T + Δ t ) = f ( k T ) f(t)=f(kT+\Delta t)=f(kT) f(t)=f(kT+Δt)=f(kT)
直观理解就是保持上一次的采样值,直到下一次采样。
在这里插入图片描述

输入单位脉冲函数,输出宽度为T的矩形脉冲,则可以写出ZOH的传递函数:
在这里插入图片描述

根据传递函数,可以分析ZOH的幅频、相频特性:
在这里插入图片描述

  1. 有无穷多个截止频率: ω c = n ω s \omega_c=n\omega_s ωc=nωs
  2. 允许高频分量通过,但幅值随 ω \omega ω增加而衰减
  3. 相位滞后。滞后程度与信号频率 ω \omega ω及采样周期 T T T成正比

零阶保持器容易实现,是应用最广泛的一种信号重构法。

一阶保持器
f ( t ) = f ( k T + Δ t ) = a 0 + a 1 Δ t f(t)=f(kT+\Delta t)=a_0+a_1 \Delta t f(t)=f(kT+Δt)=a0+a1Δt
了解即可。
在这里插入图片描述
这里需要注意的是,斜率必须根据kT之前的采样值计算,而不能直接连接kT和(k+1)T的采样值。


http://www.kler.cn/a/9969.html

相关文章:

  • WPF 应用程序中使用 Prism 框架时,有多种方式可以注册服务和依赖项
  • 双十一云服务器抢购后,用SD-WAN连通多云网络
  • Kubernetes的基本构建块和最小可调度单元pod-0
  • Linux中线程的基本概念与线程控制
  • 完整培训教程:骨折图像分割
  • 【网络协议栈】网络层(上)网络层的基本理解、IP协议格式、网络层分组(内附手画分析图 简单易懂)
  • houjie-cpp面向对象
  • 刷题day54:柱形图中最大矩形
  • Java多线程基础面试总结(一)
  • 【数据挖掘与商务智能决策】第十一章 AdaBoost与GBDT模型
  • 数字孪生智慧应急怎么实现?
  • 运行时内存数据区之虚拟机栈——操作数栈
  • 你真正了解低代码么?(国内低代码平台状况分析)
  • 国家出手管人工智能AI了
  • Python数据分析案例24——基于深度学习的锂电池寿命预测
  • Difference between HTTP1.0 and HTTP1.1
  • Spring 之依赖注入底层原理
  • like字符通配符%_、查询空值、去重、and、or、MySQL数据库 - 单表查询(二)(头歌实践教学平台)
  • 【数据结构】栈各个接口的实现
  • 详解AUTOSAR:Green Hills Software(GHS)集成DaVinci Configurator生成的代码(RH850)(环境配置篇—1)
  • springboot+vue学生选课管理系统
  • 循环依赖详解及解决方案
  • 闭包和继承
  • 程序员为了女朋you进了华为,同学去了阿里,2年后对比收入懵了
  • GDPU C语言 天码行空7
  • 代码随想录算法训练营第五十五天 | 392. 判断子序列、115. 不同的子序列