机电系统动力学仿真matlab课后答案 刘白雁汇编
基于MATLABSimulink机电系统动态仿真教程第一章

二、仿真的分类
按模型分类
1、物理仿真:采用物理模型,有实物介入! 具有效果逼真,精度高等优点,但造价高或耗时长, 大多在一些特殊场合下采用(如导弹、卫星一类飞 行器的动态仿真,发电站综合调度仿真与培训系统 等),具有实时性、在线的特点。 2、数学仿真:采用数学模型 在计算机上进行,具有非实时性、离线的特点,经 济、快速、实用。
《机电系统动态仿真——基于 MATLAB/Simulink》
刘白雁教授编著 机械工业出版社
2006,8
仿真软件的简介 一、仿真的发展
1、程序编程阶段: 所有问题(如:微分方程求解、 矩阵运算、绘图等)都是用高级算法语言(如C、 FORTRAN等)来编写。 2、程序软件包阶段: 出现了“应用子程序库”。 3、交互式语言阶段(仿真语言:仿真语言可用一 条指令实现某种功能,如“系统特征值的求解”, 使用人员不必考虑什么算法,以及如何实现等低 级问题。 4、模型化图形组态阶段:符合设计人员对基于模 型图形化的描述。
三、常见的几种仿真软件
PSPICE、ORCAD:通用的电子电路仿真软件, 适合于元件级仿真。 SYSTEM VIEW:系统级的电路动态仿真软 件 MATLAB:具有强大的数值计算能力,包含 各种工具箱,其程序不能脱离MATLAB环境 而运行,所以严格讲,MATLAB不是一种计 算机语言,而是一种高级的科学分析与计算软 件。 SIMULINK:是MATLAB附带的基于模型化 图形组态的动态仿真环境。
按计算机类型分类
1、模拟仿真:采用数学模型,在模拟计算机 上进行的实验研究。50年代 2、数字仿真:采用数学模型,在数字计算机 上借助于数值计算方法所进行的仿真实验。 60年代
3、混合仿真:结合了模拟仿真与数字仿真。 4、现代计算机仿真:采用先进的微型计算机,基于 专用的仿真软件、仿真语言来实现,其数值计算 功能强大,使用方便,易学。80年代以来
matlab课后习题及答案详解

第1章 MATLAB概论1.1与其他计算机语言相比较,MATLAB语言突出的特点是什么?MATLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。
1.2 MATLAB系统由那些部分组成?MATLAB系统主要由开发环境、MATLAB数学函数库、MATLAB语言、图形功能和应用程序接口五个部分组成。
1.3 安装MATLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装?在安装MATLAB时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MATLAB选项)必须安装。
第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。
1.4 MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?在MATLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择Dock ……菜单项就可以将独立的窗口重新防止的桌面上。
1.5 如何启动M文件编辑/调试器?在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动。
在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。
1.6 存储在工作空间中的数组能编辑吗?如何操作?存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。
1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途?命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。
《机电系统动态仿真》实验指导书2019版共11页文档

