MATLAB在電工和電子線路中的應用舉例_第1頁
MATLAB在電工和電子線路中的應用舉例_第2頁
MATLAB在電工和電子線路中的應用舉例_第3頁
MATLAB在電工和電子線路中的應用舉例_第4頁
MATLAB在電工和電子線路中的應用舉例_第5頁
已閱讀5頁,還剩106頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

MATLAB在電工和電子線路中的應用舉例

8.1電工原理8.2晶體管放大電路8.3電力電子和電機8.4高頻電路8.1電工原理

【例8-1-1】梯形直流電路如圖8-1所示,問

(1)如US=10V,求Ubc,I7,Ude;

(2)如Ude=4V,求Ubc,I7,US。圖8-1例8-1-1的電路圖解:

◆建模此電路中設節點電壓為變量,共有Ua、Ub、Uc、Ud

等四個。各支路電流均用這些電壓來表示對b點和c點列出節點電流方程:I1=I3+I7,I3=I4+I6,將上述各值代入化簡,得(8-1)(8-2)當問題(1)給出US時,這兩個方程中只有兩個未知數Ub和Uc,可寫成矩陣方程讀者可從方程(1)、(2)中找到a11、a12、a21、a22及a13、a23的表達式,并用矩陣左除解出Ub、Uc。由,即可解出問題(1)。對于問題(2),可以推出類似的矩陣表達式,只是輸入輸出量不同,請讀者自行推導,并與下面的MATLAB程序對照。由于同一系統的系數矩陣有許多相同的項,編程時可以利用這個特點來簡化其賦值過程。◆MATLAB程序

r1=2;r2=4;r3=4;r4=4;r5=2;r6=12;r7=12; %為元件賦值

a11=1/(r1+r2)+1/r3+1/r7;a12=-1/r3;a13=1/(r1+r2) %對各系數賦值

a21=1/r3;a22=-1/r3-1/(r4+r5)-1/r6;a23=0

us=input(′us=′); %輸入問題(1)的已知條件

A1=[a11,a12;a21,a22] %列出系數矩陣A1

u=A1\[a13*us;0] %u=[ub;uc]

ubc=u(1)-u(2),ude=u(2)*r5/(r4+r5),i=u(1)/r7 %解問題(1)ude=input(′ude=′), %輸入問題(2)的已知條件

A2=[A1,-[a13;a23];0,r5/(r4+r5),0]

%列出系數矩陣A2u=A2\[0;0;ude], %u=[ub;uc;us]

ubc=u(1)-u(2),i=u(1)/r7,us=(r1+r2)*(u(1)*a11+u(2)*a12) %解問題(2)◆程序運行結果

(1)輸入us=10時,得到ubc=2.2222,ude=0.7407,i7=0.3704;

(2)輸入ude=4時,得到ubc=12.0000,i7=2.0000,us=54.0000。

【例8-1-2】如8-2圖所示電路,在t<0時,開關S位于“1”,電路已處于穩態,t=0時,開關S閉合到“2”,求UC和IR2的響應,并畫出它們的波形。圖

8-2例8-1-2的電路圖

解:

◆建模這是一個分析暫態過程的問題,先要找到其初值和終值。在t=0-時UC(0-)=-12V,IC(0-)=0,由于R2是電流源IS唯一的外部通路,故;當t=0+時,因為電容器端電壓不可能突變,仍有UC(0+)=UC(0-)=-12V,電流源向兩個電阻和一個電容的并聯系統供電,兩個電阻的電流應等于電容電壓除以電阻,即

電容的充電電流為電流源總電流減去電阻電流,故IC(0+)=IS-IR2(0+)-IR3(0+)=3-(-1)-(-2)=6A

再分析終值,達到穩態后,電容中將無電流,電流源的全部電流將在兩個電阻之間分配,其端電壓應相同,它也就是電容上的終電壓,結果應為UCf=12V,IR2f=1A。初值和終值之間的過渡波形u(t)按三要素法計算。所謂三要素是指初值u0、終值uf和該段的充放電時間常數T,表示式為

MATLAB語句可寫成u=uf+(u0-uf)*exp(-(t-t0)/T)。在求多段波形時,每段的初始時刻t0可能不同,需要注意。◆MATLAB程序

r1=3;us=18;is=3;r2=12;r3=6;C=1; %給出原始數據

uc0=-12;ir20=uc0/r2;ir30=uc0/r3; %算出初值

ic0=is-ir20-ir30;

ir2f=is*r3/(r2+r3); %算出終值

ir3f=is*r2/(r2+r3);

