ドキュメンテーション

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

診断ペイン: データ有効性

データ有効性の診断の概要

モデルによって定義されたデータの整合性を損なう可能性のある条件が Simulink® によって検出されたときに行う診断アクションを指定すると共に、コード生成に関連した、モデル デバッグ用のデータ有効性パラメーターを指定します。

コンフィギュレーション

表示されるパラメーターを設定します。

ヒント

  • [データ有効性] ペインを開くには、Simulink エディターで、[シミュレーション][モデル コンフィギュレーション パラメーター][診断][データ有効性] を選択します。

  • 一般的に、このオプションでは、いかなるアクションもしないか、警告またはエラー メッセージを表示することを指定します。

  • 警告が表示されてもシミュレーションは終了しませんが、エラーが表示された場合はシミュレーションが終了します。

参考

信号の関連付け

Simulink によって信号を Simulink.Signal オブジェクトに関連付ける方法を選択します。詳細は、「明示的または暗黙的な記号関連付け」を参照してください。

設定

既定の設定: [明示的のみ]

[明示的のみ]

信号の暗黙的な関連付けを実行しません。明示的に指定された信号の関連付けのみが行われます。これは推奨設定です。

[明示的と暗黙的]

可能な場合は暗黙的な信号の関連付けを実行して、暗黙的な関連付けに関する警告を発生させません。

[明示的と暗黙的に警告]

可能な場合は暗黙的な信号の関連付けを実行して、暗黙的な関連付けを行うたびにそれに関する警告を発生させます。

ヒント

  • 信号の明示的な関連付けを指定するには、[信号プロパティ] ダイアログ ボックス (「[信号プロパティ] ダイアログ ボックス[信号プロパティ] ダイアログ ボックス」を参照) を使用します。

  • 明示的な関連付けを離散状態に対して指定するには、離散状態をもつブロック (Discrete-Time IntegratorDiscrete-Time Integrator ブロックなど) のダイアログ ボックスにある [状態属性] ペインを使用します。

  • 複数の信号が同じ信号オブジェクトに関連付けられ、そのオブジェクトによって指定されるプロパティをもつ場合もあります。

  • 暗黙的な関連付けはパフォーマンスを低下させ、モデルの検証を複雑にし、予測不可能な影響があるため、MathWorks® では高速プロトタイプを除いては暗黙的な信号関連付けの使用はお勧めしていません。

  • Simulink ソフトウェアには関数 disableimplicitsignalresolution が用意されています。この関数を使用すると、暗黙的な信号の関連付けを使用しないようにモデル全体で設定を変更できます。

コマンド ライン情報

パラメーター: SignalResolutionControl
タイプ: 文字列
値: 'UseLocalSettings' | 'TryResolveAll' | 'TryResolveAllWithWarning'
既定の設定: 'UseLocalSettings'
SignalResolutionControl同等の信号の関連付け値
'UseLocalSettings'Explicit only
'TryResolveAll'Explicit and implicit
'TryResolveAllWithWarning'Explicit and warn implicit

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策明示的のみ

参考

特異値行列による除算

ProductProduct ブロックが、行列乗算モードで入力の逆行列を計算するときに特異行列を検出した場合に行う診断アクションを選択します。

設定

既定の設定: [なし]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

コマンド ライン情報

パラメーター: CheckMatrixSingularityMsg
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'none'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策error

参考

指定不足のデータ型

データ型の伝播時に信号のデータ型を Simulink によって推測できなかった場合に行う診断アクションを選択します。

設定

既定の設定: [なし]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

コマンド ライン情報

パラメーター: UnderSpecifiedDataTypeMsg
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'none'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策error

参考

シミュレーション範囲のチェック

信号が指定した最小値または最大値を超えるときに行う診断アクションを選択します。

設定

既定の設定: [なし]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • ブロックが出力する必要のある最小値を指定するには、そのブロックの [出力の最小値] パラメーターまたは [最小値] パラメーターを使用します。

  • ブロックが出力する必要のある最大値を指定するには、そのブロックの [出力の最大値] パラメーターまたは [最大値] パラメーターを使用します。

  • 指定した最小値または最大値をブロック出力が超過したかどうかを調べるには、この診断を有効にします。

  • [シミュレーション範囲のチェック] が有効になっている場合は、シミュレーションのタイム ステップごとに信号範囲のチェックが Simulink によって実行されます。この診断を [警告] または [エラー] に設定すると、シミュレーションのパフォーマンスが低下する場合があります。

