当前位置:文档之家› adams和simulink联合仿真的案例分析

adams和simulink联合仿真的案例分析

adams和simulink联合仿真的案例分析
adams和simulink联合仿真的案例分析

相信大家在联合仿真ADAMS和SIMULINK时都会遇到很多的问题:ADAMS/contro中的例子ball_beam通过联合仿真,更容易理解adams和simulink的联合仿真精髓。小球在一脉冲力的作用下沿着横梁滚动,此时梁的两端受力不平衡,梁的一段倾斜,为了使得小球不掉下横梁,在横梁上施加一个绕Z轴的力矩,横梁达到一定的角度之后逆向转动,然后小球就在这个作用力矩的控制下来回滚动而不掉下横梁!其中控制力矩在整个过程中是个动态变化的,力矩Torque_In是通过位移Position 和横梁转角Beam_Angle确定,这个是在simulink中通过框图完成的。

首先我申明一下我用的是adams2003和matlab6.5

以下我说明一下我的操作步骤:

1、把control中的ball_beam文件copy到另外一个文件夹下,同时设置adams和matlab的默认路径即为ball_beam文件夹,这样可以省略很多不必要的麻烦!

2、用aview打开ball_beam.cmd文件,先试试仿真一下,可以看到小球会在脉冲的作用下滚动,仿真时间最好大于8s

3、载入control模块,点击tools|plugin manager在control框选定。

4、点击control|plant export在file prefix下输入你的文件名,这个可以随便的,我输入的是myball,在plant input点击右键点

击guess选定tmp_MDI_PINPUT,在tmp_MDI_PINPUT中就是输入力矩Torque_In,只有一个输入参数;同样在plant output 中点击右键guess选定tmp_MDI_POUTPUT,这是模型的输出变量横梁转角Beam_Angle和小球与横梁中心轴的距离position。control

package选择matlab,type是non_linear,初始化分析选择no,然后按ok!此时m文件已经生成了!

5、打开matalb,设置你的工作路径在ball_beam文件夹上,键入myball,马上有

%%% INFO : ADAMS plant actuators names :

1 Torque_In

%%% INFO : ADAMS plant sensors names :

1 Beam_Angle

2 Position

出现

6、再键入adams_sys,弹出一个控制框图,这时可以新建一个mdl文件,将adams_sub拖入你新建的mdl框图中,其实再这里有一个偷懒的办法,就是在matlab中打开ball_beam.mdl文件,然后把他的那个adams_sub用你的刚产生的这个代替,然后另存为my_ball.mdl!

7、设置仿真参数,在你刚建立的my_ball.mdl框图上的simulation parameter里设置一下stop time为10s,步长为ode15s。然后双击adams_sub打开adams_pant,再双击adams_pant弹出一个设置框图,在animation mode这一栏中选择interactive这是交互的,如果选择batch的话在联合仿真中看不到adams模型的运行情况(个人这样理解的:)!最后保存一下!

8、开始联合仿真start simulation,就会出现asolver,弹出dos 文件,这个不管他,然后adams模型中的小球开始运动,估计会比较慢,最后会出现小球在横梁上运动而不掉下横梁!

这是我在做这个模型的过程中的一些东东,写的比较杂,呵呵!如果大家觉得好的话可以顶一下,希望能给那些在adams和simulink联合仿真而徘徊的xdjm一点启示就行了!

note:这个例子是adams/cotrol自带的,可以在example中找到!

关于下述错误,我找到一个解决方法

Error reported by S-function 'adams_plant' in 'my_ball/adams_sub/ADAMS Plant/S-Function':

error in startup Could not connect to ADAMS server

编辑myball.m文件,将第24行

ADAMS_sysdir = strcat(topdir, '');

替换为第29行

ADAMS_sysdir = '...' ;依各人配置不同,具体路径有所区别改完之后保存即可

CarSim与Simulink联合仿真

CarSim与Simulink联合仿真 1 软件介绍 在MATLAB中,Simulink是用来建模、仿真和分析动态多维系统的交互工具。可以使用Simulink提供的标准模型库或者自行创建模型库,描述、模拟、评价和精化系统行为,同时,Simulink和MATLAB之间的联系十分便捷,可以使用一个灵活的操作系和应用广泛的分析和设计工具。最后,除了可以使用Simulink建模和仿真之外,还可以通过其他软件联合来完成更多的分析任务,如CarSim、ADAMS、AMEsim等许多软件。 CarSim是专门针对车辆动力学的仿真软件,CarSim模型在计算机上运行的速度比实时快3-6倍,可以仿真车辆对驾驶员,路面及空气动力学输入的响应,主要用来预测和仿真汽车整车的操纵稳定性、制动性、平顺性、动力性和经济性,同时被广泛地应用于现代汽车控制系统的开发。CarSim可以方便灵活的定义试验环境和试验过程,详细的定义整车各系统的特性参数和特性文件。CarSim软件的主要功能如下: ●适用于以下车型的建模仿真:轿车、轻型货车、轻型多用途运输车及SUV; ●可分析车辆的动力性、燃油经济性、操纵稳定性、制动性及平顺性; ●可以通过软件如MA TLAB,Excel等进行绘图和分析; ●可以图形曲线及三维动画形式观察仿真的结果; ●包括图形化数据管理界面,车辆模型求解器,绘图工具,三维动画回放工具,功率 谱分析模块; ●程序稳定可靠; ●软件可以实时的速度运行,支持硬件在环,CarSim软件可以扩展为CarSim RT, CarSim RT 是实时车辆模型,提供与一些硬件实时系统的接口,可联合进行HIL 仿真; ●先进的事件处理技术,实现复杂工况的仿真; ●友好的图形用户界面,可快速方便实现建模仿真; ●提供多种车型的建模数据库; ●可实现用户自定义变量的仿真结果输出; ●可实现与simulink的相互调用; ●多种仿真工况的批运行功能; 2 CarSim与Simulink联合仿真 2.1 Simulink接口 1) 变量由Simulink导入CarSim(导入变量) 可由Simulink导入到CarSim中的变量可达160多个,主要分为以下几部分: ?控制输入

