2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩58頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  第一章 緒論</b></p><p>  1.1 課題研究對象</p><p>  PID控制是最早發(fā)展起來的控制策略之一,由于其算法簡單,魯棒性好及可靠性高,被廣泛應用于過程控制與運動控制中,尤其適用于可建立精確數(shù)學模型的確定性系統(tǒng)。然而實際工業(yè)生產(chǎn)過程中往往具有非線性、時變不確定性,難以建立精確的數(shù)學模型,應用常規(guī)的PID控制器不能

2、達到理想的控制效果,而且在實際生產(chǎn)現(xiàn)場中,由于受到參數(shù)整定方法的復雜的困擾,常規(guī)PID控制器參數(shù)往往整定不良、性能不佳,對運行工況的實用性很差[1]。</p><p>  現(xiàn)代中小規(guī)模的控制工程通常采用基于IPC的控制系統(tǒng),系統(tǒng)具有數(shù)據(jù)采集、控制與管理功能。如能進一步采用先進控制算法,便可以設計出低成本的先進控制系統(tǒng)。</p><p>  在該課題中,被控對象為電加熱器,要對其實現(xiàn)高精度的

3、恒溫控制,且調節(jié)時間盡可能短。硬件采用ADVANTECH的IPC和PCL-1800多功能卡,用VB編寫基于遺傳算法整定的PID控制算法的控制程序,主要是采用實數(shù)編碼。</p><p>  1.2 PID整定方法的發(fā)展</p><p>  在工程實際中,應用最為廣泛的調節(jié)器控制規(guī)律為比例積分微分控制,簡稱PID控制,又稱PID調節(jié)。</p><p>  PID控制器問

4、世至今已有近60年的歷史了,它以其結構簡單、穩(wěn)定性好、工作可靠、調整方便而成為工業(yè)控制主要和可靠的技術工具。當被控對象的結構和參數(shù)不能完全掌握,或得不到精確的數(shù)學模型時,控制理論的其它設計技術難以使用,系統(tǒng)的控制器的結構和參數(shù)必須依靠經(jīng)驗和現(xiàn)場調試來確定,這時應用PID控制技術最為方便。即當我們不完全了解一個系統(tǒng)和被控對象﹐或不能通過有效的測量手段來獲得系統(tǒng)的參數(shù)的時候,便最適合用PID控制技術【2】。 </p><

5、p>  隨著計算機技術和最優(yōu)控制理論的發(fā)展,PID參數(shù)的整定方法發(fā)生了很大的變化,出現(xiàn)了一些基于計算機的PID參數(shù)最優(yōu)整定方法。最優(yōu)控制理論的應用,加上計算機的高速運算能力,賦予了PID參數(shù)優(yōu)化這樣的多變量最優(yōu)化問題新的生命力,PID控制器的最優(yōu)化整定方法是針對特定的系統(tǒng)建立數(shù)學模型,運用各種數(shù)值解法按照一定的性能指標進行優(yōu)化。常用的性能指標有各種積分型指標,如ISE、IAE、ISTE、ITAE等指標。近年來,隨著智能控制理論的發(fā)

6、展,專家系統(tǒng)、模糊控制以及神經(jīng)網(wǎng)絡日益受到控制界的重視,出現(xiàn)了一些智能優(yōu)化手段,主要有專家智能型PID參數(shù)自整定技術、基于模糊推理的PID自尋優(yōu)技術、其他的如啟發(fā)式搜索、霍普費爾德神經(jīng)網(wǎng)絡、模擬退火、遺傳算法(GA)智能整定技術。</p><p>  1.3 VB主要功能和特點</p><p>  Visual Basic 是Microsoft 公司開發(fā)的Windows 應用程序開發(fā)工

7、具,Visual ——“可視化的”,是一種開發(fā)圖形戶界面(GUI)的方法。1991年推出 VB1.0,1992、1993、1995、1997、1998,2000相繼推出:2.0, 3.0, 4.0, 5.0, 6.0,VB.Net(7.0)版本。5.0 ,6.0包含三種版本(學習版、專業(yè)版和企業(yè)版)</p><p>  英文Visual的意思是“視覺的”,“可視的Baisc”這個名字可能抽象了點,但實際上它卻是

8、最直觀的編程方法,之所以叫做“可視”,你只要看到VB的界面就會明白,實際上你無需編程,就可以完成許多步驟。</p><p>  在VB中引入了控件的概念,在Windows中控件的身影無處不在,如按鈕、文本框等,VB把這些控件模式化,并且每個控件都有若干屬性用來控制控件的外觀,工作方法,能夠響應用戶操作(事件)。這樣你就可以象在畫板上一樣,隨意點幾下鼠標,一個按鈕就完成了,這些在以前的編程語言下是要經(jīng)過相當復雜的工

9、作的。</p><p><b>  VB的特點如下:</b></p><p>  1. 具有面向對象的可視化設計工具;</p><p>  2. 事件驅動的編程機制;</p><p>  3. 提供了易學易用的應用程序集成開發(fā)環(huán)境;</p><p>  4. 結構化的程序設計語言;</p&g

10、t;<p>  5. 支持多種數(shù)據(jù)庫系統(tǒng)的訪問;</p><p>  6. Active技術;</p><p>  7. VB 6.0在開發(fā)環(huán)境上、網(wǎng)絡功能等的增強;</p><p>  8. 完備的help聯(lián)機幫助功能。</p><p>  Visual Basic6.0的新特性 </p><p>  

11、1.數(shù)據(jù)訪問的新特性 </p><p>  2. Internet功能的增強 </p><p>  3.控件、語言和向導方面的新增特性</p><p>  4.高度可移植化的代碼 </p><p>  5.創(chuàng)建ActiveX控件更加輕松方便 </p><p>  6.在線幫助更加完善。 </p><

12、p>  我們知道現(xiàn)代中小規(guī)模的控制工程通常采用基于IPC的控制系統(tǒng),系統(tǒng)具有數(shù)據(jù)采集、控制與管理功能。如能進一步采用先進控制算法如遺傳算法,便可以設計出低成本的先進控制系統(tǒng)。但是目前,關于遺傳算法的書籍大部分都針對它的理論方面。主要是采用MATLAB進行編程仿真。雖然可以取得很好的仿真效果,但畢竟缺少使用性。而采用VB編程實現(xiàn),可以提供一個很好的人機界面,并且需要時即可以與外接設備進行連接通訊,這樣便可以投入到應用中。因此,鑒于實

