资源简介
Kalman滤波算法S-Function程序,主要完成电池SOC估计。
代码片段和文件信息
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%S函数实现对输入信号Kalman滤波
function[sysx0strts]=SimuKalmanFilter(txuflag)
%输入参数
% t、x、u、分别对应时间、状态、输入信号
% flag为标志位,其,取值不同,s函数执行的任务和返回的数据也是不同的
%输出参数
% sys为一个通用的返回参数值,其数值根据flag的不同而不同
% x0位状态初始数值
% str在目前为止的MATLAB版本中并没有什么作用,一般str=[]即可
% ts为一个两列的矩阵,包含采样时间和偏移量两个参数
switch flag
case 0 % 系统进行初始化,调用mdlInitializeSizes函数
[sysx0strts]=mdlInitializeSizes;
case 1 % 计算连续状态变量的导数,调用mdlDerivatives函数
sys=mdlDerivatives(txu);
case 2 % 更新离散状态变量,调用mdlUpdate函数
sys=mdlUpdate(txu);
case 3 % 计算s函数的输出,调用mdlOutputs
sys=mdlOutputs(txy);
case 4 % 计算下一仿真时刻
sys=mdlGetTimeOfNextVarHit(txu);
case 9 % 仿真结束,调用mdlTerminate函数
sys=mdlTerminate(txu);
otherwise % 其他未知情况处理,用户可以自定义
error([‘Unhandled flag=‘num2str(flag)]);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%1. 系统初始化子函数
function[sysx0strts]=mdlInitializeSizes
sizes=simsizes;
sizes.NumContStates =0;
sizes.NumDiscStates =1;
sizes.NumOutputs =1;
sizes.NumInputs =1;
sizes.DirFeedthrough =1;
sizes.NumSampleTimes =1; %至少需要的采样时间
sys=simsizes(sizes);
x0 =5000+sqrt(5)
相关资源
- kalman工具箱 用matlab编写 包附全部函数
- MATLAB在卡尔曼滤波器中应用的理论与
- Kalman Filtering - Theory and Practice Using M
- matlab实现的人体跟踪kalman滤波
- 集合卡尔曼滤波算法-数据同化的经典
- Kalman_Filter粗对准和经对准和实际试验
- Kalman滤波器理论与应用——基于MATL
- Kalman Filtering - Theory and Practice Using M
- camshift+kalman视频跟踪matlab代码
- 扩展Kalman滤波在INS/GPS组合导航系统
- 卡尔曼滤波理论与实践MATLAB版第四版
- 卡尔曼滤波及原理黄小平随书程序
- Kalman滤波在视频图像目标跟踪中的应
- Kalman filtering-theory and practice using MAT
- kalman滤波器
- 卡尔曼滤波器matlab程序
- 交互多模型Kalman滤波在目标跟踪中的
- kalmanfilter_fuben.slx
- kalman匀速直线目标跟踪matlab程序
- Kalman 滤波器理论与应用——基于Mat
- 多维容积卡尔曼滤波CKF的函数
- 卡尔曼滤波算法的电池SOC估计仿真模
- 血糖浓度预测Kalman
-
基于Simuli
nk的Kalman滤波器仿真 matl - 无迹kalman滤波
- 带高斯白噪声的Kalman滤波Matlab代码带
- kalman运动目标跟踪
- 3.19 基于Kalman滤波的目标跟踪.rar
- kalman滤波、平滑和预测 MATLAB程序
- kalman滤波器VD、CA、CV算法实现目标跟
评论
共有 条评论