Verwaltung

M-Bus-Produktidentifikation

Das Produkt kann anhand der folgenden Informationen identifiziert werden:

  • Hersteller-String = ELV

  • Medium = Raumsensor

  • Generation = 70-79

Das Generation-Feld zwischen Produktversionen wird nur geändert (um 1 erhöht), wenn sich die M-Bus-Protokollinformationen zwischen den Versionen ändern. Verwenden Sie das Feld Softwareversion im M-Bus-Telegramm, um die aktuelle Softwareversion zu ermitteln.

M-Bus-Adressierungsmodus

Das Produkt implementiert sowohl den primären als auch den sekundären Adressierungsmodus. Die Primäradresse und die Sekundäradresse können mithilfe des Standard-M-Bus-Befehls geändert werden. Die Primäradresse ab Werk ist 0 und die Sekundäradresse ab Werk ist die Fabrikationsnummer (Seriennummer).

M-Bus-Baudrate

Das Produkt kann 300 oder 2400 baud verarbeiten. Eine automatische Baud-Erkennung ist nicht verfügbar. Die Baudrate kann mit M-Bus-Standardbefehlen geändert werden. Die Baudrate beträgt ab Werk 2400 baud.

FCB-Bit-Umschaltung (Multitelegramm)

Der Multitelegramm-Modus oder die FCB-Bit-Umschaltung ist implementiert. Das erste Telegramm enthält Momentanwerte, Min/Max- und Durchschnittswerte der gemessenen Temperatur und Luftfeuchtigkeit. Das zweite Telegramm enthält die Temperaturwerte der letzten 24 Stunden.

M-Bus-Unterbrechung

M-Bus-Master-Unterbrechungssignale werden nach dem M-Bus-Standard gehandhabt. Jede laufende Kommunikation vom M-Bus-Slave zum Master wird bei Erkennung einer Unterbrechung durch den M-Bus-Master abgebrochen.

M-Bus-Befehle

Produkt initialisieren (SND_NKE)

Tabelle 127. Master zum Slave

Byte-Index

Daten

Beschreibung

0

0x10

Startzeichen

1

0x40

C-Feld = SND_NKE

2

0xnn

A-Feld = Adresse des Slaves

3

0xnn

Prüfsumme

4

0x16

Stoppzeichen


Benutzerdaten anfordern (REQ_UD2)

Fordern Sie Benutzerdaten vom Produkt an und warten Sie auf die Antwort des Slaves.

Tabelle 129. Master zum Slave

Byte-Index

Daten

Beschreibung

0

0x10

Startzeichen

1

0x4b | 0x5b | 0x6b | 0x7b

C-Feld = REQ_UD2

2

0xnn

A-Feld = Adresse des Slaves

3

0xnn

Prüfsumme

4

0x16

Stoppzeichen


Das RSP_UD-Telegramm ist abhängig von den FCV- und FCB-Bits im C-Feld des aufrufenden REQ_UD2-Telegramms. Es sind zwei Telegramme verfügbar:

  • Wenn FCV in REQ_UD2 gleich 0 ist oder wenn 1., 3., 5. usw. REQ_UD2 seit dem letzten SND_NKE (primärer Adressierungsmodus) oder wenn 1., 3., 5. usw. REQ_UD2 seit der letzten erfolgreichen sekundären Adressauswahl, bei der das erste Telegramm zurückgegeben wurde

  • Wenn FCV in REQ_UD2 gleich 1 ist und wenn 2., 4., 6. usw. REQ_UD2 seit dem letzten SND_NKE (primärer Adressierungsmodus) oder wenn 2., 4., 6. usw. REQ_UD2 seit der letzten erfolgreichen sekundären Adressauswahl, bei der das zweite Telegramm zurückgegeben wurde

Tabelle 130. Slave an Master – Telegramm 1

Byte-Index

Daten

Beschreibung

0

0x68

Startzeichen 1

1

0xnn

L-Feld 1

2

0xnn

L-Feld 2

3

0x68

Startzeichen 2

4

0x08

RSP-UD

5

0xnn

A-Feld = primäre Adresse

6

0x72

Variable Datenantwort, Modus 1 = LSByte zuerst

7-10

0xnnnnnnnn

Sekundäre Adresse

11-12

0x9615

