Initial commit - ip 10.0.0.74
This commit is contained in:
commit
e189e5334b
24 changed files with 3518 additions and 0 deletions
207
flow/helper/energo_streambuilder.js
Normal file
207
flow/helper/energo_streambuilder.js
Normal file
|
|
@ -0,0 +1,207 @@
|
|||
// const structure = {
|
||||
// "192.168.1.11": {
|
||||
// 1: "i-35",
|
||||
// "6A": "i-60A",
|
||||
// "6B": "i-60B",
|
||||
// 7: "i-60B"
|
||||
// },
|
||||
// "192.168.1.12": {
|
||||
// 18: "i-35"
|
||||
// },
|
||||
// };
|
||||
|
||||
/**
|
||||
* @param {object} structure - main keys are IPs of installed modules.
|
||||
* @param {object} structure.ip - configuration of installed modules
|
||||
*/
|
||||
const makeStreamsTable = (structure) => {
|
||||
|
||||
const moduleConfigStructure = {
|
||||
"i-35": {
|
||||
18488: "phase_1_power",
|
||||
18490: "phase_2_power",
|
||||
18492: "phase_3_power",
|
||||
19843: "total_energy",
|
||||
18444: "phase_1_voltage",
|
||||
18446: "phase_2_voltage",
|
||||
18448: "phase_3_voltage",
|
||||
18458: "phase_1_current",
|
||||
18460: "phase_2_current",
|
||||
18462: "phase_3_current",
|
||||
18464: "neutral_wire_current",
|
||||
18494: "phase_1_react_power",
|
||||
18496: "phase_2_react_power",
|
||||
18498: "phase_3_react_power",
|
||||
18512: "phase_1_apparent_power",
|
||||
18514: "phase_2_apparent_power",
|
||||
18516: "phase_3_apparent_power",
|
||||
18518: "phase_1_pf",
|
||||
18519: "phase_2_pf",
|
||||
18520: "phase_3_pf",
|
||||
18476: "total_active_power",
|
||||
18478: "total_reactive_power",
|
||||
18484: "total_apparent_power",
|
||||
18486: "total_power_factor",
|
||||
},
|
||||
"i-30": {
|
||||
19841: "total_energy",
|
||||
18444: "phase_1_voltage",
|
||||
18446: "phase_2_voltage",
|
||||
18448: "phase_3_voltage",
|
||||
18458: "phase_1_current",
|
||||
18460: "phase_2_current",
|
||||
18462: "phase_3_current",
|
||||
18464: "neutral_wire_current",
|
||||
18476: "total_active_power",
|
||||
18478: "total_reactive_power",
|
||||
18484: "total_apparent_power",
|
||||
18486: "total_power_factor",
|
||||
},
|
||||
"i-60A": {
|
||||
19841: "total_energy",
|
||||
18444: "phase_1_voltage",
|
||||
18446: "phase_2_voltage",
|
||||
18448: "phase_3_voltage",
|
||||
18458: "phase_1_current",
|
||||
18460: "phase_2_current",
|
||||
18462: "phase_3_current",
|
||||
18464: "neutral_wire_current",
|
||||
18476: "total_active_power",
|
||||
18478: "total_reactive_power",
|
||||
18484: "total_apparent_power",
|
||||
18486: "total_power_factor",
|
||||
},
|
||||
"i-60B": {
|
||||
21889: "total_energy",
|
||||
20492: "phase_1_voltage",
|
||||
20494: "phase_2_voltage",
|
||||
20496: "phase_3_voltage",
|
||||
20506: "phase_1_current",
|
||||
20508: "phase_2_current",
|
||||
20510: "phase_3_current",
|
||||
20512: "neutral_wire_current",
|
||||
20524: "total_active_power",
|
||||
20526: "total_reactive_power",
|
||||
20532: "total_apparent_power",
|
||||
20534: "total_power_factor",
|
||||
},
|
||||
};
|
||||
|
||||
const bytes = {
|
||||
"phase_1_power": 2,
|
||||
"phase_2_power": 2,
|
||||
"phase_3_power": 2,
|
||||
"total_energy": 2,
|
||||
"phase_1_voltage": 2,
|
||||
"phase_2_voltage": 2,
|
||||
"phase_3_voltage": 2,
|
||||
"phase_1_current": 2,
|
||||
"phase_2_current": 2,
|
||||
"phase_3_current": 2,
|
||||
"neutral_wire_current": 2,
|
||||
"phase_1_react_power": 2,
|
||||
"phase_2_react_power": 2,
|
||||
"phase_3_react_power": 2,
|
||||
"phase_1_apparent_power": 2,
|
||||
"phase_2_apparent_power": 2,
|
||||
"phase_3_apparent_power": 2,
|
||||
"phase_1_pf": 1,
|
||||
"phase_2_pf": 1,
|
||||
"phase_3_pf": 1,
|
||||
"total_active_power": 2,
|
||||
"total_reactive_power": 2,
|
||||
"total_apparent_power": 2,
|
||||
"total_power_factor": 1
|
||||
}
|
||||
|
||||
const multiplier = {
|
||||
"phase_1_power": 1,
|
||||
"phase_2_power": 1,
|
||||
"phase_3_power": 1,
|
||||
"total_energy": 1,
|
||||
"phase_1_voltage": 100,
|
||||
"phase_2_voltage": 100,
|
||||
"phase_3_voltage": 100,
|
||||
"phase_1_current": 1000,
|
||||
"phase_2_current": 1000,
|
||||
"phase_3_current": 1000,
|
||||
"neutral_wire_current": 1000,
|
||||
"phase_1_react_power": 1,
|
||||
"phase_2_react_power": 1,
|
||||
"phase_3_react_power": 1,
|
||||
"phase_1_apparent_power": 1,
|
||||
"phase_2_apparent_power": 1,
|
||||
"phase_3_apparent_power": 1,
|
||||
"phase_1_pf": 1000,
|
||||
"phase_2_pf": 1000,
|
||||
"phase_3_pf": 1000,
|
||||
"total_active_power": 1,
|
||||
"total_reactive_power": 1,
|
||||
"total_apparent_power": 1,
|
||||
"total_power_factor": 1000
|
||||
}
|
||||
|
||||
let result = [];
|
||||
const conversionTable = {};
|
||||
|
||||
Object.keys(structure).map( ip => {
|
||||
|
||||
Object.keys(structure[ip]).map( item => {
|
||||
|
||||
const modul = structure[ip][item];
|
||||
// console.log(modul) //i-35, i-60A ...
|
||||
|
||||
let section = "";
|
||||
if(modul == "i-60A")
|
||||
{
|
||||
section = "A";
|
||||
}
|
||||
else if(modul == "i-60B")
|
||||
{
|
||||
section = "B";
|
||||
}
|
||||
|
||||
const allRegisters = Object.keys(moduleConfigStructure[modul]);
|
||||
allRegisters.map( i => {
|
||||
|
||||
const tb_value = moduleConfigStructure[modul][i];
|
||||
const b = bytes[tb_value];
|
||||
const m = multiplier[tb_value];
|
||||
|
||||
if(isNaN(item)) item = item.slice(0,-1);
|
||||
|
||||
const stream = {
|
||||
"unitId": parseInt(item),
|
||||
"section": section,
|
||||
"name": parseInt(i),
|
||||
"tb_value": tb_value,
|
||||
"bytes": b,
|
||||
"multiplier": m,
|
||||
}
|
||||
|
||||
if(tb_value == "total_energy")
|
||||
{
|
||||
stream.month = getCurrentMonth();
|
||||
stream.previousEnergy = null;
|
||||
}
|
||||
|
||||
result.push(stream);
|
||||
|
||||
})
|
||||
})
|
||||
|
||||
conversionTable[ip] = { streams: result };
|
||||
// console.log(conversionTable[ip])
|
||||
result = [];
|
||||
|
||||
})
|
||||
|
||||
return conversionTable;
|
||||
};
|
||||
|
||||
const getCurrentMonth = () => {
|
||||
const date = new Date();
|
||||
return date.getMonth();
|
||||
};
|
||||
|
||||
exports.makeStreamsTable = makeStreamsTable;
|
||||
Loading…
Add table
Add a link
Reference in a new issue