0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何將輸入方波轉(zhuǎn)換成倍頻PWM波形?

冬至子 ? 來源:TsinghuaJoking ? 作者:卓晴 ? 2023-07-12 17:16 ? 次閱讀

信號轉(zhuǎn)換的解題思路 ^[1]^ 中,提到為了能夠使得輸出信號的占空比不隨著輸入信號的頻率改變而改變,使用了一種 「信號轉(zhuǎn)換| 如何使用模擬電路完成對方波信號倍頻PWM轉(zhuǎn)換?」 博文中的方式,但是該方式在調(diào)試過程中的結(jié)果出現(xiàn)了些不太如意的地方。

  • 生成的鋸齒波的幅值變化范圍之后工作電源(+5V)的一半,這也限制了對輸入信號頻率允許的范圍;
  • 輸出的鋸齒波由于誘導(dǎo)肖特基二極管整流的影響,使得頂部出現(xiàn)了平滑,限制 PWM的變化范圍;
  • 電路過于復(fù)雜;
  • 輸出信號由于受到LMV358的帶寬影響,上下沿變化比較緩慢。

本文在前面的基礎(chǔ)上,對工作電路進行了改變,特別是采用模擬門來對積分電路電容進行放電,完成鋸齒波的轉(zhuǎn)換。

01電路設(shè)計

實驗電路的原理圖如下圖所示。

圖片

▲ 實驗電路的原理圖

設(shè)計錯誤:

在最初設(shè)計的過程中,原理圖中遺漏了RWF1,RWF2兩個對于積分電路放電的電阻。需要在后期的調(diào)試電路板上進行跳線焊接。

02電路板的調(diào)試

1.電路靜態(tài)參數(shù)

  1. 工作電路 9mA
  2. 內(nèi)部參考電壓(+1V):0.834V

1.jpg

2.動態(tài)調(diào)試

「(1)信號源:」

由信號源引入1000Hz的方波信號進入In端口。

圖片

▲ 信號源提供的1000Hz的調(diào)試方波信號

「(2)修正電路中存在的錯誤」

檢查運放輸出沒有波形,發(fā)現(xiàn) 設(shè)計錯誤: 在原理圖中的WAV1, WAV2被表示成了WAVE1,WAVE2。所以沒有實際引線。

「修正錯誤:」 手工將WAV1,2連接上。

「(3)測量電路中的波形」

兩個積分器的輸出信號與輸入方波信號的之間的關(guān)系為如下。

圖片

▲ 輸入方波信號與積分器的輸出

1.jpg

「(4)測量輸出合成的鋸齒波:」

電路中SAWOUT的鋸齒波的波形如下:

圖片

▲ SAWOUT輸出鋸齒波信號

將模擬門合成的鋸齒波分壓一半送到LMV324 OPAM進行比較,對應(yīng)的波形如下。

圖片

▲ SAW(Cyan), SAWOUT(Green)電壓波形

「(5)輸出參考電壓」

輸出的參考電壓是由SAWOUT低通濾波之后的數(shù)值。

  • 測量值為:1.38V
  • Vref = 0.823V

幅值為 1.38-0.823=0.557V。這個幅度基本上等于鋸齒波的峰值電壓的一半。這正是三角鋸齒波的平均值與峰值之間的關(guān)系。

「(6)輸出PWM波形:」

使用一個330k歐姆的電位器,連接在PIO的3,4,5之間,這為最后一級的比較器(運放工作在比較器狀態(tài))提供一個參考電壓。它的幅值在Vref到SAWOUT的低通濾波器輸出的參考電壓之間。

下面是最后一級運放輸出電壓(Cyan)以及它驅(qū)動電路中模擬門的Z通道輸出的波形(Green)。

圖片

▲ 輸出PWM波形

03性能測試

下面對該電路的波形變化的性能進行測試。

1.輸出PWM的范圍

改變外部設(shè)定PWM的電位器,可以控制輸出波形的PWM占空比。改變占空比的范圍在0~100%之間。

圖片

▲ 輸出PWM波形占空比的范圍

2.輸出占空比與輸入信號頻率之間的關(guān)系

調(diào)節(jié)輸入信號的頻率,觀察到輸出信號的的占空比變化的情況。

圖片

▲ 改變輸入信號的頻率與輸出信號的占空比之間的關(guān)系

隨著輸入信號的頻率改變,輸出信號的的高電平和低電平在同時改變。在一定范圍內(nèi),占空比保持恒定值。但是隨著輸入頻率更大,輸出信號的占空比還是發(fā)生了一定的改變。

