480 likes | 674 Views
机电控制工程技术. 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是一种用于 算法 开发、 数据可视化 、 数据分析 以及 数值计算 的高级技术计算语言和 交互式环境。.
E N D
机电控制工程技术 Matlab建模与仿真分析 2012年3月22日
1.Matlab简介及软件操作 1 2.Simulink软件操作 2 3.直流伺服电机仿真分析实践 3
1.1Matlab简介 MATLAB (Matrix Laboratory) MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国The MathWorks公司出品的商业数学软件。MATLAB是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。
典型应用 数据处理(平滑滤波) 图形显示(3D绘图) 建模仿真(温度自动调节系统)
1.2Matlab特点及功能 • 1.友好的工作平台和编程环境 • 2.强大的科学计算数据处理能力 • 3. 简单易用的编程语言 • 4.出色的图形处理功能 • 5.应用广泛的模块集合工具箱
1.2.1 Matlab的编程环境 Matlab既是一种语言,又是一种编程环境。Matlab提供了很多方便用户的工具,用于管理变量、输入输出数据以及生成和管理M文件。以下以Matlab 7.11简介之。 Matlab 7.11的界面是一个web浏览器形式的工作环境,如下图所示。
Matlab工作窗口布局 主菜单 Simulink仿真工具 当前目录 GUI图形用户界面开发工具 工作空间 命令窗口 工具栏 历史命令窗口
1.2.2 Matlab的计算基础 • Matlab变量名命名规则 • 变量名区分大小写 • 变量名以英文字母开始 • 变量名长度不得超过31位 • Matlab语言最基本的赋值语句结构为 变量名列表=表达式
1.2.2 Matlab的计算基础 • Matlab软件的最大特色是强大的矩阵运算功能,在Matlab软件中,所有的计算都是以矩阵为单位进行的。 创建矩阵: 矩阵的转置: 求矩阵的下三角矩阵:
1.2.3 Matlab的程序设计基础 • Matlab编程中最核心的部分是.m文件,此外还有交互式的命令行编程。 • M文件按其内容和功能可以分为脚本M文件和函数M文件两大类。
1.2.3 Matlab的程序设计基础 • 脚本 M文件 脚本M文件是许多Matlab代码按顺序组成的命令集合,不接受参数的输入和输出,与Matlab工作空间共享变量空间。 2.函数M文件 函数M文件是为了实现一个单独功能的代码块。与脚本M文件不同的是,函数M文件需要接受参数的输入和输出。函数M文件有自己独立的内部变量空间。 Matlab也允许用户编写自己所需的函数,其扩展名为.m,其中必须以关键字function开头. 运算结果
希望绘制一个作为时间函数的正弦波的图像。首先产生一个时间向量,然后计算每一时刻的正弦值。 t=0:0.25:7; y = sin(t); plot(t,y) 1.2.4 Matlab的绘图基础
1.2.5Matlab的工具箱 • GUI • 可以利用Matlab GUI工具箱创建可视化界面,创建更加有好的人机交互环境。 • SIMULINK
Matlab简介及软件操作 1 Simulink软件操作 2 直流伺服电机仿真分析实践 3
2.1Simulink简介 simulink 是matlab的重要组件之一,是实现动态系统建模、仿真和分析的一个集成环境,它得matlab的功能得到进一步扩展,通过对一些典型功能模块的可视化建模,省去了复杂的代码编写,使得工程系统的模型搭建变得简单,清晰,高效,把理论研究和工程实践有机的结合在一起。 Simulink模型的一般结构 输入 系统 输出 测量
2.2 Simulink的使用 • 启动Simulink:启动MATLAB之后,在工具栏上用鼠标点击图标 就可以启动Simulink了 。 • MATLAB工具栏
2.2 Simulink的使用 • 启动Simulink之后的软件画面为
2.2Simulink的使用 • Simulink常用模块 • Commonly Used Blocks(常用模块): Gain(增益)、Sum(连接)、 Scope(示波器)、Integrator(积分)
Continuous: Derivation(微分)、Transfer Fcn(传递函数) 2.2 Simulink的使用
Sources: Step(阶跃信号)、SinWave(正弦信号)、 Signal Generator(信号发生器)等 2.2 Simulink的使用
2.3 Simulink建模简例 这里我们选择直流电机模型中的一个简单环节,来演示simulink中建模的基本方法。 线圈转动产生的反电动势Ea与电机的转速Wm成正比,相应的比例系数为Ce 传递函数 输出 输入 测量
Matlab简介及基本使用 1 Simulink使用 2 直流伺服电机仿真分析实践 3
3.1直流伺服电机系统分析 直流伺服电机建模例子: 直流电机电枢回路示意图
物理方程 3.1直流伺服电机系统分析
3.1直流伺服电机系统分析 拉氏变换
注意:电机有两个输入,一是电压输入,二是负注意:电机有两个输入,一是电压输入,二是负 载 根据拉氏变换公式在simulink中建立系统框图, 在simulink中选取相应模块得到: 3.2直流伺服电机系统建模
额定电压 24V 反电动势常数 0.08v·s/rad 电机电阻 1.2欧 转矩常数 0.08N·m/A 电机电感 1mH 等效阻尼系数(参考) 0.001 额定转速 2620rpm 电机转子转动惯量 3.2直流伺服电机系统建模 直流电机参数表
得到代入参数的simulink框图: 3.2直流伺服电机系统建模
点击工具栏上的开始按钮 后,双击Scope,得到仿真图: 3.3直流伺服电机系统仿真分析 2*step 1*step 角速度(rad/s) 角速度(rad/s) 仿真时间(s) 仿真时间(s)
电机额定转速与仿真结果的对比 角速度(rad/s) 转速(r/min) 274.5 2620 仿真时间(s) 仿真时间(s) 3.3直流伺服电机系统仿真分析 输入:额定电压24V 输入:额定电压24V 额定转速为2620rpm,仿真结果2600rpm,在误差允许范围内,两者近似相等
以上是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);
系统阶跃响应函数: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直流伺服电机系统仿真分析 控制系统仿真分析命令:
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文件建模并分析系统:
阶跃响应及其分析figure(1) +5% -5% 3.3直流伺服电机系统仿真分析
Bode图 figure(2) 直流电机 相位裕度: 幅频0dB点 幅值裕量: 因为相频特性曲线与 线不相交 3.3直流伺服电机系统仿真分析 该系统的开环传递函数为直流电机环节的传递函数,则其bode图及相应分析如下
Nyquist图 figure(3) 直流电机 3.3直流伺服电机系统仿真分析 奈氏曲线(幅相特性曲线)绕点: 逆时针转过圈数 开环极点数 (开环极点为开环传递函数分母 的正实部根个数)
Matlab解算的稳定裕度 figure(4) 与刚才我们求得的 结果比较: 3.3直流伺服电机系统仿真分析
3.4 M文件分析参数对系统的影响 • 使用脚本.m文件和函数.m函数文件; • 使用绘图功能 • 两种对比方式:“多子图”和“单图+图例”
增益环节K对系统性能的影响-多子图 3.4 M文件分析参数对系统的影响
Bm对系统性能的影响-“单图+图例” 3.4 M文件分析参数对系统的影响
小结 1.学会Matlab的基本使用方法 2.能够应用Matlab Simulink工具箱对机电系统进行建模仿真分析 3.能够用Matlab对仿真结果进行分析
作业要求 建立如图(1)所示的数控工作台的直线运动单元速度控制系统数学模型,以给定电压为输入、以实际丝杠转速为输出,求出系统开环传递函数;参考给定的相关数据表1,确定关键参数,进行相应简化处理后进行MATLAB/Simulink仿真分析,分析结构参数对系统性能的影响,并判断稳定性;比较matlab仿真分析结果与直线运动单元的实际运行结果,进行模型验证。
作业要求 选作: 建立如图(2)所示的数控工作台直线运动单元的速度闭环的数学模型,以给定电机转速为输入、以实际电机轴转速为输出,求出系统闭环传递函数判断稳定性;参考给定的相关数据表1。 比较matlab仿真分析结果与直线运动单元的实际运行结果,进行模型验证。
作业要求 提交形式和要求 文件名:学号+作业一+姓名:如39072101作业一张三 时间:两周 作业提交截止时间:2012-04-05