有本地服务器怎么做网站,云南网站建设模块,网站首页鲁大师,网站优化软件费用在介绍完“离散时间序列”基本概念和性质后#xff0c;实际上就已经踏入了“数字信号处理”这门学科的学习征程#xff0c;这篇文章里主要去说明“线性时不变系统”的定义概念和探讨“周期采样”的注意细节#xff0c;相信更加理解这些概念定义和底层逻辑#xff0c;对于大… 在介绍完“离散时间序列”基本概念和性质后实际上就已经踏入了“数字信号处理”这门学科的学习征程这篇文章里主要去说明“线性时不变系统”的定义概念和探讨“周期采样”的注意细节相信更加理解这些概念定义和底层逻辑对于大家在后期的工程应用中会有更多启发价值。 这里不由地多写一些题外话可能会引起不少朋友共鸣笔者读高中时学化学和生物依稀记得高中比初中的内容要深很多并且老师上课讲得很快一时间灌入很多概念和公式那时也没有现在这么多一对一辅导补课都是传统大班教育老师上课讲过布置作业课后同学买练习册刷题巩固但是这样的学习方式延续到高三就较为吃力特别是生物感到很多东西都见过考试时成绩却很不好。 这时生物老师告诉了一个方法叫“回归课本”于是笔者在高三中期少刷题、多看书。因为刷题见了很多概念上的应用再回过头看书上的概念一些模糊的知识点就慢慢清晰了坚持下来到高三后期化学和生物成绩就提高很快会发现虽然题型在不断变化但是都在那些知识点中来回变换。 一晃眼已经硕士毕业工作六年了有时回想起高中和本科学习过程真的也会感到很多似曾相识比如本科学习一个专业学校会给开设很多门专业课但是大部分只在学习理论概念为了保研考研大家又要延续了高中时期的苦学精神但是即便笔试和上机成绩很好面对现实项目又不知所学专业知识的具体应用在哪里大学老师通常也只是就课本概念问题给予一些解答所以说本科学习可能更多的则是眼界上的提升、思维上的扩展。 毕业后工作学习不断积累经验这时再去看一些本科时期枯燥的专业课才会豁然开朗慢慢有更多的感性认识和理性认识所以撰写“数字信号处理基础知识”专栏的初衷即是采用“回归课本”方式加深理解理论概念再通过实例去说明理论概念在具体项目中的应用感性和理性层面深刻理解“底层逻辑”和“实施细节”。 首先来举例说明“线性时不变系统”的概念阅读国内外不同版本的“数字信号处理”类书籍发现对这个概念给出了不唯一的解释当然这并不是核心问题我们更应该从底层逻辑上理解其意义而不仅仅是字面上的定义。 “线性”这个术语生活中也经常会用到直观上的感觉比如初中学的一次函数y kxb自变量x和因变量y是满足线性关系的但是这样感性认识在定义一个概念时就显得不那么准确这里关于“线性系统”的判断有个重要的标准则需要满足“叠加原理”即这类的输出是各个输入分别加到该系统后所得的各个输出的叠加或求和。
我们假设一个系统为T[•]那么“线性系统”的叠加原理可以用公式化表示
可加性设 y1 (n) T[x1 (n)]y2 (n) T[x2 (n)]如果T[x1 (n)x2 (n)] T[x1 (n)] T[x2 (n)] y1 (n)y2 (n)则说明系统 T[•] 满足可加性齐次性设 y1 (n) T[x1 (n)] 如果T[a1x1 (n)] a1T[x1 (n)] a1 y1 (n)则说明系统T[•]满足齐次性 同样也举例来说明假设对于一个离散系统其输出定义为y(n) -0.5* x(n)即输出序列的振幅等于负的1/2输入序列的振幅若输入序列x(n)表示1Hz的正弦波采样率为每周期采样32个样本值在这里我们用matlab来绘制其图形。 如图1所示是matlab下生成正弦波的绘图程序当然每个工程师可能也有自己的使用习惯这里为了便于说明我们按照x(n) sin (2π*f0*n*ts)的格式来书写。 首先解释下程序中matlab用到的几个函数1. sin()即正弦绘制函数2. subplot(m,n,p) 即将当前图窗划分为 mxn 网格并在 p 指定的位置创建坐标区因为有2个函数x和y图形要绘制且在同一张视图下所以m2n1即绘图上下分割开p1代表绘图坐标在上p2代表绘图坐标在下3. stem(n,x)即在 n 指定的值的位置绘制数据序列x可以通俗理解成以n为横坐标x为纵坐标进行绘图4. axis([xmin xmax ymin ymax]) 即用来标注输出的图线的最大值最小值5. xlabel()ylabel()即标注输出的图线横纵坐标的标签值。 在这里我们设置采样周期Ts是1/32待采波形的频率是1Hzn 0:64则表示从时间点0开始采样64个点调用matlab下相关函数即可生成如图2所示的绘图细节上可以对照图2再加深理解不过多赘述。
图1 matlab绘制x(n)和y(n)正弦采样图形的程序
图2 matlab绘制x(n)和y(n) -0.5* x(n)正弦采样图形 类似的我们再用matlab生成序列x1(n)表示1Hz的正弦波和序列x2(n)表示3Hz的正弦波如图3所示采样率均为每周期采样32个样本值y(n)表示-0.5*(x1(n)x2(n))大家可以发现对于系统y(n) -0.5* x(n)是满足“线性系统”的叠加原理。
图3 matlab绘制x1(n)、x2(n)、y(n) -0.5*(x1(n)x2(n))正弦采样图形 再来看一个例子y(n) x2 (n)还是用大家熟知的三角函数进行推算验证假设x(n)用来描述一个频率f0等于1Hz的正弦波序列即x(n) sin (2π*f0*n*ts) sin (2π*1*n*ts)若x(n)是输入序列则系统的输出序列y(n)是1Hz正弦波的平方即y(n) x2 (n) sin (2π*1*n*ts)* sin (2π*1*n*ts)。
高中数学里学过三角函数变换sinA*sinB (1/2)[cos(A-B) - cos(AB)]代入其中可得
y(n) sin(2π*1*n*ts)*sin(2π*1*n*ts) 1/2*[cos(2π*1*n*ts-2π*1*n*ts) - cos(2π*1*n*ts2π*1*n*ts)] 1/2*[cos(0) - cos(2π*2*n*ts)] 1/2*[1 - cos(2π*2*n*ts)] 显然在这里我们输入x(n)是1Hz的正弦波而输出y(n)却得到了0Hz直流成分和2Hz的正弦波混合所以不满足“线性系统”的叠加原理如图所示是用matlab绘制的x(n)和y(n) x2 (n)正弦采样图形。
图4 matlab绘制x(n)和y(n) x2 (n)正弦采样图形 “时不变系统”也有的教科书也叫“移不变系统”顾名思义就是说系统输入序列的时间延迟会引起系统输出序列相等的时间延迟。当然也有更加书面化的表达方式比如国内课本给出定义若系统响应与激励加于系统的时刻无关则系统为移不变或时不变系统即若有 y(n) T[x(n)]则有y(n-m) T[x(n-m)]成立。 同样的为了有助于理解这里也举例说明假设原始的输入序列是x(n)为振幅为1个单位、频率为1Hz的正弦波其输出为y(n) -0.5* x(n)那么考虑一个新的序列x(n) x(n4)即x(n)等于左移4个采样点的x(n)即x(0) x(4)、x(1) x(5)、x(2) x(6)等这个系统便是时不变的因为输出序列y(n) y(n)向左移4个样值即y(n) y(n4)不难发现y(0) y(4) 、y(1) y(5)、y(2) y(6)。 同时具有线性和时不变性的离散时间系统称为LSI系统LSI系统也是“数字信号处理”中主要的研究对象也许写到这里大家还不能确切地知道什么是卷积什么是频率响应亦或者什么是傅里叶变换不过不必着急在后面的博客中笔者会循循渐进层层深入从理论推演到现实应用详细地讨论它们。