欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: Modbus的十大問題 [打印本頁]

作者: 51hei社區(qū)    時(shí)間: 2016-1-16 02:58
標(biāo)題: Modbus的十大問題
今天還有人問我modbus的問題,就想把著自己對于這個(gè)簡單協(xié)議的一點(diǎn)小理解寫了出來,一是方便一些朋友查閱,另外也是為了防止遺忘。當(dāng)然水平有限可能有錯(cuò)誤或者不準(zhǔn)確之處,真誠的歡迎大家批評指正,讓我與您共同進(jìn)步。

1. 有了RTU為啥還要ascii?
個(gè)人理解認(rèn)為,ascii主要是為了在終端上使用(想想linux為啥都是在命令行下面就好理解了),方便看到通訊的過程,經(jīng)常在樓宇等對控制要求不高的領(lǐng)域會(huì)采用。這也就可以解釋了為啥在ascii有加了頭尾,既然是為了看,那就看的清楚些。
2. Modbus和J-bus以及M-bus分別是什么關(guān)系?
Mobus和JBus是近親,與M-Bus沒有任何關(guān)系。
J-Bus基本采用了Modbus的幀結(jié)構(gòu)和定義,僅僅是在寄存器的地址方面有些區(qū)別。
M-Bus的全稱是Meter-Bus,是儀表總線,歐洲使用的較多,幀結(jié)構(gòu)是給予iec60870的,順便提一句,Profibus的幀結(jié)構(gòu)也是給予Iec60870的。
3.Modbus的其實(shí)地址到底是0還是1?
這個(gè)問題現(xiàn)在比較混亂,怎么用的都有,這也是Modbus不好的一個(gè)小地方。因?yàn)閙odbus是modicon發(fā)明的,自然他的寄存器地址的排布是從1開始的,但是在通訊的時(shí)候又是從0開始的,這也是顯然的,0如果不使用,不是浪費(fèi)么。這就導(dǎo)致了混亂,寄存器定義部分和協(xié)議定義部分一致起來,就不會(huì)產(chǎn)生歧義了。如果讀取的都是整個(gè)寄存器,一般很容易發(fā)現(xiàn)錯(cuò)位的問題,但是如果都是浮點(diǎn)類型,就很難發(fā)現(xiàn)了,本人就見到N多人在這個(gè)問題上被卡過。
4.Modbus的最大缺點(diǎn)是什么?
modbsu的缺點(diǎn)太多(比如幀序號(hào),比如數(shù)據(jù)類型太少,還比如輪訓(xùn)效率太低,。。。。。),一時(shí)還真說不好哪一個(gè)是最,非要說一個(gè)那就是,沒有幀序號(hào)吧,如果從設(shè)備應(yīng)答的慢了,主設(shè)備讀取下一幀數(shù)據(jù),這個(gè)時(shí)候恰好從設(shè)備回復(fù)上一幀的數(shù)據(jù),就會(huì)導(dǎo)致錯(cuò)誤,這樣的情況是真實(shí)發(fā)生過的。
5.RTU和TCP有何不同?
基本是相同,主要有兩點(diǎn)。一個(gè)是tcp加了幀序號(hào),是針對問題4的解決辦法(rtu之所以沒有升級,增加序號(hào),是因?yàn)榘l(fā)生的概率較小,但是在網(wǎng)絡(luò)上這樣的情況是有很大可能性發(fā)生的)
第二個(gè)就是tcp幀本身有了校驗(yàn),就不需要modbus的校驗(yàn)了
6.寄存器地址必須是00001至09999是離散輸出(線圈)

10001至19999是離散輸入(觸點(diǎn))
30001至39999是輸入寄存器(通常是模擬量輸入)
40001至49999是保持寄存器

不是的。事實(shí)上modbus是有兩種地址排布模式,也就是“separate block”方式和“one block”方式,前一種很常見,很多廠家都采用這樣的方式,后一種也有一些比如一些空調(diào)設(shè)備廠家的就是這樣的。
第一種不同的寄存器是不同的地址;
第二種不同的寄存器實(shí)際上是重疊的。
7.Modbustcp的端口號(hào)?
502,相信很多人都知道,這是唯一分給工業(yè)標(biāo)準(zhǔn)的端口號(hào),自豪去吧。當(dāng)然了,實(shí)際應(yīng)用中不見得非要用這個(gè),只要兩端對應(yīng)好就可以了。
8.modbus符合Iso/OSI模型么?
其實(shí)我我個(gè)人認(rèn)為不太符合,盡管這兩年modbus基金會(huì),吧他的協(xié)議問題都分層分塊了,但是最開始設(shè)計(jì)的時(shí)候就不是給予這個(gè)結(jié)構(gòu)考慮的,后往上靠,總讓人覺得不倫不類的。
9.Daniel/enron/OMNI MODBUS是啥?
modbus的擴(kuò)充標(biāo)準(zhǔn),主要是數(shù)據(jù)類型做了擴(kuò)充。其實(shí)標(biāo)準(zhǔn)就像是路,走的人多了,路也就成為路了。
10.modbus浮點(diǎn)數(shù)為啥有4個(gè)順序?
因?yàn)橐粋(gè)浮點(diǎn)數(shù)占用4個(gè)字節(jié),2個(gè)寄存器,因?yàn)闃?biāo)準(zhǔn)沒有規(guī)定浮點(diǎn)數(shù)咋讀取(好像是modbus制定的時(shí)候浮點(diǎn)數(shù)標(biāo)準(zhǔn)還沒有制定呢),人們怎么處理的都有,常見的就是4個(gè)字節(jié)的處理辦法,但是就算是都用了4個(gè)字節(jié),但是大家的順序還是千奇百怪(說是千奇百怪,實(shí)際上就4種)
11.rtps是啥?
寫到了這里,發(fā)現(xiàn)題目弄錯(cuò)了,但是也懶得修改了,現(xiàn)今啥都喜歡弄個(gè)十大,咱也就不改了,嘿嘿。

隨著工業(yè)以太網(wǎng)的熱火朝天,modbus -tcp/ip與其他的工業(yè)以太網(wǎng)協(xié)議相比,明顯弱了很多。所以modbus基金會(huì)趕緊制定了rtps,主要是趕上這一波。主要是增加了發(fā)布和訂閱機(jī)制。這里補(bǔ)充說明一些,發(fā)布和訂閱機(jī)制已經(jīng)在很多協(xié)議和規(guī)范里面采用了(比如OPC,bacnet, IEC61850.。。。。。),在現(xiàn)今如果說一個(gè)以太網(wǎng)的協(xié)議還不支持這個(gè),確實(shí)有點(diǎn)說不過去了。






歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1