MODBUS協議在一根通訊線上采用主從應答方式的通訊連接方式。首先,主計算機的信號尋址到一臺***一地址的終端設備(從機),然后,終端設備發也的應答信號以相反的方向傳輸給主機,即;在一根單***的通訊線上信號沿著相反的兩個方向傳輸所有的通訊數據流(半雙工的工作模式)。
MODBUS協議只允許在主機(PC,PLC等)和終端設備之間通訊,而不允許***立的終端設備之間的數據交換,這樣各終端設備不會在它們初始化時占據通訊線路,而***限于響應到達本機的查詢信號。
主機查詢:查詢消息幀包括設備地址碼、功能人碼、數據信息碼、校驗碼。地址碼表明要選中的從機設備;功能代碼告之被選中的從設備要執行何種功能,例如功能代碼03或04是要求從設備讀寄存器并返回它們的內容;數據段包含了從設備要執行功能的其它附加信息,如在讀命令中,數據段的附加信息有從何寄存器開始讀的寄存器數量;校驗碼用來檢驗一幀信息的正確性,為從設備提供了一種驗證消息內容是否正確的方法,它采用CRC16的校準規則。
從機響應:如果從設備產生一正常的回應,在回應消息中有從機地址碼、功能代碼、數據信息碼和CRC16校驗碼。數據信息碼包括了從設備收集的數據:如寄存器值或狀態。如果有錯誤發生,我們約定是從機不進行響應。
傳輸方式是指一個數據幀內一系列***立的數據結構以及用于傳輸數據的有限規則,下面定義了與MODBUS協議-RTU方式相兼容的傳輸方式。每個字節的位:1個起始位、8個數據位、(奇偶校驗位)、1個停止位(有奇偶校驗位時)或2個停止位(無奇偶校驗位時)。
數據幀的結構:即:報文格式。
地址碼
功能碼
數據碼
效驗碼
1個BYTE
1個BYTE
N個BYTE
2個BYTE
地址碼在幀的開始部分,由一個字節(8位二進制碼)組成,十進制為0~255,在我們的系統中只使用1~247,其它地址保留。這些位標明了用戶指定的終端設備的地址,該設備將接收來自與之相連的主機數據。每個終端設備的地址須***是***一的,******被尋址到的終端會響應包含了該地址的查詢。當終端發送回一個響應,響應中的從機地址數據告訴了主機哪臺終端與之進行通信。
功能輸出
電能計量和脈沖輸出
提供電能計量,2路電能脈沖輸出功能和RS485的數字接口來完成電能數據的顯示和遠傳。儀表3排12位LED實現有功是能(正向)、無功電能(感性)1次側數據的顯示,右圖中表示正向有功電能數據=369587.28kWh(度);集電級開路的光耦繼電器的電能脈沖(電阻信號)實現有功電能(正向)和無功電能(反向)遠傳,采用遠程的計算機終端、PLC、DI開關采集模塊采集儀表的脈沖總數來實現電能累積計量。休用輸出方式的輸出還是電能的精度檢驗的方式(國家計量規程:標準表的脈沖誤差比較方法)。