コマンド ライン情報

パラメーター: SignalRangeChecking
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'none'

推奨設定

アプリケーション設定
デバッグwarning または error
トレーサビリティwarning または error
効率性none
安全対策error

参考

オーバーフローでラップ

信号の値がその信号のデータ型をオーバーフローしてラップ アラウンドされる場合に行う診断アクションを選択します。

設定

既定の設定: [警告]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • この診断は、整数と固定小数点のデータ型に対してラップするオーバーフローにのみ適用されます。

  • データ型が double または single の場合の浮動小数点オーバーフロー (InfNaN など) をチェックするには、[Inf または NaN のブロックの出力] 診断を選択します (詳細はInf または NaN のブロック出力を参照してください)。

コマンド ライン情報

パラメーター: IntegerOverflowMsg
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'warning'

推奨設定

アプリケーション設定
デバッグ[警告]
トレーサビリティ影響なし
効率性影響なし
安全対策[エラー]

参考

オーバーフローで飽和

信号の値が大きすぎてその信号のデータ型で表現できず、飽和になる場合に行う診断アクションを選択します。

設定

既定の設定: [警告]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • この診断は、整数と固定小数点のデータ型に対して飽和になるオーバーフローにのみ適用されます。

  • データ型が double または single の場合の浮動小数点オーバーフロー (InfNaN など) をチェックするには、[Inf または NaN のブロックの出力] 診断を選択します (詳細は、Inf または NaN のブロック出力を参照してください)。

コマンド ライン情報

パラメーター: IntegerSaturationMsg
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'warning'

推奨設定

アプリケーション設定
デバッグ[警告]
トレーサビリティ影響なし
効率性影響なし
安全対策エラー

参考

Inf または NaN のブロック出力

ブロック出力の値が現在のタイム ステップで Inf または NaN のときに行う診断アクションを選択します。

    メモ:   アクセラレータ モードでは、実行時診断をサポートしていません。

設定

既定の設定: [なし]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • この診断は、データ型が double または single の場合の浮動小数点オーバーフローにのみ適用されます。

  • 整数および固定小数点のオーバーフローをチェックするには、[オーバーフローの検出] 診断を選択します (詳細はオーバーフローでラップを参照してください)。

コマンド ライン情報

パラメーター: SignalInfNanChecking
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'none'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策[エラー]

参考

識別子の "rt" 接頭辞

Simulink のオブジェクト名 (パラメーター、ブロック、または信号の名前) が rt で始まる場合にコード生成時に行う診断アクションを選択します。

設定

既定の設定: [エラー]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • 既定の設定 ([エラー]) を使用すると、rt で始まる Simulink オブジェクト名 (パラメーター、ブロック、または信号の名前) が検出された場合に、コード生成がエラーと共に終了します。

  • これは、名前が rt で始まる識別子が生成された場合に、この識別子との意図せぬ衝突を防ぐためです。

コマンド ライン情報

パラメーター: RTPrefix
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'error'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策エラー

参考

ダウンキャストの検出

シミュレーション中にパラメーター ダウンキャストが起きたときに行う診断アクションを選択します。

設定

既定の設定: [エラー]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • パラメーターの指定された型をそれより小さい値範囲をもつ型に変換 (たとえば、uint32 から uint8 への変換) することがブロック出力の計算時に必要となった場合は、パラメーター ダウンキャストが発生します。

  • この診断は名前付き調整可能なパラメーターにのみ適用されます。

コマンド ライン情報

パラメーター: ParameterDowncastMsg
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'error'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策エラー

参考

オーバーフローの検出

シミュレーション中にパラメーター オーバーフローが起きたときに行う診断アクションを選択します。

設定