Hersteller-ID „ELV“

13

0xnn

Erzeugungsfeld Im Bereich von 70 bis 79 (dez)

14

0x1B

Gerätetyp/Medium = Raumsensor

15

0xnn

Zugriffsnummer

16

0x00

Status-Byte

0x00 = Ok (kein Fehler)

0x0a = Sensorfehler (permanenter Anwendungsfehler)

17-18

0x0000

Signatur, 16 Bit binär

19

0x01

Produktstatus DIF

20

0xfd

Produktstatus VIF

21

0x1b

Produktstatus VIFE = digitaler Eingang

22

0xnn

8-Bit-Ganzzahlwert mit folgender Bit-Maske:

Bit 7: Nicht verwendet (= 0 oder 1)

Bit 6: Nicht verwendet (= 0 oder 1)

Bit 5, 4, 3: Nicht verwendet (= 0)

Bit 2: 24-Stunden-Durchschnittswertanzeige

  • Schaltet um, wenn die 24-Stunden-Durchschnittstemperatur aktualisiert wird (jede Stunde)

Bit 1: 1-Stunde-Durchschnittswertanzeige

  • Schaltet um, wenn der 1-Stunden-Durchschnitt aktualisiert wird (alle 6 Minuten)

Bit 0: Ausfall des Sensors

  • 1 = Sensorausfall (gleich wie 0x0a im Header-Statusbyte)

  • 0 = Kein Sensorausfall

23

0x02

Momentane relative Luftfeuchtigkeit DIF

24

0xfb

Momentane relative Luftfeuchtigkeit VIF

25

0x9b

Relative Luftfeuchtigkeit, in % (ganze Zahl) VIFE

26

0x74

Skalierung VIFE, x 0,01

27..28

0xnnnn

Momentane relative Luftfeuchtigkeit

Im Fehlerfall wird die relative Luftfeuchtigkeit auf 0 gesetzt.

Im Setup-Menü kann ein optionaler Luftfeuchtigkeits-VIF ausgewählt werden. In diesem Fall wird das 3-Byte-Standard-VIF ersetzt durch

  • 0xFC0348522574

29

0x22

Minimale relative Luftfeuchtigkeit DIF

30

0xfb

Minimale relative Luftfeuchtigkeit VIF

31

0x9b

Minimale relative Luftfeuchtigkeit, in % (Ganzzahl) VIFE

32

0x74

Skalierung VIFE, x 0,01

33..34

0xnnnn

Minimale momentane relative Luftfeuchtigkeit

Im Fehlerfall wird die minimale relative Luftfeuchtigkeit auf 0 gesetzt.

Dies ist die niedrigste momentane relative Luftfeuchtigkeit seit dem letzten Min/Max-Reset-Befehl.

Im Setup-Menü kann ein optionaler Luftfeuchtigkeits-VIF ausgewählt werden. In diesem Fall wird das 3-Byte-Standard-VIF ersetzt durch

  • 0xFC0348522574

35

0x12

Maximale relative Luftfeuchtigkeit DIF

36

0xfb

Maximale relative Luftfeuchtigkeit VIF

37

0x9b

Maximale relative Luftfeuchtigkeit, in % (Ganzzahl) VIFE

38

0x74

Skalierung VIFE, x 0,01

39..40

0xnnnn

Maximale momentane relative Luftfeuchtigkeit

Im Fehlerfall wird die maximale relative Luftfeuchtigkeit auf 0 gesetzt.

Dies ist die höchste momentane relative Luftfeuchtigkeit seit dem letzten Min/Max-Reset-Befehl.

Im Setup-Menü kann ein optionaler Luftfeuchtigkeits-VIF ausgewählt werden. In diesem Fall wird das 3-Byte-Standard-VIF ersetzt durch

  • 0xFC0348522574

41

0x02

Momentane Temperatur DIF

42

0x65

Momentane Temperatur VIF, Außentemperatur

43..44

0xnnnn

Momentane Temperatur x 100

Im Falle eines Fehlers wird die Temperatur auf 0 gesetzt.

45

0x22

Minimaltemperatur DIF

46

0x65

Minimaltemperatur VIF, Außentemperatur

47..48

0xnnnn

Minimaltemperatur x 100

Im Falle eines Fehlers wird die Temperatur auf 0 gesetzt.