13、用性方面的考慮,最后以VB進行編制程序。</p><p>  圖1-1 VB集成開發(fā)環(huán)境</p><p>  1.4 PID參數(shù)的遺傳算法尋優(yōu)</p><p>  遺傳算法(GA)是一種建立在生物界自然選擇原理和自然遺傳機制的隨機化搜索法,它模擬了生物界中的生命進化機制,在人工系統(tǒng)中實現(xiàn)特定目標的優(yōu)化。遺傳算法是一個迭代過程,遺傳操作是在種群中進行的,產(chǎn)生初始種群,

14、規(guī)模為N,即種群由N個個體組成,經(jīng)GA操作,生成一代一代新種群(每代N個個體)。從每一代種群中選出適應度f高的優(yōu)質個體,在解空間中,直到滿足要求的收斂指標,即得到問題最優(yōu)解【2】。</p><p>  在運用遺傳算法對PID參數(shù)尋優(yōu)的個體評價過程中,許多個體所對應的參數(shù)都可能使實際過程系統(tǒng)失控,這在應用中是不能接受的,因此采用的是基于模型的PID控制器參數(shù)優(yōu)化,對過程不產(chǎn)生任何影響;同時優(yōu)化是基于模型,對模型響應

15、的評價大大加快,可以在較短的時間得到最優(yōu)化結果。 PID控制器參數(shù)的優(yōu)化設計是一個組合優(yōu)化問題。遺傳算法求解組合優(yōu)化問題所涉及的主要問題有參數(shù)編碼方案、適應度函數(shù)設計、遺傳算法參數(shù)選擇等。在優(yōu)化問題的實際應用中,合理處理以上問題,構造合適的遺傳算法框架,是遺傳算法的關鍵所在。</p><p><b>  遺傳算法概述</b></p><p>  2.1 什么是

16、遺傳算法 </p><p>  遺傳算法(genetic algorithms)簡稱GA。我們知道達爾文的自然選擇學說是一種被人們廣泛接受的生物進化學說。這種學說認為,生物要生存下去,就必須進行生存斗爭。生存斗爭包括種內斗爭、種間斗爭以及生物跟無機環(huán)境之間的斗爭三個方面。在生存斗爭中,具有有利變異的個體容易存活下來,并且有更多的機會將有利變異傳給后代;具有不利變異的個體就容易被淘汰,產(chǎn)生后代的機會也少的多。因此,

17、凡是在生存斗爭中獲勝的個體都是對環(huán)境適應性比較強的。達爾文把這種在生存斗爭中適者生存,不適者淘汰的過程叫做自然選擇。它表明,遺傳和變異是決定生物進化的內在因素。自然界中的多種生物之所以能夠適應環(huán)境而得以生存進化,是和遺傳和變異生命現(xiàn)象分不開的。正是生物的這種遺傳特性,使生物界的物種能夠保持相對的穩(wěn)定;而生物的變異特性,使生物個體產(chǎn)生新的性狀,以致于形成新的物種,推動了生物的進化和發(fā)展。遺傳算法是模擬達爾文的遺傳選擇和自然淘汰的生物進化過

18、程的計算模型。它的思想源于生物遺傳學和適者生存的自然規(guī)律,是具有“生存+檢測”的迭代過程的搜索算法。遺傳算法以一種群體中的所有個體為對象,并利用隨機化技術指導對一個被編碼的參數(shù)</p><p>  2.2 遺傳算法的發(fā)展.</p><p>  早在20世紀50年代就有將進化原理應用于計算機科學的努力,但缺乏一種普遍的編碼方法,只能依賴于變異而非交配產(chǎn)生新的基因結構。50年代末到60年代初

19、,受一些生物學家用計算機對生物系統(tǒng)進行模擬的啟發(fā),Holland開始應用模擬遺傳算子研究適應性。在Bagley1967年關于自適應下棋程序的論文中,他應用遺傳算法搜索下棋游戲評價函數(shù)的參數(shù)集,并首次提出了遺傳算法這一術語。1975年Holland出版了遺傳算法歷史上的經(jīng)典著作《自然和人工系統(tǒng)中的適應性》,系統(tǒng)闡述了遺傳算法的基本理論和方法,并提出了模式定理(schemata theorem),證明在遺傳算子選擇、交叉和變異的作用下,具有

20、低階、短定義距以及平均適應度高于群體平均適應度的模式在子代中將以指數(shù)級增長,這里的模式是某一類字符串,其某些位置有相似性。同年,DeJong完成了他的博士論文《遺傳自適應系統(tǒng)的行為分析》,將Holland的模式理論與他的計算試驗結合起來,進一步完善了選擇、交叉和變異操作,提出了一些新的遺傳操作技術。</p><p>  進入80年代后,遺傳算法得到了迅速發(fā)展,不僅理論研究十分活躍,而且在越來越多的應用領域中得到應

21、用。1983年,Holland的學生Goldberg將遺傳算法應用于管道煤氣系統(tǒng)的優(yōu)化,很好地解決了這一非常復雜的問題。1989年,Goldberg出版了《搜索、優(yōu)化和機器學習中的遺傳算法》一書,這本可能是遺傳算法領域被引用次數(shù)最多的書為這一領域奠定了堅實的科學基礎。80年代中期,Axelrod和Forrest合作,采用遺傳算法研究了博奕論中的一個經(jīng)典問題--囚徒困境。在機器學習方面,Holland自提出遺傳算法的基本理論后就致力于研究

22、分類器系統(tǒng)(classifier system),Holland 希望系統(tǒng)能將外界刺激進行分類,然后送到需要的地方去,因此命名為分類器系統(tǒng),這里的classifier是指一個二進制串,代表一類情況。分類器系統(tǒng)將某一條件是否為真與串的某一位相對應,從而將產(chǎn)生式系統(tǒng)中的規(guī)則編碼為二進制串,這樣就可以應用遺傳算法來進行演化,同時引入了基于經(jīng)濟學原理的信用分配機制--桶隊(bucket brigade)算法來確定規(guī)則的相對強度[4]。</

