關于ModBus RTU通訊協議的提問?
ModBus主要由站地址(一個字節)+功能碼(一個字節)+首地址(兩個字節)+訪問字數(兩個字節)+校驗碼(CRC16或LRC兩個字節)總共8個字節組成。其實VB中編程很簡單從組建添加MSComm組建就行了,難的是校驗,有的需要認證,有的需要計算。而且密碼的順序也不一樣,有時候跳一個字,有時候跳兩個字,有時候是等差數列,有時候是等乘數列,有時候是倒著跳,中間跳…另外,協議在使用過程中也會遇到各種各樣的新問題,解決這些新問題同樣需要創新。
ModBus RTU通訊協議與ModBus通訊協議有什么區別?
ModBus是一種應用層消息傳送協議(OSI模式7),該協議數據單位不依賴于通訊層,也就是 PDU=功能代碼+數據字段。
ModBus可以適用于各種總線和網絡。根據不同的總線和網絡, Modbus協議將額外的域映射為 ADU,也就是 ADU=額外的域+ PDU。當前, Modbus有三種通訊方法:
1.一個與 MODBUSTCP相對應的以太網。
2.異步串口傳送(諸如RS-232-/422/485/等多種媒體);光纖,無線等),其通訊方式為 MODBUSRTU或 MODBUSASCII。
3.一種與 ModbusPLUS相對應的通訊方式的高速標記傳輸網絡。

什么是 ModBus, RTU, ModBus RTU?
ModBus是一種工業控制行業的標準協議,由施奈德公司(施奈德)所購買,由莫迪康編寫。
ModBus分為兩類,一類是串口協議,一類是 ModBus tcp,一類是 ModBus tcp,一類是RS232,一類是RS485,這樣的話,工控機的協議棧中就只有 modbusRTU,接收到串口的數據后,會根據數據包中的數據進行調整,而 ModbusTCP則需要使用帶有網絡端口的 PLC。
下面是具體的框架格式:
用于 ModBus RTU地址域功能代碼的校驗
ModBus TCP目標地址協議 id長度單位號碼函數代碼數據
簡單來說, tcp就是 RTU的一部分, RTU是另外一種概念, ModBus協議中不包括 RTU,而是工業控制部門的縮寫。
OPC轉 modbusRTU模式我有一臺 OPC,里面有許多 tag, tag都是從 AB中產生的,如何連接到 ModBus?
Profibus, Fielbus, Modbus,CC-link,這些都是 PLC的硬件,每個廠家都有自己的特點,只不過現在的電腦配置軟件,都支持多種不同的協議。
Profibus, Fielbus, Modbus,CC-link,這些都是一種通信協議,不需要你編程,就像你在用一臺電腦,你不用寫 IP,只要按照這個程序來。
也就是說,當 PLC和 DCS硬件配置的時候,你要根據工廠支持的協議來安裝硬件。