Modbus RTU通信概述 Modbus 是公開(kāi)的通信協(xié)議,是一種單主站的主/從通信模式。Modbus 通信標(biāo)準(zhǔn)協(xié)議可以通過(guò)各種方式傳播,如 RS232C、RS485、光纖、無(wú)線電等。Modbus基于串行傳輸時(shí)有兩種模式,ASCII和RTU,兩種模式針對(duì)數(shù)據(jù)打包、解碼方式的定義不同,支持Modbus協(xié)議的設(shè)備一般都支持 RTU 模式。西門(mén)子plc S7-200SMART CPU通過(guò)硬件自帶的RS485通信端口或擴(kuò)展的通信信號(hào)板,和軟件上開(kāi)發(fā)的Modbus RTU通信標(biāo)準(zhǔn)指令庫(kù),可以幫助客戶快速便捷的實(shí)現(xiàn)設(shè)備間的Modbus RTU通信。 Modbus RTU通信標(biāo)準(zhǔn)指令庫(kù) 標(biāo)準(zhǔn)指令庫(kù)-主站:主站初始化MBUS_CTRL指令&主站讀寫(xiě)MBUS_MSG指令 ● EN:使能參數(shù),必須保證每個(gè)掃描周期都能開(kāi)啟(SM0.0)。 ● Mode:模式參數(shù),為1時(shí)使能Modbus協(xié)議功能。 ● Baud:波特率參數(shù),根據(jù)通訊兩側(cè)的協(xié)議和速度要求需設(shè)定為一致。 ● Parity:校驗(yàn)方式參數(shù),0=無(wú)校驗(yàn),1=奇校驗(yàn),2=偶校驗(yàn)。 ● Port:端口號(hào)參數(shù),0=使用集成的通訊口,1=CM01信號(hào)板。 ● Timeout:超時(shí)時(shí)間參數(shù),主站等待從站響應(yīng)的時(shí)間,以ms為單位。 ● Done:初始化完成位。 ● Error:初始化錯(cuò)誤代碼(詳見(jiàn)系統(tǒng)手冊(cè)指令說(shuō)明)。 ● EN:使能參數(shù),必須保證同一時(shí)刻只有一個(gè)讀寫(xiě)功能處于使能狀態(tài)。 ● First:讀寫(xiě)請(qǐng)求位,每一個(gè)新的讀寫(xiě)請(qǐng)求需要用脈沖觸發(fā)。 ● Slave :從站地址參數(shù),可選擇的范圍1-247。 ● RW:讀寫(xiě)參數(shù),0=讀,1=寫(xiě)。 ● Addr:讀寫(xiě)從站對(duì)應(yīng)連續(xù)地址區(qū)域的起始地址。 ● Count:讀寫(xiě)從站對(duì)應(yīng)連續(xù)地址的個(gè)數(shù)。 ● DataPtr:讀寫(xiě)操作對(duì)應(yīng)主站連續(xù)地址區(qū)域的起始地址,用于存儲(chǔ)準(zhǔn)備寫(xiě)入的數(shù)據(jù)或要讀回的數(shù)據(jù)。 ● Done:讀寫(xiě)功能完成位。 ● Error:讀寫(xiě)指令錯(cuò)誤代碼(詳見(jiàn)系統(tǒng)手冊(cè)指令說(shuō)明)。 標(biāo)準(zhǔn)指令庫(kù)-從站:從站初始化MBUS_INIT指令&從站響應(yīng)請(qǐng)求MBUS_SLAVE指令 ● EN:調(diào)用使能位,一般使用SM0.1。 ● Mode:模式參數(shù),啟動(dòng)停止Modbus,0=停止,1=啟動(dòng)。 ● Addr:從站地址,Modbus從站地址,取值1-247。 ● Baud :波特率參數(shù),根據(jù)通訊兩側(cè)的協(xié)議和速度要求需設(shè)定為一致。 ● Parity:校驗(yàn)方式參數(shù),0=無(wú)校驗(yàn),1=奇校驗(yàn),2=偶校驗(yàn)。 ● Port:端口號(hào)參數(shù),0=使用集成的通訊口,1=CM01信號(hào)板。 ● Delay:附加字符間延時(shí),缺省值為0。 ● MaxIQ:參與通信的zui大IO點(diǎn)數(shù),一般設(shè)為256。 ● MaxAI:參與通信的zui大AI通道數(shù),zui多56個(gè)。 ● MaxHold:zui大保持寄存器區(qū),參與通訊的V區(qū)大小。 ● HoldStart:保持寄存器區(qū)起始地址,以指針?lè)绞街付ā?br>● Done:初始化完成位。 ● Error:初始化錯(cuò)誤代碼(詳見(jiàn)系統(tǒng)手冊(cè)指令說(shuō)明)。 ● EN:調(diào)用使能位,一般使用SM0.0。 ● Done:通訊完成位。 ● Error:通訊錯(cuò)誤代碼(詳見(jiàn)系統(tǒng)手冊(cè)指令說(shuō)明)。 應(yīng)用實(shí)例 通過(guò)Modbus標(biāo)準(zhǔn)指令庫(kù),實(shí)現(xiàn)主從站CPU之間的數(shù)據(jù)交換,其中主站IP地址為192.168.2.1,從站IP地址為192.168.2.2,主站Modbus地址為0,從站Modbus地址為1,將從站VB1000-VB1004中的數(shù)據(jù)讀取至主站VB100-VB104中,數(shù)據(jù)交換區(qū)將主站中VB200-VB204的數(shù)據(jù)寫(xiě)入從站VB2000-VB2004。 主站程序: 從站程序: 執(zhí)行結(jié)果: |
|
來(lái)自: 網(wǎng)上資料_收藏 > 《PLC》