freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

modbus通訊協(xié)議簡介(文件)

2025-08-14 16:55 上一頁面

下一頁面
 

【正文】 的內容即 2字節(jié) CRC 錯誤校驗,被加到報文的最高有效位。把十六進制字符轉換成二進制,加上無循環(huán)進位的二進制字符和二進制補碼結果生成 LRC 錯誤校驗 (參見圖 )。許多工業(yè)設備,包括 PLC, DCS,智能儀表等都在使用Modbus 協(xié)議作為他們之間的通訊標準。 Modbus協(xié)議包括 ASCII、 RTU、 TCP 等,并沒有規(guī)定物理層。 Modbus 協(xié)議需要對數據進行校驗,串行協(xié)議中除有奇偶校驗外,ASCII 模式采用 LRC 校驗, RTU模式采用 16位 CRC 校驗,但 TCP 模式沒有額外規(guī)定校驗,因為 TCP 協(xié)議是一個面向連接的可靠協(xié)議。所以在這里我僅介紹一下 Modbus 的 ASCII 和RTU 協(xié)議。39。下面對兩種協(xié)議的校驗進行一下介紹。它僅僅是把每一個需要傳輸的數據按字節(jié)疊加后取反加 1 即可。nData); byLrc+=nData; }byLrc=~byLrc; byLrc++;return byLrc; } CRC 校驗 CRC 域是兩個字節(jié),包含一 16 位的二進制值。僅每個字符中的 8Bit 數據對 CRC有效,起始位和停止位以及奇偶校驗位均無效。在最后一位 (第 8位 )完成后,下一個 8 位字節(jié)又單獨和寄存器的當前值相或。1){wCrc=1; wCrc^=0xA001; }else{wCrc=1; }}}return wCrc; }對于一條 RTU 協(xié)議的命令可以簡單的通過以下的步驟轉化為 ASCII 協(xié)議 的命令:把命令的 CRC校驗去掉,并且計算出 LRC校驗取代。所以以下我們僅介紹 RTU 協(xié)議即可,對應的 ASCII 協(xié)議可以使用以上的步驟來生成。 2命令號 01:讀取數字量的命令號固定為 01。例子中為 37 個開關量。設備響應: [設備地址 ][命令號01][返回的字節(jié)個數 ][數據 1][數據 2].[數據 n][CRC 校驗的低 8 位 ][CRC 校驗的高 8 位 ]例: [11][01][05][CD][6B][B2][0E][1B][CRC 低 ][CRC 高 ]意義如下:1設備地址和命令號和上面的相同。 4 CRC 校驗同上。 3需下置的寄存器地址高 8位,低 8 位:表明了需要下置的開關的地址。 5注意此命令一條只能下置一個開關量的狀態(tài)。 3起始地址高 8位、低 8位:表示想讀取的模擬量的起始地址 (起始地址為 0)。注意,在返回的信息中一個模擬量需要返回兩個字節(jié)。 3 數據 :其中 [數據 1][數據 2]分別是第 1個模擬量的高 8 位和低 8 位, [數據 3][數據 4]是第 2 個模擬量的高 8位和低 8位,以此類推。 寫單個模擬量寄存器 (保持 寄存器 ):計算機發(fā)送命令:[設備地址 ][命令號 06][需下置的寄存器地址高 8位 ][低 8位 ][下置的數據高 8位 ][低 8 位 ][CRC 校驗的低 8位 ][CRC 校驗的高 8位 ]例:[11][06][00][01][00][03][CRC 低 ][CRC 高 ]意義如下: 1設備地址和上面的相同。比如例子中就把 1號寄存器的值設為 3。 。設備響應:如果成功把計算機發(fā)送的命令原樣返回,否則不響應。 3需下置的寄存器地址高 8位,低 8 位:表明了需要下置的模擬量寄存器的地址。 4 CRC 校驗同上。 2返回的字節(jié)個數:表示數據的字節(jié)個數,也就是數據 1, n的值。4寄存器數高 8位、低 8位:表示從起始地址開始讀多少個模擬量。 讀可讀寫模擬量寄存器 (保持寄存器 ):計算機發(fā)送命令: [設備地址 ][命令號 03][起始寄存器地址高 8 位 ][低 8 位 ][讀取的寄存器數高 8位 ][低 8 位 ][CRC 校驗的低 8位 ][CRC 校驗的高 8位 ]例:[11][03][00][6B][00][03][CRC 低 ][CRC 高 ]意義如下: 1設備 地址和上面的相同。例子中為把該開關閉合。 寫數字量 (線圈狀態(tài) ):計算機發(fā)送命令: [設備地址 ][命令號 05][需下置的寄存器地址高 8 位 ][低 8 位 ][下置的數據高 8位 ][低8位 ][CRC 校驗的低 8位 ][CRC 校驗的高 8 位 ]例:[11][05][00][AC][FF][00][CRC 低 ][CRC 高 ]意義如下: 1設備地址和上面的相同。 3 數據 :由于每一個數據是一個 8 位的數,所以每一個數據表示 8 個開關量的值,每一位為 0 表示對應的開關斷開,為 1表示閉合。在此協(xié)議的最后再作介紹。比如例子中的起始地址為 19。 讀可讀寫數字量寄存器 (線圈狀態(tài) ):計算機發(fā)送命令: [設備地址 ][命令號 01][起始寄存器地址高 8位 ][低 8位 ][讀取的寄存器數高 8 位 ][低 8 位 ][CRC 校驗的低 8位 ][CRC 校驗的高 8位 ]例:[11][01][00][13][00][25][CRC 低 ][CRC 高 ]意義如下: 1設備地址:在一個485 總線上可以掛接多個設備,此處的設備地址表示想和哪一個設備通訊。 在命令的開頭加上起始標記 : ,它的ASCII 碼為 0x3A。CRC 添加到消息中時,低字節(jié)先加入,然后高字 節(jié)。 LSB 被提取出來檢測,如果 LSB 為 1,寄存器單獨和預置的值或一下,如果 LSB為 0,則不進行。接收設備重新計算收到消息的 CRC,并與接收到的 CRC 域中的值比較,如果兩值不同,則有誤。[message]39。 LRC值由傳輸設備來計算并放到消息幀中,接收設備在接收消息的過程中計算 LRC,并將它和接收到消息中 LRC域中 的值比較,如果兩值不等,說明有錯誤。的 ASCII 碼 0x39 和 0x46 兩個字節(jié),這樣它的傳輸的效率就比較低。但是因為它傳輸的都是可見的 ASCII 字符,RTU 傳輸的數據每一個字節(jié) ASCII 都要用兩個字節(jié)來傳輸,比如 RTU傳輸一個十六進制數 0xF9,ASCII 就需要傳輸 39。因此, Modbus協(xié)議的可靠性較好。標
點擊復制文檔內容
法律信息相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1