單片機(jī)是整個測量系統(tǒng)的主要部分,擔(dān)負(fù)對前端脈沖信號的處理、計算、以及信號的同步,計時等任務(wù),其次,將測量的數(shù)據(jù)經(jīng)計算后,將得到的轉(zhuǎn)速值傳送到顯示接口中,用數(shù)碼管顯示數(shù)值。在本系統(tǒng)中考慮到計數(shù)的范圍、使用的定時,計數(shù)器的個數(shù)及I/O口線。
電機(jī)轉(zhuǎn)速測量需要經(jīng)過的4個基本步驟:1是控制方式;2是確定計數(shù)方式;3是信號輸入方式;4是計數(shù)值的讀?。粏纹瑱C(jī)完成對電機(jī)轉(zhuǎn)速脈沖計數(shù)的控制,讀取寄存器完成轉(zhuǎn)速頻率的確定。
其測量過程是測量轉(zhuǎn)速的霍爾傳感器和電機(jī)機(jī)軸同軸連接,機(jī)軸每轉(zhuǎn)一周,產(chǎn)生一定量的脈沖個數(shù),由霍爾器件電路輸出。成為轉(zhuǎn)數(shù)計數(shù)器的計數(shù)脈沖。同時霍爾傳感器電路輸出幅度為12V的脈沖經(jīng)光電耦合后降為5V,保持同單片機(jī)AT89C51邏輯電平相一致,控制計數(shù)時間,即可實(shí)現(xiàn)計數(shù)器的計數(shù)值對應(yīng)機(jī)軸的轉(zhuǎn)速值。主CPU將該值數(shù)據(jù)處理后,在數(shù)碼管上顯示出來。本系統(tǒng)采用89C51中的0INT中斷對轉(zhuǎn)速脈沖計數(shù)。定時器T0工作于定時方式,工作于方式1。每到1s讀一次外部中斷0INT計數(shù)值,此值即為脈沖信號的頻率,可計算出電機(jī)的轉(zhuǎn)速。
當(dāng)直流電機(jī)通過傳動部分帶圓盤旋轉(zhuǎn)時,霍爾傳感器根據(jù)圓盤上得磁片獲得一系列脈沖信號。這些脈沖信號通過單片機(jī)系統(tǒng)定時/計數(shù)器0INT計數(shù),定時器T0定時。定時器T0完成100次溢出中斷的時間T除以測得的脈沖數(shù)m,經(jīng)過單位換算,就可以算得直流電機(jī)旋轉(zhuǎn)的速度。 然后判斷是否啟動系統(tǒng)進(jìn)行測量。如果是,就啟動系統(tǒng)運(yùn)行。如果不是就等待啟動。啟動系統(tǒng)后,霍爾傳感器檢測脈沖到來后,啟動外部中斷,每來一個脈沖中斷一次,記錄脈沖個數(shù)。同時啟動T0定時器工作,每1秒定時中斷一次,讀取記錄的脈沖個數(shù),即電機(jī)轉(zhuǎn)速。連續(xù)采樣三次,取平均值記為一次轉(zhuǎn)速值。再進(jìn)行數(shù)值的判斷,若數(shù)值高于5000rpm則報警并返回初始化階段,否則就進(jìn)行正常速度數(shù)碼管顯示。