ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Simulink.Signal

信号の属性を指定する

説明

このクラスによって、信号や離散状態がもつ属性、たとえばデータ型、数値型、次元などを指定することができる、ワークスペース オブジェクトを作成できます。

以下の目的に信号オブジェクトを使用できます。

  • 信号ソースによってまだ割り当てられていない信号属性 (-1 または auto の値をもつもの) に値を割り当てます。

  • 信号ソースによって明示的に値が割り当てられている信号属性を検証します。そのような属性は、-1 または auto 以外の値をもっています。検証が正常に行われると信号が意図した属性をもっていることが保証されます。

Simulink.Signal オブジェクトは、MATLAB® ワークスペースまたはモデル ワークスペースで作成できます。

信号オブジェクトを使用して信号または離散状態の属性を割り当てるか、検証するには、信号または離散状態に Simulink.Signal オブジェクトを参照するワークスペース変数と同じ名前を付けます。

信号オブジェクトの使用の詳細については、Simulink.Signal オブジェクトを使用した信号の属性の指定および制御およびデータ オブジェクトを参照してください。

作成

次の方法で Simulink.Signal オブジェクトを作成します。

説明

signalObj = Simulink.Signal は、既定のプロパティ値をもつ Simulink.Signal オブジェクトを返します。

プロパティ

すべて展開する

Simulink.Signal オブジェクトのプロパティ ダイアログ ボックスのプロパティの詳細については、プロパティ ダイアログ ボックスを参照してください。

Simulink® Coder™ がこの信号のためのコードを生成するために使用する情報。このプロパティの値は、Simulink.CoderInfo クラスのオブジェクトです。

詳細については、個別の信号、状態、およびパラメーター データ要素へのストレージ クラスの適用 (Simulink Coder)およびChoose Storage Class for Controlling Data Representation in Generated Code (Embedded Coder)を参照してください。

この信号の数値型を指定する文字ベクトル。有効な値は、'auto' (Simulink により決定)、'real''complex' です。

データ型: char

この信号のデータ型を指定する文字ベクトル

既定値 'auto' は、Simulink がデータ型を判断するべきであることを示します。組み込みのデータ型 ('uint8''single' など) またはカスタムのデータ型を指定できます。カスタムのデータ型を指定するには、型 (ベース ワークベースで作成する Simulink.NumericType オブジェクトの名前など) を指定する MATLAB 式を使用します。

バス オブジェクトを信号オブジェクトのデータ型として指定するには、'Bus: <object_name>' 構文を使用します。バス オブジェクトをデータ型として指定する場合に必要な手順の詳細については、バス サポートを参照してください。

例: 'auto'

例: 'int8'

例: 'fixdt(1,16,5)'

例: 'myAliasTypeObject'

例: 'Enum: myEnumType'

例: 'Bus: myBusObject'

データ型: char

この信号の説明。このフィールドは、この信号の説明を記述するためのものです

このプロパティは、Simulink Report Generator コード生成用に使われます。

Embedded Coder® のライセンスがあれば、次のように生成コードの変数宣言に対するコメントとして信号の説明を追加できます。

  • 信号オブジェクトのストレージ クラスを Auto 以外に指定します。

  • モデルの [コンフィギュレーション パラメーター] ダイアログ ボックスの [コード生成][コメント] ペインで、モデル コンフィギュレーション パラメーターの [Simulink データ オブジェクトの説明] を選択します。詳細については、Simulink データ オブジェクトの説明 (Simulink Coder)を参照してください。

例: 'This signal represents the rotation speed of the engine.'

データ型: char

この信号のサイズを指定するスカラーまたはベクトル

有効な値は、任意の次元を指定する -1 (既定の設定)、サイズ N のベクトル信号を指定する NMxN 行列信号を指定する [M N] です。

シンボリック次元を使用するには、文字ベクトルを指定します。

例: [1 3]

例: '[1 myDimParam]'

データ型: double | char

信号の次元モード。有効な値は次のとおりです。

  • 'auto' — 可変サイズの信号と固定サイズの信号が許可されます。

  • 'Fixed' — 固定サイズの信号のみが許可されます。可変サイズの信号は許可されません。

  • 'Variable' — 可変サイズの信号のみが許可されます。

可変サイズの信号の詳細については、可変サイズの信号の基礎を参照してください。

この信号がもつことができる最大値

既定値は [] (指定なし) です。有限で実数の double のスカラー値を指定します。

