故障选相仿真 1、工频突变量故障选相:首先计算故障电流和电压突变量,然后利用傅氏算法求解工频突变量,最后基于电压电流突变特征进行故障选相。 提供数据模本,只需要将自己的数据放进去,相应的更改采样频率即可。 2、行波选相:首先利用simulink模型的得到电压电流数据,然后提取行波,最后利用线模分量和零模分量的差异进行选相,可以准确的判断出具体某一相短路。 以上模型均调试完毕,可直接使用,不是全提供,看需要哪个,具体哪一个

在电力系统的故障分析与处理中,故障选相是至关重要的一环。今天就来跟大家唠唠工频突变量故障选相和行波选相这两种方法,还会带点代码示例,让理解更直观~

工频突变量故障选相

这一方法主要分三步:计算故障电流和电压突变量,用傅氏算法求解工频突变量,基于电压电流突变特征选相。

咱们先来看计算故障电流和电压突变量。一般来说,通过采集电力系统故障前后的电流和电压数据,就可以算出突变量。假设我们已经获取了电流和电压的采样数据数组 isamplesvsamples,以Python代码简单示意如下:

# 假设已经获取了故障前的采样点索引 pre_index 和故障后的采样点索引 post_index
i_pre = i_samples[pre_index]
i_post = i_samples[post_index]
v_pre = v_samples[pre_index]
v_post = v_samples[post_index]
delta_i = i_post - i_pre
delta_v = v_post - v_pre

这里代码通过简单的减法运算得到电流和电压突变量,实际应用中数据采集和索引确定会复杂得多,但基本思路就是这样。

接下来是傅氏算法求解工频突变量。傅氏算法能将复杂的周期信号分解为不同频率的正弦和余弦分量,从而提取出工频分量。以一个简单的离散傅氏变换(DFT)Python代码为例:

import cmath
def dft(signal):
    N = len(signal)
    result = [0] * N
    for k in range(N):
        for n in range(N):
            result[k] += signal[n] * cmath.exp(-2j * cmath.pi * k * n / N)
    return result
# 假设delta_i 是前面计算得到的电流突变量数组
dft_result = dft(delta_i)
# 这里只简单示意了DFT计算,实际要提取工频分量还需进一步筛选

傅氏算法能帮我们从包含各种频率成分的突变量信号中准确找出工频部分,为后续选相提供关键数据。

最后基于电压电流突变特征进行故障选相。不同的故障类型(如单相接地、相间短路等)会呈现出不同的电压电流突变特征组合。比如,A相接地故障,A相电流突变量会显著增大,A相电压突变量会有特定变化趋势。通过设定合适的阈值和逻辑判断条件,就能确定故障相。

故障选相仿真 1、工频突变量故障选相:首先计算故障电流和电压突变量,然后利用傅氏算法求解工频突变量,最后基于电压电流突变特征进行故障选相。 提供数据模本,只需要将自己的数据放进去,相应的更改采样频率即可。 2、行波选相:首先利用simulink模型的得到电压电流数据,然后提取行波,最后利用线模分量和零模分量的差异进行选相,可以准确的判断出具体某一相短路。 以上模型均调试完毕,可直接使用,不是全提供,看需要哪个,具体哪一个

这里提供数据模本,只要把自己的数据放进去,相应更改采样频率就好啦。这样整个工频突变量故障选相流程就算完整了。

行波选相

行波选相也分三步:利用Simulink模型得到电压电流数据,提取行波,利用线模分量和零模分量差异选相。

Simulink是MATLAB提供的可视化仿真工具,搭建电力系统模型,设置好参数运行后,就能得到电压电流数据。这里没法直接贴Simulink模型搭建代码,不过在MATLAB脚本里可以这样读取模型输出数据:

% 假设模型运行后输出数据保存在名为 'data' 的工作区变量中
load('data.mat');
voltage = data.voltage;
current = data.current;

这就获取到了需要的电压电流数据。

提取行波是关键步骤。行波在电力系统故障瞬间产生,通过一些信号处理算法可以从电压电流数据中提取出来。以小波变换为例,它在时频域都有良好的局部化特性,很适合提取行波这种突变信号。Python中利用PyWavelets库实现简单小波变换提取行波:

import pywt
# 假设voltage是前面从Simulink模型获取的电压数据
coeffs = pywt.wavedec(voltage, 'db4', level = 5)
# 这里简单用db4小波基进行5层小波分解,具体参数需根据实际情况调整
approx_coeff, detail_coeffs = coeffs[0], coeffs[1:]
# 近似系数和细节系数,行波信息多在细节系数中

小波变换把电压信号分解成不同频率成分,我们就能从中找到行波相关的频率部分。

最后利用线模分量和零模分量的差异进行选相。故障发生时,不同故障类型下线模分量和零模分量的幅值、极性等特性不同。例如,单相接地故障时,零模分量会有明显特征。通过分析这些差异,就能准确判断出具体哪一相短路。

以上两种故障选相模型都已调试完毕,大家可以根据实际需要选择使用。希望今天分享的内容对大家在故障选相仿真这块有所帮助呀~

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