ナレッジNEW

ECUとは?車載ECUの種類やソフトウェア開発の流れを解説

ECUとは?車載ECUの種類やソフトウェア開発の流れを解説

自動車に搭載される機能は、過去に比べてドライバーや利用者にとって便利なものが豊富になってきています。また、OTA (Over The Air) の実装により、無線通信で随時アップデートができるようになり、新しい機能を後から追加することも可能になりました。

このような変化に大きく関わる主要な部品が、今回ご紹介するECUです。

ECU (電子制御ユニット) とは

ECU (Electronic Control Unit:電子制御ユニット) は、車両やさまざまな機械システムを管理・制御するための専用の小型コンピュータです(図表1)。ECUは特定の機能を実行するために設計されており、自動車ではさまざまな機能を制御するために多数のECUが搭載されています。

ECUは、車両の動力性能や燃費の最適化、走行安定性や安全機能の管理などを担っています。

車載ECUの外観イメージ
図表1:車載ECUの外観イメージ

ECUの基本構造

ECUは、主に次の要素で構成されています (図表2を参照) 。①~④はECU内部の要素、⑤、⑥はECU外部の要素または接続対象です。

①マイクロコントローラ (CPU : Central Processing Unit)

ECUの頭脳であり、センサーやアクチュエータからの信号、通信データなどをソフトウェアに従って処理し、制御を行います。

②メモリ

基本的なメモリとしてRAMとROMがあります (CPUに内蔵されることが多いです) 。

RAM (Random Access Memory)

揮発性メモリであり、電源が切れるとデータが消去されます。主にCPUの処理過程におけるデータなどを一時的に記憶するために使用されます。

ROM (Read Only Memory)

不揮発性メモリであり、電源が切れてもデータが消えないメモリです。主に制御ソフトウェア本体や固定的なデータを記憶します。

ECUのソフトウェアアップデートは、一般的にこの不揮発性メモリ (多くの場合、書き換え可能なフラッシュメモリ) の内容を新しいソフトウェアに書き換えることを意味します。

③入力/出力インターフェース

 センサーやアクチュエータ、他のECUなどとの間で信号やデータを交換するための物理的な接続点 (インターフェース) です。

例えば、センサーからのアナログ電圧信号をCPUが処理できるデジタル値に変換するA/Dコンバーター (アナログ-デジタル変換器) や、逆にCPUからのデジタル値をアクチュエータ駆動用のアナログ信号に変換するD/Aコンバーター (デジタル-アナログ変換器) などが含まれます。

④EEPROM (Electrically Erasable Programmable Read-Only Memory)

ECUの制御パラメータ、キャリブレーションデータ、故障診断コードなど、電源オフ後も保持する必要があり、かつ書き換え可能なデータを記憶します。CPUによってはEEPROM機能 (またはフラッシュメモリ) を内蔵する場合もあります。

⑤入力 (Input) 部

制御に必要な情報 (温度、圧力、速度、車両状態、運転操作など) をセンサー等から受け取る部分です。ただし、通信インターフェース (CAN等) は、他のECUとのデータ送受信を行います。

⑥出力 (Output) 部

 ECUが算出した制御指令を、アクチュエータ (モーター、ソレノイド、リレーなど) を駆動するための信号として出力する部分です。

図表2:ECU構造の概念図
図表2:ECU構造の概念図

ECUの仕様 (入出力の種類、CPU処理能力、メモリサイズなど) は、制御対象の機能に応じており多様です。設計の自由度はありますが、設置環境 (-40℃~125℃) 、消費電力、コスト、配線などのリソース制約から大きな影響を受けるため、専門的な設計ノウハウが求められます。

また、一般的にECUは交換やメンテナンスがしやすいように、独立した筐体(きょうたい)に収められています。

ECUが実現する主な機能

ECUは、自動車に搭載された各種システムを電子的に制御するという主要な機能を果たします。温度、圧力、速度、位置など、各種センサーから入力情報としてアナログ信号またはデジタル信号を読み取り、マイクロコントローラが処理できるデータ形式へ変換します。

その後、あらかじめプログラムされたロジックに従って制御アルゴリズムや複雑な計算を実行します。その結果に基づき、モーター、ソレノイド、リレーなどのアクチュエータを駆動するための適切な電気信号を生成・送信し、エンジン、ブレーキ、ステアリング、ライトといったさまざまな車両システムを制御します。

