主要内容

고조파왜곡분석하기

이예제에서는잡음의영향을받고있는약한비선형시스템의고조파왜곡을분석하는방법을보여줍니다。

소개

이예제에서는입력신호에잡음이있어비선형성을나타내는간단한증폭기모델의출력값을살펴봅니다。그런다음입력값감쇠를통해어떻게고조파왜곡을줄일수있는지살펴봅니다。또한증폭기출력에서발생한왜곡을수학적으로해결하는방법을예제를통해알아보겠습니다。

비선형성의향확하기

증폭기의비선형성이미치는영향을확인하는편리한방법은정현파로시뮬레이션할때출력값의주기도를확인하는것입니다。정현파의진폭은폭기에서허용되는최대전압으로설정되어있습니다。(2 vpk)

이예제에서는50밀리초동2kHz정현파를공급하겠습니다。

VmaxPk = 2;最大工作电压%Fi = 2000;% 2千赫的正弦频率Fs = 44.11 e3;% 44.1kHz采样率Tstop = 50e-3;%正弦信号持续时间t = 0:1/Fs:Tstop;输入时间向量使用放大器的最大允许电压inputVmax = VmaxPk*sin(2*pi*Fi*t);输出vmax = helperHarmonicDistortionAmplifier(输入vmax);

출력정현파의확대된역을시합니다。참고로,시간을기준으로플로팅할경우증폭기의불완전성을시각적으로확인하기어렵습니다。

