基于MLX90316的磁性角度傳感器的設計方案
4.硬件電路設計
硬件電路的核心是磁傳感器信號采集模塊,它主要是利用磁傳感器芯片MLX90316 來實現(xiàn)的,它可以把磁場的變化轉化為角度信息。信號采集電路如圖4所示。
MLX90316芯片是集成了Tria 度isTM型的CMOS霍爾傳感器,當外加磁場的分量與芯片表面平行時則可輸出兩路正交磁場信息,根據這一特點可以獲得對應的角度位置信息,它的內部結構如圖5所示。
當小型磁鐵(徑向磁化)在芯片表面上方旋轉時,MLX90316芯片內的集磁片(IMC)可以將平行作用于芯片表面的磁場集中起來,并在IMC結構的邊緣產生正比于磁場的垂直分量,再通過兩對位于 IMC下方的傳統(tǒng)平面霍爾元件來檢測此信號。這兩對霍爾元件的放置方向相互垂直,并都平行于芯片表面(X軸和Y軸方向),通過這樣的結構可以將實際角度編碼為兩個相位差為90°的正弦信號x V 和y V ,并正比于磁場強度。
這兩路霍爾信號將通過一個完全差分、帶有經典偏移消除技術的模擬處理鏈進行放大、采樣。調節(jié)后的模擬信號再通過ADC(可編程為14bits或15bits)轉換為數字信號,之后這兩個數字信號再通過芯片內部的由DSP實現(xiàn)的反正切函數計算模塊來計算角度,計算公式為:
實際中x V 和y V 還存在式(1)所示的誤差表達式:
MLX90316的偏移誤差、靈敏度誤差和垂直度誤差都會對輸出的角度信息產生較大的影響。雖然芯片內部使用了動態(tài)偏移電壓消除機制,并且可以在一定程度上通過芯片內置的DSP 模塊來調整它們之間的正交性,但這些誤差仍會反應在傳感器的輸出信號上。通常由芯片本身所產生的誤差在0.3度以內。
傳感器輸出的表征當前角度值的信號可以以串行數字通信(SPI)方式輸出,也可再通過D/A轉換器變回模擬信號,以PWM模式或模擬量形式輸出。為了滿足設計電路的結構簡單、成本低等要求,這里選擇的是SPI輸出模式,避免了模擬輸入帶來的額外誤差源。
5.系統(tǒng)軟件設計
由于MLX90316所獲得的角度信息是以SPI模式輸出的,因此程序設計的關鍵就是SPI通信的實現(xiàn)。SP總線接口是一種同步串行外設接口它是是一種由4根信號線構成的串行接口協(xié)議。這4根信號線分別是:時鐘線(SCK)、數據輸入線(MISO)、數據輸出線(MOSI)和從設備使能線(SS)。SPI接口中,MC9S08DZ60作為主控端,MLX90316作為從屬端。SPI通信模塊主要讓 MC9S08DZ606讀MLX90316輸出的數字信號。
SPI的通信過程為:主控端先輸出一個0xAA以及一個0xFF作為通信起始信號,接著輸出8個0xFF,而從端會同時輸出2個0xFF、4個字節(jié)的角度信號以及4個0xFF,從而完成一次數據通信。具體的通信時序如圖6所示,軟件流程如圖(7)所示。
評論