23、p><p>  Holland和Santa Fe的Arthur等人合作,用分類器系統(tǒng)模擬了一些經(jīng)濟現(xiàn)象,得到了滿意的結果。遺傳算法已有了許多發(fā)展,但一般來說,其基本過程是:首先采用某種編碼方式將解空間映射到編碼空間(可以是位串、實數(shù)、有序串、樹或圖,Holland最初的遺傳算法是基于二進制串的,類似于生物染色體結構,易于用生物遺傳理論解釋,各種遺傳操作也易于實現(xiàn)。另外,可以證明,采用二進制編碼式,算法處理的模式最多。

24、但是,在具體問題中,直接采用解空間的形式進行編碼,可以直接在解的表現(xiàn)型上進行遺傳操作,從而易于引入特定領域的啟發(fā)式信息,可以取得比二進制編碼更高的效率。實數(shù)編碼一般用于數(shù)值優(yōu)化,有序串編碼一般用于組合優(yōu)化。),每個編碼對應問題的一個解,稱為染色體或個體。一般通過隨機方法確定起始的一群個體,稱為種群,在種群中根據(jù)適應值或某種競爭機制選擇個體(適應值就是解的滿意程度,可以由外部顯式適應度函數(shù)計算,也可以由系統(tǒng)本身產(chǎn)生,如由協(xié)同演化時不同對策

25、的博奕確定,或者由個體在群體中的存活量和繁殖量確定。),使用各種遺傳操作算子(包括雜交,變異,倒位等等)產(chǎn)生下一代(下一代可以完全替代原種群,即非重疊種群;</p><p>  遺傳算法發(fā)展的簡要回顧1950s,將進化原理應用于計算機科學的初步努力。50年代末到60年代初,Holland應用模擬遺傳算子研究適應性。1967年,Bagley的論文中首次提出了遺傳算法這一術語。1975年,Holland的經(jīng)典

26、著作《自然和人工系統(tǒng)中的適應性》出版,系統(tǒng)闡述了遺傳算法的基本理論和方法。1975年,DeJong的博士論文《遺傳自適應系統(tǒng)的行為分析》,將Holland的模式理論與他的計算試驗結合起來。1983年,Holland的學生Goldberg將遺傳算法應用于管道煤氣系統(tǒng)的優(yōu)化,取得了很好的效果。</p><p>  2.3遺傳算法的研究方向及應用領域</p><p>  在遺傳算法的研究中,

27、可以看到主要有三類研究方向:1. 研究遺傳算法本身的理論基礎。2. 用遺傳算法作為工具解決工程問題,主要是進行優(yōu)化,關心的是是否能在傳統(tǒng)方法上有所提高。3. 用遺傳算法研究演化現(xiàn)象,一般涉及到人工生命和復雜性科學領域。</p><p>  遺傳算法的一些應用領域,主要在以下幾個方面:</p><p>  控制方面:煤氣管道控制,防避導彈控制,機器人控制</p><

28、p>  規(guī)劃方面:生產(chǎn)規(guī)劃,并行機任務分配</p><p>  設計方面:VLSI布局,背包問題,圖劃分問題</p><p>  圖像處理:模式識別,特征抽取</p><p>  信號處理:濾波器設計</p><p>  機器人方面:路徑規(guī)劃</p><p>  人工生命:生命的遺傳進化</p>&

29、lt;p>  人工神經(jīng)網(wǎng)絡:權值訓練和網(wǎng)絡結構生成</p><p>  2.4遺傳算法的主要步驟</p><p>  編碼:它首先采用某種編碼方式將解空間映射到編碼空間。它可以是位串、實數(shù)、有序串、樹或圖,Holland最初的遺傳算法是基于二進制串的,類似于生物染色體結構,易于用生物遺傳理論解釋,各種遺傳操作也易于實現(xiàn)。另外,可以證明,采用二進制編碼式,算法處理的模式最多。但是,在具

30、體問題中,直接采用解空間的形式進行編碼,可以直接在解的表現(xiàn)型上進行遺傳操作,從而易于引入特定領域的啟發(fā)式信息,可以取得比二進制編碼更高的效率。實數(shù)編碼一般用于數(shù)值優(yōu)化,有序串編碼一般用于組合優(yōu)化。</p><p>  初始群體的生成:每個編碼對應問題的一個解,稱為染色體或個體。一般通過隨機方法確定起始的一群個體,稱為種群。隨機產(chǎn)生N個初始串結構數(shù)據(jù),每個串結構數(shù)據(jù)稱為一個個體, N個個體構成了一個群體。GA以這N

31、個串結構數(shù)據(jù)作為初始點開始迭代。</p><p>  適應性值評估檢測:適應性函數(shù)表明個體或解的優(yōu)劣性。不同的問題,適應性函數(shù)的定義方式也不同。</p><p>  復制選擇:選擇的目的是為了從當前群體中選出優(yōu)良的個體,使它們有機會作為父代為下一代繁殖子孫。遺傳算法通過選擇過程體現(xiàn)這一思想,進行選擇的原則是適應性強的個體為下一代貢獻一個或多個后代的概率大。選擇實現(xiàn)了達爾文的適者生存原則。&

32、lt;/p><p>  交換:交換操作是遺傳算法中最主要的遺傳操作。通過交換操作可以得到新一代個體,新個體組合了其父輩個體的特性。交換體現(xiàn)了信息交換的思想。</p><p>  變異:變異首先在群體中隨機選擇一個個體,對于選中的個體以一定的概率隨機地改變串結構數(shù)據(jù)中某個串的值。同生物界一樣,GA中變異發(fā)生的概率很低,通常取值在0.001~0.01之間。變異為新個體的產(chǎn)生提供了機會。</p

33、><p>  第三章遺傳算法的原理與實現(xiàn)</p><p><b>  3.1基本算法</b></p><p>  利用遺傳算法解最優(yōu)化問題,首先應對可行域中的個體進行編碼,然后在可行域中隨機挑選指定群體大小的一些個體組成作為進化起點的第一代群體,并計算每個個體的目標函數(shù)值,即該個體的適應度。接著就像自然界中一樣,利用選擇機制從群體中隨機挑選個體作為

34、繁殖過程前的個體樣本。選擇機制保證適應度較高的個體能夠保留較多的樣本;而適應度較低的個體則保留較少的樣本,甚至被淘汰。在接下去的繁殖過程中,遺傳算法提供了交叉和變異兩種算法對挑選后的樣本進行交換和基因突變[5]。交叉算法交換隨機挑選的兩個個體的某些位,變異算子則直接對一個個體中的隨機挑選的某一位進行突變。這樣通過選擇和繁殖就產(chǎn)生了下一代群體。重復上述選擇和繁殖過程,直到結束條件得到滿足為止。進化過程最后一代中的最優(yōu)解就是用遺傳算法解最優(yōu)

35、化問題所得到的最終結果。</p><p>  遺傳算法的準備工作: 1)數(shù)據(jù)轉換操作,包括表現(xiàn)型到基因型的轉換和基因型到表現(xiàn)型的轉換。前者是把求解空間中的參數(shù)轉化成遺傳空間中的染色體或者個體(encoding),后者是它的逆操作(decoding)2)確定適應度計算函數(shù),可以將個體值經(jīng)過該函數(shù)轉換為該個體的適應度,該適應度的高低要能充分反映該個體對于解得優(yōu)秀程度。遺傳算法的基本步驟遺傳算法是具有"

