ここでは、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コンポーネントを区別する必要がある場合に指定します。 | - |
生成対象の 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:ラジオボタン ・check:チェックボックス ・ordered_list:順序付きリスト |
○ |
Step | 入力用コントロールとして、「slider」を選択した場合に、スライダの刻み幅を指定します。 | - |
パラメーター名 | 現在選択されているユーザー定義コンフィギュレーション・パラメーターを表示します。 | - |
データ名 | ユーザー定義コンフィギュレーション・パラメーターの名称に対する説明を記述します。 | - |
デフォルト値 | ユーザー定義コンフィギュレーション・パラメーターのデフォルト値に対する説明を記述します。 | - |
概要説明 | ユーザー定義コンフィギュレーション・パラメーターに対する概要説明を記述します。 | - |
単位 | ユーザー定義コンフィギュレーション・パラメーターの単位に対する説明を記述します。 | - |
データレンジ | ユーザー定義コンフィギュレーション・パラメーターのデータ範囲に関する説明を記述します。 | - |
制約条件 | ユーザー定義コンフィギュレーション・パラメーターの制約条件に関する説明を記述します。 | - |
RT-Component Configuration Parameter | ||
Configuration | 設定を行うコンフィギュレーション名です。一覧から選択します。 | ○ |
デフォルト値 | 設定対象コンフィギュレーションのデフォルト値です。予めデフォルト値が設定されている項目については、名称選択時にデフォルト値が設定されます。 | - |
生成対象のRTコンポーネントに関する各種ドキュメント情報を入力します。
このページで入力された情報は、生成されたコードに doxygen 形式で埋め込まれます。
以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
コンポーネント概要 | ||
概要説明 | 生成するRTコンポーネントの概要説明を記述します。 | - |
入出力 | RTコンポーネントの入出力に関する概略説明を記述します。 | - |
アルゴリズムなど | RTコンポーネントが使用しているアルゴリズムなどの説明を記述します。 | - |
その他 | ||
作成者・連絡先 | RTコンポーネントの作成者および連絡先に関する情報を記述します。 | - |
ライセンス、使用条件 | RTコンポーネントのライセンス情報、使用条件に関する情報を記述します。 | - |
参考文献 | 参考文献情報を記述します。 | - |
バージョンアップログ | ||
VersionUp Log | 今回の変更内容に関するログ情報を記述します。 | - |
ライセンス、使用条件 | 過去のバージョンアップ時のログ情報を表示します。 | - |
入力した RT コンポーネント仕様に基づき生成するテンプレート・ソースコードの言語選択や、OS 等の実行環境、依存ライブラリなどを入力するページです。
生成対象の言語ごとにセクションが分かれています。生成したい言語のセクションを選択し、各言語固有の設定情報を入力してください。 あるセクションを選択した場合には、他のセクションは全て閉じるようになっています。 コード生成実行時(基本プロファイル入力ページの [コード生成] ボタンクリック時)に選択されていたセクションの言語用テンプレートコードが生成されます。 以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
言語 | 生成対象の言語を指定します。 | ○ |
Use old build environment. | このチェックボックスを ON にすると、旧バージョンと同様なコード(Cmakeを利用しない形式)を生成します。 | - |
環境 | ||
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} |