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

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥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.rhkb.cn/news/78576.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《吐血整理》高级系列教程-吃透Fiddler抓包教程(30)-Fiddler如何抓Android7.0以上的Https包-番外篇

1.简介 通过宏哥前边几篇文章的讲解和介绍想必大家都知道android7.0以上,有android的机制不在信任用户证书,导致https协议无法抓包。除非把证书装在系统信任的证书里,此时手机需要root权限。但是大家都知道root手机是非常繁琐的且不安全&…

kubernetes基于helm部署gitlab-operator

kubernetes基于helm部署gitlab-operator 这篇博文介绍如何在 Kubernetes 中使用helm部署 GitLab-operator。 先决条件 已运行的 Kubernetes 集群负载均衡器,为ingress-nginx控制器提供EXTERNAL-IP,本示例使用metallb默认存储类,为gitlab p…

VGGNet剪枝实战:使用VGGNet训练、稀疏训练、剪枝、微调等,剪枝出只有3M的模型

摘要 本文讲解如何实现VGGNet的剪枝操作。剪枝的原理:在BN层网络中加入稀疏因子,训练使得BN层稀疏化,对稀疏训练的后的模型中所有BN层权重进行统计排序,获取指定保留BN层数量即取得排序后权重阈值thres。遍历模型中的BN层权重&am…

【NLP概念源和流】 04-过度到RNN(第 4/20 部分)

接上文 【NLP概念源和流】 03-基于计数的嵌入,GloVe(第 3/20 部分) 一、说明 词嵌入使许多NLP任务有了显著的改进。它对单词原理图的理解以及将不同长度的文本表示为固定向量的能力使其在许多复杂的NLP任务中非常受欢迎。大多数机器学习算法可以直接应用于分类和回归任务的…

[RT-Thread]基于ARTPI的文件系统认识与搭建

[写作为了记忆,个人最终输出的内容往往是遗忘后最容易捡起的内容,故以此作文] 目录 [写作为了记忆,个人最终输出的内容往往是遗忘后最容易捡起的内容,故以此作文] 前提 内容 认识 基于ARTPI的文件系统的挂载 ROMFS与LFS. (默认自动挂载,romfs可读不可写) 搭…

Kafka系列之:记录一次Kafka Topic分区扩容,但是下游flink消费者没有自动消费新的分区的解决方法

Kafka系列之:记录一次Kafka Topic分区扩容,但是下游flink消费者没有自动消费新的分区的解决方法 一、背景二、解决方法三、实现自动发现新的分区一、背景 生产环境Kafka集群压力大,Topic读写压力大,消费的lag比较大,因此通过扩容Topic的分区,增大Topic的读写性能理论上下…

零基础C#编写上位机如何入门?

想要学习C#编写上位机,需要具备以下基础知识: C#编程语言基础.NET框架的使用WinForm窗体应用程序开发技术基本的数据结构和算法知识 为了方便理解,我将为您列出一些入门步骤: 学习C#基础语法和.NET框架,掌握基本编程…

opencv-33 图像平滑处理-中值滤波cv2.medianBlur()

中值滤波是一种常见的图像处理滤波技术,用于去除图像中的噪声。它的原理是用一个滑动窗口(也称为卷积核)在图像上移动,对窗口中的像素值进行排序,然后用窗口中像素值的中值来替换中心像素的值。这样,中值滤…

华为云CTS 使用场景

云审计服务 CTS 云审计服务(Cloud Trace Service),帮助您监控并记录华为云账号的活动,包括通过控制台、API、开发者工具对云上产品和服务的访问和使用行为,提供对各种云资源操作记录的收集、存储和查询功能&#xff0…

【机器学习】 贝叶斯理论的变分推理

许志永 一、说明 贝叶斯原理,站在概率角度上似乎容易解释,但站在函数立场上就不那么容易了;然而,在高端数学模型中,必须要在函数和集合立场上有一套完整的概念,其迭代和运算才能有坚定的理论基础。 二、贝叶…

