信息和通信工程学院
微波期中作业试验汇报
班级:211116
姓名: 黄常凯
学号:210456
序号: 05
日期:15.06.10
目录
一、 二、 三、 1、 | 试验目标:........................................................................................................................试验要求............................................................................................................................试验原理............................................................................................................................ 圆图绘制:.................................................................................................................... |
2、单支节并联匹配原理:......................................................................................................
3、双支节并联匹配原理:......................................................................................................
四、 | 软件步骤图........................................................................................................................ |
五、 | 使用说明............................................................................................................................ |
六、 七、 | 心得体会............................................................................................................................ |
| |
摘要本试验经过MATLAB软件绘制Smith圆图,并进行单、双支节匹配演示。关键词:MATLABSmith圆图单支节匹配双支节匹配
一、试验目标:
2、学会使用史密斯圆图分析问题;1、了解史密斯圆图原理和作用;
二、试验要求 |
1、经过软件编程实时显示史密斯圆图和归一化阻抗值;
2、实时显示导纳圆图和归一化阻抗值;
3、实现驻波系数,反射系数模和幅角可视化计算;
4、实现传输线输入阻抗可视化计算;
5、实现并联单支节匹配长度和支节位置计算;
6、实现并联双支节匹配长度计算。
三、试验原理
a:
求反射系数公式。在ConvertZ2AbsL等函数中用到
b:
求反射系数模,在[AbsL,Ph]函数中用到。
|
求输入阻抗,在双支节匹配中,由y1旋转到y1‘用到,用于求第一个直接匹配后导纳。
d:
| |
用于计算按钮中,求驻波比和K。
e:
单支节匹配中用于解析法求distance和length函数中用到。
输入阻抗虚部不为0 时用到。 1
|
f:
关键用于绘制圆函数,很关键。
1、圆图绘制:
给定输入阻抗值和传输线特征阻抗,即可求得归一化阻抗
~ | | Z | L | | ~ | | j | ~ | | r | | jx | 。则能够分别绘出等 圆,等 圆及依据算出来 | | 2 | 绘出等 |
L | | Z | o | | | | | | | | | | RX | | | |
反射圆。
等R圆和等X圆方程以下:
| | | ~ | | ) | 2 | | | 2 | | | 1 | | ( | | | 1 ) | 2 | | ( | | | 1 | ) | 2 | | ( | 1 | ) | 2 | ||
| u | | ~ | | 1 | | | | v | | | ~ | | 1 ) | 2 | | u | | | | | | v | | ~ | | | | | ~ | | |
2、单支节并联匹配原理:
当负载阻抗表示为 ( R jX )jZ m 时,则距负载距离为d 处传输线 ~ Z L R ( XZ o m ) , Z o [ R ( XZ o m ) ] 。为取得匹配负载,选 | |||||||||||||||||||||||||||||||||||||||||||||||
择 | d 使 | G | | Y o | | 1 | , | 则 | m 二 | 次 | | 程 | |||||||||||||||||||||||||||||||||||
Z | o | 方 | |||||||||||||||||||||||||||||||||||||||||||||
Z | o | ( | R | | Z | o | ) | m | 2 | | 2 | X Z | o | m | | ( | R Z | o | | R | 2 | | X | 2 | ) | | 0 | ,对m 求解给出 | |||||||||||||||||||
| m | | X | | o | R [( | Z | o | | R | ) | 2 | | X | 2 | ] | / | Z | o | ( | R | | Z | o | ) | ||||||||||||||||||||||
R | | Z | o | ||||||||||||||||||||||||||||||||||||||||||||
m | | | X | ||||||||||||||||||||||||||||||||||||||||||||
2 | Z | | ( | R | | Z | o | ) | |||||||||||||||||||||||||||||||||||||||
所以,m两个解为:
d d | | 1 2 | m | ) | m | )] | ( | m | | 0 ) | | m | | | Z | | | Xm | )( | X | | Z | | | | | |||||||||||
|
| arctan( | |||||||||||||||||||||||||||||||||||
| | 2 | | | ( | m | | 0 ) | | ( | o | o | m | ) | | ||||||||||||||||||||||
B | | R | 2 | ||||||||||||||||||||||||||||||||||
为求出匹配支节长度,先要得到m 代入 | | | | Z | o | 2 | [ | R | 2 | | ( | X | | Z | o | m | ) | 2 | ] | | | 中求出B, | |||||||||||||||
然后令支节输入端电纳等于-B。
| L o | | | 1 2 | B | ) | ||
支节为开路线时长度为 | | | | Y o | | |||
| ||||||||
| Y o | ) | ||||||
支节为短路线时长度为 | | 2 | B | | | |||
假如上面两式求出长度是负值,只需加上 | 2 | 即可。 |
传输线相连接位置会随负载位置而发生改变,这对同轴线、带线等传输形式就不方便了。处
和波导,采取段路线更为适宜,因为开路线很轻易产生辐射,使得开路支节不再是纯电抗。 | ||
3、双支节并联匹配原理:
(在程序中我们固定第一调配支节在负载处,即令 | d | 1 | 为0,同时选择两支节之间距 |
离 | d | 2 | 为 | 8 | ) | |||||||||||||||||||||||||||||||||||
在第一支节左边,输入导纳可表示为: | Yb | | G | | j | ( | B | | B | 2 | ) | ,式中, | YL | | G | | jB | |||||||||||||||||||||||
是负载导纳, | jB | 2 | 是第一支节输入电纳,向电源方向走过 | d | 2 | 到第二支节右边时,输入导 | ||||||||||||||||||||||||||||||||||
纳可表示为 | Y 3 | | Y o | G | | j | ( | B | | B | 2 | | Y o | m | ) | ) | ,式中, | m | | tan(下载高清d 2 ),Z o。要匹 | ||||||||||||||||||||
| Y o | | jm | ( G | | jB | | jB | 2 | |||||||||||||||||||||||||||||||
配成功,则在该点 | Y 3 | 实部必需等于 | Y o | ,由此导出方程: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
G | 2 | | GY o | 1 | | m | 2 | | ( Y o | | Bm | | B | 2 | m | ) | 2 | | 0 | 。再由已知 | d | 2 | 和上式一起确定第一支节输 | |||||||||||||||||||||||||||||||||||||||||||||||||||||
| m | 2 | m | 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
入电纳: | B | 2 | | | B | | Y o | | ( 1 | | m | 2 | ) | GY o | | G | 2 | m | 2 | ,然后,令 | Y 3 | 虚部等于第二支节电 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
m | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
纳负值,便可求出第二支节电纳值为 | B | 4 | | | Y o | ( 1 | | m | 2 | ) | GY o | | G | 2 | m | 2 | | GY o | 。在求 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Gm | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
出 | B 2 | 和 | B | 4 | 中,正负号分别对应同一组解。利用 | B | B | 2 | 或 | B | B | 4 | 能够分别求出两个匹配 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
支节长度 | L 1 | 和 | L 1 | : | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
支节为开路线时长度为 | L | 1 2 | B | ) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Y o | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
支节为短路线时长度为 | L 1 Y
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
www.taod | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| | | | 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
d | 2 | < | 2 | ,但靠近0 或 | 2 | 时,会使匹配网络对频率敏感,通常取为 | 8 | 、 | 2 | 或 | 8 | 。决 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
定辅助圆位置两支节之间距离 | d | 2 | 标准上能够任意选择,但只有当辅助圆和 | ~ | | g | 1 | | jb | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
中等 | g 1 | 圆有交点时,才能实现阻抗匹配。实际上,当 | d | 2 | 和第一支节到负载距离 | d | 1 | 确定 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
后,不是对任意负载全部能使对应等 | g 1 | 圆和辅助圆相交,这就是双支节匹配“盲区”。处 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
理“盲区”有效方法是采取三支节匹配器
四、软件步骤图
Main函数
主函数开始
绘制圆图 | 单支节匹配 | 双支节匹配 |
plot__circle | plot_single_fun | plot_double_fun |
始化
circle 子函数 | 取得Zo,ZL | Y | single_match 函数 |
circlefun 子函数 N | 值符合 | ||
计算ρ,R,X | 取得Zo,ZL | ||
Z0,Zl计算匹配点位置 |
提醒犯错信息
在圆图上画出匹配点
用子函数画圆图
返回,并输出计算结果
double_match函数
传入Zo,ZL
计算匹配点位置
在圆图上画出匹配点
返回
传入已求Z0,R,X
将上值带入求单支节匹配位置公式
返回各位置值。
五、使用说明
将上值带入求双支节匹配位置公式
返回各位置值。
在传输线计算结果中,Inf 表示无穷,NaN 表示不存在这个数。
点击main.exe,则出现以下界面:
自己填入负载电阻R 和电抗X,和传输线特征阻抗Zo:
该程序能够实现以下计算及输出:
(1)绘制圆图:依据输入负载和特征阻抗,绘出阻抗圆图;给出终端反射系数 | | 2 | 、行波 | ||||||
系数 | 、距终端最近电压波节点 | L min | 和电压波腹点 | L max | ;并给出单节 | 4 | |||
在阻抗圆图上,蓝色圆分别表示等R圆、等X圆,黑色实线圆表示等反射圆,绿色五
角星表示负载在圆图上位置。由蓝色实线能够确定负载电刻度(假如R、X或Zo输入不是
实数,则会出现错误提醒)。 | ||||||||
(2)单支节并联匹配:依据输入负载和特征阻抗,绘出导纳圆图;给出终端反射系数 | | 2 | 、 | |||||
行波系数 | 、距终端最近电压波节点 | L min | 和电压波腹点 | L max | ;并给出单支节并联匹配情 | |||
况(包含短路和开路支节匹配位置和长度)。 | ||||||||
在导纳圆图上,蓝色圆分别表示等G圆、等B圆,黑色实线圆表示等反射圆,等G圆
和等反射圆交点处绿色五角星代表负载在圆图上位置,和这个五角星相关等反射圆对称另一 个绿色五角星代表负载阻抗在圆图上位置。青色圆表示g=1 匹配圆。两 (3)双支节并联匹配:依据输入负载和特征阻抗,绘出导纳圆图;给出终端反射系数2、 | |||||
行波系数 | 、距终端最近电压波节点 | L min | 和电压波腹点 | L max | ;并给出双支节并联匹配情 |
况(包含短路支节匹配位置和长度)。 | |||||
在导纳圆图上,蓝色圆分别表示等G圆、等B圆,黑色实线圆表示等反射圆,等G圆
和等反射圆交点处绿色五角星代表负载在圆图上位置,和这个五角星相关等反射圆对称另一 | |||||
个绿色五角星代表负载阻抗在圆图上位置。两个青色圆分别表示g=1 匹配圆和 | 8 | ||||
等G 圆和 | 8 | ||||
电刻度。两个蓝色五角星顺时针旋转 | | ,得到红色五角星即是第二支节匹配点,而两条红 | |||
2 | |||||
色直线分别标出了其电刻度。当等G 元圆和 | | ||||
“盲区”,程序会自动给出提醒。同时在圆图上只画出导纳示意图。(假如R、X 或Zo 输入 | |||||
不是实数,则会出现错误提醒)。 |
六、演示步骤截图
界面以下图所表示,现已完成负载阻抗ZL=(30+j45)Ω,特征阻抗Zo=100Ω单双枝节并联匹配为例,第一步,绘制史密斯圆图,在图中绿色交点即为归一化负载阻抗点。
第二步,单击单枝节匹配,史密斯圆图下方显示出了匹配点距离负载距离和并联短路线 |
或开路线长度。一共有两组解。
显示中小方格其实是汉字字符,但因为本人电脑上matlab版本和win7专题兼容不好,造成汉字字符显示不全,完整截图内文字应该是: “在d1= 0.35471λ处并接入长度为Ls=0.0926λ短路支节,或Lo= 0.34265λ开路支节
可实现匹配,或在d2 =0.0013178λ处并接入长度为Ls = 0.40735λ短路支节,或Lo = 0.15735λ |
开路支节可实现匹配”
第三步,单击双枝节匹配,其中d1+0,d2=λ/8。也是一共有两组解,也是有显示上
问题,完整文字应该是:
“在负载处并入长度为0.45616λ短路支节,再在d=λ/8处并入长度为0.42539λ短路支节就可实现匹配,或在负载处并入长度为0.40828λ短路支节,再在d=λ/8处并入长度为0.25403λ短路支节就可实现匹配”
这次试验是我从未碰到过,难度之大超出了我能力范围,所以这次试验也是在很多同学
帮助下才得以完成,而且完成得并不是很好。因为我编程能力并不是很好,所以并没能实现
全部功效,期望老师谅解。以后我还要愈加努力学习射频知识和matlab,争取下次假如碰到
这种试验时能做得愈加好。
八、参考文件
《微波技术基础》 | 李秀萍著电子工业出版社 | 高等教育出版社、 | |
《MATLAB 程序设计和应用》 | 刘卫国陈昭平张颖 | ||
九、部分代码(单双支节匹配部分)
functionsmithfun(action)
ifnargin<1
action='initialize';
end
ifstrcmp(action,'initialize')
%建立用户控件界面
clfreset;
set(gcf,'menubar','none');
set(gcf,'defaultuicontrolunits','normalized');
set(gcf,'resize','off');set(gcf,'defaultuicontrolhorizontal','left'); set(gcf,'unit','normalized','position',[0.2,0.2,0.5,0.6]); |
H_axes=axes('position',[0.08,0.35,0.6,0.6],'xlim',[-1,1],'ylim',[-1,1]);
%生成框架控件
H_fig=get(H_axes,'parent');
H=uicontrol(H_fig,'style','frame','position',[0.72,0.05,0.25,0.65
]); H=uicontrol(H_fig,'style','frame','position',[0.72,0.75,0.25,0.2] |
);
H=uicontrol(H_fig,'style','frame','position',[0.08,0.05,0.6,0.2])
;
%生成静态文本控件(显示作者姓名)
H=uicontrol(H_fig,'style','text','unit','normalized','position',[
0.73,0.88,0.22,0.05],'fontname','微 | 软 | 雅 | 黑 |
','fontsize',12,'horizontal','left','string',{'210579号邵熠'});
H=uicontrol(H_fig,'style','text','unit','normalized','position',[
','fontsize',12,'horizontal','left','string',{'210581号何凡 '}); 0.73,0.82,0.22,0.05],'fontname','微 雅 | 黑 |
0.73,0.76,0.23,0.05],'fontname','微 软 雅 黑 | |
','fontsize',12,'horizontal','left','string',{'210582号刘谋亚'});
%生成静态文本控件
H=uicontrol(H_fig,'style','text','unit','normalized','position',[
0.73,0.63,0.20,0.05],'fontname','微 | 软 | 雅 | 黑 |
','fontsize',12,'horizontal','left','string',{' ZL = | '}); | ||
H=uicontrol(H_fig,'style','text','unit','normalized','position',[
0.73,0.55,0.20,0.05],'fontname','微 软 雅 黑
| |||
','fontsize',12,'horizontal','left','string',{' | + j | '}); |
H=uicontrol(H_fig,'style','text','unit','normalized','position',[
0.73,0.47,0.20,0.05],'fontname','微 | 软 | 雅 | '}); | 黑 |
','fontsize',12,'horizontal','left','string',{' Zo= | ||||
%生成可编辑文本控件(输入R,X,Zo值)
H_R=uicontrol(H_fig,'style','edit','position',[0.82,0.63,0.10,0.0
5],'fontname','微软雅黑');
H_X=uicontrol(H_fig,'style','edit','position',[0.82,0.55,0.10,0.0
5],'fontname','微软雅黑');
%生成静态文本控件(显示圆图结果)
H_t1=uicontrol(H_fig,'style','text','unit','normalized','position
',[0.74,0.39,0.22,0.05]);
H_t2=uicontrol(H_fig,'style','text','unit','normalized','position
',[0.74,0.34,0.20,0.05]);
H_t3=uicontrol(H_fig,'style','text','unit','normalized','position
',[0.74,0.29,0.20,0.05]);
H_t4=uicontrol(H_fig,'style','text','unit','normalized','position',[0.74,0.24,0.20,0.05]);
H_t5=uicontrol(H_fig,'style','text','unit','normalized','position',[0.1,0.1,0.54,0.08]);
H_t6=uicontrol(H_fig,'style','text','unit','normalized','position',[0.1,0.07,0.54,0.08]);
%生成按钮控件
H_circle=uicontrol(H_fig,
0,'string','绘 图 'style','pushbutton','position',[0.735,0.21,0.22,0.07],'fontsize',1
'style','pushbutton','position',[0.735,0.14,0.22,0.07],'fontsize',1 | ||||||
0,'string','单 | 支 | 节 | 并 | 联 | 匹 | 配 |
','callback',['smithfun(''plot_single_fun'');']);
H_circle=uicontrol(H_fig,
'style','pushbutton','position',[0.735,0.07,0.22,0.07],'fontsize',1
0,'string','双 | 支 | 节 | 并 | 联 | 匹 | 配 |
','callback',['smithfun(''plot_double_fun'');']);
%保留句柄矩阵用于交互式获取数据
Hdata=[H_R,H_X,H_Zo,H_t1,H_t2,H_t3,H_t4,H_t5,H_t6];
set(H_fig,'userdata',Hdata);
%画出圆图
elseifstrcmp(action,'plot__circle')
Hdata=get(gcf,'userdata');
HR=Hdata(1);
HX=Hdata(2);
HZo=Hdata(3);
Ht1=Hdata(4);
Ht2=Hdata(5);
Ht3=Hdata(6);
Ht4=Hdata(7);
Ht5=Hdata(8);
R=str2num(get(Hdata(1),'string')); Ht6=Hdata(9);
%犯错处理 |
ifisempty(R)|isempty(X)|isempty(Zo)
set(Ht1,'string','无效输入');
set(Ht2,'string','');
set(Ht3,'string','');
set(Ht4,'string','');
set(Ht5,'string','');
set(Ht6,'string','');
elseif R<0 |
|
set(Ht2,'string','');
set(Ht3,'string','');
set(Ht4,'string','');
set(Ht5,'string','');
set(Ht6,'string','');
elseifZo<=0
set(Ht1,'string','无效输入');
set(Ht2,'string','');
set(Ht3,'string','');
set(Ht4,'string','');
set(Ht5,'string','');
%显示圆图结果 set(Ht6,'string','');
end |
%单支节并联匹配
elseifstrcmp(action,'plot_single_fun')
Hdata=get(gcf,'userdata');
HR=Hdata(1);
HX=Hdata(2);
HZo=Hdata(3);
Ht1=Hdata(4);
Ht2=Hdata(5); | |
Ht4=Hdata(7);
Ht5=Hdata(8);
Ht6=Hdata(9);
R=str2num(get(Hdata(1),'string'));
X=str2num(get(Hdata(2),'string'));
Zo=str2num(get(Hdata(3),'string'));
%犯错处理
ifisempty(R)|isempty(X)|isempty(Zo)
set(Ht1,'string','illegalinput!');
set(Ht2,'string','');
set(Ht3,'string','');
set(Ht5,'string',''); set(Ht4,'string','');
set(Ht1,'string','illegal RESISTANCE!'); |
set(Ht2,'string','');
set(Ht3,'string','');
set(Ht4,'string','');
set(Ht5,'string','');
set(Ht6,'string','');
elseifZo<=0
set(Ht1,'string','illegalZo!');
set(Ht2,'string',''); set(Ht3,'string',''); | |
set(Ht4,'string','');
set(Ht5,'string','');
set(Ht6,'string','');
%显示圆图匹配结果
else
[Lo1,Lo2,Ls1,Ls2,d1,d2]=singlefun(R,X,Zo);
[Gamma2,Lmin,Lmax]=circlefun(R,X,Zo);
holdon;
single_match(Gamma2,R,X,Zo,d1);
holdoff;
rho=(1+abs(Gamma2))/(1-abs(Gamma2));
set(Ht5,'string',strcat(' ',num2str(d1),'λ处并接if R==Zo
set(Ht6,'string',strcat(' 或在d2 = ',num2str(d2),'λ处并 |
接入Ls= ',num2str(Ls1),'λ开路支节实现匹配'),'fontname','TimesNew
Roman','fontsize',8);
else
set(Ht5,'string',strcat(' 在d1= ',num2str(d1),'λ处并接
入长度为Ls= ',num2str(Ls1),'λ短路支节','或Lo= ',num2str(Lo1),'λ开路支
节可实现匹配'),'fontname','TimesNew Roman','fontsize',8);
set(Ht6,'string',strcat(' 或在d2= ',num2str(d2),'λ处并
接入长度为Ls= ',num2str(Ls2),'λ短路支节','或Lo= ',num2str(Lo2),'λ开路
支节可实现匹配'),'fontname','TimesNew Roman','fontsize',8);
end
end
%双支节并联匹配
elseifstrcmp(action,'plot_double_fun')
Hdata=get(gcf,'userdata');
HR=Hdata(1);
HX=Hdata(2);
HZo=Hdata(3);
Ht1=Hdata(4);
Ht2=Hdata(5);
Ht3=Hdata(6);
Ht4=Hdata(7); |
|
X=str2num(get(Hdata(2),'string')); | |
Zo=str2num(get(Hdata(3),'string'));
%犯错处理
ifisempty(R)|isempty(X)|isempty(Zo)
set(Ht1,'string','illegalinput!');
set(Ht2,'string','');
set(Ht3,'string','');
set(Ht4,'string','');
set(Ht5,'string',''); set(Ht6,'string',''); | |
elseifR<0
set(Ht1,'string','illegalRESISTANCE!');
set(Ht2,'string','');
set(Ht3,'string','');
set(Ht4,'string','');
set(Ht5,'string','');
set(Ht6,'string','');
elseifZo<=0
set(Ht1,'string','illegalZo!');
set(Ht2,'string','');
set(Ht3,'string','');
set(Ht5,'string',''); set(Ht4,'string','');
else |
[Ls11,Ls12,Ls21,Ls22]=doublefun(R,X,Zo);
[Gamma2,Lmin,Lmax]=circlefun(R,X,Zo);
holdon;
if | imag(Ls11)==0 | & | imag(Ls12)==0 | & | imag(Ls21)==0 | & |
imag(Ls22)==0
double_match1(Gamma2,R,X,Zo,Ls21,Ls22); else
end | double_match2(Gamma2,R,X,Zo); |
|
|
holdoff;
rho=(1+abs(Gamma2))/(1-abs(Gamma2));
set(Ht1,'string',strcat('Γ
2=',num2str(Gamma2)),'fontname','TimesNew Roman','fontsize',8); set(Ht2,'string',strcat('ρ
=',num2str(rho)),'fontname','Times NewRoman','fontsize',8,'horizontal','left');
set(Ht3,'string',strcat('Lmin=',num2str(Lmin),'λ
'),'fontname','TimesNew Roman','fontsize',8);
set(Ht4,'string',strcat('Lmax=',num2str(Lmax),'λ
'),'fontname','TimesNew Roman','fontsize',8);
imag(Ls22)==0 | & |
路支节就可实现匹配'),'fontname','Times New Roman','fontsize',8); | |
set(Ht6,'string',strcat(' 或在负载处并入长度为',num2str(Ls12),'λ短路支节,再在d=λ/8处并入长度为',num2str(Ls22),'λ短路支节就可实现匹配'),'fontname','TimesNew Roman','fontsize',8); else
set(Ht5,'string',strcat(' | WARNING ! 等 | G 圆和λ/ 8辅助圆无 |
交点'),'fontname','TimesNew Roman','fontsize',10);
set(Ht6,'string',strcat(' 双支节匹配出现盲区!
'),'fontname','Times New Roman','fontsize',10); end |
|
end
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%画阻抗圆图函数
function[Gamma2,Lmin,Lmax]=circle(R,X,Zo)
%归一化阻抗
r=R/Zo;
x=X/Zo;
%画出单位圆和标出电刻度t=0:0.0001:2*pi; |
|
text 'italic'); | |
text(-0.1,1.03,'0.125','fontname','arial','color','b','fonta','italic');
text(1.03,0,'0.25','fontname','arial','color','b','fonta','italic');
text(-0.1, -1.18, '0.375','fontname','arial','color','b','fonta','italic');
holdon;
plot([-1,1],[0,0],'k'); hold on; | |
plot([0,0],[-1,1],'k');
holdon;
axis('equal',[-1,1,-1,1]);
%画出等R圆
ifr==inf
plot(1,0,'rp');
axis('equal',[-1,1,-1,1]);
else
a=r/(1+r);
r1=1/(1+r);
plot((r1*cos(t)+a),(r1*sin(t)),'b');
hold on; axis('equal',[-1,1,-1,1]); %画出等X圆 end; if x==inf |
plot(1,0,'rp');
axis('equal',[-1,1,-1,1]);
elseifx==0
plot([-1,1],[0,0],'r');
axis('equal',[-1,1,-1,1]);
else
b=1/x;
r2=1/x; |
|
axis('equal',[-1,1,-1,1]);
holdon;
end;
%画出等反射圆
z=r+j*x;
Gamma2=(z-1)/(z+1);
Mod=abs(Gamma2);
Phi=angle(Gamma2);
plot(Mod*cos(t),Mod*sin(t),'k');
holdon;
axis('equal',[-1,1,-1,1]);
hold on; |
|
hold on; Re=[0,cos(Phi)]; | |
Im=[0,sin(Phi)];
polyfit(Re,Im,1);
plot(Re,Im,'b');
holdon;
ifX<0
if(Phi>=0)
Lmin=Phi/(4*pi);
Lmax=0.25+Lmin; | |
Lmin=(pi+Phi)/(4*pi);
Lmax=0.25+Lmin;
end
else
if(Phi>=0)
Lmax=Phi/(4*pi);
Lmin=0.25+Lmax;
else
Lmax=(pi+Phi)/(4*pi);
Lmin=0.25+Lmax;
end
end | hold off; |
|
| ||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%画导纳圆图函数
function[Gamma2,Lmin,Lmax]=circlefun(R,X,Zo)
%归一化阻抗和确定传输状态
r=R/Zo;
x=X/Zo;
z=r+i*x; | |
g=real(y);
b=imag(y);
Gamma2=(z-1)/(z+1);
Mod=abs(Gamma2);
Phi=angle(Gamma2);
Lambda=(pi-Phi)/(4*pi);
Alpha=(y-1)/(y+1);
plot(real(Alpha),imag(Alpha),'gp');
holdon;
plot(real(Gamma2),imag(Gamma2),'gp');
holdon;
bb=[imag(Alpha),imag(Gamma2)]; aa=[real(Alpha),real(Gamma2)];
hold on; |
ifX<0
if(Phi>=0)
Lmin=Phi/(4*pi);
Lmax=0.25+Lmin;
else
Lmin=(pi+Phi)/(4*pi);
Lmax=0.25+Lmin;
end | |
if(Phi>=0)
Lmax=Phi/(4*pi);
Lmin=0.25+Lmax;
else
Lmax=(pi+Phi)/(4*pi);
Lmin=0.25+Lmax;
end
end
%画出单位圆和标出电刻度
t=0:0.0001:2*pi;
plot(cos(t),sin(t),'--k');
text | (-1.2,0,'0', | | 'fonta', |
'italic'); | |||
'italic'); text (1.03,0,'0.25', 'fontname', 'arial','color','b', 'fonta', | |||
'italic');
text(-0.1, -1.18, '0.375','fontname','arial','color','b','fonta','italic');
holdon;
plot([-1,1],[0,0],'k');
holdon;
plot([0,0],[-1,1],'k');
hold on; | |
%画出等G圆
ifg==inf
plot(1,0,'rp');
axis('equal',[-1,1,-1,1]);
else
a=g/(1+g);
g1=1/(1+g);
plot((g1*cos(t)+a),(g1*sin(t)),'b');
axis('equal',[-1,1,-1,1]);
holdon;
end;
%画出等B圆 |
|
elseif b==0 | |
plot([-1,1],[0,0],'r');
axis('equal',[-1,1,-1,1]);
else
b1=1/b;
r2=1/b;
plot((r2*cos(t)+1),(r2*sin(t)+b1),'b');
axis('equal',[-1,1,-1,1]);
hold on; | |
%画出等反射圆和匹配圆
y=g+j*b;
gamma=(y-1)/(y+1);
Mod=abs(gamma);
Phi=angle(gamma);
plot(Mod*cos(t),Mod*sin(t),'k');
holdon;
axis('equal',[-1,1,-1,1]);
plot(0.5*(cos(t)+1),(0.5*sin(t)),'c');
holdoff;
title('SMITH导纳圆图');
|
function[Lo1,Lo2,Ls1,Ls2,d1,d2]=singlefun(R,X,Zo) %计算并联支节位置和短路及开路支节长度
r=R/Zo;
x=X/Zo;
ifR==Zo
m=-x/2;
B=(R^2*m-(Zo-X*m)*(Zo+X*m))/(Zo*(R^2+(Zo+X*m)^2));
if m>=0 | |
ifd1>=0.5
d1=d1-0.5;
elseifd1<0
d1=d1+0.5;
else
d1=d1;
end
d2=atan(m)/(2*pi);
ifd2>=0.5
d2=d2-0.5;
elseifd2<0
d2=d2+0.5; |
|
Lo1=(-atan(B*Zo))/(2*pi); | |
ifLo1>=0
Lo1=Lo1;
Lo2=Lo1;
else
Lo1=0.5+Lo1;
Lo2=Lo1;
end
Ls1=(atan(1/(B*Zo)))/(2*pi); if Ls1>=0 |
|
Ls1=Ls1;
Ls2=Ls1;
else
Ls1=0.5+Ls1;
Ls2=Ls1;
end
else
d1=(atan(m)+pi)/(2*pi);
ifd1>=0.5
d1=d1-0.5;
elseifd1<0
d1=d1+0.5; |
|
d2=(atan(m)+pi)/(2*pi); | |
ifd2>=0.5
d2=d2-0.5;
elseifd2<0
d2=d2+0.5;
else
d2=d2;
end
Lo1=(-atan(B*Zo))/(2*pi); if Lo1>=0 | |
Lo1=Lo1;
Lo2=Lo1;
else
Lo1=0.5+Lo1;
Lo2=Lo1;
end
Ls1=(atan(1/(B*Zo)))/(2*pi);
ifLs1>=0
Ls1=Ls1;
Ls2=Ls1;
else
Ls1=0.5+Ls1; |
|
else | |
m1=(X+sqrt(R*((Zo-R)^2+X^2)/Zo))/(R-Zo);
m2=(X-sqrt(R*((Zo-R)^2+X^2)/Zo))/(R-Zo);
B1=(R^2*m1-(Zo-X*m1)*(X+Zo*m1))/(Zo*(R^2+(X+Zo*m1)^2));B2=(R^2*m2-(Zo-X*m2)*(X+Zo*m2))/(Zo*(R^2+(X+Zo*m2)^2));Lo1=(-atan(B1*Zo))/(2*pi);
ifLo1>=0
Lo1=Lo1;
else | |
end
Lo2=(-atan(B2*Zo))/(2*pi);
ifLo2>=0
Lo2=Lo2;
else
Lo2=0.5+Lo2;
end
Ls1=(atan(1/(B1*Zo)))/(2*pi);
ifLs1>=0
Ls1=Ls1;
else
end | Ls1=0.5+Ls1; |
|
Ls2=Ls2; | ||
else
Ls2=0.5+Ls2;
end
ifm1>=0
d1=atan(m1)/(2*pi);
ifd1>=0.5
d1=d1-0.5;
elseif d1<0 | |
else
d1=d1;
end
d2=(atan(m2)+pi)/(2*pi);
ifd2>=0.5
d2=d2-0.5;
elseifd2<0
d2=d2+0.5;
else
d2=d2;
end
d1=(atan(m1)+pi)/(2*pi); else
elseif d1<0 |
d1=d1+0.5;
else
d1=d1;
end
d2=atan(m2)/(2*pi);
ifd2>=0.5
d2=d2-0.5;
elseif d2<0 | |
else
d2=d2;
end
end
end
holdoff;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%双支节并联匹配函数(第一支节在负载处)
Z=R+i*X; function [Ls11,Ls12,Ls21,Ls22]=doublefun(R,X,Zo) Yo=1/Zo; Y=1/Z; G=real(Y); |
B=imag(Y);
m=1;
%两支节相距λ/8
m1=(1+m^2)*G*Yo-G^2*m^2;
m2=abs(1+m^2)*G*Yo-G^2*m^2;
B11=-B+(Yo+sqrt(m1))/m;
B21=(Yo*sqrt(m2)+G*Yo)/(G*m);
B12=-B+(Yo-sqrt(m1))/m; | |
Ls=-(atan(Yo/B11))/(2*pi);
ifLs>=0
Ls11=Ls;
else
Ls11=0.5+Ls;
end
Ls=-(atan(Yo/B21))/(2*pi);
ifLs>=0
Ls21=Ls;
else
Ls21=0.5+Ls;
Ls=-(atan(Yo/B12))/(2*pi); end if Ls>=0 else |
Ls12=0.5+Ls;
end
Ls=-(atan(Yo/B22))/(2*pi);
ifLs>=0
Ls22=Ls;
else
Ls22=0.5+Ls;
end | |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%单支节并联圆图
function[]=single_match(Gamma2,R,X,Zo,d1)
%归一化及计参数
r=R/Zo;
x=X/Zo;
z=r+i*x;
y=1/z;
alpha1=(y-1)/(y+1); Alpha=atan2(imag(Gamma2),real(Gamma2)); if R==Zo plot(real(Gamma2),imag(Gamma2),'rp'); |
plot(real(Gamma2),-imag(Gamma2),'rp');
m=[0,real(Gamma2)];
Re1=[0,cos(Alpha)];
Im1=[0,sin(Alpha)];
Im2=[0,-sin(Alpha)];
plot(Re1,Im1,'b');
plot(Re1,Im2,'b');
hold off; | |
angle1=abs(atan2(imag(Gamma2),real(Gamma2)));
angle2=2*pi*(d1/0.5)-angle1;
ifX>=0
ifangle2<0
angle2=2*pi+angle2;
plot(-abs(Gamma2)*cos(angle2),abs(Gamma2)*sin(angle2),'rp');
plot(-abs(Gamma2)*cos(angle2),-abs(Gamma2)*sin(angle2),'rp');Re3=[0,cos(angle2)];
Re4=[0,cos(angle2)];
Im4=[0,-sin(angle2)]; Im3=[0,sin(angle2)];
hold off; |
else
angle2=angle2;
plot(-abs(Gamma2)*cos(angle2),abs(Gamma2)*sin(angle2),'rp');
plot(-abs(Gamma2)*cos(angle2),-abs(Gamma2)*sin(angle2),'rp'); Re3=[0,cos(angle2)];
Re4=[0,cos(angle2)]; | |
Im4=[0,-sin(angle2)];
plot(-Re3,Im3,'b');
plot(-Re4,Im4,'b');
holdoff;
end
else
angle1=abs(atan2(imag(Gamma2),real(Gamma2))); angle2=2*pi*(d1/0.5)+angle1-2*pi;
ifangle2<0
angle2=2*pi+angle2;
plot(-abs(Gamma2)*cos(angle2),abs(Gamma2)*sin(angle2),'rp');
Re4=[0,cos(angle2)];
Im3=[0,sin(angle2)];
Im4=[0,-sin(angle2)];
plot(-Re3,Im3,'b');
plot(-Re4,Im4,'b');
holdoff;
else
angle2=angle2;
plot(-abs(Gamma2)*cos(angle2),abs(Gamma2)*sin(angle2),'rp');
plot(-abs(Gamma2)*cos(angle2),-abs(Gamma2)*sin(angle2),'rp'); Re3=[0,cos(angle2)];
Re4=[0,cos(angle2)];
Im3=[0,sin(angle2)];
Im4=[0,-sin(angle2)];
plot(-Re3,Im3,'b');
plot(-Re4,Im4,'b');
holdoff;
end
end
end
%%%%%%%%%%
%双支节并联圆图(无盲区)
function[]=double_match1(Gamma2,R,X,Zo,Ls21,Ls22)
t=0:0.0001:2*pi;
plot(0.5*(cos(t)),(0.5*sin(t)+0.5),'c');
holdon;
r=R/Zo;
x=X/Zo;
z=r+i*x; | |
g=real(y);
b=imag(y);
%计算并画出第二支节匹配点位置
x1=-tan(2*pi*Ls21);
x2=-tan(2*pi*Ls22);
y1=1+i*(1/x1);
y2=1+i*(1/x2);
gamma1=(y1-1)/(y1+1);
gamma2=(y2-1)/(y2+1);
aa1=real(gamma1);
bb1=-imag(gamma1);
aa2=real(gamma2); bb2=-imag(gamma2); |
|
alpha1=atan2(bb1,aa1); | |
alpha2=atan2(bb2,aa2);
Re1=[0,cos(alpha1)];
Re2=[0,cos(alpha2)];
Im1=[0,sin(alpha1)];
Im2=[0,sin(alpha2)];
plot(Re1,Im1,'r');
plot(Re2,Im2,'r');
%计算并画出第一支节匹配点位置
plot(abs(gamma1)*cos(alpha1+pi/2),abs(gamma1)*sin(alpha1+pi/2),'b
p');
plot(abs(gamma2)*cos(alpha2+pi/2),abs(gamma2)*sin(alpha2+pi/2),'bp');
Re3=[0,cos(alpha1+pi/2)];
Re4=[0,cos(alpha2+pi/2)];
Im3=[0,sin(alpha1+pi/2)];
Im4=[0,sin(alpha2+pi/2)];
plot(Re3,Im3,'b');
plot(Re4,Im4,'b');
holdoff;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%% function []=double_match2(Gamma2,R,X,Zo) |
t=0:0.0001:2*pi;
plot(0.5*(cos(t)),(0.5*sin(t)+0.5),'c');
holdon;
[Gamma2,Lmin,Lmax]=circlefun(R,X,Zo);
axis('equal',[-1,1,-1,1]);
holdoff;
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- 99spj.com 版权所有 湘ICP备2022005869号-5
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务