メインコンテンツ

カスタム ドキュメント インターフェイスを使用した外部アプリケーションの要件のリンク

カスタム ドキュメント インターフェイスを使用して、Simulink® のモデル、サブシステム、およびブロックを外部アプリケーションの要件にリンクできます。カスタム ドキュメント インターフェイスを使用して要件をインポートすることもできます。要件のリンクやインポートを行う前に、まずカスタム ドキュメント インターフェイスを定義して登録する必要があります。

この例では、要件が含まれている PowerPoint プレゼンテーションに Simulink® ブロックをリンクします。その後、モデルに要件をインポートします。このモデルは自動車の窓のコントロールを表しています。

カスタム ドキュメント インターフェイスの定義と登録

この例では、ファイル rmidemo_pp.m に含まれている、事前に用意されたカスタム ドキュメント インターフェイスを使用します。カスタム ドキュメント インターフェイスは、プロパティを設定し、Requirements Toolbox が外部アプリケーションと連携するコールバックを提供します。詳細については、Define Custom Document Interface for Direct Linking to Requirementsを参照してください。

rmidemo_pp.m ファイルは次のようになっています。

  • PPT と PPTX をサポートされるファイル タイプとして設定。

  • Requirements Toolbox が PowerPoint ドキュメントを解釈する方法を定義。

  • PowerPoint ドキュメントへのアクセスと移動に Office VBA 言語を使用。PowerPoint の Office VBA の詳細については、Microsoft の開発者向けリファレンス ページを参照してください。

カスタム ドキュメント インターフェイスを使用するには、関連するファイルを Requirements Toolbox で登録します。

rmi register rmidemo_pp

スライド番号を使用したリンクの作成

カスタム ドキュメント インターフェイスの登録後、PowerPoint プレゼンテーション内の特定のスライド番号にリンクできます。スライドの順番が変わった場合、このリンクは新しい場所に合わせて更新されません。

driver input の要件が含まれた 5 枚目のスライドにリンクします。

  1. control チャートの driver 入力に接続された Truth Table ブロックを右クリックします。[要件][[外向きリンク] ダイアログを開く] を選択します。

  2. [外向きリンク] ダイアログ ボックスで [新規] をクリックします。

  3. [説明] に「Driver input」と入力します。

  4. [ドキュメント タイプ] のドロップダウンで [Microsoft PowerPoint] を選択します。

  5. [参照] をクリックします。powerwindowController.pptx を選択して [開く] をクリックします。

  6. [場所 (タイプ/識別子)] のテキスト フィールドに「5」と入力します。

  7. [OK] をクリックします。

  8. Truth Table ブロックを右クリックし、[要件] サブメニューを展開します。[Driver input] がメニュー オプションとして表示されます。このメニュー オプションをクリックすると、MATLAB から PowerPoint ドキュメントの 5 枚目のスライドが開きます。

customlinktype_driverinput.png

スライド ID を使用した永続リンクの作成

スライド ID を使用することで、スライドへの永続リンクを作成できます。スライドの順番が変わっても、このリンクは引き続き正しいスライドを指します。

5 枚目のスライドの ID を調べるには、powerwindowController.pptx を開き、MATLAB コマンド ラインを使用して Office VBA をクエリします。

hApp = actxGetRunningServer('powerpoint.application');
hDoc = hApp.ActivePresentation;
hDoc.Slides.Item(5).SlideID 
ans = 
260

スライドにブロックをリンクします。

  1. Truth Table ブロックを右クリックして、[要件][[外向きリンク] ダイアログを開く] を選択します。

  2. [外向きリンク] ダイアログ ボックスで [新規] をクリックします。

  3. [説明] に「Driver input (ID)」と入力します。

  4. [ドキュメント タイプ] のドロップダウンで [Microsoft PowerPoint] を選択します。

  5. [参照] をクリックします。powerwindowController.pptx を選択して [開く] をクリックします。

  6. [場所 (タイプ/識別子)] のドロップダウンで [Named Item] を選択します。

  7. [場所 (タイプ/識別子)] のテキストに「260」と入力します。

  8. [OK] をクリックします。

  9. Truth Table ブロックを右クリックし、[要件] サブメニューを展開します。[Driver input (ID)] がメニュー オプションとして表示されます。このメニュー オプションをクリックすると、MATLAB から PowerPoint ドキュメントの該当するスライドが開きます。

[ドキュメント インデックス] タブを使用した永続リンクの作成

永続リンクは、[外向きリンク] ダイアログ ボックスの [ドキュメント インデックス] タブを使用して作成することもできます。[ドキュメント インデックス] タブを使用するには、カスタム ドキュメント インターフェイスで ContentsFcn メソッドを使用してスライド ID を保存する必要があります。ContentsFcn の詳細については、Define Custom Document Interfaceを参照してください。

  1. control チャートの passenger 入力に接続された Truth Table1 ブロックを右クリックします。[要件][[外向きリンク] ダイアログを開く] を選択します。

  2. [外向きリンク] ダイアログ ボックスで [新規] をクリックします。

  3. [ドキュメント タイプ] のドロップダウンで [Microsoft PowerPoint] を選択します。

  4. [参照] をクリックします。powerwindowController.pptx を選択して [開く] をクリックします。

  5. [ドキュメント インデックス] タブをクリックします。

  6. [リフレッシュ] をクリックします。

  7. [Passenger Input consists of a vector with three elements] をダブルクリックします。[説明][場所 (タイプ/識別子)] のフィールドが自動的に入力されます。

  8. [OK] をクリックします。

  9. Truth Table1 ブロックを右クリックし、[要件] サブメニューを展開します。[Passenger Input consists of a vector with three elements in powerwindowController.pptx] がメニュー オプションとして表示されます。このメニュー オプションをクリックすると、MATLAB から PowerPoint ドキュメントの該当するスライドが開きます。

customlinktype_docindex.png

現在のスライドへの永続リンクの作成

開いている PowerPoint プレゼンテーション内のアクティブなスライドへの永続リンクを作成できます。

  1. PowerPoint プレゼンテーションを開きます。

  2. 6 枚目のスライド「Top or bottom of the window frame is reached」に移動します。

  3. Simulink モデルに戻り、endstop ブロックを右クリックします。[要件][Link to Slide in PowerPoint] を選択します。開いているスライドへのリンクが Requirements Toolbox で作成されます。

  4. endstop ブロックを右クリックし、[要件] サブメニューを展開します。[Top or bottom of the window frame is rea...] がメニュー オプションとして表示されます。このメニュー オプションをクリックすると、MATLAB から PowerPoint ドキュメントの該当するスライドが開きます。

双方向リンクの作成

Requirements Toolbox による双方向リンクの自動作成を有効にできます。双方向リンクを有効にすると、外部アプリケーションの要件へのリンク時に、外部アプリケーションからモデル、サブシステム、またはブロックへのリンクも作成されます。

双方向リンクを作成するには、カスタム ドキュメント インターフェイスで SelectLinkFcn メソッドを使用してハイパーリンクを挿入する必要があります。SelectionLinkFcn の詳細については、Define Custom Document Interfaceを参照してください。

まず、双方向リンクを有効にします。

  1. [アプリ] タブで [要件マネージャー] を開きます。

  2. [要件] ペインの [ビュー] ドロップダウン メニューで [Links] を選択します。

  3. [要件] タブを選択します。

  4. [リンクの設定][リンク オプション] をクリックして、[要件の設定] ウィンドウの [選択内容のリンク] タブを開きます。

  5. [双方向リンクのリンク先を変更] チェックボックスを選択します。

  6. [閉じる] をクリックします。

次に、双方向リンクを追加します。

  1. PowerPoint プレゼンテーションを開きます。

  2. 7 枚目のスライド「Obstacle is present between the window and its frame」に移動します。

  3. Simulink モデルに戻ります。

  4. obstacle ブロックを右クリックし、[要件][Link to Slide in PowerPoint] を選択します。スライドの左上隅に MATLAB リンク アイコンが表示されました。

  5. スライドに戻り、Ctrl キーを押しながらリンク アイコンをクリックします。obstacle ブロックが強調表示されます。

双方向リンクは、[双方向リンクのリンク先を変更] オプションを有効にした後に作成されたリンクに対してのみ表示されます。[MATLAB の起動時に外部接続を有効にする] チェック ボックスをオフにすると、リンクの選択時に PowerPoint が MATLAB に接続できなくなる可能性があります。

要件のインポート

カスタム ドキュメント インターフェイスを使用して外部アプリケーションから要件をインポートできます。

  1. [要件] ペインの [ビュー] ドロップダウン メニューで [Requirements] を選択します。

  2. PowerPoint ドキュメントを開きます。

  3. [要件] タブで [インポート] をクリックします。

  4. [ドキュメント タイプ] のドロップダウンで [Microsoft PowerPoint] を選択します。

  5. [現在の選択を使用] をクリックします。[ドキュメントの場所] が自動的に入力されます。

  6. [インポート] をクリックします。

  7. [要件] タブの [要件セット] セクションで [要件エディター] をクリックし、インポートされた要件を確認します。

上記の手順は、Microsoft OneDrive やその他のネットワークの場所にあるファイルには対応していない可能性があります。インポートできないことを示すエラーが表示される場合は、次の手順に従います。

  1. powerwindowController.pptx を閉じます。

  2. powerwindowController.pptx のローカル コピーを作成します。

  3. ローカル コピーを開きます。

  4. 要件を再度インポートします。

customlinktype_reqeditor.png

カスタム ドキュメント インターフェイスの削除

不要になったカスタム ドキュメント インターフェイスを削除するには登録解除コマンドを使用します。登録を解除すると、そのカスタム ドキュメント インターフェイスを使用するリンクは機能しなくなります。

rmi unregister rmidemo_pp

参考

トピック