信号处理系统综合设计-求解器函数的设计(连续和离散时间系统)

简介: 信号处理系统综合设计-求解器函数的设计(连续和离散时间系统)

一、在s域分析连续时间系统的方法

一个线性时不变连续时间系统可以用线性常系数微分方程描述,对系统的时域分析可归结为利用数学方法对该方程求解。在s域分析连续时间系统的方法是一种间接求解微分方程的计算方法,即以拉普拉斯变换为数学工具,先将时域微分方程变换成s域的代数方程,再在s域求解响应的象函数,最后将响应象函数逆变换成时域原函数。

设LTI因果系统的微分方程一般式为:


257d3784fa3e40d1b46feb6948cecdec.png


对微分方程两边进行单边拉氏变换,利用拉氏变换的微分性质,得:


2dc14863ea0a443dbb142a001bb49705.png


根据系统的微分方程,可得A(s)和B(s),由系统的起始状态可算出C(s),将系统输入进行拉氏变换可得到F(s)。将C(s)/A(s)进行拉氏反变换得零输入响应y_zi(t);将B(s)F(s)/A(s)进行拉氏反变换得零状态响应y_zs(t);零输入响应y_zi(t)与零状态响应y_zs(t)的和即为全响应y(t)。


二、在z域分析离散时间系统的方法

一个线性时不变离散时间系统可以用线性常系数差分方程描述,对系统的时域分析可归结为利用数学方法对该方程求解。在z域分析离散时间系统的方法是一种间接求解差分方程的计算方法,即以z变换为数学工具,先将时域差分方程变换成z域的代数方程,再在z域求解响应的象函数,最后将响应象函数逆变换成时域原函数。

设LTI因果系统的差分方程一般式为:


6a3affa1d572474d883c18666a13dcde.png


对差分方程两边取单边z变换,并利用z变换的位移公式,得


d56674c8611b41b4b14ac4aa794bcf5f.png


根据系统的微分方程,可得A(z)和B(z),由系统的起始状态可算出C(z),将系统输入进行z变换可得到F(z)。将-C(z)/A(z)进行逆z变换得零输入响应y_zi(n);将B(z)F(z)/A(z)进行逆z变换得零状态响应y_zs(n);零输入响应y_zi(n)与零状态响应y_zs(n)的和即为全响应y(n)。


三、MATLAB对拉普拉斯变换与z变换的支持

1、MATLAB对拉普拉斯变换的支持

拉普拉斯变换即拉氏变换,可将一个有参数实数 的函数转换为一个参数为复数s的函数,为线性变换。拉普拉斯变换在工程技术和科学研究领域中有着广泛的应用。

MATLAB提供了进行拉普拉斯变换和拉式反变换的相关函数指令laplace和ilaplace,其具体的函数及功能如下所示:

laplace(f) %返回f的拉普拉斯变换,默认自变量为t,变换变量为s

laplace(f,transVar) %使用转换变量transVar代替s

laplace(f,var,transVar) %分别用自变量var和变换变量transVar代替t和s

ilaplace(F) %返回F的拉普拉斯逆变换,默认自变量为s,变换变量为t

%如果F不包含s,ilaplace使用函数symvar

ilaplace(F,transVar) %使用转换变量transVar代替t

ilaplace(F,var,transVar) %分别用自变量var和变换变量transVar代替s和t

2、MATLAB对z变换的支持

z变换是对离散序列进行的一种数学变换,常用于求线性时不变差分方程的解。它在离散系统中的地位如同拉普拉斯变换在连续系统中的地位。z变换已成为分析线性时不变离散系统问题的重要工具,并且在数字信号处理、计算机控制系统等领域有着广泛的应用。

MATLAB提供了进行z变换和逆z变换的相关函数指令ztrans和iztrans,其具体的函数及功能如下所示:

ztrans(f) % 返回f的z变换,默认自变量为n,变换变量为z

%如果f不包含n,,ztrans使用函数symvar

ztrans(f,transVar) %使用转换变量transVar代替z

ztrans(f,var,transVar) %分别用自变量var和变换变量transVar代替n和z

iztrans(F) %返回F的逆z变换,默认自变量为z,转换变量为n

%如果F不包含z,iztrans使用函数symvar

iztrans(F,transVar) %使用转换变量transVar代替n

iztrans(F,var,transVar) %分别用自变量var和变换变量transVar代替z和n


四、求解器函数的设计

1、连续时间系统的求解器

1.1设计要求

连续时间系统的数学模型为如下微分方程:


340906ef3d7c4303a6a28eb04782e5f4.png


请设计一个MATLAB函数,实现以下功能。

函数的输入为:


8c683ec36b84490c963afb0a718f5860.png


函数的输出为:


97bf44be524f4451bf8dea1c7d9219ea.png


1.2设计思路


6729dd81e73c461f87489742fd293f80.png


1.3函数代码(详见报告)


2、离散时间系统的求解器

2.1设计要求

离散时间系统的数学模型为如下差分方程:


254e27119bd24e50b2db10c97ed0eb81.png


请设计一个MATLAB函数,实现以下功能。

函数的输入为:


d3f737d89a994f73a06723565445b007.png


函数的输出为:


634f79965455497097a32ef4dfe927ed.png


2.2设计思路


c65c2a4f796d4693adf63d4a65105f26.png


2.3函数代码(详见报告)


五、实例求解

经多次实验验证,上述设计出的连续时间系统求解器与离散时间系统求解器可正确求解激励信号初始状态为0的系统微分方程与差分方程。

以下为几个实例验证。


