本文介紹開發團隊所採取的控制硬體和軟體發展的有益方法,幫助加快韌體開發和驗證過程。這些資訊既適用於ARM控制器上的狀態機,也適用於FPGA上的主控制演算法...
在本系列文章的第一至第四部份中,從硬體角度分享並廣泛介紹25kW電動車充電樁的開發。圖1代表到目前為止所討論的系統。本文(第五部份)將從另一個維度深入探討充電樁設計,探討此類系統的控制策略和演算法建置,並提供實用見解。
本文的目的並非討論控制理論,而是介紹開發團隊所採取的控制硬體和軟體發展的有益方法,幫助加快韌體開發和驗證過程。這些資訊既適用於ARM控制器上的狀態機,也適用於FPGA上的主控制演算法。
同時,此處描述的特定開發過程確保盡可能減少錯誤,並能及早發現錯誤,甚至在提供或設計原型硬體之前。以下章節將介紹實現這種方法的步驟和工具(MathWorks和Xilinx)、功率因數校正(PFC)的狀態機和演算法模組,以及DAB轉換器的主演算法模組。
圖1:25kW電動車DC充電樁的高層級方塊圖。
PFC控制軟體的總體架構如圖2所示。該設計的核心是賽靈思(Xilinx)的Zynq 7000 SoC,它包含ARM核心和FPGA核心。Zynq 7000安裝在通用控制器板(UCB)上,還包含週邊裝置、ADC、多個記憶體板以及SoC和其他元件所需的電源樹。
首先,ARM核心運行狀態機(韌體中的高階程式)以及其他輔助任務,包括通訊協議、保護功能等。其次,FPGA充當主控制演算法的提供者,運行驅動轉換器的控制迴路,根據需要處理電源實現AC-DC轉換、PFC,並將電壓升壓至所需的直流(DC)鏈路電平。因此,FPGA上的「主演算法」是狀態機一個特定狀態,可稱之為穩態。DAB轉換器在ARM核心和FPGA之間採用相同的任務分配方式。
圖2:25kW PFC轉換器控制架構。任務在UCB上的Xilinx Zynq 7000 FPGA和ARM MCU之間的分配示意圖。DAB轉換器的控制架構與此相同。
圖3說明在整個專案開發過程中出現錯誤和檢測到錯誤的典型分佈情況。大多數錯誤是在初期的制定規格和設計階段便引入的;但是,它們大多卻直到測試後期才被發現。
圖3:引入的錯誤與檢測到的錯誤。(資料來源:Clive Maxfield和Kuhoo Goyal的著作,《EDA:電子學的起點》。)
為了解決圖3中呈現的現象,我們採用了一個開發過程,其目的是在開發的早期階段檢測到大部份這些錯誤。如果實施得當,從專案資源和時間表的角度來看,這種方法會帶來一些優勢,包括:
為此,安森美(onsemi)韌體和控制工程師藉由模型進行測試,充份利用了MATLAB工具和生態系統。此方法的成功取決於四大關鍵,開發人員需要解決以下問題:
為了盡快實現這些特性,可充份利用了下列工具的優點(如表1所示)。
表1:安森美工程團隊使用的開發和模擬工具,用於開發、模擬、部署和測試25kW快速DC電動車充電樁設計的韌體。
圖4描繪韌體開發和執行過程的簡化流程圖,按表2中總結的三個主要階段進行劃分。在本文中,只深入討論模擬模型開發,這是最重要的一個階段。
圖4:25kW快速DC充電樁韌體開發流程圖。
表2:韌體開發過程的各個階段。
模擬模型開發階段包括開發用於驗證系統控制演算法的模擬模型(或模擬模組)。本專案中包含的最重要的模組是:
在此開發階段,使用「輕」模型(不含改進細節的代表模型),使我們能在各種條件(電網阻抗、電流命令—取決於輸出功率水準的變化—以及其他條件)下運行多種情況/場景,驗證控制器對許多不同場景的響應。因此,在此階段應避免使用開關模型,因為這些模型包含非常多的細節,運行模型需要花費大量時間—我們在本系列文章之前的第三部份-電源模擬中對此已經有所瞭解。
我們使用平均開關等效模型作為替代方案,該模型允許使用FPGA IP核心構建模擬模組。同時,我們保留了硬體的所有重要/有影響的特性,以確保模擬的完整性,例如轉換器壓降效應、雜訊測量、PWM傳輸和類比數位延遲等。
本章節介紹實現特定模擬模型的關鍵步驟以及如何充份利用MATLAB環境所提供的功能。圖5顯示具有表1中元件的通用電能轉換系統之簡化表示。
圖5:通用電能轉換系統的簡化表示(並非特指25kW DC充電樁)。
「電源轉換器」是模型的核心元件(硬體代表),「控制器」是相關的主演算法模組,也是我們正在開發和評估的演算法模組。最終,透過使用MATLAB模擬生態系統提供的自動化工具,該演算法模組將轉換成FPGA IP核心本身。
開發團隊在模型開發階段使用一系列的六個步驟,貫穿至最終的IP產生。這些步驟可參見圖6中的簡化流程圖,其簡要說明如下文所示。
步驟1:採用雙精度浮點開發模型,而電源轉換器則使用平均模型。如上一章節所述,開發的模型在此階段起著重要作用,既要盡可能輕以允許合理的模擬執行時間,又要足夠準確以反映系統的實際行為。
步驟2:使用MATLAB提供的自動化工具來產生系統的定點等效模型。此任務採用的工具是MATLAB Fixed Point Designer。
步驟3:將雙精度變換為定點精度後,運行一次驗證模擬,以確保定點轉換不會影響系統的工作行為。
步驟4:驗證後,加入要在UCB控制器的ARM核心中運行的狀態機。允許在Simulink模型中類比手寫C程式碼的工具是S函數。此時,我們應該能夠在合理的模擬執行時間內針對多種情況和各種條件測試控制器。在這個過程中,可能會發生各種重要的子任務。例如,比例積分控制器增益的驗證、控制器負載階躍響應的評估、狀態機的過電流反應以及錯誤處理等。
步驟5:在產生FPGA IP核心之前,強烈建議針對選定的情況/場景運行一些模擬,將轉換器的平均模型替換為開關模型。這個過程相當耗時,應對極少數的模擬情況進行重複。然而,重要的是要確保控制器免受轉換器開關行為所引入的非線性影響。
步驟6:對所開發的演算法有足夠的信心後,現在可以使用自動化工具產生FPGA IP核心。這個過程顯著減少了程式設計錯誤,實現了改良面積的可合成式RTL,並且滿足時序限制。
圖6:模擬模型開發階段的六步驟流程圖。為了便於表示,該流程圖中省略了圖5的「週邊裝置」模組。它所在的位置以及與其他模組的連接與圖5中的相同。
本章節將詳細介紹PFC的控制策略,包括狀態機以及控制演算法(控制迴路)。狀態機在UCB的ARM核心上運行,控制演算法在狀態機的「DC匯流排VOLTAGE_CONTROL」狀態下運行,並在FPGA晶片上實現。
在接下來的章節將提供有關狀態機和演算法功能的更多資訊。圖7提供PFC狀態機一覽,其中「DC匯流排VOLTAGE_CONTROL」狀態以綠色顯示,在此狀態下控制迴路和FPGA將接管控制並運主演算法功能。
圖7:PFC轉換器狀態機一覽。
當向充電樁的輸入連接器提供50Hz的三相電壓時,由於PFC拓撲的性質,輸出匯流排電容電壓會升高。由於每個MOSFET上都存在寄生續流二極體,帶有MOSFET的無橋式PFC確保了從輸入到輸出的電流路徑。
當MOSFET全部關斷時,電路板簡化為三相二極體橋。整流後的輸入AC電壓將根據電源電壓幅度和MOSFET體二極體的正向電壓,被設置為定義的電平。然而,期望在輸入端至少提供一個最小AC電壓。因此,兩個不同線路上的電阻用作突波電流限制器。
一旦匯流排電壓達到230V,主輔助電源開始工作。該電源與一系列DC-DC穩壓器一起,產生為數位和類比電路供電所需的其他電壓電平。
ARM核心上的PFC狀態機實現
如上所述,PFC的狀態機在UCB的ARM核心上運行。其順序從圖7所示的IDLE模組開始,然後進入ADC通道中的偏移電壓驗證和輸入電壓監控和檢測。這些用於確定三個電壓的頻率和相位角。該相位角將作為系統實現功率因數校正的基準。
當DC匯流排電壓達到平坦穩定狀態時,PFC控制器向繼電器發送指令,旁路突波電阻並允許輸出匯流排電壓進一步升高。但是,電壓增量將低於整流後的輸入電壓幅度√6∙VPHrms。PFC控制器將等到匯流排電壓再次平坦,以便開始控制匯流排電壓,達到800V的目標值。不會一步達到目標值,它跟隨一個平滑的斜坡發生器,使匯流排電壓值按照參數化的斜坡上升到最終的800V。
PFC只做到一種硬體保護,利用NCD57000DWR2G閘極驅動器的DESAT功能防止過電流事件。但是,DESAT硬體保護可以與軟體保護相結合,產生到NAND閘的單端輸入,從而為PWM產生提供硬體停止。
只能透過GUI發送的重設命令或透過斷電/上電序列來重定故障條件,這兩種方式分別代表硬體/軟體重設。
圖8說明作為完整模擬模型一部份的PFC控制模組。PFC演算法使用七個輸入和三個輸出(概述參見表3)。作為該專案的一部份,我們將運行和測試不同的調變策略,以評估哪一種策略能在效率和諧波失真方面產生更好的結果。
圖8:PFC控制演算法的高階圖。
表3:PFC控制演算法的輸入和輸出參數。
圖9作為更深入的研究,詳細顯示了構成PFC演算法的模組和關係。VLINE電壓用於確定AC電壓相量的實際位置。然後,使用角度θ將電流相位延遲調節到0°,這是PFC的主要目標。電壓位置用於透過克拉克和派克變換,從靜止ABC系統參考轉換到旋轉DQ座標系(對於PFC,D軸表示相電壓相量的幅值)。
由於角度θ已知,所有電量都可以在DQ系統中表示;這種簡化操作確保能夠使用簡單的比例積分(PI)調節器。PI的增益調整取決於待調節設備的傳遞函數。當可提供一個常數作為參考量時,PI調節器確實可以有效地將誤差調節為零,但這些調節器不能調節AC參考量。
圖9:PFC控制演算法的詳細流程圖。
在任何情況下,PI調節器都需要某種校準,以確保適當的系統穩定性。通常期望電流迴路(內部)的回應較快,外部迴路(電壓)的響應較慢。此時值得注意的是,電流控制迴路與PWM同步運行。同步程式確保ADC週邊裝置可在PWM載波的準確時間實例中被觸發,以確保在測量的電流量中自然濾除開關紋波。
需補充說明的是,由於存在固有的ADC測量延遲,PWM頻率並不完全獨立於控制頻率,該延遲應當足夠小,以保證在開關週期內及時執行PFC演算法。由於FPGA PFC控制器的延遲非常低,約為150奈秒,因此PWM頻率的主要限制因素是ADC採樣和轉換時間。一旦有了ADC的數量,控制實現就很簡單了。
已使用MATLAB對PFC的主要功能進行了廣泛的測試,如「使用MATLAB產生IP的步驟」章節中所述。使用的Simulink主模型如圖10所示(該模型中唯一缺少的部份是用於測試韌體狀態機的S函數)。圖中對所使用的模組進行了解釋。
請注意,這一級的模型主要由Simulink模組組成,包括三相電源轉換器的平均模型。PFC的電網和互連濾波器利用
Simscape Electrical庫中的模型,而DC負載和電容(DC裝置)的建模則是通過Laplace Simulink模組的説明。該模型很輕,可使用傳統的筆記型電腦支持合理的模擬時間,實現0.1秒的模擬只需不到1分鐘的時間。
圖10:主PFC控制器Simulink模型。DC設備模組(簡單的電阻和電容)用作測試PFC演算法功能的負載,並不代表實際DAB轉換器的模型。
DAB轉換器控制策略的實施遵循與PFC類似的過程。本章節討論轉換器的控制演算法以及磁通平衡技術。在撰寫本文時,需要重新設計轉換器的Simulik模型,以便為HDL編碼器做好準備,並且DAB的平均模型尚未最終確定(我們尚處於圖4的步驟6中)。
從控制演算法開始,在可用控制技術中,最著名的技術可能是固定頻率相移技術。圖11顯示這些技術的分類,其中單相移(SPS)是最簡單的一種。事實上,控制器的簡單性正是該技術的主要優點,但其代價是轉換器中電流迴圈的增加,以及在更嚴格的工作範圍內才可能實現零電壓開關(ZVS)。這兩個缺點肯定會影響系統的效率。
基於SPS的兩種替代方案是擴展相移(EPS)和雙相移(DPS)技術,它們能夠更有效地利用轉換器,減少了迴圈電流並擴展了ZVS的工作範圍。但這些改進的代價是系統需要添加額外控制,增加了複雜性。
最後,三重相移(TPS)技術是SPS、EPS和DPS的統一版本。從這個角度來看,SPS、EPS和DPS都可以從TPS衍生得到,可以視為TPS的特例或子情況。圖12-14分別說明了SPS、EPS和DPS的工作原理。
圖11:不同相移技術的分類。三重相移(TPS)是其他技術的統一版本,其中的每一種技術都可以視為TPS的子情況。
圖12:單相移(SPS)技術。(資料來源:“用於高頻鏈路功率轉換系統的雙有源橋隔離型雙向DC-DC轉換器概述”)
圖13:雙相移(DPS)技術。(資料來源:“用於高頻鏈路功率轉換系統的雙有源橋隔離型雙向DC-DC轉換器概述”)
圖14:擴展相移(EPS)技術。(資料來源:“用於高頻鏈路功率轉換系統的雙主動橋隔離型雙向DC-DC轉換器概述”)
在本系列文章的第四部份中,我們注意到DAB轉換器的電源模擬是使用SPS進行的。稍後將在硬體原型上測試更先進的技術,並評估每種技術將帶來的優勢。
最重要的可能改進將是轉換器效率提升。此外,還有可能降低變壓器中的勵磁電流峰值(IM),這將允許使用更緊湊的變壓器和電感。
控制演算法和通量平衡模型模組
DAB的控制原理如圖15所示。控制器的目標是為電池產生所需的輸出電壓或電流。
圖15:DAB控制演算法的框圖。變壓器磁通平衡演算法也包含在其中。
基本概念很簡單:將測得的輸出電壓(或電流)和目標值都饋送至輸入PI控制器。PI控制器的輸出試圖通過產生所需的Δφ(即DAB的初級AC電壓和次級AC電壓之間的角度相位差),消除它們之間的誤差,以驅動初級側和次級側的PWM。由於輸出電容的存在,控制迴路很慢,但考慮到電池充電的緩慢動態行為,這不是問題。
需補充說明的是,自我調整PI增益對補償陡峭的Vout/ΔΦ斜率的重要性。可使用純比例控制器(相對PI而言)作為替代方案。不過,工程團隊需要對這方面進行進一步研究。
DAB控制演算法中一個值得詳細闡述的有趣部份是通量平衡功能。這項技術在第四部份中介紹過,它可以補償換流變壓器中的任何DC分量,防止勵磁電流的累積和磁芯飽和。
圖16顯示用於在25kW DAB變壓器中實現磁通補償概念的Simulink模型。該模組具有三個輸入和一個輸出。初級和次級變壓器電流和同步(sync.)脈衝是該模組的輸入。該模組的輸出用於調整變壓器初級側PWM的工怍週期。
圖16:磁通補償框圖。
磁通平衡模組由變壓器的次級PWM同步脈衝觸發(在轉換器的開關頻率下),這意味著饋入模組的AC電流所需的採樣頻率應該(至少)是轉換器開關頻率的兩倍。具體來說,同步脈衝是用於驅動次級側第一個橋臂的高壓側開關的那些PWM的脈衝。然後借助採樣的輸入電流,通過簡單的計算得到DAB變壓器的勵磁峰-峰值電流。
隨後,由相同的同步脈衝觸發採樣保持(S&H)電路,計算要複製的勵磁電流的開關平均值。最後,將估計的勵磁平均電流饋送到比例(P)控制器,該控制器將產生調整初級側PWM工作週期的命令。圖17顯示了在模擬中實現的通量平衡演算法的功能。
![]() |
![]() |
圖17:當DAB的磁通補償演算法無效(左)和有效(右)時,模擬的變壓器勵磁電流(IM)。當未運行磁通平衡技術時,剩餘DC電流會在每個開關週期內累積,最終使磁芯飽和。
有效實施磁通平衡技術的一個關鍵因素是所需的電流採集頻寬。如上所述,待測和待作用電流的開關頻率為100kHz,因此系統至少應該能夠在200kHz下進行測量。所以值得運行模擬,以確保所選電流感測器不會引入明顯的測量誤差,從而破壞磁通補償實施。
所選電流感測器(LEM)指定頻寬為300kHz。必須考慮到,當採樣頻率接近300kHz時,會出現增益衰減,並且與任何採集系統一樣,可能會出現相位滯後。因此,儘管300kHz乍看之下似乎提供了足夠的空間,但還是建議運行模擬。使用/不使用有限LEM頻寬的採樣電流如圖18和圖19所示。(請注意,在本例中,我們尚未啟動磁通補償,因此勵磁電流增長非常大。)
在圖19中,可以觀察到幅度和相位存在非常小的誤差,但幾乎可以忽略不計。演算法中包含的兩次採樣方法(每個開關週期測量兩次電流)也會有助於減輕誤差。無論是哪種情況,我們已經在圖17中看到磁通平衡可正常工作。
下圖表示模擬應該在圖17中給出的結果之前運行或同時運行。因此,可以使用頻寬約為300kHz的傳統LEM感測器。圖20說明了估計的開關平均電流、實際勵磁電流(IM)以及同步脈衝。
圖18:帶/不帶LEM電流感測器效應的初級和次級電流測量。磁通平衡演算法在此模擬中不工作。
圖19:帶/不帶LEM電流感測器效應的初級和次級電流測量。
圖20:估計的總勵磁電流(帶LEM電流感測器效應)、估計的開關平均值(帶LEM感測器效應)和同步脈衝。磁通平衡演算法在此模擬中不工作。
總結
正如在本討論開始時所觀察到的,採取與本系列文章前幾部份不同的角度,深入研究了控制策略的實現,以及如何對其最佳化和加速。本文介紹了安森美工程團隊遵循的方法,有助於在模擬階段、硬體生產之前,盡早測試和找出錯誤。
此外,此方法加快ARM核心和FPGA相結合的混合控制器控制開發。最後,透過在Simulink中創建的模擬模型自動產生FPGA IP,為不是FPGA開發專家的韌體工程師使用FPGA提供了便利。毋庸置疑地,當可以將韌體部署到板上並驗證實際完整系統時,則可以進行控制演算法的實際驗證。
本文作者:
Karol Rendek是安森美系统工程中心的應用經理 Stefan Kosterec是安森美系统工程中心的應用工程師
從無線連接、更快的處理和運算、網路安全機制、更複雜的虛擬實境(VR)到人工智慧(AI)等技術,都將在未來的每一個嵌入式系統中發揮更關鍵功能。「嵌入式系統設計研討會」將全面涵蓋在電子產業最受熱議的「智慧」、「互連」、「安全」與「運算」等系統之相關硬體和軟體設計。
會中將邀請來自嵌入式設計相關領域的研究人員、代表廠商以及專家,透過專題演講、產品展示與互動交流,從元件、模組到系統,從概念設計到開發工具,深入介紹嵌入式系統設計領域的最新趨勢、創新和關注重點,並深入分享關於嵌入式系統設計的經驗、成果以及遇到的實際挑戰及其解決方案。
加入LINE@,最新消息一手掌握!