Hľadaj
MENU

Modbus konfigurácia

Modbus je otvorený komunikačný protokol. Typicky sa používa na integráciu s zariadeniami HVAC.

Riadiaca jednotka je vybavená tromi terminálmi. Okrem internej zbernice TapHome podporujú aj Modbus RTU. Port LAN na zariadení Core podporuje protokol Modbus TCP. To znamená, že od spoločnosti TapHome nemusíte kupovať žiadne ďalšie zariadenie, aby ste sa mohli pripojiť k zariadeniam Modbus. Na rovnakej zbernici BUS môžete používať aj viac ako jedno zariadenie modbus, ale všetky musia používať rovnaké všeobecné nastavenia modbus (Baudrate, Parity, Data Bits, Stop Bits), ale aj špecifické Slave ID pre každé pripojené zariadenie.

Nastavenie

V nastavení → Hardware → Modbus definujte nové rozhranie:

  • Modbus RTU (Vyberte terminál: BUS1, BUS2 alebo BUS3)
  • Modbus TCP (Vyberte IP addresu pre každé zariadenie)

Ak používate Modbus RTU (cez kábel RS485), uistite sa, že terminál, na ktorom je vaše zariadenie Modbus pripojené, sa nepoužíva pre TapHome Bus:

Nie je možné kombinovať zariadenia Modbus RTU so zariadeniami TapHome Bus na jednom termináli. Obe rozhrania sú elektricky kompatibilné, ale používajú úplne iný komunikačný protokol.


Modbus komunikácia všeobecné nastavenia (nájdete v dokumentácii poskytovanej výrobcom)

Implementácia v Taphome:

Modbus tabuľka poskytnutá výrobcom:

Implementácia v Taphome:

Ak komunikácia nefunguje v nasledujúcom teste, skúste meniť adresy registrov o -1 alebo +1 v porovnaní s hodnotami v tabuľke. To zvyčajne pomáha..

V rozhraní Modbus RTU alebo Modbus TCP môžete buď pridať sadu zariadení zo šablóny, alebo definovať svoje vlastné:

Podporované Modbus device typy

Použitie všeobecných typov zariadení na definovanie vlastnej Modbus šablóny:

Typ zariadeniaVizualizáciaTyp premennej
Teplomer
-- len na čítanie --
Termostat
Se
Prepínač
St
Viac hodnotový Prepínač

 

Mu
Dimmer / Analog Output
Le
Elektromer
-- len na čítanie --
Modbus Wrapper
-- len na čítanie --
Stavový kontakt
-- len na čítanie --
Premenná
Va

Čítanie a zapisaovanie hodnôt

Typyf Modbus Registrov

  • C – Coil (1-bit, read/write)
  • SC – Single Coil (1-bit, read/write)
  • D – Discrete input (1-bit, read only)
  • H – Holding register (16-bit, read/write)
  • SH – Single holding register (16-bit, read/write)
  • A – Analog input (16-bit, read only)

Typy registrov typu "S" slúžia iba na písacie funkcie a mali by sa používať pre zariadenia, ktoré nepodporujú písanie viacerých registrov naraz.

Dátové typy

  • Int16 (-32,768 to 32,767)
  • Uint16 (0 to 65,535)
  • Int32 (-2,147,483,648 to 2,147,483,647)
  • Uint32 (0 to 4,294,967,295)
  • Float (IEEE 754 Single precision floating point)
  • Bool – (-inf, 0> = false, (0, inf) = true
  • BigEndianInt16
  • LittleEndianInt16
  • BigEndianUint16
  • LittleEndianUint16
  • BigEndianInt32
  • LittleEndianInt32
  • BigEndianUint32
  • LittleEndianUint32
  • BigEndianFloat
  • LittleEndianFloat

BigEndian je predvolené nastavenie pre každý typ údajov, napr. Int32 je rovnaký ako BigEndianInt32.

MODBUSR (MODBUS READ)

MODBUSR(register_type, register_address, data_type)
Example: MODBUSR(H, 20, Int16)/100

Vracia hodnotu registra holdingu na adrese 20 vo formáte int16 a delí ju /100.

MODBUSW (MODBUS WRITE)

MODBUSW(register_type, register_address, data_type, value_to_write)
Example: MODBUSW(H, 20, Int16, Te/100)

Zaznamenáva teplotu snímača vydelenú /100 int int16 do registra 20.

MODBUSWNE (MODBUS WRITE NOT EQUAL)

Zapisuje do registra iba vtedy, ak je aktuálna hodnota iná. Číta hodnotu, skontroluje, či je rovnaká a zapisuje do registra, ak nie je. Užitočné pre ukladanie pamäte EEPROM.

MODBUSWNE(register_type, register_address, data_type, value_to_write)
Example: MODBUSWNE(H, 20, Int16, Te/100)

Najskôr sa načítava hodnota z holdingového registra na adrese 20 vo formáte int16, porovná sa s teplotnou teplotou snímača delí /100 a iba v prípade, že sa hodnoty líšia, zapíše teplotu snímača vydelenú formátom 100 int int16 do registra 20.

Adresy registrov môžu byť tiež zapísané v hexadecimálnom formáte, napr. 20 je rovnaké ako 0x14.