Simulink仿真参数设定

simulink中的solver各选项表示的意思ZZ 2007-05-11 21:12 | (分类:默认分类) 构建好一个系统的模型之后,接下来的事情就是运行模型,得出仿真结果。运行一个仿真的完整过程分成三个步骤:设置仿真参数,启动仿真和仿真结果分析。 一、设置仿真参数和选择解法器 设置仿真参数和选择解法器,选择Simulation菜单下的Parameters命令,就会弹出一个仿真参数对话框,它主要用三个页面来管理仿真的参数。 Solver页,它允许用户设置仿真的开始和结束时间,选择解法器,说明解法器参数及选择一些输出选项。 Workspace I/O页,作用是管理模型从MATLAB工作空间的输入和对它的输出。 Diagnostics页,允许用户选择Simulink在仿真中显示的警告信息的等级。 1、Solver页 此页可以进行的设置有:选择仿真开始和结束的时间;选择解法器,并设定它的参数;选择输出项。 仿真时间:注意这里的时间概念与真实的时间并不一样,只是计算机仿真中对时间的一种表示,比如10秒的仿真时间,如果采样步长定为0.1,则需要执行100步,若把步长减小,则采样点数增加,那么实际的执行时间就会增加。一般仿真开始时间设为0,而结束时间视不同的因素而选择。总的说来,执行一次仿真要耗费的时间依赖于很多因素,包括模型的复杂程度、解法器及其步长的选择、计算机时钟的速度等等。 仿真步长模式:用户在Type后面的第一个下拉选项框中指定仿真的步长选取方式,可供选择的有Variable-step(变步长)和Fixed-step(固定步长)方式。变步长模式可以在仿真的过程中改变步长,提供误差控制和过零检测。固定步长模式在仿真过程中提供固定的步长,不提供误差控制和过零检测。用户还可以在第二个下拉选项框中选择对应模式下仿真所采用的算法。 变步长模式解法器有:ode45,ode23,ode113,ode15s,ode23s,ode23t,ode23tb和discrete。ode45:缺省值,四/五阶龙格-库塔法,适用于大多数连续或离散系统,但不适用于刚性(stiff)系统。它是单步解法器,也就是,在计算y(tn)时,它仅需要最近处理时刻的结果y(tn-1)。一般来说,面对一个仿真问题最好是首先试试ode45。 ode23:二/三阶龙格-库塔法,它在误差限要求不高和求解的问题不太难的情况下,可能会比ode45更有效。也是一个单步解法器。 ode113:是一种阶数可变的解法器,它在误差容许要求严格的情况下通常比ode45有效。ode113是一种多步解法器,也就是在计算当前时刻输出时,它需要以前多个时刻的解。 ode15s:是一种基于数字微分公式的解法器(NDFs)。也是一种多步解法器。适用于刚性系统,当用户估计要解决的问题是比较困难的,或者不能使用ode45,或者即使使用效果也不好,就可以用ode15s。 ode23s:它是一种单步解法器,专门应用于刚性系统,在弱误差允许下的效果好于ode15s。它能解决某些ode15s所不能有效解决的stiff问题。 ode23t:是梯形规则的一种自由插值实现。这种解法器适用于求解适度stiff的问题而用户又需要一个无数字振荡的解法器的情况。 ode23tb:是TR-BDF2的一种实现, TR-BDF2 是具有两个阶段的隐式龙格-库塔公式。discrtet:当Simulink检查到模型没有连续状态时使用它。 固定步长模式解法器有:ode5,ode4,ode3,ode2,ode1和discrete。 ode5:缺省值,是ode45的固定步长版本,适用于大多数连续或离散系统,不适用于刚性系统。

simulink 仿真教程(从入门到入土)+报告(真)

Simulink仿真 摘要:simulink作为matlab的衍生模组,具有强大的仿真能力。原则上你可以将任意具有明确映射关系的物理量进行仿真模拟。对于相互间关系不明确的物理量,则可以通过输入输出数据的采集,然后通过模糊控制的方案替代明确的映射关系。本文主要针对的是以电焊机电路为主,其他仿真为辅的教程性质的文章。关键词:matlab Simulink 仿真电焊机教程 第一章初识软件 (2) 1.1 simulink 简介 (2) 1.2 simulink基础页面 (2) 1.3 常用库的介绍 (3) 1.3.1 simulink库 (4) 1.3.1.1 常用模块库 (4) 1.3.1.2 其他常用子库模块 (6) 1.3.2 电气库Simscape (7) 1.3.2.1 Electrical库 (7) 1.3.2.2 Specialized Technology库 (8) 1.4模块连接 (9) 第二章简单仿真系统的建立 (11) 2.1传递函数S信号仿真 (11) 2.1.1 运放环节的等效替代 (11) 2.1.2 等效变换 (12) 2.1.3 逻辑仿真 (13) 2.2电气库仿真 (13) 2.3子系统和模块的建立 (15) 2.3.1 子系统的建立 (15) 2.3.2 模块的建立 (16) 第三章复合仿真 (18) 3.1 m函数模块 (18) 3.1.1 简单编程 (18) 3.1.2 部分函数介绍 (19) 3.2 整体模型 (21) 3.3 仿真注意事项 (22) 3.3.1 注意事项1 (22) 3.3.2 注意事项2 (23) 3.3.3 注意事项3 (24) 3.3.4 注意事项4 (24) 结语 (25)

