*SetControlSISOCoeffs()

Sets the numerator and denominator coefficients for a ControlSISO.

Syntax

*SetControlSISOCoeffs(varname,NUMER,ncn,b0,b1,...b[ncn-1] DENOM,ncd,a0,a1,...a[ncd-1])

Arguments

varname
The variable name of the ControlSISO being set.
Data type: varname
NUMER
The keyword that indicates that numerator values are to follow.
Data type: n/a
ncn
The number of numerator coefficients. ncn must be less than or equal to 30.
Data type: integer
b
The value of each numerator coefficient.
Data type: real
DENUM
Keyword that indicates that denominator values are to follow.
Data type: n/a
ncd
The number of denominator coefficients. ncd must be less than or equal to 30.
Data type: integer
a
The value of each denominator coefficient.
Data type: real

Example

*BeginMdl( model5, "MBD Model" ) 
 *ControlSISO( siso_0, "ControlSISO 0" )
 *SolverVariable( sv_0, "Reference Speed" )
 *ActionReactionForce( frc_0, "Force 0", ROT, MODEL.b_0, 
 MODEL.B_Ground, MODEL.p_0, 
 Global_Frame )
 *SetSolverVariable(sv_0, 3)
 *SetForce(frc_0, 0, 0, '{MODEL.siso_0.OUTPUT}')
 *SetControlSISOCoeffs(siso_0, NUMER, 2, 10.00, 1.00, 
 DENOM, 2, 0.00, 1.00)
 *SetControlSISOInput(siso_0, '-WZ({MODEL.b_0.cm.idstring})
 +{sv_0.value}')
*EndMdl()

Context

*BeginMDL()

*DefineAnalysis()

*DefineSystem()

Comments

Simple controllers can be reduced to one or more transfer functions and represented directly within the mechanical model by setting the numerator and denominator of the controller.