263 lines
6.0 KiB
JSON
263 lines
6.0 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "bps/community-energy",
|
|
"title": "Community-Scale Energy Schema",
|
|
"description": "District energy system parameters for community scale. Covers plants, networks, pipes, and building connections.",
|
|
"$defs": {
|
|
"_IdentifiedObject": {
|
|
"type": "object",
|
|
"properties": {
|
|
"identifier": {
|
|
"type": "string",
|
|
"pattern": "^[.A-Za-z0-9_-]+$",
|
|
"minLength": 1,
|
|
"maxLength": 100
|
|
},
|
|
"display_name": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"user_data": {
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"identifier"
|
|
]
|
|
},
|
|
"PlantType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"CHP",
|
|
"GasBoiler",
|
|
"ElectricBoiler",
|
|
"GroundSourceHeatPump",
|
|
"AirSourceHeatPump",
|
|
"Chiller",
|
|
"CoolingTower",
|
|
"ThermalStorage",
|
|
"SolarThermal",
|
|
"PV"
|
|
]
|
|
},
|
|
"NetworkType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"CHW",
|
|
"HW",
|
|
"Steam",
|
|
"Electricity"
|
|
]
|
|
},
|
|
"Plant": {
|
|
"type": "object",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/_IdentifiedObject"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"const": "Plant"
|
|
},
|
|
"plant_type": {
|
|
"$ref": "#/$defs/PlantType"
|
|
},
|
|
"rated_capacity": {
|
|
"type": "number",
|
|
"exclusiveMinimum": 0,
|
|
"description": "kW"
|
|
},
|
|
"cop": {
|
|
"type": "number",
|
|
"exclusiveMinimum": 0
|
|
},
|
|
"fuel_type": {
|
|
"type": "string",
|
|
"default": "natural_gas"
|
|
},
|
|
"location": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "number"
|
|
},
|
|
"minItems": 3,
|
|
"maxItems": 3
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"plant_type",
|
|
"rated_capacity"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
]
|
|
},
|
|
"Pipe": {
|
|
"type": "object",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/_IdentifiedObject"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"const": "Pipe"
|
|
},
|
|
"start_node": {
|
|
"type": "string"
|
|
},
|
|
"end_node": {
|
|
"type": "string"
|
|
},
|
|
"length": {
|
|
"type": "number",
|
|
"exclusiveMinimum": 0,
|
|
"description": "m"
|
|
},
|
|
"diameter": {
|
|
"type": "number",
|
|
"exclusiveMinimum": 0,
|
|
"description": "m"
|
|
},
|
|
"insulation_thickness": {
|
|
"type": "number",
|
|
"minimum": 0,
|
|
"default": 0
|
|
},
|
|
"insulation_conductivity": {
|
|
"type": "number",
|
|
"exclusiveMinimum": 0,
|
|
"default": 0.04
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"start_node",
|
|
"end_node",
|
|
"length",
|
|
"diameter"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
]
|
|
},
|
|
"Network": {
|
|
"type": "object",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/_IdentifiedObject"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"const": "Network"
|
|
},
|
|
"network_type": {
|
|
"$ref": "#/$defs/NetworkType"
|
|
},
|
|
"supply_temperature": {
|
|
"type": "number",
|
|
"description": "Celsius"
|
|
},
|
|
"return_temperature": {
|
|
"type": "number",
|
|
"description": "Celsius"
|
|
},
|
|
"pipes": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/Pipe"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"network_type",
|
|
"pipes"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
]
|
|
},
|
|
"BuildingConnection": {
|
|
"type": "object",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/_IdentifiedObject"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"const": "BuildingConnection"
|
|
},
|
|
"building_ref": {
|
|
"type": "string"
|
|
},
|
|
"network_ref": {
|
|
"type": "string"
|
|
},
|
|
"design_flow_rate": {
|
|
"type": "number",
|
|
"exclusiveMinimum": 0
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"building_ref",
|
|
"network_ref"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
]
|
|
},
|
|
"DistrictEnergy": {
|
|
"type": "object",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/_IdentifiedObject"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"const": "DistrictEnergy"
|
|
},
|
|
"plants": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/Plant"
|
|
}
|
|
},
|
|
"networks": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/Network"
|
|
}
|
|
},
|
|
"connections": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/BuildingConnection"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"type"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
]
|
|
}
|
|
}
|
|
} |