The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
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 |
|
|
Continuous-Discrete Conversion |
c2d |
yes |
@lti/c2d.m |
|
d2c |
yes |
@lti/d2c.m |
|
d2d |
yes |
@lti/d2d.m |
|
upsample |
no |
|
|
c2dOptions |
no |
|
|
d2cOptions |
no |
|
|
d2dOptions |
no |
|
|
Model Simplification |
hsvd |
yes |
hsvd.m |
|
hsvplot |
no |
|
|
sminreal |
yes |
@lti/sminreal.m |
|
balred |
no |
|
|
minreal |
yes |
@lti/minreal.m |
|
balreal |
no |
|
|
modred |
no |
|
|
balredOptions |
no |
|
|
hsvdOptions |
no |
|
|
State-Coordinate Transformation |
balreal |
Model Simplification |
|
|
canon |
no |
|
|
prescale |
yes |
@lti/prescale.m |
|
ss2ss |
no |
|
|
xperm |
yes |
@lti/xperm.m |
|
Modal Decomposition |
modsep |
no |
|
|
stabsep |
no |
|
|
freqsep |
no |
|
|
stabsepOptions |
no |
|
|
freqsepOptions |
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)