既定の設定: [エラー]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • データ型の範囲が小さすぎて理想値を格納できないパラメーターが Simulink によって検出された場合 (つまり、理想値が大きすぎるか小さすぎるためにそのデータ型で表現できない場合) は、パラメーター オーバーフローが発生します。たとえば、パラメーターの理想値が 200、データ型が int8 であるとします。この場合、int8 によって表現できる最大値は 127 であるため、オーバーフローが発生します。

  • パラメーター オーバーフローはパラメーターの桁落ちとは異なります。パラメーターの桁落ちは、使用中のデータ型とスケーリングの範囲内に理想値があるが、それを正確に表現できない場合に発生します。

  • パラメーター オーバーフローと桁落ちはいずれも量子化誤差であり、区別が微細なものになる可能性があります。[オーバーフローの検出] 診断では、1 ビットより大きい量子化誤差がすべて報告されます。パラメーター量子化誤差が非常に小さく、以下の条件が満たされている場合は、オーバーフローではなく桁落ちが報告されます。

    (Max+Slope)Videal>(MinSlope)

    上記の詳細は次のとおりです。

    • Max は、パラメーターのデータ型によって表される最大値です。

    • Min は、パラメーターのデータ型によって表される最小値です。

    • Slope は、パラメーターのデータ型の勾配です (整数の場合の勾配は 1)。

    • Videal は、パラメーターの理想値です。

コマンド ライン情報

パラメーター: ParameterOverflowMsg
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'error'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策エラー

参考

アンダーフローの検出

シミュレーション中にパラメーター アンダーフローが起きたときに行う診断アクションを選択します。

設定

既定の設定: [なし]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • 理想値が小さすぎるためにデータ型の精度が理想値を表現するのに十分でないパラメーターが Simulink によって検出されると、パラメーター アンダーフローが発生します。

  • パラメーター アンダーフローが発生した場合に理想値をデータ型にキャストすると、パラメーターのモデル化された値がゼロになるため、理想値と一致しなくなります。

コマンド ライン情報

パラメーター: ParameterUnderflowMsg
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'none'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策エラー

参考

桁落ちの検出

シミュレーション中にパラメーターの桁落ちが起きたときに行う診断アクションを選択します。

設定

既定の設定: [警告]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • データ型の精度がパラメーターの値を正確に表現するのに十分でないパラメーターが Simulink によって検出されると、桁落ちが発生します。その結果、モデル化された値は理想値と一致しません。

  • 桁落ちはパラメーター オーバーフローとは異なります。パラメーター オーバーフローは、パラメーターのデータ型の範囲、つまりパラメーターが表すことのできる最大値がそのパラメーターの理想値より小さい場合に発生します。

  • パラメーター オーバーフローと桁落ちはいずれも量子化誤差であり、区別が微細なものになる可能性があります。[オーバーフローの検出] 診断では、1 ビットより大きいパラメーター量子化誤差がすべて報告されます。パラメーター量子化誤差が非常に小さく、以下の条件が満たされている場合は、オーバーフローではなく桁落ちが報告されます。

    (Max+Slope)Videal>(MinSlope)

    上記の詳細は次のとおりです。

    • Max は、パラメーターのデータ型によって表される最大値です。

    • Min は、パラメーターのデータ型によって表される最小値です。

    • Slope は、パラメーターのデータ型の勾配です (整数の場合の勾配は 1)。

    • Videal は、パラメーターの最大精度の理想値です。

コマンド ライン情報

パラメーター: ParameterPrecisionLossMsg
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'warning'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策エラー

参考

調整可能性の消失を検出

調整可能な変数をもつ式が数値的に等価な式に簡略化されているときに行う診断アクションを選択します。

設定

既定の設定: [なし]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

調整可能なワークスペース変数がマスク初期化コードによって修正されるか、サポートされていない演算子または関数をもつ算術式で使用される場合、式は数値式に簡略化されるため調整できません。

コマンド ライン情報

パラメーター: ParameterTunabilityLossMsg
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'none'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策エラー

参考

書き込み前の読み取りを検出

このタイム ステップで、モデルがデータを書き込んでいないデータ ストアからデータを読み取ろうとしたときに実行する診断アクションを選択します。

設定

既定の設定: [ローカル設定を利用]

[ローカル設定を利用]

(モデル ワークスペースで Data Store Memory ブロックまたは Simulink.Signal オブジェクトによって定義される) 各ローカル データ ストアには、ブロックによって指定された設定を使用します。(ベース ワークスペースで Simulink.Signal オブジェクトによって定義される) 各グローバル データ ストアに対しては、この診断を無効にします。

[すべて無効]

モデルによってアクセスされるすべてのデータ ストアに対してこの診断を無効にします。