Dies ist die niedrigste momentane Temperatur seit dem letzten Min/Max-Reset-Befehl.

49

0x12

Maximaltemperatur DIF

50

0x65

Maximaltemperatur VIF, extern

51..52

0xnnnn

Maximaltemperatur x 100

Im Falle eines Fehlers wird die Temperatur auf 0 gesetzt.

Dies ist die höchste momentane Temperatur seit dem letzten Min/Max-Reset-Befehl.

53

0x01

Durchschnittliche Dauer DIF

54

0x72

Durchschnittliche Dauer VIF

55

0xnn

Anzahl der seit dem Einschalten erfassten Stundenmittelwerte (0..24)

Dieser Zähler beginnt beim Einschalten bei Null und wird einmal pro Stunde erhöht, wenn ein neuer Stundenmittelwert der Temperatur in der 24-Stunden-Tabelle gespeichert wird. Der Zähler zählt nicht über 24 hinaus (d. h. dieser Wert ist gleich der Anzahl der in der 24-Stunden-Tabelle gespeicherten gültigen Stundenwerte) Der gleitende 24-Stunden-Mittelwert der Temperatur ist erst dann verfügbar, wenn dieser Zähler 24 erreicht hat.

56

0x42 | 0x72

1-Stunden-Temperatur gleitender Durchschnitt DIF, Speichernummer 1

0x42 = Der Wert ist verfügbar

0x72 = Der Wert ist noch nicht berechnet

57

0x65

1-Stunden-Temperatur gleitender Durchschnitt VIF, Außentemperatur

58..59

0xnnnn

1-Stunden-Temperatur gleitender Durchschnitt x 100

Dieser Wert ist nicht verfügbar (0), bis nach dem Einschalten 1 Stunde vergangen ist. Während dieser ersten Stunde wird der Wert als „Wert im Fehlerzustand“ gekennzeichnet, DIF-Bits 5 und 4 = 1.

Dieser Wert wird jede 6. Minute aktualisiert.

Im Falle eines Sensorfehlers werden die Temperaturdaten auf 0 gesetzt. Siehe Slave-Statusbyte im Datenkopf.

60

0x82 | 0xb2

24-Stunden-Temperatur gleitender Durchschnitt DIF, Speichernummer 2

0x82 = Der Wert ist verfügbar

0xb2 = Der Wert ist noch nicht berechnet

61

0x01

24-Stunden-Temperatur gleitender Durchschnitt DIFE

62

0x65

24-Stunden-Temperatur gleitender Durchschnitt VIF, Außentemperatur

63..64

0xnnnn

24-Stunden-Temperatur gleitender Durchschnitt x 100

Dieser Wert ist nicht verfügbar (0), bis nach dem Einschalten 24 Stunde vergangen sind. Während dieses Zeitraums wird der Wert als „Wert im Fehlerzustand“ gekennzeichnet, DIF-Bits 5 und 4 = 1.

Dieser Wert wird stündlich aktualisiert.

Im Falle eines Sensorfehlers werden die Temperaturdaten auf 0 gesetzt. Siehe Slave-Statusbyte im Datenkopf.

65

0x0c

Produktionsnummer DIF

66

0x78

Produktionsnummer VIF

67..68

0xnnnnnnnn

Produktionsnummer, 8-stellig gepackt BCD

69

0x0d

Firmwareversion DIF

70

0xfd

Firmwareversion VIF

71

0x0f

Firmwareversion VIFE = „Andere Software-Version“

72

0x05

Länge des Firmware-Strings (variierend)

73..77

0xnnnnnnnnnn

Zeichenfolge der Firmwareversion im Format: Major.Minor.PatchLevel

78

0x1f

Ende des Telegramms, weitere Daten folgen

79

0xnn

Prüfsumme

80

0x16

Stoppzeichen


Tabelle 131. Slave an Master - Telegramm 2

Byte-Index

Daten

Beschreibung

0

0x68

Startzeichen 1

1

0xnn

L-Feld 1

2

0xnn

L-Feld 2

3

0x68

Startzeichen 2

4

0x08

RSP_UD

5

0xnn

A-Feld = primäre Adresse

6

0x72

Variable Datenantwort, Modus 1 = LSByte zuerst

7-10

0xnnnnnnnn

