%求方程的解
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. Memcached的批量删除方案总结

    Memcached的批量删除,向来是Memcached使用者很头疼的事情,因为Memcached采取的缓存方案是哈希表结构,所以没有办法实现delete from tablename where ke ...

  2. css - 原生变量及使用函数 var()

    零.序言 前两天在逛 blog 的时候看见一些内联样式新奇的写法时很纳闷,虽然说不上多么熟练,但是从来没见过  --color: brown 这样的写法,百度一番之后仍然没啥头绪,今天偶然看到一篇文章 ...

  3. inventor安装未完成,某些产品无法安装的解决方法

    inventor提示安装未完成,某些产品无法安装该怎样解决呢?,一些朋友在win7或者win10系统下安装inventor失败提示inventor安装未完成,某些产品无法安装,也有时候想重新安装inv ...

  4. id0-rsa WP合集

    忙里偷闲做做题wwwwwwwwwwwww Intro to Hashing Intro to PGP Hello PGP Hello OpenSSL Intro to RSA Caesar Hello ...

  5. [LC] 235. Lowest Common Ancestor of a Binary Search Tree

    Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BS ...

  6. 解决Eclipse和MyEclipsejava.lang.OutOfMemoryError Java heap space的错误

    Eclipse和MyEclipse出现错误:java.lang.OutOfMemoryError: Java heap space的错误,很熟悉的错误信息,可咋就想不起来在哪里设JVM的参数啊.请看下 ...

  7. spring参数拼装

    -- 知道轮子是怎么造的 -- 自己试着造一造轮子 ,这样才可以更好地利用轮子,轮子的缺陷和优点才能明确. spring参数拼装,需要用到set函数,参考文档: http://coderec.cn/2 ...

  8. 为什么要用location的hash来传递参数?

    分页功能代码实现 <div> <a class="btn" href="#" style="..." @Click.pre ...

  9. 6487. 【GDOI2020模拟02.29】列强争霸war

    题目描述 区间绝对众数 即出现次数>len/2下取整的数 对于区间[L,R]扫一遍,维护一个数x和出现次数s 当前数=x则s+1,否则s-1,若s已为0则把x设为当前数 若区间内存在绝对众数,那 ...

  10. Java入门教程五(数字和日期处理)

    Java 提供了处理相关问题的类,包括 Math 类.Random 类.BigInteger 类.Date 类等. Math类 Math 类封装了常用的数学运算,提供了基本的数学操作,如指数.对数.平 ...