精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>通信技術(shù)>

modbus字符串的結(jié)束符介紹

2018年02月08日 10:22 電子發(fā)燒友整理 作者: 用戶評(píng)論(0

Modbus協(xié)議是應(yīng)用于電子控制器上的一種通用語(yǔ)言。通過此協(xié)議,控制器相互之間、控制器經(jīng)由網(wǎng)絡(luò)(例如以太網(wǎng))和其它設(shè)備之間可以通信。它已經(jīng)成為一通用工業(yè)標(biāo)準(zhǔn)。有了它,不同廠商生產(chǎn)的控制設(shè)備可以連成工業(yè)網(wǎng)絡(luò),進(jìn)行集中監(jiān)控。此協(xié)議定義了一個(gè)控制器能認(rèn)識(shí)使用的消息結(jié)構(gòu),而不管它們是經(jīng)過何種網(wǎng)絡(luò)進(jìn)行通信的。它描述了一控制器請(qǐng)求訪問其它設(shè)備的過程,如何回應(yīng)來自其它設(shè)備的請(qǐng)求,以及怎樣偵測(cè)錯(cuò)誤并記錄。它制定了消息域格局和內(nèi)容的公共格式。

當(dāng)在一Modbus網(wǎng)絡(luò)上通信時(shí),此協(xié)議決定了每個(gè)控制器須要知道它們的設(shè)備地址,識(shí)別按地址發(fā)來的消息,決定要產(chǎn)生何種行動(dòng)。如果需要回應(yīng),控制器將生成反饋信息并用Modbus協(xié)議發(fā)出。在其它網(wǎng)絡(luò)上,包含了Modbus協(xié)議的消息轉(zhuǎn)換為在此網(wǎng)絡(luò)上使用的幀或包結(jié)構(gòu)。這種轉(zhuǎn)換也擴(kuò)展了根據(jù)具體的網(wǎng)絡(luò)解決節(jié)地址、路由路徑及錯(cuò)誤檢測(cè)的方法。

此協(xié)議支持傳統(tǒng)的RS-232、RS-422、RS-485和以太網(wǎng)設(shè)備。許多工業(yè)設(shè)備,包括PLCDCS,智能儀表等都在使用Modbus協(xié)議作為他們之間的通訊標(biāo)準(zhǔn)。

modbus字符串的結(jié)束符介紹

modbus字符串的結(jié)束符

接收到一串字符,總要知道在那個(gè)地方結(jié)束吧,這就是結(jié)束符的作用,接收方不管以后還會(huì)收到多少個(gè)字符。當(dāng)接收到結(jié)束符時(shí),以后再接收的字符就算是下一輪的東西了,從起始符到結(jié)束符之間的字符就是它要分析的字符! MODBUS的ASCII方式結(jié)束符是--- Chr$(13) + Chr$(10)

現(xiàn)在的組合是“:02030A000004FB“+ Chr$(13) + Chr$(10)

至此,ASCII方式的發(fā)送就完成了,控制器接收到此串字符后,根據(jù)MODBUS協(xié)議定義的通訊規(guī)范分析此串字符的作用,然后返回相應(yīng)的字符!

注意:發(fā)送的字符都是以十六進(jìn)制數(shù)表示!

RTU方式發(fā)送時(shí)的規(guī)范定義如下:

至少3.5個(gè)字符傳輸時(shí)間的停頓間隔時(shí)間標(biāo)定消息的開始 設(shè)備地址 + 功能代碼+ 數(shù)據(jù) + 校驗(yàn) + 至少3.5個(gè)字符傳輸時(shí)間的停頓間隔時(shí)間標(biāo)定了消息的結(jié)束

其他的就不用說了,與ASCII方式一樣的作用,唯獨(dú)這3.5個(gè)字符的時(shí)間搞暈了很多人,實(shí)際我也不敢太解釋,大致說一下吧,您就當(dāng)聽著玩,比如通訊格式是9600,E,8,1 波特率是做什么的?一秒傳輸多少個(gè)位(比如一秒傳送9600個(gè)位),一個(gè)字符是多少個(gè)位呢?通訊格式已經(jīng)標(biāo)定了(7個(gè)位或是8個(gè)位),那3.5個(gè)字符的傳送時(shí)間就好算了吧:

3.5*11(或10)=39個(gè)位(35個(gè)位),傳3.5個(gè)字符需要的時(shí)間是:39/9600=4毫秒。

不是說八位嘛,怎么乘11,記住了,還有一個(gè)起始位,奇或偶的校驗(yàn)位(無奇偶校驗(yàn),則沒有此位),停止位(兩個(gè)停止位就是2了。)

如9600,N,8,2為11個(gè)位, 9600,N,7,1.為9個(gè)位

就是說,您得保證發(fā)送字符串的連續(xù)性,中間停頓時(shí)間超過4毫秒,接收方就認(rèn)為您已經(jīng)發(fā)送完了這組消息,開始處理了。這就是至少3.5個(gè)字符傳輸時(shí)間的停頓間隔時(shí)間標(biāo)定了消息的結(jié)束的含義

如果您發(fā)送的太連續(xù),下一組消息與上一組消息之間的間隔時(shí)間沒超過4毫秒,接收方就認(rèn)為這些字符是一組消息,按一組消息去處理。所以,您發(fā)送結(jié)束一組命令后,必須間隔4毫秒才能發(fā)送下一組命令。 這就是至少3.5個(gè)字符傳輸時(shí)間的停頓間隔時(shí)間標(biāo)定消息的開始的含義

非常好我支持^.^

(1) 100%

不好我反對(duì)

(0) 0%

( 發(fā)表人:李建兵 )

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?