当前位置:文档之家› matlab作业

matlab作业

matlab作业
matlab作业

1、求解下面的线性代数方程,并验证得出的解真正满足原方程。

(a)

72124

915327

221151

132130

X

-

????

????

-

????

=

????

---

????

????

,(b)

1321390

721264

91532117

2211521

X

????

????

-

????

=

????

-

????

----

????

(a)

>> a=[7 2 1 -2;9 15 3 -2;-2 -2 11 5;1 3 2 13]; >> b=[4;7;-1;0];

>> c=inv(a);

>> x=c*b

x =

0.4979

0.1445

0.0629

-0.0813

>> d=a*x

d =

4.0000

7.0000

-1.0000

(b)

>> a=[1 3 2 13;7 2 1 -2;9 15 3 -2;-2 -2 11 5]; >> b=[9 0;6 4;11 7;-2 -1];

>> c=inv(a);

>> x=c*b

x =

0.9807 0.4979

0.2680 0.1445

-0.2226 0.0629

0.5893 -0.0813

>> d=a*x

d =

9.0000 0 6.0000 4.0000 11.0000 7.0000 -2.0000 -1.0000

2、在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5),t ∈[0,2π],用不同颜色,不同线的类型予以表示,注意坐标轴的比例控制。 >> t=0:0.01*pi:2*pi; >> y=cos(t-0.25); >> y1=sin(t-0.5);

>> plot(t,y,':r',t,y1,'-g')

3、分别用for 和while 循环结构编写程序,求出

63

2362630

2122222i i K ===++++

++∑

并考虑一种避免循环的简洁方法来进行求和。 (1’)>> k=0; >> for i=1:63 k=k+2^i; end (2’) >> k=0; >> i=1;

>> while(i<=63)

k=k+2^i;i=i+1; (3’)i=0:63; k=sum(2.^i); end 答案:k =

1.8447e+019

4、计算 1+2+…+n<2000 时的最大 n 值 function m4 s=0;n=0;

while(s<=2000) n=n+1; s=s+n; end n

答案: n=

63

第二次作业

1、已知二阶系统10

210

)(2

++=

s s s G (1) 编写程序求解系统的阶跃响应;修改参数;实现1=ξ和2=ξ的阶跃响应修改参数,实现n n ωω2

1

1=

和n n ωω22=的阶跃响应(10=n ω) (2) 试做出以下系统的阶跃响应,并比较与原系统响应曲线的差别与特点,作出相应的实验分析结果。

102102)(21+++=s s s s G ;102105.0)(222++++=s s s s s G ;10

25.0)(223+++=s s s

s s G

10

2)(2

2++=

s s s

s G 要求:分析系统的阻尼比和无阻尼振荡频率对系统阶跃响应的影响; 分析响应曲线的零初值、非零初值与系统模型的关系;

分析响应曲线的稳态值与系统模型的关系; 分析系统零点对阶跃响应的影响; (1) a=sqrt(10); zeta=(1/a); num=[10];

den=[1 2*zeta*a 10]; sys=tf(num,den); t=0:0.01:3;

figure(1)

step(sys,t);grid

Wn=1/2Wn时

a=sqrt(10);

zeta=(1/a);

num=[0.25];

den=[1 2*zeta*0.5*a 10]; sys=tf(num,den);

figure(1)

step(sys,t);grid

a=sqrt(10);

zeta=(1/a);

num=[40];

den=[1 2*zeta*2*a 40]; sys=tf(num,den);

figure(1)

step(sys,t);grid

Wn=2Wn时

ξ时改为zeta=(1); =

1

ξ时改为zeta=(2);

2

=

(2)

2、已知)

11.0()

