@enervance/insight-cim-model 0.0.277 → 0.0.279
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analysis/powerflow/powerflow.util.d.ts +213 -0
- package/dist/analysis/powerflow/powerflow.util.js +1466 -0
- package/dist/analysis/powerflow/powerflow.util.js.map +1 -0
- package/dist/constants/cim-class-names.d.ts +4 -0
- package/dist/constants/cim-class-names.js +4 -0
- package/dist/constants/cim-class-names.js.map +1 -1
- package/dist/converter/integral7/converter.integral7.d.ts +3 -3
- package/dist/converter/integral7/converter.integral7.js +114 -61
- package/dist/converter/integral7/converter.integral7.js.map +1 -1
- package/dist/converter/integral7/dl-convert/executor.js +22 -55
- package/dist/converter/integral7/dl-convert/executor.js.map +1 -1
- package/dist/converter/integral7/interface-i7/export-frame-i7.js +6 -1
- package/dist/converter/integral7/interface-i7/export-frame-i7.js.map +1 -1
- package/dist/converter/integral7/model/interfaces.d.ts +7 -1
- package/dist/converter/integral7/model/interfaces.js.map +1 -1
- package/dist/converter/integral7/sql/integral.sql.d.ts +3 -0
- package/dist/converter/integral7/sql/integral.sql.js +8 -2
- package/dist/converter/integral7/sql/integral.sql.js.map +1 -1
- package/dist/interfaces/model/core/IIdentifiedObject.d.ts +1 -0
- package/dist/interfaces/model/core/ITerminal.d.ts +0 -1
- package/dist/model/core/ConnectivityNode.js +2 -0
- package/dist/model/core/ConnectivityNode.js.map +1 -1
- package/dist/model/core/Equipment.js +1 -0
- package/dist/model/core/Equipment.js.map +1 -1
- package/dist/model/core/IdentifiedObject.d.ts +3 -0
- package/dist/model/core/IdentifiedObject.js +7 -0
- package/dist/model/core/IdentifiedObject.js.map +1 -1
- package/dist/model/core/Terminal.d.ts +1 -0
- package/dist/model/core/Terminal.js +11 -8
- package/dist/model/core/Terminal.js.map +1 -1
- package/dist/model/dc/CsConverter.js.map +1 -1
- package/dist/model/extensions/amprion/common/AMPRIONWireOperatingTypeKind.d.ts +3 -0
- package/dist/model/extensions/amprion/common/AMPRIONWireOperatingTypeKind.js +4 -1
- package/dist/model/extensions/amprion/common/AMPRIONWireOperatingTypeKind.js.map +1 -1
- package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.d.ts +1 -0
- package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js +2 -1
- package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js.map +1 -1
- package/dist/model/extensions/amprion/core/AMPRIONLine.d.ts +1 -0
- package/dist/model/extensions/amprion/core/AMPRIONLine.js +2 -0
- package/dist/model/extensions/amprion/core/AMPRIONLine.js.map +1 -1
- package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.d.ts +1 -0
- package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.js.map +1 -1
- package/dist/model/extensions/amprion/wires/AMPRIONLinearShuntCompensator.d.ts +14 -0
- package/dist/model/extensions/amprion/wires/AMPRIONLinearShuntCompensator.js +50 -0
- package/dist/model/extensions/amprion/wires/AMPRIONLinearShuntCompensator.js.map +1 -0
- package/dist/model/extensions/integral/common/INTEGRALMultiplierFactor.d.ts +1 -0
- package/dist/model/extensions/integral/common/INTEGRALMultiplierFactor.js +4 -2
- package/dist/model/extensions/integral/common/INTEGRALMultiplierFactor.js.map +1 -1
- package/dist/model/extensions/integral/dc/DCConverterUnit.d.ts +1 -0
- package/dist/model/extensions/integral/dc/DCConverterUnit.js +2 -0
- package/dist/model/extensions/integral/dc/DCConverterUnit.js.map +1 -1
- package/dist/model/extensions/integral/wires/INTEGRALEnergySource.d.ts +28 -0
- package/dist/model/extensions/integral/wires/INTEGRALEnergySource.js +177 -0
- package/dist/model/extensions/integral/wires/INTEGRALEnergySource.js.map +1 -0
- package/dist/model/extensions/integral/wires/INTEGRALSynchronousMachine.d.ts +5 -0
- package/dist/model/extensions/integral/wires/INTEGRALSynchronousMachine.js +88 -0
- package/dist/model/extensions/integral/wires/INTEGRALSynchronousMachine.js.map +1 -1
- package/dist/model/generation/GeneratingUnit.js.map +1 -1
- package/dist/model/generation/HydroGeneratingUnit.d.ts +6 -0
- package/dist/model/generation/HydroGeneratingUnit.js +62 -0
- package/dist/model/generation/HydroGeneratingUnit.js.map +1 -1
- package/dist/model/wires/EnergySource.js +14 -13
- package/dist/model/wires/EnergySource.js.map +1 -1
- package/dist/model/wires/LinearShuntCompensator.d.ts +5 -0
- package/dist/model/wires/LinearShuntCompensator.js +45 -25
- package/dist/model/wires/LinearShuntCompensator.js.map +1 -1
- package/dist/model/wires/SeriesCompensator.js +1 -2
- package/dist/model/wires/SeriesCompensator.js.map +1 -1
- package/dist/model/wires/ShuntCompensator.d.ts +1 -0
- package/dist/model/wires/ShuntCompensator.js +7 -0
- package/dist/model/wires/ShuntCompensator.js.map +1 -1
- package/dist/model/wires/SynchronousMachine.js +4 -4
- package/dist/utils2/cim.model.utils.js +8 -0
- package/dist/utils2/cim.model.utils.js.map +1 -1
- package/dist/utils2/parser.utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -148,6 +148,8 @@ const i7_graph_utils_1 = require("./model/i7-graph-utils.js");
|
|
|
148
148
|
const TopologicalNode_1 = require("../../model/topology/TopologicalNode.js");
|
|
149
149
|
const geodata_util_1 = require("../../util/geodata.util.js");
|
|
150
150
|
const DCLineSegment_1 = require("../../model/extensions/integral/dc/DCLineSegment.js");
|
|
151
|
+
const AMPRIONLinearShuntCompensator_1 = require("../../model/extensions/amprion/wires/AMPRIONLinearShuntCompensator.js");
|
|
152
|
+
const INTEGRALEnergySource_1 = require("../../model/extensions/integral/wires/INTEGRALEnergySource.js");
|
|
151
153
|
class ConverterIntegral7 {
|
|
152
154
|
set configurableDLConvertOptions(arg) {
|
|
153
155
|
tslib_1.__classPrivateFieldSet(this, _ConverterIntegral7_configurableDLConvertOptions, arg, "f");
|
|
@@ -231,6 +233,7 @@ class ConverterIntegral7 {
|
|
|
231
233
|
continue;
|
|
232
234
|
yield this.convertFrame(frame, geoRegion, objectMappingConfig, energyTypesConfig, defaultValuesConfig, energySourceTypeMappingConfig);
|
|
233
235
|
}
|
|
236
|
+
/** EQ, SSH, AMPI7 ... Profile */
|
|
234
237
|
this.logger.debug('Convert MAS Profiles');
|
|
235
238
|
console.log('Convert MAS Profiles');
|
|
236
239
|
for (const entry of this.exportFrames.entries()) {
|
|
@@ -316,6 +319,7 @@ class ConverterIntegral7 {
|
|
|
316
319
|
let startTime = perf_hooks.performance.now();
|
|
317
320
|
//await this.convertRegelzone(cimModel, defaultValuesConfig);
|
|
318
321
|
logExecutionTime(this.logger, startTime, `convertRegelzone(${cimModel.controlArea.size})`);
|
|
322
|
+
const marktGebiet = this.isTableAvailable(integral_sql_1.Integral7TableNames.MARKTGEBIET) ? yield this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.MARKTGEBIET, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.MARKTGEBIET), [])) : new Array();
|
|
319
323
|
startTime = perf_hooks.performance.now();
|
|
320
324
|
/** Standort -> Substation */
|
|
321
325
|
yield this.convertStandorte(cimModel, integral7Modell, subGeoRegionsI7IDs, defaultValuesConfig);
|
|
@@ -357,7 +361,7 @@ class ConverterIntegral7 {
|
|
|
357
361
|
/** Abzweigpunkte KnotenSo -> ConnectivityNode */
|
|
358
362
|
startTime = perf_hooks.performance.now();
|
|
359
363
|
if (standortIDs.length)
|
|
360
|
-
yield this.convertKnotenSo(frame, integral7Modell, standortIDs, defaultValuesConfig);
|
|
364
|
+
yield this.convertKnotenSo(frame, integral7Modell, standortIDs, defaultValuesConfig, marktGebiet);
|
|
361
365
|
logExecutionTime(this.logger, startTime, `convertKnotenSO()`);
|
|
362
366
|
const knotenSoIDs = [...integral7Modell.integralKnotenSo.keys()];
|
|
363
367
|
/** KnotenSf */
|
|
@@ -386,7 +390,7 @@ class ConverterIntegral7 {
|
|
|
386
390
|
/** Sammelschienenabschnitte -> BusbarSections */
|
|
387
391
|
startTime = perf_hooks.performance.now();
|
|
388
392
|
if (schaltanlagenAbschnittIDs.length > 0)
|
|
389
|
-
yield this.convertSammelschienenAbschnitte(cimModel, integral7Modell, schaltanlagenAbschnittIDs);
|
|
393
|
+
yield this.convertSammelschienenAbschnitte(cimModel, integral7Modell, schaltanlagenAbschnittIDs, marktGebiet);
|
|
390
394
|
logExecutionTime(this.logger, startTime, `convertSammelschienenAbschnitte(${cimModel.busbarSections.size})`);
|
|
391
395
|
/** starre Anschluesse als Junction.
|
|
392
396
|
* Sammelschienen müssen zuertst konvertiert werden. */
|
|
@@ -558,6 +562,7 @@ class ConverterIntegral7 {
|
|
|
558
562
|
startTime = perf_hooks.performance.now();
|
|
559
563
|
yield this.createTopologicalNodes(cimModel);
|
|
560
564
|
logExecutionTime(this.logger, startTime, `createTopologicalNodes()`);
|
|
565
|
+
/** SV Profile */
|
|
561
566
|
/** TopologicalNodes From- und To-Attribute setzen*/
|
|
562
567
|
/** Suche alle Terminals mit nicht ausgeprägten ConnectivityNode
|
|
563
568
|
* Siche das ConnectivityNode in BoundaryFrames */
|
|
@@ -1038,8 +1043,8 @@ class ConverterIntegral7 {
|
|
|
1038
1043
|
}
|
|
1039
1044
|
});
|
|
1040
1045
|
}
|
|
1041
|
-
convertKnotenSo(frame, integral7, standortIDs, defaultValuesConfig) {
|
|
1042
|
-
var _a, _b;
|
|
1046
|
+
convertKnotenSo(frame, integral7, standortIDs, defaultValuesConfig, marktGebiet) {
|
|
1047
|
+
var _a, _b, _c;
|
|
1043
1048
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
1044
1049
|
const cimModel = frame.cimModel;
|
|
1045
1050
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.KNOTEN_SO)) {
|
|
@@ -1047,6 +1052,7 @@ class ConverterIntegral7 {
|
|
|
1047
1052
|
const netzGruppe = yield this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NETZGRUPPE, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NETZGRUPPE), []));
|
|
1048
1053
|
for (const i7Data of result) {
|
|
1049
1054
|
const netzgruppe = netzGruppe.filter(elem => elem.id === i7Data.netzgruppe);
|
|
1055
|
+
const marktgebiet = marktGebiet.filter(elem => elem.id === i7Data.marktgebiet);
|
|
1050
1056
|
const substation = cimModel.getSubstation(this.integralID2UUID.get(i7Data.standort));
|
|
1051
1057
|
const rdfid = (0, parser_utils_1.getUUID)(i7Data.guid_cn, this.objectMappingConfig.standardiseUuid);
|
|
1052
1058
|
const vl = new VoltageLevel_1.VoltageLevel(common_utils_1.CommonUtils.generateUUIDv5(cim_class_names_1.ClassNames.VoltageLevel, this.configUuid, rdfid), i7Data.bezeichner, i7Data.kurzname);
|
|
@@ -1055,10 +1061,11 @@ class ConverterIntegral7 {
|
|
|
1055
1061
|
vl.addConnectivityNode(connectivityNode);
|
|
1056
1062
|
connectivityNode.nodeNumber = i7Data.id_psse_cape;
|
|
1057
1063
|
connectivityNode.netzGruppe = (_a = netzgruppe === null || netzgruppe === void 0 ? void 0 : netzgruppe.at(0)) === null || _a === void 0 ? void 0 : _a.bezeichner;
|
|
1064
|
+
connectivityNode.marktGebiet = (_b = marktgebiet === null || marktgebiet === void 0 ? void 0 : marktgebiet.at(0)) === null || _b === void 0 ? void 0 : _b.bezeichner;
|
|
1058
1065
|
if (frame.boundary) {
|
|
1059
1066
|
connectivityNode.boundaryPoint = true;
|
|
1060
1067
|
}
|
|
1061
|
-
const key = integral_sql_1.I7Objects.KNOTEN_SO + ((
|
|
1068
|
+
const key = integral_sql_1.I7Objects.KNOTEN_SO + ((_c = connectivityNode === null || connectivityNode === void 0 ? void 0 : connectivityNode.getUUID()) !== null && _c !== void 0 ? _c : '');
|
|
1062
1069
|
const junction = new Junction_1.Junction(common_utils_1.CommonUtils.generateUUIDv5(cim_class_names_1.ClassNames.VoltageLevel, this.configUuid, key), (0, util_create_1.createNotation)([(0, utils_2.getName)(i7Data), connectivityNode.getUUID().substring(0, 8), "_J"]));
|
|
1063
1070
|
this.createConnection(cimModel, junction, connectivityNode, PhaseCode_1.PhaseCode.ABC, true);
|
|
1064
1071
|
const un = (0, utils_2.getU)(i7Data.un);
|
|
@@ -1117,8 +1124,8 @@ class ConverterIntegral7 {
|
|
|
1117
1124
|
}
|
|
1118
1125
|
});
|
|
1119
1126
|
}
|
|
1120
|
-
convertSammelschienenAbschnitte(cimModel, integral7, schaltanlagenAbschnittIDs) {
|
|
1121
|
-
var _a, _b, _c;
|
|
1127
|
+
convertSammelschienenAbschnitte(cimModel, integral7, schaltanlagenAbschnittIDs, marktGebiet) {
|
|
1128
|
+
var _a, _b, _c, _d;
|
|
1122
1129
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
1123
1130
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.SAMMELSCHIENE)) {
|
|
1124
1131
|
const result = yield this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.SAMMELSCHIENE, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.SAMMELSCHIENE), schaltanlagenAbschnittIDs));
|
|
@@ -1126,6 +1133,7 @@ class ConverterIntegral7 {
|
|
|
1126
1133
|
for (const i7Data of result) {
|
|
1127
1134
|
const i7Schaltanlagenabschnitt = integral7.integralSchaltanlagenAbschnitte.get(i7Data.saabschnitt);
|
|
1128
1135
|
const netzgruppe = netzGruppe.filter(elem => elem.id === i7Data.netzgruppe);
|
|
1136
|
+
const marktgebiet = marktGebiet.filter(elem => elem.id === i7Data.marktgebiet);
|
|
1129
1137
|
let saab = undefined;
|
|
1130
1138
|
if (integral7.integralSchaltanlagenAbschnitte.has(i7Data.saabschnitt)) {
|
|
1131
1139
|
saab = integral7.integralSchaltanlagenAbschnitte.get(i7Data.saabschnitt);
|
|
@@ -1135,10 +1143,11 @@ class ConverterIntegral7 {
|
|
|
1135
1143
|
const voltageLevel = cimModel.getVoltageLevel(this.integralID2UUID.get(i7Schaltanlagenabschnitt.id));
|
|
1136
1144
|
connectivityNode.nodeNumber = i7Data.id_psse_cape;
|
|
1137
1145
|
connectivityNode.netzGruppe = (_a = netzgruppe === null || netzgruppe === void 0 ? void 0 : netzgruppe.at(0)) === null || _a === void 0 ? void 0 : _a.bezeichner;
|
|
1146
|
+
connectivityNode.marktGebiet = (_b = marktgebiet === null || marktgebiet === void 0 ? void 0 : marktgebiet.at(0)) === null || _b === void 0 ? void 0 : _b.bezeichner;
|
|
1138
1147
|
const keyBusbarSection = [
|
|
1139
1148
|
integral_sql_1.I7Objects.SAMMELSCHIENE,
|
|
1140
|
-
(
|
|
1141
|
-
(
|
|
1149
|
+
(_c = voltageLevel === null || voltageLevel === void 0 ? void 0 : voltageLevel.getUUID()) !== null && _c !== void 0 ? _c : '',
|
|
1150
|
+
(_d = connectivityNode === null || connectivityNode === void 0 ? void 0 : connectivityNode.getUUID()) !== null && _d !== void 0 ? _d : ''
|
|
1142
1151
|
].join('');
|
|
1143
1152
|
const uuidBusbarSection = common_utils_1.CommonUtils.generateUUIDv5(cim_class_names_1.ClassNames.BusbarSection, this.configUuid, keyBusbarSection);
|
|
1144
1153
|
const busbarSection = new BusbarSection_1.BusbarSection(uuidBusbarSection, i7Data.bezeichner, i7Schaltanlagenabschnitt.kurzname);
|
|
@@ -1276,9 +1285,6 @@ class ConverterIntegral7 {
|
|
|
1276
1285
|
const key = integral_sql_1.I7Objects.SCHLAUFE + String(i7Data.id);
|
|
1277
1286
|
const uuid = common_utils_1.CommonUtils.generateUUIDv5(cim_class_names_1.ClassNames.Terminal, this.configUuid, key);
|
|
1278
1287
|
const terminal = new Terminal_1.Terminal(uuid, i7Data.bezeichner, i7Data.kurzname, i7Data.kommentar);
|
|
1279
|
-
if (terminal.getUUID() === '7564eef1-6cd6-59c2-957e-825c6593fdf2') {
|
|
1280
|
-
const stop = true;
|
|
1281
|
-
}
|
|
1282
1288
|
terminal.connected = (0, parser_utils_1.convertToBooleanI7)(i7Data.schaltzustand);
|
|
1283
1289
|
terminal.phases = PhaseCode_1.PhaseCode.ABC;
|
|
1284
1290
|
terminal.key = integral_prefix_1.SCHLAUFE_PRAEFIX + i7Data.bezeichner;
|
|
@@ -1516,9 +1522,6 @@ class ConverterIntegral7 {
|
|
|
1516
1522
|
for (const i7Data of result) {
|
|
1517
1523
|
const genType = this.generatorTypen.get(i7Data.nametyp);
|
|
1518
1524
|
const synchronousMachine = new INTEGRALSynchronousMachine_1.INTEGRALSynchronousMachine((0, parser_utils_1.getUUID)(i7Data.guid, this.objectMappingConfig.standardiseUuid), (0, util_create_1.createNotation)([(0, utils_2.getName)(i7Data), '_SM'], 32, true), i7Data.kurzname, i7Data.nameprimaertyp);
|
|
1519
|
-
if (synchronousMachine.getUUID() === '10409E08-E2C0-4EBD-AD4C-5370178ED62F') {
|
|
1520
|
-
let stop = true;
|
|
1521
|
-
}
|
|
1522
1525
|
const inBetrieb = (0, parser_utils_1.convertToBooleanI7)(i7Data.betrieb);
|
|
1523
1526
|
const cosPhi = (0, parser_utils_1.isNumericI7)(i7Data.cos_phi) ? (0, parser_utils_1.convertToNumberI7)(i7Data.cos_phi) : undefined;
|
|
1524
1527
|
const maxP = (0, parser_utils_1.isNumericI7)(i7Data.p_max) ? (0, parser_utils_1.convertToNumberI7)(i7Data.p_max) : undefined;
|
|
@@ -1586,19 +1589,39 @@ class ConverterIntegral7 {
|
|
|
1586
1589
|
}
|
|
1587
1590
|
/** Ermittle die Blocktransformatoren*/ //TODO: das Mapping per Abfrage in den convertTrafoXW-Methoden durchführen.
|
|
1588
1591
|
if ((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_1)) {
|
|
1589
|
-
this.blocktransformatoren.push((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_1));
|
|
1592
|
+
this.blocktransformatoren.push((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_1)); //This is only needed in case powertransformer is converteed after generating units
|
|
1593
|
+
const pt = cimModel.getPowerTransformer(this.integralID2UUID.get((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_1)));
|
|
1594
|
+
if (pt != undefined) {
|
|
1595
|
+
pt.isPartOfGeneratorUnit = true;
|
|
1596
|
+
}
|
|
1590
1597
|
}
|
|
1591
1598
|
if ((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_2)) {
|
|
1592
|
-
this.blocktransformatoren.push((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_2));
|
|
1599
|
+
this.blocktransformatoren.push((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_2)); //This is only needed in case powertransformer is converteed after generating units
|
|
1600
|
+
const pt = cimModel.getPowerTransformer(this.integralID2UUID.get((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_2)));
|
|
1601
|
+
if (pt != undefined) {
|
|
1602
|
+
pt.isPartOfGeneratorUnit = true;
|
|
1603
|
+
}
|
|
1593
1604
|
}
|
|
1594
1605
|
if ((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_3)) {
|
|
1595
|
-
this.blocktransformatoren.push((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_3));
|
|
1606
|
+
this.blocktransformatoren.push((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_3)); //This is only needed in case powertransformer is converteed after generating units
|
|
1607
|
+
const pt = cimModel.getPowerTransformer(this.integralID2UUID.get((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_3)));
|
|
1608
|
+
if (pt != undefined) {
|
|
1609
|
+
pt.isPartOfGeneratorUnit = true;
|
|
1610
|
+
}
|
|
1596
1611
|
}
|
|
1597
1612
|
if ((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_4)) {
|
|
1598
|
-
this.blocktransformatoren.push((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_4));
|
|
1613
|
+
this.blocktransformatoren.push((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_4)); //This is only needed in case powertransformer is converteed after generating units
|
|
1614
|
+
const pt = cimModel.getPowerTransformer(this.integralID2UUID.get((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_4)));
|
|
1615
|
+
if (pt != undefined) {
|
|
1616
|
+
pt.isPartOfGeneratorUnit = true;
|
|
1617
|
+
}
|
|
1599
1618
|
}
|
|
1600
1619
|
if ((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_5)) {
|
|
1601
|
-
this.blocktransformatoren.push((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_5));
|
|
1620
|
+
this.blocktransformatoren.push((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_5)); //This is only needed in case powertransformer is converteed after generating units
|
|
1621
|
+
const pt = cimModel.getPowerTransformer(this.integralID2UUID.get((0, parser_utils_1.convertToNumberI7)(i7Data.blocktrafo_5)));
|
|
1622
|
+
if (pt != undefined) {
|
|
1623
|
+
pt.isPartOfGeneratorUnit = true;
|
|
1624
|
+
}
|
|
1602
1625
|
}
|
|
1603
1626
|
const prio = (0, parser_utils_1.isNumericI7)(i7Data.einspprio) ? (0, parser_utils_1.convertToNumberI7)(i7Data.einspprio) : undefined;
|
|
1604
1627
|
synchronousMachine.referencePriority = prio;
|
|
@@ -1634,6 +1657,7 @@ class ConverterIntegral7 {
|
|
|
1634
1657
|
synchronousMachine.setReactivePower(q * -1); //convert to load sign system
|
|
1635
1658
|
synchronousMachine.p_mf = powerData[2] ? powerData[2] * -1 : undefined; //convert to load sign system
|
|
1636
1659
|
synchronousMachine.q_mf = powerData[3] ? powerData[3] * -1 : undefined; //convert to load sign system
|
|
1660
|
+
synchronousMachine.kr = i7Data.kr;
|
|
1637
1661
|
/** TODO Berechnung überprüfen => DONE */
|
|
1638
1662
|
/* const s = Math.sqrt(Math.pow(maxP, 2) + Math.pow(maxQvonPmax, 2));*/
|
|
1639
1663
|
const sr = (0, parser_utils_1.isNumericI7)(i7Data.sr) ? (0, parser_utils_1.convertToNumberI7)(i7Data.sr) : ((0, parser_utils_1.isNumericI7)(genType === null || genType === void 0 ? void 0 : genType.sr) ? (0, parser_utils_1.convertToNumberI7)(genType.sr) : undefined);
|
|
@@ -2122,8 +2146,8 @@ class ConverterIntegral7 {
|
|
|
2122
2146
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
2123
2147
|
for (const i7Data of result) {
|
|
2124
2148
|
const einspeisePrio = (0, parser_utils_1.isNumericI7)(i7Data.einspprio) ? (0, parser_utils_1.convertToNumberI7)(i7Data.einspprio) : 1;
|
|
2125
|
-
const flag_lfl = (0, parser_utils_1.convertToBooleanI7)(i7Data.flag_lfl);
|
|
2126
|
-
const flag_ks = (0, parser_utils_1.convertToBooleanI7)(i7Data.flag_ks);
|
|
2149
|
+
const flag_lfl = (0, parser_utils_1.isBooleanI7)(i7Data.flag_lfl) ? (0, parser_utils_1.convertToBooleanI7)(i7Data.flag_lfl) : false;
|
|
2150
|
+
const flag_ks = (0, parser_utils_1.isBooleanI7)(i7Data.flag_ks) ? (0, parser_utils_1.convertToBooleanI7)(i7Data.flag_ks) : false;
|
|
2127
2151
|
const usoll = (0, parser_utils_1.isNumericI7)(i7Data.usoll) ? (0, parser_utils_1.convertToNumberI7)(i7Data.usoll) : undefined;
|
|
2128
2152
|
const r_ext = (0, parser_utils_1.isNumericI7)(i7Data.r_ext) ? (0, parser_utils_1.convertToNumberI7)(i7Data.r_ext) : undefined;
|
|
2129
2153
|
const x_ext = (0, parser_utils_1.isNumericI7)(i7Data.x_ext) ? (0, parser_utils_1.convertToNumberI7)(i7Data.x_ext) : undefined;
|
|
@@ -2169,21 +2193,21 @@ class ConverterIntegral7 {
|
|
|
2169
2193
|
equivalentInjection.regulationTarget = usoll;
|
|
2170
2194
|
equivalentInjection.rExt = r_ext;
|
|
2171
2195
|
equivalentInjection.xExt = x_ext;
|
|
2172
|
-
equivalentInjection.r = r1;
|
|
2173
|
-
equivalentInjection.r0 = r0;
|
|
2174
|
-
equivalentInjection.r2 = r1;
|
|
2175
|
-
equivalentInjection.x = x1;
|
|
2176
|
-
equivalentInjection.x0 = x0;
|
|
2177
|
-
equivalentInjection.x2 = x1;
|
|
2196
|
+
equivalentInjection.r = (0, parser_utils_1.isNumericI7)(r1) ? r1 : 1e9;
|
|
2197
|
+
equivalentInjection.r0 = (0, parser_utils_1.isNumericI7)(r0) ? r0 : 1e9;
|
|
2198
|
+
equivalentInjection.r2 = (0, parser_utils_1.isNumericI7)(r1) ? r1 : 1e9;
|
|
2199
|
+
equivalentInjection.x = (0, parser_utils_1.isNumericI7)(x1) ? x1 : 1e9;
|
|
2200
|
+
equivalentInjection.x0 = (0, parser_utils_1.isNumericI7)(x0) ? x0 : 1e9;
|
|
2201
|
+
equivalentInjection.x2 = (0, parser_utils_1.isNumericI7)(x1) ? x1 : 1e9;
|
|
2178
2202
|
}
|
|
2179
2203
|
else if (flag_lfl || flag_ks) {
|
|
2180
2204
|
equivalentInjection.regulationCapability = false;
|
|
2181
|
-
equivalentInjection.r = (0, parser_utils_1.isNumericI7)(r1) ?
|
|
2182
|
-
equivalentInjection.r0 = (0, parser_utils_1.isNumericI7)(r0) ?
|
|
2183
|
-
equivalentInjection.r2 = (0, parser_utils_1.isNumericI7)(r1) ?
|
|
2184
|
-
equivalentInjection.x = (0, parser_utils_1.isNumericI7)(x1) ?
|
|
2185
|
-
equivalentInjection.x0 = (0, parser_utils_1.isNumericI7)(x0) ?
|
|
2186
|
-
equivalentInjection.x2 = (0, parser_utils_1.isNumericI7)(x1) ?
|
|
2205
|
+
equivalentInjection.r = (0, parser_utils_1.isNumericI7)(r1) ? r1 : 1e9;
|
|
2206
|
+
equivalentInjection.r0 = (0, parser_utils_1.isNumericI7)(r0) ? r0 : 1e9;
|
|
2207
|
+
equivalentInjection.r2 = (0, parser_utils_1.isNumericI7)(r1) ? r1 : 1e9;
|
|
2208
|
+
equivalentInjection.x = (0, parser_utils_1.isNumericI7)(x1) ? x1 : 1e9;
|
|
2209
|
+
equivalentInjection.x0 = (0, parser_utils_1.isNumericI7)(x0) ? x0 : 1e9;
|
|
2210
|
+
equivalentInjection.x2 = (0, parser_utils_1.isNumericI7)(x1) ? x1 : 1e9;
|
|
2187
2211
|
}
|
|
2188
2212
|
/** Export Extended Ward equivalent with no voltage regulation */
|
|
2189
2213
|
else if (((r_ext !== undefined && r_ext !== 0) || (x_ext !== undefined && x_ext !== 0))) {
|
|
@@ -2554,14 +2578,16 @@ class ConverterIntegral7 {
|
|
|
2554
2578
|
}
|
|
2555
2579
|
}
|
|
2556
2580
|
for (const i7Data of result) {
|
|
2557
|
-
const shunt = new
|
|
2581
|
+
const shunt = new AMPRIONLinearShuntCompensator_1.AMPRIONLinearShuntCompensator((0, parser_utils_1.getUUID)(i7Data.guid, this.objectMappingConfig.standardiseUuid), (0, util_create_1.createNotation)([(0, utils_2.getName)(i7Data), '_LSC']), i7Data.kurzname);
|
|
2558
2582
|
// Get electrical properties
|
|
2559
2583
|
const inBetrieb = (0, parser_utils_1.isBooleanI7)(i7Data.betrieb) ? (0, parser_utils_1.convertToBooleanI7)(i7Data.betrieb) : undefined;
|
|
2584
|
+
const isMscdn = (0, parser_utils_1.isBooleanI7)(i7Data.custom_IsMSCDN) ? (0, parser_utils_1.convertToBooleanI7)(i7Data.custom_IsMSCDN) : undefined;
|
|
2560
2585
|
const qr = (0, parser_utils_1.isNumericI7)(i7Data.qr) ? i7Data.qr : undefined;
|
|
2561
2586
|
const pr = (0, parser_utils_1.isNumericI7)(i7Data.pr) ? i7Data.pr : undefined;
|
|
2562
2587
|
shunt.nomU = (0, parser_utils_1.isNumericI7)(i7Data.ur) ? i7Data.ur : undefined;
|
|
2563
2588
|
// Set extension properties (AMPI7)
|
|
2564
2589
|
shunt.normallyInService = inBetrieb;
|
|
2590
|
+
shunt.isMscdn = isMscdn;
|
|
2565
2591
|
// Set electrical properties (EQ)
|
|
2566
2592
|
if ((0, parser_utils_1.isNumericI7)(i7Data.aktstufe) && (0, parser_utils_1.isNumericI7)(i7Data.maxstufe)) {
|
|
2567
2593
|
shunt.sections = (0, parser_utils_1.convertToNumberI7)(i7Data.aktstufe);
|
|
@@ -2846,11 +2872,16 @@ class ConverterIntegral7 {
|
|
|
2846
2872
|
const minP = (0, parser_utils_1.isNumericI7)(i7Data.p_min) ? (0, parser_utils_1.convertToNumberI7)(i7Data.p_min) : -1 * vsConverter.baseS;
|
|
2847
2873
|
const maxQ = (0, parser_utils_1.isNumericI7)(i7Data.q_max) ? (0, parser_utils_1.convertToNumberI7)(i7Data.q_max) : undefined;
|
|
2848
2874
|
const minQ = (0, parser_utils_1.isNumericI7)(i7Data.q_min) ? (0, parser_utils_1.convertToNumberI7)(i7Data.q_min) : undefined;
|
|
2875
|
+
/** qDroop in pu */
|
|
2876
|
+
const qdroop = (0, parser_utils_1.isNumericI7)(i7Data.kv) ? (0, parser_utils_1.convertToNumberI7)(i7Data.kv) : 0;
|
|
2877
|
+
if (qdroop !== 0 && maxQ - minQ > 0) {
|
|
2878
|
+
dcConverterUnit.kv = qdroop / Math.abs(maxQ - minQ);
|
|
2879
|
+
}
|
|
2849
2880
|
/** SSH export values */
|
|
2850
2881
|
vsConverter.p = (0, parser_utils_1.isNumericI7)(i7Data.pges) ? i7Data.pges * -1 : 0;
|
|
2851
2882
|
vsConverter.q = (0, parser_utils_1.isNumericI7)(i7Data.qges) ? i7Data.qges * -1 : 0;
|
|
2852
2883
|
this.setTopologyEnergySourceConsumerObject(cimModel, vsConverter, i7Data, targetVoltages);
|
|
2853
|
-
vsConverter.droop =
|
|
2884
|
+
vsConverter.droop = qdroop; //pu
|
|
2854
2885
|
vsConverter.droopCompensation = 0; //Resistance
|
|
2855
2886
|
vsConverter.qShare = 100; //PerCent
|
|
2856
2887
|
/** Status */
|
|
@@ -2917,12 +2948,13 @@ class ConverterIntegral7 {
|
|
|
2917
2948
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
2918
2949
|
for (const i7Data of result) {
|
|
2919
2950
|
try {
|
|
2920
|
-
const
|
|
2951
|
+
const kr = i7Data.kr;
|
|
2921
2952
|
const inBetrieb = (0, parser_utils_1.isBooleanI7)(i7Data.betrieb) ? (0, parser_utils_1.convertToBooleanI7)(i7Data.betrieb) : false;
|
|
2922
2953
|
const rdfid = (0, parser_utils_1.getUUID)(i7Data.guid, this.objectMappingConfig.standardiseUuid);
|
|
2923
|
-
const energySource = new
|
|
2954
|
+
const energySource = new INTEGRALEnergySource_1.INTEGRALEnergySource(rdfid, i7Data.bezeichner, i7Data.kurzname);
|
|
2924
2955
|
energySource.nominalVoltage = (_c = (_b = (_a = energySource.equipmentContainer) === null || _a === void 0 ? void 0 : _a.baseVoltage) === null || _b === void 0 ? void 0 : _b.nominalVoltage) === null || _c === void 0 ? void 0 : _c.value;
|
|
2925
2956
|
energySource.normallyInService = inBetrieb;
|
|
2957
|
+
energySource.kr = kr;
|
|
2926
2958
|
const powerData = (0, utils_2.getActiveReactivePower)(i7Data);
|
|
2927
2959
|
energySource.activePower = powerData[0];
|
|
2928
2960
|
energySource.reactivePower = powerData[1];
|
|
@@ -3007,9 +3039,6 @@ class ConverterIntegral7 {
|
|
|
3007
3039
|
externalNetworkInjection.multiplierFactorUUID = mf.getUUID();
|
|
3008
3040
|
}
|
|
3009
3041
|
/** Convert EQ-profile dataset. */
|
|
3010
|
-
if (i7Data.guid === '_ab64e281-72d0-45fb-8cb3-da4ae99a4f8c') {
|
|
3011
|
-
const stop = true;
|
|
3012
|
-
}
|
|
3013
3042
|
const maxP = (0, parser_utils_1.isNumericI7)(i7Data.p_max) ? (0, parser_utils_1.convertToNumberI7)(i7Data.p_max) : undefined;
|
|
3014
3043
|
externalNetworkInjection.maxP = maxP;
|
|
3015
3044
|
const governorscd = (0, parser_utils_1.isNumericI7)(i7Data.kr) ? (0, parser_utils_1.convertToNumberI7)(i7Data.kr) : undefined;
|
|
@@ -3042,9 +3071,9 @@ class ConverterIntegral7 {
|
|
|
3042
3071
|
const skMin = (0, parser_utils_1.isNumericI7)(i7Data.sk_min) ? (0, parser_utils_1.convertToNumberI7)(i7Data.sk_min) : skAkt;
|
|
3043
3072
|
const skMax = (0, parser_utils_1.isNumericI7)(i7Data.sk_max) ? (0, parser_utils_1.convertToNumberI7)(i7Data.sk_max) : skAkt;
|
|
3044
3073
|
const nomV = externalNetworkInjection.getTerminals().values().next().value.getConnectivityNode().getBaseVoltageAsNumber();
|
|
3045
|
-
const minIkSecond = (0, parser_utils_1.isNumericI7)(
|
|
3074
|
+
const minIkSecond = (0, parser_utils_1.isNumericI7)(skMin) ? (0, utils_2.calculateShortCircuitCurrent)(skMin, nomV) : undefined;
|
|
3046
3075
|
externalNetworkInjection.minInitialSymShCCurrent = minIkSecond;
|
|
3047
|
-
const maxIkSecond = (0, parser_utils_1.isNumericI7)(
|
|
3076
|
+
const maxIkSecond = (0, parser_utils_1.isNumericI7)(skMax) ? (0, utils_2.calculateShortCircuitCurrent)(skMax, nomV) : undefined;
|
|
3048
3077
|
externalNetworkInjection.maxInitialSymShCCurrent = maxIkSecond;
|
|
3049
3078
|
const inBetrieb = (0, parser_utils_1.isBooleanI7)(i7Data.betrieb) ? (0, parser_utils_1.convertToBooleanI7)(i7Data.betrieb) : false;
|
|
3050
3079
|
/** Convert SSH-profile dataset. */
|
|
@@ -3194,7 +3223,7 @@ class ConverterIntegral7 {
|
|
|
3194
3223
|
}
|
|
3195
3224
|
if (cterminal) {
|
|
3196
3225
|
tCn = cterminal.getConnectivityNode();
|
|
3197
|
-
if (tCn) {
|
|
3226
|
+
if (tCn && usoll === undefined) {
|
|
3198
3227
|
tVMax = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['umax'];
|
|
3199
3228
|
tVMin = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['umin'];
|
|
3200
3229
|
usoll = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['usoll'];
|
|
@@ -3224,7 +3253,7 @@ class ConverterIntegral7 {
|
|
|
3224
3253
|
}
|
|
3225
3254
|
if (cterminal) {
|
|
3226
3255
|
tCn = cterminal.getConnectivityNode();
|
|
3227
|
-
if (tCn) {
|
|
3256
|
+
if (tCn && usoll === undefined) {
|
|
3228
3257
|
tVMax = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['umax'];
|
|
3229
3258
|
tVMin = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['umin'];
|
|
3230
3259
|
usoll = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['usoll'];
|
|
@@ -3280,7 +3309,7 @@ class ConverterIntegral7 {
|
|
|
3280
3309
|
let uref = (0, parser_utils_1.isNumericI7)(i7DataSVC.uref) ? (0, parser_utils_1.convertToNumberI7)(i7DataSVC.uref) : undefined;
|
|
3281
3310
|
if (cterminal) {
|
|
3282
3311
|
tCn = cterminal.getConnectivityNode();
|
|
3283
|
-
if (tCn) {
|
|
3312
|
+
if (tCn && usoll === undefined) {
|
|
3284
3313
|
tVMax = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['umax'];
|
|
3285
3314
|
tVMin = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['umin'];
|
|
3286
3315
|
usoll = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['usoll'];
|
|
@@ -3389,7 +3418,7 @@ class ConverterIntegral7 {
|
|
|
3389
3418
|
}
|
|
3390
3419
|
if (cterminal) {
|
|
3391
3420
|
tCn = cterminal.getConnectivityNode();
|
|
3392
|
-
if (tCn) {
|
|
3421
|
+
if (tCn && usoll === undefined) {
|
|
3393
3422
|
tVMax = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['umax'];
|
|
3394
3423
|
tVMin = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['umin'];
|
|
3395
3424
|
usoll = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['usoll'];
|
|
@@ -3419,7 +3448,7 @@ class ConverterIntegral7 {
|
|
|
3419
3448
|
}
|
|
3420
3449
|
if (cterminal) {
|
|
3421
3450
|
tCn = cterminal.getConnectivityNode();
|
|
3422
|
-
if (tCn) {
|
|
3451
|
+
if (tCn && usoll === undefined) {
|
|
3423
3452
|
tVMax = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['umax'];
|
|
3424
3453
|
tVMin = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['umin'];
|
|
3425
3454
|
usoll = targetVoltages.get(this.UUID2Integral7ID.get(tCn.getUUID()).find(elem => elem))['usoll'];
|
|
@@ -3481,6 +3510,10 @@ class ConverterIntegral7 {
|
|
|
3481
3510
|
i7Schluessel = ((_v = (_u = equipmentContainer === null || equipmentContainer === void 0 ? void 0 : equipmentContainer.getSubstation()) === null || _u === void 0 ? void 0 : _u.key) !== null && _v !== void 0 ? _v : '') +
|
|
3482
3511
|
integral_prefix_1.HGUEKOPFKLASSISCH_PRAEFIX + i7Data.bezeichner;
|
|
3483
3512
|
}
|
|
3513
|
+
else if (condEquip instanceof LinearShuntCompensator_1.LinearShuntCompensator) {
|
|
3514
|
+
// TODO
|
|
3515
|
+
i7Schluessel = '';
|
|
3516
|
+
}
|
|
3484
3517
|
condEquip.key = i7Schluessel;
|
|
3485
3518
|
if (hasGeneratingUnit) {
|
|
3486
3519
|
const substation = this.determineEquipmentContainer('Substation', cimModel, equipmentContainer);
|
|
@@ -3852,16 +3885,21 @@ class ConverterIntegral7 {
|
|
|
3852
3885
|
const result = yield this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.STERNPUNKT_IMPEDANZ, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.STERNPUNKT_IMPEDANZ), stpSchienenID));
|
|
3853
3886
|
for (const i7Data of result) {
|
|
3854
3887
|
const kdType = this.kdrosseltypen.get(i7Data.nametyp);
|
|
3855
|
-
const iakt = (0, parser_utils_1.isNumericI7)(i7Data.iakt) ? i7Data.iakt : ((0, parser_utils_1.isNumericI7)(kdType === null || kdType === void 0 ? void 0 : kdType.iakt) ? kdType === null || kdType === void 0 ? void 0 : kdType.iakt : undefined);
|
|
3856
|
-
const xne = (0, parser_utils_1.isNumericI7)(i7Data.xne) ? i7Data.xne : ((0, parser_utils_1.isNumericI7)(kdType === null || kdType === void 0 ? void 0 : kdType.xne) ? kdType === null || kdType === void 0 ? void 0 : kdType.xne : undefined);
|
|
3857
|
-
const
|
|
3858
|
-
const
|
|
3859
|
-
const
|
|
3888
|
+
const iakt = (0, parser_utils_1.isNumericI7)(i7Data.iakt) ? (0, parser_utils_1.convertToNumberI7)(i7Data.iakt) : ((0, parser_utils_1.isNumericI7)(kdType === null || kdType === void 0 ? void 0 : kdType.iakt) ? (0, parser_utils_1.convertToNumberI7)(kdType === null || kdType === void 0 ? void 0 : kdType.iakt) : undefined);
|
|
3889
|
+
const xne = (0, parser_utils_1.isNumericI7)(i7Data.xne) ? (0, parser_utils_1.convertToNumberI7)(i7Data.xne) : ((0, parser_utils_1.isNumericI7)(kdType === null || kdType === void 0 ? void 0 : kdType.xne) ? (0, parser_utils_1.convertToNumberI7)(kdType === null || kdType === void 0 ? void 0 : kdType.xne) : undefined);
|
|
3890
|
+
const rne = (0, parser_utils_1.isNumericI7)(i7Data.rne) ? (0, parser_utils_1.convertToNumberI7)(i7Data.rne) : ((0, parser_utils_1.isNumericI7)(kdType === null || kdType === void 0 ? void 0 : kdType.rne) ? (0, parser_utils_1.convertToNumberI7)(kdType === null || kdType === void 0 ? void 0 : kdType.rne) : undefined);
|
|
3891
|
+
const ur = (0, parser_utils_1.isNumericI7)(i7Data.ur) ? (0, parser_utils_1.convertToNumberI7)(i7Data.ur) : ((0, parser_utils_1.isNumericI7)(kdType === null || kdType === void 0 ? void 0 : kdType.ur) ? (0, parser_utils_1.convertToNumberI7)(kdType === null || kdType === void 0 ? void 0 : kdType.ur) : undefined);
|
|
3892
|
+
const imax = (0, parser_utils_1.isNumericI7)(i7Data.imax) ? (0, parser_utils_1.convertToNumberI7)(i7Data.imax) : ((0, parser_utils_1.isNumericI7)(kdType === null || kdType === void 0 ? void 0 : kdType.imax) ? (0, parser_utils_1.convertToNumberI7)(kdType === null || kdType === void 0 ? void 0 : kdType.imax) : undefined);
|
|
3893
|
+
const imin = (0, parser_utils_1.isNumericI7)(i7Data.imin) ? (0, parser_utils_1.convertToNumberI7)(i7Data.imin) : ((0, parser_utils_1.isNumericI7)(kdType === null || kdType === void 0 ? void 0 : kdType.imin) ? (0, parser_utils_1.convertToNumberI7)(kdType === null || kdType === void 0 ? void 0 : kdType.imin) : undefined);
|
|
3894
|
+
//const keyGroundDisconnector = ClassNames.GroundDisconnector + i7Data.aknoten + i7Data.eknoten;
|
|
3895
|
+
//const uuidGroundDisconnector = CommonUtils.generateUUIDv5(ClassNames.GroundDisconnector, this.configUuid, keyGroundDisconnector);
|
|
3860
3896
|
const connectivityNode = integral7.sternPunktImpModel.connectivityNodes.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
3861
3897
|
let conductingEquip = undefined;
|
|
3862
3898
|
if (iakt !== undefined && xne !== undefined || xne !== undefined && ur !== undefined || iakt !== undefined && ur !== undefined) {
|
|
3863
3899
|
/** PetersenCoil */
|
|
3864
3900
|
const petersenCoil = new PetersenCoil_1.PetersenCoil((0, parser_utils_1.getUUID)(i7Data.guid, this.objectMappingConfig.standardiseUuid), i7Data.bezeichner, i7Data.kurzname);
|
|
3901
|
+
//const keyGroundDisconnector = ClassNames.Petersen + i7Data.aknoten + i7Data.eknoten;
|
|
3902
|
+
//const uuidGroundDisconnector = CommonUtils.generateUUIDv5(ClassNames.GroundDisconnector, this.configUuid, /*keyGroundDisconnector*/);
|
|
3865
3903
|
if (xne !== undefined && ur !== undefined) {
|
|
3866
3904
|
petersenCoil.xGroundNominal = xne;
|
|
3867
3905
|
petersenCoil.nominalU = ur;
|
|
@@ -3880,6 +3918,7 @@ class ConverterIntegral7 {
|
|
|
3880
3918
|
petersenCoil.xGroundMax = (0, parser_utils_1.isNumericI7)(imin) && (0, parser_utils_1.isNumericI7)(petersenCoil.nominalU) ? petersenCoil.nominalU * Math.pow(10, 3) / imin : undefined;
|
|
3881
3919
|
petersenCoil.xGroundMin = (0, parser_utils_1.isNumericI7)(imax) && (0, parser_utils_1.isNumericI7)(petersenCoil.nominalU) ? petersenCoil.nominalU * Math.pow(10, 3) / imax : undefined;
|
|
3882
3920
|
}
|
|
3921
|
+
petersenCoil.r = rne;
|
|
3883
3922
|
petersenCoil.mode = PetersenCoilModeKind_1.PetersenCoilModeKind.automaticPositioning;
|
|
3884
3923
|
this.addIdMapping(i7Data.id, petersenCoil.mrid, integral_sql_1.Integral7TableNames.STERNPUNKT_IMPEDANZ);
|
|
3885
3924
|
conductingEquip = petersenCoil;
|
|
@@ -3887,7 +3926,7 @@ class ConverterIntegral7 {
|
|
|
3887
3926
|
else {
|
|
3888
3927
|
/** GroundingImpedance */
|
|
3889
3928
|
const groundingImpedance = new GroundingImpedance_1.GroundingImpedance((0, parser_utils_1.getUUID)(i7Data.guid, this.objectMappingConfig.standardiseUuid), (0, util_create_1.createNotation)([(0, utils_2.getName)(i7Data), '_GI']), i7Data.kurzname);
|
|
3890
|
-
groundingImpedance.r =
|
|
3929
|
+
groundingImpedance.r = rne;
|
|
3891
3930
|
groundingImpedance.x = xne;
|
|
3892
3931
|
integral7.sternPunktImpModel.groundingImpedances.set(groundingImpedance.mrid, groundingImpedance);
|
|
3893
3932
|
//integral7.sternPunktImpModel.junctionUUIDstpImp.set(junctionUUID, groundingImpedance);
|
|
@@ -4048,6 +4087,7 @@ class ConverterIntegral7 {
|
|
|
4048
4087
|
const leitungIDs = result.map(elem => elem.id);
|
|
4049
4088
|
const cableAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.KABEL);
|
|
4050
4089
|
const overheadAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.FREILEITUNG);
|
|
4090
|
+
let mf = undefined;
|
|
4051
4091
|
let type = integral_sql_1.I7Objects.STROMKREISABSCHNITT;
|
|
4052
4092
|
let tableName = integral_sql_1.Integral7TableNames.FREILEITUNG;
|
|
4053
4093
|
if (cableAvailable && overheadAvailable) {
|
|
@@ -4095,9 +4135,12 @@ class ConverterIntegral7 {
|
|
|
4095
4135
|
/** Wenn kein Stromkreisobjekt vorhanden ist, dann erstelle ein neues Objekt. */
|
|
4096
4136
|
const uuidString = common_utils_1.CommonUtils.generateUUIDv5(cim_class_names_1.ClassNames.Line, this.configUuid, i7Schluessel);
|
|
4097
4137
|
let lineName = createLineName(i7Data, uuidString, lineNames);
|
|
4098
|
-
|
|
4138
|
+
// Line (CGMES/CIM) -> ElmBranch
|
|
4139
|
+
const line = new AMPRIONLine_1.AMPRIONLine(uuidString, lineName, i7Data.kurzname); //TODO 'Kurzname' von INTEGRAL übernehmen, 'Kurzname' in das AMPRIONLine.number Attribut schreiben, Stromkreisabschnitt als zusätzliches Attribut für AMPRIONLine definieren und befüllen
|
|
4099
4140
|
line.ukz = i7Data.ukz;
|
|
4100
4141
|
line.key = i7Schluessel;
|
|
4142
|
+
line.number = i7Data.kurzname !== undefined && (0, parser_utils_1.isNumericI7)(i7Data.kurzname) ? i7Data.kurzname : undefined;
|
|
4143
|
+
line.stkabname = i7Data.stkabname;
|
|
4101
4144
|
let acLineSegments = [];
|
|
4102
4145
|
/** ACLineSegments erstellen */
|
|
4103
4146
|
for (const stk of stromkreisabschnitte) {
|
|
@@ -4108,7 +4151,11 @@ class ConverterIntegral7 {
|
|
|
4108
4151
|
'-' +
|
|
4109
4152
|
(0, utils_2.ueberpruefeZeichenkette)(stk.bezeichner);
|
|
4110
4153
|
const uuid = (0, parser_utils_1.getUUID)(stk.custom_guid_0120 + stk.custom_guid_2137, this.objectMappingConfig.standardiseUuid);
|
|
4111
|
-
|
|
4154
|
+
if (uuid === '7c3971a3-f320-4883-b26e-d4f4c2cfbc6d' || uuid === '4b803684-24dd-4294-8203-922b807a4dc0' || uuid === 'ed09bb3f60e5445fa98a0b7d68987636') {
|
|
4155
|
+
let stop = true;
|
|
4156
|
+
}
|
|
4157
|
+
// acLineSegment -> ElmLne
|
|
4158
|
+
const acLineSegment = new INTEGRALACLineSegment_1.INTEGRALACLineSegment(uuid, line.name + '_' + stk.bezeichner, i7Data.stkabname, i7Data.kommentar); //'name', 'shortname' für alle INTEGRALACLineSegment übernehmen
|
|
4112
4159
|
const key = acLineSegment.getUUID();
|
|
4113
4160
|
const uuidWireObject = common_utils_1.CommonUtils.generateUUIDv5(cim_class_names_1.ClassNames.EVWireObject, this.configUuid, key);
|
|
4114
4161
|
acLineSegment.key = i7Schluessel;
|
|
@@ -4121,10 +4168,13 @@ class ConverterIntegral7 {
|
|
|
4121
4168
|
if (stk.baujahr) {
|
|
4122
4169
|
util_cim_model_1.UtilCimModel.setLifecycleDate(wire, stk.baujahr);
|
|
4123
4170
|
}
|
|
4124
|
-
|
|
4171
|
+
mf = this.cimModelDefault.multiplierFactors.get(this.integralID2UUID.get(stk.multfaktor));
|
|
4125
4172
|
if (mf) {
|
|
4173
|
+
mf.ir = mf.p;
|
|
4174
|
+
//mf.p = undefined;
|
|
4126
4175
|
cimModel.addMultiplierFactor(mf);
|
|
4127
4176
|
acLineSegment.multiplierFactorUUID = mf.getUUID();
|
|
4177
|
+
acLineSegment.ltgmonitoring = (0, parser_utils_1.isBooleanI7)(stk.ltgmonitoring) ? (0, parser_utils_1.convertToBooleanI7)(stk.ltgmonitoring) : false;
|
|
4128
4178
|
}
|
|
4129
4179
|
acLineSegment.equipmentContainer = line;
|
|
4130
4180
|
line.addEquipment(acLineSegment);
|
|
@@ -4711,10 +4761,12 @@ class ConverterIntegral7 {
|
|
|
4711
4761
|
}
|
|
4712
4762
|
convertMultiplikationsfaktoren() {
|
|
4713
4763
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
4714
|
-
// Trafo2WTypen
|
|
4715
4764
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.MULTIPLIKATIONSFAKTOR)) {
|
|
4716
4765
|
const result = yield this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.MULTIPLIKATIONSFAKTOR, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.MULTIPLIKATIONSFAKTOR), []));
|
|
4717
4766
|
for (const i7Data of result) {
|
|
4767
|
+
if ((0, utils_2.getName)(i7Data) === 'FLM_Zone3_Regional') {
|
|
4768
|
+
const stop = true;
|
|
4769
|
+
}
|
|
4718
4770
|
const multFaktor = new INTEGRALMultiplierFactor_1.INTEGRALMultiplierFactor((0, parser_utils_1.getUUID)(undefined), (0, utils_2.getName)(i7Data), i7Data.kurzname, i7Data.kommentar);
|
|
4719
4771
|
multFaktor.p = (0, parser_utils_1.isNumericI7)(i7Data.p) ? (0, parser_utils_1.convertToNumberI7)(i7Data.p) : undefined;
|
|
4720
4772
|
multFaktor.qInd = (0, parser_utils_1.isNumericI7)(i7Data.q_ind) ? (0, parser_utils_1.convertToNumberI7)(i7Data.q_ind) : undefined;
|
|
@@ -5562,7 +5614,7 @@ class ConverterIntegral7 {
|
|
|
5562
5614
|
* @param equipmentKey Generierung einer persistenter UUID v5. Für PowerTransformer wird UUID des PowerTransformerEnds verwendet. Andernfalls die UUID des ConductingEquipments
|
|
5563
5615
|
* */
|
|
5564
5616
|
setConductingEquipmentOperationalLimit(cimModel, name, terminal, equipmentKey, limit, limitType, igrenz) {
|
|
5565
|
-
if (!(limit !== undefined && limit > 0)
|
|
5617
|
+
if (!(limit !== undefined && limit > 0) && !(igrenz !== undefined && igrenz > 0))
|
|
5566
5618
|
return; //if 'limit' and 'igrenz' is not given leave
|
|
5567
5619
|
/** OperationalLimitSet erstellen */
|
|
5568
5620
|
const operationalLimitSetKey = terminal.getUUID() + equipmentKey;
|
|
@@ -5969,11 +6021,12 @@ class ConverterIntegral7 {
|
|
|
5969
6021
|
for (const frame of boundaryFrames) {
|
|
5970
6022
|
this.addDefaultObjectsLoadModel(frame.cimModel, defaultValuesConfig);
|
|
5971
6023
|
this.addDefaultObjectsGeo(frame.cimModel, defaultValuesConfig);
|
|
5972
|
-
frame.initProfileXmlSerializers([rdf_xml_1.RDF_XML.PROFILE_TP_BD, rdf_xml_1.RDF_XML.PROFILE_EQ_BD, rdf_xml_1.RDF_XML.PROFILE_GL, rdf_xml_1.RDF_XML.PROFILE_DL], tempDirPath, this.configUuid);
|
|
5973
|
-
// GL
|
|
6024
|
+
frame.initProfileXmlSerializers([rdf_xml_1.RDF_XML.PROFILE_TP_BD, rdf_xml_1.RDF_XML.PROFILE_EQ_BD, rdf_xml_1.RDF_XML.PROFILE_GL, rdf_xml_1.RDF_XML.PROFILE_DL, rdf_xml_1.RDF_XML.PROFILE_AMPI7], tempDirPath, this.configUuid);
|
|
6025
|
+
// GL als DependentModel
|
|
5974
6026
|
frame.addDependentModel(rdf_xml_1.RDF_XML.PROFILE_GL, frame.getModelUUID(rdf_xml_1.RDF_XML.PROFILE_EQ_BD));
|
|
5975
6027
|
frame.addDependentModel(rdf_xml_1.RDF_XML.PROFILE_DL, frame.getModelUUID(rdf_xml_1.RDF_XML.PROFILE_EQ_BD));
|
|
5976
6028
|
frame.addDependentModel(rdf_xml_1.RDF_XML.PROFILE_TP_BD, frame.getModelUUID(rdf_xml_1.RDF_XML.PROFILE_EQ_BD));
|
|
6029
|
+
frame.addDependentModel(rdf_xml_1.RDF_XML.PROFILE_AMPI7, frame.getModelUUID(rdf_xml_1.RDF_XML.PROFILE_EQ_BD));
|
|
5977
6030
|
// EQ als DependentModel muss zur Laufzeit gesetzt werden
|
|
5978
6031
|
}
|
|
5979
6032
|
this.exportFramesBoundary = this.associateGeoRegionsToExportFrames(boundaryFrames);
|