はじめに:「AUTOSARって一つじゃないの?」
車載ソフト開発の勉強を始めて、AUTOSARについて調べていると、「R20-11」「R19-03」「Classic Platform」「Adaptive Platform」など、様々な用語に出会って混乱していませんか?
実は、AUTOSARには複数のプラットフォームがあり、さらにそれぞれに多数のバージョンが存在します。開発環境によって使用するバージョンが異なるため、「ネットで調べた内容が自分の環境では動かない…」という事態が起こり得るのです。
この記事では、AUTOSARのプラットフォームとバージョンの基本を解説し、なぜバージョン確認が重要なのかをお伝えします。
AUTOSARには2つの”プラットフォーム”がある
まず押さえておきたいのが、AUTOSARには2つの主要プラットフォームがあるという点です。
Classic Platform(CP)
従来からある標準規格で、マイコンベースの組み込みシステム向けです。エンジン制御やブレーキシステムなど、リアルタイム性と安全性が求められる制御系ECUで広く使われています。比較的リソースが限られた環境でも動作するよう設計されています。
Adaptive Platform(AP)
高性能プロセッサやマルチコアCPUを搭載したECU向けの新しい規格です。自動運転、コネクティビティ、OTA(Over-The-Air)アップデートなど、高度な機能を実現するために開発されました。POSIX準拠のOSを使用し、C++による開発が基本となります。
使い分けのポイント:
- 制御系・リアルタイム重視 → Classic Platform
- 高度な情報処理・柔軟性重視 → Adaptive Platform
AUTOSAR APのバージョン体系を理解しよう
Adaptive Platformのバージョンは**「Rxx-yy」**という形式で表記されます。
バージョン表記の読み方
例えば「R20-11」の場合:
- R = Release(リリース)
- 20 = リリース年(2020年)
- 11 = リリース月(11月)
つまり、R20-11は「2020年11月にリリースされたバージョン」という意味です。
主要バージョンの例
AUTOSAR APの主要バージョンには、以下のようなものがあります:
- R19-03(2019年3月):APの初期安定版
- R19-11(2019年11月):機能拡張版
- R20-11(2020年11月):セキュリティ機能の強化
- R21-11(2021年11月):さらなる機能追加
- R22-11、R23-11… と続く
各バージョンで、新しいAPIの追加、既存機能の改善、セキュリティの強化などが行われています。
なぜバージョン確認が重要なのか
開発環境のAUTOSARバージョンを把握していないと、以下のような問題が発生します:
1. APIの違い
バージョンによって使えるAPIや関数のシグネチャが異なります。R19-03で動いていたコードが、R20-11では非推奨になっている場合もあります。
2. 機能の有無
新しいバージョンで追加された機能は、古いバージョンでは使えません。逆に、古い機能が廃止されることもあります。
3. ドキュメントとの整合性
ネットで見つけたサンプルコードや技術記事が、自分の環境と異なるバージョンを前提にしている可能性があります。
4. ツールチェーンの対応状況
使用している開発ツールやコンパイラが、特定のAUTOSARバージョンにしか対応していない場合があります。
自分の開発環境のバージョンを確認する方法
開発を始める前に、必ず以下を確認しましょう:
- プロジェクトの仕様書:採用しているAUTOSARバージョンが記載されているはず
- ツールチェーンのドキュメント:対応バージョンが明記されています
- ヘッダーファイル:バージョン情報がコメントで記載されている場合があります
- プロジェクトマネージャーや先輩に確認:確実な方法です
【重要】本ブログのAUTOSAR記事について
今後、当ブログで公開するAUTOSAR関連の技術記事は、AUTOSAR Adaptive Platform R20-11をベースに執筆します。
ただし、あなたの開発環境が異なるバージョンの場合、記事の内容がそのまま適用できない可能性があります。必ず以下の点に注意してください:
- サンプルコードを使用する際は、自環境のバージョンに合わせた調整が必要
- APIの仕様は公式ドキュメントで必ず確認する
- バージョン間の差異については、リリースノートを参照する
当ブログの内容はあくまで「参考情報」として活用し、最終的にはご自身の開発環境のバージョンに対応した公式ドキュメントを確認することをお勧めします。
まとめ:バージョン違いは「方言」のようなもの
AUTOSARのバージョンの違いは、言わば「方言」のようなものです。基本的な概念は同じでも、細かい表現や使える機能が異なります。
この記事のポイント:
- AUTOSARにはClassic PlatformとAdaptive Platformの2つがある
- Adaptive Platformは「Rxx-yy」形式でバージョン管理されている
- バージョンによってAPIや機能が異なる
- 開発前に必ず自環境のバージョンを確認する
- 本ブログはR20-11ベースで執筆(他バージョンでは要調整)
「ネットで見つけた情報が動かない」という問題の多くは、バージョンの違いが原因です。常に自分の開発環境のバージョンを意識し、公式ドキュメントを参照する習慣をつけましょう。それが、車載ソフトウェア開発で迷わないための第一歩です!


コメント