Sterowniki w inteligentnym domu

Odnośnie systemów Fibaro, Greton, nie miałem do czynienia, sporo czytałem ale nie wiem za co taka cena, jak dla mnie kosmos jak za takie funkcjonalności jakie oferują.

I to wg mnie jest przepaść w stosunku do tego co obecnie oferują inne systemy, to programowanie automatyki jest zbyt trudne.

Czyli masz cos podobnego do ekspanderów typu INT-IORS (8 wyjsc, 8 wejść), za pomocą którego można sterować 4 roletami wraz z fizycznymi przyciskami. A z tego wynikałoby, że masz Integre co najmniej w wersji 64 albo 128.

Zobaczymy czy standard KNX przyjmie się na rynku, na razie wszystko co dziala w tym standardzie nadal sporo kosztuje.

Mam prośbę: pochwalisz się zdjęciem rozdzielnicy z automatyką?

Cześć, jestem tu nowy i to mój pierwszy post. Jestem początkujący w temacie HASS. Bardzo mi zależy na integracji z moim systemem domowym opartym na sterowniku PLC Wago 750-842. Potrzebowałbym jakieś łopatologicznej instrukcji/wskazówki co mam zrobić aby odczytywać stany wyjść zapisywać do wejść.
Wykonałem już wstępną konfigurację https://www.home-assistant.io/integrations/modbus ale nie wiem co dalej:)
Instalacja HASS też od dzisiaj:)

Instalacja HASS też od dzisiaj:)

@niesamowitysmyk prosisz o pomoc w konfiguracji Modbus a nie znasz podstaw zasady działania Home Assistanta, przy takim poziomie Twojej wiedzy nie da rady tego ogarnąć, w dodatku zdalnie dlatego ja na razie odpadam.
Proponuje abyś trochę pobawił sie HA na prostszych rzeczach i jak nabierzesz trochę więcej doświadczenia (tak samo jak napewno było to w przypadku sterownika PLC), można będzie podejść do tematu integracji tego urządzenia.

Dzięki za szybką odpowiedź. Faktycznie dopiero zaczynam i będę starał się wgłębić w temat. Wczoraj jeszcze posiedziałem i udało mi się znaleźć fajny tutorial: https://www.youtube.com/watch?v=fV78MQks6BI na którym w NODE-RED jest pokazana integracja z WAGO - MODBUS. Co najważniejsze działa bez zarzutu. Przy okazji podzielę się dwoma uwagami: w moim sterowniku odczyt adresów wejść są zaczynają się 0 do 511 a adresy wyjść od 512 do 1023. Dzisiaj będę testował funkcję WRITE jednak będzie to wymagało przeprogramowania sterownika aby nadać uprawnienia zapisu przez MODBUS (właściwe wszystko to było opisane w manualu). Teraz będę ogarniał instrukcję Artura dla NODE-RED i myślę że powinno się udać:) Pozdrawiam

I tutaj pojawiają sie rozbieżności - diabeł tkwi w szczegółach - ponieważ opisana wcześniej integracja Modbus z HA to bezpośrednie sterowanie za pomocą HA, jest tylko Modbus i HA, natomiast filmik z YT to wykorzystanie Node-REDa (i jednego z jego modułów node-red-contrib-modbus) oraz protokołu MQTT do sterowania sterownikiem PLC, jest Modbus, Node-RED, MQTT i dopiero HA. Jak widać, to zupełnie dwa rożne sposoby osiągnięcia tego samego - "integracji [dop. HA] z moim systemem domowym opartym na sterowniku PLC"

Czy ktoś używa tzw. przekaźników programowalnych? Np. easy4E firmy EATON
lub programowalnych sterowników logicznych FLC firmy F&F?

Urządzenie easyE4 to programowalne urządzenie przełączająco-terujące, używane jako zamiennik dla sterowania przekaźnikowego i stycznikowego. Jest ono przeznaczone wyłącznie dokontroli, obsługi i sterowania maszyni instalacji oraz techniki domowej w budynkach użytkowych.

FLC18-ETH-12DI-6R to uniwersalny, rozbudowany i programowalny przekaźnik logiczny. Potrafi obsługiwać urządzenia w gospodarstwach domowych oraz sterować elementami instalacji elektrycznych (oświetlenie klatek schodowych, oświetlenie chodników i podjazdów, kontrola pracy markiz, rolet i zasłon, oświetlenie wystaw, sterowanie prostymi maszynami). Może również zastąpić pojedyncze moduły specjalizowane w szafach rozdzielczych zmniejszając tym samym ich rozmiary.

Oba mają port Ethernet, web sever, protokół Modbus, FCL dodatkowo MQTT czyli wszystko to co potrzeba do integracji z Home Assistant. Cena urządzeń również nie jest zaporowa.

Cześć
Czy mogę prosić o jakieś wskazówki co do takiego wykorzystania PLC/Modbus w HA ?
Mam Fateka od kilku lat , działa ok ale teraz startuję z HA. Samo połączenie to drobiazg ale jak pójść dalej. Np przy próbie konfigurowania takiego przełącznika dostaję komunikat “Encja “switch.korytarz_gora” nie ma unikalnego identyfikatora, dlatego z poziomu interfejsu użytkownika nie można zarządzać jej ustawieniami.” Dodaję entity_id za pomocą “konfiguracja/dostosowanie” ale to nie zmienia sytuacji.