影響輸出占空比的原因有兩個:

  1. 如果頻率過高,那么內(nèi)部產(chǎn)生的鋸齒波的幅值就過小,那么由最后一級運放比較器的偏執(zhí)電壓,參考電壓分壓電路的誤差等原因,就會造成輸出脈沖的占空比的誤差增加。
  2. 如果輸入信號的頻率過低,使得內(nèi)部鋸齒波出現(xiàn)了飽和,這樣也會使得輸出波形的占空比出現(xiàn)恨大的誤差。

下面顯示了輸入信號的頻率從50Hz~250Hz變化過程中,內(nèi)部的鋸齒波以及輸出PWM波形變化的情況。

圖片

▲ 頻率變化與內(nèi)部鋸齒波波形變化情況

3. 測量輸入頻率變化對輸出占空比的影響

通過測量輸出PWM的平均電壓,可以測定輸出的占空比。

輸入頻率范圍100~1000Hz。

第一個測量是在100Hz的時候設(shè)置PWM占空比大約為50%左右,下圖顯示了隨著頻率增加,輸出PWM的平均電壓的變化。

圖片

▲ 輸入頻率與輸出PWM平均電壓之間的關(guān)系

下面是對應(yīng)的輸入、輸出信號的變化的情況。

圖片

▲ 改變輸入信號的頻率,測量輸出PWM的占空比

圖片

▲ 輸入信號的頻率對輸出PWM平均電壓的影響

圖片

▲ 輸入信號頻率變化對輸出PWM波形的影響

圖片

▲ 輸入信號的頻率對輸出PWM的平均電壓的影響

圖片

▲ 輸入信號的頻率對于輸出PWM波形的影響

將前面三個測量的PWM輸出電壓隨著輸入信號頻率變化繪制在一張圖中進行對比,可以看到輸入信號的頻率對于PWM的占空比的影響在不同的占空比下的情況還是有區(qū)別的。但在輸入信號頻率在100~1000Hz變化內(nèi),PWM信號占空比變化幅度都在5%之內(nèi)。

圖片

▲ 三種不同PWM占空比的情況下,輸入信號的頻率對于輸出PWM的平均電壓的影響

測量不同頻率下的輸出PWM信號平均電壓的數(shù)據(jù)如下:

f=[100.00,118.00,136.00,155.00,173.00,191.00,210.00,228.00,246.00,265.00,283.00,302.00,320.00,338.00,357.00,375.00,393.00,412.00,430.00,448.00,467.00,485.00,504.00,522.00,540.00,559.00,577.00,595.00,614.00,632.00,651.00,669.00,687.00,706.00,724.00,742.00,761.00,779.00,797.00,816.00,834.00,853.00,871.00,889.00,908.00,926.00,944.00,963.00,981.00,1000.00]
d=[2.48,2.50,2.53,2.54,2.56,2.57,2.58,2.59,2.60,2.61,2.61,2.62,2.63,2.64,2.65,2.65,2.66,2.66,2.67,2.68,2.68,2.69,2.70,2.70,2.71,2.72,2.74,2.73,2.74,2.74,2.75,2.75,2.76,2.77,2.77,2.78,2.79,2.79,2.80,2.80,2.81,2.81,2.82,2.82,2.82,2.82,2.83,2.84,2.85,2.85]


f=[100.00,118.00,136.00,155.00,173.00,191.00,210.00,228.00,246.00,265.00,283.00,302.00,320.00,338.00,357.00,375.00,393.00,412.00,430.00,448.00,467.00,485.00,504.00,522.00,540.00,559.00,577.00,595.00,614.00,632.00,651.00,669.00,687.00,706.00,724.00,742.00,761.00,779.00,797.00,816.00,834.00,853.00,871.00,889.00,908.00,926.00,944.00,963.00,981.00,1000.00]
d=[4.28,4.26,4.23,4.22,4.21,4.21,4.21,4.20,4.21,4.21,4.21,4.21,4.21,4.22,4.22,4.22,4.23,4.23,4.24,4.24,4.24,4.25,4.25,4.26,4.26,4.26,4.27,4.27,4.27,4.28,4.28,4.28,4.29,4.30,4.30,4.30,4.28,4.31,4.32,4.32,4.32,4.33,4.33,4.34,4.34,4.34,4.34,4.36,4.36,4.36]


