Water supply group (source, tank, pump, valve, junction, consumer) and power group (generator, transformer, switch, load) with port configs, physics property specs, pipe/cable/insulation catalogues and a demo waterworks document. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
163 lines
8.1 KiB
JSON
163 lines
8.1 KiB
JSON
{
|
|
"relations": [
|
|
{ "id": "water", "name": "Water", "color": "#1c78c0", "darkColor": "#4aa3e8" },
|
|
{ "id": "power", "name": "Power", "color": "#d99000", "darkColor": "#f0b429" }
|
|
],
|
|
"catalogues": [
|
|
{
|
|
"id": "pipe_series",
|
|
"name": "Pipe series",
|
|
"items": [
|
|
{ "id": "dn50", "name": "DN50 Steel", "attributes": { "diameter": 50, "material": "steel" } },
|
|
{ "id": "dn80", "name": "DN80 Steel", "attributes": { "diameter": 80, "material": "steel" } },
|
|
{ "id": "dn100", "name": "DN100 Steel", "attributes": { "diameter": 100, "material": "steel" } },
|
|
{ "id": "dn150", "name": "DN150 Steel", "attributes": { "diameter": 150, "material": "steel" } },
|
|
{ "id": "pe63", "name": "PE63 Plastic", "attributes": { "diameter": 63, "material": "PE" } },
|
|
{ "id": "pe110", "name": "PE110 Plastic","attributes": { "diameter": 110, "material": "PE" } }
|
|
]
|
|
},
|
|
{
|
|
"id": "insulation",
|
|
"name": "Insulation options",
|
|
"items": [
|
|
{ "id": "foam", "name": "PU foam shell" },
|
|
{ "id": "wool", "name": "Mineral wool" },
|
|
{ "id": "heating", "name": "Heat tracing" },
|
|
{ "id": "coating", "name": "Anticorrosive coating" }
|
|
]
|
|
},
|
|
{
|
|
"id": "cable_series",
|
|
"name": "Cable series",
|
|
"items": [
|
|
{ "id": "cu16", "name": "Cu 16 mm²", "attributes": { "section": 16 } },
|
|
{ "id": "cu35", "name": "Cu 35 mm²", "attributes": { "section": 35 } },
|
|
{ "id": "al50", "name": "Al 50 mm²", "attributes": { "section": 50 } }
|
|
]
|
|
}
|
|
],
|
|
"edgeProperties": {
|
|
"water": [
|
|
{ "id": "length", "name": "Length", "group": "Physics", "type": "float", "default": 10.0, "unit": "m", "min": 0.1, "max": 100000 },
|
|
{ "id": "diameter", "name": "Diameter", "group": "Physics", "type": "float", "default": 100.0, "unit": "mm", "min": 10, "max": 2000 },
|
|
{ "id": "flowRate", "name": "Flow rate", "group": "Physics", "type": "float", "default": 0.0, "unit": "m³/h", "readOnly": true },
|
|
{ "id": "flowType", "name": "Flow type", "group": "Physics", "type": "enum", "values": ["Laminar", "Transitional", "Turbulent"], "default": "Laminar" },
|
|
{ "id": "series", "name": "Pipe series", "group": "Physics", "type": "catalogueItem", "catalogue": "pipe_series" },
|
|
{ "id": "extras", "name": "Extras", "group": "Physics", "type": "catalogueItems", "catalogue": "insulation", "default": [] }
|
|
],
|
|
"power": [
|
|
{ "id": "length", "name": "Length", "group": "Physics", "type": "float", "default": 10.0, "unit": "m", "min": 0.1, "max": 100000 },
|
|
{ "id": "series", "name": "Cable", "group": "Physics", "type": "catalogueItem", "catalogue": "cable_series" },
|
|
{ "id": "voltage", "name": "Voltage", "group": "Physics", "type": "enum", "values": ["0.4 kV", "6 kV", "10 kV"], "default": "0.4 kV" },
|
|
{ "id": "flowRate","name": "Load", "group": "Physics", "type": "float", "default": 0.0, "unit": "kW", "readOnly": true }
|
|
]
|
|
},
|
|
"nodeTypes": [
|
|
{
|
|
"id": "water_source", "name": "Source", "group": "Water supply",
|
|
"svg": ":/svg/water_source.svg", "size": [60, 60],
|
|
"ports": [
|
|
{ "id": "out", "relation": "water", "direction": "out", "pos": [1.0, 0.5], "side": "right", "maxConnections": 0 }
|
|
],
|
|
"properties": [
|
|
{ "id": "supply", "name": "Supply", "group": "Physics", "type": "float", "default": 10.0, "unit": "m³/h", "min": 0, "max": 100000 },
|
|
{ "id": "elevation", "name": "Elevation", "group": "Physics", "type": "float", "default": 0.0, "unit": "m" }
|
|
]
|
|
},
|
|
{
|
|
"id": "tank", "name": "Tank", "group": "Water supply",
|
|
"svg": ":/svg/tank.svg", "size": [60, 60],
|
|
"ports": [
|
|
{ "id": "in", "relation": "water", "direction": "in", "pos": [0.0, 0.5], "side": "left" },
|
|
{ "id": "out", "relation": "water", "direction": "out", "pos": [1.0, 0.5], "side": "right" }
|
|
],
|
|
"properties": [
|
|
{ "id": "volume", "name": "Volume", "group": "Physics", "type": "float", "default": 50.0, "unit": "m³", "min": 0, "max": 100000 }
|
|
]
|
|
},
|
|
{
|
|
"id": "pump", "name": "Pump", "group": "Water supply",
|
|
"svg": ":/svg/pump.svg", "size": [60, 60],
|
|
"ports": [
|
|
{ "id": "in", "relation": "water", "direction": "in", "pos": [0.0, 0.5], "side": "left" },
|
|
{ "id": "out", "relation": "water", "direction": "out", "pos": [1.0, 0.5], "side": "right" },
|
|
{ "id": "pwr", "relation": "power", "direction": "in", "pos": [0.5, 0.0], "side": "top" }
|
|
],
|
|
"properties": [
|
|
{ "id": "head", "name": "Head", "group": "Physics", "type": "float", "default": 20.0, "unit": "m", "min": 0, "max": 2000 },
|
|
{ "id": "power", "name": "Rated power","group": "Physics", "type": "float", "default": 5.5, "unit": "kW", "min": 0, "max": 10000 }
|
|
]
|
|
},
|
|
{
|
|
"id": "valve", "name": "Valve", "group": "Water supply",
|
|
"svg": ":/svg/valve.svg", "size": [50, 50],
|
|
"ports": [
|
|
{ "id": "in", "relation": "water", "direction": "inout", "pos": [0.0, 0.5], "side": "left" },
|
|
{ "id": "out", "relation": "water", "direction": "inout", "pos": [1.0, 0.5], "side": "right" }
|
|
],
|
|
"properties": [
|
|
{ "id": "state", "name": "State", "group": "Physics", "type": "enum", "values": ["Open", "Closed", "Throttled"], "default": "Open" }
|
|
]
|
|
},
|
|
{
|
|
"id": "junction", "name": "Junction", "group": "Water supply",
|
|
"svg": ":/svg/junction.svg", "size": [40, 40],
|
|
"ports": [
|
|
{ "id": "w", "relation": "water", "direction": "inout", "pos": [0.0, 0.5], "side": "left", "maxConnections": 0 },
|
|
{ "id": "e", "relation": "water", "direction": "inout", "pos": [1.0, 0.5], "side": "right", "maxConnections": 0 },
|
|
{ "id": "n", "relation": "water", "direction": "inout", "pos": [0.5, 0.0], "side": "top", "maxConnections": 0 },
|
|
{ "id": "s", "relation": "water", "direction": "inout", "pos": [0.5, 1.0], "side": "bottom", "maxConnections": 0 }
|
|
]
|
|
},
|
|
{
|
|
"id": "consumer", "name": "Consumer", "group": "Water supply",
|
|
"svg": ":/svg/consumer.svg", "size": [60, 60],
|
|
"ports": [
|
|
{ "id": "in", "relation": "water", "direction": "in", "pos": [0.0, 0.5], "side": "left" }
|
|
],
|
|
"properties": [
|
|
{ "id": "demand", "name": "Demand", "group": "Physics", "type": "float", "default": 10.0, "unit": "m³/h", "min": 0, "max": 100000 }
|
|
]
|
|
},
|
|
{
|
|
"id": "generator", "name": "Generator", "group": "Power",
|
|
"svg": ":/svg/generator.svg", "size": [60, 60],
|
|
"ports": [
|
|
{ "id": "out", "relation": "power", "direction": "out", "pos": [1.0, 0.5], "side": "right", "maxConnections": 0 }
|
|
],
|
|
"properties": [
|
|
{ "id": "supply", "name": "Output power", "group": "Physics", "type": "float", "default": 100.0, "unit": "kW", "min": 0, "max": 1000000 }
|
|
]
|
|
},
|
|
{
|
|
"id": "transformer", "name": "Transformer", "group": "Power",
|
|
"svg": ":/svg/transformer.svg", "size": [60, 60],
|
|
"ports": [
|
|
{ "id": "in", "relation": "power", "direction": "in", "pos": [0.0, 0.5], "side": "left" },
|
|
{ "id": "out", "relation": "power", "direction": "out", "pos": [1.0, 0.5], "side": "right", "maxConnections": 0 }
|
|
]
|
|
},
|
|
{
|
|
"id": "switch", "name": "Switch", "group": "Power",
|
|
"svg": ":/svg/switch.svg", "size": [50, 50],
|
|
"ports": [
|
|
{ "id": "a", "relation": "power", "direction": "inout", "pos": [0.0, 0.5], "side": "left" },
|
|
{ "id": "b", "relation": "power", "direction": "inout", "pos": [1.0, 0.5], "side": "right" }
|
|
],
|
|
"properties": [
|
|
{ "id": "state", "name": "State", "group": "Physics", "type": "enum", "values": ["Closed", "Open"], "default": "Closed" }
|
|
]
|
|
},
|
|
{
|
|
"id": "load", "name": "Load", "group": "Power",
|
|
"svg": ":/svg/consumer.svg", "size": [60, 60],
|
|
"ports": [
|
|
{ "id": "in", "relation": "power", "direction": "in", "pos": [0.0, 0.5], "side": "left" }
|
|
],
|
|
"properties": [
|
|
{ "id": "demand", "name": "Power demand", "group": "Physics", "type": "float", "default": 15.0, "unit": "kW", "min": 0, "max": 1000000 }
|
|
]
|
|
}
|
|
]
|
|
}
|