Raspipool - system automatyki do przydomowego basenu

Raspipool - system automatyki do przydomowego basenu
Pobierz PDF Download icon

Zima jest doskonałym okresem, aby rozpocząć realizację projektu Raspipool. Jest to system automatyki do przydomowego basenu, który z pewnością przyda się późną wiosną i latem. Dzięki niemu korzystanie z basenu stanie się samą przyjemnością, a czynności konserwacyjne basenu odejdą w niepamięć.
Dotychczasowe systemy automatyki do obsługi basenów, szczególnie tych znajdujących się w naszych ogródkach, nie były ani łatwe do zastosowania, ani tanie. Teraz, dzięki rozwojowi elektroniki i dostępności różnorodnych modułów elektronicznych, systemy tego rodzaju przestają być skomplikowane w realizacji i drogie. W poniższym artykule zaprezentujemy taki system zbudowany na komputerze jednopłytkowym Raspberry Pi.

Zautomatyzowanie we wnętrzu domu staje się standardem. Jednak naprawdę nieporównywalne korzyści może przynieść automatyzacja takiego obiektu jak przydomowy basen, szczególnie w zakresie koniecznych nakładów czasu, potrzebnych do jego utrzymania pieniędzy i obciążenia dla środowiska. Głównym celem prezentowanego poniżej projektu jest zbudowanie taniego i modułowego systemu, który umożliwia sterowanie urządzeniami związanymi z basenem. Do sterowania zastosowano komputer jednopłytkowy Raspberry Pi, oferujący dużą moc obliczeniową, co pozwala na implementację wielu zaawansowanych algorytmów sterowania.

Wstęp

Urządzenia do automatyzacji, stosowane w domach czy ogrodach, najczęściej kontrolują kilka parametrów i wykonują kilka zadań przy realizacji swego celu. Zwykle są to urządzenia autonomiczne, to znaczy, że zbierają jakieś informacje z otoczenia a następnie dobierają odpowiednie parametry pracy dla dołączonego osprzętu. Informacja o zebranych danych i o odpowiedzi urządzenia nie jest dostępna dla innych urządzeń. Problem pojawia się w momencie, gdy w systemie znajdują się dwa lub więcej urządzeń, które próbują regulować ten sam parametr. Przykładem mogą być systemy kontroli pH w basenie. Na ten parametr wpływa działanie wielu urządzeń w systemie, od systemów dozujących do wody w basenie solankę, poprzez specjalne pompy kontrolujące filtrowanie, aż do zwykłych pomp z kontrolą czasową, które pompują wodę do/z basenu. Taki sprzęt tylko częściowo rozwiązuje zadania automatyzacji i nie pozwala na żaden rodzaj rozbudowy lub ulepszenia.

Podejście prezentowane w opisywanym projekcie jest zupełnie inne. Autor proponuje, aby urządzenia peryferyjne były ekstremalnie proste (więc także tanie) i realizowały tylko swoje główne zadanie - pompa: filtruje, roztwór soli: wytwarza chlor etc. Natomiast centralny sterownik odpowiada za całą automatyzację. Właśnie w ten sposób konstruowane są profesjonalne systemy sterowania, ale te mają dwie podstawowe wady: są bardzo drogie oraz najczęściej zmuszają do zakupu wszystkich komponentów tej samej marki.

Opis systemu

System korzysta z zespołu sensorów umieszczonych w rurze, będącej obejściem pompy, która przepompowuje wodę z basenu przez filtr. W pojedynczej rurze z PCV należy umieścić sensory: ORP (potencjał oksydacyjny), pH oraz temperatury. Oczywiście, projekt można uzupełnić dodatkowymi sensorami, według własnych potrzeb.

Elementami wykonawczymi są: pompa filtrująca wodę oraz dwie pompy perystaltyczne, przeznaczone do podawania do wody w basenie roztworów do zakwaszania wody (redukcji pH) oraz chlorku sodu, którego zadaniem jest sterylizowanie wody. System można uzupełnić o sterowane grzałki do wody czy elektrozawory podające wodę z sieci wodociągowej dla uzupełnienia jej braku.

