
摘 要:液位儀是一種對大型儲油罐參數進行實時監測的設備,利用KingSCADA上位軟件實現對油罐數據的監控。本文設計了基于visual studio 2010平臺的液位儀設備接口的驅動開發,從而實現油罐最優化的管理。
關鍵詞:KingSCADA;液位儀;數據通訊
1 引言
石油開采在國內得到迅猛發展,大小油庫油罐遍及全國,但從目前來看,油罐的管理普遍不夠完善,無法實現現代化的監控。影響油罐信息化管理的瓶頸是相關協議的缺乏,無法實現上位監控,造成現場人員工作量的加大。為此設計開發了KingSCADA與液位儀的通訊,實時在上位工控機上顯示油罐的溫度、體積、油位、水位和高度等參數。
2 總體設計方案
設備接口通訊成功是油罐監測整體運行的關鍵,本文以維德路特油罐控制臺通訊協議為基礎,以King SCADA上位軟件為平臺,開發了基于King SCADA的維德路特油罐控制臺的設備驅動。以TLS-2通訊協議中的IN-TANK REPORTS的協議格式為基礎,根據串口調試助手反饋上的數據幀格式,在visual studio 2010平臺下編寫驅動函數。IN-TANK REPORTS的協議格式如表5-1所示。
首先依次手動配置維德路特液位儀與串口調試助手中的波特率、數據位、停止位、校驗位,使二者的上述4個數值相同,即9600、8、1、EVEN。然后對串口調試助手進行指令操作,輸入指令,即16進制的I201,啟動指令為01。完成指令為:01 49 32 30 31。如果查詢1#油罐,則需在上述指令后繼續添加30 31,其它依次類推。指令發送完畢,則會在串口調試助手的對話框內實時顯示出1#油罐的油罐參數數據,將參數數據以16進制數據幀格式顯示。
01 0D 0A 32 30 31 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0D 0A 0D 0A 20 20 20 20 31 33 2D 30 35 2D 33 31 20 31 31 3A 32 37 20 20 20 0D 0A 0D 0A 54 41 4E 4B 20 20 50 52 4F 44 55 43 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4C 49 54 45 52 53 20 20 20 20 20 20 4D 4D 20 20 20 57 41 54 45 52 20 20 44 45 47 20 43 20 20 20 55 4C 4C 41 47 45 0D 0A 0D 0A 20 20 33 20 20 20 33 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 30 20 20 20 20 38 31 2E 31 20 20 20 20 20 20 20 30 20 20 20 32 30 2E 32 20 20 20 20 35 30 30 30 30 0D 0A 0D 0A 03
限于實驗室調試的環境,根據16進制的數據幀格式,采用了虛擬串口進行了調試,在visual studio 2010平臺下編寫了驅動程序。serialcom的opencom的部分程序如下:
CDebug::ShowFunMessage(_T(“CDevVEEDER_TLS2::SendDataToKingSCADA”));
ASSERT(pPac != NULL);
POSITION pos = pPac->varList.GetHedPosition();
Char buffer[8][50]={0};
if(pPac->nRegType == Para_REG)
{
Memcpy(buffer[0],m_byRecBuf+104,14);//PRODUCT
Memcpy(buffer[1],m_byRecBuf+130,18);//VOLUGE
Memcpy(buffer[2],m_byRecBuf+198,1);//TANK
Memcpy(buffer[3],m_byRecBuf+202,1);//HEIGHT
Memcpy(buffer[4],m_byRecBuf+230,1);//WATER
Memcpy(buffer[5],m_byRecBuf+233,10);//ULLAGE
Memcpy(buffer[6],m_byRecBuf+250,10);//TEMP
}
對程序進行編譯,生成維德路特TLS-2的DLL文件,將DLL文件添加到組態軟件KingSCADA的IO Server中,從而實現維德路特液位儀的驅動安裝。
3 總結
本驅動文件在KingSCADA上位軟件上成功添加,正確顯示了油罐的各個參數,實現了維德路特液位儀與上位軟件的通訊,大大降低了油罐區工作人員的工作強度。
[參考文獻]
[1]張乃祿,李永進,等.基于物聯網的加油站綜合信息監控系統[J].西安石油大學學報,28-6,104-107.