SIMULINK仿真方法简介

SIMULINK仿真方法简介 SIMULINK是一个进行动态系统的建模、仿真和综合分析的集成软件包。它可以处理的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。 在SIMULINK提供的图形用户界面GUI上,只要进行鼠标的简单拖拉操作就可以构造出复杂的仿真模型。它的外表以方框图形式呈现,且采用分层结构。从建模角度,SIMULINK 既适用于自上而下的设计流程,又适用于自下而上的逆程设计。从分析研究角度,这种SIMULINK模型不仅让用户知道具体环节的动态细节,而且能够让用户清晰的了解各器件、各子系统、各系统间的信息交换,掌握各部分的交互影响。 1. 应用SIMULINK的基本操作 1)在MATLAB的命令窗运行指令simulink或点击命令窗口中的图标,便可以打开如图B1-2所示的SIMULINK模块库浏览器(Simulink Library Browser)。 图B1-2 SIMULINK库浏览器 2)点击Source字库前的“+”号(或双击字库名),便可以得到各种信源模块,如图B1-3。 图B1-3 信源子库的模块 3)点击“新建”图标,打开一个名为untitled的空白模型窗口,如图B1-4。

图B1-4 SIMULINK的新建模型窗口 4)用鼠标指向所需的信号源(如阶跃信号Step),按下鼠标左键,把它拖至untitled窗,就生成一个阶跃信号的复制品。,如图B1-5。 图B1-5模型创建中的模型窗口 5)采用上述方法,将信宿库Sink中的示波器scope拷贝到模型窗口,把鼠标指向信源右侧的输出端,当光标变成十字符时,按住鼠标任意键,移向示波器的输入端,就完成了两个模块间的信号连接,如图B1-6。 图B1-6 创建模型完毕中的模型窗口 6)进行仿真,双击示波器,打开示波器显示屏,如图1-7。点击模型窗口中的“仿真启动” 图标或点击simulink菜单下的start,仿真就开始了,就可以观测到阶跃信号的波形了,如图B1-7。

Matlab中的Simulink和SimMechanics做仿真

这里我们利用Matlab中的Simulink和SimMechanics做仿真,那么先来看看相关的资料。 SimMechanics ——机械系统建模和仿真 SimMechanics 扩展Simscape? 在三维机械系统建模的能力。用户可以不进行方程编程,而是借助该多刚体仿真工具搭建模型,这个模型可以由刚体、铰链、约束以及外力组成。自动化3-D动画生成工具可做到仿真的可视化。用户也可通过从CAD系统中直接导入模型的质量、惯量、约束以及三维几何结构。Real-Time Workshop可以对SimMchanics模型进行自动化C代码生成,并在硬件在回路仿真过程中可以使用生成的代码而不是硬件原型测试嵌入式控制器。 SimMechanics可以用于开发悬架、机器手臂、外科医疗设备、起落架和大量的其它机械系统。用户也可以在SimMechanics环境下集成其它的MathWorks物理建模工具,这样做可以实现更加复杂跨领域的物理建模。 特点: ?提供了三维刚体机械系统的建模环境 ?包含了一系列分析机械运动和设计机械元件尺寸的仿真技术 ?三维刚体可视化仿真 ?SimMechanics Link utility,提供Pro/ENGINEER 和SolidWorks CAD平台的接口并且也提供了API函数和其它CAD平台的接口

?能够把模型转化为C代码(使用Real-Time Workshop) ?由于集成在Simulink环境中,因此可以建立高精度、非线性的模型以支持控制系统的开发和测试。 强大功能: 搭建机械系统模型 使用SimMechanics用户仅需要收集物理系统信息即可建立三维机械系统模型。使用刚体、坐标系、铰链和作用力元素定义和其它Simulink模型直接相连的部分。这个过程可以重用Simulink模型以及扩展了SimMechanics工具的能力。用户还可把Simulink模型和SimMechnics模型集成为一个模块,并可封装成可在其它模型中复用的子系统。 机械系统建模仿真和分析 SimMechanics包含如下子系统: ?使用Simulink查表模块和SimMechanics传感器和作动器定义的非线性的弹性单元 ?用来定义航空器件压力分布的空气动力学拖曳模块,例如副翼和方向舵 ?车辆悬架系统,例如防侧翻机械装置和控制器 ?轮胎模型

simulink仿真全参数设置

