摘 要:本文介紹了S7-300的基本功能和模糊控制的基本原理,詳細闡述了如何利用step 7編寫用戶自行開發的模糊PID控制算法和如何利用組態王6.5對供水管網水壓進行監控。通過組態王和S7-300之間的通信,采用模糊PID控制算法實時調節P、I、D參數,實現了對供水管網水壓的控制。
關鍵字:組態王6.5,水壓控制,模糊PID控制算法,S7-300PLC,多點接口網絡MPI
1 引言
近年來,隨著工業自動化技術的發展,人們對自動化監控系統的要求越來越高,這就需要一套使用方便,功能強大,性能優異、穩定可靠的監控軟件。而西門子公司的SIMATIC S7的PLC網絡具有多點接口網絡(MPI),可實現S7-300與工控組態軟件組態王的通信,實現計算機的自動控制。本文就組態王6.5和S7-300 在恒壓供水系統控制中的應用進行研究。
2 組態王簡介
“組態王”是在PC機上建立工業控制對象人機接口的一種智能軟件包,它以Windows 98/Windows 2000/ Windows NT4.0中文操作系統作為其操作平臺,具有圖形功能完備,界面一致友好,易學易用的特點。該軟件包由工程管理器(ProjManager)、工程瀏覽器 (TouchExplorer)、畫面運行系統(TouchVew)三部分組成。ProjManager用于新建工程、工程管理,并能對已有工程進行搜索、備份及有效恢復,實現數據字典的導入和導出。TouchExplorer是“組態王”軟件的核心部分和管理開發系統,是應用工程的開發環境,內嵌畫面開發系統,可完成對畫面的設計、動畫的連接等工作。TouchVew是“組態王”軟件的實時運行環境,用于顯示畫面開發系統中建立的動畫圖形畫面,并負責數據庫與I/O服務程序的數據交換,通過實時數據庫管理從一組工業控制對象采集到的各種數據,并把數據的變化用動畫的方式形象地表示出來,同時完成報警、歷史記錄、趨勢曲線等監視功能,并可生成歷史數據文件。在TouchExplorer的畫面開發系統中設計開發的畫面應用程序必須在TouchVew運行環境中才能運行。
3 S7-300簡介
S7—300系PLC是西門子公司較新開發的工控產品之一,在西門子工控領域應用中占有重要地位。S7—300系列PLC軟硬件功能強大,采用模塊化設計,系統配置方便,在一塊機架底板上可安裝電源、CPU、各種信號模板、通信處理器等多種特殊功能模塊,各種模塊安裝方便,系統帶有強大的Profibus現場總線接口及MPI接口,MPI接口既是編程接口,又是數據通信接口,通過此接口,PLC與PLC之間、或PLC與上位機之間都可以通過MPI協議進行通信,從而組成MPI網絡。然而S7—300系列PLC所自帶的組態功能,遠遠達不到客戶的要求,可視化效果較差,自然就需要與之相匹配的組態軟件來實現其監控功能。
使用S7-300要進行硬件組態。此時計算機作為PLC的編程裝置,打開S7-300編程軟件包STEP 7,對S7-300 的機架號、電源、CPU、分布式I/O等各種模塊,按其實際物理位置進行組態,其中,分布式I/O模塊的地址一般根據模塊旁的撥盤開關來設定。最后將組態程序表下載到PLC并確認。在西門子的軟件包STEP7 中,可用梯形圖、語句表或功能塊圖進行編程。
4 模糊PID控制算法的實現及應用
自動控制理論中的分析和設計方法主要是建立在被控對象的線性定常數學模型的基礎上的。該模型忽略了實際系統中的非線性和時變性,與實際系統有較大的差距。對于許多工業控制對象,根本就無法建立較為準確的數學模型,因此自動控制理論中的設計方法很難用于大多數控制系統。模糊控制適合于對象模型難以建立、過程特性缺乏一致性、具有非線性、但可以總結出操作經驗的系統【2】。而水壓控制具有非線性、時變性和滯后性,因此將模糊PID控制算法應用于恒壓供水控制系統中。
4.1 恒壓供水控制系統的組成及工作過程
本系統以PLC為控制核心,通過上位機自由設定所需水壓,當水壓設定好后,根據變頻恒壓供水原理,利用安裝在供水管網上的壓力傳感器,對供水管網水壓進行數據采樣,并將水壓信號轉換為電信號送人PLC,PLC根據實際水壓值與設定水壓值進行比較和運算,并將運算結果轉換為電信號,輸出送到變頻器的信號給定端,變頻器根據給定信號,調節水泵電機的電源頻率,從而調整水泵的轉速,以維持供水管網中水壓值在設定的水壓范圍內,從而達到恒壓供水的目的。另一方面,PLC又與計算機進行通信,通過組態畫面實時監控壓力變化。
本恒壓供水系統包括研華工控機(上位機)、S7-300PLC、變頻器、水泵電機、液位傳感器和水箱等。軟件部分為在WINDOWS平臺上運行的STEP 7,其基本功能是協助用戶完成應用軟件任務[5]。
此恒壓供水系統采用了一臺變頻器控制三臺泵的工作方式。工作過程如下:先由變頻器起動1#水泵運行,如工作頻率已經達到50Hz,而壓力仍不足時,將1#泵切換成工頻運行,再由變頻器去起動2#水泵,供水水泵處于“1工1變”的運行狀態;如變頻器的工作頻率又已經達到50Hz,而壓力仍不足時,將2#泵也切換成工頻運行,再由變頻器去起動3#水泵,供水水泵處于“2工1變”的運行狀態。如果變頻器的工作頻率已經下降到下限頻率,而壓力仍偏高時,則將1#泵停機,供水水泵又處于“1工1變”的運行狀態;如果變頻器的工作頻率又已經下降到下限頻率,而壓力仍偏高時,則將2#泵停機,供水水泵又處于3#泵變頻運行狀態。這樣安排,具有使3臺泵的工作時間比較均勻的優點。
4.2 模糊控制原理
最基本的模糊控制系統結構如圖1所示。圖中y[sub]r[/sub]為系統設定值,y為系統輸出值,它們都是清晰量。從圖中可以看出,它和傳統的控制系統結構沒有多大的區別,只是用模糊控制器代替傳統的數字控制器。
[align=center]

