【正文】
表達(dá)的模糊控制規(guī)則的過程。 規(guī)則庫(kù)包括了用模糊語(yǔ)言變量表示的一系列控制規(guī)則,它們反映了控制專家的經(jīng)驗(yàn)和知識(shí)。 這一部 分可以設(shè)計(jì)成通用的計(jì)算機(jī)或單片機(jī)采 用不同推理算法的軟件程序來實(shí)現(xiàn),也可以采用專門設(shè)計(jì)的模糊推理硬件集成電路芯片來實(shí)現(xiàn)。 為了得到精確的控制值,就必須對(duì)模糊推理獲得的模糊輸出量進(jìn)行轉(zhuǎn)換,這個(gè)過程稱作精確化計(jì)算,這實(shí)際上是要在一組輸出量中找到一個(gè)有代表性的值,或者說對(duì)推薦的不同輸出量進(jìn)行最終裁決。 它首先要將模糊的控制量經(jīng)精確化變換變成表示在論域范圍的精確量,然后再將表示在論域范圍的精確量經(jīng)尺度變換變成實(shí)際的控制量。 內(nèi)蒙古工業(yè)大學(xué)本科畢業(yè)設(shè)計(jì)說明書 22 第 三 章 直線二級(jí)倒立擺的 模糊控制 狀態(tài)變量的降維處理 [9] 由第一章的模型建立和定性分析可知,直線二級(jí)倒立擺系統(tǒng)是一個(gè)非常 復(fù)雜 和不穩(wěn)定的高階非線形系統(tǒng)。而且它有六個(gè)狀態(tài)變量,如果設(shè)計(jì)一個(gè)六輸入一輸出即六維的模糊控制器,那模糊規(guī)則會(huì)復(fù)雜到爆炸的程度。但是模糊規(guī)則卻是設(shè)計(jì)模糊控制器的關(guān)鍵所在,規(guī)則不完整,系統(tǒng)就不能控住。為了設(shè)計(jì)一個(gè)規(guī)則簡(jiǎn)單而且完整的模糊控制器,本文利用融合技術(shù)對(duì)狀態(tài)變量進(jìn)行了降維處理,設(shè)計(jì)了一個(gè)線性融合函數(shù),使系統(tǒng)可由一個(gè)二維的模糊控制器進(jìn)行穩(wěn)定控制。 (1)利用 二次最優(yōu)控制理論可以得出一組 讓 直線 二級(jí)倒立擺穩(wěn)定的狀態(tài)反饋矩陣K:[10] ( 31) 最優(yōu)控制性能指標(biāo) 函數(shù)為 : ( 32) 通過使式( 32)為最小可求的反饋矩陣 K: 1 TK R B P??? ( 33) 求解式( 34)的方程可得到矩陣 P: 1()T T T TA PA A PB B PB R B PA Q P?? ? ? ? ( 34) 在性能指標(biāo)函數(shù)中,矩陣 Q和矩陣 R是用來平衡輸入量和狀態(tài)量的敏感程度,在直線二級(jí)倒立擺系統(tǒng)中, Q和 R的作用是分別平衡狀態(tài)向量 x 和輸入控制量 u。 對(duì)這兩個(gè)參數(shù)定義的時(shí)候一定要選取的盡量恰當(dāng),才能得到更合理的反饋矩陣 K。通過反復(fù)的測(cè)試,在直線二級(jí)倒立擺系統(tǒng)的控制過程中,選取 ,R=1 利用 Matlab 的函數(shù) K=lqr(A,B,Q,R)(程序見附錄三 ) 可 求得狀態(tài)反饋矩陣: [11] K =[ ] 12 12xxK K K K K K K?? ????? ??0 ()TTJ x Q x u R u dt????259455451000Q????? ??????內(nèi)蒙古工業(yè)大學(xué)本科畢業(yè)設(shè)計(jì)說明書 23 ( 2)利用狀態(tài)反饋矩陣構(gòu)建融合函數(shù) F: ( 35) 其中 ( 36) 將求的的狀態(tài)反饋矩陣 K,帶入式( 35),( 36)中得 由此可得到直線二級(jí)倒立擺模糊控制器的結(jié)構(gòu)圖,如圖 31。 圖 31 直線二級(jí)倒立擺模糊控制器結(jié)構(gòu)圖 隸屬度函數(shù) 經(jīng)過融合函數(shù)的降維處理,模糊控制器可以設(shè)計(jì)成二維的,分別取誤差 E和誤差變化率 EC的論域?yàn)?E=[6,6]和 EC=[6,6], 每個(gè)變量均用 7 個(gè)模糊子集 {NL,NM,NS, ZE,PS,PM,PL}來描述,含義依次為“負(fù)大、負(fù)中、負(fù)小、零、正小、正中、正大”的語(yǔ) 言值 ; 輸出論域?yàn)?U=[6,6], 每個(gè)變量用 7 個(gè)模糊子集 {NL,NM,NS, ZE,PS,PM,PL}來描述,含義依次為“負(fù)大、負(fù)中、負(fù)小、零、正小、正中、正大”的語(yǔ)言值。 并且輸入、輸出變量都采用三角形的隸屬函數(shù),輸入量 E、 EC 以及輸出變量 U的隸屬度函數(shù)圖分別見圖 3 3 34所示。1212000000xxKKKK K KEFX XKKECKK K K??????????????????2 2 2 2 2 21212K K K K K K Kxx?? ??? ? ? ? ? ?0 . 0 5 9 9 0 . 5 1 5 4 0 . 8 4 0 0 0 0 00 0 0 0 . 0 6 8 3 0 . 0 1 6 2 0 . 1 4 2 6F X X???? ?? ???內(nèi)蒙古工業(yè)大學(xué)本科畢業(yè)設(shè)計(jì)說明書 24 圖 32 輸入變量 E的隸屬度函數(shù) 圖 33 輸入變量 EC的隸屬度函數(shù) 圖 34 輸出 變量 U的隸屬度函數(shù) 模糊規(guī)則 的確立 [15] 根據(jù)輸入論域和輸出論域上的模糊語(yǔ)言變量劃分,可以設(shè)計(jì)如下模糊推理規(guī)則: rule1: if E is NL and EC is NL then U is PL; rule2: if E is NL and EC is NM then U is PL; rule3: if E is NL and EC is NS then U is PL; 6 4 2 0 2 4 600 . 51inp ut v arib le ENL NM NS ZE PS PM PL6 4 2 0 2 4 600 . 51inp ut v arib le EC NL NM NS ZE PS PM PL6 4 2 0 2 4 600 . 51ou t pu t v arib le U NL NM NS ZE PS PM PL內(nèi)蒙古工業(yè)大學(xué)本科畢業(yè)設(shè)計(jì)說明書 25 rule47: if E is PL and EC is PS then U is NL; rule48: if E is PL and EC is PM then U is NL; rule49: if E is PL and EC is PL then U is NL; 以上規(guī)則 可以 寫成 如下的 模糊規(guī)則表,如表 31所示: 表 31 模糊規(guī)則表 EC E NL NM NS ZE PS PM PL NL PL PL PL PM PM PS ZE NM PL PL PM PM PS ZE NS NS PL PM PM PS ZE NS NM ZE PM PM PS ZE NS NM NM PS PM PS ZE NS NM NM NL PM PS ZE NS NM NM NL NL PL ZE NS NM NM NL NL NL 內(nèi)蒙古工業(yè)大學(xué)本科畢業(yè)設(shè)計(jì)說明書 26 第四章 直線二級(jí)倒立擺模糊控制器的仿真研究 模糊邏輯工具箱簡(jiǎn)介 為了模糊邏輯與模糊控制的迅速推廣應(yīng)用, Mathworks 公司在其 MATLAB 版中添加了 Fuzzy Logic 工具箱。該工具箱由長(zhǎng)期從事模糊邏輯和模糊控制研究與開發(fā)工作的有關(guān)專家和技術(shù)人員編制, Matlab Fuzzy Logic 工具箱以其功能強(qiáng)大和方便易用的特點(diǎn)得到了用戶的廣泛歡迎。模糊邏輯的創(chuàng)始人 Zadeh 教授稱贊該工具箱“在各方面都給人以深刻的印象,使模糊邏輯成為智能系統(tǒng)的概念與設(shè)計(jì)的有效工具。” MATLAB 模糊工具箱提供的 5 個(gè)圖形化工具 :[18] 1) FIS Editor 模糊推理系統(tǒng)編輯器 。 提供了利用圖形界面對(duì)模糊系統(tǒng)的高層屬性的編輯、修改功能,這些屬性包括輸入、輸出語(yǔ)言變量的個(gè)數(shù)和去模糊方法等。用戶在基本模糊編輯其中可以通過菜單選擇激活其他幾個(gè)圖形界面編輯器,如 Rule Editor、 Membership Function Editor 等。在 MATLAB 命令窗口鍵入 fuzzy 命令即可激活該編輯器。 2) Membership Function Editor 隸屬度函數(shù)編輯器 。 在 FIS Editor 菜單中選擇 [View], [Edit membership function? ],就可以激活隸屬度函數(shù)編輯器。該編輯器提供了對(duì)輸入輸出語(yǔ)言變量的各語(yǔ)言值的隸屬度函數(shù)類型,參數(shù)進(jìn)行編輯與修改的圖形界面工具。 3) Rule Editor 模糊規(guī)則編輯器 。 在 FIS Editor 菜單中選擇 [View], [Edit Rules? ],或雙擊 FIS Editor 界面中間白色的模糊規(guī)則圖標(biāo),就可以激活模糊規(guī)則編輯器,它提供了添加、修改和刪除模糊規(guī)則的圖形界面。 4) Rule Viewer 模糊規(guī)則觀察器 。 在上述三種編輯器中選擇相應(yīng)菜單,都可以激活模糊規(guī)則瀏覽器 。 它以圖形行式描述了模糊推理系統(tǒng)的推理過程。 5) Surface Viewer 模糊推理輸入輸出曲面視圖 。 在各個(gè)編輯器窗口選擇相應(yīng)菜單,即可打開模糊推理的輸入輸出曲面視圖窗口。該窗口以圖形的形式顯示了模糊推理系統(tǒng)的輸入輸出特性曲面。 模糊 推理系統(tǒng)的構(gòu)造 下面就以二級(jí)倒立擺的模 糊控制系統(tǒng)作為仿真對(duì)象。首先用 fuzzy 命令打開 FIS編輯器的圖形界面,在其中可以定義整個(gè)模糊系統(tǒng)。然后選擇 Mamdani 法的雙輸入、單輸出結(jié)構(gòu)。模糊推理過程中的的 OR 和 AND 算子分別由 max 和 min 實(shí)現(xiàn),模糊蘊(yùn)含關(guān)系用 min 表示,合成規(guī)則用 max,最后使用中心法去處模糊化 。 [19]如圖 41所示 : 內(nèi)蒙古工業(yè)大學(xué)本科畢業(yè)設(shè)計(jì)說明書 27 圖 41 FIS編輯器的圖形界面 在命令窗口鍵入 mfedit, 可以激活隸屬度函數(shù)編輯器 在該編輯器中提供了對(duì)輸入輸出語(yǔ)言變量個(gè)語(yǔ)言值的隸屬度函數(shù)類型、參數(shù)進(jìn)行編輯、修改的圖形界面工具,如圖 42 所示,根據(jù)第三章 模糊規(guī)則的確立,輸入量 E定義在 7個(gè)模糊集上 ,分別為 : {NL負(fù)大 }, NM(負(fù)中) , NS(負(fù)?。?, ZE(零) , PS(正?。?, PM(正中) , PL(正大) }。 同理定義輸入量 EC 和輸出量 U的模糊集。 圖 42 編輯輸入量 E的隸屬度函數(shù) 在 Matlab 命令窗口鍵入 ruleedit,可以激活模糊邏輯編輯器,可以利用模糊邏輯規(guī)則編輯器添加、修改和刪除模糊規(guī)則的圖形界面,如圖 43所示,把表 31 中的內(nèi)蒙古工業(yè)大學(xué)本科畢業(yè)設(shè)計(jì)說明書 28 49條規(guī)則輸入模糊規(guī)則編輯器: 圖 43 編輯模糊規(guī)則 接下來模糊推理的全過程會(huì)由模糊邏輯工具 箱自行完成,可以在 Matlab 命令窗口鍵入 Surfview 命令和 Ruleviewer 命令來觀察模糊推理的過程和結(jié)果。 Ruleviewer則以圖形的形式描述了模糊推理系統(tǒng)的推理過程,從圖 44 看到,當(dāng) E=6, EC=6時(shí)推理的結(jié)果為 U= 。 圖 44 Ruleviewer顯示的模糊推理的過程和結(jié)果 利用 MATLAB 模糊推理工具箱的圖形用戶界面,可以打開模糊推理的輸入輸出內(nèi)蒙古工業(yè)大學(xué)本科畢業(yè)設(shè)計(jì)說明書 29 曲面視圖窗口,如圖 45 所示。從輸出特性曲面可看出,模糊控制規(guī)則呈非線性特征。 圖 45 模糊推理輸入 /輸出曲面的觀察界面 直線二級(jí)倒立擺模糊控制仿真 直線二級(jí)倒立擺模糊控制仿真模型,如圖 46所示。取 n=6,ɑe=4,ɑec=3,Ku=200,仿真時(shí)間為 10 秒,仿真曲線如圖 47 所示。 圖 46 直線二級(jí)倒立擺模糊控制仿真模型 x t h e t a 1t h e t a 2 xd o t t h e t a 1 d o tt h e t a 2 d o t[ 0 0 0 0 0 0 ] 39。r e f e r e n ce s t a t e s6nx39。 = A x+ B u y = C x+ D ui n ve r t e d p e n d u l u myo u tT o W o r k s p a ceS co p e 7S co p e 6S co p e 5S co p e 4S co p e 3S co p e 2 S co p e 1200KuF u zzy L o g i c C o n t r o l l e rK * uF u s e f ( u )F 1f ( u )F 內(nèi)蒙古工業(yè)大學(xué)本科畢業(yè)設(shè)計(jì)說明書 30 a 小車位移曲線 b 一級(jí)擺桿角度 c 二級(jí)擺桿角度 圖 47 直線二級(jí)倒立擺模糊控制仿真曲線 0 2 4 6 8 10 2 0 1 001020t i m e ( s )一級(jí)擺桿角度(rad)0 2 4 6 8 10 1 05051015t i m e ( s )二級(jí)擺桿角度(rad)0 2 4 6 8 10 2 0 1 001020t i m e ( s )