SimMechanics简介(官网)

发布时间:2018-07-02 13:52:29   来源:文档文库   
字号:

SimMechanics

一、 关于SimMechanics软件

SimMechanics软件拥有一系列的模块库,机械模型和仿真工具。它可以与Simulink配合使用。你可以通过传感器模块和执行器模块将SimMechanics模块和Simulink模块连接起来。

这些模块库里的模块是你用来建立机械系统的基础。这些机械系统由一些刚体组成,而这些刚体由代表了平移自由度和旋转自由度的关节连接起来。和用标准的Simulink工具箱建模一样,你可以用一些分层子系统表达出你的机械系统。你可以施加运动约束,应用力或者转矩,集成牛顿动力学,以及测量最终的运动。你可以在输送机装备的演示模型里看到一些特征的工作情况。

二、 建立机械系统模型

以下是你建立和运行一个机械模型所要做的主要步骤,点击最前面的链接你可以看到更详细的解释。

1. 通过指定刚体的惯性,自由度(DoFs)和约束,以及附着在刚体上的坐标系(CSs)来测量运动和力。

2. 建立传感器记录运动和力,建立执行器和力的单元去初始化运动和施加力(包括连续的和不连续的摩擦力)。

3. 开始仿真,在维持所施加的约束的同时,让Simulink的解算器去发现系统的运动。你还可以生成,编译,运行模型的生成代码译本。

4. 应用SimMechanics的可视化窗口,在建立你的模型时你可以形象化你的机器,在运行你的模型时你可以让仿真动画化。

三、 刚体(Bodies),坐标系(CSs),关节(Joint)和约束(Constraints)

你可以使用刚体模块建立你的刚体模型,指定模块的质量,惯量张量和刚体坐标系。你用关节将一个刚体和另一个刚体连接起来。关节代表了两个刚体之间可能的运动和系统的自由度。你可以在系统中给刚体所允许的相对运动施加运动约束。这些约束限制了自由度或者使自由度成为了时间的显函数。

SimMechanics界面给你提供了很多方法去指定坐标系,约束或驱动,力或转矩。你可以:

将刚体坐标系建立在刚体模块的不同点上,为执行和传感指定局部坐标轴和原点。

使用SimMechanics模块库里的关节模块,也可以建立你自己的自定义关节模块来扩展原有的关节模块库。

使用其他的Simulink工具和MATLAB表示法。

1 定义局部坐标系

SimMechanics模型自动包含一个单独的惯性参考系和模型坐标系。你也可以设置自己的局部坐标系:

基础坐标系必须相对静止的附着在模型坐标系里的基础模块上,但是不能设置在模型坐标系的原点。

刚体坐标系在刚体上的固定和移动都很严格。

2 运动约束

你可以通过在任意两个刚体之间指定运动约束来限制系统的运动,也就是将约束模块和一对刚体模块连接起来。连接驱动(Driver)模块必须使用随时间变化的约束。

四、 传感器(Sensor),执行器(Actuators),摩擦力(Friction)和力的单元(Force Elements)

传感器和执行器用来连接标准的Simulink模块和SimMechanics模块。力的单元代表了不需要外界输入的内力。

传感器模块用来探测刚体和关节的运动。

传感器模块输出的是Simulink信号,你可以像应用其他Simulink信号一样应用它。你可以把一个传感器模块和一个Simulink示波器模块(Scope)相连,这样就可以在一个系统内显示出它的动态。

你可以通过执行模块把这些传感器的输出信号反馈回一个SimMechanics系统,并通过这些信号指定这个系统的力和转矩。

执行模块用来确定刚体和关节的运动。

它们从Simulink接收力或转矩信号并且可以通过这些信号向刚体或关节施加力或转矩。这些Simulink信号包括系统自身从传感器模块输出的反馈。

它们通过探测关节是离散的锁定还是不锁定,来向它们施加不连续的静态摩擦力。

它们将刚体或关节的位置,速度,加速度指定为时间的显函数。

它们设置系统的初始运动学状态(位置和速度),为牛顿动力学的正向集成做准备。

力的单元用来模拟刚体之间的内力或者作用在刚体之间的关节上的内力。内力只与刚体的位置和速度有关,与外部信号无关。

五、 模拟和分析机械运动

