



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、Modbus通信協(xié)議詳細介紹協(xié)議發(fā)送給詢問方。 Modbus協(xié)議包括ASCII、RTU、TCP等,并無規(guī)定物理層。此協(xié)議概念了操縱器能夠熟悉和利用的消息結構,而不管它們是通過何種網絡進行通信的。標準的Modicon操縱器利用RS232C實現串行的Modbus 。 Modbus的ASCII、RTU協(xié)議規(guī)定了消息、數據的結構、命令和就答的方式,數據通信采納Maser/Slave方式,Master端發(fā)出數據請求消息,Slave端接收到正確消息后就能夠夠發(fā)送數據到 Master端以響應請求;Master端也能夠直接發(fā)消息修改Slave端的數據,實現雙向讀寫。Modbus協(xié)議需要對數據進行校驗,串行協(xié)議
2、中除有奇偶校驗外,ASCII模式采納LRC校驗,RTU模式采納16位CRC校驗,但TCP模式沒有額外規(guī)定校驗,因為TCP協(xié)議是一個面向連接的靠得住協(xié)議。另外, Modbus采納主從方式按時收發(fā)數據,在實際利用中若是某 Slave站點斷開后(如故障或關機),Master端能夠診斷出來,而當故障修復后,網絡又可自動接通。因此, Modbus協(xié)議的靠得住性較好。下面我來簡單的給大伙兒介紹一下,關于 Modbus的ASCII、RTU和TCP協(xié)議來講,其中 TCP和RTU協(xié)議超級類似,咱們只要把RTU協(xié)議的兩個字節(jié)的校驗碼去掉,然后在 RTU協(xié)議的開始加上5個0和一個6并通過TCP/IP網絡協(xié)議發(fā)送出去
3、即可。因此在那個地址我僅介紹一下M odbus的ASCII和RTU協(xié)議。 下表是ASCII協(xié)議和RTU協(xié)議進行的比較:協(xié)議開始標記結束標記校驗傳輸效率程序處理ASCII(冒號)CR,LFLRC低直觀,簡單,易調試RTU無無CRC高不直觀,稍復雜通過比較能夠看到,ASCII協(xié)議和RTU協(xié)議相較擁有開始和終止標記,因此在進行程序處置時能加倍方便,而且由于傳輸的都是可見的ASCII字符,因此進行調試時就加倍的直觀,另外它的 LRC校驗也比較容易??墒且驗樗鼈鬏數亩际强梢姷腁SCII字符,RTU傳輸的數據每一個字節(jié) ASCII都要用兩個字節(jié)來傳輸,比如RTU傳輸一個十六進制數 0xF9,ASCII就需
4、要傳輸F的ASCII碼0x39和0x46兩個字節(jié),如此它的傳輸的效率就比較低。因此一樣來講,若是所需要傳輸的數據量較小能夠考慮利用ASCII協(xié)議,若是所需傳輸的數據量比較大,最好能利用RTU協(xié)議。下面對兩種協(xié)議的校驗進行一下介紹。 一、LRC校驗LRC域是一個包括一個8位二進制值的字節(jié)。LRC值由傳輸設備來計算并放到消息幀中,接收設備在接收消息的進程中計算LRC,并將它和接收到消息中 LRC域中的值比較,若是兩值不等,說明有錯誤。它僅僅是把每一個需LRC校驗比較簡單,它在ASCII協(xié)議中利用,檢測了消息域中除開始的冒號及終止的回車換行號外的內容。要傳輸的數據按字節(jié)疊加后取反加1即可。下面是它的
5、 VC代碼:BYTE GetCheckCode(const char * pSendBuf, int nEnd).數據nCRC校驗白低8位CRC校驗白高8位例:110105CD6BB20E1BCRC低CRC 高意義如下:<1>設備地址和命令號和上面的相同1, 2.n中的n的值。<2>返回的字節(jié)個數:表示數據的字節(jié)個數,也確實是數據<3>數據1.n :由于每一個數據是一個8位的數,因此每一個數據表示8個開關量的值,每一名為 0表示對應的開關斷開,為1表示閉合。比如例子中,表示20號(索引號為19)開關閉合,21號斷開,22閉合,23閉合,24斷開,25斷開,2
6、6閉合,27閉合.若是詢問的開關量不是 8的整倍數,那么最后一個字節(jié)的高位部份無心義,置為0。<4>CRC校驗同上。二、讀只可讀數字量寄放器(輸入狀態(tài)):和讀取線圈狀態(tài)類似,只是第二個字節(jié)的命令號再也不是1而是2。3、寫數字量(線圈狀態(tài)):運算機發(fā)送死令:設備地址命令號05需下置的寄放器地址高 8位低8位下置的數據高8位低8位CRC校驗白低8 位CRC校驗白高8位例:110500ACFF00CRC 低CRC 高意義如下:<1>設備地址和上面的相同。<2>命令號:寫數字量的命令號固定為 05。<3>需下置的寄放器地址高 8位,低8位:說明了需要下置
7、的開關的地址。<4>下置的數據高8位,低8位:說明需要下置的開關量的狀態(tài)。例子中為把該開關閉合。注意,此處只能夠是 FF00表示閉合0000表示斷開,其他數值非法。<5>注意此命令一條只能下置一個開關量的狀態(tài)。設備響應:若是成功把運算機發(fā)送的命令原樣返回,不然不響應。4、讀可讀寫模擬量寄放器(維持寄放器):運算機發(fā)送死令:設備地址命令號03起始寄放器地址高8位低8位讀取的寄放器數高8位低8位CRC校驗白低8位CRC校驗白高8位例:1103006B0003CRC低CRC 高意義如下:<1>設備地址和上面的相同。<2>命令號:讀模擬量的命令號固定為
8、03。<3>起始地址高8位、低8位:表示想讀取的模擬量的起始地址(起始地址為0)。比如例子中的起始地址為107。< 4>寄放器數高8位、低8位:表示從起始地址開始讀多少個模擬量。例子中為3個模擬量。注意,在返回的信息中一個模擬量需要返回兩個字節(jié)。設備響應:設備地址命令號03返回的字節(jié)個數數據1數據2.數據nCRC校驗白低8位CRC校驗白高8位例:110306022B00000064CRC低CRC 高意義如下:< 1>設備地址和命令號和上面的相同。< 2>返回的字節(jié)個數:表示數據的字節(jié)個數,也確實是數據 1, 2.n中的n的值。例子中返回了 3個模
9、擬量的數據,因為一個模 擬量需要2個字節(jié)因此共6個字節(jié)。<3>數據1.n :其中數據1數據2別離是第1個模擬量的高8位和低8位,數據3數據4是第2個模擬量的高8位和低8位, 以此類推。例子中返回的值別離是555, 0, 100。<4>CRC校驗同上。五、讀只可讀模擬量寄放器(輸入寄放器):和讀取保留寄放器類似,只是第二個字節(jié)的命令號再也不是2而是4。六、寫單個模擬量寄放器(維持寄放器):運算機發(fā)送死令:設備地址命令號06需下置的寄放器地址高8位低8位下置的數據高8位低8位CRC校驗白低8例:110600010003CRC低CRC 高意義如下:<1>設備地址和上面的相同。<2>命令號:寫模擬量的命令號固定為06<3>需下置
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 滿洲里俄語職業(yè)學院《中醫(yī)經典應用》2023-2024學年第二學期期末試卷
- 江西省贛州市尋烏縣重點名校2025屆初三第二學期化學試題4月月考試卷含解析
- 天門職業(yè)學院《分子生物學A》2023-2024學年第一學期期末試卷
- 化工廠外來人員安全培訓
- 2025蚌埠市房地產中介服務合同范本
- 2025年上海市勞務派遣合同范本
- 2025履行合同簽訂流程
- 2025新版購房合同
- 2025年餐飲業(yè)商鋪租賃合同
- 2025年公寓租賃合同書
- 新版工貿企業(yè)重大事故隱患-題庫
- 內蒙古建筑圖集 DBJ-T 03-76-2018 自保溫砌塊建筑構造圖集
- 企業(yè)規(guī)范化管理與標準化建設
- 物流營銷與客戶關系 習題答案 張廣敬
- CHT 8023-2011 機載激光雷達數據處理技術規(guī)范
- 河北省唐山市路北區(qū)2023-2024學年八年級下學期4月期中物理試題
- 2024屆高中語文高考作文資料及素材系列
- 幼兒園中班韻律《阿凡提尋寶記》課件
- 海面之下:海洋生物形態(tài)圖鑒
- 【中學生數學學習習慣和學習狀況調研探析報告9900字(論文)】
- 內科護理學-急性胰腺炎--1課件
評論
0/150
提交評論