摘要:在介紹MLX90316內(nèi)部結(jié)構(gòu)以及其輸出模式的基礎(chǔ)上,給出了以dsPIC30F6010為CPU、以MLX90316為位置反饋的無刷直流電動機控制器的結(jié)構(gòu)。詳細介紹了基于SPI輸出模式的MLX90316與dsPIC30F6010的連接方法,給出了在無刷直流電動機控制器中基于MLX90316的速度檢測策略。試驗結(jié)果證實了MLX90316能提高無刷直流電動機的控制性能。
關(guān)鍵詞:MLX90316;無刷直流電動機;位置檢測;dsPIC30F6010s
[b][align=center]Application of MLX903 16 in Control of Brushless DC M otors
CHENG Shan—mei,CHEN Zhou,CHEN Zhi—yong[/align][/b]
(Huazhong University of Science and Technology,Wuhan 430074,China)
Abstract:The scheme of brushless DC motor controller was presented based on introducing internalstrueture of MLX903 16 and its output modes. In the controller. dsPIC30F6010 was its CPU andMI 90316 was its position feedback sensor. The connection between MLx90316 and dsPIC30F6010were in~oduced based on SPI mode in detail.The speed measurement based on MLx903 16 was given inthe controller of brushless DC motor. The presented experimental results verified that M12(903 16 couldimprove the control performance of brushless DC motor.
Key Words:MLX9O3 16:Brushless DC motor;Position measurement;dsPIC30F6010s
0 引 言
MLX903 16是一種線性霍爾芯片。它采用了平面霍爾傳感技術(shù)的單片集成傳感芯片。傳統(tǒng)的平面霍爾技術(shù)僅僅可以測量垂直于Ic表面的磁通密度,而Triaxis霍爾技術(shù)也可以檢測平行于Ic表面的磁通密度。MLX90316可以用來測量與芯片表面共面的磁通密度,可以得到從0度到360度的旋轉(zhuǎn)位置值,通過多種模式輸出準(zhǔn)確度很高的線性絕對位置信號,并且成本低廉,安裝簡便[1-2]。將MLX90316應(yīng)用于無刷直流電動機控制系統(tǒng)中可大大提高電動機的調(diào)速范圍,降低采用霍爾元件的無刷直流電動機控制系統(tǒng)中低速轉(zhuǎn)矩的波動,改善控制性能。
1 MLX90316結(jié)構(gòu)
圖1是MLX90316內(nèi)部的結(jié)構(gòu)框圖。芯片前端是采用Triaxis霍爾技術(shù)的傳感器。由霍爾傳感器得到的二路正交的模擬信號經(jīng)過放大處理后,經(jīng)過14位微分型A/D轉(zhuǎn)換器進入芯片微處理器(DSP),再經(jīng)過16位DSP處理之后的數(shù)字信號分3路輸出。MLX90316輸出具有12位角度分辨率,10位角度精度,并且在一定程度上可以避免外圍溫度變化對輸出精度的影響。MLX90316具有3種輸出:由12位D/A轉(zhuǎn)換為模擬量輸出;頻率為100 Hz一1 000 Hz的PWM輸出;數(shù)字模式下利用串行通信協(xié)議輸出(SPI)。
SPI(Serial Protocol Interface)總線接口是一種同步串行外設(shè)接口。這是一個4根信號線的串行接口協(xié)議,包括主、從兩種模式。這4根信號線分別是:時鐘線(SCK)、數(shù)據(jù)輸入線(MISO)、數(shù)據(jù)輸出線(MOSI)和從設(shè)備使能線(/ss)。
圖2是數(shù)據(jù)傳輸結(jié)構(gòu)圖。該圖詳細描述了MLX90316的SPI通信過程。即主控端先輸出一個0xAA以及一個OxFF作為通信起始信號,然后接著輸出8個OxFF,而從端會同時輸出2個OxFF、4個字節(jié)的角度信號以及4個OxFF,從而完成一次數(shù)據(jù)通訊。
在無刷直流電動機控制中,當(dāng)電動機轉(zhuǎn)子在360。附近的一個很小區(qū)間內(nèi)時,模擬量輸出會隨機產(chǎn)生一個電壓值,會導(dǎo)致電動機位置及速度檢測錯誤。另外,根據(jù)MLX90316內(nèi)部結(jié)構(gòu)框圖,串行通信的輸出信號直接來自于MLX90316的內(nèi)部DSP輸出,SPI輸出模式更穩(wěn)定,誤差更小,并且具有更高的抗干擾能力。所以MLX90316的SPI輸出模式更適用于電動機控制系統(tǒng)中。在無刷直流電動機控制器的設(shè)計中,本文選擇了MLX90316的SPI輸出模式。
2 控制器結(jié)構(gòu)
無刷直流電動機控制器的總體結(jié)構(gòu)如圖3所示。運動控制專用DSP芯片dsPIC30F6010構(gòu)成了控制器的核心控制單元[2-3]??刂屏坑赏獠慷俗蛹澳M量或者RS485鍵盤或者PC機通過Modbus協(xié)議給出;電動機轉(zhuǎn)子位置由MLX90316獲得;MLX903 16的SPI輸出信號直接與dsPIC30F6010的SPI模塊相連;PWM驅(qū)動信號通過電動機控制MCPWM模塊產(chǎn)生;故障信號的檢測由外部電路產(chǎn)生,并送給dsPIC30F6010的I/O口。
逆變電路采用IPM智能集成模塊。它不僅把功率開關(guān)管和門極驅(qū)動電路集成在一起,而且還包含了過壓、過流和過熱等故障檢測電路??刂破鞑捎肞M20CSJ060模塊。該模塊為6只IGBT管封裝模塊,額定電壓為600 V,額定電流為20 A,開關(guān)頻率可達20 kHz。
由于系統(tǒng)僅需要從MLX903 16芯片獲得位置信號,屬于單向通信,因此為了進一步節(jié)省其引腳及精簡接線,MLX90316的SPI通信模式僅需3根線接入無刷電機控制系統(tǒng)中。dsPIC30F6010與MLX90316的時鐘線(SCK)和從設(shè)備使能線(/SS)直接相連,而dsPIC30F6010的SDI1和SD01這兩個引腳則通過一個信號處理電路接至MLX90316引腳MISO/MOSI。該處理電路如圖4所示。
3 基于MLX90316的速度檢測
根據(jù)MLX903 16芯片的通訊要求,本應(yīng)用采用了dsPIc30F6010芯片為主控端、MLX90316芯片為從端的控制方式。通信所需的同步時鐘信號由主控端產(chǎn)生,并且數(shù)據(jù)幀同步信號/SS也通過將主控端的I/O 口輸出拉低來實現(xiàn)。這樣,在主控端dsPIC3OF6010芯片上便可以完全控制位置信號輸入的時間以及信號的傳輸頻率。
在高速模式下,MLX90316對SPI通信的要求主要包括以下幾個方面:同步時鐘周期不小于2.3 μs;每個傳輸?shù)淖止?jié)數(shù)據(jù)之問的間隔不小于12.5 μs;數(shù)據(jù)幀同步信號/ss的無效時問不小于300 μs;通信起始字節(jié)數(shù)據(jù)與后面的位置信號數(shù)據(jù)之問的時間間隔不小于15μs。這些要求可通過合理設(shè)定時鐘周期和定時器溢出中斷延時實現(xiàn)。取速度環(huán)周期為1 ms,在每個速度環(huán)一次發(fā)送0xAA和9個OxFF,同時通過查詢相應(yīng)狀態(tài)位的方式將同步傳輸?shù)?0個字節(jié)的數(shù)據(jù)信號存人數(shù)組。
當(dāng)所有接收數(shù)據(jù)都讀取到數(shù)組以后,再對該數(shù)組的數(shù)據(jù)進行校驗。在MLX90316的SPI通訊的數(shù)據(jù)格式中,第3~6個字節(jié)的數(shù)據(jù)為位置信號。其中,前兩個字節(jié)分別是位置信號的高字節(jié)和低字節(jié);而后兩個字節(jié)則是前兩個位置信號數(shù)據(jù)的取反值,用來校驗數(shù)據(jù)的正確性。
如果前兩個字節(jié)與后兩個字節(jié)的取反值相同,則可確定SPI通訊過程中沒有出現(xiàn)任何問題,但是MLX90316芯片輸出的信號是否為有效信號,其角度檢測是否出現(xiàn)錯誤這個問題則需要進一步驗證。由于SPI輸出模式的角度信號是14位的二進制數(shù),所以該芯片的輸出信號最低2位是數(shù)據(jù)狀態(tài)值,即當(dāng)最低2位的值為1時表示高14位的角度信號正確,而當(dāng)最低2位的值為2時則說明MLX90316在位置檢測時出現(xiàn)了錯誤,具體的錯誤來源可以根據(jù)高14位的值查相應(yīng)的錯誤表得到。
如果在以上通信過程中出錯或者是傳輸?shù)臄?shù)據(jù)顯示MLX90316檢測出錯,則應(yīng)當(dāng)立即封鎖PWM信號,并點亮錯誤指示燈,同時顯示錯誤信息。
如果獲得的角度信號正確,則可將此次的角度數(shù)據(jù)右移2位后減去前次的值以獲得1 ms內(nèi)位置信號的差SPI—AngleDif,再根據(jù)下式計算獲得電動機轉(zhuǎn)速:

