電子車速里程表的單片機(jī)實現(xiàn)方案
摘要:介紹了一個基于單片機(jī)的電子式轉(zhuǎn)速里程表實現(xiàn)方案,討論了里程計數(shù)的原理和轉(zhuǎn)速指示原理,給出了用單片機(jī)AT89C2051和LM1819驅(qū)動器設(shè)計的汽車轉(zhuǎn)速里程表的具體電路原理圖。 關(guān)鍵詞:轉(zhuǎn)速里程表;空氣軸表芯;LM1819;驅(qū)動器;單片計算機(jī) 1 概述 傳統(tǒng)的汽車轉(zhuǎn)速里程表的功能有兩個,一是用指針指示汽車行駛的瞬時車速,二是用機(jī)械計數(shù)器記錄汽車行駛的累計里程?,F(xiàn)代汽車正向高速化方向發(fā)展,隨著車速的提高,用軟軸驅(qū)動的傳統(tǒng)車速里程表受到前所未有的挑戰(zhàn),這是因為軟軸在高速旋轉(zhuǎn)時,由于受鋼絲交變應(yīng)力極限的限制而容易斷裂,同時,軟軸布置過長會出現(xiàn)形變過大或運(yùn)動遲滯等現(xiàn)象,而且,對于不同的車型,轉(zhuǎn)速里程表的安裝位置也會受到軟軸長度及彎曲度的限制。凡此種種,使得基于非接觸式轉(zhuǎn)速傳感器的電子式轉(zhuǎn)速里程表得以迅速發(fā)展。 車速里程表的速比表示的是:車速里程表轉(zhuǎn)軸(軟軸)在汽車行駛一公里時所轉(zhuǎn)過的轉(zhuǎn)數(shù)。 基于單片機(jī)的車速里程表采用霍爾型非接觸式轉(zhuǎn)速傳感器。這種車速里程表轉(zhuǎn)軸每轉(zhuǎn)一圈,霍爾傳感器將感應(yīng)發(fā)出8個脈沖?,F(xiàn)在以速比為1:624的車型為例? 汽車行駛一公里? 則霍爾傳感器發(fā)出的脈沖數(shù)共為8×624=4992個,或者說,每個脈沖代表了1/4992公里的里程。將這些脈沖信號當(dāng)作外部中斷源輸入給單片機(jī),使每個脈沖產(chǎn)生一個中斷,并通過中斷服務(wù)程序?qū)γ總€脈沖進(jìn)行計數(shù),這樣,當(dāng)計滿4992時,表明汽車行駛了1公里,然后再給累計單元加一,并存入EEPROM單元,最后通過刷新LCD液晶顯示器,即可實現(xiàn)里程計數(shù)功能。但在編程時要注意,MCS-51系列單片機(jī)的外部中斷有兩種觸發(fā)方式,即電平觸發(fā)和邊沿觸發(fā),本設(shè)計選用邊沿觸發(fā)方式,即采用負(fù)跳變引起中斷。 車速指示可采用雙線圈汽車轉(zhuǎn)速表頭,它由空氣軸表芯和驅(qū)動電路組成,空氣軸表芯通常由三部分組成:磁鐵、與轉(zhuǎn)軸相連的指針和兩個互成九十度的線圈。轉(zhuǎn)軸是表芯唯一的可動部件,磁鐵的轉(zhuǎn)角總是趨向于兩個線圈的磁場強(qiáng)度矢量的合成方向,磁場強(qiáng)度正比于加在線圈上的電壓,因此,通過改變電壓的極性和幅度,可在理論上使轉(zhuǎn)軸組件在0~360度范圍內(nèi)轉(zhuǎn)動。顯然,只要能按一定的規(guī)律驅(qū)動兩個線圈,就可以使指針偏轉(zhuǎn)位置與輸入量成線性關(guān)系,即滿足下列公式: θ=KVin 其中θ為指針偏轉(zhuǎn)角,單位為度; K為轉(zhuǎn)角常數(shù),單位為度/V; Vin是輸入電壓,單位為V。 每個線圈的磁場強(qiáng)度矢量之和必須跟隨偏轉(zhuǎn)角θ。考慮到轉(zhuǎn)軸組件總是指向Hsine和Hcosine這兩個正交矢量之和的方向?則其方向可由下式求得? θ=arctan Hsine/Hcosine 并由此可以得出: θ=arctan sinθ/cosθ 由上述公式可見?當(dāng)Hsine按θ的正弦函數(shù)變化,而Hcosine按θ的余弦函數(shù)變化時?所得到的總磁場強(qiáng)度的方向與θ角的方向相同,由于轉(zhuǎn)軸組件與磁場強(qiáng)度矢量和的方向相同,因此,指針將始終指向θ角的方向。 圖1所示是LM1819驅(qū)動器的內(nèi)部組成原理框圖,它由電荷泵、整形器、函數(shù)發(fā)生器等組成?輸入的轉(zhuǎn)速信號通過內(nèi)部的三極管緩沖后,輸入到電荷泵即可進(jìn)行F/V頻率電壓轉(zhuǎn)換,兩個輸出端按輸入量的正弦和余弦函數(shù)變化,2腳和12腳的最小驅(qū)動能力為±20mA(±4V),線圈的公共端接到1腳可為內(nèi)部函數(shù)發(fā)生器提供反饋信號, 同時為5.1V齊納二極管提供參考電壓。在該電路中,K=54°/V,輸入Vin 實際上是4腳和8腳的電位差,8腳既是諾頓放大器的輸出, 又是函數(shù)發(fā)生器的輸入,一般4腳的電壓是2.1V,所以有: θ=K(V8-Vref)=54(V8-2.1) 由于V8是在2.1V~7.1V的范圍內(nèi)變化的,故LM1819可以驅(qū)動十字表頭以使其在0°~270°范圍內(nèi)轉(zhuǎn)動。 圖2所示是一種汽車轉(zhuǎn)速里程表的電路原理圖。這是一個典型的單片機(jī)最小應(yīng)用系統(tǒng)。單片機(jī)AT89C2051以其低價、低功耗、可靠性高和易于編程等特點著稱,X25045則是MCS-51系列單片機(jī)電路的一個輔助芯片,主要擔(dān)當(dāng)復(fù)位、電壓檢測、看門狗和EEPROM功能,該芯片的采用大大提高了系統(tǒng)的可靠性,減少了外圍芯片數(shù),可實現(xiàn)里程累計的掉電存儲。LCM1010為十位八段式帶背光液晶顯示模塊,采用三線串行接口,它具有功耗低和編程方便的特點。該顯示共分兩行顯示,第一行6位顯示累計里程,第二行4位(1位小數(shù))用于顯示小計里程。圖中K1為小計里程清零鍵,R4用于調(diào)節(jié)液晶顯示器的視角對比度。芯片X25045是Xicor公司推出的帶有可編程μP 監(jiān)控器的CMOS串行EEPROM,帶有4096位,按512×8來組織。它具有4字節(jié)頁寫方式和10萬次使用周期,數(shù)據(jù)可保存100年。為了保證累計里程單元的個位或小計單元的小數(shù)位可靠刷新,當(dāng)這些單元接近極限使用周期時,可采取換頁的辦法來使這些數(shù)據(jù)移動到新單元以繼續(xù)計數(shù)。 本設(shè)計以單片機(jī)AT89C2051來實現(xiàn)里程累計、小計、清零及存儲,并以LM1819集成電路驅(qū)動十字線圈表頭,從而實現(xiàn)了車速的指示。該設(shè)計方案成本低廉、指針穩(wěn)定性好、響應(yīng)速度快、抗震性強(qiáng)、可靠性和性價比都很高。經(jīng)實際使用證明,該里程表完全可以取代傳統(tǒng)的以軟軸驅(qū)動的車速里程表。當(dāng)然,這只是一種實現(xiàn)方案,也可以由單片機(jī)通過軟件來驅(qū)動十字線圈表頭,即由單片機(jī)分別控制表頭的正弦線圈和余弦線圈而省去LM1819集成電路。對此,此處不再贅述。 |