实验一MATLAB基本操作一、实验目的:①通过上机实验操作,使学生熟悉MATLAB实验环境,练习MATLAB命令、m文件,进行矩阵运算、图形绘制、数据处理。
②通过上机操作,使得学生掌握Matlab变量的定义和特殊变量的含义,理解矩阵运算和数组运算的定义和规则。
③通过上机操作,使得学生掌握数据和函数的可视化,以及二维曲线、三维曲线、三维曲面的各种绘图指令。
二、实验原理与说明Matlab是Matrix 和Laboratory两词的缩写,是美国Mathworks公司推出的用于科学计算和图形处理的可编程软件,经历了基于DOS版和Windows版两个发展阶段。
三、实验设备与仪器:PC电脑,Matlab7.0仿真软件四、实验内容、方法与步骤:数组运算与矩阵运算数组“除、乘方、转置”运算符前的“.”决不能省略,否则将按矩阵运算规则进行运算;执行数组与数组之间的运算时,参与运算的数组必须同维,运算所得的结果也与参与运算的数组同维。
A=[ 1 2 3; 4 5 6; 7 8 9];B=[-1 -2 -3;-4 -5 -6;-7 -8 -9];X=A.*BY=A*Bplot用于二维曲线绘图,若格式为plot(X,Y,’s’),其中X为列向量,Y是与X等行的矩阵时,以X为横坐标,按Y的列数绘制多条曲线;若X为矩阵,Y是向量时,以Y为纵坐标按X的列数(或行数)绘制多条曲线。
参考程序如下:t=(0:pi/100:pi)'y1=sin(t)*[-1 1];y2=sin(t).*sin(9*t);plot(t,y1, 'r:', t, y2, 'b-.')axis([0 pi, -1, 1])title('Drawn by Dong-yuan GE')程序运行界面如下:plot3用于三维曲线绘制,其使用格式与plot十分相似。
参考程序如下:t=0:0.02:2*pi;x=sin(t);y=cos(t);z=cos(2*t);plot3(x,y,z,'b-', x,y,z,'o')程序运行界面如下:mesh与surf用于三维空间网线与曲面的绘制。
MATLAB语言与控制系统仿真-参考答案-第3章

