摘 要:通常電機控制實驗采用以微控制器如DSP為控制核心來進行硬件平臺搭建和軟件控制算法編程,但該方法存在費時費力的缺點,因此提出利用dSPACE和Matlab/Simulink進行電機控制實驗的方法,該方法免去常規方法的軟件編程的步驟,節省了大量時間,且更改控制算法靈活。敘述基于dSPACE的電機控制系統實驗平臺的搭建過程和開發步驟,最后給出了應用實例。關鍵詞:dSPACE; Matlab/Simulink; 實驗平臺; 控制算法
中圖分類號:TN710-33文獻標識碼:A
文章編號:1004-373X(2010)17-0130-03
Study on Experiment Platform of Motor Control System Based on dSPACE
LANG Bao-hua1, YANG Jian-hua1, LI Rong2
(1.School of Electronic Information Engineering, Xi’an Technological University, Xi’an 710032, China;
2.Oil Marketing Companies in Northwest China, Urumqi 830068, China)
Abstract: Usually the hardware platform and software controlling arithmetics are based on a MCU such as DSP when an experiment of motor control is performed, but it has the defects of long time and hard ado. Hence a method of experiment of motor control system using dSPACE and Matlab/Simulink is proposed and this method needn't software programming so saves a lot of time, moreover controlling arithmetics can be modified neatly. The setting processes and steps of experiment platform of motor control system are discussed in detail and then an application example is given in paper.Keywords: dSPACE; Matlab/Simulink; experiment platform; controlling arithmetics
0 引 言
在通常以微控制器如DSP為控制核心進行電機控制系統的實驗開發過程中,由于要編寫大量的程序代碼而需要大量的編程時間,而且如果控制系統算法需要更改或增加則又需較多時間來更改軟件,因此實驗開發周期長,不利于控制算法的研究和實際應用。
dSPACE[1-2]是由德國dSPACE公司開發的一套基于Matlab/Simulink[3-4]的控制系統開發及測試的設備,它實現了和Matlab/Simulink的完全無縫連接,可以很好地完成控制算法的設計、測試與實現,有效克服了傳統控制系統開發存在的上述問題。它具有運算速度快、使用方便和界面友好等優點[5-8]。dSPACE實時系統功能強大,它既可以和實際控制對象相連(稱為快速控制原型),這時它起到主控制器的作用;又可以和實際控制器相連(稱為硬件在回路仿真),這時它起到被控對象的作用。從而利用基于dSPACE的控制系統可以達到縮短開發周期以及降低開發費用。
1 基于dSPACE的電機控制系統實驗平臺結構
dSPACE在硬件結構形式上分為兩大類:一類是把處理器和I/O集成到一塊電路板上,形成一個完整的實時控制的單板系統(如DS1103控制器板);另一類是將處理器和用戶接口完全分開(如DS1005PPC控制器板),以實現處理器和I/O能力的升級擴展,處理器和I/O之間通訊由PHS(Peripheral High-speed Bus)總線實現。
本文以DS1005PPC控制器板為核心,配以DS2001AD采集板、DS2002/2003多路A/D采集板、CP4002多I/O板、DS2102DA輸出板、DS3002增量式編碼器接口板,構成了dSPACE的標準組件系統DS1005的硬件部分。基于dSPACE的電機控制系統實驗平臺結構框圖如圖1所示。
從圖1可以看出,基于dSPACE的電機控制系統實驗平臺以dSPACE為控制核心,在外圍還需要擴展一些相關電路,如隔離電路、信號處理電路、驅動和功率橋電路、保護電路等,從而構成了一個完整的電機控制系統實驗平臺。
1.1 dSPACE本身硬件部分
dSPACE本身已經集成好的硬件部分包括DS1005PPC控制板、DS4002多I/O板、DS2001AD采集板和DS3002旋轉編碼器接口板等。通過CP4002 多I/O板,可以輸出6路PWM電機控制信號以控制功率器件的開通和關斷;通過DS2001AD采集板可以采集電機的電壓和電流等模擬量,尤其是當需要同時采集更多路數的模擬量時,可以使用具有32路A/D采集的板卡DS2002/2003;另外通過DS3002旋轉編碼器接口板,可以直接將電機后部帶的編碼器信號輸入至DS1005PPC,從而用于速度檢測;此外還有DS2102DA輸出板,可以利用它來輸出一些信號以方便調試。
圖1 基于dSPACE的電機控制系統結構框圖
1.2 外圍擴展電路部分
外圍擴展電路部分主要包括PWM信號反相和死區產生電路、模擬和數字隔離電路、電壓和電流采集及信號處理電路、驅動和功率橋電路和保護電路等。
由于篇幅所限,此處只給出PWM信號反相和死區產生電路,如圖2所示。
圖2 PWM信號反相和死區產生電路
針對控制過程中逆變器同一橋臂的上、下功率器件控制波形反相的特點,控制軟件只需輸出三路PWM控制信號而由硬件進行反相處理,此外,由于控制電機時的PWM脈寬調制均采用180°PWM導通方式,為避免逆變橋上、下橋臂功率器件同時導通而燒毀功率器件,所以還需在上、下橋臂的PWM控制信號之間加以幾個微秒的信號延遲,稱為死區時間。本文采用由硬件電路來進行PWM控制信號的反相和產生死區時間,這樣做的好處在于可以減少軟件的運算時間和節省存儲空間,且可靠性更高。這樣,三路PWM控制信號輸入PWM信號反相和死區產生電路后,輸出為具有幾個微妙的死區時間的六路PWM電機控制信號,從而很方便地用于電機控制。圖2顯示了三路中的一路PWM信號反相和死區產生電路。該電路主要使用了反相器74HC04來對PWM信號實施反相,同時還利用了電容沖、放電過程及整形電路來產生死區時間,其中,死區時間的大小可以通過選擇電容或電阻參數來設置。
2 Matlab/Simulink實驗模型及RTI接口模塊
在控制系統硬件平臺結構搭建完成的基礎上,基于dSPACE的控制系統的軟件設計相比于采用DSP的常規的方法來說非常簡單,可以節省大量的編程時間。由于控制系統的算法事先都在Matlab/Simulink中離線仿真得到實現,因此軟件設計只需要將Matlab/Simulink中仿真時的所有輸入/輸出接口模塊用dSPACE的RTI模塊(如圖3所示)代替并進行單位變換等簡單運算,因為此時所有輸入或輸出信號均是針對實際物理量,因此軟件中參與運算的這些輸入或輸出信號的單位應與實際物理量的單位一致。
比如:在采集電機電流iA時,硬件上已經利用傳感器和信號處理等電路將電流信號采集并轉換成±10 V的電壓信號輸入到了DS2001AD采集板的ADC#1通道,此時在軟件上將原來離線仿真模型中從電機仿真模型得到的電流反饋信號用DS2001B1(見圖3)的RTI接口模塊替換,并進行簡單的單位換算以保證最終參與運算的電流值與實際的電流值大小一致。離線仿真模型經過dSPACE的RTI模塊替換之后,同時將仿真模型中的電機用實際電機代替就可以得到Matlab/Simulink實驗模型。圖3顯示了建立Matlab/Simulink實驗模型的常用的幾種RTI接口模塊:PWM接口RTI模塊(DS4002PWM3OUT)、編碼器接口RTI模塊(DS3002HWINDEXB1C1/ DS3002POSB1C1)、A/D接口RTI模塊(DS2001B1/ DS2002B1 /DS2003B1)和D/A接口RTI模塊(DS2102B1)等。
圖3 常用的RTI接口模塊
3 基于dSPACE的電機控制系統實驗開發步驟
在硬件實驗平臺搭建完成后,基于dSPACE的電機控制系統實驗開發步驟包括以下幾點:
(1) Matlab/Simulink模型建立及離線仿真。利用Matlab/Simulink建立仿真對象的數學模型,設計控制方案,并對系統進行離線仿真。
(2) 輸入/輸出接口(I/O)的接入生成實驗模型。在Matlab/Simulink中保留需要下載到dSPACE中的模塊,從RTI庫中選擇實時控制所需的I/O模塊,用硬件接口關系替換原來的邏輯連接關系,并對I/O參數進行配置,在一些特殊情況下還需要設置軟硬件中斷優先級。
(3) 利用RTW和dSPACE提供的工具自動生成代碼并下載。由于Matlab與dSPACE的無縫連接的特性,因此只需簡單的操作即可完成目標系統的實時C代碼的生成、編譯、鏈接和下載,將模型下載為目標板DS1005PPC上可運行的程序。
(4) dSPACE綜合實驗和調試。 利用dSPACE提供的ControlDesk軟件對實時運算數據進行獲取、改變參數并進行實時控制等。圖4顯示了基于 dSPACE的電機控制系統實驗開發流程。
圖4 基于dSPACE的電機控制系統實驗開發流程圖
4 應用實例
圖5(a)顯示了三相功率器件的一路PWM[9-10]控制信號波形,圖5(b)為PWM控制信號經過PWM信號反相和死區產生的硬件電路處理后得到的同一相的上、下功率器件的PWM開關信號,可以明顯地看出在同一相的上、下功率器件的兩路PWM開關信號之間加入了防止直流母線直通的約4 μs的死區時間。圖6給出了當母線電壓Udc為30 V時,常用的空間矢量脈寬調制SVPWM波形及其經過高頻信號濾波后的線電壓波形圖。
圖5 具有死區時間的PWM控制信號波形
圖6 SVPWM調制信號及線電壓波形
5 結 語
介紹了以先進的快速算法驗證實驗設備dSPACE為控制核心,自行設計和擴展相關的外圍硬件電路后搭建起基于dSPACE的電機控制系統實驗平臺和實驗開發步驟的詳細過程,并給出了利用上述平臺的應用實例。利用此平臺可以大大縮短實驗開發周期,有利于對控制算法的研究和實際應用前的有效驗證。
參考文獻
[1]dSPACE. Modular system based on DS1005 installation and configuration guide(for release 3.5)[M]. Paderborn: dSPACE GmbH, 2003.
[2]dSPACE. ContrloDesk experiment guide (for release 3.5)[M]. Paderborn: dSPACE GmbH, 2003.
[3]薛定宇,陳陽泉.基于Matlab/Simulink的系統仿真技術與應用[M].北京:清華大學出版社,2002.
[4]楊滌,李立濤,楊旭,等.系統實時仿真開發環境與應用[M].北京:清華大學出版社,2002.
[5]馬培蓓,吳進華,紀軍,等.dSPACE實時仿真平臺軟件環境及應用[J].系統仿真學報,2004,16(4):667-670.
[6]夏娟,周治平,紀志成.基于dSPACE電氣傳動控制系統的在線仿真[J].微特電機,2004,32(5):27-30.
[7]李三東,薛花,紀志成.基于Matlab永磁同步電機控制系統的仿真建模[J].江南大學學報,2004,3(3):115-120.
[8]潘峰,薛定宇,徐心和.基于dSPACE半實物仿真技術的伺服控制研究與應用[J].系統仿真學報,2004,16(5):936-939.
[9]施保華,秦娟英.基于Matlab/Simulaink動態仿真模型的異步電動機直接轉矩控制的研究[J].電氣傳動自動化,2002,23(6):7-12.
[10]吳定會,李三東,紀志成.基于dSPACE空間電壓矢量PWM設計與實現[J].電力電子技術,2005,39(1):22-24.