Open Source Antenna Designer.
The calculator features the following topologies:
- Rectangular patch antenna, probe and microstrip versions
- Quarter Wave Monopole
- Half Wave Dipole
Supported exports:
- Rectangular patch: top layer PNG, top layer DXF, gerber files
This project requires numpy, pcb-tools-extension, ezdxf.
Use 'pip install -r requirements.txt' to install the following dependencies:
ezdxf~=0.18
numpy~=1.23.2
pcb-tools~=0.1.6
pcb-tools-extension~=0.9.3
Pillow~=9.5.0
Pint~=0.19.2
usage: antenna_calculator.py [--help] [--version] {rectangular_patch,half_wave_dipole,quarter_wave_monopole} ...
Antenna Calculator
positional arguments:
{rectangular_patch,half_wave_dipole,quarter_wave_monopole}
sub-command help
optional arguments:
--help Show this help message and exit
--version show program's version number and exit
usage: antenna_calculator.py rectangular_patch [--help] [--verbose] [--type {microstrip,probe}] -f FREQUENCY -er RELATIVE_PERMITTIVITY -h HEIGHT
[-u {meter,centimeter,millimeter,inch}] [-du {meter,centimeter,millimeter,inch}] [--dxfoutput DXFOUTPUT]
[--pngoutput PNGOUTPUT]
optional arguments:
--help Show this help message and exit
--verbose
--type {microstrip,probe}
Type of patch
-f FREQUENCY, --frequency FREQUENCY
Frequency in Hz
-er RELATIVE_PERMITTIVITY, --relative_permittivity RELATIVE_PERMITTIVITY
Relative permittivity
-h HEIGHT, --height HEIGHT
Substrate height in meters
-u {meter,centimeter,millimeter,inch}, --unit {meter,centimeter,millimeter,inch}
Unit of measurement
-du {meter,centimeter,millimeter,inch}, --dxfunit {meter,centimeter,millimeter,inch}
DXF Unit of measurement
--dxfoutput DXFOUTPUT
Name of DXF file
--pngoutput PNGOUTPUT
Name of PNG image for printing
usage: antenna_calculator.py half_wave_dipole [--help] [--verbose] -f FREQUENCY [-u {meter,centimeter,millimeter,inch}]
optional arguments:
--help Show this help message and exit
--verbose
-f FREQUENCY, --frequency FREQUENCY
Frequency in Hz
-u {meter,centimeter,millimeter,inch}, --unit {meter,centimeter,millimeter,inch}
Unit of measurement
usage: antenna_calculator.py quarter_wave_monopole [--help] [--verbose] -f FREQUENCY [-u {meter,centimeter,millimeter,inch}]
optional arguments:
--help Show this help message and exit
--verbose
-f FREQUENCY, --frequency FREQUENCY
Frequency in Hz
-u {meter,centimeter,millimeter,inch}, --unit {meter,centimeter,millimeter,inch}
Unit of measurement
python3 antenna_calculator.py rectangular_patch -f 2.4e9 -er 4.4 -h 1.6e-3
[*] W = 38.04 millimeter
[*] L = 29.44 millimeter
[*] Ws = 3.06 millimeter
[*] y0 = 19.02 millimeter
[*] x0 = 11.32 millimeter
[1]: C. A. Balanis, Antenna Theory: Analysis and Design. Hoboken, New Jersey Wiley, 2016.
-
E. Karincic, E. Topsakal, and L. Linkous. "Patch Antenna Calculations and Fabrication Made Simple for Cyber Security Research," 2023 ASEE Annual Conference & Exposition, Baltimore , Maryland, 2023, June. ASEE Conferences, 2023. [Online:] https://peer.asee.org/43974
-
L. Linkous, E. Karincic, J. Lundquist and E. Topsakal, "Automated Antenna Calculation, Design and Tuning Tool for HFSS," 2023 United States National Committee of URSI National Radio Science Meeting (USNC-URSI NRSM), Boulder, CO, USA, 2023, pp. 229-230, doi: 10.23919/USNC-URSINRSM57470.2023.10043119.
-
L. Linkous, J. Lundquist and E. Topsakal, "AntennaCAT: Automated Antenna Design and Tuning Tool," 2023 IEEE USNC-URSI Radio Science Meeting (Joint with AP-S Symposium), Portland, OR, USA, 2023, pp. 89-90, doi: 10.23919/USNC-URSI54200.2023.10289238.
"DEF CON 30 RF Village - Erwin Karincic - Have a SDR? - Design and make your own antennas" PDF link