Przejdź do treści

Modbus

/stm.cgi?modbus_sensor

Tylko w HW 3.5+

Wybierz moduł podłączony do portu szeregowego (Modbus).

GET /stm.cgi?modbus_sensor=AB
  • A to indeks slotu Modbus 1-3, liczba całkowita 0-2
  • B to podłączony moduł, liczba całkowita 0-9, 100-104

    {
        "0": "OFF",
        "1": "SDM120",
        "2": "SDM72D-M",
        "3": "RDO-PRO-X",
        "4": "Epever Tracer",
        "5": "Sofarsolar",
        "6": "GTIL",
        "7": "Danfos EKC 202C",
        "8": "SDM630/72D-v2", // dodane w HW 3.5+ SW 1.57
        "9": "CHINT-DTSU666", // dodane w HW 3.5+ SW 1.57
        "100": "custom1 (custom)",
        "101": "custom2 (custom)",
        "102": "custom3 (custom)",
        "103": "custom4 (custom)", // dodane w HW 3.5+ SW 1.57
        "104": "custom5 (custom)", // dodane w HW 3.5+ SW 1.57
    }
    

Przykład:

http://192.168.1.100/stm.cgi?modbus_sensor=00
GET /stm.cgi?modbus_sensor=A
  • A to podłączony moduł, liczba całkowita 0-7

    {
        "0": "OFF",
        "1": "SDM120",
        "2": "SDM72D-M",
        "3": "RDO-PRO-X",
        "4": "Epever Tracer",
        "5": "Sofarsolar",
        "6": "GTIL",
        "7": "Danfos EKC 202C",
    }
    

Przykład:

http://192.168.1.100/stm.cgi?modbus_sensor=0

/stm.cgi?modbusid

Tylko w HW 3.5+

Ustaw slave ID dla modułu Modbus RTU.

GET /stm.cgi?modbusid=AB
  • A to indeks slotu Modbus 1-3, liczba całkowita 0-2
  • B to ID, liczba całkowita

Przykład:

http://192.168.1.100/stm.cgi?modbusid=01
GET /stm.cgi?modbusid=A
  • A to ID, liczba całkowita

Przykład:

http://192.168.1.100/stm.cgi?modbusid=1

/stm.cgi?modbusmapping

Dodane w HW 3.5+ SW 1.36

Ustaw mapowanie odczytów Modbus oraz dodatkowych 1-Wire (od HW 3.5+ SW 1.57) do zmiennych m1-m30, do wykorzystania w kliencie HTTP, kliencie MQTT, OLED, VOLED, Moc i energia.

GET /stm.cgi?modbusmapping=A
  • A to lista 30 par numeru slotu (liczba całkowita 0-6, gdzie 0 to nieaktywne, 1-3 to moduły Modbus, 4-6 to dodatkowe czujniki 1-Wire) i numeru odczytu (liczba całkowita 0-29)

Przykład:

http://192.168.1.100/stm.cgi?modbusmapping=10*11*12*13*14*15*16*17*18*00*00*00*00*00*00*00*00*00*00*00*00*00*00*00*00*00*00*00*00*00

/stm.cgi?mod_custom_set

Dodane w HW 3.5+ SW 1.36

Ustaw nazwę niestandardowego urządzenia i parametry komunikacji jak bitrate, bit parzystości i bit stopu.

GET /stm.cgi?mod_custom_setA=B*C*D*E*F
  • A to indeks niestandardowej konfiguracji, liczba całkowita 0-4 (0-2 do HW 3.5+ SW 1.57)
  • B to nazwa, ciąg znaków
  • C to bitrate, liczba całkowita 0-5

    {
        "5": "4800", // dodane w SW 1.42b
        "0": "9600",
        "1": "19200",
        "2": "38400",
        "3": "57600",
        "4": "115200",
    }
    
  • D to bit parzystości, liczba całkowita 0-2

    {
        "0": "none",
        "1": "even",
        "2": "odd", // dodane w SW 1.57
    }
    
  • E to bit stopu, liczba całkowita

  • F to opóźnienie między odczytami rejestrów, liczba całkowita (po podzieleniu przez 10 daje rzeczywistą wartość w sekundach), dodane w SW 1.40

Przykład:

http://192.168.1.100/stm.cgi?mod_custom_set0=sdm72_custom*0*0*1*1

/stm.cgi?mod_custom_save

Dodane w HW 3.5+ SW 1.36

Ustaw listę odczytów dla niestandardowego urządzenia, podając dla każdego nazwę, jednostkę, dzielnik, adres rejestru, kod funkcji, typ (rodzaj).

POST /stm.cgi?mod_custom_save

&mAB=C*D*E*F*G*H*I&mAB=C*D*E*F*G*H*I&mAB=C*D*E*F*G*H*I&mAB=C*D*E*F*G*H*I&mAB=C*D*E*F*G*H*I&&
  • A to indeks niestandardowej konfiguracji, liczba całkowita 0-4 (0-2 do HW 3.5+ SW 1.57)
  • B to indeks odczytu, liczba całkowita 0-29
  • C to nazwa odczytu, ciąg znaków
  • D to jednostka, ciąg znaków
  • E to dzielnik, liczba całkowita 0-3 (1, 10, 100 do HW 3.5+ SW 1.49)

    {
        "0": "1",
        "1": "10",
        "2": "100",
        "3": "1000",
        "4": "10000", // dodane w HW 3.5+ SW 1.57
    }
    
  • F to adres rejestru w formacie dziesiętnym, liczba całkowita

  • G to kod funkcji, liczba całkowita 1-4

    {
        "1": "0x1",
        "2": "0x2",
        "3": "0x3",
        "4": "0x4",
    }
    
  • H to typ zmiennej, liczba całkowita 0-2

    {
        "0": "int16",
        "1": "int32",
        "2": "float",
    }
    
  • I określa opcję endian, liczba całkowita 0-3, dodane w SW 1.57

    {
        "0": "no swap",
        "1": "swap byte",
        "2": "swap word",
        "3": "swap byte and word",
    }
    

Przykład:

http://192.168.1.100/post.cgi?mod_custom_save

&m00=Total Power*W*2*52*4*2*0&m01=import*kWh*2*72*4*2*0&m02=export*kWh*2*74*4*2*0&m03=total energy*kwh*2*342*4*2*0&m04=set total ene*kwh*2*384*4*2*0&&

/stm.cgi?modbuson

Tylko w HW 3.5+

Włącz serwer Modbus TCP.

GET /stm.cgi?modbuson=A
  • A określa, czy funkcja jest włączona, liczba całkowita 0-1

Przykład:

http://192.168.1.100/stm.cgi?modbuson=0