# Narrowband radar on lowband VHF (25-50 MHz) simulation

A radar based on Red Pitaya may operate for calibration or even primary purposes on lowband VHF (25-50 MHz). A primary reason one might use a radar on lowband VHF is for example measuring human, animal or vehicle targets using global license-free frequency bands.

Such a radar can be handheld and battery powered, with collapsible antenna rods. The humanitarian demand for a such a radar could be significant as a much more compact and economical radar than the coffee can radars that have become popular after I developed the first such “personal radar” in 2006.

## Initial thoughts

These are some initial thoughts on feasibility of a $300 narrowband lowband VHF radar.

### Spectrum availability

There are global license-free frequencies in the 40-50 MHz range. We can just use the US license-free frequencies in the 40-50 MHz range for now.

### Signal processing

- I found that using FFT-based methods breaks down for the narrowband radar because the frequency separation is too small–a common PC runs out of RAM, and certainly a small embedded CPU would as well. I tried to squeeze more frequency resolution out of the FFT, but a normal 8 GB laptop would run out of RAM, so it’s not workable on a 1 GB RAM Raspberry Pi 3.
- Using subspace estimation methods to find beat frequency: CWsubspace.py the narrowband, small beat frequency separation seems initially possible in simulation. In initial measured data, the clipped ADC due to building 60 Hz pickup makes lots of extra fake beat frequencies.
- While working on the hardware fix to the clipped ADC (1:9 or 1:16 transformer for Red Pitaya input), one can make use of existing slightly clipping data by implementing a digital bandpass filter around the known center frequency. This is “fair” and standard practice, even without the clipping.

### Subspace frequency estimation

Signal subspace estimation techniques like ESPRIT and RootMUSIC find applications in radar, whether angle of arrival estimation or for close-spaced noisy sinusoid frequency estimation. There are bounds on subspace estimation performance as with any signal estimation technique, but in a subset of cases involving short range, narrowband radar, subspace estimators may have significant advantages.

#### Advantages of signal subspace estimators

- excellent performance vs. FFT for a given SNR, particularly with low SNR
- far lower RAM demands for a given accuracy vs. FFT

#### Disadvantages of signal subspace estimators.

- CPU demands are considerable as with FFT, mitigate by using optimized signal subspace estimation FORTRAN code and libraries e.g. LAPACK.
- Have to have
*a priori*on number of sinusoids*stronger than desired signal*expected. - Filtering signal before estimation necessary as with FFT to constrain estimate to expected frequency range (e.g. automobiles not expected to drive 500 m/s)

## Simulation of CW radar and subspace beat frequency estimation

To parallelize the work of modeling and designing analysis, we can

- Model expected beat frequencies for CW and/or FMCW
- Simulate estimation with noisy sinusoids at the modeled beat frequencies

### Model of Expected CW frequency

CW only gives Doppler. For most situations we want range and Doppler.

A model for beat frequency vs radial velocity is is piradar/CW_doppler.py.

`f _{beat} = 2 * v * f_{tx}/(c-v)`

as discussed here.

### Model of Expected FMCW beat frequency

FMCW typically linearly sweeps the transmit frequency. Non-linearities in the sweep broaden the target uncertainty (increase error). A model for expected beat frequencies is in: CalcBeat.py. FMCW beat frequencies in Hertz are defined by

`f _{beat} = R * B/(t_{m} c)`

`R`- one-way range to target [meters],
`B = f`_{max}- f_{min}- chirp RF bandwidth
`c`- speed of light
`t`_{m}- chirp cadence [Hz]

```
./CalcBeat.py -tm .1 -b 10e6
```

For point target ranges [1, 10, 50] meters you may expect beat tones [‘0.7’, ‘6.7’, ‘33.4’] Hz. Using 10.0 MHz RF bandwidth, you may expect 15 meters range resolution by

`ΔR = c/(2 B)`

If you sweep from 902..928 MHz, then `B=26` MHz.
However, using *a priori* knowledge about the targets, super-resolution techniques can enable better resolution proportional to SNR.

### Subspace estimator performance

These plots demonstrate a system (CW or FMCW) that results in a true `f _{beat}` = 2.0 Hz.
The estimation is performed by ESPRIT in piradar/CWsubspace.py

Estimation error with ESPRIT and block length 1000 gave beat frequency estimation error of order 10%.

## FMCW narrowband radar simulation

This simulation from piradar/FMCW_sim.grc was conducted with GNU Radio and the standard built-in modules. The parameters were chosen for convenience of display in plots, not for a particular scenario.

Parameter | Value | Units |
---|---|---|

sample rate | 1e6 | samples/sec |

sweep freq | 50 | Hz |

VCO modulation | ramp (sawtooth) | |

sweep bandwidth | 100e3 | Hz |

The simulation was performed at baseband, so upon using DUC & DDC one could sweep from 40.7 to 40.8 MHz or whatever desired frequency.

The glitches are customarily eliminated in a straightforward way by dropping those samples (or skipping them) since they are inherently periodic.

The receive spectrum shows two distinct targets–one with a beat frequency of about 7 kHz and another at about 4.7 kHz. This corresponds to a range of about 210 km and 140 km – perhaps an F-region and E-region ionosphere radar return, respectively. The parameters used in these plots were more suitable for HF (2-10 MHz) measurements of the ionosphere.

Using low-band VHF, we can sweep a few MHz in the license-free bands, and sweep at a faster cadence. Let’s say the radar sweeps 5 MHz at a 1 kHz cadence, then a target 20 meters away returns a 667 Hz beat frequency.

## Leave a comment