5、电路综合-超酷-基于S11参数直接综合出微带线电路图

2023-10-25 16:36

本文主要是介绍5、电路综合-超酷-基于S11参数直接综合出微带线电路图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

电路综合-超酷-基于S11参数直接综合出微带线电路图

1、电路综合原理与实践—电抗函数的综合原理
2、电路综合原理与实践—正实函数与策动电阻抗函数
3、电路综合原理与实践—单双端口理想微带线(伪)手算S参数与时域波形

之前已经介绍过如何通过电路的微带线结构求解得到其S参数(3、电路综合原理与实践—单双端口理想微带线(伪)手算S参数与时域波形),下面介绍一种特别酷的东西,从微带线的S11参数得到可以将其实现的结构。

从S11参数直接得到微带线电路图是一种叫简化实频的技术,可以用于匹配电路的设计,例如我需要在1GHz将10欧姆匹配至50欧姆,只需要控制1GHz的S11参数在10欧姆处就行(需要先将S参数转化为Z参数)。

1、理查德域S11参数的表达式

此处的S11的参数表达式为理查德域的,可能和我们平时见到的S11的图像一样的格式不太一致,如:
在这里插入图片描述
那么这个式子究竟代表了什么呢?对于无耗的传输线,其可以表达为如下的形式:
在这里插入图片描述
其中beta为相移常数,l为微带线的实际的长度。在下面的分析中,我使用电长度这种间接的表达方法来示意。例如,在1GHz下的电长度为60°的微带线的实际长度为l=ele_l/360*c/f。其中ele_l为电长度(60,单位度),c为光速,f为该电长度所在的频率(1GHz)。

此外,beta=beta=2* pi *freq_solve/c,其中freq_solve为求解的频率(也就是要求解哪个频率的S参数)。这样,对应一个固定的表达式,其S11参数会随着频率发生变化,此外因为lamda是周期函数,最后得到的S11参数也必定是周期的。

对于上面的S11表达式,使用如下的程序绘制其对应的S11参数(其中微带线使用的是1GHz下60度电长度的微带线,对应的实际长度为0.05m,忽略介电常数等等):

clear
close all
clc
%微带线电长度
ele_l=60;
%微带线电长度所在的频率
f=1e9;
%求解频率范围,单位GHz
f_start=0.01;
f_stop=10;
f_step=0.01;%光速
c=299792458;
%求解范围
freq_solve=[f_start:f_step:f_stop]*1e9;
%计算物理长度,单位m
l=ele_l/360*c/f;
%计算不同频率下的相移常数beta
beta=2*pi*freq_solve/c;
%转换到lamda域
lamda=1j*tan(beta*l);S11=(lamda.^2+19*lamda)./(lamda.^2+21*lamda+8);figure
plot(freq_solve/1e9,20*log10(abs(S11)))
xlabel('Frequency(GHz)')
ylabel('dB(S11)')
title('S11')

得到的图片如下所示:
在这里插入图片描述

2、电路生成 案例1—开路微带线综合

在更加一般的情况,我们是基于第一部分最后一张图的S11参数去设计匹配电路。我们可以利用S11参数去反推表达式。在此给出一个示例(使用第一部分的表达式为案例):

clear
clc
syms lamda
S11=(lamda.^2+19*lamda)./(lamda.^2+21*lamda+8);
Zin=(1+S11)/(1-S11);S11_Z0=S11;
Z0=1;
ind=1;s11_tmp(ind)=subs (S11_Z0,Z0);
for cnt=1:1:2if ind==1Z(ind)=Z0*(1+s11_tmp(ind))/(1-s11_tmp(ind));K(ind)=(Z0-Z(ind))/(Z0+Z(ind));S11_Zi(ind)=(K(ind)+S11_Z0)/(1+K(ind)*S11_Z0);S111_Zi(ind)=simplify(S11_Zi(ind)*(1+lamda)/(1-lamda));ind=ind+1;elseZ(ind)=simplify(Z(ind-1)*(1+S111_Zi(ind-1))/(1-S111_Zi(ind-1)))Z(ind)=subs (Z(ind),Z0);K(ind)=(Z(ind-1)-Z(ind))/(Z(ind-1)+Z(ind));S11_Zi(ind)=(K(ind)+S111_Zi(ind-1))/(1+K(ind)*S111_Zi(ind-1));S111_Zi(ind)=simplify(S11_Zi(ind)*(1+lamda)/(1-lamda));ind=ind+1;end
end
Z

运行结果如下所示:
在这里插入图片描述
表示该阻抗可以使用两个部分组成,第一部分为阻抗为5欧姆的微带线,第二部分为电容和电阻的并联:
在这里插入图片描述
在这里插入图片描述
依据解析结果,构建如下的电路原理图:
在这里插入图片描述
运行仿真,仿真结果与理论分析结果一致:
在这里插入图片描述

3、电路生成 案例2—基于策动点阻抗函数综合多微带电路

要综合的输入阻抗函数如下所示(此处t就是lamda):

%                100*t^3 + 50*t^2 + 300*t + 30
%		Z(t) = -------------------------------	
%                9*t^3 + 170*t^2 + 31*t + 30

