V2X协议测试与应用集成仿真环境外文翻译资料

 2022-08-09 10:08

英语原文共 11 页,剩余内容已隐藏,支付完成后下载完整资料


V2X协议测试与应用集成仿真环境

摘 要

可以预见,用于交通管理的“车辆到一切(V2X)”通信技术的实施会产生许多深远而有益的后果。但是,在开发和实施任何硬件/软件基础结构之前,必须进行完整的测试。由于无法对实际车辆和交通状况进行物理重建,因此必须存在精确的仿真工具,以便对实际的交通场景和参与车辆之间的通信进行建模。为了实现对V2X技术进行仿真的需求,我们创建了一个集成的仿真环境,该环境将VISSIM(交通建模),MATLAB(交通管理应用程序)和NS3(通信网络仿真)这三个软件包结合在一起。模拟器的组合已经允许它们之间以在线交换数据的方式进行。这使人们可以看到流量管理算法是否产生了预期的效果以及所用通信协议的功效。为了测试模拟器,我们对Green Light Optimized Speed Advisory(GLOSA)应用程序进行了建模,该应用程序的目的是使用安装在信号灯本身上的发射单元将当前交通信号相位信息传达给来车。该信息将使车辆能够在不停车的情况下计算出穿越相关路口所需的速度。因此,可以为所有车辆创建“绿波”,而无需协调交通信号灯计时器,这在多路口交通走廊中可能相当复杂。

关键字:仿真,V2X,VISSIM,NS3,MATLAB,GLOSA

1 介绍

在过去的十年中,由于Vehicle-2-X的通信技术提高了交通安全性和效率而受到了相当多的关注。

IEEE 802.11p标准的创建以及5.9GHz频率带宽的专用于支持ITS应用程序的通信,已经激发了许多国家探索大规模实施该技术的可能性,其中之一是新加坡。这导致了NTU-NXP智能移动性测试平台的诞生,它将为研究人员提供理想的测试V2X技术和应用程序的场所。该项目得到新加坡经济发展局的支持,由南洋理工大学和恩智浦半导体共同合作实施。该试验台项目的一部分是开发一种模拟器,该模拟器能够在试验台和无法超出其应用场景的应用场景之外的区域上对V2X的能力进行建模和测试。为了模拟V2X操作,不存在任何自支持的模拟工具。但是,可以集成许多不同的仿真软件,当它们一起运行时,可以允许它们分析实施V2X技术的效果。以下是集成的V2X模拟器的三个主要组件:

交通模拟器:需要使用交通模拟器来创建准确的城市交通模型并调查实际交通问题。

网络模拟器:需要一个网络模拟器来在移动节点之间建立动态拓扑,重新创建与车辆专用网络(VANET)相对应的协议,并模拟车辆与路边单元以及彼此之间的通信

应用程序模拟器:可以设计许多应用程序来缓解流量问题。这些可大致分为“信息交换或分发”(例如音乐或旅行信息),“安全应用”(例如突然刹车,避免撞车等)或“车辆改道”(有关交通拥堵,道路的信息)。这些应用程序及其传达的信息需要尽可能详细地模拟。

为了使模拟器尽可能逼真,我们选择了微观交通模拟器VISSIM,NS3作为网络仿真, 而MATLAB作为应用程序仿真。我们选择VISSIM的原因是因为它能够

(1)在仿真中精确复制任何单个车辆的轨迹;

(2)模拟左右手的动作;

(3)满足先进的交通和交通信号灯要求;

(4)在每个模拟间隔(短至100 ms)产生车辆和基础设施(例如信号)信息;(5)与通讯模拟器和外部程序进行实时数据交换;

(6)对交通网络中的基础设施组件(例如汽车动态和路线)进行操作,以响应从应用程序/通信模拟器获得的刺激。

尽管交通模拟器SUMO被广泛用于车辆通信研究,但它不具备模拟左手驾驶的能力,例如在新加坡。我们选择NS3进行网络仿真,因为它包含用于仿真无线车载环境(WAVE)系统架构的模型库,并且是测试V2X协议最受信任的仿真器之一。选择MATLAB进行应用程序仿真是因为已针对新加坡设想的大多数V2X应用 程序的算法将使用MATLAB进行初始测试。集成仿真器将允许在真实的仿真平台上测试这些算法, 而无需将其转换为其他编程语言。选择用于演示模拟器的应用程序是Green Light Optimized Speed Advisory(GLOSA)应用程序。我们决定选择GLOSA,因为它已在其他仿真平台上进行了较早的测试,并具有必要的结果,可用于与我们的模拟器得出的结果进行比较,因为这项工作的主要目的是测试模拟器的应用程序测试能力。这项工作也是我们的基础步骤,我们将使用它进一步扩展仿真工具的能力,以进行涉及多个车辆以及安全和非安全应用程序的更大,更宏大的仿真练习。

