做了这么多年电弧故障检测,我最深的体会是:算法本身不难,难的是现场环境永远比实验室复杂。你就说AFDD(电弧故障检测装置)这东西,实验室里怎么测都准,一上真实配电箱就闹脾气,尤其是多回路共零线、共箱体的时候,一个回路的电弧没检测到,隔壁回路反倒跳闸了——这就是典型的电弧串扰。今天不聊理论推导,就把我实际调算法、查误报、和串扰死磕的过程掰开揉碎讲一遍。
1. 电弧故障的物理本质:算法设计绕不开的三个特征维度
先说个基础认知:电弧故障检测算法的一切出发点,都建立在电弧电流与正常负载电流的物理特征差异上。如果不懂电弧长什么样,后面的串扰分析根本无从下手。
1.1 串联、并联、接地:三种电弧的电流特征差异
电弧故障按发生位置和回路关系,大致分三类,每一类的电流特征差得很远,算法必须分别对待。
串联电弧是最难检测的一类。它发生在线路中段或者连接点松动处,比如插座端子氧化、线缆接头压接不紧。因为电弧本身是串联进回路的,负载电流照样流过,所以回路电流不会突变,电弧信号就"叠"在负载电流上,信噪比很低。尤其当负载是空调压缩机或者电机这种大电流设备时,电弧的微小电流波动很容易被淹没。这也是串联电弧检测被称为"行业难题"的直接原因。
并联电弧(包括相间电弧和相地电弧)由于存在直接的低阻抗放电通道,回路电流会出现明显异常增大。这类电弧通常伴随短路性质,电流特征非常明显,检测相对容易,但破坏力也最大,往往是绝缘老化、线缆破损导致的。
接地电弧在光伏系统中尤其常见,例如组件对地绝缘破损时产生的电弧。其特点是电流路径部分经过大地,幅值可能不大,但高频分量依然丰富。
算法设计的第一原则是:必须先判断回路处于哪种工况,再决定用哪个特征子集。一锅端的算法在现场必然出问题。
1.2 平肩窗口:时域上最容易捕捉的"指纹"
电流波形上,电弧最典型的特征是过零附近的"平肩"现象。正常电流在过零时是迅速换向的,波形斜率很大;而电弧在电流过零附近由于弧隙介质需要重新击穿,电流会短暂停滞在零值附近,形成一个近似平坦的平台,这就是常说的"零休"。
零休时间的宽度受很多因素影响:弧隙距离、电极材料、散热条件、电路功率因数。一般来说,从几十微秒到数毫秒都可能出现。在算法里,我们通常不追求精确测量零休宽度,而是检测"电流在零点附近是否存在异常的平台段"。实现上,就是把采样电流归一化后,统计每半个工频周期内电流幅值落在阈值区间(比如峰值的3%-5%)以内的连续点数,看是否超过正常水平。
不过要留意一点:很多非线性负载的电流本身就有过零畸变。比如调光器、开关电源的输入电流在过零附近往往有死区或畸变,单独用平肩特征会引发大量误报。所以平肩必须和其他特征组合使用,不能单打独斗。
1.3 高频分量与随机性:为什么电弧噪声不像普通负载
电弧本质上是一个时变的非线性电阻,它的导通与熄灭过程伴随剧烈的电子碰撞和电离,这决定了电弧电流上叠加了极宽频带的高频分量,从十几kHz一路延伸到数MHz。更关键的是,这些高频分量的幅值和相位是随机的,不像开关电源的开关噪声那样稳定地集中在固定频率点上。
正是"宽频带"和"随机性"这两个属性,构成了电弧区别于绝大多数负载噪声的分水岭。
2. 电弧串扰到底是怎么串过来的:单回路检测失效的物理根因
串扰这个问题,不亲自在现场踩过坑,很难理解它的顽固程度。我遇到过一个典型项目:一套三相配电系统,三个回路的AFDD共用一个箱体,零线和PE线在端子排上短接。现场反复出现B回路报警,但检查B回路负载完全正常,最后定位发现真正的电弧在A回路的一个松动端子上,硬生生通过共用的零线串到了B回路的采样电路里。
2.1 三条传播路径:传导、公共阻抗、空间辐射
串扰信号进入检测装置的路径,归纳起来就是三条,实际现场往往是三条叠加。
传导路径:电弧产生的高频电流脉冲沿着导线传输。在多回路共用一个零线排或者共用PE线的场景下,A回路电弧电流的高频分量会直接注入公共零线,再通过零线进入B回路AFDD的采样回路。这条路径的耦合强度通常最高,也最难靠硬件彻底隔离。
公共阻抗路径:配电箱内零线排、接地端子排本身有阻抗(高频下阻抗更不可忽略),当电弧回路的大电流流过公共排时,两点之间就会产生高频压降。这个压降叠加在另一回路传感器的参考地上,导致检测装置在"地"和"被采样导线"之间看到虚假的高频信号。
空间辐射路径:电弧本质上就是一个宽带的电磁辐射源。AFDD的电流采样线、罗氏线圈的引出线、PCB走线在强辐射场中会像天线一样拾取信号。特别是采样线没有用双绞或屏蔽时,即使传感器安装距离电弧源有几十厘米,辐射耦合也可能超过正常负载信号。
理解了这三条路径,再去看串扰带来的是"真信号"还是"假信号"?答案是:对检测装置来说,它看到的就是一个真实的高频电流脉冲,单凭本回路采样信号,算法根本无法区分信号来源。
2.2 负载噪声与电弧信号的频谱混淆
串扰问题还有一个升级版——不是电弧信号传过来,而是"长得像电弧"的负载噪声本身就在误导算法。
典型嫌疑犯有三类:
- 变频器与伺服驱动器:IGBT开关过程产生陡峭的电压跳变沿,频谱可以覆盖到数十MHz,且伴随较强的脉冲特性。
- 开关电源(SMPS):PWM开关频率从几十kHz到几百kHz,高次谐波很丰富。
- LED调光电源:调光时使用Burst Mode(猝发模式),产生周期性脉冲群,脉冲包络的样式和电弧非常像。
这三类负载的噪声和电弧有一个本质区别,明白了它,算法设计就有了解法:周期性。负载噪声的开关频率与工频相位是严格同步的,每个工频周期重复出现,幅值和相位基本一致;电弧则是随机事件,这个周期的电弧脉冲和下一个周期的脉冲在幅值、相位、频谱分布上都有明显波动。
所以,"跨周期的重复性检验"是区分这两者最可靠的一把尺子。
2.3 误报产生的典型场景还原
我复盘过大量现场误报案例,场景高度重复:
场景一:B回路是变频器回路,A回路发生串联电弧。电弧高频电流经由公共零线进入B回路,B回路AFDD检测到超过阈值的高频能量,直接跳闸。这是最常见的传导串扰误报。
场景二:A、B两个回路在同一个配电箱内,A回路电弧的辐射耦合到B回路的采样PCB走线,B回路AFDD捕获到高频毛刺,加上负载本身是开关电源,频谱相似度高,触发报警。
场景三:C回路是LED调光照明,调光瞬间产生脉冲群,算法如果只看短时高频能量,没有做跨周期重复性校验,就会把调光脉冲误判为电弧。
这些场景的共同点在于:检测装置获取的只是"本回路电流上叠加的电气信号",但从信号层面,既无法确认电弧的物理位置在这个回路内,也无法排除其他回路串扰过来的可能。这正是"检测算法"需要升级为"识别算法"的原因。
3. 从波形到判据:电弧特征参数的提取与量化
无论做传统阈值判断还是后端接机器学习分类器,特征参数的提取都是算法的地基。我用的是组合特征方案:时域、频域、统计特征多路并行提取,最后送进决策器。
3.1 采样与预处理:多少采样率才够用
电弧高频分量理论上可达数MHz,但受限于AFDD的功耗和成本,实际采样率不能无限制拉高。我的经验值:
- 只做串联电弧检测的民用AFDD,采样率200kS/s-500kS/s足够。电弧的多数可辨识特征在10kHz-200kHz频段已经有明显表现。
- 如果要兼顾并联电弧和响应速度,用到1MS/s更好。
- 采样精度12-bit起步,16-bit更好,因为平肩检测和微弱高频特征都依赖足够的幅值分辨率。
预处理环节有两个容易被忽视的细节:一是抗混叠滤波器必须在ADC之前做,通常用一阶或二阶有源低通,截止频率设置在采样率的1/3到1/2之间,不然高频噪声折返到低频段会把特征彻底搅浑;二是采样数据要做去除工频分量处理,否则50Hz基波幅值远远大于高频分量,在时域特征提取时会掩盖小信号。
3.2 时域特征:零休检测与di/dt突变
时域特征我固定提取四个量:
零休宽度T_zero:每半个工频周期内,归一化电流幅值低于设定阈值(一般为峰值电流的5%)的连续时间长度。正常正弦电流的零休宽度在几十微秒量级,电弧发生时可能扩展到数百微秒甚至更长。
电流过零附近的斜率K_zc:对零点附近的电流波形做局部线性拟合,计算斜率。斜率异常偏小往往意味着电弧平肩,斜率异常偏大则可能出现了高频振荡叠加。
电流变化率峰值max(di/dt):电弧弧柱电阻突变时会产生很陡的电流阶跃,这是并联电弧的重要特征,串联电弧相对弱一些。
高频毛刺计数:把采样数据经过带通滤波(如10kHz-200kHz),统计一个周期内超过自适应阈值的毛刺个数。这个量对串扰信号同样敏感,所以要配合跨周期校验。
3.3 频域特征:FFT与小波变换怎么配合
频域特征提取,我在工程上用的是"FFT粗看+小波细看"的组合。
先说FFT。取一个工频周期的采样数据(比如500kS/s下取10ms,即5000个点),加窗后做FFT,得到频谱。重点关注的频带是10kHz-500kHz,提取三个参数:
- 高频总能量E_hf:选定频段内功率谱积分值。
- 频谱质心F_c:能量重心所在频率,电弧因宽带特性,频谱质心往往明显高于普通负载;开关电源有对应的主开关频率,质心落在开关频率附近。
- 高频能量在不同子带(如10k-50k、50k-200k、200k-500k三段)的分布比例R_sub。电弧能量在三个子带都有分布,而很多负载噪声集中在某一两个窄频带。
但FFT的天然局限是窗口固定、频率分辨率与时间分辨率不能兼得,所以还需要小波变换来处理突变信号。工程实现上不用什么复杂小波基,用Daubechies 4阶(db4)做三层分解就够了。第三层细节系数的包络对应电弧的随机脉冲,它的活跃度和波动度是很好的分类特征。
小波变换的计算量确实比FFT大,在低成本的MCU上要掂量一下。我一般用FFT做粗筛,只有粗筛触发后才启动小波分析做细判,这样既省电又不牺牲性能。
3.4 统计特征:随机性度量的具体方法
前面反复强调电弧的"随机性",在算法里必须把它量化,不然"随机"没法参与决策。我用三个统计量来刻画:
- 跨周期相关性:取连续N个工频周期的高频能量时间序列(每周期算一个均值E_n),计算序列的方差σ²和变异系数CV=σ/μ。正常负载噪声的CV通常小于0.3,电弧的CV可以飙升到0.6以上,因为电弧每周期都不一样。
- 频谱相似度:计算相邻两个周期FFT频谱的相关系数,电弧频谱的相关系数明显偏低。
- 脉冲间隔分布:提取高频包络中超过阈值的脉冲位置,统计连续脉冲间隔的分布情况。负载噪声的脉冲间隔相对规则,电弧的脉冲间隔呈现近似随机分布。
统计特征的计算窗口不需要太短,每10-20个工频周期更新一次即可,太频繁反而会因为窗口内样本不足导致统计量本身波动过大,产生新的误报源。
4. 应对串扰的算法设计:多特征融合与空间一致性校验
这章是重头戏。串扰问题的本质是"信号来源不唯一",所以应对思路也分成两类:一类是算法内部把"本回路电弧"和"外来串扰"的特征边界找出来,另一类是在系统层面引入更多的空间信息做一致性校验。
4.1 特征指纹库:建立负载噪声与电弧的区分边界
前面提到,负载噪声和电弧在周期性、频谱稳定性上有系统性差异,这个差异可以工程化为一张"特征指纹表"。
| 特征维度 | 典型正常负载(SMPS/变频器) | 电弧信号 | 串扰信号 |
|---|---|---|---|
| 高频能量分布 | 集中在开关频率及其谐波附近 | 宽频带均匀分布 | 受传输路径衰减,偏向低频段 |
| 跨周期变异系数CV | <0.3 | >0.6 | 0.3-0.6波动,取决于源回路负载 |
| 频谱相邻周期相关系数 | >0.9 | <0.7 | 介于两者之间 |
| 零休宽度 | 窄或不存在 | 明显增宽 | 不变(因非本回路电流) |
| 与工频相位关系 | 固定 | 随机波动 | 由源回路相位决定,与本回路可能不同步 |
在实际项目中,我倾向于在装置出厂前完成一轮"负载指纹采集",把客户侧典型负载(空调、变频器、伺服电机、开关电源、LED电源等)的噪声特征录入阈值库,算法部署后自动匹配最严格的一组阈值。注意用"最恶劣正常负载"而不是"典型正常负载"来标定阈值,前者才是决定误报率上限的基准。这一步做的越早,现场问题越少。
4.2 多回路时间一致性校验
串扰信号与真实电弧信号在"空间信息"上是有差异的,可以利用这一点设计空间校验环节。
真实电弧发生在本回路时,本回路的电流高频能量、电压波形畸变、电磁辐射近场信号会同时出现且强度相关。而串扰信号来自其他回路,它的波形形态与源回路的负载特性相关,与本回路的负载状态相关性很弱。
实现上,可以在同一配电箱内给多个AFDD增加一个同步脉冲或基于工频过零的时间同步机制。各AFDD在相同的时间窗内交换"检测到疑似电弧事件"的标志。如果在一个时间窗内,多个回路同时报"疑似电弧",大概率是串扰而非多点同时故障——多点同时真实电弧的概率在现实中低到可以忽略。此时算法进入"仲裁模式",优先相信高频能量最强、且频谱特征最符合电弧定义的回路;其他回路把事件标记为"串扰事件",不再触发脱扣。
这套逻辑在实验室里验证效果很好,但现场需要注意一点:不同回路的采样时间基准如果用的是各自的工频过零检测,会存在相位偏差,同步时要把偏差标定掉,不然强信号回路会把相邻回路误拉进"同时报警"集合。
4.3 滑窗决策与持续电弧判定
AFDD不能出现一次高频脉冲就跳闸,那会疯掉。工程上一定要做"持续电弧判定"。这是和串扰斗争的最基础也是最有效的一招。
我的做法:以半个工频周期(10ms)为一个特征提取单元,每10ms更新一次上述特征向量;然后用一个长度为20-40个单元(200-400ms)的滑窗来投票。只有当窗口内超过60%-70%的单元判定为"疑似电弧",并且窗口内的特征连续性满足要求(不允许中间有连续5个单元以上的"正常"回落),才输出最终跳闸信号。
滑窗长度的选择要权衡两个指标:检出的快速性和抗串扰的鲁棒性。短窗口(100ms)对快速发展的电弧响应快,但误报率上升;长窗口(400ms)抗干扰好,但真实电弧情况恶化时跳闸偏慢。我通常的做法是设备支持两档可调,默认用300ms档,现场根据线路长度和负载类型做微调。
补充一个细节:滑窗内的投票权重不要等权。最新产生的特征向量权重高一些,较老的权重低一些,这样既保持了对持续电弧的锁定,又避免了一瞬即逝的串扰杂波把窗口"污染"掉太久。
4.4 分类器选型:从阈值逻辑到机器学习
当特征维度越来越多,固定阈值逻辑的边界就越来越难定。你给A负载调好了阈值,换个B负载又误报。此时机器学习分类器就派上用场了。
特征向量建议为9-10维,包括:零休宽度、过零斜率、高频总能量、频谱质心、三个子带能量比例、跨周期变异系数、频谱相关系数。
算法选型:
- 传统方法优先选随机森林。它对特征量纲不敏感、不需要做复杂的归一化,训练快,部署到MCU上只需要一组判断树,内存占用小,可解释性也还行。
- **SVM(RBF核)**在小样本下精度不错,但对参数(C和γ)敏感,现场更新麻烦。
- 轻量级CNN(如只有2个卷积层)效果最好,能自动提取一些人工特征工程发现不了的耦合模式,但部署成本和数据需求都高,适合旗舰级产品。
我的建议是:量产项目先上随机森林,跑通流程、积累一批现场数据后,再用数据训练CNN做迭代升级。不要一上来就上深度学习,数据量不够时效果反而更差。
分类器输出的"电弧概率"要和时间决策逻辑结合起来。比如,单窗口的分类概率超过0.85,且连续4个窗口中至少3个达到0.7以上,才输出跳闸。这样可以同时利用分类器的判别能力和时间滤波的稳定性。
5. 工程落地中的实测记录与参数标定
理论框架说完了,聊点实操层面的数据和教训。
5.1 实验平台搭建与负载配置
实验室平台我建议至少准备以下负载用于算法验证:
- 阻性负载(电炉、白炽灯):基准,无干扰。
- 开关电源(电脑电源、通信电源):测试窄带噪声干扰。
- 变频器+电机:测试脉冲群干扰,注意变频器谐波很大,测试时AFDD供电要用隔离电源。
- LED调光电源:测试猝发脉冲干扰。
- 手电钻、吸尘器等串激电机:测试换向火花干扰,这个和电弧特征很接近,最难区分。
电弧发生装置用的是两根铜电极,通过步进电机控制分离速度和间距,在设定电流下拉开电弧。注意电极材料建议用铜,比碳电极更接近真实线路故障的弧隙特性。
5.2 典型测试波形与特征参数参考值
以我常用的测试基准来说:220V/50Hz,串联电弧回路的负载电流在5A-20A区间,电极间距调到约1mm-2mm时,稳定燃弧状态下测得的特征参数大致如下:
- 零休宽度:150μs-800μs,视平肩判据阈值不同有波动,正常线性负载在50μs以下。
- 高频能量(10kHz-200kHz带内,以20A为基准):电弧状态下比正常状态高10倍以上,且逐周期波动大。
- 频谱相关系数:电弧状态下相邻周期约0.3-0.6,正常开关电源在0.95以上。
- 变异系数:电弧序列CV约0.5-1.0,正常负载0.05-0.3。
这些数值在不同负载电流下会有偏移,所以我每次标定都要求覆盖负载电流从最小工作电流到1.2倍额定电流的范围,划出二维边界。
5.3 误报与漏报的平衡调试经验
踩过的坑说出来给你避着走:
第一,门限定太高,真实串联电弧接触电阻较大时高频能量上不来,漏报风险很大。我吃过一次亏,在某型AFDD上把高频能量阈值拉到很高以求过EMC测试,结果现场一个端子松动,电弧燃了超过1秒都没跳,客户测试时直接复现了故障,弄得很难看。
第二,只加高频能量判据,导致变频器满载时频繁误报,因为IGBT开关的di/dt产生的尖峰电流在高频带能量非常高,且周期重复性也很强。后来加了相对频带质心判据才压下来。
第三,传感器饱和问题。电流互感器在大电流下磁芯饱和后,次级电流波形严重畸变,高频分量被"削平",反而导致漏报。用罗氏线圈没有饱和问题,但弱信号下的噪声特性要选好运放。如果要覆盖1A-63A的宽电流范围,我建议用罗氏线圈或者加磁复位电路的开环霍尔传感器。
第四,地环路干扰。样机做整机EMC测试时,因为接地不良,50Hz共模电流直接进入信号地,把微弱电弧信号淹没。解决方法很简单:采样电路和功率电路分开供电,采样参考地单点连接到PE,不要大面积覆铜把两地连成环。
第五,滑窗长度和用户用电体验的冲突。400ms的滑窗在电弧已燃的情况下,铜导线可能已经烧灼到相当程度,尤其串联电弧的发热集中,要兼顾安全性。我的建议是:方案上做成两阶段,第一阶段用短窗口(100ms)粗判,一旦出来立即启动第二阶段延长窗口的细判,细判期间可以输出声光告警但不脱扣,等细判确认后再跳闸。这样既避免了串扰误跳,又能尽早提醒用户检查线路。
6. 串扰特征库的持续更新与扩展思路
最后分享一个长期主义视角的事情。
现场串扰问题的本质是"特征漂移"。今天客户现场是变频器和开关电源,明天可能就换成储能逆变器、充电桩、新能源车V2L电源,负载噪声库永远在更新。电弧检测算法要能在现场做在线更新,这要求把特征提取和支持向量机的参数设计成可配置项,甚至预留OTA升级通道。我在一个光伏直流电弧检测项目里就是靠OTA升级,把客户现场新出现的一种MPPT扰动噪声从误报源中排除,不然那一批机器全部要返厂改参数。
后续我觉得可以扩展的方向有这几个:
一是融合电压采样。好多人只做电流特征,但电弧发生瞬间电压波形同样有高频畸变和高频噪声。增加电压通道,用电压电流联合特征做互相关,在串扰场景下可以大幅提高来源辨识能力。缺点是成本增加,适合高端产品。
二是边缘侧小模型训练。新一代MCU算力提升很快,可以在装置里做简单的在线学习,把运行期间识别出的"疑似串扰特征样本"存下来,定期在本地做分类器增量更新。这相当于让装置越用越懂现场的负载环境。
三是我个人还在尝试的方向:利用相邻回路之间的相位差信息做空间定位。不同回路的电流相位不同,串扰信号会带着源回路的相位印记,通过分析串扰脉冲的相位分布,可以反向定位电弧所在回路,把"误报"变成"定位信息",这个问题就不攻自破了。
做电弧故障检测这些年,我一直觉得这行是"脏活累活",没有捷径。每一个误报、每一次漏报背后,都是对特征理解不够深的代价。希望这篇文章能把串扰问题的一些经验传递到位,让后来的人少走几步弯路。