簡易數(shù)字相位差計(jì)
一、方案設(shè)計(jì)
1.1方案概述
數(shù)字相位差計(jì)包括外部電路與ARM開發(fā)板兩部分,外部電路主要利用電壓比較器,將正弦波輸入信號轉(zhuǎn)化為方波;ARM開發(fā)板主要用到的模塊為定時器模塊、計(jì)數(shù)器模塊、中斷系統(tǒng)模塊、CPU處理模塊和數(shù)碼管顯示模塊,系統(tǒng)框圖如圖1。

圖1 系統(tǒng)框圖
1.2技術(shù)指標(biāo)
相位差測量范圍:0 ~ 180°
數(shù)碼顯示:4位數(shù)碼顯示
相位差分辨率:0.1°
識別信號范圍:電壓3V,頻率
工作方式:連續(xù)
二、工作原理
2.1系統(tǒng)概述
兩個同頻被測正弦信號分別經(jīng)過相同型號的電壓比較器與1.5V的固定電壓比較后得到兩個有相位差的方波,然后將兩個方波輸入到ARM開發(fā)板上,由中斷系統(tǒng)實(shí)時監(jiān)控電平變換,從而控制計(jì)數(shù)器對定時器晶振進(jìn)行計(jì)數(shù),經(jīng)過算法運(yùn)算后,在數(shù)碼管上顯示出相位差的數(shù)值。
2.2脈沖計(jì)數(shù)法相位差測量原理[1]













圖2 相位差計(jì)原理圖
設(shè)被測兩信號的時間間隔為
(1)
式中,
—在
時間內(nèi)晶振計(jì)數(shù)脈沖的個數(shù);
—晶振信號周期。
數(shù)字式相位計(jì)波形圖如圖2所示,由圖可知
(2)
式中,
—兩被測信號的相位差;
—被測信號的周期。
將式(1)帶入式(2)得
(3)
式中,
—被測信號頻率;
—晶振信號頻率。
若讓計(jì)數(shù)器在1s內(nèi)連續(xù)計(jì)數(shù),即1s內(nèi)有
個門控信號,則其累計(jì)計(jì)數(shù)為:
(4)
式中,
—1s中晶振累計(jì)脈沖數(shù)量。
將式(4)代入式(3)得
(5)
若取晶振頻率
,則
(6)
三、器件選擇
3.1 LM311P
LM311P電壓比較器是單比較器可以將模擬信號轉(zhuǎn)換成二值信號,即只有高電平和低電平兩種狀態(tài)的信號。該比較器有兩個輸入端和一個輸出端。兩個輸入端一個稱為同相輸入端,用“+”表示,另一個稱為反相輸入端,用“-”表示。用作比較兩個電壓時,任意一個輸入端加一個固定電壓做參考電壓,另一端加一個待比較的信號電壓。在二者幅度相等時,輸出電壓將產(chǎn)生躍變,即:
當(dāng)“+”端電壓高于“-”端時,輸出管截止,相當(dāng)于輸出端開路。
當(dāng)“-”端電壓高于“+”端時,輸出管飽和,相當(dāng)于輸出端接低電位。
3.4 ARM開發(fā)板
ARM作為嵌入式系統(tǒng)的處理器,具有低電壓,低功耗和高集成度等特點(diǎn),并具有開放性和可擴(kuò)充性,其能在電源電壓為2.7V-3.6V的范圍正常工作,其對外電路的供電電源為4V。開發(fā)板包括定時器(含晶振)、計(jì)數(shù)器、中斷系統(tǒng)、CPU處理器、數(shù)碼管顯示器、A/D和D\A轉(zhuǎn)換器等模塊,該開發(fā)板可以應(yīng)用到本設(shè)計(jì)中。
四、系統(tǒng)設(shè)計(jì)
4.1 外部電路


