Simulink Release Notes    

旧リリースからのアップグレード

本節では、Simulink 4.0 からSimulink 4.1 への移行に関するアップグレードの問題を説明します。

Simulink 3.0 (Release 11.0) からSimulink 4.1 への移行に関するアップグレードの問題については、Upgrading from an Earlier Release を参照してください。

Simulink 4.1 モデルをSimulink 4.0 で実行

Simulink 4.0 は、新規ブロックタイプやブロックパラメータを含む、新バージョンで導入されている機能を利用しないモデルのように、Simulink 4.1 によって作成または保存されたモデルを実行することができます。特に、新規のSimulink control flowブロックを利用するモデルをシミュレートあるいはオープンするために、Simulink 4.0を利用すべきではありません。そのようなモデルをオープンすると、Simulink 4.0 はクラッシュします。

Simulinkブロックライブラリの再構成

Simulinkブロックライブラリは、新規のSubsystemsサブライブラリをもちます。新規ライブラリは、Signals & Systemsライブラリにあったサブシステムおよびサブシステム関連ブロックと共に、新規のcontrol flowブロックを含みます。新規ライブラリ内のサブシステムは、入出力端子のようなfunctionintサブシステムを作成するために必要な最低限のブロックを含みます。

直接フィードスルーの補償

S-functionが出力を計算するために入力のカレント値を必要とする場合は、直接フィードスルーフラグをtrueに設定する必要があります。従来は、直接フィードスルーS-functionは、これを行うことができなかった場合は、SimulinkはS-functionのmdlOutput (M-file flag=3) またはmdlGetTimeOfNextVarHit (M-file flag=4) メソッドに有効な信号を与えようとしました。この特殊なS-function補償モードは、欠陥がありました。この理由により、現バージョンではこのモードはオプションとして利用可能ですが、利用を推奨しません。本バージョンでは、S-functionが初期化中に直接フィードスルーフラグをfalseに設定する場合は、SimulinkはmdlOutput またはmdlGetTimeOfNextVarHit メソッドの間にS-functionの入力信号をNULL (あるいはM-file S-functionに対してNaN)にデフォルトで設定します。そのため、本バージョンでは、S-function(s)をもつモデルは、segmentation violationsを生成する場合があります。詳細は、matlabroot/simulink/src/sfuntmpl_directfeed.txtを参照してください。

S-Functionは組み込みブロックのようにソートされます

ブロックのソート時に、SimulinkはS-functionブロックを組み込みブロックのように取り扱います。これは、直接フィードバック接続があるときに、nonvirtualサブシステムにおいて S-functionsが適切に機能することを意味します(Simulink 4.0 およびそれ以前では、そうではありませんでした)。また、モデルが高速にコンパイルを行うことを意味します(ダイアグラムの更新)。副作用として、直接フィードスルー部ラグを屡正格に設定したS-functionsに対する実行順は、従来のバージョンのSimulinkで用いられたものと異なります。そのため、無効なS-functionsを含むモデルは、本バージョンのSimulinkでは異なる答えを生成する場合があります。

Latched Triggeredサブシステムの追加

現在は、triggeredサブシステムを利用して、ソフトウェアトリガ、ハードウェアトリガ、あるいはその2つの組み合わせをインプリメントすることができます。ソフトウェアトリガはつぎのように定義されます。

ハードウェアトリガはつぎのように定義されます。

本バージョンよりも以前には、triggeredサブシステムは、triggeredサブシステムを含むサイクルが存在するときに、ソフトウェアトリガとハードウェアトリガを提供しました、現在は、ソフトウェアトリガあるいはハードウェアトリガのいずれかを明示的に指定する必要があります。これは、triggeredサブシステム内のInportブロックの'Latch (buffer) input' を選択することにより行われます。

triggeredサブシステムの各入力端子は、入力がlatchされるかどうかを設定します。latched inputは、その入力端子に対して、ハードウェアトリガセマンティクスを提供します。詳細は、MATLABプロンプトでsl_subsys_semanticsとタイプしてください。

Self-Triggeringサブシステムは実行できません

本バージョンより以前は、triggeredサブシステムの出力は、(その他の信号の追加により)サブシステムのtrigger端子に直接フィードバックできるように定義することが可能でした. この結果は、暗示的な遅れとなります。現在は、memoryブロックを挿入することにより、遅れを明示的に定義する必要があります。

無効なモデル構成診断の改良

本バージョンのSimulinkは、Simulinkモデル内の無効なモデリング構造の検出やフラグ付けに対してより適切な作業を行います。その結果、Simulinkの旧バージョンで実行されたモデルは(しばしば不正確な結果を生成することがあります)は、現在のリリースでは実行しない場合があります。変更点は以下の通りです。


  バグフィックス 既知のソフトウェアの問題