Simulink Release Notes | ![]() ![]() |
モデリングの機能強化
本節では、Simulinkのダイナミックシステムモデリングツールの機能強化を説明します。
add_lineコマンドに追加されたautoroutingオプション
add_line
コマンドは、オプションで、中間のブロックや注釈を迂回してラインをルーティングします。たとえば、つぎのコマンドは、vdp
モデル内2つのブロック間の接続を自動ルーティングします。
オプションはデフォルトでオフです。詳細は、Using Simulink のadd_line
を参照してください。
S-Function Builder
S-Function Builderは、ダイアログボックスに入力した仕様からS-functionを生成します。これは、既存のコードをSimulinkモデルに組み込むための簡単な方法を提供します。
add_param, delete_param
本バージョンでは、カスタムパラメータをブロック線図に追加することができます。
モデル名の代わりにモデルのハンドル番号を利用することも可能です。詳細は、Using Simulink のadd_param
とdelete_param
を参照してください。
接続のコールバック
本バージョンでは、set_param
を利用して、端子の接続性の変更によってトリガされる端子のコールバックを設定することができます。コールバック関数パラメータはConnectionCallback
と名付けられます。ポートの接続性が変更されたとき(端子に接続されたラインの追加/削除、端子への新規ブロックの接続等)、Simulinkは端子のハンドル番号を引数として利用してコールバック関数を呼び出します。詳細は、Using Simulink のPort Callback Parametersを参照してください。
ブロックのユーザデータをモデルファイルに保存
本バージョンでは、デフォルトではoff
であるUserDataPersistent
という新規ブロックパラメータを追加しています。たとえばこのパラメータを以下のようにon
に設定すると、
Simulinkは、モデルの保存時に、ブロックのユーザデータ(ブロックのUserData
パラメータの値) をモデルファイルに含めます。Simulinkは、ユーザデータをASCIIキャラクタとして符号化し、符号化されたデータをMatData
と呼ばれるモデルファイルの新規部分に保存します。このメカニズムは、配列、構造体、オブジェクト、Simulinkデータオブジェクトを含む、すべてのMATLABのデータ形式に対して機能します。詳細は、Using Simulink のAssociating User Data with Blocksを参照してください。
絶対許容誤差の機能強化
本バージョンでは、State-Spaceブロック、Transfer Fcnブロック、Zero-Poleブロック内の各状態に対する絶対許容誤差を設定するための、ダイアログ項目を追加しています。この機能を利用して、モデル内のすべての連続状態を解くために絶対許容誤差を指定することができます。
Block Reductionの機能強化
S-functionsは、コンパイルされたモデルから削除することが要求する場合があります。これを行うためには、S-function内部でssSetBlockReduction(true)
を呼び出します。これは、S-functionに対して生成されたコードを最適化したいS-function作成ユーザに対して提供されるアドバンスドな機能です。グラフィカルな接続性は、block reduction中に再マッピングされ、reduction 中にエラーのソースを削除します(例, Simulinkがscopeに接続されているブロックを削除した場合に発生したメモリリファレンスエラー)。Block reductionは、デフォルトでon
であり、オプションに対するSimulinkプレファレンスが追加されています。
Boolean Logic信号のプレファレンス
Simulink Preferencesダイアログボックスは、デフォルトで、Booleanロジックの利用を指定することができます。詳細は、Using Simulink のSetting Simulink Preferencesを参照してください。
サブシステムのSemanticsデモ
MATLABプロンプトでsl_subsys_semantics
とタイプすると、subsystemブロックの様々なタイプのセマンティクスを記述するモデルを表示します。デモは、function-callサブシステムの公式な定義を含みます。
Engine Modelデモの機能強化
engine
およびenginewc
デモモデルの上部と下部のdead center検出は、reset integratorを利用します。従来のバージョンでは、モデルは、angular positionを検出するためにtriggeredサブシステムを利用しました。この方法は、非効率で、遅いものであり、精度の低い解となっていました。さらに、self-triggering subsystemは、Simulinkでは無効です。
バーチャルサブシステムのブロックソート優先度の設定
Simulink 4.0 では、バーチャルサブシステムの優先度の指定はエラーになりました。Simulink 4.1 では、バーチャルサブシステムの優先度を指定することが可能です。
UNIXのファイル名での ~ の利用
Simulinkのすべてのファイル名フィールドは、ファイル名において~
キャラクタのマッピングをサポートします。たとえば、To Fileブロックにおいて、~/outdir/file.mat
を指定することができます。ほとんどのシステムにおいて、これは/home/$USER/outdir/file.mat
に展開されます。
高速のブロックを含むEnabled SubsystemのEnable端子に接続する遅い信号に関するワーニングの改良
マルチタスク環境では、遅い信号が速い信号を含むenabledサブシステムのenable端子に接続する場合には確定的な結果は、保証されませんでした。従来のバージョンでは、Simulinkはこのことが発生するときにワーニングを表示しませんでした。
Function-Call Subsystem Cyclesのflagging
従来のバージョンでは、Simulinkは、function-call-cycles、すなわち、直接あるいは間接に自身を呼び出すfunction-callサブシステムを含むモデルをビルドすることができました。
そのようなモデルは、正確にシミュレートできません。従って、Simulinkはfunction-call cycleを含むダイアグラムを実行あるいは更新しようとしたときに、エラーメッセージを表示します。
![]() | Simulink Editor | Simulink Debugger | ![]() |