圖3 外部電路圖
本項(xiàng)目外部電路由兩個如圖3所示的電路組成,其中
為輸入信號(正弦波),
為經(jīng)過電壓比較器處理過后的輸出信號(方波)。
4.2 ARM開發(fā)板
4.2.1工作過程簡述
當(dāng)ARM開發(fā)板接收到兩個輸入信號時,定時器的晶振啟動,同時中斷系統(tǒng)實(shí)時監(jiān)控兩個輸入信號(其作用相當(dāng)于“異或門”),控制計(jì)數(shù)器讀出兩信號在(0,1)或(1,0)時晶振產(chǎn)生的脈沖次數(shù),并通過CPU進(jìn)行算法運(yùn)算,實(shí)時輸出到數(shù)碼管顯示器上(框圖如圖1 ARM開發(fā)板模塊)。
4.2.2模塊介紹
定時器:定時器的內(nèi)部晶振頻率為...,可以通過分頻的方法設(shè)置所需頻率的晶振。本設(shè)計(jì)采用的是163.28Kz頻率的晶振,當(dāng)檢測到輸入信號時晶振便開始產(chǎn)生脈沖,計(jì)數(shù)器(計(jì)數(shù)定時器)溢出周期為0.4s。由此估測所能測得最低頻率為3Hz。(輸入波形周期不能超過定時器溢出周期)。
中斷系統(tǒng):本設(shè)計(jì)設(shè)置兩個中斷,采用上升沿中斷,分別捕獲輸入IO口的兩路波形的上升沿。在每個上升沿中斷處實(shí)現(xiàn):
①定時器計(jì)數(shù)讀出;
②計(jì)數(shù)器清零;
③對累計(jì)的脈沖數(shù)進(jìn)行均值算法。
計(jì)數(shù)器:由中斷系統(tǒng)控制,進(jìn)行清零和計(jì)數(shù)這兩個任務(wù)。鑒于計(jì)數(shù)器在于累計(jì)計(jì)數(shù)時有上限,故程序設(shè)置計(jì)數(shù)器每次累計(jì)到程序設(shè)定值時自動清零。
CPU處理器:用于接收計(jì)數(shù)器輸出的數(shù)字,根據(jù)脈沖計(jì)數(shù)法相位差測量原理進(jìn)行算法運(yùn)算(包括平均值運(yùn)算),并將結(jié)果輸出到數(shù)碼管。
數(shù)碼管顯示:本項(xiàng)目數(shù)碼管采用八段數(shù)碼管作為輸出顯示器件。顯示方式為動態(tài)實(shí)時顯示,并且把小數(shù)點(diǎn)一直顯示到最后一位,此時,LED 數(shù)碼管的第一、二、三位是用來對相位差進(jìn)行顯示的,最后一位是用來進(jìn)行小數(shù)顯示的。
五、系統(tǒng)測試
5.1測試儀器
信號發(fā)生器、數(shù)字式相位差計(jì)。
5.2測試方法
利用信號發(fā)生器產(chǎn)生兩個同頻信號,不斷改變兩個信號的相位差,并分別記錄下信號發(fā)生器的相位差設(shè)設(shè)置數(shù)據(jù)與數(shù)字相位差即所測量出的數(shù)據(jù),各7組。
5.3測試結(jié)果
5.3.1實(shí)驗(yàn)數(shù)據(jù)
頻率: Hz 幅值:3V
頻率: Hz 幅值:3V
頻率: Hz 幅值:3V
頻率: Hz 幅值:3V
5.3.2數(shù)據(jù)處理
算數(shù)平均值:
標(biāo)準(zhǔn)差估計(jì)值:
算數(shù)平均值的標(biāo)準(zhǔn)誤差估計(jì)值:
算數(shù)平均值的置信限:
當(dāng)P=,
時,查表得

測量結(jié)果:
5.3.3誤差分析
系統(tǒng)誤差:
(1)LM311P是高增益,寬頻帶器件,如果輸出端到輸入端有寄生電容而產(chǎn)生耦合,當(dāng)比較器改變狀態(tài)時,輸出信號很容易產(chǎn)生振蕩。這種現(xiàn)象出現(xiàn)在當(dāng)比較器改變狀態(tài)時,輸出電壓過渡的間隙,從而使得生成的方波產(chǎn)生誤差。
改進(jìn)方法:采用遲滯比較器代替單限比較器,即在單限比較器電路中引入正反饋,從而加快比較器的響應(yīng)速度,免除由于電路寄生耦合而產(chǎn)生的自激振蕩。但是反饋電阻阻值的選擇也尤為重要,反饋電阻過大導(dǎo)致比較器的比較精度降低,反饋電阻過小導(dǎo)致比較器高低電平的變化速率降低,經(jīng)過多次模擬仿真,我們選擇43
作為我們電路中的反饋電阻。
(2)本設(shè)計(jì)是將輸入信號與1.5V的電壓比較,大于1.5V為高電平,小于1.5V的為低電平。如圖4所示虛線為信號通過比較器后的理想輸出波形,但實(shí)際情況為圖4的實(shí)線,由于導(dǎo)線和電阻的影響導(dǎo)致固定電壓大于(或小于)1.5V,從而使得輸出方波的高電平脈寬偏。ɑ蚱螅瑥亩a(chǎn)生誤差。
圖4實(shí)際輸出方波比較圖
(3)計(jì)數(shù)器在對晶振脈沖進(jìn)行計(jì)數(shù)時,脈沖頻率過高時,計(jì)數(shù)器對一個相位差脈寬脈沖過多,計(jì)數(shù)器計(jì)數(shù)準(zhǔn)確率會降低,會產(chǎn)生誤差。
脈沖頻率過低時,計(jì)數(shù)器對一個相位差脈寬內(nèi)的晶振脈沖計(jì)數(shù)更準(zhǔn)確,但是脈沖數(shù)量過少不能完整表示整個相位差的脈寬,會產(chǎn)生誤差。
圖5 晶振脈沖示意圖
改進(jìn)方法:本設(shè)計(jì)將晶振的頻率設(shè)置為163.28Kz,從而減小了由于頻率過高或過低而產(chǎn)生的誤差。
隨機(jī)誤差:
5.3.3結(jié)果分析
5.4測試出現(xiàn)問題及解決方法
- 我們將輸入信號頻率分別設(shè)置為1kHz、100Hz、50Hz和10Hz四種情況,分別對其相位差從0°~180°,每隔30°進(jìn)行測試,并記錄下數(shù)據(jù)。由實(shí)驗(yàn)數(shù)據(jù)可以發(fā)現(xiàn)該設(shè)計(jì)的精度不高,每次測量均會偏大2°左右,產(chǎn)生誤差。
解決方法:這種問題是由于硬件性能不夠精準(zhǔn)而產(chǎn)生的問題,我們對所測得的數(shù)組數(shù)據(jù)進(jìn)行處理,即求測量數(shù)據(jù)的偏差均值,對軟件算法進(jìn)行修改來補(bǔ)償硬件所造成的誤差。
- 當(dāng)輸入信號頻率較低為10Hz時,數(shù)碼管顯示相位差數(shù)據(jù)會出現(xiàn)抖動的情況,該問題屬于硬件問題,難以解決。
附錄:
主程序