Skip to main content

Co znajdziesz w artykule?

  • Integracja urządzeń SmartHome
  • Panel webowy do zarządzania instalacją
  • Aplikacja mobilna na Twój smartphone
  • Komunikacja ze sterownikami PLC
  • CODESYS – narzędzie do tworzenia systemów sterowania
  • Konfiguracja Modbus w Home Assistant (NodeRed)
  • Wymiana danych między CODESYS a Home Assistant
Home Assistant – cały dom w Twoim telefonie!

Sterownik PLC w Twojej instalacji automatyki

W jaki sposób możesz zautomatyzować:

  • Twój dom?
  • biurowiec?
  • pracę instalacji OZE?

Wybierz odpowiednie sterownik PLC: WAGO, Bekchoff lub inny. Następnie włącz środowisko Codesys i zacznij programować. Oprócz programu użytkownika dla PLC będziesz musiał wykonać również wizualizację. Co jednak jeżeli będziesz potrzebował aplikację mobilną na telefon?

Sterowniki PLC posiadają opcję tworzenia wizualizacji. Zwykle dla panelów HMI lub ubogą wizualizację webową dla serwisu. W dzisiejszych czasach standardem są panele webowe (Dashboardy) oraz aplikacje mobilne. Czy jesteś w stanie wykonać to samodzielnie? Tak! Mam dla Ciebie rozwiązanie.

Przejrzałem setki rozwiązań w tym temacie. Moją uwagę przykuł Home Assistant! Posiada niezliczone integracje i łatwo łączy się z PLC. Pobierasz odpowiednie dane i budujesz elegancji panel w przeglądarce internetowej. Całość wyświetlisz również na smartphonie.

Co możesz wykonać dzięki Home Assistant:

  • wizualizacja danych na panelu webowym
  • aplikacja mobilna na podstawie panelu weboawego
  • proste automatyzacje w Node Red
  • skrypty w Python oraz Yaml
  • integracja z popularnymi serwisami typu: Google, Apple
  • komunikacja ze sterownikami PLC
  • wiele więcej!

Home Assistant – system automatyzacji domu

Home Assistant to popularny otwarty system automatyzacji domu, który umożliwia kontrolę urządzeń poprzez różne protokoły komunikacyjne. Jednym z tych protokołów jest Modbus, popularny standard komunikacji przemysłowej. Z drugiej strony, CODESYS to narzędzie programistyczne do tworzenia systemów sterowania, które obsługuje wiele protokołów, w tym Modbus.

Home Assistant obsługuje szeroki zakres urządzeń i platform, co pozwala na integrację i kontrolę wielu różnych systemów w domu. Bez względu na to, czy chodzi o inteligentne żarówki, termostaty, czujniki, kamery czy urządzenia multimedialne, Home Assistant oferuje wsparcie dla wielu popularnych protokołów i standardów, takich jak Zigbee, Z-Wave, Wi-Fi, Bluetooth czy MQTT. Umożliwia on również tworzenie zaawansowanych scenariuszy i automatyzacji. Możesz ustawić reguły i warunki, które automatycznie wyzwalają określone działania w zależności od różnych czynników, takich jak czas, stan urządzeń czy detekcja ruchu. Na przykład, możesz skonfigurować automatyczną regulację oświetlenia w zależności od natężenia światła zewnętrznego lub uruchomić odtwarzanie muzyki, gdy wracasz do domu.

Na czym mogę zainstalować Home Assistant?

Home Assistant można zainstalować na różnych platformach, zapewniając elastyczność i wybór dla użytkowników. Oto kilka popularnych sposobów instalacji Home Assistant:

       · Komputer (PC): Możesz zainstalować Home
Assistant na komputerze, na którym działa system operacyjny, takim jak Windows, macOS lub Linux. Istnieje oficjalna wersja Home Assistant, która może być zainstalowana na maszynie wirtualnej lub jako samodzielna instalacja.

       · Raspberry Pi: Raspberry Pi to popularna
platforma do instalacji Home Assistant. Istnieje oficjalna wersja Home Assistant dla Raspberry Pi, która jest łatwa w instalacji i konfiguracji. Wymaga to zakupu odpowiedniego modelu Raspberry Pi, karty microSD i
zainstalowania Home Assistant na karcie pamięci.

       · Docker: Home Assistant można uruchomić w kontenerze Docker, co zapewnia izolację i łatwość zarządzania. Docker jest popularnym narzędziem do wirtualizacji aplikacji, które umożliwia łatwą instalację i aktualizację Home Assistant.

       · NAS (Network-Attached Storage): Jeśli masz NAS, prawdopodobnie istnieje możliwość zainstalowania Home Assistant na tym urządzeniu. Niektóre popularne modele NAS, takie jak Synology lub QNAP, oferują dedykowane pakiety aplikacji, które umożliwiają instalację Home Assistant.

       ·  Inne platformy: Home Assistant można również zainstalować na innych platformach, takich jak odroid, Intel NUC, a nawet na urządzeniach z systemem Android.

