Automatyczne nawodnienie trawnika - ESP32

@isom1266 … zacznę od końca
Kontroler posiada dwa przyciski STOP i NEXT obsługuje ją reguła w ESPEasy

on AllOff do
  GPIO,12,0
  GPIO,5,0
  GPIO,4,0
  GPIO,15,0
  GPIO,9,0
  GPIO,10,0
  Let,1,0
  Let,2,0
endon
on System#Boot do
  Event AllOff
  Let,1,7
endon
on zone1#State do
  Event StatePump
endon
on zone2#State do
  Event StatePump
endon
on zone3#State do
  Event StatePump
endon
on zone4#State do
  Event StatePump
endon
on zone5#State do
  Event StatePump
endon
on Stop#State do
 if [Stop#State]=1
   Event AllOff
 endif
endon
on Next#State do
 if [Next#State]=1
   Event NextOn
 endif
endon
on NextOn do
 Let,1,[VAR#1]+1
 if [var#1]=6
  Let,1,1
 endif
 if [var#1]=1
  GPIO,12,1
  GPIO,9,0
 endif
 if [var#1]=2
  GPIO,5,1
  GPIO,12,0
 endif
 if [var#1]=3
  GPIO,4,1
  GPIO,5,0
 endif
 if [var#1]=4
  GPIO,15,1
  GPIO,4,0
 endif
 if [var#1]=5
  GPIO,9,1
  GPIO,15,0
 endif
endon
on StatePump do
 Let,2,[zone1#State]+[zone2#State]+[zone3#State]+[zone4#State]+[zone5#State]
 if [var#2]=0
   GPIO,10,0
   Let,1,0
 else
   GPIO,10,1
 endif
endon

To w zasadzie wystarcza do ręcznego sterowania zaworami i pompą. Pompa załącza się automatycznie gdy otwarty jest przynajmniej jeden zawór (zabezpieczenie aby nie rozsadzić instalacji).
pod2
W czerwonej obwódce to fizyczne obwody starowania zaworami i pompą a w niebieskiej logiczne.
Ponieważ “trawnik” obsługiwany jest przez dwie linie (strefa2, strefa3) dlatego logicznych jest mniej.
Ponieważ automatyczne podlewanie jest ustawione w godzinach wczesnorannych nie ma kolizji ze sterowaniem ręcznym.
Dla każdej strefy logicznej uruchamiacz oddzielne instancje integracji.
pod1
Podlewanie stref uruchamiam z harmonogramu podlewania w/g parametrów obliczonych przez integrację.
pod4
W porze zimowej nie ma warunków do załączenia więc opróżniam tylko instalację i odłączam pompę z gniazdka.
Wprowadziłem dodatkowo korekcję ręczną czasu podlewania (czasami wymaga to korekty)
pod3
Okno pokazuje również przewidywany (obliczony) czas podlewania.
Integracja pracuje na podstawie czujników ze stacji pogodowej, dodatkowo wymaga informacji o max/min temperaturze zarejestrowanej w ciągu ostatnie doby.
Ponieważ integracja nie steruje bezpośrednio zaworami, a oblicza tylko wymagany czas podlewania na chwilę załączenia.
Fizyczne sterowanie załatwiam w NR


flows (45).json (30,3 KB)

Dodatkowo wprowadziłem powiadomienie głosowe o pracy pompy w przypadku pracy w trybie ręcznym. Zdarzało się, że zapominałem wyłączyć dolewanie wody do oczka i ryby pasły się na trawie :wink:

W sumie to tak hasłowo byłoby tyle… zagadnienie jest dość obszerne i zawsze możesz dopytać.