FMCWRadar

From RevSpace
Jump to navigation Jump to search
Project FMCWRadar
Experimenting with inexpensive FMCW radar modules
Status Initializing
Contact bertrik
Last Update 2020-05-07

Goals

This project is about experimenting with inexpensive FM-CW radar modules as can be found on AliExpress:

  • gaining experience with the hardware
  • gaining experience on what kind of compensation/calibration is needed
  • apply it in a fun project, e.g. pedestrian speed indicator, or detect bats with it

Perhaps start a cool collection of inexpensive "software-defined" radar projects?

The current generation of inexpensive radar modules (around E40,-) has these typical features:

  • operates on 24 GHz
  • has quadrature outputs (I and Q) so it can not just detect movement (through Doppler) but also distinguish direction
  • has a modulation input that allows a subtle change of the radar operating frequency
  • often combined with a cortex M0 or M3/M4 microcontroller,
  • pre-configured with firmware to do detection of object speed and direction

Theory

An FM-CW radar is a few steps more advanced than the very basic Doppler radars:

  • I and Q outputs as described above
  • Modulation input, that allows you to quickly sweep the radar frequency

The basic idea behind an FM-CW radar is that the frequency is sweeped, at some continuous rate. A signal that is reflected by an object in the view of the radar, will arrive back at the radar with some delay. Because of the delay, the outgoing signal will have already changed in frequency compared to the incoming reflected frequency. At the radar, the delayed incoming signal is "mixed" with the outgoing signal, resulting in a low-frequency I+Q output of the difference frequency. The difference frequency at the output of the radar is therefore linearly related to the time delay, so also linearly related to the object distance.

calculation

I have very little to go on, so making a couple of assumptions:

  • radar works at 24 GHz, therefore wavelength = 12.5 mm
  • suppose the tuning range of a full FM sweep is 100 MHz
  • object distance d is 1 meter, so time-of-flight = 2 * d / c = 6.67 ns
  • to get a 1 kHz difference frequency at this range, we need a chirp rate of delta_f / delta_t = 1 kHz / 6.67 ns = 150 GHz/s
  • the FM sweep therefore has to be done in 0.67 ms, or 1500 sweeps/s
  • suppose the FM sweep consists of 100 individual steps, we need 150,000 steps/s

So the modulation output needs to be updated at 150 kHz, and the IQ inputs needs to be sampled at (say) 10 kHz. Quite challenging, but not necessarily impossible.

Challenges

  • Hardware:
    • do the available radar modules actually use the FM modulation input of the radar?
    • how is the FM modulation input wired to the CPU? The STM32 processors typically used dont't have a DAC output!
  • Software:
    • can we find the source code of existing firmwares?
    • can we reprogram the microcontroller -> SWD-signals are generally brought out to a header
  • How to cope with real-world inaccuracies:
    • I-Q outputs are not exactly 90 degrees apart
    • I-Q outputs have an amplitude inbalance
    • I-Q outputs have a bias
    • dynamic range: this needs to be very high, since the radar equation has a 4th-power dependency on distance
  • Get some rough idea of
    • inaccuracies a described above
    • Frequency change per m/s
    • Typical modulation index: MHz / V on the modulation input, and the corresponding sweep rate
  • Choose signal processing properties
    • choose a appropriate sample rate
    • can we calculate an FFT fast enough, fixed point or floating point
    • what properties should the FFT have, obviously complex->complex, window function?
    • can we stack multiple FFTs for increased sensitivity?

Buying an FM-CW radar

From Yanwu Tech:

  • FMK24-A series, a range of FMCW modules which appear identical in hardware at least

Acconeer radars:

AliExpress 24 GHz radar with FMCW, no CPU:

AliExpress 24 GHz radar, DM-series:

AliExpress 24 GHz radar, FM-series:

AliExpress 24 GHz radar, other:

Analog front-end for many of the radar modules above seems to be SRK1101A.