數字控制器設計_第1頁
數字控制器設計_第2頁
數字控制器設計_第3頁
數字控制器設計_第4頁
數字控制器設計_第5頁
已閱讀5頁,還剩12頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、 課程論文數字PID控制器設計學生成績:學生學號:學生姓名: 學生專業:課程名稱:數字控制技術任課教師:提交日期:2015 年1月7日 數字PID控制器設計摘要 本文在完成計算機控制學習的基礎上結合自動控制原理的學科知識,自擬題目,利用計算機控制系統的知識,借助MATLAB,完成對自擬系統的分析和PID控制器的設計,并將硬件電路畫出。關鍵詞:計算機控制,PID控制器,MATLAB一前言設單位反饋系統的開環傳遞函數為,設計數字PID控制器,使系統的穩態誤差不大于0.1,超調量不大于20%,調節時間不大于0.5s。并采用位置算法實現該PID控制器。二設計原理 PID控制是最早發展起來的經典控制策略

2、,是用于過程控制最有效的策略之一。由于其原理簡單技術成熟,在實際應用中較易于整定,在工業控制中得到了廣泛的應用。它最大的優點是不需了解被控對象精確的數學模型,其需在線根據系統誤差段誤差的變化率等簡單參數,經過經驗進行調節器參數在線整定,即可取得滿意的結果。具有很大的適應性和靈話性。PID控制中的積分作用可以減少穩態誤差,但另一方面也容易導致積分飽和,使系統的超調量增大。微分作用可提高系統的響應速度,但其對高頻干擾特別敏感,甚至會導致系統失穩。所以,正確計算PID控制器的參數,有效合理地實現PID控制器的設計,對于PID控制器在過程控制中的廣泛應用具有重要的理論和現實意義。在典型PID控制系統中

3、PID控制器分別對誤差信號E(t)進行比例、積分與微分運算其結果的加權和集成系統的控制信號u(t),送給對象模型加以控制。PID控制器的數學描述為:(2.1)其傳遞函數可表示為:(2.2) 從根本上講,設計PID控制器也就是確定其比例系數Kp、積分系數Ti和微分系數Td。,這三個系數取值的不同,決定了比例、積分和微分作用的強弱。控制系統的整定就是在控制系統的結構已經確定、控制儀表和控制對象等處在正常狀態的情況下適當選擇控制器的參數使控制儀表的特性和控制對象的特性相配合從而使控制系統的運行達到最佳狀態,取得最好的控制效果。位置式PID控制算法。由于計算機控制是一種采樣控制,它只能根據采樣時刻的偏

4、差值計算控制量,需要進行離散化處理。現以一系列的采樣時刻點kT代表連續時間t,以和式代替積分,以增量代替微分,則可以作近似變換; 圖1 由于計算機控制是一種采樣控制系統,它只能根據采樣時刻的偏差值計算控制量。因此,(22)式中的積分和微分項不能直接使用,需要進行離散化處理。現令T為采樣周期,以一系列的采樣時刻點kT代表連續時間t,以累加求和近似代替積分,以一階后向差分近似代替微分,做如下的近似變換: t=KT (2.3) (2.4) (2.5)其中,T為采樣周期,e(k)為系統第k次采樣時刻的偏差值,e(k-l)為系統第(k-l)次采樣時刻的偏差值,k為采樣序號,k=0,1,2,。 將上面的(

5、2.4)式和(2.4)式代入(2.2)式,則可以得到離散的PID表達式 (2.6)如果采樣周期了足夠小,該算式可以很好的逼近模擬PID算式,因而使被控過與連續控制過程十分接近。通常把(2.6)式稱為PID的位置式控制算法。若在(2.6)式中,令: (稱為積分系數) ; (稱為微分系數)則 (2.7)(2.7)式即為離散化的位置式PID控制算法的編程表達式。可以看出,每次輸出與過去的所有狀態都有關,要想計算u(k),不僅涉及e(k)和e(k-l),且須將歷次e(j)相加,計算復雜,浪費內存。下面,推導計算較為簡單的遞推算式。為此,對(2.7)式作如下的變動:考慮到第(k-l)次采樣時有 (2.8

6、)使(2.7)式兩邊對應減去(2.8)式,得 整理后的 (2.9) 其中,(2.9)式就是PID位置式得遞推形式。 如果令則 (2.10)式中的同(2.10)式中的一樣。 因為在計算機控制中、都可以事先求出,所以,實際控制時只須獲得e(k)、e(k-l)、e(k-2)三個有限的偏差值就可以求出控制增量。由于其控制輸出對應執行機構的位置的增量,故(2.10)式通常被稱為PID控制的增量式算式。三數字PID參數整定 利用擴充臨界比例度法選擇數字PID參數,擴充臨界比例度法是以模擬PID調節器中使用的臨界比例帶法為基礎的一種數字PID參數的整定方法。其整定步驟如下:;1.選擇一個足夠短的采樣周期T。

