計算機控制課程設計超前校正控制器設計_第1頁
計算機控制課程設計超前校正控制器設計_第2頁
計算機控制課程設計超前校正控制器設計_第3頁
計算機控制課程設計超前校正控制器設計_第4頁
計算機控制課程設計超前校正控制器設計_第5頁
已閱讀5頁,還剩25頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、計算機控制課程設計報告題目:超前校正控制器設計姓名: 學號: 1202301022015年6月12日計算機控制課程設計任務書學號120230102班級學生指導教師題目超前校正控制器設計設計時間2014年6月5日至 2014年6月12日共 1 周設計要求設計任務:設單位反饋系統的開環傳遞函數為,采用模擬設計法設計超前校正數字控制器,使校正后的系統滿足如下指標:(1) 速度誤差;(2) 相角裕度; (3) 幅值裕度db。方案設計:1. 完成控制系統的分析、設計;2. 選擇元器件,完成電路設計,控制器采用mcs-51系列單片機(傳感器、功率接口以及人機接口等可以暫不涉及),使用protel繪制原理圖

2、;3. 編程實現單片機上的控制算法。報告內容:1. 控制系統仿真和設計步驟,應包含性能曲線、采樣周期的選擇、數字控制器的脈沖傳遞函數和差分方程;2. 元器件選型,電路設計,以及繪制的protel原理圖;3. 軟件流程圖,以及含有詳細注釋的源程序;4. 設計工作總結及心得體會;5. 列出所查閱的參考資料。指導教師簽字:系(教研室)主任簽字:2015年6月5日1. 控制系統的分析和設計1.1實驗要求 設單位反饋系統的開環傳遞函數為,采用模擬設計法設計超前校正數字控制器,使校正后的系統滿足如下指標:(1) 速度誤差;(2) 相角裕度; (3) 幅值裕度db。1.2系統分析(1)首先調整增益k使系統的

3、穩態誤差滿足要求,即系統應首先滿足速度誤差系數的要求,為使系統滿足速度誤差系數的要求可得:(1)故可求得:(2)(2)用matlab畫出未校正前系統的bode圖(2.1)matlab程序如下:numl=0 0 20;denl=0.5 1 0;g=tf(numl,denl);w=logspace(-1,2,200);bode(g,w)margin(g);gm,pm,wcg,wcp=margin(g);gm,pm,wcg,wcp(2.2)程序運行結果: untitled1ans =inf 17.9642 inf 6.1685(2.3)bode圖為:圖1 未校前正系統的bode圖(2.4)系統性能分

4、析及校正方法選擇:由仿真結果知:當系統的速度誤差系數滿足要求時,系統的幅值裕度為無窮大,故幅值裕度滿足要求;而系統的相角裕度為17.9642,小于要求值50,因此,需要串聯一個超前環節來對系統進行校正,即采用串聯超前校正。1.3模擬控制器設計(1)、確定剪切頻率:由未校正系統的bode圖可得:20 lg20=20lg2+4lg(3)從而求得:(4)進而可得相角裕度為:。(5)(2)、由分析知系統應引進相位超前校正網絡,故設控制器的傳遞函數為。(6)(3)、計算所需的相角超前量,由題意知:。(7)(4)、根據可以確定系數:。(8)(5)、對應于的處的幅值增量應為:(9)所以在校正前系統的bode

5、圖上有:(10)所以解得:。(11)(6)、校正裝置的轉折頻率分別為:(12)(13)(14)(15)故矯正裝置的傳遞函數為:(16)(7)、校正后系統的開環傳遞函數為:(17) (8)、根據校正后的開環頻率特性驗算相角裕度和幅值裕度:(18)、(19)綜上,在的前提下,校正后系統的剪切頻率為:,相角裕度大于,幅值裕度為,完全滿足系統靜動態性能指標要求。(9)、對校正后的網絡進行matlab仿真: (9.1)、matlab程序為:numc=0.23 1;denc=0.055 1;gc=tf(numc,denc)w=logspace(-1,3,100);figure(2)bode(gc,w);g

6、ridg_o=gc*gfigure(3)margin(g_o);gm,pm,wcp=margin(g_o);gm,pm,wcg,wcp(9.2)、程序運行的結果為: untitled2gc = 0.23 s + 1 - 0.055 s + 1continuous-time transfer function.g_o = 4.6 s + 20 - 0.0275 s3 + 0.555 s2 + scontinuous-time transfer function.ans =inf 50.4719 infinf(9.3)、校正后的bode圖為:圖2 校正后連續系統的bode圖圖3 控制器的bode圖

7、(9.4)、通過matlab的仿真結果可以得出,加入控制器后,在滿足系統的速度誤差系數的前提下,系統的幅值裕度依然滿足要求;此外,通過仿真還可以得出,經過串聯超前校正后,系統的相角裕度變為,完全滿足系統的性能指標中對相角裕度的要求。(10)、用matlab繪出系統校正前后的單位階躍響應曲線: (10.1)、matlab繪制單位階躍響應曲線的程序如下:numl=0 0 20;denl=0.5 1 0;g=tf(numl,denl);w=logspace(-1,2,200);numc=0.23 1;denc=0.055 1;gc=tf(numc,denc)w=logspace(-1,3,100);

8、figure(2)bode(gc,w);gridg_o=gc*gg_1=feedback(g,1)g_o1=feedback(g_o,1)num=0 0 20;den=0.5 1 20;numd=0 0 4.6 20;dend=0.0275 0.555 5.6 20;t=0:0.005:5;figure(4);c1,x1,t=step(num,den,t);c2,x2,t=step(numd,dend,t);plot(t,c1,:k,t,c2,-k)gridlegend(g1校正前,g_01校正后)(10.2)、程序運行結果如下: untitled3 transfer function: 20

9、-0.5 s2 + s + 20transfer function: 4.6 s + 20-0.0275 s3 + 0.555 s2 + 5.6 s + 20(10.3)、校正前后系統的單位階躍響應曲線:圖4 校正前后系統的單位階躍響應曲線1.4模擬法設計數字控制器(1)、模擬控制器的離散化設計:采用雙線性變換法(tustin)進行離散化(2)、采樣周期的選擇:考慮到a/d轉換、d/a轉換的時間、數據處理的精度,以及單片機計算的時間,故采樣周期不能太大也不能太小,不妨取t=0.01s(在后面的控制中可得知取采樣周期為t=0.01s完全滿足要求)。(3)、將模擬控制器離散化,模擬控制器離散化后的

10、傳遞函數為:(20)(4)、將被控對象離散化,被控對象離散化后的傳遞函數為:(21)(5)、繪制校正后離散系統的伯德圖:(5.1)、matlab仿真程序如下:num1=0.23 1;den1=0.055 1;gc1=tf(num1,den1);gc1gz1=c2d(gc1,0.01,tustin);gz1num0=20;den0=conv(1 0,0.5 1);gp=tf(num0,den0);gz2=c2d(gp,0.01,tustin)gz2gz=gz1*gz2;gzmargin(gz);(5.2)、程序的運行結果如下所示: untitled4gc1 = 0.23 s + 1 - 0.05

11、5 s + 1continuous-time transfer function.gz1 =3.917 z - 3.75 - z - 0.8333sample time: 0.01 secondsdiscrete-time transfer function.gz2 = 0.0009901 z2 + 0.00198 z + 0.0009901 -z2 - 1.98 z + 0.9802sample time: 0.01 secondsdiscrete-time transfer function.gz2 = 0.0009901 z2 + 0.00198 z + 0.0009901 -z2 -

12、1.98 z + 0.9802sample time: 0.01 secondsdiscrete-time transfer function.gz = 0.003878 z3 + 0.004043 z2 - 0.003548 z - 0.003713 -z3 - 2.814 z2 + 2.63 z - 0.8168sample time: 0.01 secondsdiscrete-time transfer function.(5.3)、離散系統的bode圖如下所示: 圖5 離散后系統的bode圖(6)、繪制校正后離散系統的單位階躍響應曲線:通過matlab編程的方法得出系統的單位階躍響應曲

13、線(6.1)matlab程序如下所示:num1=0.23 1;den1=0.055 1;gc1=tf(num1,den1);gc1gz1=c2d(gc1,0.01,tustin);gz1num0=20;den0=conv(1 0,0.5 1);gp=tf(num0,den0);gz2=c2d(gp,0.01,tustin)gz2gz=gz1*gz2;margin(gz);t=feedback(gz,1);step(t);(6.2)系統的運行結果如下: untitled5gc1 = 0.23 s + 1 - 0.055 s + 1continuous-time transfer function

14、.gz1 =3.917 z - 3.75 - z - 0.8333sample time: 0.01 secondsdiscrete-time transfer function.gz2 = 0.0009901 z2 + 0.00198 z + 0.0009901 -z2 - 1.98 z + 0.9802sample time: 0.01 secondsdiscrete-time transfer function.gz2 = 0.0009901 z2 + 0.00198 z + 0.0009901 -z2 - 1.98 z + 0.9802sample time: 0.01 seconds

