用matlab软件分析电路实验报告。
1、 增加傅里叶级数展开的每个频率成分,产生一个方波信。
实验要求产生的方波图(如下):
题目分析:根据题意计算的傅里叶级数展开形式为:
用matlab编程,随频率成分的逐项增加,绘制出如下图:
前五个图是傅里叶级数前五项的依次叠加,从中可以看到随频率项数的增加,信号源越趋于方波形状。最后一个图为叠加到n=31项时的情况,这已经很趋于方波形了。因此,可预言当叠加到n为无穷大多项时,就可得到题目中给出的方波信号源。
随项数的增加,正弦的幅度是减小过程的,其图如下:
实验在matlab中编的程序如下:
上段是画方波信号**下段是画幅度变化的**。
程序说明:第一个循环以前是用来画前五个图的,其实subplot(2,3,n)这条语句可画的图是六个,下一个循环所画的第六个图是将原来最后一个图覆盖了,但这并不影响要得到的效果。
实验过程分析与收获:
做这道题前我对傅里叶级数很不熟悉,也不知道它解的展开式。在电路基础15章中找到了一个类似的例子,于是推断出所做题目应为上面分析的展开式。有了展开式做算法,结合自己所学过的c++语言编程习惯,在matlab上编出上面程序并不困难。
对我,实验困难的地方是,一是调自变量的值。当自变量变化幅度太大时,所得的图过粗,太小也没必要且会运行时间过长,适当即可。二是合理画图。
题目要求叠加到第31项,我觉得只要六个图即可。前几个可代表大方向的变化趋势,以后的变化就不太明显了,因此没必要一一列举,只要最后极端的一个就可以看出整个的变化趋势。最后一点就是对matlab语言及其函数的使用问题。
这是我第一次使用matlab软件,此前也没有系统的学习过。因此,我是一边看例子,一边上网搜索资料,一边做题的。这样也能学一些东西,但是很零散,学习效率也不高。
我觉得,在用软件工作前,系统的学习是非常必要的。
2、 使用matlab,根据不同的带宽,设计带通滤波器,并用pspice验证。电路图如下:
bw=200hz,1khz,10khz,50khz
题目分析:电路中c、l、r是要根据带宽来设定的参数。为方便起见,我设定r=1k。于是个参数可列如下表:
根据**中的数据,在matlab编程中编程,运行。
画出的传递函数图如下:
角度函数图如下:
传递函数db表示图如下:
从图中可看到横轴取得都是对数坐标,如此画出的图形才能呈现两边大致对称。传递函数图形在10^4处为最高点,也即谐振频率,然后往两边迅速下降在10^3与10^5都将近降到零。因此符合带通滤波器的特点和要求。
此外,图中还可看出,带通越小时,波峰越尖锐而狭窄,说明其选频率能力越好。而对于角度函数图,当带宽越小时,角度变化越快,带宽越大角度变化才更缓慢,这也与预期结果相符合。
实验matlab**:
说明:figure(1)画的是传递函数图;figure(2)画的是角度函数图;figure(3)画的是传递函数db表示图。
用pspice验证:
用pspice重做上述实验,若得出的结果与matlab的相同,则上述实验结果就得到很好的验证和支持。pspice中得到的图形如下:
传递函数图(pspice)
角度函数图(pspice)
pspice实验验证原理的电路图:
电路交流源的参数设为1v,如此得到r的压值即为传递函数的值,可方便电路的设计。如上图得到图形与matlab的完全一致,因此可得到了验证。
实验过程分析与收获:
这道题比上一道要求明显高很多。一是元件参数要根据各方面情况而自行设定。二是编程难度加大。三是要由其他实验结果来支持。
滤波器的性能主要决定于元件的参数和电路的接法。有了滤波器相关的基础知识,获得带通滤波器的上述参数表并不困难。但也正是根据电路图获得参数表的过程让我体会的如何设计滤波器,这点是最重要的。
编程过程则遇到了不少麻烦。首先是横坐标的取对数,之前忽视了这个问题,导致得到图形要么是错误的,要么是偏向一边,很不对称,后来认真审题得知横标取的是对数,才想到老师给的例子有semilogx()这个函数,查阅它的用法后,才得到正确的结果。后来又想在角度函数中用上了set()函数来取对数,尝试用多种方法解决同个问题。
再则就是如何将多条曲线画在同一个图上。有了前面的查阅经验,我很快得到了hold on这个命令的功用,我不知还有没有更好的途径,但这是我找到的唯一解决为题的方法,虽然这种方法很笨拙,编写的**也过于臃肿。这个过程学习到的是在做题或编程前,一定要审清要求,特别是细节方面,否则折腾了大半天也只能是瞎搞。
其次,应善于查阅资料,要一题多解,寻找最优解,还有便是向其他同学请教如何做,如我得到hold on的过程就是这么来的。
实验用pspice验证的电路图和元件参数容易获得。关键是电压源设为1v这种巧妙的设计思想。pspice虽然可**许多电路,但他的功能并不很完善,因此要靠一点参数的巧妙设定。
上述就是一个典型思想。虽然这是老师提起告诉而并非自己探索出来的,但会用已成自己的了。这帮我节省了不少时间。
学习matlab软件小结:
matlab是一个功能很强大的软件,这次实验题目涉及的只是它很小的一部分应用。因此会做这两道题,我觉得还不能称完全学会了matlab的使用,至少它的一个核心——矩阵的计算还没涉及到。但是对于它的画图功能,简单的编程都有了了解。
因此我们还是学习了不少东西。要获得更多matlab的知识和用法,就有必要再去更系统的学习,或在实践中逐步积累其它的一些使用。当然还要认识到自己的一些缺点,最典型的就是编程习惯。
且不说程序的最优化,连基本的注释也没有。当然这是为了方便,而且小**也是容易被理解。但到了大型程序就,就要非常注意编程习惯问题了,这点我仍需努力克服。
matlab作业
2011029170002王柳。a 一个问题的病态性如何,与求解它的算法有关系。错 b 无论问题是否病态,好的算法都会得到它好的近似解。错 c 计算中使用更高的精度,可以改善问题的病态性。错 d 用一个稳定的算法计算一个良态问题,一定会得到它好的近似解。对 e 浮点数在整个数轴上是均匀分布。错 f ...
matlab作业
matlab语言 第3次作业 字符串,单元数组和结构体 专业 海洋技术 海洋测绘方向 姓名 张体强学号 1026222 1 如何将一个char 数据类型的向量转化为相应的double 型数据类型的数据向量。从式1 到8,判断这些语句是否正确。如果它们正确,那么将产生什么结果?这题不要在电脑中做。1....
matlab作业
电子与通信工程学院。通信系统 实验报告。2013 2014 学年第1学期。调频 fm 系统调制解调 专业 通信工程。班级 通信111 班。学号 姓名 指导教师姓名陈多瑜。2013年 11 月日。1.频率调制或调频 fm 1 设调制信号为m t 调频信号的数学表达式为。例如 m t 的时域波形为。m ...