Vyhledávání
MENU
  • Výrazy
  • Architektura systému podle typu projektu
  • Uživatelé a oprávnění
  • Konfigurace

    Modbus je otevřený komunikační protokol. Obvykle se používá pro integraci se zařízeními HVAC.

    Core se dodává se třemi terminály sběrnice. Kromě interní sběrnice TapHome také podporují Modbus RTU. Port LAN v Core podporuje protokol Modbus TCP. To znamená, že pro připojení k zařízením Modbus nemusíte od TapHome kupovat žádné další zařízení.

    Založit

    V Nastavení → Hardware → Modbus definujte nové rozhraní:

    • Modbus RTU (Definujte terminál: BUS1, BUS2 nebo BUS3)
    • Modbus TCP (Definujte IP adresu pro každé zařízení)

    Pokud používáte Modbus RTU (pomocí kabelu RS485), ujistěte se, že terminál, ke kterému je připojeno vaše zařízení Modbus, není pro TapHome Bus používán. Mějte na paměti, že můžete použít více než jedno zařízení modbus na stejné sběrnici, ale musí pro každé připojené zařízení používat stejná obecná nastavení modbusu (přenosová rychlost, parita, datové bity, stop bity) a konkrétní Slave ID.

    Na jednom terminálu nelze kombinovat zařízení Modbus RTU se zařízeními TapHome Bus. Obě rozhraní jsou elektricky kompatibilní, ale používají zcela odlišný komunikační protokol.

    Obecná nastavení komunikace Modbus (poskytnuté výrobcem v manuálu)

    Implementace v rámci Taphome:

    Komunikační tabulka Modbus poskytovaná výrobcem

    Implementace v rámci Taphome

    Pokud komunikace v následujícím testu nefunguje, zkuste změnit adresy registrů o -1 nebo +1 ve srovnání s hodnotami v tabulce. To obvykle pomáhá.

    V rozhraní Modbus RTU nebo Modbus TCP můžete přidat sadu zařízení ze šablony: https://taphome.com/support/15695874, nebo definovat vlastní :

    Podporované typy zařízení Modbus

    Definujte vlastní integraci Modbus pomocí obecných typů zařízení:

    Typ zařízení

    Vizualizace

    Proměnná pro zápisové výrazy

    Senzor teploty


    -- pouze ke čtení --

    Termostat


    Se

    Přepínač


    St

    Spínač s více hodnotami

    Mu

    Stmívač / Analogový výstup


    Le

    Elektroměr


    -- pouze ke čtení --

    Modbus Wrapper


    -- pouze ke čtení --

    Stavový kontakt


    -- pouze ke čtení --

    Proměnná

    Va

    Čtení a zápis hodnot

    Druhy registrů Modbus

    • C - Cívka (1-bit, čtení / zápis)
    • SC - Single Coil (1-bit, čtení / zápis)
    • D - Diskrétní vstup (1-bit, pouze pro čtení)
    • H - Holdingový registr (16-bit, čtení / zápis)
    • SH - Single holding register (16-bit, read / write)
    • A - Analogový vstup (16bitový, pouze pro čtení)

    Typy registrů „S“ slouží pouze pro funkce zápisu a měly by se používat pro zařízení, která nepodporují zápis do více registrů najednou.

    Typy dat

    • 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 výchozí nastavení pro každý datový typ, např. Int32 je stejné jako BigEndianInt32.

    MODBUSR (MODBUS READ)

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

    Vrací hodnotu holdingového registru na adrese 20 ve formátu int16 a dělí ji 100.

    MODBUSW (MODBUS WRITE)

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

    Zapíše teplotu senzoru dělenou 100 int int16 formátu do udržovacího registru 20.

    MODBUSWNE (MODBUS WRITE NOT EQUAL)

    Zapíše se do registru, pouze pokud je aktuální hodnota jiná. Přečte hodnotu, zkontroluje, zda se rovná a zapíše do registru, pokud ne. Užitečné pro ukládání paměti EEPROM.

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

    Nejprve přečte hodnotu z udržovacího registru na adrese 20 ve formátu int16, porovná ji s teplotou snímače teploty děleno 100 a pouze v případě, že jsou hodnoty odlišné, zapíše se teplota snímače dělená formátem 100 int int16 do udržovacího registru 20.

    Registrační adresy lze také psát v hexadecimálním formátu, např. 20 je stejné jako 0x14.

    Výrazy

    Klepnutím na tento odkaz najdete další informace o výrazech: https://taphome.com/support/41123985