资源简介
基于卡尔曼的电池SOC算法源代码实现过程,可以自由改写。
代码片段和文件信息
function [sysx0strts]=kalman(txuflagk)
switch flag
case 0 %初始化设置
[sysx0strts]=mdlInitializeSizes;
case 3
sys=mdlOutputs(txuk);
case {1249}
sys=[];
otherwise
error([‘Unhandled flag=‘num2str(flag)]);
end
%=====================================================
% mdlInitializeSizes进行初始化设置系统变量的大小
%=====================================================
function [sysx0strts]=mdlInitializeSizes
sizes=simsizes;
sizes.NumContStates=0;
sizes.NumDiscStates=0;
sizes.NumOutputs=2;
sizes.NumInputs=3;
sizes.DirFeedthrough=1;
sizes.NumSampleTimes=1;
sys=simsizes(sizes);
x0=[0 0 0 0 0]‘;
str=[];
ts=[-10];
%=====================================================
% 当flag=3时计算系统的输出变量:返回三个状态
%=====================================================
function sys=kalman(txuk)
R=1;
L=0.02;
M=-0.0067;
Ls=L-M;
% J=0.005;
k=0.382;
T=0.002;%T=0&x5-per=pi/3&x5-per=2*pi/3&x5-per=pi&x5-per=4*pi/3&x5-per=5*pi/3&x5-per<2*pi
q=5*pi/3;
a11=-2/3;a12=4/pi;
a21=-2/3;a22=-2/pi;
a31=4/3;a32=-2/pi;
end
A=[1-R*T/Ls 0 0 k*T*(a11+a12*(x5-q-per))/Ls 0;0 1-R*T/Ls 0 k*T*(a21+a22*(x5-q-per))/Ls0;...001-R*T/Ls k*T*(a31+a32*(x5-q-per))/Ls 0;0 0 0 1 0;0 0 0 T 1];
A1=Jacobian(A*XX‘);
B=[T/(3*Ls) -T/(3*Ls) 0 0 0;0 T/(3*Ls) -T/(3*Ls) 0 0;...
-T/(3*Ls) 0 T/(3*Ls) 0 0]‘;
C=[1 0 0 0 0;0 1 0 0 0;0 0 1 0 0];
P=[0.01 0.01 0.01 10 1];
R=diag([0.02 0.02 0.02]);
Q=diag([0.04 0.04 0.04 0.05 0.02]);
Xhat1=A*x+B*u;
Phat1=A1*P*A1‘+Q;
K=Phat1*C‘*inv[C*Phat1*C‘+R];
xhat=[eye(5)-K*C]*(A*X+H*u)+K*X[[1:3];];
Phat=[eye(5)-K*C]*Phat1;
sys(11)=x4;
sys(21)=x5;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 98548 2015-05-09 09:02 卡尔曼滤波估测电池SOC\batterysoc.mdl
文件 1628 2015-05-09 09:02 卡尔曼滤波估测电池SOC\kalman.m
目录 0 2015-05-09 09:04 卡尔曼滤波估测电池SOC
----------- --------- ---------- ----- ----
100176 3
相关资源
- 卡尔曼滤波与组合导航原理_第三版
- 卡尔曼滤波与组合导航原理
- 交互多模IMM 卡尔曼滤波
- 卡尔曼滤波、自适应卡尔曼、抗差卡
- 卡尔曼滤波初学详解,包你懂!
- 滤波-卡尔曼滤波-互补滤波
- 双向不敏卡尔曼滤波的无源定位算法
- 容积卡尔曼滤波(CKF)和嵌入式容积
- 论文研究-基于修正积分卡尔曼粒子滤
- 卡尔曼滤波与组合导航
- 基于Verilog HDL的卡尔曼滤波器的设计
- 卡尔曼滤波理论与实践英文原版+代码
- 卡尔曼滤波 宋文尧
- mpu6050+地磁传感器通过卡尔曼滤波得出
- K5环境+STM32+MPU6050+卡尔曼滤波源码
- 一种改进扩展卡尔曼滤波新方法
- 基于扩展卡尔曼滤波EKF的机器人SLAM问
- 卡尔曼滤波器及其应用基础.pdf
- Fundamentals of Kalman Filtering A Practical A
- 平衡车卡尔曼滤波
- 卡尔曼滤波理论及其在导航系统中的
- kalman滤波理论及其在导航系统中的应
- MPU6050姿态解算STM32源码(互补滤波、
- 卡尔曼滤波算法在FPGA中实现-Verilog代
- 卡尔曼目标跟踪
- 卡尔曼滤波与维纳滤波 现代时间序列
- zw_卡尔曼虑波_0.zip
- 自适应卡尔曼滤波算法
- 卡尔曼滤波与组合导航原理.pdf
- 两轮平衡小车K5环境+STM32+MPU6050+卡尔曼
评论
共有 条评论