How do I create an Amplitude Modulated Pseudorandom Bit Sequence using the System Identification Toolbox?
21 次查看(过去 30 天)
显示 更早的评论
MathWorks Support Team
2017-11-20
回答: MathWorks Support Team
2017-12-20
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?
采纳的回答
MathWorks Support Team
2017-11-20
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 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Beamforming and Direction of Arrival Estimation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!