Sunteți pe pagina 1din 11

Protocolul de comunicatie M-Bus

M-Bus a fost dezvoltat de catre Prof. dr. Horst Zeigler Universitatea din Paderborn in cooperare cu Texas Instruments
Deutchland GmbH si Techem GmbH. Conceptul a avut la baza Modelul de referinta ISO-OSI, in scopul realizari unui
sistem deschis care sa poata utiliza orice protocol dorit.

Nivelul FIZIC

Nivelul LEGATURA DE DATE

Proceduri de transmisie in cazul erorilor


O eroare in telegrama receptionata poate fi detectata de catre
receptor (master sau slave) prin verificarea urmatoarelor campuri:
START / paritate / STOP pentru fiecare caracter;
START / suma de verificare / STOP pentru fiecare caracter al
celor 3 formate;
Al doilea caracter de START, existenta celor 2 campuri lungime
(L), si numarul de caractere receptionate (= camp L+6) pentru
cadru lung sau de control.
Consecinte:
Daca o eroare a fost detectata, ca rezultat al verificarilor,
transmisia nu este acceptata si se transmite o telegrama de
indicare a erorii sau confirmarea nu se va expediat.
Dupa o limita de timp de 330 perioade de bit + 50ms, master-ul
considera ca telegrama pe calea inapoi s-a blocat si retransmite
mesajul initial incercand de 2 ori. Daca nu se receptioneaza o
telegrama valida se introduce o perioada idle time de 33
intervale de bit.
Daca slave-ul expediaza mesaje de raspuns eronate sau
corupte de 3 ori la rand, se introduce o perioada de 33 intervale de
bit.
Master-ul trebuie sa incerce in final repunerea in functiune a
sistemului cu SND_NKE. Daca adresa in cauza tot nu se
activeaza, se trece la urmatoarea adresa.

Nivelul APLICATIE
Campul CI defineste tipul si structura datelor utilizator.
EN1434-3 defineste 2 posibile secvente in inregistrari
multioctet.
Bitul 2 (numararea incepe cu bitul 0), care se noteaza M
(mode), in campul CI, ofera informatii despre secventa
de octeti utilizata in structurile de date multioctet. Daca
Mode nu este setat (Mode 1), cel mai putin semnificativ
octet al inregistrarii multioctet este transmis primul, in caz
contrar (Mode 2) este transmis cel mai semnificativ.
Grupul de lucru M-Bus recomanda utilizarea in aplicatii
doar a Mode 1.

Structura de date cu lungime fixa

Structura de date cu lungime variabila

Tabel 1

Tabel 2

Tabel 1

Tabel 2

SND_NKE (detectie slave) : 0x10,0x40,adr,suma,0x16


Campurile sunt: start=0x10, C=0x40 (cadru scurt),adr (oferita de utilizator), suma = (0x40+adr)&0xFF; 0x16 (stop)
Slave-ul poate raspunde cu E5h sau cu 16h sau altceva (pentru eroare)
SND_UD (modificare adresa): 0x68,0x06,0x06,0x68,0x53,0xFE,0x51,0x01,0x7A,adr,suma,0x16
Campurile sunt:
0x68,0x06,0x06,0x68
start,L=6,L=6(lungime),start
0x53,0xFE,0x51
C=0x53(SND_UD lung),A=0xFE (adresa difuzare),CI=0x51 (mod 1, expediere date)
0x01,0x7A
DIF=0x01, VIF=0x7A (asociere adresa primara)
suma = (adr+(0x53+0xFE+0x51+0x01+0x7A))&0xFF
0x16
stop
Slave-ul raspunde cu E5h sau cu 16h (pentru eroare)
SND_UD (modificare viteza): 0x68,0x03,0x03,0x68,0x53,0xFE,viteza,suma,0x16
Campurile sunt :
0x68,0x03,0x03,0x68
sus;
0x53,0xFE,viteza
C=0x53 (cadru lung), A=0xFE, CI=viteza
suma = (0x53+0xFE+viteza)&0xFF
0x16
stop.
REQ_UD2 (cerere date clasa 2): 0x10,0x5B,adr,suma,0x16
Campurile sunt:
0x10
start;
0x5B
cadru scurt;
adr.
Adresa;
suma = (0x5B+adr)&0xFF
0x16
stop
Raspuns slave la REQ_UD2:
Campurile sunt:
0x68,0x30,0x30,0x68,0x08,0x08,0x72,0x63,0x23,0x25,0x99,0x82,0x4D,0x02,0x04,0x00,0x68,0x00,0x00,0x04,0x07,
0x4B,0xBE,0x01,0x00,0x0C,0X15,0x08,0x85,0x24,0x00,0x0B,0x2E,0x00,0x00,0x00,0x0B,0x3B,0x00,0x00,0x00,0xD
B
,0x3B,0x00,0x00,0x00,0x02,0x6C,0x4C,0x06,0x02,0x27,0x50,0x03,0x0F,0x25,0x0C,0xE5,0x16
si apartin unei telegrame su structura de dimensiune variabila.

Semnificatia campurilor este urmatoarea:


