SUMO和UNITY联合仿真交通网络方法及系统[发明专利]

(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 202011273988.0
(22)申请日 2020.11.14
(71)申请人 武汉中海庭数据技术有限公司
地址 430000 湖北省武汉市硚口区古田一
路28号新工厂产业园7号A楼
(72)发明人 李井颂 胡阳 李浩 洪叶 
罗跃军 
(74)专利代理机构 武汉蓝宝石专利代理事务所
(特殊普通合伙) 42242
代理人 高兰
(51)Int.Cl.
G06F  30/20(2020.01)
G06T  17/00(2006.01)
(54)发明名称
SUMO和UNITY联合仿真交通网络方法及系统
(57)摘要
本发明公开了一种SUMO和UNITY联合仿真交
通网络方法及系统,其通过使用Unity搭建一个
和SUMO仿真程序所用路网相对应的三维孪生场
景,并在该场景中放置三维孪生车辆,然后在
Unity场景中通过调用函数库TraCI.NET中的车
辆位置、姿态及红绿灯状态的函数,利用SUMO仿
真程序返回的信息更新三维孪生场景中红绿灯
的相位以及三维孪生车辆的位置、姿态,从而实
现SUMO交通仿真的三维效果。本发明选用Unity
制作三维孪生仿真场景,弥补了SUMO在三维显示
方面的不足;将Unity强大的三维图形功能与
SUMO强大的微观交通仿真功能相结合,能够方便
的对微观交通进行仿真,且能够形象直观的看到
仿真效果。权利要求书2页  说明书5页  附图1页CN 112434412 A 2021.03.02
C N  112434412
A
1.一种SUMO和UNITY联合仿真交通网络方法,其特征在于,包括如下步骤:
使用建模软件分别制作道路网络模型交通灯模型、车辆模型;
创建一个Unity项目,将所述道路网络模型、交通灯模型、车辆模型导入Unity项目,使用所述道路网络模型、交通灯模型、车辆模型制作三维孪生场景;
建立Unity项目与SUMO仿真程序之间的连接,定时获取SUMO仿真程序中交通灯模型、车辆模型的各项状态信息,根据获取的状态信息对三维孪生场景中的交通灯模型、车辆模型进行状态迭代更新。
2.根据权利要求1所述SUMO和UNITY联合仿真交通网络方法,其特征在于,所述建立Unity项目与SUMO仿真程序之间的连接,具体包括:
使用函数库TraCI.NET连接SUMO仿真程序,并建立一个字典用来记录所有的车辆,其中,字典的键为SUMO中车辆的id,值为三维孪生车辆的引用。
3.根据权利要求1所述SUMO和UNITY联合仿真交通网络方法,其特征在于,所述定时获取SUMO仿真程序中交通灯模型、车辆模型的各项状态信息,根据获取的状态信息对三维孪生场景中的交通灯模型、车辆模型进行状态迭代更新,具体包括:
通过函数库TraCI.NET中的位置信息获取函数定时查询SUMO仿真程序中所有车辆在道路网络上的位置,获取到位置后在三维孪生场景中分别生成一个对应的三维孪生车辆添加到道路网络模型中,并将该车辆添加到字典;
通过函数库TraCI.NET中的目的状态获取函数定时查询SUMO仿真程序中已经到达目的地将要被删除的所有车辆,在道路网络模型中销毁对应的三维孪生车辆,并从字典中移除;
遍历字典,使用字典的键通过函数库TraCI.NET中的运动状态获取函数定时查询SUMO 仿真程序中对应车辆id的运动状态,根据查询得到的数据更新三维孪生场景中对应车辆id 的运动状态;
通过函数库TraCI.NET中的相位获取函数定时查询每个交通灯的相位,查询到之后更新三维孪生场景中交通灯的颜。
4.根据权利要求3所述SUMO和UNITY联合仿真交通网络方法,其特征在于,所述对应车辆id的运动状态包括位置、姿态、速度。
5.根据权利要求4所述SUMO和UNITY联合仿真交通网络方法,其特征在于,所述对应车辆id的运动状态还包括车轮的旋转角度,利用速度结合三维孪生车辆的车轮半径计算得到车轮的旋转角度。
6.根据权利要求1所述SUMO和UNITY联合仿真交通网络方法,其特征在于,在每一次三维孪生场景中的交通灯模型、车辆模型进行状态迭代更新后,均通过函数库TraCI.NET中的步进控制函数控制控制SUMO仿真程序的步进,重启开始进行下一次迭代更新,如此循环。
7.一种SUMO和UNITY联合仿真交通网络系统,其特征在于,包括如下功能模块:
模型建立模块,用于使用建模软件分别制作道路网络模型、交通灯模型、车辆模型;
三维场景建立模块,用于创建一个Unity项目,将所述道路网络模型、交通灯模型、车辆模型导入Unity项目,使用所述道路网络模型、交通灯模型、车辆模型制作三维孪生场景;
状态更新模块,用于建立Unity项目与SUMO仿真程序之间的连接,定时获取SUMO仿真程序中交通灯模型、车辆模型的各项状态信息,根据获取的状态信息对三维孪生场景中的交通灯模型、车辆模型进行状态迭代更新。
8.一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述SUMO和UNITY联合仿
真交通网络方法的步骤。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述SUMO和UNITY联合仿真交通网络方法的步骤。
SUMO和UNITY联合仿真交通网络方法及系统
技术领域
[0001]本发明涉及交通仿真技术领域,尤其是涉及一种SUMO和UNITY联合仿真交通网络方法及系统。
背景技术
[0002]SUMO是一款开源的微观交通仿真软件。使用该软件进行仿真需要编写三个文件:(1)道路网络文件——该文件可使用软件自带的路网编辑器生成,也可使用由OSM等其他地图转换而来;(2)车流信息文件——需要在该文件中定义车辆的出发时间以及车辆在道路网络文件中的行驶路线;(3)仿真配置文件——需要在该文件中指明仿真所用的道路网络文件以及车流信息文件。拥有上述三个文件之后,即可进行交通仿真,从而可查看当前交通流下道路网络的拥堵情况等交通状态。
[0003]TraCI是SUMO仿真程序的一个函数库,提供了一些获取路网中交通灯相位以及车辆位置等信息的函数。
[0004]Unity是一款三维游戏引擎,提供了强大的三维实时渲染类库,使用这些类库可以轻松开发出一款三维游戏。
[0005]虽然SUMO仿真程序能够很容易的对微观交通进行仿真,然而他并没有三维显示功能,仅仅是将道路网络、车辆、红路灯等用一些简单的二维图形表示,不够形象,缺乏直观。
发明内容
[0006]本发明的目的在于克服上述技术不足,提出一种SUMO和UNITY联合仿真交通网络方法及系统,解决现有SUMO仿真程序无法进行三维显示的问题。
[0007]为达到上述技术目的,本发明的技术方案第一方面提供一种SUMO和UNITY联合仿真交通网络方法,其包括如下步骤:
[0008]使用建模软件分别制作道路网络模型、交通灯模型、车辆模型;
[0009]创建一个Unity项目,将所述道路网络模型、交通灯模型、车辆模型导入Unity项目,使用所述道路网络模型、交通灯模型、车辆模型制作三维孪生场景;
[0010]建立Unity项目与SUMO仿真程序之间的连接,定时获取SUMO仿真程序中交通灯模型、车辆模型的各项状态信息,根据获取的状态信息对三维孪生场景中的交通灯模型、车辆模型进行状态迭代更新。
[0011]本发明第二方面提供一种SUMO和UNITY联合仿真交通网络系统,其包括如下功能模块:
[0012]模型建立模块,用于使用建模软件分别制作道路网络模型、交通灯模型、车辆模型;
[0013]三维场景建立模块,用于创建一个Unity项目,将所述道路网络模型、交通灯模型、车辆模型导入Unity项目,使用所述道路网络模型、交通灯模型、车辆模型制作三维孪生场景;
[0014]状态更新模块,用于建立Unity项目与SUMO仿真程序之间的连接,定时获取SUMO仿真程序中交通灯模型、车辆模型的各项状态信息,根据获取的状态信息对三维孪生场景中的交通灯模型、车辆模型进行状态迭代更新。
[0015]本发明第三方面提供一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种SUMO和UNITY联合仿真交通网络方法的步骤。
[0016]本发明第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述一种SUMO和UNITY联合仿真交通网络方法的步骤。
[0017]与现有技术相比,本发明通过使用Unity搭建一个和SUMO仿真程序所用路网相对应的三维孪生场景,并在该场景中放置三维孪生车辆,然后在Unity场景中通过调用函数库TraCI.NET中的车辆位置、姿
态及红绿灯状态的函数,利用SUMO仿真程序返回的信息更新三维孪生场景中红绿灯的相位以及三维孪生车辆的位置、姿态,从而实现SUMO交通仿真的三维效果。本发明选用Unity制作三维孪生仿真场景,弥补了SUMO在三维显示方面的不足;将Unity强大的三维图形功能与SUMO强大的微观交通仿真功能相结合,能够方便的对微观交通进行仿真,且能够形象直观的看到仿真效果。
附图说明
[0018]图1是本发明实施例所述的一种SUMO和UNITY联合仿真交通网络方法的流程框图;[0019]图2是本发明实施例所述的一种SUMO和UNITY联合仿真交通网络系统的模块框图。
具体实施方式
[0020]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0021]如图1所示,本发明实施例提供了一种SUMO和UNITY联合仿真交通网络方法,其包括如下步骤:
[0022]S1、使用建模软件分别制作道路网络模型、交通灯模型、车辆模型;
[0023]S2、创建一个Unity项目,将所述道路网络模型、交通灯模型、车辆模型导入Unity 项目,使用所述道路网络模型、交通灯模型、车辆模型制作三维孪生场景;
[0024]S3、建立Unity项目与SUMO仿真程序之间的连接,定时获取SUMO仿真程序中交通灯模型、车辆模型的各项状态信息,根据获取的状态信息对三维孪生场景中的交通灯模型、车辆模型进行状态迭代更新。
[0025]具体的,步骤S3中,所述建立Unity项目与SUMO仿真程序之间的连接,具体包括:[0026]使用函数库TraCI.NET连接SUMO仿真程序,并建立一个字典用来记录所有的车辆,其中,字典的键为SUMO中车辆的id,值为三维孪生车辆的引用。
[0027]步骤S3中,所述定时获取SUMO仿真程序中交通灯模型、车辆模型的各项状态信息,根据获取的状态信息对三维孪生场景中的交通灯模型、车辆模型进行状态迭代更新,包括:[0028]通过函数库TraCI.NET中的位置信息获取函数定时查询SUMO仿真程序中所有车辆

本文发布于:2024-09-20 23:44:02,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/417472.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:模型   车辆   交通灯   状态   道路
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议