此示例演示如何使用模拟3D消息集和模拟三维消息获取块,以便在运行双车道变换机动时与三维可视化环境通信。具体而言,您可以使用:
模拟三维消息获取封锁以获取在机动过程中车辆撞上了多少路障。
模拟3D消息集阻挡控制交通信号灯。
有关运行该示例所需的最低硬件,请参阅虚幻引擎模拟环境的要求和限制.
启用3D可视化环境后,进行双线变道机动,撞到圆锥体。
创建并打开双线变道参考应用程序项目的工作副本。
启用三维可视化环境。在可视化子系统中,打开3 d引擎块掩码并选择启用。应用更改并保存模型。
或者,在MATLAB上®在命令提示下,输入此代码。
在模型的顶层,设置变道参考发生器封锁参数,使车辆无法成功完成机动。设置这些封锁参数,应用更改,并保存模型。
演习开始时间到5
.
纵向进口速度设定值到36
.
或者,在MATLAB命令提示下,输入以下代码。
执行这个动作30秒。当模拟运行时,在AutoVrtlEnv窗口中,你可以看到车辆撞击锥。
使用模拟三维消息获取封锁以获取在机动过程中车辆撞上了多少路障。默认情况下,机动使用双车道变道场景。
导航到可视化> 3D引擎子系统。右键单击3 d引擎阻止并选择面具>看下面具.在Visualization > 3D Engine > 3D Engine子系统中,插入以下模块:
模拟三维消息获取
陈列
数学函数
设定模拟三维消息获取块参数,以便块从双车道更改场景检索圆锥体数据。设置这些块参数,应用更改,并保存模型。
信号的名字,SigName到努莫夫科尼希特
数据类型、数据类型到布尔值
消息大小,MsgSize到15 [2]
采样时间到-1
或者,在MATLAB命令提示下,输入以下代码。
设定数学函数块输出维度参数到转置
。运行模拟时数学函数块输出[15 2]
数组中。
或者,在MATLAB命令提示下,输入以下代码。
连接模拟三维消息获取,数学函数,陈列块如图所示。确认块参数。保存模型。
验证模拟三维场景配置块在模拟三维消息获取块。这样,虚幻引擎®三维可视化环境准备数据前模拟三维消息获取block收到它。若要检查块执行顺序,请右键单击块并选择性质.在全体的tab,确认这些优先事项设置:
模拟三维场景配置- - - - - -0
模拟三维消息获取- - - - - -1
有关执行顺序的详细信息,请参见控制和显示执行顺序.
运行操作。当模拟运行时,显示块用ReadMsg
布尔值1
当车辆撞上相应的圆锥体。
结果表明车撞了SM_Cone20
在操作期间。
属性对应的双道变道场景锥名称ReadMsg
数组元素。
模拟三维消息获取块 |
不真实的®编辑锥名称 |
模拟三维消息获取块数组元素 |
虚幻编辑器圆锥名称 |
---|---|---|---|
ReadMsg (1, 1) |
SM_Cone5 |
ReadMsg (2, 1) |
SM_Cone10 |
ReadMsg(1、2) |
SM_Cone4 |
ReadMsg (2, 2) |
SM_Cone09 |
ReadMsg(1、3) |
SM_Cone3 |
ReadMsg(2、3) |
SM_Cone08 |
ReadMsg(1、4) |
SM_Cone2 |
ReadMsg(2、4) |
SM_Cone07 |
ReadMsg(1、5) |
SM_Cone01 |
ReadMsg(2、5) |
SM_Cone06 |
ReadMsg (1,6) |
SM_Cone15 |
ReadMsg (2,6) |
SM_Cone20 |
ReadMsg (7) |
SM_Cone14 |
ReadMsg(2、7) |
SM_Cone19 |
ReadMsg (8) |
SM_Cone13 |
ReadMsg (8) |
SM_Cone18 |
ReadMsg (9) |
SM_Cone12 |
ReadMsg (9) |
SM_Cone17 |
ReadMsg (10) |
SM_Cone11 |
ReadMsg(2,10) |
SM_Cone16 |
ReadMsg (11) |
SM_Cone25 |
ReadMsg (11) |
SM_Cone30 |
ReadMsg (12) |
SM_Cone24 |
ReadMsg (12) |
SM_Cone29 |
ReadMsg (13) |
SM_Cone23 |
ReadMsg (13) |
SM_Cone28 |
ReadMsg (14) |
SM_Cone22 |
ReadMsg (14) |
SM_Cone27 |
ReadMsg (15) |
SM_Cone21 |
ReadMsg (15) |
SM_Cone26 |
导航到可视化> 3D引擎子系统。右键单击3 d引擎阻止并选择面具>看下面具.在Visualization > 3D Engine > 3D Engine子系统中,插入以下模块:
模拟3D消息集
重复序列楼梯
设定模拟3D消息集块参数,以便块将交通信号数据发送到双车道更改场景。设置这些块参数,应用更改,并保存模型。
信号的名字,SigName到TrafficLight1
采样时间到-1
此表提供了与场景交通信号灯颜色相对应的场景交通信号灯颜色书面形式
双车道变换场景中的值。
模拟3D消息集块 |
|
---|---|
0 |
红色的 |
1 |
黄色的 |
2 |
绿色 |
或者,在MATLAB命令提示下,输入以下代码。
设定重复序列楼梯阻塞参数以发送与红色、黄色和绿色交通灯信号相对应的命令。设置这些块参数、应用更改并保存模型。
输出值向量:到[0 0 0 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
采样时间到1
输出数据类型到int32
或者,在MATLAB命令提示下,输入此代码。应用块更改并保存模型。
如图所示连接块。确认块参数和信号连接。保存模型。
验证模拟3D消息集块在模拟三维场景配置块。通过这种方式,模拟3D消息集在虚幻引擎3D可视化环境接收信号数据之前准备信号数据。要检查块执行顺序,请右键单击块并选择性质.在全体的tab,确认这些优先事项设置:
模拟三维场景配置- - - - - -0
模拟3D消息集- - - - - --1
有关执行顺序的详细信息,请参见控制和显示执行顺序.
运行机动。当模拟运行时,在AutoVrtlEnv窗口中,您可以看到TrafficLight1
光线由红到黄再到绿。
时间范围(s) |
|
|
---|---|---|
0–3 |
0 |
红色的 |
3 - 5 |
1 |
黄色的 |
5 - 30 |
2 |
绿色 |
双车道变换|模拟三维消息获取|模拟3D消息集|3 d引擎|模拟三维场景配置