M-BUS協(xié)議基礎(chǔ)知識(shí)
虛線左邊的時(shí)間段是主站到從站的bit流傳輸,總線電壓在Vspace和Vmark間切換,從站電流維持Imark不變;虛線右邊的時(shí)間段是從到主的bit流傳輸,從站所取電流在Imark和Ispace間切換,總線電壓基本維持Vmark不變,但由于MBus電源輸出阻抗的存在,使得電流增大時(shí)總線電壓略有減小。這表明數(shù)據(jù)傳輸過(guò)程中任意時(shí)刻MBus總線上要么傳輸電壓信號(hào),要么傳輸電流信號(hào),所以MBus只能工作在主從半雙工方式下。
主站通過(guò)檢測(cè)總線上是否出現(xiàn)11-20mA脈沖電流確定接收“0”還是“1”;從站接收數(shù)據(jù)時(shí),由于總線絕對(duì)電壓會(huì)隨著距離和總線電流變化而變化,故通過(guò)檢測(cè)總線電壓與動(dòng)態(tài)參考電壓是否相差10V以上來(lái)確定接收“0”還是“1”。TI公司的MBus接口芯片TSS721A采用的就是這種動(dòng)態(tài)電平識(shí)別邏輯,它的動(dòng)態(tài)參考電壓由從站接入位置處的Vmark對(duì)芯片內(nèi)的一個(gè)電容充電獲得。該電容充放電電流之比約為40,在波特率大于300的情況下只要在傳輸?shù)腷it流中每11位至少出現(xiàn)一個(gè)“1”(Vmark),就可以保證動(dòng)態(tài)參考電壓始終維持在Vmark附近。
1.2.2
MBus數(shù)據(jù)鏈路層以國(guó)際電工委員會(huì)IEC870-5(遙控裝置和系統(tǒng)傳輸協(xié)議)為基礎(chǔ),規(guī)定了MBus的信號(hào)傳輸方式、字節(jié)表示、幀格式以及主從站的連接過(guò)程等。
根據(jù)物理層的特點(diǎn),MBus采用半雙工、異步串行信號(hào)傳輸方式,波特率為300~9600。信號(hào)格式采用起止式異步協(xié)議(IEC870-5-1),以字節(jié)為單位進(jìn)行傳輸,先傳低位bit(LSB)再傳高位bit(MSB)。總線上表示一個(gè)字節(jié)的11位bit流按傳輸順序是:起始位/8bit字節(jié)/奇偶校驗(yàn)位/停止位。由于MBus的空閑位(Vmark,Imark)為邏輯“1”,所以起始位定義為邏輯“0”,而停止位定義為邏輯“1”。這樣,一個(gè)字節(jié)的傳輸過(guò)程中包括起始、數(shù)據(jù)、校驗(yàn)、停止共11比特,其中至少有一個(gè)邏輯“1”,滿足MBus從站的電平要求。
MBus采用FT1.2異步式字節(jié)傳輸幀格式(IEC870-5-2),由多個(gè)字節(jié)組成,傳輸時(shí)字節(jié)間不允許停頓。FT1.2定義了三種幀格式,分別是單字節(jié)幀(表1-3)、定長(zhǎng)短幀(表1-4)和變長(zhǎng)長(zhǎng)幀(表1-5)。其中S:表示起始位;D:未加說(shuō)明均表示一個(gè)字節(jié);P:表示奇偶校驗(yàn)位;E:表示停止位;發(fā)送順序從左至右,從上至下。
表1-3單字節(jié)幀
S | D | P | E |
0 | E5H | 1 | 1 |
表1-4定長(zhǎng)短幀
S | D | P | E |
0 | 10H | 1 | 1 |
0 | C字段 | P | 1 |
0 | A字段 | P | 1 |
0 | CS字段 | P | 1 |
0 | 16H | 1 | 1 |
表1-5變長(zhǎng)長(zhǎng)幀
S | D | P | E |
0 | 68H | 1 | 1 |
0 | L字段 | P | 1 |
0 | L字段 | P | 1 |
0 | 68H | 1 | 1 |
0 | C字段 | P | 1 |
0 | A字段 | P | 1 |
0 | CI字段 | P | 1 |
0 | 用戶數(shù)據(jù)區(qū)0~252字節(jié) | P | 1 |
0 | CS字段 | P | 1 |
0 | 16H | 1 | 1 |
單字節(jié)幀E5H用于接收確認(rèn),定長(zhǎng)短幀用于主站向從站發(fā)送指令,變長(zhǎng)長(zhǎng)幀用于主從站間的數(shù)據(jù)交換。后兩種格式除了起始字節(jié)(如10H,68H)、終止字節(jié)(16H)外,還定義了C、A、L、CI和CS字段,變長(zhǎng)長(zhǎng)幀還封裝了一個(gè)長(zhǎng)達(dá)252個(gè)字節(jié)的用戶數(shù)據(jù)區(qū),各字段的意義如下。
MBus的通信完全由主站控制,主從站之間按以下兩種非平衡式傳輸規(guī)則交換報(bào)文幀:
1.
SND-NKE<>E5H,主站發(fā)送SND-NKE,被呼叫從站以E5H單字節(jié)幀確認(rèn),用于通信開(kāi)始或者通信中斷后的初始化。
SND-UD<>E5H,主站發(fā)送SND-UD,被呼叫從站以E5H單字節(jié)幀確認(rèn),用于主站向從站傳輸數(shù)據(jù)或者控制信息,如設(shè)定波特率等。
2.
REQ_UD2<> RSP_UD,主站發(fā)送REQ_UD2,被呼叫從站以RSP_UD回復(fù),用于主站采集從站的測(cè)量數(shù)據(jù),如熱量、流量等,這些數(shù)據(jù)位于RSP_UD的用戶數(shù)據(jù)區(qū)。
1.2.3
MBus應(yīng)用層定義了測(cè)量記錄的數(shù)據(jù)類型和數(shù)據(jù)結(jié)構(gòu)。從站利用這些數(shù)據(jù)類型和結(jié)構(gòu)將測(cè)量記錄進(jìn)行編碼處理,并封裝在長(zhǎng)幀的用戶數(shù)據(jù)區(qū)內(nèi)發(fā)送;主站則根據(jù)這些數(shù)據(jù)類型和結(jié)構(gòu)的定義,對(duì)長(zhǎng)幀的用戶數(shù)據(jù)區(qū)進(jìn)行相應(yīng)的解碼,從而獲取從站的測(cè)量數(shù)據(jù)。因此用戶數(shù)據(jù)區(qū)的數(shù)據(jù)類型和數(shù)據(jù)結(jié)構(gòu)的定義對(duì)于MBus的應(yīng)用具有重要的意義,MBus在這方面針對(duì)消耗量計(jì)量?jī)x表的測(cè)量數(shù)據(jù)進(jìn)行了專門(mén)的設(shè)計(jì)。
MBus定義了多種數(shù)據(jù)類型,包括無(wú)符號(hào)BCD整型、二進(jìn)制整型、無(wú)符號(hào)二進(jìn)制整型、布爾型、32bit復(fù)合型(表示測(cè)量類型、物理單位等)、32bit日期時(shí)間型、16bit日期型、浮點(diǎn)型。在這些數(shù)據(jù)類型的基礎(chǔ)上,MBus定義了兩種數(shù)據(jù)結(jié)構(gòu):固定數(shù)據(jù)結(jié)構(gòu)和可變數(shù)據(jù)結(jié)構(gòu)。長(zhǎng)幀的用戶數(shù)據(jù)區(qū)實(shí)際上就是一個(gè)用固定數(shù)據(jù)結(jié)構(gòu)或可變數(shù)據(jù)結(jié)構(gòu)表示的數(shù)據(jù)塊。
1.
分為6個(gè)字段,按順序分別是:從站標(biāo)識(shí)號(hào)碼/訪問(wèn)次數(shù)/從站狀態(tài)/測(cè)量量類型和單位/計(jì)數(shù)器1數(shù)據(jù)/計(jì)數(shù)器2數(shù)據(jù)。這種數(shù)據(jù)結(jié)構(gòu)只能傳輸兩個(gè)計(jì)數(shù)器的數(shù)據(jù),且對(duì)測(cè)量記錄只能進(jìn)行固定長(zhǎng)度的編碼,因此適用于從站只有一兩個(gè)測(cè)量量的場(chǎng)合。
2.
可變數(shù)據(jù)結(jié)構(gòu)分為4個(gè)部分,按順序分別是:固定數(shù)據(jù)頭/數(shù)據(jù)記錄塊(DRB)/廠商數(shù)據(jù)頭/廠商自定義數(shù)據(jù)塊。固定數(shù)據(jù)頭同固定數(shù)據(jù)結(jié)構(gòu)的前3個(gè)字段的意義基本類似;數(shù)據(jù)記錄塊由若干子數(shù)據(jù)塊組成,子數(shù)據(jù)塊數(shù)目以及每個(gè)子數(shù)據(jù)塊的類型、長(zhǎng)度、意義都是可變的,每個(gè)子數(shù)據(jù)塊保存一個(gè)測(cè)量數(shù)據(jù);廠商數(shù)據(jù)頭是一個(gè)標(biāo)識(shí)符(0FH或者1FH),表明自此以后是廠商自定義數(shù)據(jù)塊;廠商自定義數(shù)據(jù)塊使得在主從站間可以按照自定義的規(guī)則交換數(shù)據(jù),不受標(biāo)準(zhǔn)的約束,進(jìn)一步增加了使用的靈活性。可變數(shù)據(jù)結(jié)構(gòu)能充分滿足遠(yuǎn)程讀數(shù)的需要,適用于從站有多種測(cè)量量的場(chǎng)合。
對(duì)于熱力站監(jiān)控系統(tǒng)來(lái)說(shuō),可變數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)記錄塊保存的各個(gè)子數(shù)據(jù)塊是最重要的,因?yàn)樗鼈儽4媪藷崃勘淼臏y(cè)量數(shù)據(jù)。每個(gè)字?jǐn)?shù)據(jù)塊由三部分組成,按順序分別是:數(shù)據(jù)信息塊(DIB)/量值信息塊(VIB)/數(shù)據(jù)編碼塊(DCB)。數(shù)據(jù)信息塊由一個(gè)或多個(gè)字節(jié)表示,說(shuō)明測(cè)量數(shù)據(jù)的編碼類型(二進(jìn)制還是BCD以及數(shù)據(jù)編碼塊的位數(shù))、數(shù)據(jù)類別(瞬時(shí)值還是平均值等);量值信息塊也是由一個(gè)或多個(gè)字節(jié)表示,說(shuō)明測(cè)量值的量綱和量級(jí);數(shù)據(jù)編碼塊保存該測(cè)量數(shù)值的編碼。
應(yīng)用層除了定義測(cè)量記錄類型和數(shù)據(jù)結(jié)構(gòu)外還有其它用途。實(shí)際上最新的MBus標(biāo)準(zhǔn)中通過(guò)規(guī)定許多新的CI字段控制字節(jié),并結(jié)合用戶數(shù)據(jù)區(qū)存儲(chǔ)的信息,為用戶提供了許多新的功能。隨著MBus協(xié)議的不斷發(fā)展,應(yīng)用層功能將不斷擴(kuò)展和完善,包括尋址、設(shè)定參數(shù)、報(bào)警以及更為靈活的抄表方式等。
1.2.4
熱力站監(jiān)控系統(tǒng)中,MBus從站(Slave)是各公司生產(chǎn)的熱量表,其核心部分是一塊高度集成的控制芯片,它可以完成流量、溫度等物理量的測(cè)量,并可以進(jìn)行熱量值的積分計(jì)算。熱量表為了便于遠(yuǎn)程抄讀,一般都提供了MBus接口,熱量表的核心控制芯片也提供了對(duì)MBus協(xié)議的支持。熱量表MBus接口電路廣泛使用了TSS721A收發(fā)芯片。
TSS721A接口芯片是MBus協(xié)議組織與TI公司合作開(kāi)發(fā)的MBus協(xié)議從站專用接口芯片,遵循EN1434-3標(biāo)準(zhǔn)。借助TI公司的強(qiáng)大技術(shù)力量,TSS721A接口芯片實(shí)現(xiàn)了MBus協(xié)議對(duì)物理層的各項(xiàng)規(guī)定要求,有力地推動(dòng)了MBus協(xié)議的推廣。根據(jù)MBus總線物理層的相關(guān)定義,TSS721A從站接口芯片具備檢測(cè)總線電壓(接收數(shù)據(jù))和調(diào)制總線電流(發(fā)送數(shù)據(jù))的功能,關(guān)于TSS721A的通信電路原理可以參閱有關(guān)文獻(xiàn)。TSS721A除了MBus通信功能外,還對(duì)MBus總線遠(yuǎn)程供電和電池供電提供了很好的支持。
評(píng)論