MODBUS總線簡介
MODBUS傳輸協(xié)議定義了控制器可以識別和使用的信息結(jié)構(gòu),而不須考慮通信網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。它定義了各種數(shù)據(jù)幀格式,描述了控制器訪問另一設(shè)備的過程,怎樣作出應(yīng)答響應(yīng),以及可檢查和報告的錯誤。字串5
MODBUS有兩種傳送方式,RTU(Remote Terminal Unit)方式和ASCⅡ方式。MODBUS以LSB在先的形式傳送數(shù)字量,以MSB在先的形式傳送模擬量。MODBUS把通信參與者規(guī)定為“主站”(MASTER)和“從站”(SLAVE)。主站可向多個從站發(fā)送通信請求,最多可達(dá)247個從站。每個從站都有自己的地址編號。
字串8
MODBUS的RTU方式規(guī)定通信字符串的最后兩個字節(jié)用于傳遞循環(huán)冗余校驗數(shù)據(jù)。其校驗方式是將整個字符串(不包括最后兩個字節(jié))的所有字節(jié)按規(guī)定的方式進(jìn)行位移并進(jìn)行XOR(異或)計算。接收方在收到該字符串時按同樣的方式進(jìn)行計算,并將結(jié)果同收到的循環(huán)冗余校驗的兩個字節(jié)進(jìn)行比較,如果一致則認(rèn)為通信正確,如果不一致,則認(rèn)為通信有誤,從站將發(fā)送CRC錯誤應(yīng)答。MODBUS中RTU采用CRC-16的冗余校驗方式。字串7
控制器與PLC之間通信的內(nèi)容包括主站對從站的讀取和寫入,MODBUS規(guī)定,只有主站具有主動權(quán),從站只能被動的響應(yīng),包括回答出錯信息。數(shù)據(jù)通信的一般格式如下:
字串9
從功能上講,MODBUS包括24種命令,每一功能都有相應(yīng)的功能碼。最基本的功能主要包括AI/AO、DI/DO的數(shù)據(jù)傳送, PLC如果支持MODBUS,那么都應(yīng)該包含這些基本命令。PLC將模擬量和數(shù)字量存放在不同的寄存器中。模擬量在PLC中是保存在寄存器(Holding Register)中,數(shù)字量保存在線圈中(Holding Coils)。 字串7
主站:從站地址
從站:從站地址
字串4
MODBUS除了定義通信功能碼外,同時還定義了出錯碼,這有助于通信主站發(fā)現(xiàn)通信的錯誤內(nèi)容和原因,并采取相應(yīng)措施,從而保證了通信的可靠進(jìn)行。
字串2
評論