15、discrete-time transfer function.(6.3)校正后離散系統的單位階躍響應曲線如下所示: 圖6 離散后系統的單位階躍響應曲線2、對離散化后的系統進行simulink仿真: 2.1目的:通過進行simulink仿真以觀察離散化后的系統對單位階躍輸入、單位速度輸入的響應情況,并以此看離散化后的系統能否滿足我們對系統靜動態性能的要求,并以此為依據進一步修改控制器的設計。 2.2單位階躍輸入時的simulink仿真: (1)、simulink模型圖為:圖7 單位階躍輸入時的simulink模型 (2)、單位階躍輸入時系統的響應波形為:圖8 離散后系統的單位階躍輸入響應波形

16、(3)、單位階躍輸入作用時控制器輸入處的偏差信號波形(scope1)如圖9所示: 圖9 (4)、無控制通道的偏差信號波形如下(scope2)如圖10所示: 圖102.3單位速度輸入時的simulink仿真: (1)、simulink仿真模型如圖11所示: 圖11(2)、單位速度輸入時的仿真波形為(scope)如圖12所示: 圖12 (3)、單位速度輸入時,有控制器的回路的偏差信號的波形為(scope1)如圖13所示: 圖13(4)、單位速度輸入時,無控制器的回路的偏差信號的波形如圖14所示(scope2): 圖143、硬件電路的設計 3.1控制系統的編排結構(1)編排結構的選擇分析:如果使用直

17、接型編排結構,那么當控制器中任一系數存在誤差,則將導致控制器所有的零極點產生響應的變化,嚴重影響系統的性能。此外,在控制器設計時采用了超前串聯校正,所以采用串聯型結構比較簡單,而且任何一系數有誤差,不會使控制器所有的零極點產生相應的變化。綜上所述,采用串聯型編排結構。(2)轉化為差分方程形式: 因為(22)又因為,(23)所以由以上兩式可得:(24)即:(25)32元器件選擇(1)控制器選擇選擇80c51單片機,外接晶振為6mhz.(2)a/d選擇選擇adc0808,該ad有8路輸入通道,8位a/d轉換器,分辨率為8位,當時鐘為500khz時,轉換時間大約為130微秒;單個+5v供電,模擬輸入

18、電壓范圍為0到5v,不需要零點和滿刻度校準;內部沒有時鐘,所以需要外接時鐘,時鐘可以通過外接dclock并將頻率設為500khz,也可以從單片機的ale引腳引出,再經過d觸發器進行二分頻,從而達到500khz的時鐘信號。如果采用后一種方法,則d觸發器選擇74ls74。a/d轉換時間為,應該能滿足設計的要求。(3)d/a選擇選擇dac0832,分辨率為8位;可單緩沖,雙緩沖或者直接數字輸入;只需要在滿量程下調整線性度;單一電源供電+5v到+15v;可以滿足設計的要求。輸出電壓值為:(26)3.3電路的設計(1)a/d轉換電路的設計將ad轉換的adda,addb,addc接地,以選擇in0鎖存器。

19、eoc接p3.3(轉換結束時,adc發出轉換結束信號eoc為高電平),轉換結束則輸出1,否則輸出為0;oe接p2.1,選擇是否輸出數據。oe=0,輸出高阻態,oe=1輸出數字量;st接p2.0,轉化開始信號。由1變零轉換開始;in0接輸入的模擬數據e(t);in1-in7懸空;如果采用方法二,即可clock接分頻器74ls74的輸出端,輸入500khz時鐘信號;vref(+)接+5v,vref(-)接地,vcc接電源,gnd接地;ale地址所存,上跳沿鎖存,可以接在p2.o口。d0-d7接單片機的p1.0-p1.7;(2)d/a轉換電路設計 d0-d7接單片機的p0.0-p0.7,數字量輸入;

20、將cs,wr1,wr2,xfer引腳接地,這使得dac0832工作在直通方式;ile引腳接+5v,vref選擇+5v,gnd接地;此時dac0832處于直通工作方式,一旦有數字量輸入,就直接進入dac寄存器,進行d/a轉換。dac0832為電流型dac,故需要運放轉換電路以得到輸出電壓信號,選擇運算放大器為lm324(3)8051單片機的電路設計: p0.0-p0.7接d/a轉換數字輸入端; p1.0-p1.7接a/d轉化數字輸出端; p2.0接a/d轉換st端;p2.1接a/d轉換oe端;p2.2接a/d轉換eoc端;外接2mhz的時鐘電路輸入到時鐘端xtal1,xtal2;外接復位電路到r

21、et;3.4硬件電路圖 硬件電路圖如圖15所示:圖15 4.用單片機實現控制算法4.1流程圖如圖16和圖17所示:圖16主程序流程圖圖17中斷服務子程序流程圖4.2用c語言編寫的仿真程序#include#define uchar unsigned char#define uint unsigned intsbit st=p20;sbit oe=p21;sbit eoc=p22; /a/d轉換結束標志位void main()float uk_1=0.0; floatuk=0.0;floatek=0.0;float ek_1=0.0;/初始化 st=0; oe=0; /輸出高阻態 /*定時器中斷初

