docs: rewrite README with actual project content
Some checks failed
CI / lint-and-test (push) Has been cancelled

Replace generic Dutch template (with placeholder text) with a proper
README showing: node inventory table, architecture summary, install
instructions, test commands, documentation links, and license.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
znetsixe
2026-04-07 17:25:03 +02:00
parent 7ded2a4415
commit bac6c620b1

224
README.md
View File

@@ -1,147 +1,77 @@
# R&D Bouwblok: EVOLV (Edge-Layer Evolution for Optimized Virtualization)
## Over
Dit bouwblok is ontwikkeld door het R&D-team van Waterschap Brabantse Delta voor gebruik in Node-RED.
> *[Voeg hier een korte toelichting toe over de specifieke functionele werking van dit bouwblok]*
---
## Licentie
Deze software valt onder de **Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)**-licentie.
- Gebruik, aanpassing en verspreiding is toegestaan voor **niet-commerciële doeleinden**, mits duidelijke naamsvermelding naar Waterschap Brabantse Delta.
- Voor **commercieel gebruik** is voorafgaande toestemming vereist.
📧 Contact: [rdlab@brabantsedelta.nl](mailto:rdlab@brabantsedelta.nl)
🔗 Licentie: [https://creativecommons.org/licenses/by-nc/4.0/](https://creativecommons.org/licenses/by-nc/4.0/)
---
## Generieke opbouw van bouwblokken
- Reageren automatisch op inkomende data (bijv. de positie van een object bepaalt de berekening).
- Ondersteunen koppeling van complexe dataketens tussen processen.
- Gestandaardiseerde input/output:
- Output = procesdata
- Opslaginformatie + relatieve positionering t.o.v. andere objecten
- Ontworpen voor combinatie met andere bouwblokken (ook van derden).
- Open source en vrij beschikbaar voor iedereen.
---
## Installatie Alle bouwblokken (via EVOLV)
Alle bouwblokken van het R&D-team zijn gebundeld in de **EVOLV-repository**, waarin gebruik wordt gemaakt van Git submodules.
### Eerste keer klonen:
```bash
git clone --recurse-submodules https://gitea.wbd-rd.nl/RnD/EVOLV.git
cd EVOLV
```
Of, als je zonder submodules hebt gekloond:
```bash
git submodule init
git submodule update
```
### Submodules updaten:
Om alle submodules te updaten naar de laatste versie van hun eigen repository:
```bash
git submodule update --remote --merge
```
Individuele submodule updaten:
```bash
cd nodes/<bouwblok-naam>
git checkout main
git pull origin main
cd ../..
git add nodes/<bouwblok-naam>
git commit -m "Update submodule <bouwblok-naam>"
```
---
## Installatie Enkel bouwblok
1. Clone de gewenste repository:
```bash
git clone https://gitea.wbd-rd.nl/<repo-naam>.git
```
2. Kopieer het bouwblok naar je Node-RED map:
```bash
mkdir -p ~/.node-red/nodes
cp -r <pad-naar-geclonede-map> ~/.node-red/nodes/
```
3. Controleer of `settings.js` het volgende bevat:
```js
nodesDir: './nodes',
```
4. Herstart Node-RED:
```bash
node-red-stop
node-red-start
```
---
## Bijdragen (Fork & Pull Request)
Wil je bijdragen aan de R&D bouwblokken? Volg dan dit stappenplan:
1. Fork maken
- Maak een fork van de gewenste R&D repository in Gitea.
- Je krijgt hiermee een eigen kopie van de repository in je account.
2. Wijzigingen aanbrengen
- Clone je fork lokaal en maak een nieuwe branch (bijv. feature/mijn-wijziging).
- Breng je wijzigingen aan, commit en push de branch terug naar je fork.
3. Pull Request indienen
- Ga in Gitea naar je fork en open de branch.
- Klik op New Pull Request.
- Stel de R&D repository in bij samenvoegen met.
- Stel jouw fork/branch in bij trekken van.
4. Beschrijving toevoegen
- Geef een duidelijke titel en beschrijving.
- Verwijs indien van toepassing naar een issue met de notatie #<nummer> (bijv. #42).
5. Code review en merge
- De beheerders van de R&D repository beoordelen je wijziging.
- Na goedkeuring wordt de wijziging opgenomen in de R&D repository.
----
## Contact
📧 rdlab@brabantsedelta.nl
# EVOLV Edge-Layer Evolution for Optimized Virtualization
Node-RED custom nodes package voor de automatisering van afvalwaterzuiveringsinstallaties. Ontwikkeld door het R&D-team van Waterschap Brabantse Delta. Volgt de ISA-88 (S88) batch control standaard.
## Nodes
| Node | Functie | S88-niveau |
|------|---------|------------|
| **rotatingMachine** | Individuele pomp/compressor/blower aansturing | Equipment |
| **machineGroupControl** | Multi-pomp optimalisatie (BEP-Gravitation) | Unit |
| **pumpingStation** | Pompgemaal met hydraulische context | Unit |
| **valve** | Individuele klep modellering | Equipment |
| **valveGroupControl** | Klep groep coordinatie | Unit |
| **reactor** | Biologische reactor (ASM kinetiek) | Unit |
| **settler** | Nabezinker / slibscheiding | Unit |
| **monster** | Multi-parameter biologische monitoring | Equipment |
| **measurement** | Sensor signaalconditionering | Control Module |
| **diffuser** | Beluchting aansturing | Equipment |
| **dashboardAPI** | InfluxDB telemetrie + FlowFuse dashboards | — |
| **generalFunctions** | Gedeelde bibliotheek (predict, PID, convert, etc.) | — |
## Architectuur
Elke node volgt een drie-lagen patroon:
1. **Entry file** (`<naam>.js`) — registratie bij Node-RED, admin endpoints
2. **nodeClass** (`src/nodeClass.js`) — Node-RED adapter (tick loop, routing, status)
3. **specificClass** (`src/specificClass.js`) — pure domeinlogica (fysica, toestandsmachines)
Drie output-poorten per node: **Port 0** = procesdata, **Port 1** = InfluxDB telemetrie, **Port 2** = registratie/besturing.
## Installatie
```bash
git clone --recurse-submodules https://gitea.wbd-rd.nl/RnD/EVOLV.git
cd EVOLV
npm install
```
Submodules updaten:
```bash
git submodule update --remote --merge
```
Enkel bouwblok installeren in Node-RED:
```bash
mkdir -p ~/.node-red/nodes
cp -r nodes/<bouwblok-naam> ~/.node-red/nodes/
```
## Testen
```bash
# Alle nodes
bash scripts/test-all.sh
# Specifieke node
node --test nodes/<nodeName>/test/basic/*.test.js
node --test nodes/<nodeName>/test/integration/*.test.js
node --test nodes/<nodeName>/test/edge/*.test.js
```
## Documentatie
- **`wiki/`** — Projectwiki met architectuur, bevindingen en metrics ([index](wiki/index.md))
- **`CLAUDE.md`** — Claude Code projectgids
- **`manuals/node-red/`** — FlowFuse en Node-RED referentiedocumentatie
- **`.agents/`** — Agent skills, beslissingen en function-anchors
## Licentie
**Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)**
Gebruik, aanpassing en verspreiding is toegestaan voor niet-commerciele doeleinden, mits naamsvermelding naar Waterschap Brabantse Delta. Voor commercieel gebruik is voorafgaande toestemming vereist.
## Contact
rdlab@brabantsedelta.nl