(57)【要約】  本出願は、ロボットのスケジューリング、ロボットの経路制御、ロボットの消防制御方法、デバイス、サーバー、および記憶媒体を公開する。当該ロボットをスケジューリングするための方法は、スケジューリング命令を受信することと、前記スケジューリング命令に応答して、作業領域にあるロボットの作業状態と現在の位置を確定することと、ロボットの作業状態がアイドルで、且つ現在の位置が事前設定された目標範囲外の場合、ロボットを現在の位置から目標範囲内にスケジューリングすることとを含み、ここで、作業状態は、アイドル状態と非アイドル状態である。
2021522618.tif 000002
【特許請求の範囲】
【請求項１】
ロボットをスケジューリングするための方法であって、
スケジューリング命令を受け取ることと、
スケジューリング命令に応答して、作業領域中のロボットの作業状態と現在位置を確定し、ここで、前記作業状態には、アイドル状態および非アイドル状態を含むことと、
前記ロボットの作業状態がアイドル状態で、且つ、現在位置が事前設定された目標範囲外の情況で、前記ロボットを前記現在位置から目標範囲にスケジューリングすることとを含む、ロボットをスケジューリングするための方法。
【請求項２】
前記作業領域にあるロボットの作業状態の確定は、
作業領域のロボットが実行を待つタスクがあるか、あるいは実行中のタスクがあるかを判断することと、
前記ロボットが実行を待つタスクがないか、あるいは実行中のタスクがない判定結果に応じて、前記ロボットの作業状態がアイドル状態と確定し、前記ロボットが実行を待つタスクがあり、あるいは前記実行中のタスクがあるという判断結果に応じて、前記ロボットの作業状態が前記非アイドル状態であると確定することを含む、請求項１に記載の方法。
【請求項３】
前記ロボットを前記現在位置から前記目標範囲内にスケジューリングすることは、
前記目標範囲内で、前記ロボットの目標位置を確定することと、
前記現在位置から前記目標位置までの最適な経路を計算することと、
前記最適な経路に基づき、前記ロボットを前記現在位置から前記目標位置までスケジューリングすることとを含む、請求項１または請求項２に記載の方法。
【請求項４】
前記目標範囲内で前記ロボットの目標位置を確定することは、
前記目標範囲内で前記ロボットの計画位置を確定することと、
前記ロボットの計画位置が事前設定されたスケジューリング条件を満たしているかどうかを判断し、前記ロボットの計画位置が前記スケジューリング条件を満たす判断結果に応じ、前記ロボットの計画位置を前記ロボットの目標位置として確定することとを含む、請求項３に記載の方法。
【請求項５】
前記目標範囲を少なくとも一つのセルに分割し、前記ロボットの目標位置をセル単位で確定し、ここで、前記目標範囲の形状は長方形で、前記目標範囲は、事前設定された開始点位置と幅と高さによって確定される、請求項４に記載の方法。
【請求項６】
前記事前設定されたスケジューリング条件は、
前記ロボットが垂直に配置されている場合、前記ロボットの計画位置で水平に隣接するセルがアイドル状態である条件と、
前記ロボットが水平に配置されている場合、前記ロボットの計画位置で垂直に隣接するセルはアイドル状態である条件とを含む、請求項５に記載の方法。
【請求項７】
ロボットの数が前記目標範囲内に受け入れるロボットの数よりも多い場合は、目標範囲を再確定し、また、前記ロボットの作業状態がアイドル状態で、且つ現在位置が事前設定された目標範囲外にある場合、前記ロボットを前記現在位置から前記新しい目標範囲にスケジューリングすることをさらに含む、請求項１に記載の方法。
【請求項８】
ロボットをスケジューリングするための方法であって、
消防信号を受信することと、
消防信号に応答し、ロボットが移動状態にあり、且つ計画した経路の次のセルが事前設定された消防通路領域に位置する場合、前記ロボットを制御して前記次のセルに移動し、そして計画した経路に従い移動を続け、次のセルが事前設定された消防通路領域でなくなるまで移動し、移動を停止することとを含む、ロボットをスケジューリングするための方法。
【請求項９】
消防信号を受信した後、
前記ロボットは停止状態にあり、且つ前記ロボットの現在のセルが事前設定された消防通路領域にある場合は、前記ロボットの経路を再計画し、そして、前記ロボットを制御して、新たに計画された経路に沿って移動し、前記事前設定された消防通路領域を離れることをさらに含む、請求項８に記載の方法。
【請求項１０】
前記ロボットの経路を再計画し、そして、前記ロボットを制御して、新たに計画された経路に沿って移動し、前記事前設定された消防通路領域を離れることは、
前記ロボットと転送エンドポイントの間の距離と転送エンドポイントが配置されている所定の領域内のロボット密度の少なくとも一つに基づいて、前記ロボットの転送エンドポイントを選択することと、
選択した転送エンドポイントに基づき前記ロボットの経路を再計画し、前記ロボットを制御し新たに計画された経路に沿って前記選択した転送エンドポイントに移動することを含む、請求項９に記載の方法。
【請求項１１】
前記消防信号は、消防緊急停止ボタンによってトリガーされるか、または外部インターフェースを通じて受信する、請求項８に記載の方法。
【請求項１２】
ロボットの経路の制御方法であって、前記ロボットの作業領域が複数のセルに分割し、
前記方法は、
前記ロボットが計画された経路に従って移動中、前記ロボットが配置されている現在のセルの作業状態を確定することと、
前記現在のセルがロック状態にあることが検出されると、前記ロボットを制御して移動を停止することと、
前記現在のセルがロック解除状態で、且つ次のセルがロック状態にあることが検出されると、前記次のセルを回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導することと、
前記現在のセルと次のセルの両方がロック解除状態にあることが検出されると、計画された経路に従って移動するように前記ロボットを誘導することを含む、ロボットの経路の制御方法。
【請求項１３】
前記ロボットの経路を計画する過程で、作業領域内のセルの作業状態を確定し、作業状態がロックされているセルが計画された経路上にないことをさらに含む、請求項１２に記載の方法。
【請求項１４】
前記作業状態がバッファ状態をさらに含み、前記方法は、
前記現在のセルがバッファ状態にあり、且つ次のセルがロック状態にあることを検出されると、前記次のセルを回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導することと、
前記現在のセルと次のセルの両方がバッファ状態にあることが検出されると、前記現在のセルがロック解除状態で、且つ前記次のセルがバッファ状態であるか、あるいは前記現在のセルがバッファ状態で、且つ前記次のセルがロック解除状態である場合、前記経路に従って移動するように前記ロボットを誘導することをさらに含む、請求項１２に記載の方法。
【請求項１５】
作業状態設定操作に応じて、前記作業状態設定操作により指定した少なくとも一つのセルの作業状態を、前記作業状態設定操作により指定した状態に設定することをさらに含む、請求項１２から１４のいずれか一項に記載の方法。
【請求項１６】
作業状態設定操作に応じて、前記作業状態設定操作により指定した少なくとも一つのセルの作業状態を、前記作業状態設定操作により指定した状態に設定することは、
任意のセルの作業状態に応じて、制御の操作を設定し、このセルの作業状態を指定の状態に設定し、あるいは、
任意のセル座標の操作を入力することに応じて、このセルの作業状態を指定の状態に設定することを含む、請求項１５に記載の方法。
【請求項１７】
前記計画された経路に駆動障害があることが検出されると、駆動障害が存在するセルがロック状態に設定されることをさらに含む、請求項１２に記載の方法。
【請求項１８】
前記現在のセルがロック解除状態で、且つ次のセルがロック状態にあることが検出されると、前記次のセルを回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導することは、
前記ロボットが、現在のサブ領域がロック解除状態にあり、且つ次のセルがロック状態にあることが検出されると、前記次のセルが事前設定された時間が経過した後も、ロック状態にあるかどうかを判断することと、
次のセルが事前設定された時間が経過した後もロック状態にあるという判断結果に応じ、前記次のセルを回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導することを含む、請求項１２に記載の方法。
【請求項１９】
フルフィールドロック操作に応じて、作業領域内のすべてのロボットを制御して移動を停止することをさらに含む、請求項１２に記載の方法。
【請求項２０】
少なくとも一つのプロセッサーと、
少なくとも一つのプログラムを格納する用に構成されたメモリと
を含み、
前記少なくとも一つのプログラムが少なくとも一つのプロセッサーによって実行され、請求項１から１８のいずれか一項に記載の方法を実現する、サーバー。
【請求項２１】
コンピュータプログラムを格納し、前記プログラムがプロセッサーによって実行される時に、請求項１から請求項１９のいずれか一項に記載の方法を実現する、コンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、出願日２０１８年０７月０２日に中国特許局に提出し、出願番号が２０１８１０７０８９０３．３であり、出願日が２０１８年０６月２１日であり、出願番号が２０１８１０６４３１１８．４および出願日が２０１８年０７月１７日であり、出願番号が２０１８１０７８５１３１．３であり、発明名称が「ロボットスケジューリング、ロボットの経路制御方法、サーバーおよび記憶媒体」との中国特許出願を基礎とする優先権を主張し、その開示の総てをここに取り込む。
【０００２】
本出願の実施形態はロボティクス、例えば、ロボットスケジューリング、ロボットの経路制御方法、サーバーおよび記憶媒体に関する。
【背景技術】
【０００３】
ロボティクスの発展は、ロジスティクス業界に新しいテクノロジーとイノベーションをもたらした。ロボットを使用し多数の労働者を置き換えることで、ロジスティクス分野の自動化を実現し、人件費を削減し、生産性の向上を促進できる。関連技術のロボットピッキングシステムは、移動ロボットを使用して、事前に設定されたスタッフの位置に貨物を運搬し、従来の「人から物へ」の貨物ピッキングモデルを「物から人へ」の貨物ピッキングモデルに変換し、従来の貨物ピッキングモデルを打ち破り、作業効率を効果的に向上させる。
【０００４】
多数の倉庫は１日２４時間連続稼働していないため、毎日出勤退勤時に、ロボットの電源をオンとオフをする必要がある。しかし、ロボットは倉庫内にランダムに配置されている場合があり、電源をオンとオフするときは、フィールドのいたるところでロボットを見つける必要があり、あるいは、制御端子を通じてロボットを手動で指定位置にスケジューリングし、つまり制御端子上で一台のロボットを選択し、そしてこのロボットと対応する指定位置を確定し、このロボットを指定位置にスケジューリングし、その後、スケジューリングの必要がある次の一台のロボットを選択し、上記の操作を繰り返し、フィールドのすべてのロボットが指定位置までスケジューリングされる。ただし、これら２つの方法は、間違いなくユーザーの使用コストを増加させ、スタッフの作業効率を低下させる。
【０００５】
さらに、倉庫の多くの資源、例えば、ロボット、棚、倉庫フロアのＱＲコード（登録商標）なども不定期のメンテナンスが必要である。ロボットピッキングシステムをメンテナンスする前に、ロボットを手動で指定領域にスケジューリングし、メンテナンス担当者が点検できるように、ロボットが、メンテナンスしなければならないＱＲコード（登録商標）またはフロアの棚をブロックしないようにする。ただし、毎回メンテナンスの前に手動でロボットをスケジューリングする必要があり、スタッフの運用とメンテナンスのコストが増加する。
【０００６】
ロジスティクス倉庫では、例えばロボットの交通事故や商品の落下など、突発的事態の発生を避けることができず、あるいは、例えば、棚の点検やフロアのＱＲコード（登録商標）のクリーニングや交換など、基本的な倉庫基礎資源を定期的にメンテナンスする必要がある。
【０００７】
関連技術は、特定の領域でロボットの動作を全て停止すると、他の領域または領域全体の動作に影響を与える可能性がある。関連技術のロボットのモーションモードは、さまざまな上流システムの業務要件や突発的事態の処理要件を満たすことができず、生産に影響を与えない前提のもと、安全迅速に運用とメンテナンスのスタッフが倉庫に入り、生産秩序の回復を実現できない。ロジスティクスの分野では、倉庫は資材を一元的に保管する場所であり、一旦火災が発生すると、経済的損失は巨大で、社会的影響が大きく、結果は深刻である。したがって、倉庫の消防安全を十分に行い、保管されている物資の安全を保障し、火災の隠れた危険を減らすことが非常に重要である。
【０００８】
倉庫では、消防警報が発せられると、すべてのロボットが動きを停止し、そして、ロボットを消防通路から人為的に移動させるが、作動中のロボットは、遅延エラーにより作動し続けたり、または急ブレーキにより突発的事故を引き起こしたりする場合があり、且つ、この方法は非効率的で、多くの時間と労力を消費し、救助活動に影響を与える可能性がある。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本出願は、ロボットスケジューリング、ロボットの経路制御方法、サーバーおよび記憶媒体を提供し、上記の問題中の少なくとも一つを解決する。
【課題を解決するための手段】
【００１０】
本出願は、ロボットスケジューリングを提供し、前記方法は、
スケジューリング指示を受け取ることと、
スケジューリング指示に応じて、作業領域中のロボットの作業状態と現在位置を確定しここで、前記作業状態には、アイドル状態および非アイドル状態を含むことと、
前記ロボットの作業状態がアイドル状態で、且つ、現在位置が事前設定された目標範囲外の場合、前記ロボットを前記現在位置から前記目標範囲内にスケジューリングすることとを含む。
【００１１】
本出願の実施形態はさらに、サーバーを提供し、前記サーバーは、
少なくとも一つのプロセッサーと、及び、
前記少なくとも一つのプロセッサーと通信して接続されたメモリとを含み、
前記メモリは、前記少なくとも一つのプロセッサーによって実行できる命令が格納され、前記命令は、前記少なくとも一つのプロセッサーによって実施され、前記少なくとも一つのプロセッサーは、前記実施形態のいずれかによる方法を実行することができる。
【００１２】
本出願の実施形態は、さらに記憶媒体を提供し、コンピュータで実行可能な命令が格納され、前記コンピュータで実行可能な命令は、前記実施形態のいずれかによる方法を実行するように構成される。
【００１３】
本出願の実施形態は、ロボットをスケジューリングするための方法、サーバーと記憶媒体を提供し本出願では、最初にロボットの作業状態とロボットの現在位置を確定し、ここで、作業状態は、アイドル状態と非アイドル状態が含み、当該ロボットの作業状態がアイドル状態で、且つ、現在位置が事前設定された目標範囲外の時、ロボットを現在位置から目標範囲内にスケジューリングすることができる。つまり、本出願の実施形態が提出した技術的な解決策では、ロボットの作業状態がアイドル状態で、且つ、現在位置が事前設定された目標範囲外の時、領域に集まるようにロボットをスケジューリングすることができ、指定領域内にロボットを自動スケジューリングすることが実現でき、そして運用とメンテナンスのコストを削減でき、作業効率を向上させることができる。
【００１４】
本出願の実施形態は、ロボットの経路制御方法を提供し、前記ロボットの経路制御方法は、
前記ロボットが計画された経路に従い移動する過程で、前記ロボットが配置されている現在のサブ領域の作業状態を確定することと、
前記現在のサブ領域がロック状態にあることを検出した場合、前記ロボットを制御して作動を停止することと、
前記現在のサブ領域がロック解除状態にあり、且つ次のサブ領域がロック状態にあることを検出した場合、サブ領域を回避するため前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導することと、
前記現在のサブ領域と次のサブ領域の両方がロック解除状態にあることを検出した場合、前記ロボットは前記経路に従って移動するように誘導することとを含む。
【００１５】
本出願の実施形態は、さらにサーバーを提供し、前記サーバーは、
一つのまたは複数のプロセッサーと、
一つのまたは複数のプログラムを格納するために設定されたメモリとを含み、
前記一つまたは複数のプログラムが、前記一つまたは複数のプロセッサーによって実行され、前記一つまたは複数のプロセッサーは、前記のようなロボットの経路制御方法を実現させる。
【００１６】
本出願の実施形態は、さらにコンピュータ可読記憶媒体を提供し、前記コンピュータ可読記憶媒体は、コンピュータプログラムを格納し、前記プログラムがプロセッサーによって実行されるとき、前記のようなロボット経路制御方法を実現する。
【００１７】
本出願の実施形態は、ロボットが計画された経路に従い移動する過程を通じて、前記ロボットが配置されている現在のサブ領域の作業状態を確定し、もし前記現在のサブ領域がロック解除状態にあり、且つ次のサブ領域がロック状態にあることを検出した場合、つまり再計画された経路に従って移動するように前記ロボットを誘導する。本出願の実施形態が提供する技術的な解決策は、ロボットが移動中、サブ領域の作業状態に基づきリアルタイムで経路を調整でき、ロボットの移動経路をより柔軟に制御し、制御効率を向上させることができる。
【００１８】
本出願の実施形態は、ロボットをスケジューリングするための方法を提供し、
消防信号を受信することと、
消防信号に応じて、ロボットが移動状態にあり、且つ前記ロボットのナビゲーション経路の次のサブ領域が事前設定された消防通路領域に位置する場合、前記ロボットを制御して前記次のサブ領域に移動し、そして前記ナビゲーション経路に従い移動を続け、次のサブ領域が事前設定された消防通路領域でなくなるまで移動し、移動を停止することを含む。
【００１９】
本出願の実施形態は、さらにサーバーを提供し、前記サーバーは、
一つのまたは複数のプロセッサーと、
一つのまたは複数のプログラムを格納するために設定されたメモリとを含み、
前記一つまたは複数のプログラムが、前記一つまたは複数のプロセッサーによって実行され、前記一つまたは複数のプロセッサーは、前記のようなロボットをスケジューリングするための方法を実現させる。
【００２０】
本出願の実施形態は、さらにコンピュータ可読記憶媒体を提供し、それにコンピュータプログラムを格納し、前記プログラムがプロセッサーによって実行されるとき、前記のようなロボットをスケジューリングするための方法を実現する。
【発明の効果】
【００２１】
本出願の実施形態は、消防信号を受信することにより、消防信号に応じて、もしロボットが移動状態にあり、且つロボットのナビゲーション経路の次のサブ領域が事前設定された消防通路領域にあるなら、つまりロボットを制御して前記次のサブ領域に移動し、ナビゲーション経路に従い移動を続け、次のサブ領域が事前設定された消防通路領域でなくなるまで移動し、移動を停止する。本出願の実施形態が提供する技術的な解決策は、作動状態のロボットに対し、遅延エラーや急ブレーキによる問題を回避し、ロボットが消防通路を離れる効率を向上させることができる。
【図面の簡単な説明】
【００２２】
【図１】一実施形態中のロボットスケジューリングシステムの構造模式図。
【図２】一実施形態中のロボットをスケジューリングするための方法のフローチャート。
【図３】一実施形態中の別のロボットをスケジューリングするための方法のフローチャート。
【図４】一実施形態中のロボットの目標範囲内の分布模式図。
【図５】一実施形態中のロボットスケジューリング装置の構造模式図。
【図６】一実施形態が提供するサーバーの構造模式図。
【図７】一実施形態中のロボットの経路制御方法のフローチャート。
【図８】一実施形態中の別のロボットの経路制御方法のフローチャート。
【図９】一実施形態中のマップ操作インターフェースのロックされたサブ領域の構造模式図。
【図１０】一実施形態中のロボットの経路制御装置の構造模式図。
【図１１】一実施形態中の別のサーバーの構造模式図。
【図１２】一実施形態中の貨物ピッキングシステムのシステム構造模式図。
【図１３】一実施形態中のロボットをスケジューリングするための方法のフローチャート。
【図１４】一実施形態中の消防通路領域の模式図。
【図１５】一実施形態中のロボットスケジューリング装置の構造模式図。
【図１６】一実施形態中の別のサーバーの構造模式図。
【発明を実施するための形態】
【００２３】
以下、本出願に対し図面および実施形態と合わせて説明する。理解できることは、ここで説明される具体的な実施形態は、本出願を説明するためのみ使用され、本出願に対する限定ではない。この他さらに説明が必要なのは、説明を簡単にするために、図面は本出願の関連する部分のみを示しており、すべての構造を示しているわけではない。
【００２４】
本出願の実施形態は、ロボットをスケジューリングするための方法を提供し、当該ロボットをスケジューリングするための方法はロボットスケジューリングシステムに使用され、図１は実施形態中のロボットスケジューリングシステムの構造模式図で、図１に示すように、ロボットスケジューリングシステムは一般的に、操作端子１０１、サーバー１０２と少なくとも一つのロボット１０３を含む。サーバー１０２は、それぞれ、操作端子１０１およびロボット１０３との通信リンクを確立し、操作端子１０１は、スタッフが入力した操作情報を受信するように設定されており、例えば、ユーザーは、人間とコンピュータの相互作用インターフェースを通じて、操作端子で操作情報を入力でき、倉庫内のロボット１０３のスケジューリング制御を実現する。サーバー１０２は、操作端子１０１が受信した操作情報と倉庫内の実情に基づき設定され、作業命令を生成してロボット１０３に送信し、ロボット１０３は、受信した作業命令に基づき、作業命令に対応する作業タスクを完了するように設定される。
【００２５】
図２は一実施形態中のロボットをスケジューリングするための方法のフローチャートで、本実施形態は、ロボットをスケジューリングする場合に適用でき、この方法は、ロボットスケジューリング装置により実行でき、図２に示すように、当該ロボロボットをスケジューリングするための方法は、以下のステップを含む。
【００２６】
ステップ１１０では、ロボットの作業状態と現在位置を確定し、ここで、作業状態には、アイドル状態と非アイドル状態を含む。
【００２７】
一実施形態中、ロボットの作業状態と現在位置を確定する前に、さらにスケジューリング命令の受信を含み、ロボットの作業状態と現在位置を確定し、スケジューリング命令に応じて、作業領域にあるロボットの作業状態と現在位置を確定することを含む。
【００２８】
一実施形態中、ロボットは目標ロボットを指す。目標ロボットは、倉庫内のロボットを指すが、目標領域内の任意のロボットではない。目標ロボットは、スタッフが操作端子で入力した、あるロボットの番号で、このとき、この番号のロボットが目標ロボットである。このスタッフが操作端子で集合コマンド（スケジューリング命令）を入力する時、サーバーは倉庫内のすべてのロボットをトラバースし、サーバーが現在照会しているロボットを目標ロボットとして確定する。
【００２９】
本実施形態中、以下の方法でロボットの作業状態を確定することができる。ロボットが実行を待つタスクがあるか、あるいは実行中のタスクがあるかを判断し、実行を待つタスクはなく、実行中のタスクもないというロボットの判断結果に応じて、ロボットの作業状態がアイドル状態と確定し、ロボットに実行を待つタスクがあり、または実行中のタスクがあるという判断結果に応じて、ロボットの作業状態が非アイドル状態であると確定する。
【００３０】
実行を待つタスクはサーバーがすでに送信した作業命令を受信したことを指し、ロボットがタスクを実行中のため、この作業命令に対応するタスクをすぐに実行できず、あるいは、ロボットはサーバーがすでに送信した作業命令を受信し、タスクを実行する途中にある。
【００３１】
ロボットの現在位置を確定する方法は、ロボットの作業環境あるいはロボットの主な作業タスクに基づき、異なる技術的な解決策を採用することができる。
【００３２】
本出願の実施形態は、ＱＲコード（登録商標）に基づきロボットの現在位置を確定する方法を提供する。事前にロボットの作業領域のフロア上の異なる座標値のＱＲコード（登録商標）を用い順次カバーし、すなわち、ロボットの作業領域のフロアは、同じ辺の長さのセルに均等に分割され、各セルは、異なる座標値のＱＲコード（登録商標）を用い順次カバーする。各ＱＲコード（登録商標）に対応する座標値は、このフロア上のＱＲコード（登録商標）の位置に対応する。ロボットは、現在ある位置に対応するＱＲコード（登録商標）を取得し、その後、取得したＱＲコード（登録商標）が対応する座標値に基づきロボットの現在位置を確定する。
【００３３】
ステップ１２０では、ロボットの作業状態がアイドル状態で、且つ、現在位置が事前設定された目標範囲外の時、ロボットを現在位置から目標範囲内にスケジューリングする。
【００３４】
一実施形態中、目標範囲の形状は長方形で、目標範囲は、事前設定された開始点位置、事前設定された幅、および事前設定された高さによって確定する。
【００３５】
事前設定された目標範囲は、倉庫フロア上のアイドル領域を指し、このアイドル領域は倉庫内のロボットの位置に基づき随時設定できる。すなわち、スタッフが操作端子で集合コマンドを入力すると、サーバーは倉庫内でアイドル領域を探す。一実施形態中、このアイドル領域は、スタッフの作業台に近い領域を優先的に選択する。例を示すと、事前設定された目標範囲の選択は、以下のコマンドにより実行される。
【００３６】
＜！    ロボット集合領域  ＞
＜ｌｏｇｏｕｔｚｏｎｅ  ｘ  ＝「９」、ｙ＝「６」、  ｗ＝「１４」、ｈ＝「２」／＞
【００３７】
ここで、ｘ、ｙは目標範囲の始点の座標値で、ｘ＝「９」、ｙ＝「６」は、目標範囲の開始点が、横軸が９、縦軸が６のセルを表す。ｗ、ｈは目標範囲の長さと高さを表し、ｗ＝「１４」は目標範囲の長さは１４セルを表し、ｈ＝「２」は目標範囲の高さは２セルを表す。
【００３８】
ロボットの現在位置が事前設定された目標範囲外の場合、ロボットの作業状態を確定し、ロボットの作業状態がアイドル状態の場合、ロボットを現在位置から目標範囲内にスケジューリングする。
【００３９】
ロボットの現在位置が事前設定された目標範囲外の場合、ロボットの作業状態を確定し、ロボットの作業状態が非アイドル状態の場合、非アイドル状態のロボットをスキップして、ロボットの作業状態と現在位置を続けて照会し、非アイドル状態のロボットは如何なる処理も行わない。
【００４０】
ロボットの現在位置が事前設定された目標範囲内の場合、事前設定された目標範囲のロボットをスキップして、ロボットの作業状態と現在位置を続けて照会し、事前設定された目標範囲のロボットは如何なる処理も行わない。
【００４１】
ロボットの数が目標範囲に受け入れるロボットの数よりも多い場合は、新しい目標範囲を再確定し、そしてロボットの作業状態がアイドル状態で、且つ現在位置が事前設定された目標範囲外にある場合、ロボットを現在位置から新しい目標範囲内にスケジューリングする。
【００４２】
本出願の実施形態は、ロボットをスケジューリングするための方法を提供する。この方法はまずロボットの作業状態と現在位置を確定し、ここで、作業状態には、アイドル状態と非アイドル状態を含み、当該ロボットの作業状態がアイドル状態で、且つ現在位置が事前設定された目標範囲外にある場合、ロボットを現在位置から目標範囲内にスケジューリングすることができる。すなわち、本出願の実施形態が提出した技術的な解決策では、当該ロボットの作業状態がアイドル状態であり、且つ現在位置が事前設定された目標範囲外にある場合、目標ロボットを指定領域に集合するようにスケジューリングでき、自動的にロボットを指定領域へスケジューリングでき、そして運用とメンテナンスコストを削減し、作業効率を向上させることができる。
【００４３】
図３は一実施形態中の別のロボットをスケジューリングするための方法のフローチャートで、本実施形態は上記実施形態の基礎のもと、「ロボットを現在位置から目標範囲内にスケジューリングする」という特徴に対し説明し、図３に示すように、当該ロボットをスケジューリングするための方法は、以下のステップを含む。
【００４４】
ステップＳ２１０では、ロボットの作業状態と現在位置を確定し、ここで、作業状態には、アイドル状態と非アイドル状態を含む。
【００４５】
ステップＳ２２０では、ロボットの作業状態がアイドル状態で、且つ、現在位置が事前設定された目標範囲外の時、目標範囲内でロボットの目標位置を確定する。
【００４６】
本実施形態中、目標範囲は少なくとも一つのセルに分割され、ロボットの目標位置をセル単位で確定し、ここで、目標範囲は、目標範囲の開始位置とスケジューリング条件により確定する。ロボットの現在位置が事前設定された目標範囲外にある場合、ロボットの作業状態を確定し、ロボットの作業状態がアイドル状態の場合、目標範囲内で目標ロボットの目標位置を確定する。
【００４７】
本実施形態中、目標位置は、ロボットが目標範囲内にとどまる位置を指す。本実施形態は、ロボットが目標範囲内に集合時の分布位置の方法を提供する。図４は一実施形態中のロボットの目標範囲内の分布模式図である。図４に示すように、円形３０１は、ロボットが目標範囲に集合時にとどまる位置を表し、点線の長方形３０２は、倉庫内の棚の位置を表し、空白セル３０３は、倉庫フロア内のロボットが移動するための空きスペースを表す。
【００４８】
本実施形態は、一つの状況だけを示し、倉庫内のアイテムの位置を制限しない。ロボットに移動通路を提供するために、空白セル３０３の間に通路を形成しなければならない。円形３０１は、水平または垂直に配置することができ、且つ、アイドル状態のロボットがアイドル状態領域に集合している限り、目標範囲の形状も制限されない。
【００４９】
目標範囲内でロボットの目標位置を確定することは、具体的に、目標範囲内でロボットの計画位置を確定し、ロボットの計画位置が事前設定されたスケジューリング条件を満たしているかどうかを判断し、ロボットの計画位置がスケジューリング条件を満たす場合に応じて、ロボットの計画位置をロボットの目標位置として確定することを含む。
【００５０】
ロボットの計画位置は、サーバーが目標範囲内で先に任意に選択した一つの位置を指す。目標範囲の開始点に基づき要件に応じて選択した位置とすることもできる。事前設定されたスケジューリング条件は、ロボットがこの計画位置にとどまっている場合、その他のロボットの移動に影響を与えず、ロボットが移動する必要がある場合、その他のロボットの位置を調整する必要がなく、当該ロボットは早く出ることができる。一実施形態中、事前設定されたスケジューリング条件は、ロボットが垂直に配置されている場合、ロボットの計画位置で水平に隣接するセルがアイドル状態であり、ロボットが水平に配置されている場合、ロボットの計画位置で垂直に隣接するセルはアイドル状態であることを含む。ロボットの計画位置がスケジューリング条件を満たしている場合、ロボットの計画位置をロボットの目標位置として確定する。スケジューリング条件を満たすロボットの目標位置はすべて一つの位置で区切られ、つまり、スケジューリング条件を満たすロボットの目標位置は一つのセルで区切られる。
【００５１】
例を示すと、図４に示すように、図４のセルの左から右への座標を、（１，１）、（１，２）、（１，３）、（１，４）、（１，５）、（１，６）、（１，７）、（１，８）、（１，９）、（１，１０）とマークし、図４のセルの下から上への座標を、（１，１）、（２，１）、（３，１）、（４，１）、（５，１）、（６，１）、（７，１）、（８，１）、（９，１）、（１０，１）、（１１，１）とマークする。座標値（１，１）のセルを目標範囲の開始点とし、座標値（１，１）のセルを計画位置とし、座標値（１，１）のセルが、現在のロボットを除く他のロボットの目標位置であるかどうかを判断し、座標値（１，１）のセルが、現在のロボットを除く他のロボットの目標位置ではない場合、座標値（１，１）のセルが、実行時に他のロボットの移動時に通過する必要のある経路のセルであるかどうかを判断する。座標値（１，１）のセルが、他のロボットが移動時に通過する必要のある経路のセルではない場合、座標値（１，１）のセルを現在のロボットの目標位置とする。座標値（１，１）のセルが、他のロボットが移動時に通過する必要のある経路のセルである場合、現在の計画位置が不合理であることを説明し、フロア内の他の位置を新たに選択し計画位置とする。
【００５２】
一実施形態中、座標値（１，１）のセルをロボットの目標位置とする場合、次のロボットに対応する計画位置は、座標値（１，１）のセルから一つのセルで区切られた位置を選択でき、すなわち、座標値（１，３）または（３，１）のセルを計画位置とする。
【００５３】
倉庫内のすべてのロボットをトラバースし、目標範囲外のアイドル状態のロボットが作業状態でなくなるまで、つまり、すべての作業状態がアイドル状態のロボットが目標範囲内で集合する。あるいは、目標範囲内で、すでにスケジューリング条件に符合する目標位置がない。
【００５４】
ステップＳ２３０では、現在位置から目標位置までの最適な経路を計算する。
【００５５】
本実施形態中、事前に初期化経路図を作成しておく必要があり、初期化経路は如何なる貨物もない状態で設計される。初期化経路図は、多くの水平および垂直のラインセグメントで構成され、これらのラインセグメントは、ロボット歩行のシーケンスを形成する。ロボットは、いかなる障害物もないフロアで、左右あるいは上下方向に任意に前後に歩行できる。
【００５６】
ロボットの現在位置と目標位置を確定した後、現在位置から目標位置までのすべての可能な経路を計算し、現在位置と目標位置の間の最短経路を確定し、ロボットの計画経路とする。現在のロボット以外の他のロボット移動経路が、現在のロボットの計画経路と重複したセルかどうかを判断し、この現在のロボット以外の他のロボットの移動経路に、現在のロボットの計画経路と重複したセルがない場合、現在の位置と目標位置の間の最短経路を現在のロボットの最適な経路とする。
【００５７】
この現在のロボット以外の他のロボットの移動経路に、現在のロボットの計画経路と重複したセルがあることを除き、現在のロボットからこの重複したセルまでの時間と他のロボットからこの重複したセルまでの時間を計算し、現在のロボットから各重複したセルまでの時間が他のロボットから対応する重複したセルまでの時間が異なる場合、現在の位置と目標位置の間の最短経路を現在のロボットの最適な経路とする。
【００５８】
現在のロボットから任意の重複したセルまでの時間が他のロボットから対応する重複したセルまでの時間が同じである場合、現在位置と目標位置の間のその他の経路を新たに選択し、現在のロボットの計画経路とする。且つ、上記のステップに基づき、この計画経路が最適な経路になるかどうかを新たに計算する。
【００５９】
ステップＳ２４０では、最適な経路に基づき、ロボットを現在位置から目標位置にスケジューリングする。
【００６０】
現在位置から目標位置までの最適な経路を計算した後、最適な経路のソリューションをロボットに送信し、最適な経路に基づき現在位置から目標位置までロボットを駆動させ、ロボットの集合を完成させる。
【００６１】
本出願の実施形態は、ロボットをスケジューリングするための方法を提供する。まずロボットの作業状態と現在位置を確定し、ここで、作業状態には、アイドル状態と非アイドル状態を含み、当該ロボットの現在位置が事前設定された目標範囲外にあり、且つ作業状態がアイドル状態の場合、目標範囲内で、ロボットの目標位置を確定し、現在位置から目標位置までの最適な経路を計算し、最適な経路に基づき、ロボットを現在位置から目標位置までスケジューリングする。すなわち、本出願の実施形態が提出した技術的な解決策では、当該ロボットの現在位置が事前設定された目標範囲外にあり、且つ作業状態がアイドル状態の場合、目標ロボットを指定領域に集合するようにスケジューリングでき、自動的にロボットを指定領域へスケジューリングでき、そして、運用とメンテナンスコストを削減し、作業効率を向上させることができる。
【００６２】
図５は一実施形態中のロボットスケジューリング装置の構造模式図であり、本実施形態は、スケジューリングロボットの情況に適用でき、図５に示すように、当該ロボットスケジューリング装置は、以下の部品、確定モジュール４１０とスケジューリングモジュール４２０を含むことができる。
【００６３】
確定モジュール４１０は、ロボットの作業状態と現在位置を確定するように構成される。ここで、作業状態には、アイドル状態と非アイドル状態を含む。
【００６４】
一実施形態中、上記の装置は、スケジューリング命令を受信するように構成された受信モジュールをさらに含む。確定モジュール４１０は、前記スケジューリング命令に応じて、作業領域にあるロボットの作業状態と現在位置を確定する。
【００６５】
スケジューリングモジュール４２０は、ロボットの作業状態がアイドル状態で、且つ現在位置が事前設定された目標範囲外の場合、ロボットを現在位置から目標範囲内にスケジューリングするよう構成される。
【００６６】
一実施形態中、確定モジュール４１０は、判断サブモジュール（図５に示さず）と確定サブモジュール（図５に示さず）を含む。ここで、判断サブモジュールは、ロボットが実行を待つタスクがあるか、あるいは実行中のタスクがあるかを判断するよう構成される。確定サブモジュール４１０２は、実行を待つタスクはなく、実行中のタスクもないというロボットの判断結果に応じて設定し、ロボットの作業状態がアイドル状態と確定し、ロボットに実行を待つタスクがあり、または実行中のタスクがあるという判断結果に応じて、ロボットの作業状態が非アイドル状態であると確定する。
【００６７】
一実施形態中、スケジューリングモジュール４２０は、計算サブモジュール（図５に示さず）とスケジューリングモジュール（図５に示さず）を含む。ここで、計算サブモジュール４２０１は、ロボットの作業状態がアイドル状態で、且つ現在位置が事前設定された目標範囲外の場合に、目標範囲内でロボットの目標位置を確定し、現在位置から目標位置までの最適な経路を計算する。スケジューリングサブモジュール４２０２は、最適な経路に基づき、ロボットを現在位置から目標位置にスケジューリングするように構成される。
【００６８】
一実施形態中、計算サブモジュールは、以下の方法で目標範囲内で確定したロボットの目標位置を確定するように構成される。目標範囲内でロボットの計画位置を確定し、ロボットの計画位置が事前設定されたスケジューリング条件を満たしているかどうかを判断し、目標ロボットの計画位置がスケジューリング条件を満たす場合、ロボットの計画位置をロボットの目標位置として確定する。
【００６９】
一実施形態中、前記目標範囲は少なくとも一つのセルに分割され、前記ロボットの目標位置をセル単位で確定し、ここで、前記目標範囲は、前記目標範囲の開始位置とスケジューリング条件により確定する。
【００７０】
一実施形態中、目標範囲の形状は長方形で、目標範囲は、事前設定された開始点位置、事前設定された幅、および事前設定された高さによって確定する。
【００７１】
一実施形態中、前記事前設定されたスケジューリング条件は、前記ロボットが垂直に配置されている場合、前記ロボットの計画位置で水平に隣接するセルがアイドル状態であり、前記ロボットが水平に配置されている場合、前記ロボットの計画位置で垂直に隣接するセルはアイドル状態であることを含む。
【００７２】
一実施形態中、前記装置は、さらに、ロボットの数が前記目標範囲内に受け入れるロボットの数よりも多い場合、新たに目標範囲を再確定し、そして前記ロボットの作業状態がアイドル状態で、且つ現在位置が事前設定された目標範囲外にある場合、前記ロボットを前記現在位置から前記新しい目標範囲にスケジューリングする。
【００７３】
本出願の実施形態は、ロボットスケジューリング装置を提供する。当該ロボットスケジューリング装置は以下の操作を実行するように構成される。まずロボットの作業状態と現在位置を確定し、ここで、作業状態には、アイドル状態と非アイドル状態を含み、当該ロボットの作業状態がアイドル状態で、且つ現在位置が事前設定された目標範囲外にある場合、ロボットを現在位置から目標範囲にスケジューリングすることができる。すなわち、本出願の実施形態が提出した技術的な解決策では、ロボットの作業状態がアイドル状態であり、且つ現在位置が事前設定された目標範囲外にある場合、ロボットを指定領域に集合するようにスケジューリングでき、自動的にロボットを指定領域へスケジューリングでき、そして運用とメンテナンスコストを削減し、作業効率を向上させることができる。
【００７４】
本出願の実施形態が提供するロボットスケジューリング装置は、本出願の任意の実施形態が提供するロボットをスケジューリングするための方法を実行することができ、対応する機能モジュールの実行と有益な効果を備える。
【００７５】
図６は実施形態が提供するサーバーの構造模式図である。図６は、本出願の実施方式を実施するのに適した例示的なサーバー５１２のブロック図を示す。図６に示されるサーバー５１２は単なる一つの例であり、本出願の実施形態の機能および使用範囲にいかなる制限ももたらしてはならない。
【００７６】
図６に示すように、サーバー５１２は汎用デバイスの形式で表される。サーバー５１２の構成要素は、一つのあるいは複数のプロセッサーあるいはプロセッサー５１５、システムメモリ５２８、異なるシステム構成要素（システムメモリ５２８とプロセッサー５１５を含む）を接続するバス５１８を含むことができるが、これらに限定されない。
【００７７】
バス５１８は、いくつか種類のバス構造の一つまたは複数の種類を表し、メモリバスあるいはメモリコントローラと、周辺バスと、グラフィック加速ポートと、プロセッサーとあるいは複数の種類のバス構造の中の任意のバス構造を使用したローカルバスを含む。例を挙げると、これらの体系構造には、工業標準の体系構造（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ，ＩＳＡ）バス、マイクロチャネル体系構造（ＭｉｃｒｏＣｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ，ＭＣＡ）バス、増強型ＩＳＡ  バス、ビデオエレクトロニクス標準協会（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ，ＶＥＳＡ）ローカルバスおよび周辺コンポーネントの相互接続（ＰｅｒｉｐｈｅｒａｌＣｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ，ＰＣＩ）バスを含むが、これらに限定されない。
【００７８】
一実施形態中、サーバー５１２は、多種のコンピュータシステム可読媒体を含む。これらの媒体は、サーバー５１２がアクセスできる利用可能な媒体にすることができ、揮発性および非揮発性媒体、取り外し可能および取り外し不可能な媒体を含む。
【００７９】
システムメモリ５２８は、揮発性メモリ形式のコンピュータシステムの可読媒体を含むことができ、例えば、ランダムアクセスメモリ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ，ＲＡＭ）５３０および、または高速キャッシュメモリ５３２である。サーバー５１２は、その他の取り外し可能および、または取り外し不可能な媒体、揮発性および、または非揮発性媒体のコンピュータシステムの記憶媒体を含むことができる。例を挙げると、ストレージシステム５３４は、取り外し不可能で揮発性でない磁気媒体（図６にまだ示されてないが、通常「ハードドライブ」と呼ぶ）を読みとり書きこみをすることができる。図６には示されてないが、取り外し可能な不揮発性ディスク（例えば「フロッピーディスク」）の読み取りと書き込み用のディスクドライブ、及び取り外し可能な不揮発性光ディスク（コンパクトディスク読み取り専用メモリ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ，ＣＤ−ＲＯＭ）、デジタルビデオディスク（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒ，ＤＶＤ−ＲＯＭ）あるいはその他の光学媒体）読み取りおよび書き込み用の光学ドライブを提供できる。これらの場合、各ドライブは、一つあるいは複数のデータ媒体インターフェースを通じてバス５１８に接続することができる。システムメモリ５２８は、少なくとも１つのプログラム製品を含むことができ、前記プログラム製品は、一セットの（例えば、少なくとも一つの）プログラムモジュールを備え、これらのプログラムモジュールは、本出願の任意の実施形態の機能を実行するように設定される。
【００８０】
一セットの（少なくとも一つの）プログラムモジュール５５２を備えたプログラムおよび、あるいはユーティリティ５５０は、例えば、システムメモリ５２８に格納することができ、このようなプログラムモジュール５５２は、オペレーティングシステムを含むが、これに限定されず、一つまたは複数のアプリケーションプログラムとその他のプログラムモジュールおよびプログラムデータは、これらの例のそれぞれ一つのまたは複数の種類のセットで、ネットワーク環境の実現を含むことができる。プログラムモジュール５５２は、通常、本発明の記載された実施形態における機能および、または方法を実行する。
【００８１】
サーバー５１２は、また、一つまたは複数の外部デバイス５１４（例えば、キーボード、ポインティングデバイス、ディスプレイ５２５など）と通信でき、さらに、ユーザーがサーバー５１２と対話できるようにする一つまたは複数のデバイスと通信することもができ、および、またはこのサーバー５１２が一つまたは複数の他のコンピューティングデバイスと通信することができる任意のデバイス（例えば、ネットワークカード、モデムなど）と通信する。この通信は、入力と出力（Ｉ／Ｏ）インターフェース５２２を通じて実行することができる。且つ、サーバー５１２はさらに、ネットワークアダプタ５２０を通じて、一つまたは複数のネットワーク（例えばローカルエリアネットワーク（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ，ＬＡＮ）、広域ネットワーク（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ，ＷＡＮ）および、または例えばインターネットのようなパブリックネットワーク）に通信できる。図６に示すように、ネットワークアダプタ５２０は、バス５１８とサーバー５１２を通じてその他のモジュールと通信する。理解していただきたいのは、図６にはまだ示されていないが、サーバー５１２はその他のハードウェアおよび、またはソフトウェアモジュールと組み合わせることができ、マイクロコード、デバイスドライバー、冗長処理ユニット、外部ディスクドライブアレイ、ディスクアレイ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｄｒｉｖｅｓ，ＲＡＩＤ）システム、テープドライブ、データバックアップストレージシステムなどが含まれるが、これらに限定されない。
【００８２】
プロセッサー５１５は、システムメモリ５２８に格納されたプログラムを実行することにより、そして各種の機能的アプリケーションおよびデータ処理を実行し、例えば、本出願の実施形態が提供するロボットをスケジューリングするための方法を実行することができ、具体的に、ロボットの作業状態と現在位置を確定し、ここで、作業状態には、アイドル状態と非アイドル状態を含み、当該ロボットの作業状態がアイドル状態で、且つ現在位置が事前設定された目標範囲外にある場合、ロボットを現在位置から目標範囲内にスケジューリングすることができる。
【００８３】
本出願の実施形態は、サーバーを提供する。このサーバーは、まずロボットの作業状態と現在位置を確定し、ここで、作業状態には、アイドル状態と非アイドル状態を含み、当該ロボットの作業状態がアイドル状態で、且つ現在位置が事前設定された目標範囲外にある場合、ロボットを現在位置から目標範囲内にスケジューリングすることができる。すなわち、本出願の実施形態が提出した技術的な解決策では、当該ロボットの作業状態がアイドル状態であり、且つ現在位置が事前設定された目標範囲外にある場合、ロボットを指定領域に集合するようにスケジューリングでき、自動的にロボットを指定領域へスケジューリングでき、そして運用とメンテナンスコストを削減し、作業効率を向上させることができる。
【００８４】
本出願の実施形態は、さらにコンピュータ可読記憶媒体を提供し、このコンピュータプログラムがその上に格納され、プログラムがプロセッサーによって実行される場合、本出願のすべての実施形態が提供するロボットをスケジューリングするための方法を実現し、ロボットの作業状態と現在位置を確定し、ここで、作業状態には、アイドル状態と非アイドル状態を含み、ロボットの作業状態がアイドル状態で、且つ現在位置が事前設定された目標範囲外にある場合、ロボットを現在位置から目標範囲内にスケジューリングすることができる。
【００８５】
本出願の実施形態のコンピュータ記憶媒体は、一つまたは複数のコンピュータ可読媒体の任意の組み合わせを使用できる。コンピュータ可読媒体は、コンピュータ可読信号媒体あるいはコンピュータ可読記憶媒体であり得る。コンピュータ可読記憶媒体は、例えば、電気的、磁気的、光学的、電磁的、赤外線、または半導体のシステム、装置、または端子、あるいは上記の任意の組み合わせであり得るが、これらに限定されない。コンピュータ可読記憶媒体の例（非網羅的リスト）は、一つのまたは複数のワイヤとの電気接続、ポータブルコンピュータディスク、ハードディスク、ＲＡＭ、読み取り専用メモリ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ，ＲＯＭ）、消去可能なプログラム可能な読み取り専用メモリ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ，ＥＰＲＯＭ）またはフラッシュメモリ、光ファイバ、ポータブルＣＤ−ＲＯＭ、光ストレージデバイス、磁気ストレージ部品、あるいは上記の任意の適切な組み合わせを含む。本文書では、コンピュータ可読記憶媒体は、プログラムを含むまたは格納する任意の有形媒体であり得、前記プログラムは、命令実行システム、装置、または端子に使用され、あるいはそれらと組み合わせて使用されることができる。
【００８６】
コンピュータ可読信号媒体は、ベースバンドの中で、あるいはキャリア波の一部として伝送されるデータ信号を含むことができ、コンピュータ可読信号媒体に、コンピュータ可読プログラムコードを搭載する。この伝送されたデータ信号は多くの形式を使用し、電磁信号、光信号、または上記の任意の適切な組み合わせを含むがこれらに限定されない。コンピュータ可読信号媒体は、さらに、コンピュータ可読記憶媒体以外のいかなるコンピュータ可読媒体であることができ、このコンピュータ可読媒体は、命令実行システム、装置、または端子に使用され、あるいはそれらと組み合わせて使用するプログラムを転送することができる。
【００８７】
コンピュータ可読媒体に含まれるプログラムコードは、任意の適切な媒体によって転送でき、ワイヤレス、ワイヤ、光ファイバーケーブル、無線周波数（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ，ＲＦ）など、あるいは上記の任意の適切な組み合わせを含むが、これらに限定されない。
【００８８】
一つのまたは複数のプログラミング言語、または複数の組み合わせで、本出願の操作を実行するためのコンピュータプログラムコードを記述でき、前記プログラミング言語には、オブジェクト指向のＪａｖａ、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋といったプログラミング言語が含まれ、「Ｃ」言語といった従来の過程式プログラミング言語または類似のプログラミング言語をさらに含む。プログラムコードは、ユーザーのコンピュータで完全に実行でき、ユーザーのコンピュータで部分的に実行でき、スタンドアロンパッケージとして実行でき、一部はユーザーのコンピュータ上で、一部はリモートコンピュータ上で実行でき、あるいは、リモートコンピュータまたはサーバー上で完全に実行できる。リモートコンピュータに関して、リモートコンピュータはＬＡＮまたはＷＡＮを含む任意の種類のネットワークを通じ、ユーザーコンピューターに接続でき、あるいは、外部コンピュータに接続できる（たとえば、インターネットサービスプロバイダーを利用しインターネット経由で接続）。
【００８９】
図７は一実施形態中のロボットの経路制御方法のフローチャートで、本実施形態は、ロボット制御の状況に適用でき、この方法は、ロボット経路の制御装置により実行することができ、当該装置は、ソフトウェアおよび、またはハードウェアによって実現でき、例えば、当該装置はサーバーに配置できる。この方法は、ＱＲコード（登録商標）ナビゲーションあるいはインスタントポジショニングと地図作成ナビゲーション（Ｓｉｍｕｌｔａｎｅｏｕｓ  Ｌｏｃａｌｉｚａｔｉｏｎ  Ａｎｄ  Ｍａｐｐｉｎｇ，ＳＬＡＭ）のような、任意のナビゲーション方式での経路制御に適用できる。この方法には、以下のステップを含むことができる。
【００９０】
ステップ７１０では、前記ロボットが計画された経路に従って移動中、前記ロボットが配置されている現在のサブ領域の作業状態を確定する。
【００９１】
一実施形態中、サブ領域はセルとすることができる。
【００９２】
本実施形態中、事前にマップ上のロボットの作業領域を、必要に応じて複数のサブ領域に事前に分割し、各サブ領域の作業状態は、ロック解除状態とロック状態で、これら二つの作業状態は、必要に応じて切り替えできることを含む。本実施形態中、ロック解除されたサブ領域は、このサブ領域が正常状態にあり、ロボットが移動できることができ、ロック状態のサブ領域は、このサブ領域がすべてのロボットの進入と移動を拒否することを表し、すでに計画された経路（経路内のサブ領域を含む）のロボットと、経路計画をまだ実行していないロボットを含む。
【００９３】
一実施形態中、前記ロボットの経路を計画する過程で、作業領域内のセルの状態を確定し、作業状態がロックされたセルが計画後の経路上にないようする。
【００９４】
ロボットスケジューリングシステムは、事前に目的地に基づき経路を計画することができ、ロボットの経路計画のする過程で、現在の作業状態が、ロック状態のサブ領域および、障害物のサブ領域であることを取得し、上記サブ領域がマップ内のインデックスにあることに基づき、障害物マトリックステーブルを初期化でき、もし、現在通過しているサブ領域が障害物マトリックステーブルでマークされている場合は、前記サブ領域をスキップする。実施形態中、前記障害物としてマークされたサブ領域は、建物の柱があるサブ領域などは、ロボットが移動できないサブ領域に固定できる。
【００９５】
一実施形態中、前記方法は、作業状態設定操作に応じて、前記作業状態設定操作により指定した少なくとも一つのサブ領域の作業状態が、前記作業状態設定操作により指定した状態に設定することをさらに含む。一実施形態中、任意のサブ領域の作業状態に応じて、制御の操作を設定し、このサブ領域の作業状態を指定の状態に設定し、あるいは、任意のサブ領域座標の操作を入力することに応じて、このサブ領域の作業状態を指定の状態に設定する。
【００９６】
ロボットスケジューリングシステムは、標準インターフェースによって外部から入力された任意のサブ領域の座標を取得し、このサブ領域の作業状態を指定の状態に設定することができる。例を示すと、インターフェイスフォーマットは、｛ｃｅｌｌＰｏｉｎｔｓ：［｛ｘ：  １５．５，ｙ：  １６．５｝，  ｛ｘ：  １６．５，ｙ：  １６．５｝］ｉｎｓｔｒｕｃｔｉｏｎ：  ＬＯＣＫ＿ＳＨＥＬＦ｝で、横座標は１５．５で、縦座標は１．５と横座標は１６．５で、縦座標は１６．５の二つのロックされるサブ領域の座標とすることができる。
【００９７】
ロボットスケジューリングシステムはまた、各サブ領域に対応する作業状態設定コントロールを事前設定でき、サブ領域の作業状態を指定の状態に設定し、一つのサブ領域が一つの作業状態設定コントロールに対応することもでき、複数のサブ領域が一つの作業状態設定コントロールに対応することもできる。実施形態中、マップのルートタグｍａｐａｒｅａｓにより設定でき、ルートタグは複数の領域を定義し、各領域には唯一のｉｄがあり、領域の開始点は属性ｘとｙで構成され、ｗとｈ  はこの長方形の大小を示す。領域間のクロスオーバーラップ部分は許可され、例えば、＜ｍａｐａｒｅａｓ＞＜ａｒｅａ  ａｒｅａｉｄ＝「１」  ｘ＝「９」  ｙ＝「２」  ｗ＝「９」  ｈ＝「１０」  ／＞＜ａｒｅａ  ａｒｅａｉｄ＝「２」  ｘ＝「１７」  ｙ＝「２」  ｗ＝「７」  ｈ＝「１０」  ／＞＜／ｍａｐａｒｅａｓ＞である。前記作業状態設定コントロールは、ハードウェアまたはソフトウェアで設定でき、作業状態設定コントロールを押すと、この作業状態設定コントロールが対応するサブ領域に対し指定の状態に設定される。
【００９８】
一実施形態中、前記方法は、前記経路に駆動障害があることが検出されると、駆動障害が存在するサブ領域がロック状態に設定されることを、さらに含む。ここで、前記駆動障害には、ロボットの故障、ロボットの事故、貨物の落下など、ロボットの移動に影響を与える障害を含み、異なる駆動障害が対応するロック状態の必要があるサブ領域は異なり、例えば、駆動障害がロボットの故障である場合、ロボットが配置されているサブ領域と隣接する八か所のサブ領域をロック状態に設定でき、もし駆動障害が貨物の落下である場合、貨物が落下したサブ領域と隣接する二十四か所のサブ領域をロック状態に設定できる。
【００９９】
ステップ７２０では、前記現在のサブ領域がロック状態にあることが検出された場合、前記ロボットを制御して移動を停止する。
【０１００】
ロボットが計画されたパスに基づき移動するとき、もし現在のサブ領域がロック状態にあることが検出されたら、経路スケジューリングモジュールはロボットへのサブ領域の割り当てを停止し、且つロボットを制御して移動を停止する。
【０１０１】
ステップ７３０では、前記現在のサブ領域がロック解除状態で、且つ次のサブ領域がロック状態にあることが検出された場合、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導する。
【０１０２】
もし現在のサブ領域がロック解除状態で、且つ次のサブ領域がロック状態にあることが検出されたら、すなわち、経路スケジューリングモジュールは、経路に従いサブ領域をロボットに割り当てるときに、次のサブ領域がロック状態であることを検出し、つまり、サブ領域はロボットに割り当てられず、且つロボットスケジューリングシステムは前記ロボットの経路を再計画でき、そして、ロック状態のサブ領域を回避するために、再計画された経路に従って移動するようにロボットを制御し、再計画された経路に従って移動するように前記ロボットを誘導する。
【０１０３】
一実施形態中、次のサブ領域を回避するために、前記ロボットの経路を再計画することは、ロボットスケジューリングシステムが、ロボットの現在のサブ領域を開始点とし、元の終了点を終了点とし、ロック状態のサブ領域を回避でき、複数の経路の損失を再計算し、損失が最小の経路を再計画された経路とし、また前記再計画された経路に従って移動するようにロボットを制御する。
【０１０４】
ステップ７４０では、前記現在のサブ領域と次のサブ領域の両方がロック解除状態にあることが検出された場合、経路に従って移動するように前記ロボットを誘導する。
【０１０５】
もし現在のサブ領域と次のサブ領域の両方がロック解除状態にあることが検出されたら、経路スケジューリングモジュールは、計画された経路に従いサブ領域にロボットに割り当て、経路に従って移動するように前記ロボットを誘導する。
【０１０６】
一実施形態中、フルフィールドロックボタンを設定でき、前記フルフィールドロックボタンは、ソフトウェアまたはハードウェアの方式で設定できる。フルフィールドロック操作に応じて、前記作業領域内のすべてのロボットが移動を停止するように制御し、経路スケジューリングモジュールがすべてのロボットへのサブ領域の割り当てを停止する。
【０１０７】
本実施形態の技術的な解決策は、ロボットが計画された経路に基づき移動するとき、前記ロボットが配置されている現在のサブ領域の作業状態を確定し、もし現在のサブ領域がロック解除状態で、且つ次のサブ領域がロック状態にあることが検出されると、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導する。経路内のサブ領域の作業状態はリアルタイムに動的に変更できるので、本実施形態が提供する技術的な解決策は、ロボット移動中のサブ領域の状態に応じてリアルタイムで経路を調整でき、ロボットの移動経路をより柔軟に制御でき、制御効率を向上させることができる。
【０１０８】
一実施形態中、前記技術的な解決策の基礎の上、前記方法は、前記現在のサブ領域がバッファ状態にあり、且つ次のサブ領域がロック状態にあることを検出された場合、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導し、前記現在のサブ領域と次のサブ領域の両方がバッファ状態にあることが検出されると、前記現在のサブ領域がロック解除状態で、且つ前記次のサブ領域がバッファ状態であるか、あるいは前記現在のサブ領域がバッファ状態で、且つ前記次のサブ領域がロック解除状態である場合、前記経路に従って移動するように前記ロボットを誘導することを、さらに含む。
【０１０９】
一実施形態中、前記現在のサブ領域がロック解除状態にあり、且つ次のサブ領域がロック状態にあることが検出された場合、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導することは、具体的に、前記現在のサブ領域がロック解除状態にあり、且つ次のサブ領域がロック状態にあることが検出された場合、前記次のサブ領域が事前設定された時間が経過した後も、ロック状態にあるかどうかを判断し、次のサブ領域が事前設定された時間が経過した後も、ロック状態にあるという判断結果に応じて、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導する。
【０１１０】
図８は、一実施形態中の別のロボットの経路制御方法のフローチャートとし、本実施形態で上記実施形態の基礎の上、ロボットの経路制御方法に対し説明をする。本実施形態の方法は以下のステップを含む。
【０１１１】
ステップ８１０では、前記ロボットが計画された経路に基づき移動するとき、前記ロボットが配置されている現在のサブ領域の作業状態を確定する。
【０１１２】
ロボットが計画された経路に従って移動する場合、ロボットスケジューリングシステムのマップ操作インターフェースを通じて手動で設定された任意のサブ領域の座標を取得し、このサブ領域の作業状態を指定の状態に設定できる。図９で示すように、図９は、本一実施形態中のマップ操作インターフェースのロックされたサブ領域の構造模式図とし、マップ操作インターフェースでサブ領域に対し選択と保存を実行し、つまり、ロックされるサブ領域の座標を取得できる。図９の右側のメニューで「ロック」を選択し、左側の作業領域で選択と保存を実行し、保存後、選択したサブエリアの色が変わるか、または区別するためにマークが追加され、図９のスラッシュでマークされたサブ領域は、選択したロック状態のサブ領域とし、図９の円形はロボットを表す。もし図９の右側のメニューで「ロック」または「ロック解除」を選択したなら、左側の作業領域で選択した場合、選択したサブ領域は、ロックされるサブ領域またはロックを解除されるサブ領域である。
【０１１３】
マップ操作インターフェースでは、サブ領域の状態属性は、ロック解除と、ロックとバッファを含むことができ、マップ操作インターフェースでサブ領域に対し選択と保存を実行した後、つまり、ロックされるサブ領域の座標を取得し、前記座標に基づきロックされるサブ領域の状態属性はロックに設定できる。図９のように、図９の右側のメニューで「ロック」を選択し、選択したサブ領域の状態属性をロックに設定する。マップ操作インターフェースで、バッファされたサブ領域とロック解除されたサブ領域に対し、選択と保存と、及び、バッファされたサブ領域とロック解除されたサブ領域の状態属性を、それぞれバッファとロック解除に設定することもできる。
【０１１４】
この他、図９に示すように、ロボットスケジューリングシステムのマップ操作インターフェースでは、右側のスタートメニューとエンドメニューを通じて、正規化された座標（Ｘ、Ｙ）を直接入力し、経路の始点と終点を設定することができる。ロボットスケジューリングシステムでは、ロボット操作インターフェースと棚操作インターフェースとセル（サブ領域）操作インターフェースなどをさらに含むことができ、ロボットと棚とセル（サブ領域）などを制御するために使用される。
【０１１５】
ロボットスケジューリングシステムは、また、標準インターフェースを通じて外部から入力された任意のサブ領域の座標を取得し、このサブ領域の作業状態を指定の状態に設定することもできる。
【０１１６】
一実施形態中、前記方法は、作業状態設定操作に応じて、前記作業状態設定操作によって指定の少なくとも一つのサブ領域の作業状態が、前記作業状態設定操作によって指定の状態に設定されることをさらに含む。一実施形態中、任意のサブ領域の作業状態に応じて、コントロールの操作を設定し、このサブ領域の作業状態を指定の状態に設定し、あるいは、任意のサブ領域の座標を入力する操作に応じて、このサブ領域の作業状態を指定の状態に設定されることをさらに含む。前記経路に駆動障害があることが検出されると、駆動障害が存在するサブ領域がロック状態に設定される。
【０１１７】
ステップ８２０では、前記現在のサブ領域がロック状態にあることが検出された場合、前記ロボットを制御して移動を停止する。
【０１１８】
ステップ８３０では、前記現在のサブ領域がロック解除状態で、且つ次のサブ領域がロック状態にあることが検出された場合、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導する。
【０１１９】
一実施形態中、前記現在のサブ領域がロック解除状態で、且つ次のサブ領域がロック状態にあることが検出された場合、前記次のサブ領域が事前設定された時間が経過した後も、ロック状態にあるかどうかを判断し、次のサブ領域が事前設定された時間が経過した後もロック状態にあるなら、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導することを含む。図９に示すように、矢印の付いた経路は、ロボットの再計画された経路を表し、ロボットは、再計画された経路に従い移動し、スラッシュでマークされたサブ領域（ロック状態のサブ領域）を回避することができる。
【０１２０】
本実施形態中、事前設定された時間の長さは必要に基づき設定し、たとえば、事前設定された時間の長さは２０ｓに設定できる。
【０１２１】
ステップ８４０では、前記現在のサブ領域と次のサブ領域の両方がロック解除状態にあることが検出された場合、経路に従って移動するように前記ロボットを誘導する。
【０１２２】
ステップ８５０では、前記現在のサブ領域がバッファ状態にあり、且つ次のサブ領域がロック状態にあることを検出された場合、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導する。
【０１２３】
実施形態中、作業状態はバッファ状態をさらに含むことができ、バッファ状態のサブ領域は、このサブ領域がすでに経路を計画した（経路にはサブ領域を含む）ロボットに対し、このサブ領域内を移動できることに影響を与えないが、まだ経路計画を行っていないロボットに対し、このサブ領域は移動できず、つまり、経路計画を行うときは、このサブ領域を回避する必要がある。
【０１２４】
計画された経路に従い前記ロボットが移動している間、経路内のサブ領域はバッファ状態になり、ロック解除状態に相当し、すなわち、もし前記ロボットが前記経路中の現在のサブ領域がバッファ状態にあり、且つ、次のサブ領域がロック状態にあることが検出されたら、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導する。
【０１２５】
ステップ８６０では、前記現在のサブ領域と次のサブ領域の両方がバッファ状態にあることが検出されると、前記現在のサブ領域がロック解除状態で、且つ前記次のサブ領域がバッファ状態であるか、あるいは前記現在のサブ領域がバッファ状態で、且つ前記次のサブ領域がロック解除状態である場合、前記経路に従って移動するように前記ロボットを誘導する。
【０１２６】
一実施形態中、フルフィールドロックボタンの設定をさらにでき、前記フルフィールドロックボタンはソフトウェアまたはハードウェアの方式で設定できる。フルフィールドロック操作に応じて、前記作業領域内のすべてのロボットが移動を停止するように制御し、経路スケジューリングモジュールはすべてのロボットへのサブ領域の割り当てを停止する。図９を参照すると、マップ操作インターフェースでフィールドロックボタンを設定できる。フルフィールドロックボタンが押されたことを検出した場合、作業エリア内のすべてのロボットの移動を停止するように制御する。
【０１２７】
本実施形態の技術的な解決策は、ロボットが計画された経路に基づき移動するとき、もしマップ操作インターフェースで、現在のサブ領域がロック解除状態か、あるいはバッファ状態であるか、且つ次のサブ領域がロック状態で、事前に設定された時間が経過してもロックされたままであるなら、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導する。本実施形態が提供する技術的な解決策は、ロボット移動中のサブ領域の状態に応じてリアルタイムで経路を調整でき、ロボットの移動経路をより柔軟に制御でき、制御効率を向上させることができ、且つ、バッファ状態を設定して、経路計画を行っていないロボットを拘束し、すでに経路を計画しているロボットを解放し、ロボットを制御する複数の方法を実現する。
【０１２８】
図１０は、一実施形態中のロボットの経路制御装置の構造模式図とし、前記装置は、状態モジュール３１０と、停止モジュール３２０と、調整モジュール３３０と、移動モジュール３４０とを含む。
【０１２９】
前記状態モジュール３１０は、前記ロボットが計画された経路に基づき移動するとき、前記ロボットが配置されている現在のサブ領域の作業状態を確定するように構成される。
【０１３０】
前記停止モジュール３２０は、前記現在のサブ領域がロック状態にあることが検出された場合、ロボットを制御して移動を停止するように構成される。
【０１３１】
前記調整モジュール３３０は、前記現在のサブ領域がロック解除状態で、且つ次のサブ領域がロック状態にあることが検出された場合、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導するように構成される。
【０１３２】
前記移動モジュール３４０は、前記現在のサブ領域と次のサブ領域の両方がロック解除状態にあることが検出された場合、経路に従って移動するように前記ロボットを誘導するように構成される。
【０１３３】
一実施形態中、当該装置はバッファモジュールをさらに含み、前記バッファモジュールは、前記現在のサブ領域がバッファ状態にあり、且つ次のサブ領域がロック状態にあることを検出されると、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導し、前記ロボットが前記経路の現在のサブ領域と次のサブ領域の両方がバッファ状態にあることが検出されると、前記現在のサブ領域がロック解除状態で、且つ前記次のサブ領域がバッファ状態であるか、あるいは前記現在のサブ領域がバッファ状態で、且つ前記次のサブ領域がロック解除状態である場合、前記経路に従って移動するように前記ロボットを誘導するように構成される。
【０１３４】
一実施形態中、当該装置はセットアップモジュールをさらに含み、前記セットアップモジュールは、作業状態設定操作に応じて、前記作業状態設定操作によって指定の少なくとも一つのサブ領域の作業状態を、前記作業状態設定操作によって指定の状態に設定するように構成される。
【０１３５】
一実施形態中、前記セットアップモジュールは、任意のサブ領域の作業状態に応じて、コントロールの操作を設定し、このサブ領域の作業状態を指定の状態に設定し、あるいは、任意のサブ領域の座標を入力する操作に応じて、このサブ領域の作業状態を指定の状態に設定するように構成される。
【０１３６】
一実施形態中、当該装置は障害モジュールをさらに含み、前記障害モジュールは、前記経路に駆動障害があることが検出された場合、駆動障害が存在するサブ領域をロック状態に設定するように構成される。
【０１３７】
一実施形態中、前記調整モジュール３３０は、前記現在のサブ領域がロック解除状態で、且つ次のサブ領域がロック状態にあることが検出された場合、前記次のサブ領域が事前設定された時間が経過した後も、ロック状態にあるかどうかを判断し、次のサブ領域が事前設定された時間が経過した後もロック状態にあるという判断結果に応じ、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、再計画された経路に従って移動するように前記ロボットを誘導するように構成される。
【０１３８】
一実施形態中、当該装置はフルフィールドロックモジュールをさらに含み、前記フルフィールドロックモジュールは、フルフィールドロック操作に応じて、前記作業領域内のすべてのロボットが移動を停止するように制御するように構成される。
【０１３９】
本出願の実施形態が提供するロボット経路制御装置は、本出願の任意の実施形態が提供するロボット経路制御方法を実行することができ、実行方法に対応する機能モジュールと有益な効果を備える。
【０１４０】
図１１は実施形態中の別のサーバーの構造模式図とする。図１１は、本出願の実施形態の実現に適した例示的なサーバー４１２のブロック図を示す。図１１に示すサーバー４１２は単なる一つの例であり、本出願の実施形態の機能と使用範囲にいかなる制限ももたらすべきではない。
【０１４１】
図１１に示すように、サーバー４１２はユニバーサルターミナルの形式で表す。サーバー４１２の構成要素は、一つのまたは複数のプロセッサー４１６、メモリ４２８、異なるシステム構成要素（メモリ４２８とプロセッサー４１６を含む）を接続するバス４１８を含むことができるが、これらに限定されない。
【０１４２】
バス４１８はいくつか種類のバス構造の一つまたは複数の種類を表し、ストレージデバイスバスあるいはストレージデバイスコントローラー、周辺バス、グラフィック加速ポート、プロセッサーあるいは複数の種類のバス構造の任意のバス構造を使用したローカルバスを含む。例を挙げると、これらの体系構造には、ＩＳＡバス、ＭＣＡバス、増強型ＩＳＡ  バス、ＶＥＳＡローカルバスおよびＰＣＩバスを含むが、これらに限定されない。
【０１４３】
一実施形態中、サーバー４１２は、多種のコンピュータシステムの可読媒体を含む。これらの媒体は、サーバー４１２がアクセスできる利用可能な媒体にすることができ、揮発性および非揮発性媒体、取り外し可能および取り外し不可能な媒体を含む。
【０１４４】
メモリ４２８は、揮発性メモリ形式のコンピュータシステムの可読媒体を含むことができ、例えば、ＲＡＭ４３０および、または高速キャッシュメモリ４３２である。サーバー４１２は、その他の取り外し可能および、または取り外し不可能な媒体、揮発性および、または非揮発性媒体のコンピュータシステムの記憶媒体を含むことができる。例を挙げると、ストレージシステム４３４は、取り外し不可能で揮発性でない磁気媒体（図１１にまだ示されてないが、通常「ハードドライブ」と呼ぶ）を読みとり書きこみをすることができる。図１１には示されてないが、取り外し可能な不揮発性ディスク（例えば「フロッピーディスク」）の読み取りと書き込み用のディスクドライブ、及び取り外し可能な不揮発性光ディスク、（例えばＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭあるいはその他の光学媒体）読み取りおよび書き込み用の光学ドライブを提供できる。これらの場合、各ドライブは、一つあるいは複数のデータ媒体インターフェースを通じてバス４１８に接続することができる。メモリ４２８は、少なくとも１つのプログラム製品を含むことができ、前記プログラム製品は、一セットの（例えば、少なくとも一つの）プログラムモジュールを備え、これらのプログラムモジュールは、本出願の任意の実施形態の機能を実行するように構成される。
【０１４５】
一セットの（少なくとも一つの）プログラムモジュール４４２を備えたプログラムおよび、あるいはユーティリティ４４０は、例えば、メモリ４２８に格納することができ、このようなプログラムモジュール４４２は、オペレーティングシステムを含むが、これらに限定されず、一つまたは複数のアプリケーションプログラムとその他のプログラムモジュールおよびプログラムデータは、これらの例のそれぞれ一つのまたは複数の種類のセットで、ネットワーク環境の実現を含むことができる。プログラムモジュール４４２は、通常、本発明の記載された実施形態における機能および、または方法を実行する。
【０１４６】
サーバー４１２は、また、一つまたは複数の外部デバイス４１４（例えば、キーボード、ポインティングデバイス、ディスプレイ４２４など）と通信でき、さらに、ユーザーがこのサーバー４１２と対話できるようにする一つまたは複数のデバイスと通信することもができ、および、またはこのサーバー４１２が一つまたは複数の他のコンピューティングデバイスと通信することができる任意のデバイス（例えば、ネットワークカード、モデムなど）と通信する。この通信は、入力と出力（Ｉ／Ｏ）インターフェース４２２を通じて実行することができる。且つ、サーバー４１２はさらに、ネットワークアダプタ４２０と、一つまたは複数のネットワーク（例えばＬＡＮ、ＷＡＮおよび、または例えばインターネットのようなパブリックネットワーク）に通信できる。図１１示すように、ネットワークアダプタ４２０は、バス４１８とサーバー４１２を通じてその他のモジュールと通信する。理解していただきたいのは、図１１にはまだ示されていないが、サーバー４１２はその他のハードウェアおよび、またはソフトウェアモジュールを組み合わせることができるが、マイクロコード、ターミナルドライバー、冗長処理ユニット、外部ディスクドライブアレイ、ＲＡＩＤシステム、テープドライブ、データバックアップストレージシステムなどが含まれるが、これらに限定されない。
【０１４７】
プロセッサー４１６は、システムメモリ４２８に格納されたプログラムを実行することによって、様々な機能的アプリケーションおよびデータ処理を実行し、例えば、本出願の実施例が提供したロボットの経路の制御方法を実現し、この方法は、前記ロボットが計画された経路に基づき移動するとき、前記ロボットが配置されている現在のサブ領域の作業状態を確定し、前記現在のサブ領域がロック状態で、前記現在のサブ領域がロック状態にあることが検出された場合、前記ロボットを制御して移動を停止し、前記現在のサブ領域がロック解除状態で、且つ次のサブ領域がロック状態にあることが検出された場合、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導し、前記現在のサブ領域と次のサブ領域の両方がロック解除状態にあることが検出された場合、経路に従って移動するように前記ロボットを誘導することを含む。
【０１４８】
本出願の実施形態は、さらにコンピュータ可読記憶媒体を提供し、このコンピュータプログラムがその上に格納され、前記プログラムがプロセッサーによって実行される場合、本出願の実施形態が提供するロボットの経路の制御方法を実現し、この方法は、前記ロボットが計画された経路に基づき移動するとき、前記ロボットが配置されている現在のサブ領域の作業状態を確定し、前記現在のサブ領域がロック状態で、前記現在のサブ領域がロック状態にあることが検出された場合、前記ロボットを制御して移動を停止し、前記現在のサブ領域がロック解除状態で、且つ次のサブ領域がロック状態にあることが検出された場合、前記次のサブ領域を回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導し、前記現在のサブ領域と次のサブ領域の両方がロック解除状態にあることが検出された場合、経路に従って移動するように前記ロボットを誘導することを含む。
【０１４９】
本出願の実施形態のコンピュータ記憶媒体は、一つまたは複数のコンピュータ可読媒体の任意の組み合わせを使用できる。コンピュータ可読媒体は、コンピュータ可読信号媒体あるいはコンピュータ可読記憶媒体であり得る。コンピュータ可読記憶媒体は、例えば、電気的、磁気的、光学的、電磁的、赤外線、または半導体のシステム、装置、または端子、あるいは上記の任意の組み合わせであり得るが、これらに限定されない。コンピュータ可読記憶媒体の例（非網羅的リスト）は、一つのまたは複数のワイヤとの電気接続、ポータブルコンピュータディスク、ハードディスク、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭまたはフラッシュメモリ、光ファイバ、ポータブルＣＤ−ＲＯＭ、光ストレージデバイス、磁気ストレージデバイス、あるいは上記の任意の適切な組み合わせを含む。本文書では、コンピュータ可読記憶媒体は、プログラムを含むまたは格納する任意の有形媒体であり得、前記プログラムは、命令実行システム、装置、または端子に使用され、あるいはそれらと組み合わせて使用されることができる。
【０１５０】
コンピュータ可読信号媒体は、ベースバンドで、あるいはキャリア波の一部として伝送されるデータ信号を含むことができ、コンピュータ可読媒体に、コンピュータ可読プログラムコードを搭載する。この伝送されたデータ信号は多くの形式を使用し、電磁信号、光信号、または上記の任意の適切な組み合わせを含むがこれに限定されない。コンピュータ可読信号媒体は、さらに、コンピュータ可読記憶媒体以外のいかなるコンピュータ可読媒体であることができ、このコンピュータ可読媒体は送信および伝送でき、あるいは、命令実行システム、装置、または端子に使用され、あるいはそれらと組み合わせて使用するプログラムを転送することができる。
【０１５１】
コンピュータ可読媒体に含まれるプログラムコードは、任意の適切な媒体によって転送でき、ワイヤレス、ワイヤ、光ファイバーケーブル、ＲＦなど、あるいは上記の任意の適切な組み合わせを含むが、これらに限定されない。
【０１５２】
一つのまたは複数のプログラミング言語、または複数の組み合わせで、本出願の操作を実行するためのコンピュータプログラムコードを記述でき、前記プログラミング言語には、オブジェクト指向のＪａｖａ、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋といったプログラミング言語が含まれ、「Ｃ」言語といった従来の過程式プログラミング言語または類似のプログラミング言語をさらに含む。プログラムコードは、ユーザーのコンピュータで完全に実行でき、ユーザーのコンピュータで部分的に実行でき、スタンドアロンパッケージとして実行でき、一部はユーザーのコンピュータ上で、一部はリモートコンピュータ上で実行でき、あるいは、リモートコンピュータまたはサーバー上で完全に実行できる。リモートコンピュータに関して、リモートコンピュータは任意の種類の、ＬＡＮまたはＷＡＮを含むネットワークを通じ、ユーザーコンピューターに接続でき、あるいは、外部コンピュータに接続できる（たとえば、インターネットサービスプロバイダーを利用しインターネット経由で接続）。
【０１５３】
図１２に示す貨物ピッキングシステムの構造模式図を参照してもらい、貨物ピッキングシステムは、自動駆動ロボット１０、制御システム２０、棚領域３０およびピッキングステーション４０を含む。棚領域３０は、複数の棚３１を備え、棚３１上に多種類の貨物を配置し、例えば、私たちがスーパーマーケットで見ることができる多種類の商品の棚のように、複数の棚３１の間は棚配列の形で配置される。
【０１５４】
制御システム２０と自動駆動ロボット１０は無線通信を実行し、スタッフにコンソール６０を通じて制御システム２０操作させ、自動駆動ロボット１０は、制御システム２０の制御下で貨物ハンドリングタスクを実行する。例えば、制御システム２０は、ハンドリングタスクに基づき自動駆動ロボット１０の移動経路を計画し、自動駆動ロボット１０は移動経路に基づき、棚配列内の空きスペース（自動駆動ロボット１０の通路の一部）に沿って移動する。自動駆動ロボット１０の移動経路の計画を容易にするために、あらかじめ自動駆動ロボット１０の作業領域（この作業領域は、少なくとも棚領域３０およびピッキングステーション４０が配置される領域を含む）を、複数のサブ領域（すなわち、セル）として分割し、自動駆動ロボット１０は、サブ領域を１つずつ移動し、そして移動軌道を形成する。
【０１５５】
自動駆動ロボット１０は、目標棚３１の下部へ移動することができ、リフト機構によって目標棚３１を持ち上げ、そして割り当てられたピッキングステーション４０に輸送することができる。一つの例では、自動駆動ロボット１０は、リフト機構を備え、および自律ナビゲーション機能を備え、自動駆動ロボット１０は、目標棚３１の下部へ移動し、リフト機構を使用して全ての棚３１を持ち上げ、棚３１は、リフト機能を備えたリフト機構により上下に移動することができる。一つの例では、自動駆動ロボット１０は、カメラが捉えたＱＲコード（登録商標）情報に基づき前進し、且つ、制御システム２０が確定した路線に基づいて、制御システム２０が提示した棚３１の下部へ移動することができる。自動駆動ロボット１０は、目標棚３１をピッキングステーション４０に輸送し、ピッキングステーション４０でピッカー４１またはピッキングロボットは、ピッキング棚３１上から貨物をピッキングし、そしてターンオーバーボックス５０に入れて梱包を待つ。
【０１５６】
制御システム２０は、サーバー上で動作し、データ記憶、情報処理機能を備えるソフトウェアシステムで、無線または有線接続を通じて、ロボット、ハードウェア入力システム、その他のソフトウェアシステムと接続できる。制御システム２０は、一つまたは複数のサーバーを含むことができ、集中制御アーキテクチャあるいは分散コンピューティングアーキテクチャであることができる。サーバーは、プロセッサー２０１とメモリ２０２を備え、メモリ２０２には、注文プール２０３を備えることができる。
【０１５７】
貨物ピッキングシステムでは、一旦消防警報が発生すると、自動駆動ロボット１０を、消防通路がある領域から迅速に遠ざける必要があり、スムーズな救助のために必要な保証を提供する。したがって、本出願は、自動駆動ロボット１０の消防制御ソリューションに対し提供する。
【０１５８】
図１３は実施形態中のロボットをスケジューリングするための方法のフローチャートとし、本実施形態は、ロボットの消防制御情況に適用することができ、この方法は、ロボットスケジューリング装置により実行でき、ソフトウェアおよび、またはハードウェアの方式で実施でき、例えば、当該装置は、制御システム２０が実行しているサーバーで構成できる。この方法は以下のステップを含むことができる。
【０１５９】
ステップ１３１０では、消防信号を受信する。
【０１６０】
前記消防信号は、消防緊急停止ボタンを通じてトリガーできる。実施形態中、前記消防緊急停止ボタンは事前設定でき、ハードウェアまたはソフトウェアを通じて実現できる。例を示すと、消防緊急停止ボタンのハブ（ＨＵＢ）とサーバーはＳｏｃｋｅｔ通信を採用し、データ固定長は３４バイトとし、ここで４バイトはＨＵＢ  に接続されている消防緊急停止ボタンの状態を表す。前の１〜８ビット通路は、消防緊急停止ボタンを表し、もしサーバーが、信号が前の１〜８ビット通路からのものであることを検出するなら、消防信号が受信したことを確認できる。ここで、Ｓｏｃｋｅｔはソケットとも呼ばれ、応用プログラムは通常「ソケット」を通じて、ネットワークに要求を送信するか、あるいはネットワーク要求に応答し、Ｓｏｃｋｅｔは、ネットワーク接続を確立するときに使用され、接続が成功するとき、応用プログラムの両端でＳｏｃｋｅｔ実例が生成され、この実例を操作し、必要なセッションを完成する。
【０１６１】
サーバーは、標準インターフェースを通じて送信される外部消防信号を取得でき、例を示すと、インターフェースによって送信される命令フォーマットは、｛ｉｎｓｔｒｕｃｔｉｏｎ：  ＦＩＲＥ＿ＳＴＯＰ｝とすることができる。
【０１６２】
ステップ１３２０では、消防信号に応答し、ロボットが移動状態にあり、且つ前記ロボットのナビゲーション経路の次のサブ領域が事前設定された消防通路領域に位置する場合、前記ロボットを制御して前記次のサブ領域に移動し、前記ナビゲーション経路に従い移動を続け、次のサブ領域が事前設定された消防通路領域でなくなるまで移動し、移動を停止することを含む。
【０１６３】
実施形態中、前記ナビゲーション経路は、ロボットの終点に基づき事前に計画された最適な経路である。本実施形態中、ロボットをマップ上の作業領域で、必要に基づき複数のサブ領域（あるいはセルと呼ぶ）に事前に分割し、複数の連続するサブ領域は、ロボットの移動経路を形成でき、したがって、ナビゲーション経路で、ロボットが移動する必要のあるサブ領域を計画される。前記サブ領域のタイプは、業務機能に基づき定義することができ、例えば、棚サブ領域または作業状態のサブ領域を定義する。一実施形態中、前記消防通路領域の設定は、サブ領域のタイプ定義とは無関係であり、すなわち、違うタイプのサブ領域は消防通路領域として設定でき、消防通路が配置されているサブ領域または消防扉が配置されているサブ領域を消防通路領域として設定することができる。一実施形態中、マップｘｍｌファイルで採用したコンマ分離値（Ｃｏｍｍａ−Ｓｅｐａｒａｔｅｄ  Ｖａｌｕｅｓ，ＣＳＶ）フォーマットを通じて消防通路領域の正規化された座標を列挙することができ、例を示すと、＜ｆｉｒｅｐａｓｓ＞  １４６，９，  １４６，１０，  １４６，１１，  １４６，１２，  １４６，１３，  １４６，１４，  １４６，１５，  １４６，１６，  １４６，１７，  １４６，１８，  省略部分の構成は  １３７，６０，  １３７，６１，  １３７，６２，  １３７，６３，  １３７，６４，  １３７，６５，  １３７，６６，  １３７，６７  ＜／ｆｉｒｅｐａｓｓ＞である。図１４は実施形態中の消防通路領域の模式図とし、図１４に示すように、スラッシュでマークされたサブ領域は、消防通路領域である。
【０１６４】
一実施形態中、消防信号に応答し、ロボットが移動状態にあり、且つ前記ロボットのナビゲーション経路の次のサブ領域が事前設定された消防通路領域に位置する場合、前記ロボットを制御して前記次のサブ領域に移動し、また次のサブ領域が事前設定された消防通路領域にあるかどうかを判断し、さらに次のサブ領域が事前設定された消防通路領域にない場合、ロボットを制御して移動を停止し、さらに次のサブ領域が事前設定された消防通路領域にある場合、ロボットを制御してナビゲーション経路に従って移動を継続し、ナビゲーション経路のある一つのサブ領域が事前設定された消防通路領域にない時は、移動を停止する。
【０１６５】
一実施形態中、消防信号を受信した後、ロボットは停止状態にあり、且つ前記ロボットの現在のサブ領域が事前設定された消防通路領域にある場合は、前記ロボットのナビゲーション経路を再計画し、そして、前記ロボットを制御して、新たに計画されたナビゲーション経路に沿って移動し、前記事前設定された消防通路領域を離れる。実施形態中、前記ロボットと転送エンドポイントの間の距離および、または転送エンドポイントが配置されている所定の領域内のロボット密度に基づいて、前記ロボットの転送エンドポイントを選択し、選択した転送エンドポイントに基づき前記ロボットのナビゲーション経路を再計画し、前記ロボットが新たに計画されたナビゲーション経路に沿って前記選択した転送エンドポイントに移動する。例を示すと、もしロボットが前記現在のサブ領域が事前設定された消防通路領域にある場合は、距離が四つを超えないサブ領域と隣接するサブ領域に一つのロボットのサブ領域を転送エンドポイントとして選択でき、複数の経路の損失を計算し、損失が最小の経路を再計画されたナビゲーション経路とし、そして前記再計画されたナビゲーション経路に従って、ロボットを制御して転送エンドポイントに移動する。一実施形態中、棚の下部の高さがロボットの移動を可能にするとき、前記転送エンドポイントは棚のサブ領域を選択できる。
【０１６６】
本実施形態中、もしロボットが移動状態にあり、且つ前記ロボットのナビゲーション経路のルートサブ領域（終点を含む）がすべて事前設定された消防通路領域にあるなら、つまり、前記ロボットが終点に到達した後、前記ロボットがナビゲーション経路を再計画し、前記ロボットを制御して、再計画されたナビゲーション経路に沿って移動し、終点を離れることもできる。
【０１６７】
本実施形態の技術的な解決策は、消防信号を受信し、前記消防信号に応答し、もしロボットが移動状態にあり、且つ前記ロボットのナビゲーション経路の次のサブ領域が事前設定された消防通路領域にあるなら、すなわち、前記ロボットを制御して前記次のサブ領域またはナビゲーション経路に従って移動を継続し、次のサブ領域が事前設定された消防通路領域にない時は、移動を停止する。本実施形態が提供する技術的な解決策は、遅延エラーまたは急ブレーキによる問題を回避し、ロボットが消防通路を離れる効率を向上させることができる。
【０１６８】
図１５は一実施形態中のロボットスケジューリング装置の構造模式図とし、前記装置は、受信モジュール１５１０と、運動制御モジュール１５２０とを含む。
【０１６９】
前記受信モジュール１５１０は、消防信号を受信するように構成され、運動制御モジュール１５２０は、消防信号に応答し、ロボットが移動状態にあり、且つ前記ロボットのナビゲーション経路の次のサブ領域が事前設定された消防通路領域にある場合、前記ロボットを制御して前記次のサブ領域またはナビゲーション経路に従って移動を継続し、次のサブ領域が事前設定された消防通路領域にない時は、移動を停止するように構成される。
【０１７０】
一実施形態中、当該装置は停止制御モジュールをさらに含む。前記停止制御モジュールは、ロボットは停止状態になり、且つ前記ロボットの現在のサブ領域が事前設定された消防通路領域にある場合は、前記ロボットのナビゲーション経路を再計画し、そして、前記ロボットを制御して、新たに計画されたナビゲーション経路に沿って移動し、前記事前設定された消防通路領域を離れるように構成される。
【０１７１】
一実施形態中、前記停止制御モジュールは、以下の方法を通じて前記ロボットのナビゲーション経路を再計画して、前記ロボットを制御して、新たに計画されたナビゲーション経路に沿って移動し、前記事前設定された消防通路領域を離れるように構成される。前記ロボットと転送エンドポイントの間の距離および、または転送エンドポイントが配置されている所定の領域内のロボット密度に基づいて、前記ロボットの転送エンドポイントを選択し、選択した転送エンドポイントに基づき前記ロボットのナビゲーション経路を再計画し、前記ロボットが新たに計画されたナビゲーション経路に沿って前記選択した転送エンドポイントに移動する。
【０１７２】
一実施形態中、前記消防信号は、消防緊急停止ボタンによってトリガーされるか、または外部インターフェースを通じて受信する。
【０１７３】
本実施形態が提供する技術的な解決策は、緊急停止ハードウェアシステムを通じて消防信号を受信し、そして、緊急停止システムコントローラーを通じて、消防信号をサーバーに送信し、サーバーが消防信号を受信した後、ロボットのスケージュリングシステムがすべてのロボットを制御して作業を停止し、且つ消防サブ領域を離れることができる。本実施形態は、遅延エラーまたは急ブレーキによる問題を回避し、ロボットが消防通路を離れる効率を向上させることができる。
【０１７４】
本出願の実施形態が提供するロボットスケジューリング装置は、本出願の任意の実施形態が提供するロボットをスケジューリングするための方法を実行することができ、対応する機能モジュールの実行と有益な効果を備える。
【０１７５】
図１６は一実施形態中の別のサーバーの構造模式図である。図１６は、本出願の実施方式を実施するのに適した例示的なサーバー６１２のブロック図を示す。図１６に示されるサーバー６１２は単なる一つの例であり、本出願の実施形態の機能および使用範囲にいかなる制限ももたらしてはならない。
【０１７６】
図１６に示すように、サーバー６１２は汎用デバイスの形式で表される。サーバー６１２の構成要素は、一つのあるいは複数のプロセッサー６１６、システムメモリ６２８、異なるシステム構成要素（システムメモリ６２８とプロセッサー６１６を含む）を接続するバス６１８を含むことができるが、これらに限定されない。
【０１７７】
バス６１８は、いくつか種類のバス構造の一つまたは複数の種類を表し、メモリバスあるいはメモリコントローラ、周辺バス、グラフィック加速ポート、プロセッサー６１６あるいは複数の種類のバス構造の任意のバス構造を使用したローカルバスを含む。例を挙げると、これらの体系構造には、ＩＳＡバス、ＭＡＣバス、増強型ＩＳＡバス、ＶＥＳＡローカルバスおよびＰＣＩバスを含むが、これらに限定されない。
【０１７８】
一実施形態中、サーバー６１２には、さまざまなコンピュータシステムの可読媒体を含む。これらの媒体は、サーバー６１２がアクセスできる利用可能な媒体にすることができ、揮発性および非揮発性媒体、取り外し可能および取り外し不可能な媒体を含む。
【０１７９】
システムメモリ６２８は、揮発性メモリ形式のコンピュータシステムの可読媒体を含むことができ、例えば、ＲＡＭ４３０と、あるいは高速キャッシュメモリ６３２である。サーバー６１２は、その他の取り外し可能および、または取り外し不可能な媒体、揮発性および、または非揮発性媒体のコンピュータシステムの記憶媒体を含むことができる。例を挙げると、ストレージシステム６３４は、取り外し不可能で揮発性でない磁気媒体（図１６にまだ示されてないが、通常「ハードドライブ」と呼ぶ）を読みとり書きこみをすることができる。図１６には示されてないが、取り外し可能な不揮発性ディスク（例えば「フロッピーディスク」）の読み取りと書き込み用のディスクドライブ、及び取り外し可能な不揮発性光ディスク（例えばＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭあるいはその他の光学媒体）読み取りおよび書き込み用の光学ドライブを提供できる。これらの場合、各ドライブは、一つあるいは複数のデータ媒体インターフェースを介してバス６１８に接続することができる。メモリ６２８は、少なくとも１つのプログラム製品を含むことができ、前記プログラム製品は、一セットの（例えば、少なくとも一つの）プログラムモジュールを備え、これらのプログラムモジュールは、本出願の任意の実施形態の機能を実行するように構成される。
【０１８０】
一セットの（少なくとも一つの）プログラムモジュール６４２を備えたプログラムおよび、あるいはユーティリティ６４０は、メモリ６２８に格納することができ、このようなプログラムモジュール６４２は、オペレーティングシステム、一つまたは複数のアプリケーションプログラムとその他のプログラムモジュールおよびプログラムデータを含むが、これに限定されず、これらの例のそれぞれ一つのまたは複数の種類のセットで、ネットワーク環境の実現を含むことができる。プログラムモジュール６４２は、通常、本発明の記載された実施形態における機能および、または方法を実行する。
【０１８１】
サーバー６１２は、また、一つまたは複数の外部デバイス６１４（例えば、キーボード、ポインティングデバイス、ディスプレイ６２４など）と通信でき、さらに、ユーザーがサーバー６１２と対話できるようにする一つまたは複数のデバイスと通信することもができ、および、またはこのサーバー６１２が一つまたは複数の他のコンピューティングデバイスと通信することができる任意のデバイス（例えば、ネットワークカード、モデムなど）と通信する。この通信は、入力と出力（Ｉ／Ｏ）インターフェース６２２を通じて実行することができる。且つ、サーバー６１２はさらに、ネットワークアダプタ６２０と、一つまたは複数のネットワーク（例えばＬＡＮ、ＷＡＮおよび、または例えばインターネットのようなパブリックネットワーク）に通信できる。図１６に示すように、ネットワークアダプタ６２０は、バス６１８とサーバー６１２を通じてその他のモジュールと通信する。理解していただきたいのは、図１６にはまだ示されていないが、サーバー６１２はその他のハードウェアおよび、またはソフトウェアモジュールと組み合わせることができ、マイクロコード、デバイスドライバー、冗長処理ユニット、外部ディスクドライブアレイ、ＲＡＩＤシステム、テープドライブ、及びデータバックアップストレージシステムなどが含まれるが、これらに限定されない。
【０１８２】
プロセッサー６１６は、システムメモリ６２８に格納されたプログラムを実行することにより、そして各種の機能的アプリケーションおよびデータ処理を実行し、例えば、本出願の実施形態が提供したロボットをスケジューリングするための方法を実現し、この方法は、消防信号を受信し、前記消防信号に応答し、もしロボットが移動状態にあり、且つ前記ロボットのナビゲーション経路の次のサブ領域が事前設定された消防通路領域にあるなら、すなわち、前記ロボットを制御して前記次のサブ領域またはナビゲーション経路に従って移動を継続し、次のサブ領域が事前設定された消防通路領域にない時は、移動を停止する。
【０１８３】
本出願の実施形態のコンピュータ記憶媒体は、一つまたは複数のコンピュータ可読媒体の任意の組み合わせを使用できる。コンピュータ可読媒体は、コンピュータ可読信号媒体あるいはコンピュータ可読記憶媒体であり得る。コンピュータ可読記憶媒体は、例えば、電気的、磁気的、光学的、電磁的、赤外線、または半導体のシステム、装置、または端子、あるいは上記の任意の組み合わせであり得るが、これに限定されない。コンピュータ可読記憶媒体の例（非網羅的リスト）は、一つのまたは複数のワイヤとの電気接続、ポータブルコンピュータディスク、ハードディスク、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭまたはフラッシュメモリ、光ファイバ、ポータブルＣＤ−ＲＯＭ、光ストレージデバイス、磁気ストレージデバイス、あるいは上記の任意の適切な組み合わせを含む。本文書では、コンピュータ可読記憶媒体は、プログラムを含むまたは格納する任意の有形媒体であり得、前記プログラムは、命令実行システム、装置、または端子に使用され、あるいはそれらと組み合わせて使用されることができる。
【０１８４】
コンピュータ可読信号媒体は、ベースバンドで、あるいはキャリア波の一部として伝送されるデータ信号をふくむことができ、コンピュータ可読信号媒体に、コンピュータ可読プログラムコードを搭載する。この伝送されたデータ信号は多くの形式を使用し、電磁信号、光信号、または上記の任意の適切な組み合わせを含むがこれらに限定されない。コンピュータ可読信号媒体は、さらに、コンピュータ可読記憶媒体以外のいかなるコンピュータ可読媒体であることができ、このコンピュータ可読媒体は送信および伝送でき、あるいは、命令実行システム、装置、または端子に使用され、あるいはそれらと組み合わせて使用するプログラムを転送することができる。
【０１８５】
コンピュータ可読媒体に含まれるプログラムコードは、任意の適切な媒体によって転送でき、ワイヤレス、ワイヤ、光ファイバーケーブル、ＲＦなど、あるいは上記の任意の適切な組み合わせを含むが、これらに限定されない。
【０１８６】
一つのまたは複数のプログラミング言語、または複数の組み合わせで、本出願の操作を実行するためのコンピュータプログラムコードを記述でき、前記プログラミング言語には、オブジェクト指向のＪａｖａ、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋といったプログラミング言語が含まれ、「Ｃ」言語といった従来の過程式プログラミング言語または類似のプログラミング言語をさらに含む。プログラムコードは、ユーザーのコンピュータで完全に実行でき、ユーザーのコンピュータで部分的に実行でき、スタンドアロンパッケージとして実行でき、一部はユーザーのコンピュータ上で、一部はリモートコンピュータ上で実行でき、あるいは、リモートコンピュータまたはサーバー上で完全に実行できる。リモートコンピュータに関して、リモートコンピュータは任意の種類の、ＬＡＮまたはＷＡＮを含むネットワークを通じ、ユーザーコンピューターに接続でき、あるいは、外部コンピュータに接続できる（たとえば、インターネットサービスプロバイダーを利用しインターネット経由で接続）。
【符号の説明】
【０１８７】
10  ロボット
30  棚エリア
40  ピッキングステーション
50  ターンオーバーボックス
201  プロセッサー
202  メモリ
203  注文プール
410  確定モジュール
412  サーバー
414  外部デバイス
416  プロセッサー
420  スケジューリングモジュール、ネットワークアダプタ
422  Ｉ／Ｏインターフェース
424  モニター
428  内部
432  高速キャッシュ
434  ストレージシステム
512  サーバー
514  外部デバイス
515  プロセッサー
520  ネットワークアダプタ
522  Ｉ／Ｏインターフェース
525  モニター
532  高速キャッシュ
534  ストレージシステム
612  サーバー
614  外部デバイス
616  プロセッサー
620  ネットワークアダプタ
622  Ｉ／Ｏインターフェース
624  モニター
628  内部
632  高速キャッシュ
634  ストレージシステム
【図１】
2021522618.tif 000003
【図２】
2021522618.tif 000004
【図３】
2021522618.tif 000005
【図４】
2021522618.tif 000006
【図５】
2021522618.tif 000007
【図６】
2021522618.tif 000008
【図７】
2021522618.tif 000009
【図８】
2021522618.tif 000010
【図９】
2021522618.tif 000011
【図１０】
2021522618.tif 000012
【図１１】
2021522618.tif 000013
【図１２】
2021522618.tif 000014
【図１３】
2021522618.tif 000015
【図１４】
2021522618.tif 000016
【図１５】
2021522618.tif 000017
【図１６】
2021522618.tif 000018
【手続補正書】
【提出日】令和2年12月21日(2020.12.21)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００９５
【補正方法】変更
【補正の内容】
【００９５】
一実施形態中、前記方法は、作業状態命令操作に応じて、前記作業状態命令操作により指定した少なくとも一つのサブ領域の作業状態が、前記作業状態命令操作により指定した状態に設定することをさらに含む。一実施形態中、任意のサブ領域の作業状態に応じて、制御の操作を設定し、このサブ領域の作業状態を指定の状態に設定し、あるいは、任意のサブ領域座標の操作を入力することに応じて、このサブ領域の作業状態を指定の状態に設定する。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００９７
【補正方法】変更
【補正の内容】
【００９７】
ロボットスケジューリングシステムはまた、各サブ領域に対応する作業状態命令コントロールを事前設定でき、サブ領域の作業状態を指定の状態に設定し、一つのサブ領域が一つの作業状態命令コントロールに対応することもでき、複数のサブ領域が一つの作業状態命令コントロールに対応することもできる。実施形態中、マップのルートタグｍａｐａｒｅａｓにより設定でき、ルートタグは複数の領域を定義し、各領域には唯一のｉｄがあり、領域の開始点は属性ｘとｙで構成され、ｗとｈ  はこの長方形の大小を示す。領域間のクロスオーバーラップ部分は許可され、例えば、＜ｍａｐａｒｅａｓ＞＜ａｒｅａ  ａｒｅａｉｄ＝「１」  ｘ＝「９」  ｙ＝「２」  ｗ＝「９」  ｈ＝「１０」  ／＞＜ａｒｅａ  ａｒｅａｉｄ＝「２」  ｘ＝「１７」  ｙ＝「２」  ｗ＝「７」  ｈ＝「１０」  ／＞＜／ｍａｐａｒｅａｓ＞である。前記作業状態命令コントロールは、ハードウェアまたはソフトウェアで設定でき、作業状態命令コントロールを押すと、この作業状態命令コントロールが対応するサブ領域に対し指定の状態に設定される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０１１６
【補正方法】変更
【補正の内容】
【０１１６】
一実施形態中、前記方法は、作業状態命令操作に応じて、前記作業状態命令操作によって指定の少なくとも一つのサブ領域の作業状態が、前記作業状態命令操作によって指定の状態に設定されることをさらに含む。一実施形態中、任意のサブ領域の作業状態に応じて、コントロールの操作を設定し、このサブ領域の作業状態を指定の状態に設定し、あるいは、任意のサブ領域の座標を入力する操作に応じて、このサブ領域の作業状態を指定の状態に設定されることをさらに含む。前記経路に駆動障害があることが検出されると、駆動障害が存在するサブ領域がロック状態に設定される。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０１３４
【補正方法】変更
【補正の内容】
【０１３４】
一実施形態中、当該装置はセットアップモジュールをさらに含み、前記セットアップモジュールは、作業状態命令操作に応じて、前記作業状態命令操作によって指定の少なくとも一つのサブ領域の作業状態を、前記作業状態命令操作によって指定の状態に設定するように構成される。
【手続補正５】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ロボットをスケジューリングするための方法であって、
スケジューリング命令を受け取ることと、
スケジューリング命令に応答して、作業領域中のロボットの作業状態と現在位置を確定し、ここで、前記作業状態には、アイドル状態および非アイドル状態を含むことと、
前記ロボットの作業状態がアイドル状態で、且つ、現在位置が事前設定された目標範囲外の情況で、前記ロボットを前記現在位置から目標範囲にスケジューリングすることとを含む、ロボットをスケジューリングするための方法。
【請求項２】
前記作業領域にあるロボットの作業状態の確定は、
作業領域のロボットが実行を待つタスクがあるか、あるいは実行中のタスクがあるかを判断することと、
前記ロボットが実行を待つタスクがないか、あるいは実行中のタスクがない判定結果に応じて、前記ロボットの作業状態がアイドル状態と確定し、前記ロボットが実行を待つタスクがあり、あるいは前記実行中のタスクがあるという判断結果に応じて、前記ロボットの作業状態が前記非アイドル状態であると確定することを含む、請求項１に記載の方法。
【請求項３】
前記ロボットを前記現在位置から前記目標範囲内にスケジューリングすることは、
前記目標範囲内で、前記ロボットの目標位置を確定することと、
前記現在位置から前記目標位置までの最適な経路を計算することと、
前記最適な経路に基づき、前記ロボットを前記現在位置から前記目標位置までスケジューリングすることとを含む、請求項１または請求項２に記載の方法。
【請求項４】
前記目標範囲内で前記ロボットの目標位置を確定することは、
前記目標範囲内で前記ロボットの計画位置を確定することと、
前記ロボットの計画位置が事前設定されたスケジューリング条件を満たしているかどうかを判断し、前記ロボットの計画位置が前記スケジューリング条件を満たす判断結果に応じ、前記ロボットの計画位置を前記ロボットの目標位置として確定することとを含む、請求項３に記載の方法。
【請求項５】
前記目標範囲を少なくとも一つのセルに分割し、前記ロボットの目標位置をセル単位で確定し、ここで、前記目標範囲の形状は長方形で、前記目標範囲は、事前設定された開始点位置と幅と高さによって確定される、請求項４に記載の方法。
【請求項６】
前記事前設定されたスケジューリング条件は、
前記ロボットが垂直に配置されている場合、前記ロボットの計画位置で水平に隣接するセルがアイドル状態である条件と、
前記ロボットが水平に配置されている場合、前記ロボットの計画位置で垂直に隣接するセルはアイドル状態である条件とを含む、請求項５に記載の方法。
【請求項７】
ロボットの数が前記目標範囲内に受け入れるロボットの数よりも多い場合は、目標範囲を再確定し、また、前記ロボットの作業状態がアイドル状態で、且つ現在位置が事前設定された目標範囲外にある場合、前記ロボットを前記現在位置から前記新しい目標範囲にスケジューリングすることをさらに含む、請求項１に記載の方法。
【請求項８】
ロボットをスケジューリングするための方法であって、
消防信号を受信することと、
消防信号に応答し、ロボットが移動状態にあり、且つ計画した経路の次のセルが事前設定された消防通路領域に位置する場合、前記ロボットを制御して前記次のセルに移動し、そして計画した経路に従い移動を続け、次のセルが事前設定された消防通路領域でなくなるまで移動し、移動を停止することとを含む、ロボットをスケジューリングするための方法。
【請求項９】
消防信号を受信した後、
前記ロボットは停止状態にあり、且つ前記ロボットの現在のセルが事前設定された消防通路領域にある場合は、前記ロボットの経路を再計画し、そして、前記ロボットを制御して、新たに計画された経路に沿って移動し、前記事前設定された消防通路領域を離れることをさらに含む、請求項８に記載の方法。
【請求項１０】
前記ロボットの経路を再計画し、そして、前記ロボットを制御して、新たに計画された経路に沿って移動し、前記事前設定された消防通路領域を離れることは、
前記ロボットと転送エンドポイントの間の距離と転送エンドポイントが配置されている所定の領域内のロボット密度の少なくとも一つに基づいて、前記ロボットの転送エンドポイントを選択することと、
選択した転送エンドポイントに基づき前記ロボットの経路を再計画し、前記ロボットを制御し新たに計画された経路に沿って前記選択した転送エンドポイントに移動することを含む、請求項９に記載の方法。
【請求項１１】
前記消防信号は、消防緊急停止ボタンによってトリガーされるか、または外部インターフェースを通じて受信する、請求項８に記載の方法。
【請求項１２】
ロボットの経路の制御方法であって、前記ロボットの作業領域が複数のセルに分割し、
前記方法は、
前記ロボットが計画された経路に従って移動中、前記ロボットが配置されている現在のセルの作業状態を確定することと、
前記現在のセルがロック状態にあることが検出されると、前記ロボットを制御して移動を停止することと、
前記現在のセルがロック解除状態で、且つ次のセルがロック状態にあることが検出されると、前記次のセルを回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導することと、
前記現在のセルと次のセルの両方がロック解除状態にあることが検出されると、計画された経路に従って移動するように前記ロボットを誘導することを含む、ロボットの経路の制御方法。
【請求項１３】
前記ロボットの経路を計画する過程で、作業領域内のセルの作業状態を確定し、作業状態がロックされているセルが計画された経路上にないことをさらに含む、請求項１２に記載の方法。
【請求項１４】
前記作業状態がバッファ状態をさらに含み、前記方法は、
前記現在のセルがバッファ状態にあり、且つ次のセルがロック状態にあることを検出されると、前記次のセルを回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導することと、
前記現在のセルと次のセルの両方がバッファ状態にあることが検出されると、前記現在のセルがロック解除状態で、且つ前記次のセルがバッファ状態であるか、あるいは前記現在のセルがバッファ状態で、且つ前記次のセルがロック解除状態である場合、前記経路に従って移動するように前記ロボットを誘導することをさらに含む、請求項１２に記載の方法。
【請求項１５】
作業状態命令操作に応じて、前記作業状態命令操作により指定した少なくとも一つのセルの作業状態を、前記作業状態命令操作により指定した状態に設定することをさらに含む、請求項１２から１４のいずれか一項に記載の方法。
【請求項１６】
作業状態命令操作に応じて、前記作業状態命令操作により指定した少なくとも一つのセルの作業状態を、前記作業状態命令操作により指定した状態に設定することは、
任意のセルの作業状態に応じて、制御の操作を設定し、このセルの作業状態を指定の状態に設定し、あるいは、
任意のセル座標の操作を入力することに応じて、このセルの作業状態を指定の状態に設定することを含む、請求項１５に記載の方法。
【請求項１７】
前記計画された経路に駆動障害があることが検出されると、駆動障害が存在するセルがロック状態に設定されることをさらに含む、請求項１２に記載の方法。
【請求項１８】
前記現在のセルがロック解除状態で、且つ次のセルがロック状態にあることが検出されると、前記次のセルを回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導することは、
前記ロボットが、現在のセルがロック解除状態にあり、且つ次のセルがロック状態にあることが検出されると、前記次のセルが事前設定された時間が経過した後も、ロック状態にあるかどうかを判断することと、
次のセルが事前設定された時間が経過した後もロック状態にあるという判断結果に応じ、前記次のセルを回避するために前記ロボットの経路を再計画し、そして再計画された経路に従って移動するように前記ロボットを誘導することを含む、請求項１２に記載の方法。
【請求項１９】
フルフィールドロック操作に応じて、作業領域内のすべてのロボットを制御して移動を停止することをさらに含む、請求項１２に記載の方法。
【請求項２０】
少なくとも一つのプロセッサーと、
少なくとも一つのプログラムを格納する用に構成されたメモリと
を含み、
前記少なくとも一つのプログラムが少なくとも一つのプロセッサーによって実行され、請求項１から１８のいずれか一項に記載の方法を実現する、サーバー。
【請求項２１】
コンピュータプログラムを格納し、前記プログラムがプロセッサーによって実行される時に、請求項１から請求項１９のいずれか一項に記載の方法を実現する、コンピュータ記憶媒体。
【国際調査報告】
2021522618.tif 000019
2021522618.tif 000020
2021522618.tif 000021
2021522618.tif 000022
2021522618.tif 000023
2021522618.tif 000024