引言
目前工業(yè)控制現(xiàn)場(chǎng)大量使用了各種智能儀表用于生產(chǎn)過(guò)程檢測(cè),把智能儀表檢測(cè)出來(lái)的數(shù)據(jù)傳送到監(jiān)控計(jì)算機(jī)供顯示和分析是非常必要的環(huán)節(jié),雖然智能儀表的通信協(xié)議種類繁多,但是很多智能儀表都具備RS-232 和RS-485 兩種通信接口類型。
RS-232 是美國(guó)EIA(Electronic Ingustry Association) 與BELL 等公司一起開(kāi)發(fā)的1969 年公布的通信協(xié)議,也是工業(yè)控制中應(yīng)用最廣泛的一種串行接口,采取不平衡傳輸方式,即所謂單端通訊,但是它的傳輸距離短,最大約為30 米,傳輸速率低,最高速率為20kb/s,共模抑制能力差,抗噪聲干擾性弱的缺點(diǎn),所以RS-232 只適合本地設(shè)備之間的通信。
RS-485 是EIA 為了彌補(bǔ)RS-232 通信距離短、傳輸速度低等不足之處,于1983 年提出的一種串行數(shù)據(jù)接口標(biāo)準(zhǔn),RS-485 采用差分傳輸方式,也稱作平衡傳輸,具有比較高的噪聲抑制能力,最大傳輸距離約為1200 米,最大傳輸速率為10Mb/s,還增加了多點(diǎn)、雙向通信能力,所以RS-485 成為首選的串行接口。
工業(yè)監(jiān)控計(jì)算機(jī)一般只具備RS-232 串行接口,而智能儀表安裝的位置與監(jiān)控計(jì)算機(jī)的距離也經(jīng)常超過(guò)30 米,所以要把智能儀表檢測(cè)出來(lái)的數(shù)據(jù)傳送到監(jiān)控計(jì)算機(jī)RS-485 是首選,也就是說(shuō)要把監(jiān)控計(jì)算機(jī)的RS-232 串行接口轉(zhuǎn)換成RS-485 串行接口才能和智能儀表搭建一個(gè)RS-485 的網(wǎng)絡(luò)。
UT-201 是深圳宇泰公司生產(chǎn)的一種通用型RS-232 到RS-485 接口轉(zhuǎn)換器,該轉(zhuǎn)換器兼容RS-232、RS-485 標(biāo)準(zhǔn),能夠?qū)味说?a target="_blank">RS232 信號(hào)轉(zhuǎn)換為平衡差分的RS485 信號(hào)。
本文基于自來(lái)水廠泵站泵組溫度自動(dòng)檢測(cè)系統(tǒng)的設(shè)計(jì),著重介紹監(jiān)控計(jì)算機(jī)通過(guò)UT-201接口轉(zhuǎn)換器和現(xiàn)場(chǎng)智能儀表連成RS-485 網(wǎng)絡(luò)的實(shí)現(xiàn)方法。
1、系統(tǒng)聯(lián)網(wǎng)方案
自來(lái)水廠對(duì)泵站泵組保護(hù)的一個(gè)重要手段就是對(duì)泵組溫度的實(shí)時(shí)監(jiān)測(cè),一般通過(guò)埋置式鉑熱電阻和埋置式銅電阻作為傳感器,對(duì)泵組的電機(jī)和水泵軸承的溫度進(jìn)行檢測(cè),檢測(cè)出來(lái)的信號(hào)送到現(xiàn)場(chǎng)智能儀表,智能儀表把信號(hào)轉(zhuǎn)換成對(duì)應(yīng)的溫度值并在LED 屏顯示出來(lái)。隨著自動(dòng)化水平的不斷提高,還必需要把溫度值在監(jiān)控計(jì)算機(jī)上顯示出來(lái)。利用UT-201 接口轉(zhuǎn)換器在監(jiān)控計(jì)算機(jī)和現(xiàn)場(chǎng)智能儀表之間建立一個(gè)RS-485 網(wǎng)絡(luò),監(jiān)控計(jì)算機(jī)就能夠通過(guò)RS-485網(wǎng)絡(luò)讀取現(xiàn)場(chǎng)智能儀表的溫度值。設(shè)備層部分網(wǎng)絡(luò)結(jié)構(gòu)如圖1。
圖1 設(shè)備層拓?fù)浣Y(jié)構(gòu)示意圖
系統(tǒng)采用簡(jiǎn)單的主從總線結(jié)構(gòu),以監(jiān)控計(jì)算機(jī)作為主機(jī)發(fā)起通信,多臺(tái)現(xiàn)場(chǎng)智能儀表作為從機(jī),各從機(jī)在進(jìn)行傳輸之前必需要等待來(lái)自主機(jī)的允許信號(hào)。主機(jī)可以發(fā)送和接收來(lái)自通信鏈上從機(jī)的信息,而從機(jī)則始終處于被動(dòng)狀態(tài),隨時(shí)準(zhǔn)備相應(yīng)來(lái)自主機(jī)的通信請(qǐng)求。
本系統(tǒng)采用點(diǎn)對(duì)多點(diǎn)/兩線半雙工的通信方式,UT-201 接口轉(zhuǎn)換器與智能儀表的硬件接線示意圖如圖2。
圖2 RS-485 點(diǎn)對(duì)多點(diǎn)/兩線半雙工連接示意圖。
2、UT-201 轉(zhuǎn)換器的介紹
UT-201 轉(zhuǎn)換器采用DB-9/DB-9 通用轉(zhuǎn)接插頭,輸出接口配有普通接線柱,它的引腳分配如下表1 和表2:
表1 RS-232 端的引腳分配
表2 RS-485 端的引腳分配
表1 中是UT-201 轉(zhuǎn)換器與監(jiān)控計(jì)算機(jī)連接的RS-232 接口,因?yàn)椴皇褂帽O(jiān)控計(jì)算機(jī)的傳送控制信號(hào),所以只需三條接口線,即“發(fā)送數(shù)據(jù)”、“接收數(shù)據(jù)”和“信號(hào)地”。表2 中T/R+、T/R-代表收發(fā)A+、B-,VCC 代表備用電源輸入,GND 代表公共地線,點(diǎn)到點(diǎn)、點(diǎn)到多點(diǎn)、半雙工通信接兩根線(T/R+、T/R-),接線原則“發(fā)/收+”接對(duì)方的“發(fā)/收+” 、“發(fā)/收-”
接對(duì)方的“發(fā)/收-” ,RS-485 半雙工模式接線時(shí)將T/R+(發(fā)/收+)接對(duì)方的A+ 、T/R-(發(fā)/收-)接對(duì)方的B-。
3、網(wǎng)絡(luò)通訊協(xié)議的介紹
通過(guò)UT-201 在監(jiān)控計(jì)算機(jī)和智能儀表之間搭建的RS-485 網(wǎng)絡(luò),硬件是采用RS-485 接線,主從式半雙工通訊,主機(jī)呼叫從機(jī)地址,從機(jī)應(yīng)答方式通訊。通信協(xié)議是遵循MODBUS 協(xié)議,由于是和現(xiàn)場(chǎng)智能儀表進(jìn)行通訊,所以選擇MODBUS 通訊協(xié)議的RTU(遠(yuǎn)程終端設(shè)備)模式,數(shù)據(jù)幀10 位,1 個(gè)起始位,8 個(gè)數(shù)據(jù)位,1 個(gè)停止位,無(wú)校驗(yàn)。波特率:9600;19200;38400。
MODBUS 協(xié)議共有二十幾個(gè)功能編碼,我們用的智能儀表是XMD5000 萬(wàn)能輸入多路巡檢儀,它只需要用到MODBUS 協(xié)議的03H、06H、83H、86H 等幾個(gè)功能編碼就能夠?qū)崿F(xiàn)基本數(shù)據(jù)的傳送。
例如主機(jī)希望讀取1 號(hào)儀表第1 通道(寄存器地址0010)的瞬時(shí)值(假設(shè)為130),則只需要調(diào)用功能編碼03H。主機(jī)請(qǐng)求和從機(jī)響應(yīng)的幀格式如下:
主機(jī)發(fā)送:
第1 字節(jié)ARD : 從機(jī)地址碼(=001~254)
第 2 字節(jié)03H : 讀寄存器值功能碼
第3、4 字節(jié) : 要讀的寄存器開(kāi)始地址
第5、6 字節(jié) : 要讀的寄存器數(shù)量
第7、8 字節(jié) : 從字節(jié)1 到6 的CRC16 校驗(yàn)和
從機(jī)回送:
浮點(diǎn)數(shù):43020000 表示整數(shù)130 (符合IEEE-754 標(biāo)準(zhǔn)的單精度浮點(diǎn)數(shù))
第1 字節(jié)ARD : 從機(jī)地址碼(=001~254)
第2 字節(jié)03H : 返回讀功能碼
第3 字節(jié) : 字節(jié)總數(shù)
第4~7 字節(jié) : 寄存器數(shù)據(jù)
第8、9 字節(jié) : 從字節(jié)1 到7 的CRC16 校驗(yàn)和
當(dāng)從機(jī)接收錯(cuò)誤時(shí),從機(jī)回送:
第1 字節(jié)ARD : 從機(jī)地址碼(=001~254)
第2 字節(jié)83H : 讀寄存器值出錯(cuò)
第3 字節(jié)信息碼 : 可查信息碼表
第4、5 字節(jié) : 從字節(jié)1 到3 的CRC16 校驗(yàn)和
UT-201 接口轉(zhuǎn)換器遵循MODBUS 通訊協(xié)議,幀格式以及所執(zhí)行的功能都有明確的定義,不能隨意更改。在通信過(guò)程中,要確保主機(jī)和從機(jī)的對(duì)應(yīng)關(guān)系正確。此外,用戶可以根據(jù)實(shí)際需要配置合適的傳輸波特率。
4、應(yīng)用VB(Visual Basic)開(kāi)發(fā)通信程序
自來(lái)水廠泵站監(jiān)控組態(tài)軟件很多都是應(yīng)用美國(guó)羅克韋爾(Rockwell)公司開(kāi)發(fā)的RSView32軟件,RSView32 軟件支持VB 編程,在此基礎(chǔ)上開(kāi)發(fā)通信應(yīng)用程序相當(dāng)方便、實(shí)用。
在開(kāi)發(fā)VB 通信應(yīng)用程序中,調(diào)用MSComm 控件,使得程序更加簡(jiǎn)明、有效。MSComm控件是Microsoft 公司提供的簡(jiǎn)化Windows 下串行通信編程的ActiveX 控件,它為應(yīng)用程序提供了通過(guò)串行接口收發(fā)數(shù)據(jù)的簡(jiǎn)便方法。程序主要由以下幾個(gè)部分組成:
初始化MSComm 控件,主要是對(duì)串口進(jìn)行設(shè)置,包括波特率、校驗(yàn)位、數(shù)據(jù)位、停止位的設(shè)置。
設(shè)置并發(fā)送讀指令,主要是根據(jù)MODBUS 通訊協(xié)議對(duì)要讀取的智能儀表和寄存器地址進(jìn)行設(shè)置,以及計(jì)算出CRC16 校驗(yàn)和。
接收數(shù)據(jù),主要是讀取智能儀表回送的響應(yīng)幀。
處理數(shù)據(jù),主要是判斷響應(yīng)幀數(shù)據(jù)的有效性,正確則存取數(shù)據(jù),否則重新再讀取。
根據(jù)UT-201 轉(zhuǎn)換器及智能儀表的通信原理畫(huà)出了圖3 所示的主機(jī)通信程序結(jié)構(gòu)框圖。
圖3 通訊程序框圖。
結(jié)束語(yǔ)
經(jīng)過(guò)現(xiàn)場(chǎng)調(diào)試,實(shí)現(xiàn)了1 臺(tái)監(jiān)控計(jì)算機(jī)通過(guò)1 個(gè)UT-201 接口轉(zhuǎn)換器與10 臺(tái)智能儀表組成的RS-485 網(wǎng)絡(luò)連接,每臺(tái)智能儀表連接兩個(gè)埋置式鉑熱電阻和三個(gè)埋置式銅電阻。實(shí)際應(yīng)用證明,這種方式組成的系統(tǒng),結(jié)構(gòu)簡(jiǎn)單,應(yīng)用方便,能滿足控制需要。
-
RS-232
+關(guān)注
關(guān)注
0文章
388瀏覽量
49916 -
RS-485
+關(guān)注
關(guān)注
11文章
683瀏覽量
84255 -
智能儀表
+關(guān)注
關(guān)注
1文章
162瀏覽量
23888
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論