<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 一款DSP的逆變電源模糊PID控制

          一款DSP的逆變電源模糊PID控制

          作者: 時間:2016-12-21 來源:網(wǎng)絡 收藏

            1、引言

          本文引用地址:http://www.ex-cimer.com/article/201612/332424.htm

            由于逆變器傳遞函數(shù)不易得到,而且電壓輸出經(jīng)常波動,傳統(tǒng)的單純PID控制難以達到快速和穩(wěn)定的響應,而模糊控制與PID相結合的控制方法,通過對誤差量的變化實時分析,調整PID參數(shù),達到快速響應和無差跟蹤,可實現(xiàn)逆變電源的高精度實時控制。

            模糊控制系統(tǒng)原理

            模糊PID控制器以電壓偏差e和偏差變化量ec作為輸入,PID參數(shù)模糊自整定是找出PID三個參數(shù)與e和ec之間的模糊關系,在程序運行中通過不斷檢測e和ec,根據(jù)模糊控制原理對三個參數(shù)進行在線修改,以滿足不同e和ec對控制參數(shù)的不同要求,從而使被控對象有良好的動、靜態(tài)性能。其在線自校正工作流程如圖1所示。

            圖中:ki、kp、kd分別為積分增益系數(shù)、比例增益系數(shù)和微分增益系數(shù)。

            1、PID調整控制器

            圖1中r為給定參考電壓,u是逆變器實際輸出電壓,e是偏差信號,ec是偏差變化率。模擬形式的PID控制算式為

            本文采用TMSLF2407實現(xiàn)數(shù)字PID控制,對式(1)進行離散化,可得到式(2)PID控制的離散形式,為了增加系統(tǒng)的可靠性,采用增量式PID控制算式,式(2)為第k次PID控制器的輸出量,減去第k-1次PID控制器的輸出量即可得到式(3)增量式PID控制算式。

            2、模糊PID的實現(xiàn)

            DC轅AC逆變電源控制的主要是輸出電壓及頻率的準確性。頻率的準確性由PWM發(fā)生器決定(它是一個存貯在存儲器內的一個正弦輸出表格),只要觸發(fā)計算準確就能達到設計要求。負載的變化使輸出電流產(chǎn)生變化,對于一定脈寬輸出的DC轅AC電源來說,勢必導致輸出電壓的變化。因此采用模糊控制規(guī)則根據(jù)不同的渣e渣和渣ec渣,對PID控制器的參數(shù)kp、ki、kd進行在線自整定來調節(jié)輸出電壓。模糊控制器的輸入變量是偏差絕對值渣E渣、偏差變化率絕對值渣EC渣,模糊控制器的輸出是PID控制器的比例增益系數(shù)KP、積分增益系數(shù)KI和微分增益系數(shù)KD。本文采用CRI(CompositionalRuleofInference)推理法設計模糊規(guī)則,為了在實時控制中避免關系矩陣的合成運算,先在脫機狀態(tài)下把所有可能的輸入和輸出情況計算出來,形成一張控制表去執(zhí)行控制,控制表是以整數(shù)形式表示的,為了能產(chǎn)生控制表,在CRI推理法中把語言變量的論域轉換成有限整數(shù)的論域,本質上是把連續(xù)論域離散后產(chǎn)生離散論域。采用式(5)可以將連續(xù)域離散化到整數(shù)論域N。

            本文中,各語言變量的擋數(shù)均為4擋(零、小、中、大),因此取整數(shù)論域N為{0,1,2,3,4,5,6}。此時,如圖2所示,可取語言變量值4擋如下:

            大(L)———取在5、6附近

            中(M)———取在3、4附近

            小(S)———取在1、2附近

            零(Z)———取在0附近

            在本文中利用CRI法推理時,控制過程是用查控制表來產(chǎn)生控制量的,在控制表中,模糊偏差量渣E渣、模糊偏差變化率渣EC渣,PID控制器的模糊比例增益系數(shù)KP、模糊積分增益系數(shù)KI和模糊微分增益系數(shù)KD都是用其對應整數(shù)論域的元素來表示的。對于單個實時精確量利用式(5),得到的結果再四舍五入,就求出了對應整數(shù)論域的相應元素,從而實現(xiàn)了輸入量的模糊化。

            針對不同的e和ec,kp,ki,kd的整定原則為:

            1)當渣e渣較大時,為使系統(tǒng)具有較好的跟蹤性能,應取較大的kp與較小的kd,同時為避免系統(tǒng)響應出現(xiàn)較大的超調,應對積分作用加以限制,通常取ki=0。

            2)當渣e渣和渣ec渣中等大小時,為使系統(tǒng)具有較小的超調,kp應取小一些,在這種情況下,kd的取值對系統(tǒng)的影響較大,應取小一些,ki的取值要適當。

            3)當渣e渣較小時,為使系統(tǒng)具有較好的穩(wěn)定性能,kp和ki均應取大些,同時為避免系統(tǒng)在設定值時出現(xiàn)振蕩,并考慮系統(tǒng)抗干擾的性能,當渣ec渣較大時,kd可取小些;渣ec渣較小時kd可取得較大些。

            根據(jù)以上整定原則和總結工程設計人員的技術知識和操作經(jīng)驗,建立了表1所列的模糊規(guī)則表。

            式中:k為模糊控制中對模糊量進行反模糊化時的比例因子。3、DSP軟件算法實現(xiàn)

            為了保證模糊PID控制的實時性和準確性,DSP在A/D采樣的中斷子程序中就調用模糊PID控制算法程序,立即計算出輸出控制量并送到被控對象,根據(jù)TMSLF2407的性能,機器時鐘周期和中斷延時可以計算出本系統(tǒng)從采樣當前實際輸出值到輸出控制量大約需要6.67滋s,這對于1ms一次的采樣來說是足夠的,完全滿足實時性要求。程序流程圖如圖3所示。

            下面是部分程序。

            執(zhí)行PID控制

            PID_Control:

            SETCSXM

            SETCOVM

            SPM#O

            LDP#4

            LACLADRESULTSACLPID_input

            DALLFuzzy_PID_table

            反模糊變化程序

            Fuzzy_PI_end:

            LTk1

            MPYFuzzy_K

            PAC

            SACLKp

            LTk2

            MPYFuzzy_K

            PAC

            SACLKi

            LTk3

            MPYFuzzy_K

            PAC

            SACLK

            RET

            實驗結果

            圖4為實驗波形,其中(a)、(b)為PID控制時突減負載、突加負載時的電壓波形。(c)、(d)為模糊PID控制時突減負載、突加負載的電壓波形,從實驗結果可以看出采用模糊PID控制的方法與一般的PID控制方法相比具有動態(tài)響應速度快、超調小,輸出穩(wěn)定后其幅值變化很小,突加、減負載時電壓變化幅值小的優(yōu)點,因而能更有效地抑制負載突變或外界干擾對電壓的影響。

            1)模糊PID控制器既具有模糊控制的自適應能力,又具有PID控制器靈活性的特點。

            2)模糊控制作為一種智能控制方法,在逆變電源電壓控制應用中獲得了較好的控制效果,具有控制精度高,實時性、穩(wěn)態(tài)輸出特性好等優(yōu)點。

            3)采用DSP控制系統(tǒng)在滿足逆變電源控制的要求下,具有成本低、控制靈活、可靠性高的特點。



          關鍵詞: DSP逆變電源PID控

          評論


          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();