GNU Radio Passive Radar Project

GNU Radio is a free software toolkit for learning about, exploring, building and deploying software radios.

Goals

The fundamental goal is to construct a Passive Radar system by extending the existing GNU Radio infrastructure. Passive Radar systems are also sometimes called bistatic radar systems since the the transmitter and receiver are at different locations, or passive coherent location systems since they report target locations, not just range and direction.

The system is expected to be able to locate and track multiple aircraft over a range of approximately 100km. Actual performance will depend strongly on the installation location and geography, location and number of transmitters, location and number of coherent receivers, kinds of aircraft, algorithms implemented, etc.

The high-level plan

We intend to utilize broadcast FM transmitters as the illuminators of opportunity. We're choosen FM for several reasons:

To keep life simple, we will start with a single location that contains four coherent receivers. The four receiver inputs will be connected to 4 monopole antennas configured in a 2 x 2 rectangular grid with lambda/2 spacing in X and Y.

The four antennas and receivers will form a 2x2 phased array. Using beam and null steering, we will extract the direct path reference (line of sight to transmitter) and will peform direction of arrival calculations of the reflections. Direction of arrival will most likely be implemented with the estimation of signal parameters via rotational invariance techniques (ESPRIT) algorithm.

In addition to direction of arrival information from the phase array, the other raw features extracted are the doppler shift and time difference of arrival (TDOA) for the direct path vs reflection. We will determine these by cross correlating the reference signal to the reflections at various time offsets and doppler shifts. (Fast algorithms based on the FFT exist for this). We have simulated TDOA and doppler returns. This animation shows a 2D plot of doppler (y-axis: 0 in the middle) and range (x-axis) for two targets over 60 simulated seconds. The bright spots are where the correlation is high.

Assume that we will generate estimates of TDOA, doppler and direction of arrival on the order of once every 10 to 30 seconds. The next problem is to map these noisy observations into an estimate of target position, velocity and possibly type. In general this is the tracking problem, and there is an enormous body of literature. The most common strategies use kinematic state estimation with a Kalman filter refining the estimate of the target's state over time. Just assigning raw input estimates to multiple target tracks is a hard problem. It appears that the preferred technique for this is multiple hypothesis tracking (MHT).

Challenges

Probably the biggest challenge facing us is the amplitude of the reflections compared to the direct path from the transmitter. They're small! Under the assumptions that the transmitter, receiver and target all behave like isotropic radiators (spherical radiation pattern) and that the target has a radar cross section of 10 m^2 (about 737 size), for likely geometric scenarios the reflections are between 80 and 105 dB below the direct path. See signal_levels.py Given that the USRP uses a 12-bit A/D converter, with an SNR of 64dBc, our chance of seeing a reflection in the presense of a direct path signal is zero. Thus we've got to find a way to subtract off a large part of the direct path signal prior to digitization.

The basic idea is to steer a null towards the direct path in the analog domain. We can do this with what is effectively a single tap filter implemented with a phase shifter and variable gain amplifier. Using two antennas 1/2-lambda apart, call one of them the reference input. We phase shift and scale that, then add it to the other antenna input. We adjust the phase and gain to minimize the sum. [I've run this idea by some clueful RF people and they think it'll work.]

Suggested reading

These books and papers are highly relevant:

Getting the software

The GNU Radio software is available by following the links on the GNU Radio home page at http://www.gnu.org/software/gnuradio. Tarball distributions are periodically made, and the latest development version is always available via CVS.