Main Content

パネルを使用したモデルの対話的な設計とデバッグ

モデルの設計とデバッグを容易にするために、1 つ以上の Dashboard ブロックを含むパネルを使用できます。パネルは、モデル キャンバスに重なって表示され、モデルの階層構造全体をユーザーと共に移動します。パネルを使用すれば、モデル全体で Dashboard ブロックのコレクションを追加せずに、所定のモデルのコンポーネントの制御と監視が可能です。

パネルを使用すると、キャンバス内のブロックと同じ方法でパネル内のブロックをモデルに関連付けることはできません。たとえば、get_paramset_paramgcb または gcbh を使用して、プログラムでパネル内のブロックとやり取りすることはできません。それ以外の場合は、パネルにプロモートされるブロックの対話型動作は維持されます。接続モードを使用してパネル内の Dashboard ブロックを接続し、プロパティ インスペクターを使用してブロックのプロパティを検査して、シミュレーション中に接続を変更できます。

この例では、sldemo_fuelsys モデルを使用して、パネルの作成に必要な手順と、モデルをデバッグするためのパネルの使用方法について説明します。モデルを開くには、MATLAB® コマンド ウィンドウに sldemo_fuelsys と入力します。

新規パネルの作成

sldemo_fuelsys モデルには、モデルの対話型シミュレーションを実行するためのコントロールとインジケーターを含む Dashboard サブシステムがあります。Dashboard サブシステムの使用またはモデル全体で Dashboard ブロックを含めるだけでなく、またはその代用として、パネルを使用できます。たとえば、Dashboard サブシステムにブロックのサブセットが含まれている 3 つのパネルを作成できます。

  • [入力] 領域と [Fault Injection] 領域のブロックを含む、コントロール パネル。

  • [Fuel (g/s)] 領域のブロックを含む、fuel 信号の可視化パネル。

  • [Air/Fuel Ratio] 領域のブロックを含む、air_fuel_ratio 信号の可視化パネル。

コントロールと可視化を別のパネルに分ける必要はありません。1 つのパネルに両方の種類のブロックを含めることができます。この例の場合、理解またはデバッグする必要があるサブシステムに応じて、モジュラー除算は、監視する信号を選択する一方でコントロールにアクセスできるようにします。

Dashboard サブシステムの内部を移動して、コントロール パネルを作成します。

  1. [Inputs] および [Fault Injection] のラベルがついた領域内のブロックを選択します。

  2. ブロックの選択をパネルにプロモートするには、選択の最後に表示される省略記号で一時停止して、表示されるメニューから [パネルにプロモート] を選択します。

メモ

パネルにプロモートできるのは、Dashboard ブロックおよび Aerospace Blockset™ Flight Instruments ライブラリのブロックのみです。Dashboard ブロック以外のモデル要素を含む選択のプロモートを試行する場合、Dashboard ブロックのみがパネルにプロモートされます。

ブロックをパネルにプロモートすると、ブロックはキャンバスからパネルに移動します。ブロックをパネルから移動してキャンバスに戻す場合、編集モードを開始して、ブロックをパネルからキャンバスにドラッグします。パネルの編集モードを開始するには、選択されたパネルの上に表示される省略記号で一時停止して、[パネルの編集] を選択します。

同様の手順に従って、[Fuel (g/s)] 領域のブロックを含むパネルと [Air/Fuel Ratio] 領域のブロックを含むパネルの 2 つのパネルをさらに作成します。

メモ

参照モデルに保存されるパネルを使用するには、参照モデルを最上位モデルとして開きます。

モデル内のパネルの管理

モデル内のパネルを使用する場合、モデルの階層構造内のどこに位置しても、パネルはアクセス可能なままであり、キャンバスに重なって表示されます。たとえば、sldemo_fuelsys モデルの最上位レベルに移動します。パネルは警告表示と同様に、同じ位置に表示されたままになります。

コーナーからパネルのサイズを調整することができます。編集モード外でパネルのサイズを変更すると、パネルの内容が比例してスケーリングされます。パネルの内容をスケーリングせずにパネルのサイズを変更するには、パネルの編集と注釈付けの説明に従って編集モードを開始します。パネルの空の領域を選択し、ドラッグしてパネルの位置を変更することができます。

