單片機(jī)是整個(gè)測(cè)量系統(tǒng)的主要部分,擔(dān)負(fù)對(duì)前端脈沖信號(hào)的處理、計(jì)算、以及信號(hào)的同步,計(jì)時(shí)等任務(wù),其次,將測(cè)量的數(shù)據(jù)經(jīng)計(jì)算后,將得到的轉(zhuǎn)速值傳送到顯示接口中,用數(shù)碼管顯示數(shù)值。在本系統(tǒng)中考慮到計(jì)數(shù)的范圍、使用的定時(shí),計(jì)數(shù)器的個(gè)數(shù)及I/O口線。
電機(jī)轉(zhuǎn)速測(cè)量需要經(jīng)過的4個(gè)基本步驟:1是控制方式;2是確定計(jì)數(shù)方式;3是信號(hào)輸入方式;4是計(jì)數(shù)值的讀??;單片機(jī)完成對(duì)電機(jī)轉(zhuǎn)速脈沖計(jì)數(shù)的控制,讀取寄存器完成轉(zhuǎn)速頻率的確定。
其測(cè)量過程是測(cè)量轉(zhuǎn)速的霍爾傳感器和電機(jī)機(jī)軸同軸連接,機(jī)軸每轉(zhuǎn)一周,產(chǎn)生一定量的脈沖個(gè)數(shù),由霍爾器件電路輸出。成為轉(zhuǎn)數(shù)計(jì)數(shù)器的計(jì)數(shù)脈沖。同時(shí)霍爾傳感器電路輸出幅度為12V的脈沖經(jīng)光電耦合后降為5V,保持同單片機(jī)AT89C51邏輯電平相一致,控制計(jì)數(shù)時(shí)間,即可實(shí)現(xiàn)計(jì)數(shù)器的計(jì)數(shù)值對(duì)應(yīng)機(jī)軸的轉(zhuǎn)速值。主CPU將該值數(shù)據(jù)處理后,在數(shù)碼管上顯示出來。本系統(tǒng)采用89C51中的0INT中斷對(duì)轉(zhuǎn)速脈沖計(jì)數(shù)。定時(shí)器T0工作于定時(shí)方式,工作于方式1。每到1s讀一次外部中斷0INT計(jì)數(shù)值,此值即為脈沖信號(hào)的頻率,可計(jì)算出電機(jī)的轉(zhuǎn)速。
當(dāng)直流電機(jī)通過傳動(dòng)部分帶圓盤旋轉(zhuǎn)時(shí),霍爾傳感器根據(jù)圓盤上得磁片獲得一系列脈沖信號(hào)。這些脈沖信號(hào)通過單片機(jī)系統(tǒng)定時(shí)/計(jì)數(shù)器0INT計(jì)數(shù),定時(shí)器T0定時(shí)。定時(shí)器T0完成100次溢出中斷的時(shí)間T除以測(cè)得的脈沖數(shù)m,經(jīng)過單位換算,就可以算得直流電機(jī)旋轉(zhuǎn)的速度。 然后判斷是否啟動(dòng)系統(tǒng)進(jìn)行測(cè)量。如果是,就啟動(dòng)系統(tǒng)運(yùn)行。如果不是就等待啟動(dòng)。啟動(dòng)系統(tǒng)后,霍爾傳感器檢測(cè)脈沖到來后,啟動(dòng)外部中斷,每來一個(gè)脈沖中斷一次,記錄脈沖個(gè)數(shù)。同時(shí)啟動(dòng)T0定時(shí)器工作,每1秒定時(shí)中斷一次,讀取記錄的脈沖個(gè)數(shù),即電機(jī)轉(zhuǎn)速。連續(xù)采樣三次,取平均值記為一次轉(zhuǎn)速值。再進(jìn)行數(shù)值的判斷,若數(shù)值高于5000rpm則報(bào)警并返回初始化階段,否則就進(jìn)行正常速度數(shù)碼管顯示。
單片機(jī)的轉(zhuǎn)速測(cè)量完成,定時(shí)器T0作為內(nèi)部定時(shí)器,外部中斷來的時(shí)候讀取TH0,TL0,并同時(shí)清零TH0、TL0,使定時(shí)器再次循環(huán)計(jì)內(nèi)部脈沖。此外,對(duì)于低速情況下,我們還要設(shè)定一個(gè)軟件計(jì)數(shù)器VTT,當(dāng)外部中斷還沒來而內(nèi)部定時(shí)器已經(jīng)溢出,產(chǎn)生定時(shí)器0中斷時(shí),增加VTT,作為三字節(jié)中的高字節(jié)。三字節(jié)組成除數(shù),上面的常數(shù)為四字節(jié),所以計(jì)算程序?qū)嶋H上就是調(diào)用一個(gè)四字節(jié)除三字節(jié)商為兩字節(jié)的程序。 為數(shù)碼管能夠顯示出來,需將二進(jìn)制轉(zhuǎn)換為十進(jìn)制,在將十進(jìn)制轉(zhuǎn)換為非壓縮BCD碼后,才能調(diào)用查表程序,zui后送顯示。 單片機(jī)轉(zhuǎn)速計(jì)算程序 由于本次設(shè)計(jì)的系統(tǒng)要實(shí)現(xiàn)的功能是將霍爾傳感器的信號(hào)送到單片機(jī)的外部中斷口,再對(duì)周期方波進(jìn)行內(nèi)部計(jì)數(shù),調(diào)用計(jì)算程序把轉(zhuǎn)速測(cè)出來??梢哉f是核心部分。
掃一掃 微信咨詢
©2024 深圳市美鑫儀器儀表電子有限公司 版權(quán)所有 備案號(hào):粵ICP備14025211號(hào)
技術(shù)支持:儀表網(wǎng) GoogleSitemap 總訪問量:554712 管理登陸