適合パラメータが宣言されているソフトウェアコンポーネントは、実行時に以下のAPIコールを使用して各特性 値にアクセスします。
CalprmElementType Rte_Calprm_<Port>_<CalprmElement>() このコールは適合データ(基本型)、またはデータのポインタ(複合型)を返します。
ファンクション内の適合データはASCETの「パラメータ」を用いてモデリングされます。アプリケーションソフトウ ェアコンポーネント内では、パラメータマッピングテーブルを使用して適合データをAUTOSAR適合コンポーネ ントの適合パラメータに対応付けることができます。
パラメータを含むファンクションを作成する:
ASCETコンポーネントマネージャのInsert → Class → Block diagramを
選択してASCETクラスを作成します。
このクラスの名前をClassWithParamにします。
Edit → Open Component を選択するか、このクラスをダブルクリックしま す。
“Block Diagram Editor for: ClassWithParam”ウィンドウが開きます。
“Elements”パレットから Logic Parameter を選択します。
“Properties for Scalar Element: log”ダイアログボックスが開きます。
このパラメータの名前をlocalLogにし、スコープをImportedに変更しま す。
図59: パラメータ”localLog”のスコープを”Imported” に設定する
“Elements”パレットから Unsigned Discrete Parameter を選択します。
“Properties for Scalar Element: udisc”ダイアログボックスが開きます。
このパラメータの名前をlocalUdiscにし、スコープをImportedに変更し ます。
以下のメソッドをクラスのブロックダイアグラム内にモデリングします。
ファンクションの内部パラメータをAUTOSAR適合パラメータにマッピングする:
3.1.2項「AUTOSAR用のコード生成に関する設定」の手順に従い、AUTOSAR
プロジェクトARProjectを作成してそこにソフトウェアコンポーネントSwcを 挿入します。
5.3項「適合」で作成した適合インターフェースCalInterfaceをソフトウェア コンポーネントSwcに挿入します。
クラスClassWithParamをソフトウェアコンポーネントSwcに挿入します。
変数inValue1、inValue2、outValue1、outValue2を、ソフトウェアコ ンポーネントのブロックダイアグラムに以下のように挿入します。
ランナブルRunnable_Entityを作成し、このランナブル内のメソッドcalc にシーケンスを割り当てます。
ソフトウェアコンポーネントエディタの“Parameter Mapping”タブを選択します。
パラメータマッピングテーブル(下図)が開きます。
テーブルの左列には、ソフトウェアコンポーネントのモジュールおよびクラスに インポートされたすべてのパラメータがリストアップされます。
右列は、それらの各パラメータ用のポップアップリストになっています。ソフトウ ェアコンポーネント内の適合パラメータのうち、左列のパラメータと型が一致す るものが選択肢として提示されます。
パラメータlocalLog について、適合パラメータcalParam1 を選択します。
パラメータlocalUdiscについて、適合パラメータcalParam3を選択しま す。
プロジェクトARProjectについて、ASCETは以下のようなCコードを生成します。
注記
ソフトウェアコンポーネントを開いている時に適合インターフェースを編集した場合は、メニューオプション Mapping → Update を使用して“Parameter Mapping”タブの内容を更新してください。