news 2026/6/21 17:28:16

基于扩展(EKF)和无迹卡尔曼滤波(UKF)的电力系统动态状态估计(Matlab代码实现)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于扩展(EKF)和无迹卡尔曼滤波(UKF)的电力系统动态状态估计(Matlab代码实现)

欢迎来到本博客❤️❤️💥💥

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

基于扩展卡尔曼滤波(EKF)与无迹卡尔曼滤波(UKF)的电力系统动态状态估计研究

一、基本原理

1. 扩展卡尔曼滤波(EKF)

2. 无迹卡尔曼滤波(UKF)

二、电力系统动态状态估计的主要挑战

三、典型应用场景

1. EKF的典型应用

2. UKF的典型应用

四、性能对比分析

五、最新研究进展

六、未来研究方向

结论

📚2 运行结果

2.1 UKF

2.2 EKF

🎉3 参考文献

🌈4 Matlab代码、数据、文章下载


💥1 概述

摘要:准确估计电力系统动态对于提高电力系统的可靠性、韧性、安全性和稳定性非常重要。随着逆变器型分布式能源的不断集成,对电力系统动态的了解比以往任何时候都更为必要和关键,以实现电力系统的正确控制和运行。尽管最近测量设备和传输技术的进展极大地减小了测量和传输误差,但这些测量仍然不完全摆脱测量噪声的影响。因此,需要对嘈杂的测量进行滤波,以获得准确的电力系统运行动态。本文使用扩展卡尔曼滤波器(EKF)和无迹卡尔曼滤波器(UKF)来估计电力系统的动态状态。

关键词:扩展卡尔曼滤波(EKF)、电力系统动态状态估计、无迹卡尔曼滤波(UKF)。

基于扩展卡尔曼滤波(EKF)与无迹卡尔曼滤波(UKF)的电力系统动态状态估计研究

一、基本原理
1. 扩展卡尔曼滤波(EKF)

EKF是卡尔曼滤波在非线性系统中的扩展,通过对非线性模型进行一阶泰勒展开线性化,利用雅可比矩阵近似状态转移和观测函数。其核心步骤包括:

  • 预测阶段:基于系统动力学模型预测状态向量和协方差矩阵:

  • 更新阶段:结合观测值修正预测结果:

局限性

  • 一阶近似在强非线性系统中误差显著,可能导致滤波发散。
  • 高维系统中雅可比矩阵计算复杂度高。
2. 无迹卡尔曼滤波(UKF)

UKF基于无迹变换(Unscented Transform, UT),通过确定性采样(Sigma点)传播状态分布,避免线性化误差。其核心步骤包括:

  • Sigma点生成:从当前状态均值和协方差中选取 2n+12n+1 个Sigma点(nn 为状态维度),通过非线性函数传播。

  • 加权均值和协方差计算

优势

  • 二阶泰勒展开精度,适用于强非线性系统。
  • 无需雅可比矩阵计算,鲁棒性更强。

二、电力系统动态状态估计的主要挑战
  1. 模型复杂性与非线性:电力系统包含发电机、负荷等非线性元件,动态方程高度非线性且耦合。
  2. 数据限制:PMU(同步相量测量单元)布点固定,数据覆盖不足可能导致状态不可观测。
  3. 不确定性干扰:负荷波动、设备老化等不确定性因素影响模型精度。
  4. 计算效率:实时性要求高,但EKF的雅可比矩阵计算和UKF的Sigma点传播均需较高算力。

三、典型应用场景
1. EKF的典型应用
  • 同步发电机状态估计:利用PMU数据估计转子角、转速等动态参数,用于稳定性控制。
  • 谐波分量分析:结合最小二乘法(LS-KF)估计电压/电流谐波的幅值和相位,用于电能质量监测。
  • 电压稳定性跟踪:通过Thevenin参数跟踪预测系统最大负载能力,优于传统离散卡尔曼滤波(DKF)。
2. UKF的典型应用
  • 三相状态估计:在负荷突变场景下,实时估计三相电压和电流,提升故障检测精度。
  • 电池SOC估计:结合自适应UKF(AUKF)处理电池动态非线性,提高荷电状态估计鲁棒性。
  • 新能源并网:用于风电场动态模型的状态跟踪,适应风速波动带来的强非线性。

