Hello,
I am working with the area scanner project using IWR6843AOP and I want to interpret range bins as the equivalent distance in meters. I find the following equation in mmw_rfparser.c
outParams->rangeStep = (MMWDEMO_RFPARSER_SPEED_OF_LIGHT_IN_METERS_PER_SEC * profileCfg.digOutSampleRate * 1e3) /(2.f * slope * outParams->numRangeBins);
and slope is given by (from the same file)
slope = (float)profileCfg.freqSlopeConst * ((rfFreqScaleFactor*1e3*900.f)/(float)(1U << 26)) * 1e12;
rfFreqScaleFactor for IWR6843AOP is defined in soc.c to be 2.7, and MMWDEMO_RFPARSER_SPEED_OF_LIGHT_IN_METERS_PER_SEC is the speed of light (3e8 m/s).
The rest of the parameters are from the profileCfg fields in the configuration file, where numRangeBins is the next power of 2 round up of numAdcSamples.
My configuration file has
profileCfg 0 60.5 100 25 69 0 0 50 1 256 6000 0 0 30
which gives:
freqSlopeConst = 50;
numAdcSamples = 256;
digOutSampleRate = 6000;
substituting into slope, and using 1U<<26 = 67108864 (shift left 26 times), we get
slope = 50*((2.7*1e3*900)/(67108864))*1e12 = 1.8105e+12
then using this value in the rangeStep equation, we have
rangeStep = 3e8*6000*1e3/(2*1.8105e12*256) = 1.9418m
This value seems to be wrong as it is very large and I was expecting something around 0.07m.
Can you kindly advise what went wrong in the above calculations, or if I am missing something in my understanding?
Thanks a lot,
Abd