Control package: Difference between revisions
Jump to navigation
Jump to search
Line 250: | Line 250: | ||
|- | |- | ||
| hsvdOptions || style="background: red;" | no || || | | hsvdOptions || style="background: red;" | no || || | ||
|- | |||
| rowspan="5" | Model Simplification || balreal || style="background: orange;" | Model Simplification || || | |||
|- | |||
| canon || style="background: red;" | no || || | |||
|- | |||
| prescale || style="background: green;" | yes || @lti/prescale.m || | |||
|- | |||
| ss2ss || style="background: red;" | no || || | |||
|- | |||
| xperm || style="background: green;" | yes || @lti/xperm.m || | |||
|- | |||
| rowspan="5" | Model Simplification || modsep || style="background: red;" | no || || | |||
|- | |||
| stabsep || style="background: red;" | no || || | |||
|- | |||
| freqsep || style="background: red;" | no || || | |||
|- | |||
| stabsepOptions || style="background: red;" | no || || | |||
|- | |||
| freqsepOptions || style="background: red;" | no || || | |||
|- | |- | ||
|} | |} |
Revision as of 13:22, 23 September 2015
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 | |||
Model Simplification | balreal | Model Simplification | ||
canon | no | |||
prescale | yes | @lti/prescale.m | ||
ss2ss | no | |||
xperm | yes | @lti/xperm.m | ||
Model Simplification | 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)