- 艾寶物聯(lián)IOBOV? ─ 工業(yè)無線測控專家
PC中必須依據(jù)所連接PLC的通信規(guī)程來編寫通信協(xié)議,所以我們先要熟悉FX系列PLC的通信協(xié)議。
1)數(shù)據(jù)格式
FX系列PLC采用異步格式,由1位起始位、7位數(shù)據(jù)位、1位偶校驗位及1位停止位組成,比特率為9600 bps,字符為ASCⅡ碼。數(shù)據(jù)格式如圖7-14所示。
圖7-14 數(shù)據(jù)格式
2)通信命令
FX系列PLC有4條通信命令,分別是讀命令、寫命令、強制通命令、強制斷命令,如表7-2所示。
表7-2 FX系列PLC的通信命令表
3)通信控制字符
FX系列PLC采用面向字符的傳輸規(guī)程,用到5個通信控制字符,如表7-3所示。
表7-3 FX系列PLC通信控制字符表
控制字符 |
ASCⅡ碼 |
功能說明 |
ENQ |
05H |
PC發(fā)出請求 |
ACK |
06H |
PLC對ENQ的確認回答 |
NAK |
15H |
PLC對ENQ的否認回答 |
STX |
02H |
信息幀開始標志 |
ETX |
03H |
信息幀結束標志 |
注:當PLC對計算機發(fā)來的ENQ不理解時,用NAK回答。
4)報文格式
計算機向PLC發(fā)送的報文格式如下:
STX |
CMD |
數(shù)據(jù)段 |
ETX |
SUMH |
SUML |
其中,STX為開始標志:02H;ETX為結束標志:03H;CMD為命令的ASCⅡ碼;SUMH、SUML為按字節(jié)求累加和,溢出不計。由于每字節(jié)十六進制數(shù)變?yōu)閮勺止?jié)的ASCⅡ碼,故校驗和為SUMH與SUML。
數(shù)據(jù)段格式與含義如下:
注:寫命令的數(shù)據(jù)段有數(shù)據(jù),讀命令數(shù)據(jù)段則無數(shù)據(jù)。
PLC向PC發(fā)的應答報文格式如下:
注:對讀命令的應答報文數(shù)據(jù)段為要讀取的數(shù)據(jù),一個數(shù)據(jù)占兩字節(jié),分上位下位:
數(shù)據(jù)段:
對寫命令的應答報文無數(shù)據(jù)段,而用ACK及NAK作應答內(nèi)容。
5)傳輸規(guī)程
PC與FX系列PLC間采用應答方式通信,傳輸出錯,則組織重發(fā)。其傳輸過程
如圖7-15所示。
圖7-15 傳輸過程
PLC根據(jù)PC的命令,在每個循環(huán)掃描結束處的END語句后組織自動應答,無需用戶在PLC一方編寫程序。