f=[100.00,118.00,136.00,155.00,173.00,191.00,210.00,228.00,246.00,265.00,283.00,302.00,320.00,338.00,357.00,375.00,393.00,412.00,430.00,448.00,467.00,485.00,504.00,522.00,540.00,559.00,577.00,595.00,614.00,632.00,651.00,669.00,687.00,706.00,724.00,742.00,761.00,779.00,797.00,816.00,834.00,853.00,871.00,889.00,908.00,926.00,944.00,963.00,981.00,1000.00]
d=[0.83,0.85,0.86,0.86,0.87,0.87,0.88,0.88,0.89,0.89,0.90,0.90,0.91,0.91,0.91,0.92,0.92,0.92,0.92,0.93,0.93,0.93,0.93,0.93,0.94,0.94,0.94,0.94,0.94,0.94,0.95,0.95,0.95,0.95,0.95,0.95,0.95,0.94,0.95,0.95,0.95,0.94,0.94,0.94,0.94,0.94,0.93,0.93,0.93,0.93]

實驗所使用的Python程序如下:

#!/usr/local/bin/python
# -*- coding: gbk -*-
#******************************
# TEST11.PY                    -- by Dr. ZhuoQing 2020-05-23
#
# Note:
#******************************


from headm import *
from tsmodule.tsvisa        import *
from tsmodule.tshardware    import *
from tsmodule.tsstm32       import *
from tsmodule.tsdraw        import *


#------------------------------------------------------------
ds6104open()


#------------------------------------------------------------
pltgif = PlotGIF()


setf = linspace(100, 1000, 50)


fdim = []
dutydim = []


for f in setf:
    zbcmd(bytes('ad9833setfrequency %d'%int(f), 'utf-8'))
    time.sleep(1)
    meter = meterval()


    printf(meter)
    fdim.append(int(f))
    dutydim.append(meter[0])


    x,y1,y2,y3 = ds6104readcal(1,2,3)


    plt.clf()
    plt.plot(x, y1, label='Input')
    plt.plot(x, y2, label='PWM')
    plt.plot(x, y3, label='Saw Wave')
    plt.xlabel('Time(s)')
    plt.ylabel('Wave')
    plt.grid(True)
    plt.legend(loc='upper right')
    plt.draw()
    plt.pause(.1)


    pltgif.append(plt)


pltgif.save(r'd:temp1.gif')
printf("a")
tspsavenew('data', f=fdim, d=dutydim)
plt.clf()
plt.plot(fdim, dutydim)
plt.xlabel('Frequency(Hz)')
plt.ylabel('Voltage(V)')
plt.grid(True)
plt.show()


#------------------------------------------------------------
#        END OF FILE : TEST11.PY
#******************************

04結(jié)論

本文驗證了如下兩部分的內(nèi)容:

  1. 使用模擬門電路可以有效的從輸入方波中產(chǎn)生鋸齒波信號。其中應(yīng)用到了模擬門對積分電容進行放電的過程;
  2. 使用了鋸齒波的平均值電壓作為占空比控制的參考電壓,它可以隨著輸入信號的頻率的變化而變化,進而保證了輸出PWM的占空比不隨著輸入信號頻率的變化而改變。在輸入信號頻率從100Hz改變到1000Hz的過程中,輸入PWM占空比的變化不超過5%。

電路的性能還依賴于所使用的器件的性能。本實驗中使用了LMV324,主要是看中了在單電源(+5V)工作的簡便性。如果想進一步提高電路的性能,可以采用帶寬和精度更高的運放完成電路的設(shè)計。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 低通濾波器
    +關(guān)注

    關(guān)注

    13

    文章

    470

    瀏覽量

    47225
  • 信號轉(zhuǎn)換器
    +關(guān)注

    關(guān)注

    0

    文章

    78

    瀏覽量

    13846
  • 肖特基二極管
    +關(guān)注

    關(guān)注

    5

    文章

    875

    瀏覽量

    34649
  • PWM波
    +關(guān)注

    關(guān)注

    0

    文章

    99

    瀏覽量

    16793
  • lmv358
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

    2200
