Wiki

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
resources:eval:user-guides:ad9081_fmca_ebz:radar [27 Sep 2021 12:34] – [Using the OFDM Radar] David Winterresources:eval:user-guides:ad9081_fmca_ebz:radar [30 Jan 2023 01:51] (current) Joyce Velasco
Line 1: Line 1:
-===== gr-ofdmradar - OFDM Radar on MxFE Platforms using IIO =====+====== gr-ofdmradar - OFDM Radar on MxFE Platforms using IIO ======
  
 This page is dedicated to the details of building an OFDM radar on a ZCU102 + AD9081 with GNURadio and IIO. This page is dedicated to the details of building an OFDM radar on a ZCU102 + AD9081 with GNURadio and IIO.
 +
 +This was based on a paper pressented at:
 +  *  {{youtube>hXLwt3q2evs}}
 +  * [[https://events.gnuradio.org/event/8/contributions/130/attachments/54/103/GRCON%202021%20Winter.pdf|slides]]
  
 If you just want to get the software and hardware running, the following section covers the setup instructions: If you just want to get the software and hardware running, the following section covers the setup instructions:
Line 22: Line 26:
 ==== Preparing the ZCU102 boot files ==== ==== Preparing the ZCU102 boot files ====
  
-It is usually a good idea to start out by installing a recent image of [[resources:tools-software:linux-software:adi-kuiper_images|Kuiper Linux]] onto the ZCU102's SD card, so you don't have to rebuild the rootfs.+It is usually a good idea to start out by installing a recent image of [[:resources:tools-software:linux-software:kuiper-linux |Kuiper Linux]] onto the ZCU102's SD card, so you don't have to rebuild the rootfs.
  
 === Linux Kernel === === Linux Kernel ===
Line 126: Line 130:
 <code> <code>
 # Checkout code # Checkout code
-git clone https://github.com/Yamakaja/gr-ofdmradar.git+git clone https://github.com/analogdevicesinc/gr-ofdmradar.git
 cd gr-ofdmradar cd gr-ofdmradar
  
Line 179: Line 183:
 For more details in general about the theoretical underpinnings of OFDM radar, please check out Martin Brauns dissertation: [[https://publikationen.bibliothek.kit.edu/1000038892]] For more details in general about the theoretical underpinnings of OFDM radar, please check out Martin Brauns dissertation: [[https://publikationen.bibliothek.kit.edu/1000038892]]
  
-For more information about gr-ofdmradar system parameters check out the [[https://github.com/Yamakaja/gr-ofdmradar/blob/master/README.md|gr-ofdmradar/README.md]]+For more information about gr-ofdmradar system parameters check out the [[https://github.com/analogdevicesinc/gr-ofdmradar/blob/master/README.md|gr-ofdmradar/README.md]]
  
  
-  * [[https://github.com/Yamakaja/gr-ofdmradar|gr-ofdmradar]]+  * [[https://github.com/analogdevicesinc/gr-ofdmradar|gr-ofdmradar]]
   * [[https://github.com/Yamakaja/gnuradio/tree/feature/gr-iio-tdd|GNU Radio branch with AD9081 blocks]]   * [[https://github.com/Yamakaja/gnuradio/tree/feature/gr-iio-tdd|GNU Radio branch with AD9081 blocks]]
  
Line 190: Line 194:
 This section will describe how you can use the OFDM radar to get some actual returns, how you can tune the system and choose your parameters. This section will describe how you can use the OFDM radar to get some actual returns, how you can tune the system and choose your parameters.
  
-Before going on, please make yourself familiar with the basic operating principles of an OFDM radar, and the meaning of the system parameters: https://github.com/Yamakaja/gr-ofdmradar#operating-principle+Before going on, please make yourself familiar with the basic operating principles of an OFDM radar, and the meaning of the system parameters: https://github.com/analogdevicesinc/gr-ofdmradar#operating-principle
  
 To reinforce your understanding, lets take a look at this example set of parameters. To reinforce your understanding, lets take a look at this example set of parameters.
Line 221: Line 225:
   * The ''display_mult'' parameter is used in the receive path to scale the intensity of the return signal for the optimal viewing experience™, but **does not** change the receiver **sensitivity**. This is simply a post-processing / visual operation!   * The ''display_mult'' parameter is used in the receive path to scale the intensity of the return signal for the optimal viewing experience™, but **does not** change the receiver **sensitivity**. This is simply a post-processing / visual operation!
  
 +Now lets take a look at the OFDM radar screen as you may see it when opening the simulation example in gr-ofdmradar:
 +
 +{{:resources:eval:user-guides:ad9081_fmca_ebz:radar:gr_ofdmradar_screen.png|}}
 +
 +There are still four parameters left to be explained, that control visualization parameters (But don't change anything about the signals themselves):
 +
 +  * The range slider controls range which is shown, and can be thought of as an inverted zoom slider: If you want to zoom in the range dimension, move the slider to the left.
 +  * The doppler range slider works similarly, but reduces the doppler ranges which are shown. This isn't usually too much of an issue.
 +
 +To explain the min and max value sliders, we need to take a look at how the visualization code works:
 +
 +  * The input values to the gui widget have already been fully processed and can be thought of as a complex 2D matrix over range and doppler. To visualize this matrix we first take the energy of each value, then use a mapping function like the following to map those energy values to something between 0 and 1, where ''minV'' and ''maxV'' are controlled by the sliders:
 +
 +<code>
 +def mapv(x):
 +    x = (x-minV)/(maxV-minV)
 +    return max(min(x, 1.0), 0.0)
 +</code>
  
 +This value is then fed though the turbo color map and shown on screen. For more information see the fragment shader in which all of this is happening: https://github.com/analogdevicesinc/gr-ofdmradar/blob/master/lib/resources/screen.frag
  
 +To really get an understanding of the max and min sliders you may need to play around with them in a simulation, but at least now you should have an idea of what they're doing.
  
 ---- ----
Line 467: Line 491:
 {{:resources:eval:user-guides:ad9081_fmca_ebz:radar:gr_ofdmradar_gui.png|}} {{:resources:eval:user-guides:ad9081_fmca_ebz:radar:gr_ofdmradar_gui.png|}}
  
-**For more information on the parameters and OFDM radar algorithm, take a look at the [[https://github.com/Yamakaja/gr-ofdmradar#operating-principle|gr-ofdmradar/README.md]].**+**For more information on the parameters and OFDM radar algorithm, take a look at the [[https://github.com/analogdevicesinc/gr-ofdmradar#operating-principle|gr-ofdmradar/README.md]].**
  
 == DoA Blocks == == DoA Blocks ==
resources/eval/user-guides/ad9081_fmca_ebz/radar.1632738843.txt.gz · Last modified: 27 Sep 2021 12:34 by David Winter