阻性漏电探测技术方案,适用于 工业设备安全监测、智能家居漏电保护、新能源系统(如光伏逆变器)绝缘检测 等场景。方案基于高精度信号采集、相位分析和嵌入式算法,实现可靠漏电检测与保护。
阻性漏电探测方案
一、方案背景
目标:
实时检测电气系统中的阻性漏电电流(如线路老化、绝缘破损或设备进水导致的漏电),精准区分容性漏电(分布电容或高频干扰),并触发快速保护(断电、报警或上报云端)。
应用场景:
光伏系统直流侧绝缘阻抗检测
二、技术原理
漏电流特性分析
漏电类型 相位关系 典型场景
阻性漏电 电流与电压同相位(0°) 线路绝缘破损、设备外壳带电
容性漏电 电流超前电压相位(≈90°) 长电缆分布电容、高频开关噪声
检测原理
零序电流检测法:
通过零序电流互感器(CT)采集漏电流信号,放大后计算有效值(RMS),结合电压相位判断阻性分量。
电压-电流相位同步采样:
采集电网电压波形(过零检测)与漏电流波形,通过FFT或互相关算法计算相位差。
三、硬件设计
系统架构
plaintext
Copy Code
[零序CT] → [信号调理电路] → [ADC] → [STM32主控] → [保护输出/通信]
↑ ↑
[电压采样] → [过零检测电路]
关键模块设计
(1)信号调理电路
CT选型:高灵敏度微型CT(如CT-05A,量程0~100mA,输出0~1V)。
放大与滤波:
一级放大:低噪声运放(AD623)放大10倍,提高ADC分辨率。
二阶带通滤波:截止频率45Hz~55Hz,抑制工频噪声以外的干扰。
plaintext
Copy Code
CT输出 → 10kΩ负载电阻 → AD623放大 → 带通滤波 → STM32 ADC
(2)相位检测电路
电压过零检测:电压信号经分压和比较器(LM393)转换为方波,输入STM32定时器捕获通道(TIMx_CH1)。
电流过零检测:调理后的漏电流信号通过另一路比较器生成方波,输入TIMx_CH2。
(3)主控芯片
内置12位ADC(1μs转换时间),支持DMA连续采样。
高级定时器(TIM1)用于相位差计算。
支持FFT运算(利用ARM CMSIS-DSP库)。
四、软件设计
算法流程
plaintext
Copy Code
- 初始化:ADC/DMA配置、定时器捕获使能
- 数据采集:
- ADC以1kHz采样率采集电流信号(连续模式)
- 定时器记录电压/电流方波上升沿时间戳
- 信号处理:
- 滑动平均滤波(窗口长度10)
- FFT提取50Hz基波幅值与相位
- 漏电判断:
- IF (电流有效值 > 阈值 && 相位差 < 10°) → 阻性漏电触发
- ELSE IF (电流有效值 > 阈值 && 相位差 > 80°) → 容性漏电报警(不跳闸)
- 核心代码实现(基于STM32 HAL库)
(1)ADC采样与FFT
c
Copy Code
#include "arm_math.h"
#define FFT_SIZE 256
float32_t adc_buffer[FFT_SIZE];
float32_t fft_output[FFT_SIZE];
arm_rfft_fast_instance_f32 fft_inst;
void ADC_Init() {
HAL_ADC_Start_DMA(&hadc1, (uint32_t*)adc_buffer, FFT_SIZE);
arm_rfft_fast_init_f32(&fft_inst, FFT_SIZE);
}
void Process_FFT() {
arm_rfft_fast_f32(&fft_inst, adc_buffer, fft_output, 0);
// 提取50Hz分量(假设采样率1kHz,FFT_SIZE=256)
uint16_t bin_index = 50 * FFT_SIZE / 1000;
float32_t current_mag = sqrtf(fft_output[2*bin_index]*fft_output[2*bin_index] +
fft_output[2*bin_index+1]*fft_output[2*bin_index+1]);
current_mag = current_mag * 2 / FFT_SIZE; // 转换为实际幅值
}
(2)相位差计算(定时器捕获)
c
Copy Code
volatile uint32_t voltage_time, current_time;
void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim) {
if (htim->Channel == HAL_TIM_ACTIVE_CHANNEL_1) {
voltage_time = HAL_TIM_ReadCapturedValue(htim, TIM_CHANNEL_1);
} else if (htim->Channel == HAL_TIM_ACTIVE_CHANNEL_2) {
current_time = HAL_TIM_ReadCapturedValue(htim, TIM_CHANNEL_2);
// 计算相位差(单位:度)
float phase_diff = ((current_time - voltage_time) * 360.0) / htim->Instance->ARR;
if (phase_diff < 0) phase_diff += 360;
}
}
五、测试验证
测试场景
阻性漏电模拟:在火线与地之间接入可调电阻(1kΩ~10kΩ)。
容性漏电模拟:在火线与地之间接入电容(0.1μF~1μF)。
性能指标
参数 指标
检测灵敏度 5mA(阻性)
响应时间 ≤50ms(符合IEC 61008标准)
相位分辨率 ±0.5°(@50Hz)
误报率 <0.1%(容性漏电100mA内不触发)
六、安全与认证
EMC设计:
CT二次侧加TVS管(如SMBJ5.0A)防止浪涌。
PCB布局隔离模拟/数字区域,避免耦合干扰。
合规性:
通过GB/T 16916.1-2014(中国漏电保护标准)。
符合IEC 60364-4-41(低压电气装置安全规范)。
方案优势:
精准区分阻性/容性漏电,降低误动作风险。
基于STM32的软硬件协同设计,成本可控且易于扩展(支持物联网功能)。
模块化设计,可适配不同电流等级场景(通过更换CT和调整软件参数)。
附件:
硬件原理图(PDF)
STM32工程源码(Keil项目)
测试报告(含EMC/环境试验数据)
1216