这个例子说明了如何使用模拟3D消息集和仿真三维信息获取当您运行双车道变更操作块与三维可视化环境中进行通信。具体来说,可以使用:
仿真三维信息获取阻止取回车辆机动过程中有多少锥命中。
模拟3D消息集块,以控制交通信号光。
对于所需的最低硬件来运行示例,请参阅三维可视化引擎的要求。
随着三维可视化环境中启用,运行一个双车道变更操作命中锥体。
创建并打开双车道变换参考应用项目的工作副本。
启用3D可视化环境。在可视化子系统,打开3D引擎阻挡掩模,并选择启用。应用更改并保存模型。
另外,在MATLAB®命令提示符下,输入验证码。
在模型的顶层,设置车道变换基准发生器阻止参数,使车辆不顺利完成动作。设置这些块参数,应用更改,并保存模型。
演习开始时间至五
。
纵向入口速度设定值至40
。
另外,在MATLAB命令提示符下,输入验证码。
运行演习。作为模拟运行,在AutoVrtlEnv窗口中,可以看到车辆撞击的锥体。
使用仿真三维信息获取阻止取回车辆机动过程中有多少锥命中。默认情况下,机动采用双车道变换的场景。
导航到可视化> 3D引擎子系统。右键单击3D引擎块,然后选择面具>下看面具。在可视化> 3D引擎> 3D引擎子系统,插入这些块:
仿真三维信息获取
显示
数学函数
设置仿真三维信息获取块参数,以便检索块锥从双车道变换场景数据。设置这些块参数,应用更改,并保存模型。
信号名称,SigName至NumOfConesHit
数据类型,数据类型至布尔
邮件大小不同,msgsize至[2 15]
采样时间至-1
另外,在MATLAB命令提示符下,输入验证码。
设置数学函数块输出维参数转
。当你运行仿真时,数学函数块输出[15 2]
阵列。
另外,在MATLAB命令提示符下,输入验证码。
连接仿真三维信息获取,数学函数和显示块,如图所示。确认块参数。保存模型。
验证模拟3D场景配置之前的程序执行仿真三维信息获取块。这样一来,虚幻引擎®三维可视化环境准备前的数据仿真三维信息获取块接收它。要检查块执行顺序,右键单击块,然后选择属性。在一般选项卡,确认这些优先设置:
模拟3D场景配置-0
仿真三维信息获取-1
关于执行顺序的更多信息,请参阅控制和显示执行顺序(金宝appSIMULINK)。
运行演习。作为模拟运行时,显示块与更新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消息集块参数以使得该块的交通信号的数据发送到双车道变换的场景。设置这些块参数,应用更改,并保存模型。
信号名称,SigName至TrafficLight1
采样时间至-1
该表提供了现场交通信号灯的颜色对应于WriteMsg
在双车道变换的场景值。
模拟3D消息集块 |
|
---|---|
0 |
红色 |
1 |
黄色 |
2 |
绿色 |
另外,在MATLAB命令提示符下,输入验证码。
设置数据类型转换块参数数据转换为INT32
。设置这些块参数,应用更改,并保存模型。
输出数据类型至INT32
另外,在MATLAB命令提示符下,输入验证码。
设置楼梯发电机块参数来发送一个命令,对应于红色,黄色和绿色交通灯信号。设置这些块参数,应用更改,并保存模型。
时间至[0,2,3,5,8]
振幅至[0,0,1,2,2]
采样时间至1
另外,在MATLAB命令提示符下,输入验证码。应用程序块更改和保存模型。
连接块,如图所示。确认块参数和信号连接。保存模型。
验证模拟3D消息集之前的程序执行模拟3D场景配置块。那样,模拟3D消息集虚幻引擎3D可视化环境接收它之前准备的信号数据。要检查块执行顺序,右键单击块,然后选择属性。在一般选项卡,确认这些优先设置:
模拟3D场景配置-0
模拟3D消息集--1
关于执行顺序的更多信息,请参阅控制和显示执行顺序(金宝appSIMULINK)。
运行演习。作为模拟运行,在AutoVrtlEnv窗口,你可以看到TrafficLight1
光变从红到黄绿色。
时间范围(S) |
|
|
---|---|---|
0-3 |
0 |
红色 |
3-5 |
1 |
黄色 |
5-8 |
2 |
绿色 |
3D引擎|双车道变换|仿真三维信息获取|模拟3D消息集|模拟3D场景配置