Skip to content

A Python-based Beamforming Simulator with a PyQt5 GUI for visualizing and analyzing antenna array patterns. Adjust parameters like the number of antennas, distance, delay, and frequency to generate real-time heatmaps and beam profiles.

License

Notifications You must be signed in to change notification settings

HarmoniCode/BeamForming

Repository files navigation

Beamforming Simulator

alt text

This project is a Beamforming Simulator that visualizes the beamforming process using a heatmap and beam profile. The simulator allows users to configure various parameters such as the number of antennas, distance between antennas, delay between antennas, and array geometry.

Features

  • Heatmap Visualization: Displays the intensity of the beamforming pattern on a 2D grid.
  • Beam Profile Visualization: Shows the beam pattern on a polar plot.
  • Antenna Configuration:
    • Adjust the number of antennas.
    • Set the distance between antennas.
    • Configure the delay between antennas in degrees.
    • Select the array geometry (Linear or Curved).
    • Adjust the curvature for curved arrays.
  • Frequency Configuration:
    • Set a global frequency for all antennas.
    • Adjust individual frequencies for each antenna.
  • Position Configuration:
    • Manually adjust the x and y positions of each antenna.
  • Predefined Scenarios: Load predefined scenarios from JSON files for 5G, Tumor Ablation, and Ultrasound applications.
  • Dynamic Updates: Real-time updates of the heatmap and beam profile as parameters are adjusted.

Requirements

  • Python
  • PyQt5
  • Matplotlib
  • NumPy

Installation

  1. Clone the repository:

    git clone https://github.com/HarmoniCode/BeamForming.git
    cd BeamForming/
  2. Install the required packages:

    pip install -r requirements.txt

Usage

  1. Run the main script:

    python main.py
  2. Use the GUI to configure the beamforming parameters and visualize the results.

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

A Python-based Beamforming Simulator with a PyQt5 GUI for visualizing and analyzing antenna array patterns. Adjust parameters like the number of antennas, distance, delay, and frequency to generate real-time heatmaps and beam profiles.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages