PID算法的FPGA實(shí)現(xiàn)_第1頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、pid算法的fpga實(shí)現(xiàn) 1.引言 在許多現(xiàn)代化的工業(yè)生產(chǎn)如冶金、電力等,實(shí)現(xiàn)對(duì)溫度的精度控制至關(guān)重要的,不僅挺直影響著產(chǎn)品的質(zhì)量,而且還關(guān)系到生產(chǎn)平安、能源節(jié)省等一系列重大經(jīng)濟(jì)指標(biāo)。pid控制因?yàn)槠漪敯粜院茫慰啃愿?,在常?guī)的溫度控制中應(yīng)用十分廣泛。目前工程的實(shí)際應(yīng)用中,大多數(shù)含糊pid控制器都利用軟件編程來(lái)實(shí)現(xiàn),然而單片機(jī)的命令是按挨次執(zhí)行的,實(shí)時(shí)性不強(qiáng),加上軟件實(shí)現(xiàn)簡(jiǎn)單受外界的干擾,抗干擾性能力差,對(duì)于實(shí)時(shí)性要求很高和外界干擾比較嚴(yán)峻的系統(tǒng)不太相宜。本文選取(現(xiàn)場(chǎng)可編程門陣列)作為系統(tǒng)的主控制芯片,fpga全部的信號(hào)都是時(shí)鐘驅(qū)動(dòng)的,對(duì)于程序的執(zhí)行具有并行運(yùn)算的能力,顯著的提高了系統(tǒng)控制的

2、實(shí)時(shí)性,在fpga內(nèi)部硬件實(shí)現(xiàn)還可以防止像單片機(jī)程序一樣,在惡劣的環(huán)境條件下發(fā)生程序跑飛的問(wèn)題。尤其是現(xiàn)在fpga器件有越來(lái)越多的參考設(shè)計(jì)計(jì)劃以及ip(學(xué)問(wèn)產(chǎn)權(quán))核心庫(kù)方面的支持。利用fpga設(shè)計(jì)的pid控制器一方面可以將實(shí)現(xiàn)pid算法的模塊單獨(dú)作為控制模塊來(lái)用法,挺直去實(shí)現(xiàn)對(duì)控制對(duì)象的調(diào)整,另一方面,基于fpga的pid控制算法也可以將其作為系統(tǒng)內(nèi)的ip核,以便在多路或復(fù)雜的系統(tǒng)上挺直調(diào)用,加快研發(fā)設(shè)計(jì)速度。2.pid算法分析2.1 離散pid算法pid控制系統(tǒng)是一個(gè)容易的閉環(huán)系統(tǒng),1所示,pid系統(tǒng)框圖中,囫圇系統(tǒng)主要包括、pid控制器和控制對(duì)象,其中pid包括三個(gè)環(huán)節(jié),即比例、積分和微分

3、。圖1 pid系統(tǒng)框圖圖1中的r(t)作為系統(tǒng)的給定值,y(t)作為系統(tǒng)的輸出值,e(t)是給定值與輸出值的偏差,所以系統(tǒng)的偏差可以求得:e(t)=r(t)-y(t) (1)u(t)作為控制系統(tǒng)中的中間便量,既是偏差e(t)通過(guò)pid控制算法處理后的輸出量,又是被控對(duì)象的輸入量,因此模擬pid控制器的控制邏輯為:其中,kp為模擬控制器的比例增益,ti為模擬控制器的積分時(shí)光常數(shù),td為模擬控制器的微分時(shí)光常數(shù)。2.2 離散pid算法為了用微處理器實(shí)現(xiàn)pid算法,我們需要將模擬pid離散化,按照采樣時(shí)刻的偏差來(lái)實(shí)現(xiàn)pid算法,因此式(3.2)中的微分和積分項(xiàng)兩項(xiàng)內(nèi)容作離散化處理。假設(shè)t為采樣周期,