ucf=ir2f*r2;icf=0;

t=[[-2∶0]-eps,0∶15]; %注意時間數組的設置,在t=0附近設兩個點

uc(1∶3)=-12;ir2(1∶3)=3;%t<0時的值

T=r2*r3/(r2+r3)*C;%求充電時常數

uc(4∶19)=ucf+(uc0-ucf)*exp(-t(4∶19)/T);ir2(4∶19)=ir2f+(ir20-ir2f)*exp(-t(4∶19)/T); %用三要素法求輸出

subplot(2,1,1);h1=plot(t,uc), %繪電壓uc波形

subplot(2,1,2),h2=plot(t,ir2); %繪電流ir2波形◆程序運行結果執行此程序的結果如圖8-3所示。圖8-3UC和IR2的波形

【例8-1-3】如圖8-4所示電路,已知R=5Ω,ωL=3Ω,

,求,并畫出其相量圖。圖

8-4例8-1-3電路圖

解:

◆建模這是普通的交流穩態電路問題,設Z1=jωL,Z2=R,Z3=1/jωC。R與C并聯后的阻抗為總阻抗為Z=Z1+Z23總電流為總電壓除以總阻抗,即而總電壓將在這兩段阻抗之間分壓:及可由分別除以Z2及Z3得到:在MATLAB中,任何一個變量的元素都可以是復數,它可以代表電壓和電流相量,也可以表示復數阻抗,無需特別注明,所以程序中沒有(也不允許有)字母上的點號,以后不再向讀者說明。◆MATLAB程序(注意它的復數運算)

z1=3*j;z2=5;z3=5/j;uc=10;

z23=z2*z3/(z2+z3);z=z1+z23;

Ic=uc/z3,Ir=uc/z2,I=Ic+Ir,ul=I*z1,us=I*z

disp(′IrIcIulus′)

disp(′幅值′),disp(abs([Ir,Ic,I,ul,us]))

disp(′相角′),disp(angle([Ir,Ic,I,ul,us])*180/pi)

%compass是MATLAB中繪制復數相量圖的命令,用它畫相量圖特別方便

ha=compass([Ir,Ic,I,ul,us]); %ha是本圖的圖柄,如不需改變線寬,可省去它

set(ha,′linewidth′,2);%把向量線條加粗至2mm◆程序運行結果

Ir

Ic

I

ul

us幅值2.00002.0000

2.82848.4853

7.2111相角090.0000

45.0000135.0000

56.3099畫出的相量圖如圖8-5所示。圖

8-5例8-1-3所得的相量圖

【例8-1-4】如圖8-6所示電路,已知,求。解:

◆建模這是一個含三個頻率分量的穩態交流電路問題,可以按每個頻率成分分別計算,再疊加起來。但是,更高明的辦法是利用MATLAB的元素群計算特性,把多個頻率分量及相應的電壓、電流、阻抗等都看做多元素的數組,每一個元素對應一種頻率分量的值。因為它們服從同樣的方程,所以程序就特別簡潔。圖8-6例8-1-4的電路圖

(1)先看對b、d點產生的等效電壓,假定電流源開路,由圖8-6可得

(2)根據戴維南定理,US的等效電流源的內阻應計算如下:設US短路,求由b、d向網絡看的阻抗,其等效電路如圖8-7所示。電流源在b、d間產生的電壓為ISZeq。

(3)根據疊加原理圖8-7求等效內阻的圖◆MATLAB程序

clear,formatcompact

w=[eps,1,2];us=[10,10,0];Is=[5,0,5]; %按三種頻率設定輸入信號數組

z1=1./(0.5*w*j);z4=1*w*j; %電抗分量是頻率的函數,故自動成為數組

z2=[2,2,2];z3=[2,2,2]; %對電阻分量也列寫成常數數組

uoc=(z2/(z1+z2)-z4/(z3+z4)).*us;%列出電路的復數方程

zeq=z3.*z4./(z3+z4)+z1.*z2./(z1+z2);%列出等效阻抗

u=Is.*zeq+uoc; %求解

disp(′wumphi′)%顯示

disp([w′,abs(u′),angle(u′)*180/pi])◆程序運行結果

wumphi0.000010.000001.00003.1623-18.43492.00007.0711-8.1301由此我們可以寫出u的表達式為u=10+3.1623cos(t+18.4349°)+7.0711cos(2t+8.1301°)

思考題:

(1)對直流分量,我們不用零作為其頻率而用eps(相對精度),是什么原因?(2)如果輸入電壓為us=10+10sin(t),該程序應如何改變?(3)注意比較本程序中最后兩個disp語句的不同。