1.变步长(Variable—Step)求解器 可以选择的变步长求解器有:ode45,ode23,ode113,odel5s,ode23s和discret.缺省情况下,具有状态的系统用的是ode45;没有状态的系统用的是discrete. 1)ode45基于显式Runge—Kutta(4,5)公式,Dormand—Prince对.它是—个单步求解器(solver)。也就是说它在计算y(tn)时,仅仅利用前一步的计算结果y(tn-1).对于大多数问题.在第一次仿真时、可用ode45试一下. 2)ode23是基于显式Runge—Kutta(2,3).Bogackt和Shampine对.对于宽误差容限和存在轻微刚性的系统、它比ode45更有效一些.ode23也是单步求解器.3)odell3是变阶Adams-Bashforth—Moulton PECE求解器.在误差容限比较严时,它比ode45更有效.odell3是一个多步求解器,即为了计算当前的结果y(tn),不仅要知道前一步结果y(tn-1),还要知道前几步的结果y(tn-2),y(tn-3),…; 4)odel5s是基于数值微分公式(NDFs)的变阶求解器.它与后向微分公式BDFs(也叫Gear方法)有联系.但比它更有效.ode15s是一个多步求解器,如果认为一个问题是刚性的,或者在用ode45s时仿真失败或不够有效时,可以试试odel5s。odel5s是基于一到五阶的NDF公式的求解器.尽管公式的阶数越高结果越精确,但稳定性会差一些.如果模型是刚性的,并且要求有比较好的稳定性,应将最大的阶数减小到2.选择odel5s求解器时,对话框中会显示这一参数.可以用ode23求解器代替。del5s,ode23是定步长、低阶求解器. 5)ode23s是基于一个2阶改进的Rosenbrock公式.因为它是一个单步求解器,所以对于宽误差容限,它比odel5s更有效.对于一些用odel5s不是很有效的刚性问题,可以用它解决. 6)ode23t是使用“自由”内插式梯形规则来实现的.如果问题是适度刚性,而且需要没有数字阻尼的结果,可采用该求解器. 7)ode23tb是使用TR—BDF2来实现的,即基于隐式Runge—Kutta公式,其第一级是梯形规则步长和第二级是二阶反向微分公式.两级计算使用相同的迭代矩阵.与ode23s相似,对于宽误差容限,它比odtl5s更有效. 8)discrete(变步长)是simulink在检测到模型中没有连续状态时所选择的一种求解器.

adams和simulink联合仿真的案例分析

相信大家在联合仿真ADAMS和SIMULINK时都会遇到很多的问题:ADAMS/contro中的例子ball_beam通过联合仿真,更容易理解adams和simulink的联合仿真精髓。小球在一脉冲力的作用下沿着横梁滚动,此时梁的两端受力不平衡,梁的一段倾斜,为了使得小球不掉下横梁,在横梁上施加一个绕Z轴的力矩,横梁达到一定的角度之后逆向转动,然后小球就在这个作用力矩的控制下来回滚动而不掉下横梁!其中控制力矩在整个过程中是个动态变化的,力矩Torque_In是通过位移Position 和横梁转角Beam_Angle确定,这个是在simulink中通过框图完成的。 首先我申明一下我用的是adams2003和matlab6.5 以下我说明一下我的操作步骤: 1、把control中的ball_beam文件copy到另外一个文件夹下,同时设置adams和matlab的默认路径即为ball_beam文件夹,这样可以省略很多不必要的麻烦! 2、用aview打开ball_beam.cmd文件,先试试仿真一下,可以看到小球会在脉冲的作用下滚动,仿真时间最好大于8s 3、载入control模块,点击tools|plugin manager在control框选定。 4、点击control|plant export在file prefix下输入你的文件名,这个可以随便的,我输入的是myball,在plant input点击右键点

击guess选定tmp_MDI_PINPUT,在tmp_MDI_PINPUT中就是输入力矩Torque_In,只有一个输入参数;同样在plant output 中点击右键guess选定tmp_MDI_POUTPUT,这是模型的输出变量横梁转角Beam_Angle和小球与横梁中心轴的距离position。control package选择matlab,type是non_linear,初始化分析选择no,然后按ok!此时m文件已经生成了! 5、打开matalb,设置你的工作路径在ball_beam文件夹上,键入myball,马上有 %%% INFO : ADAMS plant actuators names : 1 Torque_In %%% INFO : ADAMS plant sensors names : 1 Beam_Angle 2 Position 出现 6、再键入adams_sys,弹出一个控制框图,这时可以新建一个mdl文件,将adams_sub拖入你新建的mdl框图中,其实再这里有一个偷懒的办法,就是在matlab中打开ball_beam.mdl文件,然后把他的那个adams_sub用你的刚产生的这个代替,然后另存为my_ball.mdl!

ADAMS与Matlab联合仿真

7.1机械夹紧机构建模使用实例 机械系统建模实例将创建一种机械夹紧机构模型,是阿波罗登月计划中用于夹紧登月舱和宇宙飞船的十二个夹紧机构之一。夹紧机构包括:摇臂(Pivot)、手柄(Handle)、锁钩(Hook)、连杆(Slider)和固定块(ground Block)等物体。 夹紧机构的工作原理是:如图7-1所示,在夹紧机构手柄(Handle)处施加一个作用力,驱动机构运动,使其锁钩(Hook)处产生十倍于作用力的夹紧力,用于夹紧登月舱和宇宙飞船。 夹紧机构的设计要求是:至少产生800N的夹紧力;施加在手柄上的力应不大于80N;释放手柄的力应最小;在振动环境中夹紧机构应安全可靠。 手柄Handle 锁钩Hook 图7-1 夹紧机构三维模型图 以下将从创建几何构件、添加约束、添加载荷及结果后处理等几个方面详细介绍机械夹紧机构模型的建立。通过本实例的学习,能够详细了解ADAMS软件设计流程及使用方法。 7.1.1创建几何构件 1、创建新模型 本实例将使用ADAMS/View的零件库、约束库和力库创建夹紧机构模型。 首先打开ADAMS/View,选择“Create a new model”,模型名称(Model Name):Latch,点击OK,创建新模型完毕。其它设置如图7-2所示:

图7-2 创建新模型 2、设置工作环境 选择菜单栏【Settings】→【Units】命令,设置模型物理量单位,如图7-3所示: 图7-3设置模型物理量单位 选择菜单栏【Settings】→【Working Grid】命令,设置工作网格,如图7-4所示:

图7-4设置工作网格 3、创建设计点 设计点是几何构件形状设计和位置定位的参考点。本实例将通过设计点列表编辑器创建几何构件模型所需要的全部设计点。 选择并点击几何模型库(Geometric Modeling)中的点(Point),下拉菜单选择(Add to Ground)、(Don’t Attach),并单击Point Table列表编辑器,创建并生成Point_1、Point_2等六个设计点,如图7-5、图7-6所示: 图7-5设计点列表编辑器