Wszystkimi systemami steruje pojedynczy komputer jednopłytkowy Raspberry Pi z zainstalowanym systemem operacyjnym Hassbian. Jest to dystrybucja Raspbiana, na którym domyślnie zainstalowany jest pakiet oprogramowania Home Assistant - otwarta platforma automatyki domowej.

Potrzebne komponenty

Do zbudowania systemu automatyzacji basenu potrzebne będą następujące elementy:

  • Komputer jednopłytkowy Raspberry Pi, najlepiej w wersji 3 lub 4, wraz z kartą pamięci (rekomendowana jest karta o pojemności co najmniej 32 GB i klasie prędkości A1) oraz zasilaczem USB o wydajności prądowej nie mniejszej niż 2 A.
  • Sensor pH (EZO pH od Atlas Scientific),
  • Sensor ORP (EZO ORP od Atlas Scientific),
  • Płytki nośne od Atlas Scientific do podłączenia modułów do systemu,
  • Termometr DS18B20 w wodoodpornej obudowie wraz z opornikiem 4,7 kV, który podłącza się bezpośrednio do GPIO Raspberry Pi,
  • Przekaźniki i styczniki do sterowania urządzeniami elektrycznymi: pompami do filtrów, pompami perystaltycznymi, grzałkami etc. Pamiętajmy, aby dobrać elementy sterujące do posiadanych przez nas urządzeń; prąd i napięcie pracy styków przekaźników musi być nie mniejsze niż napięcie zasilające urządzenie i prąd przez nie pobierany. Część z przekaźników stosowana jest również do kontroli silników, jeżeli np. mają one dwa biegi z różnymi prędkościami obrotowymi.
  • Opcjonalnie - monitor zużycia energii elektrycznej, który można podłączyć do Raspberry Pi. Na rynku jest wiele tego rodzaju sensorów. Pozwoli on nam zmierzyć, ile prądu pobiera nasz system basenowy, co umożliwi dostrojenie algorytmu kontroli tak, by system był możliwie energooszczędny.

Obejście systemu - pętla dla sensorów

Na rysunku 1 pokazano rurę, w której umieszczono sensory. Jest ona instalowana jako obejście głównej pompy z filtrami. Umieszczamy w obejściu wszystkie sondy (pH, ORP i temperatury, a także inne, według uznania), jak zaprezentowano na rysunku. Dołączenie takiego układu do systemu wodnego w basenie jest proste i nie powinno być dla nikogo problemem.

Rysunek 1. Schemat dołączenia sensorów do układu wodnego basenu

Do zbudowania obejścia potrzebnych jest kilka elementów - trochę rur PCV, klej do PCV oraz podstawowe narzędzia, takie jak wiertarka czy śrubokręt. Całe obejście nie powinno kosztować więcej niż 200 zł plus koszt sond, jakie w nim umieścimy. Podczas budowy tego elementu trzeba zwrócić uwagę na trzy rzeczy:

  1. budując obejście, dobrze jest zmontować i spasować je ze sobą i z istniejącymi już rurami, zanim wszystko skleimy i połączymy na stałe. Możemy robić to wielokrotnie, aby dopasować do siebie otwory, pozycje kolanek etc.,
  2. rura, w której znajdują się sondy (D50 - średnica 50 mm), powinna być ułożona możliwie nisko i poziomo w systemie, tak aby zawsze zapełniona była wodą. Zaleca się, aby odległość pomiędzy sondami a komputerem z modułami pomiarowymi nie była większa niż 3 m.
  3. krawędzie rur, które ze sobą łączymy, należy lekko zaokrąglić pilnikiem bądź elektryczną szlifierką. Dobrze jest przećwiczyć wykonywanie takiej czynności na krawędzi rur na niepotrzebnym, odciętym fragmencie.

