張子陽,許祥威
(南京工程學院 電力工程學院,江蘇 南京 210013)
在一個傳統(tǒng)的離線仿真平臺中,對于一個復雜的、實時性強的、動態(tài)響應(yīng)快的系統(tǒng),往往會簡化模型,如忽略處理器運行速度限制、忽略內(nèi)存空間限制等[1]。
且由于需要手動編程導致人員操作失誤等因素,產(chǎn)生項目研發(fā)周期延長、研發(fā)經(jīng)費超額等一系列問題[2]。與此同時,半實物半數(shù)字仿真平臺在軍事、航天等領(lǐng)域獲得了廣泛應(yīng)用,即一部分由計算機上搭建的模型構(gòu)成,另一部分由實物構(gòu)成,通過接口電路將兩部分結(jié)合成一個整體來模擬整個系統(tǒng)的運行,這就是實時仿真技術(shù)[3-6]。
在數(shù)字信號處理領(lǐng)域DSP 與FPGA 已經(jīng)形成了相互存在的格局。FPGA 以軟件的方式配置硬件資源,具有高度的并行運算能力,實時性更強,普遍適用于實現(xiàn)數(shù)字電路模塊、高速信號的處理、控制領(lǐng)域的信號處理[7];DSP 內(nèi)部擁有獨立累加器及加法器,數(shù)字信號處理及算法強,執(zhí)行指令速度快,主要用于處理復雜的多算法任務(wù)。文獻[8]通過FPGA 高度的并行運算能力來構(gòu)建電力電子半實物仿真平臺;文獻[9]通過DSP 強大的信號處理能力設(shè)計了一系列控制算法。對于一個半實物半仿真模型,往往都包含復雜過程和高度并行兩個方面,針對兩個不同的方面分別用DSP 和FPGA 各自的優(yōu)勢去處理解決,不失為一種新思路。文獻[10、11、12]證明 DSP+FPGA 架構(gòu)可極大的提高系統(tǒng)的實時性與穩(wěn)定性。
Rtunit 是由南京傅里葉電子有限公司研發(fā)的基于MATLAB/Simulink 的實時數(shù)字控制系統(tǒng),其主控CPU 采用DSP+FPGA 架構(gòu),以DSP 為主、FPGA 為輔的方式協(xié)同工作。DSP 負責軟件算法的數(shù)據(jù)處理,主要功能包括數(shù)據(jù)通信、數(shù)據(jù)存儲與調(diào)用、系統(tǒng)運行控制等[13],但由于DSP外設(shè)功能有限,需要FPGA 輔助拓展外設(shè),比如AD 芯片控制、PWM 波形輸出、編碼器解碼、Park 與 Clark 變換計算等功能。
Rtunit 軟件包由集成開發(fā)環(huán)境RtunitStudio(以下簡稱RTUS)和Rtunit Lib(以下簡稱RTU-Lib)兩個部分組成。
2.1.1 集成開發(fā)環(huán)境RTUS
RTUS 負責工程的統(tǒng)一管理,并實現(xiàn)了和MTLAB/Simulink 的無縫連接。在RTUS 中用戶可對Simulink 工程進行新建、保存、刪除、編譯、下載等一系列操作。工程在RTUS 中新建完成后,打開可直接進入Simulink 界面建模,建模完畢,通過自動代碼生成按鈕,將模型轉(zhuǎn)換成產(chǎn)品級C 代碼并在RTUS 中顯示,若需修改代碼,可重新建模并生成或直接在RTUS 中手動編程。代碼生成完畢,可編譯并下載至實時硬件控制器RTU-BOX 中,通過RTU-BOX 連接外部實物,實現(xiàn)半實物半數(shù)字仿真。在RTUS 中,使用者還可通過圖形化界面RtuOcs 對仿真結(jié)果進行可視化分析,通過實時監(jiān)測界面對AD 口輸入變量進行觀測和修改,并可導入至Excel/Matlab 等工具進行數(shù)據(jù)處理與分析。
2.1.2 RTU-Lib
RTU-Lib 是集成于MATLAB/Simulink 環(huán)境中的功能模型庫,是對Simulink Lib 的補充和擴展。RTU Lib 提供了電機驅(qū)動和電力電子控制中的常用算法模型,以及底層靜態(tài)驅(qū)動庫RTU BOX.lib。使用者可以像搭積木一樣調(diào)用RTU Lib 以及Simulink 基本庫中所有模塊,實現(xiàn)模型的快速搭建。以下對一些常用庫簡要介紹。
(1)Motor Lib
Motor Lib 包含了 Clark 變換、Clark 逆變換模型和Park 變換、Park 逆變換模型。在電機控制中為了簡化計算,坐標變換模型經(jīng)常使用,以上四種模型均可直接調(diào)用,節(jié)約開發(fā)時間。
(2)Common Lib
Common Lib 中包含了電力電子領(lǐng)域中常用的波形,比如正弦波、三角波、脈沖波等,且均為離散化波形。此外使用者通過Tri-function 模塊可任意生成需要的三角函數(shù)波,通過PID 模塊直接完成閉環(huán)控制,最大限度的滿足快速原型開發(fā)的需要。
(3)RTU-BOX.Lib
底層驅(qū)動靜態(tài)庫RTU-BOX.Lib 將RTU-BOX 中所有硬件功能的驅(qū)動函數(shù)全部進行了封裝,使用者無需關(guān)注底層,可直接調(diào)用。以下僅對本文使用的一些模塊進行介紹。
a.代碼生成模塊Model Generate Code
每一個Simulink 工程中必須添加該模塊,工程模型搭建完成時,雙擊該模塊即可生成產(chǎn)品級C 代碼并在RTUS 中顯示。Rtunit 系統(tǒng)十分兼容,RTU-Lib 和 Simulink基本庫中模塊均可生成C 代碼。
b.步長控制模塊Control Step
對于一些實時性強、運算速度要求高的電路,放在主程序中運行往往會被其他中斷打斷,為了保證仿真的快速性、穩(wěn)定性,一般將其放在中斷模塊中,并通過Control Step 模塊嚴格控制中斷頻率,最大限度的保證了仿真精度。
c.pwm 波生成模塊EPWM
EPWM 模塊可選擇單路、互補、三電平和全橋模式,實際輸入為0-1000 的數(shù)字量,0-1000 的數(shù)字量代表占空比0-100%,還可設(shè)置微秒級的死區(qū)時間。其中選擇互補模式時,每一個輸入將通過實時硬件控制器RTU-BOX輸出兩路互補的PWM 波。
Rtunit 是一種基于DSP+FPGA 架構(gòu)的實時數(shù)字控制系統(tǒng)。系統(tǒng)采用了TI 公司的32 位浮點型 Delfino 處理器TMS320C28346 作為主要信號處理模塊,以及Xilinx 公司第六代Spartan 系列FGPA 作為輔助處理模塊。擁有實時硬件控制器RTU-BOX,RTU-BOX 采用總線插板式機箱,由POWER 板、CPU 板和多個外設(shè)板組成。POWER板給RTU BOX 中所有板件提供電源;CPU 板內(nèi)部擁有豐富的硬件乘法器和門資源,工作頻率可達300MHz,通過光纖與上位機的USB 口連接,實現(xiàn)數(shù)據(jù)通信;外設(shè)資源豐富,可完成ADC 采樣、PWM 波形輸出、數(shù)字量開入開出、碼盤測速等功能。
電機旋轉(zhuǎn)時其定子繞組電壓可表示為:
當轉(zhuǎn)速不是很高時,可忽略定子壓降近似為:
電機旋轉(zhuǎn)時會產(chǎn)生角速度為ωr且幅值固定的磁鏈圓,得:
將(3)式帶入(4)式得:
公式(4)說明在磁鏈空間矢量ψS保持不變時,電壓空間矢量US與轉(zhuǎn)速ωr成正比,且軌跡方向為磁鏈圓切線方向,即可根據(jù)電壓空間矢量的運動軌跡來研究旋轉(zhuǎn)磁場運動軌跡。
對于一個電壓型三相逆變器,有交流側(cè)有幅值相等,相位互差120 度的三相電壓UA(t)、UB(t)、UC(t)。則三相電壓合成的空間矢量為:
逆變器三相橋臂共有6 個開關(guān)管,共可組成8 種開關(guān)狀態(tài)[14],通過不同的開關(guān)狀態(tài)可合成實際的電壓空間矢量,如圖1 所示。
本節(jié)將在Simulink 中將SVPWM 調(diào)制算法進行建模,模型分為四個部分,先通過Uα和Uβ判斷合成電壓矢量所在扇區(qū),再計算基本電壓矢量的導通時間t1、t2,然后求出三相基本電壓矢量的切換點時刻,最后生成PWM調(diào)制波形。本次設(shè)計中離散正弦波模型、Clark 變換模型均為RTU-Lib 自帶模型,這些自帶模型的運算均由FPGA 芯片完成,不占用DSP 運行處理時間。
圖1 電壓空間矢量
通過判斷合成空間矢量US所在的扇區(qū),可以確定所需要的有效矢量。為了方便計算,先通過Clark 變換將三相靜止坐標系轉(zhuǎn)化為α、β 軸二相靜止坐標系,Uα和Uβ是合成矢量 US在 α、β 軸上的分量。僅以第一扇區(qū)為例,有:0<arctan(Uβ/Uα)<60,即充要條件為 Uβ,Uα>0,Uβ、同理分析其他扇區(qū)可知[15],合成矢量US所在扇區(qū)僅與Uβ、這三個變量有關(guān),在新的二相靜止坐標系內(nèi)定義A、B、C 三個中間變量,則有:
令 N=4*sign(C)+2*sign(B)+sign(A),其中 sign(x)=,則N 與扇區(qū)的關(guān)系如表1 所示:
表1 N 值與扇區(qū)的對應(yīng)關(guān)系
計算模型如圖2 所示。
在α、β 軸二相靜止坐標系中以第一扇區(qū)為例,根據(jù)平行四邊形法則可得:
經(jīng)整理得:
圖2 扇區(qū)判斷
其中T1、T2為一個扇區(qū)內(nèi)兩個基本矢量導通時間,Udc為直流側(cè)輸入電壓,TS為調(diào)制周期。同理可得出其他扇區(qū)矢量作用時間。為了方便建模,設(shè)中間變量X、Y、Z,令
導通時間T1、T2各扇區(qū)賦值如表2 所示。文獻[16]可知,SVPWM 調(diào)制輸出最大相電壓幅值為圖3 所示六邊形相切的圓的半徑,又考慮到死區(qū)時間、零矢量作用時間的存在,實際幅值應(yīng)略小于相切圓半徑。為了防止發(fā)生過調(diào)制導致波形失真,這里采用了一種比例縮小算法,當T1+T2≤TS時,t1,t2作用時間不變,當 T1+T2>TS時,令
根據(jù)公式(11) 建模將輸入 Uα、Uβ、TS、Udc計算得到X、Y、Z 三個中間變量,再將三個中間變量根據(jù)表2 通過兩個多通道開關(guān)分別給矢量作用時間T1、T2賦值,然后單通道開關(guān)判斷是否過調(diào)制,無過調(diào)制則直接輸出,過調(diào)制則經(jīng)過公式(12)比例縮小變換再輸出。整個計算模型如圖3 所示。
定義 ta、tb、tc為 A、B、C 三相開關(guān)時刻,有
圖3 導通時間計算模型
Tcm1、Tcm2、Tcm3為切換點在不同扇區(qū)內(nèi)的賦值,如表2所示。
表2 導通時間與切換點幅值表
計算模型如圖4 所示。
圖4 切換點時刻計算
EPWM 模塊為 RTU-Lib 自帶模塊,EPWM 模塊輸入0-1000 的數(shù)字量代表0-100%的占空比,且必須為Unit16 整型數(shù)據(jù),模塊輸出幅值為15V 的PWM 波形。計算開關(guān)時刻 Tcm1、Tcm2、Tcm3占空比并轉(zhuǎn)換數(shù)據(jù)格式輸入至EPWM 模塊,計算模型如圖5 所示。
模型搭建完畢,將整個SVPWM 調(diào)制模塊放入中斷程序中,用control step模塊嚴格控制中斷頻率,提高仿真精度。
圖5 PWM 波生成模型
仿真參數(shù)設(shè)置如下:調(diào)制周期Ts=0.0001s,直流側(cè)輸入電壓Udc=800V,PWM 死區(qū)時間設(shè)置為 2μs,EPWM 輸出模式設(shè)置為互補輸出,control step 模塊設(shè)置仿真頻率為 10kHz,將 Tcm1、Tcm2、Tcm3波形接入WAVE 模塊以方便觀測。以上SVPWM 模型搭建完畢后,雙擊代碼生成模塊Model Generate Code,便可立即生成C 代碼。
代碼生成后,在RTUS 中編譯并下載程序至RTU BOX 中。在RTU-BOX 的EPWM 板件上,將A 相橋臂的上下兩路PWM 信號接入示波器,圖6 為A 相橋臂上下兩路波行。
由圖6 可以看出,同一橋臂上下兩路PWM 波形互補,且存在2μs 的死區(qū)時間,PWM 波形幅值均為15V,與理論值完全符合。
畜牧業(yè)對社會經(jīng)濟的發(fā)展具有重要影響。然而,畜牧養(yǎng)殖過程中常常會面臨各種不同類型的問題,因此企業(yè)管理人員應(yīng)該綜合其他各方面因素去考慮和分析,運用科學、合理的方法來解決畜牧養(yǎng)殖管理中存在的問題。在一定程度上使得畜牧業(yè)養(yǎng)殖模式逐步開始向集約化方式轉(zhuǎn)型。只有這樣才能夠保證畜牧業(yè)健康、穩(wěn)定發(fā)展。
RTU-Lib 庫中自帶Encoder 模塊,可輸出編碼器方向信號direction、脈沖數(shù)Poscnt 等信息,在此基礎(chǔ)上,根據(jù)M 法測速原理搭建了測速模型。本次實驗采用增量式編碼器,按差分法將編碼器信號接入,電機采用48V、200W 永磁同步電機。通過單通道開關(guān)判斷編碼器方向direction,direction >0 則 編 碼 器 停 止 或 旋 轉(zhuǎn) 。 僅 以direction>0 為例,計算單位周期T 內(nèi)編碼器發(fā)出脈沖數(shù)量M。M=0 表示編碼器停止,直接輸出轉(zhuǎn)速n=0;M>0,由文獻[16]知,公式
圖6 A 相橋臂上下兩路PWM 波形
P 為編碼器分辨率,T 為單位時間;由于Encoder 模塊的Poscnt 功能至多只能積累4000 個脈沖,超過則會清零,所以當 M<0 時,脈沖數(shù)需加上 4000 再帶入式(13),計算模型如圖7 所示。
圖7 M 法測速模型
編碼器分辨率P=10000,單位時間T=0.0001s,電機順時針旋轉(zhuǎn)轉(zhuǎn)速為1r/s,將方向、轉(zhuǎn)速信號接入WAVE 模塊,在RTUS 中查看波形如圖8 所示。
圖8 轉(zhuǎn)速和方向
速度曲線平滑穩(wěn)定在60r/min,方向曲線始終為0,與實際轉(zhuǎn)速、方向一致,驗證了使用Rtunit 的Econder 板進行轉(zhuǎn)速測量的可行性與高效性。
本文詳細介紹了Rtunit 實時控制平臺的軟、硬件組成,并以Rtunit 控制平臺為核心搭建了SVPWM 仿真模型、編碼器測速模型,在建模過程中,短時間內(nèi)可對模型進行大量修改與反復試驗,然后通過自動代碼所生成的程序?qū)崿F(xiàn)其功能,最終完成了快速原型開發(fā)設(shè)計。與傳統(tǒng)離線仿真相比,半實物半數(shù)字仿真更多的考慮到工程中的實際問題,有較高的實際應(yīng)用價值;與市場上廣泛使用的DSP 相比,Rtunit 有以下優(yōu)點:
(2)硬件方面,獨特的DSP+FPGA 架構(gòu),在保證了控制算法效率的同時彌補了DSP 外設(shè)精度不足的缺陷,輸出波形行度更好、實時性更強。
(3)一鍵式自動代碼生成,Smulink 基本庫、Rtunit 庫中模型均支持生成C 代碼,從根本上解決了傳統(tǒng)手寫代碼帶來的問題,使開發(fā)更加高效。
(4)無需學習額外軟件知識,使用者僅需熟練掌握Simulink,降低研發(fā)門檻。
此外,實驗中測得的馬鞍波、PWM 波、模擬量輸入輸出波形、轉(zhuǎn)速等均與理論波形相符合,證明了Rtunit 進行快速原型開發(fā)的實用性與可行性,操作方便且精度高,可以有效的縮短研發(fā)周期,提高研發(fā)效率。