Not enough input arguments with transfer function operations
3 views (last 30 days)
Show older comments
Tomas Salvadores Viertel
on 28 Mar 2022
Edited: Tomas Salvadores Viertel
on 28 Mar 2022
Hi, I'm trying to use the Control System Designer to tune a simple PID controller. But when I open it, I get the following error:
Error using controlSystemDesigner (line 259)
Not enough input arguments.
This happens both by clicking the App icon and by calling It through the command line with or without a transfer function argument. The same happens with sisotool().
Trying to trace the error I noticed that I can no longer operate transfer functions. Running the following code,
>> s = tf([1 0], 1);
>> s*s
results in this error,
Error using * (line 80)
Not enough input arguments.
The same happens with any other transfer function operation. I tried unninstalling and reinstalling Matlab, but nothing changed. I'm currently using version 2021a.
0 Comments
Accepted Answer
Paul
on 28 Mar 2022
Edited: Paul
on 28 Mar 2022
Maybe tf is shadowed on your path. Does the output of the which command look like this:
which tf -all
6 Comments
Paul
on 28 Mar 2022
Edited: Paul
on 28 Mar 2022
I'm pretty sure my installation has all products. Maybe something changed for 2022 on Answers compared to Tomas's version (unknown) and my local installation (2021b).
Why does answers show everything as "Shadowed" except the first output, which is not the case on Tomas's output or mine (see below)?
Any idea why Tomas's list shows a file lftdataSS.m, which isn't tf.m?
Here's what I get on my local installation:
>> ver Matlab
-----------------------------------------------------------------------------------------------------
MATLAB Version: 9.11.0.1769968 (R2021b)
-----------------------------------------------------------------------------------------------------
MATLAB Version 9.11 (R2021b)
>> which tf -all
C:\Program Files\MATLAB\R2021b\toolbox\control\ctrlmodels\@tf\tf.m % tf constructor
C:\Program Files\MATLAB\R2021b\toolbox\control\ctrlmodels\@DynamicSystem\tf.m % DynamicSystem method
C:\Program Files\MATLAB\R2021b\toolbox\shared\controllib\engine\+ltipack\@tfdata\tf.m % ltipack.tfdata method
C:\Program Files\MATLAB\R2021b\toolbox\ident\ident\@idParametric\tf.m % idParametric method
C:\Program Files\MATLAB\R2021b\toolbox\mpc\mpc\@mpc\tf.m % mpc method
C:\Program Files\MATLAB\R2021b\toolbox\shared\controllib\engine\@StaticModel\tf.m % StaticModel method
This output is kind of similar to Tomas's, but not the same. In particular, this list doesn't include the other +ltipack files, even though I actually have them. For example
>> exist('C:\Program Files\MATLAB\R2021b\toolbox\shared\controllib\engine\+ltipack\@ssdata\tf.m')
ans =
2
Any thoughts why my list doesn't show the other +ltipack files?
More Answers (0)
See Also
Categories
Find more on Classical Control Design in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!