3.5 MATLAB 绘图实训3.5.1 实训目的1.学会MA TLAB 绘图的基本知识;2.掌握MA TLAB 子图绘制、图形注释、图形编辑等基本方法;3.学会通过MA TLAB 绘图解决一些实际问题;4.练习二维、三维绘图的多种绘图方式,了解图形的修饰方法;5.学会制作简单的MATLAB 动画。
图3-46 炮弹发射示意图3.5.2 实训内容1. 炮弹发射问题(1)炮弹发射的基础知识炮弹以角度α射出的行程是时间的函数,可以分解为水平距离)(t x 和垂直距离)(t y 。
)cos()(0αtv t x = %水平方向的行程;205.0)sin()(gt tv t y -=α %垂直方向的行程; 其中,0v 是初速度;g 是重力加速度,为9.82m/s ;t 是时间。
(2)炮弹发射程序举例:分析以下程序以及图3-47各个图形的实际意义。
a=pi/4; v0=300; g=9.8;t=0:0.01:50; x=t*v0*cos(a);y=t*v0*sin(a)-0.5*g*t.^2;subplot(221);plot(t,x);grid;title(‘时间-水平位移曲线'); subplot(222);plot(t,y);grid;title(‘时间-垂直位移曲线');subplot(223);plot(x,y);grid;title(‘水平位移-垂直位移曲线'); subplot(224);plot(y,x);grid;title(‘垂直位移-水平位移曲线');图3-4745角发射曲线 (3)编程解决炮弹发射问题①假设在水平地面上以垂直于水平面的角度向上发射炮弹,即发射角90=α,假设初速度分别为[310,290,270]m/s,试绘制时间-垂直位移曲线,编程求取最高射程;绘图要求:◆ 标题设为“炮弹垂直发射问题”; ◆ 在图上通过添加文本的方式表明初速度; ◆ 在x 轴标注“时间”; ◆ 在y 轴上标注“垂直距离”; ◆ 添加网格线; ◆ 将310m/s 的曲线改为线粗为2的红色实线; ◆ 将290m/s 的曲线改为线粗为3的绿色点划线; ◆ 将270m/s 的曲线改为线粗为2的蓝色长点划线;a=pi/2; v1=310; g=9.8;t=0:0.01:50; x1=t*v1*cos(a);y1=t*v1*sin(a)-0.5*g*t.^2;plot(t,y1);grid; title('炮弹垂直发射问题'); xlabel('时间'); ylabel('垂直距离'); hold on; v2=290;x2=t*v2*cos(a);y2=t*v2*sin(a)-0.5*g*t.^2; plot(t,y2); v3=270;x3=t*v3*cos(a);y3=t*v3*sin(a)-0.5*g*t.^2; plot(t,y3);zgsc=[max(y1); max(y2); max(y3)] %三次发射的最高射程 运行结果如下:zgsc =1.0e+003 * 4.9031 4.29083.7194最高射程分别为:4903.1米,4290.8米,3719.4米。
MATLAB语言与控制系统仿真-参考答案-第8章

8.6 控制系统的Simulink仿真实训8.6.1实训目的:1.学会运用Simulink进行系统仿真;2.了解子系统的创建方法及简单应用;3.运用Simulink实现混沌控制系统的仿真;4.运用Simulink实现伺服跟踪系统等系统的仿真;8.6.2实训内容:1.按照图8-39所示建立系统的结构图文件。
图8-39(1)K=50,纪录图示三处的波形,分析系统的稳态性并给出稳态误差。
仿真文件:sx8620101.mdl系统稳定,稳态误差为0;(2)K=200,纪录图示三处的波形,根据曲线分析系统的稳定性。
仿真文件:sx8620102.mdl由输出曲线可以看出闭环系统不稳定;(3)编写程序求取K=200时的闭环传递函数,求出系统的闭环极点(特征根),说明系统的稳定性,分析与(2)得出的结论是否一致。
%实训8620103.mn1=3;d1=[1,2];[n2,d2]=cloop(n1,d1);sysa=tf(n2,d2);sysb=tf([200],[1,0])*tf([1],[1,5]);sysc=sysa*sysb/(1+sysa*sysb);[nc,dc]=tfdata(sysc,'v');roots(dc)>> ans =-12.0549 1.0275 + 6.9797i 1.0275 - 6.9797i -5.0000 + 0.0000i -5.0000 - 0.0000i有两个特征根在右半平面,闭环系统不稳定;与(2)得出的稳定性结论一致。
2. 子系统创建实验 (1)建立如下系统。
(2)选定范围,创建子系统并定义变量a 。
图8-40(3)利用创建的子系统,分别记录10,8,6,4,2 a 时所示系统的输出波形。
a=2a=4a=6a=8a=103.已知四维混沌系统的运动方程如下,试用Simulink 进行仿真。
⎪⎪⎩⎪⎪⎨⎧+-=+-=-+=+-=321444213343121243212110)(10)(35x x x x xx x x x x x x x x x xx x x x x x (1)四个积分器的初始值自定,建议在(0.01,3.0)范围内随机给出。
基于MATLAB的永磁同步电机矢量控制系统仿真

3 矢量控制与坐标变换模块
矢量控制 模 块 实 现 的 就 是 PMSM 的 矢 量 控 制 算 法 , 其 中 ,
空间矢量变换 ABC- DQ 和 DQ- ABC 的变换矩阵分别为:
! CABC- DQ=
2 3
"
##sinθ
#
#
#
#
##cosθ
#
#
#
1 #
#
#
# $
!
2
sin(
θ-
2 3
π)
cos( θ- 2 π) 3
运行方式由电机电磁转矩符号决定 (为正则是电动机状态, 为
负则是发电机状态)。为了简化模型, 可以假定转子永磁磁极在
定子上产生的感应磁通是正弦分布的, 并且由于通常永磁同
步电机的气隙较大, 可以近似地忽略定电机铁心的磁饱和。
因此永磁同步电机在 d- q 轴的电压方程为:
d dt
id
=
1 Ld
ud
-
R1 Ld
π)
cos(θ+ 2 3π) Nhomakorabea$
1 !2
& & & & ’
根 据 上 面 两 式 在 MATLAB 环 境 下 可 分 别 得 到 dq/abc 和
abc/dq 坐标变换的子模块, 用以实现 PMSM 的矢量控制算法,
将电流转换为电压。
4 电流滞环型 PWM模块
电 流 滞 环 PWM 模 块 实 现 的 是 PMSM 的 滞 环 电 流 控 制 方
The S imula tion Ba s e d on Ma tla b for Ve ctor Control of P e rma ne nt Ma gne t S ynchronous Motor
机电系统仿真技术试题