また、車載ネットワーク (CAN、LIN、Ethernetなど) や、場合によっては無線通信 (Wi-Fi、LTEなど) を介して、他のECUや外部システムとデータを交換し、コマンドを送受信します。これにより、異なる車両ドメイン間で協調制御とデータ共有が可能になります。

車載ECUの種類

自動車には、制御する対象領域 (ドメイン) に応じて、図表3のようにさまざまな種類のECUが搭載されています。さらに詳しい種類の情報は図表5に記載します。

パワートレインECU

エンジンやトランスミッション (電気自動車の場合はモーターやバッテリー) を制御し、最適な動力性能や燃費効率を実現します。

シャーシECU

主にブレーキ (ABS、ESCなど) やステアリング (電動パワーステアリングなど) を制御し、車両の走行安定性や安全性を確保します。

ボディECU

照明、ドアロック、パワーウィンドウ、エアコンなど、主に車室内の快適性や利便性に関する機能を制御します。

情報通信ECU

 ナビゲーションシステムやオーディオ、ディスプレイなどのインフォテインメント (情報・娯楽) 機能を管理・提供します。

ADAS (先進運転支援システム) ECU

車線逸脱警告 (LDW) 、自動緊急ブレーキ (AEB) 、アダプティブクルーズコントロール (ACC) などの高度な運転支援機能を提供・制御します。

図表3:車載ECUの主な種類

図表4:電気自動車 (EV) ECUの種類と制御対象例
図表4:電気自動車 (EV) ECUの種類と制御対象例

ECU名 

主な機能 

サブ機能/制御システム例 

エンジン制御ユニット (ECU/ECM)

燃料噴射、点火時期、アイドル速度、排出ガス制御

電子制御燃料噴射、点火時期制御、吸排気量調整

トランスミッション制御ユニット (TCU) 

自動変速管理

シフトポイント制御、トルクコンバーターロックアップ制御

ハイブリッド制御ユニット (HCU) 

エンジンと電気モーターの協調制御

モーター駆動制御、回生ブレーキ制御、エネルギー分配

電気自動車制御ユニット (VCU/EV-ECU)

電気パワートレインの管理

モーター制御、バッテリーインターフェース、充電制御

バッテリー管理システム(BMS ECU)

バッテリーパックの監視と制御

充電状態監視、温度管理、セルバランス

電子安定制御 (ESC ECU)

車両安定性の向上

横滑り防止、トラクションコントロール

パワーステアリング制御ユニット (PSCU/EPS ECU) 

操舵(そうだ)アシスト

アシストトルク制御、車速感応型アシスト

サスペンション制御ユニット

車両サスペンションシステムの管理

アクティブサスペンション制御、減衰力調整

ブレーキ制御ユニット(BECU/ABS ECU)

ブレーキシステム全体の制御

ABS制御、ESC制御、AEB制御

ボディコントロールモジュール (BCM) 

各種ボディ機能の制御

ライト制御、パワーウィンドウ制御、ドアロック制御

照明制御ユニット

車両の照明システムの管理

ヘッドライト制御、テールライト制御、室内灯制御

ドア制御ユニット (DCU) 

ドア関連機能の制御

ドアロック制御、パワーウィンドウ制御、ミラー制御

空調制御ユニット (HVAC ECU) 

空調システムの管理

温度制御、風量制御、モード制御

インフォテインメントユニット

インフォテインメント機能の制御

オーディオ再生、ナビゲーション、スマートフォン連携

テレマティクスコントロールユニット (TCU) 

外部ネットワークとの通信

緊急通報、OTAアップデート、ナビゲーションサービス

ADASドメインコントローラー

各種ADAS機能の統合制御

センサーフュージョン、運転支援アルゴリズム実行

アダプティブクルーズコントロール(ACC ECU)

車間距離維持機能付きクルーズコントロール

加減速制御、車間距離制御

レーンキーピングアシスト (LKA ECU)

車線逸脱防止支援

ステアリング制御、車線認識

自動緊急ブレーキ(AEB ECU)

衝突被害軽減ブレーキ

自動ブレーキ制御、衝突予測

図表5:車載ECUの種類(一般的な例)

車載ECUの代表的な制御内容の例

車載ECUが行う代表的な制御内容の例(図表6)について、エンジン車をベースに説明します。

