Main Content

AUTOSAR とは

AUTOSAR (AUTomotive Open System ARchitecture) は、自動車メーカー、サプライヤー、およびその他のエレクトロニクス、半導体、ソフトウェア業界の企業による世界規模の開発パートナーシップです。AUTOSAR 規格は、ソフトウェアの標準化、再利用、相互運用性を目的に設計されています。

AUTOSAR 規格は、現在と将来世代の車載電子コントロール ユニット (ECU) をサポートする 2 つのプラットフォームを提供しています。

  • Classic Platform は、パワートレイン、シャシー、ボディ、インテリアのエレクトロニクスなど、従来の内部アプリケーションをサポートします。

  • Adaptive Platform は、自動運転、Car-to-X、無線 (OTA) でのソフトウェア更新、モノのインターネット (IoT) の一部としての車両の使用など、サービスベースのアプリケーションをサポートします。

AUTOSAR Classic、AUTOSAR Adaptive、および AUTOSAR 以外の ECU を 1 台の車で相互運用できます。

The exchange of information within a vehicle is shown. Categorized by AUTOSAR Classic, AUTOSAR Adaptive, and non-AUTOSAR components. A table of the differences between AUTOSAR Classic and AUTOSAR Adaptive is shown below the vehicle.

AUTOSAR 規格の概要については、AUTOSAR 規格を参照してください。

AUTOSAR Classic Platform と Adaptive Platform

AUTOSAR 規格は、車載アプリケーションの Classic Platform と Adaptive Platform を定義します。AUTOSAR ソフトウェア コンポーネントを設計し実装するために使用するプラットフォームを選択する場合は、次の特性を考慮してください。

特性Classic PlatformAdaptive Platform
ユース ケース組み込みシステム高性能な計算、外部リソースとの通信、および柔軟な展開
プログラミング言語CC++
オペレーティング システムベアボードPOSIX
リアルタイム要件ハードソフト
計算能力
通信信号ベースイベントベース、サービス指向
安全とセキュリティサポートありサポートあり
動的更新使用できませんインクリメンタルな展開とランタイム時の構成変更
標準化のレベル高 - 詳細化された仕様低 - API とセマンティクス
アジャイル開発なしあり

AUTOSAR Classic Platform アーキテクチャには、マイクロコントローラー ハードウェアの上に 3 つの層があります。

  • アプリケーション ソフトウェアは、ソフトウェア コンポーネント (SW-C または SWC) と呼ばれる自己完結ユニットであり、アプリケーションの実装を提供。SWC をビルドすると、プラットフォームに準拠した AUTOSAR XML (ARXML) 記述と C コード実装モジュールが生成されます。

  • ランタイム環境 (RTE) は、アプリケーション ソフトウェアと基本ソフトウェア (BSW) 間の通信を提供。SWC は RTE 経由で排他的に他のコンポーネントや BSW モジュールと通信します。これにより、SWC を特定の ECU や他の SWC から独立させることができます。

  • BSW は、ECU の抽象化、マイクロコントローラーの抽象化、およびメモリや診断などのサービスを提供。

このモジュール性は、複雑な自動車システムの管理に役立ち、柔軟な製品の更新を提供するとともに、製品ライン全体でスケーラブルなアーキテクチャを実現します。AUTOSAR Classic SWC では、ARXML 記述とアルゴリズム C コードを生成して、テストおよび AUTOSAR RTE への統合を行います。AUTOSAR Adaptive Platforom アーキテクチャには、Classic Platform と同様の層がありますが、こちらは非常に計算量の多いアプリケーションの処理基盤を提供するサービス指向アーキテクチャ (SOA) です。Adaptive Platform は、Portable Operating System Interface (POSIX) 規格をサポートしています。SWC は、独立したアプリケーションであるオペレーティング システム プロセスとして展開されます。AUTOSAR Adaptive SWC では、ARXML 記述とアルゴリズム C++ コードを生成して、テストおよび AUTOSAR RTE への統合を行います。テスト用に、Linux アプリケーションの実行可能ファイルをビルドして実行できます。

Simulink での AUTOSAR システムの開発

MathWorks® は AUTOSAR のプレミアム メンバーであり、自動車の ECU の AUTOSAR 開発プロセスにモデルベース デザインを適用することを中心に、規格の開発に積極的に参加しています。

Simulink® は、AUTOSAR 規格をネイティブにサポートしています。Simulink で AUTOSAR ソフトウェアを開発するには、次のようにします。

  • Simulink と AUTOSAR Blockset を使用して、Classic AUTOSAR システムおよび AUTOSAR Classic および Adaptive システムを設計およびシミュレーション。

  • オプションで、System Composer™ を使用して、AUTOSAR ソフトウェア コンポジションとコンポーネントの階層を作成。

  • Embedded Coder® を使用して、テストおよび AUTOSAR RTE との統合用に ARXML 記述と C または C++ の量産アルゴリズム コードを生成。

以下に示すように、Simulink、AUTOSAR Blockset、および Embedded Coder は、AUTOSAR アーキテクチャとのラウンドトリップ統合をサポートしています。