(完整word版)CarSim、Simulink联合仿真

CarSim 与Simulink 联合仿真 1 软件介绍 在MATLAB 中,Simulink 是用来建模、仿真和分析动态多维系统的交互工具。可以使用Simulink 提供的标准模型库或者自行创建模型库,描述、模拟、评价和精化系统行为,同时,Simulink 和MATLAB 之间的联系十分便捷,可以使用一个灵活的操作系和应用广泛的分析和设计工具。最后,除了可以使用Simulink 建模和仿真之外,还可以通过其他软件联合来完成更多的分析任务,如CarSim 、ADAMS 、AMEsim 等许多软件。 CarSim 是专门针对车辆动力学的仿真软件,CarSim 模型在计算机上运行的速度比实时快3-6 倍,可以仿真车辆对驾驶员,路面及空气动力学输入的响应,主要用来预测和仿真汽车整车的操纵稳定性、制动性、平顺性、动力性和经济性,同时被广泛地应用于现代汽车控制系统的开发。CarSim 可以方便灵活的定义试验环境和试验过程,详细的定义整车各系统的特性参数和特性文件。CarSim 软件的主要功能如下:适用于以下车型的建模仿真:轿车、轻型货车、轻型多用途运输车及SUV ;可分析车辆的动力性、燃油经济性、操纵稳定性、制动性及平顺性;可以通过软件如MA TLAB ,Excel 等进行绘图和分析;可以图形曲线及三维动画形式观察仿真的结果;包括图形化数据管理界面,车辆模型求解器,绘图工具,三维动画回放工具,功率谱分析模块;程序稳定可靠;软件可以实时的速度运行,支持硬件在环,CarSim 软件可以扩展为CarSim RT, CarSim RT 是实时车辆模型,提供与一些硬件实时系统的接口,可联合进行HIL 仿真;先进的事件处理技术,实现复杂工况的仿真;友好的图形用户界面,可快速方便实现建模仿真;提供多种车型的建模数据库;可实现用户自定义变量的仿真结果输出;可实现与simulink 的相互调用;多种仿真工况的批运行功能; 2 CarSim 与Simulink 联合仿真 2.1 Simulink 接口 1)变量由Simulink 导入CarSim (导入变量) 可由Simulink 导入到CarSim 中的变量可达160 多个,主要分为以下几部分:控制输入

MATLAB第六章simulink仿真答案

