新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機在電機轉(zhuǎn)速測量儀應(yīng)用

單片機在電機轉(zhuǎn)速測量儀應(yīng)用

作者: 時間:2016-11-21 來源:網(wǎng)絡(luò) 收藏
單片機是整個測量系統(tǒng)的主要部分,擔負對前端脈沖信號的處理、計算、以及信號的同步,計時等任務(wù),其次,將測量的數(shù)據(jù)經(jīng)計算后,將得到的轉(zhuǎn)速值傳送到顯示接口中,用數(shù)碼管顯示數(shù)值。在本系統(tǒng)中考慮到計數(shù)的范圍、使用的定時,計數(shù)器的個數(shù)及I/O口線。

本文引用地址:http://butianyuan.cn/article/201611/319388.htm

電機轉(zhuǎn)速測量需要經(jīng)過的4個基本步驟:1是控制方式;2是確定計數(shù)方式;3是信號輸入方式;4是計數(shù)值的讀?。粏纹瑱C完成對電機轉(zhuǎn)速脈沖計數(shù)的控制,讀取寄存器完成轉(zhuǎn)速頻率的確定。

其測量過程是測量轉(zhuǎn)速的霍爾傳感器和電機機軸同軸連接,機軸每轉(zhuǎn)一周,產(chǎn)生一定量的脈沖個數(shù),由霍爾器件電路輸出。成為轉(zhuǎn)數(shù)計數(shù)器的計數(shù)脈沖。同時霍爾傳感器電路輸出幅度為12V的脈沖經(jīng)光電耦合后降為5V,保持同單片機AT89C51邏輯電平相一致,控制計數(shù)時間,即可實現(xiàn)計數(shù)器的計數(shù)值對應(yīng)機軸的轉(zhuǎn)速值。主CPU將該值數(shù)據(jù)處理后,在數(shù)碼管上顯示出來。本系統(tǒng)采用89C51中的0INT中斷對轉(zhuǎn)速脈沖計數(shù)。定時器T0工作于定時方式,工作于方式1。每到1s讀一次外部中斷0INT計數(shù)值,此值即為脈沖信號的頻率,可計算出電機的轉(zhuǎn)速。

當直流電機通過傳動部分帶圓盤旋轉(zhuǎn)時,霍爾傳感器根據(jù)圓盤上得磁片獲得一系列脈沖信號。這些脈沖信號通過單片機系統(tǒng)定時/計數(shù)器0INT計數(shù),定時器T0定時。定時器T0完成100次溢出中斷的時間T除以測得的脈沖數(shù)m,經(jīng)過單位換算,就可以算得直流電機旋轉(zhuǎn)的速度。然后判斷是否啟動系統(tǒng)進行測量。如果是,就啟動系統(tǒng)運行。如果不是就等待啟動。啟動系統(tǒng)后,霍爾傳感器檢測脈沖到來后,啟動外部中斷,每來一個脈沖中斷一次,記錄脈沖個數(shù)。同時啟動T0定時器工作,每1秒定時中斷一次,讀取記錄的脈沖個數(shù),即電機轉(zhuǎn)速。連續(xù)采樣三次,取平均值記為一次轉(zhuǎn)速值。再進行數(shù)值的判斷,若數(shù)值高于5000rpm則報警并返回初始化階段,否則就進行正常速度數(shù)碼管顯示。

單片機的轉(zhuǎn)速測量完成,定時器T0作為內(nèi)部定時器,外部中斷來的時候讀取TH0,TL0,并同時清零TH0、TL0,使定時器再次循環(huán)計內(nèi)部脈沖。此外,對于低速情況下,我們還要設(shè)定一個軟件計數(shù)器VTT,當外部中斷還沒來而內(nèi)部定時器已經(jīng)溢出,產(chǎn)生定時器0中斷時,增加VTT,作為三字節(jié)中的高字節(jié)。三字節(jié)組成除數(shù),上面的常數(shù)為四字節(jié),所以計算程序?qū)嶋H上就是調(diào)用一個四字節(jié)除三字節(jié)商為兩字節(jié)的程序。為數(shù)碼管能夠顯示出來,需將二進制轉(zhuǎn)換為十進制,在將十進制轉(zhuǎn)換為非壓縮BCD碼后,才能調(diào)用查表程序,最后送顯示。單片機轉(zhuǎn)速計算程序由于本次設(shè)計的系統(tǒng)要實現(xiàn)的功能是將霍爾傳感器的信號送到單片機的外部中斷口,再對周期方波進行內(nèi)部計數(shù),調(diào)用計算程序把轉(zhuǎn)速測出來。可以說是核心部分。



評論


技術(shù)專區(qū)

關(guān)閉