2026-04-24 FE Backup
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
from datetime import datetime
|
||||
udtInstPath = "[Ignition_Common_IO_Gtwy]Roof/SATB1_RF_RTU01"
|
||||
|
||||
|
||||
def getMeasurementPaths():
|
||||
return ["%s/Outside Air Dewpoint"%udtInstPath,
|
||||
"%s/Outside Air Temperature"%udtInstPath,
|
||||
"%s/Outside Air Humidity"%udtInstPath]
|
||||
|
||||
def getRawDataMeasurement(startDate, endDate, customArgs= {}):
|
||||
tagpaths = getMeasurementPaths()
|
||||
hist = reports.MBR.common.util.getHistory(tagpaths, startDate, endDate, customArgs={})
|
||||
|
||||
|
||||
return hist
|
||||
|
||||
def getRawChillerDemand(startDate, endDate, location, customArgs= {}):
|
||||
tagpaths = reports.MBR.common.util.getBaseTagPaths(reports.MBR.common.static.getChillerTonnage(), location)
|
||||
tagpaths.sort()
|
||||
hist = reports.MBR.common.util.getHistory(tagpaths, startDate, endDate, customArgs={})
|
||||
|
||||
return hist
|
||||
|
||||
def calculateValues(data):
|
||||
"""
|
||||
Calculate the Daily Average of each sensor's measurement
|
||||
"""
|
||||
data = system.dataset.toPyDataSet(data)
|
||||
curHeaders = system.dataset.getColumnHeaders(data)
|
||||
res = {"ResultTemp":None, "ResultHumidity":None}
|
||||
dailyGroup= {}
|
||||
allResultData = {}
|
||||
allResultDS = {}
|
||||
allAvgs = []
|
||||
|
||||
for row in data:
|
||||
dayStr = system.date.format(row["t_stamp"],"yyyy-MM-dd")
|
||||
dailyGroup.setdefault(dayStr, {})
|
||||
dailyGroup[dayStr].setdefault("OATemp", [])
|
||||
dailyGroup[dayStr].setdefault("OADew", [])
|
||||
dailyGroup[dayStr].setdefault("OAHum", [])
|
||||
|
||||
dailyGroup[dayStr]["OADew"].append(row[curHeaders[1]])
|
||||
dailyGroup[dayStr]["OATemp"].append(row[curHeaders[2]])
|
||||
dailyGroup[dayStr]["OAHum"].append(row[curHeaders[3]])
|
||||
|
||||
sortedDateKeys = sorted(dailyGroup.keys(), key=lambda x: datetime.strptime(x, '%Y-%m-%d'))
|
||||
temperatureRows= []
|
||||
humidityRows= []
|
||||
for date_str in sortedDateKeys:
|
||||
try:
|
||||
dpAvg = sum(dailyGroup[date_str]["OADew"])/len(dailyGroup[date_str]["OADew"])
|
||||
tempAvg = sum(dailyGroup[date_str]["OATemp"])/len(dailyGroup[date_str]["OATemp"])
|
||||
humAvg = sum(dailyGroup[date_str]["OAHum"])/len(dailyGroup[date_str]["OAHum"])
|
||||
except:
|
||||
dpAvg = 0
|
||||
tempAvg = 0
|
||||
humAvg = 0
|
||||
|
||||
temperatureRows.append([system.date.parse(date_str, "yyyy-MM-dd"), dpAvg, tempAvg])
|
||||
humidityRows.append([system.date.parse(date_str, "yyyy-MM-dd"), humAvg])
|
||||
|
||||
res["ResultTemp"] = system.dataset.toDataSet(["Date","Dewpoint","Temperature"], temperatureRows)
|
||||
res["ResultHumidity"] = system.dataset.toDataSet(["Date","Humidity"], humidityRows)
|
||||
return res
|
||||
|
||||
def DoAll(startDate,endDate):
|
||||
return calculateValues(getRawDataMeasurement(startDate,endDate))
|
||||
|
||||
def DoChillerDemand(startDate, endDate, interval= 60, locations=None):
|
||||
histDS = reports.MBR.cooling.getRawChillerDemand(startDate, endDate, locations, customArgs= {})
|
||||
histDS = reports.MBR.common.util.averageIntervalData(histDS, interval)
|
||||
histDS = reports.MBR.common.util.generateSumCol(histDS, sumColName="Sum Tonnage")
|
||||
|
||||
return {"histDS":histDS}
|
||||
|
||||
Reference in New Issue
Block a user