机电系统仿真技术试题姓名:刘丽欢 学号:0009 专业:机械电子工程 电话: 一、用MATLB 指令求解下列各题1. 求⎥⎦⎤⎢⎣⎡=5361A 的特征值和特征向量。
>> A=[1,6;3,5];>> [V ,D]=eig(A) V =-0.9125 -0.6676 0.4092 -0.7445 D =-1.6904 0 0 7.6904 2. 求⎥⎦⎤⎢⎣⎡=3752B 的特征多项式。
>> B=[2,5;7,3]B =2 5 73 >> C=poly(B) C =1.0 -5.0000 -29.0000该矩阵的特征多项式为295)(2--=S S s P3. 已知⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=200310211E ,求其约旦标准形。
>> E=[1 1 2;0 1 3;0 0 2];C=jordan(E) C =2 0 0 0 1 1 0 0 1E 的约旦标准形是⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡100110002 4. 求递推方程)2(4)1(3)(----=n f n f n f 的通解。
>> f=maple('rsolve(f(n)=-3*f(n-1)-4*f(n-2),f(n))'); disp('f(n)='),disp(f) function work22(n,i,j) syms a b A=ones(n) for a=1:nfor b=1:nif (a+b)==(i+j) A(a,b)=0; end end end disp(A) f(n)=(3/7*i*f(1)*7^(1/2)+f(1)+1/7*i*f(0)*7^(1/2)+3*f(0))*(-8/(3-i*7^(1/2)))^n/(3-i*7^(1/2))-1/7*i*7^(1/2)*(3*f(1)+i*f(1)*7^(1/2)+f(0)+3*i*f(0)*7^(1/2))*(-8/(3+i*7^(1/2)))^n/(3+i*7^(1/2)) 5. 求定积分⎰--15152/221dx e x π>> syms x;f=exp(-x^2/2); a=int(f,-15,15); an=a/(2*pi)^0.5 an =/*erf(15/2*2^(1/2))*2^(1/2)*pi^(1/2) 二、 完成下列各个程序段 1.求1000以内的质数。
MATLAB语言与控制系统仿真-参考答案-第1章

1.6 MATLAB操作基础-实训1.6.1实训目的1.熟悉MATLAB语言环境,识别MATLAB桌面和命令窗口,命令历史窗口,工作空间窗口等;2.练习设置变量精度或变量显示方式;3.练习通过MATLAB编程解决一些实际问题;4.通过作图总结自变量增量设置对作图结果的影响;5.学会求解方程、方程组的基本方法;6.练习M文件的建立与执行;7.学会进入工具箱的演示系统,以便于进一步了解和学习感兴趣的知识,为以后的自主学习奠定基础。
1.6.2实训内容1.根据表1-2中要求,先使用命令format改变变量的精度或显示方式,然后键入表达式,并将运行结果填入表1-2中,并练习使用clc 清除命令窗口中内容。
>> format bank;>> aa = 3.142.720.611.4164.0081.00>> format short>> aa =3.14162.71830.60651.414264.000081.0000>> format short e>> aa =3.1416e+0002.7183e+0006.0653e-001 1.4142e+000 6.4000e+001 8.1000e+001 >> format rat >> a a =355/113 1457/536 743/1225 1393/985 64 812. 编写MA TLAB 程序计算,根据程序运算结果填空(要求保留两位小数)(1)58.135.0+=-ea =( 4.29 ); 程序为: a=exp(-0.5)+sqrt(13.58)>> format bank;>> a=exp(-0.5)+sqrt(13.58) a =4.29(2)已知两个圆的半径分别为cm 5.31=r , cm 62=r ,则两个圆的周长分别为=1l ( 21.99 )cm, =2l ( 37.70 )cm;面积分别为=1s ( 38.48 )2cm ,=2s ( 113.10 )2cm程序:>> format bank; >> r=[3.5 6]; >> [2*pi*r;pi*r.*r]提示:圆的周长计算公式为:r L π2=,圆的面积2r S π=,其中r 为圆的半径。