e7d85edde8ce428d9e6c4ace536e7397.png


现利用设计的连续时间系统求解器对该题求解,程序代码如下:

syms s t
a=[1,5,6];b=[2,8];
ft=exp(-t)heaviside(t);
y0=[3,2];
continuous(a,b,y0,ft)

运行结果如下,与上述计算结果一致。


0ce058324942439187a83aff158a0119.png


对求解结果进行可视化处理(代码见附录3)(详见报告):


b89a30c00c5544c8875a379ebf4ef6a9.pngbeff333432104c6d8cde2699138c3df8.png


现利用设计的离散时间系统求解器对该题求解,程序代码如下:

syms z n
sympref(‘HeavisideAtOrigin’,1)
a=[1,3,2];b=[1];
y0=[0,1/2];
fn= heaviside(n);
discrete(a,b,y0,fn)

运行结果如下,与上述计算结果一致。


505e531ef86441098d7428646f4e020c.pngb3fd1d133b3c40da90fb722df9a54c6a.png


(由于求解过程较为复杂,且报告重点不在于经典法,故求解过程不在此赘述)

现利用设计的连续时间系统求解器对该题求解,程序代码如下:

syms s t
a=[1,6,11,6];b=[1,7,8];
ft=-1exp(2t)heaviside(-t)+2exp(-4t)*heaviside(t);
y0=[1,13,-61];
continuous(a,b,y0,ft)

运行结果如下:


1410399f83794f4cb302c0c706f5b6b5.png


求解器求解结果与计算结果不一致,分析认为由于本求解器设计未考虑到激励信号有初始状态的情况,故无法正确求解此类微分方程。但个人认为,由于实际运用中激励信号通常为因果信号,故可认为该求解器仍具有普适性。


六、结论

将MATLAB的数值计算、符号运算和连续系统的拉氏变换分析法有机结合可设计出连续时间系统微分方程的求解器;将MATLAB的数值计算、符号运算和离散系统的z变换分析法有机结合可设计出离散时间系统差分方程的求解器。

经实例验证,上述设计出的求解器可正确求解激励信号初始状态为0的系统微分方程与差分方程,而实际应用中激励信号初始状态通常为0,故可基本认为本课程设计设计出的求解器具有普适性。设计出的求解器不仅使大量的手工计算得以简化,也能得到系统分析的解析解,使得系统分析更为简便和高效。

另外,对于连续时间系统而言,当样本点足够密时,各样本点的数据可近似表示连续信号,故用MATLAB的绘图功能,也可直观图示分析结果,有利于深入理解分析内容。


(附录详见报告)


相关文章
|
9月前
【代数学作业5】理想的分解:高斯整数环中理想的结构,并根据其范数和素数的性质进行分解
【代数学作业5】理想的分解:高斯整数环中理想的结构,并根据其范数和素数的性质进行分解
124 0
|
3月前
|
算法
基于改进自适应分段线性近似(IAPLA)的微分方程数值解法研究: 从简单动力系统到混沌系统的应用分析
IAPLA方法为复杂动力系统的数值模拟提供了一个灵活、高效且易于实现的框架,在众多实际应用中可以作为现有数值求解器的有效替代方案。
43 2
基于改进自适应分段线性近似(IAPLA)的微分方程数值解法研究: 从简单动力系统到混沌系统的应用分析
|
5月前
|
算法 5G 数据安全/隐私保护
SCM信道模型和SCME信道模型的matlab特性仿真,对比空间相关性,时间相关性,频率相关性
该简介展示了使用MATLAB 2022a进行无线通信信道仿真的结果,仿真表明信道的时间、频率和空间相关性随间隔增加而减弱,并且宏小区与微小区间的相关性相似。文中介绍了SCM和SCME模型,分别用于WCDMA和LTE/5G系统仿真,重点在于其空间、时间和频率相关性的建模。SCME模型在SCM的基础上进行了扩展,提供了更精细的参数化,增强了模型的真实性和复杂度。最后附上了MATLAB核心程序,用于计算不同天线间距下的空间互相关性。
109 0
配电网三相不平衡潮流计算【隐式Zbus高斯法】【可设定变压器数量、位置、绕组方式】
配电网三相不平衡潮流计算【隐式Zbus高斯法】【可设定变压器数量、位置、绕组方式】
|
存储 传感器 数据可视化
嵌入式设计中对于只有两种状态的变量存储设计,如何高效的对循迹小车进行偏差量化
嵌入式设计中对于只有两种状态的变量存储设计,如何高效的对循迹小车进行偏差量化
105 0
|
9月前
R语言用GAM广义相加模型研究公交专用道对行程时间变异度数据的影响
R语言用GAM广义相加模型研究公交专用道对行程时间变异度数据的影响
|
9月前
|
算法 Windows
R语言广义二次跳跃、非线性跳跃扩散过程转移函数密度的估计及其应用
R语言广义二次跳跃、非线性跳跃扩散过程转移函数密度的估计及其应用
|
算法
基于有序模式的度量对多变量时间序列进行非线性分析研究(Matlab代码实现)
基于有序模式的度量对多变量时间序列进行非线性分析研究(Matlab代码实现)
165 0
|
人工智能 算法 C++
算法强化--分解因数
算法强化--分解因数
|
运维 算法
【信号变化检测】使用新颖的短时间条件局部峰值速率特征进行信号变化/事件/异常检测(Matlab代码实现)
【信号变化检测】使用新颖的短时间条件局部峰值速率特征进行信号变化/事件/异常检测(Matlab代码实现)

热门文章

最新文章