MATLAB Answers


Modulation classification dataset creation error

Asked by Pavlos Triantaris on 27 Aug 2019
Latest activity Answered by Chidvi Modala on 30 Aug 2019
Hello everybody.
I have been trying to create a signal dataset with controlled parameters for modulation classification experiments, and for that I found the code on this page easy to understand. Unfortunately, it does not work when I try it.
Up to a certain point, of course, I get no errors. But when I try to run this body of code:
channelInfo = info(channel);
frameStore = helperModClassFrameStore(...
transDelay = 50;
for modType = 1:numModulationTypes
fprintf('%s - Generating %s frames\n', ...
datestr(toc/86400,'HH:MM:SS'), modulationTypes(modType))
numSymbols = (numFramesPerModType / sps);
dataSrc = getSource(modulationTypes(modType), sps, 2*spf, fs);
modulator = getModulator(modulationTypes(modType), sps, fs);
if contains(char(modulationTypes(modType)), {'B-FM','DSB-AM','SSB-AM'})
% Analog modulation types use a center frequency of 100 MHz
channel.CenterFrequency = 100e6;
% Digital modulation types use a center frequency of 900 MHz
channel.CenterFrequency = 900e6;
for p=1:numFramesPerModType
% Generate random data
x = dataSrc();
% Modulate
y = modulator(x);
% Pass through independent channels
rxSamples = channel(y);
% Remove transients from the beginning, trim to size, and normalize
frame = helperModClassFrameGenerator(rxSamples, spf, spf, transDelay, sps);
% Add to frame store
add(frameStore, frame, modulationTypes(modType));
I get the following message:
Let it be noted that I have installed all three necessary toolboxes, and Simulink is running beforehand. I also tried converting the "classes" variable to string instead of categorical, but that did not solve the problem.
Any help will be appreciated. Thank you.


Sign in to comment.

1 Answer