7、通常選擇采樣周期為被控對象純滯后時間的1/10。2.在純比例的作用下,給定輸入階躍變化時,逐漸加大比例作用Kp(即減小比例帶),直至系統出現等幅震蕩,記錄比例增益Kc,及振蕩周期Tc 。Kc成為臨界振蕩比例增益(對應的臨界比例帶),Tc成為臨界振蕩周期。在MATLAB下輸入如下程序: sysc=tf(1,1/150,36/150,185/150,1); p=20:1:45; for i=1:length(p); sysc0=feedback(p(i)*sysc,1); step(sysc0),hold on end; axis(0,10,0,2.3)得到如下圖所示圖形: 圖2調整程序參數p=4

8、0:1:45進一步精確得Kc約為43.2,Tc約為0.5,觀察控制系統的響應特性。在MATLAB下輸入如下程序: sysc=tf(1,1/150,36/150,185/150,1); p=40:1:45; for i=1:length(p); sysc0=feedback(p(i)*sysc,1); step(sysc0),hold on end; axis(0,10,0,2.3)得到如下圖所示圖形: 圖3擴充臨界比例度法選擇數字PID參數的計算公式如下表所示:3. 選擇控制度。控制度的定義為數字調節器和模擬調節所對應的過度過程的誤差平方積分之比,即控制度=式中,為數字調節器的控制誤差;e為模

9、擬調節器的控制誤差.當控制度為1.05時,數字調節器魚模擬調節器的控制效果相當;當控制度為2時,數字調節器比模擬調節器的控制效果差一倍;在此選控制度為1.05。4.按選擇的控制度指標及Tc,Kc實驗測得值,由查表選擇相應的計算公式計算采樣周期:T=0.007,Kp=27,Ti=0.245,Td=0.07; =0.77,=270, Ki=0.23 圖4四建立simulink模型1.采用后向差分離散化,可得:= 在Matlab-simulink中建立如下模型Scope中得到階躍響應曲線如下所示: 圖5由圖可見超調量較大減小Kp的值,增大Kd用試湊法得到一組數據:T=0.014,Kp=15,Ki=0

10、.23 ,Kd=2502.采用后向差分離散化。Matlab-simulink中建立如下模型:Scope中階躍響應圖形如下 圖6由上圖可看出上組數據滿足了任務要求:系統的穩態誤差不大于0.1,超調量不大于20%,調節時間不大于0.5s。五MCS-51單片機實現控制器的設計控制系統結構框圖如下: 圖7 1. 器件選擇主控制器選用熟悉的AT89c51單片機。由于沒有對精度的要求,選用常見的8位AD/DA芯片ADC0809和DAC0832。由于系統要求采樣周期0.015ms,而上述AD、DA芯片轉化時間很短(ADC0809約100us,DAC0832約1us),因此上述芯片滿足要求。2. 電路設計1、

11、A/D芯片與單片機連接:單片機與AD、DA采用總線方式連接,鎖存器74LS373進行地址鎖存。采用統一編址方式訪問。地址線A0,A1,A2,A3分別于A,B,C,ALE連接,通過地址選擇IN0口為輸入。2、DAC0832與單片機連接如下:電流輸出,經雙運放轉化,輸出為雙極性。系統總電路如下:3. 程序設計程序采用匯編語言編寫主程序流程圖、中斷服務程序、PID算法流程圖如下: 開始 輸入給定值r(k) 初始化 調用AD轉換程序測出輸出值c(k) 計算偏差e(k)=r(k)-c(k) Up(k)=Kb*e(k)Ui(k)=Kie(k)+Ui(k-1)Ud(k)=Kde(k)-e(k-1) U(k)

