新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > MODBUS協(xié)議實(shí)現(xiàn)PLC“主或從通訊”的自我理解

MODBUS協(xié)議實(shí)現(xiàn)PLC“主或從通訊”的自我理解

作者: 時(shí)間:2016-12-19 來(lái)源:網(wǎng)絡(luò) 收藏
Modbus協(xié)議將寄存器分成了4個(gè)區(qū)域,但每一個(gè)寄存器都是16位的數(shù)據(jù)存儲(chǔ)器,00000~09999代表線(xiàn)圈(DO)類(lèi)地址,10000~19999代表觸點(diǎn)(DI)類(lèi)地址、 30000~39999代表輸入寄存器(AI)類(lèi)地址、40000~49999代表輸出寄存器(AO)類(lèi)地址。
當(dāng)PLC主站和變頻器、私服驅(qū)動(dòng)器、溫控器或其他遵從MODBUS的從站通訊時(shí),會(huì)出現(xiàn)3種情況:
(1)比如"臺(tái)達(dá)",它沒(méi)有能力自己開(kāi)發(fā)專(zhuān)用協(xié)議,就用Modbus作為自己的協(xié)議,這樣的話(huà),它有Modbus指令,只需要設(shè)置通訊格式字后,用指令直接讀從站寄存器地址就可以了。(臺(tái)達(dá)主站)
(2)比如“西門(mén)子”,它有自己開(kāi)發(fā)的PPI、MPI、Profibus、工業(yè)以太網(wǎng)等專(zhuān)用協(xié)議,但為了和支持MODBUS的設(shè)備通訊,它就開(kāi)發(fā)了Modbus通訊協(xié)議庫(kù),我們只需要初始化“通訊格式字”,不需要知道“通訊數(shù)據(jù)信息幀”的格式,直接讀寫(xiě)從站寄存器的地址就可。(西門(mén)子主站)
   ?。ǎ常┍热?ldquo;三菱”,它有自己開(kāi)發(fā)的"CC-LINK"專(zhuān)用協(xié)議,但沒(méi)有支持和MODBUS設(shè)備通訊的協(xié)議庫(kù),那和支持MODBUS協(xié)議的設(shè)備通訊就要編寫(xiě)通訊程序了,這就是“自由口通訊”,在保證硬件通訊口連接正確的情況下,遵從“從站的通訊格式字”和“從站的數(shù)據(jù)信息幀”。在PLC中不但要設(shè)置通訊格式字,還要編寫(xiě)數(shù)據(jù)發(fā)送幀的通訊程序,比較長(zhǎng)。(三菱主站)
PLC通過(guò)指令寫(xiě)程序發(fā)送幀"01H 03H 21H 02H00H 02H 6FH F7H"中,03H(功能碼)和21H 02H(數(shù)據(jù)起始地址)就決定對(duì)從站4區(qū)寄存器中的48451進(jìn)行處理

當(dāng)PLC為從站時(shí),上位或組態(tài)軟件為主站時(shí),軟件一般添加了相應(yīng)PLC的驅(qū)動(dòng)程序,PLC廠家定義了PLC變量地址和MODBUS寄存器的映射關(guān)系,讀和寫(xiě)相應(yīng)MODBUS的寄存器地址就可讀寫(xiě)plc相應(yīng)變量的參數(shù)。


評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