智能家居內(nèi)運(yùn)用的幾種主流通訊協(xié)議。目前行業(yè)內(nèi)比較穩(wěn)定成熟運(yùn)用的主要為:Modbus通訊協(xié)議、KNX控制協(xié)議、BACnet智能建筑通信協(xié)議、LonWorks總線協(xié)議、CAN總線協(xié)議等。下面將針對(duì)做一一介紹。
一、Modbus協(xié)議
Modbus是 莫迪康公司(現(xiàn)被施耐德電氣 Schneider Electric收購)于1979年為使用可編程邏輯控制器(PLC)通信而發(fā)表。經(jīng)過幾十年的發(fā)展,Modbus已經(jīng)成為工業(yè)領(lǐng)域通信協(xié)議的業(yè)界標(biāo)準(zhǔn)(De facto),在樓宇控制和智能家居行業(yè)被國內(nèi)廠商廣泛運(yùn)用。
Modbus之所以對(duì)比其他通信協(xié)議能被眾多廠商所接受,其主要原因在于:1.其協(xié)議本身是公開發(fā)表進(jìn)行推廣,沒有相關(guān)版權(quán)限制;2.誕生時(shí)間較早,現(xiàn)場(chǎng)總線的技術(shù)運(yùn)用使其設(shè)備對(duì)比傳統(tǒng)電氣更易于部署及維護(hù);3.對(duì)研發(fā)廠商而言,研發(fā)成本低,廠商可針對(duì)自身產(chǎn)品特性修改Modbus寄存器內(nèi)數(shù)據(jù)、字節(jié)長(zhǎng)度。
目前MODBUS協(xié)議大致上包括Modbus RTU、Modbus ASCII、ModbusTCP三種通訊模式。前兩種通常情況下物理接口采用的是RS232、Rs485串行通訊接口,而我們口頭上經(jīng)常會(huì)誤說成RS485協(xié)議,通常情況下就指的是ModbusRTU或ASCII通訊模式,其標(biāo)志就是在物理層接口我們會(huì)看到“A、B”接口。而TCP通訊模式則顧名思義采用的是以太網(wǎng)接口以進(jìn)行數(shù)據(jù)傳輸。
下面以Modbus RTU為例,介紹下其下大致的的工作原理。
我們通常接受處理相關(guān)設(shè)備時(shí),相應(yīng)廠家會(huì)提供協(xié)議資料。其中有各種執(zhí)行和反饋數(shù)據(jù)。Modbus的ASCII、RTU協(xié)議規(guī)定了消息、數(shù)據(jù)的結(jié)構(gòu)、命令和就答的方式,數(shù)據(jù)通訊則采用Maser/Slave方式(客戶端和服務(wù)端,以主從機(jī)子的方式進(jìn)行數(shù)據(jù)處理),主機(jī)那么當(dāng)收到對(duì)應(yīng)的信息處理后,從機(jī)就執(zhí)行相應(yīng)的動(dòng)作。RTU和ASCII通常還需要對(duì)數(shù)據(jù)進(jìn)行校驗(yàn),除有奇偶校驗(yàn)外,ASCII模式采用LRC校驗(yàn),RTU模式采用16位CRC校驗(yàn),TCP則沒有規(guī)定。
例如協(xié)議資料中一條MODBUS-RTU報(bào)文:01 03 00 01 00 17 54 04。我們?cè)敿?xì)分析下這條報(bào)文數(shù)據(jù)每個(gè)字符代表著什么:
01表示從機(jī)的地址碼,每個(gè)從機(jī)都會(huì)單獨(dú)對(duì)應(yīng)一個(gè)地址碼,類似于身份證一樣,一條總線上每個(gè)設(shè)備都單獨(dú)對(duì)應(yīng),這樣就能夠?qū)?yīng)處理主機(jī)的數(shù)據(jù)指令。
03表示設(shè)備的功能碼,每個(gè)功能碼具體功能通常與Modbus中各數(shù)據(jù)類型相對(duì)應(yīng)。modbus協(xié)議最開始是用來解決PLC的通信協(xié)議問題的,主要用于輸入輸出數(shù)字量信號(hào)以及模擬量信號(hào),其數(shù)據(jù)類型大致可分為:Discrete Input(R),Coil(R/W),Input Resiter(R)和Holding Resiter(R/W)。那么比如03(讀功能)功能碼是對(duì)應(yīng)HR保持寄存器。
00 01就是指的是寄存器中的數(shù)據(jù)地址位(高低位)。
00 17就是表示傳輸?shù)臄?shù)據(jù)內(nèi)容,具體要執(zhí)行的動(dòng)作或者反饋的狀態(tài)。
54 04則是Modbus中的16位CRC校驗(yàn),目前可以利用相關(guān)校驗(yàn)工具對(duì)整個(gè)報(bào)文進(jìn)行校驗(yàn),作用是對(duì)傳輸數(shù)據(jù)進(jìn)行校驗(yàn)是否正確。
經(jīng)過上面簡(jiǎn)單介紹,這段數(shù)據(jù)報(bào)文就是其含義就是表示讀取從機(jī)地址為01的中保持寄存中00 01地址中數(shù)據(jù)00 17的狀態(tài)。00 17就是根據(jù)廠家自己定義自己產(chǎn)品的數(shù)據(jù)內(nèi)容,03所讀狀態(tài)也由廠家來定義。
Mobus協(xié)議因其研發(fā)成本較低,沒用相應(yīng)專利權(quán)限所制約,編寫靈活,能適用于自身產(chǎn)品特性,在中國被廣大的通訊設(shè)備研發(fā)生產(chǎn)廠家所使用,也被眾多智能建筑家居行業(yè)作為優(yōu)選對(duì)象,當(dāng)然任何事情有利也有弊。那么在智能家居行業(yè)中其弊端在于:
1、其數(shù)據(jù)通訊則采用的Maser/Slave方式,主機(jī)需要處理各類輸入輸出設(shè)備的執(zhí)行動(dòng)作和狀態(tài)反饋,對(duì)主機(jī)的運(yùn)行處理能力提出了較高的要求,從機(jī)執(zhí)行需要主機(jī)進(jìn)行指令要求和及時(shí)的狀態(tài)反饋。所以當(dāng)實(shí)際現(xiàn)場(chǎng)出線布置不合理和主機(jī)設(shè)備出現(xiàn)問題時(shí),數(shù)據(jù)出現(xiàn)丟包現(xiàn)象甚至是設(shè)備不受控制情況就會(huì)隨之發(fā)生。
2、由于Modbus的數(shù)據(jù)內(nèi)容定義的自主性,廠商根據(jù)自己產(chǎn)品特性來指定屬于自己的協(xié)議內(nèi)容。雖然Modbus是標(biāo)準(zhǔn)的通訊協(xié)議,但是在實(shí)際項(xiàng)目運(yùn)用中,項(xiàng)目方和用戶在兼容上需要耗費(fèi)相當(dāng)大的時(shí)間針對(duì)主機(jī)收發(fā)各類產(chǎn)品數(shù)據(jù)做繁瑣的對(duì)接工作,主機(jī)上也需要針對(duì)系統(tǒng)中不同品牌產(chǎn)品增加對(duì)應(yīng)的物理串行接口,從而也增加成本和系統(tǒng)的不穩(wěn)定性。換言之,在不必要的情況下,有很少的工程商和用戶會(huì)每次針對(duì)項(xiàng)目上采用的不同產(chǎn)品都不厭其煩的進(jìn)行對(duì)接,都會(huì)優(yōu)先選用自家品牌的產(chǎn)品,這就大大折扣了Modbus協(xié)議的智能家居系統(tǒng)的兼容性。
那么根據(jù)以上所述,由于不同于其他家裝電氣產(chǎn)品,智能家居的產(chǎn)品需要有一定技術(shù)能力的人員去安裝調(diào)試維護(hù)。而Modbus協(xié)議類的智能家居產(chǎn)品也基本只有廠家和其經(jīng)銷商的人員才熟知自身的產(chǎn)品特性。所以作為消費(fèi)者,在選用采用該類協(xié)議的智能家居產(chǎn)品時(shí),在考據(jù)價(jià)格成本的同時(shí),應(yīng)當(dāng)首先應(yīng)當(dāng)考慮其品牌是否可靠,品牌廠家是否在市場(chǎng)中競(jìng)爭(zhēng)力。目前國內(nèi)智能家居行業(yè)廠家眾多,競(jìng)爭(zhēng)激烈。作為從業(yè)者,本人建議消費(fèi)者在面對(duì)新興智能家居品牌特別是總線類產(chǎn)品時(shí),在合理預(yù)算范圍內(nèi)應(yīng)當(dāng)謹(jǐn)慎選擇。
-
寄存器
+關(guān)注
關(guān)注
31文章
5317瀏覽量
120004 -
MODBUS
+關(guān)注
關(guān)注
28文章
1760瀏覽量
76834 -
智能家居
+關(guān)注
關(guān)注
1926文章
9512瀏覽量
184303
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論