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