实验四 SIMULINK 仿真实验 一、 实验目的 1. 学习SIMULINK 的实验环境使用。 2. 掌握SIMULINK 进行结构图仿真的方法。 二、 实验内容 1.控制系统结构图仿真 给定被控对象) 1(10 )(+= s s s G ,控制器111.0145.0)(++=s s s D ,按以下两种情 况设计SIMULINK 仿真结构图(给定信号是单位阶跃信号)。 (1) 无控制器时被控对象单位负反馈。 (2) 控制器与被控对象串连接成单位负反馈。 给定的仿真参数: (1) 信号源参数设置: 阶跃信号(Step )的Step time 设为0秒。 (2)仿真参数设置: 仿真时间 0~10秒,求解器选定步长(Fixed-step)的ode5,仿真步长(Fixed step size )设为0.02秒。 实验要求: (1) 在SIMULINK 中对设计的结构图进行仿真,观察输入信号,输出信号和控制信号。 (1) 记录保存两种情况下的响应波形(适当调整时间轴和纵轴坐标,使图形显示适中,同时在图中求出系统的超调和调节时间(按2%的误差带)。

123 45678910 00.20.40.60.8 1 1.2 1.4 时间 (seconds) d a t a 时序图: 0123 45678910 0.20.40.60.81 1.21.41.6 1.8时间 (seconds) d a t a 时序图:

2.动态系统微分方程仿真 在SIMULINK 中求解下列二阶微分方程代表的动态系统在阶跃信号作用下的状态响应。 给定的仿真参数: (1) 信号源参数设置:阶跃信号(Step )的Step time 设为0秒。 (2) 仿真参数设置:仿真时间 0~8秒,求解器选变步长 (Variable-step)的ode45,最大仿真步长(Max step size )设为0.01秒。 实验要求: (1) 据微分方程构造结构图。 (2) 结构图仿真。 a) 零状态仿真:x 1=0,x 2=0, b) 非零状态仿真:x 1=1,x 2=-1, c) 记录保存两种情况下的响应波形(适当调整时间轴和纵轴坐 标,使图形显示适中)。 1 22122110) (1,||210x y t u u x x x x x x ==++--==

(完整版)matlab_4_SIMULINK仿真及DEE实例步骤

SIMULINK & DEE简介 ※如何进入SIMULINK? Step1:进入MATLAB Step2: 方法一:在workspace输入simulink的指令。 方法二:点选MATLAB Command Window上方之利用以上方法会获得下面的结果

※ 如何利用SIMULINK 解ODE Example1:2311+-='x x Step1:?'=dt x x 11 ? 在Library 中点选Continuous ,在Continuous 中选取integrator ,按住鼠标左键拖曳至untitled 中,分别在各接点拉上连接线并标明各个涵义。 Step2:2311+-='x x (1)从Math 中点选Gain 的图标,拖曳至untitled 中,并选取命令列中Format/Flip Block 使其转ο180

(2)从Math中,拖曳Sum至untitled中 (3)从Source中,用鼠标拖曳Constant至untitled,并把各点连结起来。 (4)从Sink中拖曳Scope至untitled中,并与 x连结 1

(5)把Constant改为2,把Gain改为-3。 Step3:设定参数 (1)选择Simulation/Parameters (2)调整适当的起始时间、结束时间和数值方法。

(3)点选Simulation/Start ,开始仿真。 (4)点选Scope ,显示仿真的结果。 Example2:???+-='+='-)cos(212 211t x x x e x x x t 1)0(0)0(21==x x Step1:???'='=??dt x x dt x x 2211 ? (1)点选Continuous 中之Integrator ,拖曳至untitled 。

Matlabsimulink+FlightGear联合仿真

【转】FlightGear之路(二):Matlab/simulink+FlightGear联合仿真 2011-09-15 16:12 转载自keyflying 最终编辑keyflying FlightGear给我们提供了完美的飞行仿真虚拟现实平台。而Matlab/Simulink给我们提供了简单方便的飞行控制系统联合仿真。这样,一个简单而方便的系统就搭建成了。 说上去容易。干上去其实也容易。 不知道你的matlab版本,但是simulink里的aerospace工具箱是要有的。在matlab下输入asbhl20回车,看看人家的demo是怎么用的吧(什么?asbhl20以后没反应?更新你的matlab或者安装aerospace工具箱吧,我这里是matlab2007a,以前用matlab7.3的时候也可以)。 不要着急运行。看到蓝色的模块Generate Run Script(if FG is installed)了么?双击,设置一下你的flightgear。设置好目录、飞行器、机场等等以后,点Generate Script,生成bat文件。若在本机运行flightgear,则在matlab下输入dos('fgrun.bat'),回车。若在其他机器上运行flightgear,则将该bat文件拷到该机器上,在命令行中运行。

不在本地机上运行flightgear时,还需在simulink中设置该机器的的IP。双击toFlightgear模块,再双击右端Send net_fdm Packet to FlightGear,输入目标机的IP。 记得打开flightgear。then,go~

Simulink_modelsim联合仿真

simulink/modelsim联合仿真 XX学生的师傅 2016年5月13日 Simulink/Modelsim 联合仿真操作步骤 本人使用的matlab版本为:matlab R2014a ; modelsim版本为:Modelsim SE-64 10.1c。 以下内容是参考自matlab帮助文档,结合自己第一次联合仿真的经验得出,如有 不到之处,不能帮助解决问题还请原谅。 第一次使用markdown,如阅读体验不好,你咬我啊 以下正文 1.新建目录 2.在matlab中配置cosimulation block 1.在matlab中运行cosimWizard。 2.按要求配置。 3.在simulink或matlab中搭建仿真模型 4.从matlab或simulink中启动modelsim 两种方法: ?在matlab中运行vism或vism('socketsimulink'),4449 ,其中4449为端口号,根据实际情况确定。之后需在modelsim中加载verilog文件,并输入 vsimulink work.uq_pmsm ,其中uq_pmsm为实体名,根据实际情况替换。 ?双击simulink中的Launch HDL Simulator块启动modelsim。 以下两种情况: - 方法一启动实体仿真、方法二modelsim加载实体完成后,若一直 显示loading。 - 直接在simulink中运行仿真时出现错误,提示change port。 可进入任务管理器结束lmutil.exe进程。黑科技,不确保有效。 5.在simulink中启动仿真,此时modelsim会同步进行仿真

matlAB,SIMULINK联合仿真经典的例子

数控螺旋面钻头尖刃磨机的机构仿真 一、原理 图1二并联杆数控螺旋面钻头尖刃磨机床示意图 图2 二并联杆数控螺旋面钻头尖刃磨机床刃磨原理图 重要假设条件: 1、二并联杆数控螺旋面钻头尖刃磨机床是通过两组并联杆(2,a和3,b)保证动平台4 只在空间中做水平运动,而没有翻转运动。每一组并联杆是由空间相互平行的4根杆件组成,由于组内各杆件受力相同,所以将其简化成平面机构如图2。构件a,b是保证动平台4只做水平运动的辅助平行杆,所以可以假设将机构中杆件a,b省略,而动平台4只做水平移动,没有翻转运动,也就是4相对于地面的夹角θ4恒等于0。 2、直线电机的次子有两个(1和5)但是在加工过程中并不是两者同时运动,所以假设5与 导轨固联。 3、假设机床在工作过程中动平台4只受到树直向上的恒力作用,且作用在其中心位置。基于以上假设机床平面结构示意图如图3。

图3二并联杆数控螺旋面钻头尖刃磨机床简化机构平面结构示意图 二、建立仿真方程 C2=cos(θ2) S2=sin(θ2)?C3=cos(θ3) ?S3=sin(θ3) 一)力方程(分别对各个杆件进行受力分析) 对动平台4:受力分析如图4 F24x+F43x=m4*Ac4x (1) F24y+F43y=m4*Ac4y (2) F24y*rc4-F43y*rc4=0 (3) 图4动平台4的受力分析 对并联杆2:受力分析如图5 F12x+F24x=-m2*Ac2x (4) F12y+F24y=-m2*Ac2y (5) F12x*rc2*S2+F12y*rc2*C2 -F24x*rc2*S2-F24y*rc2*C2=I2*α2 (6) 图5并联杆2的受力分析对直线电机滑块1:受力分析如图6 Fm+F12x=m1*r1_dot_dot (7) Fy=F12y (8)

实验四-SIMULINK仿真模型的建立及仿真

