How do I create an Amplitude Modulated Pseudorandom Bit Sequence using the System Identification Toolbox?
35 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
MathWorks Support Team
il 20 Nov 2017
Risposto: MathWorks Support Team
il 20 Dic 2017
I would like to create a pseudorandom bit sequence (PRBS) that also has an amplitude modulation.
This is used in some systems identification papers, and is referred to as Amplitude Modulated Pseudo-Random Bit Sequences (APRBS).
Does MATLAB have a built-in function to do this?
Risposta accettata
MathWorks Support Team
il 20 Nov 2017
Unfortunately, the Systems Identification Toolbox does not have this functionality built in.
However, it is possible to create a signal that has the properties that you want by first creating a PRBS, then finding the indices at which the sequence changes, and finally, assigning the values of the sequence to have random amplitudes between the indices where the changes occur.
The MATLAB code snippet below illustrates this workflow:
u = idinput(101,'prbs',[0 1],[-1 1]);
d = diff(u);
idx = find(u) + 1;
idx = [1;idx];
for ii = 1:length(idx) - 1
amp = randn;
u(idx(ii):idx(ii+1)-1) = amp*u(idx(ii));
end
u = u/max(u);
u = iddata([],u,1);
% Plot the data
figure
plot(u)
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Beamforming and Direction of Arrival Estimation in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!