可否利用DAC來改變交流信號(hào)的幅值?
01緣起
1.為什么討論電子電位器?
為什么要討論使用一個(gè) DAC
[1]來作為一個(gè)電位器呢?這里面主要原因如下:
-
使用電位器可以很方便在信號(hào)源的驅(qū)動(dòng)下形成一個(gè)幅值可以調(diào)節(jié)的交流信號(hào)源。這比起使用通常的可編程直流電源,或者DAC輸出電壓來說,輸出的是幅度可以變的交流信號(hào)源,可以用于很多的自動(dòng)測量環(huán)節(jié)。
-
為什么不直接使用
機(jī)械電位器
[2]來改變信號(hào)源的幅值呢?還是一個(gè)原因,那就是自動(dòng)可編程改變信號(hào)的幅值。 -
現(xiàn)在有數(shù)字電位器,比如
X9C102,X9C103,X9C104
[3],AD5272
等,為什么不使用它們來實(shí)現(xiàn)對交流信號(hào)源
進(jìn)行幅值改變呢?這里面一個(gè)主要原因就是器件的頻帶寬度[4](https://zhuoqing.blog.csdn.net/article/details/104134132 "X9C102,X9C103,X9C104
"),AD5272
等,為什么不使用它們來實(shí)現(xiàn)對交流信號(hào)源
進(jìn)行幅值改變呢?這里面一個(gè)主要原因就是器件的頻帶寬度[^4068]的問題。相比于機(jī)械電位器,這些電子電位器(變阻器)都具有相對較窄的工作頻帶寬度,對于高頻信號(hào)不適合。
▲ 重要的人,不能夠忘記的人,不想忘記的人,你是誰?
2.為什么使用DAC做電位器?
-
DAC用作電位器改變交流信號(hào)原理; -
使用DAC來分壓交流信號(hào)的優(yōu)點(diǎn)是什么? -
是否能夠克服前面數(shù)字電位器的頻帶過窄的問題?
寫這些話的時(shí)候,我還不知道具體答案,下面就通過實(shí)驗(yàn)來驗(yàn)證一下吧。
02實(shí)驗(yàn)電路
最近,剛剛購買了幾片16bit的DAC芯片 DAC8830IDR
[5](價(jià)格6.6),具有SPI接口,基于該DAC來驗(yàn)證一下前面的思路的可行性。
1.實(shí)驗(yàn)電路設(shè)計(jì)
由于DAC8830使用SPI接口來設(shè)置輸出電壓,使用STC8G1K(SOP16)作為控制器來完成對它的信號(hào)控制。
1)SCH [6]
▲ 原理圖設(shè)計(jì)
2)PCB
對于實(shí)驗(yàn)原理圖進(jìn)行LAYOUT,盡可以滿足單面PCB板制作的工藝要求。快速制版之后得到對應(yīng)的實(shí)驗(yàn)電路板。
▲ 實(shí)驗(yàn)電路板的PCB設(shè)計(jì)
2.MCU軟件編程[7]
1) DA8830訪問子程序
使用STC8G的SPI端口對DA8830進(jìn)行訪問。根據(jù)DA8830的SPI讀寫時(shí)序,相應(yīng)的DAC8830寫入轉(zhuǎn)換(16bit)數(shù)據(jù)的子程序?yàn)椋?/p>
void DAC8830Set(unsigned int nDAC) {
OFF(DAC8830_CS);
SPISendChar((unsigned char)(nDAC >> 8));
SPISendChar((unsigned char)nDAC);
ON(DAC8830_CS);
}
▲ DA8830的SPI讀寫時(shí)序
對應(yīng)的DA8830的CS,SPK的波形為:
▲ 示波器觀察到DA8830的CS,CLK的波形
從上面波形可以看出,DAC8830Set()函數(shù)的執(zhí)行時(shí)間在STC8G1K17(35MHz)執(zhí)行中的時(shí)間大約為3 。
在靜態(tài)下,通過兩個(gè)
電阻組成的參考電壓分壓電路,生成大約2.5V的參考電壓。實(shí)際測量電壓為:
。
根據(jù)DA8830數(shù)據(jù)手冊,DAC8830的參考電壓輸入阻抗大約為:
。因此,理論計(jì)算所得到的參考電壓為:
這個(gè)數(shù)值比起前面實(shí)際測量得到的 要大,這說明對應(yīng)的DA8830的參考電壓管腳的阻抗比起 還要小。
為了便于測量數(shù)據(jù)波形,調(diào)用DA8830Set()函數(shù)中的輸入?yún)?shù)為 。那么輸出電壓計(jì)算值應(yīng)該為:
實(shí)際測量DA8830的輸出電壓為: 。
2) 輸出電壓波形
▲ 每1ms寫入DAC8830遞增數(shù)據(jù)的CS,DI數(shù)據(jù)波形
寫入遞增的數(shù)據(jù),輸出波形。
for(;;) {
WaitTime(1);
//----------------------------------------------------------------------
DAC8830Set(nShowCount);
nShowCount += 0x200;
//----------------------------------------------------------------------
}
此時(shí)Dout輸出遞增的鋸齒波形。
▲ 輸出遞增的鋸齒波形
03參考電壓與輸出信號(hào)
下面經(jīng)過幾組實(shí)驗(yàn),來驗(yàn)證DAC的參考電壓對于輸出信號(hào)的影響。
1.參考電壓的有效范圍
在DAC8830的數(shù)據(jù)手冊中,對于參考電壓的輸入范圍給定的是1.25V ~ Vpp。下面通過一組實(shí)驗(yàn)來測試實(shí)際的有效輸入?yún)⒖茧妷悍秶?/p>
下面通過在某一給定的DAC8830的設(shè)置下,給定Vref,測量對應(yīng)的實(shí)際輸出。將三種不同設(shè)置下的輸出電壓與參考電壓之間的關(guān)系繪制在一起。從圖中可以看到,實(shí)際上,DA8830的參考電壓對于輸出電壓的等比例的影響范圍是在整個(gè)的工作電壓(0~5V)之內(nèi)都有效。
▲ 將三種不同設(shè)置下的參考電壓與輸出電壓繪制在一起
2.輸入交變的參考電壓
1)在Vref加入交流電壓波形
在Vref中加入100Hz左右正弦波,設(shè)置DAC8830轉(zhuǎn)換值為0x7fff,輸出的電壓波形如下圖所示??梢钥吹捷敵觯˙lue)的電壓波形等于Vref(Cyan)的一半。
▲ DAC8830的Dout(Cyan)與Vref(Blue)的波形
當(dāng)設(shè)置為0xffff的時(shí)候,輸入的波形就與輸入一致了。
▲ DAC8830的Dout(Cyan)與Vref(Blue)的波形
2)輸入高頻方波波形
為了測試從Vref到Vout之間的頻帶寬度,在Vref中加入高頻方波信號(hào),觀察輸出的Vout的信號(hào)。
▲ 加入高頻方波信號(hào)Vref(Blue)觀察輸出信號(hào)Vout(Cyan)
將波形再次展開,觀察輸出的過渡過程。
展開波形,對比輸入輸出波形,可以觀察到Vref到Vout之間的帶寬應(yīng)該超過1MHz。按照DAC8830數(shù)據(jù)手冊上關(guān)于參考電壓 -3dB帶寬的參數(shù),典型值為1.3MHz。
▲ 加入高頻方波信號(hào)Vref(Blue)與輸出信號(hào)Vout(Cyan)波形
3.使用DAC對交流信號(hào)進(jìn)行調(diào)幅
下面將固定的交流電壓(有直流分量,使得信號(hào)始終大于零)施加在Vref,測量Vout隨著DAC8830的設(shè)置值的變化情況。
施加的電壓頻率
,幅值
。
輸出電壓值如設(shè)置數(shù)值之間的關(guān)系為:
▲ 輸出電壓值與設(shè)置值之間的關(guān)系
可以看到整體上輸出與設(shè)置值之間的關(guān)系呈現(xiàn)非常好的線性關(guān)系。
注意到在曲線的一開始似乎有一些略微的非線性。下面重新采集設(shè)置值范圍在(0,0x3ff)范圍內(nèi)的輸出電壓與設(shè)置值之間的關(guān)系曲線。
▲ 輸出電壓值與設(shè)置值之間的關(guān)系
可以看到在起始的時(shí)候,由于系統(tǒng)存在噪聲,使得輸出的電流電壓與設(shè)定值之間存在一定的非線性。當(dāng)理論輸出電壓小于系統(tǒng)地線上的噪聲電壓時(shí),使用交流萬用表測量得到的數(shù)值就會(huì)偏大。
下面重新對頻率為 的信號(hào)測量輸出電壓與設(shè)定值之間的關(guān)系。結(jié)果與1kHz的情形相同。只是輸出整體的增益下降了。
▲ 輸出電壓值與設(shè)置值之間的關(guān)系
增益變化了9%左右。
4.信號(hào)超量程
當(dāng)輸入信號(hào)的幅值超過DAC8830d的工作電壓,或者低于0V,輸出都會(huì)出現(xiàn)截止。
▲ 輸入信號(hào)超過+5V,低于0V的情況
結(jié)論
通過前面的實(shí)驗(yàn),可以看到,使用DAC8830來當(dāng)做電位器獲得幅度可變的交流信號(hào)源是可行的。它具有很寬的信號(hào)帶寬,并且輸出信號(hào)的幅值與設(shè)置信號(hào)之間具有非常好的線性關(guān)系,只是在信號(hào)比較小的時(shí)候輸出會(huì)受到系統(tǒng)和芯片本身的噪聲影響。
當(dāng)輸入信號(hào)超出了DAC8830的工作電壓,或者低于0V時(shí),輸出信號(hào)都會(huì)截止。所以在使用的時(shí)候,需要通過一定的信號(hào)偏置的方式將交流信號(hào)平移到始終在0~5V(DAC8830工作電壓)范圍之后進(jìn)行調(diào)試,然后可以再通過隔直電容去掉信號(hào)中的偏移量。
參考資料
DAC
: https://baike.baidu.com/item/%E6%95%B0%E6%A8%A1%E8%BD%AC%E6%8D%A2%E5%99%A8/4634384?fromtitle=DAC&fromid=1196661&fr=aladdin
機(jī)械電位器
: https://zhuoqing.blog.csdn.net/article/details/104089780
X9C102,X9C103,X9C104
: https://zhuoqing.blog.csdn.net/article/details/104134132
頻帶寬度: 器件的輸出增益隨著信號(hào)頻率的改變而下降,最終形成的最大等效輸出帶寬
卓老師,我是大三做節(jié)能組的。我認(rèn)為各個(gè)組別的難度不同,確實(shí)周期是不一樣的。我以前也做過一年的比賽,還是有一些調(diào)試經(jīng)驗(yàn)的。像四輪組別比較簡單,硬件不容易炸,給我10天我都能調(diào)出來,但是這次節(jié)能組調(diào)起來難度確實(shí)不小,而且跟年前相比新增的坡道對于直立車來講也是一個(gè)難點(diǎn),我們只是清楚該怎么操作,實(shí)際上調(diào)起來怎么樣心里也沒譜。20天真的有點(diǎn)太短了,作品沒有時(shí)間打磨穩(wěn)定性都是個(gè)問題,心理壓力也倍增。我清楚大家都不想延時(shí),如果最后真的迫不得已要實(shí)行20天方案,不知道卓老師是不是也能適當(dāng)?shù)卣{(diào)整一下難度,讓至少50%的同學(xué)能夠適應(yīng)這種強(qiáng)度?
記得剛剛?cè)雽W(xué)的時(shí)候老學(xué)長跟我們講過一句話,開始調(diào)試之前一切進(jìn)度等于零。我覺得在真的開始返校調(diào)試之前我們不敢隨便亂開空口支票。
哈哈哈哈哈哈,卓大大,想跟您分享一下今天母親節(jié)給媽媽做的菜。越來越覺得工科的男生真的沒有不會(huì)的!放假到現(xiàn)在,我修了家里的凈水器,微波爐,洗澡鍋爐,浴室干濕分離改造。最夸張的花了一天時(shí)間,和爸爸刷了家里的墻!今天也是我第一次做菜但真的味道都還不錯(cuò)。
卓大大,我是西安土著民。如果國賽有機(jī)會(huì),在西安我一定請您吃我做的菜!
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場,如有問題,請聯(lián)系我們,謝謝!