Tietoa/Integraatio/Node-RED

OhjeM-Center

M-Bus-mittarit M-Centerin kautta Node-RED:iin

Node-RED sopii hyvin mittariarvojen muuntamiseen, suodattamiseen ja jakamiseen muihin järjestelmiin. Arvot haetaan EMU M-Centeristä Modbus TCP:llä tai MQTT:llä.

Mitä tarvitaan

  • Konfiguroitu M-Center ja Modbus TCP -palvelinlisenssi (210.300.04) tai MQTT-lisenssi (210.300.03).
  • Modbusia varten paketti node-red-contrib-modbus, asennetaan kohdasta «Manage palette».
  • MQTT:tä varten välittäjä, jonka M-Center ja Node-RED tavoittavat.

Tapa 1: Modbus TCP

  1. Syötä M-Centerissä OBIS-koodi haluttuihin rekistereihin. Tariffin 1 kulutus (1-0:1.8.1) on silloin rekisterissä 1030.
  2. Lisää Node-RED:iin solmu «Modbus Read». Palvelin: M-Centerin IP, portti 502, tyyppi TCP.
  3. Unit-ID: mittarin Modbus-laiteosoite M-Centerissä.
  4. FC 3 (Read Holding Registers), osoite 1029 rekisterille 1030, määrä 2, kyselyväli esim. 15 minuuttia.
  5. Liitä perään function-solmu, joka yhdistää kaksi rekisteriä liukuluvuksi.
// Kaksi 16-bittistä rekisteriä (big endian, ylempi sana ensin) -> float32
const buf = Buffer.alloc(4);
buf.writeUInt16BE(msg.payload[0], 0);
buf.writeUInt16BE(msg.payload[1], 2);
msg.payload = buf.readFloatBE(0);
msg.topic = "asunto1/kulutus_t1";
return msg;

Käyttöohje laskee rekisterit yhdestä, node-red-contrib-modbus odottaa osoitetta nollasta. Siksi 1029 rekisterille 1030. Vertaa ensimmäistä arvoa M-Centerin mittarilukemaan.

Useille mittareille luodaan yksi lukusolmu mittaria kohden omalla Unit-ID:llä. Osoitteet pysyvät samoina, kunhan OBIS-koodit on syötetty.

Tapa 2: MQTT

MQTT-lisenssillä M-Center julkaisee jokaisen arvon omalla topicillaan. «mqtt in» -solmu jokerimerkkitilauksella vastaanottaa yhden M-Centerin kaikki arvot:

<etuliite>/emu/mcenter/<MAC>/meterreading/#

Liitä ensin debug-solmu ja tarkastele topiceja ja viestien sisältöä. Jaa sitten arvot topicin mukaan switch-solmulla, esim. polun lopussa olevan OBIS-koodin mukaan.

Kumpi tapa?

Modbus TCPMQTT
Osoitteetkiinteät, dokumentoitu käyttöohjeessatopic mittaria ja rekisteriä kohden
KyselyNode-RED kysyy aktiivisestiM-Center lähettää itse
Muut järjestelmätoma kysely jokaiselle järjestelmällevapaa määrä tilaajia välittäjässä
Lisenssi210.300.04210.300.03

Usein kysyttyä


Voiko Node-RED lukea tilarekisterit?

Kyllä. Rekisteristä 11910 (float32) tai 11912 (uint64) alkaen on viimeisimmän luennan tilakoodi: 1 onnistui, 2 epäonnistui, 3 onnistui mittarin ilmoituksella. Lue tilarekisterit uint64-muodossa.

Miten luen uint64:n?

Lue neljä rekisteriä uint64-osoitteesta alkaen, esim. 1031:stä rekisterille 1032, ja käsittele ne function-solmussa komennolla buf.readBigUInt64BE(0).

Lue lisää


SEITEM-Bus Modbus TCP:ksiRekisterikartta SEITEM-Bus MQTT:ksiTopic-rakenne SEITEMittaritiedot GrafanassaOhje SEITELisää integraatioitaYleiskatsaus

Kysyttävää integraatiosta?


Lähetä meille mittariluettelo. Autamme osoitteissa, OBIS-koodeissa ja lisensseissä.

Puhelin
+41 (0)41 545 03 00

Tekninen tuki
helpdesk [at] emuag.ch
Tukilomake →