Sekundäre Adresse

11-12

0x9615

Hersteller-ID „ELV“

13

0xnn

Generationsfeld

Im Bereich von 70 bis 79 (dez)

14

0x1B

Gerätetyp/Medium = Raumsensor

15

0xnn

Zugriffsnummer

16

0xnn

Status-Byte

0x00 = Ok (kein Fehler)

0x0a = Sensorfehler (permanenter Anwendungsfehler)

17-18

0x0000

Signatur, 16 Bit binär

19 + 5 x N

0xc2 | 0xf2 | 0x82 | 0xb2

24-Stunden-Protokoll Temperaturtabelle DIF

Tabellenindex = N = 0..23

Speichernummer N + 3 = 3..26

Wert Alter = N (+1/-0) Stunden

Der neueste Wert wird zuerst übertragen.

In den ersten 24 Stunden nach dem Einschalten werden die Werte als 0 gesendet und als „Wert im Fehlerzustand“ gekennzeichnet (DIF-Bits 5 und 4 = 1), solange sie noch nicht aktualisiert wurden.

Im Falle eines Sensorfehlers werden alle Temperaturdaten auf 0 gesetzt. Siehe Produktstatusbyte oder Statusbyte im Datenkopf.

19 + 5 x N

0xnn

24-Stunden-Protokoll Temperaturtabelle DIFE nn = (N+3/2)

20 + 5 x N

0x65

24-Stunden-Protokoll Temperaturtabelle VIFE

21..22 + 5 x N

0xnnnn

Durchschnittstemperatur der Stunde „jetzt – N“ x 100

23 + 5 x N

0x0f

Ende des Telegramms, es folgen keine weiteren Daten

23 + 5 x N +1

0xnn

Prüfsumme

23 + 5 x N +2

0x16

Stoppzeichen


Baudrate einstellen

Baudrate des Slaves einstellen.

Tabelle 132. Master zum Slave

Byte-Index

Daten

Beschreibung

0

0x68

Startzeichen 1

1

0x03

L-Feld 1

2

0x03

L-Feld 2

3

0x68

Startzeichen 2

4

0x43 | 0x53 | 0x63 | 0x73

C-Feld = SND-UD

5

0xnn

A-Feld = primäre Adresse

6

0xnn

CI-Feld = Baudraten-Auswahlcode:

0xb8 = 300 Baud

0xb9 = 600 Baud

0xbA = 1200 Baud

0xbb = 2400 Baud

0xbc = 4800 Baud (Anmerkung 1)

0xbd = 9600 Baud (Anmerkung 1)

0xbe = keine Änderung (Anmerkung 2)

0xbf = keine Änderung (Anmerkung 2)

Baudraten > 2400 baud funktionieren zwar, wurden aber nicht auf die Einhaltung der Timing-Spezifikationen des M-Bus-Standards getestet.

Die Baudratencodes 0xbe und 0xbf werden mit 0xe5 quittiert (ACK), obwohl sie die Baudrate nicht verändern (dies entspricht der M-Bus-Spezifikation).

7

0xnn

Prüfsumme

8

0x16

Stoppzeichen


Anwendungs-Reset

Alle Daten auf Werkseinstellung zurücksetzen.

Tabelle 134. Master zum Slave

Byte-Index

Daten

Beschreibung

0

0x68

Startzeichen 1

1

0x04

L-Feld 1

2

0x04

L-Feld 2

3

0x68

Startzeichen 2

4

0x43 | 0x53 | 0x63 | 0x73

C-Feld = SND-UD

5

0xnn

A-Feld = primäre Adresse

6

0x50

CI-Feld = Anwendungs-Reset

7

0xb0

Untercode für das Zurücksetzen der Anwendung

8

0xnn

Prüfsumme

9

0x16

Stoppzeichen


Primäre Adresse einstellen

Ändern Sie die M-Bus-Primäradresse.

Tabelle 136. Master zum Slave

Byte-Index

Daten

Beschreibung

0

0x68

Startzeichen 1

1

0x06

L-Feld 1

2

0x06

L-Feld 2

3

0x68

Startzeichen 2

4

0x43 | 0x53 | 0x63 | 0x73

C-Feld = SND-UD

5

0xnn

A-Feld = primäre Adresse

6

0x51

CI-Feld