SimMechanics软件为你所仿真的机械系统提供了四种分析模式:正向动力学模式(Forward Dynamics),平衡模式(Triming),反向动力学模式(Inverse Dynamics)和运动学模式(Kinematics)。在任何一种模式里,你都可以将机械模型转化为一种简便的生成代码译本。

1 刚体运动的数学解决方式。

为了使正向动力学模式可以用数学方法解决,系统必须满足一定的条件:

所有刚体的质量和惯性张量都必须已知。

每个刚体上每一瞬间所施加的力和转矩都必须已知。

自由度之间的任何运动约束都只能指定在位置和(或)速度之间。如果约束是互相一致的,并且少于自由度的数目,那系统的运动就是有意义的,它可以被集成发现。

指定初始状态(初始位置和初始速度)并且始终维持所有约束。

在反向动力学模式中,变为你指定运动,并且得到产生这些运动所需的力和转矩。

2 正向动力学,平衡,和线性化

在正向动力学模式里,一个SimMechanics仿真用常微分方程(ODE)解算器的Simulink序列解算牛顿方程,集成所用的力和转矩,获得最终的运动。常微分方程解算器设计的是映射在运动约束的数学复本上的自由度的运动,并在施加约束的系统里生成力和转矩。

平衡。平衡模式允许你用Simulink里的平衡特征寻找机械运动里稳定或平衡的状态。一旦发现这些状态,就将它们设置为线性化分析的起始点。

线性化。你可以使用Simulink线性化工具使系统的正向运动线性化,并且获得它对某些值(力,转矩,约束和初始条件)的微小扰动的响应。

反向动力学

SimMechanics仿真可以解决正向动力学的逆向问题,可以通过你所应用于系统中的一系列已知运动求出产生它所需的力和转矩。根据系统的拓扑结构,你从这两种(反向动力学和运动学)模式中选择其中更高效的一种分析系统的反向动力学问题:

反向动力学模式应用于开放式的拓扑系统(模型图表没有闭环)。

用运动学模式分析闭环模型的运动时,要考虑环路终点所施加的不可见约束。

约束和驱动模块只能出现在闭环中,所以你也可以用运动学模式分析约束力和约束力矩。

六、 生成代码

SimMechanics软件和Simulink加速模式, 软件, 软件都是兼容的。它们能生成你最初在Simulink中用模块图表创造出的模型的代码译本,加快仿真速度,使模型更简便。

一个机械模型里的静摩擦力能创立动力学的间断点,引起Simulink模式迭代。这些间断点和模式迭代必将限制代码的生成。

七、 模型可视化,动画化

SimMechanics软件支持一个内部的可视化窗口作为模型建立,模型动画化,模型调试的有力辅助工具。想要知道如何使用这个窗口,请看前面的运行一个演示模型。

这个窗口通过以下的形式演示这些刚体和他们的刚体坐标系:

抽象简明的图形,凸壳或者等价椭圆体。这些是标准几何体。

通过外部图形文件可以指定自定义几何体。

你也可以在一个外部计算机辅助设计(CAD)平台上装配出一个你所需的设计。然后通过代表这个设计的一个数据文件自动生成SimMechanics模型。

1 建模时的刚体可视化

你可以通过以下方法使用可视化窗口建模:

在开始建立刚体之前你可以打开一个SimMechanics可视化窗口,然后就像在你的模型窗口里创立和配置刚体一样,你可以在显示窗口里看到刚体并且配置它们。

这种方法对于刚开始学习如何创立复杂的SimMechanics模型的人非常适用。这种情况下,可视化窗口会指导你装配和连接刚体几何体。

你也可以不用可视化窗口建模,可以等你完成建模后再打开可视化窗口查看完整的模型。

2 用标准几何体显示刚体

可视化窗口可以用两种标准的抽象图形去显示刚体,一种来源于刚体的质量特性,另一种来源于刚体的刚体坐标系。这些图形是以刚体模块对话框里指定的有限的刚体信息为基础的几何图表。

质量特性。一个刚体的动力学部分决定于刚体的总质量和质量在空间里的分布情况,比如封闭的惯性张量。任何一个刚体都只有唯一的一个与它相对应的并且拥有相同质量和惯性张量的均质椭球体。

