# CW Radar using Red Pitaya and GNU Radio

Perhaps the simplest waveform a radar can use is a continuous unmodulated tone.
You will get no direct range measurements from such a system, but you will inherently get Doppler beat frequency `f _{beat}` measurements proportional to radar transmit frequency

`f`for target radial velocity

_{tx}`v`using speed of light

`c`. From the program CW_doppler.py:

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

## Software Defined Doppler Radar

A software defined radar implementation of a CW radar using GNU Radio might look like this diagram:

### Avoid zero center frequency: IQ imbalance

Here we use the technique of moving our main transmit/receive frequency away from the center frequency of the complex baseband, to avoid interference from IQ imbalance.

## Estimating radial velocity from CW software defined radar

Here we are addressing unmodulated CW (pure everlasting sinewave emission, delta functional in frequency domain).
The estimation problem is accurately determining `f _{beat}` by which

`v`is estimated. Of course, the return signal is highly corrupted by noise, not least of which is the phase noise of the transmitter, particularly under 100 MHz where the Doppler shift is relatively small, compared to a 2.4 GHz radar.

A peak-finding algorithm on the frequency domain representation of the return signal obtained via FFT is typically not the best choice. If noise is a problem, and you want to find multiple targets, subspace frequency estimation methods are known to be highly precise for solvable problems. I have implemented subspace frequency estimation code for Python, Fortran, C and C++. Matlab’s implementation is very inefficient by comparison–Matlab takes far longer to solve and with poorer results.

### Expected beat frequencies

The radar transmits at 47.010 MHz, and for vehicles on the highway, by the equation above, most return signals will be in the 47.0099 MHz to 47.0101 MHz range, that is, the beat frequencies will be less than 100 Hz magnitude and most less than 10 Hz magnitude. The exact beat frequency for a given trajectory and fixed radar parameters depends entirely on the radial velocity.

### Target true velocity estimation

The radial velocity can be computed and used to invert measurements to get an estimate of true target velocity given oblique measurements. The usual non-uniqueness issues apply.

## Target range estimation: CW radar

Attempting to estimate bounds on range using unmodulated CW radar from targets with known travel paths and speeds can be a thought exercise, but not necessarily a fruitful pursuit. It is more practical to apply frequency modulation, whether stepped or swept in frequency to enable traditional range measurements with fewer a priori constraints. An example of stepped frequency FSK CW radar is in this paper.

** Tags: **
cw-radar,
gnu-radio,
pi-radar,
red-pitaya

** Categories: **
radar