%求方程的解
x=sym('x');
fx=(3*x*x+2*x)*(x*x+2.32*x+4)-(2*x+2.32)*(x*x*x+x*x)
fx = 

expand(fx)
ans = 

den=[1 116/25 358/25 8];
roots(den)
ans = 3×1 complex
-1.9750 + 2.7738i
-1.9750 - 2.7738i
-0.6900 + 0.0000i
 
 
 
%绘制根轨迹图
num=[1 1 0 0];
den=[1 2.32 4];
s1=tf(num,den)%多项式相除,得分式
s1 =

s^3 + s^2
----------------
s^2 + 2.32 s + 4

Continuous-time transfer function.

rlocus(s1)
 
%绘制根轨迹图
num=1;
den=conv([1 1],[1 6 10])%展开多项式
den = 1×4
1 7 16 10
 
 
s1=tf(num,den)
s1 =

1
-----------------------
s^3 + 7 s^2 + 16 s + 10

Continuous-time transfer function.

rlocus(s1)
 
%绘制伯德图,求相角裕度、增益裕度
num=1;
den=conv([1 1],conv([0.8 1],[0.2 1]));
s1=tf(num,den);
bode(s1)
hold on
margin(s1)
hold off
 
%反馈校正
num=100;
den=conv([1 0],conv([0.1 1],[0.0067 1]));
s1=tf(num,den)
s1 =

100
----------------------------
0.00067 s^3 + 0.1067 s^2 + s

Continuous-time transfer function.

hold on;
num1=0.0167*[1 0 0];
den1=[0.2 1];
s2=tf(num1,den1)
s2 =

0.0167 s^2
----------
0.2 s + 1

Continuous-time transfer function.

s0=feedback(s1,s2)
s0 =

20 s + 100
------------------------------------------
0.000134 s^4 + 0.02201 s^3 + 1.977 s^2 + s

Continuous-time transfer function.

bode(s0)
 
%非最小相位系统
close all
num=[1 1];
den=[2 1];
s1=tf(num,den)
s1 =

s + 1
-------
2 s + 1

Continuous-time transfer function.

bode(s1)
hold on;
num=-[1 -1];
den=[2 1];
s1=tf(num,den)
s1 =

-s + 1
-------
2 s + 1

Continuous-time transfer function.

bode(s1)
hold off
 
%根轨迹&阶跃响应
num=[1 1];
den=conv([1 0],[1 -3]);
s1=tf(num,den);
rlocus(s1)
num=9*[1 1];
den=conv([1 0],[1 -3]);
s1=tf(num,den);
H=1;
cloop=feedback(s1,H);
step(cloop)
 
%滞后系统根轨迹
num=1;
den=[1 1];
s1=tf(num,den)
s1 =

1
-----
s + 1

Continuous-time transfer function.

[num1,den1]=pade(1,10);
sdelay=tf(num1,den1);
s2=s1*sdelay;
rlocus(s2);
 
%单位脉冲响应
close all
num=25;
den=[1 4 25];
s1=tf(num,den);
step(s1)
hold on
impulse(s1)
hold off
legend({'step','impulse'});
 
%求截止频率
num=100*[0.25 1];
den1=conv([1 0 0],[0.005 1]);
s1=tf(num,den1);
bode(s1)
[mag,phase,w]=bode(s1);
[l,c]=size(mag);
mag1=zeros(c,1);
for i=1:c
mag1(i)=20*log10(mag(1,1,i));
end
wc=interp1(mag1,w,0,'spline')
wc = 25.1177


