Main Content

Adaptive コンポーネント モデルからの AUTOSAR パッケージのインポート

Adaptive Platform の共有 ARXML 要素定義をインポートおよび参照します。

モデルへの AUTOSAR Adaptive 要素定義の追加

AUTOSAR Adaptive ソフトウェア コンポーネントを Simulink で開発する場合、多くのコンポーネントに共通する AUTOSAR 要素定義をインポートできます。AUTOSAR Adaptive コンポーネント モデルを作成したら、AUTOSAR 共有要素のパッケージが含まれる AUTOSAR XML (ARXML) ファイルから定義をインポートします。コンポーネントの動作の実装を支援するため、サービス インターフェイスなどの事前定義された要素を、関連するイベントと名前空間、およびデータ型と共に参照する場合があります。

AUTOSAR Adaptive ソフトウェア コンポーネント モデルを開発しているとします。複数の製品ラインとチームで共有されている、事前定義されている Adaptive Platform の型要素をインポートする必要があります。この例では、AUTOSAR インポーター関数updateAUTOSARPropertiesを使用して、定義を共有記述ファイル Adaptive_PlatformTypes.arxml からモデル例 autosar_LaneGuidance にインポートします。

modelName = 'autosar_LaneGuidance';
open_system(modelName);
ar = arxml.importer('Adaptive_PlatformTypes.arxml');
updateAUTOSARProperties(ar,modelName);
### Updating model autosar_LaneGuidance
### Saving original model as autosar_LaneGuidance_backup.slx
### Creating HTML report autosar_LaneGuidance_update_report.html

この関数は、指定された ARXML ファイルの要素を、指定されたモデルの AUTOSAR ディクショナリにコピーします。データ型をインポートする場合、関数は、インポートされた型について、データ ディクショナリ (使用できる場合) またはベース ワークスペースにも、データ オブジェクトを作成します。

関数は、ワークスペースの変更と要素の追加をリストしている HTML レポートを生成します。以前は定義されていなかった Adaptive Platform の型を表すデータ オブジェクトの作成を反映した Simulink ワークスペースの変更を示します。

AUTOSAR 要素の追加を示します。関数により AUTOSAR_Platform という名前の新しい AUTOSAR パッケージが作成されたことに注目してください。インポートされた Adaptive Platform のタイプに基づいて、関数はパッケージに AUTOSAR ソフトウェア ベース タイプと AUTOSAR 実装データ型を含めました。

パッケージの変更は、パッケージ ツリーの AUTOSAR ディクショナリ ビューに反映されます。AUTOSAR ディクショナリを開いて個別のサービス インターフェイスに移動する場合、[パッケージ] フィールドの右側にある水平の省略記号をクリックして、現在のパッケージ ツリーを表示できます。

インポートされた AUTOSAR Adaptive 要素の参照と構成

AUTOSAR 要素を Adaptive ソフトウェア コンポーネント モデルにインポートした後、その要素は、任意の AUTOSAR ディクショナリ要素と同様の方法で参照し構成できます。

データ型をインポートした場合、モデル ブロックからその型を参照できます。たとえば、モデルで Simulink の端子ブロックを開き [信号属性] タブを開きます。値の [データ型] リストを展開して、インポートされたデータ型が選択できることに注目してください。

Simulink Coder および Embedded Coder ソフトウェアがある場合は、AUTOSAR 準拠の C++ コードを生成して ARXML 記述を Adaptive コンポーネント モデルからエクスポートできます。C++ コードには、モデル ブロックからインポートされた Adaptive 要素への参照が反映されます。エクスポートは、定義をインポートした元の共有記述ファイルのファイル構造と内容を維持します。共有の記述ファイル以外の ARXML ファイルで、ARXML 記述は、必要なところでは共有要素定義を参照します。

関連するリンク