plot(t, outputVmax)“时间”) ylabel (输出电压的轴([0 5e-3 -2.5 2.5])放大器输出的

图中包含一个轴对象。标题为放大器输出的axes对象包含一个类型为line的对象。

이제폭기출력값의주기도를보겠습니다。

helperPlotPeriodogram (outputVmax Fs,“权力”“注释”);

图中包含一个轴对象。标题为Periodogram Power Spectrum Estimate的axes对象包含3个类型为line, text的对象。

입력값에배치2 khz한정현파대신4 khz, 6 khz, 8 khz, 10 khz의다른정현파가보입니다。이들정현파는기본2kHz주파수의배수로,폭기의비선형성으로한것입니다。

또한잡음전력대역이비교적평탄한것을확할수있습니다。

비선형왜곡수치화하기

왜곡과관련해주로사용되는몇가지메트릭을비교해보겠습니다。

다음주기도는기본신호의잘정의된일부고조파를보여줍니다。이를근거로입력신호의총고조파왜곡을측정하면기본신호에대한모든고조파성분의전력비율이반환됩니다。

(thd (outputVmax Fs)

图中包含一个轴对象。标题为THD: -60.39 dB的axes对象包含16个类型为line, text的对象。这些对象代表基本,谐波,直流和噪声(不包括)。

Ans = -60.3888

가장큰고조파c72제3고조파가기본파보다약60dB만큼작음을알수있습니다。여기에서대부분의왜곡이발생합니다。

입력값에존재하는총잡음의추정값도얻을수있습니다。이추정값을얻으려면信噪比을호출합니다。그러면고조파가아닌모든성분의전력에대한기본신호의전력비율이반환됩니다。

信噪比(outputVmax Fs)

图中包含一个轴对象。标题信噪比为130.93 dB的axes对象包含17个类型为line, text的对象。这些对象代表基本、噪声、直流和谐波(不包括)。

Ans = 130.9300

계산에유용한또다른메트릭은sinad입니다。이메트릭은신호에존재하는기타모든고조파및잡음성분에대한전력의비율을계산합니다。

sinad (outputVmax Fs)

图中包含一个轴对象。标题为SINAD: 60.39 dB的axes对象包含7个类型为line, text的对象。这些对象代表基本、噪声和失真、DC(不包括)。

Ans = 60.3888

THD, SNR, SINAD는각각-60dB, 131dB, 60dB입니다。(THD의크기가SINAD의크기와거의같기때문에,대부분의왜곡이고조파왜곡때문인것으로볼수있습니다。

주기도를살펴보면,제3고조파가출력값왜곡의대부분을차지하는것을알수있습니다。

입력값감쇠를통해고조파왜곡줄이기

증폭을수행하는대부분의아날로그회로에는고조파왜곡과잡음전력간의상호절충관계가내재되어있습니다。위의예제에서폭기는고조파왜곡에비해잡음전력이상대적으로낮습니다。이러한특성때문에전력이낮은신호를감지하는데적합합니다。입력값을감쇠하여이러한저전력영역에진입할수있는경우고조파왜곡을일부복구할수있습니다。

입력전압을2배낮춰측정을반복해보겠습니다。

inputVhalf = (VmaxPk/2) * sin(2*pi*Fi*t);输出vhalf = helperHarmonicDistortionAmplifier(输入vhalf);helperPlotPeriodogram (outputVhalf Fs,“权力”“注释”);

图中包含一个轴对象。标题为Periodogram Power Spectrum Estimate的axes对象包含3个类型为line, text的对象。

메트릭을다시얻되,이번에는입력전압감소가미치는향을측정해보겠습니다。

thdVhalf = thd(outputVhalf, Fs)
thdVhalf = -72.0676
snrVhalf = snr(outputVhalf, Fs)
snrVhalf = 124.8767
sinadVhalf = sinad(outputVhalf, Fs)
sinadVhalf = 72.0676

입력전력수준을6dB만큼만감쇠해도고조파성분이감소함을알수있습니다。SINAD와THD가~60dB에서~72dB로향상되었습니다。그대신信噪比이131dB에서125dB로낮아졌습니다。

입력감쇠에대한함수로서의信噪比,thd, sinad

감쇠를가시키면전체왜곡을개선할수있을까?(THD,信噪比,SINAD를입력감쇠의함수로플로팅하고,입력감쇠기를1 db에서30 db까지스윕해보겠습니다。

分配一个包含30个条目的表nreads = 30;扭曲表=零(nreads, 3);计算每个衰减设置的THD, SNR和SINADi = 1: nreads inputVbestAtten = db2mag(-i) * VmaxPk * sin(2*pi*Fi*t);输出vbestatten = helperHarmonicDistortionAmplifier(输入vbestatten);扭曲表(i,:) = [abs(thd(outputVbestAtten, Fs)) snr(outputVbestAtten, Fs) sinad(outputVbestAtten, Fs)];结束%绘图结果情节(distortionTable)包含(“输入衰减(dB)”) ylabel (“动态范围(dB)”)传说(“官| |”“信噪比”“SINAD”“位置”“最佳”)标题(失真指标vs.输入衰减

图中包含一个轴对象。标题为失真度量与输入衰减的axis对象包含3个类型为line的对象。这些对象代表|THD|, SNR, SINAD。

그래프에는각메트릭에대응하는유용한동적범위가나와있습니다。(THD의크기는고조파가없는범위에해당합니다。이와유사하게信噪比은잡음의영향을받지않는동적범위에해당하고,SINAD는왜곡이없는총동적범위에해당합니다。

그래프를통해알수있듯이,입력전력감쇠가가하면snr이저하됩니다。이는신호를감쇠하면신호만감쇠되고,증폭기의바닥잡음은동일하게유지되기때문입니다。

또한총고조파왜곡의크기가꾸준히증가하다가信噪比곡선과교차한후에는측정값이불안정해짐을알수있습니다。이는고조파가폭기의잡음아래로“사라졌기”때문입니다。

증폭기의증폭기감쇠량은26 db로선택하는것이실용적입니다(SINAD 103 db가는됨)。그러면고조파왜곡과잡음왜곡간에합리적으로절충할수있습니다。

搜索表中最大的SINAD读数[maxSINAD, iAtten] = max(扭曲表(:,3));流(马克斯·辛纳德(Max SINAD)。1f dB)发生在%。f dB衰减\n'...maxSINAD iAtten)
最大SINAD (103.7 dB)发生在26 dB衰减时

감쇠기를26dB로설정하고주기도를플로팅해보겠습니다。

inputVbestAtten = db2mag(-iAtten) * VmaxPk * sin(2*pi*Fi*t);输出vbestatten = helperHarmonicDistortionAmplifier(输入vbestatten);helperPlotPeriodogram (outputVbestAtten Fs,“权力”“注释”“shownoise”);

图中包含一个轴对象。标题为Periodogram Power Spectrum Estimate的axes对象包含4个类型为line, text的对象。

여기서스펙트럼에확산되어있는잡음전력의수준을추가로플로팅했습니다。2이감쇠설정에서제고조파와제3고조파가계속스펙트럼에표시되지만총잡음전력보다상당히적습니다。더작은대역폭의가용스펙트럼을사용하는응용프로그램에서는감쇠를더크게하여고조파성분을줄일수있습니다。

사후처리로왜곡제거하기

경우에따라폭기의비선형성을어느정도보정할수있습니다。증폭기의출력값이디지털화된경우,캡처된출력값을디지털방식으로사후처리하고비선형성을수학적으로해결함으로써더유용한동적범위를복원할수있습니다。

이예제에서는,선형램프형태의입력값을가하고해당입력값에가장적합3차한다항식을피팅합니다。

inputRamp = -2:0.00001:2;outputRamp = helperHarmonicDistortionAmplifier(inputRamp);polyCoeff = polyfit(输出putramp,输入putramp,3)
polyCoeff =1×40.0010 -0.0002 1.0000 -0.0250

이제계수가지정되었기때문에,출력값에대해사후보정작업을수행하고보정되지않은원래출력값과나란히비교할수있습니다。

correctedOutputVmax = polyval(polyCoeff, outputVmax);helperPlotPeriodogram ([outputVmax;correctedOutputVmax], Fs,“权力”);次要情节(2,1,1)标题(“裸”) subplot(2,1,2)“多项式纠正”

图中包含2个轴对象。标题为Uncorrected的坐标轴对象1包含一个类型为line的对象。标题为Polynomial Corrected的Axes对象2包含一个类型为line的对象。

다항식보정을사용한경우에제2고조파와제3고조파가상당히줄어들었습니다。

보정된출력값을사용하여다시측정해보겠습니다。

thdCorrectedVmax = thd(correctedOutputVmax, Fs)
thdCorrectedVmax = -99.6194
snrCorrectedVmax = snr(correctedOutputVmax, Fs)
snrCorrectedVmax = 130.7491
sinadCorrectedVmax = sinad(correctedOutputVmax, Fs)
sinadCorrectedVmax = 99.6162

SINAD(및(THD)는60 db에서99分贝로떨어진반면,信噪比은원래대로131分贝을유지하고있음을알수있습니다。

여러기법을함께사용하기

감쇠와다항식계산을함께사용하여,시스템의전반적인SINAD를최소화하는이상적인동작전압을찾을수있습니다。

次要情节(1,1,1)在失真表中再添加三列扭曲表=[扭曲表零(nreads,3)];i = 1: nreads inputVreduced = db2mag(-i) * VmaxPk * sin(2*pi*Fi*t);输出vreduced = helperHarmonicDistortionAmplifier(输入vreduced);correctedOutput = polyval(polyCoeff, outputVreduced);扭曲表(i,4:6) = [abs(thd(correctedOutput, Fs)) snr(correctedOutput, Fs) sinad(correctedOutput, Fs)];结束h = plot(扭曲表)
h = 6x1线阵:Line Line Line Line Line
包含(输入衰减(dB)) ylabel (“动态范围(dB)”I = 1:3 h(I +3)。Color = h(i).Color;h (i + 3)。线型=“——”结束传奇(”| |(未调整的)的信噪比(未调整的)“SINAD(未调整的)...”| |(修正)的信噪比(修正)“SINAD(修正)“位置”“最佳”)标题(失真指标vs.输入衰减和多项式修正);

图中包含一个轴对象。标题为失真度量与输入衰减和多项式校正的轴对象包含6个类型行对象。这些对象表示|THD|(未校正),SNR(未校正),SINAD(未校正),|THD|(校正),SNR(校正),SINAD(校正)。

여기,서보정되지않은증폭기와다항식보정을거친증폭기모두에대해세개메트릭을나란히모두플로팅했습니다。

그래프에서알수있듯이,THD는상당히개선된반면信噪比은다항식보정의영향을받지않았습니다。이는예상된결과로,다항식보정이고조파왜곡에만영향을주고잡음왜곡에는영향을주지않기때문입니다。

다항식으로보정된경우에가능한sinad최댓값은다음과같습니다。

[maxSINADcorrected, iAttenCorr] = max(扭曲表(:,6));流(更正:Max SINAD(%。1f dB) at %。f dB衰减\n'...maxSINADcorrected iAttenCorr)
修正:最大SINAD (109.7 dB)在17 dB衰减

다항식보정을거친증폭기의증폭기감쇠량은20 db로선택하는것이좋습니다(SINAD 109.8 db가는됨)。

用多项式重新计算最大SINAD衰减设置下的放大器inputVreduced = db2mag(-iAttenCorr) * VmaxPk * sin(2*pi*Fi*t);输出vreduced = helperHarmonicDistortionAmplifier(输入vreduced);correctedOutputVbestAtten = polyval(polyCoeff, outputVreduced);helperPlotPeriodogram (correctedOutputVbestAtten Fs,“权力”“注释”“shownoise”);标题(衰减多项式校正放大器周期图

图中包含一个轴对象。标题为衰减多项式校正放大器Periodogram的轴对象包含类型行、文本4个对象。

2제고조파를제외한모든고조파가다항식보정으로인해이상적인감쇠설정아래로완전히사라졌음을알수있습니다。앞서언급한것처럼,제2고조파는총바닥잡음의전력수준바로아래에나타납니다。따라서폭기의전체대역폭을사용하는응용사례에서합리적상호절충이이루어집니다。

요약

왜곡현상이발생하는증폭기의출력값에다항식보정을적용하는방법과합리적인감쇠량값을선택하여고조파왜곡의영향을줄이는방법에대해살펴보았습니다。

참고 항목

||