【SCI一区】【电动车】基于ADMM双层凸优化的燃料电池混合动力汽车研究(Matlab代码实现)

news2024/10/7 18:22:56

目录

💥1 概述

1.2 电动车动力学方程

1.3 电池模型

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码、数据、文章讲解


💥1 概述

文献来源:

随着车辆互联性的出现,互联汽车 (CVs) 在增强道路安全、改善乘坐舒适性、提高交通效率和提高能源效率方面提供了巨大的潜力。通过从车对车 (V2V) 和车对基础设施 (V2I) 通信中获取交通信息,CV 能够更准确、更广泛地感知,从而有助于更好地做出决策。因此,CV 的个人或协作生态驾驶获得了更多通过优化车速来降低能源利用率的机会 [3]。燃料电池汽车(FCV)具有高效、节能、零污染等优点,已成为汽车电气化进程中的重要发展方向。 FCV可分为仅使用燃料电池的燃料电池电动汽车(FCEV)和燃料电池混合动力电动汽车(FCHEV)。

混合动力电动汽车 (HEV) 和插电式混合动力电动汽车 (PHEV),FCHEV 具有混合动力系统,包括电池在内的多种能源。混合动力汽车的能源消耗本质上与能源管理策略(EMS)相关,它决定了不同能源之间的能源分配。因此,FCHEV 的生态驾驶涉及能源管理,这比具有单一能源的车辆(例如内燃机汽车(ICEV)和电池电动汽车(BEV))更复杂。

互联燃料电池混合动力汽车的生态驾驶是一个速度规划和能量管理的耦合问题。为了减少计算量,双层优化解耦并分层解决上层子问题和下层子问题。本文提出了一种双水平凸方法,用于连接FCHEV通过多个信号交叉口的生态驾驶。在上层,将非线性交通灯约束转化为时变的线性状态约束,使用平均速度后,代价函数变成二次函数。在下层,对燃料电池系统和电池进行了模型的凸化。然后利用MOSEK求解器和交替方向乘法器(ADMM)算法依次求解上层速度规划和下层能量管理。结果表明,该方法在保持高能效的同时,大大降低了计算成本,计算时间仅为6.59%,与双级动态规划(DP)方法相比,燃油经济性基本相同。

 图 1 所示为所研究的 FCHEV 的动力总成拓扑结构,它由燃料电池系统和电池组组成。燃料电池系统通过 DC/DC 转换器连接到电源总线,并通过 DC/AC 逆变器与电池一起为电动机供电以驱动车辆。车辆和动力总成参数使用 ADVISOR中 FCHEV 的默认值,如表 1 所示。根据本文的主题,建模侧重于动力总成组件(即燃料电池、电池和电机)和其他组件(例如,DC/DC 转换器、DC/AC 逆变器和主减速器)的功率损耗不被考虑,这意味着它们的效率(例如,相应的 \etaDC/DC 、\etaDC/AC 和 \etaFD) 为 100%。

          

                                 图1 FCHEV 的动力总成拓扑结构

1.2 电动车动力学方程

电动车的纵向动力学可以表示为:

               \dot{v}=\frac{F_{d r v}+F_{b r k}}{M}-\left(G \sin \theta+G f_{r} \cos \theta+\frac{\rho A C_{D}}{2 M} v^{2}\right)

其中 v、M、fr 和 A 分别表示车辆的速度、质量、滚动阻力系数和正面面积;车辆加速度a=\dot{v}; Fdrv 和 Fbrk 分别是电动机提供的机械力和车轮摩擦制动器提供的力; G是重力加速度;\theta表示道路坡道,\rho和 CD 分别表示空气密度和阻力系数。

因此,电动车P_{dmd}的功率需求由下式求得:

                  P_{d m d}=\left(F_{d r v}+F_{b r k}\right) v

1.3 电池模型