这些均质椭球体是显示刚体的一种可视化方式。这些椭球体坐标轴的相对尺寸代表着每个坐标轴的惯性力矩。

下图是用一个等价椭球体显示一个刚体。

几何特性。每个SimMechanics刚体都被至少含有一个刚体坐标系的刚体模块表现出来。最小刚体坐标系原点放置在刚体的重心(CG)上。

你也可以在刚体上创立其他的刚体坐标系。附加在刚体上的任何关节,约束,驱动,执行器或传感器也必须同时附着在刚体坐标系原点上。

一系列的刚体坐标系原点可以封闭在一个平面里;如果有多于三个原点不共面,则原点所在的平面可以封闭成体。其中拥有向外弯曲曲率的最小平面就是凸壳。凸壳是可以在空间里显示一个刚体的另一种抽象图形。少于四个坐标系原点产生的是简单刚体特征。凸壳不包括刚体坐标系原点在重心上的情况。

下图是用凸壳方式显示出与前图相同的刚体。下图中的四个刚体坐标系原点不共面,形成一个四面体凸壳。

3 仿真时的运动动画化

你可以在显示模型刚体的时候,或者当你建模的时候,或者已经完成建模的时候打开可视化窗口,也可以当一个模型正在Simulink模型窗口运行的时候打开可视化窗口。无论你是选择用椭球体的方式显示刚体,还是用凸壳的方式显示刚体,可视化窗口都可以使刚体运动的仿真动画化,并且使模型的运动和Simulink端的进程同步化。

4 与计算机辅助设计的连接

以一个外部数据文件(提前从一个被支持的计算机辅助设计(CAD)平台上输出)为基础,你可以用SimMechanics接入口自动生成一个SimMechanics模型。这个数据文件捕获计算机辅助设计(CAD)装配所拥有的重要的动态特征,表现出一个机械系统。最终的模型一旦被生成,也可以像其他SimMechanics模型一样进行修改和扩充。

八、 更多的信息

阅读其他部分的SimMechanics文件材料可以给你更多的关于如何使用SimMechanics软件的细节信息。

九、 用户指南

SimMechanics用户指南包括建模和仿真。共有以下几章:

机械系统建模。关于机器,刚体,关节,约束,驱动,传感器,执行器和力的单元。

运行机械模型。关于仿真和代码生成。

分析运动。关于运动分析模式。

运动,控制和实时仿真。关于与运动分析,控制设计,代码生成和回路中硬件相结合的高级应用。

十、 可视化和输入指南

SimMechanics可视化和输入指南包括在空间中可视化机器和从外部输入明确的机械设计信息。它共包括以下几章:

介绍可视化和动画化。一个综述。

使用可视化窗口开始。实用的机器可视化步骤。

用户自定义的可视化和动画化。用你自己定义的刚体形状和颜色扩展可视化。

输入机械模型。开始通过从外部输入机械信息生成模型。

计算机辅助设计转换。关于计算机辅助设计和SimMechanics模型的转换。

附例:运行一个演示模型

一、 这个演示代表了什么

这个演示模型用模块库里的一些模块仿真了一个简单的具有反馈控制的机器。你将看到SimMechanics特征如何在标准的Simulink特征之上建立机械系统模型。

这个演示模型仿真的是一个带传动装载输送机。通过一个简单的控制器(Controller没有显示),结合一个传感器和一个执行器,用转矩的一个饱和极限和反终结逻辑指导机器。你可以调整控制器,还可以设置推杆的停止点。

装载输送机

二、 观察输送机的机械图

点击此处打开详细的输送机机械图。

三、 这个演示说明了什么

这个输送机演示举例说明了一些重要的SimMechanics特征:

用刚体模块和关节模块分别代表刚体和自由度。

SimMechanics模块和Simulink模块一起使用。

执行器给SimMechanics模块反馈Simulink信号,传感器从SimMechanics模块反馈Simulink信号。

把一组模块封装进子系统

用组成机器的所有刚体可视化和动画化机器。

四、 打开这个模型

选择以下方式中的一种快速的打开输送机演示模型:

MATLAB命令行里输入mech_conveyor

如果你在MATLAB帮助浏览器里,单击此处模型的名字mech conveyor

1 打开常规的SimMechanics演示

你可以通过以下方式打开完整的SimMechanics演示列表:

