我的PLC用的是官方庫(kù):Modbus Rtu Slave(3.1)
波特率是9600,無(wú)校驗(yàn),Port0
功能碼:05 設(shè)置單個(gè)繼電器狀態(tài)(強(qiáng)制離散輸出位)
QB0對(duì)應(yīng)數(shù)據(jù)地址 00 00----00 07
QB1 對(duì)應(yīng)數(shù)據(jù)地址 00 08----00 0F
QB2 對(duì)應(yīng)數(shù)據(jù)地址 00 10----00 07
FF 00是輸出高電平
00 00 是輸出低電平
舉例說明:
PC----PLC
發(fā)送:03 05 00 00 FF 00 8D D8
03:從站地址,PLC地址,類型BYTE
05:功能碼,設(shè)置單個(gè)繼電器狀態(tài)(強(qiáng)制離散輸出位),類型BYTE
00 00:設(shè)置地址,類型WORD
FF 00:設(shè)置狀態(tài),類型WORD
FF 00 Q0.0 = 1;
00 00 Q0.0 = 0
FC 28: CRC校驗(yàn);類型WORD
PLC---PC
接受:03 05 00 00 FF 00 8D D8
03:從站地址,PLC地址,類型BYTE
01:功能碼,設(shè)置單個(gè)繼電器狀態(tài)(強(qiáng)制離散輸出位),類型BYTE
00 00 : 設(shè)置地址,類型WORD
FF 00 :設(shè)置狀態(tài),類型WORD
FF 00 Q0.0 = 1;
00 00 Q0.0 = 0
3D E2: CRC校驗(yàn);類型WORD
通過以上的實(shí)例你可以用各種語(yǔ)言編寫控制程序,通過串口控制plc
[ 此帖被yulin3192在2020-06-21 11:27重新編輯 ]