Podstawowe oprogramowanie na Raspberry Pi

Aby oprogramowanie działało na naszym Raspberry Pi, trzeba zainstalować na nim Hassbiana - jest to dystrybucja Raspbiana wyposażona w oprogramowanie Home Assistant. Zaawansowani użytkownicy Linuksa, mogą zainstalować Home Assistanta niezależnie, na istniejącej już instalacji systemu operacyjnego Raspbian lub innego systemu dla tego komputera jednopłytkowego.

Warto zapewnić łączność z Internetem naszemu systemowi. Dzięki temu nie tylko instalacja oprogramowania czy aktualizacji będzie prostsza, ale będzie możliwa także integracja systemu z popularnymi systemami automatyki domowej, takimi jak Sonos, Kodi czy ekosystemami Alexa, Google Home itp. Dodatkowo połączenie z Internetem pozwala na korzystanie z usług takich jak np. If This Then That (IFTTT) do tworzenia własnych algorytmów automatyki.

Jeśli to Wasze pierwsze zetknięcie z Home Assistantem, możecie być przytłoczeni ogromną liczbą zintegrowanych narzędzi dostępnych w tej aplikacji. Niniejszy projekt jest dobrą metodą na rozpoczęcie korzystania z tego pakietu, szczególnie że wszystkie pliki do korzystania z poszczególnych sond i pliki konfiguracyjne są dostępne do pobrania.

Na repozytorium w GitHubie projektu (http://bit.ly/2NbuBt3) znajdujemy foldery custom_components i packages, które musimy skopiować na nasz minikomputer.

Tak samo musimy postąpić z plikiem konfiguracyjnym ui-lovelace.yaml, który opisuje wygląd przedniego panelu Raspipool. Plik ten umieszczamy w folderze konfiguracyjnym Home Assistanta (zazwyczaj /home/homeassistant/.homeassistant/). Trzeba ponadto zmodyfikować plik configuration.yaml, tak jak pokazano na listingu 1. Wpisujemy tam dane dotyczące lokalizacji czy inne informacje dla różnych API, z których korzystać może system.

Listing 1. Modyfikacja pliku configuration.yaml
homeassistant:
name: RaspiPool
# Dane lokalizacyjne potrzebne są do obliczenia godziny wschodu
# i zachodu słońca
latitude: !secret latitude
longitude: !secret longitude
unit_system: metric
customize: !include customize.yaml
packages: !include_dir_named packages

default_config:
# Wyłączenie automatycznego wykrywania urządzeń
# discovery:

tts:
- platform: google_translate

logger:
default: critical
logs:
homeassistant.components.sensor.atlas_scientific: debug
homeassistant.components.switch.command_line: debug

group: !include groups.yaml
# Wyłączenie automatyzacji
# automation: !include automations.yaml

script: !include scripts.yaml

lovelace:
mode: yaml

Podłączanie sensorów do minikomputera

Możemy teraz podłączyć poszczególne sensory do minikomputera Raspberry Pi. Na rysunku 2 zaprezentowano schemat podłączenia poszczególnych sensorów do Raspberry Pi.

Rysunek 2. Schemat podłączenia sensorów do pomiaru najważniejszych parametrów wody w basenie

Termometry DS18B20 podłączone są do jednego pinu Raspberry Pi (można podłączyć ich wiele do jednego pinu). Moduły EZO z sensorami podłączone są do interfejsów UART minikomputera. Aby interfejs szeregowy działał, musimy zmienić wpis w pliku konfiguracyjnym config.txt. W tym celu w linii komend wpisujemy:

Nikodem Czechowski, EP

Artykuł ukazał się w
Elektronika Praktyczna
listopad 2019
DO POBRANIA
Pobierz PDF Download icon

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik kwiecień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio maj - czerwiec 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje kwiecień 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna kwiecień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich maj 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów