精密配電列頭柜-多回路配電監(jiān)控裝置應用采用Modbus-RTU協議:“9600,8,1,n",其中為默認波特率, 可通過通訊修改等,參量地址見7.5通訊參量地址表;8表示有8個數據位;n表示無奇偶校 驗位;1表示有1個停止位。
產品型號
技術參數
外形結構
AMC16Z-FD16高精度電壓監(jiān)測裝置
5 協議
當數據幀到達終端設備時,它通過一個簡單的“端口"進入被尋址到的設備,該設備去掉數據幀的“信 封"(數據頭),讀取數據,如果沒有錯誤,就執(zhí)行數據所請求的任務,然后,它將自己生成的數據加入到取 得的“信封"中,把數據幀返回給發(fā)送者。返回的響應數據中包含了以下內容:終端從機地址(Address)、被 執(zhí)行了的命令(Function)、執(zhí)行命令生成的被請求數據(Data)和一個CRC校驗碼(Check)。發(fā)生任何錯誤 都不會有成功的響應,或者返回一個錯誤指示幀。
5.2.1 數據幀格式
5.2.2 地址(Address)域
地址域在幀首,由一個字節(jié)(8-Bits,8位二進制碼)組成,十進制為0~255,在我們的系統中只使用1~ 247,其它地址保留。這些位標明了用戶的終端設備的地址,該設備將接收來自與之相連的主機數據。同一 總線上每個終端設備的地址必須是的,只有被尋址到的終端才會響應包含了該地址的查詢。當終端發(fā)送回 一個響應,響應中的從機地址數據便告訴了主機哪臺終端正與之進行通信。
5.2.3 功能(Function)域
功能域代碼告訴了被尋址到的終端執(zhí)行何種功能。下表列出了該系列儀表用到的功能碼,以及它們的意義 和功能
5.2.4 數據(Data)域
數據域包含了終端執(zhí)行特定功能所需的數據或終端響應查詢時采集到的數據。這些數據可能是數值、參量地址或者設置值。
例如:功能域告訴終端讀取一個寄存器,數據域則需要指明從哪個寄存器開始及讀取多少個數據,內嵌的地址和數據依照類型和從機之間的不同而內容有所不同。
5.2.5 錯誤校驗(Check)域
該域采用CRC16循環(huán)冗余校驗,允許主機和終端檢查傳輸過程中的錯誤。有時由于電噪聲和其它干擾,一組數據從一個設備傳輸到另一個設備時,在線路上可能會發(fā)生一些改變,錯誤校驗能夠保證主機或從機不去響應那些發(fā)生改變的數據,這就提高了系統的安全性、可靠性和效率。
5.3 錯誤校驗的方法
錯誤校驗(CRC)域占用兩個字節(jié),包含了一個16位的二進制值。CRC值由傳輸設備計算出來,然后附加到數據幀上,接收設備在接受數據時重新計算CRC值,然后與接收到的CRC域中的值進行比較,如果這兩個值不相等,就發(fā)生了錯誤
CRC運算時,首先將一個16位的寄存器預置為全1,然后連續(xù)把數據幀中的每個字節(jié)中的8位與該寄存器的當前值進行運算,僅僅每個字節(jié)的8個數據位參與生成CRC,起始位和停止位以及可能使用的奇偶位都不影響CRC。在生成CRC時,每個字節(jié)的8位與寄存器中的內容進行異或,然后將結果向低位移位,高位則用“0"補
充,(LSB)移出并檢測,如果是1,該寄存器就與一個預設的固定值(0A001H)進行一次異或運算,如果為0,不作任何處理。
CRC生成流程:
1 預置一個16位寄存器為0FFFFH(全1),稱之為CRC寄存器。
2 把數據幀中的字節(jié)的8位與CRC寄存器中的低字節(jié)進行異或運算,結果存回CRC寄存器。
3 將CRC寄存器向右移一位,填0,移出并檢測。
4 如果移出為0:重復第3步(下一次移位);如果移出為1:將CRC寄存器與一個預設固定值(0A001H)進行異或運算。
5 重復第3步和第4步直到8次移位。這樣就處理完了一個完整的8位。
6 重復第2步到第5步來處理下一個8位,直到所有的字節(jié)處理結束。
7 最終CRC寄存器的值就是CRC的值。
此外還有一種利用查表計算CRC的方法,它的主要特點是計算速度快,但是表格需要較大的存儲空間,該方法此處不再贅述,請查閱相關資料
精密配電列頭柜-多回路配電監(jiān)控裝置應用