一、SUMO 路网生成方式

1、外部导入

可以从开源地图集 openstreetmap 中下载地图生成 *.osm 文件,然后通过 sumo 自带的 netconvert 程序将其转换为路网文件 (*net.xml)

2、netedit编辑

在可视化界面中编辑车道、路口、红绿灯等关键信息

3、人工定义

定义边、节点、连接、信号、配时等

二、外部导入路网仿真实例

打开 openstreetmap 官网,搜索地名,手动框选需要导出道路区域并导出,将生成的 *.osm 文件保存到 sumo 安装目录下新建的 map 文件夹中

导出的 .osm 文件中除了路网信息,还包含建筑、河流等信息,需要用 polyconvert 工具进行处理,方法如下:

打开下图所示的文件

复制文件中 Importing additional Polygons (Buildings, Water, etc.) 部分代码到Notepad++ ,另存为 typemap.xml ,保存到 .osm 文件相同路径。

打开…/bin/start-command-line.bat ,使用命令进入 *.osm 文件的文件夹
输入指令: netconvert --osm-files map.osm -o map.net.xml
转换成功会提示 Success

继续输入:polyconvert --net-file map.net.xml --osm-files map.osm --type-file typemap.xml -o map.poly.xml

此时 map 文件夹中已生成路网文件和地形文件

输入命令:python ...\sumo-0.30.0\tools\randomTrips.py -n map.net.xml -e 100 -l
生成随机行驶的车辆,-e 100 -l 为随机工具的配置,100为车辆数,可按实际情况设置

最后,使用 bin 文件夹下的 duarouter.exe 把随机的旅程和道路信息结合起来获得了车流文件(rou.xml)
输入命令:python ...\sumo-0.30.0\tools\randomTrips.py -n map.net.xml -r map.rou.xml -e 100 -l

在文件夹中可以看到车流文件 map.rou.xml

最后编写配置文件 (*.sumo.cfg)
在 Notepad++ 中输入下面的代码,保存为 map.sumo.cfg 文件

<?xml version="1.0" encoding="UTF-8"?><configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://sumo.sf.net/xsd/sumoConfiguration.xsd"><input><net-file value="map.net.xml"/><route-files value="map.rou.xml"/><additional-files value="map.poly.xml"/></input><time><begin value='0'/><end value='5000'/></time></configuration>


打开 sumo-gui.exe ,点击 File->Open Simulation Configuration ,找到配置文件,点击 “OK”

设置时延,点击运行,放大地图,即可观察到车辆运行效果

OMNeT++ SUMO 学习记录(六)SUMO 路网生成及简单仿真实例相关推荐

  1. gRPC学习记录(六)--客户端连接池

    对于客户端来说建立一个channel是昂贵的,因为创建channel需要连接,但是建立一个stub是很简单的,就像创建一个普通对象,因此Channel就需要复用,也就是说需要实现一个连接池应用.本文使 ...

  2. 【ROS学习记录】2021/7/2 Gazebo+rviz仿真(一)

    [ROS学习记录]2021/7/2 Gazebo+rviz进行turtlebot2仿真问题记录 ##小插曲 今天ubuntu挂载u盘一直读取失败所以做了一些令人窒息的操作,晚上开机就进入了initra ...

  3. SWIG学习记录(三)SWIG封装C#API实例

    目录 1 一个构建接口的策略 1.1 为SWIG编写C语言程序 1.2 SWIG接口文件 1.3 为什么使用单独的接口文件? 1.4 获取正确的头文件 1.5 如何处理main()函数 2 SWIG封 ...

  4. sumo之使用netedit绘制路网并进行简单模拟

    1.基本路网的构建(十字路口) 在下载完成sumo后,bin目录下有一个可以运行的nete.exe,点击可以进入界面进行路网的编辑,编辑生成.net.xml文件.点击进去后,点击File->Ne ...

  5. RabbitMQ学习记录(六)-应答机制

    消息应答机制 消息应答机制是保证RabbitMQ能够把消息发送给消费者,但是消息发送给了消费者并不能代表消息能正确被消费,所以保证消息能够被消费者正确消费才能够保证业务和数据的完整.        R ...

  6. sumo学习心得——让sumo跑起来

    刚看到sumo,我的心态是崩溃的,网上的资料也很少,不知道如何下手.好在本蓝灵机一动,找到了示例文件,模仿着弄了一下,成功跑了起来. 首先,一个仿真模型需要的基本文件如下: 网上冲浪的时候发现很多选手 ...

  7. 《你好,放大器》----学习记录(六)

    6 仪器使用.焊接.调试和撰写报告 6.1 仪器使用基础 6.1.1 正确连接仪器和电路板 直流稳压电源.信号源.示波器以及实验用电路板的一种参考接线方式,如图所示: 图片来源于<你好,放大器& ...

  8. SpringBoot 微信点餐系统学习记录六-订单表和订单详情表的后端开发

    在dataobject文件夹创建订单表和订单详情表的实体类 package com.imooc.dataobject;import com.imooc.enums.OrderStatusEnum; i ...

  9. OpenFoam学习记录2-网格的生成

    1 网格的约束 1.1 点 1)点的列表中不能有重复的点,不能包含不位于这个面上的点: 2)点的命名顺序遵循右手定则,大拇指方向为法向量的方向,四只手指的顺序为点的编号顺序: 1.2 面 1)面的中心 ...

最新文章

  1. Web 仿 App 动画竟然引出了“性能杀手”
  2. Java:对Java SE 6和Java SE 7的客户端和桌面部分的改进!
  3. 牛客网选择题之linux
  4. 互联网晚报 | 11月13日 星期六 | 腾讯、抖音商谈对等开放;荣耀电商平台粉丝破亿;碧桂园杨惠妍第九次成为中国女首富...
  5. 春节档总票房突破50亿元 《流浪地球》独占16亿!
  6. Linux mount命令使用
  7. 利用Python获取数组或列表中最大的N个数及其索引
  8. 2022 年值得尝试的 7 个 MQTT 客户端工具
  9. 1一10到时的英文单词_1到90的英语单词,1~10的英文单词!
  10. google测试框架
  11. (SQI)Face Recognition under Varying Lighting Conditions Using Self Quotient Image
  12. 英文邮件寻求帮助的礼貌用语
  13. java for循环打印平行四边形,正三角形,菱形和空心菱形
  14. 计算机网络复习(部分)
  15. (个人笔记) java 打印不了韩文,乌龙事件
  16. 手机读卡但显示无服务器,手机不读卡了怎么修复
  17. 玩转DWZ (一)---项目中怎么使用dwz
  18. 基于webassembly的前端视频编辑器(未写完)
  19. ath9k驱动内的数据发送过程
  20. led灯串怎么摆造型_客厅四周走一圈led灯槽边带吊顶造型效果图

热门文章

  1. 计算机基础上机考试系统,《计算机基础》课程上机考试系统的设计与实现
  2. Flex 布局(layout)
  3. 李佳琦薇娅发难、欧莱雅道歉,直播“最低价”是福还是祸?|钛度热评
  4. 2022-4-10 Leetcode 1984.学生分数的最小差值
  5. 微信消灭病毒哪个服务器好,消灭病毒怎么玩 微信小程序98k攻略
  6. 当webrtc遇上_ITERATOR_DEBUG_LEVEL
  7. 2022-1-30 牛客 C++ 项目 —— 终止进程
  8. leetcode系列-54. 螺旋矩阵
  9. 如何理解3D渲染引擎
  10. Linux | memtest使用的不完全总结