Czyli jak możesz to połączyć? Jakie możliwości daje Fatek - Modbus RTU, Modbus TCP?

Ja używam Modbus TCP
Łącze się tak (w pliku configuration.yaml) :

modbus:
  - name: fatek1
    type: tcp
    host: IP_MOJEGO_FATEKA
    port: 502

A potem dodałem przełączniki (też w configuration.yaml) :

switch:
  - platform: modbus
    scan_interval: 10
    coils:
    - name: wentylacja
      hub: fatek1
      slave: 1
      coil: 0
    - name: salon
      hub: fatek1
      slave: 1
      coil: 1
    - name: kuchnia
      hub: fatek1
      slave: 1
      coil: 2
    - name: brama
      hub: fatek1
      slave: 1
      coil: 3

Te przełączniki pokazały się na ekranie głównym (gdy jest automatycznie tworzony).
Można je też dodać używając nazw : switch.salon

Czyli wszystko zgodnie z dokumentacją.

Proponuje zmienić parametr scan_interval: 1.
Zmiana stanu przełączników na PLC poprawnie jest raportowana do HA?

Tak - operacje na PLC pokazują się na HA.
Zmiana scan_interval z 10 na 1 oczywiście przyspiesza reakcję na “ręczne” przełączenie światła przyciskiem na ścianie.

Ale mam teraz inne wyzwanie.
Fatek steruje przez modbus sterownikiem podobnym do EC-133MB (mam starszą wersję) - jest akurat 3 obwody LEDów i każdym z nich mogę oddzielnie sterować - zatem HA czyta/zapisuje rejestry po modbusie i wstawiając wartość od 0 do 100 reguluje jasność LEDów.
Niby to działa , ale po pierwsze muszę dostosowywać wartość “brightness” z 255 do 100 a nie potrafię go (HA) zmusić aby pracował na brightness_pct czyli procentowym z zakresem właśnie 0-100 . A po drugie aktualizacja pozycji suwaka i poziom rozświetlenia ikonki nie chce mi działać . Tak jakby wysłanie danych działało ale odczytanie (dla suwaka) już nie.

Czy coś podobnego do tego sterownika jest dostępne na rynku? Trudno o element wykonawczy sterowany po Modbus.

Zauważ, że suwak pokazuje wartości procentowe 0-100% a HA (w przypadku moich żarówek LED) a wysyła brightness w postaci dziesietnej 0-255 i robi to automatycznie, automatycznie skaluje/zamienia, to wynika z funkcjonalnosci danej żarówki (encji). Ty próbujesz to zrobić samodzielnie? Pokaż konfigurację encji dla tego LEDa w sekcji modbus.

Z zabawek po Modbus mam jeszcze licznik Orno OR-WE-517, ale to świeży nabytek i na razie nie podłączony. Można też znaleźć coś ciekawego np na aliexpres.
Razem z Fatekiem używam jeszcze przetwornika Fatek DA do sterowania czymś co potrzebuje 1-10v

kod dla obsługi LEDa u mnie wygląda tak:

modbus:
  - name: fatek1
    type: tcp
    host: IP_FATEKA
    port: PORT_FATEKA


sensor:
  - platform: modbus
    scan_interval: 1
    registers:
      - name: sensor_kuchnia_led
        hub: fatek1
        unit_of_measurement: "%"
        slave: 1
        register: 100


light:
  - platform: template
    lights:
      kuchnia:
        friendly_name: "Kuchnia LED"
        level_template: "{{ states('sensor.sensor_kuchnia_led') / 10 }}"
        value_template: "{{ states('sensor.sensor_kuchnia_led') | int > 0 }}"
        turn_on:
          - service: modbus.write_register
            data:
              hub: fatek1
              unit: 1
              address: 100
              value: 15
        turn_off:
          - service: modbus.write_register
            data:
              hub: fatek1
              unit: 1
              address: 100
              value: 0
        set_level:
          - service: modbus.write_register
            data:
              hub: fatek1
              unit: 1
              address: 100
              value: "{{ (brightness | float / 255.0) * 100 | round(0) }}"

