(57)【特許請求の範囲】
【請求項１】
メインＥＣＵに設けられ、複数のセンサを用いて車両の自動運転制御に関する操作量をメイン操作量として演算するメイン演算部と、
サブＥＣＵに設けられ、車両の自動運転制御に関する操作量をサブ操作量として演算するサブ演算部と、
前記メインＥＣＵおよび前記サブＥＣＵの故障を検出する故障検出部と、
前記故障検出部の故障検出結果に基づき、前記メイン操作量または前記サブ操作量のいずれかを選択する操作量選択部と、
前記操作量選択部が選択した操作量に基づき前記車両の自動運転制御を行う自動運転制御部と、を備え、
前記サブ演算部は、
前記メイン演算部よりも少数のセンサを用いて前記サブ操作量を演算する第１サブ演算部と、
前記メイン演算部よりも演算周期が長く、前記第１サブ演算部よりも多数のセンサを用いて前記サブ操作量を演算する第２サブ演算部と、を備え、
前記サブＥＣＵは、前記第１サブ演算部または前記第２サブ演算部のいずれか一方を選択して動作させるサブ演算切替部をさらに備える、
自動運転制御装置。
【請求項２】
前記操作量選択部は、前記故障検出部が前記メインＥＣＵの故障を検出した場合に、前記サブ操作量を選択する、
請求項１に記載の自動運転制御装置。
【請求項３】
前記サブ演算切替部は、前記車両の走行速度に基づき、前記第１サブ演算部または前記第２サブ演算部のいずれか一方を選択して動作させる、
請求項１または２に記載の自動運転制御装置。
【請求項４】
前記サブ演算切替部は、前記車両が高速道路を走行している場合に前記第１サブ演算部を選択して動作させ、前記車両が高速道路以外を走行している場合に前記第２サブ演算部を選択して動作させる、
請求項１から３のいずれか１項に記載の自動運転制御装置。
【請求項５】
前記サブ演算切替部は、ＧＰＳ情報により前記車両が高速道路を走行しているか否かの判断を行う、
請求項４に記載の自動運転制御装置。
【請求項６】
前記サブ演算切替部は、ＥＴＣ情報により前記車両が高速道路を走行しているか否かの判断を行う、
請求項４に記載の自動運転制御装置。
【請求項７】
前記第１サブ演算部が用いるセンサは、前記第２サブ演算部が用いるセンサを包含する、
請求項１から６のいずれか１項に記載の自動運転制御装置。
【請求項８】
前記メイン演算部が用いるセンサは、前記第２サブ演算部が用いるセンサを包含する、
請求項１から７のいずれか１項に記載の自動運転制御装置。
【請求項９】
前記メイン演算部が用いるセンサは、前記第１サブ演算部が用いるセンサを包含する、
請求項１から７のいずれか１項に記載の自動運転制御装置。
【請求項１０】
メインＥＣＵが複数のセンサを用いて車両の自動運転制御に関する操作量をメイン操作量として演算し、
サブＥＣＵが車両の自動運転制御に関する操作量をサブ操作量として演算し、
前記メインＥＣＵおよび前記サブＥＣＵの故障を検出し、
前記メインＥＣＵまたは前記サブＥＣＵの故障検出結果に基づき、前記メイン操作量または前記サブ操作量のいずれかを選択し、
前記選択した操作量に基づき前記車両の自動運転制御を行い、
前記サブＥＣＵは、
前記メインＥＣＵよりも少数のセンサを用いて前記サブ操作量を演算する第１サブ演算部と、
前記メインＥＣＵよりも演算周期が長く、前記第１サブ演算部よりも多数のセンサを用いて前記サブ操作量を演算する第２サブ演算部と、を備え、
前記第１サブ演算部または前記第２サブ演算部のいずれか一方を選択して動作させる、
自動運転制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、車両の自動運転を制御する技術に関する。
【背景技術】
【０００２】
自動運転制御装置は、高い信頼性が求められるため、複数のＣＰＵ（Central Processing Unit）で同一処理を行って処理結果を比較する冗長系システムを組むことが一般的である。冗長系システムを組むにあたり、単純にシステムの各部品を多重化するとシステム規模が大きくなるため、システム規模を抑えつつ信頼性を高めるための発明がなされている。
【０００３】
例えば、特許文献１の車両用操舵制御装置は、操舵制御値を算出するメインＣＰＵとサブＣＰＵとを備えて構成される。サブＣＰＵは、メインＣＰＵよりも長い制御周期で操舵制御値を求めると共に、メインＣＰＵと同じ制御周期で操舵制御値の符号のみを簡易演算する。メインＣＰＵに異常が検出されれば、車両用操舵制御装置は直ちにモータ制御を停止し、運転者はモータによるアシスト無しで操舵制御を行なう。この車両用操舵制御装置によれば、サブＣＰＵはメインＣＰＵよりもロースペックのものを用いることができる。
【０００４】
また、特許文献２の自動運転制御装置は、運転者の要求信号および車両状態信号に基づいて操作量指令値を演算する操作量生成ノードと、当該操作量生成ノードからの操作量指令値に基づいてアクチュエータを制御するアクチュエータ駆動ノードとを備えて構成される。各ノードは故障検出機能を備えており、操作量生成ノードが故障した場合は、アクチュエータ駆動ノードが運転者の要求信号を受けて、操作量指令値を演算する。この自動運転制御装置によれば、操作量生成ノードを多重化せずとも、操作量生成ノードの故障時にシステムが制御不能に陥らず、運転者による運転が継続可能である。
【０００５】
一方、近年は車両の自動運転に関する技術開発が進められている。自動運転では、車両の運転に必要な、認知、判断、および操作が自動化される。非特許文献１では自動運転システムのアーキテクチャが示されている。認知を担う地図モジュールは、カメラまたはレーダなどの複数のセンサと、ＧＰＳ情報とから、自車周辺の道路情報と障害物情報を含んだローカルダイナミックマップを作製する。判断を担う人工知能モジュールは、ローカルダイナミックマップを基に走行経路を決定する。操作を担う速度制御モジュールおよび操舵制御モジュールは、走行経路を基に速度や操舵角を制御する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３７７７３９８号公報
【特許文献２】特許第４８４８０２７号公報
【非特許文献】
【０００７】
【非特許文献１】須田義大著、「自動運転技術の開発動向と技術課題」、情報管理、２０１５、Ｖｏｌ．５７、Ｎｏ．１１、Ｐ８０９−８１７。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１の車両用操舵制御装置および特許文献２の自動運転制御装置は、電動パワーステアリングまたは自動ブレーキなどを制御対象にしているため、あくまでも運転者が主体となる運転操作を補助する用途に過ぎない。そのため、故障発生時には制御不能に陥らず、運転者による制御が継続可能であれば良かった。
【０００９】
しかしながら、車両の自動運転においては、単一故障が発生しても一定時間は自動運転を継続することが求められる。なぜなら、運転者は、自動運転の継続不能の通知を受けてから車両周囲の状況を確認し、運転を安全に行なえると判断してから、自身の操作による運転を開始するからである。したがって、特許文献１の車両用操舵制御装置および特許文献２の自動運転制御装置のように、単一故障で自動運転を直ちに停止してしまうと、例えば交差点の右折中においては自車が、他車または歩行者と接触しうる問題点があった。なお、多重系のシステムにより単一故障が起きても自動運転を継続する手法も知られているが、この場合はシステム規模が大きくなるという問題点があった。
【００１０】
非特許文献１の自動運転システムは、車間距離または白線距離の情報を、操作を担うモジュール群に入力する構成になっており、人工知能モジュールからの指示がなくても自動運転の継続が可能である。しかしながら、故障の検出方法および故障検出後の動作については示されていない。
【００１１】
この発明は、上記のような問題点を解決するためになされたものであり、小規模なシステムで、単一故障が起きても車両の自動運転制御を継続することを目的とする。
【課題を解決するための手段】
【００１３】
また、本発明に係る自動運転制御装置は、メインＥＣＵに設けられ、複数のセンサを用いて車両の自動運転制御に関する操作量をメイン操作量として演算するメイン演算部と、サブＥＣＵに設けられ、車両の自動運転制御に関する操作量をサブ操作量として演算するサブ演算部と、メインＥＣＵおよびサブＥＣＵの故障を検出する故障検出部と、故障検出部の故障検出結果に基づき、メイン操作量またはサブ操作量のいずれかを選択する操作量選択部と、操作量選択部が選択した操作量に基づき車両の自動運転制御を行う自動運転制御部と、を備え、サブ演算部は、メイン演算部よりも少数のセンサを用いてサブ操作量を演算する第１サブ演算部と、メイン演算部よりも演算周期が長く、第１サブ演算部よりも多数のセンサを用いてサブ操作量を演算する第２サブ演算部と、を備え、サブＥＣＵは、第１サブ演算部または第２サブ演算部のいずれか一方を選択して動作させるサブ演算切替部をさらに備える。
【００１４】
本発明に係る自動運転制御方法は、メインＥＣＵが複数のセンサを用いて車両の自動運転制御に関する操作量をメイン操作量として演算し、サブＥＣＵが車両の自動運転制御に関する操作量をサブ操作量として演算し、メインＥＣＵおよびサブＥＣＵの故障を検出し、メインＥＣＵまたはサブＥＣＵの故障検出結果に基づき、メイン操作量またはサブ操作量のいずれかを選択し、選択した操作量に基づき車両の自動運転制御を行い、サブＥＣＵは、メインＥＣＵよりも少数のセンサを用いてサブ操作量を演算する第１サブ演算部と、メインＥＣＵよりも演算周期が長く、第１サブ演算部よりも多数のセンサを用いてサブ操作量を演算する第２サブ演算部と、を備え、第１サブ演算部または第２サブ演算部のいずれか一方を選択して動作させる。
【発明の効果】
【００１５】
メインＥＣＵとサブＥＣＵの一方に単一故障が発生しても、故障していない他方のＥＣＵの演算結果を用いて、車両の自動運転制御を行うことが出来るため、自動運転の継続が可能である。また、サブＥＣＵでは、車両の自動運転制御に関する操作量がメインＥＣＵにおけるよりも少ない単位時間演算量で演算されるため、サブＥＣＵにはメインＥＣＵに比べてロースペックな部品を用いることができる。従って、システム規模を抑制することが出来る。
【図面の簡単な説明】
【００１６】
【図１】実施の形態１に係る自動運転制御装置の構成を例示するブロック図である。
【図２】実施の形態１に係るメイン故障検出部の動作を例示するフローチャートである。
【図３】実施の形態１に係る操作量選択部の動作を例示するフローチャートである。
【図４】実施の形態１の変形例に係る自動運転制御装置の構成を示すブロック図である。
【図５】実施の形態２に係る自動運転制御装置の構成を示すブロック図である。
【図６】実施の形態２に係るサブ故障検出部の動作を例示するフローチャートである。
【図７】実施の形態２に係るメイン故障検出部の動作を例示するフローチャートである。
【図８】実施の形態３に係る自動運転制御装置の構成を示すブロック図である。
【図９】実施の形態３に係るサブ演算切替部の動作を例示するフローチャートである。
【図１０】実施の形態３に係るサブ演算切替部の動作を例示するフローチャートである。
【図１１】メインＥＣＵのハードウェア構成を示す図である。
【発明を実施するための形態】
【００１７】
＜Ａ．実施の形態１＞
図１は、本発明の実施の形態１に係る自動運転制御装置１０１の構成を例示するブロック図である。自動運転制御装置１０１は、車両の自動運転を制御する装置であり、例えば制御すべき車両に搭載されている。本明細書では、自動運転制御装置の制御対象となる車両を単に「車両」と呼ぶ。
【００１８】
自動運転制御装置１０１は、メインＥＣＵ（Engine Control Unit）１１、サブＥＣＵ２１、センサ３１，３２，３３、ＧＰＳ(Global Positioning System)受信機３４、駆動系ＥＣＵ４１、操舵系ＥＣＵ５１、制動系ＥＣＵ６１、およびＨＭＩ（Human Machine Interface）７を備えて構成される。メインＥＣＵ１１、サブＥＣＵ２１、センサ３１，３２，３３、およびＧＰＳ受信機３４はネットワーク８１で接続される。メインＥＣＵ１１、サブＥＣＵ２１、駆動系ＥＣＵ４１、操舵系ＥＣＵ５１、制動系ＥＣＵ６１、およびＨＭＩ７はネットワーク８２で接続される。
【００１９】
メインＥＣＵ１１は、ネットワーク８１を介してセンサ３１，３２，３３のデータおよびＧＰＳ受信機３４の位置情報を取得し、メイン操作量ａ１およびメイン故障検出通知ｂ１を出力する。本明細書では、メインＥＣＵ１１が出力する操作量と、後述するサブＥＣＵ２１が出力する操作量とを区別するために、前者を「メイン操作量ａ１」、後者を「サブ操作量ａ２」と呼ぶが、特に両者を区別しない場合には単に「操作量ａ１，ａ２」と呼ぶ。メイン故障検出通知ｂ１とは、メインＥＣＵ１１の故障検出通知のことであり、これに対して、後述するサブＥＣＵ２１の故障検出通知はサブ故障検出通知ｂ２と呼ぶ。しかし、メイン故障検出通知ｂ１とサブ故障検出通知ｂ２とを特に区別しない場合には単に「故障検出通知ｂ１，ｂ２」と呼ぶ。メインＥＣＵ１１は、メイン故障検出部１１１およびメイン演算部１１２を有し、これらは２０ミリ秒（ｍｓ）周期で動作する。
【００２０】
サブＥＣＵ２１は、ネットワーク８１を介してセンサ３１，３２のデータを取得し、サブ操作量ａ２およびサブ故障検出通知ｂ２を出力する。サブＥＣＵ２１は、サブ故障検出部２１１およびサブ演算部２１２を有しており、これらは２０ミリ秒（ｍｓ）周期で動作する。
【００２１】
駆動系ＥＣＵ４１は、ネットワーク８２を介してメインＥＣＵ１１からメイン操作量ａ１およびメイン故障検出通知ｂ１を、サブＥＣＵ２１からサブ操作量ａ２およびサブ故障検出通知ｂ２をそれぞれ取得し、アクセル用アクチュエータ（図示せず）を作動させる。ただし、メイン故障検出通知ｂ１とサブ故障検出通知ｂ２とは二者択一であり同時に駆動系ＥＣＵ４１に取得されるものではない。駆動系ＥＣＵ４１は、メイン操作量ａ１とサブ操作量ａ２のうち一方を選択する操作量選択部４１１を有しており、操作量選択部４１１で選択した操作量を用いて、アクセル用アクチュエータを作動させる。
【００２２】
操舵系ＥＣＵ５１は、ネットワーク８２を介してメインＥＣＵ１１からメイン操作量ａ１およびメイン故障検出通知ｂ１を、サブＥＣＵ２１からサブ操作量ａ２およびサブ故障検出通知ｂ２をそれぞれ取得し、ステアリング用アクチュエータ（図示せず）を作動させる。ただし、メイン故障検出通知ｂ１とサブ故障検出通知ｂ２とは二者択一であり同時に操舵系ＥＣＵ５１に取得されるものではない。操舵系ＥＣＵ５１は、メイン操作量ａ１とサブ操作量ａ２のうち一方を選択する操作量選択部５１１を有しており、操作量選択部５１１で選択した操作量を用いて、ステアリング用アクチュエータを作動させる。
【００２３】
制動系ＥＣＵ６１は、ネットワーク８２を介してメインＥＣＵ１１からメイン操作量ａ１およびメイン故障検出通知ｂ１を、サブＥＣＵ２１からサブ操作量ａ２およびサブ故障検出通知ｂ２をそれぞれ取得し、ブレーキ用アクチュエータ（図示せず）を作動させる。制動系ＥＣＵ６１は、メイン操作量ａ１とサブ操作量ａ２のうち一方を選択する操作量選択部６１１を有しており、操作量選択部６１１で選択した操作量を用いて、ブレーキ用アクチュエータを作動させる。
【００２４】
すなわち、駆動系ＥＣＵ４１、操舵系ＥＣＵ５１、制動系ＥＣＵ６１は、車両の自動運転制御を行う自動運転制御部として機能する。
【００２５】
ＨＭＩ７は、ネットワーク８２を介してメイン故障検出通知ｂ１またはサブ故障検出通知ｂ２を取得し、取得した故障検出通知に応じて故障個所を音声または表示で運転者に通知し、運転者による運転と車両の修理を促す。
【００２６】
メイン演算部１１２は、センサ３１，３２，３３のデータおよびＧＰＳ受信機３４の位置情報からメイン操作量ａ１を演算する。メイン演算部１１２は、例えば非特許文献１の自動運転システムアーキテクチャに示されるように、センサ３１，３２，３３のデータとＧＰＳ受信機３４の位置情報とからローカルダイナミックマップを作成し、ローカルダイナミックマップを基に走行経路を作成し、走行経路を基にメイン操作量ａ１を作成する。センサ３１，３２，３３には、例えばミリ波レーダ、レーザーレーダ、またはカメラを用いることができる。これらのセンサは単独で複雑な環境を認識することが困難であるため、複数のセンサを用いるセンサフュージョン技術によって認識性能を向上し、高精度なローカルダイナミックマップを作製できる。
【００２７】
サブ演算部２１２は、センサ３１，３２のデータからサブ操作量ａ２を演算する。サブ演算部２１２の有する機能の第１の例は、カメラが認識した車線から逸脱しないように制御する、車線逸脱防止支援機能である。車線逸脱防止支援機能には、本田技研工業株式会社のレーンキープアシストシステム（ＬＫＡＳ：Lane Keep Assist System、登録商標）、あるいはトヨタ自動車株式会社のレーンキーピングアシスト（ＬＫＡ：Lane Keeping Assist、登録商標）等がある。サブ演算部２１２の有する機能の第２の例は、ミリ波レーダにより先行車との車間距離を検知し、車間距離を保つように制御する、アダプティブクルーズコントロール（ＡＣＣ：Adaptive Cruise Control）機能である。
【００２８】
メイン演算部１１２は、センサ３１，３２，３３のデータおよびＧＰＳ受信機３４の位置情報を用いてメイン操作量ａ１を演算するのに対し、サブ演算部２１２は、センサ３１，３２のデータを用いてサブ操作量ａ２を演算する。このように、サブ演算部２１２は、メイン演算部１１２よりも少数のセンサを用いてサブ操作量ａ２を演算するため、単位時間あたりの演算量、すなわち単位時間演算量がメイン演算部１１２に比べて少ないという特徴がある。従って、サブＥＣＵ２１にはメインＥＣＵ１１よりもロースペックな部品を使うことができるため、同スペックの部品でメインＥＣＵ１１とサブＥＣＵ２１に同じスペックの部品を使う場合に比べて、自動運転制御装置１０１のシステム規模を抑制することができる。
【００２９】
メイン故障検出部１１１は、メインＥＣＵ１１の故障を検出したら、メイン故障検出通知ｂ１を、ネットワーク８２を介して駆動系ＥＣＵ４１の操作量選択部４１１、操舵系ＥＣＵ５１の操作量選択部５１１、制動系ＥＣＵ６１の操作量選択部６１１、およびＨＭＩ７に送信する。サブ故障検出部２１１は、サブＥＣＵ２１の故障を検出したら、サブ故障検出通知ｂ２を、ネットワーク８２を介して駆動系ＥＣＵ４１の操作量選択部４１１、操舵系ＥＣＵ５１の操作量選択部５１１、制動系ＥＣＵ６１の操作量選択部６１１、およびＨＭＩ７に送信する。
【００３０】
図２は、メイン故障検出部１１１の動作を例示するフローチャートである。以下、図２に沿ってメイン故障検出部１１１の動作を説明する。まず、メイン故障検出部１１１は、メイン演算部１１２が現周期で演算したメイン操作量ａ１と、現周期より前のステップＳ１３で記録したメイン操作量ａ１とを比較し、メイン操作量ａ１の変動が正常か否かを判断する（ステップＳ１１）。メイン故障検出部１１１は、メイン操作量ａ１の変動を正常ではない、すなわち異常と判断すると、メインＥＣＵ１１が故障したと判断し、メイン故障検出通知ｂ１を操作量選択部４１１，５１１，６１１およびＨＭＩ７に送信する（ステップＳ１２）。メイン故障検出部１１１は、メイン操作量ａ１の変動を正常と判断すると、メイン演算部１１２が現周期で演算したメイン操作量ａ１をメインＥＣＵ１１に記録する（ステップＳ１３）。
【００３１】
ステップＳ１１において、メイン故障検出部１１１は、現周期と一つ前の周期との間でメイン操作量ａ１の差分が閾値を超えた場合に、メイン操作量ａ１の変動が異常であると判断してもよい。あるいは、メイン故障検出部１１１は、現周期と一つ前の周期との間と、現周期と２つ前の周期との間の両方で、メイン操作量ａ１の差分が閾値を超えた場合に、メイン操作量ａ１の変動が異常であると判定してもよい。
【００３２】
図２の例で、メイン故障検出部１１１は、メイン操作量ａ１の変動が大きい場合にメインＥＣＵ１１が故障したと判断している。この判断方法は、メイン演算部１１２は、現在の車両周辺状況をフィードバックして次の操作量を決めているため、単位演算周期間においてメイン操作量ａ１が大きく変動することは無いという前提に基づいている。
【００３３】
以上、メイン故障検出部１１１の動作を説明したが、サブ故障検出部２１１の動作もこれと同様である。上記したメイン故障検出部１１１の動作の説明において、メイン演算部１１２をサブ演算部２１２、メインＥＣＵ１１をサブＥＣＵ２１、メイン操作量ａ１をサブ操作量ａ２、メイン故障検出通知ｂ１をサブ故障置検出通知ｂ２にそれぞれ置き換えれば、サブ故障検出部２１１の動作の説明となる。
【００３４】
操作量選択部４１１，５１１，６１１は、それぞれ、駆動系ＥＣＵ４１、操舵系ＥＣＵ５１、制動系ＥＣＵ６１について、故障検出通知ｂ１，ｂ２に応じて操作量ａ１，ａ２のどちらかを選択する。図３は、操作量選択部４１１，５１１，６１１の動作の一例を示している。以下、図３に沿って操作量選択部４１１，５１１，６１１の動作を説明する。
【００３５】
まず、操作量選択部４１１，５１１，６１１は、メインＥＣＵ１１が故障したか否かを判定する（ステップＳ２１）。具体的には、操作量選択部４１１，５１１，６１１はメイン故障検出通知ｂ１を取得した場合に、メインＥＣＵ１１が故障したと判定する。操作量選択部４１１，５１１，６１１は、メインＥＣＵ１１が故障したと判定した場合、サブ操作量ａ２を選択し（ステップＳ２２）、メインＥＣＵ１１が故障していないと判定した場合、メイン操作量ａ１を選択する（ステップＳ２３）。
【００３６】
本実施の形態に係る自動運転制御装置１０１では、センサ３１，３２，３３のデータおよびＧＰＳ受信機３４の位置情報を通信するネットワーク８１と、操作量および故障検出通知を通信するネットワーク８２とを分けていた。しかし、図４に示す変形例に係る自動運転制御装置１０１Ａにおけるように、これらを共通のネットワーク８３で実現しても良い。また、信頼性を上げるために、ネットワーク８１，８２，８３が冗長化されていてもよい。
【００３７】
また、上記の説明では、メイン演算部１１２で用いるセンサの数量を３、サブ演算部２１２で用いるセンサの数量を２としたが、サブ演算部２１２で用いるセンサの数量がメイン演算部１１２で用いるセンサの数量よりも少なければ、他の値でもよい。
【００３８】
また、上記の説明では、メイン演算部１１２とサブ演算部２１２の演算周期を２０ｍｓとしたが、両者の演算周期が同じであれば他の値でもよい。
【００３９】
以上で説明したように、本実施の形態に係る自動運転制御装置１０１は、メインＥＣＵ１１に設けられ、複数のセンサ３１，３２，３３を用いて車両の自動運転制御に関する操作量をメイン操作量ａ１として演算するメイン演算部１１２と、サブＥＣＵ２１に設けられ、メイン演算部１１２よりも少数のセンサ３１，３２を用いて車両の自動運転制御に関する操作量をサブ演算量ａ２として演算するサブ演算部２１２と、メインＥＣＵ１１の故障を検出するメイン故障検出部１１１と、サブＥＣＵ２１の故障を検出するサブ故障検出部２１１と、メイン故障検出部１１１およびサブ故障検出部２１１の故障検出結果に基づき、メイン操作量ａ１またはサブ操作量ａ２のいずれかを選択する操作量選択部４１１，５１１，６１１と、操作量選択部４１１，５１１，６１１が選択した操作量に基づき車両の自動運転制御を行う駆動系ＥＣＵ４１、操舵系ＥＣＵ５１、および制動系ＥＣＵ６１と、を備える。なお、メイン故障検出部１１１とサブ故障検出部２１１は別の構成である必要はなく、メインＥＣＵ１１およびサブＥＣＵ２１の故障を検出する故障検出部として構成されていれば良い。このような構成により、メインＥＣＵ１１とサブＥＣＵ２１の一方に単独故障が生じても、故障していない他方のＥＣＵによって自動運転制御を継続することができる。さらに、サブ演算部２１２の単位時間の演算量がメイン演算部１１２よりも少ないことから、サブＥＣＵ２１はメインＥＣＵ１１よりもロースペックの部品を用いて構成することができる。従って、同じスペックの部品を用いてメインＥＣＵ１１とサブＥＣＵ２１を構成する場合に比べて、自動運転制御装置１０１のシステムの規模を抑制することができる。
【００４０】
また、自動運転制御装置１０１によれば、操作量選択部４１１，５１１，６１１は、メイン故障検出部１１１がメインＥＣＵ１１の故障を検出した場合に、サブ操作量ａ２を選択するため、メインＥＣＵの単独故障時にサブＥＣＵによる自動運転制御が継続可能である。
【００４１】
また、自動運転制御装置１０１によれば、メイン演算部１１２が用いるセンサ３１，３２，３３は、サブ演算部２１２が用いるセンサ３１，３２を包含している。このように、メイン演算部１１２が用いる複数のセンサのうちのいくつかをサブ演算部２１２で用いることによって、メインＥＣＵ１１の故障時には、サブＥＣＵ２１により精度を落としつつもロースペックに自動運転を継続できる。
【００４２】
また、本実施の形態に係る自動運転制御方法によれば、メインＥＣＵ１１において、複数のセンサ３１，３２，３３を用いて車両の自動運転制御に関する操作量をメイン操作量ａ１として演算し、サブＥＣＵ２１において、車両の自動運転制御に関する操作量をメインＥＣＵ１１よりも少数のセンサを用いてサブ操作量ａ２として演算し、メインＥＣＵ１１およびサブＥＣＵ２１の故障を検出し、メインＥＣＵ１１またはサブＥＣＵ２１の故障検出結果に基づき、選択したメイン操作量ａ１またはサブ操作量ａ２のいずれかに基づき車両の自動運転制御を行う。従って、メインＥＣＵ１１とサブＥＣＵ２１の一方に単独故障が生じても、故障していない他方のＥＣＵによって自動運転制御を継続することができる。また、サブ演算部２１２の単位時間の演算量がメイン演算部１１２よりも少ないことから、サブＥＣＵ２１にはメインＥＣＵ１１よりもロースペックの部品を用いることができ構成することができ、自動運転制御を行うシステムの規模を抑制することができる。
【００４３】
＜Ｂ．実施の形態２＞
実施の形態１に係る自動運転制御装置では、メインＥＣＵ１１自身がメインＥＣＵ１１の故障を検出するメイン故障検出部１１１を有し、駆動系ＥＣＵ４１、操舵系ＥＣＵ５１、および制動系ＥＣＵ６１がそれぞれ操作量選択部４１１，５１１，６１１を有していた。しかし、実施の形態２に係る自動運転制御装置では、メインＥＣＵの故障を検出する故障検出部をメインＥＣＵと独立して設け、操作量選択部を駆動系ＥＣＵ、操舵系ＥＣＵ、および制動系ＥＣＵと独立して設けることを特徴とする。
【００４４】
図５は、本発明の実施の形態２に係る自動運転制御装置１０２の構成を示すブロック図である。図５において、図１に示した実施の形態１と同一または対応する構成要素には同一の参照符号を付している。自動運転制御装置１０２は、メインＥＣＵ１２、サブＥＣＵ２２、センサ３１，３２，３３、ＧＰＳ受信機３４、ネットワーク８１，８２、駆動系ＥＣＵ４２、操舵系ＥＣＵ５２、制動系ＥＣＵ６２、ＨＭＩ７、および制御切替部９を備えて構成される。
【００４５】
自動運転制御装置１０２のメインＥＣＵ１２は、自動運転制御装置１０１のメインＥＣＵ１１と異なりメイン故障検出部を有していない。
【００４６】
サブＥＣＵ２２は、サブ故障検出部２２１とサブ演算部２１２とを備える。なお、図５では、サブ故障検出部２２１をサブＥＣＵ内に設けているが、サブ故障検出部２２１はサブＥＣＵ２２と独立していてもよい。
【００４７】
制御切替部９は、メインＥＣＵ１２からメイン操作量ａ１を、サブＥＣＵ２２からサブ操作量ａ２およびサブ故障検出通知ｂ２を取得し、メイン操作量ａ１またはサブ操作量ａ２のうち選択した操作量ａと、サブ故障検出通知ｂ２またはメイン故障検出通知ｂ１とを出力する。制御切替部９は、メイン故障検出部９１と操作量選択部９２を備えている。制御切替部９が操作量選択部９２を有する代わりに、駆動系ＥＣＵ４２、操舵系ＥＣＵ５２、および制動系ＥＣＵ６２は、実施の形態１の駆動系ＥＣＵ４１、操舵系ＥＣＵ５１、および制動系ＥＣＵ６１と異なり、操作量選択部を有していない。
【００４８】
駆動系ＥＣＵ４２、操舵系ＥＣＵ５２、および制動系ＥＣＵ６２は、ネットワーク８２を介して操作量ａを取得し、操作量ａを用いてそれぞれアクセル用、ステアリング用、ブレーキ用アクチュエータを作動させる。
【００４９】
サブ故障検出部２２１は、サブＥＣＵ２２の故障を検出したらサブ故障検出通知ｂ２を制御切替部９に送信する。図６は、サブ故障検出部２２１の動作を例示するフローチャートである。図６の例では、サブＥＣＵ２２のサブ演算部２１２を実現するＣＰＵまたはＣＰＵコアが冗長化されており、サブ故障検出部２２１は、それら冗長化されたＣＰＵまたはＣＰＵのコアによる演算結果を比較することで故障を検出する。
【００５０】
以下、図６に沿ってサブ故障検出部２２１の動作を説明する。サブ故障検出部２２１は、サブ演算部２１２を実現する冗長化されたＣＰＵまたはＣＰＵコアの演算結果が一致するか否かを判断する（ステップＳ３１）。ステップＳ３１で演算結果が一致していなければ、サブ故障検出部２２１はサブＥＣＵ２２が故障したと判断し、サブ故障検出通知ｂ２を制御切替部９に送信する（ステップＳ３２）。ステップＳ３１で演算結果が一致していれば、サブ故障検出部２２１は処理を終了する。
【００５１】
図７は、メイン故障検出部９１の動作の一例を示すフローチャートである。図７の例では、サブＥＣＵ２２が故障していない場合に、メイン操作量ａ１とサブ操作量ａ２とを比較してメインＥＣＵ１２の故障を検出する。
【００５２】
図７のフローチャートに沿ってメイン故障検出部９１の動作を説明する。まずメイン故障検出部９１は、サブＥＣＵ２２が故障したか否かを判断する（ステップＳ４１）。具体的には、メイン故障検出部９１は、サブ故障検出通知ｂ２を取得したかを確認し、取得していればサブＥＣＵ２２が故障したと判定する。そして、サブＥＣＵ２２が故障していればメイン故障検出部９１は処理を終了する。サブＥＣＵ２２が故障していなければ、メイン故障検出部９１はメイン操作量ａ１をサブ操作量ａ２と比較し、メイン操作量ａ１が正常か否かを判定する（ステップＳ４２）。メイン故障検出部９１はステップＳ４２でメイン操作量ａ１を正常ではない、すなわち異常と判定すると、メインＥＣＵ１２が故障したと判断し、メイン故障検出通知ａ１を操作量選択部９２に送信する（ステップＳ４３）。メイン故障検出部９１は、ステップＳ４２でメイン操作量ａ１を正常と判定すると、そのまま処理を終了する。ステップＳ４２において、メイン故障検出部９１は、例えばメイン操作量ａ１とサブ操作量ａ２の差分が閾値を超えたら異常と判定してもよい。あるいは、メイン故障検出部９１は、メイン操作量ａ１とサブ操作量ａ２の差分が一定時間以上、継続して閾値を超えた場合に異常と判定することによって、異常と誤判定することを防ぐこともできる。
【００５３】
操作量選択部９２は、故障検出通知に基づき、メイン操作量ａ１とサブ操作量ａ２のいずれかを選択し、操作量ａとする。具体的には、操作量選択部９２は、メイン故障検出通知ｂ１を取得した場合には、サブ操作量ａ２を選択し、サブ故障検出通知ｂ２を取得した場合、またはいずれの故障検出通知も取得しなかった場合には、メイン操作量ａ１を選択する。操作量選択部９２が選択した操作量ａは、ネットワーク８２を介して駆動系ＥＣＵ４２、操舵系ＥＣＵ５２、および制動系ＥＣＵ６２に送られ、駆動系ＥＣＵ４２、操舵系ＥＣＵ５２、および制動系ＥＣＵ６２は、操作量ａに基づきアクセル用、ステアリング用、およびブレーキ用アクチュエータを作動する。
【００５４】
実施の形態２の自動運転制御装置１０２によれば、実施の形態１の効果に加えて、以下の効果を得る。すなわち、自動運転制御装置１０２では、メインＥＣＵ１２が故障した時にサブＥＣＵ２２に制御を切り替えるための操作量選択部９２が、駆動系ＥＣＵ４２、操舵系ＥＣＵ５２、および制動系ＥＣＵ６２と独立しているため、駆動系ＥＣＵ４２、操舵系ＥＣＵ５２、および制動系ＥＣＵ６２に操作量選択部を設ける必要がなく、構成を簡略化することができる。
【００５５】
＜Ｃ．実施の形態３＞
実施の形態１では、サブ演算部が有する機能の例として、車線逸脱防止支援機能またはＡＣＣ機能を挙げた。車線逸脱防止支援機能またはＡＣＣ機能は、一般道に比べて認知すべき障害物の少ない、高速道路での利用を強く推奨されているため、一般道での自動運転継続に問題があった。そこで、サブＥＣＵの演算周期を長くすることにより単位時間演算量を低くし、ロースペックなサブＥＣＵを用いて一般道での車線逸脱防止支援機能等を実現することが考えられる。しかし、演算周期を長くすると、高速運転時に演算が間に合わないことがあるため、高速道路での自動運転継続に問題があった。
【００５６】
そこで、実施の形態３では、サブＥＣＵに演算周期の異なる２つのサブ演算部を設け、車両が高速で走行する際には、演算周期の短いサブ演算部で演算を行って演算の遅延を防ぐ一方、車両が一般道路を走行する際には、演算周期の長いサブ演算部で演算を行うことによって、認知量の多さに対応する。
【００５７】
図８は、本実施の形態に係る自動運転制御装置１０３の構成を示すブロック図である。図８において、図１に示した実施の形態１と同一または対応する構成要素には同一の参照符号を付している。自動運転制御装置１０３は、実施の形態１の自動運転制御装置１０１と比較すると、サブＥＣＵ２１に代えてサブＥＣＵ２３を備えている。サブＥＣＵ２３は、サブ故障検出部２１１、第１サブ演算部２３２、第２サブ演算部２３３、およびサブ演算切替部２３４を備えている。自動運転制御装置１０３のその他の構成は実施の形態１に係る自動運転制御装置１０１と同様である。
【００５８】
第１サブ演算部２３２は、実施の形態１のサブ演算部２１２と同様である。すなわち、第１サブ演算部２３２は、メイン演算部１１２よりも少数のセンサ３１，３２のデータからサブ操作量ａ２を演算し、その動作周期は２０ｍｓ周期である。
【００５９】
第２サブ演算部２３３は、メイン演算部１１２および第１サブ演算部２３２よりも動作周期が長く、例えば６０ｍｓ周期で動作する。第２サブ演算部２３３は、センサ３１，３２，３３のデータとＧＰＳ受信機３４の位置情報とからサブ操作量ａ２を演算する。すなわち、第２サブ演算部２３３は、メイン演算部１１２よりも演算周期が長く、第１サブ演算部２３２よりも多数のセンサ３１，３２，３３を用いてサブ操作量ａ２を演算する。また、第１サブ演算部２３２が用いるセンサ３１，３２，３３は、第２サブ演算部２３３が用いるセンサ３１，３２を包含している。また、メイン演算部１１２が用いるセンサ３１，３２，３３は、第２サブ演算部２３３が用いるセンサ３１，３２を包含している。また、メイン演算部１１２が用いるセンサ３１，３２，３３は、第２サブ演算部２３３が用いるセンサ３１，３２，３３を包含している。
【００６０】
サブ演算切替部２３４は、メイン演算部１１２および第１サブ演算部２３２と同じ２０ｍｓ周期で動作し、第１サブ演算部２３２または第２サブ演算部２３３のいずれか一方を選択して動作させる。すなわち、第１サブ演算部２３２と第２サブ演算部２３３は同時には動作しない。
【００６１】
図９，１０は、サブ演算切替部２３４の動作を例示するフローチャートである。図９は、車両の速度に応じてサブ演算部の切り替えを行う場合を示し、図１０は、車両の走行道路が高速道路か否かに応じてサブ演算部の切り替えを行う場合を示している。なお、上記のとおり第２サブ演算部２３３の動作周期はサブ演算切替部２３４の動作周期の３倍であるため、第２サブ演算部２３３がサブ操作量ａ２を演算する場合、３回同じ演算結果を出力する。
【００６２】
図９に沿って、サブ演算切替部２３４の動作を説明する。まず、サブ演算切替部２３４は、車両が高速運転しているか否かを判断する（ステップＳ５１）。ここでサブ演算切替部２３４は、車両の速度が閾値を超えたら高速運転と判定してもよい。あるいは、サブ演算切替部２３４は、車両の速度が一定時間以上継続して閾値を超えたら高速運転と判定し、その状態から一定時間以上継続して閾値以下であれば高速運転との判定を解除することにより、頻繁な切替を抑制しても良い。サブ演算切替部２３４は、ステップＳ５１で高速運転していると判断した場合、第１サブ演算部２３２を選択する（ステップＳ５２）。また、サブ演算切替部２３４は、ステップＳ５１で高速運転していないと判断した場合、第２サブ演算部２３３を選択する（ステップＳ５３）。
【００６３】
次に、図１０に沿って、サブ演算切替部２３４の動作を説明する。まず、サブ演算切替部２３４は、車両が高速道路を走行しているか否かを判断する（ステップＳ６１）。車両が高速道路を走行しているか否かの判断は、ＧＰＳ受信機３４の位置情報、すなわちＧＰＳ情報から行ってもよいし、ＥＴＣ車載器（図示せず）の入出場情報、すなわちＥＴＣ情報から行っても良い。それ以外は図９と同様である。
【００６４】
なお、実施の形態３では、第２サブ演算部２３３の演算周期を６０ｍｓとし、それ以外の部の演算周期を２０ｍｓとしたが、それ以外の部に比べて第２サブ演算部２３３の演算周期が長ければ、他の値でもよい。
【００６５】
また、実施の形態３において、第２サブ演算部２３３で用いるセンサの数は、メイン演算部１１２と同じとしたが、第１サブ演算部２３２で用いるセンサの数よりも多ければ、メイン演算部１１２で用いるセンサの数以下であっても良い。
【００６６】
以上のように、本実施の形態に係る自動運転制御装置１０３は、メインＥＣＵ１１に設けられ、複数のセンサ３１，３２，３３を用いて車両の自動運転制御に関する操作量をメイン操作量ａ１として演算するメイン演算部１１２と、サブＥＣＵ２３に設けられ、車両の自動運転制御に関する操作量をサブ操作量ａ２として演算するサブ演算部２３２，２３３と、メインＥＣＵ１１の故障を検出するメイン故障検出部１１１と、サブＥＣＵ２３の故障を検出するサブ故障検出部２１１と、メイン故障検出部１１１およびサブ故障検出部２１１の故障検出結果に基づき、メイン操作量ａ１またはサブ操作量ａ２のいずれかを選択する操作量選択部４１１，５１１，６１１と、操作量選択部４１１，５１１，６１１が選択した操作量に基づき車両の自動運転制御を行う駆動系ＥＣＵ４１、操舵系ＥＣＵ５１、および制動系ＥＣＵ６１と、を備える。なお、メイン故障検出部１１１とサブ故障検出部２１１は別の構成である必要はなく、メインＥＣＵ１１およびサブＥＣＵ２１の故障を検出する故障検出部として構成されていれば良い。また、サブ演算部２３２，２３３は、メイン演算部１１２よりも少数のセンサ３１，３２を用いてサブ操作量ａ２を演算する第１サブ演算部２３２と、メイン演算部１１２よりも演算周期が長く、第１サブ演算部２３２よりも多数のセンサ３１，３２，３３を用いてサブ操作量ａ２を演算する第２サブ演算部２３３と、を備え、サブＥＣＵ２３は、第１サブ演算部２３２または第２サブ演算部２３３のいずれか一方を選択して動作させるサブ演算切替部２３４を備える。自動運転制御装置１０３によれば、実施の形態１の効果に加えて、以下の効果を奏する。すなわち、自動運転制御装置１０３によれば、短い周期で自動運転制御を行う必要がある場合には、周期が短いが用いるセンサが少ない第１サブ演算部２３２を使用し、多くのセンサの使用が求められる場合には、周期が長いが用いるセンサが多い第２サブ演算部２３３を使用することによって、サブＥＣＵ２３の単位時間演算量をメインＥＣＵ１１より少なくしつつ、異なる走行状況に対応することができる。
【００６７】
また、操作量選択部４１１，５１１，６１１は、メイン故障検出部１１１がメインＥＣＵ１１の故障を検出した場合に、サブ操作量ａ２を選択するため、メインＥＣＵの単独故障時にサブＥＣＵによる自動運転制御が継続可能である。
【００６８】
例えば、サブ演算切替部２３４は、車両の走行速度に基づき、第１サブ演算部２３２または第２サブ演算部２３３のいずれか一方を選択して動作させる。従って、高速走行時には、第１サブ演算部２３２を用いて演算を行うことで、メイン演算部１１２と同様の演算周期で自動運転を継続できる。また、低速走行時には、第２サブ演算部２３３を用いて演算を行うことで、メイン演算部１１２と同様の認知精度で自動運転を継続できる。従って、自動運転制御装置１０３によれば、低速走行時の自動運転制御の信頼性を高めることができる。
【００６９】
あるいは、サブ演算切替部２３４は、車両が一般道よりも障害物の少ない高速道路を走行している場合には、第１サブ演算部２３２を選択して動作させることで、メイン演算部１１２と同様の演算周期で自動運転を継続できる。また、車両が高速道路以外を走行している場合には、第２サブ演算部２３３を選択して動作させることで、メイン演算部１１２による制御と同様の認知精度で自動運転制御を継続できる。したがって、自動運転制御装置１０３によれば、一般道路走行時の信頼性を高めることができる。
【００７０】
また、自動運転制御装置１０３によれば、第１サブ演算部２３２が用いるセンサ３１，３２，３３は、第２サブ演算部２３３が用いるセンサ３１，３２を包含している。このように、第１サブ演算部２３２が用いる複数のセンサのうちのいくつかを第２サブ演算部２３３で用いることによって、第１サブ演算部２３２と第２サブ演算部２３３を切替えて動作させても、自動運転制御を継続できる。
【００７１】
また、自動運転制御装置１０３によれば、メイン演算部１１２が用いるセンサ３１，３２，３３は、第２サブ演算部２３３が用いるセンサ３１，３２を包含している。このように、メイン演算部１１２が用いる複数のセンサのうちのいくつかを第２サブ演算部２３３で用いることによって、メインＥＣＵ１１が故障した場合でも、サブＥＣＵ２３に切り替えて自動運転制御を継続できる。
【００７２】
また、自動運転制御装置１０３によれば、メイン演算部１１２が用いるセンサ３１，３２，３３は、第１サブ演算部２３２が用いるセンサ３１，３２，３３を包含している。このように、メイン演算部１１２が用いる複数のセンサのうちのいくつかを第１サブ演算部２３２で用いることによって、メインＥＣＵ１１が故障した場合でも、サブＥＣＵ２３に切り替えて自動運転制御を継続できる。
【００７３】
＜Ｄ．ハードウェア構成＞
図１１は、実施の形態１の自動運転制御装置１０１におけるメインＥＣＵ１１のハードウェア構成を示す図である。図１１に示すように、メインＥＣＵ１１は、プロセッサ１００１と、メモリ１００２とによって実現される。メインＥＣＵ１１が備えるメイン故障検出部１１１又はメイン演算部１１２は、メモリ１００２に記憶されたプログラムをプロセッサ１００１が読み出して実行することにより、実現される。
【００７４】
ここで、プロセッサ１００１は、例えば中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、Digital Signal Processor等である。また、メモリ１００２には、例えば、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、フラッシュメモリ、ＥＰＲＯＭ（Electrically Programmable Read Only Memory）、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）などの、不揮発性または揮発性の半導体メモリ、ＨＤＤ（Hard Disk Drive）、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ（Digital Versatile Disk）及びそのドライブ装置の少なくともいずれか１つが含まれる。
【００７５】
メインＥＣＵ１２、サブＥＣＵ２１，２２，２３、駆動系ＥＣＵ４１，４２、操舵系ＥＣＵ５１，５２、制動系ＥＣＵ６１，６２、および制御切替部９のハードウェア構成も、図１１に示すメインＥＣＵ１１のハードウェア構成と同様である。
【００７６】
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略したりすることが可能である。
【符号の説明】
【００７７】
７  ＨＭＩ、９  操作量選択部、１１，１２  メインＥＣＵ、２１，２２，２３  サブＥＣＵ、３１，３２，３３  センサ、４１，４２  駆動系ＥＣＵ、５１，５２  操舵系ＥＣＵ、６１，６２  制動系ＥＣＵ、８１，８２，８３  ネットワーク、９１，１１１  メイン故障検出部、９２  操作量選択部、１１２  メイン演算部、２１１，２２１  サブ故障検出部、２１２  サブ演算部、４１１，５１１，６１１  操作量選択部、１００１  プロセッサ、１００２  メモリ。
【図１】
0006611664.tif 000002
【図２】
0006611664.tif 000003
【図３】
0006611664.tif 000004
【図４】
0006611664.tif 000005
【図５】
0006611664.tif 000006
【図６】
0006611664.tif 000007
【図７】
0006611664.tif 000008
【図８】
0006611664.tif 000009
【図９】
0006611664.tif 000010
【図１０】
0006611664.tif 000011
【図１１】
0006611664.tif 000012