官方淘宝店 易迪拓培训 旧站入口
首页 > 微波射频 > 射频工程师交流 > 关于双工器综合编程时候遇到的问题

关于双工器综合编程时候遇到的问题

05-08
各位双工器领域的前辈,我刚刚做好滤波器的综合,在此基础上在实践双工器的综合,参考的论文就是2006年G. Macchiarella的大作,中间遇到了几个问题,希望能获得你们的建议和指导:
1. 我选用的是空腔滤波器结构,做双工器的时候需要在公共输出端引入一个谐振腔,文中说它的作用是引入一个额外的传输零点,除此之外这个谐振腔还有什么作用吗?和传统的直接连接的双工器相比,这个做法在两个信道频率间距足够大时是不是有些多余呢?
2. 在编程的时候,利用带通边界-j和j处的反射系数等于-20dB这个条件去计算|p0r|^2 和|p0t|^2这两个系数时,我居然得到了一个正值和一个负值。这个应该是不对的吧。
这部分程序如下:
   y = polyval(Nj_d,j);                                                   % STEP3      N(j)             R
y1 = polyval(Nj_d,-j);                                                  %            N(-j)            R
pt  = polyval(Ptj,j);                                                      %            Ptj(j)           R
pt1 = polyval(Ptj,-j);                                                     %             Ptj(-j)         R
pr  = polyval(Prj,j);                                                      %            Prj(j)           R
pr1 = polyval(Prj,-j);                                                     %            Prj(-j)          R
  a = (abs(y))^2;                                                           %            |N(j)|^2         R
a1 = (abs(y1))^2;                                                         %            |N(-j)|^2        R
  b = (abs(pr))^2;                                                          %            |Prj(j)|^2       R
b1 = (abs(pr1))^2;                                                        %            |Prj(-j)|^2      R
  c = (abs(pt))^2;                                                          %            |Ptj(j)|^2       R
c1 = (abs(pt1))^2;                                                        %            |Ptj(-j)|^2      R
  d = 10^(RLTX/10);                                                      %            Return loss of TX 的倒数RL -20dB
d1 = 10^(RL/10);                                                          %            Return loss of RX 的倒数RL -20dB
A = a*d -a;
B = a1*d1 -a1;
g = -(B*c - A*c1)/(b*c1 - b1*c);                                      %          g = |p0r|^2 R
h =  (B*b - A*b1)/(b*c1 - b1*c);                                      %          h = |p0t|^2 R
原来的公式是: |N(j)|^2 / (|N(j)|^2  + |p0r|^2 * |Prj(j)|^2) + |p0t|^2 * |Ptj(j)|^2) = 10^(-RLTX/10)
                         |N(-j)|^2 / (|N(-j)|^2  + |p0r|^2 * |Prj(-j)|^2) + |p0t|^2 * |Ptj(-j)|^2) = 10^(-RLRX/10)
前面各种多项式我自己可以验证,但是这一步自己检查不出来了,不觉得模平方还能算出个负值来。
但是这一步如果算错了,下面的 D(s)*conj(D(-s))的表达式也会跟着错下去……,大家有什么好的建议吗?
3.假设这段程序没有问题,下面就遇到了收敛的算法,我需要用递归算法去比较新求出来的S和上一次的S值。因为初值并不属于递归运算,而是从滤波器的反射零点取出来的(RX和TX的虚部都有正有负,新的值虚部RX全为负,TX全为正),那么这个比较第一次应该是谁和谁比呢?
到现在就是这几个地方,希望获得大神的指点,谢谢!

这个问题我解决了,把做的经验和大家分享一下。
1、频率间距足够大时,不需要这样弄,直接连在一起PIM并不是很大。另外这个方法本身就不适合信道中心频率相差过大的情况,误差不少,有时候效率不高。
2、出现负值表示没有考虑到幺正性,本段计算程序不算错。
3、收敛这里的取值可以比较随意,前面编对了话,后面就不难了。



Top