1 前 言
工業(yè)生產(chǎn)中,常使用示波器對(duì)各類設(shè)備的傳感器信號(hào)加以測(cè)量和觀察,在生產(chǎn)線上也會(huì)同樣使用示波器來檢驗(yàn)產(chǎn)品性能。由于示波器價(jià)格不扉,此類作法已經(jīng)不適應(yīng)大規(guī)模生產(chǎn)產(chǎn)品。產(chǎn)品的批量生產(chǎn)意味著購買更多的示波器,從而使生產(chǎn)成本增加;其次由于示波器操作復(fù)雜,普通操作員工對(duì)示波器的操作熟練程度也會(huì)嚴(yán)重影響生產(chǎn)效率;最后在環(huán)境欠佳的生產(chǎn)現(xiàn)場(chǎng),塵土、濕氣、溫度等外界環(huán)境影響將會(huì)縮短示波器的壽命。
誠然,開發(fā)完全取代示波器的硬件設(shè)備有一定難度,但示波器在生產(chǎn)檢驗(yàn)中的用途一般是單一的、確定的,如檢測(cè)信號(hào)輸入的時(shí)間差值、檢測(cè)信號(hào)的觸發(fā)邊沿時(shí)間、檢測(cè)信號(hào)的頻率、檢測(cè)信號(hào)的峰值等等功能,所以我們可以只針對(duì)某一特定功能,運(yùn)用當(dāng)前的單片機(jī)技術(shù)開發(fā)一款信號(hào)檢測(cè)系統(tǒng)是可行的。本文將以檢測(cè)信號(hào)輸入時(shí)間差值為目的,介紹系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)過程。
2 系統(tǒng)組成和應(yīng)用原理
2.1 系統(tǒng)設(shè)計(jì)目的
如上示波器界面截圖,檢測(cè)凸輪多齒上升沿信號(hào)與電流起始信號(hào)的時(shí)間差值,差值可選用1信號(hào)為基準(zhǔn)求出,并將其換算為角度,即為圖上兩虛線之間的方波信號(hào)個(gè)數(shù)(360轉(zhuǎn)速信號(hào),1方波恰為1度)。
2.2 單片機(jī)信號(hào)測(cè)量原理
以單片機(jī)為核心,充分利用自身計(jì)數(shù)器/定時(shí)器的計(jì)數(shù)功能。大致測(cè)量方法分以下兩個(gè)方法:
高頻測(cè)量(<500 KHZ):
采用測(cè)頻法測(cè)量高頻,在確定的閾值時(shí)間Tw內(nèi),記錄被測(cè)信號(hào)的變化周期數(shù)(或脈沖數(shù))Nx,則被測(cè)信號(hào)的頻率:fx=Nx/Tw。(對(duì)T0或T1的外部脈沖進(jìn)行計(jì)數(shù),當(dāng)T0或T1引腳上發(fā)生負(fù)跳變時(shí),計(jì)數(shù)器加1。由于識(shí)別引腳的負(fù)跳變需2個(gè)機(jī)器周期,即24個(gè)時(shí)鐘振蕩周期,T0/T1的最高頻率為1/24 fosc,當(dāng)晶體振蕩器頻率為12 MHz時(shí),其最高計(jì)數(shù)頻率為500 kHz)。測(cè)頻法原理如圖所示:
低頻測(cè)量:
采用測(cè)周法測(cè)量低頻,測(cè)周期法需用標(biāo)準(zhǔn)信號(hào)的頻率fs,待測(cè)信號(hào)的一個(gè)周期Tx內(nèi),記錄標(biāo)準(zhǔn)頻率的周期數(shù)為Ns,則被測(cè)信號(hào)的頻率為:fx=fs/Ns。由于被測(cè)頻率較低,故可采用8051測(cè)量,首先要將被測(cè)信號(hào)轉(zhuǎn)換成門控信號(hào),其原理如圖所示:
2.3 硬件開發(fā)
本次設(shè)計(jì)選用C8051F310單片機(jī),該單片機(jī)的可編程計(jì)數(shù)器(PCA0)由一個(gè)專用的16位計(jì)數(shù)器/定時(shí)器和5個(gè)16位捕捉/比較模塊組成。其計(jì)算器/定時(shí)器由可編程的時(shí)基信號(hào)驅(qū)動(dòng),時(shí)基信號(hào)可以是系統(tǒng)時(shí)鐘的1/2,1/4,1/8,所以時(shí)基信號(hào)的精確更有利于擴(kuò)展信號(hào)測(cè)量的頻率范圍,此外,信號(hào)捕捉/比較模塊也具有邊沿觸發(fā)捕捉工作方式。
單片機(jī)外圍電路:
P0.6 360 轉(zhuǎn)速信號(hào)中斷
P0.7 電流信號(hào)中斷
P0.0,P0.1 外接EEPROM(SPI數(shù)據(jù)傳輸)
P2.2-P2.7 LCD液晶顯示
P3.1,P3.2 鍵盤(未使用)
2.4 軟件開發(fā)
系統(tǒng)軟件設(shè)計(jì)采用Keil C51編寫。根據(jù)系統(tǒng)所測(cè)目的,可運(yùn)用PCA計(jì)數(shù)器溢出中斷、PAC邊沿捕捉模式中斷,以及INT0、INT1中斷對(duì)波形進(jìn)行計(jì)數(shù),未運(yùn)用到信號(hào)測(cè)頻,測(cè)周原理便可以達(dá)到系統(tǒng)目的。
系統(tǒng)軟件設(shè)計(jì)流程為:?jiǎn)纹瑱C(jī)初始化;LCD初始化;計(jì)數(shù)器清零;轉(zhuǎn)速信號(hào)中斷;計(jì)數(shù)器+1;電流信號(hào)中斷;將此時(shí)計(jì)數(shù)值賦給電流時(shí)間量Y,凸輪多齒信號(hào)邊沿捕捉;將此時(shí)計(jì)數(shù)值賦給凸輪信號(hào)多齒輪發(fā)生時(shí)間量X,完成一次測(cè)試量,目標(biāo)值=Y(jié)-X;調(diào)用顯示函數(shù)顯示,發(fā)送結(jié)果至上位機(jī)。如下圖系統(tǒng)軟件設(shè)計(jì)流程:
3 系統(tǒng)運(yùn)用結(jié)論
本方案系單片機(jī)的簡(jiǎn)單運(yùn)用,可運(yùn)用于制造業(yè)特定信號(hào)測(cè)量,幫助企業(yè)降低購買昂貴儀器的成本。經(jīng)過實(shí)際使用,本系統(tǒng)運(yùn)行穩(wěn)定,所測(cè)結(jié)果與使用示波器所測(cè)誤差在1度以內(nèi)。操作人員可通過LCD顯示直接觀察檢測(cè)結(jié)果,也可通過上位機(jī)軟件對(duì)其直接觀察,并通過上位機(jī)將每次所測(cè)數(shù)據(jù)加以保存,上位機(jī)采用C#編寫。該軟件顯示界面如下圖: