【正文】
0000 0011 0000 0110 0000 0010 0010 1011 0000 0000 0000 0000 0000 0000 0110 0011 CRC (16 bits) None 11 圖 8:從機(jī)采用 ASCII/RTU 方式響應(yīng) PIMBUS300 Modbus Protocol 11 前導(dǎo) 工作標(biāo)記 廣播地址 M A C /L L C 區(qū) C R C 結(jié)束標(biāo)志 HDL C 級(jí) M A C 級(jí) : 目的地址 原地址 MA C 功能 字節(jié)數(shù) L L C 區(qū) L L C 級(jí) : 輸出路由 路由器 傳送次序 路由 M O D B U S 信息幀 計(jì)數(shù)器 從機(jī)地址 功能代碼 高位起始 低位起始 高位寄 低位寄 地址 地址 存器數(shù)量 存器數(shù)量 M ODB US 信息 : Modbus+數(shù)據(jù)內(nèi)容 在 Modbus+網(wǎng)絡(luò)發(fā)送的 Modbus 信息應(yīng)需嵌入到 LLC (邏輯連接控制 )級(jí)數(shù)據(jù)幀, Modbus信息區(qū)由 8 位字節(jié)的數(shù)據(jù)組成,類(lèi)似于 RTU 中的信息組成。 其余的信息與原標(biāo)準(zhǔn)格式一致,應(yīng)用軟件 (控制器中的 MSTR 或主機(jī)中的 Mod III)可將這些信息幀組成數(shù)據(jù)包。 圖 9: Modbus+數(shù)據(jù)內(nèi)容 控制器支持的功能代碼 下表列出 Modicon 控制器支持的功能代碼:以十進(jìn)制表示。 代碼 名稱(chēng) 384 484 584 884 M84 984 01 讀線(xiàn)圈狀態(tài) Y Y Y Y Y Y 02 讀輸入狀態(tài) Y Y Y Y Y Y 03 讀線(xiàn)保持寄存器 Y Y Y Y Y Y 04 讀輸入寄存器 Y Y Y Y Y Y 05 強(qiáng)制單個(gè)線(xiàn)圈 Y Y Y Y Y Y 06 預(yù)置單個(gè)寄存器 Y Y Y Y Y Y 07 讀不正常狀態(tài) Y Y Y Y Y Y 08 診斷 (見(jiàn)第 3 章 ) 09 程序 484 N Y N N N N 10 查詢(xún) 484 N Y N N N N 11 通訊事件控制 Y N Y N N Y 12 通訊事件記錄 Y N Y N N Y 13 程序控制器 Y N Y N N Y 14 查詢(xún)控制器 Y N Y N N Y 15 強(qiáng)制多個(gè)寄存器 Y Y Y Y Y Y 16 預(yù)置多個(gè)寄存器 Y Y Y Y Y Y 17 報(bào)告從機(jī) ID Y Y Y Y Y Y 18 程序 884/M84 N N N Y Y N Modbus Protocol PIMBUS300 12 19 通訊鏈路復(fù)位 N N N Y Y N 20 讀通用參考值 N N Y N N Y 21 寫(xiě)通用參考值 N N Y N N Y 22 Mask Write 4X Register N N N N N (1) 23 Read/Write 4X Registers N N N N N (1) 24 Read FIFO 隊(duì)列 N N N N N (1) ( 1)功能代碼僅由 984785 控制器支持 01 讀線(xiàn)圈狀態(tài) 描述 讀從機(jī)離散量輸出口的 ON/OFF 狀態(tài),不支持廣播。 查詢(xún) 查詢(xún)信息規(guī)定了要讀的起始線(xiàn)圈和線(xiàn)圈量,線(xiàn)圈的起始地址為零, 116 個(gè)線(xiàn)圈的尋址地址分為 015。 QUERY Field Name Slave Address Function Starting Address Hi Starting Address Lo No. of Points Hi No. of Roints Lo Error Check (LRC or CRC) Example (Hex) 11 01 00 13 00 25 — 圖 10: 讀線(xiàn)圈狀態(tài)-查詢(xún) 響應(yīng) 響應(yīng)信息中的各線(xiàn)圈的狀態(tài)與數(shù)據(jù)區(qū)的每一位的值相對(duì)應(yīng), 1=ON。第一個(gè)數(shù)據(jù)字節(jié)的 LSB 為查詢(xún)中的尋址地址,其他的線(xiàn)圈按順序在該字節(jié)中由低位向高位排列,直至8 個(gè)為止,下一個(gè)字節(jié)也是從低位向高位排例。 RESPONSE Field Name Slave Address Function Byte Count Data (Coils 2720) Data (Coils 3528) Data (Coils 4336) Data (Coils 5144) Data (Coils 5652) Error Check (LRC or CRC) Example (Hex) 11 01 05 CD 6B B2 0E 1B — 圖 11: 讀線(xiàn)圈狀態(tài)-響應(yīng) 線(xiàn)圈 2720 的狀態(tài)用 CDH 表示,二進(jìn)制值為 11001101,該字節(jié)的 MCB為線(xiàn)圈 27, LSB 為 20。下一個(gè)字節(jié)的線(xiàn)圈應(yīng)為 35至 28。 最后一個(gè)數(shù)據(jù)字節(jié)中, 5652 線(xiàn)圈的狀態(tài)為 1BH(或二進(jìn)制 00011011),線(xiàn)圈 56是左數(shù)第 4 位,線(xiàn)圈 52是該字節(jié)的最低位,所線(xiàn)圈 56 至 52 的狀態(tài)分別為 ONONOFFONON 注意 3 個(gè)剩余位 (至最高位的數(shù) )全部填 0。不支持廣播。 查詢(xún) 查詢(xún)信息規(guī)定了要讀的輸入起始地址,以及輸入信號(hào)的數(shù)量。 例:請(qǐng)求讀從機(jī)設(shè)備 17 的 1019710218 的輸入位狀態(tài)。 響應(yīng) 響應(yīng)信息中的各輸入口的狀態(tài),分別對(duì)應(yīng)于數(shù)據(jù)區(qū)中的每一位值, 1 = ON。下一個(gè)字節(jié)中的 8 個(gè)輸入位也是從低位到高位排列。字節(jié)的最高位,字節(jié)數(shù)區(qū)。 例:對(duì)查詢(xún)作出響應(yīng) (參見(jiàn)上頁(yè) )。 輸入位 1020410197 的狀態(tài)用 35H (或二進(jìn)制 00110101) 表示。 Modbus Protocol PIMBUS300 14 03 讀保持寄存器 說(shuō)明 讀從機(jī)保持寄存器的二進(jìn)制數(shù)據(jù)不支持廣播,附錄 B 列出了由各種型號(hào)控制器所支持的最大的參數(shù)量 查詢(xún) 查詢(xún)信息規(guī)定了要讀的寄存器起始地址及寄存器的數(shù)量,寄存器 尋址起始地址為 0000,寄存器 116 所對(duì)應(yīng)的地址分別為 015 QUERY Field Name Slave Address Function Starting Address Hi Starting Address Lo No. of Points Hi No. of Roints Lo Error Check (LRC or CRC) Example (Hex) 11 03 00 6B 00 03 — 圖 14:讀保持寄存器 查詢(xún) 響應(yīng) 響應(yīng)信息中的寄存器數(shù)據(jù)為二進(jìn)制數(shù)據(jù),每個(gè)寄存器分別 對(duì)應(yīng) 2 個(gè)字節(jié),第一個(gè)字節(jié)為高位值數(shù)據(jù),第二個(gè)字節(jié)為低位數(shù)據(jù)。對(duì)其它控制器型號(hào)的掃描速率為每次 32個(gè)寄存器,全部數(shù)據(jù)完成組合后返回響應(yīng)信息。 RESPONSE Field Name Slave Address Function Byte Count Data Hi (Register 40108) Data Lo(Register 40108) Data Hi(Register 40109) Data Lo(Register 40109) Data Hi(Register 40110) Data Lo(Register 40110) Error Check (LRC or CRC) Example (Hex) 11 03 06 02 2B 00 00 00 64 — 圖 15:讀寄存器 響應(yīng) 寄存器 40108 的數(shù)據(jù)用 022BH 2 個(gè)字節(jié) (或用十進(jìn)制 555)表示,寄存器 4010940110中的數(shù)據(jù)為 0000 和 0064H, (十進(jìn)制時(shí)為 0 和 100) 04 讀輸入寄存器 說(shuō)明 讀從機(jī)輸入寄存器 (3X 類(lèi)型 )中的二進(jìn)制數(shù)據(jù),不支持廣播 附錄 B 列出了由各種型號(hào)控制器所支持的最大的參數(shù)量 查詢(xún) 查詢(xún)信息規(guī)定了要讀的寄存器的起始地址及寄存器的數(shù)量,尋止起始地址為 0,寄存器 116 所對(duì)應(yīng)的地址分別為 015。 PIMBUS300 Modbus Protocol 15 QUERY Field Name Slave Address Function Starting Address Hi Starting Address Lo No. of Points Hi No. of Roints Lo Error Check (LRC or CRC) Example (Hex) 11 04 00 08 00 01 — 圖 16:讀輸入寄存器 查詢(xún) 響應(yīng) 響應(yīng)信息中的寄存器數(shù)據(jù)為每個(gè)寄存器分別對(duì)應(yīng) 2 個(gè)字節(jié),第一個(gè)字節(jié)為高位數(shù)據(jù),第二個(gè)字節(jié)為低位數(shù)據(jù)。數(shù)據(jù)完成組合后,返回響應(yīng)信息。廣播時(shí),該功能可強(qiáng)制所有從機(jī)中同一類(lèi)型的線(xiàn)圈均為 ON 或 OFF狀態(tài)。線(xiàn)圈強(qiáng)制狀態(tài)一直保持有效直至下一個(gè)控制邏輯作用于線(xiàn)圈為止。 附錄 B 中列出了由各種型號(hào)控制器所支持的最大的參數(shù)量。規(guī)定被請(qǐng)求線(xiàn)圈的 ON/OFF狀態(tài), FF00H 值請(qǐng)求線(xiàn)圈處于 ON狀態(tài), 0000H值請(qǐng)求線(xiàn)圈處于 OFF 狀態(tài),其它值對(duì)線(xiàn)圈無(wú)效,不起作用。廣播時(shí),該功能把值預(yù)置到所有從機(jī)的相同類(lèi)型的寄存器中。使寄存器中的預(yù)置值保持有效。若控制邏輯中無(wú)寄存器程序時(shí),則寄存器中的值保持不變 。 請(qǐng)求的預(yù)置值在查詢(xún)數(shù)據(jù)區(qū), M84 或 484 控制器使用一個(gè) 10 位二進(jìn)制值,其中高 6 位設(shè)定為 0,而其它類(lèi)型的控制器使用 16 位值。 QUERY Field Name Slave Address Function Register Address Hi Register Address Lo Preset Data Hi Preset Data Lo Error Check (LRC or CRC) Example (Hex) 11 06 00 01 00 03 — 圖 20:預(yù)置單個(gè)寄存器 查詢(xún) 響應(yīng) 寄存器內(nèi)容被預(yù)置后返回正常響應(yīng) 例:按查詢(xún)要求返回響應(yīng) RESPONSE Field Name Slave Address Function Register Address Hi Register Address Lo Preset Data Hi Preset Data Lo Error Check (LRC or CRC) Example (Hex) 11 06 00 01 00 03 — 圖 21:預(yù)置單個(gè)寄存器 響應(yīng) 07 讀不正常狀態(tài) 說(shuō)明 讀從中機(jī)中 8 個(gè)不正常狀態(tài)線(xiàn)圈的數(shù)據(jù),某些線(xiàn)圈號(hào)已在不同型號(hào)的控制器中預(yù)定義,而其它的線(xiàn)圈由用戶(hù)編程,作為有關(guān)控制器的狀態(tài)信息,如“ machine ON/OFF”,“ heads retraced”, (縮回標(biāo)題 ),“ safeties satisfied” (安全性滿(mǎn)意 ),“ error conditions” (存在錯(cuò)誤條件 )或其它用戶(hù)定義的標(biāo) 志等。 該功能代碼為存取該類(lèi)信息提供了一種簡(jiǎn)單的方法,不正常線(xiàn)圈的類(lèi)型是已知的 (在功能代碼中不需要線(xiàn)圈類(lèi)型 ) 預(yù)定義的不正常線(xiàn)圈號(hào)如下: 控制器型號(hào) 線(xiàn)圈 設(shè)定 M84,184/384,584,984 18 用戶(hù)定義 484 257 電池狀態(tài) 258264 用戶(hù)定義 884 761 電池狀態(tài) 762 內(nèi)存保護(hù)狀態(tài) Modbus Protocol PIMBUS300 18 763 R10 工況狀態(tài) 764768 用戶(hù)預(yù)定義 查詢(xún) 例請(qǐng)求讀從機(jī)設(shè)備 17 中的不正常狀態(tài) QUERY Field Name Slave Address Function Error Check (LRC or CRC) Example (Hex) 11 07 —