@Ian_I potrzebuje jeszcze jednej informacji: jakie wartości `brightness" przyjmuje sterownik do LEDów od 0 do 255 czy od 0 do 100 (w procentach)?

Sam sterownik ledów przyjmuje wartości 0-1000 oraz parametr szybkości zmiany w sekundach ale w tym przypadku HA komunikuje się nie ze sterownikiem LED tylko z FATEKiem - a w nim mam to oprogramowane tak, że potrzebna jest tylko wartość 0-100

W takim razie, popraw mnie jeżeli założenia są błędne:

  • jeżeli w PLC jest wartość 0 to światło jest wyłączone
  • jeżeli w PLC jest wartość od 1 do 100 to światło jest włączone a brightness w HA obliczasz wg wzoru: ((states('sensor.plc_kuchnia_led') | int ) * 255 / 100) | round(0) co opowiada wartości 255 przy wartości 100 w PLC
  • jeżeli w HA będziesz zmieniał brightness (w zakresie 0-255) to do sterownika PLC musisz wysłać wartość obliczoną wg wzoru: (brightness | float / 255) * 100 | int.

Wg mnie konfiguracja powinna wyglądać tak:

sensor:
  - platform: modbus
    scan_interval: 1
    registers:
      - name: plc_kuchnia_led
        hub: fatek1
        slave: 1
        register: 100

light:
  - platform: template
    lights:
      kuchnia:
        friendly_name: "Kuchnia LED"
        value_template: "{{ states('sensor.plc_kuchnia_led') | int > 0 }}"
        level_template: >
          {% if (states('sensor.plc_kuchnia_led') | int) == 0 %}
            {{ (states('sensor.plc_kuchnia_led') | int) }}
          {% else %}
            {{ ((states('sensor.plc_kuchnia_led') | int ) * 255 / 100) | round(0) }}
          {% endif %}
        turn_on:
          - service: modbus.write_register
            data:
              hub: fatek1
              unit: 1
              address: 100
              value: 100
        turn_off:
          - service: modbus.write_register
            data:
              hub: fatek1
              unit: 1
              address: 100
              value: 0
        set_level:
          - service: modbus.write_register
            data:
              hub: fatek1
              unit: 1
              address: 100
            data_template:  
              value: "{{ (brightness | float / 255) * 100 | int }}"

Do przetestowania jest także wysłanie danych do PLC w ten sposób:

       set_level:
          - service: modbus.write_register
            data_template:
              hub: fatek1
              unit: 1
              address: 100
              value: "{{ (brightness | float / 255) * 100 | int }}"

@macek wielkie dzięki :grin: , teraz działa super . Późno już więc tylko pierwszy sposób sprawdziłem, ale jutro sprawdzę drugi .

To dobrze, ze działa super, tez jestem z tego dumny :grin: bo nie mając do czynienia ze sterownikami PLC, wspólnymi siłami udało się nam połączyć HA z “automatyką przemysłową”.
Dopytam jeszcze o sprawy techniczne Twojego rozwiązania:

  • stosujesz na ścianach przełączniki czy łączniki zwierne odbijające?
  • wyjścia sterownika są przekaznikowe 24V czy tranzystorowe ?
  • w jaki sposób sterujesz roletami? Co jest podłączone do wyjścia sterownika?

Coś przed świętami mało czasu i nadal nie sprawdziłem tego drugiego sposobu na zapis danych do PLC. Ale co się odwlecze … :grin:

Wszędzie mam przełączniki “dzwonkowe” Kontakt Simon seria 54. Ale zauważyłem , że te najczęściej używane zaczynają padać. Co prawda to już ponad 5 lat no ale i tak niezbyt ładnie z ich strony.

Sterownik to 12 wejść i 8 wyjść przekaźnikowych - ale ich używam tylko do sterowania czymś bez obciążenia. Pozostałe wyjścia obsługuję modułami FBs-24Y - czyli tranzystorowe - i do tego przekaźniki 24V Relpol - zazwyczaj działają ok - rzadko się sklejają . Wejścia to FBs-24X. Do tej pory Fatek ani raz nie zachował się podejrzanie. Jak ktoś chce się tym PLC zainteresować to jest stała promocja na zestaw startowy.

Rolety dopiero się pojawiają u nas - na razie jedna - od rolety do rozdzielnicy położone kable 4x1mm2 - napęd sterowany przewodowo, bez radia - sterowanie dwoma przekaźnikami połączonymi tak, że jeśli jeden jest włączony to drugi się nie włączy (na wypadek sklejenia styków) można też połączyć tak aby jeden przekaźnik decydował o kierunku a drugi podawał napięcie.

Witam,
Chciałbym się podłączyć do tematu, gdyż tak jak kolega wyżej posiadam PLC do sterowania domem jako główne urządzenie wykonawcze. Wszystkie przyciski, lampy, gniazda i inne wybrane są sterowane za pomocą sterownika. Działa to rewelacyjnie i bezproblemowo i tak zostanie.
Jednak z uwagi na to że brakuje mi wizualizacji i podglądu stanu instalacji jakieś dwa lata temu postawiłem sobie RPi z dashboardem zainstalowanym na Node red. Obserwując od jakieś czasu możliwości HA i możliwości rozwijania takiego systemu chciałbym przesiąść się na HA w którym również jest node-red więc problem komunikacji ze sterownikiem całkowicie mi odpadnie.
Zakupiłem więc na dobry początek drugie RPi do testów.
Sam odczyt jak i sterowanie nie są problem, wstawiając przycisk w HA odczytuje lub wysyłam.
Problem pojawia się gdy na jednym przycisku chcę aby stan (wyłączony lub załączony) pojawiał mi się obok przycisku odczytany z PLC, a tym przyciskiem wysyłał wiadomość do sterownika załącz lub wyłącz.