資訊詳情
一、 概述
在現(xiàn)代工業(yè)控制系統(tǒng)中,PLC的應用普遍。PLC與智能儀表的綜合應用比較傳統(tǒng)的應用是使用儀表的模擬量輸出,用PLC的DI擴展模塊來采集儀表的數(shù)據(jù),這種方法容易受到模擬量信號的波動和因距離不一致而造成模擬量信號衰減不一致的影響,產(chǎn)生測量誤差,從而使整個系統(tǒng)的工作穩(wěn)定性和可靠性降低。而使用RS-485通訊控制,僅通過一條通訊電纜連接,就可以完成PLC對溫度、濕度等模擬量的采集工作。該系統(tǒng)成本低、信號傳輸距離遠、抗干擾性強。
二、 系統(tǒng)硬件組成和連接
(一)系統(tǒng)硬件組成
系統(tǒng)硬件組成如圖(一)所示,主要有下列組件構成
1、 FX2N-16MR 16點繼電器輸出PLC,作為系統(tǒng)的核心;
2、 FX2N-485-BD為FX2N系列PLC的通訊擴展模塊,主要用于PLC和AI儀表之間的RS485的數(shù)據(jù)的發(fā)送和接收;
FX2N-485-BD和AI儀表的連接方法:
FX2N-485-BD可采用全雙工和半雙工兩種通訊方式,針對AI儀表通訊是采用半雙工2線制通訊,因此FX2N-485-BD和AI儀表的連接如下圖(二)所示
(二)PLC和AI儀表通訊連接
端子說明:SDA 發(fā)送數(shù)據(jù)端子 SDB發(fā)送數(shù)據(jù)端子
RDA接受數(shù)據(jù)端子 RDB接受數(shù)據(jù)端子
三、 AI儀表通訊協(xié)議
AI儀表采用16進制數(shù)據(jù)格式來表示各種指令代碼及數(shù)據(jù)。數(shù)據(jù)格式為1個起始位,8位數(shù)據(jù),無校驗位,一個或2個停止位。AI儀表軟件通訊指令經(jīng)過優(yōu)化設計,只有兩條,一條為讀指令,一條為寫指令,兩條指令使得上位機軟件編寫容易。
讀: 地址代號+52H(82)+要讀參數(shù)的代號+0+0+CRC校驗碼
寫: 地址代號+43H(67)+要寫參數(shù)的代號+寫入數(shù)低字節(jié)+寫入數(shù)高字節(jié)+CRC校驗碼
地址代號:為了在一個通訊接口上連接多臺AI儀表,需要給每臺AI儀表編一個互不相同的代號。AI有效的地址為0—100。所以一條通訊線路上最多可連接101臺AI儀表。儀表的地址代號由參數(shù)Addr決定。AI儀表通訊協(xié)議規(guī)定,地址代號為兩個字節(jié),其數(shù)值范圍(16進制數(shù))是80H—BFH,兩個字節(jié)必需相同,數(shù)值為(儀表地址+80H)。
參數(shù)代號:儀表的參數(shù)用1個8位二進制數(shù)(一個字節(jié),寫為16進制數(shù))的參數(shù)代號來表示。它在指令中表示要讀/寫的參數(shù)名。參數(shù)代號見下表:
參數(shù) 調(diào)節(jié)器 AI-708M巡檢儀 流量積算儀 AI-338頻率調(diào)節(jié)器
代號 (AI-708/808/708P/808P) (AI-708H/Y) /IO模塊
00H 狀態(tài)位 (空) SV批量控制給定值 SV/SteP給定值/程
給定值/程序段 序段
01H HIAL上限報警 HIA(X) FHIA HIAL上限報警
02H LoAL下限報警 LoA(X) FLoA LoAL下限報警
03H DHAL正偏差報警 (空) SPE DHAL正偏差報警
04H DLAL負偏差報警 (空) Act DLAL負偏差報警
05H dF回差 dF(X) Esn dF回差
06H Ctrl控制方式 (空) FSc CtrL控制方式
07H M5保持參數(shù) (空) PdIH M5保持參數(shù)
08H P速率參數(shù) (空) CSc P速率參數(shù)
09H t滯后參數(shù) (空) CdIH t滯后參數(shù)
0AH CtI控制周期 (空) Cut CtI控制周期
0BH Sn輸入規(guī)格 Sn(X)-34(只讀) FdIH
0CH dIP小數(shù)點位置 Sn(X)-1(只讀) FdIP dIP小數(shù)點位置
0DH dIL下限顯示值 dIL(X) PA
0EH dIH上限顯示值 dIH(X) Po
0FH ALP報警輸出選擇 ALP(X) Co
10H Sc傳感器修正 (空) Frd
11H OP1輸出方式 (空) CF
12H OPL輸出下限 (空) bc
13H OPH輸出上限 (空) IoL
14H CF功能選擇 Cn功能選擇 Foh
15H 儀表型號特征 儀表型號特征 儀表型號特征 儀表型號特征
16H addr儀表地址 addr儀表地址 addr儀表地址 addr儀表地址
17H dL數(shù)字濾波 Sn(X)-2(只讀) IoH
18H run運行參數(shù) nonc常開/常閉 dL
19H Loc參數(shù)封鎖 Loc參數(shù)封鎖 Loc
讀指令的CRC校驗碼為:要讀參數(shù)的代號*256+82+ADDR;
寫指令的CRC校驗碼則為:要寫的參數(shù)代號*256+67+要寫的參數(shù)值+ADDR;
無論是讀還是寫,儀表都返回以下數(shù)據(jù):
測量值PV+給定值SV+輸出值MV及報警狀態(tài)+所讀/寫參數(shù)值+CRC校驗碼。
CRC校驗碼為PV+SV+(報警狀態(tài)*256+MV)+參數(shù)值+ADDR,按整數(shù)加法相加后得到的余數(shù)。
所有指令代碼和數(shù)據(jù)均一十六進制發(fā)送和接受。
四、 軟件設計
要實現(xiàn)PLC和AI儀表的通訊,必須對PLC進行編程;通過程序來實現(xiàn)PLC對AI儀表的數(shù)據(jù)采集和參數(shù)修改。PLC程序是運用RS指令來實現(xiàn)串口數(shù)據(jù)的發(fā)送和接收,RS指令發(fā)收信息的順控程序格式如圖(三)所示
圖(三)PLC通訊流程圖
PLC程序首先應完成FX2N-485BD通訊模塊的初始化、控制命令自的組合、讀寫指令代碼轉(zhuǎn)換以及AI儀表返回數(shù)據(jù)的處理工作。PLC和AI儀表通訊實例:
LD M8002
MOV H0C89 D8120
LD X2
RS D100 D20 D200 D40
LD 8000
OUT M8161
LD X2
MOV H81 D100
MOV H81 D101
MOV H43 D102
MOV H01 D103
MOV H01 D104
MOV H00 D105
MOV H45 D106
MOV H01 D107
LDP X2
MOV K08 D20
MOV K20 D40
SET M8122
END
此程序是通過PLC的X2輸入端子來觸發(fā),把地址(ADDR=1)為1的AI儀表的上限報警值(HIAL)設置為1。
五、 結語
本文通過實例討論了三菱PLC和AI儀表的RS-485通訊功能的編程和應用,有助于客戶對PLC和AI儀表的綜合應用。通過PLC程序還可以實現(xiàn)和觸摸屏以及上位機組態(tài)軟件的通訊,AI儀表可以更廣泛地應用到各種系統(tǒng)中。