【例8-1-5】如圖8-8(a)所示電路,設

R1=2Ω,R2=3Ω,R3=4Ω

jXL=j2,-jXC1=-j3,-jXC2=-j5求各支路的電流相量和電壓相量。圖

8-8例8-1-5的電路圖

解:

◆建模先把原圖中的電壓源換成等效的電流源,如圖8-8(b)所示,則導納均為兩并聯元件導納之和,按圖示電源方向,其電流為列出a、b兩點的電流方程這個聯立方程組可寫成矩陣形式:◆MATLAB程序

R1=2;R2=3;R3=4;XL=2;XC1=3;XC2=5;%給出原始數據

us1=8,us2=6;us3=8;us4=15;%給出原始數據

Y1=1/R1+1/(j*XL);

%用復數表示各支路導納

Y2=1/R2-1/(j*XC1);

Y3=1/R3-1/(j*XC2);

A=[Y1+Y2,-Y2;-Y2,Y2+Y3]; %按線性方程組列出ua、ub的系數矩陣

%列出線性方程組右端

B=[us1/(j*XL)+us2/R1;us3/R3+us4/(-j*XC2)-us2/R2];U=A\B;ua=U(1),ub=U(2) %求ua、ubI1=ua*Y1,I2=(ub-ua)*Y2,I3=ub*Y3, %求各支路的II1R=ua/R1,I1L=ua/(j*XL),I2R=(ub-ua)/R2,I2C=(ub-ua)/(-j*XC1),I3R=ub/R3,I3C=ub/(-j*XC2),H=compass([ua,ub,I1,I2,I3]); %畫相量圖,設定此圖的圖柄為Hset(H,′linewidth′,2)%改變相量圖線寬◆程序運行結果

ua=4.8845-0.5981i

ub=5.4874+2.5752i

I1=2.1432-2.7413i

I2=-0.8568+1.2587i

I3=0.8568+1.7413i

I1R=2.4422-0.2990i

I1L=-0.2990-2.4422i

I2R=0.2010+1.0578i

I2C=-1.0578+0.2010i

I3R=1.3718+0.6438i

I3C=-0.5150+1.0975i其相量圖如圖8-9所示。圖

8-9例8-1-5的相量圖

【例8-1-6】圖8-10(a)所示為一個雙電感并聯單調諧網絡,求回路的通頻帶B及滿足回路阻抗大于50kΩ的頻率范圍。解:

◆建模先把回路變換為一個等效單電感諧振回路,把信號源的內阻RS變為并接在該單電感回路上的等效內阻RSE,如圖8-10(b)所示。按照這個等效電路可寫出如下方程。圖8-10例8-1-6的電路圖及等效電路設,則其他兩支路的等效阻抗分別為(設s為拉普拉斯算子)總阻抗是這三個支路阻抗的并聯其諧振曲線可按ZE的絕對值直接畫出。◆MATLAB程序

r1=2;r2=3;L1=0.75e-3;L2=0.25e-3;C=1000e-12;rs=28200;

L=L1+L2;r=r1+r2;rse=rs*(L/L1)^2; %折算內阻

f0=1/(2*pi*sqrt(C*L)) %諧振頻率

Q0=sqrt(L/C)/r,r0=L/C/r; %空載(即不接信號源時)的回路Q0值

re=r0*rse/(r0+rse), %折算內阻與回路電阻的并聯

Q=Q0*re/r0,B=f0/Q, %實際Q值和通帶

s=log10(f0);f=logspace(s-.1,s+.1,501);

w=2*pi*f%設定計算的頻率范圍及數組

z1e=r1+j*w*L;z2e=r2+1./(j*w*C); %等效單回路中兩電抗支路的阻抗

ze=1./(1./z1e+1./z2e+1./rse); %等效單回路中三個支路的并聯阻抗

subplot(2,1,1),loglog(w,abs(ze)),grid%畫對數幅頻特性

axis([min(w),max(w),0.9*min(abs(ze)),1.1*max(abs(ze))])

subplot(2,1,2),semilogx(w,angle(ze)*180/pi)%畫相頻特性

axis([min(w),max(w),-100,100]),grid

fh=w(find(abs(1./(1./z1e+1./z2e))>5e4))/2/pi; %幅特性大于50kΩ的頻帶

fhmin=min(fh),fhmax=max(fh),◆程序運行結果執行此程序所得結果為:

諧振頻率f0=159.15kHz

空載品質因數Q0=200

等效信號源內阻rse=5.0133e+004