Przykładowy panel sterowania Home Assistant

Panel Home Assistant

Assistant oferuje kilka narzędzi do tworzenia panelu, takich jak Lovelace UI, Panel Konfiguracyjny i Lovelace YAML. Lovelace UI jest zalecanym narzędziem i oferuje interaktywny edytor, który umożliwia łatwe tworzenie i dostosowywanie panelu.

Po wybraniu narzędzia do budowy panelu możesz dodać widżety, które wyświetlają informacje i umożliwiają kontrolę urządzeń. Na przykład, możesz dodać widżet oświetlenia, który pokazuje stan i umożliwia włączanie/wyłączanie światła. Możesz również dodać widżety czujników, termostatów, kamerek itp. Możesz grupować widżety w różne sekcje lub karty, aby zorganizować interfejs użytkownika. Na przykład, możesz stworzyć kartę „Pokój dzienny” i dodać do niej widżety oświetlenia, termostatu i mediów, aby mieć wszystkie te funkcje w jednym miejscu. Możesz również układać widżety w różnych układach, takich jak kolumny, wiersze lub siatki, aby dostosować wygląd panelu.

Home Assistant oferuje wiele możliwości personalizacji wyglądu panelu. Możesz zmieniać kolory, czcionki, tła i inne elementy wizualne, aby dopasować panel do swoich preferencji. Możesz również dodać ikony, tła graficzne i inne elementy, aby nadać panelowi indywidualny charakter.

Panel w Home Assistant może służyć do wywoływania automatyzacji i scenariuszy. Możesz dodać przyciski lub suwaki, które uruchamiają określone akcje, takie jak włączenie trybu nocnego, uruchomienie sceny „Kino domowe” czy otwarcie/zamknięcie rolet.

Home Assistant umożliwia dostęp do panelu zarówno lokalnie, jak i zdalnie. Możesz skonfigurować zdalny dostęp, aby mieć kontrolę nad swoim domem z dowolnego miejsca za pomocą aplikacji mobilnej lub interfejsu internetowego. Upewnij się również, że panel jest responsywny, czyli dobrze wygląda i działa na różnych urządzeniach, takich jak telefony, tablety czy komputery.

CODESYS – oprogramowanie do programowania sterowników PLC

CODESYS – narzędzie do tworzenia systemów sterowania

CODESYS to rozbudowane i popularne środowisko programistyczne służące do programowania sterowników i systemów automatyki. Jest to kompleksowy pakiet oprogramowania, który umożliwia tworzenie, testowanie i zarządzanie aplikacjami automatyki w różnych branżach, takich jak przemysł, budownictwo czy infrastruktura.

Głównym celem CODESYS jest ułatwienie procesu programowania sterowników PLC (programowalnych układów logicznych). Sterowniki PLC są używane w przemyśle, aby kontrolować i monitorować urządzenia i procesy. CODESYS oferuje programistom narzędzia do tworzenia aplikacji PLC, w tym edytor kodu, debugger, symulator i narzędzia do wizualizacji.

Jednym z głównych atutów CODESYS jest jego elastyczność. Obsługuje on szeroki zakres protokołów komunikacyjnych, takich jak Modbus, EtherCAT czy OPC UA, co umożliwia integrację z różnymi urządzeniami i systemami. Ponadto CODESYS jest niezależny od konkretnego sprzętu i działa na różnych platformach, takich jak sterowniki PLC różnych producentów, komputery PC, panele operatorskie czy urządzenia wbudowane.

W CODESYS będziemy musieli skonfigurować odpowiednie protokoły komunikacyjne Modbus. W zależności od wersji CODESYS proces ten może się różnić, ale ogólnie będziemy musieli dodać odpowiednią bibliotekę Modbus do naszego projektu i skonfigurować parametry komunikacyjne, takie jak adres IP urządzenia Modbus, port komunikacyjny, adresy rejestrów itp. Po skonfigurowaniu komunikacji Modbus w CODESYS będziemy mogli odczytywać i zapisywać dane z podłączonych urządzeń.

Oprogramowanie to obsługuje wiele różnych języków programowania tj. Ladder, ST czy nawet Python. Szeroka gama języków programowania umożliwia nam stosowanie CODESYS’a przy projektach, które wykonasz dla branży automatyki przemysłowej, budynkowej oraz przemysłu morskiego. O CODESYS dowiesz się więcej klikając tutaj!

Połączenie CODESYS – Home Assistant

