The control package is part of the Octave Forge project.
Function list
Linear System Representation
Chapter |
Function |
Implemented |
File |
Status
|
Basic Models |
tf |
yes |
@tf/tf.m |
|
zpk |
yes |
zpk.m |
|
ss |
yes |
@ss/ss.m |
|
frd |
yes |
@frd/frd.m |
|
pid |
no |
|
|
pidstd |
no |
|
|
pid2 |
no |
|
|
dss |
yes |
@lti/dss.m |
|
drss |
no |
|
|
filt |
yes |
filt.m |
|
rss |
no |
|
|
Tunable Models |
ltiblock.gain |
no |
|
|
ltiblock.pid |
no |
|
|
ltiblock.pid2 |
no |
|
|
ltiblock.ss |
no |
|
|
ltiblock.tf |
no |
|
|
realp |
no |
|
|
AnalysisPoint |
no |
|
|
genss |
no |
|
|
genfrd |
no |
|
|
genmat |
no |
|
|
getLoopTransfer |
no |
|
|
getIOTransfer |
no |
|
|
getSensitivity |
no |
|
|
getCompSensitivity |
no |
|
|
getPoints |
no |
|
|
replaceBlock |
no |
|
|
getValue |
no |
|
|
setValue |
no |
|
|
getBlockValue |
no |
|
|
setBlockValue |
no |
|
|
showBlockValue |
no |
|
|
showTunable |
no |
|
|
nblocks |
no |
|
|
getLFTModel |
no |
|
|
Model with Time Delays |
pade |
no |
|
|
absorbDelay |
no |
|
|
thiran |
yes |
thiran.m |
|
hasdelay |
no |
|
|
hasInternalDelay |
no |
|
|
totaldelay |
no |
|
|
delayss |
no |
|
|
setDelayModel |
no |
|
|
getDelayModel |
no |
|
|
Model Attributes |
get |
yes |
@iddata/get.m |
|
set |
yes |
@iddata/set.m |
|
tfdata |
yes |
@lti/tfdata.m |
|
zpkdata |
yes |
@lti/zpkdata.m |
|
ssdata |
yes |
@lti/ssdata.m |
|
frdata |
yes |
@lti/frdata.m |
|
piddata |
no |
|
|
pidstddata |
no |
|
|
piddata2 |
no |
|
|
pidstddata2 |
no |
|
|
dssdata |
yes |
@lti/dssdata.m |
|
chgFreqUnit |
no |
|
|
chgTimeUnit |
no |
|
|
isct |
yes |
@lti/isct.m |
|
isdt |
yes |
@lti/isdt.m |
|
isempty |
yes |
built-in function |
|
isfinite |
yes |
built-in function |
|
isParametric |
no |
|
|
isproper |
no |
|
|
isreal |
yes |
built-in function |
|
isiso |
no |
|
|
isstable |
yes |
@lti/isstable.m |
|
isstatic |
no |
|
|
order |
no |
|
|
ndims |
yes |
built-in function |
|
size |
yes |
built-in function |
|
Model Arrays |
stack |
no |
|
|
nmodels |
no |
|
|
permute |
yes |
built-in function |
|
reshape |
yes |
built-in function |
|
repsys |
yes |
repsys.m |
|
Model Interconnection
Function |
Implemented |
File |
Status
|
feedback |
yes |
@lti/feedback.m |
|
connect |
yes |
@lti/connect.m |
|
sumblk |
yes |
sumblk.m |
|
series |
no |
|
|
parallel |
no |
|
|
append |
yes |
append.m |
|
blkdiag |
yes |
@lti/blkdiag.m |
|
imp2exp |
no |
|
|
inv |
yes |
built-in function |
|
lft |
no |
|
|
connectOptions |
no |
|
|
Model Transformation
Chapter |
Function |
Implemented |
File |
Status
|
Model Type Conversion |
tf |
Linear Sytsem Representation |
|
|
zpk |
Linear Sytsem Representation |
|
|
ss |
Linear Sytsem Representation |
|
|
frd |
Linear Sytsem Representation |
|
|
pid |
Linear Sytsem Representation |
|
|
pidstd |
Linear Sytsem Representation |
|
|
pid2 |
Linear Sytsem Representation |
|
|
pidstd2 |
no |
|
|
make1DOF |
no |
|
|
make2DOF |
no |
|
|
getComponents |
no |
|
|
Linear Analysis
Control Design
Matrix Computations
Some very basic examples
PT1/low-pass filter step response
Code: Creating a transfer function and plotting its response
|
T1=0.4; # time constant
P=tf([1], [T1 1]) # create transfer function model
step(P,2) # plot step response
#add some common markers like the tangent line at the origin, which crosses lim(n->inf) f(t) at t=T1
hold on
plot ([0 T1], [0 1],"g")
plot ([T1 T1], [0 1],"k")
plot ([0 T1], [1-1/e 1-1/e],"m")
hold off
|
Try also bode(P)!
(a first order low-pass filter has -3db magnitude at f=1/T1)