警告としてすべて有効

MATLAB® のコマンド ラインに診断を警告として表示します。

エラーとしてすべて有効

シミュレーションを停止して、エラー ダイアログ ボックスに診断を表示します。

コマンド ライン情報

パラメーター: ReadBeforeWriteMsg
タイプ: 文字列
値: 'UseLocalSettings' | 'DisableAll' | 'EnableAllAsWarning' | 'EnableAllAsError'
既定の設定: 'UseLocalSettings'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策エラーとしてすべて有効

参考

読み取り後の書き込みを検出

モデルがデータ ストアからデータを読み込んだ後でこのデータ ストアに現在のタイム ステップでデータを書き込もうとしたことが検出された場合に行う診断アクションを選択します。

設定

既定の設定: [ローカル設定を利用]

[ローカル設定を利用]

(モデル ワークスペースで Data Store Memory ブロックまたは Simulink.Signal オブジェクトによって定義される) 各ローカル データ ストアには、ブロックによって指定された設定を使用します。(ベース ワークスペースで Simulink.Signal オブジェクトによって定義される) 各グローバル データ ストアに対しては、この診断を無効にします。

[すべて無効]

モデルによってアクセスされるすべてのデータ ストアに対してこの診断を無効にします。

警告としてすべて有効

MATLAB のコマンド ラインに診断を警告として表示します。

エラーとしてすべて有効

シミュレーションを停止して、エラー ダイアログ ボックスに診断を表示します。

コマンド ライン情報

パラメーター: WriteAfterReadMsg
タイプ: 文字列
値: 'UseLocalSettings' | 'DisableAll' | 'EnableAllAsWarning' | 'EnableAllAsError'
既定の設定: 'UseLocalSettings'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策エラーとしてすべて有効

参考

書き込み後の書き込みを検出

現在のタイム ステップでモデルが 2 度連続してデータ ストアにデータを書き込もうとしたことが検出された場合に行う診断アクションを選択します。

設定

既定の設定: [ローカル設定を利用]

[ローカル設定を利用]

(モデル ワークスペースで Data Store Memory ブロックまたは Simulink.Signal オブジェクトによって定義される) 各ローカル データ ストアには、ブロックによって指定された設定を使用します。(ベース ワークスペースで Simulink.Signal オブジェクトによって定義される) 各グローバル データ ストアに対しては、この診断を無効にします。

[すべて無効]

モデルによってアクセスされるすべてのデータ ストアに対してこの診断を無効にします。

警告としてすべて有効

MATLAB のコマンド ラインに診断を警告として表示します。

エラーとしてすべて有効

シミュレーションを停止して、エラー ダイアログ ボックスに診断を表示します。

コマンド ライン情報

パラメーター: WriteAfterWriteMsg
タイプ: 文字列
値: 'UseLocalSettings' | 'DisableAll' | 'EnableAllAsWarning' | 'EnableAllAsError'
既定の設定: 'UseLocalSettings'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策エラーとしてすべて有効

参考

マルチタスク データ ストア

あるタスクがデータの書き込み先として使用している Data Store MemoryData Store Memory ブロックから別のタスクがデータを読み取っているときに行う診断アクションを選択します。

設定

既定の設定: [警告]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • この状況が安全なのは、一方のタスクが他方のタスクを中断できない場合だけです。たとえば、データ ストアがスカラーであり、このストアを更新するためのアトミック コピー操作が書き込みタスクで使用される場合、またはタスクが相互に阻止し合うことがターゲットによって許可されていない場合などがこれに相当します。

  • タスクが相互に阻止し合うのを防ぐ周期的スケジューラーがアプリケーションで使用されている場合など、タスクの中断がないことがアプリケーションによって保証されている場合にのみ、この診断を無効 (none に設定する) にしてください。

コマンド ライン情報

パラメーター: MultiTaskDSMMsg
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'warning'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策エラー

参考

データ ストア名の重複

同じ名前の複数のデータ ストアがモデルに含まれているときに行う診断アクションを選択します。データ ストアの定義には、Data Store MemoryData Store Memory ブロックまたは Simulink.Signal オブジェクトを使用できます。

設定

既定の設定: [なし]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

この診断を使用すると、下位のデータ ストアが同じ名前の上位のデータ ストアの優先順位を予期せず低くしている場合に発生するエラーを検出できます。

コマンド ライン情報

パラメーター: UniqueDataStoreMsg
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'none'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策影響なし

参考

同じタイム ステップで実行する複数の駆動ブロックを検出

ソフトウェアにより、同じタイム ステップで実行する Merge ブロックへの複数の駆動ブロックが検出されたときに行う診断アクションを選択します。

設定

既定の設定: [なし]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • 同じタイム ステップで実行される複数の駆動ブロックに Merge ブロックの入力を接続すると、シミュレーションと生成コードのいずれからも矛盾した結果が返される可能性があります。こうした状況を防ぐため、[同じタイム ステップで実行する複数の駆動ブロックを検出][エラー] に設定してください。

  • [指定不足の初期化の検出][簡易] に設定されている場合、このパラメーターは無効になり、Simulink ソフトウェアで最も厳格な設定 ([エラー]) がこの診断で自動的に使用されます。複数の駆動ブロックを同じタイム ステップで実行すると、常にエラーが発生します。

依存関係

このパラメーターは、[指定不足の初期化の検出][クラシック] に設定されている場合にのみ有効になります。

コマンド ライン情報

パラメーター: MergeDetectMultiDrivingBlocksExec
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'error'

推奨設定

アプリケーション設定
デバッグエラー
トレーサビリティエラー
効率性影響なし
安全対策エラー

参考

指定不足の初期化の検出

条件付き実行サブシステム、Merge ブロック、サブシステムの経過時間、および Discrete-Time Integrator ブロックの初期条件の初期化を Simulink ソフトウェアでどのように処理するかを選択します。

設定

既定の設定: [クラシック]

[クラシック]

初期条件が初期化される方法は R2008b より前のリリースと同じです。

[簡易]

初期条件の初期化に使用される動作が改善されているため、シミュレーションの結果の一貫性が高まる可能性があります。

ヒント

  • Simulink の以前のリリースとの互換性を確保するには、[クラシック] を使用します。

  • シミュレーションの結果の一貫性を高めるには、[簡易] を使用します。このことは、条件付きサブシステム出力端子の初期条件を指定していないモデル、および S-Function に接続された条件付き実行サブシステム出力端子をもつモデルの場合に特に当てはまります。

  • [簡易] 初期化モードを使用する場合は、[接続性の診断] ペインで [Mux ブロックをバス信号の作成に使用][ベクトルとして扱われるバス信号] の両方を [エラー] に設定しなければなりません。

  • 既存のモデルの場合は、MathWorks ではモデル アドバイザーを使用してモデルを新しい設定に移行することをお勧めします。モデルを移行するには、モデル アドバイザーの次のチェックを実行します。

    • バスの使用のチェック

    • Outport と Merge ブロックに対する初期化パラメーターの整合性をチェック

    詳細は、「Outport と Merge ブロックに対する初期化パラメーターの整合性をチェック」を参照してください。

依存関係

[クラシック] を選択すると、以下のパラメーターが有効になります。

  • [同じタイム ステップで実行する複数の駆動ブロックを検出]

  • 定義されていないサブシステムの初期出力のチェック

  • 実行コンテキストのアクティブになる前の出力をチェック

  • 実行コンテキストの実行時の出力をチェック

[簡易] を選択すると、これらのパラメーターは無効になり、[同じタイム ステップで実行する複数の駆動ブロックを検出][エラー] に自動的に設定されます。

コマンド ライン情報

パラメーター: UnderspecifiedInitializationDetection
タイプ: 文字列
値: 'Classic' | 'Simplified'
既定の設定: 'Classic'

推奨設定

アプリケーション設定
デバッグ[簡易]
トレーサビリティ[簡易]
効率性[簡易]
安全対策[簡易]

参考

定義されていないサブシステムの初期出力のチェック

モデルに含まれている条件付き実行サブシステムにおいて、初期条件が定義されていない Outport ブロックが指定された初期条件をもつブロックによって駆動されている場合に、警告を表示するかどうかを指定します。

設定

既定の設定: オン

オン

モデルに含まれている条件付き実行サブシステムにおいて、初期条件が定義されていない Outport ブロックが指定された初期条件をもつブロックによって駆動されている場合に、警告を表示します。

オフ

