車載組み込みシステム
前回からの続きです。
車載の組み込みソフトウェアについて書こうと思いましたが、ソフトウェア特有のことがあまり思い浮かばなかったため、車載組み込みシステムの説明になってます。
車載組み込みについて
自動車は、組み込みシステムの塊です。
自動車に取り付けられる組み込みシステムの機器を、ECU(electronic control unit)といいます。
このEUCにも、家電同様に大抵ワンチップマイコンが入っています。
しかし、家電と大きく違う点は、このECUがたくさんついていることです。
一般的な自動車でも50個以上、高級車にもなると100個以上のECUが取り付けられています。
それらの多数のECUが車載ネットワークでつながれており、お互いの情報をやりとりしています。
それぞれのECUが特定の機能を実現し、他のECUと情報をやりとりすることで、自動車というものを構成しています。
以下で例を含めて、なるべく簡単に解説したいと思います。
車載ネットワーク
パソコンやスマホがネットワークでつながっているように、車内のECUも車内だけの車載ネットワークでつながっています。
車載ネットワークは、主にCAN(Control Area Network)というネットワークで構成されています。
※他にもありますが、ここでは割愛。
このCANは、自動車だけでなく、航空機や、医療機器等で使われるネットワークでもあります。
通信データが、ノイズなどで壊れにくいため、信頼性の高い通信ネットワークです。
この車載ネットワークCAN上に、各ECUが車両の状態を流します。
例えばドアを開けるとルームランプがつくと思いますが、ドア、ルームランプ制御にそれぞれECUがついています。
ドアが開くと、ドアが開いたという情報をCAN上に流し、それをルームランプのECUが受信し、点灯します。
このように複数のECUがCAN通信を使い、連動して動作しています。
このようにECUが、状態を車載ネットワーク上に流すことで、新たに車載ネットワーク上にECUを追加することができます。
例えばメータECUを車載ネットワーク上に追加しても、車載ネットワーク上には、「運転席のドアが開いた」という情報が流れているため、
メータECUは、「運転席のドアが開いた」ならば、半ドアインジケータを点灯すればよいだけです。
各ECUを協調して動作させることで、ぶつからないクルマや、自動運転などの高度な制御を実現することができます。
自動車の状態は、走行中車載ネットワークに常に流れているため、自動車メーカが作ろうと思えば、運転状況をTwitterにつぶやいたり、ネット上に配信したりできます。
(需要はないでしょうが・・・)