您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 汽车理论 > 第1讲 控制系统仿真概述
控制系统仿真MATLAB电气工程系李颖琼电气工程系李颖琼第一章MATLAB基础•MATLAB美国MathWorks公司产品•电气工程系李颖琼1.1MATALB概述•1.MATLAB是什么?•2.MATLAB的历史。•3.MATLAB的发展。•4.MATLAB能做什么?•5.MATLAB的特点。•6.MATLAB学习要求及方法电气工程系李颖琼1.MATLAB是什么?英文MATrixLABoratory矩阵实验室的缩写电气工程系李颖琼Matlab是什么?•工具软件自动控制系统分析、设计的工具科学计算信息处理等领域分析、设计的工具电气工程系李颖琼Matlab是什么?•程序设计语言•汇编语言是面向机器的程序设计语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址,如此就增强了程序的可读性和编写难度。高级语言机器语言汇编语言高级语言电气工程系李颖琼2.Matlab的历史•1984年,Mathworks公司推出•首创者:CleveMoler•CleveMoler是MathWorks董事长和首席数学家。Moler教授在放弃他的教授生涯,从事计算机行业之前,曾在Michigan、Stanford和NewMexico大学任教近20年,教授数学与计算科学。之后5年,曾在两个计算机硬件制造厂工作。MatrixLaboratory电气工程系李颖琼3.MATLAB的发展1984年,MATLAB第1版(DOS版,182K,20多个函数)1993年,MATLAB4.0版1994年,MATLAB4.2版1997年,MATLAB5.0版1999年,MATLAB5.3版2000年,MATLAB6.0版2001年,MATLAB6.1版2002年,MATLAB6.5版(采用JIT加速器)2004年,MATLAB7.0版2005年,MATLAB7.1版…电气工程系李颖琼R2006a(MATLAB7.2)R2006b(MATLAB7.3)R2007a(MATLAB7.4)R2007b(MATLAB7.5)R2008a(MATLAB7.6)R2008b(MATLAB7.7)R2009a(MATLAB7.8)R2009b(MATLAB7.9)R2010a(MATLAB7.10)R2010b(MATLAB7.11)R2011a(MATLAB7.12)R2011b(MATLAB7.13)从2006年起,MathWorks公司每年发布两次以年份命名的版本:电气工程系李颖琼科学计算最简单的计算器世界一流水平的数值计算函数库Matlab包含700多个用于数学计算、统计和工程处理的函数4.Matlab能做什么?电气工程系李颖琼•例1用一个简单命令求解线性系统•3x1+x2-x3=2•x1+2x2-x3=2•-x1+4x2-2x3=1对于线性系统有Ax=bA=[31-1;12-1;-14-2];b=[2;2;1];x=A\bx=123电气工程系李颖琼可视化1、丰富的2D、3D绘图函数2、数据分析功能3、图像处理与分析2222)sin(yxyxz电气工程系李颖琼例2绘制在0x6范围内的sin(2x)、sinx2、(sinx)2。x=linspace(0,6);y1=sin(2*x);y2=sin(x.^2);y3=(sin(x)).^2;plot(x,y1,x,y2,x,y3)电气工程系李颖琼MATLAB的容错功能强•非法操作时,给出提示,并不影响其操作•例3:1/0•Warning:Dividebyzero•ans=•Inf(→无穷大)电气工程系李颖琼工具箱仿真功能•例4:控制系统仿真•MATLAB的应用•工业研究与开发•数学教学,特别是线性代数•数值分析和科学计算方面的教学与研究•电子学、控制理论和物理学等工程和科学学科方面的教学与研究•经济学、化学和生物学等计算问题的所有其他领域中的教学与研究电气工程系李颖琼5.MATLAB的特点•MATLAB的优点–1.容易使用–2.丰富的内部函数–3.强大的图形和符号功能–4.与其他软件和语言有良好的对接性•MATLAB的缺点–运行效率较低–由于MATLAB是一种合成语言,因此,与一般的高级语言相比,用MATLAB编写的程序运行起来时间往往要长一些。电气工程系李颖琼6.MATLAB学习要求及方法•掌握MATLAB最基础也是最重要的核心部分,为MATLAB处理专门技术领域的工作铺垫基础。•利用MATLAB辅助学习,提高认识和处理复杂问题的能力。•掌握利用MATLAB学习现代科学研究和工程设计的方法。•利用高度工具化的软件来解决实际工作中问题。电气工程系李颖琼基本学习方法•注重基础,注重知识积累•实践为主,理论为辅•借助网络资源––––http:///–……电气工程系李颖琼参考教材:MATLAB基础及应用,李国朝,北京大学出版社,2011.01出版MATLAB程序设计及应用张威,北京邮电大学出版社,2010.03出版电气工程系李颖琼1.2MATLAB的安装与启动•见word文档电气工程系李颖琼1.3MATLAB环境CommandWindow命令窗口CommandHistory历史命令窗口Workspace工作空间Start菜单CurrentFolder当前工作目录电气工程系李颖琼CommandWindowclc清空命令窗口中的内容电气工程系李颖琼工作空间窗口电气工程系李颖琼命令历史窗口电气工程系李颖琼1.4.1变量和常量•变量的命名–变量的名字必须以字母开头(不能超过19个字符),之后可以是任意字母、数字或下划线;–变量名区分字母的大小写;–变量中不能包含有标点符号。例:MYvar12,My_var12,MyVar12_均为有效的变量名_MyVar12为无效的变量名ABC和ABc表达的是不同的变量1.4MATLAB的计算基础电气工程系李颖琼复数•复数可以表示为:a=10-9i•复数运算不需要特殊处理,可以直接进行电气工程系李颖琼特殊变量特殊变量取值ans用于结果的缺省变量名pi圆周率eps计算机的浮点运算误差限2.220410-16inf无穷大,如1/0nan不定式,如0/0i,ji=j=1nargin函数的输入变量数目nargout函数的输出变量数目realmin最小的正实数realmax最大的正实数电气工程系李颖琼1.4.2数组、矩阵的表示和赋值1.从键盘输入矩阵生成不但可以使用纯数字(含复数),也可以使用变量和表达式;矩阵的元素直接排列在方括号内,行与行之间用分号隔开,每行内的元素使用空格或逗号隔开。大的矩阵可以用分行输入,回车键代表分号。y=[2,4,5368]y=245368a=1;b=2;c=3;x=[5bc;a*ba+cc/b]x=5.0002.0003.0002.0004.0001.500电气工程系李颖琼1.4.2数组、矩阵的表示和赋值2.语句生成(1)用线性等间距生成向量矩阵(start:step:end)a=[1:2:10]a=13579(2)a=linspace(n1,n2,n)在线性空间上,行矢量的值从n1到n2,数据个数为n,缺省n为100。a=linspace(1,10,10)a=12345678910电气工程系李颖琼1.4.2数组、矩阵的表示和赋值2.语句生成(3)一些常用的特殊矩阵单位矩阵:eye(m,n);eye(m)零矩阵:zeros(m,n);zeros(m)一矩阵:ones(m,n);ones(m)对角矩阵:对角元素向量V=[a1,a2,…,an]A=diag(V)随机矩阵:rand(m,n)产生一个m×n的均匀的随机矩阵电气工程系李颖琼语句生成矩阵举例:eye(2,3)ans=100010zeros(2,3)ans=000000ones(2,3)ans=111111V=[572];A=diag(V)A=500070002eye(2)ans=1001zeros(2)ans=0000ones(2)ans=1111如果已知A为方阵,则V=diag(A)可以提取A的对角元素构成向量V。电气工程系李颖琼~非~A=[0010];~1=0注意:在处理逻辑运算时,运算元只有两个值即0和1,所以如果指定的数为0,MATLAB认为其为0,而任何数不等于0,则认为是1。设有:A=[5-40-0.5]B=[0109]&与A&B=[0101];A&1=[1101]|或A|B=[1101];A|1=[1111]1.4.5逻辑运算符
本文标题:第1讲 控制系统仿真概述
链接地址:https://www.777doc.com/doc-5037368 .html