opengridcc / opengrid-dev

Open source building monitoring, analysis and control
Apache License 2.0
26 stars 21 forks source link

[Request] Add location to houseprint #50

Closed JrtPec closed 8 years ago

JrtPec commented 9 years ago

It would be nice to have a location (city), coördinate, ... in the houseprint: I'm designing analyses that use weather data, mainly degree days, and I figure that hardcoding 'Leuven' in the analysis isn't ideal.

pedrusky commented 9 years ago

Dag Jan,

Ik zie geregeld via GitHub wat info/vragen passeren over de houseprint, als ik met iets kan helpen dan laat je het maar weten. Zelf ben ik de end-2-end ontwikkelaar van http://www.energieid.be, en veel van je opmerkingen klinken vertrouwd in de oren. Het opbouwen van een houseprint structuur kan je uiteraard op 101 manieren, ik stuur je hieronder de JSON structuur die wij gebruiken. Deze bevat o.a. het land, postcode en gemeente. Een adres of coördinaat hebben we niet, naar privacy toe vragen we bewust zo weinig mogelijk persoonlijke gegevens op.

Ik heb gekozen om te spreken van een dossier (record), waaronder meetpunten gedefinieerd worden. Houseprint info beschouw ik als een simpele set van contextgegevens. Voor de berekeningsengine achter EnergieID is het belangrijk om de meetgegevens van verschillende meetpunten op de juiste manier te combineren. Om dit flexibel te maken wordt bij elk meetpunt beschreven wat er gemeten wordt (= de metriek), en welke karakteristieken de meetwaarde heeft (= de dimensie). Eenzelfde meetpunt kan meetgegevens leveren voor meerdere metrieken met elk andere dimensies. De JSON zal dit wel duidelijk maken. Bedoeling van die metrics & dimensions is filtering en grouping (bijv. in MongoDB). Stel, je wenst het totaal elektriciteitsverbruik van een gebouw/dossier te weten, maar gegroepeerd op type stroom (hernieuwbaar/grijze stroom), dan kan dat via die metrics en dimensions. Je moet dan niet meer naar specifieke meter-/meetpunteigenschappen kijken. Google Analytics gebruikt dezelfde generieke oplossing (metrics & dimensions) om rapporten te bouwen.

Indien de Open Grid gebruikers een account hebben op EnergieID, kunnen we voor elk van hen dergelijke JSON aanleveren, inclusief de eigenschappen van datakoppeling (flukso token, flukso sensor id). De structuur van de JSON kan zeker nog aangepast worden, en ook bijkomende informatie kunnen we opvragen via onze User Interface.

Bekijk het eens, ik hoor het wel.

Met vriendelijke groeten,

Diedrik Kuypers EnergieID cvba-so www.energieID.behttp://www.energieID.be

