wiki: rewrite Home.md per visual-first 14-section template
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
78
wiki/Home.md
78
wiki/Home.md
@@ -1,6 +1,6 @@
|
|||||||
# rotatingMachine
|
# rotatingMachine
|
||||||
|
|
||||||
> **Reflects code as of `afc304b` · regenerated `2026-05-11` via `npm run wiki:all`**
|
> **Reflects code as of `1a9f533` · regenerated `2026-05-11` via `npm run wiki:all`**
|
||||||
> If this banner is stale, the page may be out of date. Treat as informative, not authoritative.
|
> If this banner is stale, the page may be out of date. Treat as informative, not authoritative.
|
||||||
|
|
||||||
## 1. What this node is
|
## 1. What this node is
|
||||||
@@ -206,21 +206,28 @@ Composed in `io/output.js → buildOutput(this)`, then delta-compressed.
|
|||||||
~~~json
|
~~~json
|
||||||
{
|
{
|
||||||
"state": "warmingup",
|
"state": "warmingup",
|
||||||
"flow.predicted.downstream.default": 0.00345,
|
"ctrl": 42.5,
|
||||||
"flow.predicted.atequipment.default": 0.00345,
|
"mode": "auto",
|
||||||
"power.predicted.atequipment.default": 1820,
|
"runtime": 0.0014,
|
||||||
|
"flow.predicted.downstream.default": 12.4,
|
||||||
|
"flow.predicted.atequipment.default": 12.4,
|
||||||
|
"flow.predicted.max.dashboard-sim-upstream": 22.1,
|
||||||
|
"flow.predicted.min.dashboard-sim-upstream": 0,
|
||||||
|
"power.predicted.atequipment.default": 18.2,
|
||||||
"pressure.measured.upstream.dashboard-sim-upstream": 101325,
|
"pressure.measured.upstream.dashboard-sim-upstream": 101325,
|
||||||
"pressure.measured.downstream.dashboard-sim-downstream": 145000,
|
"pressure.measured.downstream.dashboard-sim-downstream": 145000,
|
||||||
"temperature.measured.atequipment.default": 15,
|
"temperature.measured.atequipment.dashboard-sim-upstream": 15,
|
||||||
"atmPressure.measured.atequipment.default": 101325,
|
"atmPressure.measured.atequipment.dashboard-sim-upstream": 101325,
|
||||||
"predictionHealth": {
|
"predictionQuality": "warming",
|
||||||
"quality": "warming",
|
"predictionConfidence": 0.35,
|
||||||
"confidence": 0.35,
|
"predictionPressureSource": "dashboard-sim",
|
||||||
"pressureSource": "dashboard-sim",
|
"predictionFlags": ["pressure_init_warming"],
|
||||||
"flags": ["pressure_init_warming"]
|
"pressureDriftLevel": 0,
|
||||||
},
|
"pressureDriftSource": null,
|
||||||
"cog": 0.62, "NCog": 0.71,
|
"pressureDriftFlags": ["nominal"],
|
||||||
"absDistFromPeak": 0.04, "relDistFromPeak": 0.12
|
"cog": 0.62, "NCog": 0.71, "NCogPercent": 62,
|
||||||
|
"effDistFromPeak": 0.04, "effRelDistFromPeak": 0.12,
|
||||||
|
"moveTimeleft": 0, "maintenanceTime": 0
|
||||||
}
|
}
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
@@ -231,24 +238,22 @@ Position labels are normalised to lowercase in MeasurementContainer keys (`atequ
|
|||||||
```mermaid
|
```mermaid
|
||||||
flowchart TB
|
flowchart TB
|
||||||
subgraph editor["Node-RED editor form"]
|
subgraph editor["Node-RED editor form"]
|
||||||
f1[Asset model dropdown]
|
f1[Asset — supplier / category / model / unit]
|
||||||
f2[Mode current]
|
f2[Position vs parent]
|
||||||
f3[Position vs parent]
|
f3[State times: startup / warmup / shutdown / cooldown]
|
||||||
f4[State times: starting, warmingup, ...]
|
f4[Movement mode + reaction speed]
|
||||||
f5[Movement mode + speed]
|
f5[Process output format]
|
||||||
f6[Position min / max / initial]
|
f6[Database output format]
|
||||||
f7[Allowed sources / actions per mode]
|
f7[Logger — level / enabled]
|
||||||
f8[Output unit (flow, pressure, power)]
|
|
||||||
end
|
end
|
||||||
subgraph cfg["Domain config slice"]
|
subgraph cfg["Domain config slice"]
|
||||||
c1[asset.model]
|
c1[asset.model / asset.unit / asset.supplier / asset.category]
|
||||||
c2[mode.current]
|
c2[functionality.positionVsParent]
|
||||||
c3[functionality.positionVsParent]
|
c3[time.starting / warmingup / stopping / coolingdown]
|
||||||
c4[time.starting / warmingup / stopping / coolingdown]
|
c4[movement.mode / movement.speed]
|
||||||
c5[movement.mode / speed / maxSpeed / interval]
|
c5[output.process]
|
||||||
c6[position.min / max / initial]
|
c6[output.dbase]
|
||||||
c7[mode.allowedSources / allowedActions]
|
c7[general.logging]
|
||||||
c8[general.unit / asset.unit]
|
|
||||||
end
|
end
|
||||||
f1 --> c1
|
f1 --> c1
|
||||||
f2 --> c2
|
f2 --> c2
|
||||||
@@ -257,22 +262,21 @@ flowchart TB
|
|||||||
f5 --> c5
|
f5 --> c5
|
||||||
f6 --> c6
|
f6 --> c6
|
||||||
f7 --> c7
|
f7 --> c7
|
||||||
f8 --> c8
|
|
||||||
```
|
```
|
||||||
|
|
||||||
| Form field | Config key | Default | Range | Where used |
|
| Form field | Config key | Default | Range | Where used |
|
||||||
|---|---|---|---|---|
|
|---|---|---|---|---|
|
||||||
| Asset model | `asset.model` | `Unknown` | string (must resolve in curve loader) | `_setupCurves` |
|
| Asset model | `asset.model` | `Unknown` | string (must resolve in curve loader) | `_setupCurves` |
|
||||||
| Mode | `mode.current` | `auto` | enum (`auto`, `manual`) | `flowController.handle` source check |
|
| Asset flow unit | `asset.unit` | `m3/h` | unit string | unit policy `output.flow` |
|
||||||
| Position vs parent | `functionality.positionVsParent` | `atEquipment` | enum | child-register payload + event suffix |
|
| Position vs parent | `functionality.positionVsParent` | `atEquipment` | enum (`upstream`, `atEquipment`, `downstream`) | child-register payload + event suffix |
|
||||||
| State time — starting | `time.starting` | `10` (s) | ≥ 0 | FSM timing |
|
| State time — starting | `time.starting` | `10` (s) | ≥ 0 | FSM timing |
|
||||||
| State time — warmingup | `time.warmingup` | `5` (s) | ≥ 0 | FSM timing |
|
| State time — warmingup | `time.warmingup` | `5` (s) | ≥ 0 | FSM timing |
|
||||||
| State time — stopping | `time.stopping` | `5` (s) | ≥ 0 | FSM timing |
|
| State time — stopping | `time.stopping` | `5` (s) | ≥ 0 | FSM timing |
|
||||||
| State time — coolingdown | `time.coolingdown` | `10` (s) | ≥ 0 | FSM timing |
|
| State time — coolingdown | `time.coolingdown` | `10` (s) | ≥ 0 | FSM timing |
|
||||||
| Movement mode | `movement.mode` | `dynspeed` | enum (`staticspeed`, `dynspeed`) | position trajectory |
|
| Movement mode | `movement.mode` | `staticspeed` | enum (`staticspeed`, `dynspeed`) | position trajectory |
|
||||||
| Movement speed | `movement.speed` | `1` | ≤ `maxSpeed` | trajectory rate |
|
| Reaction speed | `movement.speed` | `1` | ≤ `maxSpeed` | trajectory ramp rate (%/s) |
|
||||||
| Position min/max | `position.min` / `position.max` | `0` / `100` | numeric | setpoint clamp |
|
| Process output format | `output.process` | `process` | enum (`process`, `json`, `csv`) | Port 0 formatter |
|
||||||
| Output unit (flow) | `general.unit` | `l/s` | unit string | unit policy `output.flow` |
|
| Database output format | `output.dbase` | `influxdb` | enum (`influxdb`, `json`, `csv`) | Port 1 formatter |
|
||||||
|
|
||||||
## 10. State chart
|
## 10. State chart
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user