Filter löschen
Filter löschen

Ti 6843 mmWave sensor - How can I get micro-Doppler?

41 Ansichten (letzte 30 Tage)
Annie
Annie am 8 Apr. 2024
Beantwortet: Honglei Chen am 10 Mai 2024
Tool: Ti 6843 mmWave sensor
I have created code regarding this radar to collect frames of data. Now what I would like to do is get raw radar data or proccess my current data ( range vs Doppler vs Frames) I really am not sure what to do as my goal is to get a microdoppler plot. Please be as specfic as possible, as I am very new at this.
  5 Kommentare
William Rose
William Rose am 10 Apr. 2024
I looked briefly at this site:
Two examples at that site show tiradar() being called inside a while loop. Your code uses a for loop. The benefit of a while loop is that one can specify a collection duration in seconds, using tic() and toc(). I also see that one specifies the frame rate in a configuration file. I assume you did that. The example recommends a max frame rate of 5 fps.
Structure meas includes meas.RangeDopplerResponse and meas.RangeAngleResponse. I think thse have already had FFTs done to them - but I could be wrong. You have looked at the documentation a lot more than me so you should know. I think the FFTs have been done already because of the coe fragment below:
% Configure and start the sensor by invoking the first step function
tiradar();
% Creates a scope for viewing a range- Angle response map
rngAngleScope = phased.RangeAngleScope;
% The input data to scope is response data that has already been
% processed, set IQDataInput as false
rngAngleScope.IQDataInput = false;
% Creates a scope for viewing a range- Doppler response map
rngDopplerScope = phased.RangeDopplerScope;
% The input data to scope is response data that has already been
% processed, set IQDataInput as false
rngDopplerScope.IQDataInput = false;
rngDopplerScope.DopplerLabel = 'Doppler velocity (m/s)';
Code above from here. As you no doubt know, raw radar data consists of in-phase and quadrature components ("I-Q"). In fact, if meas.rangeAngleResponse and meas.RangeDopplerResponse are complex, then they have not been FFT's yet; if they are real, they probably have been.
If the data in meas has already been FFT'd, then you cannot do a STFT on it.
If you do
[dets,timestamp,meas,overrun] = tiradar();
from inside a while loop that runs for 40 seconds, with frame rate set to 5 fps, does structure meas contain data for all 200 frames, when the while loop is done? Or is meas getting overwriten on subsequent passes around the while loop? It would help you to know. I recommend doing
whos(meas.RangeAngleResponse)
whos(meas.RangeDopplerResponse)
after the while loop. This will tell you the array sizes, and whether or not the variables are complex.
Annie
Annie am 11 Apr. 2024
Bearbeitet: Annie am 11 Apr. 2024
I am sure the data has already had FFTs done to it. I wonder if I do a inverse fft would that be sufficent and then perform an stft. When I do an ifft I get complex values, but it results in a 3d matrix. I linked an example of my data. Doing what is specified in the document, no matter what stoptime and change of readmode, will always result in a 256 by 16 matrix. This made me wonder if I was only storing one frame or overwriting previous frames, which when graphed and reading the documentation further, supports that assumption. Either way it seems like the previously written code is sufficient for collecting frames of data.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Honglei Chen
Honglei Chen am 10 Mai 2024
TI6843 itself does not have capability to output raw data. It only outputs the processed data. Therefore, as is you cannot derive micro-Doppler from the data. I believe the output data is also just the power, thus even IFFT would not help recover the phase (which is needed if we want to recover Doppler or micro-Doppler).
To obtain the raw data, you will need an extra card from TI. See the link below
Hope this helps

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by