Jak dodać strefę histerezy do bieżącego kodu?

Odpowiedz Nowy wątek
2018-12-15 12:08
0

Witam. Posiadam takowy kod , jak widać jest uwzględniona w nim strefa nieczułości wynosząca 2%. Czyli przykładowo wilgotność zadana jest ustawiona na 50% więc strefą nieczułości będzie zakres od 49 do 51 %. Jednak moim pytaniem jest jak dodać strefę histerezy do tego kodu? W jaki sposób trzeba to napisać?
Kod jest następujący :

if(wartosc>(WILG+2)) { 
digitalWrite(relay_pin3, HIGH);  
digitalWrite(relay_pin4, HIGH);  
.
.
.
}
else if(wartosc<(WILG-2)){ 
digitalWrite(relay_pin2, HIGH); 
digitalWrite(relay_pin3, LOW); 
.
.
.
}
else { 
digitalWrite(relay_pin, HIGH);
.
.
.
}

Ogólny schemat regulacji jest następujący :
title
gdzie właśnie N to strefa nieczułości , a H strefa histerezy nad którą zastanawiam się w jaki sposób ją dodać do kodu - czy jest to w ogóle możliwe do wykonania?
Z góry dziękuje za zainteresowanie :)

edytowany 1x, ostatnio: furious programming, 2018-12-15 17:59

Pozostało 580 znaków

2018-12-28 22:54
0

Meh… to do takich ”skoków” Twoja tablica nie jest potrzebna, bo nie daje żadnych korzyści.

Miałoby to sens gdybyś operował na liczbach zmiennoprzecinkowych, ale w przypadku tego projektu, wyliczona średnia jest zawsze zaokrąglana/docinana do inta. Wywal tę tablicę – szkoda brudzić kod zbędnymi danymi i funkcjami.


edytowany 4x, ostatnio: furious programming, 2018-12-28 22:54

Pozostało 580 znaków

2018-12-28 23:03
0

Ale nie mogą być takie skoki bo mi się styki przekaźnika "popalą" dlatego musi być uśrednienie 😁

Pozostało 580 znaków

2018-12-29 00:06
0

Po to właśnie dodajesz do kodu strefy histerezy, aby przekaźnik nie załączał obwodu i go rozłączał, gdy wejściowa wartość będzie oscylować wokół tej granicznej. Zobacz na moją testową aplikację – nieważne czy zmienia się wartość wilgotności z czujnika (górny suwak), czy pozycja potencjometru (dolny suwak), strefy histerezy wykluczają tak szybkie przełączanie stanów urządzenia.

Jeśli będziesz kręcił potencjometrem jak oszalały to ani strefy histerezy, ani nawet uśrednianie pomiarów w niczym nie pomoże. Przy czym strefa histerezy o wielkości 2 jest praktycznie bezużyteczna i powinna być większa. Bo im większa, tym bardziej urządzenie będzie odporne na wahania pomiarów.


Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0