Python code for a 2-port VNA as part of my Final Year Research project.
Project name: Design and practical implementation of a low-cost vector network analyser for S-Band application
Description of project: There has been a clear need for vector network analyzers throughout the world of radio frequency engineering. Experimenters and designers alike have significant use of it, which allows them to measure the forward and reverse gain and phase response of a circuit, including the input and output reflection properties. This is useful when measuring and adjusting filters, coaxial cables, amplifiers, and so on. These devices come with multiple ports for testing, starting from a single port, to as many as 16 ports. One of the most commonly used devices consists of two-ports, considered to be quite satisfactory for most testing. However, commercially available VNAs tend to come at exorbitant prices, reaching tens of thousands of USDs. Due to this reason many smaller R&D institutions and amateur designers opt to fabricate their own device, sacrificing many of the facilities available in the more expensive machines. This project studies the possibilities of creating a VNA with a reasonable frequency range in the S-band, using components released recently, such as the Raspberry Pi 3 model B, AD8302 RF/IF gain and phase detector and the SynthHD signal generator. The Raspberry Pi microcomputer will be connected to a screen which will show the S-parameters. The report will also show how the GUI is created for the use of this device and how calibration is carried out to ensure accurate readings. Following this the feasibility and practicality of creating a VNA will be discussed, as there are many factors to consider when creating a radio frequency related device using equipment from various manufacturers comprising of various limitations.