機能名

入力情報 (一部) 

制御内容

出力・制御対象

エンジン制御  (ガソリン)

・アクセルペダル値
・エンジン状態(水温、回転数など)  
・環境値(各種温度、圧力、濃度など) 

・燃料噴射量
・点火時期

・インジェクター
・点火コイル

ブレーキ制御

・ブレーキペダル値
・車輪ごとの速度
・ステアリング角度

・車両の挙動

・車輪ごとのブレーキ油圧
・エンジントルク

自動変速機制御

・エンジン回転数 
・加速要求トルク

・ギアの変速タイミングや段数

・変速用流路
・エンジントルク

車載ネットワーク制御

・各種車載通信信号

・各ECU間の通信内容の送受信制御

・プロトコル変換などの処理された通信データ

図表6:車載ECUの代表的な制御内容の一覧

エンジン制御 (駆動モーター制御)

 エンジンECUは、ドライバーの加速要求等に応じて、燃料噴射量や噴射タイミング、点火時期などを最適に制御し、エンジンの効率向上、性能向上、排出ガスの低減に貢献します。

例えば、燃焼に関する物理量 (温度、圧力など) やO2センサーからの排ガス酸素濃度、エアフローセンサーからの吸入空気量といったデータを基に、インジェクターによる燃料噴射量や点火プラグによる点火時期を制御し、最適な空燃比 (空気と燃料の混合比) やドライバー要求に応じた駆動力を実現します。

一方、電気自動車 (EV) では、エンジンECUの代わりにモーターECU (インバーターと一体化されている場合も多い) が搭載され、アクセルペダル開度や高電圧バッテリーの状態などを監視しながら、モーターの回転数やトルクを精密に制御します。エンジンECUは、EMSやECMと呼ばれることもあります。

EMS (Engine Management System)

エンジンECU自体を指すことが多いが、関連部品を含めたエンジン制御システム全体を指すこともある

ECM (Engine Control Module)

エンジンECUの別名として用いられる

ブレーキ・駆動力制御

主にABS機能、ESC機能などがあります。

ABS (Anti-lock Brake System)

急ブレーキ時にホイールがロックするのを防ぐシステムで車両の安定性と操舵(そうだ)性を維持する

ESC (Electronic Stability Control)

カーブや交差点、発進時などで、車両が不安定な挙動を示した際に、センサーで検知した車両の挙動 (横滑りなど) とドライバーの操作 (ステアリング角度など) を比較し、必要に応じて個々の車輪へのブレーキ油圧やエンジントルクを制御することで、車両の姿勢を安定させる

自動変速機制御

自動変速機 (AT、CVTなど) の変速動作を制御します。ドライバーの運転状況 (アクセル開度、車速など) やエンジン負荷 (エンジン回転数、要求トルクなど) に基づき、最適なギア比を選択し、スムーズな変速を実行します。

自動変速機を制御するECUは、一般的にTCU (Transmission Control Unit) と呼ばれます。

車載ネットワーク制御

現在の車両では、CAN (Controller Area Network) 等の車載ネットワークプロトコルが広く用いられています。これにより、複数のECU間で必要なデータをリアルタイムに共有し、協調してより高度で正確な制御を行うことが可能です。

最近では、データ通信量の増大に対応するためEthernetの利用が拡大しており、車両全体の内部通信や外部との通信を統合的に管理するCGW (Central Gate Way) と呼ばれるECUが搭載される車両が増えています。

自動車以外でのECUの活用例と応用範囲

ECUの技術は、自動車以外のさまざまな分野でも広く応用され、下記のような産業分野での活用例があります。

航空宇宙

航空機では、飛行制御システム (フライ・バイ・ワイヤ等) やエンジン管理システムにECU技術が応用されています。高い安全性と効率性を確保するため、複雑な制御を行っています。航空機のエンジン制御システムは、FADEC (Full Authority Digital Engine Control) と呼ばれることもあります。

産業オートメーション

PLC (Programmable Logic Controller) のように、工場の生産ラインや装置の制御にECUと同様のマイクロコントローラベースの制御技術が使われています。これにより、生産ラインの効率的な管理や制御プロセスの最適化に貢献しています。

ロボット

センサー情報を基にアクチュエータ (駆動モーター、サーボモーターなど) を制御し、移動、作業、認識といった目的の動作を実現するための「頭脳」として機能します。

