溫志軍
(北京中燕通科技開發(fā)有限公司,北京 102599)
本污水處理遠(yuǎn)程集中控制系統(tǒng)是一個(gè)縣級(jí)集中控制總站,通過Internet 網(wǎng)絡(luò)集中顯示、控制5 個(gè)鎮(zhèn)的污水廠的全部設(shè)備。5 個(gè)鎮(zhèn)的單一污水廠內(nèi)部可編程控制器作為主站;使用西門子EM277 模塊通過Profibus_DP 現(xiàn)場總線組成現(xiàn)場總線網(wǎng)絡(luò)。各鎮(zhèn)的污水廠分別配置一臺(tái)觸摸一體計(jì)算機(jī)和北京杰控科技有限公司的Fame View 組態(tài)軟件作為鎮(zhèn)級(jí)污水廠的總控制和操作系統(tǒng)。各鎮(zhèn)的可編程控制器利用國產(chǎn)的企業(yè)智能VPN(Virtual Private Network,虛擬專用網(wǎng)絡(luò))網(wǎng)關(guān)通過跨區(qū)組網(wǎng)功能組成遠(yuǎn)程局域網(wǎng)。通過在整個(gè)系統(tǒng)的硬件配置、地址分配、程序編制、狀態(tài)記錄、曲線記錄、報(bào)表打印等方面的統(tǒng)一標(biāo)準(zhǔn)。本系統(tǒng)的主網(wǎng)絡(luò)采用VPN 架設(shè),分站的網(wǎng)絡(luò)采用ROFIBUS_DP 架設(shè)。
單一污水廠的硬件結(jié)構(gòu)包括ABB_AC500_PM573_ETH 主站、通過DC551-CS31 組成的遠(yuǎn)程終端單元、西門子S7-200CPU+EM277 模塊做為4 個(gè)PLC 分站。上位機(jī)采用電阻觸摸的一體化工業(yè)電腦,在Windows 系統(tǒng)上安裝北京杰控科技有限公司的Fame View 組態(tài)軟件做為顯示和操作單元。用微軟的SQL Server 和Office 軟件做為數(shù)據(jù)庫平臺(tái)和報(bào)表打印的支持軟件。
為了總站能實(shí)現(xiàn)顯示和控制分站的功能,需要將通過通信方式獲取的數(shù)據(jù)分配給總站PLC 然后上傳給各個(gè)污水廠的上位機(jī)PC 的組態(tài)軟件中。這就需要分配一系列地址給各個(gè)硬件,以便能做到數(shù)據(jù)的一致性(表1)。
ABB_PLC 軟件編制可以使用ABB_Automation_Builder 軟件中集成的軟件來實(shí)現(xiàn)的。在ABB_Automation_Builder 中配置好硬件后,在CoDeSys 中定義全局變量名然后使用這些變量名編程。
表1 地址表分配
(1)PLC 物理地址定義Excel 公式:=IF (變量注釋單元格=0,"",PLC 物理地址變量名單元格&" AT "&PLC 物理地址單元格&" :BOOL;(*"& 變量注釋單元格&"*)")
(2)上位機(jī)變量名定義Excel 公式:=IF (變量注釋單元格=0,"",上位機(jī)變量名單元格&" AT "& PLC_M 轉(zhuǎn)換地址單元格2&" :BOOL;(*"& 變量注釋單元格&"*)")
(3)=IF(變量注釋單元格=0,"",上位機(jī)變量名單元格&":="& PLC 物理地址變量名單元格&";(*"&變量注釋單元格&"*)")
(1)PLC 物理地址定義Excel 公式:=IF (變量注釋單元格=0,"",PLC 物理地址變量名單元格&" AT "&PLC 物理地址單元格&" :BOOL;(*"& 變量注釋單元格&"*)")
(2)上位機(jī)變量名定義Excel 公式:=IF (變量注釋單元格=0,"",上位機(jī)變量名單元格&" AT "& PLC_M 轉(zhuǎn)換地址單元格2&" :BOOL;(*"& 變量注釋單元格&"*)")
(3)上位機(jī)和PLC 數(shù)據(jù)傳送Excel 公式:=IF(變量注釋單元格=0,"",PLC 物理地址變量名單元格&":="&上位機(jī)變量名單元格&";(*"&變量注釋單元格&"*)")
(1)PLC 物理地址定義Excel 公式:=IF (變量注釋單元格=0,"",PLC 物理地址變量名單元格&" AT "&PLC 物理地址單元格&" :INT;(*"& 變量注釋單元格&"*)")
(2)上位機(jī)變量名定義Excel 公式:=IF(變量注釋單元格=0,"",上位機(jī)變量名單元格&" AT "& PLC_M 轉(zhuǎn)換地址單元格2&" :INT;(*"& 變量注釋單元格&"*)")
(3)上位機(jī)和PLC 數(shù)據(jù)傳送Excel 公式:=IF(變量注釋單元格=0,"",上位機(jī)變量名單元格&":="& PLC 物理地址變量名單元格&";(*"&變量注釋單元格&"*)")
=IF(變量注釋單元格=0,"",PLC 物理地址變量名單元格&"AT "&PLC 物理地址單元格&" :INT;(*"& 變量注釋單元格&"*)")
="IF "&自動(dòng)變量名單元格&"=0 OR "&故障變量名單元格&"=1 THEN "&輸出變量名單元格&":=0;END_IF; (*"&輸出注釋單元格&"*)"
首先利用Excel 公式的方法編制ST 語言程序,然后再利用CoDeSys 軟件轉(zhuǎn)換成LAD 程序,在LAD 程序里面做聯(lián)鎖控制。
(1)提升泵頻率控制程序。提升泵頻率控制方法有3 種:手動(dòng)設(shè)定頻率方式、液位隨動(dòng)頻率控制方式、通過流量計(jì)閉環(huán)PID設(shè)定方式。采用手動(dòng)控制方式時(shí),提升泵頻率按手動(dòng)設(shè)定頻率運(yùn)行;采用液位控制頻率時(shí)候,提升泵按液位高低自動(dòng)調(diào)整頻率運(yùn)行。
(2)轉(zhuǎn)盤膜厚度測量及控制程序。每過2~3 h,用自動(dòng)程序?qū)⒄{(diào)整轉(zhuǎn)盤的速度到測量頻率5 Hz,在此頻率下測量轉(zhuǎn)盤輸出功率。通過和對(duì)照值進(jìn)行比較,以此來核定轉(zhuǎn)盤掛膜厚度的程序。膜厚測定后,再通過自動(dòng)程序來控制轉(zhuǎn)盤的轉(zhuǎn)速來控制生物轉(zhuǎn)盤的掛膜厚度。
(3)輸入模擬量整理功能FCN 指令的編制。ABB_AC500 系列PLC 模擬量輸入的數(shù)據(jù)類型是-32768~32767 的無符號(hào)整形,而CoDeSys 軟件識(shí)別的物理地址AI 是0~63535 的無符號(hào)整形,當(dāng)物理信號(hào)小于零時(shí)候,由于位序的原因CoDeSys 輸入信號(hào)值將大于27648,這時(shí)就需要編制一個(gè)整理功能FCN 來保證信號(hào)的準(zhǔn)確。
(4)低液位有水信號(hào)功能FCN 指令的編制。有水和無水直接要設(shè)定一個(gè)緩沖區(qū)間,比如100 mm,以免信號(hào)頻繁切換。這就要編制一個(gè)能自動(dòng)實(shí)現(xiàn)這個(gè)功能的功能函數(shù),以便頻繁調(diào)用??梢詫⑦@個(gè)函數(shù)叫做HAVE_WATER。這個(gè)函數(shù)輸出一個(gè)BOOL值,用這個(gè)值去控制潛水泵的啟停即可。
(5)分站模板PLC 程序編制。通過對(duì)變量有規(guī)律的命名,比如DI、DO、AI、AO、X、B、R、PLC、PC、以及序列號(hào)xxx 和注釋的配合,編制出第一個(gè)站點(diǎn)的程序代號(hào)A01_。其余的站點(diǎn)程序只需要變更一下IP 地址的網(wǎng)段即可。
用按鈕的標(biāo)題做為設(shè)備的指示,按鈕的顏色紅綠做為設(shè)備啟停指示,按鈕下面的3 個(gè)短棒的顏色和閃爍功能做為遠(yuǎn)程、運(yùn)行、故障的指示。
利用Fame View 的變量報(bào)警功能對(duì)故障進(jìn)行提醒、確認(rèn)、記錄和查詢。將運(yùn)行信號(hào)取反后,做為停止信號(hào),即可利用變量報(bào)警功能編制出設(shè)備啟停時(shí)間的記錄程序。
數(shù)據(jù)報(bào)表除了要做日、周、月、季年報(bào)等常規(guī)內(nèi)容以外,最好做一個(gè)設(shè)備運(yùn)行的狀態(tài)和故障表。每1 h 記錄一個(gè)運(yùn)行和故障狀態(tài),以便能及時(shí)、直觀地發(fā)現(xiàn)所有設(shè)備運(yùn)行和故障問題,這將對(duì)運(yùn)行管理人員全面掌握水廠運(yùn)行狀態(tài)大有益處。
通過國產(chǎn)的企業(yè)級(jí)智能VPN(虛擬專用網(wǎng)絡(luò))網(wǎng)關(guān)的跨區(qū)組網(wǎng)功能組成遠(yuǎn)程局域網(wǎng)。各分站的網(wǎng)段不同,在總站能連接每個(gè)網(wǎng)段的IP 地址,將所有數(shù)據(jù)集中匯總。
利用北京杰控的Fame View 組態(tài)軟件的監(jiān)控對(duì)象功能實(shí)現(xiàn)變量分組及畫面復(fù)用。每個(gè)變量都帶前綴Axx_(xx 是站點(diǎn)序號(hào)),先做出一個(gè)分站的畫面,然后用工具欄上的監(jiān)控對(duì)象替換的辦法做出其余分站的畫面。各個(gè)分畫面通過子畫面的方式切換即可。
(1)通過有規(guī)律的設(shè)定變量名能夠利用Excel 的公式功能快速的編制CoDeSys 軟件的全局變量表,結(jié)構(gòu)化文本ST 程序。
(2)用Excel 公式的方法直接編制故障和手動(dòng)的時(shí)候復(fù)位輸出功能的程序,會(huì)使得程序的編制變得高效、可靠。
(3)通過CoDeSys 軟件的轉(zhuǎn)換功能將ST 語言的程序轉(zhuǎn)換成LAD 語言的程序,從而實(shí)現(xiàn)聯(lián)鎖控制。
(4)地址分配要事先約定好,有效利用有限的PLC 內(nèi)部繼電器資源,使得程序結(jié)構(gòu)合理,方便擴(kuò)展和合作開發(fā)。
(5)復(fù)雜的控制功能要經(jīng)過長期的經(jīng)驗(yàn)積累和時(shí)間才能做到,這些都是軟件制作人員的智慧的結(jié)晶。可以將這些功能制作成功能模塊,以便隨時(shí)調(diào)用。
(6)組態(tài)軟件的畫面制作時(shí)要定義監(jiān)控變量,利用監(jiān)控變量替換功能實(shí)現(xiàn)畫面復(fù)用,提高畫面的制作效率。