考慮內阻后的品質因數Q=40.0853

通頻帶B=3.9704e+003

回路阻抗大于50kΩ的頻率范圍

fhmin=157.7kHz

fhmax=160.63kHz諧振頻率附近的幅頻和相頻特性曲線如圖8-11所示。圖

8-11諧振頻率處的幅頻和相頻特性

【例8-1-7】

圖8-12所示電路中,R1=1Ω,R2=2Ω,C2=0.5F,L=1H,求分別以為輸出時的頻率響應。如把L換成容量為0.25F的電容,也求上述特性。解:

◆建模

MATLAB的一個優點是對同樣結構的網絡可以用統一的程序,如果只改變幾個元件的參數,可以通過輸入語句來實現,我們就按這個辦法來編本題的程序。圖8-12例8-1-17的電路圖先列出方程,設Z21、ZC2分別為L、C2的電抗;Z22為R2與C2串聯的阻抗;Z2為Z21與Z22并聯的阻抗。則可寫出

在分析頻率響應時,要假設輸入信號有很多頻率成分,即ω或f是一個數組,因此MATLAB程序中的所有與ω有關的量(例如Z,

)都應采用元素群運算的運算符。在下面的程序中,第6句之前是輸入參數的語句,第10句以后是繪圖語句,需要讀者仔細消化的核心語句只有第7~9句。◆MATLAB程序

clear,dw=0.1;w=[.2∶dw∶20];s=j*w;us=1;

r1=1;r2=2;C2=0.5;L=1;z21=s*L;

e=input(′輸入元件類型:電感,鍵入1;電容,鍵入2′);

ife==1L=input(′輸入電感量(H)′);z21=s*L;

elseife==2C1=input(′輸入電容量(F)′);z21=1./(s*C1);elsedisp(′元件類型錯誤,程序結束′),break,end

zC2=(1./s*C2);z22=r2+zC2;z2=z21.*z22./(z21+z22) %串并聯計算

uL=us.*z2./(r1+z2);%分壓計算電感上的電壓

uC2=uL.*zC2./z22;%再分壓計算電容上的電壓

subplot(2,2,1),loglog(w,abs(uL)),grid %繪圖,注意subplot用法

subplot(2,2,3),semilogx(w,angle(uL)),grid

subplot(2,2,2),loglog(w,abs(uC2)),grid

subplot(2,2,4),semilogx(w,angle(uC2)),grid◆程序運行結果執行此程序,輸入電感為1H,得出如圖8-13所示的uL和uC2的頻率響應曲線。輸入換成電容后,將得到另外的結果。

【例8-1-8】關于網絡參數的計算。雙口網絡的計算公式本身并不復雜,只是公式多,其中的系數可以是復數,變量可以是相量,因此用MATLAB的復數矩陣計算可以帶來方便,并避免出錯。一個很好的辦法是把這些公式列寫出來,便于編程時直接拷貝調用。圖8-13例8-1-7所示網絡的頻率響應

解:

◆建模

1.關于Z,Y,A,B,H,G等六種網絡參數之間的轉換關系這里本來應該有30種變換關系,用MATLAB表示時,可以簡化為三類:

(1)Z=inv(Y),Y=inv(Z);B=inv(A),A=inv(B);H=inv(G),G=inv(H)。這三對關系是從它們的定義得到的。

(2)A=[Z(1,1),det(Z);1,Z(2,2)]/Z(2,1);

Z=[A(1,1),det(A);1,A(2,2)]/A(2,1)。

(3)H=[det(Z),Z(1,2);-Z(2,1),1]/Z(2,2);

Z=[det(H),H(1,2);-H(2,1),1]/H(2,2)。有了這三組關系,這六種參數中任何兩者之間就都能變換了。例如已知Y陣,要求G陣,可用Z=inv(Y);G=inv([det(Z),Z(1,2);-Z(2,1),1]/Z(2,2))兩個語句求得。

2.關于網絡的實驗和影像參數公式

Zinf=A(1,1)/A(2,1); %Zinf——負載阻抗為∞時的輸入阻抗

Zin0=A(1,2)/A(2,2); %Zin0——負載阻抗為0時的輸入阻抗

Zoutf=A(2,2)/A(2,1);%Zoutf——信號源阻抗為∞時的輸出阻抗

Zout0=A(1,2)/A(1,1);%Zout0——信號源阻抗為0時的輸出阻抗

Zc=sqrt(Zinf*Zin0);Zc=sqrt(Zoutf*Zout0)

%Zc——特性阻抗

