Opiszę tutaj rozwiązanie pewnego problemu w automatyce domowej. Otóż mam żonę wrażliwą na wzrost ciśnienia atmosferycznego. Metodą empiryczną stwierdziłem, że groźny (dla mnie 😉 ) jest stan gdy ciśnienie rośnie z prędkością ponad 1hPa na godzinę. Mi osobiście przeszkadza gdy spada ponad 1hPa na godzinę. Próbowałem różnych źródeł trendu zmian ciśnienia i one wszystkie są bardziej gadżetami niż pomocnymi narzędziami bo:
- z OpenWeather mamy dane prognozowe nie zawsze się sprawdzające, więc możemy reagować na zjawisko, które u nas nie wystąpi lub już wystąpiło kilka godzin temu.
- z WeatherCalculations binding, który ktoś napisał jest lipa, bo autor robi proste porównanie wartosci ciśnienia teraz i 15 minut wcześniej, a to nie prowadzi do żadnych sensownych wniosków, bo ciśnienie może się wahać od wiatru, od niedokładności czujnika i generalnie wychodziły głupoty typu zmiana trendu od rośnie do maleje po 4 razy na godzinę, a do tego śmieciło to strasznie po logach.
Cóż począć, trzeba było zmierzyć się z tematem samodzielnie.
Po dwóch tygodniach obserwacji, ustawiania wskaźników, okresów uśredniania itd. wyszło mi, że optymalne wyniki dostaję gdy porównuję średnią wartość ciśnienia z ostatnich 5 minut do średniej godzinowej. Dodatkowo robię uśrednienie odczytów z dwóch czujników po dwóch stronach domu (w zależności od kierunku i siły wiatru obserwuję różnicę w ich wskazaniach).
Oto co mnie satysfakcjonuje.
var Number zmiany = 0 rule "zmiany cisnienia" when Item Gniazdo7Cisn changed then var stancisnienia = TrendCisnienia.state as DecimalType zmiany = Gniazdo7Cisn.averageSince(now.minusMinutes(5)) as Number + StacjaCisn.averageSince(now.minusMinutes(5)) as Number - Gniazdo7Cisn.averageSince(now.minusMinutes(60)) as Number - StacjaCisn.averageSince(now.minusMinutes(60)) as Number if (zmiany > 2) { TrendCisnienia.postUpdate(2) } else if (zmiany > 0.5) { TrendCisnienia.postUpdate(1) } else if (zmiany > 0) { if (stancisnienia > 0) { TrendCisnienia.postUpdate(1) } else { TrendCisnienia.postUpdate(0) } } else if (zmiany > -0.5) { if (stancisnienia < 0) { TrendCisnienia.postUpdate(-1) } else { TrendCisnienia.postUpdate(0) } } else if (zmiany > -2) { TrendCisnienia.postUpdate(-1) } else { TrendCisnienia.postUpdate(-2) } end
Zmienna "zmiany" przechowuje sumę różnic pięciominutowych i godzinowych średnich odczytów ciśnienia z dwóch czujników.
Jeśli różnica jest większa niż 1hPa, czyli suma różnic większa od 2, to uznaję zmianę za szybką. Jeśli zmiana jest poniżej 0,25hPa to uznaję, że ciśnienie jest stałe. Warto zauważyć, że zmienną "stancisnienia" dodaję pewną histerezę, aby wynikowy trend nie był wrażliwy na chwilowe wahnięcia ciśnienia. Na koniec warto sobie zrobić mapę:
2 - rośnie szybko
1 - rośnie wolno
0 - stałe
-1 - spada wolno
-2 - spada szybko.
A dodatkowo ustawić powiadomienie, jak rożnie szybko, to albo żonie otworzyć wino, albo uciekać z domu 😆
Skoro obserwujesz różne ciśnienia z różnych stron domu , to czy jeden czujnik w domu nie załatwiłby sprawy ?
Chyba ciśnienie atmosferyczne jest wszędzie takie samo (w sensie czy na dworze , czy w domu) , i zmienia się tylko wraz z wysokością.
@MiG41 Oj zdziwiłbyś się jak bardzo czułe są współczesne czujniki ciśnienia. Taki BME280 wewnętrzny reaguje na to, że w kuchni włączy się okap kuchenny, czy np. w łazience włączy się wyciąg. Okna mamy teraz wszyscy szczelne tylko z mikrowentylacją, a posiadacze rekuperatorów mają praktycznie całkowicie szczelne, więc ciśnienie w domu może momentami odbiegać od zewnętrznego nawet o pół hPa. W sytuacji gdy większość osób reagujących negatywnie na zmiany ciśnienia odczuwa już 30Pa na godzinę, to te wyciągi i okapy mogą zniweczyć plan pomiaru ciśnienia.
No to zrobiłem mały test , czujnik BME280 pokazuje przy wyłączonym rekuperatorze 1029,6 . Włączyłem okap ,rekuperator ustawił nawiew na 100% wyciąg na 20% , w drzwiach wyraźny opór ,żeby otworzyć , a czujnik zaczął się wahać pomiędzy 1029,6 a 1029,7.... Dla mnie to trudno stwierdzić ,czy to np. nie błąd pomiaru.
Skoro ciśnienie i tak podaje się z zaokrągleniem do całych wartości , to nawet rekuperatorem o wydajności 600m3/h nie jestem w stanie go podnieść o 0,1 a co dopiero o 1.
Nie twierdzę ,że zewnętrzny wiatr na czujnik wpływa bardziej , twierdzę tylko ,że barometr w domu jest wystarczająco dokładny i reaguje odpowiednio na zmiany na zewnątrz.
EDIT: Sam okap z wyłączonym rekuperatorem poradził sobie trochę lepiej , wyciągnął 1029,4 przez chwilę 🙂
Dwa czujniki na zewnątrz działają po prostu "przeciwsobnie". Jakkolwiek wiatr by nie wiał, to im wyższe ciśnienie wygeneruje na jednej ścianie, tym niższe na drugiej, więc wpływ wiatru się całkowicie znosi, więc suma odczytów tych czujników zawsze podąża za średnim ciśnieniem atmosferycznym. Dla czujnika wewnątrz każde urządzenie typu wyciąg generuje dowolny i nie znany błąd odczytu. Nie można go w żaden sposób znieść obliczeniowo.
Gdzie wyczytałeś, że obliczam ciśnienie z pomiarów z dokładnością 1hPa? Taka dokładność to jest dobra do prognozy pogody na tydzień.
Pomiary wykonane przez Ciebie niestety niemiarodajne jeśli nie wiesz jaki przebieg miało ciśnienie na zewnątrz w czasie tego pomiaru. Aby ocenić czy włączenie wyciagu ma wpływ musisz, choćby czasowo, zastosować jakiś czujnik referencyjny, wtedy i tylko wtedy możesz wyciągać jakieś wnioski.
Chyba nie twierdzisz ,że włączając u siebie rekuperator albo okap zmieniłem ciśnienie atmosferyczne na zewnątrz... Nie twierdzę ,że był to pomiar laboratoryjny , twierdzę tylko , że za wielkiego wpływu te rzeczy nie mają. Dokładność tego czujnika i tak jest +-1 hPa.
Nie wyczytałem ,u Ciebie , tylko pisałem ,że ciśnienie podaje się w zaokrągleniu do 1hPa ( i tak ,chodziło mi o prognozy pogody m.n.)
I też chyba do końca tak nie jest ,że jak na jednej ścianie wiatr w nią "dmucha" , to na przeciwległej ją "ciągnie" z taką samą siłą.
Ale ok , to Twój pomysł , już nie komentuję.
Nie wiem w jakim celu śmieszkujesz.
Ciśnienie atmosferyczne nie jest stałe. Ciśnienie się ciągle zmienia, bo zależy od bardzo wielu czynników. Może się wydawać stałe tylko gdy przyjmiemy odpowiednią dokładność odczytu. Dla dokładności 1hPa może nam się wydawać, że jest "stałe" przez godzinę, a dla dokładności 100hPa możemy stwierdzić, że było "stałe" przez całe nasze życie!!!
Zobacz na ten wykres z dwóch jednakowych czujników:
Czym innym jest dokładność czujnika, a czym innym powtarzalność. Czujnik może mieć dokładność 1hPa, ale jednocześnie powtarzalność 1Pa, czyli 100 razy lepszą. Oznacza to tyle, że jeśli ciśnienie będzie wynosiło 101300Pa, to ten czujnik może pokazać101400Pa, ale gdy ciśnienie zmieni się na 101301Pa, to on pokaże 101401Pa.
Dla meteopaty mniejsze znaczenie ma aktualna wartość ciśnienia, a większe szybkość zmiany. Dlatego nie jest ważne czy teraz jest 101400Pa ale, że w ciągu godziny zmieniło się o ponad 30Pa. Czujniki elektroniczne doskonale się do tego nadają, bo mają wysoką potrarzalność i szybkość pomiaru.
Wracając do Twojego infantylnego pytania. Nie twierdzę, że włączając wyciąg zmieniłeś ciśnienie na dworze. Twierdzę, że takim "pomiarem" nie wiesz nic o tym jakie byłoby ciśnienie gdybyś tego wyciągu nie włączył, więc nie masz żadnych podstaw, aby z takiego doświadczenia wyciągnąć jakiekolwiek wnioski. Z załączonego wykresu widać, że ciśnienie atmosferyczne waha się bardzo szybko i nie jest to błąd czujników, bo obie linie są w zasadzie równolegle, a czujniki znajdują się kilkanaście metrów od siebie i są zasilane niezależnie.
@isom, ok , juz nie ma "brak wiedzy " , no ale czy to załatwia sprawę ? Mam wymieniać po kolei słowa: typu " nie masz pojęcia o czym piszesz ..." , " może to dla Ciebie szokujące" , " Rozumiesz?" , " infantylne pytanie" , pewnie i na początku "nie mam pojęcia dlaczego śmieszkujesz" .... Może jeszcze jakiegoś nie wymieniłem. Cały post jest w stylu na obrażenie mnie , bo raczyłem stwierdzić , że rekuperator ,albo okap ma bardzo niewielki wpływ na wartość ciśnienia w domu ( skoro autor sam stwierdził ,ze "Jeśli zmiana jest poniżej 0,25hPa to uznaję, że ciśnienie jest stałe.") . Jak to napisałem , to nagle ważne jest "że w ciągu godziny zmieniło się o ponad 30Pa" , i że mój pomiar jest do niczego ,bo nie mierzyłem jednocześnie ciśnienia na dworze , bo na pewno w tym czasie jak włączyłem urządzenia to się zmieniło , a jak wyłączyłem to magicznie powróciło do wartości sprzed włączenia. Ok ,ma prawo tak twierdzić , ale w merytorycznej dyskusji , a nie w słowach opisanych powyżej,
jak to mówią chłopaki hold your horses
@marcingajda @isom w tym poście nie uczestniczy
@isom, ok , juz nie ma "brak wiedzy " , no ale czy to załatwia sprawę ? Mam wymieniać po kolei słowa: typu " nie masz pojęcia o czym piszesz ..." , " może to dla Ciebie szokujące" , " Rozumiesz?" , " infantylne pytanie" , pewnie i na początku "nie mam pojęcia dlaczego śmieszkujesz" .... Może jeszcze jakiegoś nie wymieniłem. Cały post jest w stylu na obrażenie mnie , bo raczyłem stwierdzić , że rekuperator ,albo okap ma bardzo niewielki wpływ na wartość ciśnienia w domu ( skoro autor sam stwierdził ,ze "Jeśli zmiana jest poniżej 0,25hPa to uznaję, że ciśnienie jest stałe.") . Jak to napisałem , to nagle ważne jest "że w ciągu godziny zmieniło się o ponad 30Pa" , i że mój pomiar jest do niczego ,bo nie mierzyłem jednocześnie ciśnienia na dworze , bo na pewno w tym czasie jak włączyłem urządzenia to się zmieniło , a jak wyłączyłem to magicznie powróciło do wartości sprzed włączenia. Ok ,ma prawo tak twierdzić , ale w merytorycznej dyskusji , a nie w słowach opisanych powyżej,
1hPa = 100Pa
0,25hPa = 25Pa
30Pa = 0,3hPa
Dlatego 0,25hPa < 30Pa
Dlatego jeśli w ciągu godziny zmienia się poniżej 0,25hPa, to uznaję, że jest stałe, bo interesują mnie zmiany ponad 30Pa czyli ponad 0,30hPa.
Zwykle rekuperator pompuje powietrze z zewnątrz do wnętrza domu. Zwykle okap wyciąga powietrze z wnętrza na zewnątrz. Czego się można spodziewać włączając oba jednocześnie? Może tego, że ich działania się wzajemnie zniosą?!
Mężczyzna wyczuwa wyraźny dodatkowy opór drzwi od różnicy ciśnienia. Upraszczając dla statystycznego chłopa wyraźny ciężar to może 2kg lub więcej. Taki ciężar wymaga użycia siły 20N, żeby go podnieść. Drzwi mają powierzchnię 2m², ale jednocześnie działa dźwignia na zawias, więc wystarczy połowa siły na klamce. Czyli 20N/2m²*2 to 20Pa, czyli podciśnienie powinno wynosić 0,2hPa lub więcej. Niestety eksperymentator z jakiegoś powodu tego nie zarejestrował.
Jaśniej i bardziej merytorycznie nie dam rady.
Dlatego próbowałem maksymalnie najpierw "nadmuchać" dom rekuperatorem ,a tylko po włączeniu okapu mam taką funkcję , że rekuperator nawiewa na 100% , wyciąga 20%. Okap był włączony na najmniejszych obrotach (do usuwania resztek zapachów). Więc się ciśnienia nie znosiły.
Tak samo w drugą stronę , rekuperator wyłączony , okap na maxa. i obniżyło się o 0,1, może max 0,2hPa ,czyli 20Pa . I to przy największym możliwym biegu. Też prościej nie umiem.
A tak przy okazji słowo "eksperymentator" też jest po to ,żeby mnie obrazić.
@adrian , ale uczestniczył , kasując swoje i moje posty . Mam nadzieję ,że @_marss_ sam edytował swój post , a nie robił to @isom....
Owszem kasowałem , tylko nie napisałeś ile merytorycznych treści wnosiły te posty. Weź na luz , jakaś melisa albo mały drink . Boksujesz się nie wiem o co z autorem tematu i co chcesz niby udowodnić ? Chłop ma potrzebę mierzyć sobie ciśnienie z dwóch czujników a ty mu na siłę wpierasz, że wystarczy jeden. Obrażasz go przy tym w poście, który usunąłem. Każdy ma prawo robić sobie pomiary jakie mu pasują , możesz się z tym zgadzać lub nie , a Ty na siłę chcesz przekonywać człowieka do swoich racji , więc zapytam , Kto tu jest nerwusem i kto prowokuje do wyrażania takich a nie innych opinii ?
To forum służy do wymiany poglądów, pomocy innym i przedstawiania swoich pomysłów , przynajmniej tak mi się wydaje , więc proponuję trzymać się tej formuły.
Skasowałeś mojego posta, w którym ja obrażałem , jednocześnie post kolegi ,w którym mnie obrażał ( zaczął pierwszy) , był dla Ciebie metoryczny....
Chciałem się dowiedzieć , dlaczego mierząc u siebie ciśnienie czujnikiem w domu robię to źle , i powinienem robić to dwoma na przeciwległych ścianach. Dowiedziałem się ,że wpływa na to rekuperator i okap. Więc na szybko sprawdziłem ,czy wpływa i w jakim stopniu. No i się zaczęło od braku wiedzy i pojęcia itd.
W którym miejscu " na siłę mu wpieram ,że wystarczy jeden ?"
Skoro każdy ma prawo robić pomiary jakie mu pasują , to dlaczego mnie za swoje nazywa obraźliwie "eksperymentatorem" ?
@marcingajda a gdzie Ty wyczytałeś że mierząc ciśnienie jednym czujnikiem robisz to źle ? Autor tematu ma specyficzne potrzeby pomiaru , więc robi to na swój sposób, pochwalił się tym i tyle . jak ja napiszę że mam dwa czujniki wilgotności w łazience to też pobiegniesz sprawdzać czy to ma sens ?
Jam ma dwa w łazience 😉
Jeden przy wiatraku pod prysznicem, szybciej mi reaguje na wzrost wilgotności i załącza wiatrak, a drugi pod umywalką.
Reguła @_marss_ na pewno może się komuś przydać do pokazywania wzrostów i spadków ciśnienia
Dobra zamykam temat.