(57)【特許請求の範囲】
【請求項１】
閉領域内を自律走行する走行装置を制御する制御装置であって、
前記走行装置を超信地旋回させる制御を行う旋回制御手段と、
前記旋回制御手段による制御で前記走行装置の進行方向を１８０度変化させる途中で、前記走行装置の重心位置を変化させる制御を行う重心位置制御手段と、を備え、
前記重心位置制御手段は、前記旋回制御手段による制御を開始するときの前記走行装置の重心位置を、前記走行装置の前側の第１の位置および後側の第２の位置のうちの何れか一方に設定する制御を行い、前記旋回制御手段による制御で前記走行装置の進行方向を９０度だけ変化させたときに、前記走行装置の重心位置を、前記第１の位置および前記第２の位置のうちの何れか他方に設定する制御を行う、
制御装置。
【請求項２】
閉領域内を自律走行する走行装置を制御する制御装置であって、
前記走行装置を超信地旋回させる制御を行う旋回制御手段と、
前記旋回制御手段による制御で前記走行装置の進行方向を１８０度変化させる途中で、前記走行装置の重心位置を変化させる制御を行う重心位置制御手段と、
所定の垂直視野の範囲で全方位を同時に撮像するとともに、矩形状の前記閉領域の頂点位置に設置された標識を撮像可能な撮像装置による撮像で得られた撮像画像を取得する取得手段と、
前記旋回制御手段による制御を開始するときの前記撮像画像を示す第１の撮像画像と、前記旋回制御手段による制御を終了するときの前記撮像画像を示す第２の撮像画像とに基づいて、前記標識に対する前記走行装置の位置を特定する特定手段と、備え、
前記重心位置制御手段は、前記特定手段により特定された前記走行装置の位置と、前記走行装置を走行させるためのエネルギーの消費率を示すエネルギー消費率と、に基づいて、前記走行装置の進行方向を１８０度変化させる際の重心位置の移動距離を示す重心位置移動距離を変化させる、
制御装置。
【請求項３】
前記旋回制御手段は、前記重心位置制御手段により、前記走行装置の重心位置が前記第１の位置および前記第２の位置のうちの何れか一方に設定された後に、前記走行装置を、時計回りの回転方向または反時計回りの回転方向に９０度だけ超信地旋回させる第１の制御を行い、前記重心位置制御手段により、前記走行装置の重心位置が前記第１の位置および前記第２の位置のうちの何れか他方に設定された後に、前記走行装置を、前記第１の制御における回転方向と同じ回転方向に９０度だけ超信地旋回させる第２の制御を行う、
請求項１に記載の制御装置。
【請求項４】
前記走行装置は、その走行経路が、矩形状の前記閉領域の周縁を形成する４つの境界線のうち互いに対向する２つの境界線の一方から他方へ至るまで、他の互いに対向する２つの境界線のうちの一方から他方へ向かって直進し、他方の境界線に到達した場合は、進行方向を１８０度変化させて一方の境界線へ向かって直進し、一方の境界線に到達した場合は、進行方向を１８０度変化させて他方の境界線へ向かって直進するジグザグ走行を繰り返す、
請求項２に記載の制御装置。
【請求項５】
前記撮像画像に映り込んだ４つの前記標識のうちの２つの前記標識が１８０度離れた位置に存在し、かつ、該２つの前記標識を結ぶ線を挟んで存在する２つの領域のうちの一方に、残りの２つの前記標識が存在する場合、前記旋回制御手段による制御を開始するタイミングを検出する検出手段をさらに備える、
請求項４に記載の制御装置。
【請求項６】
前記特定手段は、前記重心位置移動距離と、前記第１の撮像画像と、前記第２の撮像画像とに基づいて、前記旋回制御手段による制御を開始するときの前記走行装置の位置と、前記走行装置が到達した境界線が有する２つの頂点のうちの一方の頂点と、の間の距離を示す第１の距離を算出するとともに、前記旋回制御手段による制御を終了するときの前記走行装置の位置と、前記走行装置が到達した境界線が有する２つの頂点のうちの他方の頂点と、の間の距離を示す第２の距離を算出する、
請求項５に記載の制御装置。
【請求項７】
前記第１の距離と前記第２の距離とに基づいて、前記閉領域のうち前記走行装置が走行した領域の割合を表す走行進捗率を算出する算出手段をさらに備え、
前記重心位置制御手段は、前記エネルギー消費率が前記走行進捗率を上回る場合は、前記重心位置移動距離を増加させる制御を行う、
請求項６に記載の制御装置。
【請求項８】
前記走行進捗率は、前記第１の距離を、前記第１の距離と前記第２の距離との和で除算した値を示し、
前記エネルギー消費率は、走行開始時のエネルギー残量から現在のエネルギー残量を差し引いた値を、走行開始時のエネルギー残量で除算した値を示す、
請求項７に記載の制御装置。
【請求項９】
前記重心位置制御手段は、前記走行装置の走行に伴う作業に用いられ、かつ、前記走行装置の本体に接続されたアームを介して吊り上げ可能な作業部材の吊り上げ位置を変化させる制御を行って、前記走行装置の重心位置を変化させる、
請求項１乃至８のうちの何れか１項に記載の制御装置。
【請求項１０】
閉領域内を自律走行する走行装置であって、
前記走行装置を超信地旋回させる制御を行う旋回制御手段と、
前記旋回制御手段による制御で前記走行装置の進行方向を１８０度変化させる途中で、前記走行装置の重心位置を変化させる制御を行う重心位置制御手段と、を備え、
前記重心位置制御手段は、前記旋回制御手段による制御を開始するときの前記走行装置の重心位置を、前記走行装置の前側の第１の位置および後側の第２の位置のうちの何れか一方に設定する制御を行い、前記旋回制御手段による制御で前記走行装置の進行方向を９０度だけ変化させたときに、前記走行装置の重心位置を、前記第１の位置および前記第２の位置のうちの何れか他方に設定する制御を行う、
走行装置。
【請求項１１】
閉領域内を自律走行する走行装置を制御する方法であって、
前記走行装置を超信地旋回させる制御を行う旋回制御ステップと、
前記旋回制御ステップによる制御で前記走行装置の進行方向を１８０度変化させる途中で、前記走行装置の重心位置を変化させる制御を行う重心位置制御ステップと、を含み、
前記重心位置制御ステップは、前記旋回制御ステップによる制御を開始するときの前記走行装置の重心位置を、前記走行装置の前側の第１の位置および後側の第２の位置のうちの何れか一方に設定する制御を行い、前記旋回制御ステップによる制御で前記走行装置の進行方向を９０度だけ変化させたときに、前記走行装置の重心位置を、前記第１の位置および前記第２の位置のうちの何れか他方に設定する制御を行う、
制御方法。
【請求項１２】
コンピュータに、
閉領域内を自律走行する走行装置を超信地旋回させる制御を行う旋回制御ステップと、
前記旋回制御ステップによる制御で前記走行装置の進行方向を１８０度変化させる途中で、前記走行装置の重心位置を変化させる制御を行う重心位置制御ステップと、を実行させ、
前記重心位置制御ステップは、前記旋回制御ステップによる制御を開始するときの前記走行装置の重心位置を、前記走行装置の前側の第１の位置および後側の第２の位置のうちの何れか一方に設定する制御を行い、前記旋回制御ステップによる制御で前記走行装置の進行方向を９０度だけ変化させたときに、前記走行装置の重心位置を、前記第１の位置および前記第２の位置のうちの何れか他方に設定する制御を行う、
ためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、走行装置、制御方法およびプログラムに関する。
【背景技術】
【０００２】
例えば田畑などの閉領域に対し、耕作、除草、草刈、水／肥料／農薬の散布などの作業を、トラクタなどの走行装置で行う場合、作業漏れが少なく、かつ、無駄の無い（１度通過した領域は極力通過しない）走行経路が望まれる。例えば走行装置の走行経路が図１のようなジグザグ経路であれば、往復する走行路間の距離（往復走行路間距離）αを、走行装置が担う作業幅（作業に用いられる作業ユニットの、進行方向と交差する方向の長さ）βと等しくすることで、閉領域の全領域にわたって漏れが無く、かつ、無駄の無い作業を実施することができる。
【０００３】
ただし、実際は、走行装置の機械誤差やスリップなどによって、上述したような理想的な走行経路を正確に走行することは困難である。近年開発されてきている自律走行型の走行装置では、走行経路の維持を自動で行う必要があるため、さらに困難なものとなる。図１の直線経路も、実際は左右に蛇行した曲線経路となってしまうため、通常αはβよりやや小さい値としている。つまり多少の重複領域（走行装置の往復で重複して作業が行われる領域）は許容しつつ作業漏れの発生を抑えることが一般的である。また、走行装置の進行方向を１８０度変化させる方法としては、特許文献１に開示されたステアリングによる旋回方式や、特許文献２に開示された超信地旋回方式を利用する方法が知られている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１や特許文献２に開示された技術では、走行装置の進行方向を１８０度変化させる際に、往復走行路間距離を狙いの値に近づけることが困難である。このため、作業漏れの発生を防ぐことができないという問題がある。
【０００５】
本発明は、上記に鑑みてなされたものであって、往復走行路間距離を狙いの値に近づけることが可能な制御装置、走行装置、制御方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、閉領域内を自律走行する走行装置を制御する制御装置であって、前記走行装置を超信地旋回させる制御を行う旋回制御手段と、前記旋回制御手段による制御で前記走行装置の進行方向を１８０度変化させる途中で、前記走行装置の重心位置を変化させる制御を行う重心位置制御手段と、を備え、前記重心位置制御手段は、前記旋回制御手段による制御を開始するときの前記走行装置の重心位置を、前記走行装置の前側の第１の位置および後側の第２の位置のうちの何れか一方に設定する制御を行い、前記旋回制御手段による制御で前記走行装置の進行方向を９０度だけ変化させたときに、前記走行装置の重心位置を、前記第１の位置および前記第２の位置のうちの何れか他方に設定する制御を行う。
【発明の効果】
【０００７】
本発明によれば、往復走行路間距離を狙いの値に近づけることができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施形態の走行装置の走行経路の一例を示す図である。
【図２】図２は、走行装置の外観図である。
【図３】図３は、制御装置のハードウェア構成の一例を示す図である。
【図４】図４は、制御装置が有する機能の一例を示す図である。
【図５】図５は、実施形態において走行装置の重心位置を変化させる方法を説明するための図である。
【図６】図６は、実施形態において走行装置の重心位置を変化させる方法を説明するための図である。
【図７】図７は、走行装置が進行方向を１８０度変化させる場合の動作例を説明するための図である。
【図８】図８は、作業領域の俯瞰図である。
【図９】図９は、第１の撮像画像の一例を示す図である。
【図１０】図１０は、第２の撮像画像の一例を示す図である。
【図１１】図１１は、作業進捗率とエネルギー消費率との対応関係の一例を示す図である。
【図１２】図１２は、制御装置による制御方法の一例を示すフローチャートである。
【図１３】図１３は、変形例において走行装置が進行方向を１８０度変化させる場合の動作例を説明するための図である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照しながら、本発明に係る制御装置、走行装置、制御方法およびプログラムの実施形態を詳細に説明する。
【００１０】
図２は、本実施形態の走行装置１の外観図である。走行装置１は、閉領域内を自律走行する機能を有する。本実施形態における走行装置１は、耕作、除草、草刈、水／肥料／農薬の散布などの作業を行う装置であり、その走行経路は、図１に示すようなジグザグ経路である。すなわち、走行装置１は、その走行経路が、矩形状の閉領域（以下、「作業領域」と称する場合がある）の周縁を形成する４つの境界線（図１の例では、上側境界線、下側境界線、右側境界線および左側境界線）のうち互いに対向する２つの境界線（図１の例では、上側境界線と下側境界線）の一方（上側境界線）から他方（下側境界線）へ至るまで、他の互いに対向する２つの境界線(図１の例では左側境界線と右側境界線)のうちの一方（図１の例では左側境界線）から他方（図１の例では右側境界線）へ向かって直進し、他方の境界線に到達した場合は、進行方向を１８０度変化させて一方の境界線へ向かって直進し、一方の境界線に到達した場合は、進行方向を１８０度変化させて他方の境界線へ向かって直進するジグザグ走行を繰り返す。
【００１１】
図２に示すように、走行装置１は、本体２００と、履帯（キャタピラー（登録商標））２０１と、アーム２０２と、作業ユニット２０３と、撮像装置２０４と、を有している。また、本実施形態では、図１に示す矩形状（この例では長方形）の作業領域の４つの頂点の各々に、標識２０５（以下、「マーカ２０５」と称する）が設置されている。マーカ２０５間の距離は既知でなくてよいし、それぞれを区別（相異なる色などに）する必要もない。マーカ２０５は、自然界には存在しない人工物であり、既知の形状、サイズ、色とすることで、撮像装置２０４による撮像で得られた撮影画像からの認識処理を容易化している。本明細書において、「撮像」とは、レンズなどの光学系により結像された撮像対象の像を、電気信号に変換することを指す。また、作業領域内の草木などに遮蔽されないよう、マーカ２０５は、上下方向に延在する棒の先端などの高い位置に設置され、同様に、撮像装置２０４も走行装置１において高い位置に設置される。
【００１２】
また、本実施形態では、本体２００には、走行装置１を制御する制御装置１００が搭載されている。制御装置１００の具体的な内容については後述する。作業ユニット２０３は、走行装置１の走行に伴う作業に用いられ、かつ、本体２００に接続されたアーム２０２を介して吊り上げ可能な作業部材の一例である。また、撮像装置２０４は、所定の垂直視野の範囲で全方位を同時に撮像するとともに、矩形状の作業領域の頂点位置に設置されたマーカ２０５（４つのマーカ２０５）を撮像可能な装置である。つまり、撮像装置２０４は、撮像装置２０４を中心として水平３６０度の回転方向を一括して撮像する装置であり、特許第３４９４０７５号公報に開示されたカメラと同様の構成である。撮像装置２０４による撮像は、一定の周期で繰り返し行われる。
【００１３】
次に、制御装置１００の構成を説明する。図３は、制御装置１００のハードウェア構成の一例を示す図である。図３に示すように、制御装置１００は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、撮像装置Ｉ／Ｆ１０４と、メカ機構Ｉ／Ｆ１０５とを少なくとも備える。
【００１４】
ＣＰＵ１０１は、走行装置１の動作を統括的に制御する。ＲＯＭ１０２は、プログラムや各種のデータを記憶する不揮発性のメモリである。ＲＡＭ１０３は、ＣＰＵ１０１が実行する各種の演算の処理の作業領域（ワークエリア）として機能する揮発性のメモリである。撮像装置Ｉ／Ｆ１０４は、撮像装置２０４と接続するためのインタフェースである。メカ機構Ｉ／Ｆ１０５は、例えばアーム２０２を駆動するための機構や走行系の機構等の制御装置１００が制御する対象となるメカ機構３００と接続するためのインタフェースである。
【００１５】
図４は、制御装置１００が有する機能の一例を示す図である。図４に示すように、制御装置１００は、旋回制御手段１１１と、重心位置制御手段１１２と、取得手段１１３と、検出手段１１４と、特定手段１１５と、作業進捗率算出手段１１６と、エネルギー消費率算出手段１１７とを有する。なお、説明の便宜上、図４では、本実施形態に係る機能を主に例示しているが、制御装置１００が有する機能はこれらに限られるものではない。
【００１６】
旋回制御手段１１１は、走行装置１を超信地旋回させる制御を行う。超信地旋回とは、左右の車輪を逆方向に回転させることで、平行移動することなく車体の向きを変える旋回方式である。例えば左側の車輪を前進方向へ回転させるとともに、右側の車輪を後退方向へ回転させることで、走行装置１の重心を中心として時計回り（右回転）に回転させることができる。ここでは、超信地旋回は、旋回の中心（重心）がずれることはないことを前提とする。
【００１７】
重心位置制御手段１１２は、旋回制御手段１１１による制御で走行装置１の進行方向を１８０度変化させる途中で、走行装置１の重心位置を変化させる制御を行う。より具体的には、重心位置制御手段１１２は、旋回制御手段１１１による制御を開始するときの走行装置１の重心位置を、走行装置１の前側の第１の位置および後側の第２の位置のうちの何れか一方に設定する制御を行い、旋回制御手段１１１による制御で走行装置１の進行方向を９０度だけ変化させたときに、走行装置１の重心位置を、第１の位置および第２の位置のうちの何れか他方に設定する制御を行う。また、旋回制御手段１１１は、重心位置制御手段１１２により、走行装置１の重心位置が第１の位置および第２の位置のうちの何れか一方に設定された後に、走行装置１を、時計回りの回転方向または反時計回りの回転方向に９０度だけ超信地旋回させる第１の制御を行い、重心位置制御手段１１２により、走行装置１の重心位置が第１の位置および第２の位置のうちの何れか他方に設定された後に、走行装置１を、第１の制御における回転方向と同じ回転方向に９０度だけ超信地旋回させる第２の制御を行う。
【００１８】
本実施形態では、重心位置制御手段１１２は、作業ユニット２０３の吊り上げ位置を変化させる制御を行って、走行装置１の重心位置を変化させる。この例では、図５に示すように、作業ユニット２０３の吊り上げ位置が「Ａ」の場合、図６に示すように、走行装置１の重心位置は前側の第１の位置Ｇ１となる。また、図５に示すように、作業ユニット２０３の吊り上げ位置が「Ｂ」の場合、図６に示すように、走行装置１の重心位置は後側の第２の位置Ｇ２となる。
【００１９】
ただし、重心位置を変化させる方法は、これに限らず様々な方法を用いることができる。例えば走行装置１を走行させるためのエネルギーの一例である燃料（ガソリン等）を蓄える燃料タンクや作業において散布する液体を蓄える液体タンクを傾ける角度を変更することで重心位置を変更することもできるし、重心位置を調整するための錘等の部材の位置を移動することで重心位置を変更することもできる。
【００２０】
一例として、図１に示す右側境界線に到達した走行装置１が進行方向を１８０度変化させる場合の動作例を、図７を用いて説明する。まず、図７の（Ａ）に示すように、重心位置制御手段１１２は、旋回制御手段１１１による制御を開始するときの走行装置１の重心位置を、走行装置１の後側の第２の位置Ｇ２に設定する制御を行う。次に、図７の（Ｂ）に示すように、旋回制御手段１１１は、走行装置１を、時計回りの回転方向に９０度だけ超信地旋回させる制御（第１の制御）を行う。
【００２１】
次に、図７の（Ｃ）に示すように、重心位置制御手段１１２は、走行装置１の重心位置を、走行装置１の前側の第１の位置Ｇ１に設定する制御を行う。次に、図７の（Ｄ）に示すように、旋回制御手段１１１は、走行装置１を、時計回りの回転方向に９０度だけ超信地旋回させる制御（第２の制御）を行う。これにより、図７の（Ｅ）に示すように、旋回制御手段１１１による制御を開始するとき（図７の（Ａ））の走行装置１の重心位置Ｇ２を通る左右方向（図７の水平方向）の直線と、旋回制御手段１１１による制御を終了するとき（図７の（Ｄ））の走行装置１の重心位置Ｇ１を通る左右方向の直線との間の距離（往復走行路間距離に相当）αを、第１の位置Ｇ１と第２の位置Ｇ２との間の距離（重心位置の移動距離）に設定することができる。上述したように、超信地旋回では、旋回の中心（重心）がずれることはないので、走行装置１の進行方向を１８０度変化させる際の（走行装置１の進行方向を１８０度変化させる途中での）重心位置の移動距離（重心位置移動距離）を、往復走行路間距離の目標値と同じ値に制御することで、実際の往復走行路間距離を狙いの値に近づけることができる。なお、走行装置１の重量分布は設計段階で決まっているため、重心位置移動距離は正確にコントロールすることができる。これにより、高い精度で往復走行路間距離を狙いの値に近づけることができる。
【００２２】
図４の説明を続ける。取得手段１１３は、撮像装置２０４による撮像で得られた撮像画像を取得する。取得手段１１３は、撮像装置２０４による撮像が行われるたびに、その撮像で得られた撮像画像を撮像装置２０４から取得する。
【００２３】
検出手段１１４は、撮像画像に映り込んだ４つのマーカ２０５のうちの２つのマーカ２０５が１８０度離れた位置に存在し、かつ、該２つのマーカ２０５を結ぶ線を挟んで存在する２つの領域のうちの一方に、残りの２つのマーカ２０５が存在する場合、旋回制御手段１１１による制御を開始するタイミングを検出する。
【００２４】
一例として、走行装置１が右側境界線に到達した場合を例に挙げて説明する。図８は、作業領域を俯瞰した図であり、Ｐ、Ｑ、Ｒ、Ｓは、作業領域の４つの頂点に設置された４つのマーカ２０５を表している。図９は、走行装置１が右側境界線に到達した場合の撮像画像を示す図である。本実施形態の撮像装置２０４による撮像で得られる撮像画像は、通常のカメラと違い、円形に歪んだ画像となるが、撮像位置から見た対象物（マーカ２０５等のオブジェクト）の角度は正確に測定することができる。図９に示すように、撮像画像に映り込んだ４つのマーカ２０５のうち、Ｑに対応するマーカ２０５とＳに対応するマーカ２０５が１８０度離れた位置に存在し、かつ、Ｑに対応するマーカ２０５とＳに対応するマーカ２０５を結ぶ線を挟んで存在する２つの領域（図９に示す右側領域および左側領域）のうちの一方（図９の例では左側領域）に、残りの２つのマーカ２０５（Ｐに対応するマーカ２０５およびＲに対応するマーカ２０５）が存在するので、旋回制御手段１１１による制御を開始するタイミングを検出するための条件（以下、「旋回開始条件」と称する場合がある）が成立する。
【００２５】
図４の説明を続ける。特定手段１１５は、旋回制御手段１１１による制御を開始するときの撮像画像を示す第１の撮像画像と、旋回制御手段１１１による制御を終了するときの撮像画像を示す第２の撮像画像とに基づいて、マーカ２０５に対する走行装置１の位置を特定する。より具体的には、特定手段１１５は、走行装置１の進行方向を１８０度変化させる際の重心位置の移動距離を示す重心位置移動距離と、第１の撮像画像と、第２の撮像画像とに基づいて、旋回制御手段１１１による制御を開始するときの走行装置１の位置と、走行装置１が到達した境界線が有する２つの頂点のうちの一方の頂点と、の間の距離を示す第１の距離を算出するとともに、旋回制御手段１１１による制御を終了するときの走行装置１の位置と、走行装置１が到達した境界線が有する２つの頂点のうちの他方の頂点と、の間の距離を示す第２の距離を算出する。
【００２６】
一例として、旋回制御手段１１１による制御を開始するときの撮像画像（第１の撮像画像）は図９の態様であり、旋回制御手段１１１による制御を終了するとき（走行装置１の進行方向が１８０度変化したとき）の撮像画像（第２の撮像画像）は図１０の態様である場合を例に挙げて説明する。図１０においても、Ｑに対応するマーカ２０５とＳに対応するマーカ２０５が１８０度離れた位置に存在しているが、残りの２つのマーカ２０５（ＰおよびＲの各々に対応するマーカ２０５）は図９から多少ずれた角度位置になっている。
【００２７】
この場合、旋回制御手段１１１による制御を開始するときの走行装置１の位置Ａと、旋回制御手段１１１による制御を終了するときの走行装置１の位置Ｂとの間の距離は、往復走行路間距離に相当する重心位置移動距離αに等しいとみなすことができるので、「α」と表す。また、図９に示す第１の撮像画像におけるＲに対応するマーカ２０５とＳに対応するマーカ２０５との角度を「θＡ」、図１０に示す第２の撮像画像におけるＲに対応するマーカ２０５とＳに対応するマーカ２０５との角度を「θＢ」と表すと、Ｒに対応するマーカ２０５とＳに対応するマーカ２０５との距離ｄは以下の式１で表すことができる。
【数１】
0006600983.tif 000002
【００２８】
また、旋回制御手段１１１による制御を終了するときの走行装置１の位置ＢとＳに対応するマーカ２０５との距離（この例では「第２の距離」に対応）ｘは、以下の式２で表すことができる。このようにして、特定手段１１５は、α、θＡ、θＢから、第２の距離ｘを算出することができる。
【数２】
0006600983.tif 000003
【００２９】
また、図９に示す第１の撮像画像におけるＰに対応するマーカ２０５とＱに対応するマーカ２０５との角度を「λＡ」、図１０に示す第２の撮像画像におけるＰに対応するマーカ２０５とＱに対応するマーカ２０５との角度を「λＢ」と表すと、Ｐに対応するマーカ２０５とＱに対応するマーカ２０５との距離ｄは以下の式３で表すことができる。
【数３】
0006600983.tif 000004
【００３０】
また、旋回制御手段１１１による制御を開始するときの走行装置１の位置ＡとＱに対応するマーカ２０５との距離（この例では「第１の距離」に対応）ｙは、以下の式４で表すことができる。このようにして、特定手段１１５は、α、λＡ、λＢから、第１の距離ｙを算出することができる。
【数４】
0006600983.tif 000005
【００３１】
図４の説明を続ける。作業進捗率算出手段１１６は、第１の距離ｙと第２の距離ｘとに基づいて、走行装置１が行う作業の進捗率を示す作業進捗率（閉領域のうち走行装置１が走行した領域の割合を表す走行進捗率に相当）を算出する。この例では、作業進捗率（走行進捗率）は、第１の距離ｙを、第１の距離ｙと第２の距離ｘとの和で除算した値を示す。つまり、作業進捗率は、以下の式５で表すことができる。この例では、作業進捗率算出手段１１６は、請求項の「算出手段」に対応している。
【数５】
0006600983.tif 000006
【００３２】
図４に示すエネルギー消費率算出手段１１７は、走行装置１を走行させるためのエネルギーの消費率を算出する。エネルギー消費率は、走行開始時のエネルギー残量ｗから現在のエネルギー残量ｚを差し引いた値を、走行開始時のエネルギー残量ｗで除算した値を示す。つまり、エネルギー消費率は、以下の式６で表すことができる。なお、エネルギー消費率算出手段１１７は、任意の方法で、走行開始時のエネルギー残量ｗおよび現在のエネルギー残量ｚを取得することができる。例えば走行装置１を走行させるためのエネルギーが、ガソリンなどの燃料の場合、エネルギー消費率算出手段１１７は、燃料を蓄える燃料タンクの液面レベルから、走行開始時の燃料の残量ｗや現在の燃料の残量ｚを算出することもできる。また例えばエネルギーが、バッテリーなどの蓄電手段に蓄えられた電力である場合、エネルギー消費率算出手段１１７は、公知の様々な技術を利用して、走行開始時の蓄電量ｗや現在の蓄電量ｚを算出することができる。
【数６】
0006600983.tif 000007
【００３３】
ここで、走行装置１の走行中において、作業進捗率がエネルギー消費率より大きい状態を維持すれば問題ないが、その関係が逆転すると、エネルギー切れ（途中停止）を引き起こすことが予想される。図１１は、作業進捗率とエネルギー消費率との対応関係の一例を示す図である。図１１に示す傾き４５度の直線Ｋより上側の対応点Ｌでは、作業進捗率がエネルギー消費率を下回り、途中停止が予想される状態となる。
【００３４】
そこで、本実施形態では、重心位置制御手段１１２は、エネルギー消費率が走行進捗率を上回る場合は、重心位置移動距離を増加させる制御を行う。つまり、往復走行路間距離αを大きくし、走行装置１が担う作業幅βに近づける。これにより、蛇行走行により発生する小さな作業漏れは許容しつつ、途中停止により巨大な作業漏れが発生する確率を下げることができる。往復走行路間距離αを大きくすることは、走行装置１の進行方向を１８０度変化させる際の重心位置移動距離を増加させること、つまり、アーム２０２の回転角度を増加させることで実現できる。図５の例においては、作業ユニット２０３を位置Ｂよりも後方の位置まで吊り上げることになる（この例では、第１の位置Ｇ１は変化させずに、第２の位置Ｇ２を変化させる）。要するに、本実施形態における重心位置制御手段１１２は、特定手段１１５により特定された走行装置１の位置と、走行装置１を走行させるためのエネルギーの消費率を示すエネルギー消費率と、に基づいて、走行装置１の進行方向を１８０度変化させる際の重心位置の移動距離を示す重心位置移動距離を変化させることができる。
【００３５】
本実施形態では、上述した制御装置１００が有する機能（旋回制御手段１１１、重心位置制御手段１１２、取得手段１１３、検出手段１１４、特定手段１１５、作業進捗率算出手段１１６、エネルギー消費率算出手段１１７）は、ＣＰＵ１０１がＲＯＭ１０２等の記憶装置に格納されたプログラムを実行することにより実現される。なお、これに限らず、例えば上述した制御装置１００が有する機能のうちの少なくとも一部が専用のハードウェア回路（例えば半導体集積回路等）で実現されてもよい。
【００３６】
図１２は、本実施形態の制御装置１００による制御方法の一例を示すフローチャートである。まず、走行装置１を利用する作業者（ユーザ）は、作業ユニット２０３が地面から離れた状態（例えば図５のＡとＢの中間位置）にした走行装置１を、作業領域の左上の端部に置いた状態で、自律走行の開始を指示する操作を行う。この操作を受け付けた制御装置１００は、作業ユニット２０３を地面に接する位置（図５のＣ）まで下げるようにアーム２０２を駆動する制御を行う（ステップＳ９０１）。次に、制御装置１００は、走行装置１を直進させ、撮像装置２０４による撮像（一定周期の撮像）を開始させる制御を行う（ステップＳ９０２）。走行装置１は、走行開始時の地磁気方位を維持しながら、または、撮像画像において前方に存在するマーカ２０５の角度や直前経路の作業痕跡などから直進を保つ。
【００３７】
次に、制御装置１００は、撮像装置２０４から撮像画像を取得するたびに、その取得した撮像画像から、上述の旋回開始条件を満たすか否かを判断する（ステップＳ９０３）。旋回開始条件を満たさない場合（ステップＳ９０３：Ｎｏ）、ステップＳ９０２以降の処理を繰り返す。一方、旋回開始条件を満たす場合（ステップＳ９０３：Ｙｅｓ）、制御装置１００は、旋回開始条件を満たすときの撮像画像、つまり、旋回制御手段１１１による制御を開始するときの第１の撮像画像から、上述の角度λＡおよび上述の角度θＡを計測する（ステップＳ９０４）。次に、制御装置１００は、走行装置１の重心位置を第２の位置Ｇ２に設定する制御を行う（ステップＳ９０５）。
【００３８】
次に、制御装置１００は、走行装置１を、時計回りの回転方向または反時計回りの回転方向に９０度だけ超信地旋回させる第１の制御を行う（ステップＳ９０６）。この例では、１回目の第１の制御においては、走行装置１を、時計回りの回転方向に９０度だけ超信地旋回させ、２回目以降の第１の制御においては、走行装置１を、前回の回転方向と逆の回転方向に９０度だけ超信地旋回させる（時計回りの回転方向に９０度旋回→反時計回りの回転方向に９０度旋回→時計回りの回転方向に９０度旋回→・・・）。
【００３９】
次に、制御装置１００は、走行装置１の重心位置を第１の位置Ｇ１に設定する制御を行う（ステップＳ９０７）。次に、制御装置１００は、走行装置１を、上述のステップＳ９０６での第１の制御における回転方向と同じ回転方向に９０度だけ超信地旋回させる第２の制御を行う（ステップＳ９０８）。この例では、１回目の第２の制御においては、走行装置１を、時計回りの回転方向に９０度だけ超信地旋回させ、２回目以降の第２の制御においては、走行装置１を、前回の回転方向と逆の回転方向に９０度だけ超信地旋回させることになる（時計回りの回転方向に９０度旋回→反時計回りの回転方向に９０度旋回→時計回りの回転方向に９０度旋回→・・・）。
【００４０】
次に、制御装置１００は、走行装置１の進行方向が１８０度変化したときの撮像画像を示す第２の撮像画像から、上述の角度λＢおよび上述の角度θＢを計測する（ステップＳ９０９）。次に、制御装置１００は、作業進捗率を算出する（ステップＳ９１０）。具体的な内容は上述したとおりであるが、制御装置１００は、走行装置１の進行方向を１８０度変化させる際の重心位置の移動距離を示す重心位置移動距離α（ステップＳ９０４で設定した重心位置と、ステップＳ９０５で設定した重心位置との間の距離）、上述の角度θＡ、上述の角度θＢから、第２の距離ｘを算出する。また、制御装置１００は、重心位置移動距離αと、上述の角度λＡ、上述の角度λＢから、第１の距離ｙを算出する。そして、上述の式５により、作業進捗率を算出することができる。
【００４１】
次に、制御装置１００は、ステップＳ９１０で算出した作業進捗率が所定値（１００％に近い値）を超えているか否かを判断する（ステップＳ９１１）。作業進捗率が所定値を超えている場合（ステップＳ９１１：Ｙｅｓ）、制御装置１００は、走行装置１の走行を停止させて処理を終了する。
【００４２】
一方、作業進捗率が所定値以下の場合（ステップＳ９１１：Ｎｏ）、制御装置１００は、エネルギー消費率を算出する（ステップＳ９１２）。この算出方法は上述したとおりである。そして、制御装置１００は、作業進捗率がエネルギー消費率を下回るか否かを判断する（ステップＳ９１３）。作業進捗率がエネルギー消費率以上の場合（ステップＳ９１３：Ｎｏ）、そのまま処理はステップＳ９０１に移行する。一方、作業進捗率がエネルギー消費率を下回る場合（ステップＳ９１３：Ｙｅｓ）、制御装置１００は、重心位置移動量を変更する（ステップＳ９１４）。この具体的な内容は上述したとおりである。そして、処理はステップＳ９０１に移行する。
【００４３】
以上に説明したように、本実施形態の重心位置制御手段１１２は、走行装置１を超信地旋回させる旋回制御手段１１１による制御で走行装置１の進行方向を１８０度変化させる途中で、走行装置１の重心位置を変化させる制御を行う。より具体的には、重心位置制御手段１１２は、旋回制御手段１１１による制御を開始するときの走行装置１の重心位置を、走行装置１の後側の第２の位置Ｇ２に設定し、旋回制御手段１１１による制御で走行装置１の進行方向を９０度だけ変化させたときに、走行装置１の重心位置を、走行装置１の前側の第１の位置Ｇ１に設定する制御を行う。また、旋回制御手段１１１は、重心位置制御手段１１２により、走行装置１の重心位置が第２の位置Ｇ２に設定された後に、走行装置１を、時計回りの回転方向または反時計回りの回転方向に９０度だけ超信地旋回させる第１の制御を行い、重心位置制御手段１１２により、走行装置１の重心位置が第１の位置Ｇ１に設定された後に、走行装置１を、第１の制御における回転方向と同じ回転方向に９０度だけ超信地旋回させる第２の制御を行う。
【００４４】
上述したように、超信地旋回では、旋回の中心（重心）がずれることはないので、走行装置１の進行方向を１８０度変化させる際の重心位置の移動距離（重心位置移動距離）を、往復走行路間距離の目標値と同じ値に制御することで、実際の往復走行路間距離を狙いの値に近づけることができる。
【００４５】
以上、本発明に係る実施形態について説明したが、本発明は、上述の実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【００４６】
例えば図７の手順の代わりに、図１３に示す手順で、走行装置１の進行方向を１８０度変化させることもできる。まず、図１３の（Ａ）に示すように、重心位置制御手段１１２は、旋回制御手段１１１による制御を開始するときの走行装置１の重心位置を、走行装置１の前側の第１の位置Ｇ１に設定する制御を行う。次に、図１３の（Ｂ）に示すように、旋回制御手段１１１は、走行装置１を、図７とは逆の反時計回りの回転方向に９０度だけ超信地旋回させる制御（第１の制御）を行う。
【００４７】
次に、図１３の（Ｃ）に示すように、重心位置制御手段１１２は、走行装置１の重心位置を、走行装置１の後側の第２の位置Ｇ２に設定する制御を行う。次に、図１３の（Ｄ）に示すように、旋回制御手段１１１は、走行装置１を、反時計回りの回転方向に９０度だけ超信地旋回させる制御（第２の制御）を行う。これにより、図７の（Ｅ）と同様に、往復走行路間距離αを、第１の位置Ｇ１と第２の位置Ｇ２との間の距離（重心位置の移動距離）に設定することができる（図１３の（Ｅ））。
【００４８】
要するに、重心位置制御手段１１２は、旋回制御手段１１１による制御を開始するときの走行装置１の重心位置を、走行装置１の前側の第１の位置Ｇ１および後側の第２の位置Ｇ２のうちの何れか一方に設定する制御を行い、旋回制御手段１１１による制御で走行装置１の進行方向を９０度だけ変化させたときに、走行装置１の重心位置を、第１の位置Ｇ１および第２の位置Ｇ２のうちの何れか他方に設定する制御を行う形態であればよい。そして、旋回制御手段１１１は、重心位置制御手段１１２により、走行装置１の重心位置が第１の位置Ｇ１および第２の位置Ｇ２のうちの何れか一方に設定された後に、走行装置１を、時計回りの回転方向または反時計回りの回転方向に９０度だけ超信地旋回させる第１の制御を行い、重心位置制御手段１１２により、走行装置１の重心位置が第１の位置Ｇ１および第２の位置Ｇ２のうちの何れか他方に設定された後に、走行装置１を、第１の制御における回転方向と同じ回転方向に９０度だけ超信地旋回させる第２の制御を行う形態であればよい。
【００４９】
なお、上述の実施形態では、走行装置１は、履帯２０１を備える形態を例に挙げて説明したが、これに限らず、例えば走行装置１は、履帯２０１を備えずに、それぞれが独立して駆動する４つの車輪を備える形態であってもよい。
【００５０】
（プログラム）
上述した制御装置１００のＣＰＵ１０１が実行するプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよいし、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、各種プログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【符号の説明】
【００５１】
１      走行装置
１００  制御装置
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  撮像装置Ｉ／Ｆ
１０５  メカ機構Ｉ／Ｆ
１１１  旋回制御手段
１１２  重心位置制御手段
１１３  取得手段
１１４  検出手段
１１５  特定手段
１１６  作業進捗率算出手段
１１７  エネルギー消費率算出手段
２００  本体
２０１  履帯
２０２  アーム
２０３  作業ユニット
２０４  撮像装置
２０５  マーカ
３００  メカ機構
【先行技術文献】
【特許文献】
【００５２】
【特許文献１】特開２００７−１４５１０８号公報
【特許文献２】特許第３４９４０７５号公報
【図１】
0006600983.tif 000008
【図２】
0006600983.tif 000009
【図３】
0006600983.tif 000010
【図４】
0006600983.tif 000011
【図５】
0006600983.tif 000012
【図６】
0006600983.tif 000013
【図７】
0006600983.tif 000014
【図８】
0006600983.tif 000015
【図９】
0006600983.tif 000016
【図１０】
0006600983.tif 000017
【図１１】
0006600983.tif 000018
【図１２】
0006600983.tif 000019
【図１３】
0006600983.tif 000020