收藏 人收藏

    評論

    相關(guān)推薦

    如何將一維字符數(shù)組轉(zhuǎn)換成字符串輸出

    望大神解惑如何將一維字符數(shù)組轉(zhuǎn)換成字符串輸出
    發(fā)表于 05-02 10:36

    Multisim 如何將電路圖轉(zhuǎn)換成Ultiboard 可以識別的文件

    求助Multisim 如何將電路圖轉(zhuǎn)換成Ultiboard 可以識別的文件
    發(fā)表于 07-04 13:37

    如何將char型指針強制轉(zhuǎn)換成UCHAR型指針

    如何將char型指針強制轉(zhuǎn)換成UCHAR型指針??????、、
    發(fā)表于 12-21 15:51

    怎么PWM轉(zhuǎn)換成直流電

    PWM轉(zhuǎn)換成直流電,轉(zhuǎn)換后的直流電的電壓根據(jù)占空比等于PWM波電壓的平均值,以便進行AD轉(zhuǎn)換
    發(fā)表于 07-09 08:45

    <提問>想知道如何將波形圖表中的圖形轉(zhuǎn)換成方波

    剛開始學(xué)習(xí)labview想知道如何按照圖中所示那樣獲取的波形轉(zhuǎn)換成方波
    發(fā)表于 08-19 16:41

    如何將數(shù)組轉(zhuǎn)換成整形數(shù)值

    labview中將一維數(shù)組轉(zhuǎn)換成對應(yīng)的整型數(shù)值呢?...可能我描述的不清楚,就像圖上顯示的那樣,如何將labview中那個100,200的一維數(shù)組轉(zhuǎn)換成PLC監(jiān)控到的10進制雙字的 13107300那個值呢?
    發(fā)表于 08-26 00:23

    如何將陀螺儀的原始數(shù)據(jù)轉(zhuǎn)換成角速度呢

    我正在使用 lsm6dsl 傳感器。我正在獲取有關(guān)寄存器的數(shù)據(jù)。如何將原始數(shù)據(jù)轉(zhuǎn)換成角度
    發(fā)表于 12-15 08:19

    單片機如何將磁場轉(zhuǎn)換成電流呢?

    單片機如何將磁場轉(zhuǎn)換成電流呢?
    發(fā)表于 04-13 10:08

    如何將一個INT型數(shù)據(jù)轉(zhuǎn)換成2個CHAR型數(shù)據(jù)?

    如何將一個INT型數(shù)據(jù)轉(zhuǎn)換成2個CHAR型數(shù)據(jù)?
    發(fā)表于 11-03 06:20

    如何將pads2007轉(zhuǎn)換成cadence文件

    pads2007轉(zhuǎn)cadence:如何將pads2007轉(zhuǎn)換成cadence文件
    發(fā)表于 09-14 09:55 ?0次下載
    <b class='flag-5'>如何將</b>pads2007<b class='flag-5'>轉(zhuǎn)換成</b>cadence文件

    方波轉(zhuǎn)換成正弦波電路

    方波轉(zhuǎn)換成正弦波電路 即利用RDD104可選的4各十進制CMOS除法器和一個MSFS5 開關(guān)電容濾波器來構(gòu)
    發(fā)表于 07-18 16:16 ?3.8w次閱讀
    <b class='flag-5'>方波</b><b class='flag-5'>轉(zhuǎn)換成</b>正弦波電路

    用比較器把正弦波轉(zhuǎn)換成方波電路_過零比較器波形轉(zhuǎn)換電路

    本文為您介紹三種使用比較器把正弦波轉(zhuǎn)換成方波電路方法,過零比較器波形轉(zhuǎn)換電路原理圖。
    發(fā)表于 09-05 17:30 ?17.5w次閱讀
    用比較器把正弦波<b class='flag-5'>轉(zhuǎn)換成方波</b>電路_過零比較器<b class='flag-5'>波形</b><b class='flag-5'>轉(zhuǎn)換</b>電路

    如何將頻譜噪聲密度轉(zhuǎn)換成均方根噪聲的操作方法分析

    ADI公司的Matt Duff就如何將頻譜噪聲密度(nV/√Hertz)轉(zhuǎn)換成均方根噪聲(mV rms)進行說明。
    的頭像 發(fā)表于 06-13 06:00 ?8942次閱讀

    如何將RMS噪聲轉(zhuǎn)換成峰峰值噪聲

    ADI公司的Matt Duff就如何將RMS噪聲轉(zhuǎn)換成峰峰值噪聲進行說明。
    的頭像 發(fā)表于 06-12 06:20 ?8515次閱讀

    如何將Protel DXP轉(zhuǎn)換成Gerber詳細教程免費下載

    本文檔的主要內(nèi)容詳細介紹的是如何將Protel DXP轉(zhuǎn)換成Gerber詳細教程資料免費下載。
    發(fā)表于 08-09 16:36 ?0次下載
    <b class='flag-5'>如何將</b>Protel DXP<b class='flag-5'>轉(zhuǎn)換成</b>Gerber詳細教程免費下載