36、;生成+檢測"(generate-and-test)的迭代過程的搜索算法。</p><p>  基本過程為:1)編碼,創(chuàng)建初始集團2)集團中個體適應度計算3)評估適應度4)根據(jù)適應度選擇個體5)被選擇個體進行交叉繁殖,6)在繁殖的過程中引入變異機制7)繁殖出新的集團,回到第二步</p><p>  圖3-1 遺傳算法的過程</p><p> 

37、 3.2遺傳算法的構成要素</p><p>  通過前面的介紹我們知道,遺傳算法的主要步驟包括編碼、初始群體的生成、適應性值評估檢測、復制選擇、交換、變異。因此,遺傳算法的主要構成要素有染色體編碼方法,個體適應度評價,遺傳算子和遺傳算法的運行參數(shù)。</p><p>  3.2.1染色體編碼方法及初始化</p><p>  遺傳算法中一般有以下幾種編碼方式</p

38、><p>  o二進制編碼o實型編碼o有序編碼o變長串編碼o樹型編碼</p><p>  下面主要介紹二進制編碼和實型編碼方式</p><p>  二進制編碼:用長度為10位的二進制編碼串分別表示兩個決策變量x1和x2。10位的二進制串可以表示從0~1023之間的1024個不同的數(shù),故將x1,x2的定義域離散化為1023個均等的區(qū)域,包括兩個斷點在內共有1024個不同的

39、點。從離散點-2.048到離散點2.048,依次讓它們分別對應于從0000000000(0)~111111111(1023)之間的二進制編碼。再將分別表示x1和x2的兩個10位長的二進制編碼串連接在一起,組成一個20位長的二進制編碼串,就構成了這個函數(shù)優(yōu)化問題的染色體編碼方法。使用這種編碼方法,解空間和遺傳算法的搜索空間就具有一一對應的關系。例如:x:0000110111 1101110001就表示一個個體的基因型,其中前十位表示x1,

40、后十位表示x2[11]。</p><p>  采用二進制編碼后需要解碼,解碼時需要將20位長的二進制編碼串切斷為兩個10位長的二進制編碼串,然后分別將它們轉換為對應的二進制整數(shù)代碼,分別記為y1和y2。依據(jù)個體編碼方法和對定義域的離散化方法可知,將代碼y轉換為x的解碼公式為:</p><p>  X=4.0968×y/1023-2.048</p><p>

41、  例如,對個體下:000110111 1101110001,它由兩個代碼組成:</p><p>  Y1=55 Y2=881</p><p>  上述兩個代碼經(jīng)過解碼后,可得到兩個實際的值:</p><p>  X1=-1.828 X2=1.476</p><p><b>  實型編碼:</b></p>

42、<p>  實型編碼算法的個體的每一位由0-9組成;</p><p>  串長由變量的個數(shù)、精度、上下界決定; </p><p>  總串(長)=所有變量的串(長)相加; </p><p>  一個變量對應的串長計算?。?</p><p>  解析一個變量串對應的實際值 X = min + 串的結果*精度;</p>&

43、lt;p>  初始化:選擇一個群體,即選擇一個串或個體的集合bi,i=1,2,...n。這個初始的群體也就是問題假設解的集合。一般取n=30-160。通常以隨機方法產(chǎn)生串或個體的集合bi,i=1,2,...n。問題的最優(yōu)解將通過這些初始假設解進化而求出。</p><p>  3.2.2復制(reproduction operator)</p><p>  根據(jù)適者生存原則選擇下一代的

44、個體。在選擇時,以適應度為選擇原則。適應度準則體現(xiàn)了適者生存,不適應者淘汰的自然法則。給出目標函數(shù)f,則f(bi)稱為個體bi的適應度。以為選中bi為下一代個體的次數(shù)。(1)適應度較高的個體,繁殖下一代的數(shù)目較多。(2)適應度較小的個體,繁殖下一代的數(shù)目較少;甚至被淘汰。這樣,就產(chǎn)生了對環(huán)境適應能力較強的后代。對于問題求解角度來講,就是選擇出和最優(yōu)解較接近的中間解。</p><p>  選擇算子運算的過程如

45、下:</p><p>  首先從舊的種群中選擇適應度高的染色體,放入匹配集(緩沖區(qū)),為以后染色體交換、變異,產(chǎn)生新的染色體作準備。選擇方法——適應度比例法(轉輪法)某染色體被選的概率:Pc</p><p>  xi 為種群中第i個染色體</p><p>  為第i個染色體的適應度值</p><p>  為種群種所有染色體的適應度值之和<

46、;/p><p><b>  具體步驟</b></p><p>  1)計算各染色體適應度值</p><p>  2)累計所有染色體適應度值,記錄中間累加值S - mid 和最</p><p>  后累加值 sum = ∑f(xi)</p><p>  3) 產(chǎn)生一個隨機數(shù) N,0< N <

47、 sum</p><p>  4) 選擇對應中間累加值S - mid 的第一個染色體進入交換集</p><p>  5) 重復(3)和(4),直到獲得足夠的染色體。</p><p>  圖3-2 用轉輪方法進行選擇</p><p>  表3-1 轉輪方法各部分比例</p><p>  以下是10個染色體種群按比例的選擇

48、過程</p><p>  表3-2被選的染色體個數(shù)</p><p>  表3-3被選的染色體</p><p>  3.2.3 交叉(crossover operator)</p><p>  復制不能創(chuàng)新,交換解決染色體的創(chuàng)新</p><p>  對于選中用于繁殖下一代的個體,隨機地選擇兩個個體的相同位置,按交叉概率P

49、。在選中的位置實行交換。這個過程反映了隨機信息交換;目的在于產(chǎn)生新的基因組合,也即產(chǎn)生新的個體。交叉時,可實行單點交叉或多點交叉。 具體步驟</p><p>  先對配對庫中的個體進行隨機配對.然后在配對的2個個體中設置交叉點,交換2個個體的信息后產(chǎn)生下一代.比如( | 代表簡單串的交叉位置) ( 0110|1, 1100|0 ) --交叉--> (01100,11001) (

50、01|000, 11|011 ) --交叉--> (01011,11000)2個父代的個體在交叉后繁殖出了下一代的同樣數(shù)量的個體.復雜的交叉在交叉的位置,交叉的方法,雙親的數(shù)量上都可以選擇.其目的都在于盡可能的培育出更優(yōu)秀的后代。</p><p>  3.2.4變異(mutation operator)</p><p>  根據(jù)生物遺傳中基因變異的原理,以變異概率Pm對某些個體的

