陳軍
摘 要:當今,隨著工廠的自動化程度越來越高,生產控制中的電腦、PLC、變頻器、觸摸屏等各種智能工控設備的實時交互性、協(xié)同性、可靠性等要求越來越高。筆者在技師學院機電一體化專業(yè)的《網(wǎng)絡通訊技術》教學中,發(fā)現(xiàn)學生對PLC的通訊方式、使用方法較難掌握,重點關注PLC常用的通訊方法,以三菱PLC的通訊為例,就FX系列PLC的基本通訊方法、通信格式、通訊過程等進行探討。
關鍵詞:自動化 PLC 通訊方法
中圖分類號:TP273 文獻標識碼:A 文章編號:1674-098X(2014)05(c)-0045-02
隨著工廠的自動化程度越來越高,生產控制中的電腦、PLC、變頻器、觸摸屏等各種智能工控設備的實時交互性、協(xié)同性、可靠性等要求越來越高。在機電一體化專業(yè)的工控設備網(wǎng)絡通訊教學中,發(fā)現(xiàn)學生對PLC的通訊方式、使用方法較難掌握,該文以三菱FX系列PLC的通訊為例,就PLC常用的通訊中的基本通訊方法、通信格式、通訊過程等進行小結。
1 PLC基本通訊方法
1.1 常用通訊方法
FX系列PLC支持多種通訊方法
電腦鏈接:采取電腦為主機,利用RS485接口與16臺PLC構成網(wǎng)絡,采用特殊通訊協(xié)議,在電腦與PLC之間交換數(shù)據(jù),重點解決電腦鏈接問題,指通訊參數(shù)、通訊格式、硬件連接設置等等。
并聯(lián):把2臺PLC并聯(lián)組網(wǎng),也無需協(xié)議,自成網(wǎng)絡。
N網(wǎng)絡:PLC可以形成8臺沒有網(wǎng)絡協(xié)議的網(wǎng)絡。
PLC采取RS指令發(fā)送、接收數(shù)據(jù),與電腦及其他設備進行無協(xié)議通信交換數(shù)據(jù)。
如通過PLC編程接口和計算機設備的數(shù)據(jù)交換,在工業(yè)組態(tài)軟件MCGS的基礎上的電腦監(jiān)控系統(tǒng)為例來分析。
1.2 電腦鏈接的通訊結構
上述是電腦與的串行端口通訊的基本方法,最遠可達50 m的通信距離,其通訊參數(shù)如下:
通訊接口:FXON-485ADP、FX-485ADP、FX1N-485BD、FX1N-CNV-BD、FX1N-232BD供選。
通訊距離:FX1N-485BD 50 m,選其他某些件,最遠500 m。
通訊方法:半雙工;從站連接數(shù):最大16臺;停止位:1位/2位(可選);校驗:不用/奇/偶(可選);數(shù)據(jù)長度:7位/8位(可選);波特率:300/600/1200/2400/4800/9600/19200(可選);協(xié)議:格式1/格式4(可選);超始符:不用/有效;可選求和檢查:不用/有效(可選);可選PLC類型:FX2N,F(xiàn)X2NC,F(xiàn)X1N,F(xiàn)X1S,F(xiàn)XON,F(xiàn)X,F(xiàn)X2C。
可采用計算得出電腦與PLC進行通訊的時間。
由PLC→電腦:最大掃描時間的通信時間=數(shù)據(jù)傳輸字符總量×單個發(fā)送和接收的時間+PLC的最大掃描時間×3+電腦空等時間。
由電腦→PLC:通信數(shù)據(jù)傳輸時間= 傳送總字符X發(fā)送和接收單個字符的時間+ PLC最大掃描時間+電腦的空等時間;例:當一個字符為10處(長度7,檢查1次,1個停止位,起始1)。就選擇9600波特率,收到字符則需要1.04 ms。
2 電腦鏈接通訊的格式
2.1 基本格式
通訊格式是指確定通訊參量,例如:波特率,奇偶校驗,數(shù)據(jù)長度等,地址格式的數(shù)據(jù)寄存器每一次完成修改,PLC通信格式的更改,必須關閉PLC的電源供應,并重新傳輸,然后確認一項新的溝通計劃。
2.2 PLC相關的通訊標志
(1)專用輔助繼電器及描述:M8126——全局標志;M8127——通訊請求握手信號;M8128——出錯標志;M8129——通訊請求切換;
(2)專用數(shù)據(jù)寄存器及描述:D8120——通訊格式;D8121——從站號(最多16個);D8127——交換數(shù)據(jù)的首地址;D8128——交換數(shù)據(jù)量;D8129——網(wǎng)絡通訊超時時間確認值。
2.3 通訊格式詳解(D8120)
2.4 FX系列PLC舉例
D8120=[0100 0000 1000 0110]
波特率:9600;通訊口:RS485求和檢查:不用;數(shù)據(jù)長度:7;校驗:偶;停止位:1;協(xié)議:專用協(xié)議;協(xié)議格式:格式1。
3 通訊過程
3.1 基本知識
通訊控制碼:電腦與PLC進行通訊,采用通訊控制碼進行識別通訊信息,是電腦與PLC相互交流的形式,經常的通訊控制碼如下。
描述/代碼/符號:數(shù)據(jù)開始/02H/STX;數(shù)據(jù)結束/03H/ETX;傳送結束/04H/EOT;請求通訊聯(lián)絡/05H/ENQ;響應通訊聯(lián)絡/06H/ACK;換行/0AH/LF;清除/0CH/CL;回車/0DH/CR;不響應/15H/NAK。
3.2 專用通訊協(xié)議框圖
(1)電腦將PLC數(shù)據(jù)讀出:
格式:(電腦)ENQ-→數(shù)據(jù)-→(PLC)STX-→數(shù)據(jù)-→(電腦)-→ACK-→數(shù)據(jù)。
其過程為:電腦進行請求通信的話,會希望任務描述中的數(shù)據(jù),傳送到PLC,相關PLC在接收后,針對的要求,對電腦開始返回的數(shù)據(jù),并將相關的數(shù)據(jù)告訴相關PLC,電腦如已經獲得數(shù)據(jù),本次通訊結束。
(2)電腦寫入數(shù)據(jù)進PLC:
格式:(電腦)ENQ-→數(shù)據(jù)-→ACK-→數(shù)據(jù)。
(3)專用通訊協(xié)議的基本格式
控制碼+從機站號+本機站號+命令對數(shù)據(jù)呼叫+(和校驗)+(代碼CR+LF)
注1:求和檢查通訊格式D8120中B13決定的選擇
注2:在CR+LF(結尾控制碼)的通訊格式D8120中的B15決定。endprint
(4)通訊協(xié)議詳解
1)PLC在通信過程中,一旦收到下面的控制代碼之一,溝通會初始化:ENQ、ACK、NAK,并主機響應。
2)在收到后的EOT或CL的控制代碼,初始化時通訊,主機不響應。
3)從機站號由O至15,PLC設定如下:
設置為第15號為從站,16個從站不需要序列可自由設定,但不能重復。
4)電腦主站號,使用FFH
5)控制命令要完成通信相關任務的控制字
6)等待時間:電腦的延遲時間是從交換機傳輸?shù)浇邮盏乃钑r間,PLC 收到電腦信息,將信息發(fā)送到電腦,最小時間間隔,每10 ms為一段,0代表0 ms,1代表10 ms,用0-FH代表,……FH代表150 ms,計算機必須等待、該等待時間設置之間0至150 ms之間。
實際通訊中,若大于70 ms,PLC掃描時間若超過70 ms,有可能會傳送開始有超過100 ms延遲,該等待時間會大于掃描時間。
則:等待時間可以設定為“A”,即100 ms延遲。
則:等待時間可以設定為“A”,即100 ms延遲。
7)超時檢查
表示超時檢查為60 ms,可選范圍1到255
3.3 特殊通訊協(xié)議采用的控制命令
該文的主要目的是在鍋爐控制系統(tǒng)中,電腦的鏈接,以確保鍋爐可靠、穩(wěn)定運行,只允許從PLC機讀信息,是禁止寫數(shù)據(jù)到PLC的,防止意外事故。因此,以下只對少量控制命令分析,其它詳細內容,請參考通訊手冊。
3.3.1 控制命令
命令1:批量讀PLC位單元
符號:BR ASCⅡ碼:42H,52H
描述:從PLC單元(X,Y,M,S,T,C)讀取批處理數(shù)據(jù),最多54位
命令2:批量讀PLC字單元
符號:WRASCⅡ碼:57H,52H
描述:從PLC讀取位單元格組(X、Y、M、S)一批數(shù)據(jù),或從字單位(D、T、C)的PLC組中讀取數(shù)據(jù),最多13個字符
3.3.2 格式命令詳解不用求和碼,《格式1》
1)從PLC中成批讀取位單元數(shù)據(jù)到電腦中:
格式:ENQ-→從站號-→本機站號-→BR-→等待-→位單元首地位-→數(shù)據(jù)批-→STX-→從站號-→主站號-→相關數(shù)據(jù)-→ETX-→ACK-→從站號-→主站號。
可以看出,除控制碼進行介紹,其它命令代碼,主站和從站的數(shù)目和數(shù)據(jù),由相應的ASC II碼表示,對應的字節(jié)數(shù):主站號:2字節(jié);命令碼:2字節(jié);等待時:1字節(jié);首地址:5字節(jié);批量:2字節(jié)??刂拼a:1字節(jié);從站號:2字節(jié);
如何設置數(shù)據(jù)的PLC位單位和字單位的含義,具體取決于特定的鍋爐。
舉例:電腦經5號從站讀取X0開始到連續(xù)6個點主站,例從站5是燃氣蒸汽爐,觸摸屏控制系統(tǒng)。則:X0:停爐按鈕,0/1:按下/正常位;X1:高水位,0/1:正常/高水位……X5:高壓停爐,0/1:高壓停爐/允許的燃燒點。
則相應的通訊命令:ENQ 05H-→05 30H 35H-→FF 46H 46H-→BR 42H 52H-→A 41H-→X0000 58H 30H 0H 30H-→06 30H 36H-→STX 02H-→05 30H 35H-→FF 46H 46H-→101010 31H 30H,31H,30H 31H,30H-→ETX 03H-→ACK 06H-→00 30H 35H-→FF 46H 46H。
2)字單元數(shù)據(jù)批量從PLC中讀到電腦中
格式:ENQ-→從站號-→主站號-→WR-→字單元首地位-→數(shù)據(jù)批量-→STX-→從站號-→主站號-→相關數(shù)據(jù)-→ETX-→ACK-→從站號-→主站號。
通過以上的舉例學習與練習,學生能較好地掌握有關三菱PLC的通訊的常用方法,教學取得了良好的教學效果,為后續(xù)的實訓操作打下扎實的理論基礎。
參考文獻
[1] 廖常初.PLC基礎及應用[M].北京.機械工業(yè)出版社,2004.
[2] 劉建英.PLC編程的通用性研究及通用平臺設計[J].汕頭大學,2010.
[3] 唐中燕.三菱PLC與伺服驅動器之間的通信[J].機床電器,2012(6).
[4] 王鯤鵬.計算機與FX2N型PLC的串行通信[J].現(xiàn)代計算機(專業(yè)版),2010(1).endprint
(4)通訊協(xié)議詳解
1)PLC在通信過程中,一旦收到下面的控制代碼之一,溝通會初始化:ENQ、ACK、NAK,并主機響應。
2)在收到后的EOT或CL的控制代碼,初始化時通訊,主機不響應。
3)從機站號由O至15,PLC設定如下:
設置為第15號為從站,16個從站不需要序列可自由設定,但不能重復。
4)電腦主站號,使用FFH
5)控制命令要完成通信相關任務的控制字
6)等待時間:電腦的延遲時間是從交換機傳輸?shù)浇邮盏乃钑r間,PLC 收到電腦信息,將信息發(fā)送到電腦,最小時間間隔,每10 ms為一段,0代表0 ms,1代表10 ms,用0-FH代表,……FH代表150 ms,計算機必須等待、該等待時間設置之間0至150 ms之間。
實際通訊中,若大于70 ms,PLC掃描時間若超過70 ms,有可能會傳送開始有超過100 ms延遲,該等待時間會大于掃描時間。
則:等待時間可以設定為“A”,即100 ms延遲。
則:等待時間可以設定為“A”,即100 ms延遲。
7)超時檢查
表示超時檢查為60 ms,可選范圍1到255
3.3 特殊通訊協(xié)議采用的控制命令
該文的主要目的是在鍋爐控制系統(tǒng)中,電腦的鏈接,以確保鍋爐可靠、穩(wěn)定運行,只允許從PLC機讀信息,是禁止寫數(shù)據(jù)到PLC的,防止意外事故。因此,以下只對少量控制命令分析,其它詳細內容,請參考通訊手冊。
3.3.1 控制命令
命令1:批量讀PLC位單元
符號:BR ASCⅡ碼:42H,52H
描述:從PLC單元(X,Y,M,S,T,C)讀取批處理數(shù)據(jù),最多54位
命令2:批量讀PLC字單元
符號:WRASCⅡ碼:57H,52H
描述:從PLC讀取位單元格組(X、Y、M、S)一批數(shù)據(jù),或從字單位(D、T、C)的PLC組中讀取數(shù)據(jù),最多13個字符
3.3.2 格式命令詳解不用求和碼,《格式1》
1)從PLC中成批讀取位單元數(shù)據(jù)到電腦中:
格式:ENQ-→從站號-→本機站號-→BR-→等待-→位單元首地位-→數(shù)據(jù)批-→STX-→從站號-→主站號-→相關數(shù)據(jù)-→ETX-→ACK-→從站號-→主站號。
可以看出,除控制碼進行介紹,其它命令代碼,主站和從站的數(shù)目和數(shù)據(jù),由相應的ASC II碼表示,對應的字節(jié)數(shù):主站號:2字節(jié);命令碼:2字節(jié);等待時:1字節(jié);首地址:5字節(jié);批量:2字節(jié)??刂拼a:1字節(jié);從站號:2字節(jié);
如何設置數(shù)據(jù)的PLC位單位和字單位的含義,具體取決于特定的鍋爐。
舉例:電腦經5號從站讀取X0開始到連續(xù)6個點主站,例從站5是燃氣蒸汽爐,觸摸屏控制系統(tǒng)。則:X0:停爐按鈕,0/1:按下/正常位;X1:高水位,0/1:正常/高水位……X5:高壓停爐,0/1:高壓停爐/允許的燃燒點。
則相應的通訊命令:ENQ 05H-→05 30H 35H-→FF 46H 46H-→BR 42H 52H-→A 41H-→X0000 58H 30H 0H 30H-→06 30H 36H-→STX 02H-→05 30H 35H-→FF 46H 46H-→101010 31H 30H,31H,30H 31H,30H-→ETX 03H-→ACK 06H-→00 30H 35H-→FF 46H 46H。
2)字單元數(shù)據(jù)批量從PLC中讀到電腦中
格式:ENQ-→從站號-→主站號-→WR-→字單元首地位-→數(shù)據(jù)批量-→STX-→從站號-→主站號-→相關數(shù)據(jù)-→ETX-→ACK-→從站號-→主站號。
通過以上的舉例學習與練習,學生能較好地掌握有關三菱PLC的通訊的常用方法,教學取得了良好的教學效果,為后續(xù)的實訓操作打下扎實的理論基礎。
參考文獻
[1] 廖常初.PLC基礎及應用[M].北京.機械工業(yè)出版社,2004.
[2] 劉建英.PLC編程的通用性研究及通用平臺設計[J].汕頭大學,2010.
[3] 唐中燕.三菱PLC與伺服驅動器之間的通信[J].機床電器,2012(6).
[4] 王鯤鵬.計算機與FX2N型PLC的串行通信[J].現(xiàn)代計算機(專業(yè)版),2010(1).endprint
(4)通訊協(xié)議詳解
1)PLC在通信過程中,一旦收到下面的控制代碼之一,溝通會初始化:ENQ、ACK、NAK,并主機響應。
2)在收到后的EOT或CL的控制代碼,初始化時通訊,主機不響應。
3)從機站號由O至15,PLC設定如下:
設置為第15號為從站,16個從站不需要序列可自由設定,但不能重復。
4)電腦主站號,使用FFH
5)控制命令要完成通信相關任務的控制字
6)等待時間:電腦的延遲時間是從交換機傳輸?shù)浇邮盏乃钑r間,PLC 收到電腦信息,將信息發(fā)送到電腦,最小時間間隔,每10 ms為一段,0代表0 ms,1代表10 ms,用0-FH代表,……FH代表150 ms,計算機必須等待、該等待時間設置之間0至150 ms之間。
實際通訊中,若大于70 ms,PLC掃描時間若超過70 ms,有可能會傳送開始有超過100 ms延遲,該等待時間會大于掃描時間。
則:等待時間可以設定為“A”,即100 ms延遲。
則:等待時間可以設定為“A”,即100 ms延遲。
7)超時檢查
表示超時檢查為60 ms,可選范圍1到255
3.3 特殊通訊協(xié)議采用的控制命令
該文的主要目的是在鍋爐控制系統(tǒng)中,電腦的鏈接,以確保鍋爐可靠、穩(wěn)定運行,只允許從PLC機讀信息,是禁止寫數(shù)據(jù)到PLC的,防止意外事故。因此,以下只對少量控制命令分析,其它詳細內容,請參考通訊手冊。
3.3.1 控制命令
命令1:批量讀PLC位單元
符號:BR ASCⅡ碼:42H,52H
描述:從PLC單元(X,Y,M,S,T,C)讀取批處理數(shù)據(jù),最多54位
命令2:批量讀PLC字單元
符號:WRASCⅡ碼:57H,52H
描述:從PLC讀取位單元格組(X、Y、M、S)一批數(shù)據(jù),或從字單位(D、T、C)的PLC組中讀取數(shù)據(jù),最多13個字符
3.3.2 格式命令詳解不用求和碼,《格式1》
1)從PLC中成批讀取位單元數(shù)據(jù)到電腦中:
格式:ENQ-→從站號-→本機站號-→BR-→等待-→位單元首地位-→數(shù)據(jù)批-→STX-→從站號-→主站號-→相關數(shù)據(jù)-→ETX-→ACK-→從站號-→主站號。
可以看出,除控制碼進行介紹,其它命令代碼,主站和從站的數(shù)目和數(shù)據(jù),由相應的ASC II碼表示,對應的字節(jié)數(shù):主站號:2字節(jié);命令碼:2字節(jié);等待時:1字節(jié);首地址:5字節(jié);批量:2字節(jié)。控制碼:1字節(jié);從站號:2字節(jié);
如何設置數(shù)據(jù)的PLC位單位和字單位的含義,具體取決于特定的鍋爐。
舉例:電腦經5號從站讀取X0開始到連續(xù)6個點主站,例從站5是燃氣蒸汽爐,觸摸屏控制系統(tǒng)。則:X0:停爐按鈕,0/1:按下/正常位;X1:高水位,0/1:正常/高水位……X5:高壓停爐,0/1:高壓停爐/允許的燃燒點。
則相應的通訊命令:ENQ 05H-→05 30H 35H-→FF 46H 46H-→BR 42H 52H-→A 41H-→X0000 58H 30H 0H 30H-→06 30H 36H-→STX 02H-→05 30H 35H-→FF 46H 46H-→101010 31H 30H,31H,30H 31H,30H-→ETX 03H-→ACK 06H-→00 30H 35H-→FF 46H 46H。
2)字單元數(shù)據(jù)批量從PLC中讀到電腦中
格式:ENQ-→從站號-→主站號-→WR-→字單元首地位-→數(shù)據(jù)批量-→STX-→從站號-→主站號-→相關數(shù)據(jù)-→ETX-→ACK-→從站號-→主站號。
通過以上的舉例學習與練習,學生能較好地掌握有關三菱PLC的通訊的常用方法,教學取得了良好的教學效果,為后續(xù)的實訓操作打下扎實的理論基礎。
參考文獻
[1] 廖常初.PLC基礎及應用[M].北京.機械工業(yè)出版社,2004.
[2] 劉建英.PLC編程的通用性研究及通用平臺設計[J].汕頭大學,2010.
[3] 唐中燕.三菱PLC與伺服驅動器之間的通信[J].機床電器,2012(6).
[4] 王鯤鵬.計算機與FX2N型PLC的串行通信[J].現(xiàn)代計算機(專業(yè)版),2010(1).endprint