非整數控制時域模型預測控制
以動態矩陣控制(DMC,Dynamic Matrix Control) 的狀態空間描述為基礎,通過推導相鄰控制時域之間控制增量的遞推關係,提出了一種非整數控制時域方法,該方法主要針對整數控制時域在改善系統性能與穩定性時存在的缺點,利用一個調節參數 β,可以使控制時域連續地變化,在保證系統穩定性的前提下儘可能提高系統回響,而且涉及的計算量也不大,同時給出了非整數控制時域名義穩定性和魯棒性的條件,最後通過仿真說明了這種方法的有效性。
控制增量的遞推關係
為了方便推導,取 Q為單位陣,控制權重為常數 r ,並且假設當控制時域 M= m 時,動態矩陣為 F ,所求得的最優控制增量為Δ U( k) 。由公式Δ U ( k) =Δ U( k)- G g ×[ G( k)- FΔ U (k)]可以看出,當控制時域為m+1時,最佳化控制增量解中的Δ U (k)項等於控制時域為 m時的最佳化控制增量Δ U (k)加上一個修正項,同時控制增量的遞推關係中只涉及到一個標量的求逆,即 G,這是非常容易求解的,根據控制增量解的遞推關係,當初始確定了一個較小的控制時域值,並求得了某一時刻的最優控制增量解時,則可以得到控制時域增加時對應時刻的最優控制增量解,這不僅可以幫助確定合適的控制時域值,而且便於得到較為光滑變化的最優控制增量解,有利於控制器參數的線上調節和改善系統的性能。
調節參數β的引入
為了方便說明,以相鄰兩控制時域m和m+1為例來加以說明。從上面的分析可以看出,Δ U( k)和Δ U之間存在一種遞推關係,但由於控制時域是整數,使得控制增量在Δ U( k)和Δ U之間不能連續變化,假設當控制時域為 m時,系統是穩定的,而當控制時域為 m+1時,系統是不穩定的,那么為了保證系統穩定,控制時域只能取 m ,相應的最優控制增量為 ΔU ,然而,在Δ U和Δ U( k)之間也許存在某個使系統穩定的控制增量,與控制時域 m相比,它不僅可以保持系統穩定,而且可以加快系統的回響,改善系統的性能。
魯棒性分析
對於非整數控制時域方法來說,利用參數 β可以作為在系統性能和魯棒性之間進行折中處理的一種有效的手段,非整數型控制時域對於控制系統魯棒性的影響可以用分析穩定性的方法進行分析,不假證明地給出一個一般性的結果。定理3: 要使系統對於非整數控制時域 m+ β中所有的 β ∈[0,1] 保持魯棒穩定,則若且唯若分別對於控制時域為 m和 m+1,系統都能保持魯棒穩定。
自適應控制時域參數的電壓協調控制
模型預測控制方法中的控制時域參數通常離線確定,且在最佳化過程中保持恆定,影響了其在電壓協調控制問題中的最佳化控制效果。針對上述問題,提出了一種基於自適應控制時域參數的電壓協調控制策略。
MPC方法的控制調節速率
MPC是一種多步滾動控制,原理見附錄A。其控制輸入分段恆定,僅在採樣點處發生變化,每個控制時域內的控制步數 m= t/ t,其中 t為控制時域, t為採樣周期,控制調節速率為最優控制序列中每單步控制的增量。在滾動最佳化過程中,最優控制序列的計算時間和控制效果在很大程度上受到控制時域參數的影響。在系統遭受擾動導致母線電壓跌落嚴重時,理論上要求控制措施使電壓儘快恢復至安全範圍,防止系統狀況持續惡化導致電壓崩潰。但由於電力系統的複雜性和不確定性,難以建立一個精確的預測模型描述其全部動態行為,若單步最佳化的控制調節量過大,有可能會進一步擴大誤差,降低最佳化效率。文獻在最佳化模型中加入控制調節速率約束避免上述問題,但在仿真中採用枚舉法確定最優控制時域參數,且無法根據系統動態演化情況自適應調整。
在控制調節速率的約束下建立控制措施的極限調壓能力評估指標,並在此基礎上滾動求取控制調節速率約束下的最小控制步數,以實現控制時域參數在最佳化過程中的自適應調整,提高最佳化性能。
控制時域參數確定與最佳化問題求解
根據極限調壓能力指標 V,能夠評估基於MPC的電壓協調控制中單次最佳化所需的最小控制步數。基於自適應控制時域的電壓協調控制流程,具體求解步驟如下。
1) t 時刻採用隱式梯形法進行時域仿真,求取系統節點電壓在預測時域[ t, tn+ t]內的軌跡,根據預測電壓幅值確定為評估目標節點。並計算評估目標節點電壓對於備選控制的軌跡靈敏度。
2)根據預測電壓軌跡確定目標評估節點。初始化控制步數 m=1,通過公式求取極限調壓能力指標 V。
3)若向量 V中存在元素小於閾值向量 V中的第 i個元素,則控制步數 m:= m+1,反覆求取當前控制步數下的極限調壓能力指標,直到 V中全部元素均大於閾值。對應m的取值即為最佳化所需的最小控制步數,對應控制時域 t= m t。
4)根據公式建立電壓協調控制模型並求解,得到控制時域內各採樣點處最優控制序列(Δ u,Δ u,…,Δ u)。在 t+ t 時刻將最優控制序列中的第1步控制Δ u 施加於系統。
5)下一個控制時域初始時刻 t= t+ t,重複上述步驟。