孔晨,傅平
(溫州大學(xué) 電氣與電子工程學(xué)院,浙江溫州,325035)
傳統(tǒng)的電機控制策略方法通常是基于dSPACE 或單片機的軟件編程方法得以實現(xiàn)的。利用dSPACE 與 MATLAB/Simulink 可以實現(xiàn)無縫連接的優(yōu)勢,將離線仿真模型通過試驗進行快速驗證,提高電機控制系統(tǒng)開發(fā)效率,縮短項目開發(fā)周期[1],但是dSPACE 設(shè)備較為昂貴,性價比略低,且當(dāng)要對dSPACE 系統(tǒng)擴展功能進行比較復(fù)雜的修改時,會對系統(tǒng)帶來一些影響;單片機具有低成本、體積小、低損耗等特點,在操作層面,單片機操作十分簡單,所以對操作者的能力沒有過于嚴格的要求,且具有極強的自適應(yīng)能力[2]。但存儲空間有限、一些功能需要靠擴展來完成,保護能力略差;而RTU 仿真平臺不但繼承了兩者的優(yōu)點,而且成本較低,提高了性價比及工作效率,廣泛應(yīng)用于電機控制等領(lǐng)域。
RTU 控制器由南京瑞途優(yōu)特信息科技有限公司開發(fā),是一套基于Simulink 的控制系統(tǒng)開發(fā)、測試及半實物仿真的軟硬件工作平臺。RTU 數(shù)字控制器可以極大地提高系統(tǒng)的實時性與穩(wěn)定性,并且計算較為迅速、準確生成代碼、界面環(huán)境相對友好,其最顯著的特點就是無需手動編程就可以快速、有效地開發(fā)、調(diào)控復(fù)雜的控制算法。RTU 數(shù)字控制器的實物機箱如圖1 所示。
圖1 RTU 機箱
RTU 控制器的核心是RTU-BOX—實時數(shù)字控制系統(tǒng),其具有高速的計算能力,豐富的輸入輸出接口;通過與Simulink 連接可以完成各種復(fù)雜算法的研究與開發(fā),將搭建好的模型自動生成代碼并下載至硬件,通過與實物互連完成實驗驗證。
RTU 仿真平臺具有較高的實用價值,性價比高,能夠更多地考慮實際問題。和DSP 相比,RTU 仿真平臺具有以下幾點優(yōu)勢:
(1)在硬件方面,此設(shè)備采用了DSP 與FPGA 的構(gòu)架,彌補了關(guān)于DSP 外設(shè)功能不足的缺陷,兩者相輔相成,具有更高的實用性。
(2)在軟件方面,RTU 仿真平臺在Simulink 中具有大量模型庫,操作簡單,為用戶提供了便捷性,提高了工程搭建的效率。
(3)代碼生成一鍵獲得,在Simulink 庫中的絕大部分模塊均支持代碼生成,只有極少數(shù)的模塊不具備代碼自動生成的功能,這解決了手動編程帶來的問題,大大提高了工作效率。
(4)使用RTU 數(shù)字控制器不需要用戶學(xué)習(xí)太多的軟件編程知識,只需要掌握關(guān)于MATLAB/Simulink 的使用方法即可,體現(xiàn)了大眾化的功能;并且使用RTU 數(shù)字控制器最大的優(yōu)點就是提升了工作效率、減少了研發(fā)周期。
CPU 板為RTU 數(shù)字控制器的核心板卡,以DSP 和FPGA 為基本架構(gòu),DSP 為主、FPGA 為輔,兩者配合工作,DSP 采用TI 公司的TMS320C28346,負責(zé)處理算法數(shù)據(jù),但是因為DSP 的外設(shè)功能有限,需要FPGA 進行輔助拓展。CPU 板卡通過專用總線來控制其他的外設(shè)板,其板卡的通訊接口主要有 10M/100M 以太網(wǎng)ETHERNET、RS232、RS485 和CAN 接口。RTU 有兩個PWM 板卡槽位,均可插入PWM 板卡,一塊PWM 板卡共60 路PWM 輸出,PWM板輸出的高電平為5V。并且RTU 控制器還給用戶提供了其他板卡槽位,如模數(shù)轉(zhuǎn)換板卡等等。
RTU 數(shù)字控制器的軟件部分由集成開發(fā)環(huán)境RTUS(RtunitStudio)和RTU-Lib(Rtunit Lib)組成。
RTUS 負責(zé)管理工程,實現(xiàn)與Simulink 的連接,在此環(huán)境下,用戶可以對所建工程進行相關(guān)操作。在RTUS 中新建工程之后,可以在Simulink 中構(gòu)建模型,通過Simulink命令欄中的RtuBox 按鍵自動生成C 語言代碼,如果用戶需要對代碼進行修改,可以直接對所建模型進行修改,完畢后,再次點擊RtuBox 按鍵進行代碼自動生成。生成代碼之后,進入RTUS2020 的電腦軟件界面,進行編譯、下載,將代碼下載至RTU 數(shù)字控制器當(dāng)中,并且通過對RTU 數(shù)字控制器連接相關(guān)實物設(shè)備,實現(xiàn)半實物仿真。
并且在RTUS 環(huán)境中,還可以對其仿真結(jié)果進行可視化分析,可以通過觀察波形、導(dǎo)出數(shù)據(jù)等功能進行實時數(shù)據(jù)觀測與修改。
RTU-Lib 是Simulink 中的功能模型庫,是在原庫基礎(chǔ)上的補充,并且還提供了常見的算法模型。模型庫Rtunit Lib 提供了系統(tǒng)中所有硬件資源的Simulink 封裝模塊[3],能夠直接將硬件功能集成到 Simulink 中,方便搭建硬件控制模型。下面對一些常用庫進行簡單介紹。
(1)Common Lib
在此庫中主要包含常用的波形,如三角波、鋸齒波、正弦波等,其中,Triangle Wave 模塊還可根據(jù)用戶需要來形成所需的三角波;除波形模塊之外,還有PID 模塊,非常便于模型的搭建。
(2)Motor Lib
在此庫中常用的主要有Clark 變換與其逆變換、Park 變換與其逆變換,在進行模型搭建時均可直接調(diào)用,方便快捷。
(3)RTU BOX Lib
底層驅(qū)動靜態(tài)庫RTU BOX Lib 把所有具有硬件功能的函數(shù)進行了封裝,用戶可直接將其調(diào)用到模型當(dāng)中,使用過程非常便捷。此庫中的模塊種類十分豐富,其中主要包括模數(shù)轉(zhuǎn)換模塊、RS485 模塊、RS232 模塊以及encoder 模塊等,并且還包括可以稱為核心模塊的EPWM 模塊,用戶通過進行相關(guān)的參數(shù)設(shè)置,即可得到所需要的PWM 信號。
需注意的是,當(dāng)研究算法時,需要以下幾個步驟:(1)確定控制算法;(2)通過Simulink 來建立系統(tǒng)仿真模型;(3)自動生成代碼;(4)將代碼下載入系統(tǒng),在線調(diào)試參數(shù),完成算法的驗證。軟件工作流程圖[4]如圖2 所示。
圖2 軟件工作流程圖
通過以輸出PWM 脈沖信號為具體實例對RTU 設(shè)備的應(yīng)用進行更為清晰的闡述。模型搭建均是在simulink 環(huán)境下進行的,要實現(xiàn)PWM 信號的輸出,首先應(yīng)對庫中的EPWM 模塊進行相關(guān)介紹與設(shè)置。
與EPWM 相關(guān)的模塊還有EPWM_FPC 模塊、EPWM Control 模塊等,均是在EPWM 模塊的基礎(chǔ)上進行的,本文所選用的模塊為普通EPWM 型模塊,EPWM 模塊參數(shù)設(shè)置環(huán)境如圖3 所示。
圖3 EPWM 模塊設(shè)置
EPWM 模塊產(chǎn)生的PWM 波,從1-6 共六個單元,每個單元輸出兩路PWM 信號:PWMA 和PWMB。
PWM 的模式(Mode)選項分為Single Pwm Output—非互補輸出(A 和B 通道互不影響)和Complimentary Singal Output—A/B 通道互補輸出,若選擇Single Pwm Output 選項,則需要選擇相應(yīng)的通道,若選擇Complimentary Singal Output 選項,則需要輸入死區(qū)時間。
PWM Channel 選項可選擇1-6 單元。
PWM 的通道選項分為EPWMA、EPWMB、EPWMA AND EPWMB。
PWM 的載波類型(Carrier type)分為Sawtooth、Invsawtooth 和Triangle 三種類型,可根據(jù)需要自行選擇。
PWM 的相位設(shè)置,相位角度設(shè)置是指不同的 EPWM 單元之間載波的相位差,因此PWM 之間會產(chǎn)生相應(yīng)的相位差。將Phase Enable 設(shè)置為ON 即可進行PWM 的信號初相位設(shè)置,輸入從0~1 的數(shù)值對應(yīng)表示0°~360°的度數(shù)大小。
PWM 的頻率設(shè)置,分為Dialog 和Input Port 選項,當(dāng)選擇Dialog 選擇時,即可設(shè)置所需的頻率初始值,當(dāng)選擇Input Port 選項時,通過與Variable 變量模塊的連接,頻率作為可變變量輸入EPWM 模塊,如圖4 所示。EPWM 模塊的頻率范圍大小為100Hz~100kHz,這里的頻率選項設(shè)置建議與模型的控制頻率保持一致。
圖4 選擇Input Port 選項時的EPWM 模塊
PWM 的占空比設(shè)置,其單位為百分比(Percentages)和時鐘周期數(shù)(Clock cycles)兩個選項,根據(jù)輸入從0-1的數(shù)值,表示占空比在一個周期內(nèi)初始值所占比例大小;當(dāng)占空比單位選擇百分比時,其輸入類型為float 型,當(dāng)占空比單位選擇時鐘周期數(shù)時,其輸入類型為unit16 型。
PWM 同步方式(Synchronization Output)分為禁用同步信號、同步信號輸出為模型輸入的信號、同步輸出信號至CTR=ZERO 三種情況,可以根據(jù)需要選擇合適的選項。
通過前文對EPWM 模塊的介紹,明確了該模塊的使用方法,然后使用RTU 數(shù)字控制器來實現(xiàn)PWM 波的輸出,此PWM 信號用于超聲波電機驅(qū)動電路的開關(guān)管脈沖信號。
該驅(qū)動電路的操作對象為日本新生工業(yè)公司的USM60型號的行波型超聲電機,三相全橋逆變電路作為其驅(qū)動電路,通過給定相應(yīng)的PWM 信號,來生成超聲波電機需的驅(qū)動信號;由六只功率開關(guān)管組成三相橋式電路,此電路是基于半橋和全橋電路上的革新[5],兼顧全橋和半橋兩者的優(yōu)勢。下面通過模型搭建實例來得到相應(yīng)的PWM 脈沖信號。
以超聲波電機A 相為例,三相橋式逆變電路的S1-S4功率開關(guān)管負責(zé)控制超聲電機的A 相,電機的驅(qū)動頻率約為40kHz,四只功率開關(guān)管的計劃波形如圖5 所示,由于是全橋逆變電路,所以應(yīng)避免出現(xiàn)直通現(xiàn)象。
圖5 開關(guān)管時序圖
進入Rtunit Studio2020 軟件,點擊所建工程中的Logic 模型,進入Simulink 的Function-Call Subsystem編輯模型,進行模型的搭建與設(shè)置,將EPWM 模塊拖入,模式設(shè)置為非互補輸出,四個EPWM 模塊的PWM 單元分別選擇1-4,通道選擇A 通道,載波選擇鋸齒波,根據(jù)圖5 所示的時序圖,分別設(shè)置各自信號的初相位,因行波型超聲波電機的驅(qū)動頻率[6]約為40kHz,故頻率選項設(shè)置為40000,占空比初值可暫設(shè)為0.3,通過添加變量模塊可以實時修改占空比。
圖6 左側(cè)的Variable 模塊即為變量模塊,用來觀察和修改工程中設(shè)置的變量,這里設(shè)置的變量為占空比;該模塊主要由以下六個部分組成:變量名稱、數(shù)據(jù)類型、變量類型、初始值、單位及注釋。其中,變量類型若設(shè)置為只讀類型,則只能在Rtunit Studio2020 中觀察,不能修改,相反,若要在軟件中可以修改變量值,則要設(shè)置為可讀寫類型。
圖6 simulink 環(huán)境下的模型搭建
模型搭建完成之后,點擊Simulink 界面上方RtuBox的Code Generate 按鍵,自動生成C 代碼,此時進入Rtunit Studio2020,依次點擊菜單欄的編譯和下載按鍵(或直接點擊調(diào)試按鍵),燒入自動生成的C 語言代碼,然后將輸出信號接至示波器,點擊菜單欄的在線按鍵,雙擊左側(cè)Variants 圖標,即可在線修改占空比的大小,并且在示波器中實時顯示。如圖7 所示,示波器所示波形從上到下依次為功率開關(guān)管S1~S4 的PWM 信號波形。
本文以詳細介紹RTU 數(shù)字控制器為主線,介紹了該設(shè)備的軟件和硬件兩大方面,并系統(tǒng)闡述了RTU 數(shù)字控制器的優(yōu)勢所在,同時以四路PWM 信號輸出為例,通過模塊搭建、代碼生成等實際操作對該設(shè)備的使用方法進行了相關(guān)敘述。從而可以表明,RTU 數(shù)字控制器具有無需手動編程、調(diào)試過程簡單、減少開發(fā)時間等優(yōu)勢,并且能將這種優(yōu)勢運用到實際工作當(dāng)中,極大地提高了工作效率,有效地降低研發(fā)周期與投入成本。目前各研究領(lǐng)域在不斷地追求快捷高效的主旋律下,RTU 數(shù)字控制器具有非常光明的發(fā)展前景。