gamma=20*log10((sqrt(Zinf)+sqrt(Zin0))/(sqrt(Zoutf)-sqrt(Zout0)))

%gamma=u+jv為傳輸常數,其實部u和虛部v分別為衰減常數(分貝)和相移常數(弧度)。它們都已包含在這個復數公式中,不必分別列寫公式了現在來看一個簡單的數字題,圖8-14所示為雙口網絡,R=100Ω,L=0.02H,C=0.01F,角頻率ω=3001/s,求其Y參數及H參數。◆MATLAB程序

Z參數可以直接寫出,然后求逆即可得Y,程序為

R=100;L=0.02;C=0.01;w=300;z1=r;z2=j*w*L;z3=1/(j*w*C);Z(1,1)=z1+z2;Z(1,2)=z2;Z(2,1)=z2;Z(2,2)=z2+z3;Y=inv(Z),H=[det(Z),Z(1,2);-Z(2,1),1]/Z(2,2),圖

8-14一個雙口網絡圖

◆程序運行結果用formatlong顯示為(只取小數點后10位)Y=0.0099998754+0.0000352937i-0.0105881034-0.0000373698i

-0.0105881034-0.0000373698i0.0112109330-0.1764310202iH=100.00000000-0.3529411765i1.05882352941.05882352940-0.1764705882i8.2晶體管放大電路晶體管放大電路是一門重要的課程,但是將MATLAB應用于這門課的國外書籍卻比較少,其主要原因是:(1)MATLAB比較適合于分析單級電路,但晶體管單級電路又與晶體管的型號及參數有關,所以包含型號庫的專用的電路分析軟件(例如pspice)更為方便。(2)現在電路分析的重點已放在集成電路方面,已經開發了大量高水平的CAD軟件,可以用來進行大規模的電路設計和仿真,MATLAB就更少用武之地了。不過我們覺得,讀者如果能用一種數學軟件來解決大學多門課程的問題,是很有意義的,所以還是舉了幾個例題。

【例8-2-1】設將一個二極管與一電阻Rf串接,在此電路的兩端加上正向直流電壓U0,如圖8-15所示,試求出此電路中的電流Idx和電壓Udx。圖

8-15二極管特性和工作點的確定特性

解:

◆建模二極管正向電流與電壓的關系由下式確定:其中,Is——漏電流,設為10-12A;

K——玻爾茨曼常數,1.38×10-23;

T——絕對溫度;

q——電子電荷1.6×10-19C。負載電阻Rf中的電流Id1隨Ud變化的關系為

Ud-Id曲線為二極管特性曲線,Ud-Id1曲線稱為負載線,兩者的交點Udx、Idx確定了二極管的工作點。◆MATLAB程序

%二極管特性的計算和繪制

K=1.38e-23;T=300;q=1.6e-19;%給定常數

KT=K*T/q;

Is=10e-12;Ud=0∶0.01∶3.5;%給定輸入電壓數組

Id=Is*(exp(Ud/KT)-1); %求特性曲線上對應電流

plot(Ud,Id),gridon

axis([0,max(Ud),0,100]),holdon %規定繪圖范圍,去除太大的電流

%線路圖的繪制line([1.5,1.8],[79,76])fill([1.8,2,2,1.8],[76,72,80,76],′K′)%畫二極管

line([1.8,1.8],[72,80],′linewidth′,2)line([2,2.5],[76,76])line([2.5,2.8,2.8,2.5,2.5],[74,74,78,78,74],′linewidth′,2) %畫電阻

line([2.8,3.1],[76,76])plot([1.5,2.2,3.1],[76,76,76],′o′)text(1.4,70,′o′),text(2.1,70,′Ud′),%標字符

text(2.6,68,′Rf′),text(3,70,′U0′)%負載線的繪制 U0=input(′U0=[伏]′),

Rf=input(′Rf=[歐姆]′) Id1=1000*(U0-Ud)./Rf;%用負載線方程求Id1[毫安]

plot(Ud,[Id;Id1]),gridon %尋找兩曲線差為最小的點作為交點,即工作點 [di,nI]=min(abs(Id-Id1));

%找Id與Id1數組中差為最小的元素值dI及序號nI Udx=Ud(nI);Idx=Id1(nI); dsip(′Udx,Idx=′),[Udx,Idx],holdoff legend(′二極管特性及工作點確定′)%畫圖中標題◆程序運行結果運行上述程序,輸入U0=4V,Rf=51Ω,所得圖形如圖8-15所示。工作點數據為Udx=0.7600VIdx=63.5294mA可以用鼠標來求出交點的坐標,鍵入ginput(1),將鼠標游標移到圖中,會出現一個十字線,將它盡可能準確地對準交點,按下鼠標左鍵,在命令窗中會返回該點的Udx、Idx值。ginput后的參數,說明待求的點數,本例中只找一個交點,故取為1。如果不給參數,只鍵入ginput,則可以在很多點上按鼠標左鍵求坐標,但并不立即顯示,直到按下回車鍵,才一起顯示結果。

