Transfer function response using idinput as input signal.
11 次查看(过去 30 天)
显示 更早的评论
Hello, I currently have a binary(0, 1 alternating) input signal which I created using the idinput signal object. In addition, I also have a discretized transfer function which I have created.
Here is an example of my input signal function: u = idinput(100,'prbs',Band,Range);
My discretized transfer function is a normal discrete transfer function.
I want to plot the time domain response of this idinput signal with a system response using the discretized transfer function. I tried to use the lsim command with the following arguments(transferFunction, u, time).
I am getting an error when plotting the output however, stating that: Incorrect number or types of inputs or outputs for function 'iosize'.
Does anybody know how to properly plot the discretized transfer function response with an idinput signal object.
Regards.
1 个评论
Jon
2023-7-28
Please provide a simple, standalone, runnable example that reproduces the problem, or at least copy your code, and the full error message. To include code, please use the insert code tool on the MATLAB answers toolbar.
采纳的回答
Star Strider
2023-7-28
It would help to have the details.
Example —
num = rand(1,2)
den = rand(1,3)
Ts = 0.01;
sys = tf(num,den,Ts)
Range = [-2,2];
Band = [0 1/4];
u = idinput(100, 'prbs', Band, Range);
[y,t] = lsim(sys, u);
figure
plot(t, y, 'DisplayName','Output')
hold on
plot(t, u, 'DisplayName','Input')
hold off
grid
legend('Location','best')
This works.
.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Measurements and Feature Extraction 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!