第十四讲: Simulink仿真-I Matlab计算与仿真技术 王国利 信息科学与技术学院 中山大学 http://human-robot.sysu.edu.cn/course 王国利 http://human-robot.sysu.edu.cn 信息科学与技术学院 中山大学
第十四讲提纲 Simulink 仿真-I - Simulink 概述 - Simulink 模块框图建模
Simulink仿真-I Simulink 概述 Simulation + Link - Simulink是一种仿真工具和环境 寄生在Matlab环境(共享工作空间) 完成对系统的建模, 仿真和分析 采用基于时间模块化框图 (Time-based Block Diagram) 支持拖放(drag & place)的交互设计 有内嵌建模模块库(block library)
Simulink仿真 (续) Simulink 建模与仿真 - 系统模型(model)概念 模型: 系统行为的定量描述 传递: 输入信号到输出信号 分类: 静态模型 代数方程(关系) 动态模型 微分方程(组) 要素: 输入/输出/状态
Simulink仿真 (续) - 模型框图表示 (信号是关于时间的函数) - 模型实例 state x input u output y Simulink仿真 (续) - 模型框图表示 (信号是关于时间的函数) - 模型实例 静态模型 -- 信号发生器 输入和输出都为 系统为恒等映射=I.D state x input u output y
Simulink仿真 (续) 自主离散动态模型-兔子问题 输入: u(n)=0 % 没有外界能量介入 状态: x(n)=[F(n+1);F(n+2)] 输出: y(n)=F(n+1)/F(n+2):=h[x(n)] 模型: x(n+1)=Ax(n), x(0)=[1;1] 其中 A=[0 1;1 1]
Simulink仿真 (续) 连续动力学系统: 弹簧质点阻尼系统 输入: u(t)=f(t) 状态: x(t)=[d(t);d’(t)] 输出: y(y)=d(t)=c’x(t), c=[1;0] 建模机理:质点动力学 状态方程:x’(t)=Ax(t)+bu(t) y(t)=c’x(t) 其中 A=[0 1;-k/m –c/m]; b=[0;1]
Simulink仿真 (续) 模块单元: 内部状态的描述 模块连接: 一个模块输出作为另一模块输入 - Simulink 建模模式 模块框图描述方式 模块单元: 内部状态的描述 输入/输出信号引角 模块的几何属性 模块连接: 一个模块输出作为另一模块输入 模块框图: 由若干模块通过信号线连接形成 框图模型: 定义了系统信号、状态的关联 框图运算: 指定起始时间到终止时间
Simulink仿真 (续) 模块库提供模型设计的模板 内嵌模块库(build-in block library) 类比Matlab的标准函数/工具箱 模块库提供模型设计的模板 采用图标表示 模块的定义 几何属性(外观修饰)定义 模型结构定义 模型参数定义
Simulink仿真 (续) - 模块的几何属性 大小/姿态/颜色/阴影/标注…
Simulink仿真 (续) - 模块的结构定义 - 模块的参数定义 设定端口数据类型 设增益值
Simulink仿真 (续) - Simulink 交互式图形界面 模块库+模块框图编辑白板 模块框图建模的交互模式 添加模块操作 在模块库中选取模块 拖入模块框图编辑器 添加信号连接线 选取信源端口 引出信号连线 直至信宿端口
Simulink仿真 (续) - Simulink 交互式图形界面(续) 编辑模块框图 复制/删除/粘贴模块/信号线 设置/修改模块-信号线结构属性 设置/修改模块的模型参数 模块框图文件 Fileopen/new/save/save as/… 确省后缀名: *.mdl 启动交互式界面 激活 Matlab 工具拦图标
Simulink仿真 (续) 模块库 浏览器
Simulink仿真 (续) 模块框图编辑器
Simulink仿真 (续) - Simulink模块化框图建模实例 静态模型建模 任务: 正余旋模拟双通道信号观测仪 模块框图: 正旋信号发生器:信源模块库 Source 多通道信号合成器:信号路由库 Signal Routing 多通道示波器: 信宿模块库 Sink 生成余旋的积分运算: 数学函数库 Math 信号发生器 积分 双通道合成器 示波器
Simulink仿真 (续) - Simulink模块化框图建模实例(续) 从信源模块库中选取摸板(拖) 创建正旋信号发生器(放)
Matlab绘图 (续) - Simulink模块化框图建模实例(续) 依次创建所需的模块单元:
Simulink仿真 (续) 依次创建信号连接线
Simulink仿真 (续) 正旋信号发生器模块参数设定 Sine Wave Block Parameters Amplitude = 1 Frequency(rad/sec) = 0.25 * 2*pi Phase(rad) = 0 Sample Time
Simulink仿真 (续) 积分器模块参数设定 Integrator Block Parameters External Reset = None Initial Conditions = 0 Limit output = Not Checked Show saturation point Show state port Absolute tolerance = auto
Simulink仿真 (续) 仿真参数设定 激活工具栏运行按钮 双击示波器图标 显示获取的信号 图形与匹配窗口
第十五讲预告: SIMULINK仿真-II 结束语 第十五讲预告: SIMULINK仿真-II (2008年6月4日)