Witam
Około 7-8 lat temu stworzyłem sobie kilka urządzeń na AVR Atmega32 w połączeniu z Atnel Wifi. Jednym z urządzeń jest sterownik nawadniania ogrodu. Wszystko działa poprawnie do tej pory. Komunikacja jest po UDP w formie określonych stringów. Jednak moduł wifi jest już dawno nie produkowany a Atmegi też warto byłoby zastąpić czymś nowszym. W razie awarii będę miał poważny problem z zastąpieniem komponentu
Założenia:
- obsługa 9 elektrozaworów 24VAC (1 główny i 8 sekcji) do sterowania sekcji nawadniania za pomocą przekaźników SSR
- obsługa OLED SSD1306 na którym będą informacje lub może nawet menu
- obsługa encodera do OLED
- kilka diod LED do szybkiej weryfikacji pracy urządzenia
- RTC DS 3231
- harmonogram nawadniania z 16 pozycjami pamięci i możliwością zapamiętywania go w nieulotnej pamięci
- możliwość dowolnego łączenia sekcji w grupy. System nawodnienia miałem zakładany 10 lat temu i był oryginalny sterownik Hunter. Po zmianie źródła wody na studnię głębinową wydajność mocno wzrosła więc trzeba załączać kilka sekcji na raz aby pompa w studni połączona z hydroforem pracowała wydajnie cały czas a nie ciągle wyłączała się i włączała. Tak na prawdę to był główny motor do stworzenia sterownika oraz napisania aplikacji B4A na telefon do jego obsługi
- captive portal do ESP32 aby można było łatwo sparować urządzenie z siecią wifi
- serwer WWW do obsługi urządzenia jeśli ESP32 już będzie połączone do sieci
- komunikacja chyba już nie po UDP a może po MQTT z serwerem który i tak już mam w domowej sieci wraz z Home Assistant (może późniejsza integracja sterownika nawadniania z HA...)
- odbiór komunikatu wysyłanego raz dziennie ze skryptu PHP czy nawadnianie ma być dziś aktywne. Drugim moim urządzeniem AVR jest stacja pogody która której dane co minutę wysyłane są na serwer w internecie i z nich tworzona jest strona meteo.wachcio.pl Skrypt odczytuje z niej temperaturę i opady oraz przewidywaną pogodę na moim obszarze z yr.no Na podstawie danych skrypt określa czy temperatura nie jest za niska oraz czy nie wystąpiły lub wystąpią duże opady.
Większość założeń miałem już zaimplementowane w starej wersji urządzenia. Kody źródłowe w C dla AVR mam. Schematy elektryczne do płytek oprócz schematu samej płytki też się zachowały.
Teraz główne moje pytanie czy próbować to obsługiwać tylko za pomocą ESP32 czy sterowanie implementować w STM32 a ESP32 połączone po RS232 byłoby tylko przekaźnikiem do serwera MQTT i miało w sobie stronę do konfiguracji? Tak jak pisałem dopiero zaczynam z mikrokontrolerami 32 bit. W AVR-ach nie było wielu "bajerów" jak choćby RTOS. Nie przygotowuję się do tego zadania z jakiegoś kursu a raczej będę wykorzystywać gotowe biblioteki, AI i to co zostało w głowie z przed wielu lat gdy zrobiłem kilka projektów na AVR-ach. Chciałbym aby projekt mnie nie przerósł po prostu
Około 7-8 lat temu stworzyłem sobie kilka urządzeń na AVR Atmega32 w połączeniu z Atnel Wifi. Jednym z urządzeń jest sterownik nawadniania ogrodu. Wszystko działa poprawnie do tej pory. Komunikacja jest po UDP w formie określonych stringów. Jednak moduł wifi jest już dawno nie produkowany a Atmegi też warto byłoby zastąpić czymś nowszym. W razie awarii będę miał poważny problem z zastąpieniem komponentu
Założenia:
- obsługa 9 elektrozaworów 24VAC (1 główny i 8 sekcji) do sterowania sekcji nawadniania za pomocą przekaźników SSR
- obsługa OLED SSD1306 na którym będą informacje lub może nawet menu
- obsługa encodera do OLED
- kilka diod LED do szybkiej weryfikacji pracy urządzenia
- RTC DS 3231
- harmonogram nawadniania z 16 pozycjami pamięci i możliwością zapamiętywania go w nieulotnej pamięci
- możliwość dowolnego łączenia sekcji w grupy. System nawodnienia miałem zakładany 10 lat temu i był oryginalny sterownik Hunter. Po zmianie źródła wody na studnię głębinową wydajność mocno wzrosła więc trzeba załączać kilka sekcji na raz aby pompa w studni połączona z hydroforem pracowała wydajnie cały czas a nie ciągle wyłączała się i włączała. Tak na prawdę to był główny motor do stworzenia sterownika oraz napisania aplikacji B4A na telefon do jego obsługi
- captive portal do ESP32 aby można było łatwo sparować urządzenie z siecią wifi
- serwer WWW do obsługi urządzenia jeśli ESP32 już będzie połączone do sieci
- komunikacja chyba już nie po UDP a może po MQTT z serwerem który i tak już mam w domowej sieci wraz z Home Assistant (może późniejsza integracja sterownika nawadniania z HA...)
- odbiór komunikatu wysyłanego raz dziennie ze skryptu PHP czy nawadnianie ma być dziś aktywne. Drugim moim urządzeniem AVR jest stacja pogody która której dane co minutę wysyłane są na serwer w internecie i z nich tworzona jest strona meteo.wachcio.pl Skrypt odczytuje z niej temperaturę i opady oraz przewidywaną pogodę na moim obszarze z yr.no Na podstawie danych skrypt określa czy temperatura nie jest za niska oraz czy nie wystąpiły lub wystąpią duże opady.
Większość założeń miałem już zaimplementowane w starej wersji urządzenia. Kody źródłowe w C dla AVR mam. Schematy elektryczne do płytek oprócz schematu samej płytki też się zachowały.
Teraz główne moje pytanie czy próbować to obsługiwać tylko za pomocą ESP32 czy sterowanie implementować w STM32 a ESP32 połączone po RS232 byłoby tylko przekaźnikiem do serwera MQTT i miało w sobie stronę do konfiguracji? Tak jak pisałem dopiero zaczynam z mikrokontrolerami 32 bit. W AVR-ach nie było wielu "bajerów" jak choćby RTOS. Nie przygotowuję się do tego zadania z jakiegoś kursu a raczej będę wykorzystywać gotowe biblioteki, AI i to co zostało w głowie z przed wielu lat gdy zrobiłem kilka projektów na AVR-ach. Chciałbym aby projekt mnie nie przerósł po prostu