單片機(jī) 0~10V 輸出電路的實(shí)現(xiàn)

2023/7/7 16:58:16??????點(diǎn)擊:

     前言


     本次的電路小課堂主要內(nèi)容就是: 使用單片機(jī)如何實(shí)現(xiàn) 0 ~ 10V 的信號(hào)輸出。


     一、MCU 的 DAC


     第一種方式,利用單片機(jī)自帶的DAC模塊,現(xiàn)在很多的單片機(jī)都自帶了 DAC 模塊,我們可以直接使用 DAC 模塊的輸出進(jìn)行實(shí)現(xiàn)。


     比如我們最常見的單片機(jī)供電系統(tǒng)為:0 ~ 3.3V。那么我們就可以將 0 ~ 3.3 V 放大 3倍,實(shí)現(xiàn) 0~ 10V 的輸出。


     放大電路當(dāng)然是使用運(yùn)放實(shí)現(xiàn),在我的另外一篇博文里面總結(jié)過運(yùn)放的常用電路:


     常用運(yùn)放電路總結(jié)記錄


     這里我們用到的是同相比例運(yùn)放電路,如下圖:


     


     DAC1 為單片機(jī)的 DAC 輸出,0 ~ 3.3V ,放大 3 倍。


     R2 選擇 3.3K 還是因?yàn)檫\(yùn)放的對(duì)稱性,選擇與 R4 和 R3 并聯(lián)電阻相等的阻值。


     本文是電路總結(jié)記錄,至于電路的效果,我需要看一看是否需要后續(xù)補(bǔ)充到文中,因?yàn)槌藢S眯酒@種用 單電源供電的 普通運(yùn)放 搭建的電路多少會(huì)存在一些問題,最典型的一個(gè)問題就是能否輸出 0 V。


     更新測(cè)試效果,第一種使用 DAC 直接放大3倍,感覺直接看起來還是挺滿意的,直接上測(cè)試圖:


     


     上面我通過自己手動(dòng)設(shè)置 DAC 的值,輸出的不同狀態(tài)效果。


     二、PWM 加濾波電路


     第二種方式,使用 PWM 加濾波電路。


     2.1 PWM 輸出 DAC


     如何讓 PWM 波形變成模擬量輸出,那就是加上濾波電路,經(jīng)過一個(gè)濾波電路,可以使得PWM變成DAC輸出。如下圖:


   



     上圖只使用一個(gè) RC 的濾波電路稱為一階濾波電路。


     為了使得輸出更加平滑,我們會(huì)使用二階甚至多階濾波電路。


     為了使得帶載能力更強(qiáng),我們會(huì)使用后面接電壓跟隨器等運(yùn)放電路。


     2.2 PWM 接濾波器的RC值選擇說明


     對(duì)于 RC 濾波器的 RC值選擇,是新手難以理解處理的一個(gè)點(diǎn),這也是濾波器設(shè)計(jì)的重點(diǎn)之一。


     我們都知道,RC低通濾波電路的截止頻率:


       fc=1/2πRC                    


     這個(gè)公式非常重要,了解 RC 濾波器必須牢記的公式,截止頻率公式。


     截止頻率實(shí)際上是輸入信號(hào)幅度降低 3dB 的頻率。截止頻率也稱為 -3 dB頻率


     簡單幾點(diǎn)說明(當(dāng)然,如果要具體算式分析,可自行網(wǎng)上搜索,博主還沒有寫過 RC 濾波器的文章 = =?。?/span>


     R 越小,輸出損耗越大
     R 越大,噪聲紋波越大
     C 越小(比如到達(dá) pf 級(jí)別后),越容易被寄生電容影響
     C 越大(比如比較大的 uf 級(jí)別后),因?yàn)殡娙菰酱螅胀ㄇ闆r下就只能使用電解電容,但是電解電容的高頻特性很差,在 RC 濾波器中盡量不要使用電解電容
     說來說去,這不是這也不行那也不行?= =!實(shí)際上就是這樣,這種低成本的電路沒有完美的,我們總做的就是一個(gè)權(quán)衡,在有限的成本規(guī)定范圍內(nèi),設(shè)計(jì)出一個(gè)滿足需要的電路。


     對(duì)于本文我們的  PWM 而言,其本質(zhì)上是一種高頻脈沖信號(hào),其中的高頻分量會(huì)被低通濾波器濾掉,只有低頻分量才能通過濾波器,形成模擬信號(hào)輸出。我們要保證 PWM 的頻率 遠(yuǎn)大于 RC 低通濾波器的截止頻率,至少在 10 倍以上甚至數(shù)十倍,因?yàn)樵酵系念l率信號(hào),濾波的效果越來越好。


     很遺憾在給 PWM 信號(hào)做濾波的時(shí)候并沒有一個(gè)完美的固定值范圍告訴大家,一般來說 ,保持電阻在 K 級(jí)別,數(shù)百歐姆到 K級(jí)別都可以,然后電容 nf 級(jí)別,nf 到 1uf,當(dāng)然這只是普通情況,還是具體情況具體分析。


     涉及到的細(xì)節(jié)需要經(jīng)過很多的分析,但是大家放心,在一般使用中,即便你不知道如何選擇,根據(jù)網(wǎng)上你能找到的參考 “經(jīng)驗(yàn)值” ,你也可以完成電路的設(shè)計(jì)。


     重要的是在你按照經(jīng)驗(yàn)值設(shè)計(jì)完電路發(fā)現(xiàn)問題了以后知道如何去查找問題,如何去調(diào)整參數(shù),這是硬件設(shè)計(jì)的關(guān)鍵所在。


     2.3 0~ 3.3V PWM 輸出  0 ~10V


     方案一:RC 濾波器


     上面簡單的說明了一下,那么上一下我們本次測(cè)試的電路:


   

     

     圖中的阻容大家可以根據(jù)自己的需求修改。



     測(cè)試:


     在上文我們說過,我們可以算出 RC低通濾波器的截止頻率,我們要保證 PWM 的頻率 遠(yuǎn)大于 RC 低通濾波器的截止頻率。


     如果 PWM 的頻率比較低會(huì)怎樣,比如,我 PWM 周期為 1HZ,然后占空比設(shè)置為50% ,直接給大家看一個(gè)圖:


     


     進(jìn)一步的修改一下,把 PWM 的頻率稍微修改一下,對(duì)于我測(cè)試的其實(shí)也就是 定時(shí)器的頻率,如下:


   

     

     根據(jù)公式



     Tout = ((arr+1)*(psc+1))/Tclk ;   // 32MHz 主頻     


     定時(shí)器周期為 1 ms, 其實(shí)也就表示頻率為 1KHz,為了方便表示占空比 0~ 100 對(duì)應(yīng),上面的 arr 改成了100, 實(shí)際上也是 1KHz 左右,再來看看效果:


     


     實(shí)際上我測(cè)試的時(shí)候沒有特意的去調(diào)整阻容的值,就直觀上看起來效果還是可以的(上圖的毛刺多是因?yàn)槭静ㄆ?GND 的線夾得太遠(yuǎn)了)。


     方案二:三極管


     三極管的方案是參考 B 站 Eric文老師 視頻中的電路,因?yàn)槟承┰?,不放鏈接,大家可以自行搜索,這里也當(dāng)做借鑒分享給大家!


     有一個(gè)問題,偏置電壓老師講的圖上好像是 11V ,這個(gè)并不好滿足,我使用一個(gè) 12 V 串聯(lián)一個(gè) 二極管測(cè)試一下:


     


     因?yàn)樯蠄D為借鑒,僅供參考!


     如果要保證輸出不超過 10V ,那么偏置電壓最好也選擇 10V ,去掉上面的 D3 比較合適,因?yàn)檫@樣最高接近 12V 輸出了。


     三、專用轉(zhuǎn)換芯片


     前面的兩種方式成本相對(duì)都比較低,和電平轉(zhuǎn)換電路一樣,0 ~10V 輸出也有專門的轉(zhuǎn)換芯片。


     但實(shí)際上我沒用過,但是既然都要測(cè)試了,那也不能落下,那么一下子也不知道什么芯片好,只能去網(wǎng)上搜索(雖然按我的理解是度娘搜索的芯片只能說廣告做得多,并不見得好),但是也沒有其他辦法,于是乎經(jīng)過一通搜索, 那就是這款芯片了:GP8101 。


     看了一下介紹,這個(gè)芯片有一個(gè)系列,不僅有 PWM 輸入的,還有 I2C 結(jié)口的:


   


     這里就不貼太多說明了,大家自行可以搜索,本文也就把他當(dāng)做一種方案,我們直接根據(jù)推薦電路設(shè)計(jì)電路圖即可:


   


     測(cè)試其實(shí)和上面一樣,設(shè)置不同的占空比,看示波器,結(jié)果還是很好的。


     結(jié)語


     本文列出了使用單片機(jī)如何實(shí)現(xiàn) 0 ~ 10V 輸出電路的不同方案。


     要說最穩(wěn)定省心的,肯定是使用專用芯片,如果確實(shí)對(duì)成本敏感,那就得結(jié)合實(shí)際需求考慮了。