I am working on fmcw radar with these parameters :
end
Kindly help me through this query, awaiting reply

 Accepted Answer

I don't have your data to test it, but if you are using a 1ms sweeping time, then you need to update your sweep slope too. Instead of using
sweep_slope = 500e6/(5.5*600/3e8)
It should be
swee[_slope = 500e6/1e-3
HTH

14 Comments

I believe you can attach a file to the question.
I have attached my model having the parameters as we discussed. Kindly look into it and help me out because I am badly stuck here.
I looked at your model. The biggest issue is your range estimation. Based on your configuration, your signal is 50k samples long yet your FFT is set to 2048 samples long. If you set your FFT length to 50k then the result is correct. Of course this is a quick fix. In real system, you can consider down sample after dechirp so you don't have to take a FFT this long.
I think you could also consider change the simulation configuration to fixed step and discrete, since this is a discrete simulation.
HTH
You can turn on the port signal dimension display. But your sampling rate is 50 Mhz and your sweep time is 1 ms. So if you multiply the two together, you have 50 k samples for each sweep. What you said is true, but in that case you need to down sample first like I mentioned in my comment. Otherwise you will have to carry the original sample rate and dimension with you.
HTH
In your range estimation block, instead of using N = 2048, change it to
N = numel(beat_signal)
You should get the correct result. I may have written it wrong. But signal dimension is a dimensionless integer, not a frequency. Here is the reference page on how to see signal dimensions
I am still getting no output. It says " Displays can only show at most 200 elements of a vector or [20x10] elements of a matrix signal"
I don't know where you are looking at. Like I said, I get your model, I believe I only changed the aforementioned line in the Range Estimation and it works fine for me.
Hassam Mahmood
Hassam Mahmood on 23 Sep 2016
Edited: Hassam Mahmood on 23 Sep 2016
OKay I resolved this issue, here is my new code : length=numel(beat_signal) p = nextpow2(length) N = 2^p;
N is 19 and length is 500000; but as I mentioned my output is zero. Where am I going wrong?
Hey thank you so much! I got the desired output, I kept transmitter power low that is why I did not get any output. I really appreciate your efforts and back to back comments. Let me vote for it and accept your answer and yes for any another query you want me to continue from here or make a new thread?
You are welcome. If it's a different issue, please make a new thread.
As you mentioned, I desampled in order to achieve 2048 FFT samples. I used decimation block with n=250, the problem is I don't get expected output. For target at 300m i get an output of 1500? Any suggestions?
did you also adjust the computation for the range? After downsample, your sampling rate needs to be adjusted
Yes I adjusted it and now it's working fine, thank you
but when I set my target at 300m, it gives me -299m but when I set it to 299m it gives me exact value. What could be the issue for 300m? Why giving me a negative value

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!