2 文献调查

具体来说,有两种方法可以模拟中所述的V2X操作。这些分为以网络为中心的方法和以应用程序为中心的方法。以网络为中心的方法适用于通信网络的离线分析,而以应用程序为中心的方法则有助于在线分析,其中还研究了V2X应用程序对流量的影响。在着手该项目之前,对那些强调以应用程序为中心的仿真环境的工作进行了回顾。

VsimRTI 是目前使用最广泛的模拟器耦合环境之一,它使用IEEE标准进行建模和模拟(M&S)高级体系结构概念,以组合多个模拟器。它已用于集成模拟器的其他一些研究工作中。使用VsimRTI耦合的一些仿真器是SUMO和JiST / SWANS ,MATLAB CCMSim(Car2X 通道模型仿真器)和OMNET 和SUMO和OMNET ]。但是,这项工作的目的是将VISSIM用作交通模拟器,而VsimRTI中不提供大使界面。此外,由于我们打算将其用于应用程序仿真而不是默认的VSimRTI App,因此没有足够的信息来使用VsimRTI耦合MATLAB。除了VsimRTI,还开发了其他几种集成模拟器。例如,有文献[19]集成了VISSIM(交通模型),MATLAB(应用程序仿真)和NS2(网络仿真)来模拟VANET(车载Ad-Hoc网络)。但是,由于NS3在几个方面与NS2存在显着差异,因此尚无有关此平台是否已升级为可与NS3一起使用的信息。另外,还有交通和网络仿真环境(TraNS),它链接SUMO和NS2以及结合了SUMO和NS3的实时道路交通管理解决方案(iTetris)模拟器的集成无线和交通平台。TraNS的开发已经停止,并且不支持SUMO或NS3 的较新版本,而iTetris由于使用SUMO而不适用于我们的目的。除了这些环境外,还存在Veins框架,该框架是将OMNeT 和SUMO和INET框架结合在一起的集成平台,其作者将其自定义流量模拟器CARISMA与NS2结合在一起。此外,还存在NCTUns 4.0环境。这种环境的问题是交通/交通模拟器与网络模拟器高度集成,并且使用外部交通模拟器无法轻松实现和测试任何现实的道路交通情况[23]和[26]。但是,该平台是通过与VISSIM 结合而扩展的,该模块也灌输了专用于应用程序的消息集SAE J2735。

为了评估模拟器的性能,将结果与在[16]和[27]中进行的GLOSA模拟进行了比较。引用的主要目的是根据诸如油耗和车辆停车延迟等参数来检查GLOSA在改善交通性能方面的有效 性。在[16]中,使用VsimRTI进行模拟,将SUMO和JiST / SWANS耦合在一起,并将由于GLOSA导致的燃料消耗减少的结果用于比较。使用VISSIM 5.30进行流量模拟,使用VISSIM的Car2X 模块进行网络模拟。Car2X模块不再是VISSIM较新版本的功能。GLOSA应用程序是用C 编写的,并与接口使用VISSIM组件对象模块(COM)与VISSIM一起使用。我们将使用我们的模拟器获得的车辆停车延迟数据与本文中发布的数据进行了比较。

3 模拟器设计

图1显示了基本的模拟器耦合思想。VISSIM和MATLAB通过VISSIM的COM接口相互通信,该接口允许通过MATLAB访问交通仿真的大多数属性,例如车速,位置,信号相位信息等。VISSIM和MATLAB都已安装在Windows操作系统上,因为VISSIM被设计为仅可用于Windows。另一方面,NS3已针对Linux开发。为了将VISSIM/MATLAB与NS3耦合,我们使用了Linux虚拟机,在其上安装了NS3,并通过虚拟网络将主机(带有Windows)链接到虚拟机。然后,我们使用套接字API在MATLAB和NS3之间进行数据通信。

图1:仿真环境框图

为了设计用于V2X操作的在线模拟器,需要注意以下几点:

模拟器之间的同步:为了确保所有模拟器产生的结果都与该时刻相关,所用软件的模拟时间必须同步。VISSIM由MATLAB控制,MATLAB通过执行“RunSingleStep”命令来循环更新流量模型。RunSingleStep将模拟更新0.1秒(这是我们为这些模拟选择的分辨率)。另一方面,NS3是离散事件模拟器,这意味着模拟时间更新是基于事件的。

动态添加和删除节点显然,正在建模的仿真区域和VANET将不断看到车辆进出网络。另外,我们打算在相当长的一段时间内以可变的交通密度进行仿真,这意味着每个时刻进行通讯的车辆数量可能会不断变化。这是一个挑战,因为NS3只能使用恒定数量的预配置节点 执行仿真。为了在NS3中用可变数量的节点执行多个仿真,在一次仿真运行中,在3.2小节中提出了一种解决方法。