4 試驗結(jié)果及結(jié)論
在實驗中采用的無刷直流電動機主要參數(shù)為:極對數(shù)4,額定轉(zhuǎn)速為2 000 r/min,額定電流0.55 A,額定功率180 W。
圖5和圖6為電動機采用MLX90316作為反饋,轉(zhuǎn)速給定分別為1 000 r/rain和100 r/rain時的速度響應(yīng)波形。
圖7為電動機采用霍爾元件作為反饋、轉(zhuǎn)速給定分別為1 000 r/min時的速度響應(yīng)波形。當(dāng)轉(zhuǎn)速為100 r/min的低速時,速度環(huán)周期較大,測速誤差也較大,在實際應(yīng)用中無法實現(xiàn)低速控制。
從試驗結(jié)果可以看出,在無刷直流電動機控制器中,MLX90316能克服霍爾元件低速性能差的缺點,提高電動機速度控制范圍和精度,并且具有價格優(yōu)勢。MLX90316的SPI輸出方式在應(yīng)用中的主要問題是存在一定傳輸延時,影響控制精度,特別是在中高速表現(xiàn)得比較明顯,這是下一步研究工作中需要解決的主要問題。
參考文獻
[1] Melexis Mieroeleetronie Integrated System.MIX90316 Rotary Po—sition Sensor IC. 2005.
[2] MicrochipTechnologyInc.dsPIC30F FamilyR商目mceManua1.2OO4.
[3] 程善美,陳志勇.面向電機控制的高性能DSC芯片[J].微電機,2006,39(3):77-80.