摘要:針對無刷直流電機中霍爾傳感器安裝工藝上的缺陷,設計實現了一個基于虛擬儀器架構的邏輯信號檢測分析儀對電機霍爾傳感器信號進行檢測。采用AT89S52單片機作為信號采集器,通過RS232串口實現單片機與PC通信,應用VB 設計圖形化的界面對采集的數據進行分析。
無刷直流電機(BLDC) 應用中,常采用霍爾傳感器來檢測電機轉子的實際位置,給電子換向提供依據。 然而,由于制造工藝的限制,霍爾傳感器的安裝有可能會產生物理位置偏差,從而造成電子換向的時間發生偏差,影響電機的轉速和平穩度。 為了能檢測出這個制造工藝上的缺陷,在工業上采用了專用的電機檢測設備,然而這些設備結構復雜、體積龐大、價格昂貴。 本文基于虛擬儀器架構的設計思想,設計了一個低成本的邏輯信號檢測分析儀來檢測電機霍爾傳感器信號。
1.系統方案
本設計采用廉價的51 單片機作為信號采集器,51單片機將采集的數據通過RS232串口發送給PC,PC再對這些數據進行記錄和分析并且繪制波形。 硬件部分的結構如圖1所示。
利用51單片機的P1口作為信號采樣口,可以同步采集8路邏輯信號, 然后通過RS232串口,將同一時刻采集到的8路邏輯電平作為一個字節的8個bit傳送給PC。
圖1 硬件結構圖。
2.軟件部分
2.1單片機部分
AT89S52單片機是一種低功耗高性能的CMOS 8位微控制器,其具有8KB可擦寫1000次的在線可編程ISP 閃存、3級程序存儲器加密、256B內部ARM、32 條可編程I/O線、3個16位定時器#計數器、8 個中斷源、UART串行通道等特點。 在AT89S52單片機上,采用P1口作為采樣口,Timer()為等待時間計時器,Timer2用于串口波特率的定時器。串行口數據通信協議是:數據傳輸速率為57600b/s 8位數據位,1位停止位,無奇偶校驗位。 串行口通信初始化程序為:
當51單片機上電后,便開始不停地采樣和發送數據, 這類似于計算機上的“DMA”方式,單片機的主程序流程圖如圖2所示。主程序部分代碼為:
圖2 單片機主程序流程圖
2.2部分
在PC上采用VB來編寫串行口接收、存儲、分析數據的程序,借鑒了“虛擬儀器架構” 的設計思想,力求通過操作PC 端軟件來完成所需要的測試功能,就像在操作自己定義、自己設計的一臺電子儀器一樣。
首先要初始化串口,必須將MSComm控件的通信特性設置為同51單片機一致方可正常通信。
串行口初始化完成后利用MSComm控件可以從串口實時的接收數據。ONComm是MSComm控件的通信事件處理函數。其串口通信的程序為:
以上是串行口接收數據程序,PC 端在接收到數據后還要對數據進行處理和顯示, 在本系統中通過繪制數據采樣結果來直觀地顯示采集到的信號信息。
PC 端軟件除以上功能外, 還具有對采集的數據進行存盤和讀取歷史采樣的功能。
3. 應用實例
霍爾傳感器在無刷直流電機控制系統中起著非常重要的作用。它用于檢測轉子磁極的位置, 為開關電路提供正確的換相信息。若霍爾傳感器的相位產生偏差則會使電子換向的時間發生偏差, 影響電機的轉速和平穩度。若霍爾傳感器的相位缺相,則會使電機相電流變大和電磁轉矩脈動增大, 甚至燒毀電機。所以霍爾相位的檢測是十分重要的#本文中將設計的邏輯信號檢測分析儀應用在電機霍爾傳感器信號檢測上。其硬件電路如圖3所示。
圖3 霍爾傳感器信號檢測硬件電路
無刷直流電機(BLDC)一般有3 個霍爾傳感器, 其產生的3個信號被51單片機采樣, 信號通過RS232串口線被送入PC,在PC 上運行接收和分析軟件可對采集到的信號進行分析、 顯示。將檢測電路連接好后,用手轉動電機轉子,在軟件上啟動采樣,一段時間后停止,可以得到如圖4的波形。 由圖4可以看出當BLDC的轉子旋轉時,霍爾信號會呈現出一種方波的波形, 并可以通過分析軟件的功能對三路霍爾信號的位置變化進行有效的分析。
圖4 PC端上采集到的霍爾信號分析界面
本文設計的基于虛擬儀器架構的邏輯信號檢測分析儀充分發揮了單片機和PC 機的作用,可以同步采樣8路信號, 存儲、 記錄大量的測試數據,能夠對檢測數據進行有效的分析和圖形顯示。 文中成功地將其應用于電機霍爾傳感器信號檢測中,并取得良好的效果。由于其結構簡單、成本低廉、適用面廣、擴展性強等特點, 可將它運用于各種多路信號的檢測方案中。
·上一篇: 沉默許久后,國家集成電路產業大基金又出手了
·下一篇: 單片機教程書籍推薦:王云51單片機C語言程序設