0x68,0x30,0x30,0x68
start,L=48d,L=48d,start
0x08,0x08,0x72
C=0x08 (cadru lung, RSP_UD), A=0x08, CI=0x72 (structura variabila, iar bitul 2 din octet (in dreapta) 01110010
indica M=0 (LSB este primul trimis))
Header: urmatorii 12 octeti
0x63,0x23,0x25,0x99
0x82,0x4D
0x02
0x04
0x00
0x68
0x00,0x00
Date 1
0x04
0x07
4 octeti: 0x4B,0xBE,0x01,0x00

ID Nr.: 99252363d
Nr.producator: 4D82h
Generatie: 02d
Mediu (tabel p.55) Heat (caldura) retur(out)
Nr.acces (telegrama cu nr 0)
Stare (01101000) (tabel p.40) eroare permanenta, nu baterie slaba,numaratoare cu valori actuale,cod BCD
Semnatura (rezervat pentru viitoare aplicatii)
DIF=DIB (DIFE=0 deoarece MSB=0)
04h = 0(existenta DIFE), 0(LSB primul) 00 (tabel p.42) valoare instantanee, 0100 (tabel p. 42)
intreg pe 32biti (4 octeti)
VIF=VIB (VIFE=0 deoarece MSB=0) 07h = 0(existenta VIFE), 0000 (tabel p.56) energie cu unitate
de masura data de 10(111-3)Wh = 104Wh
Se citeste: 0001BE4Bh=1142.51MWh

Date 2
0x0C
fara DIFE, LSB primul, 32biti cod 8 BCD
0x15
fara VIFE, 0010 volum, 101 10-1m3
4octeti: 0x08,0x85,0x24,0x00 Se citeste: 00248508h = 24850.8m3

Date 3
0x0B
0x2E
3 octeti: 0x00,0x00,0x00

fara DIFE,LSB primul,24biti cod 6 BCD


fara VIFE, 0101 putere, 110 106J
Se citeste: 000000h = 0J

Date 4
0x0B
0x3B
3 octeti: 0x00,0x00,0x00

fara DIFE,LSB primul, 24biti cod 10 BCD


fara VIFE, 0111 debit, 011 10-3m3/h
Se citeste: 000000h = 0m3/h

Date 5
0x02
0x6C
2 octeti: 0x4C,0x06

fara DIFE, LSB primul, 16biti nr. Intreg


fara VIFE, 110110 data calendaristica
Se citeste: 064Ch = 11.06.02

Date 6
0x02
0x27
2 octeti: 0x50,0x03
0x0F
0x25,0C
0xE5
0x16

fara DIFE, LSB primul, 16biti nr. Intreg


fara VIFE, 0100 timp operare, 11 nr. Zile
Se citeste: 0350h = 848 zile
MDH (header producator)
0C25 date producator
suma de control (&0xFF)
STOP telegrama

APLICATIE CONTORIZARE Univ. VALAHIA Tgv. protocol RS232/M-Bus


RS232C

[ 2.5 ]

Convertor RS232 / M-Bus [ 2.2 ]


Protocol M-Bus

RS232
M-Bus

[2.4 ]

Calculator de energie
Interfata M-Bus

[ 2.2 ]

Program aplicatie

[ 5.2 ]

APLICATIE CONTORIZARE - S.C. TERMICA S.A (implementare


ELSACO)
2.4GHz
COM1/2

RS232C Modem

Statie radio spectru imprastiat

Program aplicatie
(ELSACO)

M-Bus

Calculator energie

Calculator
de proces
(ELSACO)

54
57

T"
0

T'
6

12

R ET U R p ri m ar

T'
0

36

27

6
T

T U R p ri m ar

D6

T'
1
T

49

47
40

50

29

T'
4

D4

D5

43
37

L3
L4
Co l ec t or RE T UR
L1
L2

g ol i re

S2
49

12

49
T"
4

T"
5

43

T"
1

28

54

A d au s c a ld
F3

T'
5

D1

34

32

38
F1

L3
L4
C ol e ct o r T UR
L1
L2

T"
7

45

43
42

11

13

T"
6

D7

42

S1

Structura unui sistem


de
termoficare
la
nivelul unui PT (punct
termic)

A d ao s r e ce

T'
7

10

26

44

16

D3
48

60
17

T1'0

24
T

55

19

Debit tur-oras

Temperatura tur

Temperatura retur

T9'

D9
D8

T 8'

Presiune tur

Presiune retur

Debit adaos

Debit retardat

Presiune gaze (debit)

Energie electrica activa

10

Energie electrica reactiva

11

Putere maxima de varf

12

Putere maxima rest.

24

24

18

13

46

16

E PC

52

52

1
25

51

25

17
15

I nc

19

49

Denumirea parametrului

D10

I nc
49

Nr.
Crt

T1'1

C ol e ct o r a .c . m.

D 11

49

49

Exp.

18
T

14

T'
2

31
23
2

39
F2

33

30

T2"

T8" T9" T " T "


10 11

20

22

D2
A CM

49

49

21
41

de la hi d ro f or

F4

35
D12

T it le
S iz e
A4
D a te :

S c h e m a in te r n a c e n t r a la P T 1 M II - N ic o la e B a lc e s c u
D ocum ent Num ber
S chema nr. 2
Monday , Novem ber 12, 2001

Rev
N r.2
S heet

of

10

Traductoare,calculatoare de energie si
convertorul RS232-M-Bus

11