小研究 - 基于 MySQL 数据库的数据安全应用设计(一)

信息系统工程领域对数据安全的要求比较高,MySQL 数据库管理系统普遍应用于各种信息系统应用软件的开发之中,而角色与权限设计不仅关乎数据库中数据保密性的性能高低,也关系到用户使用数据库的最低要求。在对数据库的安全性进行设计时&#xf…

华为OD机试真题 Java 实现【快速人名查找】【2023 B卷 200分】,附详细解题思路

目录 专栏导读一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(A卷B卷&#…

促科技创新:高德数据优化篇之OceanBase最佳实践

本文作者: 振飞(高德地图总裁) 炳蔚(高德技术服务平台负责人) 福辰(高德服务端架构师) 背景 高德成立于2002年,是中国领先的移动数字地图、导航及实时交通信息服务提供商&#xff0c…

轻量级容器管理工具 Containerd

1. 轻量级容器管理工具 Containerd 2. Containerd的两种安装方式 3. Containerd容器镜像管理 4. Containerd数据持久化和网络管理 1. 前言 早在2016年3月,Docker 1.11的Docker Engine里就包含了containerd,而现在则是把containerd从Docker Engine里彻底…

Stable Diffusion 硬核生存指南:WebUI 中的 CodeFormer

本篇文章聊聊 Stable Diffusion WebUI 中的核心组件,强壮的人脸图像面部画面修复模型 CodeFormer 相关的事情。 写在前面 在 Stable Diffusion WebUI 项目中,源码 modules 目录中,有一个有趣的目录叫做 CodeFormer,它就是本文的…

C++ 学习系列 1 -- 左值、右值与万能引用

1. 何为左值&#xff1f;何为右值&#xff1f; 简单的说&#xff0c;左值可以放在等号的左边&#xff0c;右值可以放在等号的右边。 左值可以取地址&#xff0c;右值不能取地址。 1.1 左值举例&#xff1a; 变量、函数或数据成员返回左值引用的表达式 如 x、x 1、cout <…

chatgpt 接口使用(一)

使用api实现功能 参考链接&#xff1a;https://platform.openai.com/examples 安装库&#xff1a; pip3 install openai 例如&#xff1a; import os import openaiopenai.api_key os.getenv("OPENAI_API_KEY") response openai.ChatCompletion.create(model&q…

HIVE学习

1.什么是HIVE 1.HIVE是什么? Hive是由Facebook开源&#xff0c;基于Hadoop的一个数据仓库工具&#xff0c;可以将结构化的数据文件映射为一张表&#xff0c;并提供类SQL查询功能。 大白话: HIVE就是一个类似于Navicat的可视化客户端, 2.HIVE本质 Hive是一个Hadoop客户端&a…

动手学深度学习—深度学习计算(层和块、参数管理、自定义层和读写文件)

目录 1. 层和块1.1 自定义块1.2 顺序块1.3 在前向传播函数中执行代码 2. 参数管理2.1 参数访问2.1.1 目标参数2.1.2 一次性访问所有参数2.1.3 从嵌套块收集参数 2.2 参数初始化2.2.1 内置初始化2.2.2 自定义初始化 2.3 参数绑定 3. 自定义层3.1 不带参数的层3.2 带参数的层 4. …

AI介绍——chat gpt/文心一言/claude/bard/星火大模型/bing AI

AI体验 1. AI 介绍&#xff08;注册和使用&#xff09;1.1 Chat GPT1.2 文心一言1.3 Slack 上的 Claude1.3.1 Claude 介绍1.3.2 Claude 使用 1.4 Google的Bard1.4.1 Bard 介绍1.4.2 Bard 使用 1.5 科大讯飞的星火大模型1.5.1 星火大模型 介绍1.5.2 星火大模型 使用 1.6 new bin…