实验四 SIMULINK仿真模型的建立及仿真(一) 一、实验目的: 1、熟悉SIMULINK模型文件的操作。 2、熟悉SIMULINK建模的有关库及示波器的使用。 3、熟悉Simulink仿真模型的建立。 4、掌握用不同的输入、不同的算法、不同的仿真时间的系统仿真。 二、实验内容: 1、设计SIMULINK仿真模型。 2、建立SIMULINK结构图仿真模型。 3、了解各模块参数的设定。 4、了解示波器的使用方法。 5、了解参数、算法、仿真时间的设定方法。 例7.1-1 已知质量m=1kg,阻尼b=2N.s/m。弹簧系数k=100N/m,且质量块的初始位移x(0)=0.05m,其初始速度x’(0)=0m/s,要求创建该系统的SIMULINK 模型,并进行仿真运行。 步骤: 1、打开SIMULINK模块库,在MATLAB工作界面的工具条单击SIMULINK图标,或在MATLAB指令窗口中运行simulink,就可引出如图一所示的SIMULINK模块浏览器。 图一:SIMULINK模块浏览器

2、新建模型窗,单击SIMULINK模块库浏览器工具条山的新建图标,引出如图二所示的空白模型窗。 图二:已经复制进库模块的新建模型窗 3、从模块库复制所需模块到新建模型窗,分别在模块子库中找到所需模块,然后拖进空白模型窗中,如图二。 4、新建模型窗中的模型再复制:按住Ctrl键,用鼠标“点亮并拖拉”积分模块到适当位置,便完成了积分模块的再复制。 5、模块间信号线的连接,使光标靠近模块输出口;待光标变为“单线十字叉”时,按下鼠标左键;移动十字叉,拖出一根“虚连线”;光标与另一个模块输入口靠近到一定程度,单十字变为双十字;放开鼠标左键,“虚连线”变变为带箭头的信号连线。如图三所示:

ProENGINEER与MATLABsimulink联合仿真设置

Pro\ENGINEER与MATLAB\simulink联合仿真设置 Pro\ENGINEER与MATLAB\simulink联合仿真设置,转载请注明(https://www.doczj.com/doc/2917662571.html,/bssdlkhzau/ihome/myblog) 一、首先确认安装proe时,安装了pro/toolkit,如下为pro/toolkit安装说明 1、在默认安装时是不安装pro/toolkit,在安装过程中选择pro/toolkit,如下图 注意:安装proe时,安装目录不要有空格,在进行二次开发时,有空格容易出错。 二、安装matlab工具smlink工具,可以到matlab官方下载,免费的。 1、安装smlink(可以到https://www.doczj.com/doc/2917662571.html,/products/simmechanics/download_smlink.html 下载)。 1)将smlink30.win32.zip和install_addon.m放入MATLAB起始位置目录下面,打开matlab 2) 在MATLAB命令窗口输入install_addon('')命令,引号内是下载的压缩文件名;

3) 运行上述命令,命令窗口提示 Installing smlink... Extracting archive smlink31.win32.zip to C:\Program Files\MATLAB\R2009a... Adding directories for smlink to path... Installation of smlink complete. To view documentation, type "doc smlink". 2、设置proe里simmechanicls插件 1)找到pro/toolkit安装目录,在目录里找到protk.dat文件(如果没有可以自己创建,随便命名),如我的是在D:\Program Files\proeWildfire 4.0\protoolkit\protk.dat 2)用记事本打开protk.dat文件,向里面添加 如果是Pro/ENGINEER Wildfire 3 以及早期版本如2001、2.0等添加如下内容: name SimMechanics Link startup dll exec_file $matlabroot/bin/arch/cl_proe2sm.dll text_dir $matlabroot/toolbox/physmod/smlink/cad_systems/proe/ end Pro/ENGINEER Wildfire 4 及以后版本如5.0添加如下内容的如下: name SimMechanics Link startup dll exec_file $matlabroot/bin/arch/cl_proe2sm.dll text_dir $matlabroot/toolbox/physmod/smlink/cad_systems/proe/ unicode_encoding false end 注,以上$matlabroot为绝对路径,可以参考本人设置,我的protk.dat文件添加内容如下(我的为4.0版本,装置d盘) NAME SimMechanics Link STARTUP dll EXEC_FILE D:\Program Files\MATLAB\R2010b\bin\win32\cl_proe2sm.dll TEXT_DIR D:\Program Files\MATLAB\R2010b\toolbox\physmod\smlink\cad_systems\proe\text UNICODE_ENCODING false END 添加完成后保存文件 3)修改proe气动目录下的config.pro(如果没有此文件可自行创建)文件,用记事本打开此文件,向里面添加如下内容:

MATLAB,Simulink与Modelsim联合仿真步骤及实例[1]

目录 1:什么是link for modelsim 2:link for modelsim的安装与设置 3:使用link for modelsim仿真的实例

什么是link for modelsim Link for modelsim是一个联合仿真的接口,它将MathWorks工具整合到EDA工作环境中,使其应用于FPGA和ASIC的开发。这个接口在HDL仿真器ModelSim SE/PE于MathWorks的产品Matlab和SimuLink间提供了一个双向连接,以指导硬件的设计验证和联合仿真。这种整合可以分别充分发挥Matlab/SimuLink和ModelSim各自的优势。1.联合仿真环境 Link for ModelSim是一个客户/服务器的车是平台和联合仿真应用,ModelSim在这个仿真环境中所起的作用取决于ModelSim与Matlab还是SimuLink连接,本说明只讲ModelSim与Matlab的连接。 a.ModelSim与Matlab连接 当与Matlab相连接时,ModelSim作为客户端,如下图所示: 在这个模式中,Matlab服务器等到ModelSim客户端发出的服务请求,当接收到一个请求时,Matlab建立一个通信连接,而且调用一个指定的Matlab函数,这个函数封装了用于计算数据以验证或者使当前在ModelSim中仿真的HDL模型的可视化。 下图显示了在一个测试平台环境中Matlab函数如何与ModelSim进行通信 Matlab服务器可以用于多个HDL实体之间的联合仿真,但是你必须为多个HDL实体指定一个通信方式使他们可以相互通信,下图显示了两个ModelSim客户端如何连接到服务器的TCP/IP的4449端口: 回到目录