7

0x01

DIF Primäradresse

8

0x7A

VIF Primäradresse

9

0xnn

Neue primäre Adresse (0x00-0xfa)

10

0xnn

Prüfsumme

11

0x16

Stoppzeichen


Sekundäre Adresse einstellen

M-Bus-Sekundäradresse ändern

Tabelle 138. Master zum Slave

Byte-Index

Daten

Beschreibung

0

0x68

Startzeichen 1

1

0x09

L-Feld 1

2

0x09

L-Feld 2

3

0x68

Startzeichen 2

4

0x43 | 0x53 | 0x63 | 0x73

C-Feld = SND-UD

5

0xnn

A-Feld = primäre Adresse

6

0x51

CI-Feld

7

0x0c

DIF Sekundäradresse

8

0x79

VIF Sekundäradresse

9-12

0xnnnnnnnn

Neue sekundäre Adresse, gepackte 8-Bit-BCD

13

0xnn

Prüfsumme

14

0x16

Stoppzeichen


Slave auswählen

Auswahl eines Slaves für die weitere Sekundäradressierung. Nach erfolgreicher Auswahl kann der Slave über die Primäradresse 253 angesprochen werden.

Tabelle 140. Master zum Slave

Byte-Index

Daten

Beschreibung

0

0x68

Startzeichen 1

1

0xnn

L-Feld 1

Variable je nach Auswahlmaske.

Die Auswahlmaske kann eine beliebige Größe im Bereich von 0..8 Byte haben, außer 5 (die Hersteller-ID erfordert eine vollständige 16-Bit-Maske).

2

0xnn

L-Feld 2

Variable je nach Auswahlmaske.

3

0x68

Startzeichen 2

4

0x43 | 0x53 | 0x63 | 0x73

C-Feld = SND-UD

5

0xnn

A-Feld = primäre Adresse

6

0x52

CI-Feld = Slave-Auswahl

Der Slave wird abgewählt, wenn eine Nichtübereinstimmung vorliegt.

7-10

0xnnnnnnnn

Optional

Sekundäre M-Bus-Adressmaske, gepackte BCD

Die M-Bus-ID-Maske kann das Nibble 0xf als Platzhalter in jeder der acht BCD-Ziffernpositionen verwenden.

11-12

0xnnnn

Optional

M-Bus-Hersteller-ID Maske, 16-Bit, binär

Die M-Bus-Hersteller-ID-Maske kann 0xff als Platzhalter für ein Byte oder beide Bytes verwenden.

13

0xnn

Optional

M-Bus-Generationsmaske, 8-Bit, binär

Die M-Bus Generationsmaske kann 0xff als Wildcard verwenden.

14

0xnn

Optional

M-Bus-Medium-Maske, 8-Bit, binär

Die M-Bus-Zähler-Medienmaske passt, wenn sie 0x00 („unbekannt“) oder 0xff (Wildcard) entspricht.

15

0xnn

Prüfsumme

16

0x16

Stoppzeichen


Feuchtigkeits-VIF-Code auswählen

Mit diesem Befehl wird die Darstellung der relativen Luftfeuchtigkeit VIF geändert.

Dieser Befehl wurde mit der Softwareversion 4.1.0 eingeführt.

Tabelle 142. Master zum Slave

Byte-Index

Daten

Beschreibung

0

0x68

Startzeichen 1

1

0x06

L-Feld 1

2

0x06

L-Feld 2

3

0x68

Startzeichen 2

4

0x43 | 0x53 | 0x63 | 0x73

C-Feld = SND-UD

5

0xnn

A-Feld = primäre Adresse

6

0x51

CI-Feld

7

0x0F

Herstellerspezifisch, folgt DIF

8

0x06

Elvaco-Befehl Feuchtigkeits-VIF-Code auswählen

9

0xnn

Feuchtigkeits-VIF-Auswahl

nn =

Dimensionslos (0xFDBA)=0x00

Klartext (%RH)=0x01

10

0xnn

Prüfsumme

11

0x16

Stoppzeichen


War dieser Beitrag hilfreich?

0 von 0 fanden dies hilfreich
Haben Sie Fragen? Anfrage einreichen

Kommentare (0 Kommentare)

Zu diesem Beitrag können keine Kommentare hinterlassen werden.