(57)【要約】      （修正有）【課題】所定の領域内における自装置の位置を精度よく得る。【解決手段】自律走行装置は、車輪の駆動状態を検出し、センサ情報として出力する駆動検出センサ４と、マーカを検出するカメラ制御部５１と、センサ情報から得られる位置を算出する第１の位置算出部５９と、マーカの識別番号から得られる位置を算出する第２の位置算出部５４と、これらの位置情報から、走行する部屋における自装置の位置を取得する地図情報制御部５７を備えている。【選択図】図１
2014021624.tif 000002
【特許請求の範囲】
【請求項１】
駆動輪を有し、所定の領域を自律的に走行可能な自律走行装置であって、
上記駆動輪の駆動状態を検出し、センサ情報として出力する駆動検出センサと、
基準位置からの距離と対応付けられた標識情報を表示する標識を検出する標識検出部と、
上記センサ情報から得られる、上記所定の領域における自装置の位置を示す第１の位置情報を算出する第１の位置算出部と、
上記標識情報から得られる、上記所定の領域における自装置の位置を示す第２の位置情報を算出する第２の位置算出部と、
上記第１の位置情報と、上記第２の位置情報とから、上記所定の領域における自装置の位置を取得する第３の位置算出部とを備えていることを特徴とする自律走行装置。
【請求項２】
請求項１に記載の自律走行装置と、
上記標識とを備え、
上記標識は、上記標識情報としての数値を表現するための複数の矩形模様が表示されていることを特徴とする自律走行システム。
【請求項３】
上記矩形模様は、マトリクス状に配された複数の矩形からなることを特徴とする請求項２に記載の自律走行システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自律で所定の領域内の走行が可能な自律走行装置、及び自律走行システムに関する。
【背景技術】
【０００２】
近年、掃除用の自律走行装置が開発されている。このような自律走行装置は、通常、室内における自装置の位置を把握するため、予め室内の地図が記録されているか、もしくは、マッピングする等により地図を作成する。そして、自律走行装置は、所定の掃除エリアを掃除するため、当該地図における自装置の位置を把握しながら自動走行する。
【０００３】
特許文献１には、全部屋と廊下についてマッピングすることで地図を生成する自走式ロボットが開示されている。
【０００４】
そして、上記自走式ロボットは、駆動輪モータに取り付けられたロータリーエンコーダの出力から駆動輪の回転量を検出し、これにより、地図における自装置の位置を把握している。
【０００５】
また、特許文献１では、各部屋の入り口の位置を指定するためのマーカを利用している。上記自走式ロボットは、上記マーカを検出することで、部屋の境界を把握している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５‐２７５８９９号公報（２００５年１０月６日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１の自走式ロボットに用いられているような、ロータリーエンコーダ等、駆動輪の駆動を検出する各種駆動用センサからの出力には誤差が含まれる。このため、当該駆動用センサからの出力によって得られた地図上の自装置の位置精度は低く、現実の室内における自走式ロボットの位置と異なっている場合が多いという課題が生じる。
【０００８】
また、特許文献１の自走式ロボットは、マーカを検出することで、部屋の境界位置を把握しているものの、自装置の地図上の位置が補正されるものでは無く、依然として、自装置の地図上の位置精度は低いままである。
【０００９】
本発明は、上記の問題点を解決するためになされたもので、その目的は、所定の領域内の位置を精度よく得ることである。
【課題を解決するための手段】
【００１０】
上記の課題を解決するために、本発明の自律走行装置は、駆動輪を有し、所定の領域を自律的に走行可能な自律走行装置であって、上記駆動輪の駆動状態を検出し、センサ情報として出力する駆動検出センサと、基準位置からの距離と対応付けられた標識情報を表示する標識を検出する標識検出部と、上記センサ情報から得られる、上記所定の領域における自装置の位置を示す第１の位置情報を算出する第１の位置算出部と、上記標識情報から得られる、上記所定の領域における自装置の位置を示す第２の位置情報を算出する第２の位置算出部と、上記第１の位置情報と、上記第２の位置情報とから、上記所定の領域における自装置の位置を取得する第３の位置算出部とを備えていることを特徴としている。
【００１１】
上記構成によると、上記第１の位置算出部は、上記センサ情報から得られる、上記所定の領域における自装置の位置を示す第１の位置情報を算出し、また、第２の位置算出部は、上記標識情報から得られる、上記所定の領域における自装置の位置を示す第２の位置情報を算出する。そして、第３の位置算出部は、上記第１の位置情報と、上記第２の位置情報とから、上記所定の領域における自装置の位置を取得する。このため、センサ情報のみから上記所定の領域における自装置の位置を取得する場合と比べて、所定の領域内における自装置の位置を精度よく得ることができる。
【００１２】
また、本発明の自律走行システムは、上記自律走行装置と、上記標識とを備え、上記標識は、上記標識情報としての数値を表現するための複数の矩形模様が表示されていることが好ましい。上記構成によると、上記矩形模様は画像等により認識し易く、上記標識検出部に、確実に、上記標識を検出させることができる。このため、所定の領域内における自装置の位置精度の向上効果を、確実に得ることができる。
【００１３】
また、上記矩形模様は、マトリクス状に配された複数の矩形からなることが好ましい。このように比較的簡易な形状により、上記標識情報が表現されていることで、上記標識検出部に、より確実に、上記標識を検出させることができる。
【発明の効果】
【００１４】
本発明の自律走行装置は、駆動輪を有し、所定の領域を自律的に走行可能な自律走行装置であって、上記駆動輪の駆動状態を検出し、センサ情報として出力する駆動検出センサと、基準位置からの距離と対応付けられた標識情報を表示する標識を検出する標識検出部と、上記センサ情報から得られる、上記所定の領域における自装置の位置を示す第１の位置情報を算出する第１の位置算出部と、上記標識情報から得られる、上記所定の領域における自装置の位置を示す第２の位置情報を算出する第２の位置算出部と、上記第１の位置情報と、上記第２の位置情報とから、上記所定の領域における自装置の位置を取得する第３の位置算出部とを備えている。
【００１５】
これにより、所定の領域内における自装置の位置を精度よく得ることができるという効果を奏する。
【図面の簡単な説明】
【００１６】
【図１】一実施形態に係る自律走行装置の制御部の要部構成を表す機能ブロック図である。
【図２】一実施形態に係る自律走行装置の外観を表す図である、
【図３】一実施形態に係る自律走行装置の構成の概略を表すブロック図である。
【図４】一実施形態に係るマーカの構成を表す図である。
【図５】一実施形態に係る自律走行装置が走行する部屋を天井側から見た平面図である。
【図６】一実施形態に係る自律走行装置が走行する部屋の地図を表す図である。
【図７】天井に配されたマーカをカメラが撮像している様子を表す図である。
【図８】カメラが撮像した画像をマーカの正面から見た場合へ変換した画像の様子を表している。
【図９】マーカの検出により地図上の位置を補正する流れを表す図である。
【図１０】マーカの各ドットを説明する図である。
【図１１】各識別番号を表現するマーカの配列パターンを表す図である。
【図１２】別の識別番号を表現するマーカの配列パターンを表す図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態について、詳細に説明する。
【００１８】
（自律走行装置１の構成）
まず、図２、図３を用いて、本実施の形態に係る自律走行装置１の構成について説明する。
【００１９】
図２は、自律走行装置１の外観を表す図である。図２の（ａ）は自律走行装置１の正面を表し、（ｂ）は正面側の斜視図であり、（ｃ）は自律走行装置１の正面に配されたカメラ２０及び障害物検出センサユニット３０の斜視図であり、（ｄ）はカメラ２０及び障害物検出センサユニット３０の拡大図であり、（ｅ）は自律走行装置１の正面に配された距離検出センサユニット１０の正面図である。
【００２０】
自律走行装置１は、例えば室内等、予め設定された所定の領域を自走式で走行が可能な装置である。具体的には、室内等の所定の領域内を、自走することで掃除する掃除用ロボットである。
【００２１】
図２に示すように、自律走行装置１は、フレームに、距離検出センサユニット１０、カメラ２０、障害物検出センサユニット３０や、掃除ユニットとしての洗浄液タンク４１及び廃液タンク４２等が搭載されている。
【００２２】
自律走行装置１は、正面に、距離検出センサユニット１０、カメラ２０、障害物検出センサユニット３０等が配されている。また、洗浄液タンク４１は、自律走行装置１の両側面に配されており、廃液タンク４２は、両側面に配された洗浄液タンク４１の間に配されている。
【００２３】
なお、図２に示す自律走行装置１の外観の構成は一例であり、自律走行装置１の各部材の配置等は、図２に示した構成に限定されるものではない。
【００２４】
次に、図３を用いて自律走行装置１の具体的な構成について説明する。図３は、自律走行装置１の構成の概略を表すブロック図である。
【００２５】
図３に示すように、自律走行装置１は、車輪（駆動輪）２と、駆動部３と、駆動検出センサ４と、距離検出センサユニット１０と、カメラ２０と、障害物検出センサユニット３０と、掃除ユニット４０と、制御部５０とを備えている。
【００２６】
車輪２は、自律走行装置１の走行用の車輪であり、自律走行装置１のフレームの下方に４つ配されている。
【００２７】
駆動部３は、車輪２の駆動させるためのモータである。モータの種類は特に限定されるものではなく、一般的に自走式のロボットの車輪を駆動させるためのモータを、駆動部３として用いることができる。
【００２８】
駆動部３は、制御部５０からの指示により各車輪２に動力を伝えることで、各車輪２を駆動させるも。駆動部３は、各車輪２毎に個別に配されていてもよいし、２個の車輪２毎に一つ配されていてもよいし、４個の車輪２に一つだけ配されていてもよい。
【００２９】
駆動検出センサ４は、車輪２の駆動状態を検出し、当該検出した車輪２の駆動状態をセンサ情報として出力するセンサである。具体的には、駆動検出センサ４は、車輪２の移動量と、移動で生じる各速度とを計測し、当該計測結果をセンサ情報として出力するセンサである。一例として、駆動検出センサ４は、ロータリーエンコーダや、ジャイロセンサ等である。自律走行装置１は、この駆動検出センサ４から出力されるセンサ情報に基づいて、部屋内の自装置の位置を算出する。
【００３０】
記憶部５は、自律走行装置１が走行する部屋の地図を示す情報が記憶されていたり、マーカＭが表す識別番号と部屋の原点位置からの距離とが対応付けて記憶されていたりする。また、自律走行装置１を駆動するための各種情報が記憶されている。
【００３１】
また、記憶部５には、カメラ２０によって撮像されたマーカＭの画像から、自律走行装置１の実際の位置を算出するために必要な各パラメータ（カメラ２０の天井までの高さＨ、カメラ２０の傾きα、カメラ２０の画角θ）も記憶されている。
【００３２】
なお、記憶部５に記憶されている、自律走行装置１が走行する部屋の地図を示す情報は、予め記憶部５に記憶されていてもよいし、自律走行装置１が部屋をマッピングすることで作成した地図情報を、記憶部５に記憶してもよい。
【００３３】
距離検出センサユニット１０は、自律走行装置１が走行する床の凹凸を検出し、当該検出した床の凹凸に合せて、自律走行装置１の走行距離を算出するためのユニットである。距離検出センサユニット１０は、例えば、カメラと、当該カメラを制御する回路等からなる制御部とを備えている。なお、距離検出センサユニット１０の構成は、特に限定されるものではなく、公知の技術によって構成することができる。
【００３４】
カメラ２０は、部屋の天井に配されたマーカＭ（後述する）を検出するために撮像するカメラである。カメラ２０は、撮像した画像を制御部５０に出力する。
【００３５】
カメラ２０は、天井が撮影できるように、水平方向から特定の角度をもって、自律走行装置１の前面に配されている。
【００３６】
カメラ２０は、マーカＭを構成する矩形のドットを識別できる程度の解像度を有していればよい。
【００３７】
障害物検出センサユニット３０は、自律走行装置１の進行方向の前方に障害物の存在の有無を判定するためのセンサユニットである。例えば、障害物検出センサユニット３０は、前方に音波又は電波等を出力し、反射した音波又は電波を受信することで、自律走行装置１の進行方向の前方に障害物の存在の有無を判定する。そして、障害物検出センサユニット３０は、自律走行装置１の前方の障害物の有無の判定結果を、制御部５０へ出力する。
【００３８】
制御部５０は、障害物検出センサユニット３０からの障害物の有無の判定結果に基づいて、障害物をよけるように自律走行装置１の進行方向を変更したり、動作を停止させたりする。
【００３９】
なお、障害物検出センサユニット３０の構成は、特に限定されるものではなく、公知の技術によって構成することができる。
【００４０】
掃除ユニット４０は、制御部５０からの指示に基づいて、自律走行装置１が走行する部屋等の床を掃除するための各種部材を備えるユニットである。掃除ユニット４０は、一例として、複数の洗浄液タンク４１、廃液タンク４２、ブラシ４３等を備えている。掃除ユニット４０は、制御部５０からの指示に基づいて、これら、複数の洗浄液タンク４１、廃液タンク４２、及びブラシ４３等を使用し、自律走行装置１が走行する部屋等の床を掃除する。なお、掃除ユニット４０の構成は、これに限定されるものではなく、一般的な自走式の掃除ロボットが備える掃除ユニットを備えることができる。
【００４１】
制御部５０は、自律走行装置１を全体的に駆動制御するものである。制御部５０は、自律走行装置１の各ブロックに指示を与えたり、または各ブロックからの情報を取得することで、自律走行装置１全体を制御する。制御部５０は例えばＣＰＵからなる。なお、制御部５０の機能ブロックについては後述する。
【００４２】
（マーカＭについて）
次に、図４、図５、図１０〜図１２を用いて、マーカＭについて説明する。図４は、マーカＭを表す図である。
【００４３】
マーカＭは、自律走行装置１が走行する部屋の、例えば入口等の基準位置となる原点位置からの距離を、自律走行装置１が認識するためのものである。マーカＭは、部屋の原点位置からの距離と対応付けられた識別番号（標識情報）を表示する。
【００４４】
このマーカＭと、自律走行装置１とによって、自律走行システムが構成されている。
【００４５】
マーカＭはカメラ２０で認識可能なように、矩形等の比較的簡易な形状が描かれることで構成されている。マーカＭは、この簡易的な形状の組み合わせにより、さまざまな識別標識を表示する。
【００４６】
マーカＭを複数種類用意し、それぞれの種類を識別できるように、当該種類と対応付けられた番号情報を表現できる形状が、マーカＭの周囲に配されていてもよい。
【００４７】
図４に示すマーカＭは、マーカＭ内に、９×９のドット（矩形部分）が配された構成となっている。マーカＭは、この９×９のドットの白表示又は黒表示により、さまざまな情報を表示する。
【００４８】
そして、自律走行装置１は、マーカＭをカメラ２０で検出すると、マーカＭ内のドットを元に、マーカＭの向きと、マーカＭが示す識別番号を認識する。
【００４９】
マーカＭのうち、４隅の４個のドットは、マーカＭの向きを自律走行装置１に検出させるためのものである。そしてマーカＭは、この４隅のドット間に挟まれた５個のドットによって２進数で数値を表示する。この５個のドットの配列パターンによって表現される数値がマーカＭの識別番号である。なお、５個のドットの配列パターンと識別番号とは、例えば、記憶部５等に予め対応付けて記憶されている。
【００５０】
また、マーカＭが表す識別番号と、部屋の原点位置からの距離とは対応付けられて、記憶部５に記憶されており、自律走行装置１は、マーカＭが表す識別番号を識別すると、当該マーカＭの原点位置からの距離を認識することが可能となっている。
【００５１】
図１０〜図１２を用いて、マーカＭの配列パターンの具体的な一例について説明する。
【００５２】
図１０は、マーカＭの各ドットを説明する図である。
【００５３】
図１０に示ように、マーカＭの各ドットのうち、上段左側（左上）に配されているドットＭｄがマーカＭの向き判定用のドットである。そして、マーカＭの各ドットのうち、ドットＭｄ３を中心として十字に配されている５つのドットＭｄ１〜Ｍｄ５が２進数５桁（１０進数では０〜３１までの数値）を表現するドットである。ドットの有り無しで２進数５桁の１／０（ドット有り：１、ドット無し：０）を表現している。
【００５４】
ドットＭｄ１は、マーカＭの上段真ん中（ドットＭｄの右横）に配されており、２進数５桁のうち１桁目の１／０を表現している。ドットＭｄ２は、マーカＭの中段左側（ドットＭｄの下）に配されており、２進数５桁のうち２桁目の１／０を表現している。ドットＭｄ３は、マーカＭの中段真ん中（ドットＭｄの右下）に配されており、２進数５桁のうち３桁目の１／０を表現している。ドットＭｄ４は、マーカＭの中段右側に配されており、２進数５桁のうち４桁目の１／０を表現している。ドットＭｄ５は、マーカＭの下段真ん中に配されており、２進数５桁のうち５桁目の１／０を表現している。
【００５５】
図１１は各識別番号を表現するマーカＭの配列パターンを表している。
【００５６】
図１１の（ａ）は識別番号として２進数で１（１０進数で１）のドット配列パターンのマーカＭを表す図であり、（ｂ）は識別番号として２進数で１０（１０進数で２）のドット配列パターンのマーカＭを表す図であり、（ｃ）は識別番号として２進数で１１（１０進数で３）のドット配列パターンのマーカＭを表す図であり、（ｄ）は識別番号として２進数で１００（１０進数で４）のドット配列パターンのマーカＭを表す図である。
【００５７】
図１１の（ａ）ではマーカＭはドットＭｄとドットＭｄ１だけが表示されドットＭｄ２〜Ｍｄ５は表示されておらず、（ｂ）ではマーカＭはドットＭｄとドットＭｄ２だけが表示されドットＭｄ１・Ｍｄ３〜Ｍｄ５は表示されておらず、（ｃ）ではマーカＭはドットＭｄとドットＭｄ１・Ｍｄ２だけが表示されドットＭｄ３〜Ｍｄ５は表示されておらず、（ｄ）ではマーカＭはドットＭｄとドットＭｄ３だけが表示されドットＭｄ１・Ｍｄ２・Ｍｄ４・Ｍｄ５は表示されていない。
【００５８】
図１２は別の識別番号を表現するマーカＭの配列パターンを表す図である。
【００５９】
図１２の（ａ）は識別番号として２進数で１１１（１０進数で７）のドット配列パターンのマーカＭを表す図であり、（ｂ）は識別番号として２進数で１１０１（１０進数で１３）のドット配列パターンのマーカＭを表す図であり、（ｃ）は識別番号として２進数で１００００（１０進数で１６）のドット配列パターンのマーカＭを表す図であり、（ｄ）は識別番号として２進数で１００１０（１０進数で１８）のドット配列パターンのマーカＭを表す図である。
【００６０】
図１２の（ａ）ではマーカＭはドットＭｄとドットＭｄ１〜Ｍｄ３が表示されドットＭｄ４・Ｍｄ５は表示されておらず、（ｂ）ではマーカＭはドットＭｄとドットＭｄ１・Ｍｄ３・Ｍｄ４が表示されドットＭｄ２・Ｍｄ５は表示されておらず、（ｃ）ではマーカＭはドットＭｄとドットＭｄ５だけが表示されドットＭｄ１〜Ｍｄ４は表示されておらず、（ｄ）ではマーカＭはドットＭｄとドットＭｄ２・Ｍｄ５だけが表示されドットＭｄ１・Ｍｄ３・Ｍｄ４は表示されていない。
【００６１】
このようにマーカＭはドットの配列により各識別番号を表現する。
【００６２】
なお、図４、図１０〜図１２に示すマーカＭの構成は一例であり、カメラ２０によって、画像でマーカＭの向きや識別番号を認識できるものであればよい。
【００６３】
マーカＭは、自律走行装置１の走行や部屋の使用の障害とならないように、部屋の天井に設けられている。
【００６４】
図５は、自律走行装置１が走行する部屋７０を天井側から見た平面図である。
【００６５】
部屋７０は、自律走行装置１が走行する（すなわち掃除する）部屋の構成の一例である。部屋７０内には壁７１・７２が配されていることで、部屋７０の入口から出口にかけて進行する自律走行装置１の軌道がＳ字形状となるような部屋である。
【００６６】
マーカＭは、入口から出口にまでの間に、部屋７０の天井であって、自律走行装置１が走行する軌道上に、所定の間隔で複数配されている。
【００６７】
自律走行装置１は、カメラ２０にマーカＭが撮像されたときに、自身の地図上の位置を補正する。このため、カメラ２０に常に少なくとも一つのマーカＭが映る程度の間隔でマーカＭを配することで、自律走行装置１の地図上の位置と、現実の位置との誤差をより確実に低減することができる。しかし、この場合、マーカＭの個数が増大する。このため、マーカＭを配する間隔は、自律走行装置１が自己の位置を補正するために必要な頻度で検出できる程度に配されていればよい。
【００６８】
図５では、マーカＭとして、入口から出口にかけて、識別番号１のマーカＭ１、識別番号２のマーカＭ２、識別番号３のマーカＭ３、識別番号４のマーカＭ４、識別番号５のマーカＭ５、識別番号６のマーカＭ６、識別番号７のマーカＭ７、識別番号８のマーカＭ８、識別番号９のマーカＭ９が、この順に、一定間隔で配されている。
【００６９】
（地図ＭＰについて）
次に、図５、図６を用いて、自律走行装置１が自走のために使用する地図ＭＰについて説明する。
【００７０】
図６は、部屋７０の地図ＭＰを表す図である。
【００７１】
地図ＭＰは、例えば、特許文献１に記載された方法で、自律走行装置１がマッピングすることで作成してもよいし、予め自律走行装置１の記憶部５にデータベースとして記憶されていてもよい。なお、本実施の形態では、地図ＭＰは、データベースとして予め記憶部５に記憶されているものとして説明する。
【００７２】
地図ＭＰ上の位置は、マーカＭ１〜Ｍ９のそれぞれの原点位置（部屋７０の入口）からの距離を表している。
【００７３】
地図ＭＰ上の原点位置Ｏ：（Ｘｏ，Ｙｏ）は部屋７０の入口の位置であり、地図ＭＰ上の終端位置Ｅ（ＸＥ，ＹＥ）は部屋７０の出口の位置である。また、地図ＭＰ上の位置ｍ１：（Ｘｍ１，Ｙｍ１）、位置ｍ２：（Ｘｍ２，Ｙｍ２）、位置ｍ３：（Ｘｍ３，Ｙｍ３）・・・位置ｍ９：（Ｘｍ９，Ｙｍ９）は、それぞれ、マーカＭ１、Ｍ２、Ｍ３・・・Ｍ９のそれぞれの部屋７０の入口からの距離を表している。
【００７４】
自律走行装置１は、原点位置Ｏ：（Ｘｏ，Ｙｏ）と、各位置ｍ１：（Ｘｍ１，Ｙｍ１）、位置ｍ２：（Ｘｍ２，Ｙｍ２）、位置ｍ３：（Ｘｍ３，Ｙｍ３）・・・位置ｍ９：（Ｘｍ９，Ｙｍ９）とから、それぞれのマーカＭ１、Ｍ２、Ｍ３・・・Ｍ９の原点位置からの距離を得る。
【００７５】
換言すると、地図ＭＰには、各マーカＭ１、Ｍ２、Ｍ３・・・Ｍ６のそれぞれの原点位置からの距離と、各マーカＭ１、Ｍ２、Ｍ３・・・Ｍ６それぞれの識別番号とが対応付けられていると表現することもできる。
【００７６】
自律走行装置１は、カメラ２０で、各マーカＭ１、２、Ｍ３・・・を検出するたびに、その検出したマーカＭ１、Ｍ２、Ｍ３・・・の位置ｍ１、ｍ２、ｍ３から、補正前の自装置の地図上の位置（第１の位置情報）Ｓ：（ＸＳ，ＹＳ）を補正し、補正後の自装置の地図ＭＰ上の位置Ｔ（ＸＴ，ＹＴ）を得る。
【００７７】
この補正前の位置Ｓ：（ＸＳ，ＹＳ）は、駆動検出センサ４から逐次送られてくる出力情報に基づいて算出された自律走行装置１の部屋７０内における位置（地図ＭＰ上の位置）である。または、直前に検出されたマーカＭを用いて位置が補正された後、再び、駆動検出センサ４から逐次送られてくるセンサ情報に基づいて更新された自律走行装置１の部屋７０内における位置（地図ＭＰ上の位置）である。このため、位置Ｓ：（ＸＳ，ＹＳ）は、実際の自律走行装置１の位置との間に誤差が生じ、自律走行装置１の移動距離に従って、その誤差が大きくなる。
【００７８】
そこで、自律走行装置１では、マーカＭを検出するたびに、自装置の地図ＭＰ上の位置を補正することで、実際の自律走行装置１の部屋７０に置ける位置との間の誤差を低減している。
【００７９】
図６の矢印Ｙは、マーカＭ５を検出する前の自律走行装置１の地図上の位置Ｓ（ＸＳ，ＹＳ）を、マーカＭ５を検出することで得たマーカＭ５の地図上の位置ｍ５（Ｘｍ５，Ｙｍ５）から得られる部屋７０における自律走行装置１の地図上の位置Ｔ（ＸＴ，ＹＴ）で補間することで、補正後の自装置の実際の地図上の位置ＴＺ（ＸＴＺ，ＹＴＺ）へ補正している様子を表している。
【００８０】
上述のように、マーカＭ（マーカＭ１、Ｍ２、Ｍ３・・・Ｍ９）の地図ＭＰ上の位置と、各マーカＭ（マーカＭ１、Ｍ２、Ｍ３・・・Ｍ９）それぞれの識別番号とが対応付けられているため、地図ＭＰに対して各マーカＭの絶対位置は不変である。
【００８１】
このため、自律走行装置１は、各マーカの識別番号を判定することで、ジャイロセンサやエンコーダ等の駆動検出センサ４からのセンサ情報からのみ得た場合は不安定な地図ＭＰ上の位置を、高精度で得ることができる。
【００８２】
（制御部５０の機能ブロック）
次に、図１を用いて、制御部５０の要部の機能ブロックについて説明する。
【００８３】
図１は、制御部５０の要部の構成を表す機能ブロック図である。
【００８４】
制御部５０は、カメラ制御部（標識検出部）５１と、地図情報制御部（第３の位置算出部）５７と、第１の位置算出部（第１の位置算出部）５９とを備えている。また、カメラ制御部５１は、向き判定部５２と、識別番号判定部５３と、第２の位置算出部（第２の位置算出部）５４とを備えている。
【００８５】
第１の位置算出部５９は、駆動検出センサ４から逐次センサ情報を取得する。そして、第１の位置算出部５９は、所定の時間間隔で、部屋７０の原点位置からの距離を算出することで、自律走行装置１の地図ＭＰ上の位置Ｓを算出する。
【００８６】
カメラ制御部５１は、カメラ２０の駆動を制御したり、カメラ２０が撮像した画像からマーカＭを検出したりするものである。
【００８７】
カメラ制御部５１は、カメラ２０から、マーカＭを含む画像を取得すると、当該画像に含まれるマーカＭの各ドットを認識することで、マーカＭを検出する。
【００８８】
向き判定部５２は、カメラ制御部５１が検出したマーカＭのドット配列を識別することで、カメラ制御部５１が検出したマーカＭの角度を検出する。
【００８９】
識別番号判定部５３は、カメラ制御部５１が検出したマーカＭのドット配列を識別することで、カメラ制御部５１が検出したマーカＭの識別番号を検出する。
【００９０】
第２の位置算出部５４は、識別番号判定部５３が判定したマーカＭの識別番号と対応付けられているマーカＭの位置ｍを取得し、その位置ｍと自律走行装置１との距離から自律走行装置１の実際の部屋の位置Ｔを算出する。
【００９１】
地図情報制御部５７は、記憶部５に記憶されている部屋７０の地図情報を読み込み地図における自律走行装置１の位置を特定するものである。
【００９２】
また、地図情報制御部５７は、位置Ｓに、位置Ｔを補完することで、部屋７０における自装置の位置ＴＺを取得する。そして、地図情報制御部５７は、位置ＴＺを、部屋７０における自律走行装置１の位置として特定する。
【００９３】
（マーカＭの検出・地図上の位置の補正方法）
次に、マーカＭの検出方法及び地図上の位置の補正方法について図７〜図９等を用いて説明する。
【００９４】
図７は、天井に配されたマーカＭをカメラ２０が撮像している様子を表す図である。図８は、カメラ２０が撮像した画像をマーカＭの正面から見た場合へ変換した画像ＩＭの様子を表している。図９はマーカＭの検出により地図上の位置を補正する流れを表す図である。
【００９５】
自律走行装置１は、駆動検出センサ４から逐次出力されるセンサ情報を、第１の位置算出部５９が取得する（ステップＳ１１）。第１の位置算出部５９は、駆動検出センサ４から逐次センサ情報を取得すると、所定の時間間隔で、原点位置からの距離を算出することで、自律走行装置１の地図ＭＰ上の位置Ｓを算出する（ステップＳ１２）。
【００９６】
そして、第１の位置算出部５９は、算出した位置Ｓを地図情報制御部５７に出力する。地図情報制御部５７は、第１の位置算出部５９から位置Ｓを取得すると、地図ＭＰに、位置Ｓを反映させる。これにより、制御部５０は、位置Ｓが示す位置が自律走行装置１の位置であると認識し、自律走行装置１の走行状態を制御する。
【００９７】
カメラ制御部５１がマーカＭを撮像するまで、ステップＳ１１・Ｓ１２を繰り返えす（ステップＳ１３のＮＯ）。
【００９８】
そして、図７に示すように、カメラ２０は、部屋７０の天井７３に配されたマーカＭを撮像し、マーカＭが撮像された画像をカメラ制御部５１に出力する。
【００９９】
ここで、自律走行装置１がマーカＭを検出することで地図ＭＰ上の位置を補正するために必要なパラメータは、図７に示すように、カメラ２０の天井７３までの高さＨ（すなわちカメラ２０からマーカＭまでの上下方向の距離）、カメラ２０の傾きα（鉛直方向に対する傾き）、カメラ２０の画角θである。これら、高さＨ、傾きα、及び画角θは予め記憶部５に記憶されている。
【０１００】
そして、カメラ制御部５１は、マーカＭが撮像された画像をカメラ２０から取得すると、当該画像中のマーカＭの各ドットを認識することで、画像中のマーカＭを検出する（ステップＳ１３のＹＥＳ）。
【０１０１】
カメラ制御部５１は、マーカＭを検出すると、マーカＭ中のドット部分の画像を切り取り、その切り取ったドット形状から、正面から見た形状への変換行列を算出する。そして、この変換行列により、撮像した画像ＩＭにおけるドット形状を、正面から見た場合の形状へと変換する（ステップＳ１４）。
【０１０２】
図８は、正面から見た場合への形状へと変換されたマーカＭ及びマーカＭが撮像された画像ＩＭを表している。
【０１０３】
なお、本実施の形態では便宜上、マーカＭが撮像された画像全体を正面から見た画像ＩＭへと変換するように説明しているが、カメラ制御部５１は、マーカＭが撮像された画像全体ではなく、マーカＭの部分だけを、正面から見た画像へと変換するようにしてもよい。
【０１０４】
次に、向き判定部５２は、カメラ制御部５１が形状を変換したマーカＭの各ドットの配列パターンを識別することで、画像ＩＭにおけるマーカＭの傾向きである角度θ１を算出する（ステップＳ１５）。
【０１０５】
具体的には、向き判定部５２は、マーカＭにおける４隅に配されたドットの互いの画像ＩＭ上の座標位置を比較することで、マーカＭの傾きである角度θ１を算出する。角度θ１は、画像ＩＭにおける垂直軸（Ｙ軸）に対する傾斜角である。
【０１０６】
そして、識別番号判定部５３は、カメラ制御部５１が形状を変換したマーカＭの各ドットの配列パターンを識別し、当該配列パターンと対応付けられている識別番号を得ることで、マーカＭの識別番号を判定する（ステップＳ１６）。
【０１０７】
具体的には、識別番号判定部５３は、マーカＭにおける４隅に配されたドット間に配された５個のドットに対応する画像ＩＭ上の座標近傍の画像が黒いか白いかを判定することで、その５個のドットの配列パターンを識別する。この配列パターンを識別することで、識別番号判定部５３は、当該配列パターンと対応付けられている識別番号を取得する。
【０１０８】
次に、第２の位置算出部５４は、予め記憶部５に記憶されている、高さＨ、傾きα、及び画角θを取得し、画像ＩＭ上の基準位置ＴＩＭに対するマーカＭの左右方向距離ｘ１、前後方向距離ｙ１、及びマーカＭの画像ＩＭ上の傾きθ１を算出する。これにより、マーカＭと、自律走行装置１との現実の距離を算出することができる（ステップＳ１７）。
【０１０９】
そして、第２の位置算出部５４は、マーカＭの地図ＭＰ上の位置ｍ：（Ｘｍ，Ｙｍ）と、ステップＳ１７で算出したマーカＭと自律走行装置１との現実の距離とから、自律走行装置１の現在の地図ＭＰ上の位置Ｔ：（ＸＴ，ＹＴ）を算出する（ステップＳ１８）。そして、第２の位置算出部５４は、算出した位置Ｔ（ＸＴ，ＹＴ）を、現在の自律走行装置１の地図ＭＰ上の位置情報として地図情報制御部５７に出力する。
【０１１０】
そして、地図情報制御部５７は、第２の位置算出部５４から取得した位置Ｔ：（ＸＴ，ＹＴ）に×０．１の重み付けをし、位置ＴＡ：（ＸＴＡ，ＹＴＡ）を得る。また、第１の位置算出部５９から逐次取得する位置Ｓ：（ＸＳ，ＹＳ）に×０．９の重み付けをし、位置ＳＡ：（ＸＳＡ，ＹＳＡ）を得る。そして、地図情報制御部５７は、得た位置ＴＡと、位置ＳＡとを足し合わせることで、位置ＴＺ（ＸＴＺ，ＹＴＺ）を算出する。
【０１１１】
そして、地図情報制御部５７は、現在の自律走行装置１の地図ＭＰ上の位置を、算出した位置ＴＺ（ＸＴＺ，ＹＴＺ）へ補正する（ステップＳ１９）。
【０１１２】
この後、ステップＳ１１の処理を繰り返す。
【０１１３】
このように、車輪２を有し、部屋７０を自律的に走行可能である自律走行装置１は、車輪２の駆動状態を検出し、センサ情報として出力する駆動検出センサ４と、マーカＭの識別番号を検出するカメラ制御部５１とを備えている。
【０１１４】
そして、自律走行装置１は、センサ情報から得られる、部屋７０における自装置の位置を示す位置Ｓを算出する第１の位置算出部５９と、マーカＭの識別番号から得られる、部屋７０における自装置の位置を示す位置Ｔを算出する第２の位置算出部５４と、位置Ｓと、位置Ｔとから、部屋７０における自装置の位置ＴＺを取得する地図情報制御部５７とを備えている。
【０１１５】
これにより、第１の位置算出部５９は、センサ情報から得られる、部屋７０における自律走行装置１の位置を示す位置Ｓを算出し、また、第２の位置算出部５４は、マーカＭの識別番号から得られる、部屋７０における自律走行装置１の位置を示す位置Ｔを算出する。そして、地図情報制御部５７は、位置Ｓに、位置Ｔを補完することで、部屋７０における自装置の位置ＴＺを取得する。このため、センサ情報のみから部屋７０における自律走行装置１を取得する場合と比べて、部屋７０における自律走行装置１の位置を精度よく得ることができる。
【０１１６】
また、自律走行装置１と、マーカＭとから構成されている自律走行システムでは、マーカＭは、標識番号を表現するための複数のドット（矩形模様）が表示されている。これにより、カメラ２０で撮像した画像を、カメラ制御部５１で読み取る際、カメラ制御部５１はドットを認識し易すく、確実に、マーカＭを検出することができる。このため、部屋７０における自律走行装置１の位置精度の向上効果を、確実に得ることができる。
【０１１７】
さらに、このマーカＭのドットは、マトリクス状に配されており、このように比較的簡易な形状により、マーカＭが表現されていることで、カメラ制御部５１でより確実に、マーカＭを検出させることができる。
【０１１８】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【０１１９】
本発明は、自律で所定の領域内の走行が可能な自律走行装置、及び自律走行システムに利用することができる。
【符号の説明】
【０１２０】
１  自律走行装置
２  車輪（駆動輪）
４  駆動検出センサ
５  記憶部
２０  カメラ
４０  掃除ユニット
５１  カメラ制御部（標識検出部）
５３  識別番号判定部（標識検出部）
５４  第２の位置算出部
５７  地図情報制御部（第３の位置算出部）
５９  第１の位置算出部
７０  部屋（所定の領域）
ＩＭ  画像
Ｍ  マーカ
ＭＰ  地図
Ｓ  位置（第１の位置情報）
Ｔ  位置（第２の位置情報）
ＴＺ  位置
ｍ  位置
【図１】
2014021624.tif 000003
【図３】
2014021624.tif 000004
【図４】
2014021624.tif 000005
【図５】
2014021624.tif 000006
【図６】
2014021624.tif 000007
【図７】
2014021624.tif 000008
【図８】
2014021624.tif 000009
【図９】
2014021624.tif 000010
【図１０】
2014021624.tif 000011
【図１１】
2014021624.tif 000012
【図１２】
2014021624.tif 000013
【図２】
2014021624.tif 000014