【例8-2-2】典型放大器低頻等效電路如圖8-16所示,其元件參數為

C1=10μF,RS=100

Ω,Rb=10kΩ,hie=1000Ω,hfe=100,Re=200Ω,Ce=100μF,Rc=1000

Ω,C2=10μF,RL=2000Ω要求編寫其頻率響應計算程序,并探討C2、Ce對幅頻特性的影響。圖

8-16放大器低頻等效電路

解:◆建模先用節點電位法列寫其方程,設U1、U2、U3,U4如圖8-16所示,這四個KCL方程如下:

(8-3)(8-4)(8-5)(8-6)整理成矩陣形式(注意其中s為拉普拉斯算子),則有寫成a*U=b故U=a\b給定輸入US=1和一個頻率ω,從這個方程組就可解得該頻率輸出的復數解x,它的四個分量分別為該頻率條件下的U1、U2、U3、U4,對于規定的頻率數組作循環,即可求得其頻率響應,包括振幅特性和相位特性。為了探討C2和Ce的影響,可在上述程序的外面,再加兩個改變C2和Ce的循環,由此編成程序如下。◆MATLAB程序

w=logspace(0,3); %規定頻率范圍及數組值(從100~103,按等比取50點)

C1=1e-5;rs=100;rb=1e4;%給元件賦值

hie=1000;hfe=100;us=1;

re=200;rc=1000;C2=1e-5;rL=2000;

forC2=[C2,10*C2]%對C2及10*C2分別循環計算

Ce=1e-4;forCe=[Ce,10*Ce]%對Ce及10*Ce分別循環計算

fori=1∶length(w)%對各個頻率計算各點輸出

s=j*w(i);a11=1/rs+s*C1;a12=-s*C1;%給a矩陣元素賦值

a21=-s*C1;a22=s*C1+1/rb+1/hie;a23=-1/hie;a32=(1+hfe)/hie;a33=-((1+hfe)/hie+1/re+s*Ce);a42=hfe/hie;a43=-hfe/hie;a44=-(1/rc+s*C2./(rL*C2*s+1));

a=[a11,a12,0,0;a21,a22,a23,0;0,a32,a33,0;0,a42,a43,a44];

b=[us/rs;0;0;0];%給b矩陣元素賦值

x=a\b;u(∶,i)=x;%求與第i個頻率對應的四個輸出電壓

ends1=j*w;uL=u(4,∶).*rL./(rL+1./(C2*s1)); %求負載電壓

loglog(w,abs(uL)),grid,holdon %繪對數幅頻特性圖

endendholdoff◆程序運行結果執行此程序所得的結果如圖8-17所示,可以看出,在所給的參數下,把C2加大10倍可把低頻區低端的幅頻特性提高將近10倍,把Ce加大10倍可能在低頻區的高端提高其幅頻特性。圖

8-17C2及Ce對放大器低頻幅頻特性的影響

【例8-2-3】運算放大器電路如圖8-18所示,試分析放大器開環增益和頻率響應對整個電路閉環頻率響應的影響,并繪出曲線。圖

8-18運算放大器等效電路

解:◆建模設運算放大器的開環增益為A,它是頻率的函數,則在圖示的連接方法下,閉環輸出與輸入電壓之比為(8-7)在增益A很大時,分母上的第二項可以忽略不計,因而得出理想運放的閉環傳遞函數(8-8)式中的s為拉普拉斯算子,將它換成jω,就得出頻率響應,所以這兩個式子都是復數方程。根據題意,要考慮A=A(ω)對H(ω)的影響,計算將十分冗繁,利用MATLAB可以方便快速地解決這個問題,但必須給出具體數據求數值解。

通常,運算放大器的開環傳遞函數中包括三個實極點,即其中ω1<ω2<ω3,取負號后為其三個極點,A0為直流增益。為了避免自激,通常使ω1和ω2差得很大,例如ω1<5001/s,ω2>1061/s,而且ω2和ω3也要拉開。現設ω1=500,ω2=2×106,ω3=5×107

,并設Z1=2kΩ,Z2取三種值:20kΩ、100kΩ和500kΩ,求H(ω)并繪出曲線。◆MATLAB程序