農業・建築機械

農業・建設機械に搭載されるECUも基本構造は同様ですが、それぞれの用途に特化した機能 (例:農業機械での精密な農薬散布制御、建設機械での作業支援や自動化、安全性向上機能など) を提供します。

ECUソフトウェア開発の流れ

ECUに搭載されるソフトウェアがどのようなプロセスで開発されるか、図表7の一般的なVプロセスに準じて説明します。 

図表7:ソフトウェア開発のV字モデル (Vプロセス)
図表7:ソフトウェア開発のV字モデル (Vプロセス)

関連記事:V字モデルとは?特徴やメリット・デメリットを解説

1)要件定義

ECUのソフトウェア開発プロセスは、要件定義から始まります。多くの場合、下記の2種類で要求内容を分類します。

機能要件定義

ユーザーやステークホルダーからの要求に基づき、ECUやシステムが達成すべき機能 (何をすべきか) を具体的に定義します。性能、使用環境、安全性、法規などの要求事項が考慮されます。

非機能要件定義

システム性能、セキュリティ、信頼性、拡張性などを定義します。要件定義書は、以降の全ての開発活動の基礎となるため、非常に重要です。

2)ソフトウェア設計

要件定義を基に、下記の三つのフェーズでECU全体のアーキテクチャとソフトウェアの設計を行います。

基本設計 (システム設計) 

システム全体の構成や機能概要を定義するフェーズです。システムの機能分割、システム全体のアーキテクチャ設計などを行います。

詳細設計 (モジュール設計) 

基本設計で定義された各モジュールの内部構造や動作を具体的に設計するフェーズです。各モジュールの内部ロジックの詳細化やデータ構造の設計などを行います。

プログラム設計

詳細設計に基づいて、実際にプログラムコードを記述するための設計を行うフェーズです。プログラムの構造設計やコーディング規約の作成などを行います。

3)プログラミング (実装) 

この段階では、実際にプログラムコードを作成します。その方法には主に下記の2種類があり、近年オートコーディングの割合が増えています。

ハンドコーディング

プログラマーがC言語などでソースコードを手作業で直接記述する開発手法で、詳細な制御や最適化が可能です。開発自由度は高いですが、開発者のスキルに依存し、ヒューマンエラーのリスクが潜在します。

オートコーディング

 MATLABやSimulinkなどのツールで作成した「モデル」から、自動的にソースコードを生成(ACG:Auto Coding Generation)する開発手法。開発期間の短縮や、コード品質は高くなりますが、メモリの消費量が多くなるなどの傾向があります。

4)テスト

実装完了後のテスト

実装完了後、ソフトウェアが要件を満たしているかを確認(テスト)する方法を説明します。

単体テスト

各モジュールが単独で正しく動作するかを検証します。

統合テスト

複数のモジュールを組み合わせて、モジュール間のインターフェースや連携が正しく動作するかを検証します。

システムテスト

ソフトウェア全体を統合し、システムとしての機能や性能が要件を満たしているかを検証します。

運用テスト

ユーザーや顧客の要求を満たし、意図された用途で使用できるかを確認します。受け入れテスト(Acceptance Test)とも言います。

参考的にシミュレーションテスト環境に関しても追記します。 

XILシミュレーション環境

XIL (X-in-the-Loop) は、モデルベース開発 (MBD) において、開発の各段階で効率的かつ網羅的なテストを行うための環境です。XILのXには、モデルのM、ソフトウェアのS、ハードウェアのHなどが入ります。

MIL (Model-in-the-Loop)  

制御対象 (プラント) も制御アルゴリズムも、全てコンピュータ上のモデルでシミュレーションします。

SIL (Software-in-the-Loop)  

制御アルゴリズムをモデルから自動生成したソフトウェアコード (Cコードなど) に置き換え、それをコンピュータ上でシミュレーションします (制御対象はモデルのまま) 。 

HIL (Hardware-in-the-Loop)  

最終的な製品に近いECU (ハードウェア) に制御ソフトウェアを実装し、それをシミュレーション環境に接続します。

5)リリースとメンテナンス 

完成ソフトウェアを公開することと公開後の品質管理・向上活動に関して説明します。

  • リリース : 開発が完了したソフトウェア製品を、ユーザーや顧客が利用できる状態に公開・配布する一連のプロセスです。
  • メンテナンス : リリース後も、市場での不具合修正 (バグフィックス) 、性能改善、機能追加、法規対応などのために、ソフトウェアを継続的に更新・保守します。

