Pobieranie danych o jakości powietrza z Sensor Community

 

Uwaga! Przy tworzeniu poniższej instrukcji wykorzystano moduł Gate HTTP drugiej generacji (FW: 1.1.11-2218B)!


Jeśli w systemie chcemy wykorzystać informacje na temat jakości powietrza, możemy użyć do tego celu zewnętrznego serwisu, np.: https://sensor.community/pl/

Według przykładu umieszczonego na stronie https://github.com/opendata-stuttgart/meta/wiki/EN-APIs, zapytanie API może wyglądać następująco: https://data.sensor.community/airrohr/v1/sensor/apiID/

gdzie: apiID to oznaczenie czujnika widoczne po jego wskazaniu na mapie: https://maps.sensor.community/#3/40.00/15.00



Poniżej opisujemy, jak w prosty sposób można uzyskać wspomniane informacje z dwóch różnych czujników:

  • Utwórz obiekt wirtualny HttpRequest:


  • W obiekcie HttpRequest ustaw następujące parametry:

    gdzie:
    Host: https://data.sensor.community
    Path: /airrohr/v1/sensor/61982/


  • Utwórz kolejny obiekt wirtualny HttpRequest i ustaw jego parametry w następujący sposób:

    gdzie:
    Host: https://data.sensor.community
    Path: /airrohr/v1/sensor/61983/


  • W kolejnym kroku utwórz cechy użytkownika typu number:


  • Następnie przygotuj skrypt o nazwie resp_pyly:

    if(Gate_HTTP->czujnik_pyly->StatusCode==200) then
    
      local resp = Gate_HTTP->czujnik_pyly->ResponseBody
      Gate_HTTP->PM10 = resp[1].sensordatavalues[1].value
      Gate_HTTP->PM2 = resp[1].sensordatavalues[2].value
      
    end

     

  • Skrypt przypisz do zdarzenia OnResponse w obiekcie wirtualnym HttpRequest o nazwie czujnik_pyly:


  • Następnie przygotuj skrypt o nazwie resp_powietrze:

    if(Gate_HTTP->czujnik_powietrze->StatusCode==200) then
    
      local resp = Gate_HTTP->czujnik_powietrze->ResponseBody
      Gate_HTTP->CZ_temp = resp[1].sensordatavalues[1].value
      Gate_HTTP->CZ_cisnienie = resp[1].sensordatavalues[2].value/100
      Gate_HTTP->CZ_wilgotnosc = resp[1].sensordatavalues[3].value
      
    end

     

  • Skrypt przypisz do zdarzenia OnResponse w obiekcie wirtualnym HttpRequest o nazwie czujnik_powietrze:


  • Następnie prześlij konfigurację do CLU.

  • Po poprawnym przesłaniu konfiguracji w obu obiektach wywołaj metodę SendRequest.

  • Po wywołaniu skryptu cecha StatusCode w obu obiektach powinna przyjąć wartość 200.

  • Wartości cech użytkownika powinny przyjąć odpowiednie wartości:


  • Dla porównania - odpowiedzi na zapytania wysłane za pomocą przeglądarki:



  • Uzyskane dane można wyświetlić w aplikacji mobilnej, na Smart Panelu lub wykorzystać do tworzenia logiki w systemie.
pdf (224 KB)