(57)【要約】【課題】  外乱トルクが負荷された場合でも正しく走行し続ける自走車を提供する。【解決手段】  自走車は、車体と、左右一対の車輪と、左右一対の車輪の一方を駆動する第１モータと他方を駆動する第２モータと、第１モータのモータ電流指令値を入力して第１モータのモータ電流を調節する手段と、第１モータのモータ電流指令値と実際動作量を入力して第１モータに負荷されている外乱トルクを算出する手段と、その外乱トルクに基づいてモータ電流指令値を修正する手段と、第２モータのモータ電流指令値を入力して第２モータに通電するモータ電流を調節する手段と、第２モータのモータ電流指令値と実際動作量を入力して第２モータに負荷されている外乱トルクを算出する手段と、その外乱トルクに基づいて第２モータのモータ電流指令値を修正する手段を備えている。【選択図】  図３
2008263676.tif 000002
【特許請求の範囲】
【請求項１】
車体と、
車体に設けられている左右一対の車輪と、
左右一対の車輪の一方を駆動する第１モータと、
左右一対の車輪の他方を駆動する第２モータと、
第１モータに通電するモータ電流の指令値を入力し、第１モータに通電するモータ電流を調節する第１電流調節部と、
第１電流調節部に入力されるモータ電流の指令値と第１モータの実際の動作量を入力し、第１モータに負荷されている外乱トルクを算出する第１外乱トルク算出部と、
第１外乱トルク算出部が算出した外乱トルクに基づいて、第１電流調節部に入力されるモータ電流の指令値を修正する第１指令値修正部と、
第２モータに通電するモータ電流の指令値を入力し、第２モータに通電するモータ電流を調節する第２電流調節部と、
第２電流調節部に入力されるモータ電流の指令値と第２モータの実際の動作量を入力し、第２モータに負荷されている外乱トルクを算出する第２外乱トルク算出部と、
第２外乱トルク算出部が算出した外乱トルクに基づいて、第２電流調節部に入力されるモータ電流の指令値を修正する第２指令値修正部と、
を備える自走車。
【請求項２】
車体の傾き及びその時間変化率の少なくとも一方を検出する傾きセンサと、
少なくとも傾きセンサの出力信号を入力し、第１モータと第２モータに対するモータ電流の指令値を出力する走行制御部をさらに備え、
前記左右一対の車輪のみを接地させた倒立姿勢で走行可能であることを特徴とする請求項１に記載の自走車。
【請求項３】
第１外乱トルク算出部と第２外乱トルク算出部の少なくとも一方は、最小次元オブザーバであることを特徴とする請求項１又は２に記載の自走車。
【請求項４】
車体と、車体に設けられている左右一対の車輪と、左右一対の車輪の一方を駆動する第１モータと、左右一対の車輪の他方を駆動する第２モータを備える自走車の動作を制御する制御装置であって、
第１モータに通電するモータ電流の指令値を入力し、第１モータに通電するモータ電流を調節する第１電流調節部と、
第１電流調節部に入力されるモータ電流の指令値と第１モータの実際の動作量を入力し、第１モータに負荷されている外乱トルクを算出する第１外乱トルク算出部と、
第１外乱トルク算出部が算出した外乱トルクに基づいて、第１電流調節部に入力されるモータ電流の指令値を修正する第１指令値修正部と、
第２モータに通電するモータ電流の指令値を入力し、第２モータに通電するモータ電流を調節する第２電流調節部と、
第２電流調節部に入力されるモータ電流の指令値と第２モータの実際の動作量を入力し、第２モータに負荷されている外乱トルクを算出する第２外乱トルク算出部と、
第２外乱トルク算出部が算出した外乱トルクに基づいて、第２電流調節部に入力されるモータ電流の指令値を修正する第２指令値修正部と、
を備える制御装置。
【請求項５】
車体と、車体に設けられている左右一対の車輪と、一対の車輪の一方を駆動する第１モータと、左右一対の車輪の他方を駆動する第２モータを備える自走車の動作を制御する制御方法であって、
第１モータに通電するモータ電流の指令値を入力し、第１モータに通電するモータ電流を調節する第１電流調節工程と、
第１電流調節工程で入力したモータ電流の指令値と第１モータの実際の動作量を入力し、第１モータに負荷されている外乱トルクを算出する第１外乱トルク算出工程と、
第１外乱トルク算出工程で算出した外乱トルクに基づいて、第１電流調節工程で入力するモータ電流の指令値を修正する第１指令値修正工程と、
第２モータに通電するモータ電流の指令値を入力し、第２モータに通電するモータ電流を調節する第２電流調節工程と、
第２電流調節工程で入力したモータ電流の指令値と第２モータの実際の動作量を入力し、第２モータに負荷されている外乱トルクを算出する第２外乱トルク算出工程と、
第２外乱トルク算出工程で算出した外乱トルクに基づいて、第２電流調節工程で入力するモータ電流の指令値を修正する第２指令値修正工程と、
を備える制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自走車に関する。特に、左右一対の車輪を備える自走車に関する。
【背景技術】
【０００２】
特許文献１に、左右一対の車輪を備える同軸二輪車が開示されている。この同軸二輪車は、車体と、車体に設けられている左右一対の車輪と、左右一対の車輪を駆動するモータと、モータに動作指令を与える制御コンピュータと、車体の前後方向の傾きを検出する角度検出手段を備えている。制御コンピュータは、角度検出手段によって検出された車体の傾きを入力し、車体の傾きを所定角に維持するのに要するモータの出力トルクを算出することができる。そして、制御コンピュータは、算出したモータの出力トルクに基づいて、モータに動作指令を与えるようになっている。それにより、この同軸二輪車は、左右一対の車輪のみを接地させた倒立姿勢で走行することができる。
【０００３】
【特許文献１】特開昭６３−３０５０８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１の同軸二輪車では、角度検出手段によって検出された車体の傾きを、予め設定された制御入力算出式に代入することによって、モータの出力トルクを算出している。そのことから、同軸二輪車に外乱トルクが負荷されると、モータの出力トルクを正しく算出することができなくなる。例えば、同軸二輪車が斜面を走行する場合、斜面を登るときと降りるときで速度が大きく相違してしまう。さらに、例えば一方の車輪のみが斜面に乗り上げた場合、同軸二輪車は真っ直ぐに走行することができなくなり、大きくバランスを崩してしまう。
本発明は、上記の問題を解決する。本発明は、左右一対の車輪を備える自走車において、外乱トルクが負荷された場合でも正しく走行し続けることを可能とする技術を提供する。
【課題を解決するための手段】
【０００５】
本発明によって具現化される自走車は、車体と、車体に設けられている左右一対の車輪と、左右一対の車輪の一方を駆動する第１モータと、左右一対の車輪の他方を駆動する第２モータと、第１モータに通電するモータ電流の指令値を入力し、第１モータに通電するモータ電流を調節する第１電流調節部と、第１電流調節部に入力されるモータ電流の指令値と第１モータの実際の動作量を入力し、第１モータに負荷されている外乱トルクを算出する第１外乱トルク算出部と、第１外乱トルク算出部が算出した外乱トルクに基づいて、第１電流調節部に入力されるモータ電流の指令値を修正する第１指令値修正部と、第２モータに通電するモータ電流の指令値を入力し、第２モータに通電するモータ電流を調節する第２電流調節部と、第２電流調節部に入力されるモータ電流の指令値と第２モータの実際の動作量を入力し、第２モータに負荷されている外乱トルクを算出する第２外乱トルク算出部と、第２外乱トルク算出部が算出した外乱トルクに基づいて、第２電流調節部に入力されるモータ電流の指令値を修正する第２指令値修正部を備えている。
【０００６】
この自走車では、一方の車輪を駆動する第１モータの出力トルクを、第１モータに負荷されている外乱トルクに応じて決定し、他方の車輪を駆動する第２モータの出力トルクを、第２モータに負荷されている外乱トルクに応じて決定する。それにより、それぞれの車輪に外乱トルクが様々に負荷された場合でも、それぞれの車輪を正しく駆動することができる。例えば一方の車輪のみが上り斜面に乗り上げた場合でも、一方の車輪を駆動する第１モータの出力トルクより大きくすることによって、真っ直ぐに走行し続けることができる。
【０００７】
上記の自走車は、車体の傾き及びその時間変化率を検出する傾きセンサと、少なくとも傾きセンサの出力信号を入力し、第１モータと第２モータに対するモータ電流の指令値を出力する走行制御部をさらに備え、左右一対の車輪のみを接地させた倒立姿勢で走行可能であることが好ましい。
左右一対の車輪のみを接地させた倒立姿勢では、それぞれの車輪に負荷されている外乱トルクをより正確に推定することが可能となる。そのことから、左右一対の車輪のみを接地させた倒立姿勢で走行可能であると、外乱トルクに抗してより正しく走行し続けることができる。
【０００８】
上記の自走車において、第１外乱トルク算出部と第２外乱トルク算出部の少なくとも一方は、最小次元オブザーバであることが好ましい。
それにより、第１外乱トルク算出部と第２外乱トルク算出部を簡素に構成することが可能となる。
【０００９】
本発明の技術は、車体と、車体に設けられている左右一対の車輪と、左右一対の車輪の一方を駆動する第１モータと、左右一対の車輪の他方を駆動する第２モータを備える自走車の動作を制御する制御装置に具現化することもできる。この制御装置は、第１モータに通電するモータ電流の指令値を入力し、第１モータに通電するモータ電流を調節する第１電流調節部と、第１電流調節部に入力されるモータ電流の指令値と第１モータの実際の動作量を入力し、第１モータに負荷されている外乱トルクを算出する第１外乱トルク算出部と、第１外乱トルク算出部が算出した外乱トルクに基づいて、第１電流調節部に入力されるモータ電流の指令値を修正する第１指令値修正部と、第２モータに通電するモータ電流の指令値を入力し、第２モータに通電するモータ電流を調節する第２電流調節部と、第２電流調節部に入力されるモータ電流の指令値と第２モータの実際の動作量を入力し、第２モータに負荷されている外乱トルクを算出する第２外乱トルク算出部と、第２外乱トルク算出部が算出した外乱トルクに基づいて、第２電流調節部に入力されるモータ電流の指令値を修正する第２指令値修正部を備えている。
この制御装置によると、自走車に外乱トルクが負荷された場合でも、自走車を正しく走行させ続けることができる。
【００１０】
本発明の技術はまた、車体と、車体に設けられている左右一対の車輪と、左右一対の車輪の一方を駆動する第１モータと、左右一対の車輪の他方を駆動する第２モータを備える自走車の動作を制御する制御方法に具現化することもできる。この制御方法は、第１モータに通電するモータ電流の指令値を入力し、第１モータに通電するモータ電流を調節する第１電流調節工程と、第１電流調節工程で入力したモータ電流の指令値と第１モータの実際の動作量を入力し、第１モータに負荷されている外乱トルクを算出する第１外乱トルク算出工程と、第１外乱トルク算出工程で算出した外乱トルクに基づいて、第１電流調節工程で入力するモータ電流の指令値を修正する第１指令値修正工程と、第２モータに通電するモータ電流の指令値を入力し、第２モータに通電するモータ電流を調節する第２電流調節工程と、第２電流調節工程で入力したモータ電流の指令値と第２モータの実際の動作量を入力し、第２モータに負荷されている外乱トルクを算出する第２外乱トルク算出工程と、第２外乱トルク算出工程で算出した外乱トルクに基づいて、第２電流調節工程で入力するモータ電流の指令値を修正する第２指令値修正工程を備えている。
この制御方法によると、自走車に外乱トルクが負荷された場合でも、自走車を正しく走行させ続けることができる。
【発明の効果】
【００１１】
本発明により、例えば予期しない悪路を安定して走破することができる自走車を具現化することが可能となる。本発明による同軸二輪車は、従来の同軸二輪車では走行不能とされてきた悪路を走破することができ、その活動範囲を大きく広げることができる。
【発明を実施するための最良の形態】
【００１２】
最初に、実施例の主要な特徴を列記する。
（特徴１）  自走車は、従動輪を備えている。従動輪は、左右一対の車輪の前方又は後方に位置している。
（特徴２）  自走車は、車体に揺動可能に連結されているとともに左右一対の車輪が設けられているアームと、アームを車体に対して揺動させるアーム駆動機構を備えている。アーム駆動機構は、アームを揺動させることによって、車体と左右一対の車輪との相対位置を変化させることができる。自走車は、車体と左右一対の車輪の相対位置を変化させることによって、左右一対の車輪のみが接地する倒立姿勢と、従動輪も接地する安定姿勢との間で姿勢を変化させる。
（特徴３）  自走車は、車体に揺動可能に連結されている座席と、座席を車体に対して揺動させる座席駆動機構を備えている。自走車は、車体と座席の相対位置を変化させることによって、搭乗者を含む自走車全体の重心位置を変化させることができる。
【実施例】
【００１３】
本発明の実施例について図面を参照しながら説明する。図１、図２は、実施例の自走車１０の構成を模式的に示している。図１は自走車１０の構成を示す正面図であり、図２は自走車１０の構成を示す右側面図である。図１は自走車１０の前面を示しており、図２は自走車１０の左側面を示している。
図１、図２に示すように、自走車１０は、車体１８と、車体１８にシャフト２２を介して連結されているアーム２４と、アーム２４によって支持されている右車輪３０ａ及び左車輪３０ｂと、右車輪３０ａを駆動する右車輪モータ１２２と、左車輪３０ｂを駆動する左車輪モータ１４２を備えている。右車輪３０ａと左車輪３０ｂは、互いに対向する位置に設けられており、その車軸が実質的に同一直線状に位置している。車体１８には、アーム駆動機構２０が設けられている。アーム駆動機構２０は、アームモータ１８２（図３に図示されている）を備えており、アーム２４をシャフト２２の回りに揺動させる。アーム駆動機構２０は、アーム２４を揺動させることによって、右車輪３０ａ及び左車輪３０ｂと車体１８の相対位置を変化させる。
【００１４】
自走車１０は、右従動輪３４ａ及び左従動輪３４ｂを備えている。右従動輪３４ａ及び左従動輪３４ｂは、右車輪３０ａ及び左車輪３０よりも前方で、互いに対向する位置に設けられている。右従動輪３４ａと左従動輪３４ｂは、その車軸（即ち、回転方向）を受動的に変化させる自在輪である。
なお、２つの従動輪３４ａ、３４ｂは必須の構成ではなく、左右方向の略中央に一つの従動輪のみを設ける構成とすることもできる。また、詳しくは後述するが、自走車１０は車輪３０ａ、３０ｂのみを接地させた倒立姿勢で走行する倒立走行と、従動輪も接地させた安定姿勢で走行する安定走行の両者が可能であるが、安定走行を必要としないのであれば、従動輪を設ける必要は必ずしもない。
【００１５】
自走車１０は、ヒト２を搭乗させるための座席１２を備えている。座席１２は、車体１８にシャフト１４を介して連結されており、車体１８に対して揺動可能に設けられている。車体１８には、座席駆動機構１６が設けられている。座席駆動機構１６は、座席モータ１６２（図３に図示されている）を備えており、座席１２をシャフト１４の回りに揺動させる。座席駆動機構１６は、座席１２を揺動させることによって、座席１２と車体１８の相対位置を変化させる。
【００１６】
自走車１０は、ヒト２が操作する操作部４０と、操作部４０に加えられた操作に基づいて自走車１０の動作を制御する制御装置１００と、車体１８の前後方向の傾きの時間変化率（傾き角速度）を測定するためのジャイロセンサ３８を備えている。操作部４０と制御装置１００とジャイロセンサ３８は、車体１８に設けられている。
操作部４０は、操作桿やスイッチを備えている。ヒト２は、操作桿やスイッチを操作することによって、自走車１０の速度や向きの調整や、倒立走行と安定走行の切替えを行うことができる。制御装置１００は、コンピュータ装置と、各種の制御ソフトを用いて構成されている。
【００１７】
図３は、自走車１０の電気的な構成を示している。図３に示す構成の一部は、制御装置１００のハードウエア及びソフトウエアによって構築されている。図３に示すように、自走車１０は、右車輪３０ａの動作を制御する右車輪制御部１２０と、左車輪３０ｂの動作を制御する左車輪制御部１４０と、座席１２の動作を制御する座席制御部１６０と、アーム２６の動作を制御するアーム制御部１８０を備えている。
また、自走車１０は、自走車１０の目標位置Ｐｔ（ｘ，ｙ）を生成する車両目標位置生成部１０２と、座席１２の目標位置（角度）θｔＳを生成する座席目標位置生成部１０４と、アーム１２の目標位置（角度）θｔＡを生成するアーム目標位置生成部１０６を備えている。車両目標位置生成部１０２と座席目標位置生成部１０４とアーム目標位置生成部１０６は、操作部４０に加えられた操作に基づいて、目標位置Ｐｔ（ｘ，ｙ）、θｔＳ、θｔＡをそれぞれ生成する。
【００１８】
また、自走車１０は、走行制御コントローラ１１０を備えている。走行制御コントローラ１１０は、右車輪制御部１２０から右車輪モータ１２２の実際の回転角θａＲを入力し、左車輪制御部１４０から左車輪モータ１４２の実際の回転角θａＬを入力し、ジャイロセンサ３８の出力信号Ｓｊを入力し、車両目標位置生成部１０２から自走車１０の目標位置Ｐｔ（ｘ，ｙ）を入力する。そして、走行制御コントローラ１１０は、これらの入力値θａＲ、θａＬ、Ｓｊ、Ｐｔ（ｘ，ｙ）に基づいて、右車輪モータ１２２に通電するモータ電流の指令値ＩｃＲと左車輪モータ１４２に通電するモータ電流の指令値ＩｃＬを算出する。走行制御コントローラ１１０は、算出したこれらの指令値ＩｃＲ、値ＩｃＲを、右車輪制御部１２０と左車輪制御部１４０にそれぞれ出力する。なお、走行制御コントローラ１１０は、モータ電流の指令値ＩｃＲ、ＩｃＬを算出するに際に、ジャイロセンサ３８の出力信号Ｓｊの出力信号Ｓｊに基づいて、車体１８の前後方向の傾きとその時間変化率の両者を算出する。
【００１９】
先に言及したように、自走車１０は、右左の車輪３０ａ、３０ｂのみを接地させた倒立姿勢で走行する倒立走行が可能であるとともに、従動輪３４ａ、３４ｂも接地させた安定姿勢で走行する安定走行が可能である。操作部４０から倒立走行が指示された場合、走行制御コントローラ１１０は、車両目標位置生成部１０２から入力した自走車１０の目標位置Ｐｔ（ｘ，ｙ）及びジャイロセンサ３８の出力信号Ｓｊに基づいて、自走車１０が転倒することなく走行し続けるように、前記したモータ電流の指令値ＩｃＲ、ＩｃＬを算出する。結果として、右車輪３０ａ及び左車輪３０ｂの接地点に対する自走車１０（ヒト２を含む）の慣性力を加味した重心位置を制御することとなる。具体的には、結果的に自走車１０（ヒト２を含む）の慣性力を加味した重心位置が右車輪３０ａ及び左車輪３０ｂの接地点を結ぶ直線の略鉛直上方に位置するように制御することとなる。従って、自走車１０は、前方に加速（又は後方に減速）している間は前傾して走行し、前方に減速（又は後方に加速）している間は後傾して走行する。一方、操作部４０から安定走行が指示された場合、走行制御コントローラ１１０は、主に、車両目標位置生成部１０２から入力した自走車１０の目標位置Ｐｔ（ｘ，ｙ）に基づいて、前記したモータ電流の指令値ＩｃＲ、ＩｃＬを算出する。この場合、右車輪３０ａ及び左車輪３０ｂの接地点に対する、自走車１０（ヒト２を含む）の慣性力を加味した重心位置の相対位置を考慮する必要はない。
【００２０】
右車輪制御部１２０は、右車輪３０ａを駆動する右車輪モータ１２２と、右車輪モータ１２２の実際の回転角θａＲを検出するための右車輪エンコーダ１２４と、右車輪モータ１２２に通電するモータ電流ＩａＲを調節する右車輪モータアンプ１２６を備えている。右車輪モータアンプ１２６は、右車輪エンコーダ１２４の出力信号ＳｅＲを入力し、右車輪モータ１２２の実際の回転角θａＲを算出する。算出された右車輪モータ１２２の実際の回転角θａＲは、走行制御コントローラ１１０及び後述する右車輪外乱オブザーバ１２８に入力される。
また、右車輪制御部１２０は、右車輪モータ１２２に負荷されている外乱トルクＴｄＲを推定する右車輪外乱オブザーバ１２８と、右車輪外乱オブザーバ１２８が推定した外乱トルクＴｄＲに基づいて走行制御コントローラ１１０から入力したモータ電流の指令値ＩｃＲを修正する右車輪指令値修正部１３０を備えている。右車輪指令値修正部１３０による修正後の修正指令値ＩｍＲは、右車輪モータアンプ１２６に入力される。右車輪モータアンプ１２６は、右車輪モータ１２２に通電するモータ電流ＩａＲを、入力した修正指令値ＩｍＲに調節する。その結果、右車輪モータ１２２には、右車輪モータ１２２に負荷されている外乱トルクＴｄＲを補償するように、モータ電流が通電される。
ここでいう外乱トルクとは、予期せず負荷されるトルクである。例えば、走行する路面に予期せぬ傾斜や段差が存在したり、自走車１０に予期せぬ故障（例えばパンク）が生じたりしたときに、右車輪モータ１２２に外乱トルクが負荷される。
【００２１】
図３に示すように、左車輪制御部１４０も、右車輪制御部１２０と同様の構成を有している。即ち、左車輪制御部１４０は、左車輪３０ｂを駆動する左車輪モータ１４２と、左車輪モータ１４２の実際の回転角θａＬを検出するための左車輪エンコーダ１４４と、左車輪モータ１４２に通電するモータ電流ＩａＬを調節する左車輪モータアンプ１４６を備えている。左車輪モータアンプ１４６は、左車輪エンコーダ１４４の出力信号ＳｅＬを入力し、左車輪モータ１４２の実際の回転角θａＬを算出する。算出された左車輪モータ１４２の実際の回転角θａＬは、走行制御コントローラ１１０及び後述する左車輪外乱オブザーバ１４８に入力される。
また、左車輪制御部１４０は、右車輪モータ１４２に負荷されている外乱トルクＴｄＬを推定する左車輪外乱オブザーバ１４８と、左車輪外乱オブザーバ１４８が推定した外乱トルクＴｄＬに基づいて走行制御コントローラ１１０から入力したモータ電流の指令値ＩｃＬを修正する左車輪指令値修正部１５０を備えている。左車輪指令値修正部１５０による修正後の修正指令値ＩｍＬは、左車輪モータアンプ１４６に入力される。左車輪モータアンプ１４６は、左車輪モータ１４２に通電するモータ電流ＩａＬを、入力した修正指令値ＩｍＬに調節する。その結果、左車輪モータ１４２には、左車輪モータ１４２に負荷されている外乱トルクＴｄＬを補償するように、モータ電流が通電される。
【００２２】
図４を参照して、右車輪外乱オブザーバ１２８と左車輪外乱オブザーバ１４８について説明する。右車輪外乱オブザーバ１２８と左車輪外乱オブザーバ１４８は、同一の構成を有しており、その構成は図４に示すブロック線図で表現される。図中のＡの範囲は、制御対象であるモータ１２２、１４２に係るシステムを示しており、図中のＢの範囲は、外乱オブザーバ１２８、１４８に係る構成を示している。
外乱オブザーバ１２８、１４８は、モータアンプ１２６、１４６に実際に入力されたモータ電流の修正指令値Ｉｍと、モータ１２２、１４２の実際の回転角θａを入力し、モータ１２２、１４２に負荷されている外乱トルクＴｄの推定値［Ｔｄ］を出力する。なお、図中では添え字のＲ、Ｌを省略しており、修正指令値ＩｍＲ又はＩｍＬを単にＩｍと記し、実際の回転角θａＲ又はθａＬを単にθａと記し、外乱トルクＴｄＲ又はＴｄＬを単にＴｄと記し、外乱トルクの推定値［ＴｄＲ］又は［ＴｄＬ］を単に［Ｔｄ］と記す。図４において、Ｋｔはトルク定数を示しており、Ｊはモータ１２２、１４２のイナーシャを示しており、ｓはラプラス演算子を示しており、ω２／（ｓ２＋２ζωｓ＋ω２）はローパスフィルタを示している。図４に示すように、外乱オブザーバ１２８、１４８は、いわゆる最小次元オブザーバである。なお、外乱オブザーバ１２８、１４８は、同一次元（完全次元）オブザーバとすることもできる。外乱オブザーバ１２８、１４８の構成は、公知の構成法に基づいて設計することができる。
図４に示すように、外乱オブザーバ１２８、１４８は、モータアンプ１２６、１４６に入力されたモータ電流の修正指令値Ｉｍに基づいてモータ１２２、１４２の出力トルクを算出する一方、モータ１２２、１４２の実際の回転角θａに基づいてモータ１２２、１４２の出力トルクを算出し、両者の偏差に基づいてモータ１２２、１４２に負荷されている外乱トルクＴｄを推定する。
【００２３】
図３に示すように、座席制御部１６０は、座席１２を揺動させる座席モータ１６２と、座席モータ１６２の実際の回転角θａＳを検出するための座席エンコーダ１６４と、座席モータ１６２に通電するモータ電流ＩａＳを調節する座席モータアンプ１６６と、座席位置コントローラ１７０を備えている。座席モータアンプ１６６は、座席エンコーダ１６４の出力信号ＳｅＳを入力し、座席モータ１６２の実際の回転角θａＳを算出する。算出された座席モータ１６２の実際の回転角θａＳは、座席位置コントローラ１７０に入力される。座席位置コントローラ１７０は、座席目標位置生成部１０４から座席１２の目標位置（角度）θｔＳを入力するとともに、座席モータアンプ１６６から座席モータ１６２の実際の回転角θａＳを入力し、これらの入力値θｔＳ、θａＳに基づいて、座席モータ１６２に通電するモータ電流の指令値ＩｃＳを算出する。座席位置コントローラ１７０が算出した指令値ＩｃＳは、座席モータアンプ１６６に入力される。座席モータアンプ１６６は、座席モータ１６２に通電するモータ電流ＩａＳを、入力した指令値ＩｃＳに調節する。その結果、座席モータ１６２には、座席１２の実際の位置（角度）がその目標位置（角度）θｔＳとなるように、モータ電流が通電される。
【００２４】
アーム制御部１８０は、アーム２６を揺動させるアームモータ１８２と、アームモータ１８２の実際の回転角θａＡを検出するためのアームエンコーダ１８４と、アームモータ１８２に通電するモータ電流ＩａＡを調節するアームモータアンプ１８６と、アーム位置コントローラ１９０を備えている。アームモータアンプ１８６は、アームエンコーダ１８４の出力信号ＳｅＡを入力し、アームモータ１８２の実際の回転角θａＡを算出する。算出されたアームモータ１８２の実際の回転角θａＡは、アーム位置コントローラ１９０に入力される。アーム位置コントローラ１９０は、アーム目標位置生成部１０６からアーム２６の目標位置（角度）θｔＡを入力するとともに、アームモータアンプ１８６からアームモータ１８２の実際の回転角θａＡを入力し、これらの入力値θｔＡ、θａＡに基づいて、アームモータ１８２に通電するモータ電流の指令値ＩｃＡを算出する。アーム位置コントローラ１９０が算出した指令値ＩｃＡは、アームモータアンプ１８６に入力される。アームモータアンプ１８６は、アームモータ１８２に通電するモータ電流ＩａＡを、入力した指令値ＩｃＡに調節する。その結果、アームモータ１８２には、アーム２６の実際の位置（角度）がその目標位置（角度）θｔＡとなるように、モータ電流が通電される。
【００２５】
以上の構成により、自走車１０は、搭乗者２が操作部４０に加えた操作に追従して右左の車輪３０ａ、３０ｂの回転量をそれぞれ制御することにより、搭乗者２の意図に応じて前進、後退、方向転換を行うことができる。また、自走車１０は、右左の車輪３０ａ、３０ｂのみを接地させた倒立姿勢で走行する倒立走行と、従動輪３４ａ、３４ｂも接地させた安定姿勢で走行する安定走行の両者が可能である。
図５、図６を参照して、自走車１０の安定姿勢から倒立姿勢への切替動作について説明する。通常、搭乗者２の乗降は、安定姿勢で行われる。自走車１０への乗車後、搭乗者２が操作部４０によって倒立姿勢への切替指示を行うと、自走車１０は図５に示す初期姿勢へ移行する。図５に示す初期姿勢は、搭乗者２の重心Ｍｈと自走車１０の重心Ｍｍを合成した合成重心Ｍｔが、右左の車輪３０ａ、３０ｂの接地点を結ぶ直線の鉛直上方に位置する姿勢である。このときの座席１２のシャフト１４を中心とする回転角θＳ１と、アーム２６のシャフト２２を中心とする回転角θＡ１は、座席目標位置生成部１０４とアーム目標位置生成部１０６によってそれぞれ決定される。ここで、図中の直線Ｈは、水平面を示している。搭乗者２の体重等は、座席目標位置生成部１０４やアーム目標位置生成部１０６に予め教示されている。
【００２６】
次に、自走車１０は、合成重心Ｍｔを右左の車輪３０ａ、３０ｂの接地点を結ぶ直線の鉛直上方に維持しながら、座席１２とアーム２６を同期しながら揺動させる。それにより、自走車１０は図６に示す倒立姿勢へと移行する。図６に示す倒立姿勢は、合成重心Ｍｔが右左の車輪３０ａ、３０ｂの接地点を結ぶ直線の鉛直上方に位置するとともに、右左の従動輪３４ａ、３４ｂが空中に浮遊する姿勢である。図５に示す安定姿勢から図６に示す倒立姿勢への移行期間における座席１２の回転角θＳとアーム２６の回転角θＡについても、座席目標位置生成部１０４とアーム目標位置生成部１０６によってそれぞれ決定される。この安定姿勢から倒立姿勢への移行期間中に、走行制御コントローラ１１０の制御方式は倒立走行用に切り替えられる。それにより、自走車１０は必要に応じて前進後退し、安定姿勢から倒立姿勢への移行期間に転倒することを防止する。
【００２７】
自走車１０が走行する際、右左の車輪３０ａ、３０ｂには、様々な外乱トルクがそれぞれ負荷される。このとき、自走車１０は、それぞれの車輪３０ａ、３０ｂに負荷された外乱トルクを、それぞれの車輪３０ａ、３０ｂで独立して補償することができる。例えば、右車輪３０ａのみが傾斜や段差に乗り上げた場合には、右車輪３０ａのみをより大きなトルクで駆動することができる。あるいは、右車輪３０ａがパンクした場合にも、右車輪３０ａのみをより大きなトルクで駆動することができる。それにより、自走車１０は、突然にバランスを崩したり転倒したりすることなく、走行し続けることができる。特に、倒立走行時には、従来の技術では走行困難とされるような悪路を、転倒することなくスムーズに走行することが可能となる。
【００２８】
本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時の請求項に記載の組み合わせに限定されるものではない。
例えば、車体の前後方向の傾き及びその時間変化率を測定するために、本実施例ではジャイロセンサを用いている。しかしながら、車体の前後方向の傾きやその時間変化率は、そのうちの一方をセンサによって検出すれば、他方の値はそのセンサの出力信号を時間微分又は時間積分することによって算出することができる。そのことから、本実施例の自走車では、ジャイロセンサに代えて、車体の前後方向の傾きを検出する角度センサを用いることもできる。この場合でも、制御コントローラは、角度センサの出力信号に基づいて、車体の前後方向の傾き及びその時間変化率を算出することができる。
本明細書または図面に例示した技術は複数の目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【図面の簡単な説明】
【００２９】
【図１】自走車の構成を模式的に示す正面図。
【図２】自走車の構成を模式的に示す右側面図。
【図３】自走車の制御システムの構成を示す図。
【図４】外乱オブザーバの入出力の関係を示すブロック線図。
【図５】安定姿勢から倒立姿勢への切替時の初期姿勢の自走車を示す図。
【図６】倒立姿勢の自走車を示す図。
【符号の説明】
【００３０】
・１０：自走車
・１２：座席
・１６：座席駆動機構
・１８：車体
・２０：アーム駆動機構
・２４：アーム
・３０ａ、３０ｂ：車輪
・３４ａ、３４ｂ：従動輪
・１００：制御装置
・１２０：右車輪制御部
・１２２：右車輪モータ
・１２４：右車輪エンコーダ
・１２６：右車輪モータアンプ
・１２８：右車輪外乱オブザーバ
・１３０：右車輪指令値修正部
・１４０：左車輪制御部
・１４２：左車輪モータ
・１４４：左車輪エンコーダ
・１４６：左車輪モータアンプ
・１４８：左車輪外乱オブザーバ
・１５０：左車輪指令値修正部
・１６０：座席制御部
・１６２：座席モータ
・１６４：座席エンコーダ
・１６６：座席モータアンプ
・１７０：座席位置コントローラ
・１８０：アーム制御部
・１８２：アームモータ
・１８４：アームエンコーダ
・１８６：アームモータアンプ
・１９０：アーム位置コントローラ
【図１】
2008263676.tif 000003
【図２】
2008263676.tif 000004
【図３】
2008263676.tif 000005
【図４】
2008263676.tif 000006
【図５】
2008263676.tif 000007
【図６】
2008263676.tif 000008