<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于PIC單片機的測速系統設計

基于PIC單片機的測速系統設計

作者: 時(shí)間:2012-01-07 來(lái)源:網(wǎng)絡(luò ) 收藏

0 引言

在現代工業(yè)測量系統中, 位移量和的測量是關(guān)鍵環(huán)節。早期的測量系統, 雖然技術(shù)比較成型, 但一般是采用分立元件構成的, 其結果是測量精度低, 穩定性差, 成本高, 抗干擾能力差等。隨著(zhù)電子技術(shù)和計算機技術(shù)的發(fā)展, 測量系統也逐步向智能化轉化。本文利用PIC實(shí)現了的實(shí)時(shí)測量,通過(guò)推導多倍周期法的測量誤差算法,得出了一種有效的確定多倍周期法中周期倍數 N的方法,使之在高、低速測量時(shí)均有很小的誤差。本設計硬件結構設計簡(jiǎn)單,測量速度快,精度高,運行可靠,可以滿(mǎn)足人們愈來(lái)愈高的對速度準確性和實(shí)時(shí)性的要求。

1 系統主要性能特點(diǎn)

(1) 硬件結構設計簡(jiǎn)單,測量速度快,精度高,運行可靠。

(2) 采用帶有EEPROM的PIC,設計了簡(jiǎn)單可靠的掉電保護功能。

(3) 兩種測量模式:測和測速度(測速度時(shí)要預先通過(guò)按鍵輸入轉盤(pán)的周長(cháng))。

(4) 有上下限報警功能,適用于對速度或轉速有限制的場(chǎng)合。

(5) 有3個(gè)獨立的按鍵,可方便的設置上下限報警值、測量模式以及轉盤(pán)周長(cháng)。

2 系統硬件設計


圖(1) 系統體系結構

PIC16F874A是由美國Microchip公司生產(chǎn)的8位 Flash型,具有低功能、低工作電壓、高性能、高速度、全靜態(tài)、較強的引腳直接驅動(dòng)能力等特點(diǎn)。由于采用哈佛(Harvard)雙總線(xiàn)和兩級指令流水線(xiàn)結構,使指令執行和取指操作同步進(jìn)行,因而可達到很高的執行速度。該系列單片機只有35條單字節指令,除跳轉指令是2周期指令外,其它指令都是單周期指令。這與其它的8位單片機相比節省了1/2的程序空間,并且具有4∶1的速度優(yōu)勢。PIC16F874A有4K×14的程序存儲器,192個(gè)字節的通用寄存器,128字節的EEPROM,33個(gè)I/O口,3個(gè)定時(shí)/計數器及2個(gè)捕捉/比較/PWM模塊,2個(gè)串行口,A/D轉換器具有5路模擬量輸入端, 還有時(shí)鐘、復位、看門(mén)狗定時(shí)器等。由于該單片機具有非常豐富的資源,使硬件電路得到簡(jiǎn)化,從而降低成本。

2.1 信號輸入電路

在此部分電路設計時(shí)采用的器件是夏普公司生產(chǎn)的OPTC光斷續器,事實(shí)上用其他的器件也是可以的,只要能產(chǎn)生讓單片機檢測到的脈沖信號就可以了。該光斷續器將發(fā)光部分的GaAs紅外發(fā)光二極管和感光部分的光電二極管以及信號處理電路(放大器,施密特觸發(fā)器及穩壓電路等)集成在一塊芯片上。這種光斷續器具有下列特點(diǎn):

(1) 體積小,可靠性高;

(2) 外圍電路少;

(3) 能與TTL 、LSTTL、CMOS器件直接連接;

(4) 工作電壓范圍大(Vcc=4.5­—16V)

2.2 掉電保護電路

