新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于單片機數字轉速計的設計

基于單片機數字轉速計的設計

作者: 時間:2012-07-09 來源:網絡 收藏

引 言
  
在工業(yè)控制中經常要進行轉速測量,一般采用的是接觸式轉速計,這種轉速計必須頂在轉軸中心才能進行測量,使用起來不方便,而且局限性很大,安全性也不是很好。因此,我們設計了采用光電傳感器的非接觸式轉速計,測量范圍從1.0~9999轉/分鐘,四位數碼管顯示,當被測轉速小于1000轉/分鐘時,精確到0.1轉/分鐘。

1 測量原理

在被測旋轉軸上貼一片鋁箔作為反光體,當反光體轉到光電傳感器的正前方時,光電傳感器發(fā)出的紅外光束被反射回來,同時被光電傳感器上的紅外接收管接收,產生一個脈沖信號,我們利用這個信號的邊沿觸發(fā)內部的高精度定時器進行計時,精度可達1μs,當反光體再次轉到光電傳感器的正前方時,利用光反射信號的邊沿停止計時。這樣轉軸的旋轉周期t就被精確地測量出來了,然后把周期換算成轉速并通過LED數碼管顯示出來。

2 電路構成及軟件設計

電路結構見圖1,因為要求體積小巧且顯示亮度高,因此,采用掃描顯示模式,然而,用一片CPU同時完成測量和顯示是不行的,掃描功能將嚴重影響CPU的測量。因此,采用兩片ATMEL公司生產的AT89C2051單片機來分別擔任,AT89C2051具有內置2KB的EEPROM程序存儲器和128個字節(jié)的RAM,且每個引腳能夠吸入20mA的電流等這些良好特性。CPU1用來測量旋轉軸的旋轉周期并換算成轉速,然后把顯示數據發(fā)送給CPU2,CPU2平時只是在不斷地掃描顯示數據,當CPU1發(fā)送數據過來時,CPU2產生中斷,立即接收數據,然后更新顯示數據,這樣在四位LED數碼管上的數據就被立即更新了。采用兩片CPU的好處是電路結構清晰,編程簡單,實現了模塊化設計。CPU之間采用串行接口方式2,以中斷形式進行通信。CPU2的通信部分程序清單如下:

點擊在新窗口中瀏覽產品
點擊在新窗口中瀏覽產品

3 結 論

經過實際使用,我們設計的轉速計達到了預先設想的目的,使用方便可靠,而且因為這樣的結構設計使得CPU1的輸入/輸出口占用極少,因此還可以拓展它的功能。例如我們安裝了一個切換開關,增加了光電計數器的功能(探頭是共用的)。另外,我們還可以把CPU2及四位LED共陽數碼管構成一個通用顯示模塊,除顯示0~9等數字外,還可以顯示例如A-J、L、O、P、q、r、U、Y等字符。這樣,如果我們在設計其他的電路時,如果要用到LED數碼管顯示,不必再編程制版,只要使用這個通用顯示模塊即可,簡單方便。這種顯示模塊如果不擴充輸入輸出口線,最多可以進行五位的七段數碼管顯示。



評論


相關推薦

技術專區(qū)

關閉