自动控制理论的MATLAB仿真实例(二)的更多相关文章

  1. 自动控制理论的MATLAB仿真实例(一)

    拉普拉斯变换及其反变换 Laplace变换及其反变换的定义为:

  2. UVW平台运动控制算法以及matlab仿真

    UVW平台运动控制算法以及matlab仿真   最近公司同事因为对某视觉对位平台的运动控制算法有疑问,所以来请教我.由于我也是第一次接触到UVW自动对位平台(也可以叫XXY自动对位平台),于是找了一些 ...

  3. OFDM通信系统的MATLAB仿真(1)

    由于是第一篇博客,想先说点废话,其实自己早就想把学到的一些东西总结成文章随笔之类的供自己复习时查看的了.但是一是觉得自己学的的不够深入,总结也写不出什么很深刻的东西:二是觉得网上也有海量的资料了,需要 ...

  4. 经典功率谱估计及Matlab仿真

    原文出自:http://www.cnblogs.com/jacklu/p/5140913.html 功率谱估计在分析平稳各态遍历随机信号频率成分领域被广泛使用,并且已被成功应用到雷达信号处理.故障诊断 ...

  5. MATLAB仿真总结

    MATLAB仿真过程中,编写MATLAB代码的时候犯了很多错误,做了很多蠢事.记录下自己犯错的点点滴滴,并引以为戒.使用MATLAB版本为2014a,以下内容如有不当还请指正. 1. 仿真开始前清理工 ...

  6. C语言库函数大全及应用实例二

    原文:C语言库函数大全及应用实例二                                              [编程资料]C语言库函数大全及应用实例二 函数名: bioskey 功 能 ...

  7. 极化码的matlab仿真(1)——参数设置

    根据老师的安排,对于极化码的了解从仿真开始. 仿真的手段有很多种.可以利用C,C++,matlab等进行仿真的实现.其中matlab由于具有强大的函数库,和壮观的矩阵运算能力,被(我们老师课题组)看中 ...

  8. Hibernate实例二

    Hibernate实例二 一.测试openSession方法和getCurrentSession方法 hebernate中可以通过上述两种方法获取session对象以对数据库进行操作,下面的代码以及注 ...

  9. (转) 经典功率谱估计及Matlab仿真

    原文出自:http://www.cnblogs.com/jacklu/p/5140913.html 功率谱估计在分析平稳各态遍历随机信号频率成分领域被广泛使用,并且已被成功应用到雷达信号处理.故障诊断 ...

随机推荐

  1. 科研伴我成长——上海交通大学ACM班学生在微软亚洲研究院的幸福实习生活

    每一年,微软亚洲研究院都会迎来一批"特殊的"实习生--他们既不是从五湖四海汇聚而来,也不是在读的硕士和博士.他们相识已久,知道对方的小秘密.小八卦,也相互敬佩.惺惺相惜--他们就是 ...

  2. leetcode第23题:合并K个排序链表

    首先我想到的是采用一般递归法,将K个链表合并化为(k-1)两个链表合并 class Solution: def mergeKLists(self, lists: List[ListNode]) -&g ...

  3. [hdu4630] No Pain No Game

    某次模拟赛的T1. 刚开始怀疑是RMQ......我真是太弱了QAQ 题目传送门 正解是离线操作,把所有询问按r从小到大排序. 然后把数从左到右处理,处理完第i个数,就可以回答所有r==i的询问了. ...

  4. 2016年3月13日 FXStreet首席分析师:欧元/美元下周走势展望

    FX168讯 欧元/美元在经历周初沉闷的走势之后,最终在欧洲央行出台一系列措施促进通货膨胀和经济增长之后怒涨至近一个月最高位.欧洲央行决议公布之前,投资者预期存款利率将下调10至15个基点,并可能进一 ...

  5. Luogu_2279_[HNOI2003]消防局的设立

    题目描述 2020年,人类在火星上建立了一个庞大的基地群,总共有n个基地.起初为了节约材料,人类只修建了n-1条道路来连接这些基地,并且每两个基地都能够通过道路到达,所以所有的基地形成了一个巨大的树状 ...

  6. webdriver访问各个浏览器驱动下载及安装

    这里首先需要查看一下自己安装的selenium版本 查看步骤: windows系统打开cmd命令行输入:pip show selenium查看结果如下: 进入到selenium官网查看版本信息 sel ...

  7. __filename意思

    __filename 表示当前正在执行的脚本的文件名.它将输出文件所在位置的绝对路径,且和命令行参数所指定的文件名不一定相同. 如果在模块中,返回的值是模块文件的路径.

  8. pandas入门(一):pandas的安装和创建

    pandas 对于数据分析的人员来说都是必须熟悉的第三方库,pandas 在科学计算上有很大的优势,特别是对于数据分析人员来说,相当的重要.python中有了Numpy ,但是Numpy 还是比较数学 ...

  9. 抛开贾跃亭!法拉第FF91能成功吗?

    在本届CES 2018上,FF 91又一次刷屏了,而且实实在在地允许试乘了. 抛开贾跃亭的因素不谈,你觉得FF 91能成功吗? 最开始知道法拉第FF91这款电动汽车的名字时,总感觉怪怪的--像是把法拉 ...

  10. Bug,项目过程中的重要数据

    作者|孙敏 为什么要做Bug分析? Bug是项目过程中的一个有价值的虫子,它不只是给开发的,而是开给整个项目组的. 通过Bug我们能获得什么? 积累测试方法,增强QA的测试能力,提升产品质量 发现项目 ...