RTLAB系统仿真培训知识课件资料.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《RTLAB系统仿真培训知识课件资料.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- RTLAB 系统 仿真 培训 知识 课件 资料
- 资源描述:
-
1、北京神州普惠科技有限公司北京神州普惠科技有限公司RT-LAB培训培训 产品简介产品简介2实时仿真系统用途实时仿真系统用途Rapid control prototypingHardware-in-the-loopPure SimulationcontrollerplantplantplantcontrollercontrollerI/OI/OI/O我们的相关信息 团队 雇员: 50 (40 技术 - 10 管理) 位置 Montral, Qubec, Canada Ann Arbor, Michigan, U.S.A. 主要涉足领域 汽车 航空航天 教育 机电 嵌入式控制 机器人技术Opal-R
2、T 技术之前: 1975Hydro-Quebec的网络仿真中心 焦点: 实时配电网络仿真. 需要测试一个不稳定网络的控制器 技术挑战: 高带宽 复杂模型需要大量并行混合计算 I/O数量多 结果: 20,000 平方英尺的混合仿真器,多达 30个CPU快速转到 1997加拿大航天局为国际空间站开发机器人系统 空间站远程控制器系统(Canadarm2 配置 April 19, 2001 - STS-100) 具有特殊目标的灵巧操作器SPDM(SPDM 预定投入使用 October 2003 - UF-4) 技术挑战: 手臂不能在地面支持自己-飞行之前没有实际控制系统测试! 解决方案:为研制和测试机
3、器手臂开发了一套HIL系统,同时还作为训练模拟器. Opal-RT的基于PC的建议之所以被接受是由于它的开放性和可量测性SPDM 特写 Simulink中的模型定义包含 一个54x54 的雅可比矩阵 1ms 步长 9个处理器 I/O 接口- 48 数字 I/O - 24 12-位 D/A- 78 16-位A/D - 21 数据总线通道 (HC, PTU, Cameras)- 6 编码器- 6 FMS(柔性制造系统) SPDM Task Verification FacilitySPDM 特写一些领域和应用汽车汽车混合电动车辆仿真器ECU 软件综合测试台工作台发动机运算法则开发工作站动力学ECU
4、 测试工作台 Global Electronics Inc车辆动力学仿真器 CARsim, TRUCKsim航空航天航空航天航空电子设备测试工作台可重构工程飞行模拟器飞行器试验台电力电子系统电力电子系统电子系统仿真器继电保护动力学测试平台教育教育动力学和控制试验室机械系统机械系统多体机构仿真器用于操作员培训的起重机仿真器生物医学研究测试工作台 Marintek McGill University Centre for Intelligent Machines Mechanical Simulation Corporation Mitsubishi Electric NASA Glenn Res
5、earch Center North Carolina A&T Norwegian University of Science & Technology Peugeot Pratt & Whitney Sauer-Danfoss Southwest research Institiute Toyota University of Alabama in Huntsville University of Quebec in Trois-Rivieres University of Laval University of Michigan University of Quebec in Chicou
6、timi University of Sherbrooke University of Tennessee in Knoxville University of Toronto Institute for Aerospace Studies ABB Allison Transmission Division of General Motors Aisin Corporation Antonov Automotive Technologies Bosch Bombardier Canadian National Defense Canadian Space Agency (CSA) Cummin
7、s Engine Company DENSO Corporation Dresden University of Technology cole Polytechnique cole Suprieure des Sciences Appliques de lIngnieur Mulhouse Embraer Ford Fraunhofer Institute General Motors Advanced Technology Vehicles Division Ingersoll Rand Torrington International Submarine Engineering Mass
8、achusetts Institute of Technology Plasma Science & Fusion CenterOpal-RT部分用户. 特点:实时性高 QNX系统,稳定,微内核机制 支持多CPU多核 步长更低,系统占用资源更少 方便的工具箱资源 支持众多的第三方硬件板卡 软件安装 版本支持 网络配置 License配置管理 系统组成 机箱硬件结构 板卡性能 I/O接口 模型实时化注意事项.m文件不能包含迭代运算定步长数字仿真和离线仿真区别.C,S函数都可以 模型编译过程1.系统信息2.模型分割3.Call RTW产生C代码4.进程传送C代码5.Build and link生成
9、可执行实时文件6.传送文件到主机 RT-LAB软件详细介绍 模型举例说明 模型分割介绍 RT-LAB常用工具箱及模块介绍问题问题? 上机操作及问答RT-LAB 介绍RT-LAB 介绍Opal-RT & RT-LAB 介绍为RT-LAB编辑SIMULINK模型RT-LAB下的运行范围1.建立一个简单模型2.将计算分组到子系统3.添加OpComm 模块激活通信4.鉴定状态或者得自状态的变量以最大化并行执行5.设置适当的仿真参数6.在 RT-LAB中记录初始化功能仿真基础仿真需求: 为系统动力学获得一个感知(就像在一个飞行模拟器中) 当方程过于复杂以至于找不到一个封闭形式的解答时提供解算系统因此,我
10、们为什么不从一些火箭科学开始呢艾萨克牛顿F = ma一些数学 212222)(gives to respect withsides both gintegratindistance time, mass,force,where,cdtcdtmFxt mFxdtdxtmFxdtdmmaF“双积分器”为什么是双积分器?如果对IEEE控制系统杂志来说,它足够优秀模块图表符号 21)(cdtcdtmFxProductIntegratormassforcedistancevelocityaccelerations1Integrator1s1带数据示波器仿真velocitydistanceaccelera
11、tionSignalGeneratorProductIntegrator10Constantmassforcedistancevelocityaccelerations1Integrators1在 Simulink中进行模型开发依次传递依次传递: 如果你不熟悉Simulink,请进入下一个幻灯片所展示的实例控制系统模型模块图表 如果你已经熟悉Simulink,通过从文件modelsx1_cntrl_sys_theoretical.mdl 加载模型保存几分钟控制系统模块图表 M2_initial_model.mdl仿真结果范围1.建立一个简单模型2.将计算分组到子系统3.添加OpComm 模块激
12、活通信4.鉴定状态或者得自状态的变量以最大化并行执行5.设置适当的仿真参数6.在 RT-LAB中记录初始化功能RT-LAB命名协定在在RT-LAB中,所有顶层子系统都必须以一个前缀命名,中,所有顶层子系统都必须以一个前缀命名,以此来区分它们的功能。这些前缀是以此来区分它们的功能。这些前缀是:SC_ : 控制台子系统, (大部分都有) 包含所有用户界面模块(示波器, 滑块放大器, 手动开关) 与其它所有子系统异步运行SM_ : 主子系统, (只能有一个) 包含模型的计算单元SS_ :奴隶子系统, (任何数量) 在通过多节点实现分布式处理的时候,包含模型的计算单元RT-LAB 命名协定这些顶层子系
13、统直接映射到逻辑节点。SC子系统是主机,而SM是目标机。对于分布式计算来说,SS子系统使我们可以将额外的计算分派到其他节点中。每个目标机(物力节点)的CPU都作为一个逻辑节点。 1目标机:只有SM子系统2目标机:SM和SS子系统1目标机(2 CPU):SM和SS子系统2目标机(2 CPU each):SM 和 3个SS子系统控制系统模型组成:被控对象: 被控制的物理系统.控制器:这是一套装置,能从传感 器接收数据,并能基于一 个控制运算法则的计算结 果向激励器发送控制信号, 以促使被控对象完成期望的动作。用户界面: 为用户与系统间提供接口我们将使用这个逻辑分割来创建我们的顶层子系统分级分解分级
14、分解依次传递依次传递: 使用Simulink菜单中的“Create subsystem” 命令将模块图表整合到子系统中 使用上一个幻灯片作为分解原理图的例子 适用RT-LAB命名协定范围1.建立一个简单模型2.将计算分组到子系统3.添加OpComm模块激活通信4.鉴定状态或者得自状态的变量以最大化并行执行5.设置适当的仿真参数6.在 RT-LAB中记录初始化功能OpComm通信模块RT-LAB使用OpComm模块激活并保存通信设置信息。这包括命令区域和计算节点间的通信,以及分布式仿真假定下计算节点间的通信。所有到顶层子系统的输入,在使用前都必须首先通过所有到顶层子系统的输入,在使用前都必须首先
15、通过OpComm模块模块OpComm 布局规则在计算子系统中 (SM or SS): 一个OpComm接收来自其他计算子系统的实时同步信号 一个OpComm同步接收来自控制台子系统的信号在控制台子系统 (SC 子系统): 可以嵌入一个或多个 OpComm模块接收来自不同计算节点的信号。多OpComm模块用它们自己的数据获取参数定义了独特的“获取组”。一个OpComm模块被嵌入用于接收来自SC子系统的信号 (异步网络). 一个OpComm 模块被嵌入用于接收来自其他实时子系统的信号 (这种情况下来自于SS的被控对象响应).SM子系统中的OpComm模块因为我们只从SM子系统中接收,所以在奴隶子系
16、统中只需要一个OpComm模块。SS子系统中的OpComm模块SC子系统中的OpComm模块对于控制台来说,我们使用一个还是两个OpComm模块取决于我们想要设置几个获取组。获取组使我们可以对不同的信号组定义不同的优先权和获取参数。M2_final_model.mdl稳定表观抖动记住,因为SC(控制台)子系统相对于主计算(SM和SS)是异步运行的:控制台子系统不包括实时模型依赖的计算只有来自于同一个获取组(OpComm)的信号才能互相比较,来自不同OpComm模块的信号不是一起同步的。仿真时间并不是模型时间的精确提示。(更多相关内容在模型 4).OpComm配置依次传递依次传递: 向模型增加O
17、pComm模块 为控制台定义两个获取组范围1.建立一个简单模型2.将计算分组到子系统3.添加OpComm模块激活通信4.鉴定状态或者得自状态的变量以最大化并行执行5.设置适当的仿真参数6.在 RT-LAB中记录初始化功能最大化并行执行当计算节点仅交换优先信号时,RT-LAB最大化并行。为了这点,奴隶子系统和主子系统必须在读取它们的输入之前计算并发送它们的输出(在同一步内)。RT-LAB通过考察输出口的名字后缀“_s”来区分奴隶子系统和主子系统计算输出的优先权。带有“_s” 的输出通过溯流而上计算,直到一个动态元件被发现;如果没有就报错。你必须区分状态和得自状态的信号,以便激活子系统的你必须区分
18、状态和得自状态的信号,以便激活子系统的并行计算。并行计算。最大化并行执行什么是状态什么是状态?状态可以定义为输出(信号)的计算仅取决于之前输入或输出。模块示例是一个引入“积分器”和“存储器”模块的状态。yz = yz-1 + xz-1tyz = xz-1yz = Axz“增益”模块不能产生状态,因为Z步的输出取决于同一步内它的输入。最佳案例最佳案例 (完全并行执行)最大化并行执行在每一步 RT-LAB如下执行:1. ss_subsystem 发送到 sm_subsystem2. sm_subsystem 发送到 ss_subsystem3. 两个子系统同时计算在每一步 RT-LAB如下执行:
19、1. ss_subsystem 发送到 sm_subsystem2. sm_subsystem计算3. sm_subsystem 发送到 ss_subsystem4. ss_subsystem计算最差案例最差案例 (串行执行)最大化并行执行在每一步 RT-LAB如下执行:1. ss_subsystem 发送到 sm_subsystem2. sm_subsystem中的增益计算3. sm_subsystem 发送到 ss_subsystem4. ss_subsystem 和剩余的 sm_subsystem计算中间案例中间案例 (部分并行执行)最大化并行执行RT-LAB 死锁!1. sm_subs
20、ystem 等待 ss_subsystem2. ss_subsystem 等待 sm_subsystem死锁死锁最大化并行执行最大化并行执行为了最大化并行执行,你必须将你的模型分割,为了最大化并行执行,你必须将你的模型分割,以便仅交换计算子系统(以便仅交换计算子系统( SM 或者或者 SS )间的优)间的优先信号(状态或者源于状态)。先信号(状态或者源于状态)。不幸地是在某些情况下,并不是总能以这种方式分割并使模型易于管理转换成优先输出通过使用延迟模块,你可以将直通信号转换成优先信号。小心布置延迟模块可以消除代数环和最大化并行。:延迟模块必须小心操作,因为它可能改变模型的动力学.你必须将之前和
21、之后的结果进行比较,以确保延你必须将之前和之后的结果进行比较,以确保延迟的影响是可接受的。迟的影响是可接受的。最大化并行执行在 ss_plant 子系统,输出是一个状态,所以我们可以简单的更改输出口的名字,告诉RT-LAB这是个优先信号。状态M2_final_model.mdl转换成优先输出sm_controller 子系统是一个直通子系统 ,所以如果我们想要并行执行的话,就必须引入一个状态。然后,我们要更改输出口的名字,添加“_s”. 转换成优先输出sm_controller 子系统是一个直通子系统 ,所以如果我们想要并行执行的话,就必须引入一个状态。然后,我们要更改输出口的名字,添加“_s
22、”.StateM2_final_model.mdl转换成优先输出你必须将之前和之后的结果进行比较,以确保延你必须将之前和之后的结果进行比较,以确保延迟的影响是可接受的。迟的影响是可接受的。这个可以接受吗? 这是你的调用。最大化并行执行依次执行依次执行: 添加 “_s” 后缀以识别优先(状态或者源于状态)输出 当需要的时候添加延迟模块转换成非优先输出 在Simulink下运行,确定模型动力学未改变范围1.建立一个简单模型2.将计算分组到子系统3.添加OpComm模块激活通信4.鉴定状态或者得自状态的变量以最大化并行执行5.设置合适的仿真参数6.在 RT-LAB中记录初始化功能实时仿真是什么? 决
23、不丢失它的时间表的仿真 (通常量度标准是s或者ms) 以实际速度运行用途? 硬件在环 (HIL) 控制系统测试工作台 操作员训练 基于模型的设计 快速控制原型实时的缺陷实时仿真每一步都需要确定的计算,这就是说它不允许(极大的)迭代的解算方法。 变步长积分器是迭代的,这就意味着我们必须使用固定步长的解算器,这样我们必须再次确认一个验证良好的参考集。 实验(经验)数据 当没有实验(经验)数据可获得时,变步长解算器可以作为一个 参考 解算代数环是迭代的代数环当一个直通模块的输入口由该模块自己的输出驱动,可以是直接的,也可以是通过其他的直通模块的反馈通道,这样就产生了代数环。大部分代数环并不能通过检查
24、解决。它非常容易产生带有多重代数状态变量( z1, z2等等)的矢量代数环,如这个模型所示。对固定步长和变步长的测试结果你必须对验证良好的参考集进行确认,以确保选择的步长大你必须对验证良好的参考集进行确认,以确保选择的步长大小产生可接受的结果。小产生可接受的结果。这个可以接受吗? 这是你的调用.假使.呢?适当的固定步长解算器并不总是可能的,尤其是存在下面的情况 积分器复位 来自simPowerSystems的模块特殊工具可能带来这些问题: RT-Events模块库 simPowerSystems附加的ARTEMIS 设置仿真参数更改SIMULINK参数: 使用固定步长解算器 (例如ODE4 就
25、是非常通用的) 为你模型的动力学选择合适的固定步长 (1ms 是典型的机械系统、50us 电气系统).验证固定时间步长积分依次传递依次传递: 运行模型: M2_variable_step.mdl, M2_fixed_step.mdl找到一个适当的固定时间步长 (以 0.5s开始 ,然后逐步减小) 在Simulink下运行,以确定模型动力学是无变化的范围1.建立一个简单模型2.将计算分组到子系统3.添加OpComm模块激活通信4.鉴定状态或者得自状态的变量以最大化并行执行5.设置合适的仿真参数6.在RT-LAB中记录初始化功能RT-LAB中初始化功能如果你的模型依赖于MATLAB变量, 你就需要
展开阅读全文