控制系統(tǒng)仿真范文
時(shí)間:2023-04-12 01:27:31
導(dǎo)語(yǔ):如何才能寫好一篇控制系統(tǒng)仿真,這就需要搜集整理更多的資料和文獻(xiàn),歡迎閱讀由公務(wù)員之家整理的十篇范文,供你借鑒。
篇1
1火控雷達(dá)網(wǎng)工作原理
火控雷達(dá)組網(wǎng)系統(tǒng)由M部火控雷達(dá)和一個(gè)融合控制中心組成,每部雷達(dá)的工作狀態(tài)和工作參數(shù)都由融合控制中心進(jìn)行統(tǒng)一控制和協(xié)調(diào),各部火控雷達(dá)通過(guò)通信鏈路實(shí)現(xiàn)與融合控制中心之間的信息傳遞,以此保證多雷達(dá)間的數(shù)據(jù)共享。任一時(shí)刻只有一部雷達(dá)處于輻射工作狀態(tài),其余雷達(dá)進(jìn)行靜默跟蹤。當(dāng)此雷達(dá)停止工作后,由融合控制中心選擇另一部雷達(dá)繼續(xù)工作[6]。如圖1所示,假設(shè)在k時(shí)刻火控雷達(dá)(jj=1,2,…,M)處于間歇輻射工作狀態(tài),其余雷達(dá)處于靜默跟蹤狀態(tài)。雷達(dá)j將其對(duì)目標(biāo)的實(shí)時(shí)跟蹤測(cè)量數(shù)據(jù)送到數(shù)據(jù)融合控制,融合控制中心根據(jù)雷達(dá)的測(cè)量數(shù)據(jù)對(duì)目標(biāo)的運(yùn)動(dòng)軌跡進(jìn)行濾波和預(yù)測(cè)。處理后的數(shù)據(jù)一方面送到相關(guān)武器系統(tǒng),供火力打擊使用;另一方面送到其余處于間歇狀態(tài)的雷達(dá),供其天線調(diào)整以完成對(duì)目標(biāo)的靜默跟蹤。跟蹤精度評(píng)估環(huán)節(jié)和低截獲性能評(píng)估環(huán)節(jié)則分別對(duì)當(dāng)前的跟蹤精度和當(dāng)前的低截獲性能進(jìn)行計(jì)算和評(píng)估。通過(guò)對(duì)當(dāng)前跟蹤精度的計(jì)算,采用自適應(yīng)脈沖間隔策略選擇下一時(shí)刻的最優(yōu)脈沖間隔,間歇輻射控制環(huán)節(jié)根據(jù)該參數(shù)控制雷達(dá)j的脈沖發(fā)射間隔。同時(shí),通過(guò)對(duì)雷達(dá)低截獲性能的評(píng)估控制交替選通信號(hào),以選擇下一時(shí)刻工作的雷達(dá)。當(dāng)雷達(dá)j停止工作后,通過(guò)交替選通信號(hào)的控制選擇雷達(dá)j+1間歇工作以繼續(xù)跟蹤目標(biāo)。以此循環(huán),各雷達(dá)在融合控制的協(xié)同控制下,共同完成對(duì)目標(biāo)的交替間歇式跟蹤。
2作戰(zhàn)場(chǎng)景想定
以3部火控雷達(dá)網(wǎng)為例構(gòu)建仿真系統(tǒng),想定場(chǎng)景如圖2所示。防御方的防空系統(tǒng)由警戒雷達(dá)、火控雷達(dá)和防空武器等組成,進(jìn)攻方的戰(zhàn)斗機(jī)對(duì)防御方的雷達(dá)進(jìn)行探測(cè)定位。當(dāng)戰(zhàn)斗機(jī)處于防空系統(tǒng)中警戒雷達(dá)的探測(cè)范圍內(nèi),而處于火控雷達(dá)探測(cè)范圍之外時(shí),火控雷達(dá)不工作,由警戒雷達(dá)對(duì)戰(zhàn)斗機(jī)進(jìn)行前期的警戒跟蹤,并為火控雷達(dá)提供偵察機(jī)的粗略位置信息。當(dāng)戰(zhàn)斗機(jī)進(jìn)入防空系統(tǒng)中火控雷達(dá)的探測(cè)范圍時(shí),火控雷達(dá)突然開機(jī)工作,依據(jù)警戒雷達(dá)提供的偵察機(jī)位置信息,在較短時(shí)間內(nèi)完成對(duì)戰(zhàn)斗機(jī)的穩(wěn)定跟蹤,同時(shí)為防空武器提供精確的戰(zhàn)斗機(jī)位置信息,供其火力攔截?;鹂乩走_(dá)開機(jī)工作之后,戰(zhàn)斗機(jī)的偵察系統(tǒng)在告警系統(tǒng)的觸發(fā)下迅速對(duì)火控雷達(dá)信號(hào)進(jìn)行搜索、識(shí)別、截獲和分析,以獲得火控雷達(dá)各項(xiàng)工作參數(shù),對(duì)雷達(dá)進(jìn)行定位,進(jìn)而發(fā)射反輻射導(dǎo)彈對(duì)雷達(dá)進(jìn)行火力摧毀。為了避免防空火控雷達(dá)信號(hào)在短時(shí)間內(nèi)被戰(zhàn)斗機(jī)截獲,融合控制中心控制火控雷達(dá)網(wǎng),采用交替間歇輻射的工作方式完成對(duì)目標(biāo)的連續(xù)跟蹤。在保證火控雷達(dá)對(duì)偵察機(jī)精確跟蹤的同時(shí),盡量延長(zhǎng)偵察機(jī)對(duì)雷達(dá)定位所需的時(shí)間,從而完成防空武器系統(tǒng)對(duì)偵察機(jī)的有效打擊。
3仿真系統(tǒng)設(shè)計(jì)
火控雷達(dá)網(wǎng)間歇式目標(biāo)跟蹤原理如圖3所示。具體工作過(guò)程為:由目標(biāo)模塊產(chǎn)生目標(biāo)模擬運(yùn)動(dòng)航跡,融合控制中心模塊通過(guò)雷達(dá)工作參數(shù)的設(shè)定來(lái)選擇處于工作狀態(tài)的雷達(dá),并通過(guò)對(duì)脈沖重復(fù)周期的選擇來(lái)控制雷達(dá)的輻射狀態(tài)。雷達(dá)進(jìn)行間歇工作獲得目標(biāo)測(cè)量數(shù)據(jù),將測(cè)量數(shù)據(jù)傳送到融合控制中心模塊進(jìn)行數(shù)據(jù)融合、跟蹤濾波等處理,并根據(jù)處理結(jié)果選擇下一時(shí)刻雷達(dá)的工作參數(shù),以控制雷達(dá)工作,如此循環(huán)進(jìn)行,交替選擇組網(wǎng)系統(tǒng)內(nèi)的火控雷達(dá)進(jìn)行間歇工作,以實(shí)現(xiàn)對(duì)目標(biāo)的連續(xù)跟蹤。同時(shí),將處理結(jié)果傳送到效能評(píng)估模塊,效能評(píng)估模塊將這些數(shù)據(jù)和來(lái)自目標(biāo)模塊的雷達(dá)信號(hào)截獲判定、目標(biāo)真實(shí)航跡等數(shù)據(jù)進(jìn)行一系列處理,對(duì)系統(tǒng)的整體性能進(jìn)行評(píng)估。融合控制成員對(duì)組網(wǎng)雷達(dá)融合控制中心的功能進(jìn)行仿真。訂購(gòu)雷達(dá)成員生成的量測(cè)數(shù)據(jù)信息,通過(guò)融合處理,生成目標(biāo)的位置信息和雷達(dá)網(wǎng)跟蹤精度,并對(duì)雷達(dá)下一個(gè)周期的工作參數(shù)進(jìn)行調(diào)整,向雷達(dá)成員公布目標(biāo)位置、脈沖寬度、工作頻率、開關(guān)機(jī)信號(hào)、雷達(dá)信號(hào)形式等。對(duì)融合控制成員進(jìn)行類劃分,將具有相同屬性的方法提取出來(lái),并對(duì)類與類之間的關(guān)系進(jìn)行分析,可分為以下8類。RTI基類:此類主要提供運(yùn)行支撐環(huán)境(run-timeinfrastructure,RTI)的基本服務(wù),包括聯(lián)邦管理、聲明管理、對(duì)象管理、時(shí)間管理、所有權(quán)管理和數(shù)據(jù)分發(fā)管理等功能。聯(lián)邦管理是指對(duì)一個(gè)聯(lián)邦執(zhí)行的創(chuàng)建、動(dòng)態(tài)控制、修改和刪除的過(guò)程。聲明管理是為聯(lián)邦成員提供類層次上的表達(dá)(公布或訂購(gòu))機(jī)制,在HLA中,聯(lián)邦成員通過(guò)聲明管理服務(wù)向聯(lián)邦表明自己可以公布或需要訂購(gòu)的對(duì)象類和交互類[7]。對(duì)象管理是在聲明管理的基礎(chǔ)上,實(shí)現(xiàn)對(duì)象實(shí)例的注冊(cè)/發(fā)現(xiàn)、屬性值的更新/反射、交互實(shí)例的發(fā)送/接收以及對(duì)象實(shí)例的刪除/移走等功能。時(shí)間管理的主要任務(wù)是使仿真世界中事件發(fā)生的順序與真實(shí)世界中事件發(fā)生的順序一致。仿真運(yùn)行過(guò)程中,聯(lián)邦成員和RTI將利用所有權(quán)管理服務(wù)來(lái)轉(zhuǎn)移實(shí)例屬性的所有權(quán),在聯(lián)邦執(zhí)行生命周期的任一時(shí)刻,一個(gè)實(shí)例屬性最多只能被一個(gè)聯(lián)邦成員擁有,只有唯一擁有實(shí)例屬性所有權(quán)的聯(lián)邦成員才有權(quán)更新該實(shí)例屬性的值[8-10]。數(shù)據(jù)分發(fā)管理是在實(shí)例屬性層次上增強(qiáng)聯(lián)邦成員精簡(jiǎn)數(shù)據(jù)需求的能力,減少仿真運(yùn)行過(guò)程中無(wú)用數(shù)據(jù)的傳輸和接收,提高仿真運(yùn)行的效率。RTI接口類:此類是RTI基類的派生類,負(fù)責(zé)實(shí)現(xiàn)聯(lián)邦的具體創(chuàng)建工作,成員通過(guò)回調(diào)接口函數(shù),使用RTI提供的服務(wù)。RTI接口的工作主要在仿真線程中進(jìn)行,其中主要包括創(chuàng)建并加邦、聲明公布/訂購(gòu)關(guān)系、注冊(cè)對(duì)象實(shí)例、請(qǐng)求時(shí)間推進(jìn)、更新和反射對(duì)象屬性值、發(fā)送和接收交互、退出聯(lián)邦等。融合控制類:實(shí)現(xiàn)了數(shù)據(jù)的融合處理和雷達(dá)工作參數(shù)的控制。如對(duì)3部雷達(dá)的測(cè)量數(shù)據(jù)進(jìn)行融合,估計(jì)偵察機(jī)對(duì)雷達(dá)信號(hào)的截獲概率和當(dāng)前的目標(biāo)跟蹤精度,計(jì)算出下一時(shí)刻的雷達(dá)最優(yōu)脈沖間隔,控制雷達(dá)的工作時(shí)間。數(shù)據(jù)公布類:實(shí)現(xiàn)了對(duì)數(shù)據(jù)的公布,即表明要公布的數(shù)據(jù)類型、數(shù)據(jù)長(zhǎng)度等,并對(duì)數(shù)據(jù)進(jìn)行更新等。數(shù)據(jù)訂購(gòu)類:實(shí)現(xiàn)了對(duì)數(shù)據(jù)的訂購(gòu),即表明要訂購(gòu)的對(duì)象、數(shù)據(jù)類型、數(shù)據(jù)長(zhǎng)度等,并對(duì)數(shù)據(jù)進(jìn)行更新等。文件管理類:實(shí)現(xiàn)了對(duì)數(shù)據(jù)的記錄,負(fù)責(zé)創(chuàng)建文件,將數(shù)據(jù)寫入文件,完成讀取文件、修改文件、格式轉(zhuǎn)換和刪除文件等功能。顯示類:實(shí)現(xiàn)了對(duì)數(shù)據(jù)的實(shí)時(shí)顯示,如目標(biāo)三坐標(biāo)位置、斜距、俯仰角、方位角、雷達(dá)脈沖間隔和系統(tǒng)工作時(shí)間等。定時(shí)器類:實(shí)現(xiàn)了數(shù)據(jù)處理和更新過(guò)程中的定時(shí)功能,如啟動(dòng)時(shí)鐘、停止時(shí)鐘等,負(fù)責(zé)仿真進(jìn)程的開始和停止。順序圖主要描述系統(tǒng)各組成部分之間交互的次序,展示了對(duì)象之間的動(dòng)態(tài)協(xié)作關(guān)系[11]。使用順序圖,可以描述執(zhí)行特定用例,會(huì)觸發(fā)哪些交互,以及這些交互以何種次序發(fā)生。融合控制成員從整個(gè)仿真系統(tǒng)的啟動(dòng)開始,工作流程如下:(1)運(yùn)行融合控制程序,點(diǎn)擊“加邦”,通過(guò)調(diào)用RTI接口函數(shù)使用RTI的聲明管理、對(duì)象管理函數(shù),將該成員加入到仿真系統(tǒng)中,等待開始仿真的指令。(2)開始仿真,進(jìn)入主線程,通過(guò)調(diào)用RTI接口函數(shù)使用RTI的數(shù)據(jù)分發(fā)管理服務(wù),訂購(gòu)其他聯(lián)邦成員的數(shù)據(jù)。(3)對(duì)訂購(gòu)的數(shù)據(jù)進(jìn)行融合處理,通過(guò)調(diào)用RTI接口函數(shù)使用RTI的數(shù)據(jù)分發(fā)管理服務(wù),把數(shù)據(jù)公布給其他聯(lián)邦成員。(4)實(shí)時(shí)顯示數(shù)據(jù),并將相關(guān)數(shù)據(jù)進(jìn)行記錄,寫入文本文檔。(5)收到停止仿真命令后停止仿真進(jìn)程,融合控制成員退出聯(lián)邦。根據(jù)以上的操作流程創(chuàng)建順序圖如圖4所示,該圖顯示了仿真流程融合控制成員運(yùn)行的動(dòng)態(tài)過(guò)程。
4仿真分析
通?;鹂乩走_(dá)對(duì)目標(biāo)的跟蹤距離相對(duì)較近,對(duì)于高速運(yùn)動(dòng)的反輻射導(dǎo)彈載機(jī)來(lái)說(shuō),在有限的跟蹤距離內(nèi),持續(xù)跟蹤時(shí)間不會(huì)太長(zhǎng)。因此,在仿真過(guò)程中設(shè)定目標(biāo)跟蹤時(shí)間為t=100s。將開發(fā)的軟件加入到火控雷達(dá)網(wǎng)仿真聯(lián)邦中,在仿真過(guò)程中存儲(chǔ)對(duì)目標(biāo)的測(cè)量值和濾波值進(jìn)行存儲(chǔ),并實(shí)時(shí)計(jì)算出3部雷達(dá)的截獲概率,都保存到文本文檔中。仿真結(jié)束后,調(diào)用Matlab讀取存儲(chǔ)的文本,畫出目標(biāo)的測(cè)量軌跡和濾波軌跡,如圖5所示??梢钥闯?,組網(wǎng)系統(tǒng)能夠準(zhǔn)確地對(duì)目標(biāo)進(jìn)行跟蹤。3部雷達(dá)的截獲概率如圖6所示。由圖可知,組網(wǎng)系統(tǒng)在有效的跟蹤目標(biāo)時(shí),能夠延長(zhǎng)雷達(dá)被敵方偵察系統(tǒng)截獲的時(shí)間,提高了先敵發(fā)現(xiàn)目標(biāo)的概率,給指揮高炮對(duì)敵方目標(biāo)進(jìn)行打擊提供了充足的時(shí)間。
5結(jié)束語(yǔ)
篇2
Abstract: The control system of constant pressure water supply system is complex and changeful, and the control parameters measurement is not accurate. The paper puts forward a PID control and adaptive fuzzy control with an adaptive fuzzy PID controller application for constant pressure water supply system, with the help of PID parameters on-line self-tuning fuzzy PID parameters, real-time modification, through Matlab simulation experiment system in in the running process is always in optimal condition. Adaptive fuzzy PID controller used in constant-pressure water supply system can not only improve the performance of the control system, and the maximum energy saving water supply system.
關(guān)鍵詞: 自適應(yīng)模糊控制;PID控制;恒壓供水;系統(tǒng)仿真
Key words: adaptive fuzzy control;PID control;constant pressure water supply;system simulation
中圖分類號(hào):TP273 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1006-4311(2014)09-0021-03
0 引言
隨著生活品質(zhì)的提高,人們對(duì)生活飲用水的要求也在不斷地提高,恒壓供水系統(tǒng)在多層及高層住宅用水和消防供水中得到了越來(lái)越廣泛地應(yīng)用?,F(xiàn)代的恒壓供水系統(tǒng)主要由水泵、變頻器及調(diào)節(jié)環(huán)節(jié)構(gòu)成,整個(gè)控制系統(tǒng)控制復(fù)雜多變,控制參數(shù)一般不能精確測(cè)定。水泵作為一種典型的非線性負(fù)載,在運(yùn)行的過(guò)程中其旋轉(zhuǎn)的速度與給定的信號(hào)之間具有滯后、慣性較大的特點(diǎn)。
如果采用常規(guī)的PID控制,在系統(tǒng)運(yùn)行過(guò)程中因?yàn)椴荒芸煽康卣{(diào)整PID參數(shù)而無(wú)法實(shí)現(xiàn)管道壓力精確恒定控制,而且響應(yīng)速度比較慢。由于模糊控制不會(huì)過(guò)分依賴數(shù)學(xué)模型,因此,不需建立精確的過(guò)程模型。由于其不僅可以將人們的經(jīng)驗(yàn)轉(zhuǎn)化為控制措施,還會(huì)根據(jù)那些時(shí)變的、非線性的和滯后的大慣性對(duì)象而保持良好的動(dòng)態(tài)特性。
本文針對(duì)上述原因提出了模糊控制系統(tǒng)與傳統(tǒng)PID控制相結(jié)合而設(shè)計(jì)了一種自適應(yīng)模糊PID控制器。通過(guò)PID參數(shù)的在線模糊自整定能夠?qū)ID參數(shù)進(jìn)行實(shí)時(shí)修改,從而確保了運(yùn)行過(guò)程中的系統(tǒng)始終處于優(yōu)化狀態(tài),不僅提高了系統(tǒng)的控制性能,還能夠最大限度的節(jié)約供水系統(tǒng)能源。
1 自適應(yīng)模糊PID的概念
根據(jù)PID控制器的Kp、Ki、Kd的三個(gè)參數(shù)與偏差e、偏差的變化率ec之間的模糊關(guān)系,在運(yùn)行時(shí)不斷檢測(cè)e及ec,通過(guò)事先確定的關(guān)系,利用模糊推理的方法,在線自動(dòng)修改控制器PID參數(shù)。因?yàn)閰?shù)可自動(dòng)調(diào)整,所以自適應(yīng)模糊PID控制能解決系統(tǒng)的非線性問(wèn)題。由于常規(guī)PID只能夠利用一組固定的參數(shù)進(jìn)行控制,因此,將模糊推理引入控制系統(tǒng)并在PID初值的基礎(chǔ)上通過(guò)增加修正參數(shù)進(jìn)行整定,從而對(duì)系統(tǒng)的動(dòng)態(tài)性能進(jìn)行改善。
2 自適應(yīng)模糊PID控制器設(shè)計(jì)
2.1 恒壓供水系統(tǒng)數(shù)學(xué)模型的建立
在供水系統(tǒng)的二級(jí)泵房中,可以將水泵從初始狀態(tài)開始向管網(wǎng)供水的變頻調(diào)速恒壓控制系統(tǒng)分為零壓過(guò)程和壓力上升兩個(gè)過(guò)程。在零壓過(guò)程中,由于經(jīng)處理的水由水泵從清水池送到管網(wǎng)中,因此可認(rèn)為壓力基本保持零,屬于純滯后過(guò)程;由于在壓力上升過(guò)程中,水泵逐漸用水充滿整個(gè)管理,從而壓力不斷增加并達(dá)到穩(wěn)定,因此是一個(gè)具有慣性的一階環(huán)節(jié)。因此,可將水泵管道系統(tǒng)的數(shù)學(xué)模型等效為帶有純滯后環(huán)節(jié)的一階慣性環(huán)節(jié),而系統(tǒng)中繼電器控制轉(zhuǎn)換、壓力檢測(cè)等其他控制和檢測(cè)環(huán)節(jié)的時(shí)間常數(shù)和滯后時(shí)間與供水系統(tǒng)中水壓上升或下降的時(shí)間常數(shù)和滯后時(shí)間相比可以忽略不計(jì),由此得到供水系統(tǒng)的近似
模型:
G(s)=■e■
式中:K——系統(tǒng)的總增益
T——系統(tǒng)的慣性時(shí)間常數(shù)
τ——系統(tǒng)的滯后時(shí)間
需要采用離線開環(huán)階躍響應(yīng)的方法確定參數(shù)K、T、τ,其具體方法為:在開環(huán)控制系統(tǒng)中由控制器輸出一個(gè)合適幅值的階躍響應(yīng)信號(hào),從而促使水泵轉(zhuǎn)速提到一定幅值,記錄水壓的整個(gè)變化過(guò)程,然后根據(jù)記錄的輸入輸出數(shù)據(jù)進(jìn)行辨認(rèn)識(shí)別。
本系統(tǒng)的辨識(shí)結(jié)果為K=0.95,T=9.8,τ=2.55s,由此可得到供水控制系統(tǒng)的近似模型:
G(s)=■e■
2.2 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)
圖1為包含自學(xué)環(huán)節(jié)功能的參數(shù)自整定模糊PID控制系統(tǒng)結(jié)構(gòu)框圖。PID控制器通過(guò)自學(xué)功能的模糊控制器能夠進(jìn)行在線參數(shù)的自整定。
2.3 參數(shù)自整定原則
PID參數(shù)模糊自整定就是找出PID控制的三個(gè)參數(shù)與偏差e及偏差的變化ec間的模糊關(guān)系,通過(guò)不斷檢測(cè)系統(tǒng)運(yùn)行中的e及ec,再根據(jù)模糊控制的原則來(lái)對(duì)三個(gè)參數(shù)進(jìn)行在線的修改,從而滿足不同e及ec時(shí)對(duì)控制參數(shù)的不同要求,最終使被控制的對(duì)象具有良好的動(dòng)態(tài)和靜態(tài)性能,模糊PID控制系統(tǒng)原理如圖2所示。
模糊控制器以偏差和偏差變化率作為輸入,修正參數(shù)ΔKp,ΔKi,ΔKd為輸出,則PID控制器輸出的參數(shù)Kp,Ki,Kd可按公式1-3計(jì)算,式中K'p,K'i,K'd為預(yù)整定值。
Kp=K'p+ΔKp(1)
Ki=K'i+ΔKi(2)
Kd=K'd+ΔKd(3)
參數(shù)模糊自整定機(jī)構(gòu)可以視為三個(gè)雙輸入單輸出的模糊控制器(如圖2所示),其輸入量采用壓力偏差e和偏差變化率ec,參數(shù)自整定機(jī)構(gòu)采用增量型調(diào)整原理,輸出變量為Kp、Ki和Kd。參數(shù)模糊自整定機(jī)構(gòu)調(diào)整過(guò)程如圖3所示。
2.4 模糊控制規(guī)則表
模糊控制器輸入輸出變量的模糊子集分別為E,Ec,ΔKp,ΔKi,ΔKd,各變量語(yǔ)言值為:{負(fù)大,負(fù)中,負(fù)小,零,正小,正中,正大},記為{NB,NM,NS,ZO,PS,PM,PB},隸屬函數(shù)均采用靈敏度強(qiáng)的三角函數(shù),模糊蘊(yùn)涵關(guān)系運(yùn)算采用最小運(yùn)算法(Mamdan),去模糊化采用重心法。
根據(jù)專家經(jīng)驗(yàn),e和ec的變化范圍為(-0.5,+0.5),模糊論域?yàn)閧-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}。ΔKp,ΔKi和ΔKd的基本域?yàn)椋?0.3,0.3),模糊論域?yàn)閧-0.3,-0.25,-0.2,-0.15,-0.1,-0.05,0,0.05,0.2,0.25,0.3},比例因子Ke為12,量化因子Kec為1,通過(guò)模糊推理及試驗(yàn)修正,得出ΔKp,ΔKi,ΔKd的模糊規(guī)則如表1-表3所示。
對(duì)于控制規(guī)則 IF EiAND ECi THEN Kp is Ui(i=1,2,…49)其模糊蘊(yùn)含采用最小值法uU'(KP)=uE■(e)∧u■(ec)∧u■(KP);
模糊合成采用最大法,即最終結(jié)論U′是由綜合■,
■,…■得到的,推理法則為uU′(KP)=u■(KP)∨u■(KP)∨…∨u■(KP);在一次采樣時(shí)刻,KP的值可由模糊輸出U′的重心確定。
{Ei,ECi}P=■
式中u■(K■)(j=1,2,…49)是KP的隸屬度。同理可以得到輸出量KI,KD。
KP=KP0+{Ei,ECi}P
KI=KI0+{Ei,ECi}I
KD=KD0+{Ei,ECi}D
其中{Ei,ECi}P、{Ei,ECi}I、{Ei,ECi}D是模糊推理的結(jié)果,即參數(shù)的校正量。而KP0,KI0,KD0為參數(shù)設(shè)置初值。
3 實(shí)驗(yàn)仿真
本文在采用對(duì)三臺(tái)供水泵、兩臺(tái)抽真空泵及兩臺(tái)反沖泵進(jìn)行仿真,仿真結(jié)果如下:圖4為采用常規(guī)PID同步控制算法下系統(tǒng)響應(yīng)曲線,圖5為采用模糊PID同步控制算法下系統(tǒng)響應(yīng)曲線。通過(guò)對(duì)兩種仿真結(jié)果進(jìn)行比較后發(fā)現(xiàn),與常規(guī)PID性能相比,系統(tǒng)采用模糊PID方法具有更好的同步性能和抗干擾能力。
4 結(jié)論
本文結(jié)合恒壓供水系統(tǒng)中水泵控制的特點(diǎn),設(shè)計(jì)了一種自適應(yīng)模糊PID控制器,在管道壓力較大偏差范圍內(nèi)采用模糊推理控制,根據(jù)e、ec對(duì)PID參數(shù)進(jìn)行適時(shí)調(diào)整,并在壓力偏差范圍內(nèi)采用PID精確控制輸出,從而綜合了模糊控制和PID控制的優(yōu)點(diǎn)。仿真結(jié)果表明,這種自適應(yīng)模糊PID控制器具有動(dòng)態(tài)性能好、穩(wěn)態(tài)精度高以及適應(yīng)參數(shù)變化能力強(qiáng)等特點(diǎn),該控制器模型規(guī)則明確,實(shí)時(shí)計(jì)算工作量小,如果采用本系統(tǒng)進(jìn)行高樓恒壓供水完全可以替代現(xiàn)有的恒壓供水裝置,大大提高了恒壓供水系統(tǒng)中管道壓力的恒定性,節(jié)能非常明顯,極具推廣和應(yīng)用價(jià)值。
參考文獻(xiàn):
[1]楊凌云.PID調(diào)節(jié)器在恒壓供水系統(tǒng)中的應(yīng)用[J].微計(jì)算機(jī)信息,1996(5).
[2]劉金錕.先進(jìn)PID控制及Matlab仿真[M].北京:機(jī)械工業(yè)出版社,2005.
篇3
【關(guān)鍵詞】缸內(nèi)直噴;電控系統(tǒng);硬件模塊
一、引言
建立汽車懸架的動(dòng)力學(xué)模型是進(jìn)行整車性能分析和系統(tǒng)設(shè)計(jì)的基礎(chǔ)。建立模型基礎(chǔ)就是利用外界物理參數(shù)描述輸入,系統(tǒng)本身和系統(tǒng)輸出之間的關(guān)系。懸架系統(tǒng)是一個(gè)復(fù)雜的多自由度“質(zhì)量—?jiǎng)偠取枘帷闭駝?dòng)系統(tǒng),理論上講建立的模型自由度越多越接近汽車的時(shí)間情況,但對(duì)其動(dòng)力學(xué)特性進(jìn)行精準(zhǔn)的描述和分析是非常困難的。
目前比較成熟的整車模型主要有三種:
(1)兩自由度1/4車輛模型;
(2)四自由度1/2車輛模型;
(3)七(八、九)自由度正常模型。1/4車輛模型雖然沒有包括汽車的整體幾何信息,也無(wú)法用它來(lái)研究汽車俯仰角振動(dòng)及側(cè)傾角振動(dòng),但它包含了實(shí)際問(wèn)題中的絕大部分基本特征,如負(fù)載變化和懸架系統(tǒng)受力的信息等,所以可以用來(lái)研究不平路面激勵(lì)引起車體的垂直振動(dòng)。
二、1/4車輛懸架模型的建立
由于1/4車輛模型結(jié)構(gòu)簡(jiǎn)單,又包含了汽車平順性分析的主要特征,因此在研究電控空氣懸架控制策略中被廣泛應(yīng)用。在本文中決定采用兩自由度1/4車輛模型,如圖1所示。
圖1 兩自由度1/4車輛懸架模型
根據(jù)牛頓第二定律,可以列出該模型動(dòng)力學(xué)微分方程:
式中M為簧載質(zhì)量,m為非簧載質(zhì)量;Kt為輪胎徑向剛度系數(shù);Ks為懸架剛度系數(shù);Cs為減振器阻尼系數(shù);xs、xt、xr分別代表簧載質(zhì)量、非簧載質(zhì)量及路面激勵(lì)的位移量。
圖2 兩自由度車輛動(dòng)力學(xué)模型
根據(jù)二自由度的車輛的動(dòng)力學(xué)微分方程,可以利用MATLAB/SIMULINK仿真軟件建立系統(tǒng)動(dòng)力學(xué)模型,系統(tǒng)動(dòng)力學(xué)模型如圖2所示。在模型中,接口in1和in2分別代表懸架剛度的實(shí)時(shí)變化和路面對(duì)系統(tǒng)的隨機(jī)干擾,out1則代表簧載質(zhì)量垂直方向加速度響應(yīng)。
三、1/4車輛模型仿真及結(jié)果分析
本文采用亞星牌YBL6891H大型客車滿載時(shí)的基本數(shù)據(jù),所設(shè)定的約束條件是懸架的動(dòng)行程,懸架的最大允許動(dòng)行程為±10mm,由此可以得到對(duì)簧載質(zhì)量加速度及動(dòng)載荷的分析對(duì)比。在B級(jí)隨機(jī)路面上對(duì)車速50Km/h以及C級(jí)隨機(jī)路面時(shí)速80Km/h兩種工況下對(duì)比分析,然后計(jì)算出簧載質(zhì)量加速度以及動(dòng)載荷的均方根值和峰值,通過(guò)對(duì)比得出模糊控制算法在提高平順性方面的效果。
仿真圖形如圖3和圖4所示,加入模糊控制算法后對(duì)空氣懸架的簧載質(zhì)量加速度衰減起了一定作用,對(duì)簧載加速度的分析可以通過(guò)表1來(lái)做進(jìn)一步說(shuō)明。
表1給出了兩種懸架系統(tǒng)簧載質(zhì)量加速度均方根值和峰值??梢钥闯觯谛旭偣r變化的情況下仍然有較好的控制效果,對(duì)于外界干擾的變化具有良好的適應(yīng)能力。
根據(jù)動(dòng)載荷仿真圖形5和6可知,添加模糊控制算法后對(duì)空氣懸架的動(dòng)載荷衰減也起了一定作用,對(duì)動(dòng)載荷的分析可以通過(guò)表2來(lái)做進(jìn)一步分析說(shuō)明。
表2給出了兩種懸架系統(tǒng)懸架動(dòng)載荷的均方根值和峰值??梢钥闯?,在引入模糊控制算法后,輪胎對(duì)地面的破壞有所降低,在行駛工況變化的情況下仍然有較好的控制效果。
在懸架的的仿真分析過(guò)程中,由于對(duì)懸架的動(dòng)行程進(jìn)行了約束,因此被動(dòng)空氣懸架和模糊控制空氣懸架的動(dòng)行程沒有太大的差別。但是通過(guò)對(duì)簧載質(zhì)量加速度和動(dòng)載荷的分析可知,加入模糊控制算法對(duì)簧載質(zhì)量加速度和動(dòng)載荷都起到了衰減作用。
四、結(jié)論
本文根據(jù)模糊控制原理對(duì)控制器進(jìn)行了設(shè)計(jì),并利用Matlab/Simulink建立了1/4半主動(dòng)空氣懸架車輛模型及隨機(jī)路面模型。根據(jù)仿真結(jié)果分析可知,在以動(dòng)行程為約束的條件下,空氣懸架采用了模糊控制算法后簧載質(zhì)量垂直加速度和懸架動(dòng)載荷均有下降,減少了對(duì)路面的損壞,同時(shí)提高了車輛行駛平順性,表明模糊控制具有良好的效果。
參考文獻(xiàn)
[1]張德豐著.MATLAB/Simulink建模與仿真[M].北京:電子工業(yè)出版社,2009.
[2]周品,趙新芬著.MATLAB數(shù)學(xué)建模與仿真[M].北京:國(guó)防工業(yè)出版社,2009.
[3]袁士杰著.多剛體系統(tǒng)動(dòng)力學(xué)[M].北京:北京理工大學(xué)出版社,1992.
[4]Dave Crolla,喻凡著.車輛動(dòng)力學(xué)及其控制[M].北京:人民交通出版社,2004.
篇4
【關(guān)鍵詞】MATLAB MCGS 仿真 動(dòng)態(tài)數(shù)據(jù)交換
本篇文章使用MCGS組態(tài)監(jiān)控軟件系統(tǒng)來(lái)操控薄膜厚度,實(shí)時(shí)收集數(shù)據(jù)信息,設(shè)置硬件的接入點(diǎn),使人們和機(jī)器能直接對(duì)話,并且用可動(dòng)畫面的形式來(lái)表現(xiàn)操控系統(tǒng)的實(shí)時(shí)情況。這個(gè)時(shí)候,把MATLAB作為在后臺(tái)運(yùn)轉(zhuǎn)的平臺(tái),達(dá)到以Back Propagation多層前饋網(wǎng)絡(luò)為基礎(chǔ)整定比例-積分-微分控制器(PID)以及進(jìn)行彎曲線路創(chuàng)作的功效。使用者使用DDE軟件進(jìn)行雙方的信息交換,感受不同角度、不同層次、不同范圍觀看仿真流程的可觀看的人員和機(jī)器的交流過(guò)程。
1 薄膜厚度操作體系的組成部分
1.1 MATLAB中的PID控制器設(shè)計(jì)
薄膜厚度控制系統(tǒng)是由現(xiàn)場(chǎng)設(shè)備和上位機(jī)這兩個(gè)設(shè)備組成的:現(xiàn)場(chǎng)設(shè)備中的可編程邏輯控制器對(duì)薄膜厚度施行收集,并且對(duì)控制數(shù)量進(jìn)行輸出,同時(shí)對(duì)加熱控紐的功率進(jìn)行改變來(lái)實(shí)現(xiàn)對(duì)薄膜厚度的掌控,再將厚度檢測(cè)儀器檢測(cè)到的薄膜厚度反饋到上位機(jī)器操控體系;上位機(jī)器的操控體系是以MCGS為基礎(chǔ)進(jìn)行設(shè)計(jì)的,有著強(qiáng)大的功能,例如對(duì)硬件接入點(diǎn)進(jìn)行設(shè)計(jì),對(duì)信息進(jìn)行動(dòng)態(tài)搜集,實(shí)機(jī)人員和機(jī)器的交流,對(duì)信息數(shù)據(jù)進(jìn)行登記等,能夠模仿操控體系實(shí)時(shí)的運(yùn)行狀態(tài),把所有變化數(shù)據(jù)的信息實(shí)時(shí)地展現(xiàn)出來(lái)。為了達(dá)到以Back Propagation多層前饋網(wǎng)絡(luò)為基礎(chǔ)整定比例-積分-微分控制器(PID)以及曲線制作的功效,在后臺(tái)運(yùn)轉(zhuǎn)的信息操作模塊以MATLAB為開發(fā)平臺(tái)。使用Dynamic data exchange通信協(xié)議,把MCGS里需要進(jìn)行測(cè)算的信息轉(zhuǎn)送至MATLAB中,由MATLAB對(duì)這些數(shù)據(jù)進(jìn)行處置,然后將最后的處置結(jié)果發(fā)送回MCGS,這樣,可以提升MCGS操控PLC的本領(lǐng)。
1.2 MCGS組態(tài)軟件的設(shè)計(jì)
MCGS軟件研究出搜集相關(guān)數(shù)據(jù)信息,對(duì)這些數(shù)據(jù)信息進(jìn)行處置并且對(duì)這個(gè)過(guò)程進(jìn)行操控的相關(guān)計(jì)劃和工具,通過(guò)這些工具,能夠?yàn)槭褂谜咛峁┫嚓P(guān)動(dòng)畫展示和報(bào)表等內(nèi)容,使用者通過(guò)使用這些工具可以完成相關(guān)的工程操作。
在MCGS組態(tài)軟件操控的窗口中,依據(jù)使用需要對(duì)“系統(tǒng)管理”、主要用戶界面、“系統(tǒng)設(shè)置”等功能進(jìn)行了處理,點(diǎn)擊不同的菜單就能夠進(jìn)入到對(duì)應(yīng)的操控頁(yè)面。MCGS系統(tǒng)窗口能夠維系及驅(qū)動(dòng)外部裝置,同時(shí),可以在這里面加入外部硬件工具和模擬工具如PLC。在對(duì)通道進(jìn)行策劃時(shí),可以把A /D、D /A通道和動(dòng)態(tài)信息庫(kù)中的信息對(duì)象對(duì)應(yīng)結(jié)合起來(lái)。在使用者窗口模式中,設(shè)置了主要頁(yè)面、厚度自行調(diào)整頁(yè)面、體系配置頁(yè)面等操控頁(yè)面。
以上的頁(yè)面,都是在MCGS的使用者小窗中使用相關(guān)的測(cè)繪模具對(duì)監(jiān)控平臺(tái)體系進(jìn)行設(shè)計(jì)。MCGS可觀看圖像的功能能夠便捷地構(gòu)造要策劃的所有頁(yè)面,再將動(dòng)畫相關(guān)聯(lián),就是構(gòu)造頁(yè)面畫面對(duì)象和動(dòng)態(tài)信息庫(kù)的信息變量之間的聯(lián)系。在這個(gè)窗口中需要設(shè)置一些數(shù)值可變的量,主要用于信息搜集、操作、輸出操控、動(dòng)畫連合和裝備驅(qū)動(dòng),這些可變的信息量是組成動(dòng)態(tài)信息庫(kù)的主要組成部分。
1.3 MATLAB和MCGS的DDE連接
MCGS提供了一個(gè)和另外一個(gè)應(yīng)用程序?qū)嵤┬畔⒒Q的方式,這就是動(dòng)態(tài)數(shù)據(jù)交換(Dynamic data exchange),所以,MATLAB也接受動(dòng)態(tài)數(shù)據(jù)交換(Dynamic data exchange)通信協(xié)議。薄膜厚度仿真操控體系當(dāng)中,把MCGS當(dāng)作SERVER程序,把MATLAB當(dāng)作CLIENT程序,經(jīng)由動(dòng)態(tài)數(shù)據(jù)交換協(xié)議把MCGS里設(shè)置的薄
膜厚度設(shè)計(jì)數(shù)值輸送到MATLAB,由以Back Propagation多層前饋網(wǎng)絡(luò)為基礎(chǔ)的比例-積分-微分控制器運(yùn)算得出最佳比例-積分-微分控制器參數(shù),然后把參數(shù)發(fā)送給MCGS,從而實(shí)現(xiàn)比例-積分-微分控制器參數(shù)能夠自行整定。
1.4 如何在MCGS中設(shè)置DDE
在MCGS和MATLAB中構(gòu)造一個(gè)動(dòng)態(tài)數(shù)據(jù)交換(Dynamic data exchange),必須在MCGS的“動(dòng)態(tài)信息庫(kù)”的小窗里構(gòu)造可改變的量,然后點(diǎn)組態(tài)平臺(tái)里的“工具”按紐,再選擇動(dòng)態(tài)數(shù)據(jù)交換(Dynamic data exchange)連接管理,打開后,將里面的通信的厚度設(shè)置數(shù)據(jù)改成動(dòng)態(tài)數(shù)據(jù)交換(Dynamic data exchange)輸出就可以了。
2 仿真控制效果
為了將以Back Propagation多層前饋網(wǎng)絡(luò)為基礎(chǔ)的比例-積分-微分控制器和原來(lái)的比例-積分-微分控制器的功能進(jìn)行比較,使用這兩個(gè)系統(tǒng)來(lái)實(shí)行仿真操控,并且在第三百個(gè)采集樣本時(shí)間加入外加干擾d(k)=2,用來(lái)計(jì)算抵抗干擾的水平。PID相關(guān)參數(shù)的數(shù)值設(shè)定為不變的:kp=0.4,ki=0.03,kd=0.2。以Back Propagation多層前饋網(wǎng)絡(luò)為基礎(chǔ)的PID操控器選擇Back Propagation多層前饋網(wǎng)絡(luò)構(gòu)造是4-5-3,學(xué)習(xí)效率以及慣性數(shù)值設(shè)置為:Z=0.002,T=0.0008。在MCGS的薄膜厚度自行設(shè)置頁(yè)面里把薄膜厚度設(shè)置為二十二μm,按下“測(cè)算PID參數(shù)”這一項(xiàng),MATLAB經(jīng)由動(dòng)態(tài)數(shù)據(jù)交換(Dynamic data exchange)系統(tǒng)在MCGS里選中薄膜厚度信息,在運(yùn)行系統(tǒng)中用以上兩個(gè)控制系統(tǒng)實(shí)行仿真操控,原來(lái)的比例-積分-微分控制器數(shù)據(jù)量為百分之四十,回應(yīng)時(shí)間是一百五十秒,并且受到的干擾比較大。使用以Back Propagation多層前饋網(wǎng)絡(luò)為基礎(chǔ)整定比例-積分-微分控制器(PID)基本沒有超調(diào),采用基于BP神經(jīng)網(wǎng)絡(luò)的PID控制器幾乎沒有超調(diào),回應(yīng)時(shí)間是一百秒,受到的干擾比較小。運(yùn)算結(jié)束后,MATLAB將以Back Propagation多層前饋網(wǎng)絡(luò)為基礎(chǔ)整定比例-積分-微分控制器(PID)整定得到的PID參數(shù)發(fā)送給MCGS。通過(guò)這樣的仿真實(shí)驗(yàn)顯示,以Back Propagation多層前饋網(wǎng)絡(luò)為基礎(chǔ)的比例-積分-微分控制器的優(yōu)點(diǎn)為超調(diào)數(shù)量比較小、回應(yīng)時(shí)間短、適應(yīng)性比較強(qiáng)等等,把其使用在MCGS組態(tài)系統(tǒng)中能夠增強(qiáng)雙向拉縮薄膜厚度操控系統(tǒng)的性能。
3 結(jié)語(yǔ)
筆者引入MATLAB設(shè)計(jì)智能操作算法,利用MCGS監(jiān)控算法及控制過(guò)程,系統(tǒng)無(wú)需增加硬件,算法實(shí)現(xiàn)簡(jiǎn)單,是智能控制算法工程實(shí)現(xiàn)的有益嘗試,具有較大的應(yīng)用價(jià)值。
參考文獻(xiàn)
[1]譚元飛,王再英.基于OPC的以MATLAB為計(jì)算平臺(tái)的工業(yè)監(jiān)控系統(tǒng)設(shè)計(jì)[J].自動(dòng)化與儀器儀表,2011,(4):54-59.
篇5
關(guān)鍵詞:模糊控制;PID;MATLAB;SIMULINK
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)28-6719-04
底盤測(cè)功機(jī)是檢測(cè)汽車發(fā)動(dòng)機(jī)功率、加速性能、滑行性能、燃油經(jīng)濟(jì)性等性能的的重要設(shè)備。它是一種室內(nèi)滾筒式檢測(cè)設(shè)備,主要由臺(tái)架部分和控制部分組成,通過(guò)飛輪模擬汽車慣性阻力、測(cè)功器模擬汽車道路行駛阻力來(lái)模擬真實(shí)的行駛工況以實(shí)現(xiàn)對(duì)汽車各種性能的檢測(cè),目前應(yīng)用最廣的測(cè)功器是電渦流機(jī)。
對(duì)底盤測(cè)功機(jī)進(jìn)行控制主要有恒速控制和恒轉(zhuǎn)矩控制兩種方式,兩種控制方式的基本過(guò)程是相同的,首先將所選定的轉(zhuǎn)速或轉(zhuǎn)矩信號(hào)與單片機(jī)輸出的設(shè)定信號(hào)同時(shí)輸入給PID控制系統(tǒng),由PID控制系統(tǒng)輸出加載控制信號(hào)(加載或減載電壓)以觸發(fā)可控硅,將可控硅的輸出加在電渦流加載裝置的兩端,使電渦流測(cè)功機(jī)的電流增大或減?。ê闼倏刂疲┗虮3植蛔儯ê戕D(zhuǎn)矩控制),對(duì)反饋回來(lái)的速度值或力值進(jìn)行判斷,從而實(shí)現(xiàn)了對(duì)電渦流加載裝置的閉環(huán)控制,在電渦流加載的過(guò)程中,PID控制器的良好運(yùn)行程度決定子恒速、恒轉(zhuǎn)矩工況的實(shí)現(xiàn)結(jié)果。底盤測(cè)功機(jī)控制系統(tǒng)組成如圖1所示。
1 模糊PID控制系統(tǒng)設(shè)計(jì)
由于傳統(tǒng)的PID控制對(duì)于非線性、時(shí)變性的系統(tǒng)難以達(dá)到控制精度的要求,而模糊PID控制具有自動(dòng)調(diào)整的功能,所以本文采用模糊PID作為參數(shù)推理機(jī)制和調(diào)整策略。PID控制系統(tǒng)的標(biāo)準(zhǔn)方程為:
[u(t)=KP[e(t)+1TI0te(t)dt+TDde(t)dt]]
式中,u(t)為PID控制器的輸出,t為采樣時(shí)間,KP為控制器的比例增益;e(t)為PID控制器的偏差輸入,即給定值與測(cè)量值之差;TI 為控制器的積分時(shí)間常數(shù);TD 為控制器的微分時(shí)間常數(shù)。模糊PID控制是以偏差e和偏差的變化率ec作為輸入,然后通過(guò)模糊控制決策求出PID控制的三個(gè)重要參數(shù),分別是[KP、KI、KD],經(jīng)過(guò)模糊PID的調(diào)整后,控制電渦流測(cè)功器的勵(lì)磁電流,從而實(shí)現(xiàn)對(duì)底盤測(cè)功機(jī)的閉環(huán)控制。模糊PID控制原理如圖2所示。
1.1 模糊控制器的結(jié)構(gòu)
模糊控制系統(tǒng)的關(guān)鍵部分就是模糊控制器的設(shè)計(jì),它的好壞直接關(guān)系到模糊控制系統(tǒng)的控制性能,可以說(shuō)整個(gè)模糊控制系統(tǒng)是否能實(shí)現(xiàn)控制效果,完全取決于模糊控制器的設(shè)計(jì)。模糊控制器被設(shè)計(jì)為五部分組成,分別為輸入模糊化接口、數(shù)據(jù)庫(kù)、規(guī)則庫(kù)、模糊推理機(jī)和輸出量解模糊接口,其結(jié)構(gòu)框圖3所示。
其中,模糊化接口作為模糊控制器的輸入,它是將輸入的確定量轉(zhuǎn)換為模糊控制器可以識(shí)別的模糊量,只有通過(guò)模糊化接口轉(zhuǎn)換的模糊量才能作為模糊控制器的輸入;數(shù)據(jù)庫(kù)是用來(lái)存放模糊控制系統(tǒng)器中全部模糊變量的隸屬度值或隸屬度函數(shù)的;規(guī)則庫(kù)用以存放模糊控制器中的所有模糊規(guī)則,在模糊推理過(guò)程中,為推理機(jī)提供控制規(guī)則;推理機(jī)可以說(shuō)是模糊控制器最重要的部分,是進(jìn)行模糊推理的機(jī)構(gòu),即根據(jù)輸入量和模糊規(guī)則得出需求輸出的模糊量。推理過(guò)程分為正向推理和逆向推理兩種,其中最基本的就是Zadeh近似推理;通過(guò)推理機(jī)推理得出的值都是模糊量,要想得到確定量就要經(jīng)過(guò)解模糊接口,對(duì)模糊量進(jìn)行解模糊操作,顧名思義,解模糊接口就是通過(guò)特定的方法將模糊量轉(zhuǎn)換成確定量,它與模糊化接口是互逆的關(guān)系。
1.2 比例因子和量化因子
比例因子和量化因子的作用除了能夠進(jìn)行論域變換,使前后模塊相匹配,還可以在整個(gè)系統(tǒng)中起到一定的調(diào)節(jié)作用。因?yàn)樗鼈兊淖兓拖喈?dāng)于對(duì)實(shí)際測(cè)量信號(hào)的縮小或放大,這將會(huì)影響到采樣信號(hào)對(duì)系統(tǒng)的控制與調(diào)節(jié)作用。該文為了便于比較常規(guī)PID與模糊PID的控制效果,將[KP、KI、KD]這 3個(gè)因子固定,通過(guò)改變量化因子、比例因子以及模糊論域的方法去改變輸出結(jié)果。
1.3 模糊范圍及隸屬度函數(shù)的確定
E為輸入偏差e的語(yǔ)言變量,EC為偏差變化率ec的語(yǔ)言變量。{-3,-2,-1,0,1,2,3}為E和EC的取值范圍,{NB,NM,ZO,PS,PM,PB}為它們的模糊子集。[KP、KI、KD]的量化范圍為(一0.3,0.3),(-0.06,0.06),(-3,3)。各變量的隸屬度函數(shù)均采用三角形函數(shù),其中偏差e、ec的隸屬度曲線如圖4、圖5所示,[KP、KI、KD] 的隸屬度曲線和圖3、圖4相似。只是論域范圍不同。
1.4 模糊控制規(guī)則設(shè)計(jì)
比例因子[KP]的作用是使輸入量向誤差減小的方向變化,加大[KP]可以減小靜差,但如果[KP]過(guò)大,則會(huì)導(dǎo)致系統(tǒng)超調(diào)過(guò)大;微分因子[KD]的作用是對(duì)誤差進(jìn)行微分,加大[KD]可以使系統(tǒng)的響應(yīng)加快,如果[KD]過(guò)大,會(huì)使系統(tǒng)抗干擾能力下降;積分因子[KI] 的作用是對(duì)誤差進(jìn)行記憶并積分,有利于消除系統(tǒng)的靜差,由于積分運(yùn)算具有滯后性,所以過(guò)大的[KI] 會(huì)影響被控制對(duì)象的動(dòng)態(tài)品質(zhì)。 在模糊控制規(guī)則表建立好以后,[KP、KI、KD]可查表代入下式計(jì)算:
[kp=k/p+{ei,eci}p]
[ki=k/i+{ei,eci}i]
[kd=k/d+{ei,eci}d]
其中,[k/p]、[k/i],[k/d]為設(shè)置的初始值,[{ei,eci}p]、[{ei,eci}i]、[{ei,eci}d]為通過(guò)模糊調(diào)整后的調(diào)整值。該文所采用的PID控制C程序流程圖如圖6所示。
2 PID控制仿真
同時(shí)建立恒轉(zhuǎn)速狀態(tài)下的常規(guī)PID控制、模糊PID控制仿真模型,如圖7所示,以對(duì)比觀察動(dòng)態(tài)階躍響應(yīng)曲線,根據(jù)相關(guān)文獻(xiàn)資料可知底盤測(cè)功機(jī)在恒速運(yùn)轉(zhuǎn)下的系統(tǒng)傳遞函數(shù)為
[GS=523500S3+87.35S2+10470S] ,
其中,階躍信號(hào)作為系統(tǒng)的輸入,在常規(guī)PID控制中,經(jīng)過(guò)調(diào)試選取[KP、KI、KD]的值分別為0.9 ,0.016, 0.0001,并將此值作為模糊PID的[KP、KI、KD]初始值的參考值,在模糊PID控制中,根據(jù)[e], [ec]來(lái)調(diào)整[KP、KI、KD]的值,使得系統(tǒng)的動(dòng)態(tài)響應(yīng)跟隨性較好,仿真結(jié)果如圖8所示,取仿真時(shí)間為0.5 s,從圖中可以看出,在常規(guī)PID控制下,響應(yīng)的穩(wěn)定值出現(xiàn)在0.3s左右,而在模糊PID的控制下,響應(yīng)穩(wěn)定值出現(xiàn)在0.17s左右,且跟隨性較明顯好于常規(guī)PID控制。
3 結(jié)束語(yǔ)
本文基于傳統(tǒng)PID基礎(chǔ)上設(shè)計(jì)了模糊PID控制系統(tǒng),從MATLAB仿真結(jié)果可以看出.模糊PID控制比傳統(tǒng)PID控制超調(diào)量小、震蕩少、響應(yīng)速度快,系統(tǒng)的控制精度得到進(jìn)一步提高,仿真結(jié)果驗(yàn)證了所建立模擬PID控制模型的正確性與實(shí)用性,為對(duì)底盤測(cè)功機(jī)控制系統(tǒng)進(jìn)一步改進(jìn)、完善奠定了基礎(chǔ)。
參考文獻(xiàn):
[1] 劉金琨.先進(jìn)PID控制MATLAB仿真[M].3版.北京:電子工業(yè)出版社,2011.
篇6
關(guān)鍵詞:電液伺服 位置控制 設(shè)計(jì) 仿真分析
中圖分類號(hào):TP273 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2011)12-0005-02
1、研究背景
電液伺服控制系統(tǒng)多數(shù)具有良好的控制性能,并具有一定的魯棒性,利用計(jì)算機(jī)對(duì)其進(jìn)行仿真,無(wú)論對(duì)其性能分析,還是系統(tǒng)輔助設(shè)計(jì),都有重要的意義[1]。
本文利用MATLAB軟件中的動(dòng)態(tài)仿真工具SIMULINK,構(gòu)造了電液伺服控制系統(tǒng)仿真模型,對(duì)其進(jìn)行仿真,并詳細(xì)地對(duì)其進(jìn)行系統(tǒng)性能分析。
2、系統(tǒng)的分析
圖2.1為某數(shù)控機(jī)床工作臺(tái)位置伺服系統(tǒng)的系統(tǒng)方框原理圖。由于系統(tǒng)的控制功率較小、工作臺(tái)行程較大,所以采用閥控液壓馬達(dá)系統(tǒng)。用液壓馬達(dá)驅(qū)動(dòng),通過(guò)滾珠絲杠裝置把旋轉(zhuǎn)運(yùn)動(dòng)變?yōu)橹本€運(yùn)動(dòng)。(如圖2.1)
工作臺(tái)負(fù)載主要由切削力、摩擦力和慣性力三部分組成。假定系統(tǒng)在所有負(fù)載都存在的條件下工作,則總負(fù)載力為三部分組成。則總負(fù)載力為:
=3500N (1)
伺服閥選擇液控型變量柱塞泵和電液伺服閥[3];位移傳感器選用差動(dòng)式變壓器式,其增益為。放大器采用高輸出阻抗的伺服放大器,放大倍數(shù)待定。
3、系統(tǒng)傳遞函數(shù)
由放大器增益、電液伺服閥的傳遞函數(shù)和液壓―馬達(dá)負(fù)載的傳遞函數(shù)組成,則伺服系統(tǒng)的開環(huán)傳遞函數(shù)為:
4、系統(tǒng)仿真分析
由以上計(jì)算得到傳遞函數(shù):
(1)通過(guò)Simulink仿真,可得到可機(jī)床工作臺(tái)液壓伺服系統(tǒng)的仿真模型[2],當(dāng)=90時(shí),系統(tǒng)的仿真輸出結(jié)果如下圖4.1所示。
從系統(tǒng)的單位階躍響應(yīng)曲線可以看出,系統(tǒng)的階躍響應(yīng)性能優(yōu)良,系統(tǒng)穩(wěn)定性良好,響應(yīng)快速,調(diào)節(jié)時(shí)間短。
(2)繪制系統(tǒng)的Bode圖,求取系統(tǒng)的幅頻性能指標(biāo)。
通過(guò)matlab運(yùn)行程序得出結(jié)果如圖4.2所示。
如圖4.2所示,可以看出:=11.6dB、=52.8°,相角裕度和幅值裕度為正值,該系統(tǒng)穩(wěn)定。
5、結(jié)語(yǔ)
在液壓系統(tǒng)設(shè)計(jì)中,利用MATLAB/SIMULINK,能夠大大簡(jiǎn)化設(shè)計(jì)流程,在仿真過(guò)程中可以方便地模擬實(shí)際系統(tǒng),反復(fù)調(diào)整各種參數(shù),很快達(dá)到最佳設(shè)計(jì)要求,充分體現(xiàn)了MATLAB/SIMULINK工具的優(yōu)越性[1]。通過(guò)本文的研究,可以為系統(tǒng)的設(shè)計(jì)和應(yīng)用提供有利的理論支持[4]。
參考文獻(xiàn)
[1]胡良謀,李景超,曹克強(qiáng).基于MATLAB/SIMULINK的電液伺服控制系統(tǒng)的建模與仿真研究[J].機(jī)床與液壓,2003,(3):230-232.
[2]薛定宇.基于MATLAB/Simulink的系統(tǒng)仿真技術(shù)與應(yīng)用[M].北京:清華大學(xué)出版社,2002.
[3]王春行.液壓伺服控制系統(tǒng)[M]北京:機(jī)械工業(yè)出版社,1989.
[4]徐志揚(yáng).基于MATLAB的液壓伺服系統(tǒng)的仿真研究[J].液壓與氣動(dòng),2011(9):2-3.
篇7
【關(guān)鍵詞】蒸發(fā)器;失控事件;Labview編程
0 概述
美國(guó)對(duì)在役壓水堆核電站調(diào)查表明,核電站停堆事故的30%以上是主給水系統(tǒng)事故。大亞灣核電站和嶺澳核電站蒸汽發(fā)生器的水位控制系統(tǒng)實(shí)現(xiàn)了從0-100%負(fù)荷的給水自動(dòng)控制,這兩座核電站在蒸發(fā)器水位控制系統(tǒng)設(shè)計(jì)和設(shè)備完全一樣,核電廠在運(yùn)營(yíng)期間,由于蒸發(fā)器水控制系統(tǒng)(ARE)水位失控幾乎導(dǎo)致跳堆,同類事故在韓國(guó)蔚珍核電站上也曾發(fā)生并導(dǎo)致停堆。從歷史調(diào)研信息發(fā)現(xiàn)蒸發(fā)器水位失控事件是現(xiàn)場(chǎng)常見事件,若操作員操作不正確或處理不及時(shí)可能造成停堆。本文針對(duì)導(dǎo)致蒸發(fā)器的物理特性和蒸發(fā)器水位控制系統(tǒng)的控制原理,以及蒸發(fā)器水位控制系統(tǒng)水位失控的各種情況用labview語(yǔ)言進(jìn)行仿真建模。
1 數(shù)學(xué)建??傮w設(shè)計(jì)
蒸發(fā)器水位控制系統(tǒng)控制原理可用如圖1所示的閉環(huán)來(lái)表示。
如圖1,對(duì)于蒸發(fā)器水位控制系統(tǒng)而言,輸入量有兩種,一種是水位設(shè)定值,一個(gè)為反饋量,反饋量是由蒸發(fā)器數(shù)學(xué)模型產(chǎn)生的被控量而產(chǎn)生,包括:蒸發(fā)器蒸汽流量,給水流量,蒸發(fā)器水位,汽機(jī)負(fù)荷寬量程,汽機(jī)負(fù)荷窄量程,以及溫度信號(hào)。另一個(gè)為定值信號(hào),即水位整定值,該水位定值信號(hào)是由反饋量中的汽機(jī)負(fù)荷寬量程信號(hào)得到的,與水位實(shí)際信號(hào)進(jìn)行對(duì)比產(chǎn)生差值信號(hào)。擾動(dòng)量是由是引起被控量發(fā)生不期望變化的外部和內(nèi)部因變量,在這里擾動(dòng)量是指功率的擾動(dòng)或水位定值的擾動(dòng)。在整個(gè)水位控制過(guò)程中,蒸發(fā)器水位控制系統(tǒng)改變控制量不僅僅依據(jù)給定值還考慮了被控量的反饋量,形成了反饋控制機(jī)制。
蒸汽發(fā)生器水位控制系統(tǒng)設(shè)計(jì)總的框圖如圖2所示。
圖2 蒸汽發(fā)生器水位控制系統(tǒng)設(shè)計(jì)框圖
分別對(duì)蒸發(fā)器水位控制系統(tǒng)和蒸發(fā)器的水位進(jìn)行數(shù)學(xué)建模再采用labview軟件進(jìn)行模擬仿真。
2 蒸發(fā)器水位控制系統(tǒng)數(shù)學(xué)建模
蒸汽發(fā)生器水位取決于給水流量、給水溫度、反應(yīng)堆冷卻劑溫度和蒸汽流量。大亞灣核電站蒸發(fā)器水位控制系統(tǒng)是由28塊具有不同功能和整定值的bailey 9020模擬板卡按照一定的邏輯關(guān)系連接在一起實(shí)現(xiàn)其控制功能,蒸發(fā)器水位控制系統(tǒng)數(shù)學(xué)模型也是基于該控制的邏輯關(guān)系進(jìn)行建立的,由于保密在本論文中不提及該邏輯關(guān)系圖。
3 接口參數(shù)
蒸發(fā)器水位控制系統(tǒng)模型與蒸發(fā)器水位模型之間通過(guò)不同的參數(shù)進(jìn)行接口構(gòu)成一個(gè)閉環(huán),進(jìn)行自動(dòng)控制。
接口參數(shù)有:蒸發(fā)器水位控制系統(tǒng)的輸入信號(hào):蒸發(fā)器水位, 蒸汽流量, 給水流量,汽機(jī)負(fù)荷寬量程,汽機(jī)負(fù)荷窄量程,給水溫度;蒸發(fā)器水位控制系統(tǒng)的輸出信號(hào):大閥開度信號(hào),小閥開度信號(hào)。
4 蒸發(fā)器數(shù)學(xué)模型建立
蒸發(fā)器水位控制系統(tǒng)處于穩(wěn)定狀態(tài)時(shí),由大閥門信號(hào)和小閥門信號(hào)共同控制蒸發(fā)器的給水流量來(lái)保證蒸發(fā)器水位的正常。
水位調(diào)節(jié)器由PI組件加微分組件組成。該調(diào)節(jié)器輸入端的增益可調(diào)整,成為給水溫度(亦即汽機(jī)負(fù)荷)的函數(shù)。
這樣,最佳調(diào)節(jié)器的設(shè)定值可在每個(gè)功率水平上進(jìn)行計(jì)算。
5 labview軟件實(shí)現(xiàn)
動(dòng)態(tài)仿真系統(tǒng)根據(jù)控制系統(tǒng)給出的控制參數(shù)和邊界條件,通過(guò)對(duì)蒸汽發(fā)生器數(shù)學(xué)模型的計(jì)算,模擬蒸發(fā)器水位變化的動(dòng)態(tài)過(guò)程,給出蒸發(fā)器水位調(diào)節(jié)系統(tǒng)的輸入信號(hào),包括:
蒸汽發(fā)生器水位測(cè)量值,蒸汽流量,給水流量,反應(yīng)堆冷卻劑溫度,汽機(jī)負(fù)荷。
控制系統(tǒng)輸出“蒸汽發(fā)生器調(diào)節(jié)閥的開啟和開度信號(hào)”到動(dòng)態(tài)仿真系統(tǒng)進(jìn)行控制對(duì)象的動(dòng)態(tài)仿真。這樣實(shí)現(xiàn)整個(gè)閉環(huán)回路的動(dòng)態(tài)仿真。
動(dòng)態(tài)仿真系統(tǒng)建立如下部件的仿真及相互聯(lián)動(dòng):
蒸汽發(fā)生器:采用兩相流模型模擬一二回路間的換熱過(guò)程、汽水轉(zhuǎn)換過(guò)程、壓力變化和流動(dòng)特性等
給水調(diào)節(jié)閥:模擬調(diào)節(jié)閥的特性(開度與壓差及流量的關(guān)系)
主給水泵;模擬主給水泵特性(轉(zhuǎn)速與揚(yáng)程、流量的關(guān)系)
管道、彎頭等部件:模擬阻力特性
篇8
關(guān)鍵詞:魯棒性 Smith預(yù)估控制器仿真模型 模糊自適應(yīng)PID控制方法
中圖分類號(hào):TP391.9
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1007-3973(2012)008-075-02
1 引言
工業(yè)中的溫度對(duì)象普遍具有非線性、時(shí)變性、大慣性、純滯后性等特點(diǎn),在控制中易引起系統(tǒng)超調(diào)和持續(xù)震蕩,而影響系統(tǒng)的穩(wěn)定性和動(dòng)態(tài)品質(zhì)。如何克服滯后因子帶來(lái)的影響,就成為了一個(gè)溫度控制系統(tǒng)能否長(zhǎng)期運(yùn)行的關(guān)鍵所在。
在眾多的溫度控制系統(tǒng)中,有不少系統(tǒng)具有多個(gè)溫度區(qū),當(dāng)這些溫區(qū)存在相互作用和強(qiáng)耦合的情況下,如何對(duì)其進(jìn)行協(xié)調(diào)控制就成為了一個(gè)難點(diǎn)。
2 PID控制器
(1)PID控制器簡(jiǎn)介:從理論上講,PID控制器對(duì)于“一階環(huán)節(jié)與純滯后環(huán)節(jié)相結(jié)合”、“二階環(huán)節(jié)與純滯后環(huán)節(jié)相結(jié)合”的被控對(duì)象而言,是一種最優(yōu)控制法。
由純滯后環(huán)節(jié)的定義可知,環(huán)節(jié)的輸出y(t)和x(t)輸入之間有如下的關(guān)系:
在工業(yè)調(diào)節(jié)系統(tǒng)中,廣義對(duì)象動(dòng)態(tài)特性通常近似為具有純滯后的標(biāo)準(zhǔn)形式:
然而按照這種方法設(shè)計(jì)出來(lái)的PID控制器,在設(shè)定點(diǎn)的響應(yīng)中經(jīng)常會(huì)得出很強(qiáng)的振蕩曲線,且超調(diào)往往很大,因此通過(guò)改進(jìn),我們給出了令一種PID控制規(guī)律:
是指令信號(hào) 和過(guò)程輸出量之間的差, 是比例增益, 為積分時(shí)間或重調(diào)時(shí)間, 是微分時(shí)間。
因此PID控制律是根據(jù)對(duì)象對(duì)控制作用的歷史效果,現(xiàn)時(shí)變現(xiàn)及未來(lái)需求的總和來(lái)確定控制規(guī)律,而不是依據(jù)對(duì)象的具體數(shù)學(xué)模型來(lái)決定的。
(2)PID控制參數(shù)整定:對(duì)于調(diào)節(jié)PID控制器參數(shù)的經(jīng)驗(yàn)公式,這一調(diào)節(jié)器可以根據(jù)帶有時(shí)滯環(huán)節(jié)的一階近似模型的階躍響應(yīng)或頻率響應(yīng)數(shù)據(jù)來(lái)設(shè)定。假設(shè)對(duì)象的模型為:
其中——階響應(yīng)的特征參數(shù) K 、T 和 %m 在已知頻率響應(yīng)數(shù)據(jù)情況下,可從Nyquist 圖形上直接得出剪切頻率 和該點(diǎn)處的幅值A(chǔ) (或增益)。
3 Smith預(yù)估控制器
(1)Smith預(yù)估控制算法原理:Smith控制算法是通過(guò)采用并聯(lián)補(bǔ)償裝置來(lái)消除純滯后對(duì)調(diào)節(jié)過(guò)程的影響,我們可以知道:
因?yàn)?,所以?/p>
由于補(bǔ)償?shù)淖罱K目的是消除純滯后 對(duì)調(diào)節(jié)過(guò)程的影響,所以滿足:
所以:
由此我們可以建立補(bǔ)償裝置后的系統(tǒng)。如果我們建立的模型非常精確的話,即 ,且不存在負(fù)荷干擾(D=0)時(shí),易得 , 則可以使用 代替X作為第一條反饋回路,實(shí)現(xiàn)將純滯后環(huán)節(jié)移到控制回路的外面,消除純滯后環(huán)節(jié)對(duì)控制的影響。
如果我們建立的模型不夠精確或存在負(fù)荷擾動(dòng)時(shí),則 不成立,而 ,此時(shí)第一條反饋回路實(shí)現(xiàn)的控制不能使人滿意,我們可采用第二條反饋回路作為補(bǔ)充。
顯然,Smith控制方法的前提是必須確切地知道被控對(duì)象的是數(shù)學(xué)模型,在此基礎(chǔ)上才能建立精確的預(yù)估模型:
(2)Smith預(yù)估控制器性能分析:經(jīng)過(guò)Smith預(yù)估控制的超前補(bǔ)償后,純滯后環(huán)節(jié) 已不包含在系統(tǒng)特征方程里,這是Smith預(yù)估控制算法的明顯優(yōu)勢(shì)。閉環(huán)系統(tǒng)經(jīng)過(guò)補(bǔ)償后,不受純滯后環(huán)節(jié)的影響,閉環(huán)傳輸函數(shù)分子中的 僅僅是使系統(tǒng)的控制過(guò)程在時(shí)間軸上延遲一個(gè)時(shí)間常數(shù) %m 。因此,系統(tǒng)的補(bǔ)償環(huán)節(jié)完全消除了純滯后對(duì)系統(tǒng)控制性能的不良影響,系統(tǒng)的品質(zhì)和沒有純滯后環(huán)節(jié)的系統(tǒng)完全一致,我們可以調(diào)整控制器Gc(s)的增益,提高閉環(huán)系統(tǒng)的動(dòng)態(tài)性能。
在實(shí)際工業(yè)生產(chǎn)的控制系統(tǒng)中,我們往往難以得到精確的系統(tǒng)模型,即 , 此時(shí)是難以得到以上理想情況下(即 )的控制效果的。以下再對(duì)非精確模型情況下Smith預(yù)估控制器的控制效果進(jìn)行簡(jiǎn)要分析。
設(shè) ,則系統(tǒng)的閉環(huán)傳輸函數(shù)為:
可以看出,在非精確模型的情況下,系統(tǒng)的特征方程中出現(xiàn)了純滯后因子,換言之系統(tǒng)受到了純滯后的影響,系統(tǒng)的動(dòng)態(tài)性能下降。尤其是當(dāng) ,即系統(tǒng)實(shí)際的滯后時(shí)間常數(shù)和模型的滯后時(shí)間常數(shù)不相等的時(shí)候,控制會(huì)受到更大的誤差影響,系統(tǒng)的控制品質(zhì)也會(huì)大大下降。
4 模糊自適應(yīng)PID控制器
(1)模糊控制器原理簡(jiǎn)介:模糊自適應(yīng)PID控制器,是將模糊控制規(guī)則和常規(guī)PID結(jié)合,將控制規(guī)則和作用方案用模糊集表示,并存儲(chǔ)在計(jì)算機(jī)內(nèi)。當(dāng)被控對(duì)象發(fā)生變化后,計(jì)算機(jī)根據(jù)所存儲(chǔ)的知識(shí)自動(dòng)進(jìn)行判斷并修改控制參數(shù),以達(dá)到控制精度要求。模糊自適應(yīng)PID控制器的核心部分是找出PID控制三個(gè)參數(shù) 與誤差e、誤差變化率ec之間的模糊關(guān)系。在建立兩者的模糊關(guān)系的基礎(chǔ)上,我們就能實(shí)現(xiàn)PID控制參數(shù)的在線自整定,從而使控制獲得良好的動(dòng)態(tài)性能和靜態(tài)性能。同時(shí)我們可以看出,模糊自適應(yīng)PID控制器實(shí)際上是兩種控制方法的結(jié)合:模糊控制器+常規(guī)PID控制器=模糊自適應(yīng)控制器。
(2)語(yǔ)言變量隸屬函數(shù)的確定:模糊控制器常常以控制查詢表的形式出現(xiàn),在采用關(guān)系合成推理法中,通常將語(yǔ)言變量的論域從連續(xù)域轉(zhuǎn)化成有限整數(shù)的論域。若某論域X=[-x,x],把此論域轉(zhuǎn)化成整數(shù)N=[-n,-n+1,L,-1,0,1,L,n]。為此,令k為量化因子,則k= 。若在x論域中有a,則可以找到論域N中的元素y與之對(duì)應(yīng):y=ka。在本設(shè)計(jì)中,系統(tǒng)誤差e和誤差變化率ec的論域?yàn)閧-3,-2,-1,0,1,2,3},其模糊子集為{NB,NM,NS,ZO,PS,PM,PB},子集中元素分別代表負(fù)大,負(fù)中,負(fù)小,零,正小,正中,正大。其中它們的隸屬度函數(shù)采用Z型分布、三角形分布和S型分布。
(3)建立控制規(guī)則:模糊自適應(yīng)PID是在PID算法的基礎(chǔ)上,通過(guò)計(jì)算當(dāng)前系統(tǒng)誤差E和誤差變化率EC,利用模糊規(guī)則進(jìn)行模糊推理,查詢模糊矩陣表進(jìn)行參數(shù)調(diào)整。則模糊控制設(shè)計(jì)的核心是總結(jié)工程設(shè)計(jì)人員的技術(shù)支持知識(shí)和實(shí)際操作經(jīng)驗(yàn),建立合適的模糊規(guī)則表,得到針對(duì)Kp,Ki和Kd三個(gè)參數(shù)自整定的模糊控制規(guī)則表。模糊自適應(yīng)PID控制使用了一種自適應(yīng)性、抗干擾性更強(qiáng)的多溫度區(qū)控制算法,辨識(shí)控制對(duì)象的參數(shù),通過(guò)MATLAB/SIMULINK仿真離線優(yōu)化設(shè)置了PID的三個(gè)參數(shù)——比例(Kp)、積分(Ki)、微分(Kd),控制系統(tǒng)的多個(gè)溫度區(qū),在盡量短調(diào)節(jié)時(shí)間內(nèi),最大動(dòng)態(tài)偏差盡量小,將溫度的靜態(tài)偏差精確到0.5度,系統(tǒng)達(dá)到了滿意的控制效果。
參考文獻(xiàn):
[1] 羅安,路甬祥.專家PID控制器及應(yīng)用[J].信息與控制,1992(03):151-155.
[2] 郝連鋼,齊蓉,蔡立虹.基于PCC的神經(jīng)網(wǎng)絡(luò)PID控制器設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2008(12).
篇9
(
2006
--
2007
年度第
2
學(xué)期)
名
稱:
計(jì)算機(jī)控制系統(tǒng)A
題
目:
DDC單回路PID閉環(huán)
控制系統(tǒng)的設(shè)計(jì)及實(shí)時(shí)仿真
院
系:
自動(dòng)化系
班
級(jí):
自動(dòng)班
學(xué)
號(hào):
學(xué)生姓名:
指導(dǎo)教師:
設(shè)計(jì)周數(shù):
一
周
成
績(jī):
日期:2007
年X月X
日
《計(jì)算機(jī)控制系統(tǒng)A》課程設(shè)計(jì)
任
務(wù)
書
一、目的與要求
1.
學(xué)習(xí)并了解用高級(jí)語(yǔ)言(C語(yǔ)言)實(shí)現(xiàn)數(shù)字PID控制算法模塊程序的方法;
2.
比較驗(yàn)證理想微分PID和實(shí)際微分PID控制算法階躍響應(yīng),加深對(duì)上述兩種算法各自特點(diǎn)的認(rèn)識(shí);
3.
學(xué)習(xí)了解用模擬計(jì)算機(jī)使用方法;
4.
學(xué)習(xí)掌握A/D、D/A轉(zhuǎn)換接口板的使用方法;
5.
了解一種微機(jī)中斷定時(shí)的方法;
6.
學(xué)習(xí)掌握通過(guò)A/D、D/A轉(zhuǎn)換用計(jì)算機(jī)獲取被控對(duì)象動(dòng)態(tài)特性的方法;
7.
通過(guò)實(shí)時(shí)仿真實(shí)驗(yàn)掌握DDC單回路控制程序編制及調(diào)試方法。
二、主要內(nèi)容
1.
用C語(yǔ)言分別編寫理想微分PID和實(shí)際微分PID控制算法模塊,在微機(jī)中調(diào)試實(shí)現(xiàn),并編寫簡(jiǎn)單的計(jì)算機(jī)繪圖程序,分別繪制并打印出上述兩種算法的單位階躍響應(yīng)曲線(課外上機(jī)完成);
2.
用模擬計(jì)算機(jī)搭接成一個(gè)二階慣性環(huán)節(jié),作為一個(gè)模擬仿真的被控對(duì)象;
3.
用C語(yǔ)言編寫使用HY-6060進(jìn)行定時(shí)采樣、定時(shí)輸出的接口程序,并在微機(jī)中調(diào)試實(shí)現(xiàn);
4.
由D/A輸出階躍信號(hào),同時(shí)由A/D采集模擬的被控對(duì)象的響應(yīng),繪制并打印出采集獲得的飛升曲線,并初步計(jì)算出對(duì)象模型;
y
5.
由模擬計(jì)算機(jī)搭接的二階慣性環(huán)節(jié)作為系統(tǒng)中的被控對(duì)象,用計(jì)算機(jī)作為DDC控制器,通過(guò)HY-6060接口板實(shí)現(xiàn)對(duì)模擬機(jī)的實(shí)時(shí)控制。仿真實(shí)驗(yàn)系統(tǒng)的框圖如下:
r
+
u
PID
模擬機(jī)
D/A
-
A/D
6.
整定控制器PID參數(shù),在設(shè)定值階躍情況下,打印控制量u和被控量y的曲線。
三、進(jìn)度計(jì)劃
序號(hào)
設(shè)計(jì)內(nèi)容
完成時(shí)間
備注
1
編寫數(shù)字PID控制算法模塊
本設(shè)計(jì)開始前
在課程要求的8學(xué)時(shí)課外上機(jī)時(shí)間完成
2
本設(shè)計(jì)其它內(nèi)容按小組分工協(xié)作完成
設(shè)計(jì)周五
3
驗(yàn)收、答辯
設(shè)計(jì)周末前
四、設(shè)計(jì)(實(shí)驗(yàn))成果要求
1.
根據(jù)個(gè)人在設(shè)計(jì)小組中的分工,完成設(shè)計(jì)內(nèi)容;
2.
分析實(shí)時(shí)仿真結(jié)果,每人完成設(shè)計(jì)報(bào)告。設(shè)計(jì)報(bào)告除C語(yǔ)言源程序及打印的結(jié)果曲線外,必須手寫完成,不得使用打印稿;
3.
提交設(shè)計(jì)報(bào)告,參加設(shè)計(jì)答辯。
五、考核方式
按小組對(duì)設(shè)計(jì)內(nèi)容進(jìn)行演示,由教師檢查驗(yàn)收,答辯按學(xué)生個(gè)人進(jìn)行,給出綜合成績(jī)。
學(xué)生姓名:
指導(dǎo)教師:
2007
年
X月X
日
正
文
一.設(shè)計(jì)思想
運(yùn)用編程軟件Turboc2.0,開發(fā)名為Administrators的監(jiān)控軟件。Administrators包含HY-6060進(jìn)行定時(shí)采樣、定時(shí)輸出的接口模塊,手/自動(dòng)切換模塊及控制界面顯示模塊。對(duì)PID參數(shù)進(jìn)行整定后,通過(guò)HY-6060對(duì)用模擬計(jì)算機(jī)所搭接二階慣性環(huán)節(jié)數(shù)據(jù)的采集,在可視化界面中獲得直觀的響應(yīng)曲線,并通過(guò)HY-6060接口板實(shí)現(xiàn)對(duì)模擬機(jī)的實(shí)時(shí)控制。
二.設(shè)計(jì)步驟
1.前期準(zhǔn)備工作
(1)需要一臺(tái)具有PC插槽的微型計(jì)算機(jī)并安裝具有直接I/O能力的Windows
98系統(tǒng)以及Turboc2.0軟件,HY-6060及接線板一套,模擬計(jì)算機(jī)一臺(tái)。
(2)復(fù)習(xí)Turboc2.0并參照說(shuō)明書學(xué)習(xí)
HY-6060的使用
2.
PID的設(shè)計(jì):
(1)采用連續(xù)傳遞函數(shù)的離散化方法,如向后差分法及雙線性變換法,將理想微分PID算式和實(shí)際微分PID算式離散化,寫成差分方程的形式,從而便于用計(jì)算機(jī)實(shí)現(xiàn)。
理想微分PID:
c0=kp*(1+T/Ti+Td/T);
c1=-kp*(1+2*Td/T);
c2=kp*Td/T;
u[0]=u[0]+q0*e[2]+q1*e[1]+q2*e[0];
實(shí)際微分PID:
c0=Tf/(T+Tf);
c1=kp*T/(T+Tf)*(1+T/Ti+Td/T);
c2=-kp*T/(T+Tf)*(1+2*Td/T);
c3=kp*Td/(T+Tf);
a=c0*(u[0]-u[1])+c1*e[0]+c2*e[1]+c3*e[2]+u[0];
(4)設(shè)置死區(qū):在實(shí)際控制系統(tǒng)中,并不要求被控量十分精確的與設(shè)定值相等,完全無(wú)差,而是容許偏差在一定范圍內(nèi)變化,在這種情況下,計(jì)算機(jī)控制為了避免控制動(dòng)作過(guò)于頻繁,以消除系統(tǒng)振蕩,就會(huì)采用帶死區(qū)的PID算法。
該算法是在原PID算法前加一個(gè)不靈敏區(qū)來(lái)實(shí)現(xiàn),即
設(shè)置不靈敏區(qū)C值
當(dāng)|e(k)|>C時(shí),|e(k)|=|e(k)|;
當(dāng)|e(k)|
(5)
手動(dòng)/自動(dòng)跟蹤和無(wú)擾切換
自動(dòng)到手動(dòng)過(guò)程:系統(tǒng)處于自動(dòng)時(shí),手操器實(shí)時(shí)跟蹤PID調(diào)節(jié)器的輸出,當(dāng)切換到手動(dòng)時(shí),被控對(duì)象處于手操器的開環(huán)控制,調(diào)節(jié)器跟蹤手操器的輸出。
通過(guò)設(shè)置鍵盤,使的按下手動(dòng)鍵H時(shí),系統(tǒng)處于手動(dòng)狀態(tài),按下自動(dòng)鍵A時(shí),系統(tǒng)處于自動(dòng)狀態(tài),同時(shí)設(shè)置相應(yīng)的功能鍵,P為暫停,E為退出。
3.二階慣性環(huán)節(jié)的搭接
利用模擬計(jì)算機(jī)中的電容電阻及運(yùn)算放大器,搭接已經(jīng)設(shè)計(jì)好的二階慣性環(huán)節(jié),仿真一個(gè)被控對(duì)象。其傳遞函數(shù)為,
為使增益為1左右并且對(duì)象的慣性時(shí)間足夠大
令R1=R2=R3=R4=R=1M
R5=R6=510K,C1=C2=C=4.7uF
則K=(R2/R1)*(R4/R3)=1
T1=T2=R*C=1000000*0.0000047=4.7s
所以G(s)=1/(4.7s+1)*(4.7s+1)
將HY-6060插入微型計(jì)算機(jī)的PC插槽,用硬盤線、接線板及導(dǎo)線將HY-6060與所搭二階慣性環(huán)節(jié)連接,實(shí)現(xiàn)計(jì)算機(jī)與二階系統(tǒng)的硬件連接,為通信做好準(zhǔn)備。
接線電路圖如下:(手抄)
4.
PID參數(shù)整定
通過(guò)使用matlab獲得對(duì)象的階躍響應(yīng)曲線,從而確定出對(duì)象的延遲時(shí)間、時(shí)間常數(shù)T,開環(huán)增益K,根據(jù)
內(nèi)模整定法得出PID調(diào)節(jié)器參數(shù)的初步整定值。再通過(guò)實(shí)驗(yàn)調(diào)整初步整定值最終得出一組PID參數(shù)使系統(tǒng)在給定值階躍擾動(dòng)下的響應(yīng)曲線比較理想。
于是有:T=11.5
=2
K=1
則
Ti=T=11.5
Td=0.5*=1
=0.5*K*/T=1/11.5
Kp=11.5
Tf=0.2
5.A/D采集與D/A轉(zhuǎn)換
(1)過(guò)程:采集二階慣性環(huán)節(jié)輸出的電壓并通過(guò)HY-6060對(duì)該模擬量進(jìn)行A/D轉(zhuǎn)換,然后將其送入微型計(jì)算機(jī),將轉(zhuǎn)化后的數(shù)字信號(hào)與設(shè)定值進(jìn)行比較,利用偏差進(jìn)行PID控制,將PID調(diào)節(jié)器的輸出量送給HY-6060進(jìn)行D/A轉(zhuǎn)換得到模擬信號(hào),即電壓值,再送給二階慣性環(huán)節(jié),從而得到新的二階慣性環(huán)節(jié)的輸出量,該輸出量再次由HY-6060采集并進(jìn)行A/D轉(zhuǎn)換。
采樣時(shí)間取0.055s,由中斷實(shí)現(xiàn)。
(2)HY-6060的使用:
通過(guò)調(diào)整PID使板基地址base為260
H
Base+0為模擬輸入信號(hào)通道選擇寄存器,實(shí)驗(yàn)中選用通道1
base+1為轉(zhuǎn)換完成位寄存器,最高位置1轉(zhuǎn)換完成,置0轉(zhuǎn)換未完成
base+2為轉(zhuǎn)換低8位數(shù)據(jù)寄存器
base+3為轉(zhuǎn)換高4位數(shù)據(jù)寄存器
base+4為命令字寄存器,實(shí)驗(yàn)中置0從而屏蔽定時(shí)觸發(fā)和外觸發(fā)。
通過(guò)調(diào)整JP1、JP2、JP5、JP6使模擬電壓輸入范圍為單極性輸入0--+10
通過(guò)調(diào)整JP3、JP4使模擬電壓輸出范圍為單極性輸出0--+10
(3)數(shù)模標(biāo)度變換
采集的模擬量A是最大范圍為0--+10的電壓,而經(jīng)轉(zhuǎn)換后在電腦中的數(shù)字量D是12位二進(jìn)制數(shù),對(duì)應(yīng)范圍是0—FFFH,即數(shù)字量D=A*FFFH/10。
例如0V的電壓對(duì)應(yīng)數(shù)字量是000H。
6.控制界面設(shè)計(jì)
本小組使用Turboc2.0基本控制界面實(shí)現(xiàn)對(duì)被控對(duì)象的PID參數(shù)設(shè)置及調(diào)整,通過(guò)本控制界面可實(shí)現(xiàn)手/自動(dòng)控制切換。
三.實(shí)驗(yàn)結(jié)果
本小組采用實(shí)際PID調(diào)節(jié)器控制具有遲延的二階對(duì)象(其中二階對(duì)象由模擬計(jì)算機(jī)實(shí)現(xiàn)),獲得了良好的效果。其中整定的實(shí)際PID調(diào)節(jié)器參數(shù)如下:
kp=11.5
Ti=11.5
Td=1
Tf=0.2
峰值時(shí)間(s)
超調(diào)量
(%)
調(diào)節(jié)時(shí)間(s)
原系統(tǒng)階躍響應(yīng)
30
30
整定后系統(tǒng)階躍響應(yīng)
3.9
15.1%
14.7
原系統(tǒng)階躍響應(yīng)曲線,整定后系統(tǒng)的階躍響應(yīng)曲線,系統(tǒng)運(yùn)行曲線,手/自動(dòng)切換PID調(diào)節(jié)器輸出曲線見附錄。
四.實(shí)驗(yàn)總結(jié)
1.實(shí)驗(yàn)過(guò)程中,因本小組遇到的難點(diǎn)主要集中在硬件方面如HY-6060的使用、A/D通道和D/A通道連接測(cè)試等硬件方面的問(wèn)題及軟件的查錯(cuò)調(diào)試等,因本小組成員在這些方面經(jīng)驗(yàn)不足,所以在解決這些問(wèn)題的過(guò)程中本小組成員虛心向老師及周圍同學(xué)請(qǐng)教,獲得了解決問(wèn)題的基本思路后積極討論,從而使問(wèn)題得到了較為圓滿的解決。
2.本小組設(shè)計(jì)最突出的創(chuàng)新特色是整定PID的過(guò)程中使用了內(nèi)模整定法,使得整定過(guò)程非常簡(jiǎn)潔輕松,并且整定參數(shù)在實(shí)際使用整定效果非常出色,但因時(shí)間及所學(xué)知識(shí)有限無(wú)法實(shí)現(xiàn)比較人性化的操作界面及其他一些較復(fù)雜的功能,使得本次設(shè)計(jì)中仍存在一些缺憾,本小組成員將以這次設(shè)計(jì)過(guò)程中獲得經(jīng)驗(yàn)教訓(xùn)為契機(jī)在以后的學(xué)習(xí)中更加注重將所學(xué)知識(shí)與實(shí)踐結(jié)合,使以后的作品更加完善。
五.參考文獻(xiàn)
六.附錄
1.硬件連接圖
2.PID響應(yīng)曲線
理想PID響應(yīng)曲線:
實(shí)際PID響應(yīng)曲線:
3.對(duì)象飛升特性曲線
4.給定值擾動(dòng)曲線
5
.
程序清單
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include
#pragma
hdrstop
#include
“Unit1.h“
//---------------------------------------------------------------------------
#pragma
package(smart_init)
#pragma
resource
“*.dfm“
TForm1
*Form1;
//---------------------------------------------------------------------------
__fastcall
TForm1::TForm1(TComponent*
Owner)
:
TForm(Owner)
{
}
//---------------------------------------------------------------------------
#include
#include
static
double
e[3],u[2],y[3],sp,manual,Ucc,realstep,idealstep,tall;
int
t,t1,height,width;
double
T;
double
kp=5;
double
Ti=10;
double
Tf=10;
double
Td=3;
typedef
unsigned
char
UINT8;
typedef
unsigned
short
UINT16;
void
outportb(UINT16
Port,UINT8
x)
{
asm
mov
dx,Port
asm
mov
al,x
asm
out
dx,al
}
UINT8
inportb(UINT16
Port)
{
UINT8
r;
asm
mov
dx,Port
asm
in
al,dx
asm
mov
r,al
return
r;
}
void
pidout();
void
sample()
{
int
i,j;
float
k;
unsigned
char
h,l;
outportb(0x264,0);
for(i=0;i
outportb(0x260,0x0f);
for(i=0;i
outportb(0x261,0);
for(i=0;i
for(j=0;j
l=inportb(0x262);
for(i=0;i
h=inportb(0x263);
h=h&0x0f;
i=(int)h*256;
i=i+(int)l;
Ucc=5.0;
//y數(shù)組用于純遲延,即y[2]保存當(dāng)前時(shí)刻的對(duì)象輸出的采樣值,
//經(jīng)過(guò)兩拍,由y[2]變?yōu)閥[1],y[1]變?yōu)閥[0]才用于計(jì)算偏差信號(hào)
e[0]=sp-y[0];
y[0]=y[1];
y[1]=y[2];
//被控對(duì)象的電壓輸出范圍為-5V~+5V,
//通過(guò)該轉(zhuǎn)換公式將輸出電壓值轉(zhuǎn)換為000H~FFFH
y[2]=(i-2047)*2.0*Ucc/4095;
return;
}
void
pidout()
{
int
i;
unsigned
char
h,l;
i=(u[0]+5)*4095/10;
h=i/256;
l=i-h*256;
outportb(0x262,l);
for(i=0;i
outportb(0x263,h);
for(i=0;i
outportb(0x261,0);
return;
}
void
idealpid()
{
double
q0,q1,q2;
q0=kp*(1+T/Ti+Td/T);
q1=-kp*(1+2*Td/T);
q2=kp*Td/T;
u[0]=u[0]+q0*e[2]+q1*e[1]+q2*e[0];
e[2]=e[1];
e[1]=e[0];
return
;
}
void
realpid()
{
int
i;
double
a,k,q1,q2,q3,q4,q5,A=11,death=0.001,saturate=10;
//加死區(qū)
if(fabs(e[0])
return
;
//積分分離
if
(fabs(e[0])>A)
k=10000;
else
k=1;
Ti=Ti*k;
/*q0=Td/(Td+Kd*T);
q1=kp*Td*(1+Kd)/(Td+Kd*T);
q2=-kp*(2*Ti*Td*(1+Kd)+Td*(Kd*Ti+Td))/(Ti*(Td+Kd*T));
q3=kp*(Ti*Td*(1+Kd)+T*(Kd*Ti+Td)+Kd*T*T)/(Ti*(Td+Kd*T));
q0=Tf/(T+Tf);
q1=(kp*T+T*T*kp/Ti+Td*kp)/(T+Tf);
q2=-(2*kp*Td+T*kp)/(T+Tf);
q3=Td/(kp*T+kp*Tf);
a=u[0]+q0*(u[0]-u[1])+q1*e[2]+q2*e[1]+q3*e[0];
c0=Tf/(T+Tf);
c1=kp*T/(T+Tf)*(1+T/Ti+Td/T);
c2=-kp*T/(T+Tf)*(1+2*Td/T);
c3=kp*Td/(T+Tf);
a=c0*(u[0]-u[1])+c1*e[0]+c2*e[1]+c3*e[2]+u[0];
if(a>saturate)
{
k=10000;
Ti=Ti*k;
c0=Tf/(T+Tf);
c1=kp*T/(T+Tf)*(1+T/Ti+Td/T);
c2=-kp*T/(T+Tf)*(1+2*Td/T);
c3=kp*Td/(T+Tf);
a=c0*(u[0]-u[1])+c1*e[0]+c2*e[1]+c3*e[2]+u[0];
}
if(a>saturate)
a=saturate;
*/
//采用PID遞推算法
q1=4*Tf/(T+2*Tf);
q2=(T-2*Tf)/(T+2*Tf);
q3=(4*kp*Ti*Td+2*Ti*kp*T+kp*T*T)/(2*Ti*T+4*Ti*Tf);
q4=(2*kp*T-8*kp*Ti*Td)/(2*Ti*T+4*Ti*Tf);
q5=(4*kp*Ti*Td-2*Ti*kp*T+kp*T*T)/(2*Ti*T+4*Ti*Tf);
a=q1*u[0]+q2*u[1]+q3*e[0]+q4*e[1]+q5*e[2];
//抗積分飽和
if
(abs(a)>saturate)
{
k=10000;
Ti=Ti*k;
q1=4*Tf/(T+2*Tf);
q2=(T-2*Tf)/(T+2*Tf);
q3=(4*kp*Ti*Td+2*Ti*kp*T+kp*T*T)/(2*Ti*T+4*Ti*Tf);
q4=(2*kp*T-8*kp*Ti*Td)/(2*Ti*T+4*Ti*Tf);
q5=(4*kp*Ti*Td-2*Ti*kp*T+kp*T*T)/(2*Ti*T+4*Ti*Tf);
a=q1*u[0]+q2*u[1]+q3*e[0]+q4*e[1]+q5*e[2];
}
if
(abs(a)>saturate)
//如果出現(xiàn)積分飽和,對(duì)PID控制器輸出u[k]限幅
{
if
(a>saturate)
a=saturate;
else
a=(-1)*saturate;
}
u[1]=u[0];
u[0]=a;
e[2]=e[1];
e[1]=e[0];
Ti=10;
return
;
}
void
realpidstep()
{
int
i;
double
a,k,q1,q2,q3,q4,q5,A=11,death=0.001,saturate=10;
//加死區(qū)
if(fabs(e[0])
return
;
//積分分離
if
(fabs(e[0])>A)
k=10000;
else
k=1;
Ti=Ti*k;
//采用PID遞推算法
q1=4*Tf/(T+2*Tf);
q2=(T-2*Tf)/(T+2*Tf);
q3=(4*kp*Ti*Td+2*Ti*kp*T+kp*T*T)/(2*Ti*T+4*Ti*Tf);
q4=(2*kp*T-8*kp*Ti*Td)/(2*Ti*T+4*Ti*Tf);
q5=(4*kp*Ti*Td-2*Ti*kp*T+kp*T*T)/(2*Ti*T+4*Ti*Tf);
a=q1*u[0]+q2*u[1]+q3*e[0]+q4*e[1]+q5*e[2];
//抗積分飽和
if
(abs(a)>saturate)
{
k=10000;
Ti=Ti*k;
q1=4*Tf/(T+2*Tf);
q2=(T-2*Tf)/(T+2*Tf);
q3=(4*kp*Ti*Td+2*Ti*kp*T+kp*T*T)/(2*Ti*T+4*Ti*Tf);
q4=(2*kp*T-8*kp*Ti*Td)/(2*Ti*T+4*Ti*Tf);
q5=(4*kp*Ti*Td-2*Ti*kp*T+kp*T*T)/(2*Ti*T+4*Ti*Tf);
a=q1*u[0]+q2*u[1]+q3*e[0]+q4*e[1]+q5*e[2];
}
if
(abs(a)>saturate)
//如果出現(xiàn)積分飽和,對(duì)PID控制器輸出u[k]限幅
{
if
(a>saturate)
a=saturate;
else
a=(-1)*saturate;
}
u[1]=u[0];
u[0]=a;
e[2]=e[1];
e[1]=e[0];
Ti=10;
return
;
}
void
__fastcall
TForm1::Button1Click(TObject
*Sender)
{
//initial();
T=Timer1->Interval;
T=T/1000.;
manual=0;e[0]=0;e[1]=0;e[2]=0;u[0]=0;u[1]=0;
y[0]=0;y[1]=0;y[2]=0;Ucc=5;t=0;t1=0;tall=0;
sp=StrToFloat(Edit4->Text);
realstep=0;
idealstep=0;
pidout();
height=PaintBox2->Height;
width=PaintBox2->Width;
PaintBox1->Canvas->Pen->Color=clRed;
PaintBox2->Canvas->Pen->Color=clBlue;
PaintBox1->Canvas->MoveTo(8,height/2);
PaintBox2->Canvas->MoveTo(8,height/2);
PaintBox1->Invalidate();
PaintBox2->Invalidate();
Timer1->Enabled=true;
}
//---------------------------------------------------------------------------
void
__fastcall
TForm1::Button2Click(TObject
*Sender)
{
Timer1->Enabled=false;
}
//---------------------------------------------------------------------------
void
__fastcall
TForm1::BitBtn1Click(TObject
*Sender)
{
t1=t1+1;
}
//---------------------------------------------------------------------------
void
__fastcall
TForm1::BitBtn2Click(TObject
*Sender)
{
t1=t1-1;
}
//---------------------------------------------------------------------------
void
__fastcall
TForm1::Timer1Timer(TObject
*Sender)
{
int
ypos,upos;
tall=tall+T;
if(realstep==1)
{
realpidstep();
upos=height-(u[0]+5)*height/10;
if(t>72)
{
t=-1;
PaintBox2->Invalidate();
PaintBox2->Canvas->MoveTo(0,upos);
}
t=t+1;
PaintBox2->Canvas->LineTo(10*t+10,upos);
Edit3->Text=FloatToStr(u[0]);
Edit5->Text=FloatToStr(tall);
}
else
if
(idealstep==1)
{
idealpid();
upos=height-(u[0]+5)*height/10;
if(t>72)
{
t=-1;
PaintBox2->Invalidate();
PaintBox2->Canvas->MoveTo(0,upos);
}
t=t+1;
PaintBox2->Canvas->LineTo(10*t+10,upos);
Edit3->Text=FloatToStr(u[0]);
Edit5->Text=FloatToStr(tall);
}
else
{
int
unchange=0,s1,s2,s3,upos,ypos;
//采集A/D轉(zhuǎn)換的系統(tǒng)輸出數(shù)據(jù)y[k]
sample();
Edit2->Text=FloatToStr(y[0]);
//PID調(diào)節(jié)器處理偏差信號(hào)
if
(manual==MANUAL->Checked)
unchange=20;
manual=MANUAL->Checked;
if
(MANUAL->Checked)
s2=10;
else
s2=5;
if(RealPID->Checked)
s1=1;
else
s1=0;
s3=s1+s2+unchange;
switch
(s3)
{
case
5:
Form1->Edit1->Text=““;
//手動(dòng)到自動(dòng)
for
(int
i=0;i
e[i]=0;
u[1]=u[0];
idealpid();
break;
case
6:
for
(int
i=1;i
e[i]=0;
sample();
u[1]=u[0];
sp=StrToFloat(Edit4->Text);
realpid();
if(fabs(u[0]-u[1])>0.2)
{
Form1->Edit1->Text=“偏差太大,無(wú)法切換“;
MANUAL->Checked=true;
u[0]=u[1];
}
else
Form1->Edit1->Text=““;
break;
case
10:
u[0]=u[0]+t1;
//自動(dòng)到手動(dòng)
t1=0;
Form1->Edit1->Text=u[0];
break;
case
11:
u[0]=u[0]+t1;
t1=0;
Form1->Edit1->Text=u[0];
break;
case
25:
idealpid();break;
//
不切換
case
26:
realpid();
break;
case
30:
u[0]=u[0]+t1;
t1=0;
Form1->Edit1->Text=u[0];
break;
case
31:
u[0]=u[0]+t1;
t1=0;
Form1->Edit1->Text=u[0];
break;
}
//圖形顯示當(dāng)前y[k]和u[k]
ypos=height-(y[0]+5)*height/10;
upos=height-(u[0]+5)*height/10;
if(t>72)
{
t=-1;
PaintBox1->Invalidate();
PaintBox2->Invalidate();
PaintBox1->Canvas->MoveTo(0,ypos);
PaintBox2->Canvas->MoveTo(0,upos);
}
t=t+1;
PaintBox1->Canvas->LineTo(10*t+10,ypos);
PaintBox2->Canvas->LineTo(10*t+10,upos);
//將u[k]通過(guò)D/A轉(zhuǎn)換輸送給被控對(duì)象
pidout();
Edit3->Text=FloatToStr(u[0]);
Edit5->Text=FloatToStr(tall);
}
}
//---------------------------------------------------------------------------
void
__fastcall
TForm1::Button4Click(TObject
*Sender)
{
realstep=1;
idealstep=0;
T=Timer1->Interval;
T=T/1000.;
e[0]=1;e[1]=0;e[2]=0;
u[0]=0;u[1]=0;t=0;
height=PaintBox2->Height;
PaintBox2->Canvas->Pen->Color=clBlue;
PaintBox2->Canvas->MoveTo(8,height/2);
tall=0;
PaintBox1->Invalidate();
PaintBox2->Invalidate();
Timer1->Interval=300;
Timer1->Enabled=true;
}
//---------------------------------------------------------------------------
void
__fastcall
TForm1::BitBtn3Click(TObject
*Sender)
{
sp=sp+1.00;
Edit4->Text=FloatToStr(sp);
}
//---------------------------------------------------------------------------
void
__fastcall
TForm1::BitBtn4Click(TObject
*Sender)
{
sp=sp-1.00;
Edit4->Text=FloatToStr(sp);
}
//---------------------------------------------------------------------------
void
__fastcall
TForm1::Button3Click(TObject
*Sender)
{
idealstep=1;
T=Timer1->Interval;
T=T/1000.;
realstep=0;
e[0]=1;e[1]=0;e[2]=0;
u[0]=0;u[1]=0;t=0;
height=PaintBox2->Height;
PaintBox2->Canvas->Pen->Color=clBlue;
PaintBox2->Canvas->MoveTo(8,height/2);
tall=0;
PaintBox1->Invalidate();
PaintBox2->Invalidate();
Timer1->Interval=300;
Timer1->Enabled=true;
篇10
關(guān)鍵詞:EDA;EWB;交通信號(hào)燈;控制系統(tǒng)
中圖分類號(hào):TP391文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2007)15-30821-03
Design and Simulation on Control System of Traffic Lights Based on EWB
GENG Wen-bo1, HUANG Wei2
(1. Zhoukou Normal University, Zhoukou, 466000, China; 2. Lanzhou Jiaotong University, Lanzhou, 250014, China)
Abstract:The development of Electronic Design Automation (EDA) technique is rapid and Electronics Workbench (EWB) is one of those excellent software about analysis and design on electronic circuit. It can design, analysis and simulate digital circuit and analog circuit; Introduce a method of simulation on control system of traffic lights based on EWB.
Key words:EDA; EWB; Traffic Lights; Control System
1 引言
傳統(tǒng)的電子電路與系統(tǒng)設(shè)計(jì)方法,費(fèi)時(shí)費(fèi)力,效率低,周期長(zhǎng),耗材多,難以滿足電子技術(shù)飛速發(fā)展的要求,近年來(lái)迅速發(fā)展并日臻完善的電子設(shè)計(jì)自動(dòng)化(EDA)技術(shù),將先進(jìn)的計(jì)算機(jī)技術(shù)應(yīng)用于電子設(shè)計(jì)過(guò)程,它已被廣泛應(yīng)用于電子電路設(shè)計(jì)、仿真、集成電路版(PCB)的設(shè)計(jì)以及可編程器件的編程等各項(xiàng)工作之中,EDA技術(shù)的發(fā)展,極大地提高了電子電路與系統(tǒng)的設(shè)計(jì)質(zhì)量與效率。
Electronics Workbench(簡(jiǎn)稱EWB)是加拿大 Interactive Image Technologies Ltd. 公司開發(fā)的電子電路計(jì)算機(jī)仿真軟件,被稱為“虛擬電子工作臺(tái)”,是EDA技術(shù)的優(yōu)秀軟件之一,該軟件采用圖形方式創(chuàng)建電路,形象逼真,操作方便,與著名的電路分析軟件“SPICE”完全兼容。非常適合電子信息專業(yè)課程的教學(xué)和仿真實(shí)驗(yàn)。目前已在電子設(shè)計(jì)和各大學(xué)的電工電子類課程教學(xué)領(lǐng)域內(nèi)得到了廣泛的應(yīng)用。本文詳細(xì)論述使用EWB這種EDA軟件設(shè)計(jì)交通信號(hào)燈控制系統(tǒng)的過(guò)程。
2 整體規(guī)劃與設(shè)計(jì)
2.1 系統(tǒng)功能要求
十字路通信號(hào)燈控制示意圖如圖1所示。設(shè)系統(tǒng)工作的十字路口由主、支兩條干道構(gòu)成,四路口均設(shè)紅、黃、綠三色信號(hào)燈和用于顯示還剩余多少時(shí)間將改變信號(hào)燈的數(shù)碼顯示器。
要求:主、支干道交替通行,通行時(shí)間均可在0~99s內(nèi)任意設(shè)定;綠燈換紅燈前,黃燈先亮較短時(shí)間(也可在0~99s內(nèi)任意設(shè)定),用以等待十字路口內(nèi)滯留車輛通過(guò);主支干道通行時(shí)間和黃燈亮的時(shí)間均由同一計(jì)數(shù)器按減計(jì)數(shù)方式計(jì)數(shù)(零狀態(tài)為無(wú)效態(tài));在減計(jì)數(shù)器回零瞬間完成十字路口通行狀態(tài)的轉(zhuǎn)換(換燈)。
圖1 十字路通信號(hào)燈控制示意圖
2.2 系統(tǒng)工作流程圖
設(shè)主干道通行時(shí)間為N1,支干道通行時(shí)間為N2,主、支干道黃燈亮的時(shí)間均為N3,通常主干道車流量大,支干道車流量小,通行時(shí)間設(shè)置為N1>N2>>N3。系統(tǒng)工作流程圖如圖2所示。
圖2系統(tǒng)工作流程圖
2.3 系統(tǒng)硬件結(jié)構(gòu)框圖
根據(jù)系統(tǒng)要求,設(shè)計(jì)系統(tǒng)硬件結(jié)構(gòu)框圖如圖3所示。圖中秒信號(hào)發(fā)生器產(chǎn)生標(biāo)準(zhǔn)的秒信號(hào)??深A(yù)置計(jì)數(shù)器進(jìn)行遞減計(jì)數(shù),根據(jù)置數(shù)控制電路的控制信號(hào),計(jì)數(shù)的長(zhǎng)短可作相應(yīng)調(diào)整,計(jì)數(shù)完成后產(chǎn)生一個(gè)輸出信號(hào)到到狀態(tài)控制電路,狀態(tài)控制電路經(jīng)過(guò)譯碼,驅(qū)動(dòng)主干道和支干道的紅、黃、綠三色燈作相應(yīng)的狀態(tài)變化??深A(yù)置計(jì)數(shù)器計(jì)數(shù)狀態(tài)通過(guò)數(shù)碼顯示電路顯示相應(yīng)計(jì)數(shù)值。
圖3 系統(tǒng)硬件結(jié)構(gòu)框圖
3 各部分單元電路設(shè)計(jì)
3.1 狀態(tài)控制及信號(hào)燈指示電路
3.1.1 狀態(tài)控制電路
由流程圖可見,系統(tǒng)有4種不同的工作狀態(tài)(S0~S3),選用四位二進(jìn)制遞增計(jì)數(shù)器74163作狀態(tài)控制電路,可選中74163然后單擊工具欄中幫助按鈕“?”得到74163的功能表,其電路符號(hào)參見圖4,取低兩位輸出QB、QA作狀態(tài)控制電路的輸出。狀態(tài)編碼S0、S1、S2、S3分別為00、01、10、11。
3.1.2 信號(hào)燈指示電路
表1 指示燈驅(qū)動(dòng)函數(shù)真值表
該電路也稱狀態(tài)譯碼器。以狀態(tài)控制電路的輸出(QB、QA)作譯碼器的輸入變量,根據(jù)4種不同通行狀態(tài)對(duì)主、支干道信號(hào)燈的控制要求,列出如表1所示的指示燈驅(qū)動(dòng)函數(shù)真值表。
經(jīng)化簡(jiǎn)(可利用邏輯轉(zhuǎn)換儀)得六個(gè)指示燈驅(qū)動(dòng)函數(shù):
根據(jù)指示燈驅(qū)動(dòng)函數(shù)邏輯表達(dá)式,可畫出信號(hào)燈指示電路。將狀態(tài)控制電路、信號(hào)燈指示電路及模擬三色信號(hào)燈相連接,構(gòu)成狀態(tài)控制及信號(hào)燈指示電路如圖4所示。
圖4 狀態(tài)控制及信號(hào)燈指示電路
為了便于調(diào)試和簡(jiǎn)化系統(tǒng)總圖,我們采用子電路圖表示法,將虛線框內(nèi)的74163和組合邏輯電路放在一起定義為子電路KZDL。用子電路表示的控制及信號(hào)燈指示電路如圖5所示。雙擊KZDL后打開可以查看和修改電路。
圖5 用子電路表示的狀態(tài)控制及信號(hào)燈指示電路
3.2 計(jì)數(shù)器及數(shù)碼顯示電路
選用2片74190十進(jìn)制可逆計(jì)數(shù)器構(gòu)成兩位十進(jìn)制可預(yù)置數(shù)的遞減計(jì)數(shù)器。為了便于控制,置數(shù)電路可根據(jù)需要改換。計(jì)數(shù)器及數(shù)碼顯示電路如圖6所示。2片計(jì)數(shù)器間采用異步級(jí)聯(lián)方式,利用個(gè)位計(jì)數(shù)器的借位輸出脈沖RCO'直接作為十位計(jì)數(shù)器的計(jì)數(shù)脈沖,接入十位計(jì)數(shù)器的CLK端;個(gè)位計(jì)數(shù)器直接接入秒脈沖信號(hào)。計(jì)數(shù)器的D1、C1、B1、A1和D0、C0、B0、A0分別為十位和個(gè)位的8421BCD碼置數(shù)輸入端,當(dāng)則LOAD'端為低電平時(shí),完成置數(shù)功能。由于計(jì)數(shù)器在零狀態(tài)時(shí)RCO'為低電平,其它時(shí)間為高電平,故當(dāng)個(gè)位計(jì)數(shù)器與十位計(jì)數(shù)器的RCO′均為低電平時(shí)可作為置數(shù)控制信號(hào)和指示電路控制信號(hào)(圖6中的ZS端),從而實(shí)現(xiàn)計(jì)數(shù)器減至“00”狀態(tài)瞬間完成置數(shù)和指示燈轉(zhuǎn)換。通過(guò)8421碼置數(shù)輸入端,可以選擇100以內(nèi)的數(shù)值,實(shí)現(xiàn)0~100s內(nèi)自由選擇的定時(shí)要求,圖6接法預(yù)置數(shù)為99。
圖6 計(jì)數(shù)器及數(shù)碼顯示電路
為了簡(jiǎn)化系統(tǒng),同樣我們將圖6虛線框內(nèi)的電路定義為子電路JSDL,用子電路表示的計(jì)數(shù)器及數(shù)碼顯示電路如圖7所示。
圖7用子電路表示的計(jì)數(shù)器及數(shù)碼顯示電路
3.3 分時(shí)置數(shù)鎖存電路
為使系統(tǒng)簡(jiǎn)化,我們用同一計(jì)數(shù)器分時(shí)顯示主、支干道通行時(shí)間(即主、支干道綠燈亮的時(shí)間)和主支干道通行轉(zhuǎn)換中黃燈亮的時(shí)間,為此必須解決好分時(shí)置數(shù)問(wèn)題。選用3片74465八路單向三態(tài)傳輸門(功能表可使用EWB的幫助按鈕查看)作為預(yù)置數(shù)的存儲(chǔ)單元來(lái)實(shí)現(xiàn)計(jì)數(shù)器分時(shí)置數(shù)控制電路如圖8所示。G7~G0為主干道綠燈置數(shù)端,g7~g0為支干道綠燈置數(shù)端,y7~y0為主支干道黃燈置數(shù)端;AG',Ag'和AY'為3片74465選通端,由主干道綠燈、支干道綠燈和黃燈選通;D7~D0為按由高到低排列后的輸出端,要接到計(jì)數(shù)器的置數(shù)輸入端。工作時(shí),3片74465只能有1片選通,其它兩片輸出均處于高阻態(tài)。
圖8分時(shí)置數(shù)鎖存電路
在圖8所示的分時(shí)置數(shù)鎖存電路中,將虛線框內(nèi)的電路定義為SCDL電路。用子電路表示的分時(shí)置數(shù)鎖存電路如圖9所示。
圖9用子電路表示的分時(shí)置數(shù)鎖存電路
3.4 秒信號(hào)發(fā)生器
秒信號(hào)發(fā)生器可由石英晶體多諧振蕩器構(gòu)成,為簡(jiǎn)化電路,直接選用1Hz的脈沖信號(hào)源代替秒信號(hào)發(fā)生器。
4 系統(tǒng)組裝與調(diào)試
在EWB主界面內(nèi),將各單元電路用粘貼的方法置于同一界面內(nèi),再按照各自對(duì)應(yīng)關(guān)系相互連接構(gòu)成的交通信號(hào)燈控制器的系統(tǒng)總電路如圖10所示。顯然,由于采用了子電路表示法,系統(tǒng)總電路大大減化。
在該系統(tǒng)中,由G7~G0設(shè)定主干道通行時(shí)間為35s,AG'由主干道綠燈亮?xí)r選通。由g7~g0設(shè)定支干道通行時(shí)間為25s,Ag'由支干道綠燈亮?xí)r選通。由y7~y0設(shè)定黃燈亮的時(shí)間為5s,AY'由主干道或支干道黃燈亮?xí)r選通。當(dāng)遞減計(jì)數(shù)器回零瞬間,置數(shù)控制端產(chǎn)生一個(gè)窄負(fù)脈沖,經(jīng)反相器變?yōu)檎}沖,送至狀態(tài)控制電路時(shí)鐘脈沖輸入端,使?fàn)顟B(tài)控制電路轉(zhuǎn)換為下一個(gè)工作狀態(tài),信號(hào)燈指示電路完成換燈的同時(shí)選通下一片74465,計(jì)數(shù)器置入新的定時(shí)值并開始新狀態(tài)下的遞減計(jì)數(shù),當(dāng)計(jì)數(shù)器再計(jì)數(shù)回零時(shí)又重復(fù)上述過(guò)程,這樣信號(hào)燈就自動(dòng)按設(shè)定時(shí)間交替轉(zhuǎn)換。
圖10 交通信號(hào)燈控制器總電路
在上述系統(tǒng)中,置數(shù)輸入是根據(jù)定時(shí)時(shí)間的8421BCD碼將相應(yīng)的輸入端接高、低電平實(shí)現(xiàn)的,在實(shí)際應(yīng)用中,可采用BCD撥碼盤來(lái)實(shí)現(xiàn)計(jì)數(shù)器的預(yù)置數(shù)控制。
在系統(tǒng)總電路安裝調(diào)試中,首先調(diào)試好各單元電路,然后進(jìn)行合理的連接,要特別注意電路之間的高、低電平配合。系統(tǒng)組裝完畢后,要求檢查各單元電路間連接是否正確,然后單擊仿真開關(guān)調(diào)試總電路。上述調(diào)試過(guò)程可反復(fù)進(jìn)行,直到符合要求。
5 結(jié)束語(yǔ)
EWB的仿真手段切合實(shí)際,選用元器件和儀器與實(shí)際情形非常相近,并均可直接從屏幕上選取,而且儀器的操作開關(guān)、按鍵同實(shí)際儀器極為相似,改變了傳統(tǒng)的基于電路板的設(shè)計(jì)方法,從而可以大大縮短設(shè)計(jì)時(shí)間,節(jié)約開發(fā)費(fèi)用,提高效率。實(shí)踐證明EWB軟件是人們?cè)O(shè)計(jì)電子電路的有效工具,是一款值得推薦的EDA軟件。
參考文獻(xiàn):
[1] 閆石. 數(shù)字電子技術(shù)基礎(chǔ)[M]. 北京:高等教育出版社,1998.
[2] 周常森. 電子電路計(jì)算機(jī)仿真技術(shù)[M]. 濟(jì)南:山東科學(xué)技術(shù)出版社,2001.8.
[3] 錢恭斌, 張基宏. Electronics Workbench――實(shí)用通信與電子線路的計(jì)算機(jī)仿真[M]. 北京:電子工業(yè)出版社,2001.1.
[4] 包明. EDA技術(shù)與數(shù)字系統(tǒng)設(shè)計(jì)[M]. 北京:北京航空航天大學(xué)出版社,2002.7.
熱門標(biāo)簽
控制監(jiān)管 控制 控制系統(tǒng)論文 控制措施 控制技術(shù)論文 控制工程論文 控制成本論文 控制管理 控制體系 控制工程 心理培訓(xùn) 人文科學(xué)概論