#Tech Note

自動車の高機能化を実現するコアテクノロジー「統合ECU」とは?

自動車に搭載される機器やシステムを制御する「ECU」。近年では、急速に進化する自動車の自動化や電動化によって機能が複雑化し、より高度なシステムが求められるようになってきました。そもそもECUとは何か、目的と用途に応じた機能を持つECUの役割、ADAS(先進運転支援システム)やコネクテッドカーの高機能化を実現する鍵を握るものとして期待が高まる「統合ECU」について解説します。

ECU(Electronic Control Unit)の基礎知識

ECUとは、システムを電子回路で制御する装置(ユニット)を意味する「Electronic Control Unit(エレクトロニックコントロールユニット)」の略語です。

従来のECUは、エンジン制御を電子的に行う車載マイクロコンピュータ「Engine Control Unit(エンジンコントロールユニット)」を指していましたが、近年では自動車技術者協会(SAE)、国際標準化機構(ISO)の定義により、自動車に搭載される機器やシステムを制御するコンピュータの総称を、ECUと呼ぶようになりました。エンジンコントロールユニットの呼称は、SAE・ISO上ではECM(Engine Control Module)とされています。

ECUが担う役割

ECUの役割は、自動車のエンジンやブレーキ、パワーステアリング、エアバッグ、パワーウィンドウ、カーエアコン、カーナビゲーション、キーロック、スライドドア、ワイパーなど、自動車に搭載されるあらゆる機器やシステムを制御することです。

例えばパワーウィンドウであれば、ボタンを押して窓を開けたり、閉めたりするためのモーターを起動する制御や、操作の途中で何かが挟まっていたら停止するか戻すか、負荷を計算し数値化して判断する制御を行います。
エアバッグであれば、どれだけの衝撃数値がセンサーから送られてきたらエアバッグを作動させ、シートベルトをどう制御するかを判断します。
これらはECUに組み込まれているソフトウェアによって実現されており、各ECUは車載ネットワークを経由して連携しています。

複雑化する自動車の機能

ADAS(先進運転支援システム)に関わるECUには、走行中の車外センサー(カメラ、ミリ波など)の情報が送られ、アルゴリズムで処理し、ドライバーの運転支援に繋げます。

運転支援の機能には、ACC(アダプティブクルーズコントロール)、LKS(レーンキーピングサポート)、LCA(レーンチェンジアシスト)、AEB(オートマチックエマージェンシーブレーキ)、TJA(トラフィックジャムアシスト)などがあり、それぞれの目的に合った対象認識や状況判断を行うには、より複雑かつ高速な処理が必要とされます。このように近年要求される自動車の機能が複雑化することでシステムもますます複雑化しています。

複雑化する車載システムの救世主として期待される「統合ECU」

現在の自動車には100個以上のECUが搭載されている場合があります。近年ではそれらを統合する「統合ECU」に対する期待が高まっています。自動車全体を制御する統合ECUにより、複雑な機能の実現に加え、部品点数や総重量の削減も可能になります。
ドライバーの安全で快適な運転をアシストする技術として今後更に増えていくであろうADAS(先進運転支援システム)においても統合ECUが重要な役割を担うと考えられます。

ソフトウェアエンジニアが自動車の高機能化に重要な役割を果たす

統合ECUにおいて、重要となるのがソフトウェアです。10年前には、1台の車両に搭載されるソフトウェアのコード数は約1,000万行でしたが、自動運転車両のソフトウェアには3億行から5億行ものコードが含まれることになります。ちなみに、わずか100万行のソフトウェアコードでも印刷するとおよそ1万8,000ページになります。

また、開発プロセスにより多くのソフトウェアが加わることで、開発スタイルも変化しています。これまでの開発ではウォーターフォール型開発が一般的でしたが、現在ではシステムの要件定義や設計、開発やテスト、リリースを小さな単位で繰り返すアジャイル開発やDevOpsなどが取り入れられるようになってきました。

※アジャイル開発:「計画→設計→開発→テスト→納品」を短いサイクルで繰り返しながら進めていく開発手法

※DevOps:開発担当と運用担当が連携し、フレキシブルかつスピーディーに開発する手法

自動車の高機能化を実現し、ドライバーの安全と快適を守るために、ソフトウェアエンジニアの役割がますます重要になってきたと言えるでしょう。

※掲載記事の内容は、取材当時のものです。