identify parameters of a first-order with time-delay (FOTD) model using time-domain techniques - MapleSim Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : MapleSim Toolboxes : MapleSim Control Design Toolbox : ControlDesign Package : PID Tuning : ControlDesign/ParameterIdentify/TimeDomain

ControlDesign[ParameterIdentify][TimeDomain] - identify parameters of a first-order with time-delay (FOTD) model using time-domain techniques

Calling Sequence

TimeDomain(sys, opts)

Parameters

sys

-

System; a DynamicSystems system object in continuous-time domain; must be single-input single-output (SISO) and stable.

opts

-

(optional) equation(s) of the form option = value; specify options for the TimeDomain command

Description

• 

The TimeDomain command estimates the parameters of an FOTD model for the given system, sys, using the time-domain method specified in the options. The command returns a list containing gain, time constant, and time delay of the identified FOTD model, respectively. In other words, TimeDomain(sys,opts) computes the parameters Kp&comma;T&comma;L for the model Kp&ExponentialE;sLTs&plus;1 that best approximates sys according to the chosen method, with Kp0, 0T, and 0<L.

• 

When the system has symbolic parameters, the FOTD model parameters are returned as symbolic expressions of the system parameters. The computed results are theoretically valid for the parameter space only when the following conditions hold:

– 

The system is open-loop stable. The parametric stability condition can be obtained using the DynamicSystems[RouthTable] command with the stablecondition option set to true. For details see: DynamicSystems[RouthTable].

– 

The computed algebraic expressions for the FOTD model parameters time-constant (T) and time-delay (L) are positive-real, and that of the FOTD model gain (Kp) is either positive-real (corresponding to systems with positive DC gain) or negative-real (corresponding to systems with negative DC gain).

Examples

withControlDesignParameterIdentify&colon;

withDynamicSystems&colon;

Basic Usage

• 

Use each of the methods to identify the parameters K&comma;T&comma;L for the following system.

sys:=NewSystem1s2&plus;2s&plus;3&colon;

params:=TimeDomainsys&comma;method&equals;stepPercentage

params:=13&comma;0.5461468460&comma;0.3747961646

(1)

params:=TimeDomainsys&comma;method&equals;stepIntegrate

params:=13&comma;0.6721581969&comma;0.2695254684

(2)

params:=TimeDomainsys&comma;method&equals;doubletPulse&comma;Amp&equals;1&comma;Tp&equals;0.6

params:=13&comma;0.619100864277216&comma;0.492805324230899

(3)

params:=TimeDomainsys&comma;method&equals;moments

params:=13&comma;132&comma;13

(4)

Symbolic System

• 

Identify the parameters for a system with symbolic coefficients.

sys:=NewSystems&plus;as3&plus;bs2&plus;35s&plus;c&colon;

sys:-tf

s&plus;as3&plus;bs2&plus;35s&plus;c

(5)

params:=TimeDomainsys

params:=ac&comma;2a2bc1225a2&plus;c2c4ca&comma;122a2bc1225a2&plus;c2c4c235a&plus;cca&plus;122a2bc1225a2&plus;c2c4c4&plus;2a2bc2450a2&plus;70cac2a2a2a2bc1225a2&plus;c2c4ca

(6)
• 

Use DynamicSystems[RouthTable] to find the domains of b and c that give a stable system.

stable:=RouthTabledenomsys:-tf1&comma;1&comma;s&comma;stablecondition&equals;true

stable:=0<band0<cand0<35cb

(7)
• 

Verify that the following values for a, b, and c are within the stable region, then substitute into params to find the corresponding FOTD parameters.

vals:=a&equals;1&comma;b&equals;1&comma;c&equals;5

vals:=a&equals;1&comma;b&equals;1&comma;c&equals;5

(8)

evalstable&comma;vals

0<1and0<5and0<30

(9)

evalparams&comma;vals

15&comma;125238125&comma;12523812531236

(10)

FOTD Approximation

• 

Starting with the FOTD transfer function, use series to generate a second-order polynomial approximation for the delay term, create a DynamicSystems model from the rational polynomial, then use TimeDomain and simplify to extract the original parameters.

fotd:=Kp&ExponentialE;sL1&plus;sT

fotd:=Kp&ExponentialE;sLTs&plus;1

(11)

fotd2:=convertseriesnumerfotd&comma;s&comma;3&comma;polynomdenomfotd

fotd2:=KpKpLs&plus;12KpL2s2Ts&plus;1

(12)

sys:=NewSystemfotd2&colon;

Warning, improper transfer-function, degree(num) > degree(den)

params:=TimeDomainsys

params:=Kp&comma;Kp2T2Kp&comma;12KpL&plus;KpTKp2T2Kp&plus;12Kp2L2&plus;2Kp2LT&plus;2Kp2T2Kp2T2Kp2KpKp2T2Kp

(13)

simplifyparamsassuming0<Kp&comma;0T&comma;0<L

Kp&comma;T&comma;L

(14)

Unstable System

• 

Create a system with a zero at 1, poles at 2, 1&plus;I, and 1I, and a gain of 3.

sys:=NewSystem1&comma;2&comma;1&plus;I&comma;1I&comma;3&colon;

• 

Attempt to identify the parameters for this unstable system; doing so raises an error.

TimeDomainsys

Error, (in ControlDesign:-ParameterIdentify:-TimeDomain) model is unstable. Cannot apply parameter identification to unstable models.

See Also

ControlDesign, ControlDesign[ParameterIdentify][FrequencyDomain], DynamicSystems[RouthTable], simplify

References

  

[1] K. J. Astrom and T. Hagglund, Automatic Tuning of PID Controllers, ISA, 1995.

  

[2] K. J. Astrom and T. Hagglund, Advanced PID Control, ISA, 2006.

  

[3] Y. Nishikawa, N. Sannomiya, T. Ohta and H. Tanaka, A Method for Auto_Tuning of PID Control Parameters, Automatica, Vol. 20, No. 3, pp. 321-332, 1984.

  

[4] A. O'Dwyer, Handbook of PI and PID Controller Tuning Rules, 2nd Edition, Imperial College Press, 2006.


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam