SUMO 创建带有停车位的充电站 在停车位上充电

news2025/1/19 17:20:43

前言

SUMO提供的Charging Station是没有停车位的,车辆只有在通过充电站区域或者停在充电站区域内时才能被充电,这时充电的车辆就会占用道路。然而,真实世界中的情况通常是充电站设在路边,且提供一定量的车位用于停车,而不会占用道路。下面介绍创建这种带有停车位的充电站的方法。

创建带有停车位的充电站

方法是同时创建Parking Area和Charging Station,并使两者的起始位置重合。下面先介绍SUMO中的Parking Area,关于Charging Station部分,在我的专栏中有其他文章介绍。parking area有两种,分别是road-side parking area和individual parking area。

road-side Parking Area

使用这种方式创建的停车位受到parking area的起始位置startPos和终止位置endPos的约束,只能沿着路边在startPos到endPos的范围内设置停车位,而不能在路边的其他空白区域设置停车位,只是因此如果parking area的长度较短就设置不了很多停车位。效果如下图所示:
在这里插入图片描述
由于这种方式创建的停车位的位置比较受限,不是我们所需要的,因此重点介绍第二种。

individual parking spaces

上面的方式创建的停车位在路边,而这种方式可以任意指定每个停车位的坐标。
新建一个.add.xml文件:

    <additional>
    <parkingArea id="ParkAreaB" lane="-E0_0" startPos="50" endPos="70" roadsideCapacity="0" width="5" length="10" angle="30">
      <space x="0" y="60"/>
 	  <space x="10" y="60"/>
      <space x="20" y="60"/>
      <space x="30" y="60"/>
      <space x="40" y="60"/>
	</parkingArea>
    </additional>

在这种创建方式下,一般都讲roadsideCapacity指定为0,width和length指的是每个停车位的宽、长、angle是停车位与道路形成的夹角。
然后将上面这个文件添加到sumocfg文件中:
<additional-files value="parkingArea.add.xml"/>
要使车辆停在停车区,可以使用stop标签,例如:

    <route id="route0" edges="E1 E2">
        <stop parkingArea="ParkAreaA" duration="20"/>
    </route>

当车辆驶入停车场区域,并且设置了stop标签时,就会被自动送入停车位中(尽管停车场和停车位的距离还有很远)。当停车时间满之后,车辆会被送回停车场的位置。创建的停车场和停车位以及停车的过程如下图所示:
在这里插入图片描述
车辆到达停车场时被自动送到停车位(图中第一辆车在到达了停车场后被自动送入停车位,紧接着第二辆车也到达停车场,还没进入停车位)
在这里插入图片描述
第一辆车停车时间满后被送回停车场处,此时第二辆车刚好被送入了停车位。

在停车位上充电

只要将充电站和停车场的位置设置成完全一致的,并且在车辆的stop标签中同时添加chargingStation属性和parkingArea属性,当车辆在充电站充电时就会被自动送入停车位,且不影响充电。效果如下图:
在这里插入图片描述
两辆电动车正停在停车位上充电,虽然图中充电站绘制在车道上,但停车充电的电动车由于被送入了独立的停车位中,因此完全不影响后续车流的通行。
充电站和停车场的设置:

<chargingStation id="CS1" lane="-E0_0" startPos="50" endPos="70.00" power="200000.00" chargeDelay="1" chargeInTransit="0"/>
<parkingArea id="ParkAreaB" lane="-E0_0" startPos="50" endPos="70" roadsideCapacity="0" width="5" length="10" angle="30">
            <space x="0" y="60"/>
            <space x="10" y="60"/>
            <space x="20" y="60"/>
            <space x="30" y="60"/>
            <space x="40" y="60"/>
</parkingArea>

车流的设置如下,关键是stop标签中要同时设置parkingArea和chargingStation。

    <route id="route2" edges="E1 -E0">
        <stop parkingArea="ParkAreaB" chargingStation="CS1" duration="20"/>
    </route>
    <flow id="f_2" begin="3.00" route="route2" end="36.00" vehsPerHour="180.00" type="EV">
        <param key="actualBatteryCapacity" value="500"/>
    </flow>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/895931.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