6)ECU書き換え (アップデート)  

改善・修正された新しいソフトウェアを書き換えることとその方法に関して説明します。

  • フィードバック対応 : 市場フィードバック、顧客の要求変化や車両ソフトウェアの不具合修正のために、ソフトウェアのアップデートを実施します。
  • 書き換え方法 : 従来は、ディーラー等で診断ツールを車両に接続し、CAN通信等の有線を介してECUのソフトウェアを書き換える方法が一般的でした。
  • OTA (Over-the-Air) アップデート : Wi-Fi、LTEなど無線通信を経由してソフトウェアを遠隔更新する手法が普及しています。これにより、ディーラーに車両を持ち込むことなく、最新の機能やセキュリティパッチを迅速に適用できます。

ECU技術の活用事例

ECUに関連する主要な技術トレンドやコンセプトについて、四つの事例を挙げて説明します。

ECU間の協調制御

協調制御システムは、複数のECUが協調して動作し、車載ネットワーク上で情報とコマンドを交換することで、単一のECUでは処理できない複雑な機能を実現します。 先進運転支援システム (ADAS) も協調制御に大きく依存しています。例えば、アダプティブクルーズコントロール (ACC) は、エンジン制御ECU、ブレーキ制御ECUなどが連携し、設定された速度と車間距離を維持します。

統合ECU (ドメインコントローラー) 

統合ECUは、従来は特定の機能ドメイン (例:パワートレイン、シャーシ、ボディ、インフォテインメント、ADAS) ごとに分散して搭載されていた複数のECUの機能を、より強力な単一の統合ECUに集約・統合するアプローチです。これにより、配線の削減、コスト低減、処理能力の向上などが期待されます。

Zone ECU (ゾーンコントローラー) 

ゾーンECUは、車両を物理的な「ゾーン」 (例:フロント、リア、左側、右側、車室など) に分割し、各ゾーン内のセンサーやアクチュエータをそのゾーンを担当するECU (ゾーンコントローラー) に接続する考え方です。この場合のシステムアーキテクチャは、多くの場合、高度な演算処理を行う中央の高性能コンピュータ (HPC: High Performance Computing) と、車両各部(ゾーン)に配置された複数のゾーンECUが組み合わされます。

ゾーンECUは、担当ゾーン内のセンサー情報の集約やアクチュエータ制御を行い、Ethernetなどの高速ネットワークを介して中央HPCと通信します。これは各機能の個別ECUとその配線のさらなる削減やソフトウェアのアップデート効率向上などが目的です。

SDV (Software-Defined Vehicle) 

2020年頃から自動車業界で注目されているコンセプトであり、今後の自動車、特にソフトウェアとECUアーキテクチャの進化の方向性を示すものです。

ソフトウェア定義車両 (SDV) とは、車両の機能や価値の多くがハードウェアではなくソフトウェアによって定義され、OTA (Over-the-Air) による継続的なアップデートを通じて、車両のライフサイクル全体にわたって機能追加や性能向上が可能になる車両を指します。

SDVの実現には、ECUアーキテクチャの進化が不可欠です。SDVは、統合ECUやゾーンECUのような、より集約化・高性能化されたアーキテクチャに依存します。これにより、高度な演算処理能力、Ethernetなどの高速通信機能、そして頻繁なソフトウェアアップデートや新機能追加に対応できるシステムの柔軟性が確保されます。

ECUが支える自動車の進化

近年、自動車はスマートフォンのような柔軟性を持つようになり、ユーザーが新しい機能や欲しい機能を後から追加できるものへと変貌しつつあります。これを可能にする重要部品がECUです。

言い換えますと、従来のECUは「必要最小限」の構成でしたが、これからのECUは、「必要最大限」とも言える高性能・大容量のハードウェアと柔軟なソフトウェアで、進化していく自動車を力強く支えていくでしょう。まさに、ECUは、時代を革新する"頭脳"となっていくのです。

SNSシェア

この記事は面白かったですか?

今後の改善の参考にさせていただきます!

Search Articles By The Cast出演者/執筆者から記事を探す

Search Articless By The Categoryカテゴリから記事を探す

Ranking

ランキング

もっと見る