單片機在工作時(shí),困某種原因造成突然掉電,將會(huì )丟失數據存儲器(RAM)里的數據,沖掉前期工作的所有信息。雖然單片機主電源里有太容量濾波電容器,當掉電時(shí),單片機靠貯存在電容器里的能量,一般能維持工作1Oms左右。為此,要求一旦市電發(fā)生瞬問(wèn)斷電時(shí),必須要在小于 10ms的時(shí)間內將RAM中的數據及時(shí)的轉存到EEPROM數據寄存器中,在下次上電工作時(shí)將數據從EEPROM中調出來(lái)確保單片機系統能正常運行。由于在PIC16F874A單片機中集成了128個(gè)字節的EEPROM這就使得保護電路非常簡(jiǎn)單,具體電路見(jiàn)圖(2)。其工作原理如下: PIC單片機B口的RB4—RB7引腳在設為輸入模式下,當輸入電平由高到低或者由低到高發(fā)生電平變化時(shí),可以使單片機產(chǎn)生中斷,這就是通常所說(shuō)的引腳狀態(tài)變化中斷。當12V電源電壓在正常范圍內時(shí),單片機RB4引腳的電平為高電平;而當12V電源被切斷時(shí),由于二極管D1的單向導通性阻止了濾波電容C3 的回路,使得RB4引腳上的分壓迅速的下降到足以觸發(fā)RB4引腳內部電路發(fā)生電平反轉,引發(fā)中斷,在中斷程序中完成對需要保護的數據燒寫(xiě)到EEPROM 中。在燒寫(xiě)的瞬間,單片機的工作電源依靠電源濾波電容維持即可夠用。


3 檢測方法和誤差處理

通常對于轉速或速度的測量可轉化為對信號頻率(或周期)的檢測,對信號頻率的檢測最常采用的三種方法是:記數法、周期法和多倍周期法。其中記數法適合測高頻,測低頻時(shí)所需時(shí)間較長(cháng)故誤差較大;周期法適合測低頻,測高頻信號時(shí)要求的參考脈沖的頻率高故誤差大;這兩種方法共同的優(yōu)點(diǎn)是實(shí)現比較簡(jiǎn)單。而多倍周期法在一定程度上可以解決高低頻之間的矛盾,但實(shí)現相對困難。因為多倍周期法要預先確定一個(gè)恰當的倍數N,而N的預先確定是比較困難的。如果N確定不當,同樣會(huì )使檢測的時(shí)間增長(cháng)或高頻時(shí)有較大的誤差。在實(shí)際設計中,本文對多倍周期法進(jìn)行了一定的改進(jìn),并提出了一個(gè)簡(jiǎn)單確定N 的算法,即可自動(dòng)地確定恰當的N,又可滿(mǎn)足高低頻信號的檢測要求。

多倍周期法由周期法改進(jìn)而來(lái),周期法在測量信號的周期時(shí),由一個(gè)固定頻率的參考脈沖作為加法計數器的時(shí)鐘信號。在被測信號一個(gè)周期的開(kāi)始啟動(dòng)加法計數器;然后,到這個(gè)周期的結束停止計數,假設這時(shí)候計數器的值為M ,參考脈沖的周期為T(mén)m ,則M、Tm 與被測信號周期T有如下的關(guān)系:

T = M * Tm 轉速 n = 60/T = 60/(M * Tm) (轉/min)

在這一節只討論轉速的檢測方法和誤差處理,因為轉速和速度的檢測方法和誤差處理是相似的。轉速n與速度v的關(guān)系為:v = n * L/ 60 (米/秒) (其中L為轉盤(pán)周長(cháng))

一個(gè)Tm 周期對應的轉速為: n/M = 60/(M * M * Tm)

根據圖(3)所示,最大的誤差有2 * n/M,即最大誤差 = 2 * n/M = 120/(M * M * Tm)。


圖(3)參考脈沖信號與被檢測信號之間的關(guān)系

這樣就得到了為什么周期法適合于測量低頻信號的原因。從誤差關(guān)系式可看出,當n大時(shí),則誤差大;當n小時(shí),則誤差小。,從上式也可得到減少誤差n 的兩個(gè)方法:一個(gè)是增加M;另一個(gè)是增加Tm。對于一臺確定的檢測儀而言,Tm是一個(gè)固定的常數。這樣只有增加M值。但是,對于一個(gè)轉速n,一個(gè)周期內的M也是一個(gè)相對固定的值。因此,要增加M值就只有增加檢測的周期數,即由一個(gè)周期內的測量擴大到多個(gè)周期的測量。如果假設N個(gè)周期內的計數值為Mn,則有:

可見(jiàn)這兩式是相互矛盾的。要減少誤差就必須增加N,而這時(shí)測量時(shí)間就相應增加;要減少測量時(shí)間就要減少N,而這時(shí)的誤差就相應增加。顯然,要預先確定一個(gè)恰當的N值是比較困難的。因為,不同的轉速對應不同的N值。