警告を表示しません。

ヒント

  • 初期条件が定義されていない ([初期出力] パラメーターが [] に設定されている) Outport ブロックが、指定された初期条件をもつブロック (Constant、Initial Condition、または Delay ブロックなど) によって駆動されている場合は、この状況が生じます。

  • このようなサブシステムをもつモデルによって現在のリリースで (条件付き実行サブシステムの初期のアクティブ化の前に) 生成される初期結果は、Release 13 以前で生成された初期結果とは異なる可能性があります。

    たとえば、次のようなモデルがあるとします。

    このモデルは、Triggered Subsystem の出力端子の初期条件を定義しません。

    次の図は、このモデルの Step ブロックと Triggered Subsystem の出力を重ね合わせて、Release 13 と現在のリリースの間で比較したものです。

    Triggered Subsystem の初期出力が 2 つのリリース間で異なることがわかります。これは、Release 13 以前では、出力端子に接続されたブロック (つまり、Constant ブロック) の初期出力が、Triggered Subsystem の初期出力として使用されるためです。一方、このリリースでは、端子の初期出力がモデルによって指定されていないため、Triggered Subsystem の初期出力として 0 が出力されます。

依存関係

このパラメーターは、[指定不足の初期化の検出][クラシック] に設定されている場合にのみ有効になります。

コマンド ライン情報

パラメーター: CheckSSInitialOutputMsg
タイプ: 文字列
値: 'on' | 'off'
既定の設定: 'on'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策オン

参考

実行コンテキストのアクティブになる前の出力をチェック

Simulink ソフトウェアで以前のリリースのものと異なる可能性のある初期出力を検出した場合に警告を表示するかどうかを指定します。

設定

既定の設定: オフ

オン

Simulink ソフトウェアで以前のリリースのものと異なる可能性のある初期出力を検出した場合に警告を表示します。

オフ

警告を表示しません。

ヒント

  • この診断は、以下の条件を満たしているブロックがモデルに含まれている場合にトリガーされます。

    • ブロックがゼロの入力に対して非零の出力を生成している (Cosine ブロックなど)。

    • ブロックが条件付き実行サブシステムの出力に接続されている。

    • ブロックが実行コンテキストをそのサブシステムから継承している。

    • ブロックが接続されている Outport の初期条件が定義されていない。つまり、Outport ブロックの [初期出力] パラメーターが [] に設定されている。

  • これらの条件を満たしたブロックをもつモデルによって現在のリリースで (条件付き実行サブシステムが初めてアクティブ化される前に) 生成される初期結果は、Release 13 以前で生成された初期結果とは異なる可能性があります。

    たとえば、次のようなモデルがあるとします。

    次の図は、Pulse Generator ブロックと cos ブロックの出力を重ね合わせて、Release 13 と現在のリリースの間で比較したものです。

    cos ブロックの初期出力が 2 つのリリース間で異なることがわかります。これは、Release 13 では、cos ブロックがルート システムの実行コンテキストに所属するため、タイム ステップごとに実行されるのに対し、現在のリリースでは、cos ブロックが Triggered Subsystem の実行コンテキストに所属するため、トリガーされたサブシステムの実行時にしか実行されないためです。

依存関係

このパラメーターは、[指定不足の初期化の検出][クラシック] に設定されている場合にのみ有効になります。

コマンド ライン情報

パラメーター: CheckExecutionContextPreStartOutputMsg
タイプ: 文字列
値: 'on' | 'off'
既定の設定: 'on'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策オン

参考

実行コンテキストの実行時の出力をチェック

Simulink ソフトウェアで以前のリリースのものと異なる可能性のある出力を検出した場合に警告を表示するかどうかを指定します。

設定

既定の設定: オフ

オン

Simulink ソフトウェアで以前のリリースのものと異なる可能性のある出力を検出した場合に警告を表示します。

オフ

警告を表示しません。

