基于單片機(jī)與光電傳感器的電動(dòng)自行車速度/里程表設(shè)計(jì)
數(shù)據(jù)處理
待測(cè)信號(hào)經(jīng)預(yù)處理電路后加至單片機(jī)的p3.4(t0)引腳可為單片機(jī)測(cè)量信號(hào)頻率提供有效的輸入信號(hào)。單片機(jī)通過檢測(cè)p3.4引腳電平來決定是否啟動(dòng)測(cè)量頻率程序。當(dāng)該引腳為高電平時(shí),系統(tǒng)處于等待狀態(tài),要一直到該引腳出現(xiàn)低電平時(shí)才開始測(cè)頻率。
我們可從硬件的鋁盤上知道兩個(gè)過孔之間在圓周上的距離。而這個(gè)距離m正好為計(jì)算速度和距離起到了基本的數(shù)據(jù)儲(chǔ)備作用。同時(shí)可以從tl0寄存器知道在兩秒內(nèi)單片機(jī)檢測(cè)到的n個(gè)脈沖。而m×n所得到的正是這兩秒內(nèi)鋁盤在圓周上所走得距離s。(此時(shí)假設(shè)在這個(gè)兩秒內(nèi)車子是勻速前進(jìn)的),距離s除以2s的時(shí)間,就可以大概的算出這2s內(nèi)鋁盤的線速度。再根據(jù)鋁盤與自行車的輪子保持著一樣的角速度,得到鋁盤的線速度與輪子線速度的關(guān)系,從而算出自行車在這2s的平均速度。
至于里程的計(jì)算,根據(jù)速度計(jì)算的分析,在得到2s內(nèi)鋁盤在其圓周上走過的距離后。根據(jù)它與自行車輪子的圓周走過的距離有一定比例關(guān)系(通過兩者角速度一樣的算法)可以通過單片機(jī)的算出自行車在這兩秒內(nèi)走過的路程s1。把這個(gè)路程s1與存儲(chǔ)器原來的里程數(shù)相加即可得到目前的總里程數(shù)。
通過單片機(jī)計(jì)算出來的速度和里程的數(shù)據(jù),必須通過bcd碼的轉(zhuǎn)換才能輸出給顯示模塊??偫锍虜?shù)的顯示是設(shè)定出現(xiàn)在電動(dòng)自行車開動(dòng),單片機(jī)開機(jī)經(jīng)過初始化后顯示出來,這樣以來用戶可以清楚的知道自己的車子已經(jīng)運(yùn)行了多少公里了。而速度的顯示則是在計(jì)算出速度里程后立刻顯示出來,體現(xiàn)實(shí)時(shí)性。
結(jié)論
本設(shè)計(jì)以at89c2051為核心,通過光電傳感器來檢測(cè)自行車的運(yùn)轉(zhuǎn)情況進(jìn)而實(shí)現(xiàn)電動(dòng)自行車的速度,里程的計(jì)算及里程的累計(jì),存儲(chǔ),最后用6位的led能直觀的將速度與里程顯示給用戶,并且在速度高于一定的值時(shí)可自動(dòng)向用戶報(bào)警,從而達(dá)到智能速度里程表。
評(píng)論