四、性能对比分析
指标EKFUKF
非线性处理一阶泰勒近似,误差随非线性强度增大二阶精度,无线性化误差
计算复杂度需雅可比矩阵计算,高维系统效率低Sigma点传播复杂度 O(n3)O(n3),与EKF相当
鲁棒性对初始协方差和噪声敏感,易发散通过Sigma点全局采样,抗噪性更强
适用场景弱非线性系统(如局部发电机模型)强非线性系统(如三相突变、新能源并网)

五、最新研究进展
  1. EKF改进算法

    • 自适应插值强跟踪EKF(AISTEKF):通过插值伪量测值减少线性化误差,在IEEE-30节点系统中电压幅值估计误差降低30%。
    • EKF-UI(未知输入估计):同步估计同步电机状态与未测量输入(如励磁电压),提升噪声环境下的可靠性。
  2. UKF扩展应用

    • 混合UKF-PF算法:结合粒子滤波(PF)处理非高斯噪声,在电力负荷预测中均方误差降低15%。
    • 机器学习辅助UKF:利用LSTM网络动态调整Sigma点权重,适应时变系统特性。

六、未来研究方向
  1. 模型简化与降阶:通过等效模型降低计算量,同时保留关键动态特性。
  2. 多源数据融合:整合SCADA、PMU和智能电表数据,提升状态可观测性。
  3. 边缘计算部署:在变电站本地实现EKF/UKF算法,减少通信延迟。
  4. 自适应参数调优:基于在线学习的噪声协方差估计,增强算法鲁棒性。

结论

EKF和UKF在电力系统动态状态估计中各有优势:EKF适用于低非线性场景且易于实现,而UKF在强非线性和噪声环境中表现更优。未来研究需结合智能算法与硬件加速,以应对电力系统高维、实时和不确定性的挑战。

📚2 运行结果

2.1 UKF

2.2 EKF

部分代码:

% Covariance Matrix
sig=1e-2;
P=sig^2*eye(ns); % Error covariance matrix
Q=sig^2*eye(ns); % system noise covariance matrix
R=sig^2*eye(nm); % measurment noise covariance matrix

X_hat=X_0;
X_est=[];
X_mes=[]; % Initial statel

% constant values

RMSE=[];

%Extended Kalman Filter (EKF) ALgorithm
for k=0:deltt:t_max
% Ybus and reconstruction matrix accodring to the requirement
if k<t_SW
ps=1;
elseif (t_SW<k)&&(k<=t_FC)
ps=2;
else
ps=3;
end

Ybusm = YBUS(:,:,ps);
RVm=RV(:, :, ps);

[~, X] = ode45(@(t,x) dynamic_system(t,x,M,D,Ybusm,E_abs,PM,n),[k k+deltt],X_0);

X_0=transpose(X(end, :));
X_mes=[X_mes X_0];

%determine the measurements
E1=E_abs.*exp(1j*X_0(1:n));
I1=Ybusm*E1;
PG=real(E1.*conj(I1));
QG=imag(E1.*conj(I1));
Vmag=abs(RVm*E1);
Vangle=angle(RVm*E1);
z=[PG; QG; Vmag; Vangle];

% determine Phi=df/fx
Phi=RK4partial(E_abs, X_hat, Ybusm, M, deltt, D, n);

%prediction
% [~, X1]= ode45(@(t,x) dynamic_system(t,x,M,D,Ybusm,E_abs,PM,n),[k k+deltt],X_hat);
% X_hat=transpose(X1(end, :));

X_hat=RK4(n, deltt, E_abs, ns, X_hat, PM, M, D, Ybusm);
P=Phi*P*transpose(Phi)+Q;

% correction
[H, zhat]=RK4H(E_abs, X_hat, Ybusm, s,n, RVm) ;

% Measurement update of state estimate and estimation error covariance
K=P*transpose(H)*(H*P*transpose(H)+R);
X_hat=X_hat+K*(z-zhat);
P=(eye(ns)-K*H)*P;


X_est=[X_est, X_hat];
RMSE=[RMSE, sqrt(trace(P))];
end

save('39_RMSE_EKF.mat', 'RMSE')


%% Plots
t= (0:deltt:t_max);
for i=1:1:n
figure(i)
subplot(2,1,1)
plot(t,X_mes(i, :), 'linewidth', 1.5)
hold on
plot(t, X_est(i, :), 'linestyle', '--', 'color', 'r', 'linewidth', 2);
grid on
ylabel(sprintf('Angle_{%d}', i), 'fontsize', 12)
xlabel('time(s)', 'fontsize', 15);
title('Actual Vs Estimated \delta', 'fontsize', 12)
legend(sprintf('Angle_{%d, Actual} ',i), sprintf('Angle_{%d, EKF}', i));