1) 单击MATLAB桌面左下角的Start按钮。

2) 在快捷菜单里选择Simulink,再选择SimMechanics,最后选择Demos

你可以在模型列表里查找和选择任何特定的演示入口。

作为另一种选择,你也可以通过在MATLAB命令行里输入demo Simulink SimMechanics或者demo(‘Simulink’,‘SimMechanics’)打开相同的SimMechanics演示列表。

2 框图模型

框图模型在模型窗口里打开。

3 模型包括什么

以下是模型的决定性特征:

忽略一会儿位置控制器(Position Controller)模块,关节传感器模块和关节执行器模块,注意图形中由刚体和关节树状图组成的装载机械,装载输送机:

图中有四个旋转连接刚体和一个平滑推动刚体,还有三个用地面模块表示的位于固定装配上的地面点。双击刚体模块和地面模块查看它们的对话框。

推动刚体相对于另一刚体和装配上的地面点产生平移运动,旋转刚体相对于另一刚体和装配上的地面点产生旋转运动。一共有七个关节代表了系统里的七个表面自由度,但是几何约束限制了其中一个自由度。双击旋转模块,在对话框里查看旋转自由度是怎么表达的。

棱柱(Prismatic)模块表达的是推动(Pusher)模块相对于地面2Ground_2)的线性运动。旋转(Revolute)模块表达的是连接模块4Link4)相对于地面点1Ground_1)的角运动。

关节传感器(Joint Sensor)通过棱柱(Prismatic)模块探测推动(Pusher)模块的位置。关节执行器(Joint Actuators)通过旋转(Revolute)模块向连接4Link4)施加转矩。双击传感器模块和执行器模块查看机械运动,力和转矩是如何转化为Simulink信号的。

位置控制器(Position Controller)子系统把推动(Pusher)模块的位置信息转化为驱动旋转(Revolute)模块和连接4Link4)的反馈信号。你可以打开位置控制器模块查看这个由标准Simulink模块组成的子系统。

参考位置(Reference Position)模块通过调制驱动旋转(Revolute)模块的控制信号,控制推杆的停止位置。维持推杆的初始位置需要给旋转模块施加一个固定的转矩。

打开显示器(Scope)模块。你在可以在位置测量图(Measured Position plot)中看到推动(Pusher)模块和地面点2Ground_2)的相对位置(mm)。你还可以在转矩图(Torque plot)中看到连接4Link4)和地面点1Ground_1)的相对转矩(N-m)。

五、 运行这个模型

当你第一次打开这个模型你可以通过以下方式运行它:

1、 Simulation菜单里,点击Configuration Parameter(配置参数)。配置参数对话框出现。选择解算器(Solver)项:

a) 现在的停止时间(Stop time)是无穷(inf),所以开始以后仿真会一直进行下去。你就让它设置为无穷(inf),在仿真开始一段时间后你可以手动停止。

如果你愿意,稍后你也可以设置一个有限的停止时间(单位s)。

b) 将解算器选择项(Solver options)设置为默认(default),然后关闭对话框。

2、 Simulation菜单里选择开始(Start)。在微软的Windows系统下,你也可以在模型窗口工具栏里点击Start按钮。

在显示器(Scope)图上,显示的是为维持初始位置和保持本质上的恒定所需的推杆位置和转矩。所施加的转矩是与初始推杆位置相配合的。

3、 在仿真开始时认真注意细节,在仿真开始不超过20秒之前停止仿真,并放大显示器(Scope)图。

六、 修改这个模型

你可以尝试对演示进行一些修改。以下内容说明了你可以通过调整简单的控制器来改变推杆的运动。

在进行这些修改之前,你最好关闭然后重新打开演示。

改变推杆的相对位置

相对位置(Reference Position)模块其实是在Simulink数学模块库里的一个滑动增益(Slider Gain)模块,它控制着推杆的停止位置。

你可以通过改变相对位置模块来改变推杆的停止位置:

1) 打开相对位置模块。你会看到一个可调整的滑动条。它是用来设置推杆的停止点的。

2) 单击进入低(Low)和高(High)的部分,输入滑动条滑动范围允许的最低值和最高值。演示默认的最低和最高值是00.2(单位是m)。

3) 你可以在中间框里输入一个值,设置推杆的停止点。你也可以在滑动条的最低和最高范围内通过点击或者拖动滑块的位置来设置推杆的停止点。默认值是0m)。

你可以用以下两种方法改变仿真时的相对位置:

首先重新设置相对位置模块,然后运行演示。你会看到推杆的运动轨迹改变了,有了新的停止点。

例如,重新设置相对位置值为0.1,然后重新开始演示,打开显示器(Scope)图,并应用其中的自由调整大小(Autoscale)和放大(zooming)。现在测量的位置图渐近线在100mm0.1m)附近,为了维持推杆位置所施加的扭矩也改变了。

打开演示,保持相对位置模块打开,在仿真进行时左右移动滑动条上滑块的位置。观察显示器。所测的位置和所需的转矩在随着相对位置的改变而改变。

七、 模型可视化和动画化

举例说明另一个你可以修改的SimMechanics的强大特征,即可视化一个机器和动画化它的仿真。

你可以通过打开SimMechanics可视化窗口可视化和动画化输送机模型。可视化窗口允许你用两种标准的抽象形式表现刚体:

等价椭球体应用了刚体的惯性张量和质量。每个刚体都只有唯一一个拥有它的质量和惯性张量的等价均质椭球体。

凸壳应用了刚体坐标系原点定义刚体的外轮廓形状。

1、 凸壳

首先尝试用凸壳表现输送机刚体:

1) Simulation菜单里选择配置参数(Configuration Parameter)。配置参数对话框出现。

2) 选择SimMechanics项。在可视化(Visualization)的部分,选择在图表更新后显示机器(Display machine after updating diagram)复选框和在仿真过程中显示动画(Show animation during Simulation)复选框。

3) 其他设置默认。关闭对话框。在编辑(Edit)菜单里选择更新图表(Update Diagram)。

一个SimMechanics可视化窗口出现,显示输送机停止在初始位置。

刚体显示的是默认的几何体,比如凸壳。

刚体和刚体坐标系三向坐标轴也是按照默认设置显示。

4) 把相对位置设置为一个非零的值,例如0.1或者0.2

5) 重新开始仿真。窗口里的输送机动画开始运动。你可以把输送机的运动和显示器窗口图做对比。

6) 点击可视化窗口里的一个刚体。在模型窗口,相对应的刚体变为红色。可视化窗口左下角出现了这个模块的名字。

7) 查看可视化窗口的菜单和工具栏。

在这里,你可以重新配置显示属性:刚体,刚体坐标系三向坐标轴,

已上色的刚体表面斑块,同一刚体上相连的刚体坐标系,以及视点方向。

8) 为了进行下面的步骤,请保持可视化窗口打开。

2、 等价椭球体

现在用等价椭球体表现输送机刚体:

1) 在菜单栏的建模(Model)菜单里选择刚体几何体(Body Geometries),当复选标志出现在菜单入口旁边时选择椭球体(Elliposoids)。

可视化窗口的显示改变。输送机停止在它的初始位置,但是是以等价椭球体的形式显示的。

2) 重新打开仿真。可视化窗口里的输送机模型开始运动。

3) 尝试使用菜单里的可视化设置。工具栏里也包含菜单里的大多数功能。

4) 当动画播放时,打开相对位置模块,左右移动滑块。随着你的调整,你除了能看到显示器图的变化,窗口里的推杆空间轨迹动画也在随之改变。

3、 观看输送机动画

如果你连接了网络,并且在你的系统里安装了兼容AVI文件的播放器,并且想观看一个系统里已记录的动画:

1) 点击下面的链接。当下载对话框出现时,选择保存文件(save to file),然后指定一个文件名并把它保存在你的系统里。

2) 点击把这个AVI文件保存在你的系统里。

3) 当下载完成时,在你的系统里打开这个AVI动画。

如果你没有兼容AVI文件的播放器,可以考虑使用MATLAB Video Reader和它的读取途径代替。

这是一个压缩的AVI录像,需要你安装Indeo5视频解码器解压缩和播放。

这个动画演示的是随着控制滑块的移动,输送机来回运动。这个动画根据预先设定的视角,逐步显示机器不同方向的透视图。

本文来源:https://www.2haoxitong.net/k/doc/8082047c8e9951e79b8927fe.html

《SimMechanics简介(官网).doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式