Exercise 37

As with all of the exercises you will complete in this course, you will be expected to turn your *.nb file in to the course TA before the next lecture.  Please do so by e-mailing your completed exercise file to Lan Yu (ece329.uiuc@gmail.com), make sure you name the file using the following notation: “Exn_Last_First.nb”, where n is the Exercise number (in this case, 37), and First and Last would be your first and last name.  So my submission to Lan for this exercise would be titled “Ex37_Wasserman_Dan.nb”.  You will receive full credit for your exercise if it turned in before the next lecture (Lecture n+1).  No late submissions will be accepted.

Objective/Overview:

Today in class we discussed methods for impedance matching of TLs.  In particular, we discussed using λ/4 transformers and single-stub tuning approaches for impedance matching.  The λ/4 transformer works well for real loads ((Subscript[Z, L])=(Subscript[R, L])), but requires a λ/4 transformer with a complex characteristic impedance in order to impedance match a complex load.  The single stub tuning approach can handle reactive loads ((Subscript[Z, L])=(Subscript[R, L])+(Subscript[jX, L])), but requires that we move the stub along the TL in order to achieve impedance matching.  In today’s class we will write code to represent the single stub tuning method, and then you will develop code for a double-stub tuner which allows you to place two stubs, permanently, along the TL and only have to change their lengths in order to impedance match!

Single Stub Tuning

We are going to use the Smith Chart to represent, graphically, the single stup tuning approach to impedance matching.  If you remember from class, the Smith Chart is a graphical tool that helps us move back and forth between the complex line impedance (z(d)=r(d)+j*x(d)) and the complex line reflection coefficient (Γ(d)).  In class we worked out the relationship between x and r and (Subscript[Γ, r]) and (Subscript[Γ, i]), the real and imaginary components of the line impedance.  We already know that using a Smith Chart, we can effectively ‘replace’ a section of TL with an effective input impedance.



If we add a shorted stub to the the TL, then we need to add the input admittance of the stub to the admittance of our TL where the stub is attached, in order to find the total impedance at that point.  The figure below shows the basic approach to single-stub tuning: 

The basic idea is to choose (Subscript[d, 1]) and (Subscript[ℓ, s]) such that the sum of the admittances (of the stub and the TL) at (Subscript[d, 1]) gives an admittance (Subscript[y, IN])((Subscript[d, 1]))=1/(Subscript[z, o]).
Let’s see if we can do this with a manipulate plot.  Let’s first generate our Smith Chart:

p1=Graphics[Table[Circle[{r/(r+1),0},(1/(r+1))],{r,{0,.25,.5,1,2,5}}]];

p2=Graphics[Table[Circle[{1,1/x},Abs[1/x]],{x,{5,2,1,.5,.25,.01,-5,-2,-1,-.5,-.25,-.01}}]];

smith1=Show[p1,p2, Axes->True ,AxesLabel-> {(Subscript[Γ, r]),(Subscript[Γ, i])},PlotRange->{{-1,1},{-1,1}}]

We can then write an expression that calculates the input impedance for a TL with a load impedance (Subscript[Z, L]) and length (Subscript[d, 1]):

stub1a[zo_,zLre_,zLim_,d1_]:=(
zL=zLre+I*zLim; (*write load impedance in terms of real and imaginary components*)
zLnorm=zL/zo;gamL=(zL-zo)/(zL+zo);p3=Graphics[{PointSize[Large],Red,Point[{Re[gamL],Im[gamL]}]}];(*Plot (Subscript[Γ, L])*)
p4=Graphics[Text[{"(Subscript[Γ, L])=",gamL},{Re[gamL],Im[gamL]+.1}]]; (*Label (Subscript[Γ, L]) *)
gamd1=gamL*Exp[-2*I*2*Pi*d1];  (*determine Γ((Subscript[d, 1]))*)
zd1=(1+gamd1)/(1-gamd1);(*determine z((Subscript[d, 1]))*)
p5=Graphics[{PointSize[Large],Blue,Point[{Re[gamd1],Im[gamd1]}]}];
p6=Graphics[Text[{"(Subscript[Γ, d1])=",gamd1},{Re[gamd1],Im[gamd1]-.1}]];
p7=Graphics[Text[{"(Subscript[z, d1])=",zd1},{.85,1}]];
p8=Graphics[Text[{"(Subscript[y, d1])=",1/(zd1)},{.85,.8}]];
p9=Graphics[{Red,Circle[{0,0},Abs[gamd1]]}];p10=Graphics[{Blue,Circle[{0,0},Abs[gamL],{Arg[gamL],Arg[gamd1]}]}];
Show[p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,Axes->True ,AxesLabel-> {(Subscript[Γ, r]),(Subscript[Γ, i])},PlotRange->{{-1,1},{-1,1}}])

