數字PID調節雙閉環PWM調速系統設計.doc_第1頁
數字PID調節雙閉環PWM調速系統設計.doc_第2頁
數字PID調節雙閉環PWM調速系統設計.doc_第3頁
數字PID調節雙閉環PWM調速系統設計.doc_第4頁
數字PID調節雙閉環PWM調速系統設計.doc_第5頁
已閱讀5頁,還剩17頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

運動控制系統期中試題08級數字PI調節雙閉環PWM調速系統設計 自動化 數字PID調節雙閉環PWM調速系統設計摘要:以雙極式可逆PWM直流調速系統為目標,采用STC89C51控制器PID算法實現兩個PI調節器,分別構成轉速、電流雙閉環,采用TL094(PWM)脈寬調制器產生PWM波,再經過TPS2812 MOSFET驅動器放大,最終實現調節給定改變PWM占空比進而調節電機的運行狀態。關鍵字: 雙閉環 數字PI 調節器 PWM 調速 1引言直流電動機因其可以方便地通過改變電樞電壓和勵磁電流實現寬范圍的調速而得到廣泛的應用,而PWM調速系統又因其優點,應用日益廣泛。本文采用數字PID算法的雙極式可逆PWM調速系統的方法及實現過程。2 方案選擇與論證2.1 概述PWM直流調速系統可分為微機控制的數字系統和模擬器件電路組成的模擬系統。具體實現則又分為PID調節器和PWM脈寬調制的數字與模擬實現,而不同的方法其實現的難易程度及側重點各不相同。2.2方案選擇2.1.1脈寬調制的方法多諧振蕩器或單穩態觸發器組成的脈寬調制器。用比較器產生鋸齒波或三角波統同可調的基準比較獲得脈寬調制。開關芯片TL494基本組成原理便屬于這一種。數字脈寬調制。采用微機控制系統,直接采用IO獲得PWM波形,程序繁瑣,通常采用帶片上PWM資源的處理器,如C8051F040的PCA很容易產生PWM波形。2.1.2 PI調節器模擬PID特別容易實現,只需要用運算放大器構成比例、積分和微分電路即可,應用的意義已不太大。數字PID算法。其使用已越來越廣泛,而且更容易實現微機的數字控制,因此已成為主流。2.1.3最終選擇綜合以上,本文選擇數字PID算法實現PI調節器,用有固定頻率的開關芯片的TL494,實現PWM波調制。通過模擬與數字結合,最終完成雙閉環直流調速系統。圖1.2 系統原理框圖3參數計算3.1直接參數3.2電流環:3.2.1時間常數失控時間,即滯后時間:電流反饋濾波時間常數按小時間常數近似處理3.2.2選擇電流調節器結構根據設計要求:,而且因此可按典型I型系統設計。電流調節器選用PI 型,其傳遞函數為:電流環開環增益:要求,按表2-2,應取, 因 此 于是ACR比例系數為:3.2.3檢驗近似條件:電流環截止頻率 脈寬調制器傳遞函數的近似條件: 現在,滿足近似條件。忽略反電動勢變化對對電流環動態影響的條件:現在,滿足近似條件。電流環小時間常數近似處理條件:現在,3.2.4計算調節器電阻電容,取,取,取按照上述參數,電流環可以達到的動態跟隨性能指標為 圖3-1 電壓調節器3.3轉速環:3.3.1 確定時間常數 電流環等效時間常數為:= 轉速濾波時間常數 .根據所用測速發電機紋波情況,取 轉速環小時間常數按小時間常數近似處理,取3.3.2 選擇轉速調節器結構由于設計要求無靜差,轉速調節器必須含有積分環節,又根據動態要求,應該按典型II型系統設計轉速環。故ASR選用PI調節器,其傳遞函數為3.3.3 選擇轉速調節器參數按跟隨和抗擾性都較好的原則,取h=5,則ASR的超前時間常數為轉速環開環增益于是,ASR的比例系數為:3.3.4檢驗近似條件轉速環截止頻率為 電流環傳遞函數簡化條件:現在,滿足簡化條件。轉速環小時間常數近似處理條件:現在,滿足近似條件。3.3.5 計算調節器電阻和電容轉速調節器原理如下圖所示,取,則,取,取,取3.3.5校核轉速超調量當h=5時,;而,因此圖3-2 電流調節器4數字PI4.1程序算法: 算法是程序的核心,因此PID算法的實現至關重要。 圖4-1 PID算法框圖 圖4-2主程序流程框圖在電流環和轉速環的設計中,我選擇的是PI調節器,我設計的是一個PID所有參數均可調的函數,所以使用時只要改變相應的參數即可得到所要的PI控制器,具體設置方法請參考主程序。4.1.1 PID算法#include #include#includePID.H/*功能:定義結構體變量*/struct _pid int pv; /*integer that contains the process value*/int sp; /*integer that contains the set point*/float integral;float pgain;float igain;float dgain;int deadband;int last_error;struct _pid warm,*pid;int process_point, set_point,dead_band; float p_gain, i_gain, d_gain, integral_val,new_integ;/* 函數名:pid_init 功能描述: PID初始化,通過設定*pv 、*sp賦值修改日期:20011.05.24*/void pid_init(struct _pid *warm, int process_point, int set_point) struct _pid *pid; pid = warm; pid-pv = process_point; pid-sp = set_point; /* 函數名:pid_tune 功能描述:結構體變量一致.修改日期:20011.05.24*/void pid_tune(struct _pid *pid, float p_gain, float i_gain, float d_gain, int dead_band) pid-pgain = p_gain; pid-igain = i_gain; pid-dgain = d_gain; pid-deadband = dead_band; pid-integral= integral_val; pid-last_error=0; /* 函數名:pid_setinteg功能描述:/PID結構體中的偏差成員更新修改日期:20011.05.24*/void pid_setinteg(struct _pid *pid,float new_integ) pid-integral = new_integ; pid-last_error = 0; /* 函數名:pid_bumpless 功能描述:修改日期:20011.05.24*/void pid_bumpless(struct _pid *pid) pid-last_error = (pid-sp)-(pid-pv);/* 函數名:pid_calc 功能描述:PID核心計算 修改日期:20011.05.24*/float pid_calc(struct _pid *pid)int err;float pterm, dterm, result, ferror; err = (pid-sp) - (pid-pv); if (abs(err) pid-deadband)ferror = (float) err; /*do integer to float conversion only once*/ pterm = pid-pgain * ferror; if (pterm 100 | pterm integral = 0.0;elsepid-integral += pid-igain * ferror; if (pid-integral 100.0) /抗積分飽和,防最大溢出pid-integral = 100.0;else if (pid-integral integral = 0.0; /防最小溢出dterm = (float)(err - pid-last_error) * pid-dgain;/微分值result = pterm + pid-integral + dterm;else result = pid-integral; pid-last_error = err; return (result/p_gain);4.1.1 AD0809.c文件#includeADC0809.h#includereg51.hsbit START=P34;/ATART,ALE接口。0-1-0:啟動AD轉換。sbit EOC=P33;/轉換完畢由0變1.unsigned int uiADTransform()unsigned int uiResult;START=1; /啟動AD轉換。START=0;while(EOC=0); /等待轉換結束。uiResult=OUTPORT; /出入轉換結果。/uiResult=uiResult; /需做處理,則處理結果。return uiResult;4.1.1 主函數main.c文件#includereg51.h#includePID.H#includeADC0809.h#define DAC0832_on P2#define uchar unsigned charextern struct _pid Speed,Circuent,*pid;extern int process_point, set_point,dead_band; extern float p_gain, i_gain, d_gain, integral_val,new_integ;bit sample;/* 函數名:定時器初始化 功能描述:采樣時間的初始化設置 250us采樣一次修改日期:20011.05.24*/void Timer_Init(void) TCON = 0x50; TMOD = 0x22;/定時器0、1均方式2自動重載 TL0 = 0x6;/ TH0 = 0x6;/TL0 = 0x6;/ TH0 = 0x6;/IE |= 0x82;void PID_Pramt(float p,i,d)p_gain = p;i_gain = i;d_gain = 0;float Un_value=0;float Ue_value=0;void main(void) int count=0; pid = &Speed;Timer_Init();/定時器初始化dead_band = 1;integral_val =(float)(0.01);while(count=200|process_point=set_point)/pid_init(&Speed, process_point,set_point);pid_tune(&Speed, p_gain,i_gain,d_gain,dead_band);pid_setinteg(&Speed,0.0);pid_bumpless(&Speed);if(sample)sample=0;PID_Pramt(5.4,120);Un_value = pid_calc(&Speed);PID_Pramt(4.625,154.1);Ue_value = pid_calc(&Circuent); count+;process_point=Ue_value;void t0() interrupt 1 uiADTransform();sample=1;void t1() interrupt 3 DAC0832_on=(Ue_value*256);4.2硬件基礎: 數字部分主要功能實現數字PID算法,故此其需要主控制器、AD采集模塊、DA輸出模塊。這里分別用我們都很熟悉的STC89C51的最小系統、ADC0809、DAC0832.ADC0809 的INT0通道接電流環的輸出,上面用到的都是我們單片機課學過和經常使用的,因此其功能不作多的介紹了。圖4-2 STC89C51最小系統圖4-2 AD0809采集模塊 圖4-2 DA0832輸出模塊5模擬部分 5.1 系統主電路 變壓器將AC220V變到AC30V,再經整流后供系統的主電路H橋,以及基準電壓的12、5V輸出。圖5-1 主電源圖5-2 H橋及測速、電流檢測模塊圖5-2 基準電壓模塊5.2 PWM調制波產生 前述確定了采用TL494開關控制芯片,需外接R、C提供振蕩電路,振蕩頻率為TL494 的內部電路由基準電壓產生電路、 振蕩電路、間歇期調整電路、 兩個誤差放大器、 脈寬調制比較器以及輸出電路等組成。13腳與14腳基準相接,構成推挽輸出,可以方便構成兩路互補的PWM調制波。TL49其輸出頻率可在1KHZ至200KHZ間雖外界電阻電容值變化,我們接10uf電阻和100K電位器方便改變開關頻率做他用,其頻率近似公式: 我們選擇推挽輸出方式,則頻率再降為原來一半,,算得電阻R=55K,則可產生1K調制波。 誤差放大器反相端接12V基準電源經可調電位器調節,同相端接PI調節器輸出,單片機的DA輸出。經單片機的PI調節后的電壓調整電壓輸出。圖5-1 PWM芯片TL4945.3 PWM波驅動TPS2812是TI公司生產的雙路高速MOS管驅動,其驅動電流峰值可達2A,內部含14至40v穩壓器。其接法簡單,如圖示。經過驅動后得到Ug1、Ug2兩路互補的PWM波供H橋主電路用。圖5-2 TPS28126設計總結這次設計中,我加深了對直流雙閉環系統的理解,特別是對于工程設計方法的理解。對一學期所學的知識得到綜合應用,這使我獲益匪淺。本次期中考試不同以往的考試,更加強調實際能力的綜合,用到我們大學以來學到的很多課程和實踐,因此這次設計是對大學來整個知識體系的綜合體現。總之,本次課程設計,我學習了閉環系統數字控制方法的實現方法,加深了對控制系統的理解,也體會到控制思想!最后感謝大學以來各位老師的辛勤付出,教會我們不僅有知識,更有一種分析解決問題的思想!參考文獻:1 王兆安等.電力電子技術. 北京.機械工業出版社,2000.2 陳伯時.運動控制系統. 北京.機械工業出版社,2003.附錄:1、MATLAB仿真圖6-1 MATLAB 仿真2、設

溫馨提示

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

評論

0/150

提交評論