From: <par...@us...> - 2012-02-29 20:09:12
|
Revision: 9723 http://octave.svn.sourceforge.net/octave/?rev=9723&view=rev Author: paramaniac Date: 2012-02-29 20:09:03 +0000 (Wed, 29 Feb 2012) Log Message: ----------- control: touch up example Modified Paths: -------------- trunk/octave-forge/main/control/inst/optiPID.m trunk/octave-forge/main/control/inst/optiPIDctrl.m trunk/octave-forge/main/control/inst/optiPIDfun.m Modified: trunk/octave-forge/main/control/inst/optiPID.m =================================================================== --- trunk/octave-forge/main/control/inst/optiPID.m 2012-02-29 10:07:16 UTC (rev 9722) +++ trunk/octave-forge/main/control/inst/optiPID.m 2012-02-29 20:09:03 UTC (rev 9723) @@ -66,7 +66,6 @@ kp_opt = C_par_opt(1) Ti_opt = C_par_opt(2) Td_opt = C_par_opt(3) -tau_opt = Td_opt / 10 C_opt = optiPIDctrl (kp_opt, Ti_opt, Td_opt); Modified: trunk/octave-forge/main/control/inst/optiPIDctrl.m =================================================================== --- trunk/octave-forge/main/control/inst/optiPIDctrl.m 2012-02-29 10:07:16 UTC (rev 9722) +++ trunk/octave-forge/main/control/inst/optiPIDctrl.m 2012-02-29 20:09:03 UTC (rev 9723) @@ -1,10 +1,18 @@ +% =============================================================================== +% optiPIDctrl Lukas Reichlin February 2012 +% =============================================================================== +% Return PID controller with roll-off for given parameters Kp, Ti and Td. +% =============================================================================== + function C = optiPIDctrl (Kp, Ti, Td) - tau = Td / 10; + tau = Td / 10; % roll-off num = Kp * [Ti*Td, Ti, 1]; den = conv ([Ti, 0], [tau^2, 2*tau, 1]); C = tf (num, den); -end \ No newline at end of file +end + +% =============================================================================== Modified: trunk/octave-forge/main/control/inst/optiPIDfun.m =================================================================== --- trunk/octave-forge/main/control/inst/optiPIDfun.m 2012-02-29 10:07:16 UTC (rev 9722) +++ trunk/octave-forge/main/control/inst/optiPIDfun.m 2012-02-29 20:09:03 UTC (rev 9723) @@ -11,9 +11,14 @@ % Global Variables global P t dt mu_1 mu_2 mu_3 - % Function Argument -> PID Controller with Roll-Off - C = optiPIDctrl (num2cell (C_par){:}); + % Function Argument -> Controller Parameters + kp = C_par(1); + Ti = C_par(2); + Td = C_par(3); + % PID Controller with Roll-Off + C = optiPIDctrl (kp, Ti, Td); + % Open Loop L = P * C; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |