(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2021-12-08
(45)【発行日】2022-01-12
(54)【発明の名称】ロボットの移動を制御するための方法、システムおよび非一過性のコンピュータ読み取り可能な記録媒体
(51)【国際特許分類】
G05D 1/02 20200101AFI20220104BHJP
G05B 13/02 20060101ALI20220104BHJP
G05B 11/36 20060101ALI20220104BHJP
【FI】
G05D1/02 W
G05B13/02 B
G05B11/36 F
(21)【出願番号】P 2020156156
(22)【出願日】2020-09-17
【審査請求日】2020-09-17
(32)【優先日】2020-08-20
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520513451
【氏名又は名称】ベアー ロボティックス,インコーポレイテッド
(74)【代理人】
【識別番号】110002516
【氏名又は名称】特許業務法人白坂
(72)【発明者】
【氏名】ポン,ブライアント レオ
(72)【発明者】
【氏名】レインホス,ヘンリー エー.
(72)【発明者】
【氏名】ジュン,サンハン
【審査官】大古 健一
(56)【参考文献】
【文献】特開2008-56064(JP,A)
【文献】矢崎 靖啓 Yasuhiro Yazaki,PWS型移動ロボットの加速度制限付き最速誘導制御 Fastest Guidance Control with Acceleration Restriction of PWS Mobile Robot,日本ロボット学会誌 第25巻 第4号 Journal of the Robotics Society of Japan,日本,社団法人日本ロボット学会 The Robotics Society of Japan,2007年05月15日,第25巻,51~60
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/00- 1/12
G05B 1/00- 7/04
G05B 11/00-13/04
G05B 17/00-17/02
G05B 21/00-21/02
(57)【特許請求の範囲】
【請求項1】
ロボットの移動を制御するための方法であって、
(a)ロボットが移動するにつれて特定される第1線速度(linear velocity)に関するパラメータおよび第1角速度(angular velocity)に関するパラメータを、求心加速度を制限するための第1制限モデルに入力して補正することによって第2線速度に関するパラメータおよび第2角速度に関するパラメータを算出する段階、
(b)前記第2線速度に関するパラメータおよび前記第2角速度に関するパラメータを、線速度を制限するための第2制限モデルおよび角速度を制限するための第3制限モデルのうち少なくとも一つに入力して補正することによって第3線速度に関するパラメータおよび第3角速度に関するパラメータを算出する段階、および
(c)前記第3線速度に関するパラメータおよび前記第3角速度に関するパラメータに基づいて前記ロボットの移動を制御する段階を含む、方法。
【請求項2】
前記(a)段階は、
前記第1線速度に関するパラメータおよび前記第1角速度に関するパラメータに基づいて第1求心加速度を算出する段階、および
前記第1制限モデルから特定される求心加速度制限基準と前記第1求心加速度とを比較して算出される差を利用して前記第1線速度に関するパラメータおよび前記第1角速度に関するパラメータをそれぞれ補正することによって、前記第2線速度に関するパラメータおよび前記第2角速度に関するパラメータを算出する段階を含む、請求項1に記載の方法。
【請求項3】
前記(b)段階で、前記第2線速度に関するパラメータおよび前記第2角速度に関するパラメータが前記第2制限モデルに入力変数として入力され、前記第2制限モデルから出力される出力変数が第3制限モデルに入力変数として入力される、請求項1に記載の方法。
【請求項4】
前記(b)段階は、
前記第2制限モデルから特定される線速度制限基準と前記第2線速度に関するパラメータとを比較して算出される差を利用して前記第2角速度に関するパラメータを補正することによって前記第3角速度に関するパラメータを算出し、前記線速度制限基準より前記第2線速度に関するパラメータがより大きい場合に前記第2線速度に関するパラメータを前記線速度制限基準で制限されるように補正する段階、および
前記第3制限モデルから特定される角速度制限基準と前記第3角速度に関するパラメータとを比較して算出される差を利用して前記第2線速度に関するパラメータまたは前記線速度制限基準で制限されるように補正された前記第2線速度に関するパラメータを補正することによって前記第3線速度に関するパラメータを算出し、前記角速度制限基準より前記第3角速度に関するパラメータがより大きい場合に前記第3角速度に関するパラメータが前記角速度制限基準で制限されるように補正する段階を含む、請求項1に記載の方法。
【請求項5】
前記(b)段階は、
前記第3制限モデルから特定される角速度制限基準と前記第2角速度に関するパラメータとを比較して算出される差を利用して前記第2線速度に関するパラメータを補正することによって前記第3線速度に関するパラメータを算出し、前記角速度制限基準より前記第2角速度に関するパラメータがより大きい場合に前記第2角速度に関するパラメータを前記角速度制限基準で制限されるように補正する段階、および
前記第2制限モデルから特定される線速度制限基準と前記第3線速度に関するパラメータとを比較して算出される差を利用して前記第2角速度に関するパラメータまたは前記角速度制限基準で制限されるように補正された前記第2角速度に関するパラメータを補正することによって前記第3角速度に関するパラメータを算出し、前記線速度制限基準より前記第3線速度に関するパラメータがより大きい場合に前記第3線速度に関するパラメータが前記線速度制限基準で制限されるように補正する段階を含む、請求項1に記載の方法。
【請求項6】
前記(c)段階で、前記ロボットの速度をフィードバックして提供するフィードバック制御ループを利用して前記ロボットの移動を制御する、請求項1に記載の方法。
【請求項7】
請求項1に記載された方法を実行するためのコンピュータプログラムを記録した、非一過性のコンピュータ読み取り可能な記録媒体。
【請求項8】
ロボットの移動を制御するためのシステムであって、
ロボットが移動するにつれて特定される第1線速度に関するパラメータおよび第1角速度に関するパラメータを、求心加速度を制限するための第1制限モデルに入力して補正することによって第2線速度に関するパラメータおよび第2角速度に関するパラメータを算出し、前記第2線速度に関するパラメータおよび前記第2角速度に関するパラメータを、線速度を制限するための第2制限モデルおよび角速度を制限するための第3制限モデルのうち少なくとも一つに入力して補正することによって第3線速度に関するパラメータおよび第3角速度に関するパラメータを算出する補正パラメータ算出部、および
前記第3線速度に関するパラメータおよび前記第3角速度に関するパラメータに基づいて前記ロボットの移動を制御するロボット移動管理部を含む、システム。
【請求項9】
前記補正パラメータ算出部は、前記第1線速度に関するパラメータおよび前記第1角速度に関するパラメータに基づいて第1求心加速度を算出し、前記第1制限モデルから特定される求心加速度制限基準と前記第1求心加速度とを比較して算出される差を利用して前記第1線速度に関するパラメータおよび前記第1角速度に関するパラメータをそれぞれ補正することによって、前記第2線速度に関するパラメータおよび前記第2角速度に関するパラメータを算出する、請求項8に記載のシステム。
【請求項10】
前記第2線速度に関するパラメータおよび前記第2角速度に関するパラメータが前記第2制限モデルに入力変数として入力され、前記第2制限モデルから出力される出力変数が第3制限モデルに入力変数として入力される、請求項8に記載のシステム。
【請求項11】
前記補正パラメータ算出部は、前記第2制限モデルから特定される線速度制限基準と前記第2線速度に関するパラメータとを比較して算出される差を利用して前記第2角速度に関するパラメータを補正することによって前記第3角速度に関するパラメータを算出し、前記線速度制限基準より前記第2線速度に関するパラメータがより大きい場合に前記第2線速度に関するパラメータを前記線速度制限基準で制限されるように補正し、前記第3制限モデルから特定される角速度制限基準と前記第3角速度に関するパラメータとを比較して算出される差を利用して前記第2線速度に関するパラメータまたは前記線速度制限基準で制限されるように補正された前記第2線速度に関するパラメータを補正することによって前記第3線速度に関するパラメータを算出し、前記角速度制限基準より前記第3角速度に関するパラメータがより大きい場合に前記第3角速度に関するパラメータが前記角速度制限基準で制限されるように補正する、請求項8に記載のシステム。
【請求項12】
前記補正パラメータ算出部は、前記第3制限モデルから特定される角速度制限基準と前記第2角速度に関するパラメータとを比較して算出される差を利用して前記第2線速度に関するパラメータを補正することによって前記第3線速度に関するパラメータを算出し、前記角速度制限基準より前記第2角速度に関するパラメータがより大きい場合に前記第2角速度に関するパラメータを前記角速度制限基準で制限されるように補正し、前記第2制限モデルから特定される線速度制限基準と前記第3線速度に関するパラメータとを比較して算出される差を利用して前記第2角速度に関するパラメータまたは前記角速度制限基準で制限されるように補正された前記第2角速度に関するパラメータを補正することによって前記第3角速度に関するパラメータを算出し、前記線速度制限基準より前記第3線速度に関するパラメータがより大きい場合に前記第3線速度に関するパラメータが前記線速度制限基準で制限されるように補正する、請求項8に記載のシステム。
【請求項13】
前記ロボット移動管理部は、前記ロボットの速度をフィードバックして提供するフィードバック制御ループを利用して前記ロボットの移動を制御する、請求項8に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はロボットの移動を制御するための方法、システムおよび非一過性のコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【0002】
ロボットは難しい作業や反復的な操作などを自動化して遂行できるため、多様な分野で人間の代わりにまたは補助するのに活用されている。最近、このようなロボットの移動制御に関する多様な研究が進行されている。
【0003】
これに関する従来技術の一例として、特許文献1に開示された技術が挙げられるが、これによると、ステレオカメラを具備する移動ロボットにおいて、移動ロボットが目標物を追従しながら映像を取得し、その取得した映像を所定の信号に処理する過程と、前記映像を利用して目標物までの距離情報を取得する過程と、前記距離情報を第1停止領域と比較して前記移動ロボットを停止または移動させ、停止領域を可変させて前記距離情報を第2停止領域と比較し、その比較結果に基づいた可変速度プロファイルを生成して移動ロボットを停止させる過程を遂行することを特徴とする、移動ロボットの停止制御方法が紹介されている。
【0004】
前記のような従来技術をはじめ、これまで紹介された技術によると、ロボットの移動を制御するために、それと関連した線速度や角速度を個別的に制御したり線速度のみを制御していたため、ロボットの移動が不自然であったり急制動が発生する場合が多かったのであり、これはロボットが運搬したり積載している客体(例えば、飲食)をこぼしたり、ロボットの全体的な姿勢を不安定にさせる要因となった。
【先行技術文献】
【特許文献】
【0005】
【0006】
そこで、本発明者等は、ロボットの移動に関連したパラメータ(例えば、求心加速度、線速度、角速度など)を制御するモデルを直列連結して順次制限条件(constraint condition)を付与することによって、該当ロボットの移動を自然でありながらも効率的に制御できる新規かつ進歩した技術を提案するところである。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、前述した従来技術の問題点をすべて解決することをその目的とする。
【0008】
また、本発明は、ロボットが安定的であり、滑らかで自然に移動できるように制御することをその目的とする。
【0009】
また、本発明は、ロボットまたはそのロボットが運送または積載している客体(例えば、カップ、器、飲食など)に対して及ぼす影響(例えば、慣性)を最小化することをさらに他の目的とする。
【課題を解決するための手段】
【0010】
前記目的を達成するための本発明の代表的な構成は次の通りである。
【0011】
本発明の一態様によると、ロボットの移動を制御するための方法であって、(a)ロボットが移動するにつれて特定される第1線速度(linear velocity)に関するパラメータおよび第1角速度(angular velocity)に関するパラメータを、求心加速度を制限するための第1制限モデルに入力して補正することによって第2線速度に関するパラメータおよび第2角速度に関するパラメータを算出する段階、(b)前記第2線速度に関するパラメータおよび前記第2角速度に関するパラメータを、線速度を制限するための第2制限モデルおよび角速度を制限するための第3制限モデルのうち少なくとも一つに入力して補正することによって第3線速度に関するパラメータおよび第3角速度に関するパラメータを算出する段階、および(c)前記第3線速度に関するパラメータおよび前記第3角速度に関するパラメータに基づいて前記ロボットの移動を制御する段階を含む方法が提供される。
【0012】
本発明の他の態様によると、ロボットの移動を制御するためのシステムであって、ロボットが移動するにつれて特定される第1線速度に関するパラメータおよび第1角速度に関するパラメータを、求心加速度を制限するための第1制限モデルに入力して補正することによって第2線速度に関するパラメータおよび第2角速度に関するパラメータを算出し、前記第2線速度に関するパラメータおよび前記第2角速度に関するパラメータを、線速度を制限するための第2制限モデルおよび角速度を制限するための第3制限モデルのうち少なくとも一つに入力して補正することによって第3線速度に関するパラメータおよび第3角速度に関するパラメータを算出する補正パラメータ算出部、および前記第3線速度に関するパラメータおよび前記第3角速度に関するパラメータに基づいて前記ロボットの移動を制御するロボット移動管理部を含むシステムが提供される。
【0013】
この他にも、本発明を具現するための他の方法、他のシステムおよび前記方法を実行するためのコンピュータプログラムを記録した非一過性のコンピュータ読み取り可能な記録媒体がさらに提供される。
【発明の効果】
【0014】
本発明によると、ロボットが安定的であり、滑らかで自然に移動できるように制御することができる。
【0015】
また、本発明によると、ロボットまたはそのロボットが運送または積載している客体(例えば、カップ、器、飲食など)に対して及ぼす影響(例えば、慣性)を最小化することができる。
【図面の簡単な説明】
【0016】
【
図1】本発明の一実施例によりロボットの移動を制御するための全体システムの構成を概略的に示す図面。
【
図2】本発明の一実施例に係るロボット移動制御システムの内部構成を例示的に示す図面。
【
図3】本発明の一実施例によりロボットの移動を制御する過程を例示的に示す図面。
【
図4】本発明の一実施例によりロボットの移動を制御する過程を例示的に示す図面。
【
図5】本発明の一実施例によりロボットの移動を制御する過程を例示的に示す図面。
【
図6】本発明の一実施例によりロボットの移動を制御する過程を例示的に示す図面。
【
図7】本発明の一実施例によりロボットの移動を制御する過程を例示的に示す図面。
【
図8】本発明の一実施例によりロボットの移動を制御する過程を例示的に示す図面。
【
図9】本発明の一実施例に係るロボットの構造を例示的に示す図面。
【
図10】本発明の一実施例に係るロボットの構造を例示的に示す図面。
【発明を実施するための形態】
【0017】
後述する本発明に対する詳細な説明は、本発明が実施され得る特定の実施例を例示として図示する添付図面を参照する。このような実施例は当業者が本発明を実施できる程度に充分かつ詳細に説明される。本発明の多様な実施例は互いに異なるが互いに排他的である必要はないことが理解されるべきである。例えば、本明細書に記載されている特定の形状、構造および特性は、本発明の精神と範囲を逸脱することなく一実施例から他の実施例に変更されて具現され得る。また、それぞれの実施例内の個別の構成要素の位置または配置も本発明の精神と範囲を逸脱することなく変更され得ることが理解されるべきである。したがって、後述する詳細な説明は限定的な意味で行われるものではなく、本発明の範囲は特許請求の範囲の請求項が請求する範囲およびそれと均等なすべての範囲を包括するものと理解されるべきである。図面で類似する参照符号は多様な側面にわたって同一または類似する構成要素を示す。
【0018】
以下では、本発明が属する技術分野で通常の知識を有する者が本発明を容易に実施できるようにするために、本発明のいくつかの好ましい実施例に関して添付された図面を参照して詳細に説明する。
【0019】
全体システムの構成
図1は、本発明の一実施例によりロボットの移動を制御するための全体システムの構成を概略的に示す図面である。
【0020】
図1に図示された通り、本発明の一実施例に係る全体システムは、通信網100、ロボット移動制御システム200およびロボット300を含むことができる。
【0021】
まず、本発明の一実施例によると、通信網100は有線通信や無線通信のような通信の様態にかかわらず構成され得、近距離通信網(LAN;Local Area Network)、都市圏通信網(MAN;Metropolitan Area Network)、広域通信網(WAN;Wide Area Network)等の多様な通信網で構成され得る。好ましくは、本明細書における通信網100は公知のインターネットまたはワールドワイドウェブ(WWW;World Wide Web)であり得る。しかし、通信網100は、これに限定されず、公知の有無線データ通信網、公知の電話網、または公知の有無線テレビジョン通信網をその少なくとも一部において含んでもよい。
【0022】
例えば、通信網100は無線データ通信網であって、ワイファイ(WiFi)通信、ワイファイダイレクト(WiFi-Direct)通信、ロングタームエボリューション(LTE;Long Term Evolution)通信、ブルートゥース(登録商標)通信(さらに具体的には、低電力ブルートゥース(BLE;Bluetooth(登録商標) Low Energy)通信)、赤外線通信、超音波通信などのような従来の通信方法を、少なくともその一部分において具現するものであり得る。
【0023】
次いで、本発明の一実施例に係るロボット移動制御システム200は、通信網100を介して後述するロボット300と通信を遂行することができ、ロボット300が移動するにつれて特定される第1線速度(linear velocity)に関するパラメータおよび第1角速度(angular velocity)に関するパラメータを、求心加速度を制限するための第1制限モデルに入力して補正することによって第2線速度に関するパラメータおよび第2角速度に関するパラメータを算出し、第2線速度に関するパラメータおよび第2角速度に関するパラメータを、線速度を制限するための第2制限モデルおよび角速度を制限するための第3制限モデルのうち少なくとも一つに入力して補正することによって第3線速度に関するパラメータおよび第3角速度に関するパラメータを算出し、第3線速度に関するパラメータおよび第3角速度に関するパラメータに基づいてロボット300の移動を制御する機能を遂行することができる。
【0024】
一方、ロボット移動制御システム200について前記のように説明したが、このような説明は例示的なものであって、ロボット移動制御システム200に要求される機能や構成要素の少なくとも一部が、必要に応じて後述するロボット300または外部システム(図示されず)内で実現されるか、ロボット300または外部システム内に含まれ得ることは当業者に自明である。また、場合によっては、ロボット移動制御システム200のすべての機能とすべての構成要素が、ロボット300内ですべて実現されるか、ロボット300内にすべて含まれてもよい。
【0025】
次いで、本発明の一実施例に係るロボット300は、通信網100を介してロボット移動制御システム200と通信することができ、使用者による操作がなくても所定の機能や付与された作業(例えば、飲食のサービング、容器の回収など)を自律的に遂行できる機器であって、客体(例えば、飲食トレイ)のローディングおよびアンローディングのためのモジュール(例えば、グラブ、ロボットアームモジュールなど)、周辺の映像を取得するための映像モジュール(例えば、可視光線カメラ、赤外線カメラなど)およびロボット300の移動のための駆動モジュール(例えば、モータなど)のうち、少なくとも一つのモジュールを含むことができる。例えば、このようなロボット300は案内ロボット、運搬ロボット、清掃ロボット、医療ロボット、エンターテインメントロボット、ペットロボットおよび無人飛行ロボットのうち、少なくとも一つと類似する特性や機能を有するロボットであり得る。
【0026】
一方、本発明の一実施例によると、ロボット300にはロボット300の移動を制御するためのアプリケーションが含まれていてもよい。このようなアプリケーションはロボット移動制御システム200または外部のアプリケーション配布サーバー(図示されず)からダウンロードされたものであり得る。
【0027】
ロボット移動制御システムの構成
以下では、本発明の具現のために重要な機能を遂行するロボット移動制御システム200の内部構成および各構成要素の機能について詳察する。
【0028】
図2は、本発明の一実施例に係るロボット移動制御システム200の内部構成を例示的に示す図面である。
【0029】
図2を参照すると、本発明の一実施例に係るロボット移動制御システム200は、補正パラメータ算出部210、ロボット移動管理部220、通信部230および制御部240を含むことができる。本発明の一実施例によると、補正パラメータ算出部210、ロボット移動管理部220、通信部230および制御部240は、そのうち少なくとも一部が外部システム(図示されず)と通信するプログラムモジュールであり得る。このようなプログラムモジュールは、運営システム、アプリケーションモジュールおよびその他のプログラムモジュールの形態でロボット移動制御システム200に含まれ得、物理的には多様な公知の記憶装置上に保存され得る。また、このようなプログラムモジュールは、ロボット移動制御システム200と通信可能な遠隔記憶装置に保存されてもよい。一方、このようなプログラムモジュールは、本発明により後述する特定の業務を遂行したり特定の抽象データの類型を実行するルーチン、サブルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを包括するが、これに制限されはしない。
【0030】
まず、本発明の一実施例に係る補正パラメータ算出部210は、ロボット300が移動するにつれて特定される第1線速度(linear velocity)に関するパラメータおよび第1角速度(angular velocity)に関するパラメータを、求心加速度を制限するための第1制限モデルに入力して補正することによって第2線速度に関するパラメータおよび第2角速度に関するパラメータを算出することができる。本発明の一実施例によると、補正パラメータ算出部210はロボット300が移動する場合に該当ロボット300に含まれるか相互に連動する映像感知センサ、加速度センサジャイロセンサのようなセンサモジュールを利用して、第1線速度(linear velocity)に関するパラメータおよび第1角速度(angular velocity)に関するパラメータを取得することができる。
【0031】
例えば、補正パラメータ算出部210はロボット300の第1線速度に関するパラメータおよび第1角速度に関するパラメータに基づいて第1求心加速度を算出することができ、第1制限モデルから特定される求心加速度制限基準と第1求心加速度とを比較して算出される差を利用して、第1線速度に関するパラメータおよび第1角速度に関するパラメータをそれぞれ補正することによって、第2線速度に関するパラメータおよび第2角速度に関するパラメータを算出することができる。本発明の一実施例に係る第1制限モデルは求心加速度に基づいてその制限基準が動的に特定され得るモデルであって、例えば、求心加速度とその制限基準が階段の形態、比例の形態などの対応関係(例えば、求心加速度を横軸に示し、制限基準を縦軸に示す場合に、そのグラフの形態が階段の形態または比例の形態である関係)を有するように動的に決定されるモデルであり得る。
【0032】
より具体的には、
図3を参照すると、補正パラメータ算出部210は、第1線速度に関するパラメータ341および第1角速度に関するパラメータ342に基づいて算出される第1求心加速度350と第1制限モデル360から特定される求心加速度制限基準とを比較して、第1求心加速度350および求心加速度制限基準の間の差に基づいて補正値370を算出し、その補正値370を利用して第1線速度に関するパラメータ341および第1角速度に関するパラメータ342に対する演算(例えば、スケーリング)をそれぞれ遂行することによって、第2線速度に関するパラメータ343および第2角速度に関するパラメータ344を算出することができる。
【0033】
また、補正パラメータ算出部210は第2線速度に関するパラメータおよび第2角速度に関するパラメータを、線速度を制限するための第2制限モデルおよび角速度を制限するための第3制限モデルのうち少なくとも一つに入力して補正することによって第3線速度に関するパラメータおよび第3角速度に関するパラメータを算出することができる。本発明の一実施例に係る第2制限モデルは線速度に基づいてその制限基準が動的に特定され得るモデルであって、例えば、線速度とその制限基準が階段の形態、比例の形態などの対応関係(例えば、線速度を横軸に示し、制限基準を縦軸に示す場合に、そのグラフの形態が階段の形態または比例の形態である関係)を有するように動的に決定されるモデルであり得る。本発明の一実施例に係る第3制限モデルは角速度に基づいてその制限基準が動的に特定され得るモデルであって、例えば、角速度とその制限基準が階段の形態、比例の形態などの対応関係(例えば、角速度を横軸に示し、制限基準を縦軸に示す場合に、そのグラフの形態が階段の形態または比例の形態である関係)を有するように動的に決定されるモデルであり得る。
【0034】
例えば、補正パラメータ算出部210は、第2制限モデルから特定される線速度制限基準と第2線速度に関するパラメータとを比較して算出される差を利用して、第2角速度に関するパラメータを補正することによって第3角速度に関するパラメータを算出し、第2制限モデルから特定される線速度制限基準より第2線速度に関するパラメータがより大きい場合、第2線速度に関するパラメータが該当線速度制限基準で制限されるように補正することができる。また、補正パラメータ算出部210は、第3制限モデルから特定される角速度制限基準と第2角速度に関するパラメータとを比較して算出される差を利用して、第2線速度に関するパラメータを補正することによって第3線速度に関するパラメータを算出し、第3制限モデルから特定される角速度制限基準より第2角速度に関するパラメータがより大きい場合、第2角速度に関するパラメータが該当角速度制限基準で制限されるように補正することができる。
【0035】
他の例として、第2線速度に関するパラメータおよび第2角速度に関するパラメータが第2制限モデルに入力変数として入力され、第2制限モデルから出力される出力変数が第3制限モデルに入力変数として入力される場合に、補正パラメータ算出部210は、第2制限モデルから特定される線速度制限基準と第2線速度に関するパラメータとを比較して算出される差を利用して、第2角速度に関するパラメータを補正することによって第3角速度に関するパラメータを算出し、第2制限モデルから特定される線速度制限基準より第2線速度に関するパラメータがより大きい場合、第2線速度に関するパラメータを該当線速度制限基準で制限されるように補正することができる。その後、補正パラメータ算出部210は、第3制限モデルから特定される角速度制限基準と第3角速度に関するパラメータとを比較して算出される差を利用して、第2線速度に関するパラメータ(または前記制限されるように補正された第2線速度に関するパラメータ)を補正することによって第3線速度に関するパラメータを算出し、第3制限モデルから特定される角速度制限基準より第3角速度に関するパラメータがより大きい場合、第3角速度に関するパラメータが該当角速度制限基準で制限されるように補正することができる。
【0036】
さらに他の例として、第2線速度に関するパラメータおよび第2角速度に関するパラメータが第3制限モデルに入力変数として入力され、第3制限モデルから出力される出力変数が第2制限モデルに入力変数として入力される場合に、補正パラメータ算出部210は、第3制限モデルから特定される角速度制限基準と第2角速度に関するパラメータとを比較して算出される差を利用して、第2線速度に関するパラメータを補正することによって第3線速度に関するパラメータを算出し、第3制限モデルから特定される角速度制限基準より第2角速度に関するパラメータがより大きい場合、第2角速度に関するパラメータが該当角速度制限基準で制限されるように補正することができる。その後、補正パラメータ算出部210は、第2制限モデルから特定される線速度制限基準と第3線速度に関するパラメータとを比較して算出される差を利用して、第2角速度に関するパラメータ(または前記制限されるように補正された第2角速度に関するパラメータ)を補正することによって第3角速度に関するパラメータを算出し、第2制限モデルから特定される線速度制限基準より第3線速度に関するパラメータがより大きい場合、第3線速度に関するパラメータが該当線速度制限基準で制限されるように補正することができる。
【0037】
より具体的には、
図4を参照すると、補正パラメータ算出部210は、第2制限モデル410から特定される線速度制限基準と第2線速度に関するパラメータ401とを比較して算出される差に基づいて補正値420を算出し、その補正値420を利用して第2角速度に関するパラメータ402に対する演算(例えば、スケーリング)を遂行することによって第3角速度に関するパラメータ404を算出し、第2制限モデル410から特定される線速度制限基準より第2線速度に関するパラメータ401がより大きい場合、第2線速度に関するパラメータ401が該当線速度制限基準で制限403されるように補正することができる。また、
図5を参照すると、補正パラメータ算出部210は、第3制限モデル510から特定される角速度制限基準と第2角速度に関するパラメータ502とを比較して算出される差に基づいて補正値520を算出し、その補正値520を利用して第2線速度に関するパラメータ501に対する演算(例えば、スケーリング)を遂行することによって第3線速度に関するパラメータ503を算出し、第3制限モデル510から特定される角速度制限基準より第2角速度に関するパラメータ502がより大きい場合、第2角速度に関するパラメータ502が該当角速度制限基準で制限504されるように補正することができる。
【0038】
一方、前述した本発明に係る第1制限モデル、第2制限モデルおよび第3制限モデルは、ロボット300の状況(context)情報、ロボット300の位置情報などに基づいて動的に決定されるモデルであり得、マシンラーニング(machine learning)またはディープラーニング(deep learning)を含む人工知能(artificial intelligence;AI)を基盤として学習を遂行することによって特定されるモデルであり得る。
【0039】
次いで、ロボット移動管理部220は、補正パラメータ算出部210により算出される第3線速度に関するパラメータおよび第3角速度に関するパラメータに基づいてロボット300の移動を制御することができる。
【0040】
例えば、ロボット移動管理部220は、ロボット300の線速度および角速度が第3線速度に関するパラメータおよび第3角速度に関するパラメータに基づいて特定される線速度および角速度で制限され得るようにロボット300の移動を制御することができる。
【0041】
より具体的には、
図6を参照すると、ロボット移動管理部220は、ロボット300の線速度および角速度が第3線速度に関するパラメータおよび第3角速度に関するパラメータに基づいて特定される線速度および角速度で制限され得るようにロボット300の加速配る制限するハードリミッター(hard limiter)601およびフィードバック制御ループ602を利用してロボット300の移動を制御することができる。例えば、ロボット移動管理部220はハードリミッター(hard limiter)601を利用してロボット300の速度を調節し、フィードバック制御ループ602を利用してその調節される速度をフィードバックして提供することによってロボット300の移動を制御することができる。
【0042】
次いで、本発明の一実施例によると、通信部230は補正パラメータ算出部210およびロボット移動管理部220からの/へのデータの送受信を可能とさせる機能を遂行することができる。
【0043】
最後に、本発明の一実施例によると、制御部240は補正パラメータ算出部210、ロボット移動管理部220および通信部230間のデータの流れを制御する機能を遂行することができる。すなわち、本発明に係る制御部240は、ロボット移動制御システム200の外部からの/へのデータの流れまたはロボット移動制御システム200の各構成要素間のデータの流れを制御することによって、補正パラメータ算出部210、ロボット移動管理部220および通信部230でそれぞれ固有の機能を遂行するように制御することができる。
【0044】
図7は、本発明の一実施例によりロボット300の移動を制御する過程を例示的に示す図面である。
【0045】
図7を参照すると、ロボット300が移動するにつれて特定される第1線速度に関するパラメータ701および第1角速度に関するパラメータ702が求心加速度を制限するための第1制限モデル710に入力変数として入力され、第1制限モデル710から出力される出力変数711、712が第2制限モデル720に入力変数として入力され、第2制限モデル720から出力される出力変数721、722が第3制限モデル730に入力変数として入力される状況を仮定することができる。
【0046】
まず、ロボット300が移動するにつれて特定される第1線速度に関するパラメータ701および第1角速度に関するパラメータ702を第1制限モデル710に入力して補正することによって第2線速度に関するパラメータ711および第2角速度に関するパラメータ712が算出され得る。
【0047】
その後、第2制限モデル720から特定される線速度制限基準と第2線速度に関するパラメータ721とを比較して算出される差を利用して、第2角速度に関するパラメータ712を補正することによって第3角速度に関するパラメータ722が算出され、第2制限モデル720から特定される線速度制限基準より第2線速度に関するパラメータ711がより大きい場合、第2線速度に関するパラメータ711が該当線速度制限基準で制限されるように補正された第2線速度に関するパラメータ721が算出され得る。
【0048】
その後、第3制限モデル730から特定される角速度制限基準と第3角速度に関するパラメータ722とを比較して算出される差を利用して前記補正された第2線速度に関するパラメータ721を補正することによって第3線速度に関するパラメータ731を算出し、第3制限モデル730から特定される角速度制限基準より第3角速度に関するパラメータ722がより大きい場合、第3角速度に関するパラメータ722が該当角速度制限基準で制限されるように補正された第3角速度に関するパラメータ732が算出され得る。
【0049】
その後、ロボット300の線速度および角速度が、前記第3線速度に関するパラメータ731に基づいて特定される線速度および前記補正された第3角速度に関するパラメータ732に基づいて特定される角速度でそれぞれ制限されるように調節741、751することによって、ロボット300の移動を制御することができる。前記のようにロボット300の線速度および角速度を調節するために、線速度成形フィルタ740および角速度成形フィルタ750をそれぞれ利用することができる。
【0050】
図8は、本発明の一実施例によりロボット300の移動を制御する他の過程を例示的に示す図面である。
【0051】
図8を参照すると、本発明の一実施例によりロボット300の移動を制御するために、ロボット移動制御システム200が制御命令処理システム400および安全制御システム500と相互に連動する状況を示した図面である。
【0052】
本発明の一実施例に係る制御命令処理システム400は、通信網100を介してロボット移動制御システム200、ロボット300および安全制御システム500と通信を遂行することができ、ロボット300に対して入力される複数の制御命令それぞれのタイムアウト期間(timeout duration)および優先順位(priority)を参照して制御命令を処理(例えば、活性化または非活性化)する機能を遂行することができる。例えば、制御命令処理システム400は、複数のチャネルを通じて入力されるロボット300の移動と関連した複数の制御命令に基づいて制御命令の活性化に関する優先順位を決定し、その決定される優先順位またはそれより高い優先順位の制御命令を活性化させ、活性化される制御命令の優先順位より低い順位の制御命令を非活性化させたり無視することができる。また、制御命令処理システム400は現在活性化された制御命令の優先順位より高い優先順位に該当する制御命令が入力されると、その入力される制御命令が先に活性化されるようにすることができる。また、制御命令処理システム400は活性化した制御命令のタイムアウト期間が経過すると、該当制御命令の優先順位を低くしたり(または該当優先順位を「empty」に設定したり)、該当制御命令を非活性化させて他の制御命令が活性化されるようにすることができる。一方、制御命令処理システム400は制御命令を対象にタイムアウト期間が経過したか否かを判断するために、所定のタイマー(例えば、カウントダウンウォッチドッグ(countdown watchdog)タイマー)を含んでもよい。
【0053】
また、本発明の一実施例に係る安全制御システム500は、通信網100を介してロボット移動制御システム200、ロボット300および制御命令処理システム400と通信を遂行することができ、ロボット300の衝突の有無を感知してロボット300に対して停止命令を発生させる機能を遂行することができる。例えば、安全制御システム500は、ロボット300の撮影モジュール(例えば、3Dカメラ)またはスキャナモジュール(例えば、ライダー(LIDAR)センサ)に基づいて、ロボット300の経路上に障害物が探知されると、ロボット300の速度(例えば、線速度)および最大減速限界(例えば、これはロボット300の制動能力および場所の摩擦特性に基づいて特定され得る)に基づいて、安全停止距離(safe stopping distance)(例えば、ロボットの線速度および最大減速限界に基づいて特定される制動距離と所定のバッファー距離の和)を算出し、その安全停止距離とロボット300および障害物間の距離を参照して停止命令を発生させることができる。このような停止命令は例えば、ロボット300のペイロード客体(例えば、飲食)がこぼれることを防止し、ロボット300が障害物と衝突する前に停止できるようにロボット300を次第に減速させる命令であり得る。一方、安全制御システム500はロボット300の安全停止距離よりロボット300および障害物間の距離が小さくなると、ロボット300の速度が0となるように非常停止命令を発生させることができる。
【0054】
一方、制御命令処理システム400および安全制御システム500について前記のように説明されたが、このような説明は例示的なものであって、制御命令処理システム400および安全制御システム500に要求される機能や構成要素の少なくとも一部が、必要に応じてロボット移動制御システム200内で具現(例えば、この場合、該当構成要素はロボット移動制御システム200の制御命令処理部または安全制御部と命名され得る)されたり、別個のシステムで構成されてもよいことは当業者に自明である。
【0055】
本発明の一実施例によりロボット300の移動を制御する他の過程を詳察すると、まずロボット300に対して速度と関連した複数の制御命令が入力され、その複数の制御命令それぞれのタイムアウト期間および優先順位を参照して制御命令が処理され得る。
【0056】
この場合、ロボット300の撮影モジュール(例えば、3Dカメラ)またはスキャナモジュール(例えば、ライダーセンサ)に基づいて該当ロボット300の経路上に障害物が探知されると、ロボット300の速度(例えば、線速度および角速度)および最大減速限界に基づいて安全停止距離が算出され、安全停止距離とロボット300および障害物の間の距離を参照して停止命令が発生し得る。このような停止命令は複数の制御命令のうち優先順位が最も高く設定され得る。
【0057】
その後、ロボット300が移動するにつれて特定される第1線速度に関するパラメータおよび第1角速度に関するパラメータを、求心加速度を制限するための第1制限モデルに入力して補正することによって第2線速度に関するパラメータおよび第2角速度に関するパラメータが算出され、第2線速度に関するパラメータおよび第2角速度に関するパラメータを、線速度を制限するための第2制限モデルおよび角速度を制限するための第3制限モデルのうち少なくとも一つに入力して補正することによって第3線速度に関するパラメータおよび第3角速度に関するパラメータが算出され、第3線速度に関するパラメータおよび第3角速度に関するパラメータに基づいてロボット300が減速され得る。この場合、ロボットが移動するにつれて特定される第1線速度に関するパラメータおよび第1角速度に関するパラメータから第3線速度に関するパラメータおよび第3角速度に関するパラメータが算出され、第3線速度に関するパラメータおよび第3角速度に関するパラメータに基づいてロボット300の減速がなされる過程が繰り返し遂行されることによってロボット300の速度が徐々に減少し得、これを通じてロボット300のペイロード客体がこぼれることを防止し、ロボット300が障害物と衝突する前に安全かつ滑らかに停止できるようになる。
【0058】
ロボットの構成
本発明の一実施例に係るロボット300は、案内ロボット、サービングロボット、運搬ロボット、清掃ロボット、医療ロボット、エンターテインメントロボット、ペットロボットおよび無人飛行ロボットのうち少なくとも一つが遂行する作業と類似する作業を遂行するロボットであり得、このために各作業に符合する多様な形状で具現され得る。
【0059】
図9を参照すると、ロボット300は本体910、駆動部920およびプロセッサ930を含んで構成され得る。
【0060】
例えば、本発明の一実施例に係る本体910には、運送対象客体または回収対象客体を積載するための少なくとも一つの積載空間が含まれ得る。本発明の一実施例に係るこのような運送対象客体および回収対象客体は移動され得るすべての類型物を総称する概念であって、例えば、事物、動物、人などを含む概念であり得る。例えば、運送対象客体は飲食物であり、回収対象客体は該当飲食物が入っている容器であり得る。
【0061】
図10を参照すると、例えばロボット300がサービングロボットである場合に、運送対象客体の提供および回収対象客体の回収のための第1空間1010および第2空間1020を含むことができる。また、ロボット300は着脱式の柱を通じて提供される拡張空間である第3空間1030をさらに含むことができ、必要に応じて拡張空間をさらに追加することによってより多くの積載空間を具備することができる。また、ロボット300は運送対象客体または回収対象客体専用のトレイ1040をさらに含んでもよい。例えば、トレイ1040は上から見た時、その上面に複数個の円形の溝が形成された構成を有し得る。それぞれの円形溝は、飲み物が入ったカップの下部が載置されてある程度容易に固定されるように形成され得る。このような円形溝の大きさは多様であり得る。また、ロボット300の第1空間1010の下部には、ロボット300の側面を通じて取り出され得る第4空間1050がさらに含まれ得る。本発明の一実施例に係る第4空間1050はその内部に空いた空間が形成されており、側面は閉塞され、上面は開放され、下面は閉塞されている、籠と類似する形態を有し得る。ただし、本発明に係るロボット300の積載空間は前記の内容に限定されず、本発明の目的を達成できる範囲内で他の形態の積載空間等で多様に具現され得る。
【0062】
一方、本体910には周辺の映像および障害物情報を取得するための撮影モジュール(例えば、可視光線カメラ、赤外線カメラなど)(図示されず)およびスキャナモジュール(例えば、ライダー(LIDAR)センサ)がさらに含まれ得る。
【0063】
次いで、本発明の一実施例に係る駆動部920は、本体910を他の地点に移動させるためのモジュールまたは運送対象客体および回収対象客体をローディングおよびアンローディングするためのモジュールを含んで構成され得る。
【0064】
例えば、駆動部920は、本体910を他の地点に移動させるためのモジュールとして、電気式、機械式、または油圧式で駆動される車輪、プロペラなどに関するモジュールなどを含むことができ、運送対象客体および回収対象客体をローディングおよびアンローディングするためのモジュールとして、運送対象客体および回収対象客体を装着して運搬するためのロボットアームモジュールなどを含むことができる。
【0065】
次いで、本発明の一実施例に係るプロセッサ930は、駆動部920と電気的に連結されて駆動部920を制御する機能を遂行することができ(外部システムとの通信のための通信モジュールをさらに含んでもよい)、例えば、プログラム内に含まれたコードまたは命令で表現された機能を遂行するために物理的に構造化された回路を有する、ハードウェアに内蔵されたデータ処理装置を意味し得る。例えば、このようにハードウェアに内蔵されたデータ処理装置は、マイクロ・プロセッサ(microprocessor)、中央処理装置(central processing unit)、プロセッサコア(processor core)、マルチプロセッサ(multiprocessor)、ASIC(application-specific integrated circuit)、FPGA(field programmable gate array)等の処理装置を含むことができる。
【0066】
また、プロセッサ930は、本発明に係るロボット移動制御システム200の補正パラメータ算出部210およびロボット移動管理部220のうち少なくとも一つの機能を含むことができ(例えば、該当機能がモジュール化されて含まれ得る)、ロボット移動制御システム200の補正パラメータ算出部210およびロボット移動管理部220のうち少なくとも一つの機能が含まれる外部システム(図示されず)との通信を通じて駆動部920を制御する機能を遂行してもよい。
【0067】
具体的には、プロセッサ930は、ロボット300が移動するにつれて特定される第1線速度に関するパラメータおよび第1角速度に関するパラメータを、求心加速度を制限するための第1制限モデルに入力して補正することによって第2線速度に関するパラメータおよび第2角速度に関するパラメータを算出し、第2線速度に関するパラメータおよび第2角速度に関するパラメータを、線速度を制限するための第2制限モデルおよび角速度を制限するための第3制限モデルのうち少なくとも一つに入力して補正することによって第3線速度に関するパラメータおよび第3角速度に関するパラメータを算出し、第3線速度に関するパラメータおよび第3角速度に関するパラメータに基づいてロボット300の移動を制御する機能を遂行することができる。
【0068】
以上で説明された本発明に係る実施例は、多様なコンピュータ構成要素を通じて実行され得るプログラム命令語の形態で具現されて、コンピュータ読み取り可能な記録媒体に記録され得る。前記コンピュータ読み取り可能な記録媒体は、プログラム命令語、データファイル、データ構造などを単独でまたは組み合わせて含むことができる。前記コンピュータ読み取り可能な記録媒体に記録されるプログラム命令語は、本発明のために特別に設計されて構成されたものであるか、コンピュータソフトウェア分野の当業者に公知となって使用可能なものであり得る。コンピュータ読み取り可能な記録媒体の例には、ハードディスク、フロッピーディスクおよび磁気テープのような磁気媒体、CD-ROMおよびDVDのような光記録媒体、フロプティカルディスク(floptical disk)のような磁気-光媒体(magneto-optical medium)、およびROM、RAM、フラッシュメモリなどのような、プログラム命令語を保存し実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令語の例には、コンパイラによって作られるような機械語コードだけでなく、インタープリタなどを使ってコンピュータによって実行され得る高級言語コードも含まれる。ハードウェア装置は本発明に係る処理を遂行するために,一つ以上のソフトウェアモジュールで変更され得、その逆も同様である。
【0069】
以上、本発明を具体的な構成要素などのような特定の事項と限定された実施例および図面によって説明したが、これは本発明のより全般的な理解を助けるために提供されたものに過ぎず、本発明は前記実施例に限定されるものではなく、本発明が属する技術分野で通常の知識を有する者であればこのような記載から多様な修正と変更を試みることができる。
【0070】
したがって、本発明の思想は前記説明された実施例に限定されて定められてはならず、後述する特許請求の範囲だけでなく、その特許請求の範囲と均等なまたはこれから等価的に変更されたすべての範囲は本発明の思想の範疇に属するものと言える。
【符号の説明】
【0071】
100 通信網
200 ロボット移動制御システム
210 補正パラメータ算出部
220 ロボット移動管理部
230 通信部
240 制御部
300 ロボット
【要約】 (修正有)
【課題】ロボットが安定的であり、滑らかで自然に移動できるように制御する方法を提供する。
【解決手段】(a)ロボットが移動するにつれて特定される第1線速度に関するパラメータ701および第1角速度に関するパラメータ702を、求心加速度を制限するための第1制限モデル710に入力して補正することによって第2線速度に関するパラメータ711および第2角速度に関するパラメータ712を算出する段階、(b)前記第2線速度に関するパラメータおよび前記第2角速度に関するパラメータを、線速度を制限するための第2制限モデル720および角速度を制限するための第3制限モデル730のうち少なくとも一つに入力して補正することによって第3線速度に関するパラメータ731および第3角速度に関するパラメータ732を算出する段階、および(c)算出したパラメータに基づいて前記ロボットの移動を制御する段階を含む方法。
【選択図】
図7