12、=Up(k)+Ui(k)+Ud(k)e(k)e(k-1)Ui(k)Ui(k-1) 調用DA轉換程序輸出控制量u(k)到達采樣周期? Y N 程序設計如下:R EQU 31H ;給定值(階躍響應)KP EQU 32H ;存放kpKI EQU33H ;存放256*kiKDEQU34H ;存放kdE0EQU35H ;存放e(k)E1EQU36H ;存放e(k-1)UPLEQU37H ;Up(k)的低8位UPHEQU38H ;Up(k)的高8位UILEQU39H ;Ui(k-1)的低8位UIHEQU3AH ;Ui(k-1)的高8位DATEQU3BH ;采樣AD數據c(k)UKEQU3CH ;PID輸出

13、ORG0000HAJMPMAINORG000BHLJMPITT0 ORG 0100HMAIN: MOV SP,#60H MOV R0,#31H MOV R1,0CH CLR ALOOP: MOV R0,A ;31H3CH清0 INC R0 DJNZ R1,LOOP MOV R,#01H ;給定階躍值1 MOV KP,#16 ;比例系數kp=16 MOV KI,#3AH ;積分系數256*ki=3AH 以整數輸入 MOV KD,#250 ;微分系數kd=250 MOV TMOD,#01H ;設置定時器0方式1工作(16位定時器) MOV TL0,#0C9H ;定時14ms MOV TH0,#4F

14、H SETB TR0 SETB EAHERE: AJMP HEREITT0: MOV TL0,#0C9H ;重裝初值 MOV TH0,#4FH ACALL ADC ;調用AD轉換程序 ACALL PID ;調用PID控制程序 ACALL DAC ;調用DA轉換程序 RETIADC: MOV DPTR,#0F8H ;ADC0809模擬輸入通道IN0的地址 MOVX DPTR,A ;啟動AD轉換 ACALL DELAY ;軟件延時1s,等待轉換結束 MOVX A,DPTR ;讀取轉換結果 MOV DAT,A ;轉換結果保存,以便PID控制程序使用 DAC: MOV R0,#0F0H ;DAC083

15、2地址F0H送R0 MOV A, UK ;PID輸出 MOVX R0,A ;啟動DA轉換 RET DELAY: PUSH PSW PUSH ACC SETB RS0 ;選第1組為當前工作寄存器區 CLR RS1 MOV R1,#05HLOOP1: MOV R0,#64HLOOP2: DJNZ R0,LOOP2 ;延時時間為(100*2+1+2)*5=1000us=1ms DJNZ R1,LOOP1 POP ACC POP PSW RETPID: MOV B,DAT MOV A,R CLR C SUBB A,B ;求當次偏差e(k)=r-c(k) MOV E0,A ;存e(k) MOV B,KP

16、 MUL AB ;求up(k)=kp*e(k) MOV UPL,A ;保存up(k)的低8位 MOV UPH,B ;保存up(k)的高8位 MOV A,E0 MOV B,KI MUL AB ;計算256ki*e(k) MOV R1,B ;256ki*e(k)低8位丟掉,高8位->R1,為ki*e(k) MOV R2,UIL ;ui(k-1)低8位->R2 MOV R3,UIH ;ui(k-1)高8位->R3 MOV A,R1 ;ki*e(k)->A ADD A,R2 ;計算ui(k)低8位=ki*e(k)+ui(k-1)低8位 MOV R0,A ;暫存ui(k)低8位-

17、>R0 CLR A ADDC A,R3 ;ui(k)高8位=ui(k-1)低8位+低位進位 MOV R1,A ;ui(k)高8位->R1 MOV UIL,R0 ;存ui(k)低8位 MOV UIH,R1 ;存ui(k)高8位 MOV A,E0 ;e(k)->A MOV R0,E1 ;暫存e(k-1)->R0 MOV E1,A ;e(k)->e(k-1)為下次循環做準備 CLR C SUBB A,R0 ;計算e(k)-e(k-1) MOV B,KD MUL AB ;計算ud(k)=kd*e(k)-e(k-1) MOV R0,A ;暫存ud(k)低8位->R0 MOV R1,B ;暫存ud(k)高8位->R1 MOV A,R0 ADD A,UIL ;ui(k)低8位+ud(k)低8位->A MOV R0,A ;暫存ui(k)低8位+ud(k)低8位->R0 MOV A,R1 ADDC A,UIH ;ui

溫馨提示

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

評論

0/150

提交評論