Witam,
Zlecę napisanie kodu na arduino wg poniższej specyfikacji/wytycznych
Odczyt temperatury z czujnika ds18b20
T1 - temperatura wody
T2 - temperatura sterownika
Odczyt wilgotności z czujnika DHT11
H1 - wilgotność % (parametr zmienny w zdarzeniach)
Funkcja autoswitch dla wyjścia OUT0 (2 parametry pracy w sekundach np. work, standby
work - 600
standby - 1200)
parametry ustawione fabrycznie do zmiany z poziomu menu instalatora
Czas pracy w formacie hh:mm
S1 - generator (limit czasu pracy) 4000h
S2 - lampa (limit czasu pracy) 8000h
Przekaźniki
OUT0 - generator
OUT1 - napełnianie
OUT2 - opróżnianie
OUT3 - lampa
OUT4 - wentylator generatora
OUT5 - wentylator chłodzenie sterownika
wejścia
INP1D - zbiornik pełny (if INP1D = 1)
INP2D - zbiornik pusty (if INP2D = 0)
5 przycisków A (góra), B(dół) ,C(lewo - wyjście z menu itp.), D(prawo), E(ok - zatwierdzanie)
Zdarzenia
If H1 < 45+-1(histereza 1 procent) AND INP1D = 0 THEN EVENT5 = 1
IF INP1D = 0 AND INP2D = 1 THEN EVENT6 = 1
IF EVENT5 = 1 OR EVENT6 = 1 THEN EVENT7 = 1
IF EVENT7 = 1 AND OUT2 = 0 THEN OUT1 = 1
IF T1 >= 35+-1(histereza 1 stopień) AND INP2D = 1 THEN EVENT8 = 1
IF EVENT8 = 1 AND OUT1 = 0 THEN OUT2 = 1
IF EVENT1 = 1 AND INP2D = 1 THEN OUT2 = 1
IF INP1D = 1 AND H1 <= 45+-1 THEN OUT0 (funkcja autoswitch)
IF OUT0 = 1 AND INP1D = 1 THEN OUT3 = 1
IF OUT0 = 1 AND INP1D = 1 THEN OUT4 = 1
IF T2 >= 40+-1 THEN OUT5 = 1
scheduler
zrzut if godzina = 01:00 then event1 = 1
zrzut stop if godzina = 01:10 then event1 = 0
inkrementacja/dekrementacja poziomu H1 w zdarzeniach strzałkami A/B góra/dół
zmiana tylko w zakresie 35-45 z poziomu menu głównego
Na wyświetlaczu ma się wyświetlać aktualna data/godzina
Poziom wilgotności H1
Po przytrzymaniu 5sek przycisku E(ok) wchodzimy w men główne
W menu głównym (każdy wybór zatwierdzamy E)
1 pozycja wilgotność
2 pozycja data
3 pozycja godzina
4 pozycja menu instalatora
po kliknięciu ok w menu instalatora ma poprosić o hasło np. 171219
po wbiciu prawidłowego kodu wchodzimy w menu instalatora
1 pozycja czas pracy generatora w hh:mm
2 pozycja czas pracy lampy hh:mm
jeśli wybierzemy pozycję 1 lub 2 to ma zapytać czy zresetować czas pracy ?
Czasy pracy S1, S2
licznik czasu pracy na podstawie działania OUT0 dla S1, OUT3 dla S2
if S1 => 4000h then komunikat na wyświetlaczu WEZWIJ SERWIS generator do wymiany
if S2 => 8000h then komunikat na wyświetlaczu WEZWIJ SERWIS lampa do wymiany
komunikat można zamknąć klikając E (ok)
komunikat po zamknięciu ma się pojawiać co 30min, jeśli nikt nie zamknie to ma być
widoczny cały czas, nawet po restarcie z prądu całego urządzenia
Na wyświetlaczu ma się wyświetlać komunikat "Praca" jeśli OUT0 = 1
Docelowo jeszcze zrzut danych na zewnętrzny serwer mqtt w celu monitorowania poprawności pracy urządzenia.
Termin 30dni do negocjacji, kwota do negocjacji w zależności od terminu
Zlecę napisanie kodu na arduino wg poniższej specyfikacji/wytycznych
Odczyt temperatury z czujnika ds18b20
T1 - temperatura wody
T2 - temperatura sterownika
Odczyt wilgotności z czujnika DHT11
H1 - wilgotność % (parametr zmienny w zdarzeniach)
Funkcja autoswitch dla wyjścia OUT0 (2 parametry pracy w sekundach np. work, standby
work - 600
standby - 1200)
parametry ustawione fabrycznie do zmiany z poziomu menu instalatora
Czas pracy w formacie hh:mm
S1 - generator (limit czasu pracy) 4000h
S2 - lampa (limit czasu pracy) 8000h
Przekaźniki
OUT0 - generator
OUT1 - napełnianie
OUT2 - opróżnianie
OUT3 - lampa
OUT4 - wentylator generatora
OUT5 - wentylator chłodzenie sterownika
wejścia
INP1D - zbiornik pełny (if INP1D = 1)
INP2D - zbiornik pusty (if INP2D = 0)
5 przycisków A (góra), B(dół) ,C(lewo - wyjście z menu itp.), D(prawo), E(ok - zatwierdzanie)
Zdarzenia
If H1 < 45+-1(histereza 1 procent) AND INP1D = 0 THEN EVENT5 = 1
IF INP1D = 0 AND INP2D = 1 THEN EVENT6 = 1
IF EVENT5 = 1 OR EVENT6 = 1 THEN EVENT7 = 1
IF EVENT7 = 1 AND OUT2 = 0 THEN OUT1 = 1
IF T1 >= 35+-1(histereza 1 stopień) AND INP2D = 1 THEN EVENT8 = 1
IF EVENT8 = 1 AND OUT1 = 0 THEN OUT2 = 1
IF EVENT1 = 1 AND INP2D = 1 THEN OUT2 = 1
IF INP1D = 1 AND H1 <= 45+-1 THEN OUT0 (funkcja autoswitch)
IF OUT0 = 1 AND INP1D = 1 THEN OUT3 = 1
IF OUT0 = 1 AND INP1D = 1 THEN OUT4 = 1
IF T2 >= 40+-1 THEN OUT5 = 1
scheduler
zrzut if godzina = 01:00 then event1 = 1
zrzut stop if godzina = 01:10 then event1 = 0
inkrementacja/dekrementacja poziomu H1 w zdarzeniach strzałkami A/B góra/dół
zmiana tylko w zakresie 35-45 z poziomu menu głównego
Na wyświetlaczu ma się wyświetlać aktualna data/godzina
Poziom wilgotności H1
Po przytrzymaniu 5sek przycisku E(ok) wchodzimy w men główne
W menu głównym (każdy wybór zatwierdzamy E)
1 pozycja wilgotność
2 pozycja data
3 pozycja godzina
4 pozycja menu instalatora
po kliknięciu ok w menu instalatora ma poprosić o hasło np. 171219
po wbiciu prawidłowego kodu wchodzimy w menu instalatora
1 pozycja czas pracy generatora w hh:mm
2 pozycja czas pracy lampy hh:mm
jeśli wybierzemy pozycję 1 lub 2 to ma zapytać czy zresetować czas pracy ?
Czasy pracy S1, S2
licznik czasu pracy na podstawie działania OUT0 dla S1, OUT3 dla S2
if S1 => 4000h then komunikat na wyświetlaczu WEZWIJ SERWIS generator do wymiany
if S2 => 8000h then komunikat na wyświetlaczu WEZWIJ SERWIS lampa do wymiany
komunikat można zamknąć klikając E (ok)
komunikat po zamknięciu ma się pojawiać co 30min, jeśli nikt nie zamknie to ma być
widoczny cały czas, nawet po restarcie z prądu całego urządzenia
Na wyświetlaczu ma się wyświetlać komunikat "Praca" jeśli OUT0 = 1
Docelowo jeszcze zrzut danych na zewnętrzny serwer mqtt w celu monitorowania poprawności pracy urządzenia.
Termin 30dni do negocjacji, kwota do negocjacji w zależności od terminu


