


摘 要:為解決傳統直尺量程小、功能單一、攜帶麻煩等問題,文章設計了一種以STM32單片機為核心,使用增量式光電編碼器采集數據并通過OLED顯示屏實時顯示和語音播報測量結果的新型滾動尺。該滾動尺具有量程大、精度高、使用方便等特點,不僅可以測量直線的距離,還可以測量曲線、曲面的距離。
關鍵詞:滾動尺;增量式光電編碼器;STM32單片機
傳統的尺子主要有游標卡尺、鋼尺、卷尺等,量程一般在10米左右,只能測量直線距離,功能單一,體積略大。針對傳統尺子的局限性,文中設計了一種基于STM32單片機的新型滾動尺,該滾動尺具有量程大、精度高、使用方便等特點,不僅可以測量直線距離,還可以測量曲線、曲面的距離,測量時通過OLED顯示屏實時顯示測量數據,測量完畢后能夠語音播報測量結果,有效地解決了傳統直尺的量程小,功能單一,攜帶麻煩等缺點。
滾動尺主要由滾動小輪、增量式編碼器、STM32單片機、按鍵、OLED顯示屏以及語音播報模塊組成。其中,增量式編碼器負責將滾動小輪的圓周運動轉換成脈沖輸出給單片機,STM32單片機是滾動尺的核心,負責處理各項數據和任務,OLED顯示屏負責實時顯示測量結果,語音模塊部分負責將測量結果通過語音播放出來,而按鍵模塊則負責測量單位轉換、數據鎖定或清零等操作。滾動尺組成示意圖如圖1所示。
圖1 滾動尺組成示意圖
一、測距原理
滾動尺的測距原理為:當用手拖動滾動尺時,滾動小輪做圓周運動并帶動編碼器,編碼器將圓周運動轉化成數字脈沖信號輸出,單片機對編碼器輸出的脈沖進行捕獲并計數,結合滾動小輪的直徑以及編碼器的分辨率,就可以測算出滾動小輪所走過的距離,從而計算出距離。
當滾動小輪的周長為51.2mm,編碼器的分辨率為512線時,如果滾動小輪帶動編碼器旋轉一周,則滾動小輪走過的距離為51.2mm,編碼器輸出512個脈沖,此時一個脈沖就對應0.1mm的長度。如果用滾動尺測量了一段距離后,編碼器共輸出了100個脈沖,那么所測的這段距離為0.1mm×100=10cm。
二、硬件設計
滾動尺的硬件設計包括3.3V穩壓電路、STM32單片機最小系統、編碼器、OLED顯示器以及語音播放電路等。STM32F103C8是一款高性能32位微控制器,具有20KB的RAM以及64KB的ROM,強大的處理性能足以應付復雜的任務。編碼器采用了512線增量式光電編碼器,OLED顯示器采用了0.96英寸128*64分辨率的OLED顯示器。語音播放采用了WT588D語音芯片。滾動尺的硬件組成示意圖如圖2所示。
圖2 滾動尺硬件組成示意圖
三、軟件設計
滾動尺的基本軟件流程為:首先對系統及外設進行初始化設置,然后通過單片機的編碼器接口對編碼器輸出的數字脈沖進行捕獲并計數,經過處理后得到測量結果,接著單片機實時刷新OLED顯示測量數據,當測量完畢后控制語音模塊將測量結果播報出來。具體軟件流程圖如圖3所示。
圖3 軟件流程圖
四、實驗測試
本次試驗的滾動尺使用的編碼器分辨率為512線,滾動小輪的周長為51.2厘米,對應的測量精度為0.1毫米。根據設計的電路和軟件,測量數據如表1所示,由表1可知該滾動尺的測量誤差基本在1%以內,測量精度較好,能夠滿足一般的應用要求。
表1 滾動尺測量數據
新型滾動尺以STM32單片機為核心,通過增量式編碼器將滾動小輪的圓周運動轉換為數字脈沖輸出,結合滾動小輪的周長便計算出所測量的距離,并通過OLED以及語音播報功能呈現測量結果。新型滾動尺不僅可以測量直線距離,還可以測量曲線和曲面的距離,相對于傳統的尺子具有功能多、精度好、量程大、使用方便等優點,若采用分辨率更高的編碼器便可獲得更好的測量精度,可廣泛運用在工業生產、地圖測繪、物位檢測等領域。
參考文獻:
[1]鄧軍.STM32編碼器在光柵尺測速場合的實際應用[J].科技創新與應用,2013(8).
[2]許理,趙英俊.基于單片機的增量式光電編碼器接口的設計[J].機械與電子,2006(12).
[3]吳志剛.光電編碼器的原理與應用[J].浙江冶金,2001(1).
[4]劉玉瓊.基于WT588D語音提示系統設計[J].企業科技與發展,2010(22).
[5]李琳,王茂海.基于AT89C2051單片機和WT588D-U語音模塊的語音報價系統設計[J].科技信息,2011(15).
[6]田鑫,劉金濤,張凱臨.基于MSP430和OLED通用顯示系統設計[J].微計算機信息,2010(23).
[7]吳敏波,張光宇,張鈺.基于SPI的OLED顯示技術[J].現代顯示,2009(8).
基金項目:本文系廣西大學生創新創業訓練計劃項目(201410
594071)。