%運算放大器有限增益和頻率響應對電路特性的影響

Z2=[20,100,500]*1000;Z1=2000;%設定元件參數

A0=2e6;w1=500,w2=2e6;w3=5e7;

w=logspace(2,8);%設定頻率數組

b=A0*w1*w2*w3;

a=poly([-w1,-w2,-w3]); %列出運算放大器分子分母系數向量

A=polyval(b,j*w)./polyval(a,j*w); %求放大器開環頻率響應

fori=1∶3 %循環計算三種Z2的閉環響應

Z12(i)=Z2(i)/Z1;

H(i,∶)=-Z12(i)./(1+(1+Z12(i))./A);%放大器閉環響應

semilogx(w,abs(H(i,∶))),holdon%畫出頻率-增益曲線

end

v=axis;axis(v); %保持w坐標

semilogx(w,abs(A))%畫出開環頻率-增益響應

holdoff◆程序運算結果運行這一程序得到如圖8-19所示的曲線,其中虛線是開環頻率響應,在低頻段它趨向于無窮大;三條實線是Z2分別取500kΩ、100kΩ、20kΩ時的閉環頻率響應。可以看出,此運放在低頻區較寬的一個頻帶內具有平坦的增益Z2/Z1,但在高頻區卻出現了諧振峰,這也就容易造成運算放大器的自激現象。消除自激的方法,可以是減小ω1,或加大ω2、ω3。因為ω2、ω3是由放大器型號的性能確定的,在放大器已經選定的情況下,通常只能用加消振電容的方法減小ω1,比如本題中把ω1由500減小為50,其他參數不變,則所得的頻率響應如圖8-20所示。可見,它大大減小了自激的可能。圖

8-19運算放大器的閉環頻率響應

8-20將ω1減小10倍的H(ω)8.3電力電子和電機

【例8-3-1】一個可控硅全波整流器,要求找出負載上得到的有效值電壓與點火角(1°~180°)的函數關系,并畫出曲線。解:

◆建模因為是全波整流,只要研究半個周波即可,其關鍵是如何用數組表示不連續波形。周期為T的電壓的有效值定義為

這里用的周期是半波,即相角φ=ωt取π作為周期T。將π分成180份,來表達可控硅負載電壓波形,如圖8-21所示。對應于程序中的waveform數組,它前一段為0,后一段為正弦波,對該數組先進行元素群平方運算,相加平均,再做開方運算,便可得到有效值。對不同的點火角進行循環計算,就可以畫出有效值與點火角之間的關系。◆MATLAB程序

clear

wt=[1∶180]*pi/180; %把半個周波分割為180份

volts=220*sqrt(2)*sin(wt); %完整的半波波形

forii=1∶180 %對不同點火角ii循環計算

waveform=[zeros(1,ii-1),volts(ii∶180)]; %求不同點火角ii時的波形

ifii==45waveform45=waveform;end %記錄點火角為45°時的波形

temp=sum(waveform.^2);%計算各點波形的平方積分

rms(ii)=sqrt(temp/180);%計算積分的均方根

end

%畫負載上的有效值電壓與點火角關系曲線

plot([1∶180],rms,′linewidth′,2.0);

%下一條語句中的“\bf”表示用粗體字

legend(′\bf負載電壓有效值(v)′);

gtext(′\bf點火角(度)′);

gridon;pause

%畫點火角為45°時負載上的電壓波形

figure(2)

plot(wt,waveform45,′linewidth′,2.0);

%下一條語句中的\omega和\itt說明如何標注希臘字母ω和t

gtext(′\bf\omega\itt\rm弧度′);

gridon;◆程序運行結果執行這個程序所得的結果如圖8-21及圖8-22所示。

【例8-3-2】用MATLAB語言演示感應電動機三相定子磁場的合成。說明其磁場矢量如何合成為旋轉磁場,程序具有一定的動畫效果,讀者可從中學習到編寫動畫程序的一些技巧。圖8-21點火角為45°時的電壓波形圖8-22電壓有效值與點火角關系

解:

◆建模感應電動機的定子由三組空間上相差120°的繞組和磁極組成,如圖8-23的aa′、bb′、cc′所示。在三個繞組上依次加有120°相位差的勵磁電壓,就可以形成一個在空間旋轉的磁場。利用MATLAB來演示這一過程特別有效:

(1)利用MATLAB的復數功能,描述三個磁極在空間不同方向產生的磁場。

(2)利用時間數組來描述三個繞組中電流和磁場的相位變化。

