工程監(jiān)測多通道振弦模擬信號采集儀VTN的MODBUS 通訊協(xié)議
在 MODBUS 協(xié)議下,所有寄存器被定義為“保持寄存器” (詳見 MODBUS 通訊協(xié)議標準說明), 設備支持基于 MODBUS 協(xié)議的多個連續(xù)寄存器讀取、單個寄存器寫入兩種指令碼, 對應指令碼分別為 0x03、 0x06。
(1) 03(0x03)、 04(0x04) 指令碼: 讀取多個連續(xù)的寄存器數(shù)據(jù),指令格式如下
例:讀取地址為 0x01 的設備寄存器值,寄存器開始地址為 0,連續(xù)讀取 10 個寄存器
主機發(fā)送指令: 0x01 0x03 0x00 0x00 0x00 0x0A 0xC5 0xCD
從機返回應答: 0x01 0x03 0x14 0x00 0x01 0x00 0x60 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x01 0xF4 0x00 0x00 0x00 0x64 0x00 0xC8 0x5F 0x8F(下劃線為讀取到的 10 個寄存器值)
讀取多個連續(xù)寄存器時, 單次讀取不要超過 32 個寄存器, 不要讀取不存在的寄存器。
注意:當工作模式撥碼開關設置為“MODBUS 指令驅(qū)動測量模式” 時,對傳感器通道寄存器的讀取的指令會在測量完成后響應,最長響應延時為 120 秒。
(2) 06(0x06) 指令碼: 修改單個寄存器的值, 指令格式如下
例:將地址為 0x01 的設備中的寄存器 8 的值修改為 100
主機發(fā)送指令: 0x01 0x06 0x00 0x08 0x00 0x64 0x09 0xE3
從機返回應答: 0x01 0x06 0x00 0x08 0x00 0x64 0x09 0xE3