VEOSでAdaptive AUTOSAR向けのV-ECUをシミュレートする方法

発表日: 2018年10月30日
Stephan Schedler、シニアソフトウェア開発者、dSPACE GmbH

大幅に機能が拡張されたAUTOSAR Adaptive Platformの次の仕様であるバージョンR18-10は、10月末にリリースされます。適応制御ユニットの開発や妥当性確認を行うお客様にとっては、これをどのように従来のECUや環境モデルと組み合わせれば良いのかという疑問が発生します。

最新のAUTOSARがリリースされることにより、アダプティブECUの妥当性確認に関する話題が急速に取り上げられています。dSPACEでは、早くも2018年中頃にはこの問題に対する解決策(dSPACE Release 2018-A)の提供を開始しました。このソリューションを使用すると、早期の段階でECUの妥当性確認をLinuxベースで行う開発者をサポートすることができます。以降の段落では、この話題に関して多く寄せられる質問をいくつかまとめています。

dSPACEは、LinuxベースのバーチャルECU(V-ECU)の開発および妥当性確認をどのようにサポートしますか

dSPACE VEOSを使用すると、環境モデルと組み合わせたClassic Platform向けに開発されたECUのシミュレーションが可能です。PCベースのオフラインシミュレータを使用すると、複雑なシステムを効率的かつ再現可能な形式で実行することができます。また、イベントベースのプロセスを採用しているため、リアルタイムよりも高速にシミュレーションを実行したり、任意の期間にわたってシミュレーションを一時停止したりすることも可能です。

さらに、dSPACE Release 2018-A以降では、イベントベースのシミュレーションの利点を活用しながら、Classic Platform向けに開発されたECUや環境モデルにLinuxベースのアプリケーションを組み合わせ、VEOSでシミュレートすることも可能です。ただし、従来の方法で開発された他のシミュレーションノードとLinuxベースのアプリケーション間で時間同期を取ることは特に困難な課題です。これに対し、VEOSではシミュレーションの実行中であっても完全に時間同期を取ることができるため、LinuxベースのECUの場合でも、ユーザの作業負荷を大幅に軽減することができます。

LinuxベースのECUのシミュレーションにdSPACEソフトウェアを使用する理由は何ですか。単にQEMUや評価ボードでアプリケーションを実行することはできませんか。

これは、ユースケースによります。ここで最も重要な点は、アプリケーションを残りのシミュレーションコンポーネントに接続するかどうか、どのように接続したいか、およびそれらをいつ同期させるかです。VEOSを使用してシミュレーションを行えば、Linuxベースのアプリケーションを早期の段階で効率的にテストし、他のシミュレーションコンポーネントと同期させることができます。そのためのさまざまな試験ツールやテストツールが用意されています。

これは、アダプティブ環境における演算負荷や、バスに対する負荷の高いシミュレーションにおいて、特に興味深いことです。また、VEOSでは、LinuxベースのECUの時間同期全体を引き継ぐため、シミュレーションの実行速度を高速化することができます。ただし、複雑度によっては必要に応じてリアルタイムよりも低速にすることも可能です。VEOSでシミュレーションを一時停止させると、アダプティブV-ECUも停止します。

VEOSでAUTOSARアダプティブデモンストレータの例をシミュレートすることはできますか

はい、できます。これについては3つのステップに要約しました。

  • ステップ1:アダプティブデモンストレータアプリケーションのビルド

AUTOSARでは、デモンストレータミドルウェアおよびそれに対応する例のビルド方法に関する極めて詳細な説明をAUTOSAR Wiki内で会員に提供しています。これらの指示に従い、ビルドのターゲットプラットフォームとしてQEMUを選択すると、Linuxカーネルのイメージとルートファイルシステムを備えたtarballを受け取ることができます。

アダプティブV-ECUによるシミュレーションシステムの作成

  • ステップ2:dSPACE SystemDeskでのアダプティブV-ECUの設定

VEOSでアダプティブV-ECUをシミュレートできるようにするには、最初にCPUの数、メモリサイズ、既存のEthernetコントローラなど、アダプティブV-ECUの最も重要なシミュレーションパラメータを設定する必要があります。さらに、シミュレートするバイナリ成果物(tarball)を選択する必要があります。この作業は、dSPACE SystemDeskで簡単に行えます。設定したアダプティブV-ECUのそれぞれには、追加のnetinitレイヤーが挿入されています。これが必要であるのは、AUTOSARデモンストレータの例がQEMU用に設計されており、起動時にはEthernetコントローラが静的にあらかじめ設定されているという前提になっているためです。それ以外の場合、デモンストレータを変更する必要はありません。

dSPACE SystemDeskにおけるアダプティブV-ECUの構成例

  • ステップ3:dSPACE VEOSでのシミュレーションの開始

生成されたシミュレーションシステムは、VEOSに簡単にロードしてシミュレートすることができます。dSPACEツールチェーンにとっては当然ではありですが、dSPACE ControlDeskを使用して、仮想Ethernetバスなどを介したバス通信をモニタリングすることもできます。

dSPACE VEOSでのAUTOSAR Communication Managementサンプルアプリケーションのシミュレーション

自身のUbuntuシステムでLinuxアプリケーションを開発しましたが、VEOSでこれを実行することはできますか

はい、できます。必要なものは、完成した実行可能ファイルと、アプリケーションの依存関係を表すルートファイルシステムを備えたイメージのみです。後者はインターネット上でUbuntu Cloud Imageとして自由に入手することができます。同様に、SystemDeskでバイナリ成果物を設定してください。その後、VEOSでシミュレーションを開始することができます。

私のLinuxアプリケーションは既にDockerコンテナで動作しています。単にコンテナ全体をインポートすることはできますか

はい、これも試しました。必要な作業は、Dockerコンテナのエクスポートのみでした。これは、'docker export -o rootfs.tar <MY_CONTAINER>'コマンドを使用すれば容易に行うことができます。自動的に作成されるtarballには、実行可能ファイルと必要なすべての依存関係情報が含まれており、SystemDeskで直接設定することもできます。

従来のモデルベースのツールチェーンを使用してアダプティブアプリケーションを作成することはできますか。

はい、Release 2018-B以降、SystemDeskでは従来のAUTOSARコンポーネントからアダプティブアプリケーションへの変換をサポートしています。この場合、ベーシックソフトウェアサービスを使用することもできます。また、dSPACEのTargetLinkチームでは、アダプティブアプリケーションのネイティブなモデリングについても、急ピッチで取り組んでいます。

最後に:

dSPACEでは、Release 2018-A以降、LinuxベースのECUの開発および早期の妥当性確認に関するサポートを実現するための直感的な製品ソリューションを提供してきました。VEOSを使用すると、LinuxベースのECUを早期の段階で効率的にテストし、他のシミュレーションコンポーネントと同期させることができます。

何かご質問はございますか。お気軽にお問い合わせください。

その他の情報 製品情報 お問い合わせ

ニュースレターを購読します

メールマガジンの購読希望・変更/配信停止手続き