NAME
Data::Power::FaultDetectorBase - Medium Voltage Grid Equipment Fault Detection Baseline
VERSION
Version 0.01
SYNOPSIS
use Data::Power::FaultDetectorBase;
# 创建分析器实例
my $analyzer = Data::Power::FaultDetectorBase->new(
thresholds_file => 'thresholds.json',
output_file => 'faults.csv'
);
# 从文件加载数据并分析
$analyzer->analyze_data_file('input_data.csv');
# 或者直接处理数据记录
$analyzer->process_record({
device_id => 'FTU00123',
timestamp => '2025-07-01 12:34:56',
I0 => 0.5,
IA => 12.3,
IB => 11.5,
IC => 11.7,
UA => 5.9,
UB => 5.8,
UC => 5.9,
UAB => 10.1,
UBC => 10.0,
UCA => 10.0,
P => 180.5,
Q => 15.2,
COS => 0.95
});
# 获取故障汇总结果
my $fault_summary = $analyzer->get_fault_summary();
# 导出故障报告
$analyzer->export_fault_report();
DESCRIPTION
Data::Power::FaultDetectorBase模块用于分析中压配电网设备的故障情况。通过分析各种电气参数 (如电流、电压、功率和功率因数等),该模块能够识别潜在故障并生成报告。
METHODS
new
创建新的故障分析器实例
参数: thresholds_file - 包含阈值设置的JSON文件路径 output_file - 输出故障报告的文件路径(可选)
返回: Data::Power::FaultDetectorBase对象实例
load_thresholds
从JSON文件加载阈值配置
参数: file_path - JSON文件路径
返回: 成功返回1,失败返回0
set_thresholds_from_json
从JSON字符串设置阈值配置
参数: json_text - 包含阈值配置的JSON字符串
返回: 成功返回1,失败返回0
analyze_data_file
分析包含多条记录的数据文件
参数: file_path - CSV文件路径,每行包含一条设备数据记录
返回: 处理的记录数量
process_record
处理单条设备记录并检测潜在故障
参数: record - 包含设备数据的哈希引用,需包含device_id和timestamp字段, 以及I0, IA, IB, IC, UA, UB, UC, UAB, UBC, UCA, P, Q, COS等测量值
返回: 该记录检测到的故障代码数组引用
get_fault_summary
获取故障统计汇总
返回: 包含故障统计信息的哈希引用
export_fault_report
导出故障报告到CSV文件
参数: file_path - 输出文件路径(可选,默认使用初始化时设置的输出文件)
返回: 成功返回1,失败返回0
get_device_faults
获取特定设备的故障记录
参数: device_id - 设备ID
返回: 故障记录数组引用
get_devices_with_fault
获取具有特定故障代码的所有设备
参数: fault_code - 故障代码
返回: 设备ID数组
FAULT CODES
模块使用以下故障代码:
电流相关故障: E001 - 过流 E002 - 欠流 E003 - 三相电流不平衡 E004 - 极端过流 E005 - 漏电流异常
电压相关故障: E101 - 过压 E102 - 欠压 E103 - 三相电压不平衡 E104 - 极端欠压 E105 - 线电压异常
功率相关故障: E201 - 有功功率过高 E202 - 有功功率过低 E203 - 无功功率过高 E204 - 无功功率过低 E205 - 极端功率值
功率因数相关故障: E301 - 低功率因数 E302 - 负功率因数
AUTHOR
Y Peng, <ypeng at t-online.de>