51、某些位執(zhí)行變異。在變異時,對執(zhí)行變異的串的對應位求反,即把1變?yōu)?,把0變?yōu)?。變異概率Pm與生物變異極小的情況一致,所以,Pm的取值較小,一般取0.01-0.2。 例如有個體S=101011。 對其的第1,4位置的基因進行變異,則有 S\’=001111 單靠變異不能在求解中得到好處。但是,它能保證算法過程不會產(chǎn)生無法進化的單一群體。因為在所有的個體一樣時,交叉是無法產(chǎn)生新的個體的,這時只能靠變異產(chǎn)生新的個體。也就是說,變異增

52、加了全局優(yōu)化的特質。</p><p>  圖3-3遺傳算法的執(zhí)行過程</p><p>  3.3 遺傳算法的應用</p><p>  遺傳算法在很多領域都得到應用;比如從神經(jīng)網(wǎng)絡研究的角度上考慮,最關心的是遺傳算法在神經(jīng)網(wǎng)絡的應用。在遺傳算法應用中,應先明確其特點和關鍵問題,才能對這種算法深入了解,靈活應用,以及進一步研究開發(fā)[6]。</p><

53、p>  3.3.1、遺傳算法的應用關鍵 </p><p>  遺傳算法在應用中最關鍵的問題有如下3個 1.串的編碼方式 這本質是問題編碼。一般把問題的各種參數(shù)用二進制編碼,構成子串;然后把子串拼接 構成“染色體”串。串長度及編碼形式對算法收斂影響極大。 2.適應函數(shù)的確定 適應函數(shù)(fitness function)也稱對象函數(shù)(object function),這是問題求解品質

54、的測 量函數(shù);往往也稱為問題的“環(huán)境”。一般可以把問題的模型函數(shù)作為對象函數(shù);但有時需要另行構造。 3.遺傳算法自身參數(shù)設定 遺傳算法自身參數(shù)有3個,即群體大小n、交叉概率Pc和變異概率Pm。 群體大小n太小時難以求出最優(yōu)解,太大則增長收斂時間。一般n=30-160。交叉概率Pc 太小時難以向前搜索,太大則容易破壞高適應值的結構。一般取Pc=0.25-0.75。變異概 率Pm太小時難以產(chǎn)生新的基因結構,太大使遺傳算法成了單純的隨機

55、搜索。一般取Pm=0 .01—0.2。</p><p>  3.3.2遺傳算法的應用舉例</p><p>  設函數(shù)f(x)=x^2,求其在區(qū)間[0,31]的最大值</p><p>  變異概率取0.001</p><p>  表3-4初始種群和它的適應度值</p><p>  表3-5染色體的交叉運算</p&g

56、t;<p>  3.4遺傳算法的不足</p><p>  遺傳算法雖然可以在多種領域都有實際應用,并且也展示了它潛力和寬廣前景;但是, 遺傳算法還有大量的問題需要研究,目前也還有各種不足。首先,在變量多,取值范圍大或無給定范圍時,收斂速度下降;其次,可找到最優(yōu)解附近,但無法精確確定最擾解位置;最后,遺傳算法的參數(shù)選擇尚未有定量方法。對遺傳算法,還需要進一步研究其數(shù)學基礎理論;還需要在理論上證明它與其

57、它優(yōu)化技術的優(yōu)劣及原因;還需研究硬件化的遺傳算法;以及遺傳算法的通用編程和形式等。</p><p>  第四章 基于遺傳算法的PID控制器參數(shù)優(yōu)化</p><p>  4.1什么是PID調節(jié) </p><p>  目前工業(yè)自動化水平已成為衡量各行各業(yè)現(xiàn)代化水平的一個重要標志。同時,控制理論的發(fā)展也經(jīng)歷了古典控制理論、現(xiàn)代控制理論和智能控制理論三個階段。智能控

58、制的典型實例是模糊全自動洗衣機等。自動控制系統(tǒng)可分為開環(huán)控制系統(tǒng)和閉環(huán)控制系統(tǒng)。一個控制系統(tǒng)包括控制器﹑傳感器﹑變送器﹑執(zhí)行機構﹑輸入輸出接口??刂破鞯妮敵鼋?jīng)過輸出接口﹑執(zhí)行機構﹐加到被控系統(tǒng)上﹔控制系統(tǒng)的被控量﹐經(jīng)過傳感器﹐變送器﹐通過輸入接口送到控制器。不同的控制系統(tǒng)﹐其傳感器﹑變送器﹑執(zhí)行機構是不一樣的。比如壓力控制系統(tǒng)要采用壓力傳感器。電加熱控制系統(tǒng)的傳感器是溫度傳感器。目前,PID控制及其控制器或智能PID控制器(儀表)已經(jīng)很

59、多,產(chǎn)品已在工程實際中得到了廣泛的應用,有各種各樣的PID控制器產(chǎn)品,各大公司均開發(fā)了具有PID參數(shù)自整定功能的智能調節(jié)器(intelligent regulator),其中PID控制器參數(shù)的自動調整是通過智能化調整或自校正、自適應算法來實現(xiàn)。有利用PID控制實現(xiàn)的壓力、溫度、流量、液位控制器,能實現(xiàn)PID控制功能的可編程控制器(PLC),還有可實現(xiàn)PID控制的PC系統(tǒng)等等。 可編程控制器(PLC) 是利用其閉</p>&

60、lt;p>  4.1.1 PID調節(jié)器的三個參數(shù)</p><p>  PID控制器就是根據(jù)系統(tǒng)的誤差利用比例積分微分計算出控制量,控制器輸</p><p>  出和控制器輸入(誤差)之間的關系在時域中可用公式表示如下:</p><p>  公式中 表示誤差、控制器的輸入, 是控制器的輸出, 為比例系數(shù)、 積分時間常數(shù)、為微分時間常數(shù)。式又可表示為:</p

61、><p>  公式中 和 分別為 和 的拉氏變換, , 。 、 、 分別為控制器的比例、積分、微分系數(shù)。 </p><p>  一、比例(P)控制 </p><p>  比例控制是一種最簡單的控制方式。其控制器的輸出與輸入誤差訊號成比例關系。當僅有比例控制時系統(tǒng)輸出存在穩(wěn)態(tài)誤差(Steady-state error)。 </p><p>  二、

