暂降类型暂不分析

This commit is contained in:
2025-08-01 14:47:03 +08:00
parent ccf83c8c27
commit 9cd15ff6bf
2 changed files with 37 additions and 37 deletions

View File

@@ -1,4 +1,4 @@
package com.njcn.advance.event.controller; package com.njcn.advance.controller;
import com.njcn.advance.pojo.dto.EventAnalysisDTO; import com.njcn.advance.pojo.dto.EventAnalysisDTO;
import com.njcn.advance.event.service.IEventAdvanceService; import com.njcn.advance.event.service.IEventAdvanceService;

View File

@@ -88,9 +88,7 @@ public class EventAdvanceServiceImpl implements IEventAdvanceService {
} }
} }
List<List<Float>> listWaveData = waveDataDTO.getListWaveData(); List<List<Float>> listWaveData = waveDataDTO.getListWaveData();
// 暂降原因JNA的方式 // 暂降原因JNA的方式
com.njcn.advance.event.cause.jna.QvvrCauseDLL.QvvrDataStruct causeDataStruct = new com.njcn.advance.event.cause.jna.QvvrCauseDLL.QvvrDataStruct(); com.njcn.advance.event.cause.jna.QvvrCauseDLL.QvvrDataStruct causeDataStruct = new com.njcn.advance.event.cause.jna.QvvrCauseDLL.QvvrDataStruct();
causeDataStruct.smp_rate = waveDataDTO.getComtradeCfgDTO().getFinalSampleRate(); causeDataStruct.smp_rate = waveDataDTO.getComtradeCfgDTO().getFinalSampleRate();
@@ -112,43 +110,45 @@ public class EventAdvanceServiceImpl implements IEventAdvanceService {
eventAnalysis.setCause(DataFeature.CAUSE_TYPE0); eventAnalysis.setCause(DataFeature.CAUSE_TYPE0);
eventAnalysis.setCauseFlag(0); eventAnalysis.setCauseFlag(0);
} }
System.out.println("暂降原因分析完毕===============");
System.out.println("cause:" + eventAnalysis);
// 暂降类型 // 暂降类型
// 创建数据结构 // 创建数据结构
com.njcn.advance.event.type.jna.QvvrDLL.QvvrDataStruct typeDataStruct = new com.njcn.advance.event.type.jna.QvvrDLL.QvvrDataStruct(); // com.njcn.advance.event.type.jna.QvvrDLL.QvvrDataStruct typeDataStruct = new com.njcn.advance.event.type.jna.QvvrDLL.QvvrDataStruct();
typeDataStruct.smp_rate = waveDataDTO.getComtradeCfgDTO().getFinalSampleRate(); // typeDataStruct.smp_rate = waveDataDTO.getComtradeCfgDTO().getFinalSampleRate();
typeDataStruct.smp_len = listWaveData.size(); // typeDataStruct.smp_len = listWaveData.size();
// 获取ABC三相的瞬时数据 // // 获取ABC三相的瞬时数据
for (int i = 0; i < listWaveData.size(); i++) { // for (int i = 0; i < listWaveData.size(); i++) {
typeDataStruct.smp_va[i] = listWaveData.get(i).get(1); // typeDataStruct.smp_va[i] = listWaveData.get(i).get(1);
typeDataStruct.smp_vb[i] = listWaveData.get(i).get(2); // typeDataStruct.smp_vb[i] = listWaveData.get(i).get(2);
typeDataStruct.smp_vc[i] = listWaveData.get(i).get(3); // typeDataStruct.smp_vc[i] = listWaveData.get(i).get(3);
} // }
// 执行算法分析 - 直接调用C DLL // // 执行算法分析 - 直接调用C DLL
try { // try {
QvvrDLL.INSTANCE.qvvr_fun(typeDataStruct); // QvvrDLL.INSTANCE.qvvr_fun(typeDataStruct);
if (typeDataStruct.evt_num > 0) { // if (typeDataStruct.evt_num > 0) {
// 全局比较找出最小三相电压特征值 // // 全局比较找出最小三相电压特征值
float globalMinVoltage = Float.MAX_VALUE; // float globalMinVoltage = Float.MAX_VALUE;
int globalFaultType = 10; // int globalFaultType = 10;
for (int i = 0; i < typeDataStruct.evt_num; i++) { // for (int i = 0; i < typeDataStruct.evt_num; i++) {
QvvrDLL.EventBuffer evt = typeDataStruct.evt_buf[i]; // QvvrDLL.EventBuffer evt = typeDataStruct.evt_buf[i];
for (int j = 0; j < evt.u_min_num; j++) { // for (int j = 0; j < evt.u_min_num; j++) {
float u3min = evt.u3_min[j]; // float u3min = evt.u3_min[j];
if (u3min < globalMinVoltage) { // if (u3min < globalMinVoltage) {
globalMinVoltage = u3min; // globalMinVoltage = u3min;
globalFaultType = evt.qvvr_cata_type[j]; // globalFaultType = evt.qvvr_cata_type[j];
} // }
} // }
} // }
eventAnalysis.setType(globalFaultType); // eventAnalysis.setType(globalFaultType);
} else { // } else {
eventAnalysis.setType(DataFeature.TYPE10); // eventAnalysis.setType(DataFeature.TYPE10);
} // }
} catch (Exception e) { // } catch (Exception e) {
eventAnalysis.setType(DataFeature.TYPE10); // eventAnalysis.setType(DataFeature.TYPE10);
eventAnalysis.setTypeFlag(0); // eventAnalysis.setTypeFlag(0);
} // }
return eventAnalysis; return eventAnalysis;
} }