iot

This is an old revision of the document!


Źródła Danych: Integracja BMS i IoT

Fundamentem każdego projektu Machine Learning są dane. W inżynierii budynkowej (Facility Management) pozyskanie wysokiej jakości danych jest wyzwaniem, ponieważ wymaga integracji dwóch światów: tradycyjnej automatyki przemysłowej (OT - Operational Technology) oraz nowoczesnego świata IT.

BMS to “centralny układ nerwowy” budynku. W większości obiektów komercyjnych to właśnie stąd pobieramy główne parametry pracy.

  • Charakterystyka: Systemy przewodowe, stabilne, ale trudne w modyfikacji.
  • Typowe dane:
    • Temperatury zasilania i powrotu (węzeł cieplny).
    • Statusy pracy central wentylacyjnych (Włączona/Wyłączona/Awaria).
    • Zużycie energii z liczników głównych.
  • Problem: Dane w BMS często są “uwięzione” w zamkniętym oprogramowaniu producenta i rzadko są zapisywane na dłużej niż 3 miesiące.

Aby uzupełnić luki w danych z BMS, stosuje się nakładkowe systemy IoT.

  • Zastosowanie:
    • Monitoring środowiska: Bezprzewodowe czujniki temperatury i CO2 w każdym pokoju (BMS mierzy zazwyczaj tylko na wyciągu z całego piętra).
    • Retrofitting: Opomiarowanie starych liczników wody nakładkami radiowymi.
    • Occupancy: Czujniki obecności pod biurkami (niezależne od systemu oświetlenia).

Aby algorytm w Pythonie mógł “zrozumieć” budynek, dane muszą zostać sprowadzone do wspólnego standardu. W projekcie analizowano następujące protokoły:

  • BACnet/IP: Światowy standard w budownictwie. Pozwala na komunikację urządzeń różnych producentów (np. sterownik Siemens rozmawia z pompą Grundfos).
  • Modbus RTU/TCP: Starszy, ale wciąż popularny protokół przemysłowy. Używany głównie do odczytu liczników energii i falowników.
  • MQTT: Protokół typowy dla IoT. Bardzo lekki, idealny do wysyłania danych do chmury lub serwera (np. DigitalOcean) przy słabym łączu internetowym.

W ramach niniejszego projektu przyjęto następujący model przetwarzania danych:

  1. Warstwa 1 (Edge): Czujniki i sterowniki zbierają dane surowe (np. napięcie 0-10V).
  2. Warstwa 2 (Gateway): Bramka sieciowa tłumaczy sygnały na język IP i wysyła je do bazy danych.
  3. Warstwa 3 (Storage): Baza danych (np. InfluxDB lub SQL) przechowująca historię z podziałem na szeregi czasowe (Time-Series Data).
  4. Warstwa 4 (Analytics): Skrypty Python (Jupyter Notebook) pobierają dane z bazy, czyszczą je i trenują modele ML.

W ML obowiązuje zasada “Garbage In, Garbage Out”. Jeśli dane wejściowe są błędne, model będzie bezużyteczny.

Typowe problemy napotkane podczas analizy danych budynkowych:

  • Brakujące próbki (Missing Values): Awaria Wi-Fi spowodowała dziurę w danych z 3 godzin.
  • Szum (Noise): Czujnik temperatury przy oknie nagrzewa się od słońca, fałszując odczyt dla całego pokoju.
  • Outliery (Wartości odstające): Błąd transmisji zapisał zużycie energii jako “999999 kWh”.
Przed uruchomieniem jakiegokolwiek algorytmu, dane muszą przejść proces czyszczenia (Data Preprocessing), co zostało pokazane w sekcji Analiza Danych i Symulacje.
  • iot.1769118822.txt.gz
  • Last modified: 2026/01/22 21:53
  • by admin