绘制其对应的S11参数和Zin参数曲线(假定使用频率1GHz下电长度60度的微带线进行实现),使用如下代码:

clear
close all
clc
%微带线电长度
ele_l=60;
%微带线电长度所在的频率
f=1e9;
%求解频率范围,单位GHz
f_start=0.01;
f_stop=10;
f_step=0.01;%光速
c=299792458;
%求解范围
freq_solve=[f_start:f_step:f_stop]*1e9;
%计算物理长度,单位m
l=ele_l/360*c/f;
%计算不同频率下的相移常数beta
beta=2*pi*freq_solve/c;
%转换到lamda域
lamda=1j*tan(beta*l);Zin=(100*lamda.^3+50*lamda.^2+300*lamda+30)./(9*lamda.^3+170*lamda.^2+31*lamda+30);
S11=(Zin-1)./(Zin+1);figure
plot(freq_solve/1e9,(abs(Zin)))
xlabel('Frequency(GHz)')
ylabel('Zin')
title('Zin')figure
plot(freq_solve/1e9,20*log10(abs(S11)))
xlabel('Frequency(GHz)')
ylabel('dB(S11)')
title('S11')

得到的S11参数和Zin参数结果如下所示:
在这里插入图片描述
使用下面代码进行综合:

clear
clc
syms lamdaZin=(100*lamda.^3+50*lamda.^2+300*lamda+30)./(9*lamda.^3+170*lamda.^2+31*lamda+30);
S11=(Zin-1)./(Zin+1);S11_Z0=S11;
Z0=1;
ind=1;s11_tmp(ind)=subs (S11_Z0,Z0);
for cnt=1:1:4if ind==1Z(ind)=Z0*(1+s11_tmp(ind))/(1-s11_tmp(ind));K(ind)=(Z0-Z(ind))/(Z0+Z(ind));S11_Zi(ind)=(K(ind)+S11_Z0)/(1+K(ind)*S11_Z0);S111_Zi(ind)=simplify(S11_Zi(ind)*(1+lamda)/(1-lamda));ind=ind+1;elseZ(ind)=simplify(Z(ind-1)*(1+S111_Zi(ind-1))/(1-S111_Zi(ind-1)))Z(ind)=subs (Z(ind),Z0);K(ind)=(Z(ind-1)-Z(ind))/(Z(ind-1)+Z(ind));S11_Zi(ind)=(K(ind)+S111_Zi(ind-1))/(1+K(ind)*S111_Zi(ind-1));S111_Zi(ind)=simplify(S11_Zi(ind)*(1+lamda)/(1-lamda));ind=ind+1;end
end
Z

运行结果如下:

在这里插入图片描述
构建ADS仿真验证:
在这里插入图片描述
结果一致:

在这里插入图片描述

这篇关于5、电路综合-超酷-基于S11参数直接综合出微带线电路图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/283820

相关文章

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

SpringMVC获取请求参数的方法

《SpringMVC获取请求参数的方法》:本文主要介绍SpringMVC获取请求参数的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下... 目录1、通过ServletAPI获取2、通过控制器方法的形参获取请求参数3、@RequestParam4、@

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

SpringBoot利用@Validated注解优雅实现参数校验

《SpringBoot利用@Validated注解优雅实现参数校验》在开发Web应用时,用户输入的合法性校验是保障系统稳定性的基础,​SpringBoot的@Validated注解提供了一种更优雅的解... 目录​一、为什么需要参数校验二、Validated 的核心用法​1. 基础校验2. php分组校验3

一文带你了解SpringBoot中启动参数的各种用法

《一文带你了解SpringBoot中启动参数的各种用法》在使用SpringBoot开发应用时,我们通常需要根据不同的环境或特定需求调整启动参数,那么,SpringBoot提供了哪些方式来配置这些启动参... 目录一、启动参数的常见传递方式二、通过命令行参数传递启动参数三、使用 application.pro

基于@RequestParam注解之Spring MVC参数绑定的利器

《基于@RequestParam注解之SpringMVC参数绑定的利器》:本文主要介绍基于@RequestParam注解之SpringMVC参数绑定的利器,具有很好的参考价值,希望对大家有所帮助... 目录@RequestParam注解:Spring MVC参数绑定的利器什么是@RequestParam?@

SpringBoot接收JSON类型的参数方式

《SpringBoot接收JSON类型的参数方式》:本文主要介绍SpringBoot接收JSON类型的参数方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、jsON二、代码准备三、Apifox操作总结一、JSON在学习前端技术时,我们有讲到过JSON,而在

JAVA虚拟机中 -D, -X, -XX ,-server参数使用

《JAVA虚拟机中-D,-X,-XX,-server参数使用》本文主要介绍了JAVA虚拟机中-D,-X,-XX,-server参数使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录一、-D参数二、-X参数三、-XX参数总结:在Java开发过程中,对Java虚拟机(JVM)的启动参数进

解读docker运行时-itd参数是什么意思

《解读docker运行时-itd参数是什么意思》在Docker中,-itd参数组合用于在后台运行一个交互式容器,同时保持标准输入和分配伪终端,这种方式适合需要在后台运行容器并保持交互能力的场景... 目录docker运行时-itd参数是什么意思1. -i(或 --interactive)2. -t(或 --