本文采用包括内阻和电压源的等效电路模型,可表示为 :

                 \left\{\begin{array}{c} V_{b a t}=V_{O C}-I_{b a t} R_{0} \\ P_{b a t}=V_{b a t} I_{b a t} \\ P_{O C}=V_{O C} I_{b a t} \end{array}\right.

其中Vbat、VOC、Ibat、R0、Pbat和POC分别为电池的电压、开路电压、电流、内阻、输出功率和化学功率。 VOC 和 R0 都是电池充电状态 (SOC) 的函数。因此,电池电流 Ibat 由下式给出:

                   I_{b a t}=\frac{V_{O C}-\sqrt{V_{O C}^{2}-4 R_{0} P_{b a t}}}{2 R_{0}}

数学模型详细内容可以参考后文。在本文第四节——Matlab代码实现中有文档。

📚2 运行结果

 

 

 

 

 

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

🌈4 Matlab代码、数据、文章讲解

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

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

相关文章

分享5款非常实用而且很有特色的软件

​ 今天我要分享5款非常实用,并且很有特色的软件,这些都是可以在网上免费下载使用的,让大家工作和生活更便捷。 媒体播放器——Kodi ​ Kodi是一个媒体播放器,可以让你播放和管理你的本地或在线媒体库,如视频、音频、…

Fuzz学习笔记(二)—— TrapFuzzer环境搭建

Fuzz学习笔记(二)—— TrapFuzzer环境搭建 TrapFuzzer介绍基本用法1. 插桩2. 配置config.json3. 调试4. Fuzz 编译TrapFuzzer-gdbLinux下载源码安装依赖项编译常见问题relocation R_X86_64_32 against hidden symbol __TMC_END__ can not be used when m…

金融中的数学:概率分布(下)

上篇博客介绍了离散型概率分布,本篇博客介绍连续型概率分布。 1.连续型概率分布 连续型均匀分布(Continuous Uniform distribution)是一种描述在特定区间内取值均匀分布的概率分布。在该分布中,随机变量在给定区间内的取值概率密…

【RISC-V】昉·星光 2单板计算机初始调试记录

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客…

数据结构单向循环链表,创建以及增删改查的实现

一、单向循环链表的描述 循环链表:是另一种形式的链式存储结构。其特点是表中最后一个结点的指针域指向头节点,整个链表形成一个环。 单向循环链表的操作和单链表操作基本一致,差别在于:当链表遍历时,判别当前指针p是…

数据分析的iloc和loc功能

大家好,在处理大型数据集时,使用有效的数据操作和提取技术是必要的。Pandas数据分析库提供了强大的工具,用于处理结构化数据,包括使用iloc和loc函数访问和修改DataFrame元素的能力。在本文中,我们将探讨iloc和loc之间的…

硬件设计 之 M.2接口常用知识

M.2接口 也被称为NGFF(Next Generation Form Factor),是一种用于固态硬盘(SSD)和无线网络适配器等设备的高速接口标准。它是一种小型、高密度、高速度的接口,可用于替代传统的SATA接口和PCI Express Mini卡…

.NET网络编程——TCP通信

一、网络编程的基本概念 : 1. 网络 就是将不同区域的电脑连接到一起,组成局域网、城域网或广域网。把分部在不同地理区域的计算机于专门的外部设备用通信线路 互联成一个规模大、功能强的网络系统,从而使众多的计算机可以方便地互相传递信息&#xff0c…

gd32f103vbt6 串口OTA升级5-combin部分

一. 简介 本文主要是bin文件的组成进行一些简单介绍,方便理解升级的过程。 二.硬件部分 2.1 rk3399cpugd32f103 2.2 连接方式:串口(115200,8N1)或者iic(本文没有介绍iic) 三、其他需要说明的软…

销售自动化如何提高团队生产力?从这5个方面发力

任何用于减少人工劳动和缩短销售流程相关任务时间的技术,都可定义为销售自动化。 对于忙碌的销售人员来说,流程自动化是真正的救星。它可以使他们的工作简化30%,让他们更专注于创收任务。这将显著提高团队的工作效率,并带来许多其…

第二十一章:CCNet:Criss-Cross Attention for Semantic Segmentation ——用于语义分割的交叉注意力

0.摘要 全图像依赖关系为视觉理解问题提供了有用的上下文信息。在这项工作中,我们提出了一种称为Criss-Cross Network(CCNet)的方法,以更有效和高效的方式获取这种上下文信息。具体而言,对于每个像素,CCNet…

JVM系列(8)——对象的内存布局

1、对象的创建过程 加载-验证-准备-解析-初始化-申请内存-成员变量赋初始值-加载构造方法。 前半段是JVM系列(5)——类加载过程,申请内存可参考:JVM系列(3)——内存分配与回收策略。 2、对象在内存中的存…

python使用Anconda安装Cartopy

安装 Cartopy的话官方推荐是使用conda安装,打开Anconda Prompt后,新建一个环境(如果已有环境可跳过这步),然后激活环境: conda create -n newenv python3.9 conda activate newenv接着按照官网的推荐在Anc…

JavaScript——基础知识及使用

初识 JavaScript JavaScript (简称 JS) 是世界上最流行的编程语言之一.一个脚本语言, 通过解释器运行.主要在客户端(浏览器)上运行, 现在也可以基于 node.js 在服务器端运行. JavaScript 的能做的事情: 网页开发(更复杂的特效和用户交互)网页游戏开发服务器开发(node.js)桌…

使用Jenkins自由风格的软件项目实现接口自动化测试持续集成

这里写目录标题 一、JOB项目配置1、添加描述2、限制项目的运行节点3、源码管理4、构建触发器5、构建步骤6、构建后操作 一、JOB项目配置 1、添加描述 可选选项可填可不填 2、限制项目的运行节点 节点中要有运行环境所需的配置 节点配置教程:https://blog.csdn…

详解c++---特殊类设计

目录标题 设计一个不能被拷贝的类设计一个只能从堆上创建对象的类设计一个只能在栈上创建对象的类设计一个无法被继承的类什么是单例模式饿汉模式饿汉模式的缺点懒汉模式懒汉模式的优点懒汉模式的缺点特殊的懒汉 设计一个不能被拷贝的类 拷贝只会放生在两个场景中:…

Apache Doris (三十一):Doris 数据导入(九)Spark Load 4- 导入Hive数据及注意事项

目录 1. Spark Load导入Hive非分区表数据 2. Spark Load 导入Hive分区表数据 3. 注意事项 进入正文之前,欢迎订阅专题、对博文点赞、评论、收藏,关注IT贫道,获取高质量博客内容! 宝子们订阅、点赞、收藏不迷路!抓紧…

这8种算法

一个程序员一生中可能会邂逅各种各样的算法,但总有那么几种,是作为一个程序员一定会遇见且大概率需要掌握的算法。今天就来聊聊这些十分重要的“必抓!”算法吧~ 算法一:快速排序法 快速排序法是对冒泡排序的一种改进&#xff0c…

Spring Cloud Gateway - 新一代微服务API网关

Spring Cloud Gateway - 新一代微服务API网关 文章目录 Spring Cloud Gateway - 新一代微服务API网关1.网关介绍2.Spring Cloud Gateway介绍3.Spring Cloud Gateway的特性4.Spring Cloud Gateway的三大核心概念5.Gateway工作流程6.Gateway核心配置7.动态路由8.Predicate自定义P…

vue 集成tinymce2实现图片,视频以及文件的上传

vue 集成tinymce2实现图片,视频以及文件的上传 1. 安装插件 (1)安装tinymce npm install tinymce -S (2)安装tinymce-vue npm install tinymce/tinymce-vue3.0.1 -S 2. 复制静态文件到public目录 资源下载路径&…