Sterownie rekuperacją NIKOL450 - Modbus TCP

Cześć,
posiadam dość stary polski rekuperator NIKOL450 z obsługą Modbus TCP. Generalnie podłączyłem się do sterownika i odczytuję dane o temperaturach, obrotach itp.
Natomiast mam problem ze sterowaniem.

Udało mi się utworzyć jeden przełącznik, który przełącza z trybu Auto (2) na Manual (0).
Jak przełączy się na Manual to można sterować prędkością wentylatorów, ale nie wiem co dalej, jak sterować prędkościami.

Chciałbym po przełączeniu na Manual sterować prędkościami wentylatorów, np.:
Prędkość I - 0%
Prędkość II - 30%
Prędkość III - 60%
Prędkość IV - 100%

W dokumentacji sterownie wentylatorami jest pod adresem 34 w zakresie od 0-100. Nie wiem jaki utworzyć kod aby były 4 przyciski.

Jak to zrobić? Macie jakieś pomysły? :slight_smile:

Poniżej wycinek dokumentacji do sterownika modbus z opisem, a w linku cały opis.

http://www.alres.pl/pub/rejestry_modbus_msr23.pdf

To mój kod przełącznika z Auto na Manual:

modbus:
  - name: "NIKOL_450"
    type: tcp
    host: "192.168.1.6"
    port: 502
    timeout: 5
    delay: 2
    
    switches:
    - name: "Reku_Tryb_Obrotow"
      slave: 109
      address: 37
      write_type: holding
      command_on: 2
      command_off: 0
      verify:
        input_type: holding
        address: 37
        state_on: 2
        state_off: 0

Wdzięczny za pomoc oraz uwagi.

Jest kilka możliwości:

https://www.reddit.com/r/homeassistant/comments/18k2vna/how_can_i_use_fan_integration_with_modbus_device/

Dziękuję za wskazówki, jednak chyba to mnie przerasta, bo nie za bardzo wiem jak skorelować modbus z informacjami które mi podałeś.

Czy mam teraz próbować odczytywać dane z tego adresu 34 ? Utworzyć kolejny switch? czy mam utworzyć coś takiego:

fan:
  - platform: template

Jaka to powinna być składnia?

tu w dokumentacji składnia fan jest trochę inna:

modbus:
  - type: tcp
    host: IP_ADDRESS
    port: 502
    fans:
      - name: "Fan1"
        address: 13
        write_type: coil

Przepraszam za mało techniczny język, ale jestem świeży.

@eight-stars dobrze kombinujesz :slight_smile:, najpierw musisz mieć encję fan z Modbus dzięki czemu będziesz mógł odczytać faktyczny (rzeczywisty) stan wentylatora oraz będziesz mógł sterować tym wentylatorem korzystając z usług Modbus w HA czyli modbus.write_register i modbus.write_coil.

image

Aby zmienić obroty tego wentylatora musisz zmienić wartość w tym rejestrze “34” za pomocą modbus.write_register albo modbus.write_coil (nie wchodzę w szczegóły czy to register czy coils).
Jak masz opanowane sterowanie tym wentylatorem robisz encję fan z template aby na końcu uzyskać taki efekt:
image
a docelowo tak przedstawić rekuperator (choć ja się na tym nie znam):
image
albo
image
Małymi kroczkami do przodu :slightly_smiling_face:, w razie czego pisz co udało się zrobić. Też jestem na etapie budowanie encji fan z okapu :wink:

Sterowanie obrotami wentylatorów nie jest dobrym rozwiązaniem. Przy prędkości 30% spręż może być tak mały że nie będzie przepływu powietrza w instalacji.
Lepszym (moim zdaniem) jest sterowanie czasowe wentylatorami pracującymi na 100%.
Przykładowo - 10% to 6 minut pracy wentylatora w czasie godziny, 30% to 18 minut pracy w ciągu godziny, i tak dalej.

dzięki za nakierowanie, tak też zacznę robić… :slight_smile:

Cześć, dzięki za info. Z tymi trybami to trochę na wyrost. Najbardziej interesuje mnie ustawienie wentylatorów na 0%. Głównie chodzi o to momenty kiedy na dworze mam kiepskiej jakości powietrze. Wtedy tylko skręcam obroty do 0%.
Do sterowania nawiewami mam cały harmonogram z podziałem na dni i godziny. mogę sobie ustawiać dowolnie te wartości.

Dzięki @macek jeszcze raz :slight_smile:
posiłkując się Twoimi wskazówkami z posta:

udało mi się utworzyć zwykły przycisk którym mogę wyzerować nawiewy lub dodać nowy z inną prędkością.

Teraz spróbuję to jeszcze jakoś ogarnąć estetycznie jak powyżej.

Jak pisałeś małymi kroczkami do przodu :slight_smile:

1 Like