1()(2

++=

s s s k s G 令k =1作Bode 图,应用频域稳定判据确定系统的稳定性,并确定使系统获得最大相位裕度的增益k 值。

>> z=[-1];p=[0 0 -10];k=[10]; >> g=zpk(z,p,k); >> bode(g)

第三次作业

PID 控制器设计,研究PID 控制器对系统的影响。 一、原理说明

1 模拟PID 控制器

典型的PID 控制结构如图所示。

`

PID 调节器的数学描述为

1()

()[()()]t

p d

i

de t u t K e t e d T T dt

ττ=+

+?

2 数字PID 控制器

在计算机PID 控制中,连续PID 控制算法不能直接使用,需要采用离散化方法,通常使用数字PID 控制器。以一系列采样时刻点kT (T 为采样周期)代表连续时间t ,以矩形法数值积分近似代替积分,以一阶后向差分近似代替微分,即:

00011()()()()()(())()()

k k t j j t kT e d T e jT T e j de t e kT e k T e k e k dt

T T ττ==??≈?

?

≈=??

?----≈=?

?∑∑? 离散PID 表达式:

011()()

()[()()]k p d j i e k e k u k K e k e j T T T T

=--=++∑

二、作业内容

1、已知三阶对象模型3

()1/(1)G s s =+,利用MATLAB 编写程序,研究闭环系统在不同控 制情况下的阶跃响应,并分析结果。

(1) 0,i d T T →∞→时,在不同K P 值下,闭环系统的阶跃响应; (2) 10,p d K T =→时,在不同i T 值下,闭环系统的阶跃响应; (3) 1p i K T ==时,在不同d T 值下,闭环系统的阶跃响应;

2、以二阶线性传递函数为被控对象,选择合适的参数进行模拟PID 控制,

输入信号2()sin()r t A ft π=,A=1.0,f =0.2Hz 。 通过Simulik 仿真,其中输入加上输入信号 ,通过示波器参看

输出波形。Simulink 仿真图和运行结果:

在matlab命令窗口对kp,ki,kd赋值,直接输入kp=20;ki=10;kd=0.5;启动

仿真,得到结果如下:

(完整版)MATLAB常用函数大全

一、MATLAB常用的基本数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复数z的相角(Phase angle) sqrt(x):开平方 real(z):复数z的实部 imag(z):复数z的虚部 conj(z):复数z的共轭复数 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数ceil(x):天花板函数,即加入正小数至最近整数rat(x):将实数x化为分数表示 rats(x):将实数x化为多项分数展开 sign(x):符号函数(Signum function)。 当x<0时,sign(x)=-1; 当x=0时,sign(x)=0; 当x>0时,sign(x)=1。 rem(x,y):求x除以y的馀数 gcd(x,y):整数x和y的最大公因数 lcm(x,y):整数x和y的最小公倍数 exp(x):自然指数 pow2(x):2的指数 log(x):以e为底的对数,即自然对数或 log2(x):以2为底的对数 log10(x):以10为底的对数 二、MATLAB常用的三角函数 sin(x):正弦函数 cos(x):余弦函数

tan(x):正切函数 asin(x):反正弦函数 acos(x):反馀弦函数 atan(x):反正切函数 atan2(x,y):四象限的反正切函数 sinh(x):超越正弦函数 cosh(x):超越馀弦函数 tanh(x):超越正切函数 asinh(x):反超越正弦函数 acosh(x):反超越馀弦函数 atanh(x):反超越正切函数 三、适用於向量的常用函数有: min(x): 向量x的元素的最小值 max(x): 向量x的元素的最大值 mean(x): 向量x的元素的平均值 median(x): 向量x的元素的中位数 std(x): 向量x的元素的标准差 diff(x): 向量x的相邻元素的差 sort(x): 对向量x的元素进行排序(Sorting)length(x): 向量x的元素个数 norm(x): 向量x的欧氏(Euclidean)长度sum(x): 向量x的元素总和 prod(x): 向量x的元素总乘积 cumsum(x): 向量x的累计元素总和cumprod(x): 向量x的累计元素总乘积 dot(x, y): 向量x和y的内积 cross(x, y): 向量x和y的外积 四、MATLAB的永久常数

matlab期末大作业

电气学科大类 Modern Control Systems Analysis and Design Using Matlab and Simulink Title: Automobile Velocity Control Name: 巫宇智 Student ID: U200811997 Class:电气0811

电气0811 巫宇智 Catalogue Preface (3) The Design Introduction (4) Relative Knowledge (5) Design and Analyze (6) Compare and Conclusion (19) After design (20) Appendix (22) Reference (22)

Automobile Velocity Control 1.Preface: With the high pace of human civilization development, the car has been a common tools for people. However, some problems also arise in such tendency. Among many problems, the velocity control seems to a significant challenge. In a automated highway system, using the velocity control system to maintain the speed of the car can effectively reduce the potential danger of driving a car and also will bring much convenience to drivers. This article aims at the discussion about velocity control system and the compensator to ameliorate the preference of the plant, thus meets the complicated demands from people. The discussion is based on the simulation of MATLAB. Key word: PI controller, root locus

MATLAB基础训练作业(含答案)

实验一 MATLAB 工作环境熟悉及简单命令的执行 一、实验目的:熟悉MATLAB 的工作环境,学会使用MATLAB 进行一些简单的运算。 二、实验内容:MATLAB 的启动和退出,熟悉MATLAB 的桌面(Desktop ),包括菜单 (Menu )、工具条 (Toolbar )、命令窗口(Command Window)、历史命令窗口、工作空间(Workspace)等;完成一些基本的矩阵操作;学习使用在线帮助系统。 三、实验步骤: 1、启动MATLAB ,熟悉MATLAB 的桌面。 2、在命令窗口执行命令完成以下运算,观察workspace 的变化,记录运算结果。 (1)(365-52?2-70)÷3 (2)>>area=pi*2.5^2 (3)已知x=3,y=4,在MATLAB 中求z : ()2 3 2 y x y x z -= (4)将下面的矩阵赋值给变量m1,在workspace 中察看m1在内存中占用的字节数。 m1=????? ???? ???115 14 4 12679810115 133216 执行以下命令 >>m1( 2 , 3 ) >>m1( 11 ) >>m1( : , 3 ) >>m1( 2 : 3 , 1 : 3 ) >>m1( 1 ,4 ) + m1( 2 ,3 ) + m1( 3 ,2 ) + m1( 4 ,1) (5)执行命令>>help abs 查看函数abs 的用法及用途,计算abs( 3 + 4i ) (6)执行命令 >>x=0:0.1:6*pi; >>y=5*sin(x); >>plot(x,y) (6)运行MATLAB 的演示程序,>>demo ,以便对MATLAB 有一个总体了解。 四、思考题 1、以下变量名是否合法?为什么? (1)x2 (2)3col (3)_row (4)for 2、求以下变量的值,并在MATLAB 中验证。 (1)a = 1 : 2 : 5 ; (2)b = [ a' a' a' ] ; (3)c = a + b ( 2 , : )

matlab 作业

实验一 1、熟悉MATLAB的窗口结构(命令窗口、历史命令窗口、工作区窗口、当前目录 窗口) 2、掌握命令窗口中基本命令的使用 3、在命令窗口中,给定圆的半径r,求得圆的周长c和面积s,并查看工作区窗 口的变化 4、将r,c,s变量保存到磁盘文件abc.mat中,并删除内存变量r,c,s,查看工作 区窗口的变化 5、将abc.mat文件中变量装入内存,查看工作区窗口的变化 6、将历史命令窗口中的命令再装入命令窗口中使用 7、改变当前目录,查看当前目录窗口的变化 8、掌握命令窗口中 cd,quit,help,date,dir,ls,what,who,clocl,fix(clock),format,save,loa d,clc,clear等命令的使用 9、注意各种MATLAB版本的差别 实验二 1、在命令窗口中,输入长方形的长和宽,求长方形的周长和面积 2、输入三角形的三条边(要满足构成三角形的条件),求三角形的周长和面积 3、掌握MATLAB中各标准函数的使用(sin,cos,sind,fix,mod,…) 4、用fprintf输出各种类型的数据(如fprintf('a=%d\n',123) a=123 >> fprintf('b=%f\n',123.456) b=123.456000 >> fprintf('c=%c\n','A') c=A……) 实验三 1、在编辑窗口中:输入学生成绩,输出该成绩的等级。等级规定如下:[90, 100]为A等,[80,90)为B等,[70,80)为C等,[60,70)为D等,[0,60)为E等。要求用if和 switch两种方法实现。 2、商场购物,100件以下,不优惠,100~199件95折,200~399件90折,400~799 件85折,800~1499件80折,1500件以上,75折。输入所购货物的单价、件数,求实际付款数目。要求用if和 switch两种方法实现(在编辑窗口中实现)。 实验四 1、求两个正整数的最大公约数和最小公倍数(在编辑窗口中实现,命令窗口中 调用)。 2、求100~300内所有素数(在编辑窗口中实现,命令窗口中调用)。

matlab 常用函数汇总

matlab 常用函数汇总 编程2008-07-10 21:45:20 阅读46 评论0 字号:大中小订阅matlab常用函数 图形注释 Title 图形标题 Xlabel X轴标记 Ylabel Y轴标记 Text 文本注释 Gtext 用鼠标放置文本 Grid 网格线 MATLAB编程语言 Function 增加新的函数 Eval 执行由MA TLAB表达式构成的字串 Feval 执行由字串指定的函数 Global 定义全局变量 程序控制流 If 条件执行语句 Else 与if命令配合使用 Elseif 与if命令配合使用 End For,while和if语句的结束 For 重复执行指定次数(循环) While 重复执行不定次数(循环) Break 终止循环的执行 Return 返回引用的函数 Error 显示信息并终止函数的执行 交互输入 Input 提示用户输入 Keyboard 像底稿文件一样使用键盘输入 Menu 产生由用户输入选择的菜单 Pause 等待用户响应 Uimenu 建立用户界面菜单 Uicontrol 建立用户界面控制 一般字符串函数 Strings MATLAB中有关字符串函数的说明 Abs 变字符串为数值 Setstr 变数值为字符串 Isstr 当变量为字符串时其值为真 Blanks 空串 Deblank 删除尾部的空串 Str2mat 从各个字符串中形成文本矩阵 Eval 执行由MA TLAB表达式组成的串 字符串比较 Strcmp , , , 比较字符串 Findstr 在一字符串中查找另一个子串

Upper 变字符串为大写 Lower 变字符串为小写 Isletter 当变量为字母时,其值为真 Isspace 当变量为空白字符时,其值为真 字符串与数值之间变换 Num2str 变数值为字符串 Int2str 变整数为字符串 Str2num 变字符串为数值 Sprintf 变数值为格式控制下的字符串 Sscanf 变字符串为格式控制下的数值 十进制与十六进制数之间变换 Hex2num 变十六进制为IEEE标准下的浮点数Hex2dec 变十六制数为十进制数 Dec2hex 变十进制数为十六进制数 建模 Append 追加系统动态特性 Augstate 变量状态作为输出 Blkbuild 从方框图中构造状态空间系统Cloop 系统的闭环 Connect 方框图建模 Conv 两个多项式的卷积 Destim 从增益矩阵中形成离散状态估计器Dreg 从增益矩阵中形成离散控制器和估计器Drmodel 产生随机离散模型 Estim 从增益矩阵中形成连续状态估计器Feedback 反馈系统连接 Ord2 产生二阶系统的A、B、C、D Pade 时延的Pade近似 Parallel 并行系统连接 Reg 从增益矩阵中形成连续控制器和估计器Rmodel 产生随机连续模型 Series 串行系统连接 Ssdelete 从模型中删除输入、输出或状态ssselect 从大系统中选择子系统 模型变换 C2d 变连续系统为离散系统 C2dm 利用指定方法变连续为离散系统 C2dt 带一延时变连续为离散系统 D2c 变离散为连续系统 D2cm 利用指定方法变离散为连续系统 Poly 变根值表示为多项式表示 Residue 部分分式展开 Ss2tf 变状态空间表示为传递函数表示 Ss2zp 变状态空间表示为零极点表示

春MATLAB仿真期末大作业

MATLAB仿真 期末大作业 姓名:班级:学号:指导教师:

2012春期末大作业 题目:设单位负反馈控制系统前向通道传递函数由)()(21s G s G 和串联,其中: ) 1(1)()(21++==s A s G s K s G A 表示自己学号最后一位数(可以是零),K 为开环增益。要求: (1)设K=1时,建立控制系统模型,并绘制阶跃响应曲线(用红色虚线,并标注坐标和标题);求取时域性能指标,包括上升时间、超调量、调节时间、峰值时间; (2)在第(1)问中,如果是在命令窗口绘制阶跃响应曲线,用in1或者from workspace 模块将命令窗口的阶跃响应数据导入Simulink 模型窗口,用示波器显示阶跃响应曲线;如果是在Simulink 模型窗口绘制阶跃响应曲线,用out1或者to workspace 模块将Simulink 模型窗口的阶跃响应数据导入命令窗口并绘制阶跃响应曲线。 (3)用编程法或者rltool 法设计串联超前校正网络,要求系统在单位斜坡输入信号作用时,速度误差系数小于等于0.1rad ,开环系统截止频率s rad c /4.4''≥ω,相角裕度大于等于45度,幅值裕度大于等于10dB 。

仿真结果及分析: (1)、(2)、将Simulink模型窗口的阶跃响应数据导入命令窗口并绘制阶跃响应曲线 通过在Matlab中输入命令: >> plot(tout,yout,'r*-') >> title('阶跃响应曲线') 即可得出系统阶跃响应曲线,如下: 求取该控制系统的常用性能指标:超调量、上升时间、调节时间、峰值时间的程序如下: G=zpk([],[0,-1],5)。 S=feedback(G,1)。

MATLAB第一章作业答案

第一章 M A T L A B 概况与基本操作 1.选择题(每题2分,共20分): (1)最初的MATLAB 核心程序是采用D 语言编写的。 (2)即将于2011年9月发布的MATLAB 新版本的编号为C 。 2011Ra 2011Rb R2011b R2011a (3)在默认设置中,MATLAB 中的注释语句显示的颜色是B 。 A.黑色 B.绿色 C.红色 D.蓝色 (4)如果要以科学计数法显示15位有效数字,使用的命令是A 。 long e long long g long d (5)在命令窗口新建变量a 、b ,如果只查看变量a 的详细信息,使用的命令为A 。 a a (6)如果要清除工作空间的所有变量,使用的命令为C 。 all C.两者都可 D.两者都不可 (7)在创建变量时,如果不想立即在命令窗口中输出结果,可以在命令后加上B 。 A.冒号 B.分号 C.空格 D.逗号 (8)如果要重新执行以前输入的命令,可以使用D 键。 A.下箭头↓ B.右箭头→ C.左箭头← D.上箭头↑ (9)如果要查询函数det 的功能和用法,并显示在命令窗口,应使用命令C 。 D.三者均可 (10)如果要启动Notebook 文档,下列D 操作是可行的。 A.在命令窗口输入notebook 命令 B.在命令窗口输入notebook filename 命令 C.在Word 中启动M-book 文档 D.三者均可 2.填空题(每空1分,共20分): (1)MATLAB 是matrix 和laboratory 两个单词前三个字母的组合,意为“矩阵实验室”,它的创始人是Cleve Moler 和Jack Little 。 (2)在MATLAB 的默认设置中,关键字显示的字体为蓝色,命令、表达式、计算结果显示的字体为黑色,字符串显示的字体为褐红色,注释显示的字体为绿色,错误信息显示的字体为红色。 (3)在命令窗口中,输出结果显示为各行之间添加空行的命令为format loose ,各行之间不添加空行的命令为format compact 。 (4)在MATLAB 中,各种标点符号的作用是不同的。例如,空格的作用是分隔数组每行各个元素,逗号的作用是分隔数组每行各个元素或函数的各个输入参数,分号的作用是作为不显示命令结果的命令行的结尾或分隔数组各列,冒号的作用是生成一维数组或表示数组全部元素,百分号的作用是引导一行注释,…的作用是连接相邻两行,感叹号的作用是调用操作系统命令。 3.程序设计题(每题10分,共40分) (1)以25m/s 的初速度向正上方投球(g=s 2 ),计算到达最高点的时间tp 以及球从出发点到最高点的距离hp 。 解:根据物理学知识,物体上抛运动的速度与经过的时间之间的关系为0p p v v gt =-,因此所需要的时间为0p p v v t g -= 。而到达最高点时的速度0p v =,因此可根据此公式求出tp : v0=25;g=;vp=0; tp=(v0-vp)/g tp =

MATLAB程序设计作业

Matlab程序设计 班级 姓名 学号

《MATLAB程序设计》作业 1、考虑如下x-y 一组实验数据: x=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] y=[1.2, 3, 4, 4, 5, 4.7, 5, 5.2, 6, 7.2] 分别绘出plot的原始数据、一次拟合曲线和三次拟合曲线,给出MATLAB代码和运行结果。 代码如下: x=[1,2,3,4,5,6,7,8,9,10]; y=[1.2,3,4,4,5,4.7,5,5.2,6,7.2]; plot(x,y); title('原始数据'); p=polyfit(x,y,1); q=polyval(p,x); figure,plot(x,q); title('一次拟合'); p=polyfit(x,y,2); q=polyval(p,x); figure,plot(x,q); title('二次拟合'); 运行结果如下:

1 2 3 4 5 6 7 8 9 10 12 3 4 5 6 7 8 原始数据 123 456789 102 2.5 3 3.54 4.5 55.56 6.57一次拟合 123456789 101 2 3 4 5 6 7 二次拟合 2、在[0,3π]区间,绘制y=sin(x)曲线(要求消去负半波,即(π,2π)区间内的函数值置零),求出曲线y 的平均值,以及y 的最大值及其最大值的位置。给出执行代码和运行结果。 代码如下: clear clc x=(0:0.01:3*pi); y=sin(x); plot(x,y); y1=(y>=0).*y; figure,plot(x,y1);

matlab 常用函数(1)

A axis() axis([xmin xmax ymin ymax]) sets the limits for the x- and y-axis of the current axes. axis([xmin xmax ymin ymax zmin zmax cmin cmax]) sets the x-, y-, and z-axis limits and the color scaling limits (see caxis) of the current axes. axis equal sets the aspect ratio so that the data units are the same in every direction. The aspect ratio of the x-, y-, and z-axis is adjusted automatically according to the range of data units in the x, y, and z directions C clf Clear current figure window G grid off/on The grid function turns the current axes' grid lines on and off. H hold on/off ●The hold function determines whether new graphics objects are added to the graph or replace objects in the graph. ●hold on retains the current plot and certain axes properties so that subsequent graphing commands add to the existing graph. ●hold off resets axes properties to their defaults before drawing new plots. hold off is the default

matlab设计作业.doc

1.在同一个图形窗口内画出衰减震荡曲线及其包络线,取值范围是[0,6pi]. 代码: t=(0:pi/100:6*pi); y1=exp(-3*t).*cos(t/2); y2=exp(-3*t); t3=pi*(0:9)/9; y3=exp(-3*t3); plot(t,y1,'r--',t,y2,'b',t3,y3,'bo') 2.画出所表示的三维曲面。X,y 的取值范围是[-9,9]。 x=linspace(-9,1,9); y=linspace(-9,1,9); [x,y]=meshgrid(x,y); z=cos((sqrt(2*x.^2+2*y.^2))/sqrt(x.^2+y.^2)); surf(x,y,z);

3.求和当n =100 时的值。 sum=0; for i=1:100 sum=sum+1/factorial(i); end disp(sum); 1.7183 4. 求1000 个元素的随机数向量A 中大于0.5 的元素个数。 A=rand(1,1000); count=0; for i=1:length(A) if A(i)>0.5 count=count+1; end end count count = 514 5.画正态分布2 的概率密度函数曲线,产生个相应的随机数,N (1,4 m 10000 画出直方图和带正态密度曲线的直方图。将随机数的频率曲线与概率密数曲线画在一起进行比对。x=-20:20; y=normpdf(x,1,4); a=1+4*randn(1,10000); [N,h]=hist(a); y=h(1)-h(2); subplot(2,2,1);plot(x,y); subplot(2,2,2);bar(h,N/(10000*y),1); subplot(2,2,3);plot(x,y); hold on; bar(h,N/(10000*y),1);

期末大作业报告

期末大作业报告 课程名称:数字图像处理 设计题目:车牌识别 学院:信息工程与自动化学院 专业:计算机科学与技术 年级:xxxxx 学生姓名:xxxxxxx(学号xxxxxxxxxxxxx) 指导教师:xxxx 日期:20XX.6.10 教务处制 车牌识别 摘要:数字图像处理技术是20世纪60年代发展起来的一门新兴学科,随着图像处理理论和方法的进一步完善,使得数字图像处理技术在各个领域得到了广泛应用,并显示出广阔的应用前景。MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互或编程以完成各自的计算。MATLAB中集成了功能强大的图像处理工具箱。由于MA TLAB语言的语法特征与C语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式,而且这种语言可移植性好、可扩展性强,再加上其中有丰富的图像处理函数,所以MA TLAB在图像处理的应用中具有很大的优势。车牌识别技术是智能交通系统的重要组成部分,在近年来得到了很大的发展。本文从预处理、边缘检测、车牌定位、字符分割、字符识别五个方面,具体介绍了车牌自动识别的原理。并用MATLAB软件编程来实现每一个部分,最后识别出汽车牌照。 关键词:车牌识别、数字图像处理、MATLAB

一、设计原理 车辆牌照识别系统的基本工作原理为:将摄像头拍摄到的包含车辆牌照的图像通过视频卡输入到计算机中进行预处理,再由检索模块对牌照进行搜索、检测、定位,并分割出包含牌照字符的矩形区域,然后对牌照字符进行二值化并将其分割为单个字符,然后输入JPEG或BMP 格式的数字,输出则为车牌号码的数字。牌照自动识别是一项利用车辆的动态视频或静态图像进行牌照号码、牌照颜色自动识别的模式识别技术。其硬件基础一般包括触发设备、摄像设备、照明设备、图像采集设备、识别车牌号码的处理机等,其软件核心包括车牌定位算法、车牌字符分割算法和光学字符识别算法等。某些牌照识别系统还具有通过视频图像判断车辆驶入视野的功能称之为视频车辆检测。一个完整的牌照识别系统应包括车辆检测、图像采集、牌照识别等几部分。当车辆检测部分检测到车辆到达时触发图像采集单元,采集当前的视频图像。牌照识别单元对图像进行处理,定位出牌照位置,再将牌照中的字符分割出来进行识别,然后组成牌照号码输出。 二、设计步骤 1. 提出总体设计方案: (1)车牌图像预处理方法 因为车牌图像都是在室外拍摄的,所以不可避免地会受到光照、气候等因素的影响,而且拍摄者的手部抖动与车辆的移动会造成图像的模糊。要去除这些干扰就得先对车牌图像进行预处理。由于当前数码相机的像素较高,原始图像的数据一般比较大,输入的彩色图像包含大量颜色信息,会占用较多的存储空间,且处理时也会降低系统的执行速度。因此对图像进行识别等处理时,常将彩色图像转换为灰度图像,以加快处理速度。对图像进行灰度化处理后常用的方法是图像二值化、去除背景图像、增强处理、边缘检测、滤波等处理等。

MATLAB作业4参考答案

MATLAB 作业四参考答案 1、 用2sin(103)y t =+在(0,3)区间内生成一组较稀疏的数据,并用一维数据插值的方法对给出的数据进行曲线拟合,并将结果与理论曲线相比较。 【求解】类似于上面的例子,可以用几乎一致的语句得出样本数据和插值效果。 >> t=0:0.2:3; y=sin(10*t.^2+3); plot(t,y,'o') ezplot('sin(10*t^2+3)',[0,3]); hold on x1=0:0.001:3; y1=interp1(t,y,x1,'spline'); plot(x1,y1) 由于曲线本身变换太大,所以在目前选定的样本点下是不可能得出理想插值效果的,因为样 本数据提供的信息量不够。为了得到好的插值效果,必须增大样本数据的信息量,对本例来 说,必须在快变化区域减小样本点的步长。 >> hold off t=[0:0.1:1,1.1:0.04:3]; y=sin(10*t.^2+3); plot(t,y,'o') ezplot('sin(10*t^2+3)',[0,3]); hold on x1=0:0.001:3; y1=interp1(t,y,x1,'spline'); plot(x1,y1) 2、 用2422 3 1(,)sin()3x y f x y e xy x y x y --= ++原型函数生成一组网络数据或随机数据,分别拟合出曲面,并和原曲面进行比较。 【求解】由下面的语句可以直接生成一组网格数据,用下面语句还可以还绘制出给定样本点是三维表面图。 >> [x,y]=meshgrid(0.2:0.2:2); z=exp(-x.^2-y.^4).*sin(x.*y.^2+x.^2.*y)./(3*x.^3+y); surf(x,y,z) 选择新的密集网格,则可以通过二元插值得出插值曲面。对比插值结果和新网格下的函数值精确解,则可以绘制出绝对插值误差曲面。由插值结果可见精度是令人满意的。 >> [x1,y1]=meshgrid(0.2:0.02:2); z1=interp2(x,y,z,x1,y1,'spline'); surf(x1,y1,z1) >> z0=exp(-x1.^2-y1.^4).*sin(x1.*y1.^2+x1.^2.*y1)./(3*x1.^3+y1); surf(x1,y1,abs(z1-z0)) 现在假设已知的样本点不是网格形式分布的,而是随机分布的,则可以用下面语句生成样本点,得出分布的二维、三维示意图。 >> x=0.2+1.8*rand(400,1); y=0.2+1.8*rand(400,1); % 仍生成(0.2,2) 区间的均匀分布随机数 z=exp(-x.^2-y.^4).*sin(x.*y.^2+x.^2.*y)./(3*x.^3+y); plot(x,y,'x') figure, plot3(x,y,z,'x')

华南理工大学最优化设计作业Matlab编程答案

目标函数 function f=fmin1(x)%x(1)是D外径/mm;x(2)是d内径/mm f=pi*(x(1).^2-x(2).^2)/4; 非线性约束函数 function[f,feq]=noncon(x) f=[6400-30*sqrt(x(1).^2+x(2).^2), 480000*x(1)-pi*(x(1).^4-x(2).^4)]; feq=[] 主程序 A=[-11]; b=[-3.5]; x0=[150140]; [x,fval,exitflag,output,lambda,grad,hessian]= fmincon('fmin1',x0,A,b,[],[],[],[],'noncon') 运算结果 x=152.5893149.0893 fval=829.2823 exitflag=1 output=iterations:3 funcCount:9 lssteplength:1 stepsize:2.5331e-010 algorithm:'medium-scale:SQP,Quasi-Newton,line-search' firstorderopt:9.8475e-010 constrviolation:0 message:[1x788char] lambda= lower:[2x1double] upper:[2x1double] eqlin:[0x1double] eqnonlin:[0x1double] ineqlin:236.9059 ineqnonlin:[2x1double] grad= 239.6867 -234.1889 hessian= 1.0e+006* 1.8964-1.8964 -1.8964 1.8964

《科学计算与MATLAB》期末大作业

杭州电子科技大学信息工程学院《科学计算与MATLAB》期末大作业

给出程序、图、作业分析,程序需加注释。 1. 试编写名为fun.m 的MATLAB 函数,用以计算下述的值: ?? ? ??-<->=t t n t t t n t f 的)4/sin()(si 对所有)4/sin(其他情况)sin(的)4/sin()(si 对所有)4/sin()(ππππ 绘制t 关于函数f(t)的图形,其中t 的取值范围为ππ66≤≤-t ,间距为10/π。 function y=fun()%定义函数 % t=-6*pi:pi/10:6*pi; %定义变量范围 y = (sin(pi/4)).*(sin(t)>sin(pi/4))+(sin(-pi/4)).*(sin(t)=sin(-pi/4)));%函数表示 plot(t,y); %画图 end

2.解以下线性方程组 ??? ??=+=++=--3 530 42231 321321x x x x x x x x A=[2 -1 -1;1 1 4;3 0 5];%输入矩阵 B=[2;0;3]; %输入矩阵 X = A\B %计算结果 3.已知矩阵? ? ??? ???? ???=44434241 3433323124232221 14131211A 求: (1)A(2:3,2:3) (2)A(:,1:2) (3)A(2:3,[1,3]) (4)[A,[ones(2,2);eye(2)]]

A=[11 12 13 14;21 22 23 24;31 32 33 34;41 42 43 44];%输入矩阵A(2:3,2:3) %输出矩阵 A(:,1:2) %输出矩阵 A(2:3,[1,3]) %输出矩阵 [A,[ones(2,2);eye(2)]] %输出矩阵

机电工程基础 Matlab设计作业

Matlab程序设计 上交作业要求: 1)电子文档:设计分析报告一份(包括系统建模、系统分析、系统设计思路、程序及其执行结果)。 2)Matlab程序:可执行程序一份(运行程序可显示、输出执行结果) 按班级统一上交。 题目一: 考虑如图所示的倒立摆系统。图中,倒立摆安装在一个小车上。这里仅考虑倒立摆在图面内运动的二维问题。倒立摆系统的参数包括:摆杆的质量(摆杆的质量在摆杆中心)、摆杆的长度、小车的质量、摆杆惯量等。 图倒立摆系统 设计一个控制系统,使得当给定任意初始条件(由干扰引起)时,最大超调量 %≤10%,调节时间ts ≤4s ,使摆返回至垂直位置,并使小车返回至参考位置(x=0)。 要求:1、建立倒立摆系统的数学模型 2、分析系统的性能指标——能控性、能观性、稳定性 3、设计状态反馈阵,使闭环极点能够达到期望的极点,这里所说的期望的极点确定 是把系统设计成具有两个主导极点,两个非主导极点,这样就可以用二阶系统的 分析方法进行参数的确定 4、用MATLAB 进行程序设计,得到设计后系统的脉冲响应、阶跃响应,绘出相应状 态变量的时间响应图。

题目二: 根据自身的课题情况,任意选择一个被控对象,按照上题所示步骤进行分析和设计,并给出仿真程序及其执行结果。 选择的被控对象在第四周上报,通过与教师协商确认,以避免选题不当与选题重复。解: 一、 第一部分单阶倒立摆系统建模 由于此问题为”单一刚性铰链、两自由度动力学问题”,因此,依据经典力学的牛顿定律即可满足要求。 如图1.1所示,设小车的质量为M,倒立摆均匀杆的质量为m,摆长为2l, O为摆摆的偏角为 ,小车的位移为x,作用在小车上的水平方向上的力为F, 1 杆的质心。 根据刚体绕定轴转动的动力学微分方程,转动惯量与角加速度乘积等于作用于刚体主动力对该轴力矩的代数和,则 1)摆杆绕其重心的转动方程为 Jθ=F y lsinθ?F x lcosθ(1-1)2)摆杆重心的水平运动可描述为 (x+lsinθ)(1-2) F x=m d2 dt 3)摆杆重心在垂直方向上的运动可描述为 (lcosθ)(1-3) F y?mg=m d2 dt 4)小车水平方向运动可描述为 F?F x=M d2x (1-4) dt 由式(1-2)和式(1-4)得 (M+m)x?+ml(cosθ?θ?sinθ?θ2)=F(1-5)由式(1-1)、式(1-2)和式(1-3)得 (J+ml2)+mlcosθ?x?=mlgsinθ(1-6)整理式(1-5)和式(1-6),得

MATLAB常用函数

数字信号处理与MATLAB 实现 1. n1=[ns:nf]; x1=[zeros(1,n0-ns),1,zeros (1,nf-n0)]; %单位抽样序列的产生 2. subplot(2,2,4) 画2行2列的第4个图 3. stem(n,x) %输出离散序列,(plot 连续) 4. 编写子程序可调用 4.1 单位抽样序列)(0n n -δ生成函数impseq.m [x,m]=impseq(n0,ns,nf); %序列的起点为ns ,终点为nf ,在n=n0点处生成一个单位脉冲 n=[-5:5];x1=3*impseq(2,-5,5)-impseq(-4,-5,5) x1 = 0 -1 0 0 0 0 0 3 0 0 0 n=[-5:5];x1=3*impseq(2,-4,5)-impseq(-4,-5,4) %起点到终点长度要一致 x1 = 0 -1 0 0 0 0 3 0 0 0 4.2 单位阶跃序列)(0n n u -生成函数stepseq.m [x,n]=stepseq(no,ns,nf) %序列的起点为ns ,终点为nf ,在n=n0点处生成一个单位阶跃 4.3 两个信号相加的生成函数sigadd.m [y,n]=sigadd(x1,n1,x2,n2) 4.4 两个信号相乘的生成函数sigmult.m [y,n]=sigmult(x1,n1,x2,n2) 4.5 序列移位y(n)=x(n-n0)的生成函数sigshift.m [y,n]=sigshift(x,m,n0) 4.6 序列翻褶y(n)=x(-n)的生成函数sigfold.m [y,n]=sigfold(x,n) 4.7 evenodd.m 函数可以将任一给定的序列x(n)分解为xe(n)和xo(n)两部分 [xe,xo,m]=evenodd(x,n) 4.8 序列从负值开始的卷积conv_m, conv 默认从0开始 function [y,ny]=conv_m(x,nx,h,nh) 有{x(n):nx1≤n ≤nx2},{h(n):nh1≤n ≤nh2}, 卷积结果序列为 {y(n):nx1+nh1≤n ≤nx2+nh2} 例. 设1132)(-++=z z z X ,1225342)(-+++=z z z z X ,求)()()(21z X z X z Y += 程序: x1=[1,2,3];n1=-1:1; x2=[2,4,3,5];n2=-2:1; [y,n]=conv_m(x1,n1,x2,n2)

MATLAB期末大作业模板

MATLAB应用技术 期末大作业 专业: 姓名: 学号: 分数

一、在一个图形窗口中以子图形式同时绘制正弦、余弦、正切、余切曲线。请写下完整代码,展示图形结果。(请标注题图和坐标轴,用不同颜色和不同线型分别绘制以上曲线)。(15分) 二、某公司员工的工资计算方法如下。 (1)工作时数超过120小时者,超过部分加发15%。 (2)工作时数低于60小时者,扣发700元。 (3)其余按每小时84元发。 根据员工的工时数,计算应发工资。请写下完整的程序代码,并任意输入一工时数(使用input 函数),将结果展示(使用disp 函数)利用该代码进行计算工资,请写下计算结果。(15分) 三、编写一个函数文件,使其能够产生如下的分段函数: ?? ? ??≥<<≤-=66225.0,25.05.15.0)(x x x x x x f 请编写完整的函数文件(保存函数文件名为hanshu.m ),并编写脚本文件代码,任意输入x 值(使用input 函数),在脚本文件中调用函数文件求)(x f ,展示结果(使用disp 函数),请写下计算结果。(15分) 四、将5个学生的6门功课的成绩存入矩阵P 中,进行如下处理: (1)分别求每门课的最高分、最低分及相应学生的序号。 (2)分别求每门课的平均分和标准差。 (3)5门课总分的最高分、最低分及相应学生序号。 (4)将5门课总分按从大到小顺序存入score 中,相应学生序号存入num 。 请将各小题的运行代码完整写下来,并写下运行结果。(20分) 五、请利用所学的MATLAB 知识,自主设计一个图形用户界面,请完整记录它的设计过程,需提供文字、代码和图片,以充分说明设计的图形用户界面可实现

MATLAB作业答案

题4.1 控制系统结构如图4.A 所示: 图4.A 习题 (1) 利用MA TLAB 对以上单位负反馈控制系统建立传递函数模型; (2) 将第一问中求得的传递函数模型转化为零极点增益形式和状态空间形式。 解:(1)MA TLAB 程序代码如下: z=[-1];p=[-1,-3];k=2 [num,den]=zp2tf(z,p,k) g_tf=tf(num,den) 程序运行结果如下: Transfer function: 2 s + 2 ------------- s^2 + 4 s + 3 由计算结果可知,系统的传递函数模型为: G (s )= 3 4222 +++s s s (2) MA TLAB 程序代码如下: num=[2,2];den=[1,4,3] [z,p,k]=tf2zp(num,den) [A,B,C,D]=tf2ss(num,den) g_zpk=zpk(z,p,k) g_ss=ss(A,B,C,D) 程序运行结果如下: Zero/pole/gain: 2 (s+1) ----------- (s+3) (s+1) a = x1 x2 x1 -4 -3 x2 1 0 b = u1 x1 1 x2 0

c = x1 x2 y1 2 2 d = u1 y1 0 由计算结果可知,系统的零极点增益模和状态空间模型分别为: G (s )=)1)(3()1(2+++s s s 和[]? ????=??????+??????-=x y u x x 2 2010 13- 4. 题5.1 设单位负反馈控制系统的开环传递函数为G (s )= ) 177(2 ++s s s K 。 (1) 试绘制K=10、100时闭环系统的阶跃响应曲线,并计算稳态误差、上升时间、超调 量和过渡过程时间; (2) 绘制K=1000时闭环系统的阶跃响应曲线,与K=10、100所得结果相比较,分析增 益系数与系统稳定性的关系; (3) 利用roots 命令,确定使系统稳定时K 的取值范围。 解:(1) 题 6.1 已知单位负反馈控制系统的前向传递函数分别为G (s )= ) 4)(2()1(2 +++s s s s K 、 ) 164)(1() 1(2 ++-+s s s s s K 和 ) 15)(7)(5)(3() 8(2 +++++s s s s s s K ,试利用MA TLAB 分别绘制各系 统的根轨迹图。 解:(1)G (s )= ) 4)(2()1(2 +++s s s s K MA TLAB 程序代码如下: num=[1,1];den=conv([1,0],conv([1,0],[1,6,8])); sys=tf(num,den)

相关主题
文本预览
相关文档 最新文档