Is it possible to create a SFCW waveform from phased.SteppedFMWaveform?
1 次查看(过去 30 天)
显示 更早的评论
I'm trying to create a step frequency continuous wave waveform using the phased array toolbox. I know there isn't a dedicated waveform in the toolbox for this, but it looks like the pulsed SteppedFMWaveform could me modified for my purposes - the documentation for the waveform the DutyCycle property states:
"Waveform duty cycle, specified as a scalar from 0 through 1, inclusive. This property applies when you set the DurationSpecification property to 'Duty cycle'. The pulse width is the value of the DutyCycle property divided by the value of the PRF property."
So by setting DutyCycle to 1 I figure I should be able to create a SFCW waveform. However when I run this I get an error suggesting the PulseWidth (and therefore DutyCycle) cannot be equal to 1:
sSFM = phased.SteppedFMWaveform('DurationSpecification', 'Duty cycle', 'DutyCycle', 1)
Error using phased.internal.AbstractPulseWaveform (line 140)
Expected PulseWidth to be a scalar with value < 1.
Error in phased.internal.AbstractContinuousPhasePulseWaveform (line 49)
obj@phased.internal.AbstractPulseWaveform(varargin{:});
Error in phased.internal.AbstractSteppedFMWaveform (line 40)
obj@phased.internal.AbstractContinuousPhasePulseWaveform(varargin{:});
Error in phased.SteppedFMWaveform (line 113)
obj@phased.internal.AbstractSteppedFMWaveform(varargin{:});
If anyone knows what I'm doing wrong or has the answer I'd appreciate it!
0 个评论
采纳的回答
Shravan Malagihal
2022-1-4
Dear Andrew,
By default, the commond considers 'Pulse width' as Pulse duration property.
use the following command
sSFM = phased.SteppedFMWaveform('SampleRate',fs,'NumSteps',5, ...
'PulseWidth',100e-6,'FrequencyStep',20e3,'NumPulses',2);
plot(sSFM,'PulseIdx',3);
I hope it solves your problem.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Continuous Waveforms 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!