(3)把三個磁場作向量相加,即可求得合成磁場。

(4)利用MATLAB的繪圖和動畫功能顯示磁場的運動。根據這個思路來編寫MATLAB程序較為容易。圖

8-23三相磁極

◆MATLAB程序

clear,clf

I=10;freq=50;w=2*pi*freq;%50Hz角頻率(rad/s)

t=0∶1/5000∶2/50;

%Ia、Ib、Ic是相位差為120°的三相電流

Ia=I*sin(w*t);Ib=I*sin(w*t-2*pi/3);Ic=I*sin(w*t+2*pi/3);

%三個磁場分量在空間差為120°時的表達式,用復數概念

kmag=1/I;%選適當的繞組常數,把最大磁場歸一化為1

Baa=kmag*Ia*(cos(0)+j*sin(0));%a磁場空間方向為0°

Bbb=kmag*Ib*(cos(2*pi/3)+j*sin(2*pi/3));%b磁場方向為pi/3

Bcc=kmag*Ic*(cos(-2*pi/3)+j*sin(-2*pi/3));%c磁場方向為-pi/3Bnet=Baa+Bbb+Bcc;%計算合成磁場

%分別畫出合成磁場Bnet和三相磁場Baa、Bbb、Bcc的矢量幅值和方向

%Bnet為紅色,Baa為黑色,Bbb為藍色,Bcc為品紅色

forii=1∶length(t)

plot(Bnet,′k′);%畫出合成磁場向量端點的軌跡,它是一個圓

holdon;

%畫出四個磁場相量,前三個方向固定,大小隨時間變化,第四個為合成磁場

plot([0real(Baa(ii))],[0imag(Baa(ii))],′k′,′LineWidth′,2);

plot([0real(Bbb(ii))],[0imag(Bbb(ii))],′b′,′LineWidth′,2);plot([0real(Bcc(ii))],[0imag(Bcc(ii))],′m′,′LineWidth′,2);plot([0real(Bnet(ii))],[0imag(Bnet(ii))],′r′,′LineWidth′,3);axissquare;axis([-2,2,-2,2]);drawnow;holdoff;end圖8-24三相交變磁場合成旋轉磁場(三個方向相差120°的磁場向量和為Bnet)◆程序運行結果執行此程序,將得到一個演示旋轉磁場的動畫,圖8-24給出了其中一個畫面,Baa、Bbb、Bcc表示三個方向固定、在空間上夾角為120°的磁場,它們的大小和正負號按交流電流的正弦波變化,相位互差120°,三者的向量和就形成了一個在空間旋轉的磁場。在程序中要注意drawnow的用法,通常MATLAB采用先計算、后畫圖的順序,在程序中即使出現畫圖命令,它也只把數據存起來,作好畫圖準備,繼續進行計算,直到程序暫停或結束時才統一畫圖。在顯示動畫時,這種做法就不行了,必須算出后立即顯示,故要加drawnow命令。但程序執行的速度將大大下降。在編動畫程序時還要注意的是holdon和holdoff命令放置的位置。實際程序中還應有能顯示磁極位置的語句,沒有在書中列出。

【例8-3-3】感應電動機機械特性曲線繪制。

解:

◆建模感應電動機中任一相的等效電路如圖8-25(a),其中S為轉差率。再用戴文寧定理依次等效為圖8-25(b)和(c),根據此圖列寫方程如下:

8-25感應電動機等效電路

由最后的等效電路可得消耗在轉子回路中的總功率(三相功率總和)P2e=3|I2e|2·R2e

電磁轉矩與同步角速度的乘積等于電磁場功率,故有torque=P2e/wsync◆MATLAB程序

%程序中盡量直接用復數計算阻抗,并利用元素群計算以簡化程序

clear,fvolt=50;%電源頻率

r1=0.641;x1=1.106;z1=r1+j*x1;%定子相繞組電阻和電抗

r2=0.332;x2=0.464;z2=r2+j*x2;%轉子等效電阻和電抗

rm=2.5;xm=26.3;zm=rm+j*xm;%磁化支路等效電阻和電抗

uph=380/sqrt(3); %相電壓(u)p=2,nsync=fvolt/p*60;%同步轉速(r/min)(p=2,雙極電機)

wsync=nsync*2*pi/60;%同步角速度(rad/s)%計算A、B兩點之間電壓uab和阻抗zabuab=uph*zm/(z1+zm);zab=zm*z1/(z1+zm);forr2=[r2,2*r2]

%求給定內阻及內阻加倍兩種電機轉矩與轉速關系

s=(eps∶1

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論