实例讲解电动汽车车速计算算法及Simulink建模方法

电动汽车的车速信号是一个非常重要的信号,在VCU软件开发中,车速一般需要通过采集其他控制器车速或者通过电机转速间接计算出来,作为仪表显示车速、限速控制、剩余续驶里程计算等使用,因此,在VCU软件开发中,对于车速的计算是一个非常重要的问题。本文介绍电动汽车车速计算的算法及Simulink建模方法。

目录

一、车速的分类

1、仪表车速

2、导航车速

3、VCU车速

4、实际车速

二、VCU车速的计算

1、根据电机转速等相关参数计算

2、直接接收ABS等控制器计算的车速

三、VCU车速选择策略

四、车速计算及选择模块Simulink建模

1、选择ABS车速判断模块

2、选择电机转速计算的车速判断模块

3、整体车速计算及选择判定模块

五、总结


一、车速的分类

1、仪表车速

1)根据轮速传感器计算,放大显示

2)根据VCU等控制器计算的值进行放大处理显示

2、导航车速

GPS导航模块与太空中的GPS或北斗卫星实时通讯来确定车辆的具体位置,然后根据车辆在某一段时间内通过的距离来计算车辆的车速

3、VCU车速

1)根据车速相关参数(输出轴转速、滚动半径、速比)计算

2)根据其他控制器或传感器计算通过CAN信号传输给VCU

4、实际车速

车辆单位时间内行驶的距离,轮毂欧哲V-BOX的测量值

车速的标定原则一般为

仪表车速≥导航车速≥VCU车速≥实际车速

二、VCU车速的计算

1、根据电机转速等相关参数计算

V=0.377*(n*r)/(ig*i0)

V为车速, 单位为:km/h 千米每小时

n为电机转速,单位为:rpm 转每分钟

r为轮胎滚动半径,单位为:m 米

ig为变速器传动比,单位为:常数

i0为主减速器传动比,单位为:常数

推导过程:

车型在确定轮胎、后桥、减速器后,车速与转速成正比关系

2、直接接收ABS等控制器计算的车速

三、VCU车速选择策略

选择哪个车速作为整车车速是一个问题。在车速选择处理上,一般选择以下策略

1、当ABS通讯正常且无故障时,采用ABS车速作为整车车速,如果ABS通讯丢失超时故障或ABS发生故障,接收不到ABS车速信号或ABS的车速信号为错误值,此时采用电机转速通过计算公式得来的车速

2、当电机无旋变故障时,采用电机转速,通过计算公式得出车速,如果电机出现旋变故障,输出的电机转速为错误值,此时采用ABS车速作为整车车速

3、当ABS和电机均有故障时,输出车速为0,此时VCU应将扭矩指令清零

四、车速计算及选择模块Simulink建模

1、选择ABS车速判断模块

1)输入信号

ABS_VehSpd:ABS计算车速

ABS_CANTimeOut_Flt:ABS通讯丢失超时故障

ABS_ABSFlt:ABS故障标志位

2)输出信号

VehSpd_kph:判定后最终输出的车速

3)判断逻辑

对接收的ABS通讯丢失故障及ABS故障进行或逻辑的判定,如果有一个或一个以上故障,判断输出为1,然后做非逻辑转换,当前边ABS判定结果为1时,输出0,即当前边ABS故障判定结果为0时,输出ABS计算车速作为判定后最终输出的车速

2、选择电机转速计算的车速判断模块

1)输入信号

MCU_MotoSpd:MCU反馈的电机转速

Veh_TirRollRad:车辆轮胎滚动半径

Veh_FnlDrivRat:车辆主减速器速比

Veh_TrnDrivRat:车辆传动系统速比

2)输出信号

MCU_DTCCode:MCU反馈的故障码

3)计算判断逻辑

a、根据上文推导的通过电机转速计算车速公式,首先将接收到的电机转速信号进行滤波处理,包括低通滤波和均值滤波。(关于滤波模块的具体设置方法及解释,在之前发布的《实例讲解Simulink模拟信号滤波处理、信号解析及仿真测试验证方法》有相关介绍,此处不再赘述),然后按照公式进行计算得到车速值

b、接收到MCU反馈的故障代码后,进行判断,如果故障代码为0x4即旋变故障,不等于0x4则为非旋变故障,对输出的判定结果进行延时判定滤波处理后输出故障判断结果,判定为无旋变故障输出1,否则输出0(关于延时判定模块的具体设置方法及解释,在之前发布的《实例讲解Simulink开关信号滤波处理、信号解析及仿真测试验证方法》有相关介绍,此处不再赘述)

c、如果判定为非旋变故障,则选择输出根据电机转速计算的车速输出,如果判定为旋变故障,则输出车速为0,此时车辆会根据故障清零扭矩指令,车辆此时会报故障码,并停车

3、整体车速计算及选择判定模块

判断逻辑

a、当ABS无故障且无通讯丢失时,选择ABS车速作为整车车速信号

b、当ABS故障或判定为ABS通讯丢失时,再进行MCU旋变故障判断,如果MCU无旋变故障,则输出根据电机转速计算的车速作为整车车速信号

c、当ABS有故障或通讯丢失,且MCU报旋变故障,此时车辆处于严重故障状态,此时VCU将扭矩指令清零,车速显示为0

五、总结

本文介绍了一种车速的分类、计算方式、车速选择策略及Simulink模型搭建方式。希望能给相关技术人员带来一定参考和帮助。

相关推荐
鸽鸽程序猿9 分钟前
【算法】【优选算法】宽搜(BFS)中队列的使用
算法·宽度优先·队列
Jackey_Song_Odd10 分钟前
C语言 单向链表反转问题
c语言·数据结构·算法·链表
Watermelo61713 分钟前
详解js柯里化原理及用法,探究柯里化在Redux Selector 的场景模拟、构建复杂的数据流管道、优化深度嵌套函数中的精妙应用
开发语言·前端·javascript·算法·数据挖掘·数据分析·ecmascript
乐之者v19 分钟前
leetCode43.字符串相乘
java·数据结构·算法
A懿轩A1 小时前
C/C++ 数据结构与算法【数组】 数组详细解析【日常学习,考研必备】带图+详细代码
c语言·数据结构·c++·学习·考研·算法·数组
古希腊掌管学习的神1 小时前
[搜广推]王树森推荐系统——矩阵补充&最近邻查找
python·算法·机器学习·矩阵
云边有个稻草人1 小时前
【优选算法】—复写零(双指针算法)
笔记·算法·双指针算法
半盏茶香1 小时前
在21世纪的我用C语言探寻世界本质 ——编译和链接(编译环境和运行环境)
c语言·开发语言·c++·算法
忘梓.2 小时前
解锁动态规划的奥秘:从零到精通的创新思维解析(3)
算法·动态规划
tinker在coding4 小时前
Coding Caprice - Linked-List 1
算法·leetcode