62、積分(I)控制 </p><p>  在積分控制中,控制器的輸出與輸入誤差訊號的積分成正比關系。 </p><p>  對一個自動控制系統(tǒng),如果在進入穩(wěn)態(tài)后存在穩(wěn)態(tài)誤差,則稱這個控制系統(tǒng)是有穩(wěn)態(tài)誤差的或簡稱有差系統(tǒng)(System with Steady-state Error)。為了消除穩(wěn)態(tài)誤差,在控制器中必須引入“積分項”。積分項對誤差取決于時間的積分,隨著時間的增加,積分項會增大。這樣

63、,即便誤差很小,積分項也會隨著時間的增加而加大,它推動控制器的輸出增大使穩(wěn)態(tài)誤差進一步減小,直到等于零。 </p><p>  因此,比例+積分(PI)控制器,可以使系統(tǒng)在進入穩(wěn)態(tài)后無穩(wěn)態(tài)誤差[7]。 </p><p>  三、微分(D)控制 </p><p>  在微分控制中,控制器的輸出與輸入誤差訊號的微分(即誤差的變化率)成正比關系。 </p>

64、<p>  自動控制系統(tǒng)在克服誤差的調節(jié)過程中可能會出現(xiàn)振蕩甚至失穩(wěn)。其原因是由于存在有較大慣性的組件(環(huán)節(jié))和(或)有滯后(delay)的組件,使力圖克服誤差的作用,其變化總是落后于誤差的變化。解決的辦法是使克服誤差的作用的變化要有些“超前”,即在誤差接近零時,克服誤差的作用就應該是零。這就是說,在控制器中僅引入“比例”項往往是不夠的,比例項的作用僅是放大誤差的幅值,而目前需要增加的是“微分項”,它能預測誤差變化的趨勢,這樣

65、,具有比例+微分的控制器,就能夠提前使克服誤差的控制作用等于零,甚至為負值,從而避免了被控量的嚴重地沖過頭。 </p><p>  所以對有較大慣性和(或)滯后的被控對象,比例+微分(PD)的控制器能改善系統(tǒng)在調節(jié)過程中的動態(tài)特性。 </p><p>  4.1.2 PID數(shù)字控制器的參數(shù)整定</p><p>  一.采樣周期T的選擇</p><

66、p><b> ?。缘倪x擇范圍:</b></p><p>  Tmin < T < T采 < Tmax</p><p><b>  其中</b></p><p>  Tmin:應不小于控制程序執(zhí)行時間+執(zhí)行機構動作時間+傳感器的反應時間</p><p>  此外還要考慮計算精度

67、等。</p><p>  T采:由采樣定理確定的采樣周期。</p><p>  Tmax:由穩(wěn)定性條件確定的采樣周期。</p><p>  實際T的選擇范圍應在Tmin 與T采之間。</p><p>  二.PID控制器參數(shù)Kp、KI、KD的整定</p><p><b>  湊試法:</b><

68、;/p><p>  PID參數(shù)對系統(tǒng)性能指標的影響(在只有某種控制起主要作用時)</p><p>  KP 響應加快 太大 超調大 </p><p>  靜態(tài)誤差變小 振蕩</p><p>  KI T/TI 穩(wěn)態(tài)誤差消除加快 太大 超調大 </p>

69、<p><b>  振蕩</b></p><p>  KD TD/T 響應加快 太大 對干擾敏感 </p><p>  超調變小 超調變大</p><p><b>  湊試法步驟</b></p><p>  湊試的先后順序是:先KP、后

70、KI、再KD。</p><p>  整定目標是:反應快、超調小、穩(wěn)態(tài)誤差能滿足要求。</p><p> ?。?).(無積分、微分作用)逐步增大比例系數(shù)KP,若出現(xiàn)振蕩,則取KP為發(fā)生振蕩時的KP的一半,即 KP =0.5K振。</p><p> ?。?).若穩(wěn)態(tài)誤差不滿足要求,則適當增大積分系數(shù)KI(比例系數(shù)KP可略為減小。)</p><p>

71、; ?。?).若快速性不滿足要求,則適當增大微分系數(shù)KD。</p><p><b>  常見情況分析</b></p><p>  采用PID控制算法的控制系統(tǒng),若出現(xiàn)下列現(xiàn)象,請問應如何整定PID參數(shù)。</p><p><b>  系統(tǒng)出現(xiàn)振蕩。</b></p><p>  ①一般情況應適當減小KP

72、或KI,也可適當調整KD。②若系統(tǒng)同時又有響應遲緩、偏差消除太慢的問題,則應適當增大比例系數(shù)KP、積分系數(shù)KI或微分系數(shù)KD。③采樣周期太長也會影響穩(wěn)定性,此時應縮短采樣周期。</p><p><b>  系統(tǒng)超調太大。</b></p><p> ?、僖话闱闆r應適當減小KP或KI,也可適當調整KD。②但若發(fā)現(xiàn)減小KP超調反而變大,同時系統(tǒng)又有響應遲緩現(xiàn)象,則應適當增大

73、比例系數(shù)KP。</p><p>  系統(tǒng)出現(xiàn)擾動時偏差消除太慢。</p><p>  適當增大KP或KI。</p><p><b>  對干擾太敏感。</b></p><p>  ①適當減小Kd;②加強硬件與軟件抗干擾措施,例如采用軟件濾波等。</p><p>  擴充臨界比例度法(基本步驟)

74、</p><p>  預選采樣周期T(足夠短);注意有純滯后時T應小于純滯后時間 ?。</p><p>  增大KP 使系統(tǒng)出現(xiàn)振蕩,測臨界振蕩周期Ts與臨界比例系數(shù)Ks。</p><p>  選擇控制度(表示數(shù)字控制器相對于模擬控制器的控制效果,用兩者誤差平方之比來表示,工程用上一般可取Q=1.05)。</p><p>  擴充響應曲線法(

75、基本步驟)</p><p>  設一給定值并給一階躍輸入信號;</p><p><b>  測響應曲線;</b></p><p><b>  用圖解法求與Tm;</b></p><p>  基于數(shù)學模型的方法(二階工程設計法)</p><p><b>  自整定方法

76、</b></p><p>  控制理論方法,例如,自校正PID控制算法。</p><p>  人工智能方法,例如,采用專家系統(tǒng)技術或神經(jīng)元網(wǎng)絡技術。</p><p>  4.2基于遺傳算法的PID整定</p><p>  PID控制是最早發(fā)展起來的控制策略之一,因此PID控制參數(shù)的優(yōu)化成為人們關注的問題,它直接影響控制效果的好壞,

