(57)【要約】      （修正有）【課題】車輪に対するコードの絡まりがあった場合の異常状態を適切に検出可能な自律移動装置等を提供する。【解決手段】駆動モータのトルク値を検出する検出手段１７０と、走行中の路面状況を判定する路面状況判定手段と、判定された路面状況に対応する基準値を取得する基準値取得手段と、検出されたトルク値と、取得された基準値１４４との差が、絡まり閾値を超えた場合には、車輪にコードが絡まったと判定１４６し、自律移動装置の動作を停止する。【選択図】図３
2016148950.tif 000002
【特許請求の範囲】
【請求項１】
駆動モータのトルク値を検出する検出手段と、
走行中の路面状況を判定する路面状況判定手段と、
判定された路面状況に対応する基準値を取得する基準値取得手段と、
前記検出されたトルク値と、前記取得された基準値との差が、絡まり閾値を超えた場合には、車輪にコードが絡まったと判定し、自律移動装置の動作を停止する制御を行う制御手段と、
を備えることを特徴とする自律移動装置。
【請求項２】
前記制御手段は、
前記検出されたトルク値と、前記取得された基準値との差が、前記絡まり閾値より小さい漸増閾値を所定回数連続して超えた場合には、車輪にコードが絡まったと判定し、自律移動装置の動作を停止する制御を行うことを特徴とする請求項１に記載の自律移動装置。
【請求項３】
駆動モータのトルク値を検出する検出手段と、
走行中の路面状況を判定する路面状況判定手段と、
判定された路面状況に対応する基準値を取得する基準値取得手段と、
前記検出されたトルク値が変化した場合には、変化した差分をトルク変化量として算出するトルク変化量算出手段と、
前記トルク値が変化した後の路面状況と、当該トルク値が変化する前の路面状況との基準値の変化量を路面状況変化量として算出する路面状況変化量算出手段と、
前記トルク変化量が、前記路面状況変化量を超えた場合には、車輪にコードが絡まったと判定し、自律移動装置の動作を停止する制御を行う制御手段と、
を備えることを特徴とする自律移動装置。
【請求項４】
前記駆動モータは、ＰＷＭ駆動されており、
前記トルク値は、ＰＷＭ信号のＰＷＭ値であることを特徴とする請求項１から３の何れか一項に記載の自律移動装置。
【請求項５】
前記制御手段は、
前記車輪にコードが絡まったと判定した場合には、駆動モータを所定時間逆回転動作を行う制御をすることを特徴とする請求項１から４の何れか一項に記載の自律移動装置。
【請求項６】
自律移動装置において実行されるコンピュータに、
前記自律移動装置の駆動モータのトルク値を検出する検出ステップと、
前記自律移動装置の走行中の路面状況を判定する路面状況判定ステップと、
判定された路面状況に対応する基準値を取得する基準値取得ステップと、
前記検出されたトルク値と、前記取得された基準値との差が、絡まり閾値を超えた場合には、前記自律移動装置の車輪にコードが絡まったと判定し、当該自律移動装置の動作を停止する制御を行う制御ステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自律移動装置等に関する。
【背景技術】
【０００２】
指示されたルートを移動する自律移動装置が知られている。自律移動装置は、進行方向に対して障害物等があった場合は停止する必要がある。そのために、ＬＩＤＡＲやカメラ等で障害物を検知する方法が知られている（例えば、特許文献１、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−０７８４７６号公報
【特許文献２】特開２０１０−１４０２４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
現在、予め決められた巡回ルートを巡回する自律移動装置が登場しつつある。この自律移動装置は、無人の小型の移動装置であり、例えば警備巡回等に用いられる。そのため、所定の間隔で巡回ルートを巡回している必要がある。
【０００５】
このとき、巡回ルートに、コード、ケーブルといった障害物が存在する可能性がある。コード、ケーブル等は、従来のセンサでは検知しにくく見逃す可能性が高かった。このまま走行すると、車輪にコードが絡まってしまう。
【０００６】
さらに、コードが車輪に絡まったまま走行すると、コードが別のものを倒すなどの二次被害が生じる恐れがあるという問題点も生じていた。
【０００７】
安全性を高めるために、単純に車輪の回転の異常を検知して異常停止するものはある。しかし、回転異常が発生する場面は、コード絡まりだけではなく、路面の状態が変わって抵抗が大きくなった場合もある。このため、不必要に停止してしまうという問題点が生じてしまう。前述したような、警備巡回等の場合は、必要以上に停止してしまうのは好ましくない。
【０００８】
上述した課題に鑑み、本発明が目的とするところは、車輪に対するコードの絡まりがあった場合の異常状態を適切に検出可能な自律移動装置等を提供することである。
【課題を解決するための手段】
【０００９】
上述した課題を解決するために、本発明の自律移動装置は、
駆動モータのトルク値を検出する検出手段と、
走行中の路面状況を判定する路面状況判定手段と、
判定された路面状況に対応する基準値を取得する基準値取得手段と、
前記検出されたトルク値と、前記取得された基準値との差が、絡まり閾値を超えた場合には、車輪にコードが絡まったと判定し、自律移動装置の動作を停止する制御を行う制御手段と、
を備えることを特徴とする。
【００１０】
本発明のプログラムは、
自律移動装置において実行されるコンピュータに、
前記自律移動装置の駆動モータのトルク値を検出する検出ステップと、
前記自律移動装置の走行中の路面状況を判定する路面状況判定ステップと、
判定された路面状況に対応する基準値を取得する基準値取得ステップと、
前記検出されたトルク値と、前記取得された基準値との差が、絡まり閾値を超えた場合には、前記自律移動装置の車輪にコードが絡まったと判定し、当該自律移動装置の動作を停止する制御を行う制御ステップと、
を実行させることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、駆動モータのトルク値を検出し、走行中の路面状況に応じて判定された路面状況に対応する基準値を取得する。そして、検出されたトルク値と、取得された基準値との差が、絡まり閾値を超えた場合には、車輪にコードが絡まったと判定し、自律移動装置の動作を停止することとなる。これにより、単純にトルク値のみで判定するのと比較し、適切にコードの絡まりを判定することができる。
【図面の簡単な説明】
【００１２】
【図１】自律移動装置の全体を説明するための図である。
【図２】自律移動装置の全体を説明するための図である。
【図３】第１実施形態における自律移動装置の機能構成を説明するための図である。
【図４】第１実施形態における巡回ルートを説明するための図である。
【図５】第１実施形態における基準値テーブルの構成の一例を示した図である。
【図６】第１実施形態における動作例（巡回処理）を説明するための図である。
【図７】第１実施形態における動作例（コード絡まり検出処理）を説明するための図である。
【図８】第２実施形態における摩耗判定処理についての動作フローである。
【図９】第３実施形態における自律移動装置の機能構成を説明するための図である。
【図１０】第４実施形態における自律移動装置の機能構成を説明するための図である。
【図１１】第５実施形態における学習保存処理についての動作フローである。
【図１２】第６実施形態における機能構成図、動作フローである。
【図１３】第７実施形態における動作フローである。
【図１４】第８実施形態における動作フローである。
【図１５】第９実施形態における機能構成図、動作フローである。
【図１６】第１０実施形態における動作フローである。
【図１７】第１１実施形態における動作フローである。
【図１８】第１２実施形態における機能構成図、動作フローである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について、図面を参照して説明する。なお、本実施形態では、一例として、本発明における自律移動装置を警備用巡回ロボットに適用した場合の例について説明する。
【００１４】
［１．第１実施形態］
［１．１  全体構成］
まず、本明細書における自律移動装置１について、図１、図２を用いて説明する。図１は、自律移動装置１を側面から模式的に表した図であり、図２は、自律移動装置１を上面から模式的に表した図である。
【００１５】
自律移動装置１は、車体１０と、アーム部２０とがヒンジ部分で接続されており、クラムシェルの構造となっている。また、アーム部２０の先端には位置検出部・障害検出部３０が設けられている。例えば、車体前方を撮影可能な視覚センサ（カメラ等）を備えることにより、車体前方の画像を解析して位置を検出したり、障害を検出したりする。
【００１６】
また、車体１０には、車輪１２が４つ設けられている。この車輪１２は、右側と左側とがそれぞれ無端ベルト１４で接続されており、それぞれの車輪が駆動するようになっている。また、この無端ベルト１４は、駆動モータ１６による駆動力により駆動しており、ギア１８を介して接続されている。
【００１７】
また、この駆動モータ１６は、バッテリ４０から供給される電力により駆動している。左右の駆動モータ１６は、それぞれ動作させることが可能であり、右側の車輪１２と、左側の車輪１２はそれぞれ別に駆動させることが可能である。
【００１８】
ここで、本実施形態の自律移動装置１は、車輪（４輪）を有し、旋回動作として定置旋回（超信地旋回）が可能である。駆動モータ１６にはエンコーダが備わっており、駆動モータ１６の回転数を検知して制御が可能である。すなわち、人間が搭乗する自動車等とことなり、定量旋回が可能な無人の自律移動装置である。
【００１９】
［１．２  機能構成］
つづいて、本実施形態における自律移動装置１の機能構成について、図３（ａ）を用いて説明する。図３（ａ）に示すように、制御部１１０と、画像入力部１２０と、画像処理部１３０と、記憶部１４０と、ＧＰＳ受信部１５０と、駆動制御部１６０と、トルク値検出部１７０とがそれぞれ接続されている。
【００２０】
制御部１１０は、自律移動装置１の全体を制御するための機能部である。制御部１１０は、記憶部１４０に記憶されている各種プログラムを読み出して実行することにより各種機能を実現しており、例えばＣＰＵ（Central Process Unit）を備えて構成されている。
【００２１】
画像入力部１２０は、画像を入力するための機能部であり、入力された画像は、画像データとして画像処理部１３０に出力される。
【００２２】
画像処理部１３０は、画像入力部１２０から入力された画像データに基づいて、各種画像処理を行う機能部である。例えば、障害物検出を行ったり、後述する基準点の検出を行ったりすることが可能である。
【００２３】
記憶部１４０は、自律移動装置１の動作に必要な各種プログラムや、各種データが記憶されている機能部である。記憶部１４０は、例えば、半導体メモリや、ＨＤＤ（Hard Disk Drive）等により構成されている。また、各情報はクラウドサーバ上に記憶されても良い。この場合、通信部（不図示）を介して、クラウドサーバに各種データ、プログラムを記憶し、その都度読み出すこととしても良い。
【００２４】
また、記憶部１４０には、巡回情報１４２と、基準値テーブル１４４と、判定閾値テーブル１４６とが記憶されている。
【００２５】
巡回情報１４２は、本実施形態における自律移動装置１が、巡回する地図情報（位置情報）が記憶されている。例えば、図４に示すように、太線のルートを巡回ルートとした場合、この巡回ルートが記憶されている。自律移動装置１は、巡回情報１４２により、太線の位置を自律移動することが可能となっている。これにより、警備巡回等に利用することが可能となる。
【００２６】
基準値テーブル１４４は、路面状況（路面の状況であったり、位置情報等）に対応した基準値が記憶されている。例えば、図５に示すように、路面状況や、自律移動装置１の位置における基準となるトルク値とが記憶されている。ここで、トルク値は、トルク値検出部１７０より出力される値等である。
【００２７】
トルク値としては、種々の値が記憶されることが考えられる。例えば、図５においては、路面・位置に対応して、トルク出力値（Ｎ・ｍ）や、ＰＷＭ  ｄｕｔｙ比（％）、電流値（Ａ）が記憶されている。例えば、通常や、砂利道、上りスロープの初期値が記憶されていたり、位置（例えば、粗い砂利道の区間Ｐ１０〜Ｐ１２であったり、ゆるやかな上りスロープの状態である（Ｘ１，Ｙ１）〜（Ｘ２，Ｙ２））に応じて測定された実データの値がそれぞれ記憶されている。
【００２８】
また、図５では、各実施形態で利用されるトルク値として複数記憶されているが、必要に応じて利用される値が記憶されれば良い。すなわち、少なくともトルク値検出部１７０が出力する種類の値と同じものが記憶されていれば良い。
【００２９】
判定閾値テーブル１４６は、各種閾値が記憶されている。例えば、絡まり閾値が記憶されており、現在のトルク値と基準値との差が当該閾値を超えると絡まりがおきたことを検出する。例えば、本実施形態においては、絡まり閾値としては２０％とする。これにより、基準値テーブル１４４に記憶されている基準値に対して２０％以上変動があった場合には、絡まりがあったと判定する。
【００３０】
例えば、砂利道の場合、電流値は４（Ａ）となっている。ここで、現在出力している電流値が４．８（Ａ）以上となった場合には、絡まりがあったと判定される。
【００３１】
ＧＰＳ受信部１５０は、ＧＰＳ（Global Positioning System）衛星からの信号を受信し、自律移動装置１の位置情報を出力するための機能部である。
【００３２】
駆動制御部１６０は、自律移動装置１の駆動（例えば、図２の駆動モータ１６）を制御するための機能部である。駆動モータ１６を制御することにより、前進、後退、転回等という動作が可能となる。
【００３３】
また、トルク値検出部１７０は、駆動モータ１６等に係る負荷を検出し出力する機能部である。出力される負荷としては、通常のトルク（Ｎ・ｍ）であったり、ＰＷＭ値であったり、モータ回転数といった値である。すなわち、自律移動装置１に係る負荷が検出可能であれば良い。
【００３４】
トルク値検出部１７０は、図３（ａ）のように別の構成としても良いし、駆動制御部１６０に含まれることとしても良い。例えば、本実施形態における駆動制御部１６０の構成について、図３（ｂ）を用いて説明する。
【００３５】
自律移動装置１の速度値（以降、目標速度値と呼ぶ）は、目標速度値を含むコマンドに変換された後、制御部１１０から、駆動制御部１６０にコマンド送信される。駆動制御部１６０は、コマンド受信部１６２により受信したコマンドから目標速度値を取りだし、回転制御部１６４に出力される。
【００３６】
回転制御部１６４は、モータへの負荷や車体走行の安定性を考慮して速度リミットや加減速台形制御などを行い、最終的な駆動モータの目標回転速度を計算する。
【００３７】
ｄｕｔｙ比算出部１６６は、駆動モータ１６の目標回転速度に対してＰＷＭ制御を行う為のｄｕｔｙ比を算出する。算出されたｄｕｔｙ比にて、ＰＷＭ信号出力部１６８は、ＰＷＭ信号を駆動モータ１６へ出力する。また、このＰＷＭ信号（ＰＷＭ値）を、トルク値検出部１７０は、現在のトルクとして検出する。すなわち、ＰＷＭ信号出力部１６８が、トルク値検出部として機能しても良い。
【００３８】
駆動モータ１６への出力に対し、エンコーダ１８０は、車輪の回転速度を検出する。そして、検出された車輪の回転速度と目標速度との偏差は回転制御部１６４に帰還される。
【００３９】
回転制御部１６４では、制御部１１０から取得した速度値から、エンコーダを通じて帰還された偏差を差し引いた値を駆動モータ１６へ出力することで、目標速度を保つ様車輪回転制御を行う。
【００４０】
［１．３  処理の流れ］
続いて、本実施形態における処理の流れを、図を用いて説明する。まず、メインとなる巡回処理について図６を用いて説明する。
【００４１】
まず、巡回を開始すると（ステップＳ１０２；Ｙｅｓ）、位置情報を検出する（ステップＳ１０４）。ここで、コード絡まり検出処理が実行され（ステップＳ１０６）、コード絡まりがあるか否かを判定する。ここで、コード絡まりが検出された場合は、動作を停止する（ステップＳ１１０；Ｙｅｓ→ステップＳ１１２）。
【００４２】
他方、コード絡まりがない場合は（ステップＳ１１０；Ｎｏ）、巡回を終了するまで繰り返し処理を実行する（ステップＳ１１４；Ｎｏ→ステップＳ１０４）。
【００４３】
動作を停止したか（ステップＳ１１０；Ｙｅｓ→ステップＳ１１２）、巡回を終了すると（ステップＳ１１４；Ｙｅｓ）、本処理を終了する。
【００４４】
続いて、コード絡まり検出処理について、図７を用いて説明する。まず、現在のトルク値を検出する（ステップＳ１５２）。ここで、本実施形態においては、検出されるトルク値は、ＰＷＭ値を検出する。すなわち、ＰＷＭ信号出力部１６８が出力するＰＷＭ信号（ＰＷＭ値）を検出することとなる。
【００４５】
次に、現在の路面状況を判定し、路面状況に対応する基準値を基準値テーブル１４４より取得する（ステップＳ１５４）。ここで、路面状況を判定するのは、例えば、撮影された画像から、現在の路面状況を判定したり、ＧＰＳ受信部１５０により受信された位置情報から、現在の路面状況を判定したりする。
【００４６】
次に、ステップＳ１５２で取得されたトルク値（本実施形態ではＰＷＭ値）と、基準値との差が、判定閾値テーブル１４６に記憶されている絡まり閾値を超えたか否かを判定する（ステップＳ１５６）。具体的には、基準値テーブル１４４に記憶されている基準値より２０％以上になった（又は２０％を超えた）か否かを判定する。
【００４７】
絡まり閾値を超えた場合には、コード絡まりフラグ（Ｆ）は「ＯＮ」となる（ステップＳ１５６；Ｙｅｓ→ステップＳ１５８）。他方、絡まり閾値を以下の場合は、コード絡まりフラグは「ＯＦＦ」となる（ステップＳ１５６；Ｎｏ→ステップＳ１６０）。
【００４８】
［１．４  動作例］
具体的な動作について説明する。まず、画像入力部１２０（例えば、カメラ）にて、路面状況の撮影画像を一定間隔毎に判定する。判定された路面状況は記憶されても良い。また、このときの撮影時刻及びＧＰＳ受信部１５０により計測した位置データも同時に記憶してもよい。特に、自動走行の周回ルートが巡回情報１４２により決まっている場合は、走行ルート上のどの位置かを判定し、記録しておくことも有効である。
【００４９】
トルク値検出部１７０は、駆動制御部１６０が出力する駆動モータに対するＰＷＭ信号の出力値（ＰＷＭ値）を検出する。具体的には、ＰＷＭ信号出力部１６８が出力するＰＷＭ値を検出する。
【００５０】
そして、ＰＷＭ値と、基準値との差が絡まり閾値を超えたと判定された場合には、コードが絡まったと判定し、コード絡まりＦ（フラグ）を「ＯＮ」とする。
【００５１】
このように、本実施形態によれば、取得されるトルク値に基づいて、コードが絡まったか否かを適切に判定することが可能となる。
【００５２】
［２．第２実施形態］
続いて、第２実施形態について説明する。第２実施形態は、トルク値が変化した場合にコードが絡まったか否かを判定する実施形態である。すなわち、路面抵抗が平均して一定の路上であればトルク値（ＰＷＭ値）も平均して一定となるが、このＰＷＭ値が大きくなった場合には、路面抵抗や傾斜角等の路面状況が変化したか、もしくは車輪への何らかの物体の巻き込みによる異常により車輪を回すのに必要なトルク自体が変化したことが考えられるからである。
【００５３】
なお、本実施形態は、第１実施形態及び一部処理と構成は同一であるため、その説明を省略する。すなわち、第１実施形態におけるコード絡まり検出処理を、図８で示す第２コード絡まり検出処理で置き換えた実施形態である。
【００５４】
まず、現在のトルク値を検出する（ステップＳ２０２）。ここで、現在のトルク値と、従前のトルク値（例えば、測定単位時間辺り前のタイミングで測定した値）とを比較し、変化閾値（例えば、「２０％」）を超えた変化値があったか否かを判定する（ステップＳ２０４）。ここで変化閾値とは、トルク値が変化したと判定する為の閾値である。おおよそ「０」である。そして、路面状況等に応じて、誤差の範囲が記憶されている。
【００５５】
現在のトルク変化値が、変化閾値を超えて変化した場合には（ステップＳ２０４；Ｙｅｓ）、トルク値の差分をトルク変化量として算出する（ステップＳ２０６）。また、現在の判定された路面状況から基準値を算出し、路面状況の変化による基準値の差分を路面状況変化量として算出する（ステップＳ２０８）。
【００５６】
具体的な動作としては、例えば、画像入力部１２０により撮影される現在の路面状況撮影画像と、記憶された直前までの時刻の路面撮影画像との比較を行う。比較方法としては様々あるが、大別して画素での比較もしくは周波数領域での比較となり、望ましくは路面の変化をより明確に知る事の出来る周波数領域での比較により、こまかなノイズを取り除いて比較を行うのがよい。
【００５７】
路面状況が変わったと判断される場合には、その変化度合から推測される路面状況における基準値の変化量（路面状況変化量）を基準値テーブル１４４から読み出す。この基準値は、実際の設定ルート上のテスト走行等で路面状況の変化に対するＰＷＭ値の対応表を作成するのが望ましい。
【００５８】
周回ルートが決まっている場合は、路面状況の変化するポイント（図４におけるＰ１０、Ｐ１２、Ｐ１４）を予め（例えばテスト走行時や、周回１周目）に、基準値テーブル１４４に記憶しておく。
【００５９】
すなわち、ステップＳ２０８において、変化の前後から路面状況変化量を算出してもよいし、予め路面状況変化量を基準値テーブル１４４に記憶しておいても良い。例えば、Ｐ１０の地点で、どのように基準値が変化するかを予め記憶しておいてもよい。
【００６０】
そして、トルク変化量が、路面状況変化量を超えた場合には、必要以上に負荷がかかっている、すなわちコードが絡まっていると判定し、コード絡まりＦ（フラグ）を「ＯＮ」とする（ステップＳ２１０；Ｙｅｓ→ステップＳ２１２）。
【００６１】
他方、それ以外の場合（ステップＳ２０４；Ｎｏ／ステップＳ２１０；Ｎｏ）の場合には、コードは絡まっていないと判定し、コード絡まりＦを「ＯＦＦ」とする（ステップＳ２１４）。
【００６２】
このように、本実施形態においては、トルク値の変化により、コードが絡まっているか否かを判定することが可能となる。これにより、駆動モータのトルクの変化によって、タイヤに絡まりがあったか否かを判定することが可能となる。
【００６３】
［３．第３実施形態］
つづいて、第３実施形態について説明する。第３実施形態は、トルク値としてモータ負荷値（電流値）を検出する場合の実施形態について説明する。
【００６４】
本実施形態の処理を、図９を用いて説明する。まず、現在のトルク値（モータ負荷値）として、電流値を検出する（ステップＳ３０２）。すなわち、駆動モータ１６に対する電流値をトルク値として検出する。なお、本実施形態の駆動モータ１６は、例えば直流モータ等により構成されている。
【００６５】
続いて、路面状況を判定し、基準値テーブル１４４から基準値を取得する（ステップＳ３０４）。基準値テーブルには、路面状況に対応した電流値が記憶されている。
【００６６】
そして、現在の電流値と、基準値との差が絡まり閾値を超えた場合にはコードが絡まっていると判定されるため、コード絡まりＦが「ＯＮ」となる（ステップＳ３０６；Ｙｅｓ→ステップＳ３０８）。現在の電流値と基準値との差が絡まり閾値以下の場合には、コード絡まりＦが「ＯＦＦ」となる（ステップＳ３０６；Ｎｏ→ステップＳ３１０）。
【００６７】
本実施形態における絡まり閾値は、割合（例えば、「２０％」）であっても良いし、絶対値（例えば、「０．８Ａ」）であっても良い。割合の場合は、電流値と、基準値の差と、基準値と比較して、例えば２０％以上となる場合には絡まりがあったと判定する。絶対とであれば、電流値と、基準値との差が０．８Ａ以上となったときに、絡まりがあったと判定する。
【００６８】
［４．第４実施形態］
つづいて、第４実施形態について図１０を用いて説明する。第４実施形態は、トルク値ではなく、自律移動装置１の走行情報を利用してコード絡まりを検出する方法である。
【００６９】
ここでいう走行情報とは、駆動モータに対する負荷等ではなく、自律移動装置１の動きに応じて取得される情報である。例えば、本実施形態では、自律移動装置１の移動速度を用いて説明する。
【００７０】
まず、走行情報として、現在の移動速度を検出する（ステップＳ４０２）。つづいて、路面状況を判定し、路面状況に対応する基準値（本実施形態では、基準速度）を基準値テーブル１４４より取得する（ステップＳ４０４）。
【００７１】
つづいて、現在の移動速度と、基準速度との差が絡まり閾値を超えた場合には、コード絡まりＦを「ＯＮ」とする（ステップＳ４０６；Ｙｅｓ→ステップＳ４０８）。他方、現在の移動速度と、基準速度との差が絡まり閾値以下の場合には、コード絡まりＦは「ＯＦＦ」となる（ステップＳ４０６；Ｎｏ→ステップＳ４１０）。
【００７２】
このように、本実施形態によれば、移動速度に基づいてコード絡まりを検出することができる。すなわち、ＧＰＳを利用したりして移動速度を検出する装置を利用すれば、自律移動装置に後付けで本発明を適用した装置を設けることが可能となる。
【００７３】
［５．第５実施形態］
続いて第５実施形態について図１１を用いて説明する。第５実施形態は、複数回の閾値超えを検出した場合にコードが絡まったことを検出するものである。
【００７４】
まず、現在のトルク値を検出する（ステップＳ５０２）。ここで、本実施形態においては、第１実施形態と同様にＰＷＭ値を検出しているが他の実施形態（例えば電流値や走行情報等）を利用しても良い。
【００７５】
次に、現在の路面状況を判定し、路面状況に対応する基準値を基準値テーブル１４４より取得する（ステップＳ５０４）。
【００７６】
ここで、現在のＰＷＭ値と、基準値との差が漸増閾値を超えたか否かを判定する（ステップＳ５０６）。ここで、漸増閾値とは、絡まり閾値より低い値である。
【００７７】
続いて、ステップＳ５０６において、漸増閾値を超えた回数が、所定回数（絡まり判定回数）を超えるまでステップＳ５０６から処理を繰り返す（ステップＳ５０６；Ｙｅｓ→ステップＳ５０８；Ｎｏ→ステップＳ５０２）。この間に、漸増閾値以下となった場合には、絡まり状態ではなくなったと判定し、コード絡まりＦは「ＯＦＦ」となる（ステップＳ５０６；Ｎｏ→ステップＳ５１２）。
【００７８】
また、ステップＳ５０８において、絡まり判定回数を超えた場合には、コード絡まりＦは「ＯＮ」となる（ステップＳ５０８；Ｙｅｓ→ステップＳ５１０）。
【００７９】
［６．第６実施形態］
つづいて、第６実施形態について図１２を用いて説明する。図１２実施形態は、自律移動装置１の振動を検出することでコードの絡まりを検出する実施形態である。
【００８０】
図１２（ａ）に、本実施形態における機能構成を示す。図１２（ａ）の機能構成は、図３で説明した機能構成に振動検出部６１０を追加したものである。
【００８１】
振動検出部６１０は、振動センサを内蔵しており、自律移動装置１の振動を検出することが可能である。コードの絡まりがあった場合、装置が上下に振動することから、当該振動を検知することにより、コード絡まりの検出を行う。
【００８２】
図１２（ｂ）は本実施形態における処理フローである。まず、上下振動を検知すると（ステップ６０２；Ｙｅｓ）、振動幅を判定する。すなわち、振動幅が所定の閾値（振動閾値）以上である場合には（ステップＳ６０４；Ｙｅｓ）、コード絡まりがあったとしてコード絡まりＦは「ＯＮ」となる（ステップＳ６０６）。他方、振動幅が振動閾値未満の場合には（ステップＳ６０４；Ｎｏ）、コード絡まりＦは「ＯＦＦ」となる（ステップＳ６０８）。
【００８３】
なお、本実施形態は、他の実施形態と組み合わせてもよい。例えば、第１実施形態と組み合わせることにより、複数の方法でコードの絡まりを検出することが可能となり、より安全性の高い自律移動装置を提供することが可能となる。
【００８４】
［７．第７実施形態］
続いて、第７実施形態について図１３を用いて説明する。第７実施形態は、右側の駆動モータと、左側の駆動モータとのトルク値に差が生じたことから、コードが片方に絡まったことを検出する実施形態である。
【００８５】
すなわち、右トルク値と、左トルク値とをそれぞれ検出する（ステップＳ７０２、ステップＳ７０４）。トルク値としては、ＰＷＭ値でも良いし、電流値でも良い。駆動モータ１６により得られる値であることが好ましいが、例えば車輪等に検出装置を設けても良い。
【００８６】
ここで、右トルク値と左トルク値との差分を算出し、左右トルク差の閾値である左右トルク閾値と比較する（ステップＳ７０６）。
【００８７】
ここで、右トルク値と、左トルク値との差が、左右トルク閾値を超えた場合には（ステップＳ７０６；Ｙｅｓ）、コード絡まりＦを「ＯＮ」とする（ステップＳ７０８）。他方、右トルク値と、左トルク値の差が、左右トルク閾値以下の場合には（ステップＳ７０６；Ｎｏ）、コード絡まりＦを「ＯＦＦ」とする（ステップＳ７１０）。
【００８８】
このように、本実施形態によれば、基準値を用いることなくコード絡まりの判定を行うことができる。また、この実施形態も、他の実施形態と組み合わせて実行されることにより、より適切にコード絡まりを検出することができる自律移動装置を提供することができる。
【００８９】
［８．第８実施形態］
続いて、第８実施形態について、図１４を用いて説明する。第８実施形態は、第７実施形態の処理に加えて、更に前輪と後輪とのトルク値を併せて判定するものである。すなわち、前輪と後輪とが同じタイミングでトルクアップしたときはコードが絡まったと判定する。
【００９０】
図１４は、第８実施形態における処理の流れである。なお、第７実施形態の図１３と同一の処理には同一の符号を付し、その説明を省略する。
【００９１】
左右のトルク値を検出した後は（ステップＳ７０２、Ｓ７０４）、今度は前輪のトルク値を検出し（ステップＳ８０２）、後輪のトルク値も検出する（ステップＳ８０４）。
【００９２】
そして、右トルク値と左トルク値の差分が、左右トルク閾値を超えている場合に（ステップＳ７０６；Ｙｅｓ）、前輪トルク値と後輪トルク値の差分も算出する。そして、この差分が前後トルク閾値未満となっている場合には、コードが絡まったと判定し、コード絡まりＦが「ＯＮ」となる（ステップＳ８０６；Ｙｅｓ→ステップＳ７０８）。
【００９３】
［９．第９実施形態］
続いて、第９実施形態について説明する。第９実施形態は、車輪の状況を監視してコードの絡まりを検出する実施形態である。
【００９４】
図１５（ａ）に、本実施形態における機能構成を示す。図１５（ａ）の機能構成は、図３で説明した機能構成に車輪状態検出部９１０を追加したものである。
【００９５】
車輪状態検出部９１０は、車輪の状態を検出するための機能部である。例えば、カメラにより車輪を撮影することで異常を検出したり、センサ（回転センサやトルクセンサ）を車輪に設けたりすることにより、車輪の異常を検出する。
【００９６】
図１５（ｂ）は本実施形態における処理フローである。車輪の状態を検出し（ステップＳ９０２）、車輪の異常状態であるか否かを判定する（ステップＳ９０４）。
【００９７】
ここで、車輪が異常状態であることが検出されると（ステップＳ９０４；Ｙｅｓ）、コード絡まりＦは「ＯＮ」となる（ステップＳ９０６）。他方、異常状態が検出されていない場合は、コード絡まりＦは「ＯＦＦ」となる（ステップＳ９０４；Ｎｏ→ステップＳ９０８）。
【００９８】
［１０．第１０実施形態］
つづいて、第１０実施形態について説明する。上述した実施形態は、コード絡まりの検出をどのようにするか、複数の実施形態について説明した。本実施形態は、コード絡まりが検出された場合の動作についての実施形態である。
【００９９】
すなわち、図６で説明した巡回処理を、図１６の処理フローで置き換えたものである。なお、同一の処理については、同一の符号を付して、その説明を省略する。
【０１００】
コード絡まりがあったと判定された場合に（ステップＳ１１０；Ｙｅｓ）、逆回転動作を行う（ステップＳ１００２）。この後、再度コード絡まり検出処理を実行する（ステップＳ１００４）。このタイミングで、コード絡まりが無くなれば、正回転動作に戻し、巡回を継続する（ステップＳ１００６；Ｎｏ→ステップＳ１０１０→ステップＳ１０１４；Ｎｏ→ステップ１０４）。
【０１０１】
他方、逆回転動作を行ったにも関わらず、コード絡まりの状態が続いている場合（ステップＳ１００６；Ｙｅｓ→ステップＳ１００８；Ｎｏ→ステップＳ１００４）、所定時間経過してもコード絡まりが無くならない場合には、動作を停止する（ステップＳ１００８；Ｙｅｓ→ステップＳ１０１２）。
【０１０２】
このように、コードの絡まりを無くすために逆回転動作を行い、更に所定時間経過してもコード絡まりが無くならない場合は動作を停止する。
【０１０３】
なお、本実施形態では逆回転動作を例にとって説明しているが、例えば旋回動作といった、通常と異なる動作を行っても良い。
【０１０４】
［１１．第１１実施形態］
つづいて、第１１実施形態について説明する。第１１実施形態は、巡回が正しく行われているときに、基準値を更新する処理である。
【０１０５】
すなわち、図６で説明した巡回処理を、図１７の処理フローで置き換えたものである。なお、同一の処理については、同一の符号を付して、その説明を省略する。
【０１０６】
コード絡まりがあった場合には動作を停止するが（ステップＳ１１０；Ｙｅｓ→ステップＳ１１１０）、コード絡まりがない場合には、画像処理部１３０から入力された画像から路面状況を判定する（ステップＳ１１０２）。
【０１０７】
ここで、判定された路面状況に対応する基準値と、現在取得された情報（例えばトルク値）とを比較する。比較した結果、所定の範囲の差があった場合は（ステップＳ１１０４；Ｙｅｓ）、新たな基準値として、基準値テーブル１４４に記憶されている基準値を更新する（ステップＳ１１０６）。
【０１０８】
このような処理を、巡回処理が終了するまで繰り返し実行する（ステップＳ１１０８；Ｎｏ→ステップＳ１０４）。本実施形態によれば、現在の路面状況に適切な基準値に基づいて基準値テーブル１４４が更新されることとなる。
【０１０９】
［１２．第１２実施形態］
続いて、第１２実施形態について説明する。第１２実施形態は、コード絡まり検出処理と、障害物検出処理を組み合わせた実施形態である。
【０１１０】
図１８（ａ）に、本実施形態における機能構成を示す。図１８（ａ）の機能構成は、図３で説明した機能構成に障害物検出部１２１０を追加したものである。
【０１１１】
障害物検出部１２１０は、自律移動装置１の進行方向の障害物を検出する為の機能部である。例えば、画像入力部１２０により入力される画像から障害物を検出してもよいし、ＬＩＤＡＲで検出してもよい。この、進行方向の障害物を検出する方法としては、従来の何れかの技術を用いれば良い。
【０１１２】
続いて、本実施形態の処理の流れを図１８（ｂ）に示す。図１８（ｂ）に示す処理の流れは、図７において示したコード絡まり検出処理を置き換えた処理である。同一の処理には同一の符号を付して、説明を省略する。
【０１１３】
現在のトルク値（ＰＷＭ値）と、基準値との差が絡まり閾値を超えた場合（ステップＳ１５６；Ｙｅｓ）、障害物が検出されたか否かを判定する（ステップＳ１２０２）。ここで、障害物が検出されなければ、コード絡まりＦは「ＯＮ」となる。なお、併せて障害物に関する障害物フラグ（Ｆ）は「ＯＦＦ」となる（ステップＳ１２０２；Ｎｏ→ステップＳ１２０４）。
【０１１４】
また、障害物が検出されている場合又は障害物が検出された場合（ステップＳ１２０２；Ｙｅｓ）、障害物（例えば段差等）により、トルク値が増加した場合が想定される。したがって、コード絡まりＦは「ＯＦＦ」になり、障害物Ｆが「ＯＮ」となる（ステップＳ１２０６）。
【０１１５】
他方、ステップＳ１５６においてＮｏの場合は、コード絡まりＦも、障害物Ｆも「ＯＦＦ」となる（ステップＳ１２０８）。
【０１１６】
［１３．変形例］
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も特許請求の範囲に含まれる。
【０１１７】
また、上述した実施形態においては、コードの絡まりを検出した場合には、動作を停止することとして説明したが、他の処理を行ってもよい。例えば、報知動作を行ってもよいし、呼出し動作等を行っても良い。また、動作を停止するとともに、報知動作を行ってもよい。
【０１１８】
また、実施形態において各装置で動作するプログラムは、上述した実施形態の機能を実現するように、ＣＰＵ等を制御するプログラム（コンピュータを機能させるプログラム）である。そして、これら装置で取り扱われる情報は、その処理時に一時的に一時記憶装置（例えば、ＲＡＭ）に蓄積され、その後、各種ＲＯＭやＨＤＤの記憶装置に格納され、必要に応じてＣＰＵによって読み出し、修正・書き込みが行なわれる。
【０１１９】
また、市場に流通させる場合には、可搬型の記録媒体にプログラムを格納して流通させたり、インターネット等のネットワークを介して接続されたサーバコンピュータに転送したりすることができる。この場合、サーバコンピュータの記憶装置も本発明に含まれるのは勿論である。
【符号の説明】
【０１２０】
１  自律移動装置
１１０  制御部
１２０  画像入力部
１３０  画像処理部
１４０  記憶部
１４２  巡回情報
１４４  基準値テーブル
１４６  判定閾値テーブル
１５０  ＧＰＳ受信部
１６０  駆動制御部
１７０  トルク値検出部
【図１】
2016148950.tif 000003
【図２】
2016148950.tif 000004
【図３】
2016148950.tif 000005
【図４】
2016148950.tif 000006
【図５】
2016148950.tif 000007
【図６】
2016148950.tif 000008
【図７】
2016148950.tif 000009
【図８】
2016148950.tif 000010
【図９】
2016148950.tif 000011
【図１０】
2016148950.tif 000012
【図１１】
2016148950.tif 000013
【図１２】
2016148950.tif 000014
【図１３】
2016148950.tif 000015
【図１４】
2016148950.tif 000016
【図１５】
2016148950.tif 000017
【図１６】
2016148950.tif 000018
【図１７】
2016148950.tif 000019
【図１８】
2016148950.tif 000020