MLX903 16是一種線性霍爾芯片。它采用了平面霍爾傳感技術(shù)的單片集成傳感芯片。傳統(tǒng)的平面霍爾技術(shù)僅僅可以測量垂直于Ic表面的磁通密度,而Triaxis霍爾技術(shù)也可以檢測平行于Ic表面的磁通密度。MLX90316可以用來測量與芯片表面共面的磁通密度,可以得到從0度到360度的旋轉(zhuǎn)位置值,通過多種模式輸出準(zhǔn)確度很高的線性絕對位置信號,并且成本低廉,安裝簡便[1-2]。將MLX90316應(yīng)用于無刷直流電動機(jī)控制系統(tǒng)中可大大提高電動機(jī)的調(diào)速范圍,降低采用霍爾元件的無刷直流電動機(jī)控制系統(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)換器進(jì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)。
在無刷直流電動機(jī)控制中,當(dāng)電動機(jī)轉(zhuǎn)子在360。附近的一個很小區(qū)間內(nèi)時,模擬量輸出會隨機(jī)產(chǎn)生一個電壓值,會導(dǎo)致電動機(jī)位置及速度檢測錯誤。另外,根據(jù)MLX90316內(nèi)部結(jié)構(gòu)框圖,串行通信的輸出信號直接來自于MLX90316的內(nèi)部DSP輸出,SPI輸出模式更穩(wěn)定,誤差更小,并且具有更高的抗干擾能力。所以MLX90316的SPI輸出模式更適用于電動機(jī)控制系統(tǒng)中。在無刷直流電動機(jī)控制器的設(shè)計中,本文選擇了MLX90316的SPI輸出模式。
2、控制器結(jié)構(gòu)
無刷直流電動機(jī)控制器的總體結(jié)構(gòu)如圖3所示。運動控制專用DSP芯片dsPIC30F6010構(gòu)成了控制器的核心控制單元[2-3]。控制量由外部端子及模擬量或者RS485鍵盤或者PC機(jī)通過Modbus協(xié)議給出;電動機(jī)轉(zhuǎn)子位置由MLX90316獲得;MLX903 16的SPI輸出信號直接與dsPIC30F6010的SPI模塊相連;PWM驅(qū)動信號通過電動機(jī)控制MCPWM模塊產(chǎn)生;故障信號的檢測由外部電路產(chǎn)生,并送給dsPIC30F6010的I/O口。
由于系統(tǒng)僅需要從MLX903 16芯片獲得位置信號,屬于單向通信,因此為了進(jìn)一步節(jié)省其引腳及精簡接線,MLX90316的SPI通信模式僅需3根線接入無刷電機(jī)控制系統(tǒng)中。dsPIC30F6010與MLX90316的時鐘線(SCK)和從設(shè)備使能線(/SS)直接相連,而dsPIC30F6010的SDI1和SD01這兩個引腳則通過一個信號處理電路接至MLX90316引腳MISO/MOSI。該處理電路如圖4所示。
根據(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ù)進(jìn)行校驗。在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)錯誤這個問題則需要進(jìn)一步驗證。由于SPI輸出模式的角度信號是14位的二進(jìn)制數(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ù)下式計算獲得電動機(jī)轉(zhuǎn)速:
在實驗中采用的無刷直流電動機(jī)主要參數(shù)為:極對數(shù)4,額定轉(zhuǎn)速為2 000 r/min,額定電流0.55 A,額定功率180 W。
從試驗結(jié)果可以看出,在無刷直流電動機(jī)控制器中,MLX90316能克服霍爾元件低速性能差的缺點,提高電動機(jī)速度控制范圍和精度,并且具有價格優(yōu)勢。MLX90316的SPI輸出方式在應(yīng)用中的主要問題是存在一定傳輸延時,影響控制精度,特別是在中高速表現(xiàn)得比較明顯,這是下一步研究工作中需要解決的主要問題。