77、并和系統(tǒng)的安全、經(jīng)濟運行有著密不可分的關系。傳統(tǒng)的整定方法有基本的時間長度PID控制算法、變參數(shù)的PID控制算法等。這里采用基于遺傳算法整定的PID控制算法,因為采用遺傳算法進行PID三個系數(shù)的整定,具有以下優(yōu)點:</p><p> ?。?)與單純形法相比,遺傳算法同樣具有良好的尋優(yōu)特性,且它克服了單純形法參數(shù)初值的敏感性。在初始條件選擇不當?shù)那闆r下,遺傳算法在不需要給出調節(jié)器初始參數(shù)的情況下,仍能尋找到合適的參

78、數(shù),使控制目標滿足要求。</p><p> ?。?)與專家整定法相比,它具有操作方便,速度快的優(yōu)點,不需要復雜的規(guī)則,只通過簡單的復制、交叉、變異,便可以達到尋優(yōu)。避免了專家整定法中前期大量知識庫整理工作及大量的仿真實驗。</p><p> ?。?)遺傳算法是從多點開始并行操作,在解空間具有高效啟發(fā)式搜索,克服了從單點出發(fā)的弊端及搜索的盲目性。從而使尋優(yōu)速度更快,避免了過早陷入局部最優(yōu)解。

79、</p><p> ?。?)遺傳算法不僅適用于單目標尋優(yōu),而且也適用于多目標尋優(yōu),根據(jù)不同的控制系統(tǒng),針對一個或多個目標,遺傳算法均能夠在規(guī)定的范圍內尋找到合適參數(shù)。</p><p>  目前,遺傳算法作為一種全局優(yōu)化算法,得到越來越多的應用。近年來,遺傳算法在控制上的應用日益增多。</p><p>  4.3 基于遺傳算法的PID整定原理</p>&

80、lt;p>  1.參數(shù)的確定及表示</p><p>  首先確定參數(shù)范圍,該范圍一般是由用戶給定的,然后由精度的要求,對其編碼。</p><p><b>  2.選取初始種群</b></p><p>  因為需要編程來實現(xiàn)各過程,所以采用計算機隨機產(chǎn)生種群。</p><p><b>  3.適配函數(shù)的確定

81、</b></p><p>  一般的尋優(yōu)方法在約束條件下可以求得滿足條件的一組參數(shù),在設計中是從改組參數(shù)中尋找一個最好的。衡量一個控制系統(tǒng)的指標有三個,即穩(wěn)定性、準確性和快速性。而上升時間反映了系統(tǒng)的快速性,上升時間越短,控制進行的就越快,系統(tǒng)的品質也就越好。但是如果單純的追求系統(tǒng)的動態(tài)特性,得到的參數(shù)很可能使控制信號過大,在實際應用中會因系統(tǒng)中固有的飽和特性而導致系統(tǒng)不穩(wěn)定,為了防止控制能量過大,在

82、目標函數(shù)中加入控制量[8]。因此為了使控制效果更好,我們給出了控制量、誤差和上升時間作為約束條件。因為適應函數(shù)與目標函數(shù)相關,所以目標函數(shù)確定以后,直接將其作為適配函數(shù)進行參數(shù)尋優(yōu)。最優(yōu)的控制參數(shù)也就是在滿足約束條件下使f(x)最大時,x對應的控制器參數(shù)[13]。</p><p>  利用遺傳算法優(yōu)化KP,KI,KD的具體步驟如下</p><p>  確定每個參數(shù)的大致范圍和編碼長度,進行

83、編碼</p><p>  隨機產(chǎn)生n各個體構成初始種群P(0)</p><p>  將種群中各個體解碼成對應的參數(shù)值,用次參數(shù)求代價函數(shù)值J及適應函數(shù)值f,取f=1/J</p><p>  應用復制、交叉、變異算子對種群P(t)進行操作,產(chǎn)生下一代種群p(t+1)</p><p>  重復步驟3和4,直至參數(shù)收斂或達到預定的目標。</p

84、><p>  4.4 PID控制算法的程序實現(xiàn)</p><p>  在考慮PID控制算法的程序實現(xiàn)時,可將PID控制算式改寫成:</p><p>  其中KP:比例系數(shù)</p><p><b>  Ki:積分系數(shù)</b></p><p><b>  Kd:微分系數(shù)</b><

85、;/p><p>  PID控制算式還可改寫成:</p><p>  其中KP:比例系數(shù)</p><p>  Kip:積分系數(shù)Ki與比例系數(shù)KP之比值</p><p>  Kdp:微分系數(shù)Kd與比例系數(shù)KP之比值</p><p>  在針對某種對象經(jīng)過多次試驗歸納出比較好的Kip與Kdp的經(jīng)驗數(shù)據(jù)后,式(5.3.2)的參數(shù)

86、整定可采用歸一參數(shù)整定法。</p><p>  PID控制程序的調試可采用仿真調試法,即物理仿真調試或數(shù)字仿真調試。</p><p>  設被控對象的傳遞函數(shù)為:</p><p><b>  。</b></p><p>  取采樣周期T=5秒。則廣義對象的z傳遞函數(shù)為:</p><p>  數(shù)字仿

87、真所需的被控制量的差分表達式為:</p><p>  y(k)=0.9927y(k-1)+0.00905u(k-27) </p><p>  4.5 基于實數(shù)編碼遺傳算法的PID整定原理</p><p>  本例中被控對象為一階模型</p><p>  采樣時間為5s,輸入指令為一階躍信號。</p><p>  為獲取

88、滿意的過渡過程動態(tài)特性,采用誤差絕對值時間積分性能指標作為參數(shù)選擇的最小目標函數(shù)。為了防止控制能量過大,在目標函數(shù)中加入控制輸入的平方項。選用下式作為參數(shù)選取的最優(yōu)指標</p><p>  式中,e(t)為系統(tǒng)誤差,u(t)為控制器輸出,為上升時間,w1,w2,w3為權值。</p><p>  為了避免超調,采用了懲罰功能,即一旦產(chǎn)生超調,將超調量作為最優(yōu)指標的一項,此時最優(yōu)指標為:<

89、;/p><p>  If ey(t)<0 </p><p>  式中,w3為權值,且w4》w1,ey(t)=y(tǒng)(t)-y(t-1) y(t)為被拉對象輸出</p><p>  遺傳算法中使用的樣本個數(shù)為10,交叉概率和變異概率分別為:pc=0.9,Pm=0.033。參數(shù)KP的取值范圍為[0,20],KI和KD的取值范圍為[0,1],取w1=0.999,W

90、2=0.001,w4=100,w3=2.0 采用實數(shù)編碼方式,經(jīng)過一百代進化。最后得出最優(yōu)的結果。</p><p>  本一階系統(tǒng)的模型編程如下</p><p>  Private Sub Simulating(n As Integer)</p><p>  yout(n) = 0.9927 * y_1 + 0.01099 * u_(35) </p>

