今儿阅读了一篇文献——《车联网环境下并联混合动力客车控制策略优化研究》,是北理的博士所写的,内容比较翔实。主要是里面的关于ECMS和庞德里亚金最小值原理(PMP)的关系推导很让人印象深刻,故打算把这个过程捋一下。需要说明的是本文同时也参考了文献【2】的第五章主讲PMP的证明过程。

  文献【1】首先是将汉密尔顿函数用于能量管理策略,表示的结果就如下式4.49所示,λ(t)是协同状态,而根据PMP(庞德里亚金最小值)原理,协同状态的动态方程可以由公式4.50表示

  

  

  在文献【2】的第55页,是这样去描述这个过程,公式

和上面文献【1】的公式是表达一样的意思,而公式5.17中的w(SOC)则是类似于惩罚函数一样的东西,主要是判断取值是否超出边界,在文献【2】中w(SOC)的公式如下。 而公式5.16和5.17之所以要在状态量上加一个*号,就是表达这是最优的取值。

  根据电池SOC在文献【1】中的计算公式,然后作者认为普通混动汽车电池SOC在较小的范围内变动,所以电池开路电压Voc和内阻Rin是常数,与电池SOC无关,所以就推导出公式4.52如下,然后,所以协同状态λ就是一个常数。

  在文献【2】中是如何推导这个过程的呢?作者把公式5.16和5.17进行变化,利用公式3.4,公式3.4中的其实就是dSOC/dt,也就是和文献【1】中的4.51一样。最后得到的结果就如公式5.21所示,。其中的推导过程其实如下,紧接着文献【2】里面说开路电压和内阻相对于SOC的变化可以忽略不计,于是都是0,那么公式5.21也变成0了,所以协同状态λ就是一个常数。总的来看,推导过程几乎一致,唯一的区别是文献【2】更准确的说明了Voc和内阻R是相对于SOC的倒数为0,而不是一直是个常数不变。

  基于以上的推导过程,文献【1】最终得到的汉密尔顿函数的另一种形式,,然后再和ECMS的表达式进行比较,就可以发现等效因子和协同状态λ之间的关系:

要记住上面的推导结论,协同状态λ就是一个常数,但是等效因子s不一定是一个常数,因为开路电压和内阻其实是随时间变化的,电池如果老化了,容量值也会发生变化。

  这里必须得说明一下,上面文献【1】中的公式4.59,可以把它稍微变形,因为I=Pm/Voc,而电池SOC的变化 dSOC/dt = I/Qnom,又因为汉密尔顿函数和ECMS等效起来,所以其实可以把ECMS的形式写成,这样的话可以把电机的功率值替换成电池SOC,实现起来更为直观。

参考文献:

【1】《车联网环境下并联混合动力客车控制策略优化研究》

【2】Hybrid Electric Vehicles Energy Management Strategies,Chapter 5