針對N值難以確定這個(gè)問(wèn)題,本文采取了一種比較合理的確定N值的方法。對于單片機而言,它的計數器的位數是有限的,假設為P位。對一個(gè)轉速n而言,當計數器達到滿(mǎn)刻度時(shí),對應的誤差是最小的。因此,為使檢測的誤差最小,就可以以計數器是否達到滿(mǎn)刻度為標準來(lái)確定一個(gè)轉速n 對應的N值。假設單片機指令執行周期為T(mén)m,計數器溢出時(shí)間為T(mén)n,檢測到的信號次數為N,此時(shí)的轉速為n,就有如下關(guān)系式:

Tn = ( ) Tm 誤差: n = 120/[( )( ) Tm/N]

轉速: n = 60N/ ( ) Tm (轉/min)

從n與N的關(guān)系式中可以看出,這時(shí)侯不同的n有不同的N值。為求計數器達到滿(mǎn)刻度時(shí)的N值,具體做法是:用單片機的計數器1來(lái)計時(shí),再用設計一個(gè)計數器對被測信號進(jìn)行計數。當計數器1溢出以后,取該計數器的值就可計算得到要求的N值。這樣就不要象通常的多倍周期法那樣,預先確定一個(gè)N值。

4 測速算法與系統實(shí)現程序

本文采用PIC單片機實(shí)現測速系統,在PIC中檔系列單片機中,定時(shí)器TMR1是一個(gè)標準配置,它是一個(gè)16位的定時(shí)器/計數器。如圖(2)所示,我們將檢測信號輸入到單片機INT端。利用定時(shí)器1的定時(shí)和INT的中斷功能來(lái)實(shí)現測量。

4.1 主程序流程圖見(jiàn)圖(4)

(1)初始化程序:初始化定時(shí)器1、INT1及各輸入輸出口設置,清顯示緩沖區等。

(2) 按鍵掃描程序:當掃描到有按鍵按下時(shí)做出相應的響應,用來(lái)設置上下限報警值、測量模式以及被測轉盤(pán)周長(cháng)。

(3) 測量值比較與報警:用顯示緩沖區的值與預設在EEPROM中的上下限報警值逐個(gè)比較,當大于上限值或小于下限值時(shí)報警。

(4)顯示程序:將顯示緩沖區的BCD碼經(jīng)查表譯碼后送七段數碼管顯示。

4.2 中斷服務(wù)程序流程圖見(jiàn)圖(5)

(1)中斷類(lèi)型判斷:當TMR1中斷時(shí),計數器1溢出次數W =W+1;當INT中斷時(shí),被檢測信號周期數N =N+1;當RB4電平變化中斷時(shí),保存需要掉電保護的數據到EEPROM中;

(2)轉速n的計算公式為:,其中Tm為指令執行周期;速度的計算公式為:v=n*L/60(米/秒)其中L為轉輪周長(cháng)。

圖(5)中斷程序流程圖


周期;速度的計算公式為:v =n*L/60(米/秒) 其中L為轉輪周長(cháng)。

圖(4)系統主流程圖


5 結語(yǔ)

本文介紹了一種利用單片機為核心器件實(shí)現高精度轉速和速度測量的系統。經(jīng)過(guò)對測速系統的誤差分析,論證了該方法的可行性和實(shí)用性,并成功的利用該系統實(shí)現了對卷?yè)P機速度的測量,測試中各項功能正常,運行可靠,使用方便,效果好,達到了設計的要求。

本文作者創(chuàng )新:采用了以單片機定時(shí)器溢出為準來(lái)確定多倍周期法倍數N的方法,成功的解決了倍數N難以確定的難點(diǎn);設計了測轉速和測速度兩種測量模式,有上下限報警功能使得該系統具有更加廣泛的應用前景。

參考文獻

[1]姜慶明、楊旭、甘永梅、王曉鈺、王兆安。一種基于光電編碼器的高精度測速和測加速度方法[J]。微計算機信息,2004,6:48-50。

[2]張明峰。PIC單片機入門(mén)與實(shí)踐。北京航空航天大學(xué)出版社,2004年第1版。



關(guān)鍵詞: 單片機 轉速 軟件

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>