91、;<p>  If n <= 35 Then yout(n) = yo </p><p><b>  End Sub</b></p><p><b>  主程序如下</b></p><p>  Private Sub Command1_Click() '主程序&

92、lt;/p><p>  Call bianma '編碼</p><p>  For kg = 1 To G 'G為代數(shù)</p><p>  'times(kg) = kg</p><p>  Call PID

93、'主程序PID控制</p><p>  Call evaluate '適應值評估</p><p>  Call SARP '選擇復制 </p><p>  Call CROSSOVER '交叉</p><p>

94、;  Call MUTATION '變異</p><p>  TempE(10, 1) = BestS(1)</p><p>  TempE(10, 2) = BestS(2)</p><p>  TempE(10, 3) = BestS(3)</p><p>  For i = 1 To 10<

95、/p><p>  kpid(i, 1) = TempE(i, 1)</p><p>  kpid(i, 2) = TempE(i, 2)</p><p>  kpid(i, 3) = TempE(i, 3)</p><p><b>  Next i</b></p><p>  MSFlexGrid1.

96、Row = kg</p><p>  Call MMI1 ' </p><p><b>  Next kg</b></p><p>  For k = 1 To P </p><p>  Call MMI2(k)</p>&l

97、t;p>  Call CurveGenerator(timef(k) * 1, yout(k) * 1) '畫輸出曲線</p><p><b>  Next k</b></p><p><b>  Call MMI3</b></p><p><b>  End Sub<

98、/b></p><p>  圖4-1 基于遺傳算法整定的PID控制系統(tǒng)的人機界面</p><p>  4.6實數(shù)編碼遺傳算法的各程序塊介紹</p><p>  基于VB的實數(shù)編碼遺傳算法,主要設計思想如下。將編碼,PID控制,適應值評估,復制,交叉,變異都作為一個獨立的子程序塊。由主程序產(chǎn)生初始種群,然后按照遺傳算法的基本步驟過程,調用各程序塊。開始設計程序

99、時,先設計一個界面,點擊各個按鈕,運行各個子程序塊。這樣可以一步步調試各個子程序。下面主要介紹各子程序塊,即各步驟的VB編程實現(xiàn)。</p><p>  圖4-2 測試所用人機界面</p><p><b>  4.6.1編碼</b></p><p>  對于本一階系統(tǒng),在VB中的實現(xiàn)如下,由計算機在規(guī)定的范圍內即KP[0-20],KI[0-1],

100、KD[0-1]之間隨機產(chǎn)生十個種群作為原始的值進行進化。因此它的初始值是雜亂無章的,由圖3.3便可以看出。經(jīng)過測試調整,最后的程序如下</p><p>  Private Sub bianma() '編碼</p><p>  Dim size As Integer, codel As Integer</p><p><b>  

101、BsJ = 0</b></p><p>  minx(1) = 0: MaxX(1) = 20 'P,參數(shù)整定范圍</p><p>  minx(2) = 0: MaxX(2) = 1 'D,參數(shù)整定范圍</p><p>  minx(3) = 0: MaxX(3) = 1 'I,參數(shù)整定范圍&l

102、t;/p><p>  For i = 1 To 10</p><p>  kpid(i, 1) = minx(1) + (MaxX(1) - minx(1)) * Rnd</p><p><b>  Next i</b></p><p>  For i = 1 To 10</p><p>  kpid

103、(i, 2) = minx(2) + (MaxX(2) - minx(2)) * Rnd</p><p><b>  Next i</b></p><p>  For i = 1 To 10</p><p>  kpid(i, 3) = minx(3) + (MaxX(3) - minx(3)) * Rnd</p><p&g

104、t;<b>  Next i</b></p><p><b>  End Sub</b></p><p>  4.6.2 PID控制</p><p>  為獲取滿意的過度過程動態(tài)特性,采用誤差絕對值時間積分性能指標ITAE作為參數(shù)選擇的最小目標函數(shù)。為了防止控制能量過大,在目便函數(shù)中加入控制輸入的平方項。選用式3作為參數(shù)選

105、取的最優(yōu)性能指標:      </p><p><b>  (3)</b></p><p>  按照要求,加入了超調懲罰功能。采用了增量式PID算式,初始溫度為50度。控制作用次數(shù)為500次。yout(k)為被拉對象輸出。</p><p>  Private Sub PID()<

106、;/p><p>  Dim B As Double, s As Double, error_1 As Double</p><p>  Dim r(500) As Double, eerror(500) As Double</p><p>  Dim x(3) As Double, erry(500) As Double, error_2 As Double</p

107、><p>  For j = 1 To 10</p><p>  kpidi(j, 1) = kpid(j, 1)</p><p>  kpidi(j, 2) = kpid(j, 2)</p><p>  kpidi(j, 3) = kpid(j, 3)</p><p>  For i = 1 To 50</p>

108、;<p><b>  u_(i) = 0</b></p><p><b>  Next i</b></p><p>  y_1 = 0#: y_2 = 0#</p><p>  x(1) = 0: x(2) = 0: x(3) = 0</p><p><b>  B = 0&

109、lt;/b></p><p>  error_1 = 0</p><p><b>  tu = 1</b></p><p><b>  s = 0</b></p><p>  For k = 1 To P</p><p>  timef(k) = k * Ts</

110、p><p>  r(k) = rin</p><p>  u(k) = u_(1) + kpidi(j, 1) * x(1) + kpidi(j, 2) * x(2) + kpidi(j, 3) * x(3)</p><p>  If u(k) >= 10 * rin Then</p><p>  u(k) = 10 * rin</p

111、><p><b>  End If</b></p><p>  If u(k) <= 0 Then</p><p><b>  u(k) = 0</b></p><p><b>  End If</b></p><p>  Call Simulatin

112、g(k)</p><p>  eerror(k) = r(k) - yout(k)</p><p>  For i = 2 To 50</p><p>  u_(i) = u_(i - 1)</p><p><b>  Next i</b></p><p>  u_(1) = u(k)</p

113、><p><b>  y_2 = y_1</b></p><p>  y_1 = yout(k)</p><p>  If eerror(k) <= 0.004 Then flag = 1 'i.e. yout(k)+0.004 >= r(k)</p><p>  'x(1) = eerror

114、(k) 'Calculating P</p><p>  'x(2) = (eerror(k) - error_1) / Ts 'Calculating D</p><p>  'x(3) = x(3) + eerror(k) * Ts 'Calculating I</p><p>  x(1) = eerror

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論