ヒント

  • この診断は、以下の条件を満たしているブロックがモデルに含まれている場合にトリガーされます。

    • ブロックに調整可能なパラメーターがある。

    • ブロックが条件付き実行サブシステムの出力に接続されている。

    • ブロックが実行コンテキストをそのサブシステムから継承している。

    • ブロックが接続されている Outport の初期条件が定義されていない。つまり、Outport ブロックの [初期出力] パラメーターが [] に設定されている。

  • パラメーターが調整されているときに、これらの条件を満たしたブロックをもつモデルによって現在のリリースで生成される結果は、Release 13 以前で生成された結果とは異なる可能性があります。

    たとえば、次のようなモデルがあるとします。

    このモデルでは、tunevar S-Function が Gain ブロックの k パラメーターの値を変更し、シミュレーション時間 7 においてブロック線図を更新します (つまり、パラメーターの調整をシミュレーションします)。

    次の図は、モデルの Pulse Generator ブロックとその Gain ブロックの出力を重ね合わせて、Release 13 と現在のリリースの間で比較したものです。

    Gain ブロックの出力が Release 13 では時間 7 で変化していますが、現在のリリースでは変化していないことがわかります。これは、Release 13 では、Gain ブロックがルート システムの実行コンテキストに所属するため、タイム ステップごとに実行されるのに対し、現在のリリースでは、Gain ブロックが Triggered Subsystem の実行コンテキストに所属するため、トリガーされたサブシステムの実行時 (つまり、時間 51015、および 20) にしか実行されないためです。

依存関係

このパラメーターは、[指定不足の初期化の検出][クラシック] に設定されている場合にのみ有効になります。

コマンド ライン情報

パラメーター: CheckExecutionContextRuntimeOutputMsg
タイプ: 文字列
値: 'on' | 'off'
既定の設定: 'on'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策オン

参考

配列範囲の超過

ブロックが割り当てられたメモリ外の場所にデータを書き込むときに行う診断アクションを選択します。

設定

既定の設定: [なし]

[なし]

Simulink ソフトウェアはいかなるアクションも実行しません。

[警告]

Simulink ソフトウェアが警告を表示します。

[エラー]

Simulink ソフトウェアはシミュレーションを終了し、エラー メッセージを表示します。

ヒント

  • モデル シミュレーション時の各ブロックインスタンスの実行によって、そのブロックに割り当てられていないメモリ位置にデータが書き込まれているかどうかを確認するには、このオプションを使用します。これが起きるのは、モデルに含まれているユーザー作成の S-Function にバグがある場合だけです。

  • このオプションを有効にすると、モデルの実行が大幅に遅くなります。そのため、モデルに含まれているユーザー作成の S-Function にバグがあることが疑われる場合にのみ、このオプションを有効にしてください。

  • このオプションを選択すると、ブロックがそのブロックに割り当てられたメモリ以外の場所にシミュレーション時に書き込みを行っているかどうかが Simulink によってチェックされます。通常、これが起きるのは、モデルに含まれているユーザー作成の S-Function にバグがある場合だけです。

  • このオプションの使用方法についての詳細は、「Error Handling」の「Checking Array Bounds」を参照してください。

コマンド ライン情報

パラメーター: ArrayBoundsChecking
タイプ: 文字列
値: 'none' | 'warning' | 'error'
既定の設定: 'none'

推奨設定

アプリケーション設定
デバッグ警告
トレーサビリティ影響なし
効率性なし
安全対策影響なし

参考

Model Verification ブロックを有効にする

現在のモデルのモデル検証ブロックをグローバルまたはローカルに有効にします。

設定

既定の設定: [ローカル設定を利用]

[ローカル設定を利用]

各ブロックの [アサーションを有効にする] パラメーターの値に基づいて、ブロックを有効か無効にします。ブロックの [アサーションを有効にする] パラメーターがオンになっている場合、そのブロックは有効になります。そうでない場合、ブロックは無効になります。

[すべて有効]

モデル内のすべてのモデル検証ブロックを [アサーションを有効にする] パラメーターの設定にかかわらず有効にします。

[すべて無効]

モデル内のすべてのモデル検証ブロックを [アサーションを有効にする] パラメーターの設定にかかわらず無効にします。

依存関係

モデル検証ブロックが S-Function の内部にある場合、シミュレーションとコード生成では [Model Verification ブロックを有効にする] パラメーターが無視されます。

コマンド ライン情報

パラメーター: AssertControl
タイプ: 文字列
値: 'UseLocalSettings' | 'EnableAll' | 'DisableAll'
既定の設定: 'UseLocalSettings'

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性影響なし
安全対策すべて無効

参考

この情報は役に立ちましたか?