Main Content

AUTOSAR Adaptive ソフトウェア コンポーネントの作成と設定

アルゴリズム モデルから AUTOSAR Adaptive ソフトウェア コンポーネント モデルを作成します。

AUTOSAR Blockset ソフトウェアは、オープンで標準化された車戴ソフトウェア アーキテクチャ AUTomotive Open System ARchitecture (AUTOSAR) をサポートしています。AUTOSAR のコンポーネントは、自動車メーカー、サプライヤーおよびツール開発者によって共同開発されました。Simulink で AUTOSAR Adaptive コンポーネントを開発するには、次の一般的なワークフローに従います。

  1. AUTOSAR Adaptive コンポーネントの Simulink 表現を作成します。

  2. AUTOSAR 構成を調整し、アルゴリズム モデル コンテンツを作成することによりコンポーネントを開発します。

  3. Simulink でのテストまたは AUTOSAR ランタイム環境への統合のための ARXML 記述とアルゴリズム C++ コードを生成します (AUTOSAR コード生成には Simulink Coder および Embedded Coder が必要です)。

Simulink での AUTOSAR Adaptive ソフトウェア コンポーネントの作成

AUTOSAR Adaptive ソフトウェア コンポーネントの初期 Simulink 表現を作成するには、次のいずれかの操作を行います。

既存のモデルを使用して AUTOSAR Adaptive ソフトウェア コンポーネントを作成するには、まず AUTOSAR ソフトウェア コンポーネントがマッピングされていない Simulink コンポーネント モデルを開きます。この例では AUTOSAR のモデル例 LaneGuidance を使用します。

open_system('LaneGuidance'); 

モデル ウィンドウの [モデル化] タブで、[モデル設定] を選択します。[コンフィギュレーション パラメーター] ダイアログ ボックスで、[コード生成] ペインを開き、システム ターゲット ファイルを autosar_adaptive.tlc に設定します。[OK] をクリックします。

モデルの最上位レベルでイベントベースの通信を設定します。AUTOSAR Adaptive ソフトウェア コンポーネントはサービスを提供し消費します。各コンポーネントには次が含まれます。

  • 受信したイベントに応答してタスクを実行するアルゴリズム

  • サービス インターフェイスにそれぞれ関連付けられた要求側ポートおよび提供側ポート

  • 関連付けられたイベントと関連付けられた名前空間をもつサービス インターフェイス

AUTOSAR Blockset は Event Receive ブロックおよび Event Send ブロックを提供して、必要なイベントと信号の接続を作成します。

  • 各ルート入力端子の後に Event Receive ブロックを追加します。これにより、信号の値とデータ型を保持したまま、入力イベントが信号に変換されます。

  • 各ルート出力端子の前に Event Send ブロックを追加します。これにより、信号の値とデータ型を保持したまま、入力信号がイベントに変換されます。

(ブロックの挿入を効率よく行うため、AUTOSAR モデル例 autosar_LaneGuidance からイベント ブロックをコピーできます。)

マッピングされた AUTOSAR Adaptive ソフトウェア コンポーネントとしてモデルを設定する場合、AUTOSAR コンポーネントのクイック スタートを開きます。[アプリ] タブで [AUTOSAR コンポーネント デザイナー] をクリックします。AUTOSAR コンポーネントのクイック スタートが開きます。

AUTOSAR Adaptive ソフトウェア コンポーネント開発を構成するには、クイック スタートの手順に従います。この例では、クイック スタートの [コンポーネントの設定] ペインの既定のオプション設定を受け入れます。

[終了] ペインで、[終了] をクリックすると、AUTOSAR コードのパースペクティブでモデルが開きます。

AUTOSAR Adaptive ソフトウェア コンポーネントの Simulink での構成

AUTOSAR コード パースペクティブには、モデルに加え、モデルのすぐ下にコード マッピング エディターが表示されます。

次に、コード マッピング エディターおよび AUTOSAR ディクショナリを使用して、AUTOSAR Adaptive コンポーネントをさらに詳細に開発します。

コード マッピング エディターにはモデルの入力端子と出力端子が表示されます。エディターを使用して、Simulink モデルのパースペクティブで Simulink の入力端子と出力端子を AUTOSAR の要求側ポートおよび提供側ポート (AUTOSAR 規格で定義される) にマッピングします。

コード マッピングのそれぞれのタブを開き、マッピングされたモデル要素を確認します。要素の AUTOSAR マッピングを変更するには、要素を選択し、その関連するプロパティを変更します。要素を選択すると、モデル内で強調表示されます。

マッピングされた AUTOSAR Adaptive ソフトウェア コンポーネントの AUTOSAR プロパティを設定するには、AUTOSAR ディクショナリを開きます。コード マッピング エディターで、AUTOSAR ディクショナリ ボタン (左端のアイコン) をクリックします。コード マッピング エディターで最後に選択してマッピングした Simulink 要素に対応する AUTOSAR のビューで AUTOSAR ディクショナリが開きます。Simulink 入力端子を選択してマッピングした場合、[RequiredPorts] ビューでディクショナリが開き、入力端子をマッピングした AUTOSAR ポートが表示されます。

AUTOSAR ディクショナリには、マッピングされた AUTOSAR Adaptive コンポーネントとその要素、通信インターフェイスおよび XML オプションが表示されます。このディクショナリを使用して、AUTOSAR コンポーネントのパースペクティブで AUTOSAR の要素とプロパティを設定します。

各ノードを開き、その AUTOSAR 要素を調べます。AUTOSAR 要素を変更するには、要素を選択して関連するプロパティを変更します。変更は、モデルから作成された AUTOSAR XML および AUTOSAR 準拠の C コードに反映されます。

C++ コードと ARXML 記述の生成 (Embedded Coder)

Simulink Coder および Embedded Coder のライセンスがある場合、AUTOSAR Adaptive モデルをビルドできます。AUTOSAR モデルをビルドすると AUTOSAR 準拠の C++ コードが生成され、AUTOSAR XML (ARXML) 記述がエクスポートされます。モデル ウィンドウで Ctrl+B を押すか、または [AUTOSAR] タブで [コード生成] をクリックします。

ビルドが完了すると、コード生成レポートが開きます。レポートを確認します。コード マッピング エディターと AUTOSAR ディクショナリでの変更内容が C++ コードと ARXML 記述に反映されていることを確認します。たとえば、[検索] フィールドを使用して、Simulink モデル要素および変更した AUTOSAR コンポーネント要素の名前を検索します。

関連するリンク