node-red-contrib-s2 0.2.3 → 0.3.0
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/README.md +5 -7
- package/dist/nodes/s2-ombc/index.d.ts +14 -14
- package/dist/nodes/s2-ombc/index.html +26 -12
- package/dist/nodes/s2-ombc/index.js +97 -23
- package/dist/nodes/s2-ombc/index.js.map +1 -1
- package/dist/nodes/s2-pebc/index.d.ts +5 -6
- package/dist/nodes/s2-pebc/index.html +2 -2
- package/dist/nodes/s2-pebc/index.js +13 -4
- package/dist/nodes/s2-pebc/index.js.map +1 -1
- package/dist/nodes/s2-rm/index.d.ts +2 -7
- package/dist/nodes/s2-rm/index.html +6 -16
- package/dist/nodes/s2-rm/index.js +9 -32
- package/dist/nodes/s2-rm/index.js.map +1 -1
- package/dist/nodes/s2-rm-config/index.html +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@ S2 is a European standard for demand-side energy flexibility. It defines how a C
|
|
|
33
33
|
- Configurable RM roles (Consumer, Producer, Storage)
|
|
34
34
|
- Context variable templates in serial number (e.g. `{{global.vrmId}}`)
|
|
35
35
|
|
|
36
|
-
Other S2 control types (FRBC, DDBC, PPBC) have no dedicated node yet - **s2-rm** forwards their instructions on its
|
|
36
|
+
Other S2 control types (FRBC, DDBC, PPBC) have no dedicated node yet - **s2-rm** forwards their instructions on its "from CEM" output, as raw S2 messages, for you to handle in your own flow.
|
|
37
37
|
|
|
38
38
|
## Installation
|
|
39
39
|
|
|
@@ -51,14 +51,12 @@ npm install node-red-contrib-s2
|
|
|
51
51
|
3. Wire an **s2-websocket** node to an **s2-rm** node:
|
|
52
52
|
- s2-websocket output 2 -> s2-rm input
|
|
53
53
|
- s2-rm output 1 -> s2-websocket input
|
|
54
|
-
4. s2-rm output 2 carries S2 messages from the CEM (e.g. SelectControlType, ReceptionStatus, RevokeObject).
|
|
55
|
-
5.
|
|
56
|
-
|
|
57
|
-
- s2-rm output 2 -> control-type node input (so it can observe `SelectControlType`/`RevokeObject`)
|
|
58
|
-
- s2-rm output 3 -> control-type node input (so it can resolve its instructions)
|
|
54
|
+
4. s2-rm output 2 carries all S2 messages from the CEM (e.g. SelectControlType, ReceptionStatus, RevokeObject) and instructions (e.g. `OMBC.Instruction`, `PEBC.Instruction`), as raw S2 messages with `msg.topic` set to the `message_type`.
|
|
55
|
+
5. For OMBC or PEBC, add the matching control-type node (**s2-ombc** + **s2-ombc-config**, or **s2-pebc** + **s2-pebc-config**) and wire it up:
|
|
56
|
+
- s2-rm output 2 -> control-type node input (so it can observe `SelectControlType`/`RevokeObject` and resolve its own instructions)
|
|
59
57
|
- control-type node's command output -> s2-rm input (routes `UpdateStatus`/`SystemDescription`/`PowerConstraints`/`InstructionStatus` commands back through s2-rm)
|
|
60
58
|
|
|
61
|
-
`s2-ombc` and `s2-pebc` can be wired in parallel downstream of the same `s2-rm` - each
|
|
59
|
+
`s2-ombc` and `s2-pebc` can be wired in parallel downstream of the same `s2-rm` - each ignores instructions meant for the other control type.
|
|
62
60
|
|
|
63
61
|
If you're sending PowerForecasts and using `s2-pebc`, route your Forecast command into `s2-pebc`'s input too (instead of directly into s2-rm) - see [Sending PowerForecasts](#sending-powerforecasts).
|
|
64
62
|
|
|
@@ -7,29 +7,29 @@ import { NodeRedApp } from '../../types/node-red';
|
|
|
7
7
|
* changes back to the CEM once told the hardware state is confirmed.
|
|
8
8
|
*
|
|
9
9
|
* Wiring:
|
|
10
|
-
* [s2-rm output 2 (from CEM)] -> [s2-ombc input] (
|
|
11
|
-
* [s2-rm output 3 (instructions)] -> [s2-ombc input] (to resolve OMBC instructions)
|
|
10
|
+
* [s2-rm output 2 (from CEM)] -> [s2-ombc input] (all CEM messages incl. instructions)
|
|
12
11
|
* [confirm-mode message] -> [s2-ombc input] (see Input below)
|
|
13
|
-
* [s2-ombc output 1] -> downstream flow (resolved
|
|
12
|
+
* [s2-ombc output 1] -> downstream flow (resolved OMBC instructions)
|
|
14
13
|
* [s2-ombc output 2] -> [s2-rm input] (SystemDescription / UpdateStatus commands)
|
|
15
14
|
*
|
|
16
15
|
* Input:
|
|
17
|
-
* S2 "from CEM" messages
|
|
18
|
-
*
|
|
19
|
-
* { payload: { <mode
|
|
20
|
-
* where <mode
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
16
|
+
* S2 "from CEM" messages, including instructions, forwarded from s2-rm as-is.
|
|
17
|
+
* ModeConfirmation (from your own flow, once hardware state is confirmed):
|
|
18
|
+
* { topic: 'ModeConfirmation', payload: { <mode ref> }, cemId?: <string> }
|
|
19
|
+
* where <mode ref> is exactly one of:
|
|
20
|
+
* id: <string> - exact operation mode id
|
|
21
|
+
* index: <number> - 0-based index into the configured operation modes
|
|
22
|
+
* label: <string> - matches a mode's diagnostic_label (must be unique)
|
|
24
23
|
* cemId is optional: if omitted, it resolves to the one CEM currently with OMBC selected (an
|
|
25
24
|
* error if more than one), or - if none - the confirm is stored as a default status applied to
|
|
26
25
|
* whichever CEM next selects OMBC with no persisted status of its own.
|
|
26
|
+
* Legacy format (confirmedOperationModeId/Index/Label) is still accepted.
|
|
27
27
|
*
|
|
28
28
|
* Output port 1 - instructions:
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
29
|
+
* ModeInstruction: { topic: 'ModeInstruction', payload: { id, index, label, factor, power }, cemId, rawMessage }
|
|
30
|
+
* power: [L1, L2, L3] watts, derived from the mode's power_ranges and factor.
|
|
31
|
+
* Non-OMBC instructions: ignored silently.
|
|
32
|
+
* ModeRequest: { topic: 'ModeRequest', payload: null, cemId }
|
|
33
33
|
*
|
|
34
34
|
* Output port 2 - commands to s2-rm:
|
|
35
35
|
* { payload: { command: 'SystemDescription', cemId, controlType, ombc } }
|
|
@@ -46,36 +46,50 @@
|
|
|
46
46
|
|
|
47
47
|
<script type="text/html" data-help-name="s2-ombc">
|
|
48
48
|
<p>Owns Operation Mode Based Control (OMBC) behavior: declares the OMBC system description to the CEM, resolves OMBC instructions, and confirms operation mode changes back to the CEM once told the hardware state is confirmed.</p>
|
|
49
|
-
<p>Wire this node's input to
|
|
49
|
+
<p>Wire this node's input to <b>s2-rm</b>'s "from CEM" output. Wire this node's second output back to <b>s2-rm</b>'s input.</p>
|
|
50
50
|
<h3>Input</h3>
|
|
51
51
|
<dl class="message-properties">
|
|
52
52
|
<dt>payload <span class="property-type">object</span></dt>
|
|
53
53
|
<dd>S2 "from CEM" messages and enriched instructions forwarded from <b>s2-rm</b>, as-is.</dd>
|
|
54
54
|
</dl>
|
|
55
|
-
<p>
|
|
55
|
+
<p><code>ModeConfirmation</code>, sent from your own flow once the hardware state matches the requested mode:</p>
|
|
56
56
|
<dl class="message-properties">
|
|
57
|
-
<dt>
|
|
58
|
-
<dd>
|
|
59
|
-
<dt>payload
|
|
60
|
-
<dd>
|
|
57
|
+
<dt>topic <span class="property-type">string</span></dt>
|
|
58
|
+
<dd><code>'ModeConfirmation'</code></dd>
|
|
59
|
+
<dt>payload <span class="property-type">object</span></dt>
|
|
60
|
+
<dd>Exactly one of <code>id</code> (mode id), <code>index</code> (0-based index into the configured operation modes), or <code>label</code> (matches a mode's diagnostic label; must be unique). Optional <code>factor</code>, defaults to 1.</dd>
|
|
61
61
|
<dt>cemId <span class="property-type">string</span></dt>
|
|
62
|
-
<dd>
|
|
62
|
+
<dd>Optional. Resolves to the one CEM currently with OMBC selected (error if more than one), or - if none - stored as the default status applied to whichever CEM next selects OMBC.</dd>
|
|
63
|
+
</dl>
|
|
64
|
+
<p>The legacy <code>payload.confirmedOperationModeId</code> / <code>confirmedOperationModeIndex</code> / <code>confirmedOperationModeLabel</code> / <code>operationModeFactor</code> fields are still accepted.</p>
|
|
65
|
+
<p><code>PowerMeasurement</code>, forwarded to <b>s2-rm</b> on this node's second output:</p>
|
|
66
|
+
<dl class="message-properties">
|
|
67
|
+
<dt>topic <span class="property-type">string</span></dt>
|
|
68
|
+
<dd><code>'PowerMeasurement'</code></dd>
|
|
69
|
+
<dt>payload.values <span class="property-type">number | array</span></dt>
|
|
70
|
+
<dd>A number for 3-phase symmetric power, a 3-element array <code>[L1, L2, L3]</code> for per-phase power, or an array of <code>{ commodity_quantity, value }</code> objects passed through as-is.</dd>
|
|
71
|
+
<dt>cemId <span class="property-type">string</span></dt>
|
|
72
|
+
<dd>Optional. Resolves the same way as <code>ModeConfirmation</code>'s cemId, except the message is silently dropped (no output) when no single CEM can be determined.</dd>
|
|
63
73
|
</dl>
|
|
64
74
|
<h3>Outputs</h3>
|
|
65
75
|
<ol class="node-ports">
|
|
66
76
|
<li>Instructions
|
|
67
77
|
<dl class="message-properties">
|
|
68
78
|
<dt>topic <span class="property-type">string</span></dt>
|
|
69
|
-
<dd>
|
|
70
|
-
<dt>
|
|
71
|
-
<dd
|
|
79
|
+
<dd><code>'ModeInstruction'</code> for a resolved OMBC instruction, or <code>'ModeRequest'</code> sent after a newly OMBC-selecting CEM has neither a persisted status nor a default available.</dd>
|
|
80
|
+
<dt>payload <span class="property-type">object</span></dt>
|
|
81
|
+
<dd>For <code>ModeInstruction</code>: <code>{ id, index, label, factor, power }</code> for the resolved mode, where <code>power</code> is <code>[L1, L2, L3]</code> watts derived from the mode's power ranges and factor. For <code>ModeRequest</code>: <code>null</code>.</dd>
|
|
82
|
+
<dt>cemId <span class="property-type">string</span></dt>
|
|
83
|
+
<dd>The CEM this message applies to.</dd>
|
|
84
|
+
<dt>rawMessage <span class="property-type">object</span></dt>
|
|
85
|
+
<dd><code>ModeInstruction</code> only. The original instruction payload received from s2-rm.</dd>
|
|
72
86
|
</dl>
|
|
73
|
-
Non-OMBC instructions are
|
|
87
|
+
Non-OMBC instructions are ignored silently, so this node can be wired in parallel with s2-pebc downstream of the same s2-rm.
|
|
74
88
|
</li>
|
|
75
89
|
<li>To s2-rm
|
|
76
90
|
<dl class="message-properties">
|
|
77
91
|
<dt>payload <span class="property-type">object</span></dt>
|
|
78
|
-
<dd><code>{ command: 'SystemDescription', cemId, controlType, ombc }</code
|
|
92
|
+
<dd><code>{ command: 'SystemDescription', cemId, controlType, ombc }</code>, <code>{ command: 'UpdateStatus', cemId, controlType, ombc }</code>, or <code>{ command: 'PowerMeasurement', cemId, values }</code>. Wire to s2-rm's input.</dd>
|
|
79
93
|
</dl>
|
|
80
94
|
</li>
|
|
81
95
|
</ol>
|
|
@@ -42,18 +42,16 @@ module.exports = function (RED) {
|
|
|
42
42
|
function setDefaultStatus(status) {
|
|
43
43
|
node.context().set(DEFAULT_STATUS_KEY, status);
|
|
44
44
|
}
|
|
45
|
-
// Resolves a
|
|
46
|
-
//
|
|
47
|
-
// canonical id. All three are validated against systemDescription.operationModes: an id must
|
|
48
|
-
// match a configured mode, an index must be in range, and a label must match exactly one mode
|
|
49
|
-
// (diagnostic_label is optional and not declared unique by the S2 schema).
|
|
45
|
+
// Resolves a mode identifier from payload down to a configured mode's canonical id.
|
|
46
|
+
// Accepts new format (id/index/label) and legacy format (confirmedOperationModeId/Index/Label).
|
|
50
47
|
function resolveModeIdentifier(payload) {
|
|
51
|
-
|
|
52
|
-
const
|
|
53
|
-
const
|
|
48
|
+
var _a, _b, _c;
|
|
49
|
+
const idField = (_a = payload.id) !== null && _a !== void 0 ? _a : payload.confirmedOperationModeId;
|
|
50
|
+
const indexField = (_b = payload.index) !== null && _b !== void 0 ? _b : payload.confirmedOperationModeIndex;
|
|
51
|
+
const labelField = (_c = payload.label) !== null && _c !== void 0 ? _c : payload.confirmedOperationModeLabel;
|
|
54
52
|
const providedCount = [idField, indexField, labelField].filter(v => v !== undefined).length;
|
|
55
53
|
if (providedCount !== 1) {
|
|
56
|
-
return { error: 'Confirm message requires exactly one of
|
|
54
|
+
return { error: 'Confirm message requires exactly one of id, index, or label (or legacy confirmedOperationModeId/Index/Label)' };
|
|
57
55
|
}
|
|
58
56
|
const modes = (systemDescription.operationModes || []);
|
|
59
57
|
if (idField !== undefined) {
|
|
@@ -98,21 +96,50 @@ module.exports = function (RED) {
|
|
|
98
96
|
powerRanges: (mode === null || mode === void 0 ? void 0 : mode.power_ranges) || []
|
|
99
97
|
};
|
|
100
98
|
}
|
|
99
|
+
// Calculate per-phase power [L1, L2, L3] from power ranges and factor.
|
|
100
|
+
function calculatePower(powerRanges, factor) {
|
|
101
|
+
const byCq = new Map();
|
|
102
|
+
for (const r of powerRanges)
|
|
103
|
+
byCq.set(r.commodity_quantity, r);
|
|
104
|
+
const sym = byCq.get('ELECTRIC.POWER.3_PHASE_SYMMETRIC');
|
|
105
|
+
if (sym) {
|
|
106
|
+
const total = sym.start_of_range + factor * (sym.end_of_range - sym.start_of_range);
|
|
107
|
+
const perPhase = Math.round(total / 3);
|
|
108
|
+
return [perPhase, perPhase, perPhase];
|
|
109
|
+
}
|
|
110
|
+
function phaseValue(cq) {
|
|
111
|
+
const r = byCq.get(cq);
|
|
112
|
+
if (!r)
|
|
113
|
+
return 0;
|
|
114
|
+
return Math.round(r.start_of_range + factor * (r.end_of_range - r.start_of_range));
|
|
115
|
+
}
|
|
116
|
+
return [phaseValue('ELECTRIC.POWER.L1'), phaseValue('ELECTRIC.POWER.L2'), phaseValue('ELECTRIC.POWER.L3')];
|
|
117
|
+
}
|
|
118
|
+
function modeLabelOrId(modeId) {
|
|
119
|
+
const modes = (systemDescription.operationModes || []);
|
|
120
|
+
const mode = modes.find(m => m.id === modeId);
|
|
121
|
+
return (mode === null || mode === void 0 ? void 0 : mode.diagnostic_label) || modeId;
|
|
122
|
+
}
|
|
101
123
|
function handleInstruction(msg) {
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
124
|
+
const payload = msg.payload;
|
|
125
|
+
const messageType = payload.message_type;
|
|
126
|
+
if (messageType !== messages_1.MessageType.OMBC_INSTRUCTION) {
|
|
105
127
|
return;
|
|
106
128
|
}
|
|
107
|
-
const
|
|
108
|
-
const resolved = resolveMode(rawInstr);
|
|
109
|
-
const outMsg = { ...msg };
|
|
129
|
+
const resolved = resolveMode(payload);
|
|
110
130
|
if (resolved) {
|
|
111
|
-
|
|
112
|
-
outMsg.ombc = { ...(msg.ombc || {}), operationMode: resolved };
|
|
131
|
+
const power = calculatePower(resolved.powerRanges, resolved.factor);
|
|
113
132
|
node.status({ fill: 'green', shape: 'dot', text: resolved.label });
|
|
133
|
+
node.send([{
|
|
134
|
+
topic: 'ModeInstruction',
|
|
135
|
+
payload: { id: resolved.id, index: resolved.index, label: resolved.label, factor: resolved.factor, power },
|
|
136
|
+
cemId: msg.cemId,
|
|
137
|
+
rawMessage: msg.payload
|
|
138
|
+
}, null]);
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
node.send([{ ...msg }, null]);
|
|
114
142
|
}
|
|
115
|
-
node.send([outMsg, null]);
|
|
116
143
|
}
|
|
117
144
|
function handleSelectControlType(msg) {
|
|
118
145
|
const cemId = msg.cemId;
|
|
@@ -136,10 +163,11 @@ module.exports = function (RED) {
|
|
|
136
163
|
node.send([null, { payload: { command: 'UpdateStatus', cemId, controlType: messages_1.ControlType.OMBC, ombc: status } }]);
|
|
137
164
|
}
|
|
138
165
|
else {
|
|
139
|
-
node.send([{ topic: '
|
|
166
|
+
node.send([{ topic: 'ModeRequest', payload: null, cemId }, null]);
|
|
140
167
|
}
|
|
141
168
|
}
|
|
142
169
|
function handleConfirm(msg, done) {
|
|
170
|
+
var _a;
|
|
143
171
|
const payload = msg.payload;
|
|
144
172
|
const resolution = resolveModeIdentifier(payload);
|
|
145
173
|
if ('error' in resolution) {
|
|
@@ -160,14 +188,14 @@ module.exports = function (RED) {
|
|
|
160
188
|
cemId = ombcCemIds[0];
|
|
161
189
|
}
|
|
162
190
|
}
|
|
163
|
-
const factor = payload.operationModeFactor;
|
|
191
|
+
const factor = (_a = payload.factor) !== null && _a !== void 0 ? _a : payload.operationModeFactor;
|
|
164
192
|
const operationModeFactor = typeof factor === 'number' ? factor : 1;
|
|
165
193
|
if (!cemId) {
|
|
166
194
|
// No CEM currently has OMBC selected (pre-connection, or after a disconnect) - store as
|
|
167
195
|
// the default status for whichever CEM next selects OMBC, per "Pre-connection default
|
|
168
196
|
// status" in the spec.
|
|
169
197
|
setDefaultStatus({ activeOperationModeId: modeId, operationModeFactor });
|
|
170
|
-
node.status({ fill: 'blue', shape: 'dot', text: `default: ${modeId}` });
|
|
198
|
+
node.status({ fill: 'blue', shape: 'dot', text: `default: ${modeLabelOrId(modeId)}` });
|
|
171
199
|
done();
|
|
172
200
|
return;
|
|
173
201
|
}
|
|
@@ -190,7 +218,7 @@ module.exports = function (RED) {
|
|
|
190
218
|
};
|
|
191
219
|
}
|
|
192
220
|
setPersistedStatus(cemId, status);
|
|
193
|
-
node.status({ fill: 'green', shape: 'dot', text: `
|
|
221
|
+
node.status({ fill: 'green', shape: 'dot', text: `Confirmed: ${modeLabelOrId(modeId)}` });
|
|
194
222
|
node.send([null, { payload: { command: 'UpdateStatus', cemId, controlType: messages_1.ControlType.OMBC, ombc: status } }]);
|
|
195
223
|
done();
|
|
196
224
|
}
|
|
@@ -210,11 +238,57 @@ module.exports = function (RED) {
|
|
|
210
238
|
done();
|
|
211
239
|
return;
|
|
212
240
|
}
|
|
213
|
-
if (
|
|
241
|
+
if (topic === 'ModeConfirmation' ||
|
|
242
|
+
'confirmedOperationModeId' in payload || 'confirmedOperationModeIndex' in payload || 'confirmedOperationModeLabel' in payload) {
|
|
214
243
|
handleConfirm(msg, done);
|
|
215
244
|
return;
|
|
216
245
|
}
|
|
246
|
+
if (topic === 'PowerMeasurement') {
|
|
247
|
+
let pmCemId = msg.cemId;
|
|
248
|
+
if (!pmCemId) {
|
|
249
|
+
const ombcCemIds = Array.from(cemStates.entries())
|
|
250
|
+
.filter(([, state]) => state.selectedControlType === messages_1.ControlType.OMBC)
|
|
251
|
+
.map(([id]) => id);
|
|
252
|
+
if (ombcCemIds.length === 1) {
|
|
253
|
+
pmCemId = ombcCemIds[0];
|
|
254
|
+
}
|
|
255
|
+
else {
|
|
256
|
+
done();
|
|
257
|
+
return;
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
const rawValues = payload.values;
|
|
261
|
+
// values: 3000 → 3-phase symmetric; values: [L1, L2, L3] → per-phase
|
|
262
|
+
let values;
|
|
263
|
+
if (typeof rawValues === 'number') {
|
|
264
|
+
values = [{ commodity_quantity: 'ELECTRIC.POWER.3_PHASE_SYMMETRIC', value: rawValues }];
|
|
265
|
+
}
|
|
266
|
+
else if (Array.isArray(rawValues) && rawValues.length === 3 && typeof rawValues[0] === 'number') {
|
|
267
|
+
values = [
|
|
268
|
+
{ commodity_quantity: 'ELECTRIC.POWER.L1', value: rawValues[0] },
|
|
269
|
+
{ commodity_quantity: 'ELECTRIC.POWER.L2', value: rawValues[1] },
|
|
270
|
+
{ commodity_quantity: 'ELECTRIC.POWER.L3', value: rawValues[2] }
|
|
271
|
+
];
|
|
272
|
+
}
|
|
273
|
+
else if (Array.isArray(rawValues) && rawValues.length > 0 && typeof rawValues[0] === 'object') {
|
|
274
|
+
values = rawValues;
|
|
275
|
+
}
|
|
276
|
+
else {
|
|
277
|
+
done(new Error('PowerMeasurement values must be a number (3-phase symmetric), a 3-element array [L1, L2, L3], or an array of {commodity_quantity, value} objects'));
|
|
278
|
+
return;
|
|
279
|
+
}
|
|
280
|
+
node.send([null, { payload: { command: 'PowerMeasurement', cemId: pmCemId, values } }]);
|
|
281
|
+
done();
|
|
282
|
+
return;
|
|
283
|
+
}
|
|
217
284
|
if ('controlType' in msg) {
|
|
285
|
+
// Legacy enriched instruction from s2-rm (pre-v0.3)
|
|
286
|
+
handleInstruction(msg);
|
|
287
|
+
done();
|
|
288
|
+
return;
|
|
289
|
+
}
|
|
290
|
+
const messageType = payload.message_type;
|
|
291
|
+
if (messageType && messageType.startsWith('OMBC.')) {
|
|
218
292
|
handleInstruction(msg);
|
|
219
293
|
done();
|
|
220
294
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nodes/s2-ombc/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nodes/s2-ombc/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,16 +15,15 @@ import { NodeRedApp } from '../../types/node-red';
|
|
|
15
15
|
* rating whenever actual voltage exceeds the 230V nominal used to derive the wattage.
|
|
16
16
|
*
|
|
17
17
|
* Wiring:
|
|
18
|
-
* [s2-rm output 2 (from CEM)]
|
|
19
|
-
* [
|
|
20
|
-
* [Forecast command source] -> [s2-pebc input] (optional - to cap the forecast to the accumulated schedule)
|
|
18
|
+
* [s2-rm output 2 (from CEM)] -> [s2-pebc input] (all CEM messages incl. instructions)
|
|
19
|
+
* [Forecast command source] -> [s2-pebc input] (optional - to cap the forecast to the accumulated schedule)
|
|
21
20
|
* [PowerMeasurement command source] -> [s2-pebc input] (optional - to resolve which side of an
|
|
22
21
|
* asymmetric bound currently applies; see output port 1)
|
|
23
|
-
* [s2-pebc output 1] -> downstream flow (active element dispatch
|
|
22
|
+
* [s2-pebc output 1] -> downstream flow (active element dispatch)
|
|
24
23
|
* [s2-pebc output 2] -> downstream flow (full accumulated schedule dump)
|
|
25
24
|
* [s2-pebc output 3] -> [s2-rm input] (PowerConstraints / InstructionStatus / Forecast commands)
|
|
26
25
|
*
|
|
27
|
-
* Output port 1 - active element
|
|
26
|
+
* Output port 1 - active element:
|
|
28
27
|
* Active element: { cemId, payload: { startTime, endTime, duration, lowerBound, upperBound, commodityQuantity, direction, limitW } }
|
|
29
28
|
* Released (no PEBC bound active - last instruction revoked, or its final element ended with
|
|
30
29
|
* nothing queued after it): { cemId, payload: { lowerBound: null, upperBound: null, commodityQuantity, direction, limitW: null } }
|
|
@@ -34,7 +33,7 @@ import { NodeRedApp } from '../../types/node-red';
|
|
|
34
33
|
* active element and its two bounds actually differ, output 1 is re-emitted with the updated
|
|
35
34
|
* values - this does not resend InstructionStatus on output 3, since the instruction itself
|
|
36
35
|
* hasn't changed, only which of its bounds is presently binding.
|
|
37
|
-
* Non-PEBC instructions:
|
|
36
|
+
* Non-PEBC instructions: ignored silently.
|
|
38
37
|
*
|
|
39
38
|
* Output port 2 - schedule:
|
|
40
39
|
* { cemId, payload: { commodityQuantity, elements: [{ startTime, endTime, durationSec, lowerBound, upperBound }] } }
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
|
|
47
47
|
<script type="text/html" data-help-name="s2-pebc">
|
|
48
48
|
<p>Owns Power Envelope Based Control (PEBC) behavior: accumulates power envelope schedules from PEBC instructions and dispatches the currently active bound to your flow as it becomes effective. Pushes a default PowerConstraints range on deploy, used until a runtime override is supplied. That same wattage is published to flow context as <code>pebcDefaultMaxPowerW</code> (<code>null</code> if unconfigured), so your own flow logic can derive a released-state limit from it instead of hardcoding one. For a named grid connection (not "Custom"), its fixed per-phase amp rating is also published as <code>pebcDefaultMaxAmpsPerPhase</code> - prefer this over dividing <code>pebcDefaultMaxPowerW</code> by a live voltage reading, which drifts below the configured rating whenever actual voltage exceeds the 230V nominal used to derive that wattage.</p>
|
|
49
|
-
<p>Wire this node's input to
|
|
49
|
+
<p>Wire this node's input to <b>s2-rm</b>'s "from CEM" output. Optionally also wire a <code>Forecast</code> command into this input instead of directly into s2-rm - it will be capped to the accumulated schedule before being forwarded. Optionally also wire your <code>PowerMeasurement</code> command into this input (in addition to wherever else it already goes) so the node can resolve which side of an asymmetric bound currently applies - see output 1. Wire this node's third output back to <b>s2-rm</b>'s input.</p>
|
|
50
50
|
<h3>Input</h3>
|
|
51
51
|
<dl class="message-properties">
|
|
52
52
|
<dt>payload <span class="property-type">object</span></dt>
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
</dl>
|
|
66
66
|
When no PEBC bound is active any more - the last instruction is revoked, or its final element ends with nothing queued after it - a released element is emitted instead, with <code>lowerBound</code> and <code>upperBound</code> both <code>null</code>. Treat that explicitly as "no PEBC-imposed limit right now", not as "no data yet".
|
|
67
67
|
<br>If you've wired in <code>PowerMeasurement</code>, this output is also re-emitted (with updated <code>direction</code>/<code>limitW</code>) whenever a measurement flips which side of an asymmetric bound applies mid-slot - without resending <code>InstructionStatus</code> on output 3, since the instruction itself hasn't changed.
|
|
68
|
-
<br>Non-PEBC instructions are
|
|
68
|
+
<br>Non-PEBC instructions are ignored silently, so this node can be wired in parallel with s2-ombc downstream of the same s2-rm.
|
|
69
69
|
</li>
|
|
70
70
|
<li>Schedule
|
|
71
71
|
<dl class="message-properties">
|
|
@@ -257,13 +257,13 @@ module.exports = function (RED) {
|
|
|
257
257
|
updateNodeStatus();
|
|
258
258
|
}
|
|
259
259
|
function handleInstruction(msg) {
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
260
|
+
const payload = msg.payload;
|
|
261
|
+
const messageType = payload.message_type;
|
|
262
|
+
if (messageType !== messages_1.MessageType.PEBC_INSTRUCTION) {
|
|
263
263
|
return;
|
|
264
264
|
}
|
|
265
265
|
const cemId = msg.cemId;
|
|
266
|
-
const rawMsg =
|
|
266
|
+
const rawMsg = payload;
|
|
267
267
|
const parsed = (0, schedule_1.parsePebcInstruction)(rawMsg, Date.now(), cemId);
|
|
268
268
|
if (!parsed || parsed.elements.length === 0)
|
|
269
269
|
return;
|
|
@@ -402,11 +402,20 @@ module.exports = function (RED) {
|
|
|
402
402
|
updateNodeStatus();
|
|
403
403
|
node.on('input', (msg, _send, done) => {
|
|
404
404
|
if ('controlType' in msg) {
|
|
405
|
+
// Legacy enriched instruction from s2-rm (pre-v0.3)
|
|
405
406
|
handleInstruction(msg);
|
|
406
407
|
done();
|
|
407
408
|
return;
|
|
408
409
|
}
|
|
409
410
|
const payload = msg.payload;
|
|
411
|
+
if (payload && typeof payload === 'object') {
|
|
412
|
+
const messageType = payload.message_type;
|
|
413
|
+
if (messageType && messageType.startsWith('PEBC.')) {
|
|
414
|
+
handleInstruction(msg);
|
|
415
|
+
done();
|
|
416
|
+
return;
|
|
417
|
+
}
|
|
418
|
+
}
|
|
410
419
|
if (payload && typeof payload === 'object' && payload.message_type === messages_1.MessageType.REVOKE_OBJECT) {
|
|
411
420
|
handleRevoke(msg);
|
|
412
421
|
done();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nodes/s2-pebc/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nodes/s2-pebc/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAwB;AACxB,uCAAwB;AACxB,2CAA4B;AAG5B,oDAAiM;AACjM,oDAAyJ;AAMzJ,MAAM,oBAAoB,GAAG,gBAAgB,CAAA;AAiD7C,iBAAS,UAAU,GAAe;IAChC,SAAS,UAAU,CAAqB,MAAwB;;QAC9D,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAClC,MAAM,IAAI,GAAG,IAAI,CAAA;QAEjB,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAA4B,CAAA;QACtF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,mFAAmF,CAAC,CAAA;YAC/F,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAA;YAClE,OAAM;QACR,CAAC;QAED,2CAA2C;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA,MAAA,GAAG,CAAC,QAAQ,0CAAE,OAAO,KAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,KAAK,CAAC,CAAA;QACnG,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAA;QAEvE,SAAS,YAAY,CAAE,QAAsB;YAC3C,IAAI,CAAC;gBACH,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;gBAC9C,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;YACnE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,IAAI,CAAC,iCAAiC,GAAI,CAAW,CAAC,OAAO,CAAC,CAAA;YACrE,CAAC;QACH,CAAC;QAED,SAAS,qBAAqB;YAC5B,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;gBACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAiB,CAAA;gBAChD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBACtB,MAAM,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,GAAG,GAAG,CAAC,CAAA;gBACpE,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAM;gBACtC,0EAA0E;gBAC1E,iFAAiF;gBACjF,+EAA+E;gBAC/E,4BAA4B;gBAC5B,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;oBAC/B,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAA;gBACzJ,CAAC;gBACD,aAAa,CAAC,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAA;gBACvD,IAAI,CAAC,GAAG,CAAC,gCAAgC,QAAQ,CAAC,KAAK,SAAS,aAAa,CAAC,MAAM,oBAAoB,CAAC,CAAA;YAC3G,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAK,CAA2B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACnD,IAAI,CAAC,IAAI,CAAC,wCAAwC,GAAI,CAAW,CAAC,OAAO,CAAC,CAAA;gBAC5E,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,aAAa,GAAyC,IAAI,CAAA;QAC9D,yDAAyD;QACzD,mEAAmE;QACnE,IAAI,iBAAiB,GAAkB,IAAI,CAAA;QAC3C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAyG,CAAA;QAElI,gGAAgG;QAChG,IAAI,iBAAiB,GAAgH,IAAI,CAAA;QACzI,IAAI,oBAAoB,GAAG,CAAC,CAAA;QAE5B,sGAAsG;QACtG,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAA;QACjD,wFAAwF;QACxF,6FAA6F;QAC7F,IAAI,sBAAsB,GAA+B,IAAI,CAAA;QAE7D,SAAS,gBAAgB,CAAE,iBAAyB;YAClD,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;YACvD,OAAO,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;QACrE,CAAC;QAED,SAAS,aAAa,CAAE,SAA8B,EAAE,UAAyB,EAAE,UAAyB;YAC1G,IAAI,SAAS,KAAK,QAAQ;gBAAE,OAAO,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;YACpF,OAAO,UAAU,CAAA;QACnB,CAAC;QAED,SAAS,UAAU,CAAE,EAAU;YAC7B,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;QACpF,CAAC;QAED,SAAS,WAAW,CAAE,KAAoB;YACxC,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAA;QAC3C,CAAC;QAED,SAAS,gBAAgB;YACvB,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAA;YAC5B,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAA;gBACjE,OAAM;YACR,CAAC;YAED,MAAM,UAAU,GAAG,GAAG,KAAK,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;YACzD,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YAC5F,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YACtB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YAElF,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,MAAM,CAAC;oBACV,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,KAAK;oBACZ,IAAI,EAAE,GAAG,UAAU,aAAa,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;iBAC9J,CAAC,CAAA;gBACF,OAAM;YACR,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC,CAAA;YACtD,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,UAAU,aAAa,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC/G,OAAM;YACR,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,gBAAgB,EAAE,CAAC,CAAA;QACrF,CAAC;QAED,SAAS,iBAAiB,CAAE,QAAsB;YAChD,MAAM,EAAE,GAAG,IAAA,2BAAgB,EAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;YACjD,IAAI,CAAC,EAAE;gBAAE,OAAM;YAEf,MAAM,WAAW,GAAG,iBAAiB,KAAK,IAAI;gBAC5C,iBAAiB,CAAC,OAAO,KAAK,EAAE,CAAC,OAAO;gBACxC,iBAAiB,CAAC,UAAU,KAAK,EAAE,CAAC,UAAU;gBAC9C,iBAAiB,CAAC,UAAU,KAAK,EAAE,CAAC,UAAU;gBAC9C,iBAAiB,CAAC,iBAAiB,KAAK,QAAQ,CAAC,iBAAiB,CAAA;YAEpE,IAAI,WAAW,EAAE,CAAC;gBAChB,oBAAoB,EAAE,CAAA;gBACtB,IAAI,CAAC,KAAK,CAAC,sCAAsC,oBAAoB,4BAA4B,CAAC,CAAA;gBAClG,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC,IAAI,cAAc,oBAAoB,OAAO,EAAE,CAAC,CAAA;gBAChH,OAAM;YACR,CAAC;YAED,iBAAiB,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB,EAAE,CAAA;YAChJ,oBAAoB,GAAG,CAAC,CAAA;YACxB,gBAAgB,EAAE,CAAA;YAElB,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;YACtC,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,4BAAiB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;YACjK,CAAC;YAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;YAC9D,sBAAsB,GAAG,SAAS,CAAA;YAElC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACT,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,OAAO,EAAE;wBACP,SAAS,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE;wBAC7C,OAAO,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE;wBACzC,QAAQ,EAAE,EAAE,CAAC,QAAQ;wBACrB,UAAU,EAAE,EAAE,CAAC,UAAU;wBACzB,UAAU,EAAE,EAAE,CAAC,UAAU;wBACzB,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;wBAC7C,SAAS;wBACT,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC;qBAC/D;iBACF,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,gFAAgF;QAChF,kFAAkF;QAClF,iFAAiF;QACjF,8EAA8E;QAC9E,yBAAyB;QACzB,SAAS,YAAY,CAAE,KAAa,EAAE,iBAAyB;YAC7D,iBAAiB,GAAG,IAAI,CAAA;YACxB,MAAM,SAAS,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,CAAA;YACrD,sBAAsB,GAAG,SAAS,CAAA;YAClC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;YAC/H,gBAAgB,EAAE,CAAA;QACpB,CAAC;QAED,0FAA0F;QAC1F,4FAA4F;QAC5F,2FAA2F;QAC3F,0FAA0F;QAC1F,SAAS,qBAAqB,CAAE,KAAa;YAC3C,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAkB,CAAA;YACxD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC9C,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC;oBAChC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;oBAC1D,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBACvB,CAAC;YACH,CAAC;YACD,KAAK,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,IAAI,sBAAsB,EAAE,CAAC;gBAC5D,MAAM,YAAY,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,KAAK,aAAa,CAAC,CAAA;gBACzF,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,4BAAiB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAA;gBACnI,CAAC;YACH,CAAC;QACH,CAAC;QAED,SAAS,oBAAoB,CAAE,QAAsB;YACnD,IAAI,aAAa,EAAE,CAAC;gBAClB,YAAY,CAAC,aAAa,CAAC,CAAA;gBAC3B,aAAa,GAAG,IAAI,CAAA;YACtB,CAAC;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YACtB,MAAM,SAAS,GAAG,IAAA,8BAAmB,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;YACpD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,GAAG,CAAC,CAAA;gBAC1C,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC9B,aAAa,GAAG,IAAI,CAAA;oBACpB,qBAAqB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;oBACjC,iBAAiB,CAAC,QAAQ,CAAC,CAAA;oBAC3B,oBAAoB,CAAC,QAAQ,CAAC,CAAA;gBAChC,CAAC,EAAE,KAAK,CAAC,CAAA;gBACT,OAAM;YACR,CAAC;YAED,0EAA0E;YAC1E,yEAAyE;YACzE,MAAM,MAAM,GAAG,IAAA,2BAAgB,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;YAC9C,IAAI,CAAC,MAAM;gBAAE,OAAM;YACnB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,CAAA;YAC7C,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC9B,aAAa,GAAG,IAAI,CAAA;gBACpB,qBAAqB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;gBACjC,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAA;YAC1D,CAAC,EAAE,KAAK,CAAC,CAAA;QACX,CAAC;QAED,SAAS,aAAa,CAAE,QAAsB;YAC5C,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAA;YAClD,YAAY,CAAC,QAAQ,CAAC,CAAA;YACtB,iBAAiB,CAAC,QAAQ,CAAC,CAAA;YAC3B,oBAAoB,CAAC,QAAQ,CAAC,CAAA;YAC9B,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;oBACf,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,OAAO,EAAE;wBACP,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;wBAC7C,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;4BACrC,SAAS,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE;4BAC7C,OAAO,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE;4BACzC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;4BAC3C,UAAU,EAAE,EAAE,CAAC,UAAU;4BACzB,UAAU,EAAE,EAAE,CAAC,UAAU;yBAC1B,CAAC,CAAC;qBACJ;iBACF,EAAE,IAAI,CAAC,CAAC,CAAA;YACT,gBAAgB,EAAE,CAAA;QACpB,CAAC;QAED,SAAS,iBAAiB,CAAE,GAAgB;YAC1C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAkC,CAAA;YACtD,MAAM,WAAW,GAAG,OAAO,CAAC,YAAsB,CAAA;YAClD,IAAI,WAAW,KAAK,sBAAW,CAAC,gBAAgB,EAAE,CAAC;gBACjD,OAAM;YACR,CAAC;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;YACvB,MAAM,MAAM,GAAG,OAAO,CAAA;YACtB,MAAM,MAAM,GAAG,IAAA,+BAAoB,EAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAA;YAC9D,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAM;YAEnD,MAAM,aAAa,GAAG,MAAM,CAAC,oBAA0C,CAAA;YACvE,IAAI,aAAa,IAAI,aAAa,KAAK,iBAAiB,EAAE,CAAC;gBACzD,SAAS,CAAC,KAAK,EAAE,CAAA;gBACjB,iBAAiB,GAAG,aAAa,CAAA;YACnC,CAAC;YACD,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACjC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAA;YAClJ,CAAC;YACD,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YAC5F,MAAM,QAAQ,GAAiB;gBAC7B,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;gBACtB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK;gBACtB,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,iBAAiB;gBAC9C,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;aACrC,CAAA;YACD,aAAa,CAAC,QAAQ,CAAC,CAAA;QACzB,CAAC;QAED,SAAS,YAAY,CAAE,GAAgB;YACrC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAkC,CAAA;YACtD,MAAM,SAAS,GAAG,OAAO,CAAC,SAA+B,CAAA;YACzD,MAAM,iBAAiB,GAAG,OAAO,CAAC,WAAiC,CAAA;YACnE,IAAI,CAAC,SAAS,IAAI,CAAC,iBAAiB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC;gBAAE,OAAM;YAE3F,IAAI,KAAK,GAAG,KAAK,CAAA;YACjB,IAAI,iBAAiB,GAAG,EAAE,CAAA;YAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC9C,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;oBACrC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAA;oBAC1C,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;oBACrB,KAAK,GAAG,IAAI,CAAA;gBACd,CAAC;YACH,CAAC;YACD,IAAI,CAAC,KAAK;gBAAE,OAAM;YAElB,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,4BAAiB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;YAErJ,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACzB,IAAI,aAAa,EAAE,CAAC;oBAAC,YAAY,CAAC,aAAa,CAAC,CAAC;oBAAC,aAAa,GAAG,IAAI,CAAA;gBAAC,CAAC;gBACxE,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAA;gBAC9C,YAAY,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,EAAE,iBAAiB,CAAC,CAAA;YAClD,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAC5F,MAAM,OAAO,GAAiB;oBAC5B,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;oBACtB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK;oBACtB,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa;oBACtC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,iBAAiB;oBAC9C,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;iBACrC,CAAA;gBACD,aAAa,CAAC,OAAO,CAAC,CAAA;gBACtB,oFAAoF;gBACpF,qFAAqF;gBACrF,wFAAwF;gBACxF,kFAAkF;gBAClF,mFAAmF;gBACnF,6DAA6D;gBAC7D,IAAI,iBAAiB,KAAK,IAAI,IAAI,CAAC,IAAA,2BAAgB,EAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;oBACzE,YAAY,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,EAAE,iBAAiB,CAAC,CAAA;gBAClD,CAAC;YACH,CAAC;QACH,CAAC;QAED,SAAS,oBAAoB;YAC3B,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAA;YACrC,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YAC5F,OAAO;gBACL,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;gBACtB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK;gBACtB,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa;gBACtC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,iBAAiB;gBAC9C,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;aACrC,CAAA;QACH,CAAC;QAED,SAAS,cAAc,CAAE,GAAgB;YACvC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAkC,CAAA;YACtD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAA0C,CAAA;YACnE,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;YACzD,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC3B,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;gBAC5B,OAAM;YACR,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,IAAA,gCAAqB,EAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QACnH,CAAC;QAED,SAAS,sBAAsB,CAAE,GAAgB;YAC/C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAkC,CAAA;YACtD,MAAM,MAAM,GAAG,OAAO,CAAC,MAA6C,CAAA;YACpE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;gBAAE,OAAM;YAClC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;gBACvB,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,kBAAkB,KAAK,QAAQ,EAAE,CAAC;oBAC5E,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAA;gBACpD,CAAC;YACH,CAAC;YACD,4BAA4B,EAAE,CAAA;QAChC,CAAC;QAED,yFAAyF;QACzF,sFAAsF;QACtF,4FAA4F;QAC5F,qEAAqE;QACrE,SAAS,4BAA4B;YACnC,MAAM,QAAQ,GAAG,oBAAoB,EAAE,CAAA;YACvC,IAAI,CAAC,QAAQ;gBAAE,OAAM;YACrB,MAAM,EAAE,GAAG,IAAA,2BAAgB,EAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;YACjD,IAAI,CAAC,EAAE;gBAAE,OAAM;YAEf,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;YAC9D,IAAI,SAAS,KAAK,sBAAsB;gBAAE,OAAM;YAEhD,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,CAAA;YACzE,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,CAAA;YACzE,sBAAsB,GAAG,SAAS,CAAA;YAClC,IAAI,WAAW,KAAK,WAAW;gBAAE,OAAM;YAEvC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACT,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,OAAO,EAAE;wBACP,SAAS,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE;wBAC7C,OAAO,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE;wBACzC,QAAQ,EAAE,EAAE,CAAC,QAAQ;wBACrB,UAAU,EAAE,EAAE,CAAC,UAAU;wBACzB,UAAU,EAAE,EAAE,CAAC,UAAU;wBACzB,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;wBAC7C,SAAS;wBACT,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC;qBAC/D;iBACF,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,gBAAgB,EAAE,CAAA;QAElB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACpC,IAAI,aAAa,IAAI,GAAG,EAAE,CAAC;gBACzB,oDAAoD;gBACpD,iBAAiB,CAAC,GAAG,CAAC,CAAA;gBACtB,IAAI,EAAE,CAAA;gBACN,OAAM;YACR,CAAC;YACD,MAAM,OAAO,GAAG,GAAG,CAAC,OAA8C,CAAA;YAClE,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC3C,MAAM,WAAW,GAAI,OAAmC,CAAC,YAAkC,CAAA;gBAC3F,IAAI,WAAW,IAAI,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnD,iBAAiB,CAAC,GAAG,CAAC,CAAA;oBACtB,IAAI,EAAE,CAAA;oBACN,OAAM;gBACR,CAAC;YACH,CAAC;YACD,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,YAAY,KAAK,sBAAW,CAAC,aAAa,EAAE,CAAC;gBACjG,YAAY,CAAC,GAAG,CAAC,CAAA;gBACjB,IAAI,EAAE,CAAA;gBACN,OAAM;YACR,CAAC;YACD,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBAC7E,cAAc,CAAC,GAAG,CAAC,CAAA;gBACnB,IAAI,EAAE,CAAA;gBACN,OAAM;YACR,CAAC;YACD,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,KAAK,kBAAkB,EAAE,CAAC;gBACrF,sBAAsB,CAAC,GAAG,CAAC,CAAA;gBAC3B,IAAI,EAAE,CAAA;gBACN,OAAM;YACR,CAAC;YACD,IAAI,EAAE,CAAA;QACR,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACxB,IAAI,aAAa,EAAE,CAAC;gBAClB,YAAY,CAAC,aAAa,CAAC,CAAA;gBAC3B,aAAa,GAAG,IAAI,CAAA;YACtB,CAAC;YACD,IAAI,EAAE,CAAA;QACR,CAAC,CAAC,CAAA;QAEF,qBAAqB,EAAE,CAAA;QAEvB,gFAAgF;QAChF,yFAAyF;QACzF,MAAM,gBAAgB,GAAG,IAAA,gCAAqB,EAAC,cAAc,CAAC,cAAc,EAAE,cAAc,CAAC,eAAe,CAAC,CAAA;QAC7G,mFAAmF;QACnF,8EAA8E;QAC9E,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,CAAA;QACjE,yFAAyF;QACzF,qFAAqF;QACrF,iFAAiF;QACjF,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,4BAA4B,EAAE,IAAA,uCAA4B,EAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAA;QAClH,IAAI,gBAAgB,IAAI,IAAI,EAAE,CAAC;YAC7B,MAAM,WAAW,GAA8B;gBAC7C,iBAAiB,EAAE,kCAAkC;gBACrD,QAAQ,EAAE,CAAC,gBAAgB;gBAC3B,QAAQ,EAAE,gBAAgB;aAC3B,CAAA;YACD,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,CAAA;YACpF,CAAC,EAAE,GAAG,CAAC,CAAA;QACT,CAAC;IACH,CAAC;IAED,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;AAC/C,CAAC,CAAA"}
|
|
@@ -10,8 +10,7 @@ import { NodeRedApp } from '../../types/node-red';
|
|
|
10
10
|
* Wiring:
|
|
11
11
|
* [transport port 2] -> [s2-rm input]
|
|
12
12
|
* [s2-rm port 1] -> [transport input]
|
|
13
|
-
* [s2-rm port 2] -> [control-type node input] (
|
|
14
|
-
* [s2-rm port 3] -> [control-type node input] (enriched instructions)
|
|
13
|
+
* [s2-rm port 2] -> [control-type node input] (all CEM messages incl. instructions)
|
|
15
14
|
* [control-type node command output] -> [s2-rm input] (UpdateStatus/SystemDescription/PowerConstraints/InstructionStatus)
|
|
16
15
|
*
|
|
17
16
|
* Input msg.payload from transport or a control-type node:
|
|
@@ -32,15 +31,11 @@ import { NodeRedApp } from '../../types/node-red';
|
|
|
32
31
|
* { payload: { 'S2/0/Active': 1 | 0 } } <- on every SelectControlType, reflects whether the
|
|
33
32
|
* selected control type is other than NO_SELECTION/NOT_CONTROLABLE
|
|
34
33
|
*
|
|
35
|
-
* Output port 2 - S2 messages
|
|
34
|
+
* Output port 2 - all S2 messages from CEM (incl. instructions), forwarded for downstream processing:
|
|
36
35
|
* { payload: <S2 message object>, cemId: <string>, topic: <message_type string> }
|
|
37
36
|
* Also emits lifecycle events (route via Switch node on msg.topic):
|
|
38
37
|
* { topic: 'Connected', cemId: <string> }
|
|
39
38
|
* { topic: 'Disconnected', cemId: <string>, reason: 'cem_initiated' | 'keepalive_timeout' }
|
|
40
|
-
*
|
|
41
|
-
* Output port 3 - S2 instructions from CEM, enriched with the resolved control type:
|
|
42
|
-
* { payload: <S2 instruction object>, cemId: <string>, controlType: <string>, <namespace key>: <S2 instruction object> }
|
|
43
|
-
* e.g. for an OMBC.Instruction: { payload: {...}, cemId, controlType: 'OPERATION_MODE_BASED_CONTROL', ombc: {...} }
|
|
44
39
|
*/
|
|
45
40
|
declare const _default: (RED: NodeRedApp) => void;
|
|
46
41
|
export = _default;
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
cem: { value: '', type: 's2-cem-config', required: false }
|
|
10
10
|
},
|
|
11
11
|
inputs: 1,
|
|
12
|
-
outputs:
|
|
12
|
+
outputs: 2,
|
|
13
13
|
icon: 's2-logo.svg',
|
|
14
|
-
outputLabels: ['to transport', 'from CEM'
|
|
14
|
+
outputLabels: ['to transport', 'from CEM'],
|
|
15
15
|
inputLabels: ['from transport / control-type nodes'],
|
|
16
16
|
label: function () {
|
|
17
17
|
return this.name || 'S2 Resource Manager'
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
<script type="text/html" data-help-name="s2-rm">
|
|
54
54
|
<p>Generic S2 protocol state machine for connected CEMs. Handles the S2 handshake, sends ResourceManagerDetails, and acknowledges/routes instructions - independent of any specific control type's semantics.</p>
|
|
55
55
|
<p>RM identity (resource ID, name, control types) is configured in the linked <b>s2-rm-config</b> node, shared with the transport node.</p>
|
|
56
|
-
<p>Control-type-specific behavior (OMBC mode resolution, PEBC schedule dispatch, etc.) lives in dedicated nodes - <b>s2-ombc</b>, <b>s2-pebc</b> - wired to this node's "from CEM"
|
|
56
|
+
<p>Control-type-specific behavior (OMBC mode resolution, PEBC schedule dispatch, etc.) lives in dedicated nodes - <b>s2-ombc</b>, <b>s2-pebc</b> - wired to this node's "from CEM" output, with their command output wired back to this node's input.</p>
|
|
57
57
|
<h3>Input</h3>
|
|
58
58
|
<dl class="message-properties">
|
|
59
59
|
<dt>payload <span class="property-type">object</span></dt>
|
|
@@ -70,21 +70,11 @@
|
|
|
70
70
|
<li>From CEM
|
|
71
71
|
<dl class="message-properties">
|
|
72
72
|
<dt>payload <span class="property-type">object</span></dt>
|
|
73
|
-
<dd>S2 messages
|
|
73
|
+
<dd>All S2 messages from the CEM, including instructions (SelectControlType, RevokeObject, OMBC.Instruction, PEBC.Instruction, etc.). Wire to control-type nodes.</dd>
|
|
74
74
|
<dt>cemId <span class="property-type">string</span></dt>
|
|
75
75
|
<dd>ID of the CEM that sent the message.</dd>
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
<li>Instructions
|
|
79
|
-
<dl class="message-properties">
|
|
80
|
-
<dt>payload <span class="property-type">object</span></dt>
|
|
81
|
-
<dd>Control instructions from the CEM (OMBC.Instruction, PEBC.Instruction, etc.).</dd>
|
|
82
|
-
<dt>cemId <span class="property-type">string</span></dt>
|
|
83
|
-
<dd>ID of the CEM that sent the instruction.</dd>
|
|
84
|
-
<dt>controlType <span class="property-type">string</span></dt>
|
|
85
|
-
<dd>Resolved S2 control type of the instruction, e.g. <code>OPERATION_MODE_BASED_CONTROL</code>.</dd>
|
|
86
|
-
<dt>ombc / pebc / frbc / ddbc / ppbc <span class="property-type">object</span></dt>
|
|
87
|
-
<dd>The instruction payload, namespaced under the key matching <code>controlType</code>, for easy Switch-node routing to the matching control-type node.</dd>
|
|
76
|
+
<dt>topic <span class="property-type">string</span></dt>
|
|
77
|
+
<dd>The S2 message_type, or a lifecycle event (<code>Connected</code>, <code>Disconnected</code>).</dd>
|
|
88
78
|
</dl>
|
|
89
79
|
</li>
|
|
90
80
|
</ol>
|
|
@@ -3,17 +3,6 @@ const session_1 = require("../../lib/s2/session");
|
|
|
3
3
|
const messages_1 = require("../../lib/s2/messages");
|
|
4
4
|
const PENDING_INSTRUCTIONS_KEY = 's2PendingInstructions';
|
|
5
5
|
const PRUNE_GRACE_MS = 3600000; // 1 hour grace before an instruction is pruned
|
|
6
|
-
// Maps an instruction's message_type to the control type it belongs to and the
|
|
7
|
-
// namespace key used to enrich the emitted message (msg.controlType / msg.<key>).
|
|
8
|
-
const INSTRUCTION_CONTROL_TYPE = {
|
|
9
|
-
[messages_1.MessageType.OMBC_INSTRUCTION]: { controlType: messages_1.ControlType.OMBC, key: 'ombc' },
|
|
10
|
-
[messages_1.MessageType.PEBC_INSTRUCTION]: { controlType: messages_1.ControlType.PEBC, key: 'pebc' },
|
|
11
|
-
[messages_1.MessageType.FRBC_INSTRUCTION]: { controlType: messages_1.ControlType.FRBC, key: 'frbc' },
|
|
12
|
-
[messages_1.MessageType.DDBC_INSTRUCTION]: { controlType: messages_1.ControlType.DDBC, key: 'ddbc' },
|
|
13
|
-
[messages_1.MessageType.PPBC_SCHEDULE_INSTRUCTION]: { controlType: messages_1.ControlType.PPBC, key: 'ppbc' },
|
|
14
|
-
[messages_1.MessageType.PPBC_START_INTERRUPTION_INSTRUCTION]: { controlType: messages_1.ControlType.PPBC, key: 'ppbc' },
|
|
15
|
-
[messages_1.MessageType.PPBC_END_INTERRUPTION_INSTRUCTION]: { controlType: messages_1.ControlType.PPBC, key: 'ppbc' }
|
|
16
|
-
};
|
|
17
6
|
module.exports = function (RED) {
|
|
18
7
|
function S2RmNode(config) {
|
|
19
8
|
RED.nodes.createNode(this, config);
|
|
@@ -97,15 +86,6 @@ module.exports = function (RED) {
|
|
|
97
86
|
}
|
|
98
87
|
const pollIntervalMs = rmConfigNode.instructionPollIntervalMs || 2000;
|
|
99
88
|
const isSkipInstructionStatus = rmConfigNode.skipInstructionStatus === true;
|
|
100
|
-
// Enrich an outgoing instruction message with msg.controlType and the
|
|
101
|
-
// namespaced instruction payload (e.g. msg.ombc, msg.pebc), per the
|
|
102
|
-
// s2-rm-protocol spec. Unknown/unmapped instruction types are left as-is.
|
|
103
|
-
function enrichInstruction(rawMsg) {
|
|
104
|
-
const mapping = INSTRUCTION_CONTROL_TYPE[rawMsg.message_type];
|
|
105
|
-
if (!mapping)
|
|
106
|
-
return {};
|
|
107
|
-
return { controlType: mapping.controlType, [mapping.key]: rawMsg };
|
|
108
|
-
}
|
|
109
89
|
// Poll at the configured interval: dispatch due non-PEBC instructions, prune expired entries.
|
|
110
90
|
// PEBC instructions bypass this queue entirely (see onInstruction) - their timing is owned by s2-pebc.
|
|
111
91
|
const pollTimer = setInterval(() => {
|
|
@@ -126,8 +106,7 @@ module.exports = function (RED) {
|
|
|
126
106
|
if (session && item.instructionId && !isSkipInstructionStatus) {
|
|
127
107
|
session.sendInstructionStatus(item.instructionId, messages_1.InstructionStatus.STARTED);
|
|
128
108
|
}
|
|
129
|
-
|
|
130
|
-
node.send([null, null, outMsg]);
|
|
109
|
+
node.send([null, { payload: item.instruction, cemId: item.cemId, topic: item.instruction.message_type }, null]);
|
|
131
110
|
changed = true;
|
|
132
111
|
continue;
|
|
133
112
|
}
|
|
@@ -166,7 +145,7 @@ module.exports = function (RED) {
|
|
|
166
145
|
if (m.message_type === messages_1.MessageType.PEBC_POWER_CONSTRAINTS && typeof m.id === 'string') {
|
|
167
146
|
node.context().flow.set('pebcConstraintsId', m.id);
|
|
168
147
|
}
|
|
169
|
-
node.send([{ payload: { s2Signal: 'Message', message: msg }, cemId }, null
|
|
148
|
+
node.send([{ payload: { s2Signal: 'Message', message: msg }, cemId }, null]);
|
|
170
149
|
},
|
|
171
150
|
onStateChange: (state) => {
|
|
172
151
|
if (state === session_1.State.CONNECTED) {
|
|
@@ -200,11 +179,11 @@ module.exports = function (RED) {
|
|
|
200
179
|
}
|
|
201
180
|
}
|
|
202
181
|
}
|
|
203
|
-
node.send([null, { payload: msg, cemId, topic: msg.message_type }
|
|
182
|
+
node.send([null, { payload: msg, cemId, topic: msg.message_type }]);
|
|
204
183
|
if (msg.message_type === messages_1.MessageType.SELECT_CONTROL_TYPE) {
|
|
205
184
|
const controlType = msg.control_type || messages_1.ControlType.NO_SELECTION;
|
|
206
185
|
const isActive = controlType !== messages_1.ControlType.NO_SELECTION && controlType !== messages_1.ControlType.NOT_CONTROLABLE;
|
|
207
|
-
node.send([{ payload: { 'S2/0/Active': isActive ? 1 : 0 } }, null
|
|
186
|
+
node.send([{ payload: { 'S2/0/Active': isActive ? 1 : 0 } }, null]);
|
|
208
187
|
if (rmDetails.providesPowerMeasurementTypes.length > 0) {
|
|
209
188
|
node.send([{
|
|
210
189
|
payload: {
|
|
@@ -212,7 +191,7 @@ module.exports = function (RED) {
|
|
|
212
191
|
commodityQuantities: rmDetails.providesPowerMeasurementTypes
|
|
213
192
|
},
|
|
214
193
|
cemId
|
|
215
|
-
}, null
|
|
194
|
+
}, null]);
|
|
216
195
|
}
|
|
217
196
|
}
|
|
218
197
|
},
|
|
@@ -225,8 +204,7 @@ module.exports = function (RED) {
|
|
|
225
204
|
if (msg.message_type === messages_1.MessageType.PEBC_INSTRUCTION) {
|
|
226
205
|
// PEBC schedule accumulation and per-element dispatch timing is owned by s2-pebc -
|
|
227
206
|
// deliver the raw instruction immediately so it can build/dispatch with its own timers.
|
|
228
|
-
|
|
229
|
-
node.send([null, null, outMsg]);
|
|
207
|
+
node.send([null, { payload: msg, cemId, topic: msg.message_type }]);
|
|
230
208
|
return;
|
|
231
209
|
}
|
|
232
210
|
const now = Date.now();
|
|
@@ -235,8 +213,7 @@ module.exports = function (RED) {
|
|
|
235
213
|
if (session && instructionId && !isSkipInstructionStatus) {
|
|
236
214
|
session.sendInstructionStatus(instructionId, messages_1.InstructionStatus.STARTED);
|
|
237
215
|
}
|
|
238
|
-
|
|
239
|
-
node.send([null, null, outMsg]);
|
|
216
|
+
node.send([null, { payload: msg, cemId, topic: msg.message_type }]);
|
|
240
217
|
}
|
|
241
218
|
else {
|
|
242
219
|
if (messageId) {
|
|
@@ -300,7 +277,7 @@ module.exports = function (RED) {
|
|
|
300
277
|
}
|
|
301
278
|
const session = createSession(cemId);
|
|
302
279
|
session.start();
|
|
303
|
-
node.send([null, { topic: 'Connected', cemId }
|
|
280
|
+
node.send([null, { topic: 'Connected', cemId }]);
|
|
304
281
|
node.log(`CEM ${cemId} connected (keepAliveInterval: ${keepAliveInterval}s)`);
|
|
305
282
|
updateStatus();
|
|
306
283
|
done();
|
|
@@ -366,7 +343,7 @@ module.exports = function (RED) {
|
|
|
366
343
|
case 'Disconnect': {
|
|
367
344
|
(_a = sessions.get(cemId)) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
368
345
|
sessions.delete(cemId);
|
|
369
|
-
node.send([null, { topic: 'Disconnected', cemId, reason: 'cem_initiated' }
|
|
346
|
+
node.send([null, { topic: 'Disconnected', cemId, reason: 'cem_initiated' }]);
|
|
370
347
|
node.log(`CEM ${cemId} disconnected`);
|
|
371
348
|
updateStatus();
|
|
372
349
|
done();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nodes/s2-rm/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nodes/s2-rm/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -210,7 +210,7 @@
|
|
|
210
210
|
|
|
211
211
|
<h3>Identity</h3>
|
|
212
212
|
<p><b>Resource ID</b> is a stable UUID identifying this RM to the CEM - it's also used to build the CEM connection URL on <b>s2-cem-config</b>. Auto-generated the first time the node is added; avoid changing it after deployment, since the CEM associates state with this id.</p>
|
|
213
|
-
<p><b>Roles</b> and <b>Control Types</b> are advertised capabilities - at least one of each must be selected. Control types beyond OMBC and PEBC (FRBC, DDBC, PPBC) have no dedicated node yet; their instructions are still forwarded on <b>s2-rm</b>'s
|
|
213
|
+
<p><b>Roles</b> and <b>Control Types</b> are advertised capabilities - at least one of each must be selected. Control types beyond OMBC and PEBC (FRBC, DDBC, PPBC) have no dedicated node yet; their instructions are still forwarded on <b>s2-rm</b>'s "from CEM" output for you to handle yourself.</p>
|
|
214
214
|
|
|
215
215
|
<h3>Power Meas. / Forecast</h3>
|
|
216
216
|
<p>Advertise whether this RM reports <code>PowerMeasurement</code> (as a single 3-phase-symmetric value, or per-phase L1/L2/L3) and/or <code>PowerForecast</code>. These affect what's advertised to the CEM and whether <b>s2-rm</b> emits its <code>PowerMeasurementStart</code> signal on output 1 - they don't gate whether a <code>PowerMeasurement</code>/<code>Forecast</code> command you send is actually forwarded, which happens regardless.</p>
|