22、始化*/ tmod|=0xf9;/ 設置t1工作在方式1,16位定時器方式 th1=0xec; tl1=0x78; /裝初值,定時10ms ea=1;/開總中斷 et1=1;/開t1中斷 tr1=1;/啟動定時器1 while(1) if(eoc=1) uk_1=uk; ek_1=ek; oe=1;/輸出轉換數據ek=p1;/給單片機輸入數據,將adc的輸出賦給ek oe=0; /oe輸出允許控制端,輸出高阻態 uk=0.039167*ek-0.017625*ek_1+0.1*uk_1;/控制器差分方程a=(uchar)uk;/數據輸入到d/a轉換器 p0=a; while (eoc=0) ;

23、/等待a/d轉換結束 /*定時器中斷處理*/void time(void) interrupt 1 using 1 th1=0xec; tl1=0x78;/重裝初值 oe=0; st=0;/開始下一次轉換數據5設計工作總結及心得體會5.1設計工作總結(1)運用自動控制原理所學習的基本知識求解出控制器的傳遞函數模型首先,按照自動控制原理第五章的相關內容對所給系統進行分析,此過程中同時用到了在電力電子技術課程里所學習的matlab仿真的相關內容,即先假設在系統要求的速度誤差kv下,用matlab畫出未校正系統的bode圖,觀察未校正系統的哪些性能指標滿足要求,哪些不能滿足要求;然后,利用自動控制原

24、理所學知識判斷應采用何種校正,以及利用相關知識設出控制器的傳遞函數模型,并求解出控制器傳遞函數模型的表達式。(2)利用matlab仿真檢驗所求控制器能否實現系統所給要求 首先,通過matlab編程來繪制出系統校正后的bode圖,看是否滿足幅值裕度的要求和相位裕度的要求;其次,再通過matlab編程繪制出校正前后系統的單位階躍響應曲線,通過對校正前后的單位階躍響應曲線的比較,我們可以很清晰的看出控制器的作用,以及粗略的了解控制器設計的是否合理。 (3)對模擬控制器進行離散化并用matlab仿真觀察離散化后的系統能否滿足對系統的各項動態性能的要求: 首先,利用計算機控制系統課程所學內容,將系統進行

25、離散化,本課設采用的是雙線性變換法(tustin),原因,精度較高一些且雙線性變換法在工程上應用較廣泛。按照所學離散方法,依次將所求的控制器的傳遞函數模型和被控對象的傳遞函數模型離散化。在離散化這一步驟中,非常重要細節之一就是對采樣時間的選取,這要求設計者應先從大體上估計一個比較常用的且能滿足各種器件的正常工作對采樣時間的要求,此外,還應考慮到整體的精度,如本課程設計中的a/d和d/a轉換器的精度和工作時間的要求。其次,利用matlab編寫相關程序來繪制出離散化后系統能否滿足對系統各項性能指標之間的要求。在本次課程設計中,對離散化后的系統繪制了bode圖,并繪制了單位階躍響應曲線,通過對mat

26、lab仿真結果的分析知,系統穩定且滿足本次課程設計對其提出的各項性能指標的要求。(4)將所求的控制器離散化后的模型化為差分方程的形式相關內容參考計算機控制系統,注意:在現實工程中,不能采用后向差分方程,因為它需用到下一時刻或未來幾個時刻的數值,在物理上是無法實現的,故采用前向查分方程。(5)將所得的差分方程用硬件實現這部分內容主要參考了單片機原理第十一章的相關內容,以及關于51單片機的相關內容。總體考慮為:首先需要adc(即ad轉換器),將輸入的連續的偏差信號進行數字化處理,然后送給單片機進行相關控制,也就是說單片機是第二大部分內容,其次,將單片機輸出的控制量再通過dac(即da轉換器)化為時

27、間連續幅值離散的準連續量輸出,因為dac8008的輸出是電流,故需要一個運算放大電路將其電流輸出轉化為電壓輸出。 首先,選擇各個器件,并標明各個器件的型號。 然后,利用visio軟件,畫出系統的流程圖,在流程圖中標明每一步要實現的工作以及各個步驟之間的時序關系和相互影響。注意:流程圖要仔細考慮,它直接影響或指導了你下面的硬件連線,以及如何通過編程來實現控制器,可以說是至關重要的一步。 其次,利用proteus畫出硬件電路圖,在畫的過程中,所需要的器件應及時添加到器件列表中,這樣便于觀察和修改。 此外,根據控制器的表達式,以及單片機或者說這個系統的工作原理和接線圖設計出相應的程序。最后,驗證、修改環節。先通過keil uvision4或其它等價軟

溫馨提示

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

評論

0/150

提交評論