Plotlay Open the app →

Guide · handover

BMS data on the plan: trend logs, Haystack and Brick

A building management system knows how warm each room was at 3 pm last Tuesday; a floor plan shows where that room is. Data layers → Data → BMS data joins the two: every point is matched to its room, and the rooms are coloured by the measure you pick, with a slider through the day and the rooms standing up in 3D by value.

From a trend log

  1. Export a trend log as CSV from the BMS. Either a row per reading (timestamp, point, value, unit) or a timestamp column and a column per point, with the unit in brackets after the point’s name. A Niagara history export of one point works too: give the point’s name.
  2. Choose it. Plotlay reads each point name for its level, room, equipment and measure. Common conventions read on their own: L3-VAV-12-ZnTemp (level 3, VAV box 12, zone temperature), Bldg1.Flr2.Rm201.CO2, GF-Rm02-ZoneTemp, G.Office.Occ, EM-1 kWh.
  3. Check the match report. A point is matched by its room number or name on its level, else by the register asset it names (VAV-12 standing in a room), else by an id a Haystack or Brick import attached. The rest are listed to place, with why: no level 4 in the project, no asset VAV-99 in the register.
  4. Patterns for your site’s names. One a line: {level}-{equip}-{measure}, {building}.{level}.{room}.{measure}, {any}/{level}/R-{room}/{measure}, or a regular expression with named groups.
  5. Show on the plan. The readings go on the BMS rooms data layer (the rooms, keyed by their numbers) as one table with a measure column, so one measure shows at a time.

Building meters on a campus

A site with many buildings often has a meter per building and no rooms drawn. Make a data layer of the buildings (picked from footprints or drawn), open it, then Data, BMS data: Show on is that layer. A point lands on a building when its name holds the key (B01-EM-01.kWh), a building number the keys carry (Bldg02.Water.kL on B02), the building’s name (Library.Elec.kWh), or a meter in the register standing inside the building (MSB-01.kWh). Electricity in kWh and water in kL: the heat map shows use per m² through the day with the time slider.

From Project Haystack

From a Brick model

A Brick (or RealEstateCore) Turtle file adds the levels it has and the project lacks, matches rooms by GUID, number or name (a room needs an outline, so one the project doesn’t have is listed to place), matches equipment to the register or adds it in its room, and attaches points with their timeseries ids. A trend log whose point column holds those ids then lands in the right rooms.

Heat maps

MeasureColoursRooms combine by
TemperatureBlue to red in bands at 18, 20, 22, 24 and 26 °CAverage
CO2Yellow to red at 600, 800, 1000 and 1500 ppmAverage
HumidityBands at 30, 40, 60 and 70%Average
OccupancyBlues, in five even groupsHighest
EnergyViridis, per m² of the roomTotal

The bands are a reading aid, not a compliance test. Tick Show in 3D to stand each room up by its value. Change palettes and classes on the Colour tab as for any data layer.

Agents can do the same through the connector: import_bms_trends, import_haystack, import_brick and bms_heat_map.