Tfsiso

Model ElementTfsisoは、ラプラス領域内で線形かつ時不変の動的システムを定義する抽象モデリング要素です。

クラス名

Tfsiso

説明

SISOは、単入力単出力を意味します。このような動的システムは、伝達関数によって表現されます。実際には、伝達関数の多くが実験とその後の曲線フィッティングによって表されます。この要素のモデリング用途としては、アクチュエーター(電動、油圧、空気圧)、振動絶縁装置(ブッシュとショックアブソーバー)、コントローラー(PID)が挙げられます。

属性の概要

名前 プロパティ コマンドで変更可能か 設計可能か
id Int ()    
label Str ()  
numerator Double (count=0) FDのみ
denominator Double (count=0) FDのみ
x Reference ("Array")  
y Reference ("Array")  
u Reference ("Array")  
static_hold Bool ()  
active Bool ()  

使用法

Tfsiso (x=objArray, u= objArray, y= objArray, numerator=list, denominator=list, optional_attributes)

属性

x
タイプXのArrayオブジェクトへの参照。
このTFSISOの状態xを格納するために使用するARRAYを指定します。このArrayのIDを持つARYVAL()関数を使用することで、MotionSolveの式のこの状態にアクセスすることができます。また、SYSFNCSYSARYでこのIDを使用することで、ユーザーサブルーチンの状態値にアクセスすることもできます。
この属性は必須です。
u
タイプUのArrayオブジェクトへの参照。
このTFSISOの入力uを格納するために使用するARRAYを指定します。このIDを持つARYVAL()関数を使用することで、MotionSolveの式のこの状態にアクセスすることができます。また、SYSFNCおよびSYSARYでこのIDを使用することで、ユーザーサブルーチンの入力値にアクセスすることができます。
y
タイプYのArrayオブジェクトへの参照。
このTFSISOの出力yを格納するために使用するARRAYを指定します。この配列のIDを持つARYVAL()関数を使用することで、MotionSolveの式のこの状態にアクセスすることができます。また、SYSFNCSYSARYでこのIDを使用することで、ユーザーサブルーチンの出力値にアクセスすることもできます。
この属性は必須です。
numerator
倍精度値のリスト。
伝達関数の分子多項式の係数のリストを"s"の昇冪で指定します。
この属性は必須です。
denominator
倍精度値のリスト。
伝達関数の分母多項式の係数のリストを"s"の昇冪で指定します。
この属性は必須です。
注: 通常は、分母係数の数 > 分子係数の数です。
id
整数
要素識別番号を指定します。この番号は、モデル内のすべてのTfsisoオブジェクトの中で一意にする必要があります。
この属性は省略可能です。MotionSolveは、IDが指定されていない場合、自動的にこれを作成します。
値の範囲:id > 0
label
文字列
Surfaceオブジェクトの名前を指定します。
この属性は省略可能です。指定しない場合は、MotionSolveが代わりにラベルを作成します。
static hold
ブール
静的平衡解析および擬似静解析の間、動的状態の値を固定するかどうかを指定します。
  • Trueは、静的解析および擬似静解析の間、動的状態の値が一定に保たれることを意味します。
  • Falseは、静的平衡解析または擬似静解析の間、動的状態の値が変化可能であることを意味します。
この属性は省略可能です。指定しない場合は、デフォルトでFalseになります。

  1. 3次ローパスButterworthフィルタを定義します。

ローパスフィルタは、周波数が特定のカットオフ周波数より低い信号を通過させ、周波数が特定のカットオフ周波数より高い信号を減衰させる伝達関数です。

Butterworthフィルタは、入力の周波数がカットオフ周波数より低い(通過帯域)場合に周波数応答をできるだけ平坦にするように設計された信号処理フィルタの一種です。入力周波数がカットオフ周波数より高い(阻止帯域)場合、信号は急激に減衰します。

3次Butterworthフィルタの伝達関数は次のようになります:(1)
H(s)= 1 1+2s+2s 2 +s 3
これらのパラメータに対して、3次Butterworthフィルタを記述するTfsisoは次のように定義できます:
# Define the X, U arrays
x1 = Array (type="X", size=3)
y1 = Array (type="Y", size=1)

# Define the input signal
v1 = Variable (function="0.5*3.123*VM(21,11)**2")
u1 = Array(type="U", size=1, variables=[v1])

# Now define the 3rd order Butterworth low-pass filter coefficients
num = [1]
den = [1, 2, 2, 1]
tf = Tfsiso (label="Butterworth order-3", x=x1, u=u1,  y=y1, numerator=num, denominator=den)

コメント

  1. プロパティの概要、使用理由、および拡張方法については、プロパティをご参照ください。
  2. Tfsisoの詳細については、制御:SISO. 上の例は、DIFF要素の定義方法を示しています。