Manipulate[stub1a[zo,zLre,zLim,d1],{zo,50},{zLre,50},{zLim,50},{d1,0,1,.001}]

This is super-cool!  We can input any line impedance and load impedance, and then see the input impedance and admittance of the line at any distance (Subscript[d, 1]) from 0...λ from the load.
Let’s take the same function and add the shunt TL!  The load impedance of the shunt is (Subscript[Z, L,s])=0, which means that (Subscript[Γ, L,s])=-1.  So the line reflection coefficient of the shunt is Γ((Subscript[l, s]))=-(e^(-(Subscript[j4πl, s]))).

stub1b[zo_,zLre_,zLim_,d1_,ls_]:=(
zL=zLre+I*zLim; (*write load impedance in terms of real and imaginary components*)
zLnorm=zL/zo;gamL=(zL-zo)/(zL+zo);p3=Graphics[{PointSize[Large],Red,Point[{Re[gamL],Im[gamL]}]}];(*Plot (Subscript[Γ, L])*)
p4=Graphics[Text[{"(Subscript[Γ, L])=",gamL},{Re[gamL],Im[gamL]+.1}]]; (*Label (Subscript[Γ, L]) *)
p5=Graphics[Text[{"(Subscript[Z, L])=",zL},{Re[gamL],Im[gamL]+.25}]]; (*Label (Subscript[Z, L]) *)
gamd1=gamL*Exp[-2*I*2*Pi*d1];  (*determine Γ((Subscript[d, 1]))*)
zd1=(1+gamd1)/(1-gamd1);(*determine z((Subscript[d, 1]))*)
p5=Graphics[{PointSize[Large],Blue,Point[{Re[gamd1],Im[gamd1]}]}];
p6=Graphics[Text[{"(Subscript[Γ, d1])=",gamd1},{Re[gamd1],Im[gamd1]-.1}]];
p7=Graphics[Text[{"(Subscript[z, d1])=",zd1},{.85,1.5}]];
p8=Graphics[Text[{"(Subscript[y, d1])=",1/(zd1)},{.85,1.3}]];
p9=Graphics[{Red,Circle[{0,0},Abs[gamd1]]}];p10=Graphics[{Blue,Circle[{0,0},Abs[gamL],{Arg[gamL],Arg[gamd1]}]}];
gamls=-1*Exp[-2*I*2*Pi*ls];  (*determine Γ((Subscript[l, s]))*)
zls=(1+gamls)/(1-gamls);(*determine z((Subscript[l, s]))*)
p11=Graphics[{PointSize[Large],Green,Point[{Re[gamls],Im[gamls]}]}];
p12=Graphics[Text[{"(Subscript[Γ, ls])=",gamls},{Re[gamls],Im[gamls]-.1}]];
p13=Graphics[Text[{"(Subscript[z, ls])=",zls},{-.85,1.5}]];
p14=Graphics[Text[{"(Subscript[y, ls])=",1/(zls)},{-.85,1.3}]];
p15=Graphics[{Green,Circle[{0,0},Abs[gamls]]}];p16=Graphics[{Purple,Circle[{0,0},Abs[gamls],{Arg[gamls],Arg[gamls]}]}];
Show[p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,p16,Axes->True ,AxesLabel-> {(Subscript[Γ, r]),(Subscript[Γ, i])},PlotRange->{{-1.5,1.5},{-1.5,1.5}}])

Manipulate[stub1b[zo,zLre,zLim,d1,ls],{zo,50},{zLre,50},{zLim,50},{d1,0,1,.001},{ls,0.001,.5,.001}]

How do we use this to impedance match?  It’s actually pretty straightforward, and we can do it in a few easy steps.
1) Input (Subscript[Z, L]) and (Subscript[Z, o]) into your plot.
2) Step (Subscript[d, 1]) until the real part of (Subscript[y, d1]) is one.  In other words, (Subscript[y, d1])=1+jb.
3) Then step (Subscript[l, s]) until the imaginary part of (Subscript[y, ls]) is -b.  In other words, (Subscript[y, d1])=-jb.
4) The admittance of the line for the (Subscript[d, 1]) and (Subscript[l, s]) you have chose will be (Subscript[y, total])=1+jb-jb=1, and the impedance will then be (Subscript[z, total])=1.  You are now impedance matched!!
Using the program above, determine the (Subscript[d, 1]) and (Subscript[l, s]) you need to impedance a line with characteristic impedance (Subscript[Z, o])=75 and a load impedance (Subscript[Z, L])=34+j12.  Give your answer below:

Double Stub Tuning

Double stub tuning works much the same way as single stub tuning, except, of course, one has two stubs instead of one.  The nice thing about double stub tuning is that one can fix the position of the stubs, and then adjust stub length to impedance match.
Below, write code for calculating the impedance of a double-stub structure, as shown below.  In this system, your inputs will be (Subscript[Z, L]), (Subscript[Z, o]) and (Subscript[l, s1]) and (Subscript[l, s2]).  Assume that your first stub is at position (Subscript[d, 1])=λ/4 and (Subscript[d, 2])=(Subscript[d, 1])+3λ/8=5λ/8.  You don’t need to show your steps on the Smith Chart, if you don’t want to, but you should print out at least the total admittance/impedance at d2.

stub2a[zo_,zLre_,zLim_,ls1_,ls2_]:=(
zL2=zLre+I*zLim; (*write load impedance in terms of real and imaginary components*)
zLnorm2=zL/zo;gamL2=(zL2-zo)/(zL2+zo);
gam2d1=gamL2*Exp[-2*I*2*Pi*0.25];  (*determine Γ((Subscript[d, 1])=0.25)*)
z2d1=;(*determine z((Subscript[d, 1])=0.25)*)
y2d1=;
p17=Graphics[Text[{"(Subscript[z, d1])=",z2d1,"(Subscript[y, d1])=",y2d1},{0,1}]];
gamls1=;  (*determine Γ((Subscript[l, s1]))*)
zls1=;(*determine z((Subscript[l, s]))*)
yls1=;
p18=Graphics[Text[{"(Subscript[z, ls1])=",zls1,"(Subscript[y, ls1])=",yls1},{0,.8}]];
y2d1tot=;
z2d1tot=;
p19=Graphics[Text[{"(Subscript[z, d1tot])=",z2d1tot,"(Subscript[y, d1tot])=",y2d1tot},{0,.6}]];
gam2d1tot=;
gam2d2=;  (*determine Γ((Subscript[d, 2])=(Subscript[d, 1])+3/8)*)
z2d2=;(*determine z((Subscript[d, 1])=0.25)*)
y2d2=;
p20=Graphics[Text[{"(Subscript[z, d2])=",z2d2,"(Subscript[y, d2])=",y2d2},{0,.4}]];
gamls2=;  (*determine Γ((Subscript[l, s2]))*)
zls2=;(*determine z((Subscript[l, s]))*)
yls2=;
p21=Graphics[Text[{"(Subscript[z, ls2])=",zls2,"(Subscript[y, ls2])=",yls2},{0,.2}]];
y2d2tot=;
z2d2tot=;
p22=Graphics[Text[{"(Subscript[z, d2tot])=",z2d2tot,"(Subscript[y, d2tot])=",y2d2tot},{0,0}]];
Show[p18,p19,p20,p21,p22,PlotRange->{{-1,1},{-1,1}}])

Manipulate[stub2a[zo,zLre,zLim,ls1,ls2],{zo,50},{zLre,50},{zLim,50},{ls1,0.001,.5,.001},{ls2,0.001,.5,.001}]

Using the program above, determine the (Subscript[l, s1]) and (Subscript[l, s2]) you need to impedance match a line with characteristic impedance (Subscript[Z, o])=75 and a load impedance (Subscript[Z, L])=34+j12.  I would try to adjust (Subscript[l, s1]) until the real part of the impedance is 1, then go back and adjust (Subscript[l, s2]) to minimize the imaginary component of impedance.  This will change the real part slightly, so you then have to tweak (Subscript[l, s1])...continue in this manner until you have a real part of 1 and an imaginary part of 0.  It shouldn’ take too long.  Give your answer below: