1 / 48

2012 年 3 月 22 日

机电控制工程技术. Matlab 建模与仿真分析. 2012 年 3 月 22 日. 1.Matlab 简介及软件操作. 1. 2.Simulink 软件操作. 2. 3. 直流伺服电机仿真分 析实践. 3. 1.1Matlab 简介. MATLAB ( Mat rix Lab oratory) MATLAB 是矩阵实验室( Matrix Laboratory )的简称,是美国 The MathWorks 公司出品的商业数学软件。 MATLAB是一种用于 算法 开发、 数据可视化 、 数据分析 以及 数值计算 的高级技术计算语言和 交互式环境。.

giona
Download Presentation

2012 年 3 月 22 日

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 机电控制工程技术 Matlab建模与仿真分析 2012年3月22日

  2. 1.Matlab简介及软件操作 1 2.Simulink软件操作 2 3.直流伺服电机仿真分析实践 3

  3. 1.1Matlab简介 MATLAB (Matrix Laboratory) MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国The MathWorks公司出品的商业数学软件。MATLAB是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。

  4. 典型应用 数据处理(平滑滤波) 图形显示(3D绘图) 建模仿真(温度自动调节系统)

  5. 1.2Matlab特点及功能 • 1.友好的工作平台和编程环境 • 2.强大的科学计算数据处理能力 • 3. 简单易用的编程语言 • 4.出色的图形处理功能 • 5.应用广泛的模块集合工具箱

  6. 1.2.1 Matlab的编程环境 Matlab既是一种语言,又是一种编程环境。Matlab提供了很多方便用户的工具,用于管理变量、输入输出数据以及生成和管理M文件。以下以Matlab 7.11简介之。 Matlab 7.11的界面是一个web浏览器形式的工作环境,如下图所示。

  7. Matlab工作窗口布局 主菜单 Simulink仿真工具 当前目录 GUI图形用户界面开发工具 工作空间 命令窗口 工具栏 历史命令窗口

  8. 1.2.2 Matlab的计算基础 • Matlab变量名命名规则 • 变量名区分大小写 • 变量名以英文字母开始 • 变量名长度不得超过31位 • Matlab语言最基本的赋值语句结构为 变量名列表=表达式

  9. 1.2.2 Matlab的计算基础 • Matlab软件的最大特色是强大的矩阵运算功能,在Matlab软件中,所有的计算都是以矩阵为单位进行的。 创建矩阵: 矩阵的转置: 求矩阵的下三角矩阵:

  10. 1.2.3 Matlab的程序设计基础 • Matlab编程中最核心的部分是.m文件,此外还有交互式的命令行编程。 • M文件按其内容和功能可以分为脚本M文件和函数M文件两大类。

  11. 1.2.3 Matlab的程序设计基础 • 脚本 M文件 脚本M文件是许多Matlab代码按顺序组成的命令集合,不接受参数的输入和输出,与Matlab工作空间共享变量空间。 2.函数M文件 函数M文件是为了实现一个单独功能的代码块。与脚本M文件不同的是,函数M文件需要接受参数的输入和输出。函数M文件有自己独立的内部变量空间。 Matlab也允许用户编写自己所需的函数,其扩展名为.m,其中必须以关键字function开头. 运算结果

  12. 希望绘制一个作为时间函数的正弦波的图像。首先产生一个时间向量,然后计算每一时刻的正弦值。 t=0:0.25:7; y = sin(t); plot(t,y) 1.2.4 Matlab的绘图基础

  13. 1.2.5Matlab的工具箱 • GUI • 可以利用Matlab GUI工具箱创建可视化界面,创建更加有好的人机交互环境。 • SIMULINK

  14. Matlab简介及软件操作 1 Simulink软件操作 2 直流伺服电机仿真分析实践 3

  15. 2.1Simulink简介 simulink 是matlab的重要组件之一,是实现动态系统建模、仿真和分析的一个集成环境,它得matlab的功能得到进一步扩展,通过对一些典型功能模块的可视化建模,省去了复杂的代码编写,使得工程系统的模型搭建变得简单,清晰,高效,把理论研究和工程实践有机的结合在一起。 Simulink模型的一般结构 输入 系统 输出 测量

  16. 2.2 Simulink的使用 • 启动Simulink:启动MATLAB之后,在工具栏上用鼠标点击图标 就可以启动Simulink了 。 • MATLAB工具栏

  17. 2.2 Simulink的使用 • 启动Simulink之后的软件画面为

  18. 2.2Simulink的使用 • Simulink常用模块 • Commonly Used Blocks(常用模块): Gain(增益)、Sum(连接)、 Scope(示波器)、Integrator(积分)

  19. Continuous: Derivation(微分)、Transfer Fcn(传递函数) 2.2 Simulink的使用

  20. Sources: Step(阶跃信号)、SinWave(正弦信号)、 Signal Generator(信号发生器)等 2.2 Simulink的使用

  21. 2.3 Simulink建模简例 这里我们选择直流电机模型中的一个简单环节,来演示simulink中建模的基本方法。 线圈转动产生的反电动势Ea与电机的转速Wm成正比,相应的比例系数为Ce 传递函数 输出 输入 测量

  22. Matlab简介及基本使用 1 Simulink使用 2 直流伺服电机仿真分析实践 3

  23. 3.1直流伺服电机系统分析 直流伺服电机建模例子: 直流电机电枢回路示意图

  24. 物理方程 3.1直流伺服电机系统分析

  25. 3.1直流伺服电机系统分析 拉氏变换

  26. 3.2直流伺服电机系统建模

  27. 3.2直流伺服电机系统建模

  28. 注意:电机有两个输入,一是电压输入,二是负注意:电机有两个输入,一是电压输入,二是负 载 根据拉氏变换公式在simulink中建立系统框图, 在simulink中选取相应模块得到: 3.2直流伺服电机系统建模

  29. 额定电压 24V 反电动势常数 0.08v·s/rad 电机电阻 1.2欧 转矩常数 0.08N·m/A 电机电感 1mH 等效阻尼系数(参考) 0.001 额定转速 2620rpm 电机转子转动惯量 3.2直流伺服电机系统建模 直流电机参数表

  30. 得到代入参数的simulink框图: 3.2直流伺服电机系统建模

  31. 点击工具栏上的开始按钮 后,双击Scope,得到仿真图: 3.3直流伺服电机系统仿真分析 2*step 1*step 角速度(rad/s) 角速度(rad/s) 仿真时间(s) 仿真时间(s)

  32. 电机额定转速与仿真结果的对比 角速度(rad/s) 转速(r/min) 274.5 2620 仿真时间(s) 仿真时间(s) 3.3直流伺服电机系统仿真分析 输入:额定电压24V 输入:额定电压24V 额定转速为2620rpm,仿真结果2600rpm,在误差允许范围内,两者近似相等

  33. 以上是simulink中的仿真 接下来是使用matlab中控制系统仿真命令进行相关仿真; matlab中常用的线性控制系统命令: sys = tf(num,den); 生成传递函数,num为传递函数分子多项式的系数矩阵,den为传递函数分母多项式的系数矩阵; 本系统传递函数为: 3.3直流伺服电机系统仿真分析 输入如下命令建模: num=[0.08];den[1e-8,1.25e-5,0.007]; sys=tf(num,den);

  34. 系统阶跃响应函数:step(sys); 系统bode图函数:bode(sys); 系统nyqiust图函数:nyquist(sys); 系统稳定裕度函数: [mag,phase,w] = bode(sys); [ gm,pm,wcg, cp] = margin ( mag,phase,w ); gm为增益裕度;pm为相角裕度; 3.3直流伺服电机系统仿真分析 控制系统仿真分析命令:

  35. num=[0.08]; den=[1e-8,1.25e-5,0.007]; sys=tf(num,den); %求得系统的传递函数 figure(1) step(sys); %绘制系统的阶跃响应曲线 figure(2) bode(sys); grid on;%绘制系统的bode图 figure(3) nyquist(sys); grid on;%绘制系统的nyquist曲线 figure(4) [mag,phase,w] = bode(sys); [gm,pm,wcg, cp] = margin ( mag,phase,w );%求系统的稳定裕度 bode(sys); grid on; title ( ['gain margin = ' num2str(gm),' phase margin = ' num2str(pm)] ) 3.3直流伺服电机系统仿真分析 编辑DcmodelDemo.m文件建模并分析系统:

  36. 阶跃响应及其分析figure(1) +5% -5% 3.3直流伺服电机系统仿真分析

  37. Bode图 figure(2) 直流电机 相位裕度: 幅频0dB点 幅值裕量: 因为相频特性曲线与 线不相交 3.3直流伺服电机系统仿真分析 该系统的开环传递函数为直流电机环节的传递函数,则其bode图及相应分析如下

  38. Nyquist图 figure(3) 直流电机 3.3直流伺服电机系统仿真分析 奈氏曲线(幅相特性曲线)绕点: 逆时针转过圈数 开环极点数 (开环极点为开环传递函数分母 的正实部根个数)

  39. Matlab解算的稳定裕度 figure(4) 与刚才我们求得的 结果比较: 3.3直流伺服电机系统仿真分析

  40. 3.4 M文件分析参数对系统的影响 • 使用脚本.m文件和函数.m函数文件; • 使用绘图功能 • 两种对比方式:“多子图”和“单图+图例”

  41. 增益环节K对系统性能的影响-多子图 3.4 M文件分析参数对系统的影响

  42. Bm对系统性能的影响-“单图+图例” 3.4 M文件分析参数对系统的影响

  43. 小结 1.学会Matlab的基本使用方法 2.能够应用Matlab Simulink工具箱对机电系统进行建模仿真分析 3.能够用Matlab对仿真结果进行分析

  44. 作业要求 建立如图(1)所示的数控工作台的直线运动单元速度控制系统数学模型,以给定电压为输入、以实际丝杠转速为输出,求出系统开环传递函数;参考给定的相关数据表1,确定关键参数,进行相应简化处理后进行MATLAB/Simulink仿真分析,分析结构参数对系统性能的影响,并判断稳定性;比较matlab仿真分析结果与直线运动单元的实际运行结果,进行模型验证。

  45. 作业要求 选作: 建立如图(2)所示的数控工作台直线运动单元的速度闭环的数学模型,以给定电机转速为输入、以实际电机轴转速为输出,求出系统闭环传递函数判断稳定性;参考给定的相关数据表1。 比较matlab仿真分析结果与直线运动单元的实际运行结果,进行模型验证。

  46. 作业注意事项

  47. 作业要求 提交形式和要求 文件名:学号+作业一+姓名:如39072101作业一张三 时间:两周 作业提交截止时间:2012-04-05

  48. 谢谢

More Related