Просмотр исходного кода

dev: temperatuur tabel ainult hour/device/temperature/humidity

- eemaldatud samples ja min/max veerud (liigne tehniline müra)
- collector: HourBucket.row() kirjutab ainult tunni keskmised
- LOEMIND: skeem uuendatud
ardo 1 месяц назад
Родитель
Сommit
d6ac9a726d
2 измененных файлов с 3 добавлено и 14 удалено
  1. 3 9
      dev/LOEMIND.md
  2. 0 5
      dev/zigbee-collector/collector.py

+ 3 - 9
dev/LOEMIND.md

@@ -67,9 +67,8 @@ Valvurile ei lähe andmebaasi kredentiaale.
 
 
 **Loogika:**
 **Loogika:**
 - **Temperatuur** (`MQTT_TOPIC`): mõõtmised kogutakse mälus täistunni kaupa ja
 - **Temperatuur** (`MQTT_TOPIC`): mõõtmised kogutakse mälus täistunni kaupa ja
-  kirjutatakse iga täistunni järel üks agregeeritud rida (`temperature`/`humidity`
-  = keskmine, lisaks min/max, `samples`). Andur raporteerib u. iga 10 min →
-  tunnis mitu mõõtmist.
+  kirjutatakse iga täistunni järel üks rida (`temperature`/`humidity` = tunni
+  keskmine). Andur raporteerib u. iga 10 min → tunnis mitu mõõtmist.
 - **Uksed** (`DOOR_TOPICS`): salvestatakse **ainult olekumuutused**. Perioodilised
 - **Uksed** (`DOOR_TOPICS`): salvestatakse **ainult olekumuutused**. Perioodilised
   ~2 h südamelöögid (sama `contact`) jäetakse vahele. Käivitusel seemendatakse
   ~2 h südamelöögid (sama `contact`) jäetakse vahele. Käivitusel seemendatakse
   viimane teadaolev olek andmebaasist; esimene nähtud olek salvestatakse baasreana.
   viimane teadaolev olek andmebaasist; esimene nähtud olek salvestatakse baasreana.
@@ -86,12 +85,7 @@ CREATE TABLE uus67.temperatuur (
     hour          DateTime('Europe/Tallinn'),
     hour          DateTime('Europe/Tallinn'),
     device        LowCardinality(String),
     device        LowCardinality(String),
     temperature   Nullable(Float32),   -- tunni keskmine
     temperature   Nullable(Float32),   -- tunni keskmine
-    humidity      Nullable(Float32),   -- tunni keskmine
-    temp_min      Nullable(Float32),
-    temp_max      Nullable(Float32),
-    humidity_min  Nullable(Float32),
-    humidity_max  Nullable(Float32),
-    samples       UInt32
+    humidity      Nullable(Float32)    -- tunni keskmine
 ) ENGINE = MergeTree
 ) ENGINE = MergeTree
 PARTITION BY toYYYYMM(hour)
 PARTITION BY toYYYYMM(hour)
 ORDER BY (device, hour);
 ORDER BY (device, hour);

+ 0 - 5
dev/zigbee-collector/collector.py

@@ -147,11 +147,6 @@ class HourBucket:
             "device": DEVICE,
             "device": DEVICE,
             "temperature": avg(self.temps),
             "temperature": avg(self.temps),
             "humidity": avg(self.hums),
             "humidity": avg(self.hums),
-            "temp_min": min(self.temps) if self.temps else None,
-            "temp_max": max(self.temps) if self.temps else None,
-            "humidity_min": min(self.hums) if self.hums else None,
-            "humidity_max": max(self.hums) if self.hums else None,
-            "samples": max(len(self.temps), len(self.hums)),
         }
         }