W celu wymiany danych między CODESYS a Home Assistant będziemy korzystać z adresów rejestrów Modbus. W CODESYS będziemy zapisywać dane, które chcemy udostępnić Home Assistant, do odpowiednich rejestrów. Następnie, w Home Assistant, będziemy skonfigurować encje (entities), które będą odczytywać i aktualizować te rejestry. Możemy to zrobić, korzystając z konfiguracji YAML w pliku konfiguracyjnym Home Assistant.

Tego typu połączenie realizujemy w ręcznie instalowanym – dodatkowym środowiskiem do programowania, jakim jest Node-Red. Wspomniany Node-RED będzie służył jako pomost między CODESYS a Home Assistant. Będziesz musiał skonfigurować serwer Modbus w Node-RED, aby mógł komunikować się z CODESYS. Następnie będziesz musiał utworzyć przepływy (tzw. flow) w Node-RED, które odczytują i zapisują dane z rejestrów Modbus, które skonfigurowałeś wcześniej w środowisku CODESYS. Node-RED musi być skonfigurowany do komunikacji z Home Assistant. Można to zrobić za pomocą węzła (tzw. function block) „Home Assistant Websocket”. Będziesz musiał również utworzyć przepływy, które odczytują i zapisują dane do Home Assistant. Wykorzystamy do tego węzeł „call service” w Node-RED, który umożliwia wysłanie danych do Home Assistant.

Przykładowy flow z węzłami do komunikacji

Po skonfigurowaniu wymiany danych CODESYS będzie mógł przekazywać informacje o stanie urządzeń, takich jak odczyty czujników, stany przekaźników itp., do Home Assistant. Z kolei, Home Assistant będzie mógł wysyłać polecenia do CODESYS, takie jak ustawianie wartości na przekaźnikach czy zmiana parametrów sterowania.

W przypadku Codesys, wbudowany konfigurator Modbus jest narzędziem, które umożliwia programistom PLC łatwą konfigurację parametrów Modbus, takich jak prędkość transmisji, format danych, typy rejestrów, adresy urządzeń itp. Bez konieczności korzystania z dodatkowych narzędzi zewnętrznych.

Przesyłanie danych między CODESYS (PLC) NodeRED –> (HomeAssistant) po protokole ModBus

Integracja CODESYS z Home Assistant przy użyciu protokołu Modbus otwiera wiele możliwości dla zaawansowanego sterowania domem. Możemy wykorzystać funkcje CODESYS do tworzenia skomplikowanych algorytmów sterowania i automatyzacji, jednocześnie wykorzystując interfejs i funkcjonalności Home Assistant do wygodnego zarządzania domowym systemem automatyzacji.

Na poniższej grafice przedstawiliśmy wizualizację wirtualnego domu, który symulujemy za pomocą oprogramowania Home I/O, napisany w CODESYS program do automatyzacji zachodzących w naszym domu procesów oraz panel zarządzania i sterowania, który dostępny jest z przeglądarki internetowej jak i z poziomu aplikacji mobilnej.

Nieograniczone możliwości PLC (Codesys) i Home Assistant

Automatyka dzieli się na wiele branż. Niezależnie czy działasz z inteligentnymi budynkami, maszynami przemysłowymi czy w OZE będziesz musiał dobrać niezawodny sterownik PLC i sprostać wymaganiom Twoich klientów, czy szefa. Wymagania na rynku szybko się zmieniają. Jeżeli chcesz iść z duchem czasu, pomyśl jak wykorzystać najnowsze technologie w Twoich projektach automatyki.

Poniżej zostawiam Cię z listą pomysłów wykorzystania wiedzy z tego artykułu w praktyce.

Automatyka budynkowa (smart home):

  • sterownik PLC na Codesys:
    • program sterowania w języku ST
    • komunikacja Modbus lub OPC UA
    • zbieranie danych z czujników
    • sterowanie: oświetleniem, temperaturą, alarmowanie etc.
    • zarządzanie isntalacją OZE
  • Home Assistant
    • wizualizacja danych w panelu webowym (Dashboard)
    • aplikacja mobilna na Android i Apple
    • komunikacja w różnych protokołach

Instalacja OZE:

  • aplikacja mobilna dla OZE w Home Assistant
    • integracja falowników
    • monitoring magazynu energii
    • czujniki nasłoneczniania
    • przewidywanie zużycia energii
  • sterownik PLC na Codesys:
    • przełączanie instalacji między on-grid a off-grid
    • odczyt danych z falowników
    • program w języku ST

Zbuduj razem z nami aplikację mobilną