{ "id": 14092349, "version": 1, "recordNumber": "EA-14092349", "recordType": "household", "displayName": "Mijn woning", "created": "2010-12-08T16:17:09Z", "status": "active", "context": { "category": "dwelling", "type": "semi-detached", "familySize": 5, "constructionYear": "<1985", "renovationYear": "<2005", "surface": 180, "principal": true, "occupier": "owner", "country": "BE", "city": "Vremde", "postalCode": "2531", "heating": "natural gas", "auxiliaryHeating": "firewood", "hotWater": "natural gas", "cooking": "natural gas", "energyEfficiency": "traditional", "energyPerformance": 346, "installations": [ "solar panels", "solar boiler" ] }, "weatherStations": [ { "name": "bru" } ], "points": [ { "id": "496d64a3-1177-4370-91c8-39d0e5cce157", "displayName": "Elektriciteitsmeter (2) (dag)", "serialNumber": "145548", "readings": "continuous", "supplier": "Ecopower", "unit": "kwh", "deactivated": "2010-10-11T00:00:00Z", "status": "inactive", "metrics": [ { "name": "ea:powerConsumption", "dimensions": [ { "name": "ea:contentType", "value": "electricity" }, { "name": "ea:source", "value": "grid" }, { "name": "ea:system", "value": "main" } ], "coefficient": 1 } ] }, { "id": "a42489f0-879e-4570-87f5-4b86d519d508", "displayName": "Zonneboiler (2)", "serialNumber": "Resol BS4", "readings": "continuous", "unit": "kwh", "comments": "Is dezelfde zonneboiler, maar met de pomp op stand 1 ipv 2. Zorgt voor minder debiet en dus max debiet aangepast in regeling. Is niet meer 1 op 1 te vergelijken met vorig jaar. Opm: op 11/2/2012 pomp terug op 2 gezet omdat de kloben bij zonnig weer en -10°C al tot 176° warm werd. Regeling terug op 4.0 gezet. Geen reset van meterstanden.", "activated": "2012-01-02T00:00:00Z", "status": "active", "metrics": [ { "name": "ea:heatProduction", "dimensions": [ { "name": "ea:contentType", "value": "heat (renewable)" }, { "name": "ea:generationSystem", "value": "solarBoiler" }, { "name": "ea:system", "value": "Zonneboiler" } ], "coefficient": 1 } ] }, { "id": "b049d374-0326-4637-a45d-5f43330003cd", "displayName": "Aardgasmeter", "serialNumber": "3808015", "readings": "continuous", "supplier": "Elegant", "unit": "cbm", "calorificType": "L", "status": "active", "metrics": [ { "name": "ea:gasConsumption", "dimensions": [ { "name": "ea:contentType", "value": "natural gas" }, { "name": "ea:source", "value": "grid" }, { "name": "ea:system", "value": "main" } ], "coefficient": 1 } ] }, { "id": "5845893a-42d7-40c8-a746-6044df39195b", "displayName": "Zonneboiler", "serialNumber": "", "readings": "continuous", "unit": "kwh", "comments": "Kwh gereset na pompstand van 2 naar 1 gewijzigd. Maximum debiet van 4,0 naar 1,0 l/min", "activated": "2010-07-13T00:00:00Z", "deactivated": "2012-01-02T00:00:00Z", "status": "inactive", "metrics": [ { "name": "ea:heatProduction", "dimensions": [ { "name": "ea:contentType", "value": "heat (renewable)" }, { "name": "ea:generationSystem", "value": "solarBoiler" }, { "name": "ea:system", "value": "Zonneboiler" } ], "coefficient": 1 } ] }, { "id": "e4e7d03d-e093-4952-befd-684e5b08cc06", "displayName": "Elektriciteitsmeter nieuw", "serialNumber": "60143427", "readings": "continuous", "supplier": "Ecopower", "unit": "kwh", "comments": "Terugdraaiende meter 1 tarief ter vervanging van tweevoudig niet terugdraaiend. Door Infrax: gratis meter, wel iets betalen voor disablen nacht...", "activated": "2010-10-11T00:00:00Z", "status": "active", "metrics": [ { "name": "ea:powerConsumption", "dimensions": [ { "name": "ea:contentType", "value": "electricity" }, { "name": "ea:source", "value": "grid" }, { "name": "ea:system", "value": "main" } ], "coefficient": 1 } ] }, { "id": "930fabdb-8c23-4f3e-a1b6-a00b0d2d804b", "displayName": "Kilometerteller Audi", "serialNumber": "", "readings": "continuous", "unit": "km", "deactivated": "2012-12-01T00:00:00Z", "status": "inactive", "metrics": [ { "name": "ea:distanceTravelled", "dimensions": [ { "name": "ea:contentType", "value": "distance" }, { "name": "ea:vehicle", "value": "car" }, { "name": "ea:system", "value": "main" } ], "coefficient": 1 } ] }, { "id": "0fd5e9c5-664f-4ca6-8e26-a7711ac5221b", "displayName": "Elektriciteitsmeter (2) (nacht)", "serialNumber": "145587", "readings": "continuous", "supplier": "Ecopower", "unit": "kwh", "deactivated": "2010-10-11T00:00:00Z", "status": "inactive", "metrics": [ { "name": "ea:powerConsumption", "dimensions": [ { "name": "ea:contentType", "value": "electricity" }, { "name": "ea:source", "value": "grid" }, { "name": "ea:system", "value": "main" } ], "coefficient": 1 } ] }, { "id": "edf7b513-d2c6-4253-9322-a9d4df5dcbc4", "displayName": "Kilometerteller Peugeot", "readings": "continuous", "unit": "km", "status": "active", "metrics": [ { "name": "ea:distanceTravelled", "dimensions": [ { "name": "ea:contentType", "value": "distance" }, { "name": "ea:vehicle", "value": "car" }, { "name": "ea:system", "value": "main" } ], "coefficient": 1 } ] }, { "id": "515ae7fb-dca6-41e0-9217-c3a1043ce91c", "displayName": "PV panelen", "serialNumber": "databank vreg in te vulle", "readings": "continuous", "unit": "kwh", "activated": "2010-09-03T00:00:00Z", "status": "active", "metrics": [ { "name": "ea:powerProduction", "dimensions": [ { "name": "ea:contentType", "value": "electricity (renewable)" }, { "name": "ea:generationSystem", "value": "solarPanels" }, { "name": "ea:system", "value": "PV" } ], "coefficient": 1 }, { "name": "ea:powerConsumption", "dimensions": [ { "name": "ea:contentType", "value": "electricity (renewable)" }, { "name": "ea:source", "value": "self" }, { "name": "ea:system", "value": "main" } ], "coefficient": 1 } ] }, { "id": "10d598fb-d307-46fa-9b12-f93972af1851", "displayName": "Watermeter", "serialNumber": "44765500", "readings": "continuous", "supplier": "", "unit": "cbm", "status": "active", "metrics": [ { "name": "ea:waterConsumption", "dimensions": [ { "name": "ea:contentType", "value": "drinking water" }, { "name": "ea:source", "value": "grid" }, { "name": "ea:system", "value": "main" } ], "coefficient": 1 } ] }, { "id": "ea7bd780-46fd-4afa-8b0f-faebc0ad477f", "displayName": "Kilometerteller Skoda", "serialNumber": "", "readings": "continuous", "unit": "km", "deactivated": "2014-11-20T23:00:00Z", "status": "inactive", "metrics": [ { "name": "ea:distanceTravelled", "dimensions": [ { "name": "ea:contentType", "value": "distance" }, { "name": "ea:vehicle", "value": "car" }, { "name": "ea:system", "value": "main" } ], "coefficient": 1 } ] } ] }

Van: Jan Pecinovsky [mailto:notifications@github.com] Verzonden: maandag 23 maart 2015 15:08 Aan: opengridcc/opengrid Onderwerp: [opengrid] [Request] Add location to houseprint (#50)

It would be nice to have a location (city), coördinate, ... in the houseprint: I'm designing analyses that use weather data, mainly degree days, and I figure that hardcoding 'Leuven' in the analysis isn't ideal.

— Reply to this email directly or view it on GitHubhttps://github.com/opengridcc/opengrid/issues/50.

JrtPec commented 9 years ago

Dag Diederik,

Bedankt voor het uitgebreide antwoord! Lijkt me zeker iets om volgende dinsdag op de Opengrid meeting te bespreken. Ik weet niet of @vi-di je daar een uitnodiging voor gestuurd heeft, maar je bent zeker welkom: 18u @ STUK Leuven.

JrtPec commented 8 years ago

Closing, Postcode is a field in the current houseprint.