謝海斌,史美萍,龍志強
(國防科學技術大學機電工程與自動化學院,湖南長沙 410073)
dSPACE實時仿真系統(tǒng)為快速控制原型RCP(Rapid Control Prototyping)與硬件在回路仿真HILS(Hardware-in-the-Loop Simulation)兩方面應用提供了一體化解決途徑。目前,dSPACE在航空、航天、汽車、發(fā)動機、電力機車、機器人、驅動及工業(yè)控制等領域已被廣泛應用[1]。
我們面向相關學科研究生或高年級本科生開設了15學時的“基于dSPACE的控制系統(tǒng)快速原型設計與硬件在回路仿真”實驗課程,采用課堂講授與實驗相結合的方式實施,使學生了解與初步掌握的基本概念、原理和方法。該課程作為控制學科研究生的必修實驗課程,同時還可供機械、儀器、航空、航天、電子、計算機等相關學科研究生與高年級本科生選修。
由于研究生畢業(yè)于不同的學校和專業(yè),學科背景、專業(yè)基礎和能力素質存在較大差異,因此,實驗環(huán)節(jié)按照循序漸進原則依次開展二個單元共四個實驗。其中,基礎實驗單元為“基于dSPACE的多功能信號發(fā)生器快速原型設計”,主要目的是使學生能夠熟練掌握基于Matlab/Simulink的動態(tài)系統(tǒng)圖形化建模與仿真方法,了解dSPACE軟硬件開發(fā)環(huán)境,初步掌握dSPACE的開發(fā)設計流程以及RTI與ControlDesk的使用方法。
應用實驗單元為“基于dSPACE的步進電機控制系統(tǒng)快速原型設計”,種類繁多的各類電機是最主要的執(zhí)行器件。針對不同的電機及其應用場合,控制方式與要求差異顯著[3-6]。而采用數(shù)字信號控制的步進電機,用作教學是一類理想的研究和實踐對象。因此,采用帶有驅動器與增量編碼器的二相步進電機組件作為被控對象是合適的。
利用dSPACE系統(tǒng)遞進地完成步進電機開環(huán)控制系統(tǒng)與閉環(huán)控制系統(tǒng)的快速原型設計與硬件在回路仿真,可以鞏固與深化對dSPACE設計理念與方法的理解,掌握基于dSPACE的實際應用技能,鍛煉學生在控制系統(tǒng)設計過程中綜合運用所學知識發(fā)現(xiàn)問題、分析和解決問題的科研能力和工程素養(yǎng)。
應用實驗單元由兩個實驗(共6個學時)構成。
(1)“基于dSPACE的步進電機開環(huán)控制系統(tǒng)快速原型設計”。該實驗讓學生了解電機控制系統(tǒng)的基本原理,掌握步進電機與增量編碼器的工作原理和電氣特性以及RTI中的D2F模塊和增量編碼器相關模塊的使用方法;完成步進電機組件(含步進電機驅動器與增量編碼器)與dSPACE平臺對應I/O端口的正確連接;通過構建快速控制原型,實現(xiàn)對步進電機的啟停、調速以及正反轉控制,為步進電機位置伺服控制快速原型系統(tǒng)設計奠定基礎。
(2)“基于dSPACE的步進電機位置伺服控制系統(tǒng)快速原型設計”,是在實驗一的基礎上,采用任意控制結構(算法)設計步進電機角位置伺服控制器,逐步實現(xiàn)對穩(wěn)態(tài)位置信號、周期性動態(tài)信號和隨機動態(tài)信號的快速高精度跟蹤。通過將dSPACE用于實際閉環(huán)控制系統(tǒng)的設計,可以使學生了解控制系統(tǒng)的分層設計方法,同時深化對所用控制算法的理解,鞏固基于dSPACE的控制系統(tǒng)快速原型設計與硬件在回路仿真方法,為dSPACE的深入應用奠定基礎。
被控對象步進電機組件由二相步進電機、驅動器以及增量編碼器構成。驅動器用于給步進電機供電,并通過輸入的頻率信號(PU+與PU-)和電平信號(DR+與DR-)分別控制步進電機的轉速和轉向,增量編碼器通過聯(lián)軸器與步進電機共軸連接,用于檢測電機的角位置與轉速。實驗中,驅動器分頻數(shù)設定為1600,增量編碼器精度為2500線。
采用自頂向下的層次性建模方法構造步進電機開環(huán)控制系統(tǒng)實時模型。開環(huán)控制系統(tǒng)的輸入信號包括一個啟停信號(邏輯信號);一個用于確定電機轉向的電平信號(Boolean型或Double型數(shù)據(jù),依賴于采用何種RTI模塊產(chǎn)生該電平信號);一個用于確定電機轉速的頻率信號(Double型數(shù)據(jù));一個用于使能增量編碼器輸出復位功能的使能信號(Boolean型數(shù)據(jù))。輸出信號包括增量編碼器實測到的電機角位置(轉)和角速度(轉/秒)。步進電機開環(huán)控制系統(tǒng)頂層模型的輸入、輸出信號定義如表1所示,Simulink模型如圖1所示。
表1 步進電機開環(huán)控制系統(tǒng)實時模型端口定義
圖1 步進電機開環(huán)控制系統(tǒng)頂層模型
圖1中的StepMotor RealTime Model模塊的算法設計如圖2所示。其中,采用DAC模塊產(chǎn)生電平信號控制電機正反轉(-1對應-10V物理信號,+1對應+10V物理信號)。采用D2F模塊產(chǎn)生頻率信號控制電機轉速,由于驅動器分頻數(shù)為1600(即電機轉動1圈需輸入1600個脈沖),因此對單位為“轉/秒”的頻率設定值進行1600倍增益。電機啟??刂贫薙TART/STOP設定為0時,D2F模塊的輸入信號為零,電機停止;反之當設定為1時,D2F模塊的輸入信號為經(jīng)過增益變換后的頻率設定值,此時步進電機按期望的轉速運轉。
圖2 StepMotor RealTime Model模塊的Simulink模型
如果直接采用了RTI中的增量編碼器模塊(ENCODER MASTER SETUP和ENC_POS)和硬件端口對增量編碼器的輸出信號進行采集,該模塊直接得到當前采集到的脈沖數(shù)和每個采樣周期(Ts)的脈沖變化量。由于增量編碼器為2500線精度,對RTI模塊的角位置輸出做1/2500倍增益變換,將角位置單位變?yōu)椤稗D”,角速度輸出做1/(Ts×2500)倍增益變換,將角速度單位變?yōu)椤稗D/秒”。
此外,還可以采用增量編碼器軟件中斷復位模塊(ENC_SW_INDEX和ENCODER SET POSITION)實現(xiàn)增量編碼器輸出的軟件控制復位。建立實時模型時,若使用了增量編碼器相關的RTI模塊時,都需要使用ENCODER MASTER SETUP模塊,且將其放置到根模型中。
為了使設計的模型能夠適用于其它步進電機組件的控制與檢測,將采樣周期Ts、步進電機分頻參數(shù)FP及增量編碼器精度參數(shù)Precise以變量形式設定在模型中的相應模塊中,并將StepMotor RealTime Model模塊封裝成子系統(tǒng),針對不同的步進電機組件,只需設定上述相應的三個參數(shù)即可。
將圖1所示的模型輸入端口采用常數(shù)(Constant)模塊替換,輸出端口采用串聯(lián)的單位增益(Gain)和終端(Terminator)模塊替換,將其轉化成實時模型。然后在Simulation菜單中打開Configuration Parameters窗口,完成如下三步仿真編譯條件設置:
(1)在Solve選項頁中,將Stop Time設置為inf,將Solve Option中 Type設置為 Fixed-step,將Fixedstep size設置為一個確切的仿真步長,如0.001(s);
(2)在Optimization選項頁中,將Simulation and code generation中的Block reduction和Signal storage reuse兩個選項勾選掉;
(3)在Real-Time Workshop選項頁中,將System target file選擇為所使用的平臺,如 rti1103.tlc或rti1104.tlc,點擊build按鈕完成編譯、連接和下載。
完成上述步驟后步進電機開環(huán)控制系統(tǒng)的實時代碼已經(jīng)運行在dSPACE系統(tǒng)中。根據(jù)實時模型中RTI模塊的設定,正確連接步進電機組件與dSPACE平臺對應的I/O端口,即可在ControlDesk中設計虛擬儀表控制臺,選擇恰當?shù)奶摂M儀表控件并與相應的模塊正確關聯(lián),就可以實現(xiàn)對步進電機的啟停、調速、正反轉控制和電機角位置與轉速的監(jiān)控。鼓勵學生嘗試使用各種控件,設計美觀、易用的個性化控制臺,步進電機開環(huán)控制系統(tǒng)虛擬儀表控制臺的一個設計實例如圖3所示。這里的三組RadioButton控件分別與 START/STOP、Direction、Reset of Encoder端口的參數(shù)關聯(lián),用于控制步進電機的啟停、轉向、以及增量編碼器的輸出復位使能控制。Slider控件與Speed端口參數(shù)關聯(lián),用于控制步進電機的轉速。PlotterArray和3個Display控件用于對比顯示設定的期望轉速和通過增量編碼器模塊采集的實測轉速,以及實際的角位置曲線。
圖3 步進電機開環(huán)控制系統(tǒng)虛擬儀表控制臺
在開環(huán)控制實驗的基礎上,鼓勵學生嘗試設計任意結構及算法的控制器,以實現(xiàn)快速、穩(wěn)定和高精度的位置伺服控制。但從實驗的實施效果看,幾乎所有學生都選擇最常用的PID控制器。
基于圖1所示的開環(huán)控制系統(tǒng)實時模型,采用Simulink的 Discrete庫中的 Discrete PID Controller模塊構建的步進電機位置伺服閉環(huán)控制系統(tǒng)實時模型如圖4所示。其中,PID控制器以設定的期望位置信號(靜態(tài)或動態(tài)信號)與實時模型采集到的角位置信號的偏差為輸入,輸出的控制信號經(jīng)過取符號、限幅并求絕對值等變換后作用于步進電機實時模型。構建實時模型時,可以不精確地設計PID參數(shù),而在ControlDesk中設計虛擬儀表控制臺(如圖5所示)時采用Slider控件與PID控制器參數(shù)關聯(lián)對其進行在線調節(jié),直接觀察PID參數(shù)對控制效果的影響。依控制器設計指標難度,期望的角位置信號可以依次選取階躍信號、正弦波或方波等周期性參數(shù)可調信號和隨機性的手動輸入信號等。
圖4 步進電機閉環(huán)控制系統(tǒng)實時模型
圖5 步進電機閉環(huán)控制系統(tǒng)虛擬儀表控制臺
通過兩年來對應用實踐單元的教學實踐,學生在實驗過程中暴露出如下主要問題。
(1)物理概念模糊,表現(xiàn)為講不清模型中使用的模塊在整個系統(tǒng)中的作用以及信號流向關系;
(2)信號量綱混亂,如用于獲得誤差信號的期望角位置信號與反饋回的角位置信號量綱不一致;
(3)沒有模塊化設計的概念,不會按照自頂向下或自底向上的原則進行算法設計,不懂得子系統(tǒng)創(chuàng)建與封裝,模型結構混亂;
(4)對控制器(如PID)各環(huán)節(jié)的作用及其對應的物理概念、取值范圍不清楚,參數(shù)調節(jié)盲目,難以評判參數(shù)調節(jié)的預期效果;
(5)理論與實踐脫節(jié),表現(xiàn)在理論上頭頭是道,實踐中無從下手,實踐動手能力亟待提高。
我們要求8學生在短短6個學時的時間內,既要理解實驗目的和要求,還要了解被控對象與dSPACE相關模塊的軟硬件特性與用法,進而設計出能夠滿足控制要求的快速原型系統(tǒng),確實是有難度的?,F(xiàn)在,通過采用實驗前講解、合作組討論和啟發(fā)式答疑等多種教學手段,學生基本上可以按時保質的完成全部實驗內容。部分學生在完成基本實驗內容后,還可在教師的指導下對實驗內容進行拓展,能力得到進一步鍛煉。
通過應用實驗單元“基于dSPACE的步進電機控制系統(tǒng)快速原型設計”的實踐,使學生真正體會到可以通過快速構建面向真實被控對象控制的原型系統(tǒng)的方式對控制理論、原理、算法、結構等進行更加真實的驗證,而不是停留在以往離線數(shù)值仿真驗證層面上。
學生普遍反映,實驗內容安排合理,難易適中,知識點涵蓋全面,自身收獲顯著。學生感到以往理解模糊的物理概念終于搞清了,達到了理論與實踐緊密聯(lián)系的實驗效果。
[1]恒潤科技.dSPACE--基于Matlab/Simulink平臺的實時快速原型及硬件在回路仿真的一體化解決途徑[Z].恒潤科技有限公司,2005
[2]謝海斌,沈林成等.關于高校加強計算機輔助技術教育的探討[C].全國計算機新科技與計算機教育論文集(第17卷),2009.8(上集):17 -22.
[3]宋科,劉衛(wèi)國等.控制系統(tǒng)硬件在回路實時仿真實驗平臺的dSPACE 實現(xiàn)[J].上海:微特電機,2008(4):28-31
[4]張浩.基于dSPACE的交流調速系統(tǒng)實驗平臺設計[J].南京:電氣電子教學學報,2010.32(1):76 -79.
[5]潘峰,薛定宇.基于dSPACE半實物仿真技術的伺服控制研究與應用[J].北京:系統(tǒng)仿真學報,2004.16(5):936 -939
[6]盧子廣,柴建云等.電力驅動系統(tǒng)實時控制虛擬實驗平臺[J].北京:中國電機工程學報,2003.23(4):