<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于DSP的永磁同步電機磁場定向控制器設計

          基于DSP的永磁同步電機磁場定向控制器設計

          作者: 時間:2005-02-03 來源:網(wǎng)絡 收藏

          摘要:介紹了一種采用芯片TMS320LF2407A實現(xiàn)的控制原理,給出了采用控制策略來的硬件組成結構及軟件流程。

          本文引用地址:http://www.ex-cimer.com/article/174253.htm

          關鍵詞: 控制 數(shù)據(jù)信號處理器 智能功率模塊

          1 引言

          近年,交流伺服系統(tǒng)已經(jīng)在機械制造、工業(yè)機器人、航空航天等領域得到廣泛應用,其控制對象大多是感應電動機()。的轉子采用永磁鋼,屬于元刷的一種,具有結構簡單、體積小、易于控制、性能優(yōu)良等優(yōu)點。本文討論的空間矢量控制的永磁同步電機就是采用磁場定向算法并借助的高速度來實現(xiàn)對轉速的實時控制,因而在各種狀態(tài)下都有良好的控制性能,特別適用于對控制器體積及性能要求較高的應用場合。

          2 磁場定向控制原理

          磁場定向控制主要是對交流電機的控制,它通過適時的控制轉子的機械速度并調(diào)節(jié)相電流來滿足電磁轉距的要求。磁場定向控制矢量如圖1所示。在圖中的兩直角坐標系中:αβ坐標系為定子靜止坐標系,α軸與定子繞組α軸相重合;dq為轉子旋轉坐標系,d軸與轉子磁鏈方向重合并以同步速度ωp逆時針旋轉。兩坐標系之間的夾角為θe?,F(xiàn)把定子電流綜合矢量is在旋轉坐標系dq軸上分解如下:

          is=isd+isq

          在交流永磁同步電機中,轉子為永磁鋼,可認為轉子電流綜合矢量的模大小不變,常用常數(shù)值If代表。交流電機電磁轉矩T與定子、轉子電流綜合矢量的普遍關系如下:

          T=3PL12 | i1 || i2 | sinψ/2

          式中:P―極對數(shù);

          L12―定子、轉子互感;

          i1―定子電流綜合矢量;

          i2―轉子電流綜合矢量;

          ψ―定子、轉子綜合矢量夾角;

          圖2

          這樣,電磁轉矩就只隨 | i1| 和角ψ變化。為了獲得簡單可控的轉矩特性,可以使定子電流綜合矢量始終在q軸上,即ψ=90o,從而得到:

          T=3PL12IFIS/2

          式中,Is為定子電流綜合矢量的模。利用上式可以實現(xiàn)用定子電流綜合矢量的模來直接控制電動機電磁轉矩,從而使永磁同步電動機獲得類似直流電動機的伺服性能,并可得到快速無靜差的調(diào)節(jié)特性??刂破鞯目刂平Y構框圖2所示。

          該速度控制系統(tǒng)由速度、電流雙閉環(huán)實現(xiàn),采用的算法由相應的模塊實現(xiàn)。ia和ib由電流傳感器檢測獲得,應用clark變換可得到定子電流在靜止坐標中的投影值。進行park變換可以得到在旋轉坐標系下的定子電流投影值。然后將電流和給定的參考值(Isqref和Isdref)進行比較,并經(jīng)過PI調(diào)節(jié)器進行調(diào)節(jié)。電流調(diào)節(jié)的輸出再經(jīng)過反park變換,同時應用空間矢量技術并經(jīng)過三相逆變器即可產(chǎn)生新的定子電壓。為了能夠控制電機的機械速度可通過外環(huán)提供參考電流值Isqref,從而得出機械速度參考值nrefo整個控制器以芯片為核心再配以簡單的外圍電路,其控制算法及功能全部由軟件實現(xiàn)。

          3 永磁同步電機控制器的硬件結構

          永磁同步電機磁場定向控制器以DSP數(shù)字信號處理器為核心。其硬件結構如圖3所示。從圖3可以看出,該系統(tǒng)主要由控制器核心TMS320LF2407A、外圍接口電路、功率回路等幾部分組成。

          3.1 TMS320LF2407A的基本結構

          TMS320LF2407A采用3.3V供電,因而功耗較小。同時因其指令執(zhí)行周期可縮短到25ns,從而提高了控制器的實時處理能力。器件內(nèi)含32kB的FLASH程序存儲器,片內(nèi)外設采用統(tǒng)一的外設總線和數(shù)據(jù)單元進行連接,其中包含兩個事件管理模塊,每個均由兩個16位通用定時器、8個16位的脈寬調(diào)制(PWM)通道、3個捕獲單元以及一套編碼器接口電路組成;10位A/D轉換器可采用序列靈活編程,同時可在一個轉換周期內(nèi)對一個通道進行多次轉換。綜上所述,TMS320LF2407A作為整個控制器的核心,集成了主要的電機外設控制部件,具有高速的運算能力及較高的采樣精度,適合構成單片電機伺服控制器以完成實時要求很高的伺服控制任務。本系統(tǒng)就是利用它來實現(xiàn)矢量變換、電流環(huán)、速度環(huán)、位置環(huán)控制以及PWM信號發(fā)生等功能。

          3.2 高速數(shù)據(jù)采集電路

          該系統(tǒng)中的電動機轉子位置和轉速檢測使用的是增量式光電編碼器。其輸出信號送入TMS320LF2407A的I/O和QEP單元后,即可通過位置的微分運算得到轉速信號。而用霍爾電流傳感器采樣A、B兩相電流即可獲得實時的電流信息。

          3.3 主電源電路

          控制系統(tǒng)的主回路逆變器采用智能功率模塊PM30CSJO60,該模塊采用30A/600VIGBT功率管,它內(nèi)含驅(qū)動電路,并有過壓、過流、過熱、欠壓等故障檢測保護電路。同時系統(tǒng)還設計了軟啟動電路以減少強電對主回路的沖擊。在系統(tǒng)故障保護環(huán)節(jié)中還設置了主回路過壓、欠壓、過熱、過載、制動異常、光電編碼器反饋斷線等保護功能,故障信號由軟硬件配合檢測,一旦出現(xiàn)保護信號,便可通過軟件或硬件邏輯立刻封鎖PWM驅(qū)動信號。

          4 系統(tǒng)軟件設計

          永磁同步電機磁場定向控制器軟件包括DSP主程序和DSP伺服控制程序,其中DSP伺服控制程序由4個部分組成:PWM定時中斷程序、光電編碼器零脈沖捕獲中斷程序、功率驅(qū)動保護中斷程序和通訊中斷程序。主程序流程圖如圖4所示。主程序只完成系統(tǒng)硬件和軟件的初始化任務,然后處于等待狀態(tài)。完整的磁場定向控制(FOC)控制算法用PWM定時中斷服務程序中實現(xiàn)。在一個中斷周期內(nèi),從兩路AD采樣電流可計算轉子位置角和轉速,當完成所有反饋通道計算后,再調(diào)用正向通道中的計算模塊函數(shù),最后輸出三相逆變器的空間矢量PWM波信號。其中斷周期設定為60μs,0.5ms完成一次速度環(huán)和位置環(huán)的控制,控制器的PWM開關周期設置為16kHz。PWM定時中斷程序的流程圖如圖5所示。通訊中斷程序主要用來接收并刷新控制參數(shù),同時設置運行模式;光電編碼器零脈沖捕獲中斷程序可實現(xiàn)對編碼器反饋零脈沖精確地捕獲,從而得到交流永磁同步電機矢量變換定向角度的修正值;功率驅(qū)動保護中斷程序則用于檢測智能功率模塊的故障輸出,當出現(xiàn)故障時,DSP的PWM通道將被封鎖,從而使輸出變成高阻態(tài)。

          5 結束語

          本文提出了基于TMS320LF2407A的永磁同步電機磁場定向控制系統(tǒng)的實現(xiàn)方案,該方案充分利用了DSP的高速運算能力,從而使很多復雜的控制算法和功能得以實現(xiàn)。該系統(tǒng)集實時處理能力和控制器的外設功能于一身,從而實現(xiàn)了系統(tǒng)的實時性和快速性。同時也為開發(fā)小體積、智能型永磁同步電機控制系統(tǒng)提供了一種新的途徑。



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();