技術(shù)文章
西門子PRODAVE與S7-300 PLC的氣力輸送實驗系統(tǒng)
閱讀:1272 發(fā)布時間:2017-7-24西門子PRODAVE與S7-300 PLC的氣力輸送實驗系統(tǒng)
在自動化領(lǐng)域,DCS、現(xiàn)場總線、SCADA、PLC技術(shù)的蓬勃發(fā)展為自動化技術(shù)的發(fā)展注入了新的活力。該領(lǐng)域*技術(shù)與傳統(tǒng)生產(chǎn)工藝的結(jié)合,已使得生產(chǎn)工藝、產(chǎn)品質(zhì)量得到了較大的改善與提高。本文以南京順風(fēng)氣力輸送有限公司的氣力輸送機械平臺為基礎(chǔ),同時結(jié)合SIEMENS公司的PRODAVE數(shù)據(jù)鏈接庫、S7-300系列PLC等軟硬件方面的*技術(shù),經(jīng)過二次開發(fā),成功的構(gòu)建了一套能夠模擬現(xiàn)場的氣力輸送自動化實驗系統(tǒng),為氣力輸送自動化系統(tǒng)的設(shè)計與現(xiàn)場實施提供了極大的幫助。
2 氣力輸送實驗系統(tǒng)工藝及功能要求
氣力輸送就是利用氣流作為輸送動力,在管道中搬運粉、粒狀固體物料的方法。一個完整的氣力輸送系統(tǒng)通常由空氣或氣體源、把物料加入管內(nèi)的設(shè)備、輸送管道以及從輸送空氣中分出被輸送物料的分離設(shè)備等組成。以常用的粉煤灰倉式泵氣力輸送系統(tǒng)為例,它主要由倉式輸送泵、管道、氣源、輸送目的地(如灰?guī)?和控制部分組成。
一個完整的氣力輸送工藝流程大體可分為倉泵裝料階段、倉泵充壓階段、物料輸送階段和管道清掃階段。在卸料裝灰階段,打開進料閥和透氣閥,灰斗中的物料在重力的作用下落入倉泵;然后,關(guān)閉進料閥和透氣閥,并打開進氣閥為倉泵中的物料加壓,即倉泵充壓階段;當(dāng)壓力達到某一定值時,則打開出料閥,進入物料輸送階段,此時,倉泵中的物料在氣力作用下經(jīng)輸送管道被輸送到目的地;為了防止在下次進行輸送時發(fā)生管道堵塞現(xiàn)象,當(dāng)倉泵中的物料被輸送完成以后,還要讓空氣流對管道進行清掃。這樣就完成了一個流程的物料輸送,如此循環(huán),可不斷的將灰斗中的物料送往目的地。
作為一套氣力輸送實驗自動控制系統(tǒng),它不僅應(yīng)當(dāng)滿足氣力輸送系統(tǒng)的基本要求,使得操作人員能夠在監(jiān)控界面上實時查看現(xiàn)場的儀表參數(shù)、設(shè)備狀態(tài),實現(xiàn)對設(shè)備的實時控制。而且還應(yīng)具備實驗系統(tǒng)所*的在硬件與軟件的靈活、可修改性、開放等方面的特點。
在對氣力輸送實驗系統(tǒng)進行軟件設(shè)計時,除了要滿足氣力輸送系統(tǒng)實驗人員實時監(jiān)控現(xiàn)場運行狀態(tài)的需要外,還應(yīng)具有對實驗所用的壓力、延遲時間、循環(huán)次數(shù)等工藝參數(shù)的設(shè)置功能;而且,根據(jù)實際需求,在監(jiān)控界面上要能夠容易地實現(xiàn)不同工藝流程之間的簡單切換,或者實現(xiàn)工藝流程的隨意組態(tài);同時,為了以后對實驗數(shù)據(jù)的分析,軟件的設(shè)計還應(yīng)具備實驗數(shù)據(jù)的實時采集、存檔以及數(shù)據(jù)的分析繪圖功能。
此外,氣力輸送實驗系統(tǒng)還應(yīng)考慮經(jīng)濟、操作方便、界面友好等方面的因素。
3 氣力輸送實驗系統(tǒng)構(gòu)建方案
氣力輸送實驗系統(tǒng)的構(gòu)建主要包括機械部分硬件、電氣自動化方面硬件以及自控系統(tǒng)軟件等幾部分組成。氣力輸送實驗平臺的機械部分設(shè)備主要包括:空氣壓縮機、儲氣罐、輸送倉泵、喂料機、除塵器、氣動閥門、壓力表、稱重傳感器、以及輸送管道等。自控系統(tǒng)方面,通過比較,系統(tǒng)采取了目前比較常用且穩(wěn)定性較高的工控計算機(IPC)——可編程邏輯控制器(PLC)系統(tǒng)集成模式。該模式下,IPC與位于其上的監(jiān)控軟件作為監(jiān)控級,PLC作為現(xiàn)場控制級,兩者通過實時數(shù)據(jù)傳輸共同完成數(shù)據(jù)采集與設(shè)備監(jiān)控任務(wù)。在軟件組成方面,為了節(jié)省成本,增加系統(tǒng)靈活性,監(jiān)控軟件采取了Visual Basic與PRODAVE相結(jié)合進行二次開發(fā)的方式,與SIMATIC Step 7編寫的PLC軟件一起共同實現(xiàn)系統(tǒng)的自動控制。
3.1 氣力輸送實驗自控系統(tǒng)硬件配置與選型
在PLC的選型上,氣力輸送實驗系統(tǒng)選用了西門子公司SIMATIC S7-300系列中型PLC,由于該系列PLC基于模塊化結(jié)構(gòu)設(shè)計,具有高速的指令處理和浮點運算、方便的人機界面、自診斷等功能,因此,深受國內(nèi)用戶歡迎,應(yīng)用廣泛。
氣力輸送實驗系統(tǒng)設(shè)計時,根據(jù)系統(tǒng)的現(xiàn)場設(shè)備情況和氣力輸送工藝功能要求,通過對各被控設(shè)備與輸入/輸出信號的統(tǒng)計,然后分別對PLC所需的I/O點數(shù)和存儲容量估算,實驗系統(tǒng)的PLC模塊組可按以下方式進行配置:482.6mm單機架通用導(dǎo)軌一個、PS 307 2A電源模塊一塊、CPU 312C一塊、DO 16×DC24V/0.數(shù)字輸出模塊一塊、DI 16×DC24V數(shù)字輸入模塊一塊、AI 8×12Bit模擬輸入模塊兩塊。同時,還為CPU模塊配置存儲容量為64KB的微存儲卡MMC,用于存儲CUP的用戶程序(所有功能塊)、歸檔和配方、S7項目組態(tài)數(shù)據(jù)、操作系統(tǒng)更新和備份數(shù)據(jù)等,參見圖2。
圖2 氣力輸送實驗系統(tǒng)PLC模塊配置示意圖
另外,系統(tǒng)配置研華IPC 610工控機,其性能為In Pentium Ⅲ,800MHz CPU, 256M內(nèi)存,40G硬盤,64M顯存的顯卡,三星19″,純平面顯示器,帶多種通訊接口,易于擴展的ISA和PCI插槽,聲卡及音響(作報警和提示用),配置滿足系統(tǒng)要求。
3.2 氣力輸送實驗自控系統(tǒng)軟件設(shè)計
氣力輸送實驗系統(tǒng)的軟件主要包括用于控制工藝流程的PLC軟件、上位機監(jiān)控軟件、上位機和PLC相互的通訊軟件、數(shù)據(jù)分析與作圖軟件以及系統(tǒng)所要求的其他軟件。
(1)PLC 軟件部分設(shè)計。S7-300系列PLC的軟件設(shè)計工作是在Step 7 SIMATIC Manager中完成的,塊操作是STEP 7 PLC程序的一大特色,軟件程序功能是通過對功能塊的不斷調(diào)用實現(xiàn)的。因此,氣力輸送實驗系統(tǒng)的軟件設(shè)計可以通過對功能塊編程來實現(xiàn)。
一個完整的氣力輸送工藝流程主要包括進料、輸送、清掃三個階段,以普通無壓開泵氣力輸送方式為例,其工藝流程根據(jù)順序可分為如下幾個步驟:系統(tǒng)啟動—開透氣閥(透氣閥開到位)—開進料閥(進料閥開到位)—開喂料機(料位滿信號到)—關(guān)喂料機—延時T1(T1可設(shè)定,下T2、T3同)—關(guān)透氣閥、關(guān)進料閥(透氣閥、進料閥關(guān)到位)—開除塵器、開出料閥(出料閥開到位)—開一次氣閥—延時T2—開二次氣閥(料位下限到)—關(guān)一次氣閥—延時T3—關(guān)二次氣閥—關(guān)出料閥(出料閥關(guān)到位)—關(guān)除塵器—設(shè)定泵數(shù)S未到,進入下一個循環(huán);否則,系統(tǒng)停止。
根據(jù)上述工藝要求,該氣力輸送工藝的PLC軟件組成可分為組織塊OB1、功能塊FB1、FB1的背景數(shù)據(jù)塊DB11、共享數(shù)據(jù)塊DB20、功能FC1、FC2、FC3以及循環(huán)中斷組織塊OB35幾個部分。其中,OB1是程序循環(huán)執(zhí)行的主體;FB1是氣力輸送工藝流程執(zhí)行主體,氣力輸送的工藝流程可通過對FB1的編程來實現(xiàn);FC1的作用是實時檢測外界設(shè)備、儀表信號,并將檢測到的信號傳遞給功能塊FB1;FC2的作用是將工藝流程的執(zhí)行結(jié)果傳遞給外界,以實現(xiàn)對外部現(xiàn)場設(shè)備的控制;FC3是為了和上位計算機監(jiān)控軟件實現(xiàn)通訊而建立的功能塊,它和監(jiān)控計算機共用共享數(shù)據(jù)塊DB20中的數(shù)據(jù);為了保證系統(tǒng)的穩(wěn)定運行,程序中設(shè)計有中斷組織塊OB35。
氣力輸送系統(tǒng)PLC程序調(diào)用過程示意圖 同理,按照以上方法,可以根據(jù)工藝要求對氣力輸送系統(tǒng)的普通無壓開泵、一次氣智能方式、有壓開泵、一次氣智能方式、普通無壓開泵、流化、流化智能方式、有壓開泵、流化、流化智能方式進行程序設(shè)計,通過建立不同的FB以實現(xiàn)不同的工藝和功能。
(2)監(jiān)控軟件部分設(shè)計。監(jiān)控軟件是人機交互的主要界面,是自動控制系統(tǒng)的重要組成部分,通常由監(jiān)控軟件與和PLC通訊的軟件兩部分組成。
Visual Basic上位機監(jiān)控軟件程序設(shè)計。由于Visual Basic采用可視化的編程環(huán)境,具有簡單易學(xué)的特性,因此,在對實驗室氣力輸送系統(tǒng)進行設(shè)計時,可以結(jié)合Visual Basic的編程特點并根據(jù)系統(tǒng)的工藝功能要求開發(fā)出符合實際應(yīng)用需要的IPC監(jiān)控軟件。
上位機與PLC通訊軟件設(shè)計。當(dāng)上位監(jiān)控計算機需要與PLC通信時,通信軟件的設(shè)計必須根據(jù)所采用PLC產(chǎn)品使用相應(yīng)的通信協(xié)議,MPI(Muti-Point-Interface)便是集成在西門子公司的可編程序控制器、操作員界面和編程器上用于建立小型的通信網(wǎng)絡(luò)的集成通信接口。為解決PC與SIEMENS PLC之間的通訊,西門子公司的PRODAVE函數(shù)包提供有一系列已經(jīng)測試的DLL(動態(tài)鏈接庫)或LIB(庫)功能函數(shù),為程序建立與S7-200、S7-300 系列PLC通訊提供了極大的方便。
PRODAVE的函數(shù)可分為基本函數(shù)、數(shù)據(jù)處理函數(shù)和服務(wù)函數(shù)(eService Functions)?;竞瘮?shù)用于建立、斷開和激活PC與PLC的連接,以及讀、寫PLC中的各種數(shù)據(jù)。數(shù)據(jù)處理函數(shù)用于PC中用戶數(shù)據(jù)的轉(zhuǎn)換和處理。服務(wù)函數(shù)用于PC通過線與PLC建立連接。另外,當(dāng)利用MPI通訊口進行通訊時,首先要將PC Adapter的兩端分別插在計算機的串行口和PLC CPU模塊的MPI口通訊口上,PC適配器的波特率可根據(jù)情況設(shè)為187.5 kbps或者更高。
氣力輸送實驗室系統(tǒng)中,利用Visual Basic編寫的上位機監(jiān)控軟件在和S7-300 PLC進行通訊時,主要調(diào)用了load_tool、unload_tool、new_ss、db_read、db_wtite、d_field_read、d_field_write等函數(shù)。其中,load_tool的作用是檢查通訊、對通訊參數(shù)初始化;new_ss用于上位機需要和PLC進行數(shù)據(jù)交換時,進行通訊檢查并激活通訊連接;db_read、db_wtite、d_field_read、d_field_write分別用來對S7-300系列PLC的數(shù)據(jù)單元(WORD或BYTE)進行讀寫操作;unload_tool用于在退出系統(tǒng)以前斷開和PLC之間的通訊連接,當(dāng)需要退出監(jiān)控系統(tǒng)時可以調(diào)用此函數(shù)。
在對上述函數(shù)調(diào)用之前,需要在VB模塊中作類似如下的聲明,以調(diào)用相應(yīng)的函數(shù),例如,當(dāng)在程序執(zhí)行過程中調(diào)用load_tool函數(shù)時,可聲明如下:
Declare Function load_tool Lib “w95_s7m.dll” (ByVal nr As Byte, ByVal dev As String, adr As plcadrtype) As Long
這樣,當(dāng)上位機執(zhí)行到對load_tool的調(diào)用時,它會自動訪問安裝在操作系統(tǒng)上的w95_s7m.dll動態(tài)鏈接庫,從而可以實現(xiàn)初始化通訊連接的目的。
下面給出了氣力輸送實驗系統(tǒng)上位機監(jiān)控軟件程序運行時實現(xiàn)與PLC通訊檢查并加載主監(jiān)控界面功能的程序代碼。
Public Sub Form_Load()
Dim ss As String
Dim msg As Integer
plcadr(0).adr = 2
plcadr(0).SEGMENTID = 0
plcadr(0).RACKNO = 0
plcadr(0).SLOTNO = 2
plcadr(1).adr = 0
plcadr(1).SEGMENTID = 0
plcadr(1).RACKNO = 0
plcadr(1).SLOTNO = 2
res = load_tool(1, “S7ONLINE”, plcadr(0))
If (res <> 0) Then
ss = “通訊失敗,無法建立連接!”
msg = MsgBox(ss, vbExclamation + vbRetryCancel, “提示信息!”)
If msg = 4 Then Call Form_Load
Else: maincontr.Show
End If
End Sub
上述代碼執(zhí)行時,用戶啟動上位機監(jiān)控系統(tǒng)軟件,軟件首先檢查是否有在線的PLC連接,如果在線連接成功,即上位監(jiān)控計算機經(jīng)由適配器與PLC的CPU模塊通訊無誤,那么系統(tǒng)將執(zhí)maincontr.Show語句,顯示主監(jiān)控界面。否則,將顯示“提示信息”對話框,提示操作人員無法與PLC建立通訊,操作人員應(yīng)當(dāng)檢查通信線路,然后重試建立連接,或者取消連接檢查而直接查看監(jiān)控畫面。
上位機監(jiān)控軟件中其它諸如數(shù)據(jù)采集、狀態(tài)顯示、實時控制等方面功能的實現(xiàn)與此類似,不再贅述。
(3)數(shù)據(jù)采集與分析軟件設(shè)計。數(shù)據(jù)采集與分析是實驗系統(tǒng)重要組成部分,是改進系統(tǒng)和完善工藝的理論依據(jù)和科學(xué)基礎(chǔ)。為了滿足工藝研究人員對采集數(shù)據(jù)多方面的查看與分析要求,對實驗數(shù)據(jù)的處理與分析可借助于專門的工程軟件MATLAB來實現(xiàn)。
圖4 實驗數(shù)據(jù)作圖GUI對話框
圖4是在GUI環(huán)境下開發(fā)的對采集數(shù)據(jù)進行作圖的初始對話框,它主要由兩個操作按鈕和文字提示信息組成。使用時,操作人員可通過點擊“上載”按鈕來采集數(shù)據(jù)所在位置,然后,系統(tǒng)將自動繪制各采集模擬量的MATLAB圖形,當(dāng)操作人員點擊“取消”按鈕時,將關(guān)閉該對話框并返回?!∩鲜龅挠脩艚缑嬖贛ATLAB中保存為兩個文件,它們分別時SF.m和SF.fig,其中SF.m為“上載”按鈕的調(diào)用(Callback)函數(shù),函數(shù)主要內(nèi)容如下所示:
function pushbutton1_Callback(hObject, eventdata, handles)
Mpic
function pushbutton2_Callback(hObject, eventdata, handles)
close
其中,pushbutton1、pushbutton2分別是提示對話框中兩個操作按鈕的名稱,而Mpic是被調(diào)用的又一M-file,作用是根據(jù)需要對采集到的各量繪制其MATLAB圖形。作為示例,圖5給出的是繪制倉泵重量隨時間變化圖形的M-file代碼及趨勢圖。
clear
x=load(‘E:/matlab6p5p1/work/數(shù)據(jù)/009.txt’)
t=1:360
plot(t,x(:,7),‘.-k’)
title(‘Container Weight (Kg)’)
ylabel(‘DATA NO. 9’,‘fontsize’,12)
xlabel(‘TIME (S)’,‘fontsize’,10)
4 結(jié)束語
根據(jù)上述的氣力輸送實驗系統(tǒng),我們以粉煤灰為輸送介質(zhì),通過對有壓、無壓、流化等不同工藝流程進行氣力輸送,為粉煤灰氣力輸送系統(tǒng)的研究和現(xiàn)場工程實施提供了大量的參考數(shù)據(jù)和設(shè)計依據(jù)。同時,借助本文所構(gòu)造的氣力輸送實驗系統(tǒng),并通過在該實驗平臺上的氣力輸送實驗,我們完成了江蘇靖江熱電廠粉煤灰氣力輸送系統(tǒng)與上海外高橋熱電廠煙氣脫硫工程石灰石粉氣力輸送系統(tǒng)的設(shè)計,并在工程實際實施過程中為現(xiàn)場工作的順利開展提供了大量的指導(dǎo)。
通過將該氣力輸送實驗系統(tǒng)與工業(yè)應(yīng)用實際相結(jié)合,并通過在該實驗系統(tǒng)上的多次實驗,本文所設(shè)計的氣力輸送系統(tǒng)可以很大程度地改進目前在氣力輸送領(lǐng)域所存在的問題,優(yōu)化當(dāng)前的氣力輸送系統(tǒng)結(jié)構(gòu),并為以后氣力輸送的發(fā)展與應(yīng)用提供新的思路,具有廣泛的實際應(yīng)用價值。