在NS3中选择适当的移动性模型为了确保VISSIM中的移动性信息正确反映在NS3中,选择适当的移动性模型很重要。为此,我们选择了内置的Waypoint移动模型。该模型允许添加航点,从而规定了车辆随时随地跟随。这允许以在线方式更新移动性模型。每当在NS3中向节点对象提供两个航路点时,模拟都会假设车辆以恒定速度在这两个点之间移动。在当前的模拟中,在每个模拟步骤中从VISSIM获取航路点信息,然后在NS3中进行相应更新

3.1 模拟器之间的同步

为了同步这三个模拟器,我们利用了套接字的阻塞特性。首先,NS3脚本进入配置阶段。一旦进入仿真阶段,代码将在第零个仿真秒被阻塞。此后,启动交通模拟并使其预热。一旦达到稳定状态,并且第一组车辆进入通信网络,它们的位置信息就会随其进入网络的时间一起发送到NS3(由MATLAB从VISSIM查询)。这允许在与VISSIM相同的虚拟时间在网络模拟器中安排位置更新事件,该事件当前已被阻止(通过MATLAB)并正在等待来自NS3的模拟结果。每隔一秒钟模拟一次阻塞事件,以从MATLAB中获取数据,以确保在VISSIM虚拟时间的每一秒,都将适当的车辆数据传递给NS3。图2给出了描述此过程的流程图。

3.2 动态添加和删除节点

由于一旦仿真开始就无法在NS3中创建和销毁节点,因此决定在NS3配置阶段创建一个固定数量的节点(该数量大于特定情况下车辆通信的数量。在给定的时间),并且不连接套接字。套接字将在运行时连接到通讯网络中尽可能多的车辆。为了在NS3中表征车辆,我们创建了一个Vehicle Node结构,其中包含NS3节点对象和其他与模拟相关的信息,这些信息是识别和管理节点及其代表的相应车辆所必需的。C / C 代码如下:

struct veh_Nodes

{

Ptr lt;节点gt; veh_node; //指向NS3节点对象的智能指针

Ptrlt;Socketgt; veh_socket;//指向附加到节点int veh_number的套接字对象的智能指针;//与节点bool in_use关联的车辆编号(从VISSIM获取); //根据当前是否正在使用该节点,确定为true或false

};

创建此类车辆结构对象的向量,然后将每个NS3节点对象加载到该对象的veh节点成员上。一旦新车辆进入通信网络,其信息将被立即加载到“不使用中”的“车辆节点”结构对象上,并连接一个插座。对于每个进入网络的新车辆都执行此步骤。车辆节点激活后,每秒钟仿真仅更新其移动性模型。为了在车辆离开网络后中断通信,将关闭其插座并将使用中的参数设置为“ False”。为了对不同的车辆使用相同的车辆节点结构对象,我们将套接字绑定到一个地址,然后在其上 重新启用“ Recv”调用。

图2:模拟器之间的数据流

3.3 在NS3中选择合适的移动性模型

为了准确建模车辆的移动性,我们在NS3中选择了Waypoint移动性模型。为了以在线方式提供航点,我们决定运行VISSIM,这是提前进行的一个仿真步骤,如[9]中所述。这样可以确保始发和目的地航路点始终可用于模拟节点移动性。

4 模拟设置

为了测试模拟器,我们决定对GLOSA应用程序进行建模,该应用程序涉及通过路边单元(RSU)向即将到来的车辆传达交通信号信息(当前相位,相位剩余时间和交通信号的位置)。GLOSA 的代码是用MATLAB编写的,它使用了NS3的仿真结果。NS3用于在RSU和车辆之间进行网络仿真,并提供有关RSU广播的数据包是被迎面而来的车辆接收还是丢弃的结果。根据结果,在VISSIM 中向相应的车辆发出了速度变化指令。

4.1 交通建模

VISSIM中的交通网络以新加坡的亚历山大路(图3a)的三个交叉路口为基础。出于V2X模拟的目的,仅假设在一个交叉路口的一个交通信号头(具有固定时间信号控制)配备了RSU。此外,假定RSU服务的链接上的所有车辆都配备了车载单元(OBU),并且可以识别相关的信号头。选 择了中间的十字路口,并对从西到东,通过路口。为了在此路线上具有较高的车辆密度,将6000 vph,1000 vph和1000 vph的车辆输入分配给了西部的三个网络入口。

选择上述链路的一部分以及与之相连的后续链路的一部分作为数据收集区域,图3b,其中包括上述交通路口。该部分的长度约为650 m。使用GLOSA和不使用GLOSA进行了两次模拟。对于两个模拟,随机种子均保持相同,以确保车辆流动模式尽可能相似。GLOSA可以指定的最小速度限制为25 km / h,最大速度为85 k

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[239761],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。