ブロックセット プロジェクトの作成
ブロックセットは、ある目的をもって Simulink® ライブラリに整理されたブロックのコレクションです。ブロックは、スタンドアロン ライブラリの一部であったり、非常に大きなプロジェクトの一部であったりします。
ブロックセット デザイナーは、カスタム ブロックを作成、グループ化、および管理できる、プロジェクトベースのツールです。さまざまなブロックを作成した後、テストを追加したり、ブロックのドキュメントを作成したり、モデル アドバイザー チェックを実行したりします。モデルに S-function ブロックまたは S-Function Builder ブロックが含まれている場合、インターフェイスを使用してそれらをビルドできます。また、既存のブロックセットをインポートしてブロックセット デザイナー プロジェクトを設定することもできます。ブロックセット デザイナーを使用して、新しい Subsystem ブロック、MATLAB System ブロック、S-function ブロック、および S-Function Builder ブロックを作成できます。
新規のブロックセット プロジェクトの作成
Simulink スタート ページを開き、ブロックセット デザイナーで一時停止して [プロジェクトを作成] をクリックします。
プロジェクトの名前を指定します。プロジェクトの名前を入力する際に、ディレクトリ
username\MATLAB\Projects\<foldername>
に新規のフォルダーが自動的に作成されることに注意してください。既存のプロジェクト フォルダーを指定する場合は、[参照] ボタンをクリックします。新規のフォルダーを作成する場合は、[OK] をクリックして新規プロジェクト フォルダーを作成します。[はい] をクリックしてアクションを確認します。
これで、ブロックセット デザイナー プロジェクトのユーザー インターフェイスに移動します。プロジェクトをブロックセットのレベルで見ています。ブロックセット デザイナー プロジェクトで、 アイコンは作業中のブロックセットを表します。
ブロックセット デザイナーは、次のブロックセット レベルのコンポーネントで構成されています。
1 - ブロックセット ブラウザーのパネルにプロジェクト内のブロックとサブライブラリの構成が表示されます。新しいブロックや新しいサブライブラリをブロックセットに追加すると、それらはこのツリーに表示されます。このツリーを使用してサブライブラリ メニューとブロック コントロール メニューとを切り替えることもできます。
2 - [最上位ライブラリ] はライブラリ情報ファイル
slblocks.m
のBrowser.Library
に対応します。これがブロックセットへのエントリ ポイントです。[開く] をクリックして最上位ライブラリの場所を表示します。[参照] をクリックしてブロックセットの最上位ライブラリを変更します。最上位ライブラリを変更するとslblocks.m
も同様に更新され、ブロックセット プロジェクトは新しい最上位ライブラリに基づいて再読み込みされることに注意してください。slblocks.m
の詳細については、ライブラリ ブラウザーへのライブラリの追加を参照してください。3 - ステータス テーブルにはブロックとそのアーティファクトのステータスが表示されます。ステータス テーブルの詳細については、ブロック アーティファクトの作成と整理を参照してください。
新しいサブライブラリの追加
サブライブラリを追加してブロックセット プロジェクトのビルドを開始します。サブライブラリによってブロックを整理して管理することができます。ブロックセット プロジェクトで アイコンはサブライブラリを表します。次の方法を使用してブロックセットに新しいサブライブラリを追加できます。
ツールストリップから [サブライブラリ] ボタンを選択します。
ブロックセット ツリーからブロックセットをクリックし、コンテキスト メニューから [サブライブラリ] を選択します。
サブライブラリに名前を付けウィンドウを閉じます。サブライブラリを作成した後、その 1 つをクリックして作業領域の変化を確認します。作業領域の右上隅で [最上位ライブラリ] や [ヘルプ ページ] ではなく [サブライブラリ] が表示されることを観察します。
右側の [開く] をクリックして、サブライブラリから構築されたライブラリ モデルを開きます。このライブラリ モデルには、選択されたサブライブラリからすべてのブロックが含まれています。
新規ブロックの追加
ブロックセット デザイナーは多くのカスタム ブロックをサポートしています。
ツールストリップの [追加] メニューから、新しいブロックをブロックセット プロジェクトに追加できます。
または、ブロックセットまたはサブライブラリを選択するときに、コンテキスト メニューを開いて [ブロックを追加] をクリックします。
次のブロックをブロックセット デザイナーで作成できます。
標準テンプレート、離散テンプレート、連続テンプレートでの C MEX S-Function ブロック。既存の例から C MEX S-Function を作成することもできます。
Subsystem ブロック。
標準テンプレート、高度なテンプレート、および Simulink Extension System object™ テンプレートをもつ MATLAB System ブロック。
S-Function Builder を使用して作成された S-Function。
作業領域はプロジェクトに追加されるブロックに従って変更されます。Subsystem ブロックについては、ブロック パスと型、[テスト]、および [ドキュメンテーション] などのブロック プロパティが作業領域に表示されます。
ブロックセット ツリーから MATLAB System ブロックをクリックすると、作業領域を使用して System object コードを編集して [テスト] を追加できます。MATLAB System ブロックのドキュメンテーションを追加するには、System object コードでコメントを追加すると、それらは自動的にブロック ドキュメンテーションに追加されます。
ブロックセット オブジェクトに S-function ブロックまたは S-Function Builder ブロックがある場合、ブロック プロパティを監視し、S-Function コードをビルドして編集し、スクリプトをビルドし、ブロックにテストとドキュメントを追加できます。
S-Function をブロックセット デザイナー プロジェクトに追加する場合、テストを追加する前に、S-Function のコードを記述してビルドする必要があることに注意してください。ブロックセット デザイナーを使用して S-Function をビルドする方法の詳細については、S-Function 関連のアーティファクトを参照してください。
ここに挙げたブロックの他に、プロジェクト内の使用可能な Simulink ライブラリ ブロックを追加してカスタマイズできますが、テストやドキュメンテーションを追加するなどの操作を行うことはできません。
プロジェクトの作成が終了したら、次のものを追加できます。
ブロック用のテストまたはテスト スイート。
サブライブラリとブロックのドキュメンテーション。
詳細については、ブロック アーティファクトの作成と整理を参照してください。
既存のブロックセットからのプロジェクトの作成
ブロックセット デザイナーを使用して、ブロックを整理し、ブロックおよびブロックセット用のテストとドキュメンテーションを追加できます。ブロックセットをインポートして新しいブロックセット デザイナー プロジェクトを作成するには、次のようにします。
Simulink スタート ページを開きます。Simulink の下で [ブロックセット デザイナー] を選択し、[プロジェクトを作成] をクリックします。
[新規プロジェクト] ダイアログ ボックスで、プロジェクト名を入力し、ファイルを含むフォルダーを参照して選択して、[OK] をクリックします。
[プロジェクトへようこそ] ダイアログ ボックスで、[プロジェクトの設定] をクリックして続行します。
[プロジェクトの設定] (ステップ 1/3) ダイアログ ボックスで、プロジェクト パスに追加するフォルダーを選択します。プロジェクトを開くと、これらのフォルダーが MATLAB® 検索パスに追加され、プロジェクトを閉じると削除されます。プロジェクト フォルダーとサブフォルダーをプロジェクト パスに追加して、
slblocks.m
および関連するライブラリにアクセスできるようにします。slblocks.m
にはプロジェクトの最上位ライブラリについてのすべての情報が含まれています。詳細については、ライブラリ ブラウザーへのライブラリの追加を参照してください。すべてのプロジェクト フォルダーを追加するには、[サブフォルダーも追加] を選択して、すべてのサブフォルダーを含むプロジェクト フォルダーを選択します。[次へ] をクリックします。[プロジェクトの設定] (ステップ 2/3) ダイアログ ボックスで、オプションで起動ファイルとシャットダウン ファイルを指定します。
起動ファイルを使用して、プロジェクトを開くときの設定を行います。プロジェクトを開くと、起動ファイルが自動的に実行され (
.m
ファイルと.p
ファイル)、読み込まれるか (.mat ファイル)、開かれます (Simulink モデル)。シャットダウン ファイルを使用して、プロジェクトのシャットダウン時に実行する MATLAB コードを指定します。開いているプロジェクト モデルが変更未保存 (ダーティ) でない限り、プロジェクト モデルは自動的に閉じるため、プロジェクトを閉じる際にモデルを閉じるようにシャットダウン ファイルを使用する必要はありません。プロジェクトによって、変更の保存または破棄を求めるメッセージが表示されます。
[追加] をクリックして起動ファイルまたはシャットダウン ファイルを指定します。
[プロジェクトの設定] (ステップ 3/3) ダイアログ ボックスで、このブロックセット向けの
slblocks.m
ライブラリ情報ファイルを指定します。このファイルにはブロックセットの設定についての情報と、最上位ライブラリの場所が含まれています。このファイルがないと、プロジェクトは適切に設定できません。[参照] をクリックしてファイルを選択します。[終了] をクリックすると新しいプロジェクトが開きます。ブロックセット デザイナーがプロジェクトにすべてのファイルを自動的に追加します。インポート プロセス中に、最上位ライブラリに基づいて、ブロックセット デザイナーはブロックセットの階層を調べ、サポートされるブロックのそれぞれのタイプに専用のフォルダーを作成し、そのフォルダーをプロジェクトに追加して、S-Function MEX ファイル、ソース ファイル、および MATLAB System ブロック用の System object ファイルなど、対応するアーティファクトを検索します。詳細については、ブロックセット プロジェクトのファイル構造を参照してください。
これで、さらに多くのブロックをプロジェクトに追加したり、プロジェクト内の既存のブロックにテストやドキュメンテーションを追加したりすることができます。ブロックをビルドし、テストし、ドキュメント作成する方法の詳細については、ブロック アーティファクトの作成と整理を参照してください。
ブロックセット プロジェクトのファイル構造
新規のブロックセットを作成して、または既存のブロックセットをインポートして、ブロックセット プロジェクトを作成するとき、ブロックセット デザイナーは、特定のファイル構成にプロジェクトを整理します。この整理は、プロジェクト内にあるブロックのさまざまなタイプによって変化します。各ブロックに対してどのフォルダーが作成されるかを判断するガイドとして、次の表を使用します。ブロックセット フォルダーの構造を確認するには [表示] パネルで [ファイル] をクリックします。
ブロック タイプ | フォルダー名 | フォルダーの内容 |
---|---|---|
Subsystem | doc | ドキュメンテーション ソースおよびドキュメンテーション用の html ファイル |
library | ブロックのライブラリ モデル | |
unittest | ユニット テスト モデル、テスト スイート、およびテストの入力ファイル | |
MATLAB System | library | ブロックのライブラリ モデル |
sysobj | MATLAB System ブロック向けの System object コード | |
unittest | ユニット テスト モデル、テスト スイート、およびテストの入力ファイル | |
S-Function および S-Function Builder | build | S-Function ビルド スクリプト |
doc | ドキュメンテーション ソースおよびドキュメンテーション用の HTML ファイル | |
library | ブロックのライブラリ モデル | |
mex | S-Function MEX およびコード生成ファイル | |
src | S-Function ソース ファイル | |
unittest | ユニット テスト モデル、テスト スイート、およびテストの入力ファイル | |
ブロックセットプロジェクト (共通) | doc | ドキュメンテーション ソースおよびドキュメンテーション用の HTML ファイル |
library | ブロックのライブラリ モデル | |
script | ブロックセット ルート フォルダーを返すための |
参考
S-Function | S-Function Builder | MATLAB System | Subsystem