8000 GitHub - abarran02/signal-generation
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

abarran02/signal-generation

Repository files navigation

SDR Signal Generation Utility

Instructions

Creating and Activating a Virtual Environment

Using a virtual environment is highly recommended.

  1. Create a Virtual Environment:

    python -m venv .venv
  2. Activate the Virtual Environment

    Windows:

    .venv\Scripts\activate

    macOS/Linux:

    source .venv/bin/activate
  3. Install dependencies

    pip install -r requirements.txt

Running the Application

To run the Flask web app, run:

python app.py

The application will be available on the default port 5000.

API Reference

Backend interface to generate radar waveforms with variable parameters and output formats.

Endpoints

Any numeric value may be expressed as an integer, float, or in scientific notation (e.g. 2.2e3 or 4.5e-6) and it will be converted accordingly. Note that the server will not return a warning or error when truncating a float to an int.

The following parameters are used for all API endpoints:

Name Type Required Description
sample_rate int Yes Waveform sample rate in hertz
form string Yes Output format either sc16, png, graph, or threeDim

All of the following endpoint-specific parameters are required. Requests missing any parameter will return an HTTP 400 Bad Request. Available endpoints include:

[GET] /generate/cw

Generates a Continuous Wave of constant amplitude and frequency.

Parameters

Name Type Description
signal_length float Length of output signal in seconds

[GET] /generate/lfm

Generates a Linear Frequency Modulated pulse.

Parameters

Name Type Description
fstart float Starting frequency in hertz
fstop float Ending frequency in hertz
signal_length float Length of output signal in seconds

[GET] /generate/bpsk

Generates a Binary Phase-Shift Keying pulse.

Parameters

Name Type Description
bit_length float Symbol duration in seconds
num_bits int Number of bits to use when randomly generating a maximal length tap sequence
amplitude int Maximum waveform magnitude
pri float Time interval between two adjacent pulses in seconds
num_pulses int Number of pulses to generate
pulse_reps int Repetitions within each pulse

Filter Parameters

Name Type Description
cutoff_freq float Pass filter edge in hertz
num_taps int Number of taps to apply to the filter window
4EB8

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0