主要内容

连接虚拟世界和模型

在你创建一个虚拟世界和一个Simulink之后金宝app®模型,让虚拟世界与动态系统仿真进行交互,使用模型和虚拟世界使用金宝appSimulink 3D Animation™块。

模拟Simulink模型为金宝app动态系统生成信号数据。从模型输出数据以控制和动画虚拟世界,使用aVR水槽块。

将模拟数据输出到虚拟世界

这个示例展示了如何使用来自模型的仿真数据来显示仿真的动态可视化。该示例模拟飞机起飞,并允许您在虚拟世界中查看它。此示例假设您正在使用金宝app仿真软件3 d动画观众。

小费

有关如何使用VR接收器块的其他示例,请参阅磁悬浮模型几何变形

  1. 在MATLAB®命令窗口中,键入

    vrtut2.

    Si金宝appmulink模型打开时没有金宝app仿真软件3 d动画将模型连接到虚拟世界的块。

  2. 通过单击来模拟模型模拟部分模拟Simulink To金宝appolStrip中的选项卡。

    在范围窗口中观察模拟的结果。

  3. 在模型的右侧,左键单击并键入VR水槽.在对话框中,选择VR水槽块。

  4. 选择虚拟世界以进行模拟可视化。双击VR水槽块。点击浏览并选择vrtkoff.wrl

  5. 将虚拟世界与模型相关联。当源文件文本框中,单击浏览按钮。打开“选择世界”对话框。找到的文件夹matlabroot\ toolbox \ sl3d \ sl3ddemos.选择文件vrtkoff.wrl并点击好吧

  6. 在里面描述文本框,检查模型的简要说明。此描述显示在可用世界列表中金宝app仿真软件3 d动画服务器。

  7. 选择自动打开查看器参数,然后单击申请.VR接收器对话框显示虚拟场景节点树,显示关联虚拟世界的结构。

  8. 展开飞机(变换)节点。

    平面特性列表可以从Simulink接口驱动。金宝app该模型计算平面的位置和间距。

  9. 在里面飞机(变换)树,选择翻译回转字段,分别表示平面的位置和俯仰。点击好吧

    在Simuli金宝appnk图中VR水槽块用两个输入进行更新。

    第一个输入是平面旋转.用一个四元素向量定义旋转。前三个数字定义了旋转轴。在本例中,为[10 0 0]X-axis(见俯仰旋转轴模型中的块)。平面的间距被旋转表示X-轴。最后一个数字是旋转角度X设在,弧度。旋转是根据对象在空间中的方向,相对于它的父节点。

  10. 在Simuli金宝appnk模型中,连接到范围块标记展示音高平面旋转输入。

    第二个输入是飞机翻译.这个输入描述了平面在虚拟世界中的位置。这个位置由三个坐标x, y, z组成。连接向量必须有三个值。在这个例子中,跑道在X-Z.飞机(使用VR信号膨胀机堵塞)。这y-axis定义了飞机的高度。

  11. 在Simuli金宝appnk模型中,连接到范围块标记显示位置飞机翻译输入。

    除掉范围块。您的模型看起来类似于所示的图形。

  12. 双击VR水槽块。打开包含平面虚拟世界的查看器窗口。

    小费

    接下来打开模型时,关联的虚拟场景会自动打开。即使是这种行为也会发生金宝app仿真软件3 d动画与虚拟场景相关联的块是模型的一个子系统。

  13. 运行模拟。在里面金宝app仿真软件3 d动画查看器,从模拟”菜单上,单击“

    飞机向左移动,起飞。

输入虚拟世界数据到模型

你可以使用一个虚拟现实来源块提供虚拟世界之间的交互性和Simulink模型的仿真。金宝app这虚拟现实来源块注册用户与虚拟世界的交互,并将该数据传递给模型以影响模型的模拟。这虚拟现实来源阻止从“块”对话框中指定的虚拟世界字段中读取值,并将其值输入到模型。以这种方式使用块,您可以:

  • 使用虚拟世界的传感器数据来控制模拟。

  • 在虚拟世界和模型的仿真中提供用户导航和交互之间的交互性。

  • 对虚拟世界的事件进行模拟反应,例如时间滴答声或脚本输出。

  • 使用虚拟世界的静态信息,例如框的大小,来控制模拟。

例如,您可以在虚拟世界中定义设定值,这样用户就可以交互地指定虚拟世界对象的位置。然后,模拟对对象的位置变化作出响应。这虚拟现实来源Block可以从虚拟世界读取事件到模型中,比如时间滴答或脚本输出。这虚拟现实来源块还可以读取模型中关于虚拟世界的静态信息(例如,在虚拟世界3D文件中定义的盒子的大小)。属性的模型示例虚拟现实来源块,看磁悬浮模型虚拟控制面板

要为虚拟世界对象使用全局坐标,请包含变换该对象中的节点。双击打开第二个查看器窗口虚拟现实来源块。在第二个查看器窗口中(可以重叠第一窗口),选择模拟>块的参数.对于对象的变换节点,请选择延伸分支一个或两个金宝app仿真软件3 d动画将旋转和平移值转换为全局坐标的扩展:rotation_abs翻译_

看到利用全局坐标移动载荷的机械手的例子。有关使用VR Source块和其他方法在模型中提供交互性的更多信息,请参见使用传感器

改变关联的虚拟世界

您可以将不同的虚拟世界与Simulink模型关联起来,或者连接不同的信号。金宝app

将虚拟世界与Simulink模型相关联后,您可以选择连接到虚拟世界的其他虚拟世界或更改金宝app信号。此示例假定您已连接vrtut2.金宝app使用虚拟世界的Simulink模型。看输入虚拟世界数据到模型

  1. 双击VR水槽模型中的块。查看器打开。

  2. 的“块参数”对话框VR水槽块通过选择模拟>块的参数

  3. 源文件文本框中,单击浏览按钮。找到的文件夹matlabroot\ toolbox \ sl3d \ sl3ddemos.选择文件vrtkoff2.wrl.,然后点击好吧.在里面VR水槽对话框中,单击申请

    一个虚拟场景树出现在右侧,将不同的虚拟世界与模型联系起来。

  4. 展开飞机(变换)节点。

    平面变换树膨胀。现在,您可以从Simulink接口中看到您可以驱动的飞机的特征。金宝app该模型计算了该位置。

  5. 在里面平面变换树,选择翻译字段复选框。清除回转字段复选框。点击好吧

    VR水槽块更新并只更改一个输入,即飞机翻译.这VR水槽块已准备好与定义的新参数一起使用。

  6. 验证是否已连接正确的输出VR水槽块。的输出连接VR信号膨胀机连接到单个输入。

  7. 在里面金宝app仿真软件3 d动画查看器,从模拟菜单,再次运行模拟并观察模拟。

也可以看看

职能

相关的话题