(57)【要約】【課題】動的安定性を向上すること。【解決手段】本発明にかかる同軸二輪移動体は、車輪を回転させるモータと、モータの回転角を検出する第１の回転角検出部と、モータの回転角を検出する第２の回転角検出部と、ヨー角速度を検出するヨー角速度検出センサと、第１の回転角検出部及び第２の回転角検出部のそれぞれが検出したモータの回転角のうち、少なくとも１つに基づいてモータを駆動することで同軸二輪移動体を制御する制御部を備える。制御部は、第１の回転角検出部が検出したモータの回転角と、第２の回転角検出部が検出したモータの回転角とを比較する第１の比較、及び、第１の回転角検出部が検出したモータの回転角に基づいて算出したヨー角速度と、ヨー角速度検出センサが検出したヨー角速度とを比較する第２の比較を実施し、第１の比較及び第２の比較の結果に基づいて、異常となっている回転角検出部を検出する。【選択図】図３
2014108640.tif 000002
【特許請求の範囲】
【請求項１】
車輪を回転させて移動する同軸二輪移動体であって、
前記車輪を回転させるモータと、
前記モータの回転角を検出する第１の回転角検出部と、
前記モータの回転角を検出する第２の回転角検出部と、
前記同軸二輪移動体のヨー角速度を検出するヨー角速度検出センサと、
前記第１の回転角検出部及び前記第２の回転角検出部のそれぞれが検出した前記モータの回転角のうち、少なくとも１つに基づいて前記モータを駆動することで前記同軸二輪移動体を制御する制御部と、を備え、
前記制御部は、
前記第１の回転角検出部が検出した前記モータの回転角と、前記第２の回転角検出部が検出した前記モータの回転角とを比較する第１の比較、及び、
前記第１の回転角検出部が検出した前記モータの回転角に基づいて算出した前記同軸二輪移動体のヨー角速度と、前記ヨー角速度検出センサが検出した前記同軸二輪移動体のヨー角速度とを比較する第２の比較を実施し、
前記第１の比較及び前記第２の比較の結果に基づいて、前記第１の回転角検出部及び前記第２の回転角検出部のうち、異常となっている回転角検出部を検出し、検出結果に応じた前記同軸二輪移動体の制御を行う、
同軸二輪移動体。
【請求項２】
前記ヨー角速度検出センサは、第１のヨー角速度検出センサであり、
前記同軸二輪移動体は、さらに、前記同軸二輪移動体のヨー角速度を検出する第２のヨー角速度検出センサを備え、
前記制御部は、さらに、
前記第１のヨー角度検出センサが検出した前記同軸二輪移動体のヨー角速度と、前記第２のヨー角速度検出センサが検出した前記同軸二輪移動体のヨー角速度とを比較する第３の比較を実施し、
前記第２の比較及び前記第３の比較の結果に基づいて、前記第１のヨー角速度検出センサ及び前記第２のヨー角速度検出センサのうち、異常となっているヨー角速度検出センサを検出し、検出結果に応じた前記同軸二輪移動体の制御を行う、
請求項１に記載の同軸二輪移動体。
【請求項３】
前記制御部は、
前記第１の比較で、前記比較したモータの回転角が一致しないと判定し、かつ、前記第２の比較で、前記比較したヨー角速度が一致すると判定した場合、前記第２の回転角検出部が異常となっていると判定し、
前記第１の比較で、前記比較したモータの回転角が一致しないと判定し、かつ、前記第２の比較で、前記比較したヨー角速度が一致しないと判定した場合、前記第１の回転角検出部が異常となっていると判定する、
請求項１又は２に記載の同軸二輪移動体。
【請求項４】
前記制御部は、
前記第３の比較で、前記比較したヨー角速度が一致しないと判定し、かつ、前記第２の比較で、前記比較したヨー角速度が一致すると判定した場合、前記第２のヨー角速度検出センサが異常となっていると判定し、
前記第３の比較で、前記比較したヨー角速度が一致しないと判定し、かつ、前記第２の比較で、前記比較したヨー角速度が一致しないと判定した場合、前記第１のヨー角速度検出センサが異常となっていると判定する、
請求項２に記載の同軸二輪移動体。
【請求項５】
前記車輪は、第１の車輪であり、
前記モータは、前記第１の車輪を回転させる第１のモータであり、
前記同軸二輪移動体は、さらに、
第２の車輪と、
前記同軸二輪移動体の第２の車輪を回転させる第２のモータと、
前記第２のモータの回転角を検出する第３の回転角検出部と、
前記第２のモータの回転角を検出する第４の回転角検出部と、を備え、
前記制御部は、前記第３の回転角検出部及び前記第４の回転角検出部のそれぞれが検出した前記第２のモータの回転角のうち、少なくとも１つに基づいて前記第２のモータを駆動することで前記同軸二輪移動体を制御し、
前記制御部は、前記第２の比較では、前記モータの回転角に基づいて算出した前記同軸二輪移動体のヨー角速度として、前記第１の回転角検出部が検出した前記第１のモータの回転角、及び、前記第３の回転角検出部が検出した前記第２のモータの回転角に基づいて算出した前記同軸二輪移動体のヨー角速度を利用する、
請求項１乃至４のいずれか１項に記載の同軸二輪移動体。
【請求項６】
前記制御部は、さらに、
前記第３の回転角検出部が検出した前記モータの回転角と、前記第４の回転角検出部が検出した前記モータの回転角とを比較する第４の比較を実施し、
前記第４の比較及び前記第２の比較の結果に基づいて、前記第３の回転角検出部及び前記第４の回転角検出部のうち、異常となっている回転角検出部を検出し、検出結果に応じた前記同軸二輪移動体の制御を行う、
請求項５に記載の同軸二輪移動体。
【請求項７】
前記制御部は、
前記第４の比較で、前記比較したモータの回転角が一致しないと判定し、かつ、前記第２の比較で、前記比較したヨー角速度が一致すると判定した場合、前記第４の回転角検出部が異常となっていると判定し、
前記第４の比較で、前記比較したモータの回転角が一致しないと判定し、かつ、前記第２の比較で、前記比較したヨー角速度が一致しないと判定した場合、前記第３の回転角検出部が異常となっていると判定する、
請求項６に記載の同軸二輪移動体。
【請求項８】
前記制御部は、それぞれ、前記同軸二輪移動体の制御を行う第１の制御部及び第２の制御部を有し、
前記同軸二輪移動体は、前記第１の回転角検出部、前記第３の回転角検出部、前記第１の制御部を含む第１の制御系と、前記第２の回転角検出部、前記第４の回転角検出部、前記第２の制御部を含む第２の制御系を有し、
前記制御部は、
前記第１の制御系に含まれる第１の回転角検出部又は第３の回転角検出部の異常を検出した場合、前記第１の制御系を縮退して、前記第２の制御系によって前記同軸二輪移動体を制御し、
前記第２の制御系に含まれる第２の回転角検出部又は第４の回転角検出部の異常を検出した場合、前記第２の制御系を縮退して、前記第１の制御系によって前記同軸二輪移動体を制御する、
請求項６又は７に記載の同軸二輪移動体。
【請求項９】
前記第１の回転角検出部及び前記第３の回転角検出部は、それぞれ、前記検出した第１のモータの回転角を示すパラレル信号を前記第１の制御部に出力するとともに、前記検出した第１のモータの回転角を示すＡＢ相信号を前記第２の制御部に出力し、
前記第２の回転角検出部及び前記第４の回転角検出部は、それぞれ、前記検出した第２のモータの回転角を示すＡＢ相信号を前記第１の制御部に出力するとともに、前記検出した第２のモータの回転角を示すパラレル信号を前記第２の制御部に出力し、
前記第１の制御部は、前記第１の回転角検出部及び前記第３の回転角検出部のそれぞれが検出した前記第１のモータの回転角として、前記第１の回転角検出部及び前記第３の回転角検出部のそれぞれから出力されたパラレル信号が示す前記第１のモータの回転角を利用するとともに、前記第２の回転角検出部及び前記第４の回転角検出部のそれぞれが検出した前記第２のモータの回転角として、前記第２の回転角検出部及び前記第４の回転角検出部のそれぞれから出力されたＡＢ相信号が示す前記第２のモータの回転角を利用して、前記第１の比較、前記第２の比較、及び前記第４の比較を実施する、
請求項８に記載の同軸二輪移動体。
【請求項１０】
前記制御部は、前記異常となっている回転角検出部を検出した場合に、前記同軸二輪移動体を停止させる制動制御を実施する、
請求項１乃至９のいずれか１項に記載の同軸二輪移動体。
【請求項１１】
第１の回転角検出部及び第２の回転角検出部のそれぞれが検出したモータの回転角のうち、少なくとも１つに基づいて、前記モータを駆動することで車輪を回転させて移動する同軸二輪移動体を制御する制御方法であって、
前記第１の回転角検出部が検出した前記モータの回転角と、前記第２の回転角検出部が検出した前記モータの回転角とを比較する第１の比較、及び、
前記第１の回転角検出部が検出した前記モータの回転角に基づいて算出した前記同軸二輪移動体のヨー角速度と、ヨー角速度検出部が検出した前記同軸二輪移動体のヨー角速度とを比較する第２の比較を実施するステップと、
前記第１の比較及び前記第２の比較の結果に基づいて、前記第１の回転角検出部及び前記第２の回転角検出部のうち、異常となっている回転角検出部を検出するステップと、
前記検出結果に応じた前記同軸二輪移動体の制御を行うステップと、
を備えた制御方法。  
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、同軸二輪移動体及びその制御方法に関し、特に、同軸二輪移動体の車輪を回転させるモータの回転角に基づいて同軸二輪移動体を制御する技術に関する。
【背景技術】
【０００２】
特許文献１〜３に開示されるように、人間を運ぶための車両が検討されてきている。このような車両では、その車両に搭載されたデバイスの故障を検出し、正常に動作しているデバイスを利用して制御を継続するといった動的安定性を確保することが要求されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許出願公開第２００３／０１４６０２５号公報
【特許文献２】国際公開第２０１１／０８９６５６号
【特許文献３】特開２００９−１８７５６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本願出願人は、上述した車両を初めとする同軸二輪移動体における動的安定性の向上に関して、以下に説明する課題を見出した。なお、以下に説明する内容は、本願出願人が新たに検討した内容であって、従来技術を説明するものではない。
【０００５】
同軸二輪移動体の一態様として、２つの車輪と、２つの車輪のそれぞれを回転させるための２つのモータと、２つのモータのそれぞれをフィードバック制御するために２つのモータのそれぞれの回転角を取得する２つのセンサとを有する倒立二輪車が考えられる。しかし、この構成では、センサの故障を検出することができない。
【０００６】
そのような問題を解決する方法として、倒立二輪車の構成を、１つのモータに対して、センサを二重化した構成とすることが考えられる。この構成によれば、二重化された２つのセンサのそれぞれで取得された回転角を比較することで、比較した回転角が不一致となった場合には、いずれかのセンサが故障していると判断することができる。しかしながら、この構成でも、どちらのセンサが故障しているかまでは特定することはできない。すなわち、正常に動作しているセンサを利用して制御を継続するといった動的安定性を確保することができていないという問題がある。
【０００７】
本発明は、上述した知見に基づいてなされたものであって、動的安定性を向上することができる同軸二輪移動体及びその制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第１の態様にかかる同軸二輪移動体は、車輪を回転させて移動する同軸二輪移動体であって、前記車輪を回転させるモータと、前記モータの回転角を検出する第１の回転角検出部と、前記モータの回転角を検出する第２の回転角検出部と、前記同軸二輪移動体のヨー角速度を検出するヨー角速度検出センサと、前記第１の回転角検出部及び前記第２の回転角検出部のそれぞれが検出した前記モータの回転角のうち、少なくとも１つに基づいて前記モータを駆動することで前記同軸二輪移動体を制御する制御部と、を備え、前記制御部は、前記第１の回転角検出部が検出した前記モータの回転角と、前記第２の回転角検出部が検出した前記モータの回転角とを比較する第１の比較、及び、前記第１の回転角検出部が検出した前記モータの回転角に基づいて算出した前記同軸二輪移動体のヨー角速度と、前記ヨー角速度検出センサが検出した前記同軸二輪移動体のヨー角速度とを比較する第２の比較を実施し、前記第１の比較及び前記第２の比較の結果に基づいて、前記第１の回転角検出部及び前記第２の回転角検出部のうち、異常となっている回転角検出部を検出し、検出結果に応じた前記同軸二輪移動体の制御を行うものである。
【０００９】
本発明の第２の態様にかかる制御方法は、第１の回転角検出部及び第２の回転角検出部のそれぞれが検出したモータの回転角のうち、少なくとも１つに基づいて、前記モータを駆動することで車輪を回転させて移動する同軸二輪移動体を制御する制御方法であって、前記第１の回転角検出部が検出した前記モータの回転角と、前記第２の回転角検出部が検出した前記モータの回転角とを比較する第１の比較、及び、前記第１の回転角検出部が検出した前記モータの回転角に基づいて算出した前記同軸二輪移動体のヨー角速度と、ヨー角速度検出部が検出した前記同軸二輪移動体のヨー角速度とを比較する第２の比較を実施するステップと、前記第１の比較及び前記第２の比較の結果に基づいて、前記第１の回転角検出部及び前記第２の回転角検出部のうち、異常となっている回転角検出部を検出するステップと、前記検出結果に応じた前記同軸二輪移動体の制御を行うステップと、を備えたものである。
【発明の効果】
【００１０】
上述した本発明の各態様によれば、動的安定性を向上することができる同軸二輪移動体及びその制御方法を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態に係る倒立二輪車の概要構成を示す図である。
【図２】実施の形態に係る制御装置の構成を示すブロック図である。
【図３】実施の形態に係るセンサ、ＲＤＣ及びマイコンの接続関係を示す図である。
【図４】実施の形態に係る倒立二輪車の故障診断処理を示すフローチャートである。
【図５】実施の形態に係る倒立二輪車の故障診断処理を示すフローチャートである。
【図６】実施の形態に係る倒立二輪車の故障診断処理を示すフローチャートである。
【図７】実施の形態に係る倒立二輪車の故障診断処理を示すフローチャートである。
【図８】実施の形態に係る倒立二輪車の故障診断処理を示すフローチャートである。
【図９】他の実施の形態に係るセンサとマイコンの接続関係を示す図である。
【発明を実施するための形態】
【００１２】
以下に図面を参照しながら、本発明の好適な実施の形態について説明する。以下の実施の形態に示す具体的な数値等は、発明の理解を容易とするための例示にすぎず、特に断る場合を除き、それに限定されるものではない。また、以下の記載及び図面では、説明の明確化のため、当業者にとって自明な事項等については、適宜、省略及び簡略化がなされている。
【００１３】
＜発明の実施の形態＞
図１を参照して、実施の形態にかかる倒立二輪車１の概要構成について説明する。図１は、実施の形態にかかる倒立二輪車１の概要構成を示す図である。
【００１４】
倒立二輪車１は、ステップカバー３に搭乗した搭乗者が、倒立二輪車１の前後方向に荷重を作用させた際における、前後方向への倒立二輪車１の姿勢角（ピッチ角）をセンサを利用して検出し、この検出結果に基づいて、倒立二輪車１の倒立状態を維持するように左右の車輪２を駆動するモータを制御する。すなわち、倒立二輪車１は、ステップカバー３に搭乗した搭乗者が前方に荷重を作用させて倒立二輪車１を前方に傾斜させると、倒立二輪車１の倒立状態を維持するように前方に加速し、搭乗者が後方に荷重を作用させて倒立二輪車１を後方に傾斜させると、倒立二輪車１の倒立状態を維持するように後方に加速するように、左右の車輪２を駆動するモータを制御する。倒立二輪車１は、制御の安定性を確保するために、モータを制御する制御系が２重化されている。
【００１５】
なお、これらのモータの制御は、倒立二輪車１に搭載された制御装置１０によって行われる。
【００１６】
続いて、図２を参照して、実施の形態にかかる制御装置１０の構成について説明する。図２を参照して、実施の形態にかかる制御装置１０の構成を示すブロック図である。
【００１７】
制御装置１０は、マイクロコントローラ１１、１２（以下、「マイコン」とも呼ぶ）、インバータ１３〜１６、モータ１７、１８、回転角センサ１９〜２２、レゾルバ‐デジタル変換器（以下、「ＲＤＣ」とも呼ぶ）２３〜２６、及びジャイロセンサ２７〜３０を有する。
【００１８】
制御装置１０は、倒立二輪車１の制御の安定性を確保するために、その制御系を、１系の制御系と２系の制御系とに二重化させた二重系システムとなっている。１系の制御系は、マイコン１１、インバータ１３、１４、回転角センサ１９、２０、ＲＤＣ２３、２４、及びジャイロセンサ２７、２８を含む。２系の制御系は、マイコン１２、インバータ１５、１６、回転角センサ２１、２２、ＲＤＣ２５、２６、及びジャイロセンサ２９、３０を含む。
【００１９】
マイコン１１、１２のそれぞれは、ジャイロセンサ２７、２８及びジャイロセンサ２９、３０のそれぞれから出力される角速度信号に基づいて、上述したように、倒立状態を維持するようにモータ１７、１８を制御するＥＣＵ（Electronic Control Unit）である。マイコン１１、１２のそれぞれは、ＣＰＵ（Central Processing Unit）及び記憶部を有し、記憶部に格納されたプログラムを実行することによって、本実施の形態におけるマイコン１１、１２のそれぞれとしての処理を実行する。すなわち、マイコン１１、１２のそれぞれの記憶部に格納されるプログラムは、本実施の形態におけるマイコン１１、１２のそれぞれにおける処理を、ＣＰＵに実行させるためのコードを含む。なお、記憶部は、例えば、このプログラムや、ＣＰＵにおける処理に利用される各種情報を格納することができる任意の記憶装置を含んで構成される。記憶装置は、例えば、メモリ等である。
【００２０】
マイコン１１は、モータ１７を制御する指令値をインバータ１３に出力する。また、マイコン１１は、モータ１８を制御する指令値をインバータ１４に出力する。マイコン１２は、モータ１７を制御する指令値をインバータ１５に出力する。また、マイコン１２は、モータ１８を制御する指令値をインバータ１６に出力する。具体的には、マイコン１１、１２のそれぞれは、ジャイロセンサ２７、２９のそれぞれから出力される角速度信号が示す倒立二輪車１のピッチ軸周りの角速度（ピッチ角速度）を積分することで倒立二輪車１の前後方向の姿勢角（ピッチ角）を算出し、算出した姿勢角に基づいて倒立二輪車１の倒立状態を維持するようにモータ１７、１８を制御する指令値を生成する。
【００２１】
ここで、制御装置１０は、ジャイロセンサ２７、２９に代えて、倒立二輪車１の前後方向の姿勢角（ピッチ角）を検出し、検出した姿勢角を示す姿勢角信号をマイコン１１、１２のそれぞれ出力する姿勢角センサを有するようにしてもよい。姿勢角センサは、例えば、加速度センサ及びジャイロセンサによって、倒立二輪車１の姿勢角を検出するように構成される。そして、マイコン１１、１２のそれぞれは、姿勢角センサから出力された姿勢角信号が示す姿勢角に基づいて、倒立状態を維持するようにモータ１７、１８を制御する指令値を生成するようにしてもよい。
【００２２】
また、マイコン１１、１２のそれぞれは、ＲＤＣ２３、２５のそれぞれから出力される、モータ１７の回転角を示す回転角信号に基づいて、モータ１７をフィードバック制御するように、インバータ１３、１５のそれぞれに対する指令値を生成する。また、マイコン１１、１２のそれぞれは、ＲＤＣ２４、２６のそれぞれから出力される、モータ１８の回転角を示す回転角信号に基づいて、モータ１８をフィードバック制御するように、インバータ１４、１６のそれぞれに対する指令値を生成する。
【００２３】
ここで、マイコン１１は、ＲＤＣ２３及びＲＤＣ２５のうち、少なくもいずれか１つから出力される回転角信号に基づいて、モータ１７をフィードバック制御するようにすればよいが、原則、同じ制御系に含まれるＲＤＣ２３からの回転角信号のみを利用する。また、マイコン１１は、ＲＤＣ２４及びＲＤＣ２６のうち、少なくもいずれか１つから出力される回転角信号に基づいて、モータ１８をフィードバック制御するようにすればよいが、原則、同じ制御系に含まれるＲＤＣ２４からの回転角信号のみを利用する。同様に、マイコン１２は、ＲＤＣ２３及びＲＤＣ２５のうち、少なくもいずれか１つから出力される回転角信号に基づいて、モータ１７をフィードバック制御するようにすればよいが、原則、同じ制御系に含まれるＲＤＣ２５からの回転角信号のみを利用する。また、マイコン１２は、ＲＤＣ２４及びＲＤＣ２６のうち、少なくもいずれか１つから出力される回転角信号に基づいて、モータ１８をフィードバック制御するようにすればよいが、原則、同じ制御系に含まれるＲＤＣ２６からの回転角信号のみを利用する。
【００２４】
インバータ１３は、マイコン１１から出力された指令値に基づいて、ＰＷＭ（Pulse Width Modulation）制御を行うことで、モータ１７を駆動する駆動電流を生成してモータ１７に供給する。インバータ１４は、マイコン１１から出力された指令値に基づいて、ＰＷＭ制御を行うことで、モータ１８を駆動する駆動電流を生成してモータ１８に供給する。インバータ１５は、マイコン１２から出力された指令値に基づいて、ＰＷＭ制御を行うことで、モータ１７を駆動する駆動電流を生成してモータ１７に供給する。インバータ１６は、マイコン１２から出力された指令値に基づいて、ＰＷＭ制御を行うことで、モータ１８を駆動する駆動電流を生成してモータ１８に供給する。
【００２５】
モータ１７、１８のそれぞれは、二重巻線のモータである。モータ１７は、インバータ１３から供給される駆動電流と、インバータ１５から供給される駆動電流とに基づいて駆動される。モータ１７を駆動することによって、倒立二輪車１の左側の車輪２が回転する。モータ１８は、インバータ１４から供給される駆動電流と、インバータ１６から供給される駆動電流とに基づいて駆動される。モータ１８を駆動することによって、倒立二輪車１の右側の車輪２が回転する。
【００２６】
回転角センサ１９は、モータ１７の回転角を検出し、検出した回転角を示す回転角信号を生成してＲＤＣ２３に出力する。回転角センサ２０は、モータ１８の回転角を検出し、検出した回転角を示す回転角信号を生成してＲＤＣ２４に出力する。回転角センサ２１は、モータ１７の回転角を検出し、検出した回転角を示す回転角信号を生成してＲＤＣ２５に出力する。回転角センサ２２は、モータ１８の回転角を検出し、検出した回転角を示す回転角信号を生成してＲＤＣ２６に出力する。
【００２７】
ＲＤＣ２３は、回転角センサ１９から出力された回転角信号をデジタル形式にＡ／Ｄ変換し、Ａ／Ｄ変換後の回転角信号をマイコン１１、１２のそれぞれに出力する。ＲＤＣ２４は、回転角センサ２０から出力された回転角信号をデジタル形式にＡ／Ｄ変換し、Ａ／Ｄ変換後の回転角信号をマイコン１１、１２のそれぞれに出力する。ＲＤＣ２５は、回転角センサ２１から出力された回転角信号をデジタル形式にＡ／Ｄ変換し、Ａ／Ｄ変換後の回転角信号をマイコン１１、１２のそれぞれに出力する。ＲＤＣ２６は、回転角センサ２２から出力された回転角信号をデジタル形式にＡ／Ｄ変換し、Ａ／Ｄ変換後の回転角信号をマイコン１１、１２のそれぞれに出力する。
【００２８】
ジャイロセンサ２７、２９のそれぞれは、搭乗者がステップカバー３に対して、倒立二輪車１の前後方向に荷重を作用させた際における、倒立二輪車１の前後方向に対する角速度（ピッチ軸周りの角速度、ピッチ角速度）を検出し、検出したピッチ角速度を示す角速度信号をマイコン１１、１２のそれぞれに出力する。
【００２９】
ジャイロセンサ２９、３０のそれぞれは、倒立二輪車１のヨー軸周りの角速度（以下、「ヨー角速度」とも呼ぶ）を検出し、検出したヨー角速度を示す角速度信号をマイコン１１、１２のそれぞれに出力する。
【００３０】
ここで、マイコン１１、１２のそれぞれは、倒立二輪車１が倒立二輪車１の左右方向に傾斜する坂道を走行している場合には、上述の各角速度信号から得られたピッチ角速度とヨー角速度に対して回転行列計算を行うことで、倒立二輪車１の左右水平方向の軸周りの角速度を算出し、算出した角速度をピッチ角速度として利用することで、倒立二輪車１の倒立状態を維持するようにモータ１７、１８を制御する指令値を生成する。これによれば、倒立二輪車１が左右方向に傾斜する坂道を走行している場合であっても、倒立二輪車１の前後方向の姿勢角に基づいて、倒立二輪車１の倒立状態を維持するように倒立二輪車１を制御することも可能である。
【００３１】
また、マイコン１１、１２のそれぞれは、ジャイロセンサ２８、３０のそれぞれから出力される角速度信号が示すヨー角速度に基づいて、他の任意の倒立二輪車１の制御を行うようにしてもよい。例えば、マイコン１１、１２のそれぞれは、倒立二輪車１の急激な旋回を防止するために、ジャイロセンサ２８、３０のそれぞれから出力される角速度信号が示すヨー角速度が所定のヨー角速度を超えていると判断した場合に、それ以上のヨー角速度で倒立二輪車１が旋回しないように、モータ１７、１８を制御する指令値を生成するようにしてもよい。
【００３２】
続いて、図３を参照して、実施の形態にかかるセンサ１９〜２２、２８、３０、ＲＤＣ２３〜２６、及びマイコン１１、１２の接続関係について説明する。図３は、実施の形態にかかる１９〜２２、２８、３０、ＲＤＣ２３〜２６、及びマイコン１１、１２の接続関係を示す図である。
【００３３】
ここで、ＲＤＣ２３〜２６のそれぞれは、Ａ／Ｄ変換後の回転角信号として、パラレル信号と、ＡＢ相信号（Ａ相の信号及びＢ相の信号）とを生成する。具体的には、パラレル信号は、モータ１７、１８の回転角を絶対角度で示す信号となる。パラレル信号は、その出力時点におけるモータ１７、１８の回転角を示す。パラレル信号は、例えば、１２本の電気信号によって構成される。ＡＢ相信号は、モータ１７、１８の回転角を相対角度で示す信号となる。ＡＢ相信号は、その出力開始時点（制御装置１０の電源投入時点）からのパルスをカウントすることで、その出力開始時点からの相対角度が算出可能な信号である。ＡＢ相信号は、例えば、Ａ相とＢ相のそれぞれを示す２本の電気信号によって構成される。なお、ＡＢ相信号に代えて、ＡＢＺ信号（Ａ相の信号、Ｂ相の信号、及びＺ相の信号）を出力するＲＤＣを利用するようにしてもよい。
【００３４】
ＲＤＣ２３、２４のそれぞれは、パラレル信号を伝達するパラレル信号線でマイコン１１と結線され、ＡＢ相信号を伝達するＡＢ相信号線でマイコン１２と結線されている。ＲＤＣ２５、２６のそれぞれは、ＡＢ相信号を伝達するＡＢ相信号線でマイコン１１と結線され、パラレル信号を伝達するパラレル信号線でマイコン１２と結線されている。
【００３５】
このような構成によって、マイコン１１は、ＲＤＣ２３からの左のモータ１７の回転角を示すパラレル信号と、ＲＤＣ２４からの右のモータ１８の回転角を示すパラレル信号と、ＲＤＣ２５からの左のモータ１７の回転角を示すＡＢ相信号と、ＲＤＣ２６からの右のモータ１８の回転角を示すＡＢ相信号を受け取る。
【００３６】
また、マイコン１２は、ＲＤＣ２３からの左のモータ１７の回転角を示すＡＢ相信号と、ＲＤＣ２４からの右のモータ１８の回転角を示すＡＢ相信号と、ＲＤＣ２５からの左のモータ１７の回転角を示すパラレル信号と、ＲＤＣ２６からの右のモータ１８の回転角を示すパラレル信号を受け取る。
【００３７】
ジャイロセンサ２８は、角速度信号を伝達する信号線でマイコン１１と結線されている。ジャイロセンサ３０は、角速度信号を伝達する信号線でマイコン１２と結線されている。マイコン１１及びマイコン１２は、それらの間で任意の情報を送受信可能とする信号線で結線されている。
【００３８】
マイコン１１は、ジャイロセンサ２８からの倒立二輪車１のヨー角速度を示す角速度信号を受け取るとともに、そのヨー角速度を示す角速度情報を生成してマイコン１２に出力する。マイコン１２は、ジャイロセンサ３０からの倒立二輪車１のヨー角速度を示す角速度信号を受け取るとともに、そのヨー角速度を示す角速度情報を生成してマイコン１１に出力する。
【００３９】
本実施の形態では、マイコン１１、１２のそれぞれは、これらの受け取った信号及び情報に基づいて導出されるモータ１７、１８の回転角及びヨー角速度を相互比較することで、ＲＤＣ２３〜２６及びジャイロセンサ２８、３０の故障を検出するとともに、その中から故障しているＲＤＣ又はジャイロセンサを特定する。マイコン１１、１２のそれぞれは、ＲＤＣ又はジャイロセンサの故障を検出した場合には、所定の安全機能を発動する。すなわち、マイコン１１、１２のそれぞれは、故障していると特定したＲＤＣ又はジャイロセンサを縮退して、正常に動作しているＲＤＣ及びジャイロセンサを利用して倒立二輪車１の倒立制御を継続する。このように、本実施の形態では、故障しているＲＤＣ又はジャイロセンサを特定し、正常に動作しているＲＤＣ及びジャイロセンサを利用して倒立二輪車１の制御を継続することができるため、動的安定性を向上することができる。
【００４０】
続いて、図４〜図９を参照して、実施の形態１にかかる倒立二輪車１の故障診断処理について説明する。図４〜図９は、実施の形態１にかかる倒立二輪車１の故障診断処理を示すフローチャートである。
【００４１】
以下、１系のマイコン１１において故障診断処理を実施する場合について説明するが、２系のマイコン１２においても同様に故障診断処理が実施される。まず、図４を参照して、故障診断処理の概要について説明する。
【００４２】
マイコン１１は、所定の故障診断タイミングとなった場合に、故障診断ロジックを実行し（Ｓ１）、ＲＤＣ２３〜２６及びジャイロセンサ２８、３０のいずれかの故障が発生しているか否かを判定する（Ｓ２）。ここで、所定の故障診断タイミングとは、例えば、所定の一定時間間隔毎のタイミングである。
【００４３】
ＲＤＣ２３〜２６及びジャイロセンサ２８、３０のいずれも故障が発生していないと判定した場合（Ｓ２：Ｙｅｓ）、マイコン１１は、倒立二輪車１が正常に動作していると判断して、倒立二輪車１の通常の倒立制御を継続する（Ｓ３）。
【００４４】
ＲＤＣ２３〜２６及びジャイロセンサ２８、３０のいずれかの故障が発生していると判定した場合（Ｓ２：Ｎｏ）、マイコン１１は、故障状態に応じた処理を行う（Ｓ４）。すなわち、マイコン１１は、故障しているＲＤＣ又はジャイロセンサを縮退して、正常に動作しているＲＤＣ及びジャイロセンサを利用して倒立二輪車１の制御を実施する。ここで、この制御として、倒立二輪車１を倒立制御しつつ継続して走行させる制御を行うようにしてもよく、倒立二輪車１を倒立制御しつつ停止させる制動制御を行うようにしてもよい。
【００４５】
続いて、図５〜図８を参照して、故障診断処理の詳細について説明する。以下、１系のマイコン１１において故障診断処理を実施する場合について説明するが、２系のマイコン１２においても同様に故障診断処理が実施される。なお、２系のマイコン１２において実施する場合は、図５〜図８及びその説明における１系と２系の関係が逆になり、同様の処理が行われることになるため、説明を省略する。まず、図５を参照して、故障診断処理の詳細について説明する。なお、図５のステップＳ１１〜１４は、図４のステップＳ１、２に対応し、図５のステップＳ１６は、図４のステップＳ３に対応し、図５のステップＳ１７〜Ｓ１９は、図４のステップＳ４に対応する。
【００４６】
マイコン１１は、１系のＲＤＣ２３、２４から通知されたモータ１７、１８の回転角のそれぞれと、２系のＲＤＣ２５、２６から通知されたモータ１７、１８の回転角のそれぞれとを比較し、比較した回転角に所定角度以上のズレがあるか否かを判定する（Ｓ１１）。
【００４７】
具体的には、マイコン１１は、１系のＲＤＣ２３から出力されたパラレル信号が示すモータ１７の回転角と、２系のＲＤＣ２５から出力されたＡＢ相信号が示すモータ１７の回転角とを比較し、比較した回転角に所定角度以上のズレがあるか否かを判定する。また、マイコン１１は、１系のＲＤＣ２４から出力されたパラレル信号が示すモータ１８の回転角と、２系のＲＤＣ２６から出力されたＡＢ相信号が示すモータ１８の回転角とを比較し、それぞれの回転角に所定角度以上のズレがあるか否かを判定する。
【００４８】
比較した回転角に所定角度以上のズレがある（不一致）と判定した場合（Ｓ１１：Ｎｏ）、ＲＤＣ２３〜２６のうち、少なくともいずれかが故障しており、正常にモータの回転角を検出することができていないことになる。例えば、ＲＤＣ２３が通知したモータ１７の回転角と、ＲＤＣ２５が通知したモータ１７の回転角に所定角度以上のズレがある場合、ＲＤＣ２３及びＲＤＣ２５のうち、少なくともいずれかが故障していることになる。また、ＲＤＣ２４が通知したモータ１８の回転角と、ＲＤＣ２６が通知したモータ１８の回転角に所定角度以上のズレがある場合、ＲＤＣ２４及びＲＤＣ２６のうち、少なくともいずれかが故障していることになる。この場合、マイコン１１は、さらに故障しているＲＤＣを特定する処理を実施するが、その処理については図７を参照して後述する。
【００４９】
比較した回転角に所定角度以上のズレがない（一致）と判定した場合（Ｓ１１：Ｙｅｓ）、ＲＤＣ２３〜２６のいずれも故障しておらず、正常にモータの回転角を検出することができている。この場合、マイコン１１は、１系のジャイロセンサ２８が検出したヨー角速度と、２系のジャイロセンサ３０が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ１２）。
【００５０】
具体的には、マイコン１１は、ジャイロセンサ２７から出力された角速度信号が示すヨー角速度と、マイコン１２から出力された角速度情報が示すヨー角速度とを比較し、比較したヨー角速度に所定角度以上のズレがあるか否かを判定する。なお、マイコン１２から出力される角速度情報は、上述したように、ジャイロセンサ３０が検出したヨー角速度を示す情報となる。
【００５１】
比較したヨー角速度に所定角度以上のズレがある（不一致）と判定した場合（Ｓ１２：Ｎｏ）、ジャイロセンサ２８、３０のうち、少なくともいずれかが故障しており、正常にヨー角速度を検出することができていないことになる。この場合、マイコン１１は、さらに故障しているジャイロセンサを特定する処理を実施するが、その処理については図６を参照して後述する。
【００５２】
比較したヨー角速度に所定角度以上のズレがない（一致）と判定した場合（Ｓ１２：Ｙｅｓ）、ジャイロセンサ２８、３０のいずれも故障しておらず、正常にヨー角速度を検出することができていることになる。この場合、１系のＲＤＣ２３、２４から通知されたモータ１７、１８の回転角に基づくヨー角速度と、１系のジャイロセンサ２８が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ１３）。
【００５３】
具体的には、マイコン１１は、ＲＤＣ２３から出力されたパラレル信号が示すモータ１７の回転角と、ＲＤＣ２４から出力されたパラレル信号が示すモータ１８の回転角に基づいてヨー角速度を算出する。なお、モータ１７、１８の回転角に基づいたヨー角速度の算出は、車輪２の直径等を考慮して一般的に考えられる任意の手法により行うようにすればよい。以降の説明においても同様である。そして、マイコン１１は、算出したヨー角速度と、ジャイロセンサ２８から出力された角速度信号が示すヨー角速度とを比較し、比較したヨー角速度に所定角度以上のズレがあるか否かを判定する。
【００５４】
比較したヨー角速度に所定角度以上のズレがない（一致）と判定した場合（Ｓ１３：Ｙｅｓ）、マイコン１１は、２系のＲＤＣ２４、２６から通知されたモータ１７、１８の回転角に基づくヨー角速度と、２系のジャイロセンサ３０が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ１４）。
【００５５】
具体的には、マイコン１１は、ＲＤＣ２５から出力されたＡＢ相信号が示すモータ１７の回転角と、ＲＤＣ２６から出力されたＡＢ相信号が示すモータ１８の回転角に基づいてヨー角速度を算出する。そして、マイコン１１は、算出したヨー角速度と、マイコン１２から出力された角速度情報が示すヨー角速度とを比較し、比較したヨー角速度に所定角度以上のズレがあるか否かを判定する。
【００５６】
比較したヨー角速度に所定角度以上のズレがない（一致）と判定した場合（Ｓ１４：Ｙｅｓ）、ＲＤＣ２３〜２６のいずれも故障しておらず、かつ、ジャイロセンサ２８、３０のいずれも故障していないことになる。よって、ＲＤＣ２３〜２６及びジャイロセンサ２８、３０のいずれも故障しておらず、倒立二輪車１が正常に動作していることになる（Ｓ１６）。そのため、マイコン１１は、そのまま倒立二輪車１の制御を継続する。
【００５７】
比較したヨー角速度に所定角度以上のズレがある（不一致）と判定した場合（Ｓ１４：Ｎｏ）は、一般的には起こりえない。ステップＳ１１、１２でＲＤＣ２３〜２６及びジャイロセンサ２８、３０のいずれも故障していないと判定されている状況下で、ＲＤＣ２５、２６から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ３０が検出したヨー角速度が一致しないことは考えにくいからである。よって、この場合は、マイコン１１が正常に動作して判定を行うことができなくなる、マイコン１１に関連する故障が発生していることが考えられる。ここで、マイコン１１に関連する故障として、例えば、マイコン１１の（Random Access Memory）又はＲＯＭ（Read Only Memory）の故障、マイコン１１へクロック信号を供給する回路の故障、もしくは、マイコン１１の電源の故障等が考えられる。そのため、マイコン１１は、マイコン１１に関連する故障に応じた処理を行う（Ｓ１７）。
【００５８】
具体的には、マイコン１１は、自マイコン１１を縮退して、正常に動作しているマイコン１２のみを利用して倒立二輪車１の制御を行うための処理を実施する。例えば、マイコン１１は、モータ１７、１８の制御を停止する。すなわち、マイコン１１を含む１系の制御系が縮退される。これにより、関連する故障が発生していると判定したマイコン１１を利用せずに、２系のマイコン１２による倒立二輪車１の制御が継続される。また、この場合、２系のマイコン１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。例えば、マイコン１１は、１系のマイコン１１に関連する故障を通知する故障通知信号をマイコン１２に出力する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、倒立二輪車１を停止させる制動制御を実施する。
【００５９】
一方、比較したヨー角速度に所定角度以上のズレがある（不一致）と判定した場合（Ｓ１３：Ｙｅｓ）、マイコン１１は、上述したステップＳ１４と同様に、２系のＲＤＣ２５、２６から通知されたモータ１７、１８の回転角に基づくヨー角速度と、２系のジャイロセンサ３０が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ１５）。
【００６０】
比較したヨー角速度に所定角度以上のズレがない（一致）と判定した場合（Ｓ１５：Ｙｅｓ）は、一般的には起こりえない。ステップＳ１１、１２でＲＤＣ２３〜２６及びジャイロセンサ２８、３０のいずれも故障していないと判定されている状況下で、ステップＳ１３でＲＤＣ２３、２４から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８が検出したヨー角速度が一致しないことは考えにくいからである。よって、この場合は、マイコン１１に関連する故障が発生していることが考えられる。そのため、マイコン１１は、マイコン１１に関連する故障に応じた処理を行う（Ｓ１８）。
【００６１】
また、比較したヨー角速度に所定角度以上のズレがある（不一致）と判定した場合（Ｓ１５：Ｎｏ）も、一般的には起こりえない。ステップＳ１１、１２でＲＤＣ２３〜２６及びジャイロセンサ２８、３０のいずれも故障していないと判定されている状況下で、ＲＤＣ２３、２４又は２５、２６から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８又はジャイロセンサ３０が検出したヨー角速度がいずれも一致しないことは考えにくいからである。よって、この場合は、マイコン１１に関連する故障が発生していることが考えられる。そのため、マイコン１１は、マイコン１１に関連する故障に応じた処理を行う（Ｓ１９）。
【００６２】
具体的には、ステップＳ１８、Ｓ１９では、Ｓ１７と同様に、マイコン１１は、関連する故障が発生していると判定した自マイコン１１を縮退して、正常に動作しているマイコン１２のみを利用して倒立二輪車１の制御を行うための処理を実施する。
【００６３】
続いて、図６を参照して、故障診断処理の詳細について説明する。マイコン１１は、図５のステップＳ１２によって、ジャイロセンサ２８、３０のうち、少なくともいずれかが故障していると判定された場合に、図６に示す処理を実行することで、故障しているジャイロセンサを特定する。図６のステップＳ２１〜Ｓ２３は、図４のステップＳ１、２に対応し、図６のステップＳ２５〜Ｓ２７は、図４のステップＳ４に対応する。
【００６４】
マイコン１１は、上述したステップＳ１３と同様に、１系のＲＤＣ２３、２４から通知されたモータ１７、１８の回転角に基づくヨー角速度と、１系のジャイロセンサ２８が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ２１）。
【００６５】
比較したヨー角速度に所定角度以上のズレがない（一致）と判定した場合（Ｓ２１：Ｙｅｓ）、マイコン１１は、上述したステップＳ１４と同様に、２系のＲＤＣ２４、２６から通知されたモータ１７、１８の回転角に基づくヨー角速度と、２系のジャイロセンサ３０が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ２２）。
【００６６】
比較したヨー角速度に所定角度以上のズレがない（一致）と判定する場合（Ｓ２２：Ｙｅｓ）は、一般的には起こりえない。ステップＳ１２でジャイロセンサ２８、３０のうち、少なくともいずれかが故障していると判定されている状況下で、ＲＤＣ２３、２４又は２５、２６から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８又はジャイロセンサ３０が検出したヨー角速度がいずれも一致しないことは考えにくいからである。よって、この場合は、マイコン１１に関連する故障が発生していることが考えられる。そのため、マイコン１１は、マイコン１１に関連する故障に応じた処理を行う（Ｓ２４）。
【００６７】
具体的には、ステップＳ２４では、Ｓ１７と同様に、マイコン１１は、関連する故障が発生していると判定した自マイコン１１を縮退して、正常に動作しているマイコン１２のみを利用して倒立二輪車１の制御を行うための処理を実施する。
【００６８】
比較したヨー角速度に所定角度以上のズレがある（不一致）と判定した場合（Ｓ２２：Ｎｏ）、ジャイロセンサ３０が検出したヨー角速度は、ジャイロセンサ２８が検出したヨー角速度にも、ＲＤＣ２５、２６から通知されたモータ１７、１８の回転角に基づくヨー角速度にも一致しないため、ジャイロセンサ３０が故障しており、正常にヨー角速度を検出できていないことになる。そのため、マイコン１１は、ジャイロセンサ３０の故障に応じた処理を行う（Ｓ２５）。
【００６９】
具体的には、マイコン１１は、故障していると判定したジャイロセンサ３０を縮退して、正常に動作しているジャイロセンサ２８のみを利用して倒立二輪車１の制御を実施する。例えば、マイコン１１は、ジャイロセンサ３０の故障を通知する故障通知信号をマイコン１２に出力する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、モータ１７、１８の制御を停止する。すなわち、故障したジャイロセンサ３０を含む２系の制御系が縮退される。これにより、マイコン１１によって、故障したジャイロセンサ３０を利用せずに、１系のＲＤＣ２３、２４及びジャイロセンサ２８を利用した倒立二輪車１の制御が実施される。また、この場合、マイコン１１は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【００７０】
また、マイコン１２は、故障したジャイロセンサ３０を利用せずに、倒立二輪車１の制御を実施するようにしてもよい。例えば、マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、以降、マイコン１１から出力される角速度情報が示すジャイロセンサ２８のピッチ角速度に基づいて倒立二輪車１の制御を実施する。また、この場合、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【００７１】
一方、比較したヨー角速度に所定角度以上のズレがある（不一致）と判定した場合（Ｓ２２：Ｙｅｓ）、マイコン１１は、上述したステップＳ１４と同様に、２系のＲＤＣ２５、２６から通知されたモータ１７、１８の回転角に基づくヨー角速度と、２系のジャイロセンサ３０が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ２３）。
【００７２】
比較したヨー角速度に所定角度以上のズレがないと判定した場合（Ｓ２３：Ｙｅｓ）、ジャイロセンサ２８が検出したヨー角速度は、ジャイロセンサ３０が検出したヨー角速度にも、ＲＤＣ２３、２４から通知されたモータ１７、１８の回転角に基づくヨー角速度にも一致しないため、ジャイロセンサ２８が故障しており、正常にヨー角速度を検出できていないことになる。そのため、マイコン１１は、ジャイロセンサ２８の故障に応じた処理を行う（Ｓ２６）。
【００７３】
具体的には、マイコン１１は、故障していると判定したジャイロセンサ２８を縮退して、正常に動作しているジャイロセンサ３０のみを利用して倒立二輪車１の制御を実施する。例えば、マイコン１１は、モータ１７、１８の制御を停止する。すなわち、故障したジャイロセンサ２８を含む１系の制御系が縮退される。これにより、マイコン１２によって、故障したジャイロセンサ２８を利用せずに、２系のＲＤＣ２５、２６及びジャイロセンサ３０を利用したマイコン１２による倒立二輪車１の制御が実施される。また、この場合、２系のマイコン１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。例えば、マイコン１１は、ジャイロセンサ２８の故障を通知する故障通知信号をマイコン１２に出力する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、倒立二輪車１を停止させる制動制御を実施する。
【００７４】
また、マイコン１１は、故障したジャイロセンサ２８を利用せずに、倒立二輪車１の制御を実施させるようにしてもよい。例えば、マイコン１１は、以降、マイコン１２から出力される角速度情報が示すジャイロセンサ３０のピッチ角速度に基づいて倒立二輪車１の制御を実施する。また、この場合、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。例えば、マイコン１１は、倒立二輪車１を停止させる制動制御を実施するとともに、ジャイロセンサ２８の故障を通知する故障通知信号をマイコン１２に出力する。マイコン１２も、マイコン１１からの故障通知信号の出力に応じて、倒立二輪車１を停止させる制動制御を実施する。
【００７５】
比較したヨー角速度に所定角度以上のズレがあると判定した場合（Ｓ２３：Ｎｏ）、ステップＳ１１でＲＤＣ２３〜２６のいずれも故障していないと判定されており、かつ、ステップＳ１２でジャイロセンサ２８、３０のうち、少なくともいずれかが故障していると判定されている状況下で、ＲＤＣ２３、２５及びＲＤＣ２４、２６のそれぞれから通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８、３０のそれぞれが検出したヨー角速度がいずれも不一致となっているため、ジャイロセンサ２８、３０のいずれも故障しており（２重故障）、正常にヨー角速度を検出することができていないことになる。そのため、マイコン１１は、ジャイロセンサ２８、３０の故障に応じた処理を行う（Ｓ２７）。
【００７６】
具体的には、マイコン１１、１２は、１系のジャイロセンサ２８と２系のジャイロセンサ３０の両方が故障してしまっているため、故障が検出されたジャイロセンサ２８、３０は利用せずに、故障が検出されていないＲＤＣ２３〜２６を利用して、倒立二輪車１の制御を実施する。例えば、マイコン１１は、以降、故障が検出されたジャイロセンサ２８は利用せず、故障が検出されていないＲＤＣ２３、２４のみを利用して、倒立二輪車１の制御を実施する。また、マイコン１１は、１系及び２系のジャイロセンサ２８、３０の故障を通知する故障通知信号をマイコン１２に出力する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、以降、故障が検出されたジャイロセンサ３０は利用せず、故障が検出されていないＲＤＣ２５、２６のみを利用して、倒立二輪車１の制御を実施する。また、この場合、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【００７７】
また、マイコン１１は、ジャイロセンサ２８が検出するヨー角速度に代えて、ＲＤＣ２３、２４から通知されたモータ１７、１８の回転角から算出したヨー角速度を利用して倒立二輪車１を制御するようにし、マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、ジャイロセンサ３０が検出するヨー角速度に代えて、ＲＤＣ２５、２６から通知されたモータ１７、１８の回転角から算出したヨー角速度を利用して倒立二輪車１を制御するようにしてもよい。また、この場合、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【００７８】
続いて、図７を参照して、故障診断処理の詳細について説明する。マイコン１１は、図５のステップＳ１１によって、ＲＤＣ２３〜２６のうち、少なくともいずれかが故障していると判定された場合に、図７に示す処理を実行することで、故障しているＲＤＣを特定する。図７のステップＳ３１〜Ｓ３３は、図４のステップＳ１、２に対応し、図７のステップＳ３６〜Ｓ３８は、図４のステップＳ４に対応する。
【００７９】
マイコン１１は、上述したステップＳ１２と同様に、１系のジャイロセンサ２８が検出したヨー角速度と、２系のジャイロセンサ３０が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ３１）。
【００８０】
比較したヨー角速度に所定角度以上のズレがあると判定した場合（Ｓ３１：Ｎｏ）、ジャイロセンサ２８、３０のうち、少なくともいずれかが故障しており、正常にヨー角速度を検出することができていないことになる。すなわち、ステップＳ１１の判定結果も考慮すると、ＲＤＣ２３〜２６のうち、少なくともいずれかが故障しており、かつ、ジャイロセンサ２８、３０のうち、少なくともいずれかも故障していることになる。この場合、マイコン１１は、さらに故障しているＲＤＣ及びジャイロセンサを特定する処理を実施するが、その処理については図８を参照して後述する。
【００８１】
比較したヨー角速度に所定角度以上のズレがないと判定した場合（Ｓ３１：Ｙｅｓ）、ジャイロセンサ２８、３０のいずれも故障しておらず、正常にヨー角速度を検出することができていることになる。すなわち、ステップＳ１１の判定結果も考慮すると、ＲＤＣ２３〜２６のうち、少なくともいずれかが故障しているが、ジャイロセンサ２８、３０のいずれも故障していないことになる。この場合、マイコン１１は、上述したステップＳ１３と同様に、１系のＲＤＣ２３、２４から通知されたモータ１７、１８の回転角に基づくヨー角速度と、１系のジャイロセンサ２８が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ３２）。
【００８２】
比較したヨー角速度に所定角度以上のズレがないと判定した場合（Ｓ３２：Ｙｅｓ）、マイコン１１は、上述したステップＳ１４と同様に、２系のＲＤＣ２５、２６から通知されたモータ１７、１８の回転角に基づくヨー角速度と、２系のジャイロセンサ３０が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ３３）。
【００８３】
比較したヨー角速度に所定角度以上のズレがないと判定する場合（Ｓ３３：Ｙｅｓ）は、一般的には起こりえない。ステップＳ１１でＲＤＣ２３〜２６のうち、少なくともいずれかが故障していると判定されており、かつ、ステップＳ１２でジャイロセンサ２８、３０のいずれも故障していないと判定されている状況下で、ＲＤＣ２３、２５及びＲＤＣ２４、２６のそれぞれから通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８、３０のそれぞれが検出したヨー角速度がいずれも一致することは考えにくいからである。よって、この場合は、マイコン１１に関連する故障が発生していることが考えられる。そのため、マイコン１１は、マイコン１１に関連する故障に応じた処理を行う（Ｓ３５）。
【００８４】
具体的には、ステップＳ３５では、Ｓ１７と同様に、マイコン１１は、関連する故障が発生していると判定した自マイコン１１を縮退して、正常に動作しているマイコン１２のみを利用して倒立二輪車１の制御を行うための処理を実施する。
【００８５】
比較したヨー角速度に所定角度以上のズレがあると判定した場合（Ｓ３３：Ｎｏ）、ＲＤＣ２５又は２６から通知されたモータ１７又は１８の回転角は、ＲＤＣ２３又は２４から通知されたモータ１７又は１８の回転角と一致せず、かつ、そのＲＤＣ２５又は２６から通知されたモータ１７又は１８の回転角に基づいたヨー角速度も、ジャイロセンサ２６が検出したヨー角速度と一致しないため、ＲＤＣ２５又は２６が故障しており、正常にモータ１７又は１８の回転角を検出できていないことになる。具体的には、ステップＳ１１で、ＲＤＣ２３から通知されたモータ１７の回転角と、ＲＤＣ２５から通知されたモータ１７の回転角にズレがあると判定されている場合、ＲＤＣ２５が故障していることになる（回転角センサ２１の故障も含む）。また、ステップＳ１１で、ＲＤＣ２４から通知されたモータ１８の回転角と、ＲＤＣ２６から通知されたモータ１８の回転角にズレがあると判定されている場合、ＲＤＣ２６が故障していることになる（回転角センサ２２の故障も含む）。そのため、マイコン１１は、ＲＤＣ２５又は２６の故障に応じた処理を行う（Ｓ３６）。
【００８６】
具体的には、マイコン１１は、故障していると判定したＲＤＣ２５又は２６を縮退して、正常に動作しているＲＤＣ２３又は２４のみを利用して倒立二輪車１の制御を実施する。例えば、マイコン１１は、ＲＤＣ２５又は２６の故障を通知する故障通知信号をマイコン１２に出力する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、モータ１７、１８の制御を停止する。すなわち、故障したＲＤＣ２５又は２６を含む２系の制御系が縮退される。これにより、マイコン１１によって、故障したＲＤＣ２５又は２６を利用せずに、１系のＲＤＣ２３、２４及びジャイロセンサ２８を利用した倒立二輪車１の制御が実施される。また、この場合、マイコン１１は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【００８７】
また、マイコン１２は、故障したＲＤＣ２５又は２６を利用せずに、倒立二輪車１の制御を実施するようにしてもよい。例えば、マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、以降、１系のＲＤＣ２３、２４から出力される回転角信号が示すモータ１７、１８の回転角のそれぞれに基づいて倒立二輪車１の制御を実施する。また、この場合、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【００８８】
一方、比較したヨー角速度に所定角度以上のズレがないと判定した場合（Ｓ３２：Ｎｏ）、マイコン１１は、上述したステップＳ１４と同様に、２系のＲＤＣ２５、２６から通知されたモータ１７、１８の回転角に基づくヨー角速度と、２系のジャイロセンサ３０から通知されたヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ３４）。
【００８９】
比較したヨー角速度に所定角度以上のズレがないと判定した場合（Ｓ３４：Ｙｅｓ）、ＲＤＣ２３又は２４から通知されたモータ１７又は１８の回転角は、ＲＤＣ２５又は２６から通知されたモータ１７又は１８の回転角と一致せず、かつ、そのＲＤＣ２３又は２４から通知されたモータ１７又は１８の回転角に基づいたヨー角速度も、ジャイロセンサ２４が検出したヨー角速度と一致しないため、ＲＤＣ２３又は２４が故障しており、正常にモータ１７又は１８の回転角を検出できていないことになる。具体的には、ステップＳ１１で、ＲＤＣ２３から通知されたモータ１７の回転角と、ＲＤＣ２５から通知されたモータ１７の回転角にズレがあると判定されている場合、ＲＤＣ２３が故障していることになる（回転角センサ１９の故障も含む）。また、ステップＳ１１で、ＲＤＣ２４から通知されたモータ１８の回転角と、ＲＤＣ２６から通知されたモータ１８の回転角にズレがあると判定されている場合、ＲＤＣ２４が故障していることになる（回転角センサ２０の故障も含む）。そのため、マイコン１１は、ＲＤＣ２３又は２４の故障に応じた処理を行う（Ｓ３６）。
【００９０】
具体的には、マイコン１１は、故障していると判定したＲＤＣ２３又は２４を縮退して、正常に動作しているＲＤＣ２５又は２６のみを利用して倒立二輪車１の制御を実施する。例えば、マイコン１１は、モータ１７、１８の制御を停止する。すなわち、故障したＲＤＣ２３又は２４を含む１系の制御系が縮退される。これにより、マイコン１２によって、故障したＲＤＣ２３又は２４を利用せずに、２系のＲＤＣ２５、２６及びジャイロセンサ２６を利用した倒立二輪車１の制御が実施される。また、この場合、２系のマイコン１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。例えば、マイコン１１は、１系のＲＤＣ２３又は２４の故障を通知する故障通知信号をマイコン１２に出力する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、倒立二輪車１を停止させる制動制御を実施する。
【００９１】
また、マイコン１１は、故障したＲＤＣ２３又は２４を利用せずに、倒立二輪車１の制御を実施するようにしてもよい。例えば、マイコン１１は、以降、２系のＲＤＣ２５、２６から出力される回転角信号が示すモータ１７、１８の回転角のそれぞれに基づいて倒立二輪車１の制御を実施する。また、この場合、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。例えば、マイコン１１は、倒立二輪車１を停止させる制動制御を実施するとともに、ＲＤＣ２３又は２４の故障を通知する故障通知信号をマイコン１２に出力する。マイコン１２も、マイコン１１からの故障通知信号の出力に応じて、倒立二輪車１を停止させる制動制御を実施する。
【００９２】
比較したヨー角速度に所定角度以上のズレがあると判定した場合（Ｓ３４：Ｎｏ）、ステップＳ１１でＲＤＣ２３〜２６のうち、少なくともいずれかが故障していると判定されており、かつ、ステップＳ１２でジャイロセンサ２８、３０のいずれも故障していないと判定されている状況下で、ＲＤＣ２３、２５及びＲＤＣ２４、２６のそれぞれから通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８、３０のそれぞれが検出したヨー角速度がいずれも不一致となっているため、ＲＤＣ２３、２５の両方、もしくは、ＲＤＣ２４、２６の両方が故障しており（２重故障）、正常にモータ１７又は１８の回転角を検出することができていないことになる。具体的には、ステップＳ１１で、ＲＤＣ２３から通知されたモータ１７の回転角と、ＲＤＣ２５から通知されたモータ１７の回転角にズレがあると判定されている場合、ＲＤＣ２３、２５の両方が故障していることになる（回転角センサ１９、２１の故障も含む）。また、ステップＳ１１で、ＲＤＣ２４から通知されたモータ１８の回転角と、ＲＤＣ２６から通知されたモータ１８の回転角にズレがあると判定されている場合、ＲＤＣ２４、２６の両方が故障していることになる（回転角センサ２０、２２の故障も含む）。そのため、マイコン１１は、ＲＤＣ２３、２５、もしくは、ＲＤＣ２４、２６の故障に応じた処理を行う（Ｓ３８）。
【００９３】
具体的には、マイコン１１、１２は、ＲＤＣ２３、２５又はＲＤＣ２４、２６が故障してしまっているため、正常に動作しているＲＤＣ２３、２５又はＲＤＣ２４、２６のみを利用して倒立二輪車１の制御を実施する。
【００９４】
例えば、ＲＤＣ２３、２５が故障している場合、マイコン１１は、ＲＤＣ２３、２５の故障を通知する故障通知信号をマイコン１２に出力するとともに、以降、故障が検出されたＲＤＣ２３、２５は利用せずに、故障が検出されていないＲＤＣ２４、２６から出力される角速度信号が示すモータ１８の回転角のそれぞれに基づいて、モータ１８のみを駆動することで倒立二輪車１の制御を実施する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、以降、故障が検出されたＲＤＣ２３、２５は利用せずに、故障が検出されていないＲＤＣ２４、２６から出力される角速度信号が示すモータ１８の回転角のそれぞれに基づいて、モータ１８のみを駆動することで倒立二輪車１の制御を実施する。また、この場合に、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【００９５】
また、例えば、ＲＤＣ２４、２６が故障している場合、マイコン１１は、ＲＤＣ２４、２６の故障を通知する故障通知信号をマイコン１２に出力するとともに、以降、故障が検出されたＲＤＣ２４、２６は利用せずに、故障が検出されていないＲＤＣ２３、２５から出力される角速度信号が示すモータ１７の回転角のそれぞれに基づいて、モータ１７のみを駆動することで倒立二輪車１の制御を実施する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、故障が検出されたＲＤＣ２４、２６は利用せずに、故障が検出されていないＲＤＣ２３、２５から出力される角速度信号が示すモータ１７の回転角のそれぞれに基づいて、モータ１７のみを駆動することで倒立二輪車１の制御を実施する。また、この場合に、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【００９６】
続いて、図８を参照して、故障診断処理の詳細について説明する。マイコン１１は、図５のステップＳ１１によって、ＲＤＣ２３〜２６のうち、少なくともいずれかが故障していると判定されており、かつ、図７のステップＳ３１によって、ジャイロセンサ２８、３０のうち、少なくともいずれかも故障していると判定されている場合に、図８に示す処理を実行することで、故障しているＲＤＣ及びジャイロセンサを特定する。図８のステップＳ４１〜Ｓ４３は、図４のステップＳ１、２に対応し、図８のステップＳ４５〜Ｓ４７は、図４のステップＳ４に対応する。
【００９７】
マイコン１１は、上述したステップＳ１３と同様に、１系のＲＤＣ２３、２４から通知されたモータ１７、１８の回転角に基づくヨー角速度と、１系のジャイロセンサ２８が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ４１）。
【００９８】
比較したヨー角速度に所定角度以上のズレがないと判定した場合（Ｓ４１：Ｙｅｓ）、マイコン１１は、上述したステップＳ１４と同様に、２系のＲＤＣ２５、２６から通知されたモータ１７、１８の回転角に基づくヨー角速度と、２系のジャイロセンサ３０が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ４２）。
【００９９】
比較したヨー角速度に所定角度以上のズレがないと判定する場合（Ｓ４２：Ｙｅｓ）は、一般的には起こりえない。ステップＳ１１でＲＤＣ２３〜２６のうち、少なくともいずれかが故障していると判定されており、かつ、ステップＳ１２でジャイロセンサ２８、３０のうち、少なくともいずれかが故障していると判定されている状況下で、ＲＤＣ２３〜２６から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８、３０のそれぞれが検出したヨー角速度がいずれも一致することは考えにくいからである。よって、この場合は、マイコン１１に関連する故障が発生していることが考えられる。そのため、マイコン１１は、マイコン１１に関連する故障に応じた処理を行う（Ｓ４４）。
【０１００】
具体的には、ステップＳ４４では、Ｓ１７と同様に、マイコン１１は、関連する故障が発生していると判定した自マイコン１１を縮退して、正常に動作しているマイコン１２のみを利用して倒立二輪車１の制御を行うための処理を実施する。
【０１０１】
比較したヨー角速度に所定角度以上のズレがあると判定した場合（Ｓ４２：Ｎｏ）、ステップＳ１１でＲＤＣ２３〜２６のうち、少なくともいずれかが故障していると判定されており、かつ、ステップＳ１２でジャイロセンサ２８、３０のうち、少なくともいずれかが故障していると判定されている状況下で、ＲＤＣ２３、２４から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８が検出したヨー角速度とが一致するが、ＲＤＣ２５、２６から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ３０が検出したヨー角速度とが不一致となっているため、ＲＤＣ２５又は２６、及びジャイロセンサ３０が故障していることになる（２重故障）。具体的には、ステップＳ１１で、ＲＤＣ２３から通知されたモータ１７の回転角と、ＲＤＣ２５から通知されたモータ１７の回転角にズレがあると判定されている場合、ＲＤＣ２５（回転角センサ２１の故障も含む）及びジャイロセンサ３０が故障していることになる。また、ステップＳ１１で、ＲＤＣ２４が検出したモータ１８の回転角と、ＲＤＣ２６が検出したモータ１８の回転角にズレがあると判定されている場合、ＲＤＣ２６（回転角センサ２２の故障も含む）及びジャイロセンサ３０が故障していることになる。そのため、マイコン１１は、ＲＤＣ２５又は２６、及びジャイロセンサ３０の故障に応じた処理を行う（Ｓ４５）。
【０１０２】
具体的には、マイコン１１は、故障していると判定したＲＤＣ２５又は２６、及びジャイロセンサ３０を縮退して、正常に動作しているＲＤＣ２３、２４及びジャイロセンサ２８のみを利用して倒立二輪車１の制御を実施する。例えば、マイコン１１は、ＲＤＣ２５又は２６、及びジャイロセンサ３０の故障を通知する故障通知信号をマイコン１２に出力する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、モータ１７、１８の制御を停止する。すなわち、故障したＲＤＣ２５又は２６、及びジャイロセンサ３０を含む２系の制御系が縮退される。これにより、マイコン１１によって、故障したＲＤＣ２５又は２６、及びジャイロセンサ２６を利用せずに、１系のＲＤＣ２３、２４及びジャイロセンサ２８を利用した倒立二輪車１の制御が実施される。また、この場合、マイコン１１は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【０１０３】
また、マイコン１２は、故障したＲＤＣ２５又は２６、及びジャイロセンサ３０を利用せずに、倒立二輪車１の制御を実施するようにしてもよい。例えば、マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、以降、１系のＲＤＣ２３、２４から出力される回転角信号が示すモータ１７、１８の回転角のそれぞれと、マイコン１１から出力される角速度情報が示すジャイロセンサ２８のピッチ角速度とに基づいて倒立二輪車１の制御を実施する。また、この場合、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【０１０４】
一方、比較したヨー角速度に所定角度以上のズレがあると判定した場合（Ｓ４１：Ｎｏ）、マイコン１１は、上述したステップＳ２２と同様に、２系のＲＤＣ２５、２６から通知されたモータ１７、１８の回転角に基づくヨー角速度と、２系のジャイロセンサ３０が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定する（Ｓ４３）。
【０１０５】
比較したヨー角速度に所定角度以上のズレがないと判定した場合（Ｓ４３：Ｙｅｓ）、ステップＳ１１でＲＤＣ２３〜２６のうち、少なくともいずれかが故障していると判定されており、かつ、ステップＳ１２でジャイロセンサ２８、３０のうち、少なくともいずれかが故障していると判定されている状況下で、ＲＤＣ２５、２６から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ３０が検出したヨー角速度とが一致するが、ＲＤＣ２３、２４から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８が検出したヨー角速度とが不一致となっているため、ＲＤＣ２３又は２４、及びジャイロセンサ２８が故障していることになる（２重故障）。具体的には、ステップＳ１１で、ＲＤＣ２３から通知されたモータ１７の回転角と、ＲＤＣ２５から通知されたモータ１７の回転角にズレがあると判定されている場合、ＲＤＣ２３（回転角センサ１９の故障も含む）及びジャイロセンサ２８が故障していることになる。また、ステップＳ１１で、ＲＤＣ２４から通知されたモータ１８の回転角と、ＲＤＣ２６から通知されたモータ１８の回転角にズレがあると判定されている場合、ＲＤＣ２４（回転角センサ２０の故障も含む）及びジャイロセンサ２８が故障していることになる。そのため、マイコン１１は、ＲＤＣ２３又は２４及びジャイロセンサ２８の故障に応じた処理を行う（Ｓ４６）。
【０１０６】
具体的には、マイコン１１は、故障していると判定したＲＤＣ２３又は２４、及びジャイロセンサ２８を縮退して、正常に動作しているＲＤＣ２５、２６及びジャイロセンサ３０のみを利用して倒立二輪車１の制御を実施する。例えば、マイコン１１は、モータ１７、１８の制御を停止する。すなわち、故障したＲＤＣ２３又は２４、及びジャイロセンサ２８を含む１系の制御系が縮退される。これにより、マイコン１２によって、故障したＲＤＣ２３又は２４、及びジャイロセンサ２８を利用せずに、２系のＲＤＣ２５、２６及びジャイロセンサ３０を利用した倒立二輪車１の制御が実施される。また、この場合、２系のマイコン１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。例えば、マイコン１１は、１系のＲＤＣ２３又は２４、及びジャイロセンサ２８の故障を通知する故障通知信号をマイコン１２に出力する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、倒立二輪車１を停止させる制動制御を実施する。
【０１０７】
また、マイコン１１は、故障したＲＤＣ２３又は２４、及びジャイロセンサ２８を利用せずに、倒立二輪車１の制御を実施するようにしてもよい。例えば、マイコン１１は、以降、２系のＲＤＣ２５、２６から出力される回転角信号が示すモータ１７、１８の回転角のそれぞれと、マイコン１２から出力される角速度情報が示すジャイロセンサ３０のピッチ角速度とに基づいて倒立二輪車１の制御を実施する。また、この場合、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。例えば、マイコン１１は、倒立二輪車１を停止させる制動制御を実施するとともに、ＲＤＣ２３又は２４、及びジャイロセンサ２８の故障を通知する故障通知信号をマイコン１２に出力する。マイコン１２も、マイコン１１からの故障通知信号の出力に応じて、倒立二輪車１を停止させる制動制御を実施する。
【０１０８】
比較したヨー角速度に所定角度以上のズレがあると判定した場合（Ｓ４３：Ｎｏ）、ステップＳ１１でＲＤＣ２３〜２６のうち、少なくともいずれかが故障していると判定されており、かつ、ステップＳ１２でジャイロセンサ２８、３０のうち、少なくともいずれかが故障していると判定されている状況下で、ＲＤＣ２３、２５及びＲＤＣ２４、２６から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８、３０が検出したヨー角速度がいずれも不一致となっているため、ＲＤＣ２３又は２５、ＲＤＣ２４又は２６、及びジャイロセンサ２８、３０が故障していることになる（４重故障）。具体的には、ステップＳ１１で、ＲＤＣ２３から通知されたモータ１７の回転角と、ＲＤＣ２５から通知されたモータ１７の回転角にズレがあると判定されている場合、ＲＤＣ２３、２５（回転角センサ１９、２１の故障も含む）及びジャイロセンサ２８が故障していることになる。また、ステップＳ１１で、ＲＤＣ２４から通知されたモータ１８の回転角と、ＲＤＣ２６から通知されたモータ１８の回転角にズレがあると判定されている場合、ＲＤＣ２４、２６（回転角センサ２０、２２の故障も含む）及びジャイロセンサ２８が故障していることになる。そのため、マイコン１１は、ＲＤＣ２３、２５又はＲＤＣ２４、２６、及びジャイロセンサ２８、３０の故障に応じた処理を行う（Ｓ４７）。
【０１０９】
具体的には、マイコン１１は、ＲＤＣ２３、２５又はＲＤＣ２４、２６と、ジャイロセンサ２８、３０の両方が故障してしまっているため、故障が検出されたＲＤＣ２３、２５又はＲＤＣ２４、２６と、ジャイロセンサ２８、３０の両方とを利用せずに、正常に動作しているＲＤＣ２３、２５又はＲＤＣ２４、２６のみを利用して、倒立二輪車１の制御を実施する。
【０１１０】
例えば、ＲＤＣ２３、２５及びジャイロセンサ２８、３０が故障している場合、マイコン１１は、ＲＤＣ２３、２５及びジャイロセンサ２８、３０の故障を通知する故障通知信号をマイコン１２に出力するとともに、以降、故障が検出されたＲＤＣ２３、２５及びジャイロセンサ２８、３０は利用せずに、故障が検出されていないＲＤＣ２４、２６から出力される角速度信号が示すモータ１８の回転角のそれぞれに基づいて、モータ１８のみを駆動することで倒立二輪車１の制御を実施する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、以降、故障が検出されたＲＤＣ２３、２５及びジャイロセンサ２８、３０は利用せずに、故障が検出されていないＲＤＣ２４、２６から出力される角速度信号が示すモータ１８の回転角のそれぞれに基づいて、モータ１８のみを駆動することで倒立二輪車１の制御を実施する。また、この場合に、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【０１１１】
また、例えば、ＲＤＣ２４、２６及びジャイロセンサ２８、３０が故障している場合、マイコン１１は、ＲＤＣ２４、２６及びジャイロセンサ２８、３０の故障を通知する故障通知信号をマイコン１２に出力するとともに、以降、故障が検出されたＲＤＣ２４、２６及びジャイロセンサ２８、３０は利用せずに、故障が検出されていないＲＤＣ２３、２５から出力される角速度信号が示すモータ１７の回転角のそれぞれに基づいて、モータ１７のみを駆動することで倒立二輪車１の制御を実施する。マイコン１２は、マイコン１１からの故障通知信号の出力に応じて、故障が検出されたＲＤＣ２４、２６及びジャイロセンサ２８、３０は利用せずに、故障が検出されていないＲＤＣ２３、２５から出力される角速度信号が示すモータ１７の回転角のそれぞれに基づいて、モータ１７のみを駆動することで倒立二輪車１の制御を実施する。また、この場合に、マイコン１１、１２は、倒立二輪車１を停止させる制動制御を実施するようにしてもよい。
【０１１２】
以上に説明したように、マイコン１１、１２のそれぞれは、第１の回転角検出部（例えば、ＲＤＣ２３及び回転角センサ１９の組、又は、ＲＤＣ２４及び回転角センサ２０の組に相当）が検出したモータ１７又は１８の回転角と、第２の回転角検出部（例えば、ＲＤＣ２５及び回転角センサ２１の組、又は、ＲＤＣ２６及び回転角センサ２２の組に相当）が検出したモータ１７又は１８の回転角とを比較する第１の比較（例えば、Ｓ１１に相当）、及び、第１の回転角検出部が検出したモータ１７又は１８の回転角に基づいて算出した倒立二輪車１（同軸二輪移動体）のヨー角速度と、ヨー角速度検出センサ（例えば、ジャイロセンサ２８に相当）が検出した倒立二輪車１（同軸二輪移動体）のヨー角速度とを比較する第２の比較（例えば、Ｓ３２に相当）を実施するようにしている。そして、マイコン１１、１２のそれぞれは、第１の比較及び第２の比較の結果に基づいて、第１の回転角検出部及び第２の回転角検出部のうち、異常となっている回転角検出部を検出し、検出結果に応じた倒立二輪車１（同軸二輪移動体）の制御を行うようにしている。
【０１１３】
これによれば、第１の回転角検出部及び第２の回転角検出部のうち、異常となっている回転角検出部を特定して、その結果に応じた倒立二輪車１（同軸二輪移動体）の制御を行うことができる。すなわち、動的安定性を向上することができる。
【０１１４】
＜発明の実施の形態の変形例＞
上記の実施の形態では、ＲＤＣから通知されたモータの回転角の比較（Ｓ１１）を実施した後に、ジャイロセンサが検出したヨー角速度の比較（Ｓ１２）を実施するようにしているが、先にジャイロセンサが検出したヨー角速度の比較（Ｓ１２）を実施し、その後にＲＤＣから通知されたモータの回転角の比較（Ｓ１１）を実施するようにしてもよい。この場合、Ｓ１２でＹｅｓとなった場合に、Ｓ１１を実施することとなる。また、この場合、Ｓ１１でＮｏとなり、図７に示すフローを実施する場合、Ｓ３１の処理は不要となる。代わりに、Ｓ１２でＮｏとなった場合に、Ｓ１１の処理を実施するようにすればよい。そして、そのＳ１１でＹｅｓとなった場合に、図６のＳ２１以降の処理を実施し、そのＳ１１でＮｏとなった場合に、図８に示す処理を実施するようにすればよい。
【０１１５】
また、図５では、Ｓ１２でＹｅｓとなった場合には、ＲＤＣ２３〜２６のいずれも故障しておらず、ジャイロセンサ２８、３０のいずれも故障していないことになる。そのため、Ｓ１３〜Ｓ１５の処理は実施せずに、Ｓ１２でＹｅｓとなった場合にはＳ１６の処理を実施するようにしてもよい。
【０１１６】
また、２重以上の故障が発生することは、一般的にはあまり考えにくい。そのため、上述した故障診断処理において、２重以上の故障を切り分ける処理は省略するようにしてもよい。
【０１１７】
例えば、図６では、Ｓ２２及びＳ２３を実施しないようにしてもよい。Ｓ２１でＹｅｓとなった場合、ステップＳ１２でジャイロセンサ２８、３０のうち、少なくともいずれかが故障していると判定されている状況下で、ＲＤＣ２３、２４から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８が検出したヨー角速度が一致しているため、ジャイロセンサ２８は故障していないことになる。すなわち、消去法で、２系のジャイロセンサ３０の故障が特定される。そのため、Ｓ２１でＹｅｓとなった場合、Ｓ２５の処理を実施するようにしてもよい。
【０１１８】
また、Ｓ２１でＮｏとなった場合、ステップＳ１２でジャイロセンサ２８、３０のうち、少なくともいずれかが故障していると判定されている状況下で、ＲＤＣ２３、２４から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８が検出したヨー角速度が一致していないため、１系のジャイロセンサ２８が故障していることになる。そのため、Ｓ２１でＮｏとなった場合、Ｓ２６の処理を実施するようにしてもよい。
【０１１９】
また、図７では、Ｓ３１を実施しないようにし、Ｓ３２から実施するようにしてもよい。すなわち、２重以上の故障の切り分けに関する図８の処理は実施しないようにしてよい。
【０１２０】
また、Ｓ３３及びＳ３４も実施しないようにしてもよい。Ｓ３２でＹｅｓとなった場合、ステップＳ１１でＲＤＣ２３〜２６のうち、少なくともいずれかが故障している状況下で、ＲＤＣ２３、２４から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８が検出したヨー角速度が一致しているため、１系のＲＤＣ２３、２４は故障していないことになる。すなわち、消去法で、２系のＲＤＣ２５又は２６の故障が特定される。そのため、Ｓ３３でＹｅｓとなった場合、Ｓ３６の処理を実施するようにしてもよい。
【０１２１】
また、Ｓ３２でＮｏとなった場合、ステップＳ１１でＲＤＣ２３〜２６のうち、少なくともいずれかが故障している状況下で、ＲＤＣ２３、２４から通知されたモータ１７、１８の回転角から算出したヨー角速度と、ジャイロセンサ２８が検出したヨー角速度が一致していないため、１系のＲＤＣ２３、２４が故障していることになる。そのため、Ｓ３３でＮｏとなった場合、Ｓ３７の処理を実施するようにしてもよい。
【０１２２】
また、Ｓ１４、Ｓ１５、Ｓ２２、Ｓ２３、Ｓ３３、Ｓ３４、Ｓ４２、Ｓ４３では、故障現を特定することができる条件であれば、任意のいずれかを代替条件で判定を行うようにすればよい。
【０１２３】
例えば、図６のＳ２２、Ｓ２３では、ジャイロセンサ２８、３０の故障の切り分けを行うことができる条件であればよい。そのため、代替条件として、例えば、１系のＲＤＣ２３、２４から通知されたモータ１７、１８の回転角に基づくヨー角速度と、２系のジャイロセンサ３０が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定するようにしてもよい。
【０１２４】
また、例えば、図７のＳ３３、Ｓ３４では、ＲＤＣ２３〜２６の故障の切り分けを行うことができる条件であればよい。そのため、代替条件として、例えば、２系のＲＤＣ２５、２６から通知されたモータ１７、１８の回転角に基づくヨー角速度と、１系のジャイロセンサ２８が検出したヨー角速度とに所定角度以上のズレがあるか否かを判定するようにしてもよい。
【０１２５】
＜発明の他の実施の形態＞
上記実施の形態では、回転角信号として、パラレル信号及びＡＢ相信号の両方を生成・出力するＲＤＣ２３〜２６を利用した例について説明したが、回転角信号として、図９に示すように、パラレル信号のみ又はＡＢ相信号のみを生成・出力するＲＤＣを、ＲＤＣ２３〜２６として組み合わせて利用するようにしてもよい。また、図９では、パラレル信号のみを生成・出力するＲＤＣが２つであり、ＡＢ相信号のみを生成・出力するＲＤＣが２つである場合について例示したが、それぞれのＲＤＣの割合は、これに限られない。例えば、パラレル信号のみを生成・出力するＲＤＣを１つとし、ＡＢ相信号のみを生成・出力するＲＤＣを３つとしてもよく、パラレル信号のみを生成・出力するＲＤＣを３つとし、ＡＢ相信号のみを生成・出力するＲＤＣを１つとしてもよい。また、全てのＲＤＣを、パラレル信号のみを生成・出力するＲＤＣとしてもよく、全てのＲＤＣを、ＡＢ相信号のみを生成・出力するＲＤＣとしてもよい。
【０１２６】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【０１２７】
上記の実施の形態では、マイコン１１、１２の両方が故障診断処理を実施するようにしているが、いずれか一方のみが故障診断処理を実施するようにしてもよい。しかしながら、好ましくは、マイコン１１、１２の両方が故障診断処理を実施するようにすることで、より故障検出精度を向上することができる。
【０１２８】
上記の実施の形態では、ＲＤＣ２３〜２６を利用した例について説明したが、一般的な工学エンコーダ等を利用するようにしてもよい。
【符号の説明】
【０１２９】
１  倒立二輪車
２  車輪
３  ステップカバー
１０  制御装置
１１、１２  マイクロコントローラ
１３、１４、１５、１６  インバータ
１７、１８  モータ
１９、２０、２１、２２  回転角センサ
２３、２４、２５、２６  レゾルバ‐デジタル変換器
２７、２８、２９、３０  ジャイロセンサ
【図１】
2014108640.tif 000003
【図２】
2014108640.tif 000004
【図３】
2014108640.tif 000005
【図４】
2014108640.tif 000006
【図５】
2014108640.tif 000007
【図６】
2014108640.tif 000008
【図７】
2014108640.tif 000009
【図８】
2014108640.tif 000010
【図９】
2014108640.tif 000011