1 引言
目前國內(nèi)油庫微機發(fā)油系統(tǒng)基本都采用的是單片機為CPU的控制器,為此需要設(shè)計電路,需要開發(fā)外圍電路以及輸入輸出接口。由于生產(chǎn)工藝較差和設(shè)計能力較低,使得發(fā)油控制器設(shè)備故障率高,使用壽命短、性能不穩(wěn)定。PLC邏輯控制器經(jīng)過了30多年的發(fā)展,具有性能可靠,不受外界環(huán)境的影響,特別適用于北方寒冷地區(qū),自診斷能力強,易于開發(fā)和維護等特點,得到廣大用戶青睞。在國外采用PLC作為發(fā)油控制器已非常普遍,在國內(nèi)隨著PLC價格的下降,也將有越來越多的油庫選擇采用PLC作為發(fā)油控制器控制發(fā)油。
2 系統(tǒng)結(jié)構(gòu)和功能
系統(tǒng)結(jié)構(gòu)如圖1所示,由四部分組成:上位機;PLC柜;操作器;現(xiàn)場人工聯(lián)動按鈕、靜電溢油裝置等一次儀表。
[IMG=PLC在油庫發(fā)油系統(tǒng)中的應(yīng)用]/uploadpic/tech/2008/1/2008012414323726411O.bmp[/IMG]
系統(tǒng)功能圖如圖2所示。
[IMG=PLC在油庫發(fā)油系統(tǒng)中的應(yīng)用]/uploadpic/tech/2008/1/2008012414395388190M.jpg[/IMG]
上位機功能是開票、提單管理等;PLC功能是提單的存儲、驗證、交易記錄的產(chǎn)生、數(shù)據(jù)采集、過程控制等。操作器主要功能是提單的輸入、操作器參數(shù)的設(shè)置和數(shù)據(jù)顯示等?,F(xiàn)場啟停按鈕、防靜電溢油裝置等一次儀表與PLC連鎖,達到安全控制的目的。
3 可編程控制器(PLC)控制系統(tǒng)
本系統(tǒng)的可編程控制器(PLC)選用德國西門子公司的S7-300系列PLC
軟件采用STEP 7梯形圖軟件。其組態(tài)如圖3所示:
[IMG=PLC在油庫發(fā)油系統(tǒng)中的應(yīng)用]/uploadpic/tech/2008/1/2008012414444772426L.jpg[/IMG]
PLC完成的主要的功能有:與上位機數(shù)據(jù)交換、數(shù)據(jù)驗證,人機界面,過程控制,掉電保護。
3.1 與上位機數(shù)據(jù)交換
PLC與PC之間通過RS485轉(zhuǎn)RS232通訊方式聯(lián)機,通訊模塊我們選用的是CP341,接收功能塊為FB7,對應(yīng)背景數(shù)據(jù)塊為DB7,F(xiàn)B7的"P_RCV_RK_DB".EN_R一直處于接收狀態(tài)。發(fā)送功能模塊為FB8,對應(yīng)背景數(shù)據(jù)塊為DB8,"P_SND_RK_DB".REQ只要在正確發(fā)送完成以后才能為1。
通訊協(xié)議采用半雙工的RS485連接,格式如下:
(1) 通訊參數(shù)
9600,8,1,n.
(2) 幀格式:
同步碼ffH,ccH(2字節(jié))+地址碼(1字節(jié))+回路號(1字節(jié))+長度碼(1字節(jié))+命令碼(1字節(jié))+數(shù)據(jù)+效驗碼(1字節(jié))。
長度碼:命令碼字節(jié)數(shù)+數(shù)據(jù)的字節(jié)數(shù)
效驗碼:從地址碼到數(shù)據(jù)最后字節(jié)之和。
(3) 通訊方式
采用問答方式進行數(shù)據(jù)交換,應(yīng)答過程如表1數(shù)據(jù)交換過程:
表1 數(shù)據(jù)交換過程
PC機 PLC
1 循檢 -><- 上傳狀態(tài)
2 循檢 -> <- 上傳數(shù)據(jù)
3 下傳數(shù)據(jù) -> <- 應(yīng)答(68H)
3.2 數(shù)據(jù)驗證
CPU把接收到的提單數(shù)據(jù)與提單數(shù)據(jù)緩沖區(qū)的內(nèi)容進行比較,如果有相同的信息就通過驗證同時清楚緩沖區(qū)數(shù)據(jù),沒有則返回提單錯信息。數(shù)據(jù)比較的采用指針的方式。
L 0
T #count
L #db_no
T #No
OPN DB [#No]
//提單數(shù)據(jù)緩沖區(qū)
LAR1 P#DBX 0.0 //起始地址
L #dbb_no
L 8
*I
TAR1
+I
LAR1
main: OPN DB [#No]
L DBD [AR1,P#0.0]
L #cop_addr //提單號
==D
JC en_r
+AR1 P#30.0
//緩沖區(qū)提單信息數(shù)據(jù)大小
L #count
INC 1
T #count
L #loop_num //緩沖區(qū)提單數(shù)量
L #count
>I
JC main
BE
en_r: OPN "提單"
L DBB [AR1,P#4.0]
T #com_addres
3.3 人機界面
操作器為我公司開發(fā)的人機界面控制器,提供標準的RS485接口。PLC與操作器之間通過RS485通訊方式聯(lián)機,CP341為主動循檢方式。由于CP341與操作器之間的通訊是一對多的(實際應(yīng)用中為16個),為了提高通訊速度,我們采用了功能分時的方法:對工作中的操作器每周期循檢,對空閑的操作器統(tǒng)一循檢工作標志。協(xié)議如下:
(1) 物理連結(jié)
物理連結(jié)為一對雙絞線的RS485連結(jié)
通訊參數(shù) 9600, 8,N,1
(1) 信息幀結(jié)構(gòu)
采用MODBUS協(xié)議
l 一幀數(shù)據(jù)由地址,功能碼,數(shù)據(jù),校驗碼組成如表2所示:
表2 信息幀結(jié)構(gòu)
地址 功能碼 數(shù)據(jù)區(qū) CRC
(8位) (8位) N*8 (16位)
注: 地址:是信息幀 的第一字節(jié),從0~255, 每一個從機只有一個地址,只有
符合地址的從機才回信息 0 代表廣播地址,從機不回信息
功能碼:主機告訴從機執(zhí)行什么任務(wù)
數(shù)據(jù)區(qū):是跟任務(wù)有關(guān)的數(shù)據(jù)
CRC:計算從地址一直到數(shù)據(jù)結(jié)束
3.4 掉電保護
西門子的S7-300系列PLC的DB數(shù)據(jù)區(qū)為記錄存儲區(qū),CPU掉電時數(shù)據(jù)仍保持在數(shù)據(jù)區(qū)內(nèi),這樣我們可以把重要的數(shù)據(jù)和標志放在DB區(qū),PLC重新啟動時,CPU自動回復(fù)到斷電時狀態(tài),當(dāng)然在OB100里要做判斷,記錄數(shù)據(jù)不能被初始化。在實際的工程中通過反復(fù)的測試,完全達到預(yù)期的目的,同時節(jié)約了UPS的費用。
3.5 過程控制
邏輯控制是PLC的最基本最強大的功能,所以控制過程根據(jù)工藝要求編寫就可以順利達到控制目的??刂频囊蠛芎唵尉褪强刂瓢l(fā)油的精度小于等于0.3%、質(zhì)量計算、消除水擊現(xiàn)象和故障保護,其控制過程示意圖如圖3所示,控制流程框圖如圖4所示。
[align=center][IMG=PLC在油庫發(fā)油系統(tǒng)中的應(yīng)用]/uploadpic/tech/2008/1/2008012414533161766T.jpg[/IMG]
[IMG=PLC在油庫發(fā)油系統(tǒng)中的應(yīng)用]/uploadpic/tech/2008/1/2008012414533514619X.jpg[/IMG][/align]
4 結(jié)束語
將PLC應(yīng)用到油庫定量發(fā)油系統(tǒng)后,可以使得油庫的自動化程度大大提高,同時改變了分散式發(fā)油系統(tǒng)受到現(xiàn)場環(huán)境溫度,濕度和防爆要求等多方面的限制而在我國有的地區(qū)無法正常使用的情況。這套PLC定量發(fā)油系統(tǒng)在常州五星橋油庫投入運行以來,系統(tǒng)穩(wěn)定可靠、運行控制良好、發(fā)油精度準確。