基于單片機控制的數(shù)字移相器設計
0概述
移相電路常用于同步檢測器的數(shù)據(jù)處理中。目前資料上有很多移相電路,其實現(xiàn)方法多種多樣,大致可分為模擬式和數(shù)字式移相器兩類。模擬式移相器的電路較為復雜、線性差、測試精度低;數(shù)字式移相器大多以標準邏輯器件按傳統(tǒng)數(shù)字系統(tǒng)設計方法設計而成,其缺點為功耗大、可靠性低。本文介紹的基于單片機控制的數(shù)字移相器,采用環(huán)形隊列實現(xiàn)信號波形的任意相位移相,并且保持波形的幅度、頻率不變。其測試精度高,失真度小。系統(tǒng)原理方框圖如圖1所示。
1系統(tǒng)硬件電路設計
本系統(tǒng)的硬件電路主要由輸入信號倍頻電路、AT89C51單片機、A/D轉(zhuǎn)換器、D/A轉(zhuǎn)換器、6116存儲器及鍵盤/顯示等電路構(gòu)成。?
1.1輸入信號倍頻電路
倍頻電路由鎖相環(huán)CC4046及雙BCD同步加法計數(shù)器4518組成。4518作分頻器用,實現(xiàn)720分頻,其中,U3:A實現(xiàn)9分頻,U2實現(xiàn)80分頻。倍頻電路中鎖相環(huán)的輸入信號是經(jīng)過電壓比較電路把工頻信號變換成的方波信號。當分頻器的輸出信號(U2:A的6腳輸出信號)與鎖相環(huán)的輸入信號fi相一致時,鎖相環(huán)芯片U1鎖存輸出的信號頻率為fo。假如輸入信號頻率fi=50Hz,則輸出頻率fo=36kHz。具體電路如圖2所示。
該倍頻信號的波形如圖3所示,主要有兩方面的用途,一是控制A/D轉(zhuǎn)換的采樣點數(shù)及采樣的時間間隔(即一個周期采樣720個點)。二是控制D/A輸出數(shù)據(jù)的時間間隔,從而達到輸入信號頻率與輸出信號頻率一致。?
1.2單片機系統(tǒng)主電路
本電路主要由單片機AT89C51、鍵盤/顯示電路、模數(shù)轉(zhuǎn)換器AD574A、數(shù)模轉(zhuǎn)換器DAC0832、6116存儲器等構(gòu)成,具體電路如圖5所示(鍵盤/顯示電路和6116存儲器等圖中未畫出)。鍵盤主要用來實現(xiàn)移相的具體數(shù)值(度)的設置,功能鍵包括設置鍵、數(shù)字鍵(“↑”、“→”)、復位鍵、運行鍵等五個鍵,最多可置720個0(720×0.5度=360度),因此可達到0~360度的相移。根據(jù)任意設定的相位數(shù)值,把相位及數(shù)據(jù)存儲到隊列(如圖4所示)中的相應位置置0。顯示用四位數(shù)碼管實現(xiàn),最低位為小數(shù)位,其余3位為整數(shù)位,可顯示范圍為0.5~360度。
A/D實現(xiàn)對波形數(shù)據(jù)(幅度)的采集、轉(zhuǎn)換。A/D每采集一個點,就存入存儲器的隊列中。同樣D/A借助單片機先從隊列中讀入一個數(shù)據(jù),再由倍頻信號fo來控制D/A輸出數(shù)據(jù)的時間間隔,D/A的第一周期輸出從“輸出1”口輸出,以后則從“輸出2”口輸出,對采集的720個數(shù)據(jù)循環(huán)輸出,因此達到了移相的目的。
另外,因D/AC0832模/數(shù)芯片輸出的波形存在毛刺,需要進行濾波,通過實驗,在其輸出端加一個1000p的電容就可以使這些毛剌基本消失,得到較平滑的波形。?
2系統(tǒng)軟件設計
整個系統(tǒng)軟件的執(zhí)行過程為:首先,通過鍵盤設置移相的數(shù)值,同時在顯示器上顯示出移相的度數(shù);其次,啟動A/D把轉(zhuǎn)換結(jié)果存入隊列,在A/D的轉(zhuǎn)換過程中,D/A從隊列中讀出相應數(shù)據(jù)后D/A輸出;第三,D/A不斷循環(huán)輸出,實現(xiàn)連續(xù)的移相后的工頻信號。系統(tǒng)軟件流程框圖如圖6所示。
3結(jié)束語
該數(shù)字移相器可對任意波形信號(如正弦波、三角?波、鋸齒波、方波等波形)進行任意相位的移相,具有測量精度高、跟蹤速度快的特點,根據(jù)設定要求移相后所獲得的輸出波形與輸入信號波形的幅度、頻率逼近,即輸出移相后波形的失真度較小。?
參考文獻
1何立民著.MCS-51系列單片機應用系統(tǒng)設計.北京:北京航空航天大學出版社,1990
2萬心平,張厥盛,鄭繼禹著.鎖相技術(shù).西安:西安電子科技大學出版社,1989