Round-trip workflow for AUTOSAR software development.

  1. AUTOSAR オーサリング ツールまたは Simulink を使用して、ARXML ファイルを作成およびエクスポートできます。この ARXML ファイルは、AUTOSAR SWC の開発に使用されます。

  2. 次に SWC を Simulink にインポートして、モデルを生成するか、既存のモデルを更新します。この時点で、C コードを生成し、モデルの SIL/PIL テストを実行できます。

  3. モデルに変更を加えた場合は、更新された ARXML ファイルをエクスポートすることもできます。このファイルは、SWC および将来的に AUTOSAR オーサリング ツールまたは Simulink によって作成される ARXML バージョンの更新を通知するために使用できます。

AUTOSAR Blockset は、ISO 26262 規格での使用条件を満たしています。オプションで、生成する AUTOSAR コードを ISO 26262 に準拠させるために、IEC Certification Kit を使用します。IEC Certification Kit を使用した、生成コードの ISO 26262 規格への準拠の詳細については、この例Highway Lane Following: A Model-Based Design Example for ISO 26262:2018 (IEC Certification Kit)を参照してください。

AUTOSAR Blockset を使用した AUTOSAR 動作のモデル化

AUTOSAR システムの動作は、AUTOSAR SWC が定義します。AUTOSAR SWC は、AUTOSAR ソフトウェアの再利用可能な基本構成です。AUTOSAR SWC は 1 つ以上のアルゴリズムをカプセル化し、適切に定義されたポートを通じてその環境と通信します。

たとえば、スロットル アプリケーションには、スロットルのセンサーとアクセル ペダルのセンサー、スロットル位置のモニター、コントローラー、アクチュエータを表す AUTOSAR SWC が含まれる可能性があります。AUTOSAR SWC は AUTOSAR RTE と接続して、他の SWC および AUTOSAR ソフトウェア アーキテクチャの BSW 層のソフトウェアと通信します。ECU 間で SWC を再利用し移動できます。Simulink では、AUTOSAR SWC を、モデル、サブシステム、Simulink Function ブロックなどの Simulink モデル コンポーネントで表します。

AUTOSAR コンポジションは、関連する機能をもつ SWC のグループを組み合わせた AUTOSAR SWC です。コンポジションは、スケーラビリティをもたらし、ソフトウェア アプリケーションの論理表現を設計する際の複雑度を管理するのに役立つ、システムの抽象化です。次の図は、センサー、モニター、コントローラー、およびアクチュエータ コンポーネントを含む AUTOSAR のスロットル位置制御コンポジションを示しています。AUTOSAR Throttle Position Control Composition

AUTOSAR Blockset は、AUTOSAR Classic Platform および Adaptive Platform 用の AUTOSAR SWC モデリングをサポートします。Simulink で AUTOSAR SWC を開発するには、AUTOSAR SWC を表す Simulink モデルを作成します。モデルの作成を、次のいずれかの方法で開始します。

  • 既存の ARXML コンポーネント記述を Simulink 環境にモデルとしてインポートします。関数 arxml.importer を使用してコンポーネント記述をインポートできます。

  • 既存の Simulink モデルを AUTOSAR SWC の表現に変更します。

  • AUTOSAR Blockset モデル テンプレートから始めて、Simulink モデルを作成します。

詳細については、コンポーネントの作成 (CLassic Platform) またはコンポーネントの作成 (Adaptive Platform) を参照してください。

初期のモデル設計を作成した後、AUTOSAR モデル コンフィギュレーションを調整できます。AUTOSAR Blockset のコンポーネント デザイナー アプリケーションを使用して、AUTOSAR プロパティを定義し、Simulink 要素を AUTOSAR Blockset の要素とプロパティにマッピングします。コンポーネント モデルにアルゴリズム コンテンツを追加します。コンポーネント実装のシミュレーションと調整を繰り返します。

AUTOSAR Component Designer App is open an displays the top-level view of the autosar_swc model. The Code Mappings - AUTOSAR SW Component toolbar is visible at the bottom of the pane, with the Inports tab selected.

関連するコンポーネント モデルが複数ある場合は、それらをまとめてシミュレーションできます。コンポジション モデルまたはテスト ハーネスにコンポーネントを集約して接続します。AUTOSAR Classic アプリケーションの場合、AUTOSAR Blockset には、診断および NVRAM のサービスなど、BSW を呼び出してシミュレーションするブロックが用意されています。これらのブロックを使用すると、関連するコンポーネント、AUTOSAR ECU ソフトウェア、BSW の動作をまとめてシミュレーションできます。

The top level of autosar_bsw_simulation model is shown.

System Composer を使用すると、AUTOSAR ソフトウェア コンポジション、コンポーネント、およびそれらのインターフェイスをアーキテクチャ モードで作成できます。BSW サービスを呼び出してシミュレーションする場合は、BSW ブロックを追加できます。

The top level of the autosar_tpc_composition model is shown.

Embedded Coder を使用すると、テストおよび AUTOSAR RTE との統合用に、AUTOSAR コンポーネント モデルから ARXML 記述と、C または C++ の量産アルゴリズム コードを生成できます。モデル例 autosar_LaneGuidance を使用して、AUTOSAR Adaptive アプリケーション用に生成された C++ コードのサンプルを次に示します。

The Code Generation Report for the autosar_LaneGuidance is open viewing the model initialize function for the autosar_LaneGuidance.cpp file.

関連するトピック