(57)【要約】【課題】コンパクトなマーカーの識別および距離計測が精度よく可能であり、かつ、安価にシステムを実現する。【解決手段】この画像処理装置１０は、二次元平面上に、正方形又は長方形からなるセル１２であって、照射された光を反射可能な第一セル１２ａと照射された光を反射不能な第二セル１２ｂとを、ａ×ａ、又はａ×ｂ（ただし、ａ、ｂ＝３，４，５，６，…）の行列配置して構成される被検出体１１と、光を照射する照射部２３と、照射部２３から照射された光が被検出体１１を構成する第一セル１２ａと第二セル１２ｂに照射された後、第一セル１２ａから反射された光をカメラで撮像する撮像部２４，２５と、撮像部２４，２５によって撮像された撮像データに基づいて、被検出体１１に設定された情報を取得する算出部２６と、を備える検出部２２と、を備えている。【選択図】図１
2019102047.tif 000002
【特許請求の範囲】
【請求項１】
二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、ａ×ａ、又はａ×ｂ（ただし、ａ、ｂ＝３，４，５，６，…）の行列配置して構成される被検出体と、
光を照射する照射部と、前記照射部から照射された光が前記被検出体を構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、前記撮像部によって撮像された撮像データに基づいて、前記被検出体に設定された情報を取得する算出部と、を備える検出部と、
を備えることを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記被検出体は、
行列配置の１行目又は１列目を構成する複数の前記セルを検出スタート位置とし、
行列配置の最終行目又は最終列目を構成する複数の前記セルを検出エンド位置とし、
前記検出スタート位置と前記検出エンド位置の間にある１又は複数の行又は列を構成する複数の前記セルを１又は複数のＩＤ情報付与位置として構成され、
前記検出部が備える前記撮像部又は前記算出部は、前記撮像部によって撮像された撮像データを２値化処理し、当該２値化処理によって得られた２値化画像に対して前記検出スタート位置を水平方向又は垂直方向で走査することで前記セルの２値化画像上の寸法を算出し、算出された寸法の倍数位置に存在する１又は複数の前記ＩＤ情報付与位置と前記検出エンド位置の２値化画像上の座標を算出し、当該座標に基づき１又は複数の前記ＩＤ情報付与位置と前記検出エンド位置に対してそれぞれ１度の走査を行うことによって、１又は複数の前記ＩＤ情報付与位置に設定されたＩＤ情報を取得するようにしたことを特徴とする画像処理装置。
【請求項３】
請求項２に記載の画像処理装置において、
前記検出部が備える前記撮像部又は前記算出部によって行われる前記検出スタート位置、１又は複数の前記ＩＤ情報付与位置、および前記検出エンド位置に対する走査が、前記検出スタート位置、前記検出エンド位置、１又は複数の前記ＩＤ情報付与位置の順で行われることを特徴とする画像処理装置。
【請求項４】
請求項２又は３に記載の画像処理装置において、
前記算出部は、前記第一セルから反射された光を２つのカメラで撮像する前記撮像部によって撮像された撮像データが複数存在するときに、取得したＩＤ情報に基づいて、現時点で採用する被検出体を選択することを特徴とする画像処理装置。
【請求項５】
請求項２又は３に記載の画像処理装置において、
前記算出部は、前記被検出体が複数設置された場合に、前記第一セルから反射された光を２つのカメラで撮像する前記撮像部によって撮像された撮像データ内に前記被検出体を示す光が複数確認されたときに、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体の前記ＩＤ情報付与位置に設定されたＩＤ情報を検出するようにしたことを特徴とする画像処理装置。
【請求項６】
請求項５に記載の画像処理装置において、
前記算出部による前記検出部から最も近い位置にある被検出体の選択は、前記検出部と選択された当該被検出体との距離によって判断されることを特徴とする画像処理装置。
【請求項７】
請求項６に記載の画像処理装置において、
複数設置された前記被検出体の地上高が同一に設定されており、前記算出部が前記検出部から最も近い位置にある被検出体の選択を行う判断が、前記撮像部によって撮像された撮像データ内に存在する前記被検出体を示す複数の光の位置又は大きさに基づいて行われることを特徴とする画像処理装置。
【請求項８】
移動ロボットの移動速度と進行方向とを変更する駆動部と、
目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、
前記検出部により検出された前記被検出体までの距離と方向とを取得し、前記被検出体までの距離と方向とが予め定められた関係を満たす進行方向を算出し、算出した進行方向に基づいて前記駆動部を駆動制御する制御部と、
を備え、
前記被検出体は、二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、ａ×ａ、又はａ×ｂ（ただし、ａ、ｂ＝３，４，５，６，…）の行列配置してなるマーカーとして構成され、
前記検出部は、
光を照射する照射部と、
前記照射部から照射された光が前記マーカーを構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、
前記撮像部によって撮像された撮像データに基づいて、前記マーカーとの距離と方向を算出する算出部と、
を備えることを特徴とする移動ロボットの制御システム。
【請求項９】
移動ロボットの移動速度と進行方向とを変更する駆動部と、
目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、
前記検出部により検出された前記被検出体までの距離と方向とを取得する制御部と、
を備え、
前記被検出体は、二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、ａ×ａ、又はａ×ｂ（ただし、ａ、ｂ＝３，４，５，６，…）の行列配置してなるマーカーとして構成され、
前記検出部は、
光を照射する照射部と、
前記照射部から照射された光が前記マーカーを構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、
前記撮像部によって撮像された撮像データに基づいて、前記マーカーとの距離と方向を算出する算出部と、
を備える移動ロボットの制御方法であって、
前記制御部に、前記被検出体までの距離と方向とが予め定められた関係を満たす進行方向を算出させ、算出した進行方向に基づいて前記駆動部を駆動制御させることを特徴とする移動ロボットの制御方法。
【請求項１０】
所定の規則に基づく信号を発信するビーコンからなる被検出体と、
前記被検出体から発信される信号を受信し、受信された信号に基づいて前記被検出体に設定された信号情報を取得する検出部と、
を備える画像処理装置において、
前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたＩＤ情報を検出するようにしたことを特徴とする画像処理装置。
【請求項１１】
移動ロボットの移動速度と進行方向とを変更する駆動部と、
目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、
前記検出部により検出された前記被検出体に設定されたＩＤ情報に基づいて前記駆動部を駆動制御する制御部と、
を備え、
前記被検出体は、所定の規則に基づく信号を発信するビーコンとして構成され、
前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたＩＤ情報を検出するようにしたことを特徴とする移動ロボットの制御システム。
【請求項１２】
移動ロボットの移動速度と進行方向とを変更する駆動部と、
目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、
前記検出部により検出された前記被検出体に設定されたＩＤ情報を取得する制御部と、
を備え、
前記被検出体は、所定の規則に基づく信号を発信するビーコンとして構成され、
前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたＩＤ情報を検出するようにした移動ロボットの制御方法であって、
前記制御部に、前記検出部から最も近い位置にある被検出体のＩＤ情報に基づいて前記駆動部を駆動制御させることを特徴とする移動ロボットの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、移動ロボットの制御システム、および移動ロボットの制御方法に関するものである。
【背景技術】
【０００２】
従来から、自律移動する移動ロボットを誘導するために、ビーコンなどの発信器が用いられている。例えば、移動ロボットとしての掃除ロボットは、充電器に設けられたビーコンから発せられる信号に基づいて、充電器に向けて移動して充電器から電力の供給を受ける動作を行っている。また、下記特許文献１に記載の移動作業ロボットは、ビーコンから発せられる信号に基づいて、基準となる位置を検出し、移動を制御している。
【０００３】
このような移動ロボットは、近年その活用範囲を拡大している。例えば、工場内や物流倉庫などで使用される無人搬送車や、施設、ホール、空港などの公共施設内でのサービスロボットは、移動ロボット活用の一例である。
【０００４】
そして、この種の移動ロボットに用いられるビーコンには、上述したような信号を発するものの他に、マーカーと呼ばれる特徴的な形状又は模様により識別されるものに大別される。ここで、特徴的な形状又は模様により識別されるマーカーの具体例としては、バーコードやＱＲコード（登録商標）などが挙げられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−０７３１７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、上掲した特許文献１に記載の移動作業ロボットに代表されるように、信号を発するビーコンを用いて移動制御を行うシステムでは、信号を発信するビーコンのために電源が必要となり、複数のビーコンを設置する場合には、多数の配線工事が必要となる。このようなシステムの場合、導入コストが増大するとともに維持・保守のためのランニングコストが増大するという課題が存在していた。
【０００７】
一方、特徴的な形状又は模様により識別されるマーカーを用いたシステム構成の場合は、その識別および距離計測において読み取り精度の高い測定が必要となるが、そのような測定を安価かつ精度よく行うシステムは従来存在していなかった。例えば、バーコードやＱＲコード（登録商標）をマーカーとして用いた場合には、移動ロボットをマーカーに近接させてマーカー識別を行う必要があるため、工場内や物流倉庫などで使用される無人搬送車等の用途には不向きであった。また、バーコードやＱＲコード（登録商標）を無人搬送車等の用途に用いる場合に読み取り精度を高める対策として、バーコードやＱＲコード（登録商標）を記したマーカー自体を大きくすることが考えられるが、そのような対策では工場内や物流倉庫などといった現場で広い設置場所が必要となるため、現場作業に支障をきたしてしまうといった課題も考えられる。
【０００８】
本発明は、上述した従来技術に存在する課題に鑑みて成されたものであって、その目的は、広い設置場所を必要としない比較的コンパクトなマーカーを用いた場合であっても、その識別および距離計測が精度よく可能であり、さらに安価にシステムを実現することができる画像処理装置、移動ロボットの制御システム、および移動ロボットの制御方法を提供することにある。また、本発明の更なる目的は、信号を発信するビーコンを用いた場合であっても、安価にシステムを実現することができる画像処理装置、移動ロボットの制御システム、および移動ロボットの制御方法を提供することにある。
【課題を解決するための手段】
【０００９】
本発明に係る画像処理装置は、二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、ａ×ａ、又はａ×ｂ（ただし、ａ、ｂ＝３，４，５，６，…）の行列配置して構成される被検出体と、光を照射する照射部と、前記照射部から照射された光が前記被検出体を構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、前記撮像部によって撮像された撮像データに基づいて、前記被検出体に設定された情報を取得する算出部と、を備える検出部と、を備えることを特徴とするものである。
【００１０】
本発明に係る移動ロボットの制御システムは、移動ロボットの移動速度と進行方向とを変更する駆動部と、目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、前記検出部により検出された前記被検出体までの距離と方向とを取得し、前記被検出体までの距離と方向とが予め定められた関係を満たす進行方向を算出し、算出した進行方向に基づいて前記駆動部を駆動制御する制御部と、を備え、前記被検出体は、二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、ａ×ａ、又はａ×ｂ（ただし、ａ、ｂ＝３，４，５，６，…）の行列配置してなるマーカーとして構成され、前記検出部は、光を照射する照射部と、前記照射部から照射された光が前記マーカーを構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、前記撮像部によって撮像された撮像データに基づいて、前記マーカーとの距離と方向を算出する算出部と、を備えることを特徴とするものである。
【００１１】
本発明に係る移動ロボットの制御方法は、移動ロボットの移動速度と進行方向とを変更する駆動部と、目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、前記検出部により検出された前記被検出体までの距離と方向とを取得する制御部と、を備え、前記被検出体は、二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、ａ×ａ、又はａ×ｂ（ただし、ａ、ｂ＝３，４，５，６，…）の行列配置してなるマーカーとして構成され、前記検出部は、光を照射する照射部と、前記照射部から照射された光が前記マーカーを構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、前記撮像部によって撮像された撮像データに基づいて、前記マーカーとの距離と方向を算出する算出部と、を備える移動ロボットの制御方法であって、前記制御部に、前記被検出体までの距離と方向とが予め定められた関係を満たす進行方向を算出させ、算出した進行方向に基づいて前記駆動部を駆動制御させることを特徴とするものである。
【発明の効果】
【００１２】
本発明によれば、広い設置場所を必要としない比較的コンパクトなマーカーを用いた場合であっても、その識別および距離計測が精度よく可能であり、さらに安価にシステムを実現することができる画像処理装置、移動ロボットの制御システム、および移動ロボットの制御方法を提供することができる。また、本発明は、信号を発信するビーコンを用いた場合であっても、安価にシステムを実現することができる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態に係る画像処理装置のシステム構成例を示すブロック図である。
【図２】本実施形態に係る画像処理装置が撮像したマーカーの撮像データを２値化処理して得られた２値化画像を示すとともに、この２値化画像を走査してマーカーに設定されたＩＤ情報を得るための走査方法を説明するための図である。
【図３】本実施形態に係る画像処理装置の動作説明を行うための画像処理工程を示すフローチャートである。
【図４】本発明に係るマーカーが取り得る多様な形態の一例を示す図である。
【図５】本実施例に係る移動ロボットの移動例を示す図である。
【図６】本実施例に係る移動ロボットの構成例を示すブロック図である。
【図７】本実施例に係る制御部の構成例を示すブロック図である。
【図８】本実施例に係る移動経路記憶部に記憶されているテーブルの一例を示す図である。
【図９】本実施例に係る駆動制御部におけるマーカー情報に基づいた制御に係る構成例を示すブロック図である。
【図１０】本実施例に係る駆動制御部において算出される補正角Δθを示す図である。
【図１１】本実施例に係る制御部による制御処理内容を示すフローチャートである。
【図１２】移動ロボットが移動する通路に交差点が存在する場合のマーカーの配置例を示す図である。
【図１３】移動ロボットが移動する通路に交差点が存在する場合のマーカーの配置例を示す図である。
【図１４】全ての指令情報をマーカーに対して付与した場合の本発明に係る移動ロボットの制御システムの構成例を示す図である。
【図１５】変形形態に用いられるマーカーの具体例を示す図である。
【図１６】変形形態に係る移動経路記憶部に記憶されているテーブルの一例を示す図である。
【図１７】移動ロボットが移動する通路に変形形態で用いられるマーカーが配置された一例と、変形形態に係る移動ロボットの制御システムの動作例を示す図である。
【図１８】変形形態に係る撮像部によって撮像された撮像データの一例を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための好適な実施形態について、図面を用いて説明する。なお、以下の実施形態は、各請求項に係る発明を限定するものではなく、また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１５】
まず、図１および図２を用いて、本実施形態に係る画像処理装置の基本構成を説明する。ここで、図１は、本実施形態に係る画像処理装置のシステム構成例を示すブロック図である。また、図２は、本実施形態に係る画像処理装置が撮像したマーカーの撮像データを２値化処理して得られた２値化画像を示すとともに、この２値化画像を走査してマーカーに設定されたＩＤ情報を得るための走査方法を説明するための図である。
【００１６】
図１に示すように、本実施形態に係る画像処理装置１０は、被検出体としてのマーカー１１と、このマーカー１１を読み取ることで所望の情報を取得し、処理を実行する画像処理装置本体２１とを有して構成されている。
【００１７】
マーカー１１は、二次元平面上に、正方形からなる複数のセル１２を配置して構成されるものである。複数のセル１２は、例えば、赤外ＬＥＤ光を反射可能な第一セルとしての白色セル１２ａと、赤外ＬＥＤ光を反射不能な第二セルとしての黒色セル１２ｂとから構成されている。図１で示した本実施形態の場合、１４個の白色セル１２ａと、２６個の黒色セル１２ｂとが、５列８行の行列配置で二次元平面上に配置されている。また、このマーカー１１では、マーカー１１の外周部を取り囲むように配置された２２個の黒色セル１２ｂは情報を含むものではなく、マーカー１１と空間とを区分けして読み取りの誤認識を防止するための単なる境界として機能する部分である。すなわち、図１で示すマーカー１１において被検出体として機能する箇所は、符号Ａで示す３列と、符号Ｂで示す６行とからなる３列６行、１８個のセル１２の行列配置によって構成される部分である。
【００１８】
マーカー１１において被検出体として機能する３列６行の行列配置として構成される箇所は、例えば最上段の１行目に位置する符号Ｂ１で示す箇所が「検出スタート位置」として構成され、最下段の６行目に位置する符号Ｂ３で示す箇所が「検出エンド位置」として構成され、これら検出スタート位置Ｂ１と検出エンド位置Ｂ３で挟まれた２行目から５行目までの４行で構成される符号Ｂ２で示す箇所が「ＩＤ情報付与位置」として構成されている。
【００１９】
検出スタート位置Ｂ１と検出エンド位置Ｂ３については、例えば、図１の紙面左側から右側に向けて、「白、黒、白」の順でセル１２が配置されており、白を「１」、黒を「０（ゼロ）」とするバイナリーコードで表現すると「１、０、１」と示すことができる。この「１、０、１」の情報を画像処理装置本体２１側に認識させることで、マーカー１１の最初の行と最終の行を読み取ることに成功したことが認識できる。すなわち、「１、０、１」で示される検出スタート位置Ｂ１と検出エンド位置Ｂ３を認識することで、この間に存在するであろう４行のＩＤ情報付与位置Ｂ２が正確に認識できることとなる。
【００２０】
また、４行のＩＤ情報付与位置Ｂ２については、上の行から下の行に向けて「白、黒、白」、「白、白、白」、「白、黒、白」、「白、白、白」の順でセル１２が配置されており、これらをバイナリーコードで表現すると「１、０、１」、「１、１、１」、「１、０、１」、「１、１、１」と示すことができる。このような３ビット×４行からなる構成の情報をマーカー１１に持たせることにより、合計１２ビットのＩＤ情報をＩＤ情報付与位置Ｂ２に対して付与することが可能となる。そして、この１２ビットの情報を画像処理装置本体２１側に認識させることで、様々な処理が実行可能となる。
【００２１】
以上のように、検出スタート位置Ｂ１と検出エンド位置Ｂ３の読み取りが成功し、かつ、それらの間に存在するＩＤ情報付与位置Ｂ２を読み取ることで、ＩＤ情報を誤認識なく取得することが可能となる。
【００２２】
なお、複数のセル１２のうち、白色セル１２ａは、後述する照射部２３から照射される赤外ＬＥＤ光を反射して、後述する撮像部２４，２５にその反射光を撮像させることのできる材料にて構成されている。赤外ＬＥＤ光を反射する材料としては、アルミニウム箔や酸化チタンの薄膜等が用いられる。一方、黒色セル１２ｂは、後述する照射部２３から照射される赤外ＬＥＤ光を反射せず、後述する撮像部２４，２５で撮像した画像において黒色セル１２ｂの箇所が暗部となるようにすることのできる材料にて構成されている。赤外ＬＥＤ光を反射しない材料としては、赤外カットフィルムや偏光フィルム、赤外線吸収材、黒色フェルト等が用いられる。つまり、本実施形態では、投光部としての照射部２３から出た赤外ＬＥＤ光をマーカー１１の白色セル１２ａにて反射し、受光部としての撮像部２４，２５で受光して画像を撮像する。このとき、被検出体であるマーカー１１の黒色セル１２ｂでは、受光部である撮像部２４，２５に対する反射光を減少させるので、その反射量の減少をとらえて検出する所謂回帰反射形の画像取得構成が採用されている。
【００２３】
本実施形態に係る画像処理装置本体２１は、マーカー検出部２２と、制御部２７を備えて構成されている。さらに、マーカー検出部２２は、照射部２３と、２つの撮像部２４，２５と、算出部２６を備える。
【００２４】
照射部２３は、赤外ＬＥＤ光をマーカー１１に対して照射することができ、マーカー１１側から反射された反射光を２つの撮像部２４，２５によって読み取らせるために用いられる。照射部２３から照射される赤外ＬＥＤ光は、工場内などの暗所や可視光の強い場所等であってもマーカー１１の撮像が可能である。
【００２５】
２つの撮像部２４，２５は、マーカー検出部２２の左右に配置された２つのカメラによって構成されている。これら２つの撮像部２４，２５は、照射部２３から照射された赤外ＬＥＤ光がマーカー１１を構成する白色セル１２ａと黒色セル１２ｂに照射された後、白色セル１２ａから反射された光を２つのカメラで撮像する。なお、２つの撮像部２４，２５では、それぞれ単独の画像が撮影され、２つの撮像部２４，２５を用いて取得された撮像データは、算出部２６に送信される。
【００２６】
算出部２６は、２つの撮像部２４，２５から送信された撮像データに基づき三角測量による演算を行うことで、画像処理装置本体２１に対してマーカー１１がどの様な距離（相対距離）と方向（相対角度）に位置するのかを算出することが可能である。
【００２７】
ここで、算出部２６の走査・演算方法について、図２を用いて説明する。算出部２６は、２つの撮像部２４，２５によって撮像された撮像データを２つの撮像部２４，２５から取得した後、得られた撮像データを２値化処理することで、図２に示す２値化画像を得る。なお、この２値化処理の段階で、白色セル１２ａから反射された赤外ＬＥＤ光の反射光と、黒色セル１２ｂから反射されなかった箇所とが、白黒の２値化処理によって明確化される。
【００２８】
さらに、算出部２６は、２値化処理によって得られた２値化画像に対して、図２における紙面左上側から右側に向けた水平方向に走査を行う。最初に実行される走査の様子が、符号Ｙ１として示されている。ここで、第１回目の走査であるＹ１については、黒色セル１２ｂのみが検出されるので、その認識結果は「黒」となり、バイナリーコードで表現される「０」のみの検出結果となる。この場合、第１回目の走査では検出スタート位置Ｂ１が検出できなかったことが認識できるので、続いて予め設定された寸法だけ２値化画像の下方側に移動した符号Ｙ２として示される位置で、第２回目の走査が実行される。図２の例では、第２回目の走査であるＹ２についても黒色セル１２ｂのみが検出されるので、その認識結果は「黒」となり、バイナリーコードで表現される「０」のみの検出結果となる。つまり、第２回目の走査では検出スタート位置Ｂ１が検出できなかったことが認識できるので、さらに予め設定された寸法だけ２値化画像の下方側に移動して、走査が継続される。
【００２９】
算出部２６では、上述した手順で走査を継続し、第ｎ回目の走査であるＹｎを実行したときに、初めて白色セル１２ａが検出され、その認識結果は「白、黒、白」となり、バイナリーコードで表現される「１、０、１」なる情報が得られる。このとき、算出部２６は、検出スタート位置Ｂ１を検出したことを認識することができたこととなる。さらにこのとき、算出部２６では、「白、黒、白」と認識されたセル１２における２値化画像上の寸法を算出することができる。例えば、図２で示すように、「白、黒、白」と認識できたセル１２の２値化画像上の寸法は、いずれもＬであることが確認できる。また、この実施形態では、セル１２は正方形であることが予め明らかであるので、本実施形態に係るマーカー１１を構成する白色セル１２ａと黒色セル１２ｂの寸法は、Ｌ×Ｌの寸法からなる正方形であることが認識できる。
【００３０】
第ｎ回目の走査であるＹｎを実行することで検出スタート位置Ｂ１を検出したことを認識した算出部２６では、第ｎ＋１回目の走査であるＹｎ＋１を実行する際には、第ｎ回目の走査位置から寸法Ｌだけ２値化画像の下方側に移動したＹｎ＋Ｌの位置で走査Ｙｎ＋１を実行する。つまり、算出部２６は、第ｎ回目の走査で検出スタート位置Ｂ１を認識し、次に走査すべき箇所である４行あるＩＤ情報付与位置Ｂ２の最初の行の位置を、２値化画像上の座標を算出することで認識することができるので、当該位置まで走査位置を移動させるとともに１度の走査を行うことによって、４行あるＩＤ情報付与位置Ｂ２の最初の行の走査Ｙｎ＋１を実行することが可能となる。なお、走査Ｙｎ＋１を実行するに際して、走査位置の余裕代を持たせるために、第ｎ回目の走査位置から寸法Ｌに僅かな寸法ｓを加えた寸法（Ｌ＋ｓ）だけ２値化画像の下方側に移動したＹｎ＋（Ｌ＋ｓ）の位置で走査Ｙｎ＋１を実行するようにしてもよい。このような制御を採用することで、走査精度の向上を図ることが可能となる。
【００３１】
そして、この後、４行あるＩＤ情報付与位置Ｂ２の２行目から５行目までを、上述した最初の行の走査Ｙｎ＋１と同様に走査Ｙｎ＋２、Ｙｎ＋３、Ｙｎ＋４と順次実行することで、４行あるＩＤ情報付与位置Ｂ２の全てに設定されたＩＤ情報を、各行に対して１回の走査を実行することで取得することができる。すなわち、第ｎ＋２回目の走査であるＹｎ＋２を実行する際には、第ｎ回目の走査位置から寸法２Ｌだけ２値化画像の下方側に移動したＹｎ＋Ｌ×２の位置で走査Ｙｎ＋２を実行し、第ｎ＋３回目の走査であるＹｎ＋３を実行する際には、第ｎ回目の走査位置から寸法３Ｌだけ２値化画像の下方側に移動したＹｎ＋Ｌ×３の位置で走査Ｙｎ＋３を実行し、第ｎ＋４回目の走査であるＹｎ＋４実行する際には、第ｎ回目の走査位置から寸法４Ｌだけ２値化画像の下方側に移動したＹｎ＋Ｌ×４の位置で走査Ｙｎ＋４を実行する。なお、図２では、４行のＩＤ情報付与位置Ｂ２については、上の行から「白、黒、白」、「白、白、白」、「白、黒、白」、「白、白、白」の順でセル１２が配置されており、これらをバイナリーコードで表現すると「１、０、１」、「１、１、１」、「１、０、１」、「１、１、１」と示すことができる。算出部２６では、かかる情報を４行あるＩＤ情報付与位置Ｂ２から得たことになる。
【００３２】
さらに、走査Ｙｎ＋４の後に実行される走査Ｙｎ＋５によって、第ｎ回目の走査位置から寸法５Ｌだけ２値化画像の下方側に移動したＹｎ＋Ｌ×５の位置で走査Ｙｎ＋５を実行することで、「白、黒、白」の認識結果が得られ、バイナリーコードで表現される「１、０、１」なる情報が得られる。このとき、算出部２６では、この走査Ｙｎ＋５が検出スタート位置Ｂ１を検出してから５回目の走査であり、当該位置が検出エンド位置Ｂ３であることが予め分かっている。そして、この走査Ｙｎ＋５で検出された情報が「１、０、１」であり、この情報は検出エンド位置Ｂ３を示す情報と一致することから、このＹ１からＹｎ＋５までの走査が正常に実行され、終了できたことが認識できる。
【００３３】
以上説明した走査手順によって、算出部２６は、マーカー１１に設定されたＩＤ情報を正確に取得することが可能となる。なお、上述した操作手順において、例えば検出スタート位置Ｂ１や検出エンド位置Ｂ３が取得できなかった場合には、２つの撮像部２４，２５から送信された撮像データが一部欠けていたり、不完全であったりする可能性があるので、再度、２つの撮像部２４，２５からの撮像データを取得し直す操作手順を実行することとなる。また、２つの撮像部２４，２５によって撮像された撮像データが複数存在するときには、取得したＩＤ情報に基づいて、現時点で採用するマーカー１１を選択するなどの処理を算出部２６に実行させればよい。
【００３４】
また、走査精度の向上を図るための手段として、走査Ｙｎ＋２、Ｙｎ＋３、Ｙｎ＋４、Ｙｎ＋５を実行するに際しては、走査位置の余裕代を持たせるために、それぞれの走査で第ｎ回目の走査位置から２値化画像の下方側に移動したＹｎ＋Ｌ×２＋ｓの位置で走査Ｙｎ＋２を実行し、Ｙｎ＋Ｌ×３＋ｓの位置で走査Ｙｎ＋３を実行し、Ｙｎ＋Ｌ×４＋ｓの位置で走査Ｙｎ＋４を実行し、Ｙｎ＋Ｌ×５＋ｓの位置で走査Ｙｎ＋５を実行するようにしてもよい。
【００３５】
また、以上説明した走査手順では、検出スタート位置Ｂ１を認識した後に、４行あるＩＤ情報付与位置Ｂ２の２行目から５行目までを走査し、最後に検出エンド位置Ｂ３を走査する実施形態の例を説明した。しかしながら、算出部２６によって行われる走査の順番については、上述したものには限られない。例えば、検出スタート位置Ｂ１を認識した後に、４行あるＩＤ情報付与位置Ｂ２の２行目から５行目までを飛ばして検出エンド位置Ｂ３を走査し、まず初めに検出スタート位置Ｂ１と検出エンド位置Ｂ３を確実に検出した上で、ＩＤ情報が付与されている４行あるＩＤ情報付与位置Ｂ２の２行目から５行目までを走査するようにしてもよい。かかる走査手順を実行することで、取得した画像データがマーカー１１であることを確実に検出でき、さらに、マーカー１１以外の画像などのノイズに対する処理時間の短縮を図ることが可能となる。
【００３６】
なお、図１および図２で示したマーカー１１では、マーカー１１の外周部を取り囲むように、情報を含まない２２個の黒色セル１２ｂを配置した。この外周部に配置された２２個の黒色セル１２ｂは、その内部に配置された情報を含む３列６行、１８個のセル１２との境界として機能するだけでなく、外部からの光を吸収して内部に配置された情報を含む３列６行、１８個のセル１２の検出精度を向上させる機能も発揮する。特に、撮像部２４，２５から見てマーカー１１が逆光となる環境の場合、外周部に配置された２２個の黒色セル１２ｂが余分な光を吸収し、内部に配置された情報を含む３列６行、１８個のセル１２に対する余分な光の反射や入り込みを抑制することができる。かかる構成によって、画像処理装置本体２１によるマーカー１１の検出安定効果が得られる。
【００３７】
ＩＤ情報を取得した算出部２６は、その情報を制御部２７に送信することができる。算出部２６から送信された情報を得た制御部２７は、画像処理装置本体２１に付加された機構を動作させたり、外部に対する動作指令を実行させたりするなど、ＩＤ情報を利用した様々な制御を実行することが可能である。その動作例としては、例えば、工場内や物流倉庫内などで利用される移動ロボットの移動速度と進行方向とを変更する駆動部を動作制御することなどが想定できる。
【００３８】
以上、図１および図２を用いて、本実施形態に係る画像処理装置１０の基本構成について説明を行った。次に、図３を参照図面に加えることで、本実施形態に係る画像処理装置１０の動作説明を行うこととする。ここで、図３は、本実施形態に係る画像処理装置の動作説明を行うための画像処理工程を示すフローチャートである。
【００３９】
本実施形態に係る画像処理装置１０を動作させることで実行される画像処理工程（Ｐｒｏｃｅｓｓ  α）では、まず、照射部２３が赤外ＬＥＤ光をマーカー１１に対して照射する（ステップＳ１０１）。照射部２３からマーカー１１に対して照射された赤外ＬＥＤ光は、マーカー１１を構成するセル１２のうち、黒色セル１２ｂに照射された光は反射せず、白色セル１２ａに照射された光のみが反射光として画像処理装置本体２１側に反射してくることとなる。白色セル１２ａから反射された光は、２つのカメラによって構成される２つの撮像部２４，２５によって撮像される（ステップＳ１０２）。このとき、撮像部２４，２５では、それぞれが１つずつの撮像データを撮像することとなる。ステップＳ１０２の処理が実行された後、２つの撮像部２４，２５によって撮像された２つの撮像データは、算出部２６に送信される。
【００４０】
算出部２６は、２つの撮像部２４，２５によって撮像された撮像データを２つの撮像部２４，２５から取得した後、得られた撮像データを２値化処理することで、図２に示す２値化画像を得る（ステップＳ１０３）。
【００４１】
さらに、算出部２６は、２値化処理によって得られた２値化画像に対して、図２を用いて説明した走査を実行する（ステップＳ１０４）。なお、算出部２６によって行われる効率的な走査手順は上述したので、ここでは説明を省略する。
【００４２】
算出部２６による２値化画像に対する走査によって、検出スタート位置Ｂ１、４行あるＩＤ情報付与位置Ｂ２、検出エンド位置Ｂ３のすべてが正常に算出部２６によって認識されると、マーカー１１が検出できたとしてステップＳ１０５のＹＥＳに処理を進める。一方、算出部２６によって、検出スタート位置Ｂ１、４行あるＩＤ情報付与位置Ｂ２、検出エンド位置Ｂ３の１つでも認識できなかった場合には、ステップＳ１０５のＮＯに処理を進める。すなわち、マーカー１１の検出ができなかった場合には、再びステップＳ１０１に戻って処理を再実行することとなる。
【００４３】
マーカー１１の検出が成功してステップＳ１０５のＹＥＳに処理を進めると、続いて算出部２６は、４行あるＩＤ情報付与位置Ｂ２からの情報に基づきＩＤ情報を取得する（ステップＳ１０６）。
【００４４】
ＩＤ情報を取得した算出部２６は、設定されたＩＤと照合することで、ＩＤ情報に紐付けられるマーカー１１を選択し、１つのＩＤ情報を決定する（ステップＳ１０７）。このとき、取得したＩＤ情報が複数存在する場合には、ステップＳ１０７の処理を進める際に、複数あるＩＤ情報から現時点で採用すべきＩＤ情報に紐付けられるマーカー１１を選択することで、１つのＩＤ情報を決定することとなる（ステップＳ１０７）。なお、複数存在するＩＤ情報の中から１つのＩＤ情報を選択する方法としては、例えば、マーカー１１毎に付与された識別番号の最も若い番号を持つマーカー１１のＩＤ情報付与位置Ｂ２に設定されたＩＤ情報を選択する、といった手法が考えられる。
【００４５】
ステップＳ１０７の処理でＩＤを照合し、ＩＤ情報に紐付けられるマーカー１１が選択されると、このマーカー１１を左右２つの撮像部２４，２５によって撮像して得られた左右２つの撮像データそれぞれで、マーカー１１の中心座標を算出する（ステップＳ１０８）。
【００４６】
ステップＳ１０８の処理によって左右２つの撮像データそれぞれで算出されたマーカー１１の中心座標を利用して、算出部２６は、三角測量に基づく演算を実行し、ＩＤ情報を得たマーカー１１との距離と角度とを算出する（ステップＳ１０９）。さらに、算出部２６は、取得したＩＤ情報と、このＩＤ情報に基づき算出したマーカー１１との距離と角度についての算出結果を、制御部２７に送信する（ステップＳ１１０）。これらステップＳ１０１からステップＳ１１０までの処理を実行して、本実施形態に係る画像処理工程（Ｐｒｏｃｅｓｓ  α）が完了する。
【００４７】
以上説明した本実施形態に係る画像処理工程（Ｐｒｏｃｅｓｓ  α）の実行によって、算出部２６は、マーカー１１に設定されたＩＤ情報を正確に取得することが可能となる。なお、本発明に係る画像処理装置の好適な実施形態について説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。上記実施形態には、多様な変更又は改良を加えることが可能である。
【００４８】
例えば、上述した実施形態に係る画像処理装置１０において、マーカー１１は、１４個の白色セル１２ａと、２６個の黒色セル１２ｂとが、５列８行の行列配置で二次元平面上に配置されていた。また、このマーカー１１では、マーカー１１の外周部を取り囲むように配置された２２個の黒色セル１２ｂを設けたが、この２２個の黒色セル１２ｂは情報を含むものではなく、マーカー１１と空間とを区分けして読み取りの誤認識を防止するための境界として機能する部分であった。すなわち、図１で示すマーカー１１において被検出体として機能する箇所は、符号Ａで示す３列と、符号Ｂで示す６行とからなる３列６行、１８個のセル１２の行列配置によって構成される部分であった。しかしながら、本発明に係るマーカーの形態については、図１で示したものには限られず、あらゆる変更を加えることができる。例えば、マーカー１１の外周部を取り囲むように配置された２２個の黒色セル１２ｂについては、省略することができる。また、本発明に係るマーカーを構成するセル１２の配置数については、例えば図４で例示するような３列３行、９個のセル１２の行列配置によって構成されるものなど、あらゆる形態を採用することができる。ちなみに、図４は、本発明に係るマーカーが取り得る多様な形態の一例を示す図であるが、図４で示すマーカー１１’の場合、ＩＤ情報付与位置Ｂ２は１行であり、３ビット構成の情報をマーカー１１’に持たせることが可能となっている。
【００４９】
また例えば、上述した実施形態に係る画像処理装置１０において、マーカー１１を構成するセル１２は、正方形で構成されるものであったが、本発明のセルについては、長方形などの矩形形状を採用することが可能である。セルの形状が予め分かっていれば、上述した実施形態で説明した走査や演算等の処理については、同様に実施することが可能である。
【００５０】
つまり、本発明に係る被検出体としてのマーカーは、二次元平面上に、正方形又は長方形からなるセル１２であって、赤外ＬＥＤ光を反射可能な白色セル１２ａと赤外ＬＥＤ光を反射不能な黒色セル１２ｂとを、ａ×ａ、又はａ×ｂ（ただし、ａ、ｂ＝３，４，５，６，…）の行列配置して構成することで実現できる。
【００５１】
また例えば、上述した実施形態に係る画像処理装置１０では、照射部２３から照射される光に赤外ＬＥＤ光を用いた場合を例示した。しかしながら、本発明に用いられる光は赤外ＬＥＤ光に限定されるものではなく、紫外線などの他の波長の光やＬＥＤ以外の光源からの光を用いても上述した実施形態と同様の効果が得られる。
【００５２】
また例えば、上述した実施形態に係る画像処理装置１０では、本発明に係る撮像部が２つのカメラからなる撮像部２４，２５によって構成されることで、２つの撮像データに基づき三角測量による演算処理が実行されていた。しかしながら、本発明に係る撮像部については、上述した実施形態と同様の撮像データ処理を行うことができればよく、例えば、１つのカメラに１つのレンズを備えるカメラによって本発明に係る撮像部を構成してもよいし、又は、１つのカメラに２つのレンズを備えるラジオカメラによって本発明に係る撮像部を構成してもよい。
【００５３】
また例えば、上述した実施形態に係る画像処理装置１０では、２つのカメラからなる撮像部２４，２５と、赤外ＬＥＤ光を照射する照射部２３が別体で構成されていたが、本発明に係る照射部と撮像部は一体的に構成された装置としてもよい。
【００５４】
また例えば、上述した実施形態に係る画像処理装置１０では、２つの撮像部２４，２５によって撮像された撮像データは、算出部２６によって２値化処理されるものであった。しかしながら、本発明の範囲はこの例に限られず、例えば、２つの撮像部２４，２５のそれぞれが上述した算出部２６と同様の機能である画像処理機能を備えており、撮像部２４，２５がマーカー１１側から反射されてくる赤外ＬＥＤ光を撮像した後、直ちに撮像部２４，２５側で２値化処理を行い、２値化処理された２値化画像の画像データを算出部２６に送信するような装置構成や処理手順を採用することも可能である。
【００５５】
また例えば、上述した実施形態に係る画像処理装置１０では、マーカー検出部２２に算出部２６を設け、この算出部２６でＩＤ情報の取得や、このＩＤ情報に基づきマーカー１１との距離と角度についての算出を行わせ、その算出結果を制御部２７に送信するものであった。しかしながら、算出部２６と制御部２７とを別部材としたのは１つの例示であり、これらの部材は、別体としてもよいし、１つのマイクロプロセッサによって構成することとしてもよいし、さらには、画像処理装置本体２１の外に配置し、算出部２６や制御部２７と画像処理装置本体２１とを無線やインターネット回線を介して接続するように構成してもよい。
【００５６】
また例えば、上述した実施形態に係る画像処理装置１０において、算出部２６は、２値化処理によって得られた２値化画像に対して、図２における紙面左上側から右側に向けた水平方向に走査を行うものであった。しかしながら、算出部２６が２値化画像に対して行う走査の方向は、水平方向には限られず、垂直方向に走査を行う処理を採用してもよい。
【００５７】
その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００５８】
以上、本実施形態に係る画像処理装置１０の基本構成と動作説明を行った。次に、上述した実施形態に係る画像処理装置１０を工場内や物流倉庫内などで利用される移動ロボットに適用した場合の実施例について、説明することとする。なお、以下に記す実施例において、上述した実施形態と同一又は類似する部材や工程については、同一符号を付して説明を省略する場合がある。
【００５９】
図５は、本実施例に係る移動ロボットの移動例を示す図である。移動ロボット３０は、通路を定める境界４０（４０−１，４０−２）に沿って配置される被検出体としてのマーカー１１’（１１’−１）を検出し、検出したマーカー１１’の位置に基づいて、境界４０から一定の距離を保ちながら目的地点に向かって移動する。本実施例に使用されるマーカー１１’は、移動ロボット３０と正対するように設置され、図４で例示した３列３行、９個のセル１２の行列配置によって構成されるものを想定しており、このマーカー１１’については、ＩＤ情報付与位置Ｂ２が１行のみとなっており、３ビット構成の情報をマーカー１１’に持たせることが可能となっている。そして、このマーカー１１’に設定されたＩＤ情報は、マーカー１１’のそれぞれを一意に識別するためのマーカーＩＤが割り当てられている。なお、通路を定める境界４０は、例えば壁や間仕切りや白線ラインなどといったものである。
【００６０】
図５に示す移動例では、移動ロボット３０の進行方向に対して左側の境界４０−１から一定の距離保って移動ロボット３０が移動する。移動ロボット３０は、境界４０−１から一定の距離Ｘｒｅｆを保つために、検出したマーカー１１’−１までの距離Ｚと方向θとを取得し、距離Ｚと方向θとが予め定められた条件を満たす進行方向を算出する。移動ロボット３０は、算出した進行方向に移動する。方向θは、移動ロボット３０の進行方向と、検出されたマーカー１１’−１の方向とが成す角である。予め定められた条件を満たす進行方向は、方向θがａｒｃｓｉｎ（Ｘｒｅｆ／Ｚ）となる進行方向である。移動ロボット３０は、マーカー１１’−１までの距離Ｚが予め定められた切替閾値より近くなると、目標をマーカー１１’−２に切り替えて移動する。移動ロボット３０からの距離が切替閾値より近い範囲を切替範囲という。
【００６１】
次に、図６を参照して本実施例に係る移動ロボット３０の具体的な構成例を説明する。ここで、図６は、本実施例に係る移動ロボットの構成例を示すブロック図である。本実施例に係る移動ロボット３０は、駆動部３１と、マーカー検出部２２と、制御部２７とを備える。
【００６２】
駆動部３１は、駆動輪３２，３３と、モータ３４，３５と、モータ制御部３６とを備える。駆動輪３２は、移動ロボット３０の進行方向に対して左側に備えられる。駆動輪３３は、移動ロボット３０の進行方向に対して右側に備えられる。モータ３４は、モータ制御部３６の制御に応じて、駆動輪３２を回転させる。モータ３５は、モータ制御部３６の制御に応じて、駆動輪３３を回転させる。モータ制御部３６は、制御部２７から入力されるモータ３４，３５それぞれに対する角速度指令値に基づいて、モータ３４，３５に対して電力を供給する。
【００６３】
モータ３４，３５がモータ制御部３６から供給される電力に応じた角速度で回転することにより、移動ロボット３０が前進又は後進する。また、モータ３４，３５の角速度に差を生じさせることにより、移動ロボット３０の進行方向が変更される。例えば、前進の際に左側の駆動輪３２の角速度を右側の駆動輪３３の角速度より大きくすることにより、移動ロボット３０は右旋回しながら移動する。また、駆動輪３２，３３それぞれを逆向きに回転させることにより、移動ロボット３０は位置を変えずに旋回する。なお、移動ロボット３０は、移動ロボット３０の姿勢を安定させるために、駆動輪３２，３３以外の車輪を有していてもよい。
【００６４】
マーカー検出部２２は、照射部２３と、２つの撮像部２４，２５と、算出部２６を備える。
【００６５】
照射部２３は、例えば、移動ロボット３０の前面の中央位置に取り付けられ、赤外ＬＥＤ光をマーカー１１’に対して照射することができ、マーカー１１’側から反射された反射光を２つの撮像部２４，２５によって読み取らせるために用いられる。照射部２３から照射される赤外ＬＥＤ光は、工場内などの暗所や可視光の強い場所等であってもマーカー１１の撮像が可能であるため、好ましい。
【００６６】
２つの撮像部２４，２５は、マーカー検出部２２の左右に配置された２つのカメラによって構成されている。撮像部２４は、移動ロボット３０の前面の左側に取り付けられ、移動ロボット３０の前面側に位置するマーカー１１’から反射される赤外ＬＥＤ光を検出し撮像する。撮像部２５は、移動ロボット３０の前面の右側に取り付けられ、移動ロボット３０の前面側に位置するマーカー１１’から反射される赤外ＬＥＤ光を検出し撮像する。撮像部２４，２５は、移動ロボット３０の中心を通る正面方向の直線に対して対称に、移動ロボット３０の筐体に取り付けられる。撮像部２４，２５には、例えば赤外線フィルタを組み合わせたカメラが用いられる。これら２つの撮像部２４，２５は、照射部２３から照射された赤外ＬＥＤ光がマーカー１１’を構成する白色セル１２ａと黒色セル１２ｂに照射された後、白色セル１２ａから反射された光を２つのカメラで撮像することで撮像データを得ることのできる構成部位である。２つの撮像部２４，２５を用いて得られた撮像データは、算出部２６に送信される。
【００６７】
算出部２６は、２つの撮像部２４，２５から送信された撮像データに基づき、２値化処理を行うことで白黒からなる２値化画像データを形成し、さらに２値化された画像データを用いて三角測量による演算を行うことで、移動ロボット３０に対してマーカー１１’がどの様な距離（距離Ｚ）と方向（角度θ）に位置するのかを算出することが可能である。算出部２６は、撮像部２４，２５により撮像される画像に複数のマーカー１１’が含まれる場合、マーカーＩＤを検出して目標とするマーカー１１’を選択し、目標とするマーカー１１’までの距離Ｚと角度θとを算出する。マーカーＩＤの検出は、マーカー１１’に対して１行設けられたＩＤ情報付与位置Ｂ２に設定された情報を取得することにより行われる。算出部２６は、算出した距離Ｚおよび方向θとマーカーＩＤとを含むマーカー情報を制御部２７へ出力する。算出される距離Ｚは、撮像部２４と撮像部２５とを結ぶ線分上の中心からの距離である。撮像部２４と撮像部２５とを結ぶ線分が移動ロボット３０の進行方向に対して直交するように、撮像部２４，２５が取り付けられていると、算出部２６における演算負荷を軽減できる。
【００６８】
制御部２７は、マーカー検出部２２から取得するマーカー情報に基づいて、駆動部３１を制御する。図７は、本実施例に係る制御部の構成例を示すブロック図である。本実施例に係る制御部２７は、移動経路記憶部２７ａと、マーカー選択部２７ｂと、駆動制御部２７ｃとを備える。移動経路記憶部２７ａには、移動ロボット３０の移動経路に沿って配置された複数のマーカー１１’に関する属性情報を含むテーブルが予め記憶されている。マーカー選択部２７ｂは、移動経路記憶部２７ａに記憶されているテーブルに基づいて、目標とするマーカー１１’のマーカーＩＤをマーカー検出部２２へ出力する。マーカー選択部２７ｂは、マーカー検出部２２から入力されるマーカー情報に基づいて、目標とするマーカー１１’を切り替えるか否かを判定する。マーカー選択部２７ｂは、目標とするマーカー１１’を切り替える場合、現在の目標とするマーカー１１’の次のマーカー１１’をテーブルから選択する。
【００６９】
駆動制御部２７ｃは、マーカー検出部２２から出力されるマーカー情報に基づいて、移動経路記憶部２７ａに記憶されているテーブルから属性情報および制御情報を読み出す。属性情報は、目標とするマーカー１１’に関する情報である。制御情報は、目標とするマーカー１１’に紐付けられた制御を示す情報である。マーカー１１’に紐付けられた制御は、例えば進行方向の変更を示すマーカー１１’の近傍において旋回する制御などである。駆動制御部２７ｃは、マーカー情報、属性情報および制御情報に基づいて、駆動部３１を駆動制御する。
【００７０】
図８は、本実施例に係る移動経路記憶部に記憶されているテーブルの一例を示す図である。テーブルは、「マーカーＩＤ」と、「通路距離」と、「設置側」と、「方向転換」と、「最終マーカー」との項目の列を備える。各行は、マーカー１１’ごとに存在する属性情報である。テーブルにおける各行は、移動ロボット３０が移動経路に沿って移動する際に通過するマーカー１１’の順序で並んでいる。「マーカーＩＤ」の列には、行に対応するマーカー１１’のマーカーＩＤが含まれる。「通路距離」の列には、行に対応するマーカー１１’と、移動ロボット３０の移動経路がどれだけ離れた距離であるかを示す距離情報が含まれる。通路距離は、正の値として設定される値であり、対象となるマーカー１１’から移動ロボット３０の移動経路までの距離を示す値である。また、この実施例において通路距離は、マーカー１１’から移動ロボット３０の移動経路における移動方向に対して略直交する方向に位置する目標地点までの距離を示している。
【００７１】
「設置側」の列は、移動ロボット３０が移動経路に沿って移動する場合において、行に対応するマーカー１１’が移動ロボット３０の右側又は左側のいずれに配置されているかを示す情報が含まれる。「方向転換」の列は、行に対応するマーカー１１’に対して移動ロボット３０が予め定められた距離又は切替閾値まで近づいたときに、移動ロボット３０の進行方向の変更を示す回転情報が含まれる。回転情報が０（ゼロ）度である場合、移動ロボット３０の進行方向の変更がないことを示す。回転情報が０度以外である場合、回転情報が示す角度分、移動ロボット３０の進行方向を時計回り又は反時計回りに変更する。「最終マーカー」の列は、行に対応するマーカー１１’が、移動経路における目標地点を示すマーカー１１’であるか否かを示す情報が含まれる。図８に示すテーブルでは、例えばマーカーＩＤ「Ｍ」を有するマーカー１１’が目標地点のマーカーであることを示す。この例の場合、目標地点を示すマーカー１１’は１つである。
【００７２】
図９は、本実施例に係る駆動制御部におけるマーカー情報に基づいた制御に係る構成例を示すブロック図である。駆動制御部２７ｃは、通過位置算出部２７ｃ１と、補正角算出部２７ｃ２と、指令値算出部２７ｃ３とを備える。通過位置算出部２７ｃ１は、マーカー情報に含まれるマーカー１１’までの距離Ｚおよび方向θを入力する。通過位置算出部２７ｃ１は、距離Ｚおよび方向θに基づいて、現在の移動ロボット３０の進行方向で移動してマーカー１１’に最接近したときのマーカー１１’までの距離ｘと、マーカー１１’に最接近するまでの移動距離ｙとを算出する。移動ロボット３０がマーカー１１’に最接近したときの位置は、移動ロボット３０の位置から進行方向に伸ばした移動直線に対して直交する直線であってマーカー１１’の位置を通過する直線と、移動直線との交点である。距離ｘは、（Ｚ・ｓｉｎθ）として得られる。移動距離ｙは、（Ｚ・ｃｏｓθ）として得られる。距離ｘは、マーカー通過距離ともいう。また、移動距離ｙは、マーカー横までの距離ともいう。
【００７３】
補正角算出部２７ｃ２は、通路の境界から移動経路までの距離Ｘｒｅｆから距離ｘを減算して得られる差分ΔＸと、移動距離ｙとを入力する。補正角算出部２７ｃ２は、差分ΔＸと移動距離ｙとに基づいて、移動ロボット３０の進行方向に対する補正角Δθを算出する。具体的には、補正角算出部２７ｃ２は、ａｒｃｔａｎ（ΔＸ／ｙ）で得られる値を補正角Δθとする。
【００７４】
指令値算出部２７ｃ３は、並進速度指令値Ｖｒｅｆと、角速度指令値ωｒｅｆと、角速度の測定値ωｌ’，ωｒ’と、補正角Δθとを入力する。並進速度指令値Ｖｒｅｆは、移動ロボット３０の並進速度に対する指令値（目標値）である。角速度指令値ωｒｅｆは、進行方向を基準として時計回り方向又は反時計回り方向へ進行方向を変更する際の角速度である。角速度指令値ωｒｅｆは、時計回り方向の変化量を正の値として定めてもよいし、反時計回り方向の変化量を正の値として定めてもよい。角速度の測定値ωｌ’，ωｒ’は、モータ３４，３５それぞれに設けられているエンコーダにより測定された角速度である。指令値算出部２７ｃ３は、並進速度指令値Ｖｒｅｆと角速度指令値ωｒｅｆと角速度の測定値ωｌ’，ωｒ’と補正角Δθとに基づいて、移動ロボット３０を並進速度指令値Ｖｒｅｆおよび角速度指令値ωｒｅｆで移動させつつ、進行方向を補正角Δθ変更させる角速度指令値ωｌ，ωｒを算出する。指令値算出部２７ｃ３は、算出した角速度指令値ωｌ，ωｒを駆動部３１へ出力する。
【００７５】
図１０は、本実施例に係る駆動制御部において算出される補正角Δθを示す図である。マーカー検出部２２が境界４０−１上に配置されたマーカー１１’を検出することにより、移動ロボット３０からマーカー１１’までの距離Ｚと、移動ロボット３０の進行方向を基準としてマーカー１１’が位置する方向θとが得られる。通過位置算出部２７ｃ１が距離Ｚおよび方向θから距離ｘおよび移動距離ｙを算出する。移動ロボット３０は、移動経路に沿って配置されたマーカー１１’から一定の距離Ｘｒｅｆ離れた位置Ｐｐａｓｓを通過するために、進行方向を変更する必要がある。位置Ｐｐａｓｓは、マーカー１１’の属性情報のうち「設置側」を示す情報に基づいて定まる。図１０は、マーカー１１’が移動経路の左側に設定されている場合を示している。
【００７６】
図１０に示す例において、現在の進行方向を維持したまま移動ロボット３０が移動すると、移動ロボット３０は、位置Ｐｐａｓｓより差分ΔＸ離れた位置を通過する。そこで、補正角算出部２７ｃ２が、差分ΔＸと移動距離ｙとに基づいて、進行方向に対する補正角Δθを算出する。指令値算出部２７ｃ３は、移動ロボット３０を並進速度指令値Ｖｒｅｆおよび角速度指令値ωｒｅｆで移動させつつ、進行方向を反時計回りに補正角Δθ分変更させるための角速度指令値ωｌ，ωｒを算出して駆動部３１を制御する。このように、駆動制御部２７ｃが駆動部３１を制御することにより、通路の境界４０−１から一定の距離Ｘｒｅｆを隔てた位置に定められた移動経路上を移動ロボット３０が移動することができる。
【００７７】
なお、図１０に示した例では、マーカー１１’が境界４０−１上に配置される場合を説明した。しかし、境界４０上にマーカー１１’を配置できない場合には、マーカー１１’が配置された位置と境界４０との差分が通路距離（Ｄ１，Ｄ２，・・・，ＤＭ）としてテーブルに記憶される。この場合、補正角算出部２７ｃ２は、補正角Δθを算出する際に、通路距離を用いて距離Ｘｒｅｆ又は差分ΔＸのいずれかを補正する。
【００７８】
以上説明した駆動制御方法によって移動ロボット３０が移動経路に沿って移動していくと、最終的には、目標位置のマーカーＩＤ「Ｍ」を有するマーカー１１’に移動ロボット３０が近づいていき、停止制御が実行されることとなる。
【００７９】
次に、図１１を用いて、本実施例に係る移動ロボット３０の制御システムにおける具体的な処理内容を説明する。図１１は、本実施例に係る制御部による制御処理内容を示すフローチャートである。
【００８０】
移動ロボット３０の移動が開始されると、まず初めに上述した実施形態で図３を用いて説明した画像処理工程（Ｐｒｏｃｅｓｓ  α）が実行される。この画像処理工程（Ｐｒｏｃｅｓｓ  α）の実行によって、算出部２６は、マーカー１１’に設定されたＩＤ情報を取得し、制御部２７に送信する。本実施例におけるＩＤ情報は、各マーカー１１’を一意に識別するためのマーカーＩＤである。マーカーＩＤを受け取った制御部２７では、初期状態で設定されているマーカーＩＤが検出できたか否かを判定する（ステップＳ２０１）。初期状態において、マーカー選択部２７ｂは、テーブルの最初の行に記憶されているマーカーＩＤを、目標とするマーカー１１’のマーカーＩＤに選択する。
【００８１】
マーカー１１’を検出できない場合（ステップＳ２０１のＮＯ）、制御部２７は、マーカー１１’を検出できなかったことを示すエラー信号を出力する。駆動制御部２７ｃは、エラー信号に応じて、駆動部３１に駆動輪３２，３３を停止させる（ステップＳ２２１）。マーカー選択部２７ｂは、エラー信号に応じて、マーカー１１’が検出できないことを示すエラー情報を外部へ出力し（ステップＳ２２２）、移動制御処理を終了させる。なお、エラー情報の出力は、移動ロボット３０に備えられる出力装置、例えばスピーカやディスプレイを用いて行われる。
【００８２】
ステップＳ２０１において、マーカー１１’を検出できた場合（ステップＳ２０１のＹＥＳ）、マーカー選択部２７ｂおよび駆動制御部２７ｃは、マーカー検出部２２の算出部２６からマーカー情報を取得することとなる（ステップＳ２０２）。マーカー選択部２７ｂは、マーカー情報により示されるマーカー１１’が最終マーカーであるか否かをテーブルに基づいて判定する（ステップＳ２０３）。
【００８３】
ステップＳ２０３において、マーカー１１’が最終マーカーである場合（ステップＳ２０３のＹＥＳ）、駆動制御部２７ｃは、マーカー情報により示されるマーカー１１’までの距離Ｚが切替範囲内であるか否かを判定する（ステップＳ２３１）。マーカー１１’までの距離Ｚが切替範囲内である場合（ステップＳ２３１のＹＥＳ）、駆動制御部２７ｃは、駆動部３１に駆動輪３２，３３を停止させ（ステップＳ２３２）、移動制御処理を終了させる。
【００８４】
ステップＳ２３１において、マーカー１１’までの距離Ｚが切替範囲内でない場合（ステップＳ２３１のＮＯ）、駆動制御部２７ｃは、処理をステップＳ２０８へ進める。
【００８５】
ステップＳ２０３において、マーカー１１’が最終マーカーでない場合（ステップＳ２０３のＮＯ）、駆動制御部２７ｃは、マーカー情報により示されるマーカー１１’までの距離Ｚが切替範囲内であるか否かを判定する（ステップＳ２０４）。マーカー１１’までの距離Ｚが切替範囲内でない場合（ステップＳ１０４のＮＯ）、駆動制御部２７ｃは、処理をステップＳ２０８へ進める。
【００８６】
ステップＳ２０４において、マーカー１１’までの距離Ｚが切替範囲内である場合（ステップＳ２０４のＹＥＳ）、駆動制御部２７ｃは、マーカー１１’の属性情報に方向転換の指示があるか否かをテーブルに基づいて判定する（ステップＳ２０５）。方向転換の指示がない場合（ステップＳ２０５のＮＯ）、駆動制御部２７ｃは、処理をステップＳ２０７へ進める。
【００８７】
方向転換の指示がある場合（ステップＳ２０５のＹＥＳ）、駆動制御部２７ｃは、マーカー１１’の回転情報をテーブルから取得し、移動ロボット３０の進行方向を回転情報の示す角度変更をする制御を、駆動部３１に対して行う（ステップＳ２０６）。マーカー選択部２７ｂは、現在目標としているマーカー１１’の次に目標とするマーカー１１’のマーカーＩＤをテーブルから取得する。マーカー選択部２７ｂは、取得したマーカーＩＤのマーカー１１’をマーカー検出部２２へ出力することにより、取得したマーカーＩＤのマーカー１１’を新たな目標に選択し（ステップＳ２０７）、処理を画像処理工程（Ｐｒｏｃｅｓｓ  α）へ戻す。
【００８８】
ステップＳ２０８において、補正角算出部２７ｃ２は、マーカー検出部２２から取得したマーカー情報に基づいて算出された差分ΔＸが許容範囲内であるか否かを判定する（ステップＳ２０８）。差分ΔＸに対する許容範囲は、移動ロボット３０に対して要求される移動の精度、マーカー検出部２２におけるマーカー１１’の検出の精度、モータ３４，３５の制御における精度などに基づいて予め定められる。差分ΔＸが許容範囲内でない場合（ステップＳ２０８のＮＯ）、補正角算出部２７ｃ２は、差分ΔＸに基づいて補正角Δθを算出する（ステップＳ２０９）。差分ΔＸが許容範囲内である場合（ステップＳ２０８のＹＥＳ）、補正角算出部２７ｃ２は、補正角Δθを０とする（ステップＳ２１０）。
【００８９】
指令値算出部２７ｃ３は、駆動輪３２，３３を駆動するモータ３４，３５それぞれの角速度の測定値ωｌ’，ωｒ’を取得する（ステップＳ２１１）。指令値算出部２７ｃ３は、並進速度指令値Ｖｒｅｆと、角速度指令値ωｒｅｆと、角速度の測定値ωｌ’，ωｒ’と、補正角Δθとに基づいて、モータ３４，３５に対する角速度指令値ωｌ，ωｒを算出する（ステップＳ２１２）。指令値算出部２７ｃ３は、角速度指令値ωｌ，ωｒを駆動部３１へ出力し（ステップＳ２１３）、処理を画像処理工程（Ｐｒｏｃｅｓｓ  α）へ戻す。
【００９０】
以上説明した画像処理工程（Ｐｒｏｃｅｓｓ  α）からステップＳ２３２までの各処理を含む制御処理が制御部２７によって行われることにより、マーカー１１’までの距離Ｚおよび方向θを逐次取得し、進行方向を補正できる。このような制御処理で進行方向が補正されることにより、移動ロボット３０は、境界４０から一定の距離Ｘｒｅｆを隔てた移動経路を移動することができ、複数のマーカー１１’に基づいて移動する際の移動距離を削減できる。
【００９１】
また、上述した本実施例に係る移動ロボット３０の制御システムによれば、広い設置場所を必要としない比較的コンパクトなマーカー１１’を採用した場合であっても、その識別および距離計測が精度よく可能である。さらに、上述した本実施例に係る移動ロボット３０の制御システムによれば、安価なシステム構成とすることができるので、汎用性が高い移動ロボットの制御システムを提供することが可能となる。
【００９２】
以上、本発明の好適な実施例について説明したが、本発明の技術的範囲は上記実施例に記載の範囲には限定されない。上記実施例には、多様な変更又は改良を加えることが可能である。
【００９３】
例えば、図１２および図１３は、移動ロボットが移動する通路に交差点が存在する場合のマーカーの配置例を示す図である。ここで、図１２は、移動ロボット３０から見て交差点の遠方側の２つの角にマーカー１１’−ｍ，１１’−（ｍ＋１）を設置する例を示す。図１２に示すように、２つのマーカー１１’−ｍ，１１’−（ｍ＋１）が配置されている場合、移動ロボット３０は、２つのマーカー１１’−ｍ，１１’−（ｍ＋１）までの距離Ｚ，Ｚ’それぞれが切替範囲内になる位置まで移動し、回転情報で示される角度の旋回により進行方向の変更を行ってもよい。また、図１３は、移動ロボット３０から見て交差点の遠方側の２つの角のうち進行方向の変更先側の１つの角にマーカー１１’−ｍを設置する例を示す。図１３に示すように、マーカー１１’−ｍが設置されている場合、移動ロボット３０は、１つのマーカーまでの距離Ｚが切替範囲内になる位置まで移動し、回転情報で示される角度の旋回により進行方向の変更を行ってもよい。
【００９４】
また例えば、上述した実施例では、マーカー１１’に対して各マーカー１１’を一意に識別するためのマーカーＩＤのみをＩＤ情報として付与しておき、移動ロボット３０を動作させるためのその他の指令については、図８で示した移動経路記憶部２７ａに記憶されるテーブルとして構成した例を示した。しかしながら、移動ロボット３０を動作させるための指令情報については、全ての指令情報をマーカーに対して持たせるようにしてもよい。例えば、図１４は、全ての指令情報をマーカーに対して付与した場合の本発明に係る移動ロボットの制御システムの構成例を示す図である。図１４で示す構成例の場合、マーカー１１”には、各マーカー１１”を一意に識別するためのマーカーＩＤの他に、図８で示した「通路距離」や「設置側」、「方向転換」、「最終マーカー」などの指令情報を含めることができる。なお、マーカー１１”に対して付与するＩＤ情報の量を増加させることは、ＩＤ情報付与位置Ｂ２の行数を増やせばよいだけなので、マーカー自体の大きさの増大を極力抑えつつ情報量を増加させることができ、工場内や物流倉庫などといった現場での広い設置場所は不要となる。そのため、現場作業に支障をきたしてしまうといった課題も発生しない。また、マーカー１１”毎に移動ロボット３０に対する全ての動作指令情報を持たせることで、システム構成を簡易なものとすることができる。さらに、図１４で示すマーカー１１”の設置位置を変更すれば、移動ロボット３０の移動経路を簡単に変更することができるので、従来技術に比べて汎用性の高い低コストのシステムを実現することが可能となる。
【００９５】
また例えば、図１４で示す構成例については、さらなる変形形態を例示することができる。そこで、図１５〜図１８を用いて、変形形態に係る移動ロボット３０の制御システムを説明する。図１５は、変形形態に用いられるマーカーの具体例を示す図である。また、図１６は、変形形態に係る移動経路記憶部に記憶されているテーブルの一例を示す図である。さらに、図１７は、移動ロボットが移動する通路に変形形態で用いられるマーカーが配置された一例と、変形形態に係る移動ロボットの制御システムの動作例を示す図である。またさらに、図１８は、変形形態に係る撮像部によって撮像された撮像データの一例を示す図である。
【００９６】
本変形形態では、予めマーカーＩＤごとにマーカー１１１のセル配置が決められている。すなわち、図１５に示す例のように、例えば、マーカーＩＤが「０（ゼロ）」で設定されたマーカー１１１−０については、中央位置に１行で設定されたＩＤ情報付与位置Ｂ２が、「黒、黒、黒」の順でセル１２が配置されており、これらをバイナリーコードで表現すると「０、０、０」と示すことができる。このマーカー１１１−０と同様に、マーカーＩＤが「１」で設定されたマーカー１１１−１については、ＩＤ情報付与位置Ｂ２が「黒、黒、白」の順でセル１２が配置されており、バイナリーコードで表現すると「０、０、１」と示すことができ、マーカーＩＤが「２」で設定されたマーカー１１１−２については、ＩＤ情報付与位置Ｂ２が「黒、白、黒」の順でセル１２が配置されており、バイナリーコードで表現すると「０、１、０」と示すことができ、マーカーＩＤが「３」で設定されたマーカー１１１−３については、ＩＤ情報付与位置Ｂ２が「黒、白、白」の順でセル１２が配置されており、バイナリーコードで表現すると「０、１、１」と示すことができ、マーカーＩＤが「４」で設定されたマーカー１１１−４については、ＩＤ情報付与位置Ｂ２が「白、黒、黒」の順でセル１２が配置されており、バイナリーコードで表現すると「１、０、０」と示すことができる。
【００９７】
図１５で示したマーカー１１１には、マーカーＩＤごとの動作指令が設定されている。この指令内容が、図１６で示すテーブルとして設定されている。変形形態に係るテーブルは、「マーカーＩＤ」と、「動作」と、「マーカー距離」と、「回転」と、「並進距離」との項目の列を備える。各行は、マーカー１１１に設定されたマーカーＩＤごとに存在する属性情報である。テーブルにおける各行は、マーカーＩＤの数字順に並んでいるが、本変形形態では、この並び順に意味は無い。「マーカーＩＤ」の列には、行に対応するマーカー１１１のマーカーＩＤが含まれる。「動作」の列には、行に対応するマーカー１１１と、移動ロボット３０の動作内容が含まれる。「マーカー距離」の列には、行に対応するマーカー１１１と、このマーカー１１１に対して移動ロボット３０をどれだけ離れた距離で移動させるかを示す距離情報が含まれる。マーカー距離は、正の値として設定される値であり、対象となるマーカー１１１から移動ロボット３０の移動経路までの距離を示す値である。また、この変形形態例におけるマーカー距離は、マーカー１１１が通路の左側に設置され、この通路の左側にあるマーカー１１１から右側にどれだけの距離をとって移動ロボット３０が移動すべきかを示している。
【００９８】
「回転」の列は、移動ロボット３０が回転動作時にどれだけの角度で回転すべきか、もしくは、移動ロボット３０が停止時にどれだけの角度分旋回すべきかを示す情報が含まれる。また、「回転」の列は、回転の方向が左右どちらであるかといった情報も含まれる。「並進距離」の列は、行に対応するマーカー１１１に対して移動ロボット３０が予め定められた距離又は切替閾値まで近づいたときに、移動ロボット３０が更に並進を続ける距離情報が含まれる。本変形形態例では、例えば図１７で示されるように、最初に選択されるマーカー１１１−２に対して移動ロボット３０が予め定められた所定距離まで近づくと、移動ロボット３０に対してマーカー１１１−２の次に近い位置にあるマーカー１１１−３に切り替えが行われる。ただし、この切り替えが行われる瞬間に、切り替え後のマーカー１１１−３に設定されたテーブルの動作指令に切り替わるのではなく、切り替え前のマーカー１１１−２に対して並進動作を行った上で、切り替え後のマーカー１１１−３に設定されたテーブルの動作指令に基づく動作が実行されるように設定されている。このようなマーカー１１１の切り替え制御と移動ロボット３０の動作制御が行われることで、スムーズな動作制御が実現する。
【００９９】
以上説明したマーカー１１１の具体的な配置例が、図１７に示されている。なお、本変形形態に使用されるマーカー１１１−０〜４は、移動ロボット３０と正対するように設置されるものであるが、図１７では、説明の便宜のために、紙面上側がマーカー１１１−０〜４の上方側となるように表示されている。
【０１００】
本変形形態の場合、複数のマーカー１１１−０〜４ごとにマーカーＩＤが設定され、このマーカーＩＤごとに予め動作指令情報がテーブルによって設定されている。したがって、本システムの使用者は、移動ロボット３０の移動経路に対応するように、複数のマーカー１１１−０〜４を配置すればよい。具体的には、図１７で示す例では、紙面の左側に位置するスタート位置から移動ロボット３０を紙面右側に向けて直進させ、最初の交差点で右折させた後に直進させ、次にぶつかる左折路を左折させた後に直進させ、最終的な停止位置で１８０度右旋回させて移動ロボット３０の向きを変更して停止させる、といった動作を設定することを想定している。この場合、移動ロボット３０を最初のスタート位置から紙面右側に向けて直進させるために「マーカーＩＤ」が「２」であるマーカー１１１−２を最初の直線経路の通路左側に配置し、次に最初の交差点で右折させるために「マーカーＩＤ」が「３」であるマーカー１１１−３を交差点の手前左側に配置し、次に交差点の右折後に直進させるために「マーカーＩＤ」が「２」であるマーカー１１１−２を右折後の直線経路の通路左側に配置し、次にぶつかる左折路を左折させるために「マーカーＩＤ」が「４」であるマーカー１１１−４を左折路の手前左側に配置し、最後に左折路の左折後に直進させ、最終的な停止位置で１８０度右旋回させて移動ロボット３０の向きを変更して停止させるために「マーカーＩＤ」が「１」であるマーカー１１１−１を最後の直線経路の通路左側であって停止位置近傍に配置する。
【０１０１】
以上のようにマーカー１１１を配置した上で、想定した移動経路での移動ロボット３０の移動を実現するための制御内容について、説明する。本変形形態では、経路上に複数設置されたマーカー１１１は、地上高が同一となるように設置されている。一方、移動ロボット３０が備える２つの撮像部２４，２５は、マーカー１１１が設置された地上高よりも低い位置となるように構成されている。したがって、２つの撮像部２４，２５で撮像した撮像データは、移動ロボット３０との距離が近いマーカー１１１は、撮像データの上側に位置するとともに、より広い範囲を占める反射光として撮像データ上に示されることとなる。一方、移動ロボット３０との距離が遠いマーカー１１１は、撮像データの下側に位置するとともに、より狭い範囲を占める反射光として撮像データ上に示されることとなる。具体的には、図１７における紙面の左側に位置するスタート位置から移動ロボット３０を紙面右側に向けて直進させた場合、移動ロボット３０が備える２つの撮像部２４，２５は、手前側のマーカー１１１−２と、奥側のマーカー１１１−３を撮像することとなる。この場合の撮像データが、図１８に示されており、撮像データの左下隅に示された光のパターンが手前側のマーカー１１１−２を示しており、その右下側に狭い範囲で示された光のパターンが奥側のマーカー１１１−３を示している。なお、この撮像データは、工場の建屋内で移動ロボット３０を動作させた場合の例が示されており、撮像データ内に細長い長方形の光として複数映っているものは、工場内の天井に設置された蛍光灯である。
【０１０２】
図１８で示した撮像データを用いて、図２および図３等で示した処理を実行すると、手前側のマーカー１１１−２のマーカーＩＤである「２」と、奥側のマーカー１１１−３のマーカーＩＤである「３」が、算出部２６によって認識される。またこのとき、撮像データ上で最も上方位置に示されるマーカー１１１−２のマーカーＩＤである「２」が、移動ロボット３０が動作するべき指令情報としてテーブルから選択される。したがって、図１８で示された撮像データを得た移動ロボット３０は、図１６で示したテーブルのマーカーＩＤ「２」に従って、「動作」直進、「マーカー距離」右１ｍ、「回転」０度、「並進距離」１ｍとの動作指令に基づき駆動部３１が動作指令を受け、マーカー１１１−２を僅かに超えた位置まで移動することとなる。なお、現在選択されているマーカー１１１−２に対して移動ロボット３０が予め定められた所定距離まで近づくと、移動ロボット３０に対してマーカー１１１−２の次に近い位置にあるマーカー１１１−３に切り替えが行われる。ただし、この切り替えが行われる瞬間に、切り替え後のマーカー１１１−３に設定されたテーブルの動作指令に切り替わるのではなく、切り替え前のマーカー１１１−２に対して並進動作を行った上で、切り替え後のマーカー１１１−３に設定されたテーブルの動作指令に基づく動作が実行されることとなる。
【０１０３】
以上説明した動作制御が実行されることにより、図１７で示された移動経路に沿った移動ロボット３０の移動動作が実行される。なお、本変形形態では、経路上に複数設置されたマーカー１１１は、地上高が同一となるように設置されており、一方、移動ロボット３０が備える２つの撮像部２４，２５は、マーカー１１１が設置された地上高よりも低い位置となるように構成されていた。しかし、本発明では、被検出体が複数設置された場合に、算出部は、第一セルとしての白色セル１２ａから反射された光を２つのカメラで撮像する撮像部によって撮像された撮像データ内に被検出体であるマーカーを示す光が複数確認されたときに、検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体のＩＤ情報付与位置に設定されたＩＤ情報を検出するようにすればよい。また、算出部による検出部から最も近い位置にある被検出体であるマーカーの選択は、検出部と選択された当該マーカーとの距離によって判断されることとすればよい。したがって、経路上に複数設置されたマーカー１１１の地上高が同一となるように設置するとともに、移動ロボット３０が備える２つの撮像部２４，２５が、マーカー１１１が設置された地上高よりも高い位置となる場合には、２つの撮像部２４，２５で撮像した撮像データは、移動ロボット３０との距離が近いマーカー１１１は、撮像データの下側に位置するとともに、より広い範囲を占める反射光として撮像データ上に示されることとなる。一方、移動ロボット３０との距離が遠いマーカー１１１は、撮像データの上側に位置するとともに、より狭い範囲を占める反射光として撮像データ上に示されることとなる。つまり、マーカー１１１の地上高と２つの撮像部２４，２５との位置関係に応じて、撮像データ上に示された光の位置又は大きさに基づき、算出部による検出部から最も近い位置にある被検出体であるマーカーの選択を行うことが可能となる。このような構成を採用することで、本発明によれば、安価に移動ロボットの制御システムを実現することができる。
【０１０４】
以上、図１５〜図１８を用いて、変形形態に係る移動ロボット３０の制御システムを説明した。上述した変形形態では、被検出体としてマーカー１１１を用いた場合を例示したが、この変形形態に対しては、所定の規則に基づく信号を発信するビーコンを被検出体として用いることも可能である。この場合、ビーコンは数ｍｓｅｃ単位で発光信号のオン・オフを行うので、２つの撮像部２４，２５は、ビーコンの発光信号に対応した複数枚の撮像データを撮像し、これら複数枚の撮像データによって発光信号のオン・オフ状態を時系列で確認することで、上述したマーカー１１１と同様に、ビーコンごとのＩＤ情報を検出することができる。
【０１０５】
すなわち、本発明に係る画像処理装置は、所定の規則に基づく信号を発信するビーコンからなる被検出体と、前記被検出体から発信される信号を受信し、受信された信号に基づいて前記被検出体に設定された信号情報を取得する検出部と、を備える画像処理装置であって、前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたＩＤ情報を検出するように構成することができる。
【０１０６】
また、本発明に係る移動ロボットの制御システムは、移動ロボットの移動速度と進行方向とを変更する駆動部と、目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、前記検出部により検出された前記被検出体に設定されたＩＤ情報に基づいて前記駆動部を駆動制御する制御部と、を備え、前記被検出体は、所定の規則に基づく信号を発信するビーコンとして構成され、前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたＩＤ情報を検出するように構成することができる。
【０１０７】
さらに、本発明に係る移動ロボットの制御方法は、移動ロボットの移動速度と進行方向とを変更する駆動部と、目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、前記検出部により検出された前記被検出体に設定されたＩＤ情報を取得する制御部と、を備え、前記被検出体は、所定の規則に基づく信号を発信するビーコンとして構成され、前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたＩＤ情報を検出するようにした移動ロボットの制御方法であって、前記制御部に、前記検出部から最も近い位置にある被検出体のＩＤ情報に基づいて前記駆動部を駆動制御させることができる。
【０１０８】
以上、本発明の好適な実施例および変形形態例について説明したが、本発明の技術的範囲は上記実施例および変形形態例に記載の範囲には限定されない。上記実施例および変形形態例には、多様な変更又は改良を加えることが可能である。
【０１０９】
例えば、本実施例では、マーカー検出部２２の算出部２６が、検出した全てのマーカー１１’のマーカー情報をそれぞれ算出し、算出した各マーカー情報を制御部２７へ出力する動作を説明した。この場合、制御部２７のマーカー選択部２７ｂは、マーカー選択部２７ｂから出力される指示に基づいて、複数のマーカー情報から目標とするマーカー１１’のマーカー情報を選択するものであった。しかしながら、マーカー検出部２２については、マーカー選択部２７ｂから入力されるマーカーＩＤのマーカー１１’を検出するように動作させる構成を採用することも可能である。本発明に係る画像処理装置および移動ロボットの制御システムでは、上述した実施形態と実施例で実現されたものと同様の作用効果を得られる範囲において、様々な構成と動作手順の変形形態を採用することができる。
【０１１０】
また例えば、上述の移動ロボット３０は、内部にコンピュータシステムを有していてもよい。その場合、移動ロボット３０に備えられる制御部２７が行う処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、各機能部の処理が行われることになる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしてもよい。
【０１１１】
また例えば、上述した実施形態および実施例で示したマーカー１１，１１’，１１”における白色セル１２ａと黒色セル１２ｂの配置構成については一例を示したに過ぎない。本発明に適用可能なマーカーにおける白色セル１２ａと黒色セル１２ｂの配置の組み合わせは、あらゆるパターン構成を採用することができる。特に、検出スタート位置Ｂ１と検出エンド位置Ｂ３における白色セル１２ａと黒色セル１２ｂの配置の組み合わせは両者で同じである必要はなく、予めそれぞれに対して事前に取り決めたパターン構成を採用するものであってよい。
【０１１２】
なお、上記の実施例は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施例やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【０１１３】
その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【符号の説明】
【０１１４】
１０  画像処理装置、１１，１１’，１１”，１１１  マーカー（被検出体）、１２  セル、１２ａ  白色セル（第一セル）、１２ｂ  黒色セル（第二セル）、２１  画像処理装置本体、２２  マーカー検出部（検出部）、２３  照射部、２４，２５  撮像部、２６  算出部、２７  制御部、２７ａ  移動経路記憶部、２７ｂ  マーカー選択部、２７ｃ  駆動制御部、２７ｃ１  通過位置算出部、２７ｃ２  補正角算出部、２７ｃ３  指令値算出部、３０  移動ロボット、３１  駆動部、３２，３３  駆動輪、３４，３５  モータ、３６  モータ制御部、４０，４０−１，４０−２  境界、Ｂ１  検出スタート位置、Ｂ２  ＩＤ情報付与位置、Ｂ３  検出エンド位置。
【図１】
2019102047.tif 000003
【図２】
2019102047.tif 000004
【図３】
2019102047.tif 000005
【図４】
2019102047.tif 000006
【図５】
2019102047.tif 000007
【図６】
2019102047.tif 000008
【図７】
2019102047.tif 000009
【図８】
2019102047.tif 000010
【図９】
2019102047.tif 000011
【図１０】
2019102047.tif 000012
【図１１】
2019102047.tif 000013
【図１２】
2019102047.tif 000014
【図１３】
2019102047.tif 000015
【図１４】
2019102047.tif 000016
【図１５】
2019102047.tif 000017
【図１６】
2019102047.tif 000018
【図１７】
2019102047.tif 000019
【図１８】
2019102047.tif 000020