圖1 模糊控制系統結構圖[/align]
一般說來,模糊控制器有三個主要的功能模塊。
?。?)模糊化
模糊化是將模糊控制器輸入量的確定值轉換為相應模糊語言變量值的過程,此相應語言變量值均由對應的隸屬度來定義。
?。?)模糊推理
模糊推理包括三個組成部分:大前提、小前提和結論。大前提是多個多維模糊條件語句,構成規則庫;小前提是一個模糊判斷句,稱為事實。以已知的規則庫和輸入變量為依據,基于模糊變換推出新的模糊命題作為結論的過程叫做模糊推理。
?。?)清晰化
清晰化是將模糊推理后得到的模糊集轉換為用作控制的數字值的過程。
4.3 模糊PID控制算法的實現及應用
本文主要討論組態王6.5和S7-300在壓力控制中的應用。在S7-300編程軟件包STEP 7中編寫用戶程序,用模糊PID控制器代替傳統的PID控制器,采用中斷的方式來執行模糊PID控制算法。利用STEP 7實現智能算法選擇適當的PID參數,通過改變PLC中PID模塊中的PID參數實現系統的控制。這樣PLC集成的PID編程模塊語句和智能控制有機地結合起來,提高了系統的控制精度和速度,實現了對系統的有效智能控制。在這里我們以查詢規則表的方式利用模糊控制實現對系統控制參數P、I、D的選擇。由于被控參數水壓變化較快,故本控制系統的采樣時間為5秒。
模糊PID控制算法中的參數由如下方法確定:

。
其中ke,kec分別為偏差e和偏差變化率ec的量化因子; e[sub]H[/sub],e[sub]L[/sub],ec[sub]H[/sub],ec[sub]L[/sub]分別為偏差e和偏差變化率ec的高限值和低限值[3]; 為把語言變量的論域從連續域轉換成有限的離散論域后,離散論域的邊界數值。對于偏差e和偏差變化率,把其物理論域通過量化變換到整個論域{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},即n為6。如果求出的模糊化所得值含有小數,則采用四舍五入的方法對模糊化所得值取整數。
在組態王6.5中對水壓控制過程進行組態監控。設計中,組態王把每一臺下位機看作是一個外部設備,在開發過程中可根據“設備配置向導”的提示方便、快捷地完成連接。在運行期間,組態王通過驅動程序和這些外部設備交換數據,包括采集數據和發送數據指令。每一個驅動程序都是一個COM對象,這種方式使通訊程序和組態王構成一個完整的系統。其與下位機通信原理如圖2所示。本系統采用串口通訊的方式與S7-300PLC建立聯系。
當建立了上位機和PLC之間通訊聯系后,為實現上位機對壓力控制系統的監控功能,需要設置變量并進行變量到PLC的連接。在組態王數據詞典中定義I/O變量,與預先在PLC中定義的中間變量相關聯。在進行完數據變量設置后,便可進行畫面組態,根據系統監控的實際
[align=center]

圖2.組態王與下位機通信原理[/align]
要求,實現最終的上位機監控功能。設計的軟件使用曲線圖來顯示參數的變化并且可以進行實時曲線監測和歷史曲線查詢[4]。
將以上算法應用到實驗中,實驗控制效果如圖3所示,將傳統的PID算法應用到試驗中,實驗效果如圖4所示。從圖3中可以看到水壓值在設定值變化時,很快就可以回到設定值上,而且基本上沒有超調量,極少出現振蕩現象,控制取得很好的效果;而在圖4中,每次設定值發生變化時都出現了較長時間的振蕩。由此可見應用模糊PID控制算法比傳統的PID算法取得更好的效果。
[align=center]

圖3 組態王在線趨勢圖(模糊PID控制)[/align]
[align=center]

圖4 組態王在線趨勢圖(PID控制)[/align]
5 小結
工控機運用組態王與PLC進行通訊,具有實時性好、速度快、可靠性高、運行穩定、調節靈活等優點。系統人機界面友好而直觀,而且具有一定的靈活性,易于擴充。本文結合恒壓供水系統,提出了模糊PID控制算法,采用s7—300PLC編寫了模糊PID程序。利用此算法實時設定P、I、D參數、PLC利用集成的PID模塊快速輸出控制量,利用組態王軟件監控恒壓供水系統的運行情況,并應用于實驗。實驗結果表明該方法在不增加系統任何成本的情況下,實現了系統的智能控制,具有控制精度高,穩定性好的優點,為智能控制算法在工業過程控制中的應用提供了一個新思路。
參考文獻:
[1].北京亞控科技發展有限公司.組態王KINGVIEW 使用手冊[M].北京:2004.
[2].廖常初主編.S7-300/400 PLC應用技術[M].北京:機械工業出版社,2005
[3] .易繼凱,侯媛彬.智能控制技術[M].北京:北京工業大學出版社,1999.
[4]. 吳振綱,陳虎.PLC的人機接口與編程[J].微計算機信息,2005,8-1:21-23.
[5]. 秦健,國海東,譚雪峰 基于組態王的液位PLC控制系統的設計[J].吉林化工學院學報,2006,23-1:56-58.
基于組態王和PLC的模糊PID水壓控制研究