| Real-Time Workshop User's Guide | ![]() |
Real-time Workshopは、式の内部でのチューニング可能な変数の利用をサポートします。1つまたは複数のチューニング可能なパラメータを含む式は、チューニング可能な式と呼ばれます。
現在では、式の内部でのチューニング可能な変数の利用には制限があります。以下で、サポートされていないと記述されている式がコード生成中にある場合、ワーニングが表示されチューニング不可能な式がコード内に生成されます。チューニング可能な式の制限は、以下の通りです。
マスクされたサブシステムのチューニング可能な式
チューニング可能な式は、マスクされたサブシステムで利用できます。マスクされたサブシステムダイアログで、チューニング可能なパラメータ名またはチューニング可能な式を利用できます。低レベルのサブシステムで参照されるときには、パラメータはチューニング可能のままです。
例題として、下記に示したマスクされたサブシステムを考えます。マスクされたダイアログ変数k は、theGainのゲインパラメータを設定します。
ベースワークスペース変数bは、SimulinkGlobal(Auto)ストレージクラスで、チューニング可能と宣言されていると仮定します。図 3-11は、サブシステムのマスクダイアログ内のチューニング可能な式b*3を示します。
図 3-11: Subsystem Maskダイアログのチューニング可能な式
Real-Time Workshopは、theGainに対して以下の出力を生成します。
/* Gain Block: <S1>/theGain */ rtb_temp0 *= (rtP.b * 3.0);
bは、グローバルパラメータ構造体rtPのメンバとして表わされます。
マスクされたサブシステムでのチューニング可能な式の制限 マスク初期化コードで宣言された、あるいは変更された変数を含む式は、チューニング不可能です。
t = 3 * k;
myGainkは、4 + tです。b = 2。式b * 3は、図 3-11のようにマスクダイアログに組み込まれます。マスク初期化コードは、1回だけ実行できるので、k はコード生成時につぎのように評価されます。
4 + (3 * (2 * 3) )
Real-Time Workshopは、結果をインライン化します。そのため、 bがチューニング可能と宣言されたにもかかわらず、コードジェネレータは、theGainに対してつぎのように出力を生成します。
/* Gain Block: <S1>/theGain */ rtb_temp0 *= (22.0);
| Model Parameter Configurationダイアログの使用法 | 信号: ストレージ、最適化、インタフェース | ![]() |