探索OLED透明屏的多领域应用:技术驱动的未来之窗

OLED透明屏作为一项具有突破性技术的新兴产品&#xff0c;正在各个领域展现无限的可能性。 其独特的透明性和高对比度&#xff0c;使其在智能家居、汽车行业、商业展示、航空航天、教育与培训以及医疗健康等领域中得到广泛应用。 那么&#xff0c;尼伽将详细探讨OLED透明屏在…

程序的DAC检查与LSM简介

程序的DAC检查 在Linux中&#xff0c;程序的DAC&#xff08;Discretionary Access Control&#xff0c;自主访问控制&#xff09;检查是指操作系统对程序执行期间对文件和资源的访问权限进行的检查。 Linux使用一种基于权限的访问控制模型&#xff0c;其中每个文件和资源都与…

Linux学习之iptables过滤规则的使用

cat /etc/redhat-release看到操作系统是CentOS Linux release 7.6.1810&#xff0c;uname -r看到内核版本是3.10.0-957.el7.x86_64&#xff0c;iptables --version可以看到iptables版本是v1.4.21。 iptables -t filter -A INPUT -s 10.0.0.8 -j ACCEPT会在最后一行插入。 10…

借用空数组方法:处理类数组的对象的实用技巧

前言 NodeList 不是一个数组&#xff0c;是一个类似数组的对象 (Like Array Object)。虽然 NodeList 不是一个数组&#xff0c;但是可以使用 forEach() 来迭代。你还可以使用 Array.from() 将其转换为数组。 不过&#xff0c;有些浏览器较为过时&#xff0c;没有实现 NodeList.…

C++项目实战之演讲比赛流程管理系统

演讲比赛流程管理系统 1. 演讲比赛程序需求 1.1 比赛规则 学校举行一场演讲比赛&#xff0c;共有12个人参加。比赛共两轮&#xff0c;第一轮为淘汰赛&#xff0c;第二轮为决赛 每名选手都有对应的编号&#xff0c;如 10001 ~ 10012 比赛方式&#xff1a;分组比赛&#xff0…

git提交代码是用git-merge还是git-rebase呢?

什么是git merge&#xff1f; git merge是我们在git操作中频繁会用到的一个命令&#xff0c;它主要实现的功能便是为我们进行分支代码的合并&#xff0c;也就是将两个或两个以上的开发历史合并在一起的操作。 它有以下两种用途&#xff1a; 更新代码时&#xff0c;整合另一个…

行业资讯丨“燃气智慧化”到底是什么?

文章来源&#xff1a;网络 关键词&#xff1a;智慧燃气、智慧燃气场站、设备设施数字化、数字孪生、工业互联网 带你了解燃气信息化 随着科技的不断进步和信息化的快速发展&#xff0c;各行各业都在积极探索如何将技术应用于业务中&#xff0c;以提高效率和服务质量。 燃气…

Java实现钉钉企业内部应用机器和自定义机器人发送消息

前言 公司让写一个服务监控的功能,当监测到服务停止时,向钉钉群里推送报警信息。之前大概看到钉钉的开放平台的API文档,好像能群发消息的只有机器人。 钉钉开放平台目前提供三种机器人: 企业内部应用机器人 群模板机器人 自定义机器人 本来向用自己比较熟悉的自定义机器人…

初试时间官宣!研招网发布下半年重要时间节点!今日速报来了

距24考研初试还有127天&#xff0c;今天给大家带来初试和报名时间官宣消息、考研报名注意事项、研招网发布的2024考研“保姆级”下半年重要时间节点。有用记得收藏 24考研报名和初试时间官宣 已有学校在招生简章中明确24考研初试时间 初试时间预计为&#xff1a;2023年12月23…

当我们都是那个“和尚”:团队合作中的责任与动力

引言&#xff1a;三个和尚的故事 中国的古老民间故事中&#xff0c;有一个被广为传颂的故事 - 三个和尚的故事。该故事描述了三位和尚居住在远离水源的山上寺庙中。当只有一个和尚时&#xff0c;他每天下山提水&#xff0c;日复一日&#xff0c;从未间断。但当寺庙里有了三个和…

【Java】常见面试题:HTTP/HTTPS、Servlet、Cookie、Linux和JVM

文章目录 1. 抓包工具&#xff08;了解&#xff09;2. 【经典面试题】GET和POST的区别&#xff1a;3. URL中不是也有这个服务器主机的IP和端口吗&#xff0c;为啥还要搞个Host&#xff1f;4. 补充5. HTTP响应状态码6. 总结HTTPS工作过程&#xff08;经典面试题&#xff09;7. H…

后台程序 报错内容:java.sql.SQLException: Java heap space

原因有以下可能&#xff1a; 1、查询没有通过参数&#xff0c;而是直接查询出所有的记录&#xff1b; 2、是由于mysql单个字段存储的内容过大导致堆内存溢出&#xff1b; 3、JVM启动时&#xff0c;JVM堆会自动设置heap size值&#xff0c;值太小导致&#xff1b;

【高级程序设计语言C++】布隆过滤器

1. 布隆过滤器的概念2. 布隆过滤器的简单实现2.1. 布隆过滤器的长度和哈希函数的个数2.2. 布隆过滤器的结构2.2.1. 插入2.2.2. 查询2.2.3. 误判率的测试 2.3. 布隆过滤器的删除 1. 布隆过滤器的概念 布隆过滤器&#xff08;Bloom Filter&#xff09;是一种用于快速判断一个元素…

前端实习day30

今天又是一个繁忙的一天&#xff0c;加功能&#xff0c;改样式&#xff0c;改得头皮发麻&#xff0c;预定的任务还是没能完成&#xff0c;改起来真得太头疼&#xff0c;代码太乱了&#xff01;&#xff01;昨天那个bug&#xff0c;今天问了一下同事&#xff0c;不到五分钟就解决…

【面试八股文】每日一题:谈谈你对线程的理解

每日一题-Java核心-谈谈你对线程的理解【面试八股文】 Java线程是Java程序中的执行单元。一个Java程序可以同时运行多个线程&#xff0c;每个线程可以独立执行不同的任务。线程的执行是并发的&#xff0c;即多个线程可以同时执行。 1. 线程的特点 Java中的线程有如下的特点 轻…

背包问题 - 动态规划

1. 背包问题总结 暴力的解法是指数级别的时间复杂度。进而才需要动态规划的解法来进行优化&#xff01; 背包问题是动态规划&#xff08;Dynamic Planning&#xff09; 里的非常重要的一部分,关于几种常见的背包&#xff0c;其关系如下&#xff1a; 2. 01背包 01背包问题是…

离谱,居然还有网络工程师不懂什么是Overlay网络?

下午好&#xff0c;我是老杨。 伴随着网络技术的发展&#xff0c;数据中心的二层组网结构早已出现了阶段性的架构变化。 数据中心网络分为了Underlay和Overlay两个部分&#xff0c;网络进入了Overlay虚拟化阶段。 很多小友希望能多输出一些新技术&#xff0c;这不&#xff0c…

去年校招面试中Hadoop高频都问些什么?秋招在即,快收藏!

1 总述 校招是远不同于社招的&#xff0c;企业对学生的要求更多的是一些概念性的东西&#xff0c;即所谓的八股文。但有些场景类的题目也是会涉及到&#xff0c;尤其是在一些中大厂的面试题中。场景题固然是能不能中大厂中必不可少的部分&#xff0c;但是基础牢不牢才是能不能…

Docker安装基础使用练习

目录 1、安装Docker-CE 1&#xff09;简单使用yum方式安装 ! 2&#xff09;配置镜像加速&#xff1a; 2、下载系统镜像&#xff08;Ubuntu、 centos&#xff09; 1&#xff09;先查看我们所需的镜像有哪些版本。使用search命令&#xff01; 2&#xff09;下载镜像使用的是pul…

Elasticsearch 查询之Function Score Query

前言 ES 的主查询评分模式分为两种&#xff0c;是信息检索领域的重要算法&#xff1a; TF-IDF 算法 和 BM25 算法。 Elasticsearch 从版本 5.0 开始引入了 BM25 算法作为默认的文档评分&#xff08;relevance scoring&#xff09;算法。在此之前&#xff0c;Elasticsearch 使…