联合仿真Matlab_Simulink_Int

?IMAGINE SA 1998-2006 AME_INT2 Matlab ?& Simulink ?接口 法国伊梦镜公司上海代表处

2 ?IMAGINE SA 1998-2006 内容 ?Matlab ??AMESim ?: 采用预定义的M 文件从Matlab 中控制AMESim ?将状态空间矩阵输入至AMESim 中 ?AMESim ?→Simulink ?-S-函数: 将 AMESim 模型输入至Simulink 环境中 ?AMESim ?→Simulink ?-共仿真: AMESim 和Simulink 的共仿真

3 ?IMAGINE SA 1998-2006 9从Matlab 中采用M 文件控制AMESim 9S-函数9共仿真 AMESim ?–Matlab ?& Simulink ?接口 Use Ode15s to run this model AMESim-Simulink Standard Interface Sine entry applied to the system Xp Signal Generator for valve opening xp p1 p2 rpm sv AMESim: slink_ S-Function P2 P1 1450Constant for Pump Speed Rod displacement Pressure @ port 1 Pressure @ port 2 slink.ame

4 ?IMAGINE SA 1998-2006 Matlab ??AMESim ??AMESim ??Matlab ? 9将AMESim 的仿真结果输入至Matlab 中用于特殊的后处理 9互换传递函数(雅可比Jacobian 矩阵)9在Matlab 中获取AMESim 的参数9从Matlab 中修改AMESim 参数 9从Matlab 中修改AMESim 仿真运行参数9从Matlab 中运行AMESim 模型 ?可以从Matlab 中完全控制AMESim 仿真,例如从Matlab 中定义批处理运行或者在Matlab 中定义优化方案(除了AMESim 内置的优化功能之外)

基于Simulink简单方程组仿真示例

简单系统的仿真分析 建立系统模型 对于简单系统 y t( ) = 2* u (t)if (t)> 25 y t( ) =10* u (t) if (t )<= 25 首先根据系统的数学描述选择合适的Simulink系统模块,然后建立系统模型。 这里所使用的系统模块主要有: (1) Sources 模块库中的Sine Wave模块:用来作为系统的输入信号。 (2) Logic and Bit Operations模块库中的Relational Operator模块:用来实现系统中的时间逻辑关系。 (3) Sources模块库中的Clock模块:用来表示系统运行时间。 (4) Signal Routing模块库中的Switch模块:用来实现系统的输出选择。 (5) Math模块库中的Gain模块:用来实现系统中的信号增益。 简单系统的系统模型。

Simulink是一个用来建模、仿真和分析动态系统的软件包。它基于MATLAB的框图设计环境,支持线性系统和非线性系统,可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统(也就是系统中的不同部分具有不同的采样速率)。νSimulink提供了一个建立模型方块图的可视的图形用户接口(GUI),用户可以在这个可视窗口中通过单击和拖动鼠标操作来完成动态系统建模。ν利用这个接口,用户可以像用笔在草纸上绘制模型一样,只要构建出系统的方块图即可。这与以前的仿真软件包要求解算微分方程和编写算法语言程序不同,它提供的是一种更快捷、更直接明了的方式,而且用户可以立即看到系统的仿真结果。 Simulink中包括了许多实现不同功能的模块库。这些模块库把各种功能不同的模块分类存放,如Sources(输入源模块库)、Sinks(输出模块库)、 Math Operations(数学模块库)以及线性模块和非线性模块等各种组件模块库用户也可以自定义和创建自己的模块。利用这些模块,用户可以创建层级式的系统模型,可以自上而下或自下而上地阅读模型,也就是说,用户可以浏览最顶层的系统,然后用鼠标双击模型中的子系统模块,打开并查看该子系统模型。这不仅方便了工程人员的设计,而且可以使自己的模型方块图功能更清晰,结构更合理。 Simulink简介 利用示波器模块或其他的显示模块,用户可以在仿真运行的同时观察仿真结果,而且可以在仿真运行期间改变仿真参数,并同时观察改变后的仿真结果。最后的结果数据可以输出到MATLAB工作区进行后续处理,或利用命令行命令在图形窗口中绘制仿真曲线。MATLAB及其工具箱内还有许多其他的适用于不同工程领域的分析工具。由于MATLAB和Simulink是集成在一起的,因此无论何时用户都可以在这两个环境中仿真、分析和修改模型。 Simulink系统建模的主要特性如下: 框图式建模。支持非线性系统。支持混合系统仿真,即系统中包含连续采样时间和离散采样时间的系统。支持多速率系统仿真,即系统中存在以不同速率运行的组件。 Simulink建立的系统模型可以是层级模型,因此用户可以采用自下而上或自上而下的方式建立模型,并一层一层地查各级模型。用户可以根据需要建立自定义子系统,并把自定义子系统内的模块进行封装,封装后的自定义子系统具有与Simulink内嵌模块同样的属性,并可由用户设置模块的属性参数。 运行Simulink演示程序 ν Simulink自带了许多模型演示程序,这些演示程序分别说明了利用Simulink 模块搭建的功能不同的模型系统。这里以倒立摆系统模型为例介绍系统模型的组成及功能。 4.2.1 演示模型 首先运行MATLAB,在MATLAB的命令窗口内键入下列命:

相关主题
文本预览
相关文档 最新文档