熱情、耐心、真誠(chéng)的服務(wù)與支持
一、如何替換西門子MODBUS庫(kù)
1、按Delete鍵刪除程序中西門子Modbus庫(kù)指令
主站:MBUS_CTRL、MBUS_MSG(端口0)、MBUS_CTRL_P1、MBUS_MSG_P1(端口1);
從站:MBUS_INIT、MBUS_SLAVE(端口0)。
下圖以主站程序?yàn)槔?/span>
2、找到并點(diǎn)開左側(cè)程序塊,找到西門子Modbus庫(kù)子程序(如實(shí)例程序中SBR1、SBR2、SBR3、INIT1),將這些子程序刪除。
3、鼠標(biāo)右鍵單擊程序塊,在彈出的菜單欄中選擇庫(kù)儲(chǔ)存區(qū),在彈出的庫(kù)存儲(chǔ)區(qū)窗口中找到西門子Modbus庫(kù)存儲(chǔ)區(qū),并刪除。
4、將對(duì)應(yīng)的Unimat Modbus庫(kù)指令拖到梯形圖中,設(shè)置好參數(shù)。
5、再次右鍵單擊程序塊,選擇打開庫(kù)存儲(chǔ)區(qū),設(shè)置好庫(kù)存儲(chǔ)區(qū)范圍,點(diǎn)擊全部編譯,顯示無(wú)錯(cuò)誤,Modbus庫(kù)替換成功。
二、MODBUS-RTU通訊測(cè)試
包含Modbus-RTU從站指令庫(kù)的項(xiàng)目編譯、下載到CPU中后在編程計(jì)算機(jī)(PG/PC)上運(yùn)行一些Modbus測(cè)試軟件可以檢驗(yàn)CPU的Modbus-RTU通訊是否正常,這對(duì)查找故障點(diǎn)很有用。在運(yùn)行之前,我們可以從以下幾步進(jìn)行軟件及硬件連接的檢查。
①主站與從站的對(duì)應(yīng)地址是否一致。即:slave
②波特率、檢驗(yàn)位及通訊速率設(shè)置是否相同。
③硬件外部通訊線是否有斷線、破損。
? 硬件連線
1、兩DB頭連接方式
如兩端都是DB9頭,我們可以使用屏蔽線,按圖1方式連接。
圖一
2、端子與DB頭的連接方式
若是端子與DB頭連接,可按圖2方式連接。
圖二
3、電腦與設(shè)備的連接線
可以使用USB轉(zhuǎn)485串口線將電腦與PLC或其他設(shè)備連接。
?軟件測(cè)試
在連接好設(shè)備后如出現(xiàn)通訊不上,或者通訊前的驗(yàn)證,可以使用測(cè)試軟件檢驗(yàn)通訊是否正常,程序及參數(shù)有無(wú)錯(cuò)誤。
(以Mbslave和mbpoll測(cè)試軟件為例作以檢測(cè)說(shuō)明)
1、PLC做從站
(1)當(dāng)使用PLC作為從站,設(shè)置好相應(yīng)站地址、波特率、檢驗(yàn)方式等參數(shù)。
本例程是新版Modbus端口0從站指令使用例程,通信參數(shù)設(shè)置為:從站站號(hào)2,波特率9600,校驗(yàn)位0,保持寄存器從VW100開始的1000個(gè)字。
(2)雙擊打開Mbpoll軟件-----點(diǎn)擊Display——選擇數(shù)據(jù)類型——選擇PLC Address——點(diǎn)擊SETU——選擇Read/Write Definition——配置相應(yīng)的參數(shù)——點(diǎn)擊確定
參數(shù)說(shuō)明:
A、SLAVE ID:從站地址 2
B、function:數(shù)據(jù)類型及功能 4x
C、address:數(shù)據(jù)存儲(chǔ)地址起始地址 1(此處1相相當(dāng)于40001)
D、quantity:地址數(shù)量 100
E、scan rate:掃面速率 1000
F、read/write enable:?jiǎn)⒂米x寫功能
G、Display:數(shù)據(jù)類型 HEX十六進(jìn)制
(3)單擊菜單欄Connection——選擇connection——編輯相應(yīng)參數(shù)
只需配置的參數(shù):選擇連接 Serial port 串行端口
選擇對(duì)應(yīng)端口port3
配置相應(yīng)的模式 RTU
波特率 9600
校驗(yàn)位 無(wú)校驗(yàn)
數(shù)據(jù)位 8
停止位 1
(4)輸入十六進(jìn)制數(shù),從站PLC起始地址vw100起的后1000字,將被寫入相應(yīng)的十六進(jìn)制數(shù)值。(如第一位輸入16#23)
(5)PLC被寫入的值(第一位為16#0023)
2、PLC做主站
(1)調(diào)用主站指令程序塊,配置相應(yīng)的參數(shù)。
本例程是新版Modbus端口0主站指令使用,通信參數(shù)設(shè)置為波特率9600,校驗(yàn)位0(無(wú)校驗(yàn)),超時(shí)時(shí)間1000ms,每隔1S將主站Vw100到Vw118的數(shù)據(jù)發(fā)送到從站的40001-40010。
(2)雙擊打開Modbus slave軟件——點(diǎn)擊DISplay——選擇PLC address——選擇Binary(二進(jìn)制)——打開Setup設(shè)置Slave Definition參數(shù)(按照主站,從站地址為2、modbus地址為4x)
(3)單擊菜單欄Connection——選擇connection Setup——編輯相應(yīng)參數(shù)
只需配置的參數(shù):選擇連接 Serial port 串行端口
選擇對(duì)應(yīng)端口port3
配置相應(yīng)的模式 RTU
波特率 9600
校驗(yàn)位 無(wú)校驗(yàn)
數(shù)據(jù)位 8
停止位 1
(4)輸入二進(jìn)制數(shù),從站PLC起始地址vw100起的后10字,將被寫入相應(yīng)的二進(jìn)制數(shù)值。(如第一位輸入2#15)
(5)從站被寫入的值(第一位怎是“1111”;第二位讀出主站“15”為“1111”)
注意:此處的Port3是指將串口線插入電腦后顯示的端口號(hào)。如圖:
(打開設(shè)備管理器,看端口號(hào)是多少,則選擇相應(yīng)的PORTx)