メモ

信号のデータ型としてバス オブジェクトを指定する場合は信号のプロパティ ダイアログ ボックスでバス データの最大値を設定しないでください。Simulink によりこの設定は無視されます。代わりに、データ型として指定したバス オブジェクトのバス要素の最大値を設定します。バス要素の最大値プロパティの詳細については、Simulink.BusElement を参照してください。

Simulink はこの値を次のように使用します。

  • ブロック線図の更新やシミュレーションの開始時に、Simulink は信号の初期値が最大値より大きいか、あるいは最大値が信号のデータ型の範囲外である場合にエラーを表示します。

  • [シミュレーションの範囲チェック] 診断を有効にすると、Simulink は信号値が最大値より大きい場合、シミュレーション中に警告を出します (シミュレーション範囲のチェックを参照)。

例: 5.32

データ型: double

この信号がもつことができる最小値

既定値は [] (指定なし) です。有限で実数の double のスカラー値を指定します。

メモ

信号のデータ型としてバス オブジェクトを指定する場合は信号のプロパティ ダイアログ ボックスでバス データの最小値を設定しないでください。Simulink によりこの設定は無視されます。代わりに、データ型として指定したバス オブジェクトのバス要素の最小値を設定してください。バス要素の最小値プロパティの詳細については、Simulink.BusElement を参照してください。

Simulink はこの値を次のように使用します。

  • ブロック線図の更新やシミュレーションの開始時に、Simulink は信号の初期値が最小値より小さいか、あるいは最小値が信号のデータ型の範囲外である場合にエラーを表示します。

  • [シミュレーションの範囲チェック] 診断を有効にすると、Simulink は信号値が最小値より小さい場合、シミュレーション中に警告を出します (シミュレーション範囲のチェックを参照)。

例: -0.92

データ型: double

シミュレーション前の信号または状態値は最初のタイム ステップを取ります。

ワークスペース変数の名前を含む、スカラー数値または配列と評価される任意の MATLAB 式を指定できます。

コマンド プロンプトまたはスクリプトで、数字を使用する場合でも、初期値は文字ベクトルとして指定します。

mySigObject.InitialValue='5.3';
mySigObject.InitialValue = 'myNumericVariable';

double 以外の数値データ型を使用する信号の初期値を指定するには、信号のデータ型に初期値をキャストします。たとえば、データ型が single の信号の初期値として 73.3 を使用する場合は 'single(73.3)' と指定できます。

バス オブジェクトを信号オブジェクトのデータ型として使用する場合、InitialValue0 か、バス オブジェクトと一致する MATLAB 構造体を含む文字ベクトルに設定します。詳細については、バス サポートを参照してください。

初期値が MATLAB 構造体として評価される場合、[コンフィギュレーション パラメーター] ダイアログ ボックスで、指定不足の初期化の検出[簡易] に設定します。

必要な場合、Simulink は、初期値を変換して、タイプ、実数/複素数、次元が対応するブロック パラメーターの値と整合するようにします。無効な値または式を指定した場合は、モデルの更新時にエラー メッセージが表示されます。また、Simulink は初期値の範囲チェックを行います。信号の初期値が、指定した最小値と最大値およびデータ型に対応する範囲外であるときに警告が表示されます。

クラシック初期化モード: このモードでは、以下の信号と状態を表す信号オブジェクトの初期値設定は、対応するブロック パラメーターの初期値が未定義 ([] と指定) の場合はその初期値をオーバーライドします。

  • 条件付き実行サブシステムと Merge ブロックの出力信号

  • ブロックの状態

簡易初期化モード: このモードでは以下のブロックに関連付けられている信号オブジェクトの初期値が無視されます。代わりに、対応するブロックの初期値が使用されます。

  • 条件付き実行サブシステムの Outport ブロック

  • Merge ブロック

例: '15.23'

例: 'myInitParam'

データ型: char

この信号を更新するレート

詳細については、サンプル時間の指定を参照してください。

例: 0.001

例: 2

データ型: double

この信号の値を表現するために使用する物理単位 (インチなど)。

詳細については、Simulink モデルでの単位の指定を参照してください。

例: 'degC'

データ型: char

Simulink.Signal の例

Simulink.Signal オブジェクトを使用する方法を示す例については、Simulink.Signal オブジェクトを使用した信号の属性の指定および制御およびデータ オブジェクトを参照してください。

R2006a より前に導入