(57)【要約】  ＡＧＶ（１０）の仮想ガイドセンサ処理部（３８）は、車体座標値計算処理部（３４）が算出したＡＧＶ（１０）の位置と、仮想ガイドテープレイアウトデータとに基づいて、仮想ガイドテープ（１４ｉ）の位置を算出する。ガイドセンサ切替処理部（４０）は、磁気ガイドセンサ（２２）が検出した磁気ガイドテープ（１４）の位置、又は、仮想ガイドセンサ処理部（３８）が算出した仮想ガイドテープ（１４ｉ）の位置を、車体ズレ量計算処理部（４２）に出力する。
2017158973.tif 000002
【特許請求の範囲】
【請求項１】
実際に敷設されているガイドテープ（１４）に沿って走行可能な自動搬送車（１０）であって、
前記ガイドテープ（１４）を検出することにより、検出した前記ガイドテープ（１４）の位置を出力する実ガイドセンサ（２２）と、
前記自動搬送車（１０）の現在位置を取得する現在位置取得部（３４）と、
仮想的に設定されたガイドテープ（１４ｉ）に関するデータをガイドテープデータとして格納するガイドテープデータ格納部（３６）と、
前記現在位置及び前記ガイドテープデータを用いて、前記仮想的なガイドテープ（１４ｉ）の位置を算出する仮想ガイドセンサ処理部（３８）と、
前記実ガイドセンサ（２２）又は前記仮想ガイドセンサ処理部（３８）の出力を切り替えるガイドセンサ切替処理部（４０）と、
前記ガイドセンサ切替処理部（４０）を介して入力されたガイドテープ（１４、１４ｉ）の位置に基づいて、前記自動搬送車（１０）の位置姿勢を算出する位置姿勢算出部（４２）と、
を有することを特徴とする自動搬送車（１０）。
【請求項２】
請求項１記載の自動搬送車（１０）において、
前記現在位置取得部（３４）は、前記自動搬送車（１０）の中心位置（６２）を前記現在位置として取得し、
前記ガイドテープデータは、始点位置、終点位置及び前記仮想的なガイドテープ（１４ｉ）の幅を少なくとも有する線分データであり、
前記仮想ガイドセンサ処理部（３８）は、
前記現在位置を基準として、前記自動搬送車（１０）における前記実ガイドセンサ（２２）の設置位置を、仮想的なガイドセンサ（６０）の位置に設定し、
前記仮想的なガイドセンサ（６０）の位置と前記ガイドテープデータとを比較して、当該位置が前記線分データの範囲内にあるか否かを判断することを特徴とする自動搬送車（１０）。
【請求項３】
請求項２記載の自動搬送車（１０）において、
前記自動搬送車（１０）の前方と後方とには、車幅方向に沿って、複数の前記実ガイドセンサ（２２）がそれぞれ配置され、
前記仮想ガイドセンサ処理部（３８）は、
前記現在位置を基準として、前記自動搬送車（１０）における前記各実ガイドセンサ（２２）の設置位置を、前記仮想的なガイドセンサ（６０）の位置に設定し、
前記仮想的なガイドセンサ（６０）の位置と前記ガイドテープデータとを比較して、当該位置が前記線分データの範囲内にあるか否かを判断することを特徴とする自動搬送車（１０）。
【請求項４】
請求項１〜３のいずれか１項に記載の自動搬送車（１０）において、
前記ガイドテープ（１４）の近傍には、前記自動搬送車（１０）の走行に対する指示内容を当該自動搬送車（１０）に認識させるためのマーカテープ（３２）が設置され、
前記自動搬送車（１０）は、
前記マーカテープ（３２）を検出する実マーカセンサ（２４）と、
仮想的に設定されたマーカテープ（３２ｉ）に関するデータをマーカテープデータとして格納するマーカテープデータ格納部（４４）と、
前記現在位置及び前記マーカテープデータを用いて、前記仮想的なマーカテープ（３２ｉ）の位置を算出する仮想マーカセンサ処理部（４６）と、
前記実マーカセンサ（２４）又は前記仮想マーカセンサ処理部（４６）の出力を切り替えるマーカセンサ切替処理部（４８）と、
前記マーカセンサ切替処理部（４８）を介して入力されたマーカテープ（３２、３２ｉ）の位置に基づいて、前記自動搬送車（１０）に対する現在のジョブ命令を終了させて、次のジョブ命令を実行すべきか否かを判断するジョブ命令実行処理部（５２）と、
を有することを特徴とする自動搬送車（１０）。
【請求項５】
請求項４記載の自動搬送車（１０）において、
前記マーカテープデータは、中心位置（６２）、姿勢並びに前記仮想的なマーカテープ（３２ｉ）の全長及び幅を有する線分データであり、
前記仮想マーカセンサ処理部（４６）は、
前記現在位置を基準として、前記自動搬送車（１０）における前記実マーカセンサ（２４）の設置位置を、仮想的なマーカセンサ（６６）の位置に設定し、
前記仮想的なマーカセンサ（６６）の位置と前記マーカテープデータとを比較して、当該位置が前記線分データの範囲内にあるか否かを判断することを特徴とする自動搬送車（１０）。
【請求項６】
請求項５記載の自動搬送車（１０）において、
前記自動搬送車（１０）の前方における車幅方向の両側には、２個の前記実マーカセンサ（２４）がそれぞれ配置され、
前記仮想マーカセンサ処理部（４６）は、
前記現在位置を基準として、前記自動搬送車（１０）における前記２個の実マーカセンサ（２４）の設置位置を、２個の前記仮想的なマーカセンサ（６６）の位置に設定し、
前記２個の仮想的なマーカセンサ（６６）の位置と前記マーカテープデータとを比較して、当該各位置が前記線分データの範囲内にあるか否かを判断することを特徴とする自動搬送車（１０）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ガイドテープに沿って走行可能な自動搬送車に関する。
【背景技術】
【０００２】
近年、部品等の物品を搬送する無人の搬送台車として、自動搬送車が知られている。【０００３】
特開平８−２３４８３６号公報には、走行経路に敷設された磁気ガイドテープの磁界を検出することにより、当該磁気ガイドテープに沿って走行する自動搬送車が開示されている。【０００４】
また、特開平９−２３０９３３号公報及び特開平１０−１４９２１７号公報には、レーザスキャナ等の測距センサを用いて、自己位置の認識処理を行い、地図の示す経路に沿って自動搬送車を走行させることが開示されている。【０００５】
このように、従来は、実際の磁気ガイドテープを検出して走行する自動搬送車のシステムと、地図に従って走行する自動搬送車のシステムとが、独立して存在していた。
【発明の概要】
【０００６】
特開平８−２３４８３６号公報のシステムでは、磁気ガイドセンサによって予め決められた経路のみしか走行することができないので、柔軟な搬送が行えない。
【０００７】
一方、特開平９−２３０９３３号公報及び特開平１０−１４９２１７号公報のシステムでは、地図を予め作成する必要があるので、磁気ガイドテープの経路を活用して自動搬送車を直ちに運用することができない。また、特開平９−２３０９３３号公報及び特開平１０−１４９２１７号公報のシステムでは、周囲に固定物が全く存在しない環境においては、測距が行えず、自己位置を認識することができないので、運用することができない。
【０００８】
そこで、特開平８−２３４８３６号公報のシステムの長所と、特開平９−２３０９３３号公報及び特開平１０−１４９２１７号公報のシステムの長所とを取り入れて新たなシステムを構築する場合、１台の自動搬送車に２種類のシステムを搭載する必要がある。この結果、自動搬送車の重厚長大化や高コスト化を招いてしまう。
【０００９】
本発明は、このような課題を考慮してなされたものであり、ガイドテープが敷設されている場所、及び、ガイドテープが敷設されていない場所のいずれも走行可能な自動搬送車を提供することを目的とする。
【００１０】
本発明に係る自動搬送車は、実際に敷設されているガイドテープに沿って走行可能な自動搬送車であって、実ガイドセンサ、現在位置取得部、ガイドテープデータ格納部、仮想ガイドセンサ処理部、ガイドセンサ切替処理部及び位置姿勢算出部を有する。
【００１１】
前記実ガイドセンサは、前記ガイドテープを検出することにより、検出した前記ガイドテープの位置を出力する。前記現在位置取得部は、前記自動搬送車の現在位置を取得する。前記ガイドテープデータ格納部は、仮想的に設定されたガイドテープに関するデータをガイドテープデータとして格納する。前記仮想ガイドセンサ処理部は、前記現在位置及び前記ガイドテープデータを用いて、前記仮想的なガイドテープの位置を算出する。前記ガイドセンサ切替処理部は、前記実ガイドセンサ又は前記仮想ガイドセンサ処理部の出力を切り替える。前記位置姿勢算出部は、前記ガイドセンサ切替処理部を介して入力されたガイドテープの位置に基づいて、前記自動搬送車の位置姿勢を算出する。
【００１２】
この構成によれば、前記ガイドセンサ切替処理部は、前記実ガイドセンサが検出した実際のガイドテープの位置、又は、前記仮想ガイドセンサ処理部が算出した前記仮想的なガイドテープの位置のいずれか一方を前記位置姿勢算出部に出力する。これにより、前記位置姿勢算出部は、前記自動搬送車の位置姿勢を算出できるので、当該自動搬送車の走行制御が可能となる。すなわち、本発明では、前記実ガイドセンサの出力と、前記仮想ガイドセンサ処理部の出力とを１つのシステムで受け、切り替えて処理することが可能である。
【００１３】
また、前記現在位置取得部が前記自動搬送車の現在位置を取得し、前記仮想ガイドセンサ処理部は、この現在位置と前記ガイドテープデータとを用いて、前記仮想的なガイドテープの位置を算出する。これにより、前記仮想ガイドセンサ処理部は、実際のガイドテープを用いた場合と略同等の出力形態となる。すなわち、前記仮想ガイドセンサ処理部は、前記ガイドテープを用いたときの出力形態にコンバートすることが可能である。この結果、前記位置姿勢算出部は、前記実ガイドセンサが検出した実際のガイドテープの位置、又は、前記仮想ガイドセンサ処理部が算出した前記仮想的なガイドテープの位置のどちらも利用することが可能となる。
【００１４】
従って、本発明では、実際にガイドテープが敷設されている場所、及び、前記ガイドテープが敷設されていない場所のいずれも前記自動搬送車を走行させることが可能となる。すなわち、実際にガイドテープが敷設されている場所では、前記ガイドテープに沿って前記自動搬送車を走行させ、一方で、前記ガイドテープが敷設されていない場所では、その場所にあたかもガイドテープが敷設されているかのように前記自動搬送車を走行させることができる。しかも、前記実ガイドセンサ又は前記仮想ガイドセンサ処理部のどちらからもガイドテープの位置が出力されるので、前記自動搬送車では、走行制御に関わる部分を大幅に変更することなく、１つのシステムによって、ガイドテープによる走行と、ガイドテープが存在しない場所での走行とを実現できる。
【００１５】
さらに、本発明では、下記の効果も得られる。
【００１６】
従来の自動搬送車で使用されていた磁気ガイドテープの環境下においても、本発明を直ちに適用し、運用することが可能である。
【００１７】
また、測距センサによる測距が不可能な、例えば、反射壁が全くない環境、人や部品の位置姿勢が刻一刻と変化する環境でも、リアルタイムで現在位置を取得可能な他の現在位置取得手段を用いることで運用可能である。
【００１８】
さらに、取得した前記現在位置と前記ガイドテープデータとを使うことで、その場に応じた柔軟な経路で運用することができる。例えば、障害物回避や、ワークへの連結時に当該ワークの位置姿勢を認識して連結することが可能となる。
【００１９】
さらにまた、これらの機能に対して、一つの走行制御アルゴリズムで対応可能であるため、軽薄短小、低コストな前記自動搬送車のシステムを構築することができる。すなわち、従来は、障害物を回避するための経路算出や、ワークの位置姿勢の認識等の諸機能を実現する場合、別機能として制御アルゴリズムを作成する必要があった。これに対して、本発明では、それらの機能から前記ガイドテープデータが出力されるようにし、このデータを基に前記自動搬送車が走行することにより、実際の障害物回避やワークの連結等の機能を実現することができる。
【００２０】
ここで、前記現在位置取得部は、前記自動搬送車の中心位置を前記現在位置として取得し、前記ガイドテープデータは、始点位置、終点位置及び前記仮想的なガイドテープの幅を少なくとも有する線分データであればよい。この場合、前記仮想ガイドセンサ処理部は、前記現在位置を基準として、前記自動搬送車における前記実ガイドセンサの設置位置を、仮想的なガイドセンサの位置に設定し、前記仮想的なガイドセンサの位置と前記ガイドテープデータとを比較して、当該位置が前記線分データの範囲内にあるか否かを判断すればよい。
【００２１】
このように、前記ガイドテープデータは、所定範囲の数値データであるため、前記ガイドテープデータ格納部のメモリ容量を小さく済ませることができる。また、前記実ガイドセンサの設置位置に前記仮想的なガイドセンサの位置を合わせ、前記仮想的なガイドセンサの位置が前記線分データの範囲内にあるか否かを判断することにより、前記仮想ガイドセンサ処理部で算出される前記仮想的なガイドセンサの位置の精度が向上すると共に、前記実ガイドセンサが実際のガイドテープを検出したときと同様の算出結果が得られる。
【００２２】
また、前記自動搬送車の前方と後方とには、車幅方向に沿って、複数の前記実ガイドセンサをそれぞれ配置してもよい。この場合、前記仮想ガイドセンサ処理部は、前記現在位置を基準として、前記自動搬送車における前記各実ガイドセンサの設置位置を、前記仮想的なガイドセンサの位置に設定し、前記仮想的なガイドセンサの位置と前記ガイドテープデータとを比較して、当該位置が前記線分データの範囲内にあるか否かを判断すればよい。
【００２３】
これにより、前記位置姿勢算出部は、前記ガイドセンサ切替処理部を介して入力された前記仮想ガイドセンサ処理部の判断結果に基づき、前記仮想的なガイドテープに対する前記自動搬送車の姿勢を精度よく算出することができる。
【００２４】
また、本発明において、前記ガイドテープの近傍には、前記自動搬送車の走行に対する指示内容を当該自動搬送車に認識させるためのマーカテープが設置されている。この場合、前記自動搬送車は、実マーカセンサ、マーカテープデータ格納部、仮想マーカセンサ処理部、マーカセンサ切替処理部及びジョブ命令実行処理部をさらに有する。
【００２５】
前記実マーカセンサは、前記マーカテープを検出する。前記マーカテープデータ格納部は、仮想的に設定されたマーカテープに関するデータをマーカテープデータとして格納する。前記仮想マーカセンサ処理部は、前記現在位置及び前記マーカテープデータを用いて、前記仮想的なマーカテープの位置を算出する。前記マーカセンサ切替処理部は、前記実マーカセンサ又は前記仮想マーカセンサ処理部の出力を切り替える。前記ジョブ命令実行処理部は、前記マーカセンサ切替処理部を介して入力されたマーカテープの位置に基づいて、前記自動搬送車に対する現在のジョブ命令を終了させて、次のジョブ命令を実行すべきか否かを判断する。
【００２６】
前記マーカテープは、前記ガイドテープに沿って前記自動搬送車が走行する際、前記ジョブ命令の完了や次のジョブ命令の実行開始等を前記自動搬送車に指示するためのマーカであり、ジョブ命令の実行開始又は終了を認識させるためのトリガとして機能する。例えば、前記自動搬送車に対して「スタート」、「ストップ」、「回転」、「加減速」等の走行命令を前記自動搬送車に認識させる。
【００２７】
ところで、前記マーカテープは、上述のように、前記ガイドテープの近傍に設置される。従って、前記ガイドテープが敷設されていない場所には、前記マーカテープが敷設されていない。
【００２８】
そこで、本発明では、前記ガイドテープの場合と同様に、前記マーカセンサ切替処理部は、前記実マーカセンサの検出結果、又は、前記仮想マーカセンサ処理部の算出結果のいずれか一方を前記ジョブ命令実行処理部に出力する。これにより、前記ジョブ命令実行処理部は、マーカテープを検出できた（仮想的なマーカテープの位置を算出できた）場合には、次のジョブ命令を実行することが可能となる。この場合でも、実マーカセンサの出力と、前記仮想マーカセンサ処理部の出力とを１つのシステムで受け、切り替えて処理することが可能である。
【００２９】
また、前記仮想マーカセンサ処理部は、前記自動搬送車の現在位置と前記マーカテープデータとを用いて、前記仮想的なマーカテープの位置を算出する。これにより、前記仮想マーカセンサ処理部は、実際のマーカテープを用いた場合と略同等の出力形態となる。この結果、前記ジョブ命令実行処理部は、前記実マーカセンサの検出結果、又は、前記仮想マーカセンサ処理部の算出結果のどちらも利用することが可能となる。
【００３０】
従って、本発明では、ガイドテープ及びマーカテープの敷設の有無に関わりなく前記自動搬送車を走行させ、当該自動搬送車に付与されたジョブ命令を順次実行することが可能となる。
【００３１】
ここで、前記マーカテープデータは、中心位置、姿勢並びに前記仮想的なマーカテープの全長及び幅を有する線分データであればよい。この場合、前記仮想マーカセンサ処理部は、前記現在位置を基準として、前記自動搬送車における前記実マーカセンサの設置位置を、仮想的なマーカセンサの位置に設定し、前記仮想的なマーカセンサの位置と前記マーカテープデータとを比較して、当該位置が前記線分データの範囲内にあるか否かを判断する。
【００３２】
このように、前記マーカテープデータは、所定範囲の数値データであるため、前記マーカテープデータ格納部のメモリ容量を小さく済ませることができる。また、前記実マーカセンサの設置位置に前記仮想的なマーカセンサの位置を合わせ、前記仮想的なマーカセンサの位置が前記線分データの範囲内にあるか否かを判断することにより、前記仮想マーカセンサ処理部で算出される前記仮想的なマーカセンサの位置の精度が向上すると共に、前記実マーカセンサが実際のマーカテープを検出したときと同様の算出結果が得られる。
【００３３】
また、前記自動搬送車の前方における車幅方向の両側に、２個の前記実マーカセンサをそれぞれ配置してもよい。この場合、前記仮想マーカセンサ処理部は、前記現在位置を基準として、前記自動搬送車における前記２個の実マーカセンサの設置位置を、２個の前記仮想的なマーカセンサの位置に設定し、前記２個の仮想的なマーカセンサの位置と前記マーカテープデータとを比較して、当該各位置が前記線分データの範囲内にあるか否かを判断する。
【００３４】
これにより、前記ジョブ命令実行処理部は、前記マーカセンサ切替処理部を介して入力された前記仮想マーカセンサ処理部の判断結果に基づき、次のジョブ命令の実行を正確に判断することが可能となる。
【図面の簡単な説明】
【００３５】
【図１】本発明の一実施形態に係るＡＧＶのブロック図である。
【図２】図１のモーションＥＣＵのブロック図である。
【図３】図３Ａ及び図３Ｂは、磁気ガイドテープ（仮想ガイドテープ）上をＡＧＶが走行する場合を模式的に図示した説明図である。
【図４】図４Ａは、ＡＧＶにおける磁気ガイドセンサ（仮想ガイドセンサ）の配置を模式的に図示した説明図であり、図４Ｂは、磁気ガイドセンサの詳細な配置を図示した説明図であり、図４Ｃは、ＡＧＶにおける磁気ガイドセンサ（仮想ガイドセンサ）及び磁気マーカセンサ（仮想マーカセンサ）の配置を模式的に図示した説明図である。
【図５】磁気ガイドテープに対するＡＧＶの姿勢を模式的に図示した説明図である。
【図６】仮想ガイドテープを用いて障害物を回避して走行する場合を図示した説明図である。
【図７】工場内に磁気ガイドテープ及び磁気マーカテープが敷設されているときのＡＧＶの走行を図示した説明図である。
【図８】ジョブ命令のプログラムの一例を示す図である。
【図９】図９Ａは、磁気ガイドテープをグリッド状に敷設した例を示す説明図であり、図９Ｂは、グリッドの交点にのみ磁気ガイドテープが敷設されている例を示す説明図である。
【発明を実施するための形態】
【００３６】
以下、本発明に係る自動搬送車について好適な実施形態を例示し、添付の図面を参照しながら説明する。
【００３７】
［自動搬送車１０の基本構成］
図１は、本発明の一実施形態に係る自動搬送車１０のブロック図である。自動搬送車１０は、例えば、工場内において、部品等の物品を供給搬送するバッテリ駆動の無人の搬送台車（無人搬送車）である。以下の説明では、自動搬送車１０をＡＧＶ（Ａｕｔｏｍａｔｉｃ  Ｇｕｉｄｅｄ  Ｖｅｈｉｃｌｅ）１０ともいう。ＡＧＶ１０は、上位システム１２から無線通信によりジョブ命令（ジョブデータ、指令信号）を受信し、受信したジョブ命令に従い、工場内に敷設された磁気ガイドテープ１４に沿って走行可能である。
【００３８】
ＡＧＶ１０は、無線通信モジュール１６（通信部）、モニタＥＣＵ１８、スキャナセンサ２０、磁気ガイドセンサ２２（実ガイドセンサ）、磁気マーカセンサ２４（実マーカセンサ）、モーションＥＣＵ２６、モータコントローラ２８Ｌ、２８Ｒ及びモータ３０Ｌ、３０Ｒを有する。
【００３９】
無線通信モジュール１６は、上位システム１２との間で無線通信によるデータの送受信を行う。モニタＥＣＵ１８は、マイクロコンピュータを含む計算機であり、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）及びメモリ等を有する。モニタＥＣＵ１８は、非一過性の記録媒体としてのメモリに記録されているプログラムを読み出して実行することにより、下記の機能を実現可能である。すなわち、モニタＥＣＵ１８は、上位システム１２からの指令に応じて、モーションＥＣＵ２６等のＡＧＶ１０内の各部を制御する。また、モニタＥＣＵ１８は、ＡＧＶ１０の走行状態や図示しないバッテリの状態等を、無線通信モジュール１６を介して上位システム１２に通知する。
【００４０】
スキャナセンサ２０は、自動搬送車１０の位置を検出する位置センサである。このようなセンサとしては、例えば、レーザスキャナ等の測距センサ、ＧＰＳや自律航法を用いた位置センサ、ＳＬＡＭ（Ｓｉｍｕｌｔａｎｅｏｕｓ  Ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  Ｍａｐｐｉｎｇ）による位置センサがある。磁気ガイドセンサ２２は、磁気ガイドテープ１４を検出する。磁気マーカセンサ２４は、磁気ガイドテープ１４近傍に敷設される磁気マーカテープ３２を検出する。
【００４１】
モーションＥＣＵ２６は、マイクロコンピュータを含む計算機であり、ＣＰＵ及びメモリ等を有する。モニタＥＣＵ１８は、非一過性の記録媒体としてのメモリに記録されているプログラムを読み出して実行することにより、下記の機能を実現可能である。すなわち、モーションＥＣＵ２６は、基本的には、上位システム１２からのジョブ命令に従って、スキャナセンサ２０が検出したＡＧＶ１０の位置と、磁気ガイドセンサ２２が検出した磁気ガイドテープ１４の位置とに基づき、磁気ガイドテープ１４に対するＡＧＶ１０の位置姿勢を算出する。また、モーションＥＣＵ２６は、ジョブ命令の示す指令速度と、算出結果とに基づいて、モータ３０Ｌ、３０Ｒを制御するための制御信号をモータコントローラ２８Ｌ、２８Ｒに出力する。なお、モーションＥＣＵ２６は、磁気マーカセンサ２４が磁気マーカテープ３２を検出した場合、現在のジョブ命令を終了し、次のジョブ命令を実行する。
【００４２】
モータコントローラ２８Ｌ、２８Ｒは、モーションＥＣＵ２６からの制御信号に基づいて、ＡＧＶ１０の左右に備わるモータ３０Ｌ、３０Ｒをそれぞれ駆動させることにより、ＡＧＶ１０の左右の車輪を回転させ、所望の速度で走行させる。
【００４３】
［仮想ガイドテープ機能の概要］
ここで、モーションＥＣＵ２６の説明に先立ち、本実施形態の特徴的な機能である仮想ガイドテープ機能について、概略的に説明する。
【００４４】
前述のように、ＡＧＶ１０は、磁気ガイドテープ１４を走行経路とする無人搬送車である。しかしながら、走行経路上に一時的に物等が設置され、走行経路が塞がれていると、ＡＧＶ１０を一時的に退避させたり、あるいは、搬送物の受領場所に移動するために、その都度、磁気ガイドテープ１４を新たに設置しなければならない。また、走行経路がグリッド状である場合には、グリッド毎に磁気ガイドテープ１４を設置しなくてはならず、コストや工数がかかる。
【００４５】
そこで、本実施形態では、後述する仮想ガイドテープ機能を有しており、この機能は、主としてモーションＥＣＵ２６が担う。この機能は、一時的に設置しなければならない磁気ガイドテープ１４を仮想的な磁気ガイドテープ（仮想ガイドテープ）に置き換えたり、あるいは、グリッドの交点部分にのみ磁気ガイドテープ１４を設置し、他の部分を仮想ガイドテープにすることで、設置コストや工数の削減を図るものである。
【００４６】
また、この仮想ガイドテープ機能は、磁気ガイドテープ１４を利用する場合と、仮想ガイドテープ機能を利用する場合とで、同一のＡＧＶ１０の位置姿勢及び車輪制御を利用可能であるという特徴がある。
【００４７】
さらに、仮想ガイドテープ機能では、磁気ガイドテープ１４を設置する位置情報を仮想ガイドテープの位置情報（仮想ガイドテープレイアウトデータ）とする。この場合、仮想ガイドテープの位置情報は、開始位置から目標位置までの線分データを基本とし、その線分データの中心位置から左右方向に所定幅の範囲を仮想ガイドテープとするものである。これにより、線分データを記憶するメモリの容量も少量で済ませることができる。
【００４８】
一方、前述のように、ＡＧＶ１０は、磁気ガイドセンサ２２を有しているが、仮想ガイドテープ機能の場合には、磁気ガイドセンサ２２を利用せず、仮想的なガイドセンサ（仮想ガイドセンサ）を用いる。この場合、ＡＧＶ１０は、現在位置（ＡＧＶ１０の中心位置）を車体座標値として取得認識し、その中心位置を基準として、実際の磁気ガイドセンサ２２がある位置を、仮想ガイドセンサの位置として設定する。そして、仮想ガイドセンサの位置と仮想ガイドテープレイアウトデータとを比較し、仮想ガイドセンサの位置が仮想ガイドテープレイアウトデータを構成する線分データの範囲内にあるときには、「１」を出力し、ないときには「０」を出力する。これにより、あたかも実際の磁気ガイドセンサ２２が磁気ガイドテープ１４をセンシングしたときと同様の出力を得ることができる。
【００４９】
［仮想マーカテープ機能の概要］
次に、モーションＥＣＵ２６の説明に先立ち、本実施形態の特徴的な他の機能である仮想マーカテープ機能について、概略的に説明する。
【００５０】
磁気ガイドテープ１４上をＡＧＶ１０が走行する場合、ジョブ命令の完了や次のジョブ命令の実行開始等をＡＧＶ１０に指示する必要がある。例えば、ＡＧＶ１０に対して、「スタート」、「ストップ」、「回転」、「加減速」等の走行命令をＡＧＶ１０に認識させることが必要である。そこで、本実施形態では、磁気ガイドテープ１４の近傍に、ジョブ命令の実行開始又は終了を認識させるためのトリガとして機能する磁気マーカテープ３２を設置する。具体的には、走行命令を認識させたい位置における磁気ガイドテープ１４の外側又は内側の近傍に磁気マーカテープ３２を設置する。
【００５１】
そして、仮想マーカテープ機能では、前述した仮想ガイドテープに沿って、走行命令を認識させたい位置に仮想的な磁気マーカテープ（仮想マーカテープ）を設定する。仮想マーカテープは、仮想マーカセンサにより検知される。仮想マーカセンサは、仮想ガイドセンサと同様に、ＡＧＶ１０において実際に設置されている磁気マーカセンサ２４と同じ位置に設定する。仮想マーカセンサによる仮想マーカテープのセンシング方法は、仮想ガイドセンサによる仮想ガイドテープのセンシング方法と同様である。
【００５２】
そして、磁気ガイドテープ１４により走行経路が設定されている場合に、ある一定期間のみ走行経路上に障害物が設置されていれば、ＡＧＶ１０が当該障害物を回避するように、仮想ガイドテープ及び仮想マーカテープが設定される。
【００５３】
また、ＡＧＶ１０が仮想ガイドテープ機能及び仮想マーカテープ機能を有することにより、当該ＡＧＶ１０は、（１）磁気ガイドテープ１４上を走行する走行モード、（２）仮想ガイドテープ上を走行する走行モード、（３）主として磁気ガイドテープ１４上を走行し、一時的に仮想ガイドテープ上を走行する走行モード、（４）主として仮想ガイドテープ上を走行し、一時的に磁気ガイドテープ１４上を走行する走行モード、のいずれも選択することができる。これらの走行モードは、モーションＥＣＵ２６で設定され、実行される。
【００５４】
［モーションＥＣＵ２６の構成］
以上のように説明した本実施形態に係るＡＧＶ１０の特徴的な機能（仮想ガイドテープ機能及び仮想マーカテープ機能）を実現するためのモーションＥＣＵ２６の具体的な構成について、図２等を参照しながら説明する。
【００５５】
図２は、モーションＥＣＵ２６の構成を示すブロック図である。モーションＥＣＵ２６は、車体座標値計算処理部３４（現在位置取得部）、ガイドテープデータ格納部３６、仮想ガイドセンサ処理部３８、ガイドセンサ切替処理部４０、車体ズレ量計算処理部４２（位置姿勢算出部）、マーカテープデータ格納部４４、仮想マーカセンサ処理部４６、マーカセンサ切替処理部４８、ジョブデータ格納部５０、ジョブ命令実行処理部５２、及び、出力速度計算処理部５４を有する。
【００５６】
車体座標値計算処理部３４は、スキャナセンサ２０の検出結果（ＡＧＶ１０の位置情報）や、モータコントローラ２８Ｌ、２８Ｒからの左右両輪の回転数等に基づいて、ＡＧＶ１０の車体座標値を計算することにより、ＡＧＶ１０の現在位置を取得する。
【００５７】
ガイドテープデータ格納部３６には、磁気ガイドテープ１４が敷設されていない場所について、仮想的に設定された磁気ガイドテープ（図３Ａ及び図３Ｂの仮想ガイドテープ１４ｉ）に関するデータが仮想ガイドテープレイアウトデータ（ガイドテープデータ）として格納されている。
【００５８】
ここで、磁気ガイドテープ１４について、図３Ａを参照しながら詳しく説明する。図３Ａは、磁気ガイドテープ１４が敷設されているＡＧＶ１０の走行経路５６の一例を図示したものである。走行経路５６は、複数の直線及び円弧（以下、線分ともいう。）の組み合わせで構成されている。ここで、走行経路５６上の点５８は、各線分の始点又は終点の位置を示す。なお、図３Ａの走行経路５６は、磁気ガイドテープ１４に代えて、仮想ガイドテープ１４ｉで構成される走行経路であってもよい。
【００５９】
そして、図３Ａの走行経路５６について、（１）走行経路５６を構成する線分の番号、（２）線分の形状の種別（直線又は円弧）、（３）線分の始点位置、（４）線分の終点位置、（５）仮想ガイドテープ１４ｉの幅（仮想ガイドテープ１４ｉの中心位置に対する左右方向の幅）、（６）線分が円弧であれば円弧の半径、の各項目の数値データが、仮想ガイドテープレイアウトデータとして、ガイドテープデータ格納部３６に予め格納される。
【００６０】
一方、図３Ｂに示すように、磁気ガイドテープ１４の近傍には、磁気マーカテープ３２が敷設されている。磁気マーカテープ３２は、磁気ガイドテープ１４の側方に配置された直線状のテープであり、前述のように、磁気ガイドテープ１４に沿ってＡＧＶ１０が走行する際、「スタート」、「ストップ」、「回転」、「加減速」等の走行命令をＡＧＶ１０に認識させるためのマークである。従って、ＡＧＶ１０は、磁気マーカテープ３２を検出することにより、当該磁気マーカテープ３２の示す走行命令を実行することができる。なお、磁気ガイドテープ１４が敷設されていない場所には、磁気マーカテープ３２が敷設されない。
【００６１】
そこで、マーカテープデータ格納部４４には、磁気マーカテープ３２が敷設されていない場所について、仮想的に設定された磁気マーカテープ（仮想マーカテープ３２ｉ）に関するデータが仮想マーカテープレイアウトデータ（マーカテープデータ）として格納されている。そのため、走行経路５６が仮想ガイドテープ１４ｉで構成される場合には、磁気マーカテープ３２に代えて、仮想マーカテープ３２ｉが設定される。
【００６２】
従って、図３Ｂの走行経路５６であれば、（１）仮想マーカテープ３２ｉの番号、（２）仮想マーカテープ３２ｉの中心位置、（３）仮想マーカテープ３２ｉの姿勢、（４）仮想マーカテープ３２ｉの全長、（５）仮想マーカテープ３２ｉの幅、の各項目の数値データが、仮想マーカテープレイアウトデータとして、マーカテープデータ格納部４４に予め格納される。
【００６３】
仮想ガイドセンサ処理部３８は、実際に磁気ガイドテープ１４が敷設されていない場所について、車体座標値計算処理部３４が算出したＡＧＶ１０の車体座標値と、仮想ガイドテープレイアウトデータとを用いて、仮想ガイドテープ１４ｉの位置を算出する。すなわち、仮想ガイドセンサ処理部３８は、磁気ガイドテープ１４が敷設されていない場所において、実際の磁気ガイドセンサ２２に代わって、仮想的な磁気ガイドセンサ（仮想ガイドセンサ）として機能する。
【００６４】
ここで、実際の磁気ガイドセンサ２２と仮想ガイドセンサ６０との関係について、図４Ａ及び図４Ｂを参照しながら説明する。
【００６５】
図４Ａは、ＡＧＶ１０における仮想ガイドセンサ６０の設置位置を図示した説明図である。仮想ガイドセンサ６０は、ＡＧＶ１０の中心位置６２に対して車体の前後方向（Ｘ方向）の等距離Ｘ１の位置にそれぞれ設置される。この位置は、図４Ｂに示すように、車幅方向（Ｙ方向）に沿って等間隔Ｙ１で複数の磁気ガイドセンサ２２が配置される位置でもある。つまり、仮想ガイドセンサ６０は、ＡＧＶ１０の現在位置（中心位置６２）を基準として、ＡＧＶ１０における磁気ガイドセンサ２２の設置位置を、仮想ガイドセンサ６０の位置に設定する。なお、図４Ａ以降、仮想ガイドセンサ６０及び磁気ガイドセンサ２２の設置位置を、図４Ａのように、模式的に長方形として図示する場合がある。
【００６６】
ここで、車体前方又は後方で車幅方向に配置される複数の磁気ガイドセンサ２２の個数をｎとし、配置間隔をＹ１とすれば、仮想ガイドセンサ６０の車幅方向の全長は、（ｎ−１）×Ｙ１になる。また、１個の仮想ガイドセンサ６０は、ｎ個分の磁気ガイドセンサ２２に相当するので、その分解能はｎとなる。
【００６７】
従って、仮想ガイドセンサ処理部３８は、ＡＧＶ１０の現在の中心位置６２を基準として、ＡＧＶ１０における磁気ガイドセンサ２２の設置位置を、仮想ガイドセンサ６０の位置に設定し、仮想ガイドセンサ６０の位置と、仮想ガイドテープレイアウトデータ中の各線分のデータ（仮想ガイドテープ１４ｉを示す線分データ）とを比較する。この比較では、仮想ガイドセンサ処理部３８は、仮想ガイドセンサ６０の位置が線分データの範囲内にあるか否か、すなわち、仮想ガイドセンサ６０と線分データの直線又は円弧との重なりがあるか否かを判定する。
【００６８】
前述のように、複数の磁気ガイドセンサ２２を１個の仮想ガイドセンサ６０に置き換えているので、仮想ガイドセンサ処理部３８は、磁気ガイドセンサ２２の設置位置毎に、直線又は円弧との重なりがあれば「１」（オン）、重なりがなければ「０」（オフ）と判定する。また、仮想ガイドセンサ６０は、ＡＧＶ１０の前後に設置されているので、仮想ガイドセンサ処理部３８は、このような重なりの判定を前後の仮想ガイドセンサ６０について実施する。つまり、仮想ガイドセンサ処理部３８は、前後の仮想ガイドセンサ６０の設置位置を示す模式的な長方形と仮想ガイドテープ１４ｉの線分とが交差するか否かを判定する。
【００６９】
そして、仮想ガイドセンサ処理部３８は、仮想ガイドテープ１４ｉの位置（重なりがある旨の判定結果が出た磁気ガイドセンサ２２の設置位置）を含む判定結果をガイドセンサ切替処理部４０に出力する。
【００７０】
ガイドセンサ切替処理部４０は、仮想ガイドセンサ処理部３８からの判定結果（仮想ガイドテープ１４ｉの位置）、又は、磁気ガイドセンサ２２が実際に検出した磁気ガイドテープ１４の位置、のいずれかを車体ズレ量計算処理部４２に出力する。
【００７１】
この場合、例えば、ＡＧＶ１０が実際に磁気ガイドテープ１４上を走行している場合や、仮想ガイドテープ１４ｉ上の走行モードから実際の磁気ガイドテープ１４の走行モードに切り替わった場合、ガイドセンサ切替処理部４０は、磁気ガイドセンサ２２が検出した磁気ガイドテープ１４の位置を車体ズレ量計算処理部４２に出力する。
【００７２】
一方、ＡＧＶ１０が仮想ガイドテープ１４ｉ上を走行している場合や、実際の磁気ガイドテープ１４の走行モードから仮想ガイドテープ１４ｉ上の走行モードに切り替わった場合、ガイドセンサ切替処理部４０は、仮想ガイドセンサ処理部３８が算出した仮想ガイドテープ１４ｉの位置を車体ズレ量計算処理部４２に出力する。
【００７３】
なお、ガイドセンサ切替処理部４０は、ジョブ命令実行処理部５２からの指示に従って、車体ズレ量計算処理部４２に出力すべき位置を切り替えればよい。
【００７４】
また、前述のように、実際の磁気ガイドテープ１４の位置は、複数の磁気ガイドセンサ２２によって検出される。そのため、ガイドセンサ切替処理部４０は、磁気ガイドセンサ２２の検出結果を車体ズレ量計算処理部４２に出力する場合には、複数の磁気ガイドセンサ２２の検出結果を車体ズレ量計算処理部４２に出力すればよい。この場合、各磁気ガイドセンサ２２は、ＡＧＶ１０の前後で車幅方向（Ｙ方向）に配置されているので、磁気ガイドテープ１４を検出した磁気ガイドセンサ２２は、「１」（オン）の検出信号を出力し、一方で、磁気ガイドテープ１４を検出できなかった磁気ガイドセンサ２２は、「０」（オフ）の検出信号を出力する。
【００７５】
車体ズレ量計算処理部４２は、ガイドセンサ切替処理部４０を介して入力された、実際の磁気ガイドテープ１４の位置、又は、仮想ガイドテープ１４ｉの位置に基づいて、ＡＧＶ１０の位置姿勢を算出する。この場合、車体ズレ量計算処理部４２は、仮想ガイドセンサ６０の判定結果（「１」又は「０」の状態）、あるいは、各磁気ガイドセンサ２２の検出結果（「１」又は「０」の検出信号）から、磁気ガイドテープ１４又は仮想ガイドテープ１４ｉに対するＡＧＶ１０の車体のズレの度合を計算する。
【００７６】
図５は、磁気ガイドテープ１４又は仮想ガイドテープ１４ｉに対するＡＧＶ１０の姿勢を模式的に図示した説明図である。車体ズレ量計算処理部４２は、磁気ガイドテープ１４（仮想ガイドテープ１４ｉ）に対する車体の姿勢角θを求めると共に、磁気ガイドテープ１４（仮想ガイドテープ１４ｉ）の中心位置と車体の中心位置６２との間の距離Ｂを求める。
【００７７】
一方、仮想マーカセンサ処理部４６は、実際に磁気マーカテープ３２が敷設されていない場所について、車体座標値計算処理部３４が算出したＡＧＶ１０の現在の中心位置６２と、仮想マーカテープレイアウトデータとを用いて、仮想マーカテープ３２ｉの位置を算出する。すなわち、仮想マーカセンサ処理部４６は、磁気マーカテープ３２が敷設されていない場所であっても、実際の磁気マーカセンサ２４に代わって、仮想的な磁気マーカセンサ（仮想マーカセンサ）として機能する。
【００７８】
ここで、実際の磁気マーカセンサ２４と仮想マーカセンサ６６との関係について、図４Ｃを参照しながら説明する。
【００７９】
図４Ｃは、ＡＧＶ１０における仮想ガイドセンサ６０及び仮想マーカセンサ６６の設置位置を図示した説明図である。仮想マーカセンサ６６は、ＡＧＶ１０の中心位置６２に対して車体の前方向（Ｘ方向）で仮想ガイドセンサ６０の両端の位置（中心位置６２を通る中心線（一点鎖線）に対して車幅方向の左右にＹ２の距離の位置）にそれぞれ設置される。この位置は、実際の磁気マーカセンサ２４が配置される位置でもある。つまり、仮想マーカセンサ６６は、ＡＧＶ１０の現在位置（中心位置６２）を基準として、ＡＧＶ１０における磁気マーカセンサ２４の設置位置を、仮想マーカセンサ６６の位置に設定する。
【００８０】
従って、仮想マーカセンサ処理部４６は、ＡＧＶ１０の現在の中心位置６２を基準として、ＡＧＶ１０における磁気マーカセンサ２４の設置位置を、仮想マーカセンサ６６の位置に設定し、仮想マーカセンサ６６の位置と、仮想マーカテープレイアウトデータ（仮想マーカテープ３２ｉを示す線分データ）とを比較する。この比較では、仮想マーカセンサ処理部４６は、仮想マーカセンサ６６の位置が線分データの範囲内にあるか否か、すなわち、仮想マーカセンサ６６と線分データとの重なりがあるか否かを判定する。
【００８１】
前述のように、２個の磁気マーカセンサ２４を仮想マーカセンサ６６にそれぞれ置き換えているので、仮想マーカセンサ処理部４６は、磁気マーカセンサ２４の設置位置毎に、線分データとの重なりがあれば「１」（オン）、重なりがなければ「０」（オフ）と判定する。これにより、仮想マーカセンサ処理部４６は、仮想マーカセンサ６６の設置位置を示す模式的な円が仮想マーカテープ３２ｉの線分に含まれるか否かを判定することが可能となる。
【００８２】
そして、仮想マーカセンサ処理部４６は、仮想マーカテープ３２ｉの位置（重なりのある旨の判定結果が出た磁気マーカセンサ２４の設置位置）を含む判定結果をマーカセンサ切替処理部４８に出力する。
【００８３】
マーカセンサ切替処理部４８は、仮想マーカセンサ処理部４６からの判定結果（仮想マーカテープ３２ｉの位置）、又は、磁気マーカセンサ２４が実際に検出した磁気マーカテープ３２の位置、のいずれかをジョブ命令実行処理部５２に出力する。
【００８４】
この場合、例えば、ＡＧＶ１０が実際に磁気ガイドテープ１４上を走行している場合や、仮想ガイドテープ１４ｉ上の走行モードから実際の磁気ガイドテープ１４の走行モードに切り替わった場合、マーカセンサ切替処理部４８は、磁気マーカセンサ２４が検出した磁気マーカテープ３２の位置をジョブ命令実行処理部５２に出力する。
【００８５】
一方、ＡＧＶ１０が仮想ガイドテープ１４ｉ上を走行している場合や、実際の磁気ガイドテープ１４の走行モードから仮想ガイドテープ１４ｉ上の走行モードに切り替わった場合、マーカセンサ切替処理部４８は、仮想マーカセンサ処理部４６が算出した仮想マーカテープ３２ｉの位置をジョブ命令実行処理部５２に出力する。
【００８６】
なお、マーカセンサ切替処理部４８は、ジョブ命令実行処理部５２からの指示に従って、ジョブ命令実行処理部５２に出力すべき位置を切り替えればよい。
【００８７】
ジョブデータ格納部５０には、上位システム１２から受信したジョブ命令が格納されている。
【００８８】
ジョブ命令実行処理部５２は、ジョブデータ格納部５０からジョブ命令を読み込み、ジョブ命令に応じた指令速度を出力速度計算処理部５４に出力する。また、ジョブ命令実行処理部５２は、マーカセンサ切替処理部４８を介して入力される磁気マーカテープ３２の位置に基づき、磁気マーカセンサ２４又は仮想マーカセンサ処理部４６が磁気マーカテープ３２を検出した場合には、現在のジョブ命令を終了させる。そして、ジョブ命令実行処理部５２は、次のジョブ命令を実行するため、ジョブデータ格納部５０から新たなジョブ命令を読み込む。
【００８９】
この場合、マーカセンサ切替処理部４８から「１」（オン）の入力があれば、ジョブ命令実行処理部５２は、磁気マーカセンサ２４又は仮想マーカセンサ処理部４６が磁気マーカテープ３２を検出したと判断する。前述のように、磁気マーカテープ３２は、「スタート」、「ストップ」、「回転」、「加減速」等の走行命令をＡＧＶ１０に認識させるためのマークである。そのため、ジョブ命令実行処理部５２は、磁気マーカテープ３２が検出された場合、ＡＧＶ１０における現在のジョブ命令が完了したと判断することができる。
【００９０】
出力速度計算処理部５４は、ジョブ命令実行処理部５２からのジョブ命令に応じた指令速度や、車体ズレ量計算処理部４２で算出された磁気ガイドテープ１４に対するＡＧＶ１０の車体のズレ度合（距離Ｂ、姿勢角θ）に基づいて、左の車輪６４Ｌの速度ＶＬと、右の車輪６４Ｒの速度ＶＲとを算出する。
【００９１】
そして、出力速度計算処理部５４は、当該速度ＶＬに応じた制御信号をモータコントローラ２８Ｌに供給すると共に、速度ＶＲに応じた制御信号をモータコントローラ２８Ｒに供給する。これにより、モータコントローラ２８Ｌは、制御信号に従ってモータ３０Ｌを駆動させると共に、モータコントローラ２８Ｒは、制御信号に従ってモータ３０Ｒを駆動させる。この結果、ＡＧＶ１０の左側の車輪６４Ｌは、速度ＶＬで走行すると共に、右側の車輪６４Ｒは、速度ＶＲで走行する。
【００９２】
［本実施形態の適用例］
以上のように構成される本実施形態に係るＡＧＶ１０の適用例（第１適用例〜第４適用例）を、図６〜図９Ｂを参照しながら説明する。
【００９３】
図６の第１適用例は、工場内において、磁気ガイドテープ１４上に障害物７０が存在する場合を図示したものである。この場合、ＡＧＶ１０は、仮想ガイドテープ１４ｉの機能を用いて障害物７０を回避して走行すればよい。
【００９４】
具体的に、磁気ガイドテープ１４上において障害物７０の手前には、仮想ガイドテープ１４ｉが磁気ガイドテープ１４から分岐している。仮想ガイドテープ１４ｉは、障害物７０を回避し、当該障害物７０の前方で磁気ガイドテープ１４と合流する。この場合、仮想マーカテープ３２ｉは、（１）磁気ガイドテープ１４と仮想ガイドテープ１４ｉとの分岐箇所の手前、（２）仮想マーカテープ３２ｉを構成する線分が直角に曲がる箇所の手前、（３）磁気ガイドテープ１４と仮想ガイドテープ１４ｉとの合流箇所の手前、にそれぞれ設けられている。
【００９５】
これにより、磁気ガイドテープ１４上をＡＧＶ１０が走行する場合、仮想マーカセンサ６６が仮想マーカテープ３２ｉを検出すると、ジョブ命令実行処理部５２は、磁気ガイドテープ１４の走行モードから仮想ガイドテープ１４ｉの走行モードに切り替わるように、モーションＥＣＵ２６内を制御する。
【００９６】
具体的に、ジョブ命令実行処理部５２は、現在のジョブ命令を終了させて、ジョブデータ格納部５０から次のジョブ命令を読み込んで実行する。また、ジョブ命令実行処理部５２は、仮想ガイドセンサ処理部３８の算出結果を車体ズレ量計算処理部４２に出力するようにガイドセンサ切替処理部４０を制御すると共に、仮想マーカセンサ処理部４６の算出結果をジョブ命令実行処理部５２に出力するようにマーカセンサ切替処理部４８を制御する。
【００９７】
これにより、ＡＧＶ１０は、障害物７０手前の磁気ガイドテープ１４と仮想マーカテープ３２ｉとの分岐箇所から、仮想ガイドテープ１４ｉ上に沿って走行することができる。
【００９８】
その後、仮想マーカテープ３２ｉ上をＡＧＶ１０が走行中、仮想マーカセンサ６６が３つ目の仮想マーカテープ３２ｉを検出すると、ジョブ命令実行処理部５２は、仮想ガイドテープ１４ｉの走行モードから磁気ガイドテープ１４の走行モードに切り替わるように、モーションＥＣＵ２６内を制御する。
【００９９】
具体的に、ジョブ命令実行処理部５２は、現在のジョブ命令を終了させて、ジョブデータ格納部５０から次のジョブ命令を読み込んで実行する。また、ジョブ命令実行処理部５２は、磁気ガイドセンサ２２の検出結果を車体ズレ量計算処理部４２に出力するようにガイドセンサ切替処理部４０を制御すると共に、磁気マーカセンサ２４の検出結果をジョブ命令実行処理部５２に出力するようにマーカセンサ切替処理部４８を制御する。
【０１００】
これにより、ＡＧＶ１０は、障害物７０前方の磁気ガイドテープ１４と仮想マーカテープ３２ｉとの合流箇所から、磁気ガイドテープ１４上に沿って走行することができる。
【０１０１】
図７の第２適用例は、工場内において、磁気ガイドテープ１４（仮想ガイドテープ１４ｉ）及び磁気マーカテープ３２（仮想マーカテープ３２ｉ）が設定されている場合を図示したものである。従って、ＡＧＶ１０は、磁気ガイドテープ１４（仮想ガイドテープ１４ｉ）の走行経路５６上を走行することになる。なお、走行経路５６上には、所定の設備７２が存在する。
【０１０２】
この場合、ＡＧＶ１０は、磁気マーカテープ３２（仮想マーカテープ３２ｉ）を検出する毎、又は、ジョブ命令の所定の条件が揃ったときに、次のジョブ命令を実行して走行することができる。また、走行方向の左右に磁気マーカテープ３２（仮想マーカテープ３２ｉ）が設定されている場合には、ジョブ命令中、いずれか一方の方向の磁気マーカテープ３２を検出するように予め指定しておけばよい。さらに、予め座標値が分かっている磁気マーカテープ３２（仮想マーカテープ３２ｉ）に関しては、当該磁気マーカテープ３２（仮想マーカテープ３２ｉ）を検出した際に、ＡＧＶ１０の現在位置（中心位置６２）を更新すればよい。
【０１０３】
なお、前述のように、磁気マーカテープ３２及び仮想マーカテープ３２ｉは、「スタート」、「ストップ」、「回転」、「加減速」等の走行命令をＡＧＶ１０に認識させるためのトリガとして機能するが、例えば、「ストップ」を認識できたとしても、ＡＧＶ１０が直ちに停止するとは限らない。そこで、スピンターンや停止位置の手前に磁気マーカテープ３２（仮想マーカテープ３２ｉ）を設置し、「Ａ［ｍｍ］先で停止」のように当該マーカを指定することも可能である。
【０１０４】
また、図７において、仮想マーカテープ３２ｉの横に図示した１〜１０の数字は、ジョブ命令及び仮想マーカテープ３２ｉの番号であり、ジョブ命令のプログラムの一例を図８に示す。
【０１０５】
図９Ａの第３適用例は、特定の平面をグリッドに区切り、その全てのグリッド辺に磁気ガイドテープ１４又は仮想ガイドテープ１４ｉが設定される場合を図示したものである。この場合、ＡＧＶ１０は、グリッド辺に沿って走行することになる。
【０１０６】
図９Ｂの第４適用例は、グリッド辺の交点のみに、正方形、Ｌ字型、Ｔ字型、十字型の磁気ガイドテープ１４又は仮想ガイドテープ１４ｉが設定される場合を図示したものである。この場合、ＡＧＶ１０は、交点では、磁気ガイドテープ１４又は仮想ガイドテープ１４ｉに沿って走行し、交点間では、仮想ガイドテープ１４ｉに沿って走行すればよい。
【０１０７】
［本実施形態の効果］
本実施形態に係るＡＧＶ１０によれば、ガイドセンサ切替処理部４０は、磁気ガイドセンサ２２が検出した実際の磁気ガイドテープ１４の位置、又は、仮想ガイドセンサ処理部３８が算出した仮想ガイドテープ１４ｉの位置のいずれか一方を車体ズレ量計算処理部４２に出力する。これにより、車体ズレ量計算処理部４２は、ＡＧＶ１０の位置姿勢を算出できるので、当該ＡＧＶ１０の走行制御が可能となる。すなわち、本実施形態では、磁気ガイドセンサ２２の出力と、仮想ガイドセンサ処理部３８の出力とを１つのシステムで受け、切り替えて処理することが可能である。
【０１０８】
また、車体座標値計算処理部３４がＡＧＶ１０の現在位置を取得し、仮想ガイドセンサ処理部３８は、この現在位置と仮想ガイドテープレイアウトデータとを用いて、仮想ガイドテープ１４ｉの位置を算出する。これにより、仮想ガイドセンサ処理部３８は、磁気ガイドテープ１４を用いた場合と略同等の出力形態となる。すなわち、仮想ガイドセンサ処理部３８は、磁気ガイドテープ１４を用いたときの出力形態にコンバートすることが可能である。この結果、車体ズレ量計算処理部４２は、磁気ガイドセンサ２２が検出した磁気ガイドテープ１４の位置、又は、仮想ガイドセンサ処理部３８が算出した仮想ガイドテープ１４ｉの位置のどちらも利用することが可能となる。
【０１０９】
従って、本実施形態では、実際に磁気ガイドテープ１４が敷設されている場所、及び、磁気ガイドテープ１４が敷設されていない場所のいずれもＡＧＶ１０を走行させることが可能となる。すなわち、実際に磁気ガイドテープ１４が敷設されている場所では、磁気ガイドテープ１４に沿ってＡＧＶ１０を走行させ、一方で、磁気ガイドテープ１４が敷設されていない場所では、その場所にあたかも磁気ガイドテープ１４が敷設されているかのようにＡＧＶ１０を走行させることができる。
【０１１０】
しかも、磁気ガイドセンサ２２又は仮想ガイドセンサ処理部３８のどちらからも磁気ガイドテープ１４（仮想ガイドテープ１４ｉ）の位置が出力されるので、ＡＧＶ１０では、走行制御に関わる部分を大幅に変更することなく、１つのシステムによって、磁気ガイドテープ１４による走行と、磁気ガイドテープ１４が存在しない場所での走行とを実現できる。
【０１１１】
このようにすることで、本実施形態では、磁気ガイドセンサ２２又は仮想ガイドセンサ６０が磁気ガイドテープ１４又は仮想ガイドテープ１４ｉから逸脱しないように、ＡＧＶ１０の走行制御を行うことが可能となる。
【０１１２】
さらに、本実施形態では、下記の効果も得られる。
【０１１３】
従来のＡＧＶで使用されていた磁気ガイドテープ１４の環境下においても、本実施形態を直ちに適用し、運用することが可能である。
【０１１４】
また、測距センサによる測距が不可能な、例えば、反射壁が全くない環境、人や部品の位置姿勢が刻一刻と変化する環境でも、リアルタイムで現在位置を取得可能な他の現在位置取得手段を用いることで運用可能である。
【０１１５】
さらに、取得した現在位置と仮想ガイドテープレイアウトデータとを使うことで、その場に応じた柔軟な経路で運用することができる。例えば、障害物７０の回避や、ワークへの連結時に当該ワークの位置姿勢を認識して連結することが可能となる。
【０１１６】
さらにまた、これらの機能に対して、一つの走行制御アルゴリズムで対応可能であるため、軽薄短小、低コストなＡＧＶ１０のシステムを構築することができる。すなわち、従来は、障害物７０を回避するための経路算出や、ワークの位置姿勢の認識等の諸機能を実現する場合、別機能として制御アルゴリズムを作成する必要があった。これに対して、本実施形態では、それらの機能から仮想ガイドテープレイアウトデータが出力されるようにし、このデータを基にＡＧＶ１０が仮想ガイドテープ機能に従って走行することにより、実際の障害物７０の回避やワークの連結等の機能を実現することができる。
【０１１７】
仮想ガイドテープレイアウトデータは、所定範囲の数値データであるため、ガイドテープデータ格納部３６のメモリ容量を小さく済ませることができる。また、磁気ガイドセンサ２２の設置位置に仮想ガイドセンサ６０の位置を合わせ、仮想ガイドセンサ６０の位置が線分データの範囲内にあるか否かを判断することにより、仮想ガイドセンサ処理部３８で算出される仮想ガイドセンサ６０の位置の精度が向上すると共に、磁気ガイドセンサ２２が実際の磁気ガイドテープ１４を検出したときと同様の算出結果が得られる。
【０１１８】
また、ＡＧＶ１０の前後に車幅方向に沿って、複数の磁気ガイドセンサ２２がそれぞれ配置され、仮想ガイドセンサ処理部３８は、現在位置を基準として、ＡＧＶ１０における各磁気ガイドセンサ２２の設置位置を、仮想ガイドセンサ６０の位置に設定し、仮想ガイドセンサ６０の位置と仮想ガイドテープレイアウトデータとを比較して、当該位置が線分データの範囲内にあるか否かを判断する。これにより、車体ズレ量計算処理部４２は、ガイドセンサ切替処理部４０を介して入力された仮想ガイドセンサ処理部３８の判定結果に基づき、仮想ガイドテープ１４ｉに対するＡＧＶ１０の姿勢を精度よく算出することができる。
【０１１９】
一方、磁気マーカテープ３２は、磁気ガイドテープ１４に沿ってＡＧＶ１０が走行する際、ジョブ命令の完了や次のジョブ命令の実行開始等をＡＧＶ１０に指示するためのマーカであり、ジョブ命令の実行開始又は終了を認識させるためのトリガとして機能する。例えば、ＡＧＶ１０に対して「スタート」、「ストップ」、「回転」、「加減速」等の走行命令をＡＧＶ１０に認識させる。
【０１２０】
ところで、磁気マーカテープ３２は、上述のように、磁気ガイドテープ１４の近傍に設置される。従って、磁気ガイドテープ１４が敷設されていない場所には、磁気マーカテープ３２が敷設されていない。
【０１２１】
そこで、本実施形態では、磁気ガイドテープ１４の場合と同様に、マーカセンサ切替処理部４８は、磁気マーカセンサ２４の検出結果、又は、仮想マーカセンサ処理部４６の算出結果のいずれか一方をジョブ命令実行処理部５２に出力する。これにより、ジョブ命令実行処理部５２は、磁気マーカテープ３２を検出できた（仮想マーカテープ３２ｉの位置を算出できた）場合には、次のジョブ命令を実行することが可能となる。この場合でも、磁気マーカセンサ２４の出力と、仮想マーカセンサ処理部４６の出力とを１つのシステムで受け、切り替えて処理することが可能である。
【０１２２】
また、仮想マーカセンサ処理部４６は、ＡＧＶ１０の現在位置と仮想マーカテープレイアウトデータとを用いて、仮想マーカテープ３２ｉの位置を算出する。これにより、仮想マーカセンサ処理部４６は、実際の磁気マーカテープ３２を用いた場合と略同等の出力形態となる。この結果、ジョブ命令実行処理部５２は、磁気マーカセンサ２４の検出結果、又は、仮想マーカセンサ処理部４６の算出結果のどちらも利用することが可能となる。
【０１２３】
従って、本実施形態では、磁気ガイドテープ１４及び磁気マーカテープ３２の敷設の有無に関わりなくＡＧＶ１０を走行させ、当該ＡＧＶ１０に付与されたジョブ命令を順次実行することが可能となる。
【０１２４】
また、仮想マーカテープレイアウトデータは、所定範囲の数値データであるため、マーカテープデータ格納部４４のメモリ容量を小さく済ませることができる。また、磁気マーカセンサ２４の設置位置に仮想マーカセンサ６６の位置を合わせ、仮想マーカセンサ６６の位置が線分データの範囲内にあるか否かを判断することにより、仮想マーカセンサ処理部４６で算出される仮想マーカセンサ６６の位置の精度が向上すると共に、磁気マーカセンサ２４が実際の磁気マーカテープ３２を検出したときと同様の算出結果が得られる。
【０１２５】
また、ＡＧＶ１０の前方における車幅方向の両側に２個の磁気マーカセンサ２４がそれぞれ配置されており、仮想マーカセンサ処理部４６は、現在位置を基準として、ＡＧＶ１０における２個の磁気マーカセンサ２４の設置位置を、２個の仮想マーカセンサ６６の位置に設定し、２個の仮想マーカセンサ６６の位置と仮想マーカテープレイアウトデータとを比較して、当該各位置が線分データの範囲内にあるか否かを判断する。これにより、ジョブ命令実行処理部５２は、マーカセンサ切替処理部４８を介して入力された仮想マーカセンサ処理部４６の判断結果に基づき、次のジョブ命令の実行を正確に判断することが可能となる。
【０１２６】
なお、本発明は、上述した実施形態に限らず、本発明の要旨を逸脱することなく、種々の構成を採り得ることは当然可能である。
【図１】
2017158973.tif 000003
【図２】
2017158973.tif 000004
【図３】
2017158973.tif 000005
【図４】
2017158973.tif 000006
【図５】
2017158973.tif 000007
【図６】
2017158973.tif 000008
【図７】
2017158973.tif 000009
【図８】
2017158973.tif 000010
【図９】
2017158973.tif 000011
【国際調査報告】
2017158973.tif 000012
2017158973.tif 000013