// SITUATIES — Probleem-gedreven overzichtspagina (single longform sales page)
// Composed from the user's selection: 1-V1 / 2-V4 / 3-V3 / 4-V5 / 5-V2 / 6-V3 / 7-V3 / 8-V2 / 9-V2
const SITUATIES_HTML = `
SITUATIE-OVERZICHT · 4 SCENARIO'S
Elke locatie loopt vast
op een ander energieprobleem.
WattIQ levert modulaire energiesystemen voor bouwplaatsen, tijdelijke projecten, laadpleinen en locaties zonder betrouwbare netcapaciteit. Vier veelvoorkomende situaties — vier configuraties.
02 — Reframe
Wat speelt er
op jouw locatie?
START · VRAAG
"Wat is het grootste
energie-probleem
op de locatie?"
— Situatie 01 · Rotterdam
Battery + solar.
Een dag op locatie.
CORE FLEX 100
RAY FLEX 1
WIQ-CASE-001
Live telemetry · < 50 msEMS v3.4 · CONTROL
SoC battery
82%
Geladen via solar — 06:00 tot nu
Solar harvest
21.4kWh
Dagopbrengst tot 14:00
Site load
38kW
Kraan + boormachine + keet
Genset uren
0.0u
Niet gestart deze week
Solar → batterydirect-DC21 kW
Battery → sitekraan + keet38 kW
Gensetstandby— —
WIQ-CASE-001 · ROTTERDAMSYNCED 14:02:18
— Situatie 02 · Eindhoven
Tijdelijk vermogen.
Modulair op trailer.
CORE FLEX 100 · TRAILER
CORE FLEX 100 · STACK
6 mnd · WIQ-CASE-002
Live telemetry · < 50 msEMS v3.4 · CONTROL
Capaciteit
200kWh
2× Core Flex parallel
Deploy time
1dag
Plaatsen + commissioning
Demob time
1dag
Verhuizen naar volgende site
Projectduur
6mnd
Schaalbaar in modules
Battery → sitecontinue load68 kW
Net → batteryoff-peak charging42 kW
Gensetniet aangesloten— —
WIQ-CASE-002 · EINDHOVENSYNCED 14:02:19
— Situatie 03 · Brabant
Diesel was gewoonte.
Niet meer.
WATTIQ FUSION
CORE FLEX 100
−62% YTD · WIQ-CASE-003
Live telemetry · < 50 msEMS v3.4 · CONTROL
Diesel saved YTD
−62%
Baseline 14.200 L → 5.400 L
Genset runtime
182u
12 mnd · 32% van baseline
CO₂ vermeden
23.4t
CSRD-export gereed
SoC battery
74%
Battery-first dispatch
Battery → sitebattery-first62%
Solar → batterydirect-DC18%
Genseton-demand20%
WIQ-CASE-003 · BRABANTSYNCED 14:02:21
— Situatie 04 · Utrecht
Zes voertuigen.
Eén aansluiting.
GRID 1000 · 1 000 kWh
GRID 200 · 200 kWh
500 kW DC OUT · 6 PORTS
412 kW · WIQ-CASE-004
Live telemetry · < 50 msEMS v3.4 · CONTROL
DC dispatch
412kW
5/6 chargers in gebruik
Grid draw
72kW
Onder 80 kVA limiet
SoC buffer
58%
Re-charge schedule 22:00
Sessies vandaag
34
+18% t.o.v. weekgemiddelde
P1 · BMW iXcharging · 78%62 kW
P2 · Tesla M3charging · 42%110 kW
P3 · Polestar 2charging · 88%88 kW
P4idle · auth wachten— —
WIQ-CASE-004 · UTRECHTSYNCED 14:02:24
07 — Vergelijk
Mijn locatie...
Heeft een
netaansluiting?Q01 · capaciteit
Geen
Beperkt
Voldoende
Niet relevant
Hoe lang draait
het project?Q02 · duur
2–18 mnd
1–3 jaar
Permanent
Onbekend
Wat draait er nu?Q03 · status quo
Niets · greenfield
Diesel-aggregaten
Vaste aansluiting
Mix
Wat moet erbij?Q04 · vraag
Bouw-vermogen
EV-laders
Industrie-load
Mix
● BESTE MATCH
op basis van keuzes
Situatie 01
Geen netaansluiting
Aanbevolen configuratieBattery Core 600 kWh
Hybrid Bridge backup
Control monitoring
+ Solar Ray (optie)
08 — Systeem-architectuur
Eén kern,
vijf bouwblokken.
Battery Core in het midden — altijd. Daaromheen klik je modules aan op basis van de situatie. Eén controlelaag stuurt alles aan.
Verplicht
Modulair
Software-laag
ModuleWat het doetTypisch in
Core · verplichtBuffer · battery-first dispatchAlle situaties
Bridge · backupHVO/H₂ generator als laatste redmiddelSit 01 · 03
Fusion · hybridAggregaat + battery onder één EMSSit 03
Grid · chargingDC-snelladers + load-balancingSit 04
Ray · solar220–500 kWp foldable arraysSit 01 · 02
Control · softwareEMS · audit-trail · CSRD-exportAlle situaties
09 — Twee paden
Wat past bij nu?
Twee manieren om verder te gaan. Eén voor mensen die concreet zoeken; één voor mensen die eerst willen begrijpen.
`;
// === Situatie picker · scoring matrix ===
// For each situation, score = Σ (weight when answer matches preferred value).
// Index by [sit][q][v] = weight. Higher = better match for that situation.
const SIT_SCORES = {
"sit-01": {
// Geen netaansluiting · bouwplaats / greenfield
0: { 0:3, 1:1, 2:0, 3:1 }, // Q01 net
1: { 0:1, 1:2, 2:2, 3:1 }, // Q02 duur
2: { 0:3, 1:1, 2:0, 3:1 }, // Q03 status
3: { 0:3, 1:0, 2:1, 3:1 }, // Q04 vraag
},
"sit-02": {
// Tijdelijk projectvenster · mobiel
0: { 0:1, 1:2, 2:1, 3:1 },
1: { 0:3, 1:1, 2:0, 3:2 },
2: { 0:2, 1:1, 2:1, 3:2 },
3: { 0:2, 1:1, 2:2, 3:2 },
},
"sit-03": {
// Diesel vervangen
0: { 0:1, 1:2, 2:1, 3:1 },
1: { 0:1, 1:2, 2:3, 3:1 },
2: { 0:0, 1:3, 2:0, 3:2 },
3: { 0:2, 1:1, 2:2, 3:2 },
},
"sit-04": {
// EV laden, geen netcapaciteit
0: { 0:0, 1:3, 2:1, 3:1 },
1: { 0:1, 1:2, 2:2, 3:1 },
2: { 0:1, 1:1, 2:2, 3:2 },
3: { 0:0, 1:3, 2:0, 3:1 },
},
};
const SIT_META = {
"sit-01": {
n: "Situatie 01",
h: "Geen netaansluiting",
cfg: ["Battery Core 600 kWh","Hybrid Bridge backup","Control monitoring","+ Solar Ray (optie)"],
},
"sit-02": {
n: "Situatie 02",
h: "Tijdelijk projectvenster",
cfg: ["Core Flex 100 (rental)","Modulair stack 200–500 kWh","Control monitoring","Trailer · 1 dag deploy"],
},
"sit-03": {
n: "Situatie 03",
h: "Diesel vervangen",
cfg: ["WattIQ Fusion hybride","Core Flex 100 buffer","Control · battery-first","Solar Ray (optie)"],
},
"sit-04": {
n: "Situatie 04",
h: "EV laden, geen netcapaciteit",
cfg: ["Grid 1000 + Grid 200","6× DC out · 500 kW","Control fleet-balancing","Net-aansluiting blijft 80 kVA"],
},
};
function wireSituatiePicker(root){
const picker = root.querySelector("[data-pick]");
if (!picker) return;
const result = picker.querySelector("[data-result]");
const rTitle = picker.querySelector("[data-result-title]");
const rCfg = picker.querySelector("[data-result-cfg]");
const rCta = picker.querySelector("[data-result-cta]");
const answers = [0,0,0,0]; // defaults match the .sel marks in HTML
function compute(){
let best = "sit-01", bestScore = -1;
for (const sit of Object.keys(SIT_SCORES)){
let s = 0;
for (let q=0; q<4; q++){
s += (SIT_SCORES[sit][q][answers[q]] || 0);
}
if (s > bestScore){ bestScore = s; best = sit; }
}
const m = SIT_META[best];
rTitle.innerHTML = m.n + "
" + m.h + "";
rCfg.innerHTML = "Aanbevolen configuratie" + m.cfg.join("
");
rCta.setAttribute("href", "#" + best);
rCta.innerHTML = "Bekijk " + m.n.toLowerCase() + " →";
}
picker.querySelectorAll(".qrow").forEach(row => {
const q = parseInt(row.getAttribute("data-q"), 10);
row.querySelectorAll(".opt").forEach(opt => {
opt.addEventListener("click", () => {
row.querySelectorAll(".opt").forEach(o => o.classList.remove("sel"));
opt.classList.add("sel");
answers[q] = parseInt(opt.getAttribute("data-v"), 10);
compute();
});
});
});
compute();
}
window.SiteSituaties = function SiteSituaties() {
const ref = React.useRef(null);
React.useEffect(() => {
if (ref.current) wireSituatiePicker(ref.current);
}, []);
return (
{typeof Footer !== "undefined" ?
: null}
);
};