4、則積分項(xiàng)可作如下變換:采樣周期的時(shí)光十分短,故微分可以近似的表示為:將式(3)和式(4)帶入式(2)后,可得到離散pid算法為(限于篇幅,推導(dǎo)過(guò)程省略):這個(gè)等式被叫做增量式pid控制算法。其中,乘積因子由pid控制參數(shù)kp、ki、kd確定:3.pid算法的fpga實(shí)現(xiàn)由公式(5)知,增量式pid控制算法的詳細(xì)實(shí)現(xiàn)步驟為:先通過(guò)誤差計(jì)算模塊求出偏差值e(k)、e(k-1)、e(k-2),再通過(guò)乘積模塊求出三個(gè)信號(hào)分離與乘積因子的相乘,最后對(duì)乘積項(xiàng)求和得到最后的控制量。圖2所示為增量式pid算法結(jié)構(gòu)圖。3.1 誤差計(jì)算模塊誤差計(jì)算模塊的目的是為了求出三次相鄰的偏差采樣值,即公式(3.8)中提到的

5、e(k)、e(k-1)、e(k-2),輸入的給定值r(t)與實(shí)際輸出值y(t)相減得到誤差值。 hdl程序代碼如下,其中,ek0、ek1、ek2、rt、yt分離對(duì)應(yīng)偏差值e(k)、e(k-1)、e(k-2)、r(t)、y(t)。將上述程序在 ii軟件環(huán)境里完成編譯后,其結(jié)果3所示。圖2 增量式pid算法結(jié)構(gòu)圖圖3 誤差模塊仿真圖3.2 乘積和求和模塊通過(guò)誤差計(jì)算模塊求出e(k)、e(k-1)、e(k-2)后,由公式(5)知,要計(jì)算出控制量還必需將其分離與乘積因子做乘法運(yùn)算,通過(guò)硬件描述語(yǔ)言來(lái)實(shí)現(xiàn)乘法運(yùn)算的功能:根據(jù)上述程序,在quartus ii完成編譯后,其仿真結(jié)果4所示。圖4 乘法器仿真圖

6、現(xiàn)在可計(jì)算出0e(k)、1e(k-1)、2e(k-2)三個(gè)乘積項(xiàng)的計(jì)算結(jié)果,將上面三個(gè)乘積項(xiàng)求和就可以得出控制量u(k)。程序代碼如下所示,其中輸入val015.0、val115.0、val215.0 分離對(duì)應(yīng)0e(k)、1e(k-1) 、2e(k-2)乘積的結(jié)果,輸出val15.0就是控制量u(k)的值。根據(jù)上述程序,在quartus ii完成編譯后,其仿真結(jié)果5所示。圖5 pid求和模塊仿真波形圖3.3 溫度檢測(cè)及輸出控制設(shè)計(jì)本文用到的溫度測(cè)量器件是k型熱電偶,溫度測(cè)量范圍為01200。熱電偶輸出的是模擬信號(hào),必需舉行a/d轉(zhuǎn)換,同時(shí)還需對(duì)熱電偶舉行冷端補(bǔ)償和非線形校正。為了解決上面的問(wèn)題

7、,本文采納的是k型熱電偶專用數(shù)字轉(zhuǎn)換器max6675芯片,max6675芯片內(nèi)部集成了熱電偶,內(nèi)置高達(dá)12位的模數(shù)轉(zhuǎn)換器。還包括了非線性矯正、冷端補(bǔ)償、斷線檢測(cè)等功能模塊。max6675的工作溫度范圍為-2085,溫度的測(cè)量范圍為01024,溫度辨別率可以達(dá)到0.25。假設(shè)d為a/d轉(zhuǎn)換后得到的數(shù)字量對(duì)應(yīng)的十進(jìn)制數(shù)值,那么測(cè)量溫度值t可以通過(guò)如下公式算出:輸出控制電路采納的是(脈寬調(diào)制)方式,實(shí)現(xiàn)對(duì)爐的溫度控制。光耦芯片選用moc3061,用于對(duì)強(qiáng)弱電路的隔離,雙向?qū)ㄟx用的是bt137_600e。假如占空比越高,那么相對(duì)可控硅導(dǎo)通的時(shí)光也就越長(zhǎng),電阻爐加熱溫度也就越高,反之溫度也就會(huì)漸漸散熱降低,從而達(dá)到控制爐溫的目的。4.結(jié)語(yǔ)本文分析了pid算法,給出了在fpga內(nèi)部硬件實(shí)現(xiàn)增量式pi

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論