摘 要: 介紹了該傳感器的特性,著重介紹了該傳感器的編程方法以及利用ARM芯片STM32的軟硬件設計方案,。當編碼協(xié)議發(fā)生改變時,只需對編碼指令作少量修改,,具有很強的靈活性。目前,,該設計在產品中已得到實際應用,。
關鍵詞: STM32; 霍爾傳感器,; 可編程,; 微控制器; DAC,; 過流保護
隨著電子技術的發(fā)展,,霍爾傳感器在精密測量、消費電子工業(yè),、醫(yī)療保健特別是汽車電子領域得到了出色應用,。霍爾傳感器是一種能實現(xiàn)磁電轉換的傳感器,,可以將磁場信號轉換為電壓信號輸出,。本文使用的Allegro1675 開關型霍爾傳感器是一款零速齒輪傳感器,該傳感器采用了單一的霍爾元件IC,,該IC可響應鐵氧體目標產生的差分磁信號而進行開關操作,,廣泛用于轉速、汽車電子等應用[1],。
在實際使用時,,霍爾傳感器在不同應用中往往實現(xiàn)不同的功能,這就要求根據(jù)不同的用途來進行相應的參數(shù)設定,。因此,,在此設計的可編程霍爾傳感器可以對其磁場工作點、線性靈敏度等參數(shù)進行出廠后編程,,來滿足實際需要,。
本文針對Allegro1675霍爾傳感器,使用ST公司的STM32F103VET6微控制器,設計了一款傳感器參數(shù)標定的編程器,,以有效代替原有的ASEK BOX編程器,。此方案實現(xiàn)方法簡單,穩(wěn)定,,靈活,,有效解決了ASEK BOX產能不足的問題,,在工業(yè)中可以得到更加廣泛的應用。
1 Allegro1675介紹
A1675共有VCC,、GND,、TEST和OUT4個引腳。VCC既是供電電源的輸入,,也是傳感器編程模式的接口[2],。OUT作為信號的輸出腳。TEST作為編程后的測試接口,。
2 控制芯片STM32F103VET6簡介
控制器采用ST公司的STM32F103VET6作為控制芯片,基于ARM Cortex-M3內核,最高時鐘頻率可達72 MHz,,包括512 KB片內Flash、64 KB片內RAM,、ADC,、DAC、看門狗定時器,、12位模/數(shù)轉換器以及USART,、CAN、USB接口等[3],。該控制器具有豐富的外設,,同時兼具低功耗以及高可靠性和可維護性[4],非常適合工業(yè)應用,。
3 系統(tǒng)整體設計
系統(tǒng)結構如圖1所示,該系統(tǒng)由PC上位機,、STM32處理器、電壓放大電路,、電流保護電路,、霍爾傳感器等模塊組成。PC上位機通過USB接口與編程器相連,,實現(xiàn)上位機對編程器的指令控制以及軟件的調試工作,該USB接口通過串口轉換芯片F(xiàn)T232得到,。
4 編程器硬件電路設計
4.1電壓放大及反饋電路設計
此設計中,,利用STM32的內置D/A轉換器輸出一個電壓值,通過運放opa170之后得到編程所需的電壓值,。編程電壓最高需要達到30 V,,這里使用MIC2287將5 V電壓轉為32 V供運算放大器使用。為了使輸出值達到要求范圍內,,使用STM32自帶的A/D轉換器的注入型通道,,配合定時器以一定的采樣頻率對輸出參數(shù)進行采樣,配合程序中的電壓調整算法,,輸出符合要求的電壓值,。具體電路如圖2所示,,受限于STM32本身原因,STM32的D/A輸出最小值在200 mV左右,,因此,,放大器的輸出端無法輸出0~3 V的電壓。
為了消除誤差,,可以在放大器的反相端增加一個補償電路,,參考電壓為0.5 V,根據(jù)電路的反饋,,可以得到:
對式(1)帶入R1,、R2、R3,、R4的值,,得到Vout=18 Vdac-V0.5。所以當DAC輸出的值為0.5 V時,,放大器輸出端可以輸出為0 V的值,,避免了0~3V的限制。同時,,利用精密電阻R5,、R6將反饋電壓送至ADC中檢測,完成電壓的自適應調整,。
4.2 電流放大及過流保護電路設計
傳感器波形燒錄過程中,,會產生250 mA的電流,所以此處使用了ZXGD3003A電流放大器,。同時,,在使用過程中,由于操作不當或者負載短路等情況的產生,,會造成燒錄器以及傳感器的損傷,,因此過流保護在電路設計中是非常重要的。本設計采用了軟件保護與硬件保護雙重措施,,具體電路設計如圖3所示,。
(1)軟件保護端:INA193為電流監(jiān)控器,OUT腳為20倍放大R12口兩端的電壓,。將處理器STM32的ADC設置為規(guī)則組通道以及連續(xù)轉換模式,,通過ADC不斷掃描INA193的1腳電壓值來監(jiān)測實時電流。同時,,軟件端啟用STM32的看門狗功能,,當采樣值大于預設閾值,則觸發(fā)看門狗中斷,,啟動軟件保護,,將PT1端置高,,F(xiàn)DN36P截止,實現(xiàn)由軟件斷開電源,,停止對燒錄芯片供電,。
(2)硬件保護端:電壓跟隨器、比較器以及555構成單穩(wěn)態(tài)觸發(fā)器,。當INA193檢測到電流超過1 A時,,比較器輸出低電平,觸發(fā)單穩(wěn)態(tài),,此時555輸出端由低電平跳變?yōu)楦唠娖?,電路由穩(wěn)態(tài)轉為暫穩(wěn)態(tài),F(xiàn)DN36P截止,,霍爾傳感器與電路斷開,。此時,VCC給電容C4充電,當555定時器7腳升到2 VCC/3時,555輸出端由高電平跳變低電平,,F(xiàn)DN36P導通,電路繼續(xù)供電,如果此時INA193檢測電流依然過大,則再次觸發(fā)定時器,,斷開電路。這樣形成了一個反復嘗試導通的過程,,直至電路電流正常,。這種硬件電路反應時間快,可以有效保護電路[5],。
5 可編程技術
這種可編程傳感器通過在VCC端施加不同幅度和寬度的脈沖來對應不同代碼的編程動作,,實現(xiàn)對傳感器參數(shù)的編程調整。在編程過程中,,分別設定3個不同的電壓進行編碼設置,,分別是高電壓Vph、中電壓Vpm和低電壓Vpl,如圖4所示,。圖中td(1),、td(0)分別為高、低電壓脈沖時間,,根據(jù)編寫代碼位的不同,,燒斷熔絲時間td(p)x設置也不相同。短沖的作用是區(qū)分不同的編程代碼位,;長脈沖的作用是燒斷熔絲,,完成鎖定,。
霍爾傳感器編程有以下3個步驟:開啟編程模式,、設置工作點、設置鎖定位,。如圖5(a)所示,,在編程模式開啟階段,,輸入有序脈沖至傳感器電源端使霍爾傳感器設置到編程模式,輸入連續(xù)7個Vpm脈沖序列使霍爾傳感器進入到Baseline 設置,,連續(xù)輸入6個Vpm脈沖使霍爾傳感器進入到TPOS設置,。圖5(b)中,工作點編程設置階段,,根據(jù)需要在要求的磁場點進行編程,。編程的過程中,根據(jù)器件的實際用途和各項性能參數(shù)指標分別編程,,精確調整磁場的工作點位置,。圖5(c)為鎖定位設置階段,施加128個連續(xù)的鎖定脈沖,,最后,,輸出一個寬脈沖燒斷芯片內置的熔絲[6]。此時,,所有寄存器將被鎖定,,傳感器不再響應供電電壓的調制,這樣就確保了設置的參數(shù)不再改變,。以上3個過程實現(xiàn)了對產品參數(shù)的編程鎖定,。
6 軟件設計
STM32控制程序通過C語言編寫,主要通過DAC的輸出以及ADC的檢測完成各種電源輸出的設置,。一方面DAC根據(jù)發(fā)送命令不斷輸出電壓,;另一方面ADC不斷檢測輸出電壓,然后根據(jù)電壓調整算法不斷調整DAC輸出的值,。根據(jù)霍爾傳感器A1675的波形燒錄要求,,完成各項波形的設置以及燒寫。主程序流程圖如圖6所示,。
7 方案驗證
對圖3所示電路的輸出端測量燒錄霍爾傳感器的波形,,圖5(a)的實際波形如圖7所示。Vph,、Vpm,、Vpl、0值均達到了精度要求,,符合傳感器編碼波形的要求,。
該設計方案完成了對霍爾傳感器的編程器的軟硬件設計。系統(tǒng)包含了電壓的預設,、采樣,、校準以及輸出保護電路,成功完成了對霍爾傳感器的編程燒寫。目前,,本設計方案已成功實現(xiàn)霍爾傳感器在位置檢測以及速度檢測等方面的應用,。
參考文獻
[1] 單祥茹.基礎元件介紹——傳感器(三)[J].中國電子商情(基礎電子),2011(12):81-82.
[2] 吳志紅,管志華,,朱元.ModBus協(xié)議下的線性霍爾傳感器編程器[J].設計應2011,18(10):53-56.
[3] STMicroelectronics.STM32F10xxx reference manual(RM0008)[Z]. 2010.
[4] 張勇,,董浩斌. 基于STM32和LabVIEW的地震數(shù)據(jù)采集卡的設計[J].電子技術2012,38(10):72-74.
[5] 譚琦耀.基于555電路的單穩(wěn)態(tài)觸摸開關設計[J].煤炭技術,2012,31(6):6-62.
[6] 張浩.霍爾集成電路設計及其測試系統(tǒng)的研發(fā)[D].蘭州:蘭州大學,,2010.