モデルベースデザインが支える自動車のSDVへの進化:ソフトウェアディファインドビークル
自動車が進化する中で、ソフトウェアのアップデートで機能や性能を高められるSDVへの移行が求められている。これまで制御システムのソフトウェア開発に大きく貢献してきたMBD(モデルベースデザイン)はSDVの開発にどのように役立つのだろうか。
近年の自動車の進化を示す言葉として使われているのが「CASE」だ。CASEは、Connected(コネクティッド)、Autonomous/Automated(自動化)、Shared(シェアリング)、Electric(電動化)の頭文字から成る概念であり、これからの自動車は他の車両やインフラとつながって連携し、モーターによって自動/自律的に走行し、共有利用もできるようになる。
このような変革は自動車のユーザーの嗜好(しこう)が反映されたものでもある。運転時の確かな安全性と環境への配慮、高い操作性に加え、必要な情報に素早くアクセスして各種のコンテンツを楽しむことへの要望も強い。
クルマの価値はソフトウェアで決まる
CASEの実現に向けてあらためて注目されているのが、自動車に搭載される「ソフトウェア」だ。
自動車の制御システムは、ハードウェアであるECU(電子制御ユニット)とECUに組み込むソフトウェアによって実現してきた。従来のECUのソフトウェアはPCやスマートフォンのように簡単にアップデートすることはできなかったが、自動車が通信機能を備えることでアップデートによる機能の向上や追加が可能になりつつある。
このように、ソフトウェアのアップデートによって機能や性能を高められる自動車をSDV(ソフトウェアディファインドビークル)と呼ぶ。MathWorksの日本法人であるMathWorks Japanでインダストリーマーケティング部の部長を務める阿部悟氏は「SDVはソフトウェアによって自動車の価値を高めていく。ソフトウェアが自動車の差別化要因となる時代に移っている。自動車メーカーにとっては、いかに早くソフトウェアを開発/提供するかが重要になっている」と語る。
ソフトウェアの重要性が増し、自動車業界もソフトウェアエンジニアを求めるようになっている。ソフトウェアの開発環境もクラウドなどを活用するアプリケーションの開発に最適なものが必要だ。自動車業界をけん引してきたメカ系の設計者もソフトウェアに関する見識を備えなければならなくなっている。
自動車の制御システム開発を支えてきたモデルベースデザイン
自動車のソフトウェア開発に大きく貢献してきたのがMBD(モデルベースデザイン)だ。
自動車の開発におけるMBDは、主にリアルタイム制御が必要なミッションクリティカルシステムのソフトウェア開発に採用されてきた。この場合のミッションクリティカルシステムとは、そのシステムの不具合が自動車の走行や安全性にダイレクトに影響する領域であり、走る曲がる止まるといった基本機能に関わる制御システムだ。
MBDは、設計や環境のパラメーターを変更しながら、シミュレーションを通じて多様な設計案と環境条件の組み合わせを効率的に検証できる。複数の制御システムを同時に動かして、互いの振る舞いによる影響を解析することも可能だ。自動車の制御システム開発を効率化する中で開発のフロントローディング化や製品の品質向上を進める力になっており、30年以上の採用実績がある。
阿部氏が所属するMathWorksは、MBDの開発環境として広く利用されている「MATLAB」と「Simulink」の開発/提供元だ。MATLABは強力な数値解析能力を備えたプログラミング環境であり、MATLABのアドオン製品として機能するSimulinkは動的システムのモデル化とシミュレーションに用いられ、自動車の開発においては制御アルゴリズムの設計や検証に役立つことで知られている。
SDV化に合わせてE/Eアーキテクチャも移行
SDV化の流れはもはや必然だ。そこで重要になるのが、自動車のE/E(電気/電子)アーキテクチャをどのように移行するかだ。
従来の自動車の制御システムでは、ハードウェアであるECUとソフトウェアが“密結合”していた。ECUとソフトウェアが一体化しているため、自動車に新たな機能が増えるのに合わせて新しいECUとソフトウェアを追加搭載してきた。
このようにして増えたECUの数は多い自動車で1台当たり100個に達している。ここで問題になるのが、増大したECU間のデータ通信網(バス)が混雑して錯綜(さくそう)する危険性があることだ。従来の自動車は、バス上に流れるセンサーの情報や、あるECUの処理結果の情報を受けて別のECUが制御を実行するというのが一般的だ。バスの混雑によって通信が遅れると、他のECUが適切に処理できなくなってしまう。そこで、ECUとソフトウェアの結合を“密結合”から緩やかな“疎結合”に変えてECUの機能を統合するE/Eアーキテクチャに移行しつつある。
従来のE/Eアーキテクチャは各ECUが独立した機能を持つ「分散型」であるのに対し、高機能なドメインコントローラーを使って機能をグループごとに統合する「ドメイン型」への移行が進んでいる。ドメインコントローラーよりも高機能なコンピュータが中央集権的に制御をつかさどる「ゾーンセントラル型」を採用する新興の自動車メーカーも登場している。
分散型のE/Eアーキテクチャではバスを常に信号が流れるSignal-Oriented Communicationが一般的だったが、ドメイン型やゾーンセントラル型ではソフトウェアコンポーネントが必要なタイミングで必要なデータやサービスを他のコンポーネントに対してリクエストし、それに基づいて必要なデータが提供されるService-Oriented Communicationに移行する。これによって先述したバスの混雑や錯綜から解放される。
E/Eアーキテクチャやバスの通信方法が変わる以上、自動車のソフトウェア開発も大きく変化する。従来の分散型では1つの機能を1つのECUで実現するソフトウェアが求められた。しかし、ドメイン型やゾーンセントラル型では複数のECUやドメインコントローラー、AI処理も可能な高機能コンピュータを総合的に活用して実現するソフトウェアが必要になる。車両外との通信が可能になる以上、自動車に要求される機能は車両内部だけで完結せず、クラウドなどとの連携も必要だ。
SDVに向けMBDはどう変わるのか
自動車がSDVになることで、自動車メーカーが開発に注力すべき領域も大きく変化する。従来の自動車開発においては、自動車メーカーは自動車の価値を左右するさまざまな機能の要件を策定し、この要件を基にティア1以降のサプライヤーがECUやソフトウェアを開発していた。
SDVにおいては、自動車の価値はソフトウェアによって実現するアップデート可能な機能によって向上する。そのため自動車メーカーは、これらのアップデート可能な機能を容易に開発できる手法を導入し、自動車の価値に直結するアプリケーションの開発に携わる必要が出てくる。
これらのアプリケーションの開発に関わるようになっているのが、Webシステムやスマートフォンアプリなどの開発に携わってきたエンジニアだ。彼らは、ソースコードやテストケースのバージョン管理にGitを使ったり、ビルドやデプロイにCI/CDパイプラインを活用して開発を効率化したりといった手法によってアプリケーションを短期間で開発する。
SDVではこのようなアジャイル開発でアプリケーションが生み出される。MBD開発の利点の一つであるモデル化されたコンポーネントやシステムを共通のテストベッドとして活用することによりハードウェアが存在しない、もしくはアクセスしにくい状態でも検証を行うことができるため、よりソフトウェア開発のスピード向上が期待できる。
そこでMathWorksは、2020年にSimulinkをオープンソースのCI/CD環境と連携可能にするなどの対応を進めてきた。
MATLABとSimulinkのRelease 2024aでは、E/Eアーキテクチャを移行する際に必要なシステムアーキテクチャやECUのソフトウェアのアーキテクチャ設計を“見える化”する上で重要な役割を果たすオプションツール「System Composer」にアクティビティー図の機能を追加した。
MATLABで作成したソフトウェアをサーバやクラウドで実行できる「MATLAB Production Server」は、AzureではR2020aから、AWSではR2020bから対応しており、現時点で最新リリースのR2024bではAWS向けのレファレンスアーキテクチャも用意されている。アプリケーションを開発するエンジニアが広く利用するパブリッククラウドに対応することで、SDVの開発をさらに促進する構えだ。
中国のZeekrがMathWorks製品を活用してSDVを開発
SDVの開発にMathWorks製品を活用している事例もある。プレミアムセグメントの電気自動車を手掛ける中国のZeekr(ジーカー)は、Simulinkの新機能を利用して自動車のソフトウェア開発にMBDを適用している。
Zeekrは開発スピードが非常に速いことで知られている。それは、プレミアムブランドの維持のために高性能かつ先進的な機能をいち早く搭載して顧客に提供する必要があるからだ。
Zeekrは、MBDを用いてSDVの開発に要求されるサービス指向アーキテクチャ(SOA)をベースとしたソフトウェアのモデリングを行っており、C++コードの生成にはEmbedded Coderを用いている。この他にもMATLABやSystem Composer、App DesignerといったMathWorks製品によって車両をカスタムするためのOSを見える化するツール「SOMOC」を開発。SOA環境でのソフトウェアメンテナンスに役立てている。
従来の車載ソフトウェア開発を支えてきたMathWorksのMBD開発環境は、Zeekrの例のようにSDVの時代を迎えても機能の拡張を続けており、先進的な自動車を開発するインフラとして利用されている。これらの新たな機能を試してみてはいかがだろうか。
Copyright © ITmedia, Inc. All Rights Reserved.
提供:MathWorks Japan(マスワークス合同会社)
アイティメディア営業企画/制作:MONOist 編集部/掲載内容有効期限:2024年11月15日