モデルを検査または編集する必要がある場合、各パネルをダブルクリックして 1 つ以上のパネルを最小化できます。最小化されたパネルはモデル内に引き続き表示され、アイコンで表されます。モデルの内容を編集または検査する間に、アイコンをモデル内の便利な場所に移動できます。パネルを使用する必要がある場合、アイコンをダブルクリックしてパネルを復元できます。

[パネルの管理] ダイアログを使用して、モデルでのパネルの表示を制御することもできます。モデルで使用可能なすべてのパネルにアクセスするか、パネルの表示を変更するには、パースペクティブ コントロールから [パネルの管理] を選択します。Simulink® エディターの右下隅をクリックすると、パースペクティブ コントロールにアクセスできます。

[パネルの管理] ダイアログが使用できるのは、モデルにパネルが含まれている場合のみです。モデル内にパネルがない場合、[パネルの管理] ダイアログはパースペクティブ コントロールに表示されません。

[パネルの管理] ダイアログはキャンバス上に表示され、モデル内の各パネルについてアイコンが表示されます。このモデルには 3 つのパネルが含まれているため、3 つのアイコンが表示されます。[パネルの管理] ダイアログを使用して、各パネルの現在のワークフローとの関連性に応じて、モデル内の個々のパネルを非表示または表示できます。アイコンをクリックして、対応するパネルの表示を切り替えます。パネルが非表示になると、ダイアログでアイコンの透明度がさらに増し、パネルはモデルに表示されません。[パネルの管理] ダイアログの上部にあるメニューを使用して、モデル内のすべてのパネルを表示また非表示にできます。

パネルの位置はキャンバスを基準として決まるため、ズーム操作によりスケーリングすることはないため、設計およびデバッグ時にモデル内の 1 つ以上のパネルが追跡できなくなる場合があります。[表示されているパネルをビューに合わせる] ボタンを使用して、モデル内のすべての表示されているパネルを表示されているキャンバスに集めます。

パネルの編集と注釈付け

編集モードを使用してパネルの編集および注釈付けを行うことができます。パネルの編集モードを開始するには、選択されたパネルの上に表示される省略記号で一時停止して、[パネルの編集] を選択します。

編集モードでは、パネルの内容のサイズを変更せずにパネルのサイズを変更したり、パネルを削除したり、パネルの外観を変更したりできます。たとえば、パネルの背景として使用するために背景イメージを指定したり、ラベルにパネルの内容についての注釈を追加できます。ブロックをパネルへ、またはパネルからドラッグして、編集モードでブロックを追加および削除することもできます。モデルに複数のパネルがある場合、編集モードで、ブロックおよびラベルをパネル間で移動させることができます。

注釈を各パネルに追加して、各対話型要素にラベルを付けます。注釈を追加するには、パネルの空の部分をダブルクリックして入力を開始します。注釈を変更するには、リッチ テキスト メニューを使用します。たとえば、セクション ラベルを太字にします。編集モード中に別のパネルを編集するには、次のパネルを選択します。パネルの外側をクリックすると、編集モードが終了します。

パネルの編集と注釈付けが完了したら、パネルの上部にあるメニューで [編集完了] オプションを選択するか、パネルの外側をクリックして、編集モードを終了します。

パネルを使用したモデルの対話型のシミュレーション

これで、sldemo_fuelsys モデルの対話型シミュレーションを実行しながらモジュラー パネルを使用できるようになりました。fuel_rate_control サブシステムを理解してデバッグする必要があるとします。このサブシステムでは、コントロール パネルおよび fuel 信号を可視化するパネルが最も役立ちます。シミュレーションを開始する前に、fuel_rate_control サブシステム内部にアクセスして、次に control_logic Stateflow® チャートにアクセスします。air_fuel_ratio 信号を可視化するパネルを最小化するか非表示にして、コントロール パネルと燃料のパネルをチャートの内容が見えるように配置します。

シミュレーションを開始します。シミュレーションが開始したら、システムで故障を引き起こす 1 つ以上の [Fault Injection] Slider Switch ブロックの位置を変更します。Dashboard ブロックがモデルに渡す値を変更するには、ブロックを選択し、新しい値を選択するためにクリックします。システムの状態が 1 つ以上の故障に応じて変化するのに合わせて、変化を Stateflow チャートで観察します。

ヒント

シミュレーションの進行が速すぎる場合、シミュレーション ペーシングを使用して、クロック時間を基準にしたシミュレーション時間の進行を遅くすることができます。詳細については、シミュレーションのペーシングを参照してください。

関連するトピック