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