(57)【要約】  ロボットにおける故障を診断し回復させるためのシステムおよび方法は、各々が位置インディシアを有する、床面に取り付けられたマーカを設けることと、ロボットによって、マーカを用いてエリアを走行することと、少なくとも１つのマーカにおける位置インディシアを取得することと、少なくとも１つのマーカの位置および角度を決定するために、取得した位置インディシアを処理することと、基準位置および角度に対するマーカの位置オフセットおよび角度オフセットを計算することと、計算された位置オフセットおよび角度オフセットが第１の所定の基準を満たす場合、基準位置および角度を調整することと、計算された位置オフセットおよび角度オフセットが第１の所定の基準を満たさない場合、外部エンティティへ警告することとを含む。【選択図】図１
2018534691.tif 000002
【特許請求の範囲】
【請求項１】
ロボットにおける故障を診断し回復させるための方法であって、
各々が位置インディシアを有し、各々が位置および角度を有する、床面に取り付けられた複数のマーカを設けることと、
前記ロボットによって、前記複数のマーカの第１のマーカから前記複数のマーカの第２のマーカまで、前記第２のマーカの格納された位置オフセットおよび／または角度オフセットおよび前記第１のマーカの前記ロボットに対する位置および角度を用いて走行することと、
センサを用いて、前記第２のマーカにおける前記位置インディシアを取得することと、
前記第２のマーカの位置および角度を決定するために、前記取得した位置インディシアを、回路を用いて処理することと、
前記第１のマーカの前記位置および角度に対する前記第２のマーカの位置オフセットおよび角度オフセットを計算することと、
前記第２のマーカの前記計算された位置オフセットおよび角度オフセットが第１の所定の基準を満たす場合、前記第２のマーカの前記格納された位置オフセットおよび角度オフセットを調整することと、
前記第２のマーカの前記計算された位置オフセットおよび角度オフセットが前記第１の所定の基準を満たさない場合、外部エンティティへ警告することと
を備える方法。
【請求項２】
前記第２のマーカの前記計算された位置オフセットおよび角度オフセットが第２の所定の基準を満たす場合、前記ロボットの１または複数の動作パラメータを変更すること
を更に備える、請求項１に記載の方法。
【請求項３】
前記ロボットの前記１または複数の動作パラメータは、第１の車輪と第２の車輪との車輪速度比を含む、請求項２に記載の方法。
【請求項４】
前記位置インディシアは、バーコード、ＱＲコード、データマトリクスコード、およびアズテックコードの１または複数を含む、請求項１に記載の方法。
【請求項５】
前記センサは、カメラおよびレーザスキャナの１または複数を含む、請求項１に記載の方法。
【請求項６】
前記第２のマーカの前記格納された位置オフセットおよび角度オフセットを調整することは、統計的方法を用いることを含む、請求項１に記載の方法。
【請求項７】
前記第１の所定の基準は、前記第２のマーカの前記計算された位置オフセットおよび角度オフセットの第１の所定の閾値を含む、請求項１に記載の方法。
【請求項８】
前記第１の所定の基準は、前記第２のマーカの前記計算された位置オフセットおよび角度オフセットの第１の所定の閾値を含み、前記第２の所定の基準は、前記第２のマーカの前記計算された位置オフセットおよび角度オフセットの第２の所定の閾値を含み、前記第２の所定の閾値は前記第１の所定の閾値よりも大きい、請求項２に記載の方法。
【請求項９】
故障を診断し回復させるためのシステムであって、
各々が位置インディシアを有し、各々が基準位置および角度を有する、床面に取り付けられた複数のマーカと、
１または複数のロボットと
を備え、各ロボットは、
前記複数のマーカの第１のマーカから前記複数のマーカの第２のマーカまで、前記第２のマーカの格納された位置オフセットおよび／または角度オフセットおよび前記第１のマーカの前記ロボットに対する位置および角度を用いて走行し、
センサを用いて、前記第２のマーカにおける前記位置インディシアを取得し、
前記第２のマーカの位置および角度を決定するために、前記取得した位置インディシアを処理し、
前記第１のマーカの前記位置および角度に対する前記第２のマーカの位置オフセットおよび角度オフセットを計算し、
前記第２のマーカの前記計算された位置オフセットおよび角度オフセットが第１の所定の基準を満たす場合、前記第２のマーカの前記格納された位置オフセットおよび角度オフセットを調整し、
前記第２のマーカの前記計算された位置オフセットおよび角度オフセットが前記第１の所定の基準を満たさない場合、外部エンティティへ警告する
ように構成された回路を含む、システム。
【請求項１０】
前記回路は、
前記第２のマーカの前記計算された位置オフセットおよび角度オフセットが第２の所定の基準を満たす場合、前記ロボットの１または複数の動作パラメータを変更する
ように更に構成される、請求項９に記載のシステム。
【請求項１１】
前記ロボットの前記１または複数の動作パラメータは、第１の車輪と第２の車輪との車輪速度比を含む、請求項１０に記載のシステム。
【請求項１２】
前記位置インディシアは、バーコード、ＱＲコード、データマトリクスコード、およびアズテックコードの１または複数を含む、請求項９に記載のシステム。
【請求項１３】
前記センサは、カメラおよびレーザスキャナの１または複数を含む、請求項９に記載のシステム。
【請求項１４】
前記第２のマーカの前記格納された位置オフセットおよび角度オフセットを調整することは、統計的方法を用いることを含む、請求項９に記載のシステム。
【請求項１５】
前記第１の所定の基準は、前記第２のマーカの前記計算された位置オフセットおよび角度オフセットの第１の所定の閾値を含む、請求項９に記載のシステム。
【請求項１６】
前記第１の所定の基準は、前記計算された位置オフセットおよび角度オフセットの第１の所定の閾値を含み、前記第２の所定の基準は、前記計算された位置オフセットおよび角度オフセットの第２の所定の閾値を含み、前記第２の所定の閾値は前記第１の所定の閾値よりも大きい、請求項１０に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、参照によってその開示全体が本明細書に組み込まれる、２０１５年１０月２２日に出願されたシンガポール特許仮出願第１０２０１５０８７４０Ｗ号の利益を主張するものである。
【０００２】
本開示の分野は、機械の自動故障診断に関する。
【背景技術】
【０００３】
たとえば（無人搬送車、自動走行車、またはＡＧＶとしても知られている）動作ロボットなどの機械は、倉庫、流通センター、および工場において材料および他の物品を運ぶために用いられ得る。しかし、機械は時に、調整、校正、またはメンテナンスを必要とし得る。従来、故障が通知され修正され得る時には、機械は大きな損害を受けている。したがって、妥当な時間内に機械における故障状態を診断し、その診断が、良い頃合いに修理するよう示すことができるようにする必要がある。
【発明の概要】
【０００４】
ロボットにおける故障を診断し回復させるための方法が開示される。方法は、各々が位置インディシアを有し、各々が位置および角度を有する、床面に取り付けられた複数のマーカを設けることと、第１のマーカから第２のマーカへ、第２のマーカの格納された位置オフセットおよび／または角度オフセットおよびロボットに対する第１のマーカの位置および角度を用いて走行することと、第２のマーカにおける位置インディシアを取得することと、第２のマーカの位置および角度を決定するために、取得した位置インディシアを処理することと、第１のマーカの位置および角度に対する第２のマーカの位置オフセットおよび角度オフセットを計算することと、第２のマーカの計算された位置オフセットおよび角度オフセットが第１の所定の基準を満たす場合、第２のマーカの格納された位置オフセットおよび角度オフセットを調整することと、第２のマーカの計算された位置オフセットおよび角度オフセットが第１の所定の基準を満たさない場合、外部エンティティへ警告することとを含む。
【０００５】
故障を診断し回復させるためのシステムも開示される。システムは、各々が位置インディシアを有し、各々が基準位置および角度を有する、床面に取り付けられた複数のマーカと、１または複数のロボットとを含み、各ロボットは、第１のマーカから第２のマーカへ、第２のマーカの格納された位置オフセットおよび／または角度オフセットおよびロボットに対する第１のマーカの位置および角度を用いて走行し、第２のマーカにおける位置インディシアを取得し、第２のマーカの位置および角度を決定するために、取得した位置インディシアを処理し、第１のマーカの位置および角度に対する第２のマーカの位置オフセットおよび角度オフセットを計算し、第２のマーカの計算された位置オフセットおよび角度オフセットが第１の所定の基準を満たす場合、第２のマーカの格納された位置オフセットおよび角度オフセットを調整し、第２のマーカの計算された位置オフセットおよび角度オフセットが第１の所定の基準を満たさない場合、外部エンティティへ警告するように構成された回路を含む。
【０００６】
本開示および本開示に付随する利点の多くは、添付図面と関連して考察された場合、以下の詳細な説明を参照することによってより良く理解されるとともに、より完全な理解が容易に得られるものである。
【図面の簡単な説明】
【０００７】
【図１】本開示のいくつかの実装に係るマーカの配列を示す。
【図２】本開示のいくつかの実装に係る機械のためのナビゲーション経路を示す。
【図３】本開示のいくつかの実施形態に係る機械の電子部品および電気機械部品の簡略化機能ブロック図を示す。
【図４】本開示のいくつかの実装に係る機械の自動故障診断のための方法のフロー図表現を示す。
【図５】本開示のいくつかの実装に係る機械の自動故障診断のための方法の他の態様のフロー図表現を示す。
【発明を実施するための形態】
【０００８】
以下の説明は、本開示の様々な実施形態が実装され得る適切な環境の簡単な概説を提供するものである。実施形態は、以下で詳しく説明されるコンピュータ実行可能メカニズムの１または複数を実行するように特別にプログラム、構成、または構築された専用コンピュータまたはデータプロセッサにおいて具体化され得る。
【０００９】
以下、添付図面を参照して典型的な実施形態が説明される。ただし本開示は、多数の様々な形式で具体化されてよく、本明細書に記載される実施形態に限定されるものとして解釈してはならず、これらの実施形態は、本開示が徹底的かつ完全であり、その範囲を当業者に完全に伝えるように提供されるものである。添付図面に示される特定の典型的な実施形態の詳細な説明において用いられる用語は、限定的なものとして意図されない。図面において、類似の番号は類似の要素を指す。
【００１０】
本明細書は、いくつかの箇所で「ある」、「１つの」、または「いくつかの」実施形態（複数も可）に言及し得る。これは必ずしも、そのような言及の各々が同じ実施形態（複数も可）に対するものであること、またはその特徴が単一の実施形態のみに当てはまることを暗示するものではない。様々な実施形態の単一の特徴が組み合わせられ、他の実施形態を提供してもよい。
【００１１】
本明細書で用いられる場合、単数形の「ａ」、「ａｎ」、および「ｔｈｅ」は、例外が明記されない限り、複数形も同様に含むことが意図される。また、理解されるように、「含む」、「備える」、「含んでいる」、および／または「備えている」という用語は、本明細書で用いられる場合、記載された特徴、整数、ステップ、動作、要素、および／または部品の存在を明示するものであるが、１または複数の他の特徴、整数、ステップ、動作、要素、部品、および／またはそれらのグループの存在または追加を除外するものではない。理解されるように、要素が他の要素に「接続」または「結合」されることが言及される場合、要素は、他の要素に直接接続または結合されてよく、あるいは介在要素が存在してもよい。また、本明細書で用いられる場合、「接続」または「結合」は、無線接続または無線結合を含んでよい。本明細書で用いられる場合、「および／または」という用語は、関連して記された事項の１または複数の任意のおよび全ての組み合わせおよび配列を含むものである。
【００１２】
本明細書で用いられる（技術的および科学的用語を含む）全ての用語は、例外が定義されない限り、本開示が関与する当業者によって一般的に理解されるものと同じ意味を有する。また、理解されるように、たとえば一般的に使用される辞書に定義されるような用語は、関連技術の文脈における意味と矛盾しない意味を有するものとして解釈すべきであり、本明細書で明記されない限り、理想化された、または過度に形式的な意味で解釈されるものではない。
【００１３】
図面は、いくつかの構造的要素および機能的エンティティのみを示す簡略化された構造を図示し、それら全ては、その実装が図示されたものと異なり得る論理ユニットである。図示される接続は論理的接続であり、実際の物理的接続は異なってよい。当業者には明らかであるように、構造は、他の機能および構造を備えてもよい。通信に用いられる機能、構造、要素、およびプロトコルは、本開示とは無関係であることを理解すべきである。したがって、それらは本明細書でより詳しく説明する必要はない。
【００１４】
加えて、図面において説明され図示される全ての論理ユニットは、ユニットが機能するために必要なソフトウェアおよび／またはハードウェア部品を含んでよい。また、各ユニットは内部に１または複数の部品を備えてよく、それらは暗示的に理解される。これらの部品は、互いに動作可能に結合され、上記ユニットの機能を実行するために互いに通信するように構成され得る。
【００１５】
たとえば動作ロボットなどの機械は、倉庫、流通センター、工場、または他の施設の指定されたエリア内で材料および他の製品を運ぶために用いられ得る。またそのような機械は、製品保管および倉庫または製品流通センターでの取出しの効率を高めるために、棚またはモバイルストレージユニット（ＭＳＵ）全体を動かしてもよい。動作ロボットは、指定されたエリアの所定のマップに基づき、設備、備品、ＭＳＵ、および障害物の下および周囲を走行するために推測航法を用いて（移動方向および距離を推定することによって位置を計算することによって）、床面を移動するように構成され得る。そのような機械は、既知の初期出発位置からの方向および距離を計算するために（たとえばホイールエンコーダからの）車輪回転数を用いてよい（この種の推測航法プロセスは、「オドメトリ」としても知られている）。
【００１６】
しかし、推測航法ナビゲーションシステムは、推定移動距離と実際の移動距離との不一致による有意な累積誤差に左右され得る。これらの不一致は、車輪のスリップ、機械の劣化、床面異常などによって生じ得る。推測航法ナビゲーションシステムは、不定期または定期的な（場合によっては人工ランドマークとも称される）絶対位置マーカの使用によって著しく改善され得る。
【００１７】
以下、いくつかの図にわたって類似の参照番号が同一または対応する部分を指す図面が参照される。
【００１８】
図１は、たとえば、各々がたとえばバーコード（１Ｄまたは２Ｄ）または他のパターンなどの印刷位置インディシアを有するマーカ１０５ａ〜１０５ｔの配列が、１または複数の機械が走行し得る床１００に固定され得る実装を示す。マーカの各々は、マーカの正確な位置および角度を感知することができるように構成され得る。いくつかの実施形態において、たとえば、位置インディシアはＱＲコード（クイックレスポンスコード）、データマトリクスコード、またはアズテックコードであってよい。図１において、点線の格子、軸マーキング（ｘおよびｙ）、および角度マーキングは、参照のために示されるだけであって、実際の床マーキングを表すものではない。マーカ１０５ａ〜１０５ｔは、人によって手動で、または機械によって、レーザガイダンスまたは他の同様の方法を用いて配置され得る。ただし実際は、マーカ位置は正確でないことがある。たとえばマーカ１０５ｇおよび１０５ｎは他のマーカに対し小さな位置オフセットを有し、マーカ１０５ｊおよび１０５ｋは他のマーカに対し小さな角度オフセットを有し得る。マーカ１０５ｑは、位置オフセットおよび角度オフセットの両方を有し得る。また、いくつかのマーカ（たとえば１０５ｓ）は破損しており（または破損を被り）、一部が完全に失われ得る。図１に示すマーカの配列、サイズ、形状、形式、および間隔は、限定的なものとして意図されない。当業者が認識するように、本開示の目的を達するためにマーカの他の多くの配列、サイズ、形状、形式、および間隔が利用されてよい。また、マーカは、全てが同一である（たとえば各々が同一のデータマトリクスコードまたはＱＲコードを有する）か、あるいは各マーカが独自のコードを有してよい。
【００１９】
いくつかの実施形態において、各機械は、機械がマーカに接近またはその上を転動する時にマーカ上の位置インディシアを取得（読取り）するための１または複数のセンサ（カメラ、レーザスキャナ、または他の撮像システム）および画像処理回路を組み込んでよい。機械は、マーカの位置インディシアを取得する度に、マーカの配置誤差を修正または補償するために情報を用い、マーカの正確な位置および方向に基づいて経路計画（たとえば距離および進行方向）を調整してよい。
【００２０】
いくつかの実施形態において、機械は、所望の移動方向における１つのマーカから最も近いマーカへの移動を漸次的に計画することによって進行してよい。たとえば、図１を参照すると、機械がマーカ１０５ａに始まりマーカ１０５ｈへ移動する必要がある場合、機械はまずマーカ１０５ａからマーカ１０５ｂへ移動し、次にマーカ１０５ｂからマーカ１０５ｃへ移動してよい。最終的に、機械は、マーカ１０５ｃからマーカ１０５ｈへ移動し得る。機械は、各中間マーカ（この例ではマーカ１０５ｂおよび１０５ｃ）に停止する必要はないが、マーカを通過またはマーカに接近するとマーカ上の位置インディシアを取得し、次のマーカへのナビゲーションにおける調整を行うためにこの情報を用いてよい。
【００２１】
この種の漸次的ナビゲーションを容易にするために、いくつかの実施形態において、マーカオフセット表が利用され得る。マーカオフセット表は、たとえば位置および／または角度オフセット（偏差）を含んでよく、機械が各マーカ（出発地）から最も近い近隣の各々（目的地）へ走行することを助ける。したがって、たとえば図１を参照すると、マーカオフセット表は、出発地としてのマーカ１０５ａ〜１０５ｔの各々についてエントリを含むとともに、機械が目的地としての最も近い近隣の各々（たとえば１つの実施形態において４つの近隣）へ走行するために必要な情報を含んでよい。たとえば出発地マーカ１０５ｈに関するエントリは、機械が目的地マーカ１０５ｃ、１０５ｇ、１０５ｉ、および１０５ｍへ走行するために必要な情報を含んでよい。マーカオフセット表内の各エントリに格納されたマーカオフセット値は、理想的には機械が位置偏差なく目的地マーカへ到達するように、（機械によって取得され復号された）出発地マーカの角度および／または位置に追加することが必要な位置および／または角度オフセットとして明示され得る。他の実施形態において、マーカオフセット表は、追加の情報を含んでよい。たとえばマーカオフセット表は、機械が目的地としての８つの（対角線を含む）最も近い近隣の各々へ走行するために必要な情報を含んでよい。
【００２２】
図２は、いくつかの実装に係る機械のためのナビゲーション経路を示す。目的地へのマーカオフセットが角度θを有する場合、機械は、図２において軸ＸおよびＹによって規定され示される通常枠内の通常経路２０５を計画し得る。しかし機械は実際、出発地マーカから目的地マーカへの角度オフセットに基づいて軸Ｘ’およびＹ’によって規定される回転した枠内の修正経路２１０を移動してよい。
【００２３】
いくつかの実施形態において、たとえば機械が他のマーカへ到達することを可能にする各マーカの角度オフセット、任意選択的移動方向を含む、設置マーカの初期マーカオフセット表を作成／校正するために、マーカの配列が設けられた床面積にわたり１または複数の機械がガイドされ得る。初期マーカオフセット表は、他の実施形態におけるマーカペアの１または複数に関する正確な位置オフセットを含んでよい。いくつかの実施形態において、この初期マーカオフセット表を確立するために用いられる機械は、基準機械であってよい。各基準機械は、正確な推測航法（オドメトリ）システムを有することが知られ、あるいはいくつかの実施形態において、（たとえば一般的な機械には組み込まれない）追加の絶対位置決めシステムを搭載してよい。
【００２４】
１つの実施形態において、基準機械は、現実世界動作環境（たとえば倉庫）内と同じエラー耐性のあるマーカのストリップ上で複数の機械を動かすことによって選択され得る。機械は、前面（面１）移動および背面（面２）移動の両方において何回か走行してよい。機械の２輪の動きに差がない場合、両方の面（すなわち面１および面２）において機械は同じ側で運転／逸脱し、あるいは（たとえば機械的ハードウェアによる何らかの理由で）全く逸脱しないはずである。マーカ校正オフセットの値は、面１移動および面２移動について個別にデータを用いて各マーカについて計算される。値が緊密に一致する（たとえば、面１および面２の校正オフセットの差が最小である）機械（複数も可）が基準機械として選択され得る。
【００２５】
いくつかの実施形態において、機械は、校正精度を高めるために、マーカ間で複数回ガイドされ得る。たとえば機械は、校正精度を高めるために、マーカペア間を１０〜１００回ガイドされ得る。いくつかの実装において、機械は最初、出発地マーカと目的地マーカとの間を１０回移動してよく、その度、目的地マーカにおける位置インディシアを取得し、必要な位置および／または角度オフセットを（機械またはサーバによって）計算する。計算は、これら１０のサンプルの結果の平均および標準偏差からなされ得る。その後追加の１０回の移動が行われ、累積的に２０のサンプル全ての結果の平均および標準偏差の同様の計算がなされ得る。このプロセスは、毎回１０回の移動を追加して繰り返され得る。特定のサンプルサイズの後、平均および標準偏差の変化が所定の閾値を下回り得る。これが最適なサンプルサイズ（Ｎ）と判定され得る。最終的な位置オフセットおよび／または角度オフセット値を計算するために、Ｎ個のサンプルの平均および標準偏差が計算され得る。プラスマイナス１標準偏差の範囲外である全ての値が除去され得る。
【００２６】
いくつかの実施形態において、通常動作を開始する前に、機械は、最初に上述した校正プロセス中に作成された参照表に基づいて、自身のマーカオフセット表を格納してよい。他の実施形態において、機械のマーカオフセット表は、サーバに格納され得る。通常動作中、各機械は、マーカに接近またはマーカ上を回動するとマーカから位置インディシアを取得するために、１または複数のセンサおよび画像処理回路を用いてよい。上述したように、機械は、取得したマーカの正確な位置および方向および目的地マーカに対する（オフセットマーカ表内の）オフセットに基づいて、自身の経路計画（たとえば距離および進行方向）を調整してよい。
【００２７】
機械またはサーバは、故障状態を診断し回復させるために、取得したマーカの位置および方向を用いてもよい。故障状態は、機械の外部（たとえば損失または誤配置マーカ、またはマーカにおける読取不可能な位置インディシア）、あるいは内部であってよい。内部故障は、たとえば摩耗または他の理由で損傷した車輪、機械的劣化（摩耗および裂傷）または故障、電子的障害、校正の損失、モータ性能の劣化などの非システムエラー、および、たとえばセンサ（たとえばカメラ）アライメントエラーおよび誤動作、車輪径の相違、ホイールベース寸法における変動、ホイールアライメントなどのシステムエラーを含んでよいがこれに限定されない。また、取得したデータに基づいて、床の起伏に関する予測がある程度なされ得る。
【００２８】
いくつかの環境下で、機械は、１または複数のマーカが失われ、または誤配置であることを決定してよい。他の状況下で、たとえば全てのマーカがオフセットエラーを示す場合、機械の位置決めシステムが故障していることが決定され得る。いくつかの場合、機械は、自身の位置決めシステムに修正または調整を行い、あるいは自身のドライブシステムを調整する（たとえば摩耗によって縮小した円周を考慮して一方の車輪を他方の車輪よりも速く回転させる）ことができる。他の状況において、機械は、故障または修正不可能なエラーが発生したことを示すために外部エンティティ（たとえばサーバ）への警告を生成してよい。
【００２９】
いくつかの実施形態において、中央サーバは時々、同じエリアで動作している全ての機械からのマーカ表を分析してよい。たとえば統計的分析は、機械に誤動作が存在するかを決定するために用いられ、あるいはたとえば読取不可能マーカまたは誤配置されたマーカなど他のシステム問題を示してよい。１つの例において、流通センターは、Ｍ個のマーカを備えたエリアを有してよく、その上をＮ個の機械が動作している。Ｎ個の機械の各々は、機械がマーカ上の位置インディシアを取得するとＭ個のマーカの各々に関する偏差値（位置および／または角度誤差）をサーバにアップロードしてよい。たとえばいくつかのマーカにおける偏差値が非常に高い標準偏差を有する場合、または多数の外れ値が存在し、これらの値が様々な機械に分布している場合、これらのポイントにおいて床に問題があると想定され得る。あるいは、１つの特定の機械がマーカの大半について非常に高い標準偏差を有し、他の機械は一貫した動きを示す場合、その機械が問題または故障を有すると結論付けられ得る。概して、様々なマーカにおける様々な機械に関する経時的なデータ（偏差値）の収集は、データ分析が、正確なナビゲーションに影響を及ぼす他の隠れたまたは新たな故障を発見することを可能にする。経年によって生じる摩耗および裂傷に関する補償／修正も可能であり得る。
【００３０】
図３は、本開示のいくつかの実施形態に係る機械の電子部品および電気機械部品の簡略化機能ブロック図を示す。機械３００は、少なくとも１つのプロセッサ３０５を含んでよい。プロセッサ３０５は、たとえばＩｎｔｅｌ（登録商標）から入手可能なＣｏｒｅ（登録商標）、Ｘｅｏｎ（登録商標）、Ａｔｏｍ（登録商標）、またはＰｅｎｔｉｕｍ（登録商標）、またはＡＭＤから入手可能なＦＸ（登録商標）、Ａｔｈｌｏｎ（登録商標）、またはＳｅｍｐｒｏｎ（登録商標）などの標準（既製）シングルコアまたはマルチコアマイクロプロセッサであってよく、あるいは、たとえばＡＲＭ（登録商標）Ｃｏｒｔｅｘ（登録商標）または他の組込みＡＲＭ（登録商標）プロセッサなどのシングルコアまたはマルチコア組込みプロセッサであってよい。いくつかの実施形態において、プロセッサ３０５は、プロプライエタリ、カスタム設計、または特定用途向け集積回路（ＡＳＩＣ）であってよい。バス３０７は、プロセッサ３０５を機械３００内の様々な他の部品に接続するために用いられ得る。メモリ３１０は、プロセッサ３０５によって（プロセッサ３０５によって実行される）プログラムコードおよびデータを格納するために用いられる、たとえば高速ランダムアクセスメモリ（ＲＡＭ）などの非一時的ストレージデバイスであってよい。ストレージ３１５は、たとえばハードディスクドライブ、ソリッドステートドライブ、またはフラッシュメモリデバイスなどの不揮発性非一時的ストレージデバイスであってよい。ストレージ３１５は一般に、メモリ３１０よりも高容量かつ低速度であり、プロセッサ３０５によって用いられるプログラムコードおよびデータを格納するためのマスストレージとして用いられ得る。通常動作中、プログラムコードおよびデータは、プロセッサ３０５によってメモリ３１０から実行される前に、ストレージ３１５からメモリ３１０へ転送され得る。いくつかの実施形態において、バス３０７は、複数のバスを含んでよい。たとえばバス３０７は、プロセッサ３０５と（たとえばメモリ３１０などの）高速部品とを接続するための高速バス、およびプロセッサ３０５と低速部品とを接続するための低速バスを含んでよい。
【００３１】
センサインタフェース３２０は、様々なセンサ３２５をプロセッサ３０５に接続するために用いられ得る。センサ３２５は、カメラ、レーザスキャナまたは撮像システム、アコースティック測距デバイス、（場合によってはロータリエンコーダまたはシャフトエンコーダと呼ばれる）車輪回転センサ、ジャイロセンサ、加速度計、ＲＦセンサ、および温度センサを含んでよいがこれらに限定されない。センサインタフェース３２０は、生センサ入力をデジタル形式に変換するように構成された回路（たとえばアナログデジタルコンバータ）を含んでよく、特定のセンサに関連する特定の機能を提供するための処理回路も含んでよい。たとえば画像処理回路は、センサ３２５（たとえばカメラおよび／またはレーザスキャナ）からの画像入力からマーカを識別するためにセンサインタフェース３２０に組み込まれ得る。運動制御装置１３０は、１または複数のホイールモータ３３５および駆動装置３４０をプロセッサ３０５に接続するために用いられ得る。機械３００は２つ以上の車輪を含んでよく、少なくとも１つの車輪が、機械３００を動かすために１または複数のホイールモータ３３５によって駆動され得る。機械３００は、１または複数の車輪を回転させる特定の操舵機構を有してよく、あるいは２つ以上の車輪における速度関係を変化させることによって操舵機能を実現させ得る。機械３００は、１または複数の駆動装置３４０を含んでもよい。駆動装置３４０は、機械３００を操舵するための操舵機構、材料、製品、モバイルストレージユニットなどを昇降するための昇降機構、および材料、製品、パッケージなどを掴み取り、載置し、または他の方法で動かすためのロボティックアームを含んでよいがこれに限定されない。
【００３２】
通信インタフェース３４５は、機械３００と据置エンティティ（コンピュータ、サーバ、ＰＣなど）との間の無線通信リンクを提供する。通信インタフェース３４５は、（ＷｉＦｉとも呼ばれる）ＩＥＥＥ８０２．１１規格無線ローカルエリアネットワークプロトコル、セルラデータネットワーク（３Ｇ、４Ｇ、ＬＴＥなど）、またはプロプライエタリ無線通信システムの１つを用いてよい。
【００３３】
また機械３００は、バッテリ、バッテリ充電器、照明素子、および他の付属部品も含んでよい。
【００３４】
図４は、本開示のいくつかの実施形態に係る自動故障診断プロセス４００の例のフロー図を示す。図４は、機械の性能レベルおよび故障の決定を可能にし得るナビゲーション技術の使用を示す。上述したように、本開示のいくつかの実施形態は、倉庫、流通センター、または工場の床に配置されたマーカを用いてよい。機械は、マーカの位置を追跡し走行するためにマーカ上の位置インディシアを用いてよい。ナビゲーション中に各機械によって収集されるデータもまた、ナビゲーション性能を測定し故障を検出するために用いられ得る。
【００３５】
自動故障診断プロセス４００のステップ４０５において、機械３００は、出発地マーカから目的地マーカへ走行してよい。機械３００は、目的地マーカへ移動するためのナビゲーション計画に用いられる格納された位置オフセットおよび／または角度オフセットを含むがこれに限定されないマーカオフセット表内のエントリを用いてよい。たとえば機械は、たとえばカメラおよび画像処理回路を用いて出発地マーカに対する自身の位置オフセットおよび／または角度オフセットを決定してよい。機械またはサーバは、決定された位置オフセットおよび／または角度オフセット、および出発地マーカと目的地マーカとのペアに関するマーカオフセット表内のエントリに基づいて、目的地マーカへの経路を計算してよい。
【００３６】
ステップ４１０において、目的地マーカまたはその付近に到着した機械３００は、たとえばカメラおよび画像処理回路を用いて目的地マーカにおける位置インディシアを取得してよい。
【００３７】
ステップ４１５において、機械３００は、マーカ上の位置インディシアに基づいて、目的地マーカの位置および／または角度を決定し格納してよい。機械３００またはサーバは、画像処理回路の出力からマーカ上の位置インディシアの中心を識別するための回路を用いてよい。機械３００またはサーバは、画像処理回路の出力からマーカ上の位置インディシアの角度を識別するための回路も用いてよい。マーカ位置は、機械３００における推測航法回路に基づいて機械および／またはサーバに格納され得る。たとえば機械３００は、出発地マーカから目的地マーカへの移動距離を測定するためにオドメトリを用いてよく、出発地マーカの位置を知った上で、目的地マーカの位置を推定してよい。
【００３８】
いくつかの実施形態において、ステップ４０５、４１０、および４１５は、マーカ位置データの追加のサンプルを収集するために繰り返され得る。これらのステップの繰り返しは、収集されたデータの一貫性によって決定され得る十分なサンプルが収集されるまで継続してよい（ステップ４２０）。
【００３９】
図５は、本開示のいくつかの実施形態に係る自動故障診断プロセス５００の例の他の態様のフロー図を示す。図５は、機械の性能レベルおよび故障の決定を可能にし得る処理技術の使用を示す。自動故障診断プロセス５００は、所定の頻度でマーカオフセット表内の各エントリについて実行され得る。
【００４０】
ステップ５０５において、収集されたデータは、マーカオフセットを推定するために統計技術を用いて処理され得る。いくつかの実施形態において、収集されたオフセットエントリの平均が計算され得る。いくつかの実施形態において、外れ値（たとえば平均から１標準偏差を超えるデータ値）は廃棄され得る（平均値を計算するために用いられない）。
【００４１】
ステップ５１０において、マーカが予想通りの（たとえばマーカオフセット表内のエントリと一致する）位置にあると決定された場合、プロセスは終了してよい。そうでない場合、ステップ５１５において、位置および／または角度誤差の理由の決定がなされ得る。機械３００またはサーバは、位置および／または角度誤差の理由を判定するために１または複数のセットの所定の基準を用いてよい。たとえば機械３００またはサーバは、単一のマーカの位置オフセットまたは角度オフセット偏差が第１の所定の閾値を超える場合、エラーはマーカの誤配置に起因し得ると決定してよい。いくつかの実施形態において、機械３００またはサーバは、遭遇したマーカ全ての位置オフセットまたは角度オフセット偏差が第２の所定の閾値を超える場合、エラーは機械の故障に起因し得ると決定してよい。他の実施形態において、サーバは複数の機械において発見されたエラーを評価してよく、マーカの特定のセットにおいて全てのまたは多数の機械がエラーを発見した場合、サーバは、エラーが１または複数の誤配置マーカに起因すると判定してよい。
【００４２】
ステップ５２０において、エラーが機械に起因すると決定された場合、ステップ５２５において、ステップ５０５で処理されたデータに基づいてマーカオフセット表に調整がなされ得る。
【００４３】
そうでない場合、ステップ５３０において、エラーに対処するために外部エンティティへ（たとえば制御卓またはサーバを介してシステムオペレータへ）警告が発され得る。
【００４４】
自動故障診断に関する本開示の実装は従来通り非常に有用であり、全ての機械は、故障が低レベルの劣化故障である場合でも人手の介入を必要とする。たとえば低レベルの劣化故障は、摩耗した車輪であってよい。不良な車輪は、機械をわずかに斜めに目的地に到達させ、または距離の測定におけるエラーを招き得る。本開示の実施形態は、車輪の１つに伴う欠陥を識別しようと努め、他の車輪と同じ距離をカバーするように車輪の回転を自動的に調整しようと試み得る。その結果、人手の介入範囲が最小限になり、それによって生じるあらゆる経費が最小限になり得る。
【００４５】
当業者には理解されるように、本開示の実施形態は、方法、システム、または非一時的ストレージデバイスに格納されたコンピュータプログラム製品として具体化され得る。したがって、本開示の実施形態は、全体がハードウェアの実施形態、ソフトウェアの実施形態、またはソフトウェアおよびハードウェアの態様を併用する実施形態の形式であってよく、全てが一般に本明細書において「回路」または「モジュール」と称される。また、本開示の実施形態は、媒体において具体化されたコンピュータ使用可能プログラムコードを有するコンピュータ使用可能記憶媒体におけるコンピュータプログラム製品の形式であってもよい。
【００４６】
また、本開示の実施形態は、本開示の実施形態に係る方法、装置（システム）、およびコンピュータプログラム製品のフロー図および／またはブロック図を参照して一部が上述された。
【００４７】
理解されるように、フロー図および／またはブロック図の各ブロック、およびフロー図および／またはブロック図内のブロックの組み合わせは、コンピュータプログラム命令によって実行され得る。これらのコンピュータプログラム命令は、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行する命令が、フローチャートおよび／またはブロック図のブロックまたは複数のブロックに記載された機能／動作を実行するための手段を生成するように、汎用プロセッサ、専用コンピュータ、または機械を生成するための他のプログラマブルデータ処理装置のプロセッサに提供され得る。
【００４８】
命令は、コンピュータ可読メモリに格納された命令が、フローチャートおよび／またはブロック図のブロックまたは複数のブロックに記載された機能／動作を実行する命令手段を含む製品を製造するように、コンピュータまたは他のプログラマブルデータ処理装置に特定の方法で機能するように指示することができるコンピュータ可読メモリに格納されてもよい。
【００４９】
命令は、コンピュータまたは他のプログラマブル装置において実行する命令が、フローチャートおよび／またはブロック図のブロックまたは複数のブロックに記載された機能／動作を実行するためのステップを提供するように、コンピュータまたは他のプログラマブル装置において一連の動作ステップを実行させコンピュータ実行プロセスを生成するために、コンピュータまたはスキャナ／チェックスキャナなどの他のプログラマブルデータ処理装置にロードされてもよい。
【００５０】
本明細書におけるフロー図は、自動故障診断のための方法、システム、およびコンピュータプログラム製品のいくつかの実施形態の機能および動作を示す。この点に関して、各ブロックは、特定の論理機能（複数も可）を実行するための１または複数の実行可能命令を備えるモジュール、セグメント、またはコードの一部を表し得る。また、他の実装において、ブロックに記載される機能（複数も可）は、図に記載された順序外で発生してもよいことに留意すべきである。たとえば連続して示された２つのブロックは、実際は実質的に同時に実行されてよく、またはブロックは、関連する機能に依存して、場合によっては逆の順序で実行されてもよい。
【００５１】
図面および明細書において、典型的な実施形態が開示された。本開示の多数の変更例および変形例が上記教示の観点から可能であることは明らかである。したがって、以下の特許請求の範囲において、実施形態は本明細書で具体的に説明されたもの以外で実施されてもよいことを理解すべきである。
【図１】
2018534691.tif 000003
【図２】
2018534691.tif 000004
【図３】
2018534691.tif 000005
【図４】
2018534691.tif 000006
【図５】
2018534691.tif 000007
【国際調査報告】
2018534691.tif 000008