EFFECTIVE ABCD and SCATTERING PARAMETERS of a 2-PORT NETWORK USING PYTHON

EFFECTIVE ABCD and SCATTERING PARAMETERS of a 2-PORT NETWORK USING PYTHON

Abstract:

The purpose of this assignment was to find out the overall ABCD and scattering parameters of an electrical or microwave network by using features of PYTHON. In our microwave applications, scattering parameters place a major role but finding the effective scattering parameters is not an easy process. There is not a direct way for finding the effective scattering parameters. One of the ways for finding the scattering parameters is by finding effective ABCD parameters at first then we go for finding scattering parameters from the calculated ABCD parameters. This was done by using PYTHON libraries called Tkinter, numpy, syms. Keywords:

? PYTHON ? ABCD parameters ? Scattering parameters

Introduction:

Every microwave component design need analysis in even and odd mode. In that we need to find out its even mode and odd mode scattering parameters but at first, we need to find its effective ABCD parameters in even and odd modes. First, we need to discuss ABCD parameters and how effective ABCD parameters are found.

ABCD parameters: ABCD parameters (also known as chain or transmission line parameters) are generalized circuit

constants used to help model transmission lines. More specifically, ABCD parameters are used in the two port network representation of a transmission line.

Vs = A VR + B IR Is = C VR + D IR

1

208120017

Properties of 2-port network:

? RECPIROCAL:

AD-BC=1

? SYMMETRICAL: A=D

? LOSSLESS:

A, D are real and B, C are imaginary

Effective ABCD Parameters of a CASCADED network: Effective ABCD Matrix = Matrix Multiplication of Individual ABCD Matrices ABCD Matrix is represented as follows

2

208120017

SCATTERING Parameters:

To characterize high-frequency circuits we use s parameters which relate traveling voltage waves that are incident, reflected and transmitted when a two-port network is inserted into a transmission line. S-parameters do not use open or short circuit conditions to characterize a linear electrical network instead, matched loads are used.

b1=S11*a1 + S12*a2

b2=S21*a1 + S22*a2

S11 ? reflection coefficient seen at port 1 S12 ? transmission loss or gain when port 2 is excited S21 ? transmission loss or gain when port 1 is excited S22 ? reflection co-efficient seen at port 2

Properties of 2-port network:

? RECPIROCAL: S12=S21

? SYMMETRICAL: S11=S22

? LOSSLESS:

|S11|^2 + |S21|^2 = 1 Losses at port 1

|S12|^2 + |S22|^2 = 1 Losses at port 2

If port 1 and port 2 are lossless then network is lossless

3

208120017

Conversion from ABCD to Scattering Parameters:

S11 = (A+B/Zo-C*Zo-D)/

S12 = 2(A*D-B*C)/

S21 = 2/

S22 = (-A+B/Zo-C*Zo+D)/

= A+B/Zo+C*Zo+D

where Zo ? characteristic impedances

PYTHON Code:

from tkinter import * from numpy import * from sympy import * from math import *

B, L, Zo, Yc, Ys, Ya, Yb, Z, Y = symbols('B L Zo Yc Ys Ya Yb Z Y')

# creating window root = Tk() root.title("ABCD to SCATTERING PARAMETERS CONVERSION") root.geometry("700x700")

# initializing all values m = [[1 + 0j, 0j], [0j, 1 + 0j]] M = matrix(m) S11 = [] S12 = [] S21 = [] S22 = [] T = M i = 0 zo = 0 count = -1 # creating labels Label(root, text="A=").grid(row=3, column=0) Label(root, text="B=").grid(row=4, column=0) Label(root, text="C=").grid(row=5, column=0) Label(root, text="D=").grid(row=6, column=0)

4

208120017

# creating entry fields for real parts ear = Entry(root, width=40) ear.grid(row=3, column=1, pady=10, ipady=10) ebr = Entry(root, width=40) ebr.grid(row=4, column=1, pady=10, ipady=10) ecr = Entry(root, width=40) ecr.grid(row=5, column=1, pady=10, ipady=10) edr = Entry(root, width=40) edr.grid(row=6, column=1, pady=10, ipady=10)

# creating labels to display Effective ABCD Label(root, text="::EFFECTIVE ABCD PARAMETERS:::::", bg='yellow').grid(row=8, column=0, columnspan=3) Label(root, text="A=").grid(row=9, column=0) Label(root, text="B=").grid(row=10, column=0) Label(root, text="C=").grid(row=11, column=0) Label(root, text="D=").grid(row=12, column=0)

# creating entry fields for real parts for effective ABCD eear = Entry(root, width=40) eear.grid(row=9, column=1, pady=10, ipady=10) eebr = Entry(root, width=40) eebr.grid(row=10, column=1, pady=10, ipady=10) eecr = Entry(root, width=40) eecr.grid(row=11, column=1, pady=10, ipady=10) eedr = Entry(root, width=40) eedr.grid(row=12, column=1, pady=10, ipady=10)

# creating labels to display Effective SCATTERING PARAMETERS Label(root, text="::EFFECTIVE SCATTERING PARAMETERS:::::", bg='yellow').grid(row=8, column=5, columnspan=4) Label(root, text="S11=").grid(row=9, column=5) Label(root, text="S12=").grid(row=10, column=5) Label(root, text="S21=").grid(row=11, column=5) Label(root, text="S22=").grid(row=12, column=5)

# creating entry fields for real parts for effective SCATTERING PARAMETERS s11r = Entry(root, width=40) s11r.grid(row=9, column=6, ipadx=250, pady=10, ipady=10, columnspan=10) s12r = Entry(root, width=40) s12r.grid(row=10, column=6, ipadx=250, pady=10, ipady=10, columnspan=10) s21r = Entry(root, width=40) s21r.grid(row=11, column=6, ipadx=250, pady=10, ipady=10, columnspan=10) s22r = Entry(root, width=40) s22r.grid(row=12, column=6, ipadx=250, pady=10, ipady=10, columnspan=10)

5

208120017

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download