当前位置: 首页 > article >正文

状态空间方程离散化(Matlab符号函数)卡尔曼

//

卡尔曼滤波(4):扩展卡尔曼滤波 - 知乎

//

//

matlab 连续系统状态空间表达式的离散化&状态转移矩阵求解_matlab状态方程离散化-CSDN博客

//

//

//

%https://blog.csdn.net/weixin_44051006/article/details/107007916
clear all; clc;
syms R1 R2 C1 C2 Ts Qn  s t Ls  A B

A=[-1/(R1*C1)  0             0;
    0          -1/(R2*C2)   0;
    0            0           0];%系统矩阵

B=[1/C1;
   1/C2;
  -1/Qn];


I = eye(size(A));
Ls = inv(s*I - A);   % INV(X) is the inverse of the square matrix X.
G = ilaplace(Ls,s,t) % Inverse Laplace transform
    
HLs = int(G,t,0,Ts);
H = HLs*B

%% %%%%%%
R1_value=0.0019;
R2_value=0.0035;
C1_value=23340;
C2_value=501270;
R0_value = 0.0037;
Qn_value = 30.23*3600;
Ts_value = 0.1;
t_value = 0.1;

G_value_sym = subs(G,[R1 R2 C1 C2 t Qn],[R1_value R2_value C1_value C2_value Ts_value Qn_value]);
H_value_sym = subs(H,[R1 R2 C1 C2 Ts Qn],[R1_value R2_value C1_value C2_value Ts_value Qn_value]);

G_value = double(G_value_sym)
H_value = double(H_value_sym)




%% %%%%%%
A_value_sym=subs(A,[R1 R2 C1 C2 Qn],[R1_value R2_value C1_value C2_value Qn_value]);
B_value_sym=subs(B,[R1 R2 C1 C2 Qn],[R1_value R2_value C1_value C2_value Qn_value]);
A_value = double(A_value_sym);
B_value = double(B_value_sym);


[G2,H2] = c2d(A_value,B_value,Ts_value)

//

运行结果:

 
G =
 
[exp(-t/(C1*R1)),               0, 0]
[              0, exp(-t/(C2*R2)), 0]
[              0,               0, 1]
 
 
H =
 
-R1*(exp(-Ts/(C1*R1)) - 1)
-R2*(exp(-Ts/(C2*R2)) - 1)
                    -Ts/Qn
 

G_value =

    0.9977         0         0
         0    0.9999         0
         0         0    1.0000


H_value =

   1.0e-05 *

    0.4280
    0.0199
   -0.0919


G2 =

    0.9977         0         0
         0    0.9999         0
         0         0    1.0000


H2 =

   1.0e-05 *

    0.4280
    0.0199
   -0.0919

>> 

//

卡尔曼滤波(Kalman Filter)概念介绍及详细公式推导-CSDN博客

//

/


http://www.kler.cn/a/391364.html

相关文章:

  • 什么是MVCC?
  • 0.96寸OLED显示屏详解
  • AI开发:使用支持向量机(SVM)进行文本情感分析训练 - Python
  • 人工智能ACA(四)--机器学习基础
  • java全栈day20--Web后端实战(Mybatis基础2)
  • 飞牛 fnos 使用docker部署 bili-sync:打造自动化 B 站资源下载器,与主流媒体服务器无缝衔接
  • 看不见的力量——超声技术在工业中的应用
  • Spring Boot编程训练系统:深入设计与实现
  • [Codesys]常用功能块应用分享-BMOV功能块功能介绍及其使用实例说明
  • P-tuning、Prompt-tuning和Prefix-tuning区别是什么?
  • Java 实现自定义 LRU 缓存
  • 【Effective C++】阅读笔记6
  • css2D变换用法
  • SobarQube实现PDF报告导出
  • Linux——基础指令2 + 权限
  • [SaaS] 数禾科技 AIGC生成营销素材
  • 35.Redis 7.0简介
  • ensp中配置ISIS以及ISIS不同区域的通信
  • pytorch torch.randint
  • 解决SLF4J: Class path contains multiple SLF4J bindings问题
  • 丹摩征文活动 | 搭建 CogVideoX-2b详细教程:用短短6秒展现创作魅力
  • labview实现上升沿和下降沿
  • 【海外SRC漏洞挖掘】谷歌语法发现XSS+Waf Bypass
  • SpringBoot下Bean的单例模式详解
  • Spring Boot编程训练系统:开发中的挑战与解决方案
  • PVE纵览-从零开始:了解Proxmox Virtual Environment