




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、MODBUS_RTU通訊規約 MODBUS通訊協議:ModBus通訊規約允許PDM系列儀表/變送器與施耐德、西門子、AB、GE等多個國際著名品牌的可編程順序控制器(PLC)、RTU、SCADA系統、DCS或與第三方具有ModBus兼容的監控系統之間進行信息交換和數據傳送。PDM系列儀表/變送器只要簡單地增加一套基于計算機(或工控機)的監控軟件(如:組態王、Intouch、FIX、synall等)就可以構成一套電力監控系統。廣泛的系統集成: PDM系列儀表/變送器提供了標準的RS-485/422通訊接口及ModBus通訊協議,這個通訊協議已廣泛被國內外電力行業
2、及工控行業作為系統集成的標準。 通訊數據的類型及格式: 信息傳輸為異步方式,并以字節為單位。在主站和從站之間傳遞的通訊信息是11位的字格式: 字格式(串行數據)11位二進制起始位1位數據位8位奇偶校驗位1位:有奇偶校驗位/無:無奇偶校驗位停止位1位:有奇偶校驗位/2位:無奇偶校驗位 通訊數據(信息幀)格式 數據格式:地址碼功能碼數據區錯誤校檢 數據長度:1字節1字節N字節16位CRC碼(冗余循環碼)
3、160;
4、160;
5、160;
6、160; &
7、#160; 注:1、1個字節由8位二進制數組成(既8 bit)。 2、ModBus是Modicon公司的注冊商標。 3、“從機”在本文件中既為PDM。 一、通訊信息傳輸過程: 當通訊命令由發送設備(主機)發送至接收設備(從機)時,符合相應地址碼的從機接收通訊命令,并根據功能碼及相關要求讀取信息,如果CRC校驗無誤,則執行相應的任務,然后把執行結果(數據)返送給主機。返回的信息中包括地址碼、功能碼、執行后的數據以及CRC校驗碼。如果CRC校驗出錯就不返回任何
8、信息。 1.1 地址碼: 地址碼是每次通訊信息幀的第一字節(8位),從0到255。這個字節表明由用戶設置地址的從機將接收由主機發送來的信息。每個從機都必須有唯一的地址碼,并且只有符合地址碼的從機才能響應回送信息。當從機回送信息時,回送數據均以各自的地址碼開始。主機發送的地址碼表明將發送到的從機地址,而從機返回的地址碼表明回送的從機地址。相應的地址碼表明該信息來自于何處。 1.2 功能碼: 是每次通訊信息幀傳送的第二個字節。ModBus通訊規約可定義的功能碼為1到127。PDM系列
9、儀表/變送器僅用到其中的一部分功能碼。作為主機請求發送,通過功能碼告訴從機應執行什么動作。作為從機響應,從機返回的功能碼與從主機發送來的功能碼一樣,并表明從機已響應主機并且已進行相關的操作。 表8.1 MODBUS部分功能碼 功能碼定 義操 作(二進制)02讀開關量輸入讀取一路或多路開關量狀態輸入數據01讀開關量輸出讀取一路或多路開關量輸出狀態數據03讀寄存器數據讀取一個或多個寄存器的數據05寫開關量輸出控制一路繼電器“合/分”輸出06寫單路寄存器把一組二進制數據寫入單個寄存器10寫多路寄存器把多組二進制數據寫入多個寄存器 1.3
10、數據區: 數據區包括需要由從機返送何種信息或執行什么動作。這些信息可以是數據(如:開關量輸入/輸出、模擬量輸入/輸出、寄存器等等)、參考地址等。例如,主機通過功能碼03告訴從機返回寄存器的值(包含要讀取寄存器的起始地址及讀取寄存器的長度),則返回的數據包括寄存器的數據長度及數據內容。對于不同的從機,地址和數據信息都不相同(應給出通訊信息表)。 PDM 系列儀表/變送器采用Modbus通訊規約,主機(PLC、RTU、PC機、DCS等)利用通訊命令(功能碼03),可以任意讀取其數據寄存器(其數據信息表詳見附錄)。PDM系列儀表/變送器的數據寄存器存儲的電量多達幾百個(如:電流、
11、電壓、功率、031次諧波分量等),并且都是16位(2字節)的二進制數據,并且高位在前;一次最多可讀取寄存器數(既各種電量的數量)是50個。 PDM響應的命令格式是從機地址、功能碼、數據區及CRC碼。數據區的數據都是兩個字節,并且高位在前(電能量除外)。 注:1、PDM-820AC/ACM/ACR、PDM-800AC/ACM具有“03”、“06”、“10”功能碼; 2、如果PDM采用MODBUS ASCII通訊協議,其通訊數據格式為;7個數據位,1個 停止位,偶校驗。二
12、、MODBUS功能碼簡介 2.1 功能碼“02”:讀1路或多路開關量狀態輸入 例如:主機要讀取地址為01,開關量DI1DI4的輸入狀態。從機(PDM)數據寄存器的地址和數據為:起始位地址DI寄存器數據(16進制)備 注00000BDI1/DI2/DI4狀態為“1”,DI3狀態為“0” 主機發送的報文格式:主機發送字節數發送的信息備 注從機地址101 發送至地址為01的從機功能碼102 讀開關量輸入狀態起始BIT位20000 起始BIT位地址為0000讀數據長度20
13、004 讀取4路開關量輸入狀態位CRC碼279C9由主機計算得到CRC碼 從機(PDM)響應返回的報文格式: 從機響應字節數返回的信息備 注從機地址101 來自從機01功能碼102 讀開關量輸入狀態數據長度101 1個字節(8個BIT位)DI狀態數據10BDI寄存器內容CRC碼2E04F 由從機計算得到CRC碼 2.2 功能碼“01”:讀1路或多路開關量輸出狀態 例如:主機要讀取地址為01,開關量DO1,DO2的輸出狀態。從機(P
14、DM)數據寄存器的地址和數據為: 起始位地址DO寄存器數據(16進制)備 注000002DO2輸出狀態為“1”,DO1輸出狀態為“0” 主機發送的報文格式: 主機發送字節數發送的信息備 注從機地址101 發送至地址為01的從機功能碼101 讀開關量輸出狀態起始BIT位20000 起始BIT位地址為0000讀數據長度20002 讀取2路繼電器輸出狀態位CRC碼2BDCB由主機計算得到CRC碼 從機(PDM)響應返回的報文格式: 從機響應
15、字節數返回的信息備 注從機地址101 來自從機01功能碼101 讀開關量輸出狀態數據長度101 1個字節(8個BIT位)DO狀態數據102DO寄存器內容CRC碼2D049 由從機計算得到CRC碼2.3 功能碼“03”:讀多路寄存器輸入 例如:主機要讀取地址為01,起始地址為0116的3個從機寄存器數據。從機(PDM)數據寄存器的地址和數據為: 寄存器地址寄存器數據(16進制)對應PDM電量01161784UA01171780UB0118178AUC
16、主機發送的報文格式: 主機發送字節數發送的信息備 注從機地址101 發送至地址為01的從機功能碼103 讀取寄存器起始地址20116 起始地址為0116數據長度30003 讀取3個寄存器(共6個字節)CRC碼2E5F3由主機計算得到CRC碼 從機(PDM)響應返回的報文格式: 從機響應字節數返回的信息備 注從機地址101 來自從機01功能碼103 讀取寄存器讀取字106 &
17、#160; 3個寄存器共6個字節寄存器數據121784地址為0116內存的內容寄存器數據221780地址為0117內存的內容寄存器數據32178A 地址為0118內存的內容CRC碼25847 由從機計算得到CRC碼 2.4 功能碼“05”:寫1路開關量輸出(“遙控”) 例1:開關量輸出點DO1,其當前狀態為“分”,主機要控制該路繼電器“合”。 控制命令為:“FF00”為控制繼電器“合”;“0000”為控制繼電器“分”; 主機發送的報文格式:
18、0;主機發送字節數發送的信息備 注從機地址101 發送至地址為01的從機功能碼105 寫開關量輸出狀態輸出BIT位20000 對應輸出繼電器BIT位(DO1)控制命令2FF00 控制該路繼電器輸出為“合”狀態位CRC碼28C3A由主機計算得到CRC碼 從機(PDM)響應返回的報文格式: 與主機發送的報文格式及數據內容完全相同。例2:開關量輸出點DO2,其當前狀態為“合”,主機要控制該路繼電器“分”。 主機發送的報文格式: 主機發送字節數發送的
19、信息備 注從機地址101 發送至地址為01的從機功能碼105 寫開關量輸出狀態輸出BIT位20001 對應輸出繼電器BIT位(DO2)控制命令20000 控制該路繼電器輸出為“合”狀態位CRC碼29C0A由主機計算得到CRC碼 從機(PDM)響應返回的報文格式: 與主機發送的報文格式及數據內容完全相同。 2.5 功能碼“06”:寫單路寄存器 例如:主機要把數據07D0,保存到地址為002C的從機寄存器中去(從機地址碼為01)。通訊數據保存結束
20、后,地址為002C的PDM表原存儲信息為: 地址原來存儲數據(16進制)002C04B0 主機發送的報文格式: 主機發送字節數發送的信息舉例從機地址101 發送至地址為01的從機功能碼106 寫單路寄存器起始地址2002C 要寫入的寄存器地址寫入數據207D0 對應的新數據CRC碼2 4BAF由主機計算得到的CRC碼 從機(PDM)響應返回的報文格式: 與主機發送的報文格式及數據內容完全相同。2.6功能碼“10”:寫多路寄存器主機利
21、用這個功能碼把多個數據保存到PDM表的數據存儲器中去。Modbus通訊規約中的寄存器指的是16位(即2字節),并且高位在前。這樣PDM的存儲器都是二個字節。由于Modbus通訊規約允許每次最多保存60個寄存器,因此PDM一次也最多允許保存60個數據寄存器。例如:主機要把0064,0010保存到地址為002C,002D的從機寄存器中去(從機地址碼為01)。通訊數據保存結束后,地址為002C/002D的PDM表內存儲信息為: 地址原來存儲數據(16進制)002C04B0002D1388 主機發送的報文格式: 主機發送字節數發送信息舉例從機地址101發送至從機01功能碼
22、110寫多路寄存器起始地址2002C要寫入的寄存器的起始地址保存數據字長度20002保存數據的字長度(共2字)保存數據字節長104保存數據的字節長度(共4字節)保存數據1204B0數據地址002C保存數據221388數據地址002DCRC碼2FC63由主機計算得到的CRC碼 從機(PDM)響應返回的報文格式:從機響應字節數字節數舉例從機地址101來自從機01功能碼110寫多路寄存器起始地址2002C起始地址為002C保存數據字長度20002保存2個字長度的數據CRC碼28001由從機計算得到的CRC碼 三、錯誤校驗碼(CRC校驗):主機或從機可用校驗碼進行判別接收信息是否正
23、確。由于電子噪聲或一些其它干擾,信息在傳輸過程中有時會發生錯誤,錯誤校驗碼(CRC)可以檢驗主機或從機在通訊數據傳送過程中的信息是否有誤,錯誤的數據可以放棄(無論是發送還是接收),這樣增加了系統的安全和效率。MODBUS通訊協議的CRC(冗余循環碼)包含2個字節,即16位二進制數。CRC碼由發送設備(主機)計算,放置于發送信息幀的尾部。接收信息的設備(從機)再重新計算接收到信息的CRC,比較計算得到的CRC是否與接收到的相符,如果兩者不相符,則表明出錯。 在進行CRC計算時只用8個數據位,起始位及停止位,如有奇偶校驗位也包括奇偶校驗位,都不參與CRC計算。 CRC碼的計算方法是: 1
24、預置1個16位的寄存器為十六進制FFFF(即全為1);稱此寄存器為CRC寄存器;2把第一個8位二進制數據(既通訊信息幀的第一個字節)與16位的CRC寄存器的低 8位相異或,把結果放于CRC寄存器;3把CRC寄存器的內容右移一位(朝低位)用0填補最高位,并檢查右移后的移出位;4如果移出位為0:重復第3步(再次右移一位);如果移出位為1:CRC寄存器與多項式A001(1010 0000 0000 0001)進行異或;5重復步驟3和4,直到右移8次,這樣整個8位數據全部進行了處理;6重復步驟2到步驟5,進行通訊信息幀下一個字節的處理;7將該通訊信息幀所有字節按上述步驟計算完成后,得到的16位CRC寄存器的高、低 字節進行交換;8最后得到的CRC寄存器內容即為:CRC碼。四、通訊錯誤信息及數據的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 車間產品維修管理制度
- 礦山救護日常管理制度
- 車管設施設備管理制度
- 貨車物品歸置管理制度
- 監獄公司規范管理制度
- 百貨貨品上新管理制度
- 動漫產業產業鏈協同與創新驅動研究報告-2025年產業發展方向
- 乙炔庫安全管理制度
- 屈臣氏品牌管理制度
- 社區財務商討管理制度
- 特種設備風險分級管控清單(叉車)
- 《創新創業實踐》課程思政教學案例(一等獎)
- 項目激勵管理制度
- 核酸的降解與核苷酸代謝課件
- T∕CGMA 033001-2018 壓縮空氣站能效分級指南
- 設備安全操作培訓.ppt
- 淺談新興縣禪宗文化旅游開發分析解析
- 40篇短文搞定高考英語3500詞(共42頁)
- 消防設施巡查記錄表
- 工程材料與成型工藝說課
- 設備基礎維護培訓系列之氣動元件故障診斷維護(課堂PPT)
評論
0/150
提交評論