Podsumowując, połączenie CODESYS z Home Assistant przy użyciu protokołu Modbus pozwala na zintegrowanie zaawansowanego systemu sterowania z elastycznym systemem automatyzacji domu. Dzięki temu systemowi możemy tworzyć inteligentne rozwiązania, które łączą w sobie moc programowania CODESYS z funkcjonalnościami Home Assistant, aby stworzyć wydajny i spersonalizowany domowy system automatyzacji oraz Interaktywny panel np. w aplikacji mobilnej, który daje nam ciągły dostęp do nadzoru i sterowania naszą posiadłością lub budynkiem, a nawet maszyną przemysłową. Jeśli chcesz dowiedzieć się jak wykonać taką integrację własnoręcznie, wystarczy, że zapiszesz się na nasz kurs automatyki budynkowej, gdzie przedstawimy i wyjaśnimy ci krok po kroku, jak tego dokonać. Zapisać na kurs możesz się klikając w ten link.

Komentarz

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

The reCAPTCHA verification period has expired. Please reload the page.

<iframe src=”https://player.vimeo.com/video/757198505?h=0e10f23dac” width=”640″ height=”564″ frameborder=”0″ allow=”autoplay; fullscreen” allowfullscreen></iframe>

Mailing kursu programowania

Inteligentny DOM

Zapisując się na listę kursu otrzymasz:
– merytoryczne materiały z kursu, dzięki którym sprawdzisz, czy ten kurs jest dla Ciebie
– informacje o otwarciu zapisów [activecampaign form=62 css=1]

Zapisując się na listę zgadzasz się z naszą polityką prywatności
https://kursy.controlbyte.pl/polityka-prywatnosci/
a my zapewniamy, że Twoje dane są bezpieczne.

Mailing kursu programowania MINIKURS

Siemens Simatic S7-1200/S7-1500
w języku LAD/FBD

Zapisując się na listę kursu otrzymasz:
– merytoryczne materiały z kursu, dzięki którym sprawdzisz, czy ten kurs jest dla Ciebie
– informacje o otwarciu zapisów [activecampaign form=56 ]

Zapisując się na listę zgadzasz się z naszą polityką prywatności
https://kursy.controlbyte.pl/polityka-prywatnosci/
a my zapewniamy, że Twoje dane są bezpieczne.

MINI KURS MAILOWY

PROGRAMOWANIA

CODESYS w języku ST

 

Zapisując się na mini kurs mailowy otrzymasz:
-codziennie jedną wiadomość e-mail przez okres tygodnia
-materiały dzięki którym rozpoczniesz programować
w Codesys i języku ST

 

[activecampaign form=22]

Zapisując się na listę zgadzasz się z naszą polityką prywatności
https://kursy.controlbyte.pl/polityka-prywatnosci/
a my zapewniamy, że Twoje dane są bezpieczne.

Mailing dla programistów

ControlByte

Zapisując się na listę mailową otrzymasz:
– merytoryczne materiały z naszych kursów
– informacje o otwarciu zapisów na szkolenia programowania
– informacje o naszych webinarch na żywo [activecampaign form=3]

Zapisując się na listę zgadzasz się z naszą polityką prywatności
https://kursy.controlbyte.pl/polityka-prywatnosci/
a my zapewniamy, że Twoje dane są bezpieczne.

Mailing kursu programowania

Codesys w języku ST

Zapisując się na listę kursu otrzymasz:
– merytoryczne materiały z kursu, dzięki którym sprawdzisz, czy ten kurs jest dla Ciebie
– informacje o otwarciu zapisów [activecampaign form=20]

Zapisując się na listę zgadzasz się z naszą polityką prywatności
https://kursy.controlbyte.pl/polityka-prywatnosci/
a my zapewniamy, że Twoje dane są bezpieczne.

Mailing kursu programowania

Siemens Simatic S7-1200/S7-1500
w języku LAD/FBD + HMI

Zapisując się na listę kursu otrzymasz:
– merytoryczne materiały z kursu, dzięki którym sprawdzisz, czy ten kurs jest dla Ciebie
– informacje o otwarciu zapisów [activecampaign form=14 css=1]

Zapisując się na listę zgadzasz się z naszą polityką prywatności
https://kursy.controlbyte.pl/polityka-prywatnosci/
a my zapewniamy, że Twoje dane są bezpieczne.

Mailing kursu programowania

Siemens S7-1200, S7-1500

w języku SCL

Zapisując się na listę kursu otrzymasz:
– merytoryczne materiały z kursu, dzięki którym sprawdzisz, czy ten kurs jest dla Ciebie
– informacje o otwarciu zapisów [activecampaign form=18 css=1]

Zapisując się na listę zgadzasz się z naszą polityką prywatności
https://kursy.controlbyte.pl/polityka-prywatnosci/
a my zapewniamy, że Twoje dane są bezpieczne.