(57)【要約】      （修正有）【課題】自律走行時に車輪が空転などして推定した自己位置が実際の走行位置に対して誤差が生じても、設定されたルートのゴール位置に到達可能な移動体を提供する。【解決手段】移動体１は、走行部２にオドメトリ法により自己位置を推定させつつ自律走行させるべく、第１の駆動装置及び第２の駆動装置を制御すると共に、走行部２に対する従動部３の旋回角度が設定された旋回角度になるように第３の駆動装置４を制御する移動体であって、移動体１がゴール位置近傍に到達した際に、従動部３に設けられた第１の接触検知部及び第２の接触検知部から被接触物に接触した旨の信号が入力さていない場合、従動部３が被接触物に接触すると従動部３が旋回する状態とし、第１の接触検知部及び第２の接触検知部から被接触物に接触した旨の信号が入力されるように、走行部２を前進させる。【選択図】図１
2015141506.tif 000002
【特許請求の範囲】
【請求項１】
第１の車輪を回転駆動する第１の駆動装置と、第２の車輪を回転駆動する第２の駆動装置と、を有する走行部と、
前記走行部に対して旋回可能に連結された従動部と、
前記走行部に対して前記従動部を旋回駆動する第３の駆動装置と、
設定されたルートを前記走行部にオドメトリ法により自己位置を推定させつつ自律走行させるべく、前記ルートと前記自己位置との差が縮小するように前記第１の駆動装置及び前記第２の駆動装置を制御すると共に、前記走行部に対する前記従動部の旋回角度が当該走行部の自己位置に対応するように設定された旋回角度になるように前記第３の駆動装置を制御する制御部と、
を備える移動体であって、
前記従動部における前記ルートのゴール位置に配置された被接触物に接触する側の面において幅方向に間隔を開けて設けられた、第１及び第２の接触検知部を有し、
前記制御部は、
前記移動体が前記ゴール位置近傍に到達した際に、前記第１の接触検知部及び前記第２の接触検知部の少なくとも一方から前記被接触物に接触した旨の信号が入力されていない場合、前記従動部が前記被接触物に接触すると当該従動部が旋回するように、前記第３の駆動装置の旋回駆動力を閾値以下に制御し、
前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力されるまで、前記第１の駆動装置及び前記第２の駆動装置を制御して前記走行部を前進させる移動体。
【請求項２】
前記制御部は、前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力された後に、前記第１の接触検知部が前記被接触物に接触してから前記第２の接触検知部が前記被接触物に接触するまでの前記従動部の旋回角度分、前記走行部を前記従動部に対して旋回させて前記走行部と前記従動部との配置関係を修正するべく、前記第１の駆動装置又は前記第２の駆動装置を制御する請求項１に記載の移動体。
【請求項３】
請求項１又は２に記載の移動体と、
設定されたルートのゴール位置に配置された被接触物と、
前記被接触物に設けられ、前記移動体を前記被接触物に誘導する誘導部と、
を備える搬送システム。
【請求項４】
第１の車輪を回転駆動する第１の駆動装置と、第２の車輪を回転駆動する第２の駆動装置と、を有する走行部と、
前記走行部に対して旋回可能に連結された従動部と、
前記走行部に対して前記従動部を旋回駆動する第３の駆動装置と、
設定されたルートを前記走行部にオドメトリ法により自己位置を推定させつつ自律走行させるべく、前記ルートと前記自己位置との差が縮小するように前記第１の駆動装置及び前記第２の駆動装置を制御すると共に、前記走行部に対する前記従動部の旋回角度が当該走行部の自己位置に対応するように設定された旋回角度になるように前記第３の駆動装置を制御する制御部と、
前記従動部における前記ルートのゴール位置に配置された被接触物に接触する側の面において幅方向に間隔を開けて設けられた、第１及び第２の接触検知部と、
を備える移動体の制御方法であって、
前記制御部は、
前記移動体が前記ゴール位置近傍に到達した際に、前記第１の接触検知部及び前記第２の接触検知部に少なくとも一方から前記被接触物に接触した旨の信号が入力されていない場合、前記従動部が前記被接触物に接触すると当該従動部が旋回するように、前記第３の駆動装置の旋回駆動力を閾値以下に制御し、
前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力されるまで、前記第１の駆動装置及び前記第２の駆動装置を制御して前記走行部を前進させる移動体の制御方法。
【請求項５】
前記制御部は、前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力された後に、前記第１の接触検知部が前記被接触物に接触してから前記第２の接触検知部が前記被接触物に接触するまでの前記従動部の旋回角度分、前記走行部を前記従動部に対して旋回させて前記走行部と前記従動部との配置関係を修正するべく、前記第１の駆動装置又は前記第２の駆動装置を制御する請求項４に記載の移動体の制御方法。
【請求項６】
第１の車輪を回転駆動する第１の駆動装置と、第２の車輪を回転駆動する第２の駆動装置と、を有する走行部と、
前記走行部に対して旋回可能に連結された従動部と、
前記走行部に対して前記従動部を旋回駆動する第３の駆動装置と、
設定されたルートを前記走行部にオドメトリ法により自己位置を推定させつつ自律走行させるべく、前記ルートと前記自己位置との差が縮小するように前記第１の駆動装置及び前記第２の駆動装置を制御すると共に、前記走行部に対する前記従動部の旋回角度が当該走行部の自己位置に対応するように設定された旋回角度になるように前記第３の駆動装置を制御する処理を実行する演算部と、
前記従動部における前記ルートのゴール位置に配置された被接触物に接触する側の面において幅方向に間隔を開けて設けられた、第１及び第２の接触検知部と、
を備える移動体の制御プログラムであって、
前記移動体が前記ゴール位置近傍に到達した際に、前記第１の接触検知部及び前記第２の接触検知部の少なくとも一方から前記被接触物に接触した旨の信号が入力されていない場合、前記従動部が前記被接触物に接触すると当該従動部が旋回するように、前記第３の駆動装置の旋回駆動力を閾値以下に制御する処理と、
前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力されるまで、前記第１の駆動装置及び前記第２の駆動装置を制御して前記走行部を前進させる処理と、
を前記演算部に実行させる移動体の制御プログラム。
【請求項７】
前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力された後に、前記第１の接触検知部が前記被接触物に接触してから前記第２の接触検知部が前記被接触物に接触するまでの前記従動部の旋回角度分、前記走行部を前記従動部に対して旋回させて前記走行部と前記従動部との配置関係を修正するべく、前記第１の駆動装置又は前記第２の駆動装置を制御する処理を前記演算部に実行させる請求項６に記載の移動体の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動体及び移動体の制御方法、制御プログラム、搬送システムに関し、例えば、オドメトリ法により自己位置を推定しつつ自律走行する走行部と、当該走行部に対して旋回可能に連結された従動部と、を備えた移動体及び移動体の制御方法、制御プログラム、搬送システムに関する。
【背景技術】
【０００２】
オドメトリ法により自己位置を推定しつつ自律走行する移動体は、例えば工場などの搬送作業に用いられており、検出した右側車輪の回転角度と時間との関係と、検出した左側車輪の回転角度と時間との関係と、に基づいて自己位置を推定する。このとき、車輪の空転や路面の凹凸などによって、実際に移動体が走行している位置と当該移動体が推定した自己位置とに誤差が生じる場合があり、当該誤差を修正する必要がある。
【０００３】
特許文献１には、オドメトリ法により自己位置を推定しつつ自律走行する移動体の左右両側面に光軸が一直線上に配置されるように光電センサを設け、左右の光電センサからの出射光が倉庫入口に設けられた反射板で反射して各々の光電センサで検出された際の誤差に基づいて、移動体の倉庫への初期進入角度を算出し、当該初期進入角度に基づいて移動体が自己位置の推定を開始する際の位置情報を修正する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−８４１９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の技術は、移動体が自己位置の推定を開始する際の位置情報を修正しているが、上述のように自律走行時に車輪が空転した場合などは、実際に移動体が走行している位置と当該移動体が推定した自己位置とに誤差が生じる。その誤差が蓄積されると、移動体が設定されたルートのゴール位置に到達できない場合がある。
【０００６】
本発明は、上記を鑑みなされたものであって、自律走行時に車輪が空転などして推定した自己位置が実際の走行位置に対して誤差が生じても、設定されたルートのゴール位置に到達可能な移動体及び移動体の制御方法、制御プログラム、搬送システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様に係る移動体は、第１の車輪を回転駆動する第１の駆動装置と、第２の車輪を回転駆動する第２の駆動装置と、を有する走行部と、
前記走行部に対して旋回可能に連結された従動部と、
前記走行部に対して前記従動部を旋回駆動する第３の駆動装置と、
設定されたルートを前記走行部にオドメトリ法により自己位置を推定させつつ自律走行させるべく、前記ルートと前記自己位置との差が縮小するように前記第１の駆動装置及び前記第２の駆動装置を制御すると共に、前記走行部に対する前記従動部の旋回角度が当該走行部の自己位置に対応するように設定された旋回角度になるように前記第３の駆動装置を制御する制御部と、
を備える移動体であって、
前記従動部における前記ルートのゴール位置に配置された被接触物に接触する側の面において幅方向に間隔を開けて設けられた、第１及び第２の接触検知部を有し、
前記制御部は、
前記移動体が前記ゴール位置近傍に到達した際に、前記第１の接触検知部及び前記第２の接触検知部の少なくとも一方から前記被接触物に接触した旨の信号が入力されていない場合、前記従動部が前記被接触物に接触すると当該従動部が旋回するように、前記第３の駆動装置の旋回駆動力を閾値以下に制御し、
前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力されるまで、前記第１の駆動装置及び前記第２の駆動装置を制御して前記走行部を前進させる。
これにより、自律走行時に車輪が空転などして推定した自己位置が実際の走行位置に対して誤差が生じて、設定されたルートのゴール位置に移動体が正確に到達しなくても、当該ゴール位置に配置された被接触物に移動体が接触したか否かを判定して、その判定結果に基づいて、再度、移動体を制御するので、移動体を良好にゴール位置に到達させることができる。
【０００８】
上述の移動体において、前記制御部は、前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力された後に、前記第１の接触検知部が前記被接触物に接触してから前記第２の接触検知部が前記被接触物に接触するまでの前記従動部の旋回角度分、前記走行部を前記従動部に対して旋回させて前記走行部と前記従動部との配置関係を修正するべく、前記第１の駆動装置又は前記第２の駆動装置を制御することが好ましい。
これにより、オドメトリ法による自己位置推定の誤差をキャンセルして自己位置を補正し、その補正された自己位置を基準に移動体が設定されたルートのスタート位置に戻ることができる。
【０００９】
本発明の一態様に係る搬送システムは、上述の移動体と、
設定されたルートのゴール位置に配置された被接触物と、
前記被接触物に設けられ、前記移動体を前記被接触物に誘導する誘導部と、
を備える。
これにより、従動部を誘導部に接触させて、強制的に従動部を被接触物に接触させることができ、被接触物の幅方向に対する移動体のズレを抑制することができる。
【００１０】
本発明の一態様に係る移動体の制御方法は、第１の車輪を回転駆動する第１の駆動装置と、第２の車輪を回転駆動する第２の駆動装置と、を有する走行部と、
前記走行部に対して旋回可能に連結された従動部と、
前記走行部に対して前記従動部を旋回駆動する第３の駆動装置と、
設定されたルートを前記走行部にオドメトリ法により自己位置を推定させつつ自律走行させるべく、前記ルートと前記自己位置との差が縮小するように前記第１の駆動装置及び前記第２の駆動装置を制御すると共に、前記走行部に対する前記従動部の旋回角度が当該走行部の自己位置に対応するように設定された旋回角度になるように前記第３の駆動装置を制御する制御部と、
前記従動部における前記ルートのゴール位置に配置された被接触物に接触する側の面において幅方向に間隔を開けて設けられた、第１及び第２の接触検知部と、
を備える移動体の制御方法であって、
前記制御部は、
前記移動体が前記ゴール位置近傍に到達した際に、前記第１の接触検知部及び前記第２の接触検知部に少なくとも一方から前記被接触物に接触した旨の信号が入力されていない場合、前記従動部が前記被接触物に接触すると当該従動部が旋回するように、前記第３の駆動装置の旋回駆動力を閾値以下に制御し、
前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力されるまで、前記第１の駆動装置及び前記第２の駆動装置を制御して前記走行部を前進させる。
これにより、自律走行時に車輪が空転などして推定した自己位置が実際の走行位置に対して誤差が生じて、設定されたルートのゴール位置に移動体が正確に到達しなくても、当該ゴール位置に配置された被接触物に移動体が接触したか否かを判定して、その判定結果に基づいて、再度、移動体を制御するので、移動体を良好にゴール位置に到達させることができる。
【００１１】
上述の移動体の制御方法において、前記制御部は、前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力された後に、前記第１の接触検知部が前記被接触物に接触してから前記第２の接触検知部が前記被接触物に接触するまでの前記従動部の旋回角度分、前記走行部を前記従動部に対して旋回させて前記走行部と前記従動部との配置関係を修正するべく、前記第１の駆動装置又は前記第２の駆動装置を制御することが好ましい。
これにより、オドメトリ法による自己位置推定の誤差をキャンセルして自己位置を補正し、その補正された自己位置を基準に移動体が設定されたルートのスタート位置に戻ることができる。
【００１２】
本発明の一態様に係る移動体の制御プログラムは、第１の車輪を回転駆動する第１の駆動装置と、第２の車輪を回転駆動する第２の駆動装置と、を有する走行部と、
前記走行部に対して旋回可能に連結された従動部と、
前記走行部に対して前記従動部を旋回駆動する第３の駆動装置と、
設定されたルートを前記走行部にオドメトリ法により自己位置を推定させつつ自律走行させるべく、前記ルートと前記自己位置との差が縮小するように前記第１の駆動装置及び前記第２の駆動装置を制御すると共に、前記走行部に対する前記従動部の旋回角度が当該走行部の自己位置に対応するように設定された旋回角度になるように前記第３の駆動装置を制御する処理を実行する演算部と、
前記従動部における前記ルートのゴール位置に配置された被接触物に接触する側の面において幅方向に間隔を開けて設けられた、第１及び第２の接触検知部と、
を備える移動体の制御プログラムであって、
前記移動体が前記ゴール位置近傍に到達した際に、前記第１の接触検知部及び前記第２の接触検知部の少なくとも一方から前記被接触物に接触した旨の信号が入力されていない場合、前記従動部が前記被接触物に接触すると当該従動部が旋回するように、前記第３の駆動装置の旋回駆動力を閾値以下に制御する処理と、
前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力されるまで、前記第１の駆動装置及び前記第２の駆動装置を制御して前記走行部を前進させる処理と、
を前記演算部に実行させる。
これにより、自律走行時に車輪が空転などして推定した自己位置が実際の走行位置に対して誤差が生じて、設定されたルートのゴール位置に移動体が正確に到達しなくても、当該ゴール位置に配置された被接触物に移動体が接触したか否かを判定して、その判定結果に基づいて、再度、移動体を制御するので、移動体を良好にゴール位置に到達させることができる。
【００１３】
上述の移動体の制御プログラムにおいて、前記第１の接触検知部及び前記第２の接触検知部から前記被接触物に接触した旨の信号が入力された後に、前記第１の接触検知部が前記被接触物に接触してから前記第２の接触検知部が前記被接触物に接触するまでの前記従動部の旋回角度分、前記走行部を前記従動部に対して旋回させて前記走行部と前記従動部との配置関係を修正するべく、前記第１の駆動装置又は前記第２の駆動装置を制御する処理を前記演算部に実行させることが好ましい。
これにより、オドメトリ法による自己位置推定の誤差をキャンセルして自己位置を補正し、その補正された自己位置を基準に移動体が設定されたルートのスタート位置に戻ることができる。
【発明の効果】
【００１４】
本発明によれば、自律走行時に車輪が空転などして推定した自己位置が実際の走行位置に対して誤差が生じても、設定されたルートのゴール位置に到達可能な移動体及び移動体の制御方法、制御プログラム、搬送システムを提供することができる。
【図面の簡単な説明】
【００１５】
【図１】（ａ）は、実施の形態１の移動体を示す模式図であり、（ｂ）は設定されたルートのゴール位置に配置される部品棚を示す模式図である。
【図２】実施の形態１の移動体の制御系を示すブロック図である。
【図３】設定されたルート上での走行部と従動部との配置関係を模式的に示す平面図である。
【図４】自律走行時に車輪が空転などして走行部が推定した自己位置が実際の走行位置に対して誤差が生じた場合における、走行部と従動部と部品棚との配置関係を模式的に示す平面図である。
【図５】実施の形態１の移動体の制御方法の流れを示すフローチャートである。
【図６】第１の接触検知部が部品棚に接触した際の走行部と従動部と当該部品棚との配置関係を模式的に示す平面図である。
【図７】第１の接触検知部及び第２の接触検知部が部品棚に接触した際の走行部と従動部と当該部品棚との配置関係を模式的に示す平面図である。
【図８】実施の形態２の搬送システムにおける移動体が誘導部に誘導される様子を模式的に示す平面図である。
【図９】実施の形態２の搬送システムにおける移動体が部品棚に到達した様子を示す平面図である。
【発明を実施するための形態】
【００１６】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。但し、本発明が以下の実施の形態に限定される訳ではない。また、説明を明確にするため、以下の記載及び図面は、適宜、簡略化されている。
【００１７】
＜実施の形態１＞
以下に、実施の形態１の移動体及び移動体の制御方法、制御プログラムについて説明する。先ず、本実施の形態の移動体の基本構成を説明する。図１（ａ）は、本実施の形態の移動体を示す模式図であり、（ｂ）は設定されたルートのゴール位置に配置される部品棚を示す模式図である。図２は、本実施の形態の移動体の制御系を示すブロック図である。図３は、設定されたルート上での走行部と従動部との配置関係を模式的に示す平面図である。図４は、自律走行時に車輪が空転などして走行部が推定した自己位置が実際の走行位置に対して誤差が生じた場合における、走行部と従動部と部品棚との配置関係を模式的に示す平面図である。なお、図１（ａ）の移動体は、内部構造が明らかになるように当該内部構造を透視して示している。
【００１８】
移動体１は、図１及び図２に示すように、走行部２、従動部３、第１の駆動装置４を備えている。走行部２は、設定されたルートをオドメトリ法により自己位置を推定しつつ自律走行する。詳細には、走行部２は、図１乃至図３に示すように、第１の車輪５、第２の駆動装置６、第２の車輪７、第３の駆動装置８、演算部９、記憶部１０及び筐体１１を備えている。
【００１９】
第１の車輪５は、第２の駆動装置６の駆動軸に連結されており、第２の駆動装置６から駆動力が伝達される。本実施の形態の第１の車輪５は、右側車輪を成し、第２の駆動装置６を介して筐体１１に支持されている。
【００２０】
第２の駆動装置６は、モータアンプ６ａ、モータ６ｂ及びエンコーダ６ｃを備えており、筐体１１に搭載されている。モータアンプ６ａは、演算部９及びエンコーダ６ｃから入力される信号に基づいて制御信号を生成し、当該制御信号をモータ６ｂに出力する。また、モータアンプ６ａは、エンコーダ６ｃから入力されるモータ６ｂの回転角度と時間との関係などを示す信号を演算部９に出力する。
【００２１】
モータ６ｂは、回転軸（駆動軸）に第１の車輪５が連結されており、モータアンプ６ａから入力される制御信号に基づいて動作する。エンコーダ６ｃは、モータ６ｂに設けられており、モータ６ｂの回転角度と時間との関係などを検出し、検出したモータ６ｂの回転角度と時間との関係などを示す信号をモータアンプ６ａに出力する。
【００２２】
エンコーダ６ｃとしては、例えば一般的なロータリーエンコーダを用いることができ、単位時間当たりにカウントされるパルス数に基づいてモータ６ｂの回転角度と時間との関係などを検出する。
【００２３】
第２の車輪７は、第３の駆動装置８の駆動軸に連結されており、第３の駆動装置８から駆動力が伝達される。本実施の形態の第２の車輪７は、左側車輪を成し、第３の駆動装置８を介して筐体１１に支持されている。ここで、第３の駆動装置８の駆動軸と第２の駆動装置６の駆動軸とは、同軸上に配置されている。なお、車輪の数は特に限定されない。
【００２４】
第３の駆動装置８は、モータアンプ８ａ、モータ８ｂ及びエンコーダ８ｃを備えており、筐体１１に搭載されている。モータアンプ８ａは、演算部９及びエンコーダ８ｃから入力される信号に基づいて制御信号を生成し、当該制御信号をモータ８ｂに出力する。また、モータアンプ８ａは、エンコーダ８ｃから入力されるモータ８ｂの回転角度と時間との関係などを示す信号を演算部９に出力する。
【００２５】
モータ８ｂは、回転軸（駆動軸）に第２の車輪７が連結されており、モータアンプ８ａから入力される制御信号に基づいて動作する。エンコーダ８ｃは、モータ８ｂに設けられており、モータ８ｂの回転角度と時間との関係などを検出し、検出したモータ８ｂの回転角度と時間との関係などを示す信号をモータアンプ８ａに出力する。
【００２６】
エンコーダ８ｃとしては、例えば一般的なロータリーエンコーダを用いることができ、単位時間当たりにカウントされるパルス数に基づいてモータ８ｂの回転角度と時間との関係などを検出する。
【００２７】
演算部９は、ＣＰＵ（Central Processing Unit）であり、記憶部１０に格納されたプログラムなどを読み出して、当該プログラムを実行する。詳細には、演算部９は、設定されたルートを走行部２にオドメトリ法により自己位置を推定させつつ自律走行させるべく、第１の車輪５及び第２の車輪７の回転角度と時間との関係が設定された回転角度と時間との関係になるように第２の駆動装置６及び第３の駆動装置８を制御すると共に、走行部２に対する従動部３の旋回角度が当該走行部２の自己位置に対応するように設定された旋回角度になるように第１の駆動装置４を制御する。
【００２８】
記憶部１０は、プログラムメモリやデータメモリその他のＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）等を有し、移動体１が当該ルートのゴール位置に到達するように、設定された第１の車輪５並びに第２の車輪７の回転角度と時間との関係を示す情報及び走行部２に対する従動部３の旋回角度と時間との関係を示す情報（即ち、設定されたエンコーダ４ｃ、６ｃ及び８ｃのカウント値と時間との関係を示す情報）、走行部２にオドメトリ法により自己位置を推定させつつ自律走行させるためのプログラムなどが格納されている。
【００２９】
従動部３は、第１の駆動装置４の旋回軸を介して走行部２に対して旋回可能に連結されている。本実施の形態の従動部３は、フレーム３ａ、自在キャスタ３ｂ及び搬送ローラ３ｃを備えている。フレーム３ａは、走行部２を囲むように組み上げられた骨組みであり、第１の駆動装置４の旋回軸を介して走行部２に連結されている。
【００３０】
自在キャスタ３ｂは、フレーム３ａの下端部に設けられている。搬送ローラ３ｃは回転して載置された運搬箱などを送る。詳細には、略水平に配置された複数の搬送ローラ３ｃが略平行に並べられ、各々の搬送ローラの両端部がフレーム３ａの上端部に回転可能に設けられている。
【００３１】
第１の駆動装置４は、モータアンプ４ａ、モータ４ｂ及びエンコーダ４ｃを備えており、走行部２に搭載されている。モータアンプ４ａは、演算部９及びエンコーダ４ｃから入力される信号に基づいて制御信号を生成し、当該制御信号をモータ４ｂに出力する。また、モータアンプ４ａは、エンコーダ４ｃから入力されるモータ４ｂの回転角度と時間との関係などを示す信号を演算部９に出力する。
【００３２】
モータ４ｂは、モータアンプ４ａから入力される制御信号に基づいて動作する。このモータ４ｂの回転軸（旋回軸）は走行部２から上方に突出しており、当該回転軸に従動部３のフレーム３ａが連結されている。
【００３３】
エンコーダ４ｃは、モータ４ｂに設けられており、モータ４ｂの回転角度と時間との関係などを検出し、検出したモータ４ｂの回転角度と時間との関係などを示す信号をモータアンプ４ａに出力する。エンコーダ４ｃとしては、例えば一般的なロータリーエンコーダを用いることができ、単位時間当たりにカウントされるパルス数に基づいてモータ４ｂの回転角度と時間との関係などを検出する。
【００３４】
上述の構成では、図３に例示するように、運搬箱を載置した移動体１が部品棚Ａから部品棚Ｂに移動するために設定されたルート（図３では破線で示す）を、走行部２にオドメトリ法により自己位置を推定させつつ自律走行させるべく、演算部９はエンコーダ６ｃ、８ｃのカウント値と時間との関係が設定されたカウント値と時間との関係になるように、第２の駆動装置６及び第３の駆動装置８を制御する処理を実行する。
【００３５】
それと同時に、従動部３が走行部２の旋回に追従しないで、即ち移動体１が部品棚Ａから出発する際の従動部３の前側面に対して走行中の従動部３の前側面が略平行な状態を維持するように、走行部２の自己位置に対応するように設定された旋回角度で従動部３に当該走行部２に対して旋回させるべく、演算部９はエンコーダ４ｃのカウント値と時間との関係が設定されたカウント値と時間との関係になるように、第１の駆動装置４を制御する処理を実行する。
【００３６】
部品棚Ｂに到達するための第１乃至第３の駆動装置４、６、８の制御が終了すると、従動部３の前側面が部品棚Ｂに接触し、作業者によって運搬箱が従動部３の搬送ローラ３ｃから部品棚Ｂに送り出される。
【００３７】
そして、演算部９がエンコーダ４ｃ、６ｃ、８ｃのカウント処理をリセットした後、移動体１は、部品棚Ａから部品棚Ｂに移動した要領と同様に、部品棚Ｂから部品棚Ａに移動し、部品棚Ａに到達するための第１乃至第３の駆動装置４、６、８の制御が終了すると、従動部３の後側面が部品棚Ａに接触し、作業者によって運搬箱が部品棚Ａから従動部３の搬送ローラ３ｃ上に送り込まれる。ちなみに、部品棚Ａ及びＢの上部に搬送ローラを備え、当該搬送ローラの上端部が従動部３の搬送ローラ３ｃの上端部と略等しい高さに配置されていることが好ましい。
【００３８】
このとき、第１の車輪５や第２の車輪７の空転などによって、図４に示すように、走行部２が推定した自己位置が実際の走行位置に対して誤差が生じる場合がある。
【００３９】
そこで、本実施の形態の移動体１は、以下の構成をさらに備える。本実施の形態の移動体１は、図１及び図２に示すように、第１乃至第４の接触検知部１２、１３、１４、１５を備えている。第１乃至第４の接触検知部１２、１３、１４、１５は、所謂接触センサであり、一般的な接触センサを用いることができる。
【００４０】
第１の接触検知部１２と第２の接触検知部１３とは、従動部３における部品棚Ｂに接触する側の面（本実施の形態では、前側面）に当該従動部３の幅方向に間隔を開けて設けられている。一方、第３の接触検知部１４と第４の接触検知部１５とは、従動部３における部品棚Ａに接触する側の面（本実施の形態では、後側面）に当該従動部３の幅方向に間隔を開けて設けられている。
【００４１】
このような第１乃至第４の接触検知部１２、１３、１４、１５の検出信号を用いて、演算部９は、以下の処理を実行する。演算部９は、部品棚Ｂ又はＡ近傍に到達した際に（例えば、走行部２の自律走行が終了した後に）、第１の接触検知部１２並びに第２の接触検知部１３の少なくとも一方から部品棚Ｂに接触した旨の信号、及び第３の接触検知部１４並びに第４の接触検知部１５の少なくとも一方から部品棚Ａに接触した旨の信号が入力されていない場合、従動部３が部品棚Ｂ又は部品棚Ａに接触すると従動部３が旋回するように、第１の駆動装置４の旋回駆動力を閾値以下に制御する処理を実行する。
【００４２】
そして、演算部９は、第１の接触検知部１２及び第２の接触検知部１３から部品棚Ｂに接触した旨の信号、又は第３の接触検知部１４及び第４の接触検知部１５から部品棚Ａに接触した旨の信号が入力されるまで、第２の駆動装置６及び第３の駆動装置８を制御して走行部２を前進させる。
【００４３】
次に、本実施の形態の移動体１の制御方法を説明する。図５は、本実施の形態の移動体の制御方法の流れを示すフローチャートである。図６は、第１の接触検知部が部品棚に接触した際の走行部と従動部と当該部品棚との配置関係を模式的に示す平面図である。図７は、第１の接触検知部及び第２の接触検知部が部品棚に接触した際の走行部と従動部と当該部品棚との配置関係を模式的に示す平面図である。なお、以下の説明では、移動体１を部品棚Ａから部品棚Ｂに移動させる場合を説明する。
【００４４】
先ず、作業者が部品棚Ａから部品棚Ｂに向かって所望のルート及び速度で移動体１を押し、演算部９が当該移動体１を移動させた際のエンコーダ４ｃ、６ｃ、８ｃのカウント値と時間との関係を示す情報を記憶部１０に保存する処理を実行する（Ｓ１）。このとき、作業者に押されて移動中の従動部３の前側面は部品棚Ａから出発する際の従動部３の前側面に対して略平行に維持される。
【００４５】
次に、演算部９はエンコーダ４ｃ、６ｃ、８ｃのカウント処理をリセットする処理を実行する（Ｓ２）。そして、演算部９は、記憶部１０からエンコーダ４ｃ、６ｃ、８ｃのカウント値と時間との関係を示す情報を読み出して、当該カウント値と時間との関係を再生するように第１の駆動装置４、第２の駆動装置６及び第３の駆動装置８を制御する処理を実行する（Ｓ３、Ｓ４）。
【００４６】
次に、演算部９は、当該カウント値と時間との関係を再生して、第１の駆動装置４、第２の駆動装置６及び第３の駆動装置８の制御が終了すると、第１の接触検知部１２及び第２の接触検知部１３から部品棚Ｂに接触した旨の信号が入力されたか否かを判定する処理を実行する（Ｓ５）。演算部９は、第１の接触検知部１２及び第２の接触検知部１３から部品棚Ｂに接触した旨の信号が入力されると（Ｓ５のＹＥＳ）、移動体１が正常に部品棚Ｂに到達したと判定し、部品棚Ａから部品棚Ｂへの搬送動作を終了する処理を実行する（Ｓ６）。
【００４７】
一方、図４に示すように、第１の接触検知部１２及び第２の接触検知部１３が部品棚Ｂに接触しておらず、第１の接触検知部１２及び第２の接触検知部１３から部品棚Ｂに接触した旨の信号が入力されないと（Ｓ５のＮＯ）、演算部９は、従動部３が部品棚Ｂに接触すると当該従動部３が旋回するように、第１の駆動装置４の旋回駆動力を閾値以下に制御する処理を実行する（Ｓ７）。これにより、従動部３が部品棚Ｂに接触すると、第１の駆動装置４のモータ４ｂは略抵抗することなく、簡単に部品棚Ｂに沿うように従動部３が旋回する。
【００４８】
次に、演算部９は、エンコーダ６ｃのカウント値とエンコーダ８ｃのカウント値とが等しい値だけ増加するように第２の駆動装置６及び第３の駆動装置８を制御して、走行部２を前進させる処理を実行する（Ｓ８）。
【００４９】
次に、演算部９は、第１の接触検知部１２から部品棚Ｂに接触した旨の信号が入力されたか否かを判定する処理を実行する（Ｓ９）。演算部９は、第１の接触検知部１２から部品棚Ｂに接触した旨の信号が入力されないと、再度、Ｓ８の工程に戻る処理を実行する（Ｓ９のＮＯ）。
【００５０】
一方、図６に示すように、第１の接触検知部１２が部品棚Ｂに接触し、第１の接触検知部１２から部品棚Ｂに接触した旨の信号が入力されると（Ｓ９のＹＥＳ）、演算部９は、さらにエンコーダ６ｃのカウント値とエンコーダ８ｃのカウント値とが等しい値だけ増加するように第２の駆動装置６及び第３の駆動装置８を制御して走行部２を前進させる処理を実行する（Ｓ１０）。このとき、従動部３は、部品棚Ｂに先に接触した部分を略中心に旋回する。
【００５１】
次に、演算部９は、第２の接触検知部１３からも部品棚Ｂに接触した旨の信号が入力されたか否かを判定する（Ｓ１１）。演算部９は、第２の接触検知部１３から部品棚Ｂに接触した旨の信号が入力されないと、再度、Ｓ１０の工程に戻る処理を実行する（Ｓ１１のＮＯ）。
【００５２】
一方、図７に示すように、第２の接触検知部１３も部品棚Ｂに接触し、第２の接触検知部１３からも部品棚Ｂに接触した旨の信号が入力されると（Ｓ１１のＹＥＳ）、演算部９は、移動体１が正常に部品棚Ｂに到達したと判定し、部品棚Ａから部品棚Ｂへの搬送動作を終了する処理を実行する（Ｓ１２）。
【００５３】
このように本実施の形態では、自律走行時に車輪が空転などして推定した自己位置が実際の走行位置に対して誤差が生じて、設定されたルートのゴール位置に移動体１が到達しなくても、当該ゴール位置に配置された被接触物に移動体１が接触したか否かを判定して、その判定結果に基づいて、再度、移動体１を制御するので、移動体１を良好にゴール位置に到達させることができる。しかも、移動体１に接触検知部を設けるだけでよいので、簡単な構成で実現することができる。
【００５４】
ここで、上述の移動体１の状態で当該移動体１が部品棚Ｂから部品棚Ａに戻ると、第１の接触検知部１２が部品棚Ｂに接触してから第２の接触検知部１３が部品棚Ｂに接触するまでの従動部３における走行部２に対する旋回角度θ（図７を参照）が誤差として残った状態となる。
【００５５】
そこで、演算部９は、当該旋回角度θ分、走行部２を従動部３に対して旋回させて走行部２と従動部３との配置関係を修正するべく、第２の駆動装置６又は第３の駆動装置８を制御する処理を実行することが好ましい（Ｓ１３）。つまり、走行部２の前後左右方向と従動部３の前後左右方向とが略一致するように、走行部２を従動部３に対して旋回させる。これにより、部品棚Ｂから部品棚Ａに戻る際に誤差である旋回角度θを修正して部品棚Ａに戻ることができる。つまり、オドメトリ法による自己位置推定の誤差をキャンセルして、予め相対関係が既知であるスタート位置とゴール位置との間を移動体１が継続的に作業できる。
【００５６】
なお、本実施の形態では、第１の接触検知部１２が先に部品棚Ｂに接触する例を説明したが、第２の接触検知部１３が先に部品棚Ｂに接触する場合も、略同様に実施することができる。
【００５７】
また、本実施の形態では、カウント値と時間との関係を再生して、第１の駆動装置４、第２の駆動装置６及び第３の駆動装置８の制御が終了した後に、第１の駆動装置４の旋回駆動力を閾値以下に制御しているが、移動体１が部品棚Ｂの近傍に到達すると第１の駆動装置４の旋回駆動力を閾値以下に制御してもよい。
【００５８】
＜実施の形態２＞
次に、上述の構成の移動体１などを用いた搬送システムを説明する。図８は、本実施の形態の搬送システムにおける移動体１が誘導部に誘導される様子を模式的に示す平面図である。図９は、本実施の形態の搬送システムにおける移動体１が部品棚Ｂに到達した様子を示す平面図である。なお、本実施の形態では、移動体１が接触する被接触物として実施の形態１の部品棚Ｂを例に挙げているが、特に限定されない。
【００５９】
本実施の形態の搬送システム２０は、実施の形態１の移動体１、部品棚Ｂ及び誘導部２１を備えている。誘導部２１は、実施の形態１のＳ８の工程乃至Ｓ１０の工程において、移動体１を部品棚Ｂに誘導する。
【００６０】
詳細には、誘導部２１は、部品棚Ｂにおける移動体１の従動部３が接触する側の側面から幅方向に間隔を開けて突出している。具体的にいうと、誘導部２１は２枚の平板を備え、２枚の平板の主面（最も広い面）が部品棚Ｂの幅方向に所定の間隔を開けて向かい合うように配置されている。なお、平板に限らず、主面に湾曲面を有する板状部材などでもよく、要するに移動体１を誘導できるように部品棚Ｂから突出していればよい。
【００６１】
これにより、実施の形態１のＳ８の工程乃至Ｓ１０の工程において、図８及び図９に示すように、従動部３を誘導部２１に接触させて、強制的に従動部３の前側面を部品棚Ｂに接触させることができ、部品棚Ｂの幅方向に対する移動体１のズレを抑制することができる。
【００６２】
本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
例えば上記実施の形態では、演算部９にプログラムを実行させることで機能を実現しているが、ハードウエア資源（例えば、制御部）を用いて機能を実現してもよい。
【符号の説明】
【００６３】
Ａ、Ｂ  部品棚
θ  旋回角度
１  移動体
２  走行部
３  従動部、３ａ  フレーム、３ｂ  自在キャスタ、３ｃ  搬送ローラ
４  第１の駆動装置、４ａ  モータアンプ、４ｂ  モータ、４ｃ  エンコーダ
５  第１の車輪
６  第２の駆動装置、６ａ  モータアンプ、６ｂ  モータ、６ｃ  エンコーダ
７  第２の車輪
８  第３の駆動装置、８ａ  モータアンプ、８ｂ  モータ、８ｃ  エンコーダ
９  演算部
１０  記憶部
１１  筐体
１２  第１の接触検知部
１３  第２の接触検知部
１４  第３の接触検知部
１５  第４の接触検知部
２０  搬送システム
２１  誘導部
【図１】
2015141506.tif 000003
【図２】
2015141506.tif 000004
【図３】
2015141506.tif 000005
【図４】
2015141506.tif 000006
【図５】
2015141506.tif 000007
【図６】
2015141506.tif 000008
【図７】
2015141506.tif 000009
【図８】
2015141506.tif 000010
【図９】
2015141506.tif 000011