等效燃油消耗ECMS与庞德里亚金最小值原理PMP中协同状态的关系的更多相关文章

  1. 机器学习:逻辑回归(scikit-learn 中的逻辑回归)

    一.基础理解 使用逻辑回归算法训练模型时,为模型引入多项式项,使模型生成不规则的决策边界,对非线性的数据进行分类: 问题:引入多项式项后,模型变的复杂,可能产生过拟合现象: 方案:对模型正则化处理,损 ...

  2. 手写线程池,对照学习ThreadPoolExecutor线程池实现原理!

    作者:小傅哥 博客:https://bugstack.cn Github:https://github.com/fuzhengwei/CodeGuide/wiki 沉淀.分享.成长,让自己和他人都能有 ...

  3. 手写一个线程池,带你学习ThreadPoolExecutor线程池实现原理

    摘要:从手写线程池开始,逐步的分析这些代码在Java的线程池中是如何实现的. 本文分享自华为云社区<手写线程池,对照学习ThreadPoolExecutor线程池实现原理!>,作者:小傅哥 ...

  4. WCF初探-17:WCF数据协定之等效性

    数据协定等效性特点概述 对于客户端要将某种类型的数据成功发送到服务,或者服务要将数据成功发送到客户端的情况,接收端上并不一定必须存在此发送数据类型. 唯一的要求是两种类型的数据协定应该等效. 要使数据 ...

  5. 查看JAVA进程中哪个线程CPU消耗最高

    一,在centos linux 上查看进程占用cpu过高 top  shift+h 查看哪个进程程消耗最高     二,查看JAVA进程中哪个线程消耗最高   2.1 导出java运行的线程信息   ...

  6. redis内存消耗详解

    Redis所有的数据都存在内存中,相对于廉价的硬盘,内存资源还是比较昂贵的,因此如何高效利用redis内存变得非常重要. 内存消耗分析 管理内存的原理和方法 内存优化技巧 一.内存消耗 理解redis ...

  7. 关于质能等效的两个思想实验 Two Ideological Experiments on Mass-Energy Equivalence

    大家知道,物质和能量是等效的,虽然质能方程已暗示了这种等效关系,但并非显而易见.此等效性可以从以下两个思想实验中获知. 实验一:一台电子称上放置一个金属物体,加热它,称的读数将会略微增加.这是因为金属 ...

  8. golang 如何查看程序执行消耗时间

    写代码过程中,有时需要分析代码块的时间消耗. 本文介绍使用time包中的Since函数查看程序执行时间. package main import ( "fmt" "tim ...

  9. Linux环境下的CPU消耗分析

    在Linux系统中, CPU 主要用于中断,内核以及用户进程的任务处理,优先级为 中断 > 内核 > 用户进程.在CPU消耗分析中,我们还经常遇到下面几个概念. 上下文切换         ...

随机推荐

  1. mysql之DTS的那些事

    最近才考虑数据库迁移,想起了之前做DTS踩过的那些坑. 基于数据库迁移,比如从源A库迁移到源B库,包括但不限于数据库上云. 数据库迁移方案有两种场景: (1).停机迁移方案 这种方案是允许停服的场景, ...

  2. Nuxt.js学习(二) --- Nuxt目录结构详解、Nuxt常用配置项、Nuxt路由配置和参数传递

    [TOC] 1.Nuxt目录结构详解 Nuxt项目文件目录结构 |-- .nuxt // Nuxt自动生成,临时的用于编辑的文件,build |-- assets // 用于组织未编译的静态资源入LE ...

  3. springmvc register过程

    福建SEO:首先在AbstractHandlerMethodMapping中,在afterPropertiesSet这个钩子函数中,先初始化handlerMethods. 在detectHandler ...

  4. Perl:理解正则中“.”可匹配出回车符(“\n”)外任意字符的例子,配合 $^I 关键字

    要把下面文件的内容改了, Program name: graniteAuthor: Gilbert BatesCompany: RockSoftDepartment: R&DPhone: +1 ...

  5. Linux基础篇四:常用命令

    .     一个点表示是 当前目录 ..    两个点表示当前目录的上一层目录 .   与   ..  相对路径的一种表现形式 cd ~/test/     ~当前用户的家目录    绝对路径 注意: ...

  6. AD中导出所有计算机的(计算机名+操作系统类型)

    要想用powershell管理域,首先先加载activedirectory模块 PS C:\> import-module activedirectory 下面就可以利用get-adcomput ...

  7. F. Rhyme scheme

    题: https://nanti.jisuanke.com/t/41414 #include<bits/stdc++.h> using namespace std; typedef __i ...

  8. iOS 后台任务

    首先开启后台任务 使用设置后台任务触发的时机 application.setMinimumBackgroundFetchInterval(UIApplication.backgroundFetchIn ...

  9. Andriod常用控件介绍&相关属性(初学方便查询)

    一.TextView(显示控件) android:id(给当前控件定义唯一的标识符)——示例:android:id = "@+id/text_view" android:layou ...

  10. 在Python 中怎么表示一个元素在一个list中的数量?

    commonest = [1,2,2,2,1,3,4,5,1,1] print(commonest.count(1))