此示例演示如何使用仿真3D消息集和模拟三维消息获取块,以便在运行双车道变换机动时与三维可视化环境通信。具体而言,您可以使用:
模拟三维消息获取阻止在机动期间检索车辆击中的锥体。
仿真3D消息集阻止控制交通信号灯。
有关运行该示例所需的最低硬件,请参阅3D可视化引擎要求。
通过启用3D可视化环境,运行击中锥体的双车道更改机动。
创建和打开双线车道更改参考应用程序项目的工作副本。
启用三维可视化环境。在可视化子系统中,打开3D引擎块掩码并选择启用。应用更改并保存模型。
或者,在MATLAB上®在命令提示下,输入此代码。
在模型的顶级,设置车道改变参考生成器封锁参数,使车辆无法成功完成机动。设置这些封锁参数,应用更改,并保存模型。
操纵开始时间到5.
。
纵向入口速度设定点到40
。
或者,在MATLAB命令提示下,输入以下代码。
运行机动。当模拟运行时,在AutoVrtlEnv窗口中,您可以看到vehicle hitting the cones.
使用模拟三维消息获取阻止在机动期间检索车辆击中的锥体。默认情况下,操作使用双车道更改场景。
导航到可视化> 3D引擎子系统。右键单击3D引擎阻止并选择面具>看看面膜。在可视化> 3D引擎> 3D引擎子系统中,插入这些块:
模拟三维消息获取
陈列
数学函数
设定模拟三维消息获取块参数,以便块从双车道更改场景检索圆锥体数据。设置这些块参数,应用更改,并保存模型。
信号名称,符号到努莫夫科尼希特
数据类型,数据类型到布尔值
消息大小,MsgSize到[2 15]
采样时间到-1
或者,在MATLAB命令提示下,输入以下代码。
设定数学函数堵塞产出维度参数到翻倒
。运行模拟时数学函数块输出A.[15 2]
大批。
或者,在MATLAB命令提示下,输入以下代码。
连接模拟三维消息获取那数学函数, 和陈列如图所示的块。确认块参数。保存模型。
验证模拟三维场景配置块在模拟三维消息获取堵塞。那种方式,虚幻引擎®3D可视化环境准备之前的数据模拟三维消息获取block收到它。若要检查块执行顺序,请右键单击块并选择性质.在全体的tab,确认这些优先事项设置:
模拟三维场景配置-0.
模拟三维消息获取-1
有关执行顺序的更多信息,请参阅控制和显示执行顺序(万博1manbetxSimulink)。
运行机动。随着模拟运行,显示块更新ReadMsg
布尔值1
当车辆撞到相应的锥体时。
结果表明车辆命中SM_CONE20.
那sm_cone29.
, 和SM_CONE30.
在机动期间。
此表提供了与之对应的双车道更改场景锥名称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(1,7) |
SM_CONE14. |
Readmsg(2,7) |
SM_CONE19. |
Readmsg(1,8) |
SM_CONE13. |
Readmsg(2,8) |
SM_CONE18. |
Readmsg(1,9) |
sm_cone12. |
Readmsg(2,9) |
SM_CONE17. |
Readmsg(1,10) |
sm_cone11. |
ReadMsg(2,10) |
SM_CONE16. |
Readmsg(1,11) |
SM_CONE25. |
Readmsg(2,11) |
SM_CONE30. |
Readmsg(1,12) |
SM_CONE24. |
Readmsg(2,12) |
sm_cone29. |
Readmsg(1,13) |
SM_CONE23. |
Readmsg(2,13) |
sm_cone28. |
Readmsg(1,14) |
SM_CONE22 |
Readmsg(2,14) |
SM_CONE27. |
Readmsg(1,15) |
sm_cone21. |
Readmsg(2,15) |
sm_cone26. |
导航到可视化> 3D引擎子系统。右键单击3D引擎阻止并选择面具>看看面膜。在可视化> 3D引擎> 3D引擎子系统中,插入这些块:
仿真3D消息集
数据类型转换
楼梯生成器
设定仿真3D消息集块参数,以便块将交通信号数据发送到双车道更改场景。设置这些块参数,应用更改,并保存模型。
信号名称,符号到交通灯1
采样时间到-1
此表提供了与场景交通信号灯颜色相对应的场景交通信号灯颜色书面形式
双车道变换场景中的值。
仿真3D消息集块 |
|
---|---|
0. |
红色的 |
1 |
黄色 |
2 |
绿色 |
或者,在MATLAB命令提示下,输入以下代码。
设定数据类型转换要将数据转换为的块参数int32
。设置这些块参数,应用更改并保存模型。
输出数据类型到int32
或者,在MATLAB命令提示下,输入以下代码。
设定楼梯生成器阻塞参数以发送与红色、黄色和绿色交通灯信号相对应的命令。设置这些块参数、应用更改并保存模型。
时间到[0.2,3,5,8]
振幅到[0,0,1,2,2]
采样时间到1
或者,在MATLAB命令提示下,输入此代码。应用块更改并保存模型。
如图所示连接块。确认块参数和信号连接。保存模型。
验证仿真3D消息集块在模拟三维场景配置堵塞。那样,仿真3D消息集在虚幻引擎3D可视化环境接收信号数据之前准备信号数据。要检查块执行顺序,请右键单击块并选择性质.在全体的tab,确认这些优先事项设置:
模拟三维场景配置-0.
仿真3D消息集--1
有关执行顺序的更多信息,请参阅控制和显示执行顺序(万博1manbetxSimulink)。
运行机动。当模拟运行时,在AutoVrtlEnv窗口中,您可以看到交通灯1
从红色变为黄色到绿色。
时间范围 |
|
|
---|---|---|
0–3 |
0. |
红色的 |
3-5 |
1 |
黄色 |
5-8 |
2 |
绿色 |
3D引擎|双车道变换|模拟三维消息获取|仿真3D消息集|模拟三维场景配置