關鍵詞:現場總線;通訊接口;多路溫度轉換器;接收單元;變送單元;本質安全
袁漢福(1953-)
(藍星石化有限公司天津石油化工廠,天津 300380),浙江寧波人,現任藍星石化有限公司天津石油化工廠副總工程師,從事煉油自動化的設計、施工等工作。
1 引言
現場總線技術自70年代誕生至今,由于它在減少系統線纜,簡化系統安裝、維護和管理, 降低系統的投資和運行成本,增強系統性能等方面的優越性,引起人們的廣泛注意,得到大 范圍的推廣,推動了自動控制領域的一場革命。 現場總線的功能是:經濟、安全、可靠地傳遞信息;正確使用所傳信息;及時處理所傳信息。經濟性要求現場總線在傳遞信息的同時,解決現場裝置的供電問題,并要求傳輸介質較廉價。安全性要求現場總線解決防爆問題??煽啃砸蟋F場總線解決環境適應性問題,包括電磁環境適應性(傳輸時不要干擾別人,也不要被別人干擾)、氣候環境適應性(要耐溫、防水、防塵)、機械環境適應性(要耐沖擊、耐振動)。
2007年藍星石化公司天津石油化工廠重油催化裝置進行設備改造,對接近300點的溫度指示信號采用多路溫度轉換器(MTL800)進行采集,轉換成數字通訊信號傳給DCS系統,依據現場溫度檢測點的分布,在裝置區設置了10個溫度采集箱,所有的溫度信號通過補償導線連接到采集箱,從采集箱通過通訊電纜連接到主控室的DCS系統。上述方案比較直接從現場使用補償導線連接到主控室的DCS中的常規施工方法要節省1/3的施工時間和1/2的費用,其中可以節省大量的DCS的過程通道板卡和安全柵,節省大量的補償導線和輔料及其人工費。系統投用后,達到設計要求。
2 系統結構
多路溫度轉換器的系統組成由信號變送單元和接收單元組成,熱電偶的毫伏信號(或其它類型溫度信號)進入變送單元后轉換為數字信號,變送單元的數字信號通過安全柵進入到接收單元,現場變送單元與安全柵構成本安回路,從而使得變送單元可以直接安裝在危險區(0區、1區和2區)。多路溫度轉換器的每個接收單元可以帶2個變送單元,變送單元安裝在現場的采集箱內, 每個變送單元最多可以采集16路溫度信號,其供電方式為回路供電,為確保系統可靠性,變送單元與接收單元之間的通訊,以及接收單元同DCS的通訊都采用冗余配制,當發生故障時, 數據通訊系統能夠無擾動地自動切換,并產生系統診斷報警,在切換時保證數據完整,多路溫度采集系統同DCS的通訊協議為 MODBUS-RTU。系統結構如圖1所示。
圖1 多路溫度采集系統結構圖
3 信號變送單元和接收單元設置
3.1 變送單元地址的設置
每個接收單元838B-MBF可以和兩個變送單元831B連接,因此必須對這兩個831的地址和信號輸入類型進行定義。開關設置的方法是:打開831B的上蓋,找到兩個開關,SW100和SW101。SW100是用于定義地址,如01或02;SW101適用于定義輸入類型的,如熱電阻或熱電偶。831B在初始狀態是:地址為01,輸入類型為熱電偶。變送單元地址開關如圖2所示。
3.2 接收單元地址的設置
3.2.1定義和上位機通訊的地址參數。
打開838的上蓋,在838上一共有4個狀態開關,見表1。SW101用于設置838的MODBUS 地址,如當地址是1時,SW101 的設置狀態如下:
1 2 3 4 5 6 7 8
SW101 ON OFF OFF OFF OFF OFF OFF OFF
表1 轉換單元地址開關狀態表: 3.2.2定義和上位機通訊的通訊參數
SW301 是用于設置通訊狀態的,見表2 。
如果通訊為:波特率9600,起始位1,停止為1,奇偶校驗為none,SW301的設置狀態如下:
1 2 3 4 5 6 7 8
SW301 ON OFF ON OFF OFF OFF OFF OFF
表2 轉換單元通訊參數狀態表:
3.3 用PC機上的RS232接口同838進行通訊
上述步驟完成后,在與DCS連接前,需要進行簡單組態,首先將838上的MODE和COM端(4和5)用線短接后,將838的24VDC 斷電后再送電,這樣可以觸發接受單元的組態通訊口(RS232接口),在PC 機與接收單元建立通訊后,利用專用組態軟件對現場輸入信號類型、變送單元數量、開路報警狀態等進行組態。當組態完成后,將短接線拆掉并重新對838進行電源開關復位,這樣轉換單元838才能同DCS進行通訊。
通過上述步驟,可以完成對變送單元和轉換單元的組態設置。
3.4 接收單元同DCS的通訊參數設置
3.4.1參數設置
波特率:9600Kbps;
數據位:8;
停止位:1;
奇偶校驗:非奇非偶校驗 (NONE);
節點地址:1—3、4—6、7—9;
熱點偶類型:K、E。
3.4.2 起始地址
每個838傳送的地址從30015開始,每個通道的地址詳見表3。現場來的溫度值已由838擴大了10倍,因此DCS在收到傳送的數據后需要除10進行還原。
表3 接收單元通道地址分配表:
4 DCS系統中程序說明
整個系統共有9個接收單元,每3個接收單元為一組,每組中的3個接收單元的通訊接口進行并聯后,接入DCS系統,DCS系統中安裝3塊采集卡,分別是1、2、3#模塊,DCS中的每塊采集卡采集3個接收單元的數據,如圖3所示。DCS采集卡可帶不止3個接收單元,要根據生產裝置數據刷新時間要求和DCS系統掃描時間而定。
圖3 接收單元與DCS連接原理圖
程序采用SCX語言編制,此語言類似C語言,主要程序如下:
int phase,error;
main()
{
long j;
int i, a[32];
float f;
sfloat sf,te[32];
setcomm(9600,0); //波特率
setdelaytime(250);//設置延時等待時間, 當等待時間已到,卻未收完返回數據,這條通訊命令就會退出等返回-1.
// 1#模塊讀取程序
if (phase==0) //設置讀取周期
{
TAG("RETURN1")=readinputreg(1,14,32,a); //讀溫度,1個寄存器存放1個溫度,30014為起始寄存器的地址, 讀1號地址的智能設備中,14號輸入開始的32個輸入的狀態,其狀態值存放在事先定義的sfloat數組中。
setdelaytime(250);
if(_TAG("RETURN1")==0 ) //通訊成功
{
for(i = 0;i < 32;i= i+1) //讀取模塊中的32個寄存器
{
f = itof(a[i]);
f=f*0.1; //縮小10倍,還原被接收單元放大的數據.
f = f * 0.001; // 實際溫度量程(0~1000℃)
te[i] = ftosf(f); // 溫度用sfloat位號組態
_TAG("TI-105-01")[i]=te[i]; //將模塊寄存器中數據依次存放于組態位號中,組態位號次序由自定義變量序號決定.
}
}
}
if (phase==1) //為防止數據丟失,連續讀取第2個周期,與第一周期讀取設置相同。
{
_TAG("RETURN1")=readinputreg(1,14,32,a);
setdelaytime(250);
if(_TAG("RETURN1")==0 )
{
for(i = 0;i < 32;i= i+1)
{
f = itof(a[i]);
f=f*0.1; //縮小10倍,還原被接收單元放大的數據.
f = f * 0.001; // 實際溫度量程(0~300℃)
te[i] = ftosf(f);
_TAG("TI-105-01")[i]=te[i];
}
}
}
//2#模塊讀取程序,功能同1#模塊
//3#模塊讀取程序,功能同1#模塊
phase=phase+1;//主控卡運行周期+1,讀取周期+1
if (phase<0 OR phase>5)//限定讀取周期,每2個周期讀取1個模塊,讀取完3#模塊后周期清零重新從1#模塊開始讀取,保證數據的刷新。
{
phase=0;
}
}
5 結論
多路溫度轉換器的應用,核心技術是解決與DCS的通訊問題。所以采用標準的通訊協議(如MODBUS-RTU協議)可以實現與各廠家的DCS系統進行通訊。每家的產品都具有不同的技術特點,其設置方法和調試要求也不盡相同,要針對通訊技術的要求,選擇正確的運算方法,進行程序編制。但采用一個多測量點、寬量程的智能溫度測量應用系統,其應當結構簡單、價格便宜、量程寬、有較高的可靠性、安全性及實用性。上述問題的解決方法具有普遍使用意義,可以供大家參考和借鑒。
參考文獻:
[1] 沙占友. 智能化集成溫度傳感器原理與應用[M]. 北京:機械工業出版社,2002 .
[2] 王常力,羅安主編.集散型控制系統的選型與應用[M].北京:清華大學出版社,1996.
圖2 變送單元地址開關圖