subplot(2,1,2)
plot(t,X_mes(i+n, :), 'linewidth', 1.5)
hold on
plot(t, X_est(i+n, :), 'linestyle', '--', 'color', 'r', 'linewidth', 2);
grid on
ylabel(sprintf('Speed_{%d}', i), 'fontsize', 12)
xlabel('time(s)', 'fontsize', 15);
title('Actual Vs Estimated \omega', 'fontsize', 12)
legend(sprintf('Speed_{%d, Actual} ',i), sprintf('Speed_{%d, EKF}', i));

% subplot(2,2,3)
% plot(t,X_mes(i+1, :), 'linewidth', 1.5)
% hold on
% plot(t, X_est(i+1, :), 'linestyle', '--', 'color', 'r', 'linewidth', 2);
% grid on
% ylabel(sprintf('Angle_{%d}', i+1), 'fontsize', 12)
% xlabel('time(s)', 'fontsize', 15);
% title('Measured Vs Eistimated \delta', 'fontsize', 12)

🎉3参考文献

部分理论来源于网络,如有侵权请联系删除。

🌈4 Matlab代码、数据、文章下载

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/21 13:50:16

LangFlow实时预览功能揭秘:即时调试LangChain应用不再是难题

LangFlow实时预览功能揭秘&#xff1a;即时调试LangChain应用不再是难题 在构建智能对话系统、自动化文本处理流程或复杂AI代理时&#xff0c;开发者常常面临一个共同的困境&#xff1a;修改一行提示词后&#xff0c;需要完整运行整个链路才能看到结果。这种“写代码 → 运行 →…

作者头像 李华
网站建设 2026/6/21 16:29:59

零延迟核销系统是如何炼成的?——基于Open-AutoGLM的高并发处理架构详解

第一章&#xff1a;零延迟核销系统的时代背景与行业挑战在数字化经济高速发展的今天&#xff0c;企业对交易处理的实时性要求达到了前所未有的高度。传统核销系统依赖批量处理和定时调度&#xff0c;往往存在分钟级甚至小时级的延迟&#xff0c;已无法满足高频交易、实时风控和…

作者头像 李华
网站建设 2026/6/21 17:51:52

为什么你的Open-AutoGLM在边缘设备上延迟高?一文揪出根本原因

第一章&#xff1a;Open-AutoGLM 边缘计算部署优化 在边缘设备上高效部署大型语言模型&#xff08;LLM&#xff09;是当前AI系统优化的重要方向。Open-AutoGLM 作为支持自动代码生成与轻量化推理的开源框架&#xff0c;其在资源受限环境下的性能表现尤为关键。通过模型剪枝、量…

作者头像 李华
网站建设 2026/6/20 7:39:46

3天掌握Open-AutoGLM旅游辅助系统(从入门到精通的完整路径)

第一章&#xff1a;Open-AutoGLM旅游辅助系统概述Open-AutoGLM 是一个基于开源大语言模型的智能旅游辅助系统&#xff0c;专为提升旅行规划效率与个性化体验而设计。该系统融合自然语言理解、行程推荐算法与多模态数据处理能力&#xff0c;支持用户通过对话方式完成目的地推荐、…

作者头像 李华
网站建设 2026/6/20 11:10:47

为什么你的任务无法实时同步?Open-AutoGLM底层架构深度剖析

第一章&#xff1a;为什么你的任务无法实时同步&#xff1f;Open-AutoGLM底层架构深度剖析在构建基于大语言模型的自动化系统时&#xff0c;开发者常遇到任务状态不同步、响应延迟甚至执行丢失的问题。这些问题的根源往往深藏于系统的底层架构设计之中。Open-AutoGLM 作为一款面…

作者头像 李华
网站建设 2026/6/19 16:47:43

揭秘Open-AutoGLM协议栈:为何它能统一百万级IoT设备?

第一章&#xff1a;揭秘Open-AutoGLM协议栈的核心理念Open-AutoGLM 是一种面向自动化大语言模型集成的开源协议栈&#xff0c;旨在实现异构AI系统间的无缝通信与任务协同。其核心理念围绕“语义对齐、行为自治、动态适配”三大支柱构建&#xff0c;使不同模型能够在统一框架下理…

作者头像 李华