Hyowinner的MBD技术论坛

 找回密码
 立即注册
搜索
查看: 726|回复: 8

三阶RC无迹卡尔曼估计SOC算法问题

[复制链接]

3

主题

8

帖子

39

积分

MBD实习生

Rank: 1

积分
39
发表于 2025-10-21 18:36:25 来自手机 | 显示全部楼层 |阅读模式
从满电状态恒流放电到截止点,以此数据为基础做算法仿真;给算法SOC计算注入20%误差的电流,算法SOC无法收敛到库伦SOC,该调整哪些参数做优化呢?

如下链接是我做的一些尝试:
https://www.kdocs.cn/l/ccgZJkgyZCtR
回复

使用道具 举报

3

主题

8

帖子

39

积分

MBD实习生

Rank: 1

积分
39
 楼主| 发表于 2025-10-22 07:15:42 来自手机 | 显示全部楼层
测试现象解析  1. 正常情况(无电流误差):    · 模型基本准确,滤波器正常工作    · SOC估计与库伦SOC偏差很小 ✅ 2. 异常情况(20%电流误差):    · 滤波器无法收敛 ❌    · 极化电压出现正值(这明显违反物理规律)❌ 3. 调小极化电压噪声后的"伪修复":    · SOC开始收敛到库伦SOC ✅    · 极化电压回归负值(符合物理规律)✅    · 但在正常电流下性能变差 ❌
回复

使用道具 举报

99

主题

247

帖子

4216

积分

管理员

校长

Rank: 9Rank: 9Rank: 9

积分
4216
QQ
发表于 2025-10-22 14:21:02 | 显示全部楼层
蛰伏 发表于 2025-10-22 07:15
测试现象解析  1. 正常情况(无电流误差):    · 模型基本准确,滤波器正常工作    · SOC估计与库伦SOC ...

需要调整协方差矩阵,现在的20%误差下的SOC安时积分偏差真实值导致三阶RC的电压值也偏差真实值,如果你的卡尔曼滤波器过于参考过程状态模型,忽略真实测量值,大概率就出现了你现在遇到的情况。
持续学习 未来有你
基于场景 解决问题
项目合作联系微信:Hyo_Matlab
回复

使用道具 举报

3

主题

8

帖子

39

积分

MBD实习生

Rank: 1

积分
39
 楼主| 发表于 2025-10-22 14:55:27 来自手机 | 显示全部楼层
hyowinner 发表于 2025-10-22 14:21
需要调整协方差矩阵,现在的20%误差下的SOC安时积分偏差真实值导致三阶RC的电压值也偏差真实值,如果你的 ...

是这样,目前过程噪声如图,极化电压噪声1e-6,SOC噪声1e-8
测量噪声是自适应噪声,根据端电压预测值和实际端电压的差自适应计算的,范围限定在1e-3到1e-0之间
应该就是太信任模型预测了,SOC后验估计和SOC先验估计基本一致,预测端电压和实际端电压基本一致。
但我增加Q,把Q扩大1000倍了,为啥有20%电流误差情况下,算法SOC还是不向库伦SOC收敛呢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

99

主题

247

帖子

4216

积分

管理员

校长

Rank: 9Rank: 9Rank: 9

积分
4216
QQ
发表于 2025-10-22 16:04:16 | 显示全部楼层
蛰伏 发表于 2025-10-22 14:55
是这样,目前过程噪声如图,极化电压噪声1e-6,SOC噪声1e-8
测量噪声是自适应噪声,根据端电压预测值和实 ...

过程噪声方差是 1e-5,对应的标准差是 sqrt(1e-5) ≈ 0.00316 (约0.3%),系统偏差20%,这个有点杯水车薪吧。
持续学习 未来有你
基于场景 解决问题
项目合作联系微信:Hyo_Matlab
回复

使用道具 举报

3

主题

8

帖子

39

积分

MBD实习生

Rank: 1

积分
39
 楼主| 发表于 2025-10-22 18:04:59 来自手机 | 显示全部楼层
hyowinner 发表于 2025-10-22 16:04
过程噪声方差是 1e-5,对应的标准差是 sqrt(1e-5) ≈ 0.00316 (约0.3%),系统偏差20%,这个有点杯水车薪 ...

但是想不通的是,无论如何调Q R,端电压预测值都和实际端电压差别不大,这样感觉状态更新环节一直不起作用
回复

使用道具 举报

99

主题

247

帖子

4216

积分

管理员

校长

Rank: 9Rank: 9Rank: 9

积分
4216
QQ
发表于 2025-10-22 18:47:14 | 显示全部楼层
蛰伏 发表于 2025-10-22 18:04
但是想不通的是,无论如何调Q R,端电压预测值都和实际端电压差别不大,这样感觉状态更新环节一直不起作 ...

那可能得考虑下卡尔曼滤波算法设计的是否正确?
排除算法问题,就再看看OCV-SOC曲线斜率是否过小过于平坦?
持续学习 未来有你
基于场景 解决问题
项目合作联系微信:Hyo_Matlab
回复

使用道具 举报

3

主题

8

帖子

39

积分

MBD实习生

Rank: 1

积分
39
 楼主| 发表于 2025-10-22 19:47:22 来自手机 | 显示全部楼层
hyowinner 发表于 2025-10-22 16:04
过程噪声方差是 1e-5,对应的标准差是 sqrt(1e-5) ≈ 0.00316 (约0.3%),系统偏差20%,这个有点杯水车薪 ...

其实就是想验证一下算法鲁棒性,期望给算法注入20%电流误差,算法SOC可以最终收敛到库伦SOC,如下图效果;
但实际调试结果是这样,见如下链接:https://www.kdocs.cn/l/cjswr085MUbq

调试结果:1、依据D620项目1C放电实测数据,仿真效果OK  2、依据D620项目1C放电实测数据,给算法注入20%电流误差,仿真效果不达预期
期望算法SOC最终收敛到库伦SOC,但实际结果不符合预期:算法SOC沦为开环库伦积分器,状态更新环节几乎没有起作用。
可以看到卡尔曼增益的SOC部分K_SOC极小,端电压预测值和实际端电压也基本一致;算法SOC、极化电压的先验估计值和后验估计值一致(极化电压还出现了正值)。


实在不知道咋调了。。。。。。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

99

主题

247

帖子

4216

积分

管理员

校长

Rank: 9Rank: 9Rank: 9

积分
4216
QQ
发表于 2025-10-22 19:57:30 | 显示全部楼层
蛰伏 发表于 2025-10-22 19:47
其实就是想验证一下算法鲁棒性,期望给算法注入20%电流误差,算法SOC可以最终收敛到库伦SOC,如下图效果 ...

从你给出的图上看,给正常电流放电过程SOC跟库伦SOC的差距也是逐渐增大(趋向于单调不收敛)的。
持续学习 未来有你
基于场景 解决问题
项目合作联系微信:Hyo_Matlab
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|MBD全栈技术学校|苏ICP备2025212294号-1|Hyowinner校长B站首页|手机版|小黑屋|Hyowinner的MBD技术论坛

GMT+8, 2026-5-7 12:01 , Processed in 0.101876 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表