A 3D model of a seven-floor office. Each box is a zone, coloured by the layer you pick. By default it replays one week of measured data from an office in Bangkok; a simulated feed is the alternative (see About the data).
STRATA needs a tablet or desktop display. On a phone-sized screen it shows a notice asking for a larger screen.
Move around
Drag to rotate. Scroll or pinch to zoom.
Click or tap a zone to see its readings. Click or tap empty space to clear it.
The number buttons on the left isolate one floor. All brings every floor back.
Layers
Power
Everything a zone draws: HVAC, lighting and plug loads added together.
HVAC
Heating, cooling and ventilation only. In this model it is the biggest and most variable part.
Density
Power per unit of floor area, in W/ft² or W/m². Use it when zones differ a lot in size: a big lobby always draws more kW than a closet, but density shows which one is working harder for its size. The building figure is area-weighted.
Temp
Indoor air temperature in the zone. In the CU-BEMS replay, temperature is estimated for every zone before about Wednesday 3 PM and for zones with no temperature sensor, so those colours are not measurements. The zone card says when a value is estimated.
People
Estimated occupants as a share of what the zone holds. In the CU-BEMS replay this is inferred from lighting and plug load, because the dataset has no people counts.
The legend shows the colour range for the layer you picked: dark is low, violet is middle, pink is high, amber is highest. The range is fixed for the building you are viewing, so a colour means the same thing at any time and in any zone. Power and HVAC ranges are sized to each building's own week.
Timeline
The scrubber covers one week, Monday to Sunday, and loops at the end.
Speed is a multiple of real time. 1× is real time, 60× is one simulated minute per second, 600× is ten minutes per second, 3600× is one hour per second.
The trend chart always shows the 24 hours before the time on the clock, for the whole building or the zone you selected.
Alerts
After-hours cooling
A zone is using more than 2 kW of HVAC power while the building is scheduled off (weekdays before about 6 AM or after about 8 PM, and all weekend).
Running warm
A zone with people in it is above 26 °C (79 °F). Estimated temperatures never raise this alert.
Click an alert to jump to that zone.
Use your own Revit model
In Revit, place Rooms where you want zones. Optional: add a text parameter STRATA_Zone to group rooms into one zone, and STRATA_Sensor to tag a zone with a sensor ID.
In Dynamo, add a Python Script node, set it to CPython3, paste in tools/revit_export_rooms.py and run it. It reads the model and writes a small JSON file; it changes nothing in Revit.
Choose Load Revit model in the Building section, or drop the file onto the model. Your levels and rooms replace the generated building.
Zones named like roofs, shafts, stairs, terraces or garages are treated as unconditioned: no HVAC, almost no people, and a temperature that follows the weather. To override that for a zone, add a text parameter STRATA_Conditioned to Rooms and set it to Yes or No.
An imported model runs on whichever data source is selected. In the CU-BEMS replay, each of your zones borrows the readings of a CU-BEMS zone on the matching floor (floors wrap around after seven) and scales them by floor area. Remove model returns to the reference office.
Units
Imperial and Metric change how values display. Power (kW) and energy (kWh) are the same in both. In the zone card, temperature, area and light level show the other unit beside the main value.
About the data
Data source switches between two feeds. CU-BEMS replay is the default when the data files load. Simulated is generated from an office schedule and a placeholder outdoor temperature curve.
CU-BEMS replay
One week of measured data from an office building at Chulalongkorn University in Bangkok (Scientific Data, 2020): 33 zones on 7 floors, every 10 minutes, with HVAC, lighting and plug power plus temperature, humidity and light level. It is played back Monday to Sunday.
New York weather
The outdoor temperature comes from hourly Open-Meteo records for Central Park, New York. The building was measured in Bangkok, so the weather is shown for context and does not explain its loads.
Marking estimates
In the CU-BEMS replay, a zone whose value for the chosen layer is estimated is drawn faded with dashed edges, and estimated stretches of the trend chart are dashed. The legend counts how many zones are estimated at the current time. Power and Density mark zones missing a meter, HVAC marks zones with no HVAC meter, and Temp marks estimated temperatures. People is inferred everywhere, so it is not marked zone by zone and the legend says so. Marked and Unmarked in the Data source section turn this on or off.
Estimates
The raw data has gaps, and none are shown as real readings. Temperature and humidity sensors sit on a flat, repeated value until about Wednesday 3 PM, and any run of 6 hours or more of an identical reading is treated as a stuck sensor and ignored. Floor 1 and one zone on each other floor have no temperature sensor, and 9 zones lack an HVAC, lighting or plug meter. Missing temperature and humidity are filled from the same floor, then the whole building, and when no zone is reporting, from the building's occupied and empty readings. In this office the occupied readings are cooler, so an empty zone, such as floor 1 on a Monday morning, is estimated warmer than a busy one. An unmetered load reads 0 and is labelled not metered. The zone card marks every estimated value, and the Building section lists what is estimated. Estimated temperatures never raise Running warm.
Simulated
Two faults are planted so the alerts have something to find: stuck cooling in one zone overnight, and a cooling failure in another zone for a few daytime hours. The note at the bottom of the panel says which zones and when. New simulated building changes the number of floors and zones, the footprint, the weekday schedule or the climate, and where the faults land. Reference office returns to the default seven-floor, 33-zone building.
To use the replay, serve the folder over http (for example python -m http.server 8888). Opening index.html straight from disk works, but only with the simulated feed.
Credits
Measured building data: CU-BEMS, from Pipattanasomporn et al., CU-BEMS, smart building electricity consumption and indoor environmental sensor datasets, Scientific Data 7, 241 (2020). The dataset, on Figshare, is licensed CC BY 4.0. Changes made: STRATA shows one week of it, reshaped and with gaps estimated as described above. It is not an official presentation of the dataset and the authors do not endorse it.
Weather: Open-Meteo.com historical data, licensed CC BY 4.0, shown for Central Park, New York.
3D: three.js r128 (MIT licence), loaded from cdnjs.cloudflare.com.
Models you load stay in your browser. They are not uploaded anywhere, and the last one is remembered on this device until you remove it.
Terms
kW and kWh
kW is how fast power is being used right now. kWh is energy over time: 1 kW running for one hour is 1 kWh.
HVAC
Heating, ventilation and air conditioning.
Plug loads
Equipment plugged into outlets, such as computers, monitors and chargers.
Zone
A section of a floor served by one set of meters and sensors.