PID溫度控制算法_第1頁
PID溫度控制算法_第2頁
PID溫度控制算法_第3頁
PID溫度控制算法_第4頁
PID溫度控制算法_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、溫度控制算法的軟件實現(xiàn),問題?,1. 怎樣評價溫度控制系統(tǒng)控制效果的優(yōu)劣? 2. 什么是PID控制算法?什么是數(shù)字式PID控制算法? 3. 什么是積分飽和現(xiàn)象?怎樣避免積分飽和現(xiàn)象? 4. 怎樣用C語言編寫PID控制程序? 5. 怎樣在PSOC上實現(xiàn)PID控制溫度? 6.怎樣測試PID控制器是否正常工作?,問題一:怎樣評價溫度控制系統(tǒng)控制效果的優(yōu)劣?,能夠快速穩(wěn)定準確的實現(xiàn)控制 能夠?qū)囟绕钪悼刂圃谝粋€較小的范圍內(nèi) 具有較強抵抗干擾的能力 控制超調(diào)量不能過大,問題二:什么是PID控制算法?什么是數(shù)字 式PID控制算法?,PID控制算法: PID控制器是一種線性控制器,它將給定值與實際輸出值的

2、偏差 的比例、積分和微分進行線性組合,形成控制量 輸出,如圖下圖所示。 PID控制器方框圖,問題二:什么是PID控制算法?什么是數(shù)字式PID控制算法?,模擬控制算法:用于模擬控制系統(tǒng) 被測參數(shù)由傳感器變化成統(tǒng)一的標準信號后輸入調(diào)節(jié)器,在調(diào)節(jié)器中與給定值進行比較,再把比較后的差值經(jīng)運算后送到執(zhí)行機構(gòu),改變進給量,以達到自動調(diào)節(jié)的目的。 數(shù)字控制算法:用于數(shù)字控制系統(tǒng) 先把過程參數(shù)進行采樣,并通過模擬量輸入通道將模擬量變成數(shù)字量,這些數(shù)字量通過計算機按一定控制算法進行運算處理,運算結(jié)果經(jīng)轉(zhuǎn)換成模擬量后,由模擬量輸出通道輸出,并通過執(zhí)行機構(gòu)去控制生產(chǎn),以此達到給定值。,問題三:什么是積分飽和現(xiàn)象?怎

3、樣避免積分飽和 現(xiàn)象?,在實際的控制系統(tǒng)中,控制量實際輸出值往往受到執(zhí)行機構(gòu)性能的限制,而被限制在一定的范圍內(nèi),即 , 其變化也局限在一定的范圍,即 。 如果控制量在上述范圍內(nèi),那么控制可以達到預期效果;一旦超出上述范圍,則實際執(zhí)行機構(gòu)的控制量就不再是計算值。這相當于在系統(tǒng)中串聯(lián)了一個飽和非線性環(huán)節(jié),因此,將引起不期望的效應,即飽和效應。,問題三:什么是積分飽和現(xiàn)象?怎樣避免積分飽和 現(xiàn)象?,防止調(diào)節(jié)器積分飽和的措施一: 積分分離法 積分分離的基本思路是:當被調(diào) 量與設定值偏差較大時,取消積分作 用,以免由于積分作用使系統(tǒng)穩(wěn)定性 降低,超調(diào)量增大;當被控量接近給 定值時,引入積分控制,以便消除

4、靜 差,提高控制精度。,問題三:什么是積分飽和現(xiàn)象?怎樣避免積分飽和現(xiàn)象?,防止調(diào)節(jié)器積分飽和的措施二: 遇限削弱積分控制算法 當控制進入飽和區(qū)以后,便不再進行積分項的累加,而只執(zhí)行削弱積分的運算。因而,在計算()時,先判斷()是否已超出限制值。若(),則只累加負偏差;若(),則累加正偏差。采用遇限削弱積分控制算法后,可以避免控制量長時間停留在飽和區(qū)。,問題三:什么是積分飽和現(xiàn)象?怎樣避免積分飽和 現(xiàn)象?,防止調(diào)節(jié)器積分飽和的措施三: 有效偏差法 當根據(jù)位置算法算出的控制量超出限制范圍時,控制量實際上只能取邊界值,即或,有效偏差法是將相應的這一控制量的偏差值作為有效偏差值計入積分累計而不是將實

5、際偏差計入積分累計。因為按實際偏差值計算出的控制量并未實行。,問題四:怎樣用C語言編寫PID控制程序?,通過采樣將模擬信號轉(zhuǎn)變?yōu)閿?shù)字信號,并與目標設置值進行比較分析。同時將二者的偏差通過算法輸出,進行反饋調(diào)節(jié)。整個過程不斷循環(huán),從而使得控制的對象保持一個較為恒定的值。 從而將模擬量轉(zhuǎn)變?yōu)橛嬎銠C可以操作的數(shù)字信號,則可采用C語言控制整個循環(huán)過程。,問題四:怎樣用C語言編寫PID控制程序?,問題四:怎樣用C語言編寫PID控制程序?,問題五:怎樣在PSOC上實現(xiàn)PID控制溫度?,在中斷程序中定義的臨時變量: float de,y0; static float Ie=0,de1=0; static u

6、int8 PID_Count=0; 在主程序外定義的常變量: #define Kp12.19/PID控制參數(shù) #define Ki0.3 #define Kd 109.7 #define Integral_Boundary 11.0/有限積分邊界 uint8 PWM_Output;,問題五:怎樣在PSOC上實現(xiàn)PID控制溫度?,PID_Count+; if(PID_Count100) PID_Count=0; de=Target_Temp-Current_Temp;/求溫度誤差e if(de-Integral_Boundary)/如果處于有限積分邊界之內(nèi) Ie=Ie+Ki*de;/求誤差的積分

7、 else Ie=0;/在邊界外時積分清零 y0=Kp*de+Ie+Kd*(de-de1)+128;/求輸出 if(y0255) y0=255; if(y00) y0=0; PWM_Output=(uint8)y0; de1=de; PWM_1_WriteCompare1(PWM_Output);/刷新PWM輸出,問題六:怎樣測試PID控制器是否正常工作,通過得到的響應曲線進行分析,從而判斷PID控制器是否正常工作,問題六:怎樣測試PID控制器是否正常工作,問題六:怎樣測試PID控制器是否正常工作,將電烙鐵連上,并設置一個目標溫度;從開始給電烙鐵加熱,直到電烙鐵達到目標溫度并穩(wěn)定在一個范圍內(nèi)。則開始記錄數(shù)碼管上顯示的溫度,從而得到此時電烙鐵的溫度。每隔一秒記錄一次,并連續(xù)記錄多組數(shù)據(jù),然后繪制出溫度變化曲線。觀察溫度曲線的變化是否在合理的范圍內(nèi)。,問題六:怎樣測試PID控制器是否正常工作,RecC+; if(RecC=1000) /每10秒記錄一個數(shù)據(jù) Recorder1RecorderPt=Current_Temp;

溫馨提示

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

評論

0/150

提交評論