ここでは、 RT プロファイルエディタについて説明します。
RTプロファイルエディタは、以下のページから構成されています。
№ | 画面要素名 | 説明 |
1 | 基本プロファイル入力ページ | RTコンポーネントのプロファイル情報など、コンポーネントの基本情報を入力します。 |
2 | アクティビティ・プロファイル | RTコンポーネントがサポートしているアクティビティ情報などを指定します。 |
3 | データポート・プロファイル | RT コンポーネントに付属するデータポートのプロファイルを入力します。 |
4 | サービスポート・プロファイル | RT コンポーネントに付属するサービスポートおよびサービスポートに付属するサービスインターフェースのプロファイルを入力します。 |
5 | コンフィギュレーション | RTコンポーネントに設定するユーザ定義のコンフィギュレーション・パラメータセット情報およびシステムのコンフィギュレーション情報を入力します。 |
6 | ドキュメント生成 | 生成対象のRTコンポーネントに追加する各種ドキュメント情報を入力します。 |
7 | 言語・環境 | 生成対象のコード選択やOSなどの実行環境に関する情報を入力します。 |
8 | RTC.xml | 設定された情報を基に生成したRtcProfileのXML形式での表示・編集を行います。 |
RT コンポーネントのプロファイル情報など、コンポーネントの基本情報を入力するページです。
以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
RT-Component Basic Profile | ||
モジュール名 | RT コンポーネントを識別する名前です。必須入力項目。この名前は、生成されるソースコード中で、コンポーネントの名前に使用されます。英数字でなければなりません。 | ○ |
モジュール概要 | RT コンポーネントの簡単な概要説明です。 | - |
バージョン | RT コンポーネントのバージョンです。原則 x.y.z のような形式でバージョン番号を入力します。省略可能項目 | - |
ベンダ名 | RT コンポーネントを開発したベンダ名です。 | ○ |
モジュールカテゴリ | RT コンポーネントのカテゴリです。 | ○ |
コンポーネント型 | RTコンポーネントの型です。以下の選択肢の中から指定可能です。 ・STATIC:静的に存在するタイプのRTCです。動的な生成、削除は行われません。 ・UNIQUE:動的に生成・削除はできるが、各コンポーネントが内部に固有状態を保持しており、必ずしも交換可能ではないタイプのRTCです。 ・COMMUTATIVE:動的に生成・削除が可能で、内部の状態を持たないため、生成されたコンポーネントが交換可能なタイプのRTCです。 |
○ |
アクティビティ型 | RTコンポーネントのアクティビティタイプです。以下の選択肢の中から指定可能です。 ・PERIODIC :一定周期でRTCのアクションを実行するアクティビティタイプ ・SPORADIC :RTCのアクションを不定期に実行するアクティビティタイプ ・EVENT_DRIVEN :RTCのアクションがイベントドリブンであるアクティビティタイプ |
○ |
コンポーネント種類 | RTコンポーネントの実行形態の種類です。以下の選択肢から選択可能です。(複数選択肢の組み合わせ可) ・DataFlow : 周期的にアクションを実行する実行形態 ・FSM : 外部イベントによってアクションを実行する形態 ・MultiMode : 複数の動作モードを持つ実行形態 |
○ |
最大インスタンス数 | RT コンポーネント インスタンスの最大数です。自然数を入力してください。 | - |
実行型 | ExecutionContextの型です。 以下から選択可能です。・PeriodicExecutionContext : 周期実行を行うExecutionContext・ExtTrigExecutionContext : 外部トリガによって実行を行うExecutionContex | ○ |
実行周期 | ExecutionContextの実行周期です。正のdouble型の数値が入力可能です(単位Hz)。 | - |
概要 | RTコンポーネントに関する説明です。 | - |
RTC Type | 特定機能を実現するRTコンポーネントを区別する必要がある場合に指定します。 | - |
Output Project | ||
生成コードの出力対象プロジェクト名です。設定したプロジェクトが存在する場合には、そのプロジェクト内に、設定したプロジェクトが存在しない場合には、新規プロジェクトを生成します。 | ○ |
生成対象のRTコンポーネントがサポートしているアクティビティに関する情報を入力するページです。
Documentationセクションの内容は、アクティビティ毎に設定します。Documentationセクションには、選択中のアクティビティに対応した内容が表示されます。
以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
Activity Profile | ||
onInitialize | 初期化処理です。コンポーネントライフサイクルの開始時に一度だけ呼ばれます。 | - |
onFinalize | 終了処理です。コンポーネントライフサイクルの終了時に1度だけ呼ばれます。 | - |
onStartup | ExecutionContextが実行を開始するとき1度だけ呼ばれます。 | - |
onShutdown | ExecutionContextが実行を停止するとき1度だけ呼ばれます。 | - |
onActivated | 非アクティブ状態からアクティブ化されるとき1度だけ呼ばれます。 | - |
onDeactivated | アクティブ状態から非アクティブ化されるとき1度だけ呼ばれます。 | - |
onAborting | ERROR状態に入る前に1度だけ呼ばれます。 | - |
onError | ERROR状態にいる間に呼ばれます。 | - |
onReset | ERROR状態からリセットされ非アクティブ状態に移行するときに1度だけ呼ばれます。 | - |
onExecute | アクティブ状態時に周期的に呼ばれます。 | - |
onStateUpdate | on_executeの後毎回呼ばれます。 | - |
onRateChanged | ExecutionContextのrateが変更されたとき呼ばれます。 | - |
onAction | 対応する状態に応じた動作を実行するために呼ばれます。 | - |
onModeChanged | モードが変更された時に呼ばれます。 | - |
Documentation | ||
アクティビティ名 | 現在選択されているアクティビティの名称を表示します。 | - |
動作概要 | 対象アクティビティが実行する動作の概要説明を記述します。 | - |
事前条件 | 対象アクティビティを実行する前に成立すべき事前条件を記述します。 | - |
事後条件 | 対象アクティビティを実行した後に成立する事後条件を記述します。ただし、事前条件が満たされない状態で対象アクティビティが実行された場合は事後条件の成立は保証されません。 | - |
RT コンポーネントに付属するデータポートの情報を入力するページです。
各ポート (InPort/OutPort) を新規に追加する場合は、各セクションの「 Add 」ボタンを押してください。 また、各セクションの「 Delete 」ボタンを押すと、選択中のポートを削除することができます。 ドキュメントセクションの内容はポート毎に設定することが可能です。ドキュメントセクションには、選択中のポートに対応した内容が表示されます。 以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
DataPortプロファイル | ||
ポート名 | DataPortの名称です。半角英数字のみ入力可能です。 Data OutPort、Service Portと併せてポート名称は重複することができません。 |
○ |
Detail | ||
ポート名 | 現在選択されているData Portを「ポート名(InPort/OutPort)」の形式で表示します。 | - |
データ型 | DataPort が扱うデータ型です。 設定画面にて指定したIDL内で定義されているデータ型が利用可能です。 |
○ |
変数名 | DataPort に対応する変数名です。 | - |
表示位置 | ビルドビュー内でのData InPortの表示位置です。 | ○ |
概要説明 | データポートに対する概要説明を記述します。 | - |
データ型 | データポートの扱う型に対する説明を記述します。 | - |
データ数 | データが配列になる場合など、データ数に関する説明を記述します。 | - |
意味 | データの意味の説明を記述します。 | - |
単位 | データ単位に関する説明を記述します。 | - |
発生頻度,周期 | データの発生頻度、周期に関する説明を記述します。 | - |
処理速度,周期 | データの処理速度、処理周期に関する説明を記述します。 | - |
RT コンポーネントに付属するサービスポートの情報を入力するページです。
新規サービスポートは、画面左側「 RT-Component Service Ports 」欄の「 Add Port 」を選択することで追加することができます。 画面左側「 RT-Component Service Ports 」にてサービスポートを選択した状態で、「Add Interface 」を選択することで新規サービスインターフェースを追加することができます。 画面左側「 RT-Component Service Ports 」にて、サービスポートもしくはサービスインターフェースを選択した状態で「 Delete 」を選択することで、選択したポート/インターフェースを削除することができます。 以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
RT-Component Service Port Profile | ||
ポート名 | サービスポートの名称です。半角英数字のみ入力可能です。 Data InPort、Data OutPort、Service Port名称は重複できません。 |
○ |
表示位置 | ビルドビュー内でのサービスポートの表示位置です。 | ○ |
Documentation | ||
概要説明 | サービスポートに対する概要説明を記述します。 | - |
I/F概要説明 | サービスポートに付属するサービスインターフェースの概要説明を記述します。 | - |
項目 | 説明 | 必須 |
RT-Component Service Port Interface Profile | ||
インターフェース名 | サービスインターフェースの名称です。半角英数字のみ入力可能です。 サービスインターフェース名は重複することができません。 |
○ |
方向 | サービスインターフェースの種類です。以下の選択肢から選択可能です。 ・Provided:提供インターフェース(Service Provider用) ・Required:要求インターフェース(Service Consumer用) |
○ |
インスタンス名 | サービスインターフェースのインスタンス名です。半角英数字のみ入力可能です。 | ○ |
変数名 | サービスインターフェースの変数名です。省略された場合は、インスタンス名を使用します。 | - |
IDLファイル | サービスインターフェースで使用するIDLファイル名を指定します。「Browse...」ボタンをクリックすると、ファイル選択ダイアログが表示されます。 | ○ |
インターフェース型 | サービスインターフェースで使用するサービスの型です。IDL fileを指定するとIDL内で定義されている型情報が表示されます。半角英数字のみ入力可能です。 | ○ |
IDL Path | IDLのサーチパスです。「Browse...」ボタンをクリックすると、ディレクトリ選択ダイアログが表示されます。 | - |
Documentation | ||
概要説明 | サービスインターフェースに対する概要説明を記述します。 | - |
引数 | サービスインターフェースの引数に関する説明を記述します。 | - |
戻り値 | サービスインターフェースの戻り値に関する説明を記述します。 | - |
例外 | サービスインターフェースの例外に関する説明を記述します。 | - |
事前条件 | サービスインターフェースのオペレーションを実行前に満たしておくべき事前条件に関する説明を記述します。 | - |
事後条件 | サービスインターフェースのオペレーションを実行後に満たす事後条件に関する説明を記述します。 | - |
RT コンポーネントに設定するユーザ定義のコンフィギュレーション・パラメータ情報およびその他システムのコンフィギュレーション情報を入力するページです。
ユーザ定義コンフィギュレーション・パラメータ情報およびシステム・コンフィギュレーション情報を新規に追加する場合は、各セクションの「Add」ボタンを押してください。また、各セクションの「Delete」ボタンを押すと、選択中のコンフィギュレーション情報を削除することができます。
DetailセクションおよびDocumentationセクションの内容は、ユーザ定義コンフィギュレーション・パラメータ毎に設定することが可能です。各セクションには、選択中のユーザ定義コンフィギュレーション・パラメータに設定した内容が表示されます。
以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
RT-Component Configuration Parameter Definitions | ||
名称 | ユーザ定義コンフィギュレーション・パラメータの名称です。半角英数字のみ入力可能です。 ユーザ定義コンフィギュレーション・パラメータ名称は重複することができません。 |
○ |
Detail | ||
パラメータ名 | 現在選択されているユーザ定義コンフィギュレーション・パラメータを表示します。 | - |
データ型 | ユーザ定義コンフィギュレーション・パラメータのデータ型です。 設定画面にて指定したIDL内で定義されているデータ型が利用可能です。 |
○ |
デフォルト値 | ユーザ定義コンフィギュレーション・パラメータのデフォルト値です。2バイト文字を含む任意の値を設定可能です。 | ○ |
変数名 | ユーザ定義コンフィギュレーション・パラメータの変数名です。半角英数字のみ入力可能です。 | - |
単位 | ユーザ定義コンフィギュレーション・パラメータの単位です。 | - |
制約条件 | ユーザ定義コンフィギュレーション・パラメータに対する制約条件を記述します。制約条件の記述方法については、制約情報の記述方式を参照してください。 | - |
Widget | RTSystemEditorのConfigurationViewにてコンフィギュレーション・パラメータを設定する際に利用するコントロールを指定します。以下の値から選択可能です。 ・text:テキストボックス(デフォルト設定) ・slider:スライダ ・spin:スピンボタン ・radio:ラジオボタン |
○ |
Step | 入力用コントロールとして、「slider」を選択した場合に、スライダの刻み幅を指定します。 | - |
パラメータ名 | 現在選択されているユーザ定義コンフィギュレーション・パラメータを表示します。 | - |
データ名 | ユーザ定義コンフィギュレーション・パラメータの名称に対する説明を記述します。 | - |
デフォルト値 | ユーザ定義コンフィギュレーション・パラメータのデフォルト値に対する説明を記述します。 | - |
概要説明 | ユーザ定義コンフィギュレーション・パラメータに対する概要説明を記述します。 | - |
単位 | ユーザ定義コンフィギュレーション・パラメータの単位に対する説明を記述します。 | - |
データレンジ | ユーザ定義コンフィギュレーション・パラメータのデータ範囲に関する説明を記述します。 | - |
制約条件 | ユーザ定義コンフィギュレーション・パラメータの制約条件に関する説明を記述します。 | - |
RT-Component Configuration Parameter | ||
Configuration | 設定を行うコンフィギュレーション名です。一覧から選択します。 | ○ |
デフォルト値 | 設定対象コンフィギュレーションのデフォルト値です。予めデフォルト値が設定されている項目については、名称選択時にデフォルト値が設定されます。 | - |
生成対象のRTコンポーネントに関する各種ドキュメント情報を入力します。
このページで入力された情報は、生成されたコードにdoxygen形式で埋め込まれます。
以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
コンポーネント概要 | ||
概要説明 | 生成するRTコンポーネントの概要説明を記述します。 | - |
入出力 | RTコンポーネントの入出力に関する概略説明を記述します。 | - |
アルゴリズムなど | RTコンポーネントが使用しているアルゴリズムなどの説明を記述します。 | - |
その他 | ||
作成者・連絡先 | RTコンポーネントの作成者および連絡先に関する情報を記述します。 | - |
ライセンス,使用条件 | RTコンポーネントのライセンス情報、使用条件に関する情報を記述します。 | - |
参考文献 | 参考文献情報を記述します。 | - |
バージョンアップログ | ||
VersionUp Log | 今回の変更内容に関するログ情報を記述します。 | - |
ライセンス,使用条件 | 過去のバージョンアップ時のログ情報を表示します。 | - |
入力した RT コンポーネント仕様に基づき生成するテンプレート・ソースコードの言語選択や、OS 等の実行環境、依存ライブラリなどを入力するページです。
生成対象の言語ごとにセクションが分かれています。生成したい言語のセクションを選択し、各言語固有の設定情報を入力してください。 あるセクションを選択した場合には、他のセクションは全て閉じるようになっています。 コード生成実行時(基本プロファイル入力ページの「 コード生成 」ボタン押下時)に選択されていたセクションの言語用テンプレートコードが生成されます。 以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
言語 | 生成対象の言語を指定します。 | ○ |
環境 | ||
Version | 生成対象RTCを実装している言語のバージョン情報を設定します。 | - |
OS | 生成対象RTCが動作するOS情報を設定します。 | - |
OS Version | 生成対象RTCが動作するOSのバージョン情報を設定します。 | - |
CPU | 生成対象RTCが動作するCPUアーキテクチャ情報を設定します。 | - |
その他OS情報 | 生成対象RTCが動作するOSについて、バージョン情報以外の補足情報を設定します。 | - |
その他CPU情報 | 生成対象RTCが動作するCPUについて、アーキテクチャ情報以外の補足情報を設定します。 | - |
ライブラリ情報 | ||
Name | 生成対象RTCが利用する外部ライブラリの名称を指定します。 | ○ |
Version | 生成対象RTCが利用する外部ライブラリのバージョン情報を指定します。 | - |
Info. | 生成対象RTCが利用する外部ライブラリの補足情報を指定します。 | - |
入力した RT コンポーネント仕様を記した XML ファイル (RTC.xml) の内容確認、編集を行うページです。他のページで設定した内容を確認したり、GUI 画面からは入力できない項目を直接編集するために使用します。
表示されるRTコンポーネント仕様の内容は、このページに切り替えた時に他ページで設定されている内容を基に作成されます。
画面右上の「Update」ボタンをクリックすると、このページで設定、変更した内容を他のページに反映させることができます (他のページへ反映させるのみで、ファイルへの書き込みは行いません) 。また、以下のような画面が表示され、変更点を確認することができます。修正内容を他ページへ反映する場合には「OK」をクリックしてください。
このページで直接入力した内容は、このページを表示している状態で保存した場合のみ保存されます。このページにて内容編集後、他ページを開いた状態で保存すると、他のページにて入力した項目が優先されます。 このページの内容を保存する場合には、RTC.xml のスキーマ定義に従ったバリデーションが行われます。バリデーション時にエラーが発見された場合は、以下のようなエラーメッセージが表示されますので、表示内容を参考に該当箇所を修正してください。
データポートおよびユーザ定義コンフィギュレーション・パラメータへの制約条件は以下の書式で設定します。
設定内容 | 設定書式 |
指定なし | 空白 |
100(即値) | 100 |
100以上 | x >= 100 |
100以下 | x<=100 |
100超 | x>100 |
100未満 | x<100 |
100以上200以下 | 100<=x<=200 |
100超200未満 | 100<x<200 |
列挙型 | (9600,19200,115200) |
配列型 | x>100, x>200, x>300 |
ハッシュ型 | {key0: 100<x<200, key1: x>=100} |