(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-07-24
(54)【発明の名称】ロボット制御方法、装置、記憶媒体、電子機器、プログラム製品及びロボット
(51)【国際特許分類】
B25J 9/16 20060101AFI20230714BHJP
B25J 13/08 20060101ALI20230714BHJP
【FI】
B25J9/16
B25J13/08 Z
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021578155
(86)(22)【出願日】2021-06-29
(85)【翻訳文提出日】2022-03-15
(86)【国際出願番号】 CN2021103292
(87)【国際公開番号】W WO2022217754
(87)【国際公開日】2022-10-20
(31)【優先権主張番号】202110401397.5
(32)【優先日】2021-04-14
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】521562245
【氏名又は名称】達闥機器人股▲分▼有限公司
【住所又は居所原語表記】Building 8, No. 207, Zhongqing Road, Minhang District, Shanghai 200245, China
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100092624
【氏名又は名称】鶴田 準一
(74)【代理人】
【識別番号】100114018
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100153729
【氏名又は名称】森本 有一
(72)【発明者】
【氏名】ホアン シアオ-チン ウィリアム
(72)【発明者】
【氏名】チャン チャンチャオ
(72)【発明者】
【氏名】マー シーコイ
(72)【発明者】
【氏名】ワン ピン
(72)【発明者】
【氏名】ヤン コアンホア
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS34
3C707JS03
3C707KS06
3C707KS11
3C707KS16
3C707KS39
3C707KT01
3C707KT11
3C707KV11
3C707KV18
3C707LV14
3C707WL05
3C707WL07
3C707WM07
3C707WM30
(57)【要約】
本開示はロボット制御方法、装置、記憶媒体、電子機器、プログラム製品及びロボットに関する。ロボット制御方法は、ロボットの第1の制御命令を取得するステップと、前記第1の制御命令に対応する、目標順序に従って接続される複数のブループリントノードを含む行動ブループリントを決定するステップと、前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行するステップと、を含み、前記ブループリントノードに対応する所定機能はアトミックAPI能力、メタスキル及びタスクスキルを含み、前記アトミックAPI能力は前記ロボットが部品によって実行する具体的な機能を表すことに用いられ、前記メタスキルは前記ロボットの実行部材が具備する機能を表すことに用いられ、前記タスクスキルは前記ロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられ、前記ロボットは1つ又は複数の実行部材を含み、前記実行部材は1つ又は複数の部品を含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ロボット制御方法であって、
ロボットの第1の制御命令を取得するステップと、
前記第1の制御命令に対応する、目標順序に従って接続される複数のブループリントノードを含む行動ブループリントを決定するステップと、
前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行するステップと、を含み、
前記ブループリントノードに対応する所定機能はアトミックAPI能力、メタスキル及びタスクスキルを含み、前記アトミックAPI能力は前記ロボットが部品によって実行する具体的な機能を表すことに用いられ、前記メタスキルは前記ロボットの実行部材が具備する機能を表すことに用いられ、前記タスクスキルは前記ロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられ、前記ロボットは1つ又は複数の実行部材を含み、前記実行部材は1つ又は複数の部品を含むことを特徴とするロボット制御方法。
【請求項2】
前記タスクスキルは動作スキル及び行動スキルを含み、前記行動スキルは1つ又は複数の前記動作スキルを含み、前記動作スキルは1つ又は複数の前記メタスキルを含み、前記メタスキルは1つ又は複数の前記アトミックAPI能力を含むことを特徴とする請求項1に記載の方法。
【請求項3】
前記行動ブループリントは第1のブループリントノード、及び前記目標順序に従って前記第1のブループリントノードの後に接続される1つ又は複数の第1の候補ブループリントノードを含み、前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行する前記ステップは、
前記第1のブループリントノードに対応する所定機能を実行した後、前記第1の候補ブループリントノードが1つであると、該第1の候補ブループリントノードに対応する所定機能を実行するステップを含むことを特徴とする請求項1に記載の方法。
【請求項4】
前記行動ブループリントは各第1の候補ブループリントノードに対応する目標実行条件をさらに含み、
前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行する前記ステップは、
前記第1のブループリントノードに対応する所定機能を実行した後、前記第1の候補ブループリントノードが複数であると、前記第1のブループリントノードの実行結果及び/又は前記ロボットの現在の状態に応じて、目標実行条件を満たす対応する第1の候補ブループリントノードを決定し、該第1の候補ブループリントノードを第2のブループリントノードとするステップと、
前記第2のブループリントノードに対応する所定機能を実行するステップと、をさらに含むことを特徴とする請求項3に記載の方法。
【請求項5】
現在のブループリントノードに対応する所定機能を実行する場合、ユーザーが前記ロボットに対して入力するノード制御命令を受信すると、前記ノード制御命令が指示する目標ブループリントノードを取得するステップと、
前記現在のブループリントノードに対応する所定機能を実行した後、前記目標ブループリントノードに対応する所定機能を実行し続けるステップと、
前記順序に従って、前記行動ブループリント中の前記目標ブループリントノードの後に位置するブループリントノードに対応する所定機能を実行し続けるステップと、をさらに含むことを特徴とする請求項1に記載の方法。
【請求項6】
前記行動ブループリントは、
ユーザーが入力するブループリント構築命令を取得し、
前記ブループリントノードと前記所定機能との対応関係を含む、前記ブループリント構築命令中のノード機能対応関係に応じて、複数のブループリントノードを生成し、
前記ブループリント構築命令中のノード接続関係に応じて、複数のブループリントノードを接続するための目標順序を生成し、
前記目標順序に従って、前記複数のブループリントノードを接続した後、前記行動ブループリントを生成する
ことにより予め生成されることを特徴とする請求項1~5のいずれか一項に記載の方法。
【請求項7】
ロボット制御装置であって、
ロボットの第1の制御命令を取得するように構成される制御命令取得モジュールと、
前記第1の制御命令に対応する、目標順序に従って接続される複数のブループリントノードを含む行動ブループリントを決定するように構成される行動ブループリント決定モジュールと、
前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行するように構成される行動ブループリント実行モジュールと、を含み、
前記ブループリントノードに対応する所定機能はアトミックAPI能力、メタスキル及びタスクスキルを含み、前記アトミックAPI能力は前記ロボットが部品によって実行する機能を表すことに用いられ、前記メタスキルは前記ロボットの実行部材が具備する機能を表すことに用いられ、前記タスクスキルは前記ロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられ、前記ロボットは1つ又は複数の実行部材を含み、前記実行部材は1つ又は複数の部品を含むことを特徴とするロボット制御装置。
【請求項8】
前記タスクスキルは動作スキル及び行動スキルを含み、前記行動スキルは1つ又は複数の前記動作スキルを含み、前記動作スキルは1つ又は複数の前記メタスキルを含み、前記メタスキルは1つ又は複数の前記アトミックAPI能力を含むことを特徴とする請求項8に記載の装置。
【請求項9】
前記行動ブループリントは第1のブループリントノード、及び前記目標順序に従って前記第1のブループリントノードの後に接続される1つ又は複数の第1の候補ブループリントノードを含み、前記行動ブループリント実行モジュールは、前記第1のブループリントノードに対応する所定機能を実行した後、前記第1の候補ブループリントノードが1つであると、該第1の候補ブループリントノードに対応する所定機能を実行するように構成されることを特徴とする請求項7に記載の装置。
【請求項10】
前記行動ブループリントは各第1の候補ブループリントノードに対応する目標実行条件をさらに含み、前記行動ブループリント実行モジュールはさらに、前記第1のブループリントノードに対応する所定機能を実行した後、前記第1の候補ブループリントノードが複数であると、前記第1のブループリントノードの実行結果及び/又は前記ロボットの現在の状態に応じて、目標実行条件を満たす対応する第1の候補ブループリントノードを決定し、該第1の候補ブループリントノードを第2のブループリントノードとし、前記第2のブループリントノードに対応する所定機能を実行するように構成されることを特徴とする請求項9に記載の装置。
【請求項11】
現在のブループリントノードに対応する所定機能を実行する場合、ユーザーが前記ロボットに対して入力するノード制御命令を受信すると、前記ノード制御命令が指示する目標ブループリントノードを取得するように構成されるノード制御命令取得モジュールをさらに含み、
前記行動ブループリント実行モジュールは、前記現在のブループリントノードに対応する所定機能を実行した後、前記目標ブループリントノードに対応する所定機能を実行し続け、前記順序に従って、前記行動ブループリント中の前記目標ブループリントノードの後に位置するブループリントノードに対応する所定機能を実行し続けるように構成されることを特徴とする請求項7に記載の装置。
【請求項12】
行動ブループリント生成モジュールをさらに含み、
前記行動ブループリント生成モジュールは、
ユーザーが入力するブループリント構築命令を取得し、
前記ブループリント構築命令中のノード機能対応関係に応じて複数のブループリントノードを生成し、前記ノード機能対応関係は前記ブループリントノードと前記所定機能との対応関係を含み、
前記ブループリント構築命令中のノード接続関係に応じて、複数のブループリントノードを接続するための目標順序を生成し、
前記目標順序に従って、前記複数のブループリントノードを接続した後、前記行動ブループリントを生成することによって、前記行動ブループリントを予め生成するように構成されることを特徴とする請求項7~11のいずれか一項に記載の装置。
【請求項13】
ロボットであって、請求項7~12のいずれか一項に記載のロボット制御装置を含むことを特徴とするロボット。
【請求項14】
コンピュータプログラムが記憶される非一時的コンピュータ可読記憶媒体であって、該プログラムがプロセッサによって実行されると、請求項1~6のいずれか一項に記載の方法のステップを実現することを特徴とする非一時的コンピュータ可読記憶媒体。
【請求項15】
電子機器であって、
コンピュータプログラムが記憶されるメモリと、
前記メモリにおける前記コンピュータプログラムを実行して、請求項1~6のいずれか一項に記載の方法を実現するように構成されるプロセッサと、を含むことを特徴とする電子機器。
【請求項16】
コンピュータプログラム製品であって、プログラマブル装置によって実行可能なコンピュータプログラムを含み、該コンピュータプログラムは該プログラマブル装置によって実行されると、請求項1~6のいずれか一項に記載の方法のステップを実行するためのコード部分を有することを特徴とするコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本開示はロボットの技術分野に関し、具体的には、ロボット制御方法、装置、記憶媒体、電子機器、プログラム製品及びロボットに関する。
【背景技術】
【0002】
ロボット技術の継続的な発展及び進歩に伴い、ロボットに対するユーザーの差別化カスタマイズニーズもますます多くなっている。ロボットが実行するタスクは、ロボットのジョブ命令プログラムに従ってロボットアクチュエータを制御して、所定の機能及びタスクを実行させることである。関連技術では、ロボットのジョブ命令プログラムはコードプログラミングによって実現され、専門家によって設定及び変更されるしかなく、その結果、ユーザーはロボットのジョブ命令プログラムを変更してユーザーのカスタマイズニーズを満たすことができない。
【発明の概要】
【0003】
本開示は、複雑な操作をせずに、ユーザーは様々なサービスシナリオ及び要件に応じて、ロボットの行動ブループリントを簡単に構築することができることで、ロボットは構築した行動ブループリントに応じてユーザーの第1の制御命令を実行し、それにより様々なユーザーの差別化カスタマイズニーズを満たすロボット制御方法、装置、記憶媒体、電子機器、プログラム製品及びロボットを提供することを目的とする。
【0004】
上記目的を実現するために、本開示の第1の態様によれば、
ロボットの第1の制御命令を取得するステップと、
前記第1の制御命令に対応する、前記行動ブループリントは目標順序に従って接続される複数のブループリントノードを含む行動ブループリントを決定するステップと、
前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行するステップと、を含み、
前記ブループリントノードに対応する所定機能はアトミックAPI能力、メタスキル及びタスクスキルを含み、前記アトミックAPI能力は前記ロボットが部品によって実行する具体的な機能を表すことに用いられ、前記メタスキルは前記ロボットの実行部材が具備する機能を表すことに用いられ、前記タスクスキルは前記ロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられ、前記ロボットは1つ又は複数の実行部材を含み、前記実行部材は1つ又は複数の部品を含むロボット制御方法を提供する。
【0005】
また、前記タスクスキルは動作スキル及び行動スキルを含み、前記行動スキルは1つ又は複数の前記動作スキルを含み、前記動作スキルは1つ又は複数の前記メタスキルを含み、前記メタスキルは1つ又は複数の前記アトミックAPI能力を含むことが好ましい。
【0006】
また、前記行動ブループリントは第1のブループリントノード、及び前記目標順序に従って前記第1のブループリントノードの後に接続される1つ又は複数の第1の候補ブループリントノードを含み、前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行する前記ステップは、
前記第1のブループリントノードに対応する所定機能を実行した後、前記第1の候補ブループリントノードが1つであると、該第1の候補ブループリントノードに対応する所定機能を実行するステップを含むことが好ましい。
【0007】
また、前記行動ブループリントは各第1の候補ブループリントノードに対応する目標実行条件をさらに含み、
前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行する前記ステップは、
前記第1のブループリントノードに対応する所定機能を実行した後、前記第1の候補ブループリントノードが複数であると、前記第1のブループリントノードの実行結果及び/又は前記ロボットの現在の状態に応じて、目標実行条件を満たす対応する第1の候補ブループリントノードを決定し、該第1の候補ブループリントノードを第2のブループリントノードとするステップと、
前記第2のブループリントノードに対応する所定機能を実行するステップと、をさらに含むことが好ましい。
【0008】
また、現在のブループリントノードに対応する所定機能を実行する場合、ユーザーが前記ロボットに対して入力するノード制御命令を受信すると、前記ノード制御命令が指示する目標ブループリントノードを取得するステップと、
前記現在のブループリントノードに対応する所定機能を実行した後、前記目標ブループリントノードに対応する所定機能を実行し続けるステップと、
前記順序に従って、前記行動ブループリント中の前記目標ブループリントノードの後に位置するブループリントノードに対応する所定機能を実行し続けるステップと、をさらに含むことが好ましい。
【0009】
また、前記行動ブループリントは、
ユーザーが入力するブループリント構築命令を取得し、
前記ブループリントノードと前記所定機能との対応関係を含む、前記ブループリント構築命令中のノード機能対応関係に応じて、複数のブループリントノードを生成し、
前記ブループリント構築命令中のノード接続関係に応じて、複数のブループリントノードを接続するための目標順序を生成し、
前記目標順序に従って、前記複数のブループリントノードを接続した後、前記行動ブループリントを生成する
ことにより予め生成されることが好ましい。
【0010】
第2の態様によれば、本開示は、
ロボットの第1の制御命令を取得するように構成される制御命令取得モジュールと、
前記第1の制御命令に対応する、目標順序に従って接続される複数のブループリントノードを含む行動ブループリントを決定するように構成される行動ブループリント決定モジュールと、
前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行するように構成される行動ブループリント実行モジュールと、を含み、
前記ブループリントノードに対応する所定機能はアトミックAPI能力、メタスキル及びタスクスキルを含み、前記アトミックAPI能力は前記ロボットが部品によって実行する機能を表すことに用いられ、前記メタスキルは前記ロボットの実行部材が具備する機能を表すことに用いられ、前記タスクスキルは前記ロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられ、前記ロボットは1つ又は複数の実行部材を含み、前記実行部材は1つ又は複数の部品を含むロボット制御装置を提供する。
【0011】
第3態様によれば、本開示は、本開示の第2の態様に記載のロボット制御装置を含むロボットを提供する。
【0012】
第4態様によれば、本開示は、プロセッサによって実行されると、本開示の第1の態様に記載の方法のステップを実現するコンピュータプログラムが記憶される非一時的コンピュータ可読記憶媒体を提供する。
【0013】
第5態様によれば、本開示は、コンピュータプログラムが記憶されるメモリと、前記メモリにおける前記コンピュータプログラムを実行して、本開示の第1の態様に記載の方法のステップを実現するプロセッサと、を含む電子機器を提供する。
【0014】
第6態様によれば、本開示は、プログラマブル装置によって実行可能なコンピュータプログラムを含み、該コンピュータプログラムが該プログラマブル装置によって実行されると、本開示の第1の態様に記載の方法のステップを実行するためのコード部分を有するコンピュータプログラム製品を提供する。
【0015】
上記技術的手段によれば、ロボットの第1の制御命令を取得し、該第1の制御命令に対応する、目標順序に従って接続される複数のブループリントノードを含む行動ブループリントを決定し、該目標順序に従って、該ブループリントノードに対応する所定機能を実行し、該ブループリントノードに対応する所定機能はアトミックAPI能力、メタスキル及びタスクスキルを含んでもよく、該アトミックAPI能力は該ロボットが部品によって実行する具体的な機能を表すことに用いられ、該メタスキルは該ロボットの実行部材が具備する機能を表すことに用いられ、該タスクスキルは該ロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられ、該ロボットは1つ又は複数の実行部材を含み、該実行部材は1つ又は複数の部品を含む。このように、ユーザーは様々なサービスシナリオ及び要件に応じて、ロボット行動ブループリントを簡単に構築することができることで、ロボットは構築した行動ブループリントに応じてユーザーの第1の制御命令を実行し、それにより様々なユーザーの差別化カスタマイズニーズを満たす。
【0016】
本開示のほかの特徴及び利点は後述する具体的な実施形態では詳細に説明される。
【図面の簡単な説明】
【0017】
図面は本開示をさらに理解するためのものであり、明細書の一部として組み込まれ、以下の具体的な実施形態とともに本開示を解釈することに用いられるが、本開示を限定するものではない。
【
図1】本開示の実施例に係るロボット制御方法のフローチャートである。
【
図2】本開示の実施例に係るロボットの所定機能の模式図である。
【
図3】本開示の実施例に係る可視化行動ブループリントインターフェースの模式図である。
【
図4】本開示の実施例に係るロボット制御装置の構造模式図である。
【
図5】本開示の実施例に係る別のロボット制御装置の構造模式図である。
【
図6】本開示の実施例に係るさらに別のロボット制御装置の構造模式図である。
【
図7】本開示の実施例に係るロボットのブロック図である。
【
図8】本開示の実施例に係る電子機器のブロック図である。
【
図9】本開示の実施例に係る別の電子機器のブロック図である。
【発明を実施するための形態】
【0018】
以下、図面を参照しながら本開示の具体的な実施形態を詳細に説明する。ここで説明される具体的な実施形態は単に本開示を説明及び解釈することに用いられるが、本開示を限定するものではないと理解すべきである。
【0019】
以下の説明では、「第1」、「第2」等の用語は単に説明を区別する目的でのみ使用され、相対的な重要性を指示又は暗示しないと理解すべきであり、順序を指示又は暗示しないとも理解すべきである。
【0020】
まず、本開示の適用シナリオを説明する。本開示はロボット制御シナリオ、特にサービス型ロボットの制御シナリオに適用できる。サービス型ロボットは、半自律的又は完全自律的に動作するロボットであり、人間の健康及び生活に有益なサービス動作を行うことができる。サービス型ロボットがますます広く使用されている場合、どのようにしてロボットが異なる適用シナリオで異なるサービスを行うことを支援するかはますます重要になる。しかしながら、ロボットメーカーによって生産される同一型番のロボットは、出荷時、そのジョブ命令プログラムが同じであるが、同一型番のロボットであっても、異なるユーザーによって要件は異なる。例えば、同様に家庭用清掃サービスロボットの場合、異なるユーザー家庭では、実現する必要がある機能及びタスクは異なる。一部のユーザーは該ロボットが掃除動作を行うことを望み、一部のユーザーは該ロボットが掃除及び窓拭きの動作を行うことを望み、一部のユーザーはさらに該ロボットが掃除及びウェルカムの動作を行うことを望む。異なる機能を実現するために、クライアントの差別化カスタマイズニーズに応じて、ロボットのジョブ命令プログラムを相応に変更する必要がある。一方、関連技術では、ロボットのジョブ命令プログラムはコードプログラミングによって実現され、一般には、ロボットメーカーの専門家によって設定及び変更されるしかなく、その結果、ユーザーはロボットのジョブ命令プログラムをタイムリーかつ簡単に変更して自分のカスタマイズニーズを満たすことができない。
【0021】
上記課題を解決するために、本開示はロボット制御方法、装置、記憶媒体、電子機器、プログラム製品及びロボットを提供する。当該ロボット制御方法は、ロボットの第1の制御命令を取得するステップと、 前記第1の制御命令に対応する、目標順序に従って接続される複数のブループリントノードを含む行動ブループリントを決定するステップと、前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行するステップと、を含み、前記ブループリントノードに対応する所定機能はアトミックAPI能力、メタスキル及びタスクスキルを含み、前記アトミックAPI能力は前記ロボットが部品によって実行する具体的な機能を表すことに用いられ、前記メタスキルは前記ロボットの実行部材が具備する機能を表すことに用いられ、前記タスクスキルは前記ロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられ、前記ロボットは1つ又は複数の実行部材を含み、前記実行部材は1つ又は複数の部品を含む。このようにして、ユーザーはさまざまなサービスシナリオやニーズに基づいてロボットの行動ブループリントを簡単に構築することができ、ロボットは構築された行動ブループリントに基づいてユーザーの第1の制御命令を完了でき、従って、異なるユーザーの差別化されたカスタマイズニーズに対応することができる。
【0022】
以下、図面を参照しながら本開示の具体的な実施形態を詳細に説明する。
【0023】
図1は本開示の実施例に係るロボット制御方法であり、
図1に示すように、該方法はステップS101~S103を含む。
【0024】
S101、ロボットの第1の制御命令を取得する。
【0025】
該第1の制御命令は、ロボットが目標タスクを実行するように指示することに用いられる。このステップでは、以下の2種の方式のうちのいずれかによって、該第1の制御命令を取得することができる。
【0026】
方式1、ユーザーが入力するユーザー制御命令を該第1の制御命令として取得する。
【0027】
該ユーザー制御命令はユーザーが該ロボットに発する音声制御命令又はジェスチャー制御命令を含んでもよく、ユーザーがロボット制御機器によって該ロボットに発する制御命令を含んでもよい。
【0028】
方式2、ロボットはそのセンサによって検出されたセンサデータに応じて該第1の制御命令を生成する。
【0029】
センサデータはロボットの環境データを含んでもよく、ロボットのコントローラは該環境データに応じて該第1の制御命令を生成する。
【0030】
例えば、ウェルカムロボットはセンサによってドアに人の顔が出現すると検出する場合、ウェルカムタスクを実行するための第1の制御命令を生成するようにしてもよい。
【0031】
S102、該第1の制御命令に対応する行動ブループリントを決定する。
【0032】
該行動ブループリントは目標順序に従って接続される複数のブループリントノードを含む。
【0033】
なお、本開示の実施例では、行動ブループリントをロボットのジョブ命令プログラムとし、行動ブループリント中の1つ又は複数のブループリントノードによって、ロボットを制御して関連する動作又はタスクを実行させるようにしてもよい。例えば、本実施例の実行主体はアンリアルエンジン(Unreal Engine)に基づくロボット制御プラットフォームであってもよく、アンリアルエンジンでは、1つ又は複数の所定機能を組み合わせて1つのブループリントノードを生成し、複数のブループリントノードを目標順序に従って接続して、行動ブループリントを得るようにしてもよい。該行動ブループリントによって、該第1の制御命令が指示する目標タスクを実現できる。
【0034】
S103、該目標順序に従って、該ブループリントノードに対応する所定機能を実行する。
【0035】
なお、該ロボットは1つ又は複数の実行部材を含んでもよく、各々の該実行部材は1つ又は複数の部品を含む。例えば、該実行部材はモジュール化された部品であってもよく、例えば、様々なセンサ、関節アクチュエータ、ライト、及びスピーカー等が挙げられる。
【0036】
該ブループリントノードに対応する所定機能はアトミックAPI(Application Programming Interface、アプリケーションプログラミングインターフェース)能力、メタスキル及びタスクスキルのうちの1種又は複数種を含んでもよい。以下では、これらの3種の所定機能をそれぞれ説明する。
【0037】
1、アトミックAPI能力は該ロボットが部品によって実行する具体的な機能を表すことに用いられてもよく、つまり、ロボットアプリケーションプログラムのAPIレベルを実現する能力であり、ロボット行動ブループリントを構成する変数又は関数に対応する。1つ又は複数のアトミックAPI能力はロボット行動ブループリントにおけるブループリントノードを構築できる。
【0038】
該アトミックAPI能力は、センサ検出能力、センサデータ分析能力、部品制御能力及び経路計画能力のうちの1種又は複数種を含んでもよい。
【0039】
センサ検出能力は、ロボットのセンサによってオリジナルセンサデータを検出して取得する能力を含んでもよい。例えば、画像検出、音声検出、位置検出が挙げられる。
【0040】
センサデータ分析能力は、オリジナルセンサデータを分析して感知データを取得する能力を含んでもよい。例えば、画像検出によって得られたオリジナル画像データを分析する顔検出、目標検出、オブジェクト分類、インスタンスセグメンテーション又は自然音声理解を行うことで、画像感知データを得て、音声検出によって得られたオリジナル音声データを分析する音声認識を行うことで、音声感知データを得て、位置検出データを分析するレーザー測位及び/又は視覚的測位を行うことで、位置感知データを得る。
【0041】
部品制御能力は、センサ制御能力、関節デバイス制御能力、ロボットシャーシ制御能力、ライト制御能力及びスピーカー制御能力のうちの1種又は複数種を含んでもよい。
【0042】
経路計画能力はロボット本体又はシャットダウンアクチュエータが現在の位置から目標位置まで移動する移動経路を計画する能力を含み、該移動経路は平面内の二次元経路及び空間内の三次元経路を含む。
【0043】
なお、ロボットが有するアトミックAPI能力は様々であり、上記列挙した例に限定されず、該アトミックAPI能力はコードプログラミングによって実現できる。例えば、ロボットアプリケーションプログラムのAPIレベルを実現するための能力はいずれもアトミックAPI能力としてもよく、該アトミックAPI能力はロボット行動ブループリントにおける変数又は関数であってもよい。
【0044】
2、メタスキル(Meta Skills)は該ロボットの実行部材が具備する機能を表すことに用いられてもよく、該実行部材はモジュール化された部品であってもよく、複数の部品の組合せであってもよい。例えば、該実行部材は、レーザーレーダー、3Dビジョンカメラ、障害物回避カメラ、超音波センサ、落下センサ、衝突センサ、関節アクチュエータ、ライト、及びスピーカー等を含んでもよい。ロボットのメタスキルは、顔認識、質問応答対話、自動音声認識、自然言語理解、及び自動音声合成再生という機能のうちの1種又は複数種を含んでもよく、動きに関連する手を伸ばすこと、握り、片手/両手で持ち上げること、片手/両手でプッシュすること、自動回航充電、自動障害物回避など人間の動作と類似する意味を有するほかのアトミック動作をさらに含む。
【0045】
該メタスキルは、1つ又は複数のアトミックAPI能力を論理的に組み合わせることによって形成されてもよく、コードプログラミングによって形成されてもよい。
【0046】
3、タスクスキルはロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられてもよい。該タスクスキルは1つの人間と似た具体的な動作を実行又は完了できる機能であってもよく、1つの完全サービスをユーザーに提供する機能であってもよい。
【0047】
該タスクスキルは、1つ又は複数のメタスキルを論理的に組み合わせることによって形成されてもよく、メタスキルとアトミックAPI能力を共同で論理的に組み合わせることによって形成されてもよく、勿論、コードプログラミングによって形成されてもよい。
【0048】
なお、上記ユーザーはロボットのサービスを楽しむことができる人間を表すことに用いられる。例えば、該ロボットがホームサービスロボットである場合、各家族及び該家庭を訪れる訪問者はいずれも該ユーザーであってもよい。該ロボットが店舗サービスロボットである場合、店舗のスタッフ及び来店する各顧客はいずれも該ユーザーであってもよい。
【0049】
上記方法では、ロボットの第1の制御命令を取得するステップと、 前記第1の制御命令に対応する、目標順序に従って接続される複数のブループリントノードを含む行動ブループリントを決定するステップと、前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行するステップと、を含み、前記ブループリントノードに対応する所定機能はアトミックAPI能力、メタスキル及びタスクスキルを含み、前記アトミックAPI能力は前記ロボットが部品によって実行する具体的な機能を表すことに用いられ、前記メタスキルは前記ロボットの実行部材が具備する機能を表すことに用いられ、前記タスクスキルは前記ロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられ、前記ロボットは1つ又は複数の実行部材を含み、前記実行部材は1つ又は複数の部品を含む。ユーザーは様々なサービスシナリオ及び要件に応じて、ロボット行動ブループリントを簡単に構築することができることで、ロボットは構築した行動ブループリントに応じてユーザーの第1の制御命令を実行し、それにより様々なユーザーの差別化カスタマイズニーズを満たす。
【0050】
本開示の別のいくつかの実施例では、上記タスクスキルは動作スキル及び行動スキルを含み、
動作スキル(Action Skills)は該ロボットがユーザーと対話又はフィードバックを行う機能を表すことに用いられてもよい。該動作スキルは1つ又は複数のメタスキルを論理的に組み合わせることによって形成され、メタスキルとアトミックAPI能力を共同で論理的に組み合わせることによって形成されてもよく、1つの人間と似た具体的な動作を実行又は完了できる。例えば、該動作スキルは、ロボットが人間とチャットすること、ビジネス対話、ユーザーの意図を認識すること、握手で挨拶すること、両手で抱き合うこと、及び直立して敬礼すること等を含んでもよい。
【0051】
行動スキル(Behavior Skills)は、該ロボットがユーザーにサービスを提供する機能を表すことに用いられてもよい。該行動スキルは1つ又は複数の該動作スキルを論理的に組み合わせることによって形成されてもよく、動作スキル、メタスキル及びアトミックAPI能力のうちの1種又は複数種を論理的に組み合わせることによって形成されてもよい。例えば、上記行動スキルはガイドスキル、飲み物提供スキル、ダンススキル、料理スキル、及び掃除スキル等を含んでもよい。
【0052】
さらに、ユーザーは自らロボットの行動ブループリントをより明確に構築するために、上記所定機能に対して厳密な階層分割を行うことができる。上記行動スキルは1つ又は複数の上記動作スキルを含んでもよく、上記動作スキルは1つ又は複数の上記メタスキルを含んでもよく、上記メタスキルは1つ又は複数の上記アトミックAPI能力を含んでもよい。
【0053】
このように、ユーザーはこの4つの階層の所定機能によってブループリントノードをより簡単かつ明確に構築することができ、さらに1つ又は複数のブループリントノードによって行動ブループリントを構築する。
【0054】
また、上記実行ブループリントノードに対応する所定機能はいずれもアトミックAPI能力として解析でき、アトミックAPI能力によって実行されることが好ましい。このように、ロボットの出荷時に完全なアトミックAPI能力を構築する限り、ユーザーはアトミックAPI能力に応じて組み合わせて異なるブループリントノードを得ることができ、さらに1つ又は複数のブループリントノードを行動ブループリントとして構築し、特定シナリオにおける特定タスクを完了する。
【0055】
図2は本開示の実施例に係るロボットの所定機能の模式図であり、
図2に示すように、該所定機能は上記アトミックAPI能力、メタスキル、動作スキル及び行動スキルを含んでもよく、選択可能に、該所定機にシナリオキャラクター向けのバリュースキル(Value Skills)がさらに含まれてもよく、該バリュースキルはキャラクターロボットが提供できる該キャラクター特有のスキル又は該キャラクターが得意なスキルを表すことに用いられてもよく、該バリュースキルは該ロボットが有する行動スキルのうちの1種又は複数種であってもよい。例えば、家政婦ロボットのバリュースキルは料理スキル及び掃除スキルを含んでもよく、セキュリティロボットのバリュースキルは自動パトロールスキルを含んでもよく、配達ロボットのバリュースキルは屋内物品配達及び団地物品配達を含んでもよく、卓球トレーニングロボットのバリュースキルは様々なサービングスキル及びレシーブスキルを含んでもよい。上記バリュースキルはロボットを訓練することによって得られる、該ロボットが最も得意なスキルであってもよい。
【0056】
このように、上記シナリオキャラクター向けのバリュースキルによって、異なるロボットを区別することができ、それによりユーザーは適切なロボットを簡単に選択して対応するサービスタスクを完了することができる。
【0057】
以下、ウェルカムロボットを例として上記所定機能を例示的に説明し、該ウェルカムロボットはウェルカムシナリオ向けにウェルカムサービスを提供することができ、このように、該ウェルカムロボットのウェルカムシナリオ向けのバリュースキルはドアでのウェルカムスキル及びガイドスキルを含んでもよく、該ウェルカムロボットが具備する行動スキルはドアでのウェルカムスキル、ガイドスキル及び飲み物提供スキルを含んでもよい。
【0058】
ドアでのウェルカムスキルは、顔認識、握手して挨拶すること、及びチャットや会話という動作スキルを含んでもよく、ガイドスキルは、経路案内、及び着席ガイドという動作スキルを含んでもよく、飲み物提供スキルは飲み物需要の問い合わせ、飲み物オープニング、及び飲み物運びを含んでもよい。
【0059】
さらに、上記動作スキル「顔認識」は1つのメタスキル「顔認識」を含んでもよく、上記動作スキル「握手して挨拶すること」は、右手を伸ばすこと、目標オブジェクトを握ること、挨拶フレーズの「こんにちは、ようこそ」の音声再生というメタスキルを含んでもよく、動作スキル「着席ガイド」は、目標位置認識、目標経路計画、右手を伸ばして目標経路を案内すること、及び経路案内フレーズ「こちらへどうぞ」の音声再生というメタスキルを含んでもよい。
【0060】
上記メタスキル「顔認識」は、画像収集、顔画像特徴抽出及び顔照合認識というアトミックAPI能力を含んでもよい。「画像収集」はロボットの3Dビジョンカメラを制御して画像検出を行うことによって、顔を含む画像データを得るようにしてもよく、「顔画像特徴抽出」は該画像データに対して顔認識分析を行うことによって、顔画像特徴を得るようにしてもよく、「顔照合認識」は該顔画像特徴をロボットに記憶されている所定顔画像の画像特徴と比較して、顔認識結果がゲストであるか否かを決定するようにしてもよく、例えば、該所定顔画像が店舗スタッフであり、検出した顔画像特徴と特定の所定顔画像の画像特徴との照合度が所定照合閾値以上である場合、顔認識結果がスタッフであり、ゲストではないと決定でき、逆には、検出した顔画像特徴とすべての所定顔画像の画像特徴との照合度がいずれも所定照合閾値未満である場合、顔認識結果がゲストであると決定できる。
【0061】
さらに、該ウェルカムロボットは第1の行動ブループリントを含んでもよく、該第1の行動ブループリントは3つのブループリントノードA/B/Cを含んでもよく、ブループリントノードAに対応する所定機能はドアでのウェルカムスキルであり、ブループリントノードBに対応する所定機能はガイドスキルであり、ブループリントノードCに対応する所定機能は飲み物提供スキルであり、3つの行動スキルがあり、該第1の行動ブループリントの目標順序はブループリントノードA->ブループリントノードB->ブループリントノードCである。このように、上記3つのブループリントノードを順次実行することによって、ドアでのウェルカム、着席ガイド及び飲み物提供の3つの連続したサービスタスクを完了する。
【0062】
該ウェルカムロボットは第2の行動ブループリントを含んでもよく、該第2の行動ブループリントは1つのブループリントノードDのみを含んでもよく、該ブループリントノードDに対応する所定機能はドアでのウェルカムスキル、ガイドスキル及び飲み物提供スキルのうちのいずれか1つであってもよい。
【0063】
該ウェルカムロボットは第3行動ブループリントを含んでもよく、該第3行動ブループリントは4つのブループリントノードE/F/G/Hを含んでもよく、ブループリントノードEに対応する所定機能はメタスキル「顔認識」、ブループリントノードFに対応する所定機能は動作スキル「握手して挨拶すること」、ブループリントノードGに対応する所定機能は動作スキル「チャットや会話」、ブループリントノードHに対応する所定機能は行動スキル「ガイドスキル」であってもよい。該第3行動ブループリントの目標順序はブループリントノードE->ブループリントノードF->ブループリントノードG->ブループリントノードHである。このように、上記4つのブループリントノードを順次実行することによって、同様にドアでのウェルカム及び着席ガイドの2つの連続したサービスタスクを完了することができる。
【0064】
また、該ロボットは複数の行動ブループリントを含んでもよく、行動ブループリント間のネスト呼び出しをサポートすることができることが好ましい。
【0065】
例えば、該ウェルカムロボットは同時に上記第1の行動ブループリント、第2の行動ブループリント及び第3行動ブループリントを含んでもよく、第1の行動ブループリントの実行過程では、第2の行動ブループリントを呼び出し、第2の行動ブループリントの実行完了後、第1の行動ブループリントを再び呼び出するようにしてもよい。
【0066】
このように、複数の行動ブループリント間のネスト呼び出しによって、論理が複雑なユーザー要件を実現することができる。
【0067】
本開示の別のいくつかの実施例では、上記行動ブループリントのブループリントノードは順次実行、条件付き選択実行及び循環実行のうちの1種又は複数種をサポートする。以下、それぞれ3種の実行方式を説明する。上記行動ブループリントは第1のブループリントノード、及び目標順序に従って該第1のブループリントノードの後に接続される1つ又は複数の第1の候補ブループリントノードを含み、このように、該目標順序に従って該ブループリントノードに対応する所定機能を実行する方式は以下の3種の方式のうちの1種又は複数種を含んでもよい。
【0068】
順次実行:該第1のブループリントノードに対応する所定機能を実行した後、該第1の候補ブループリントノードが1つであると、該第1の候補ブループリントノードに対応する所定機能を実行する。
【0069】
選択実行:該行動ブループリントは各第1の候補ブループリントノードに対応する目標実行条件をさらに含み、該第1のブループリントノードに対応する所定機能を実行した後、該第1の候補ブループリントノードが複数であると、該第1のブループリントノードの実行結果及び/又は該ロボットの現在の状態に応じて、目標実行条件を満たす対応する第1の候補ブループリントノードを決定し、該第1の候補ブループリントノードを第2のブループリントノードとし、該第2のブループリントノードに対応する所定機能を実行する。
【0070】
なお、該目標実行条件は該第1のブループリントノードの実行結果が満たすべき条件を含んでもよく、例えば、該実行結果が成功であると、第3ブループリントノードを実行し、該実行結果が失敗であると、第4ブループリントノードを実行する。該目標実行条件はさらに該ロボットの現在の状態を含んでもよく、例えば、該ロボットの現在の状態が電力不足状態であると、第5ブループリントノードを実行し、該第5ブループリントノードに対応する所定機能はメタスキル「自動回航充電」を含んでもよい。該目標実行条件はさらに該第1のブループリントノードの実行結果及び該ロボットの現在の状態を含んでもよく、例えば、該実行結果が成功であり且つ該ロボットの現在の状態が正常動作状態であると、上記第3ブループリントノードを実行する。
【0071】
循環実行:上記順次実行では、該第1の候補ブループリントノードの後に接続されるブループリントノードが第1のブループリントノードであると、該第1の候補ブループリントノードに対応する所定機能を実行した後、該第1のブループリントノードに対応する所定機能を実行し続け、循環実行を形成する。
【0072】
このように、上記方式によって、複数のブループリントノードの異なる論理的な組合せを実現でき、それによりユーザーは異なるシナリオに応じて異なるタスク要件を簡単に完了することができる。
【0073】
本開示の別のいくつかの実施例では、現在のブループリントノードに対応する所定機能を実行する場合、ユーザーが該ロボットに対して入力するノード制御命令を受信すると、該ノード制御命令が指示する目標ブループリントノードを取得し、
該現在のブループリントノードに対応する所定機能を実行した後、該目標ブループリントノードに対応する所定機能を実行し続け、
該順序に従って該行動ブループリント中の該目標ブループリントノードの後に位置するブループリントノードに対応する所定機能を実行する。
【0074】
このように、ロボットは手動で交代して制御することができ、予め設計された行動ブループリントに従って実行されるのではなく、手動で指定される目標ブループリントノードにジャンプして実行し、それによりユーザーが指定する一時タスクを完了する。
【0075】
例えば、ロボットの行動ブループリントは順次実行される5つのブループリントノードA-B-C-D-Eを含み、ロボットは、ブループリントノードBに対応する所定機能を実行する場合、ユーザーグループが該ロボットに対して入力するノード制御命令を受信し、該ノード制御命令が指示する目標ブループリントノードがブループリントノードDであると、ロボットはブループリントノードBを実行した後、直ちにブループリントノードDに対応する所定機能にジャンプして実行し、その後、順序に従ってブループリントノードEに対応する所定機能を実行し続けるようにしてもよい。別の例では、ロボットは、ブループリントノードBに対応する所定機能を実行する場合、ユーザーグループが該ロボットに対して入力するノード制御命令を受信し、該ノード制御命令が指示する目標ブループリントノードがブループリントノードAであると、ロボットはブループリントノードBを実行した後、直ちにブループリントノードAに対応する所定機能にジャンプして実行し、その後、順序に従ってブループリントノードB-C-D-Eに対応する所定機能を実行し続けるようにしてもよい。
【0076】
また、ユーザーは該手動交代制御行動を簡単に照会できるように、さらにロボットのメモリに上記ノード制御命令の内容、受信時間、実行時間等の情報を記録してもよい。
【0077】
なお、該ノード制御命令は目標ブループリントノードを指定することに用いられるが、行動ブループリントを変更しない。それにより、該方式によって一時タスクを完了でき、該一時タスクの完了後、ロボットは所定の行動ブループリントに従って実行し続けることができる。
【0078】
本開示の別のいくつかの実施例では、上記行動ブループリントは以下の方式によって予め生成されてもよい。
【0079】
まず、ユーザーが入力するブループリント構築命令を取得する。
【0080】
このステップでは、ユーザーのブループリント構築命令はコード方式によって入力されてもよく、可視化インターフェース方式によって入力されてもよい。
図3は本開示の実施例に係る可視化行動ブループリントインターフェースであり、該可視化行動ブループリントインターフェースによって、ユーザーはブループリント構築命令を簡単に入力し、行動ブループリントの構築を実現することができる。該可視化行動ブループリントインターフェースは該ロボットの所定のアトミックAPI能力、メタスキル、動作スキル及び行動スキルのうちの1種又は複数種の所定機能を含む。
【0081】
ユーザーが入力する該ブループリント構築命令は1つ又は複数のノード機能対応関係を含んでもよく、各ノード機能対応関係は1つのブループリントノード及び該ブループリントノードに対応する所定機能を含み、該所定機能はユーザーが該可視化行動ブループリントインターフェースにおいて選択する上記アトミックAPI能力、メタスキル、動作スキル及び行動スキルのうちの1つ又は複数であってもよい。勿論、該ブループリント構築命令は複数のブループリントノード間のノード接続関係をさらに含む。
【0082】
次に、該ブループリント構築命令中のノード機能対応関係に応じて複数のブループリントノードを生成し、該ノード機能対応関係は該ブループリントノードと該所定機能との対応関係を含む。
【0083】
さらに、該ブループリント構築命令中のノード接続関係に応じて、複数のブループリントノードを接続するための目標順序を生成する。
【0084】
最後に、該目標順序に従って、該複数のブループリントノードを接続した後、該行動ブループリントを生成する。
【0085】
このように、ユーザーは上記可視化行動ブループリントインターフェースによって行動ブループリントを簡単に構築することができる。
【0086】
上記ブループリント構築命令はさらに第1のブループリントノード、目標順序に従って該第1のブループリントノードの後に接続される複数の第1の候補ブループリントノード、及び各第1の候補ブループリントノードに対応する目標実行条件を含んでもよい。このように、ロボットは該第1のブループリントノードに対応する所定機能を実行した後、該第1のブループリントノードの実行結果及び/又は該ロボットの現在の状態に応じて、目標実行条件を満たす対応する第1の候補ブループリントノードを決定し、該第1の候補ブループリントノードを第2のブループリントノードとし、該第2のブループリントノードに対応する所定機能を実行するようにしてもよい。
【0087】
ユーザーはさらに上記可視化行動ブループリントインターフェースによって新たなメタスキル、動作スキル又は行動スキルを構築するようにしてもよい。例えば、ユーザーは1つ又は複数のアトミックAPI能力を選択して論理的に組み合わせて1つの新たなメタスキルを形成し、該メタスキルを命名し、それにより行動ブループリントの構築時に該メタスキルを簡単に使用できる。同様に、ユーザーは1つ又は複数のメタスキルを選択して論理的に組み合わせて1つの新たな動作スキルを形成し、又は、1つ又は複数の動作スキルを選択して論理的に組み合わせて1つの新たな行動スキルを形成し、又は、動作スキル及びメタスキルを選択して論理的に組み合わせて1つの新たな行動スキルを形成するようにしてもよい。
【0088】
このように、ロボットの所定のメタスキル、動作スキル及び行動スキルがユーザー要件を満たすことができない場合、ユーザーは上記可視化行動ブループリントインターフェースによって新たなメタスキル、動作スキル又は行動スキルを構築し、新たなメタスキル、動作スキル又は行動スキルを使用してブループリントノードを構築し、さらにブループリントノードによって行動ブループリントを構築することができる。
【0089】
勿論、ユーザーはさらに上記可視化行動ブループリントインターフェースによって上記メタスキル、動作スキル又は行動スキルを変更することができる。
【0090】
図4は本開示の実施例に係るロボット制御装置の構造模式図であり、
図4に示すように、該装置は、
ロボットの第1の制御命令を取得するように構成される制御命令取得モジュール401と、
該第1の制御命令に対応する、目標順序に従って接続される複数のブループリントノードを含む行動ブループリントを決定する行動ブループリント決定モジュール402と、
該目標順序に従って、該ブループリントノードに対応する所定機能を実行するように構成される行動ブループリント実行モジュール403と、を含む。
前記ブループリントノードに対応する所定機能はアトミックAPI能力、メタスキル及びタスクスキルを含み、前記アトミックAPI能力は前記ロボットが部品によって実行する機能を表すことに用いられ、前記メタスキルは前記ロボットの実行部材が具備する機能を表すことに用いられ、前記タスクスキルは前記ロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられ、前記ロボットは1つ又は複数の実行部材を含み、前記実行部材は1つ又は複数の部品を含む。
【0091】
また、前記タスクスキルは動作スキル及び行動スキルを含み、前記行動スキルは1つ又は複数の前記動作スキルを含み、前記動作スキルは前記ロボットがユーザーと対話する、またはユーザーにフィードバックを提供する機能を表すことに用いられ、前記タスクスキルは前記ロボットがユーザーにサービスを提供する機能を表すことに用いられ、前記動作スキルは1つ又は複数の前記メタスキルを含み、前記行動スキルは1つ又は複数の前記メタスキルを含み、前記メタスキルは1つ又は複数の前記アトミックAPI能力を含む。
【0092】
また、前記行動ブループリントは第1のブループリントノード、及び前記目標順序に従って前記第1のブループリントノードの後に接続される1つ又は複数の第1の候補ブループリントノードを含み、該行動ブループリント実行モジュール403は、該第1のブループリントノードに対応する所定機能を実行した後、該第1の候補ブループリントノードが1つであると、該第1の候補ブループリントノードに対応する所定機能を実行するように構成される。
【0093】
また、該行動ブループリントは各第1の候補ブループリントノードに対応する目標実行条件をさらに含む。該行動ブループリント実行モジュール403はさらに、該第1のブループリントノードに対応する所定機能を実行した後、該第1の候補ブループリントノードが複数であると、該第1のブループリントノードの実行結果及び/又は該ロボットの現在の状態に応じて、目標実行条件を満たす対応する第1の候補ブループリントノードを決定し、該第1の候補ブループリントノードを第2のブループリントノードとし、該第2のブループリントノードに対応する所定機能を実行するように構成される。
【0094】
図5は本開示の実施例に係る別のロボット制御装置の構造模式図であり、
図5に示すように、該装置は、
現在のブループリントノードに対応する所定機能を実行する場合、ユーザーが該ロボットに対して入力するノード制御命令を受信すると、該ノード制御命令が指示する目標ブループリントノードを取得するように構成されるノード制御命令取得モジュール501をさらに含み、
行動ブループリント実行モジュール403は、該現在のブループリントノードに対応する所定機能を実行した後、該目標ブループリントノードに対応する所定機能を実行し続け、該順序に従って該行動ブループリント中の該目標ブループリントノードの後に位置するブループリントノードに対応する所定機能を実行するように構成される。
【0095】
図6は本開示の実施例に係るさらに別のロボット制御装置の構造模式図であり、
図6に示すように、該装置は、
ユーザーが入力するブループリント構築命令を取得し、該ブループリント構築命令中のノード機能対応関係に応じて複数のブループリントノードを生成し、該ノード機能対応関係は該ブループリントノードと該所定機能との対応関係を含み、該ブループリント構築命令中のノード接続関係に応じて、複数のブループリントノードを接続するための目標順序を生成し、該目標順序に従って、該複数のブループリントノードを接続した後、該行動ブループリントを生成することによって、該行動ブループリントを予め生成するように構成される行動ブループリント生成モジュール601をさらに含む。
【0096】
上記実施例における装置について、各モジュールが操作を実行する具体的な方式は該方法に関する実施例で詳細に説明されたため、ここでは詳細説明を省略する。
【0097】
図7は本開示の実施例に係るロボットのブロック図であり、
図7に示すように、該ロボットは上記実施例に係るいずれかのロボット制御装置を含む。
【0098】
図8は一例示的実施例に係る電子機器800のブロック図である。
図8に示すように、該電子機器800は、プロセッサ801、及びメモリ802を含んでもよい。該電子機器800はマルチメディアユニット803、入力/出力(I/O)インターフェース804、及び通信ユニット805のうちの1つ又は複数をさらに含んでもよい。
【0099】
プロセッサ801は上記ロボット制御方法のすべて又は一部のステップを行うように該電子機器800全体の操作を制御するように構成される。メモリ802は該電子機器800における操作をサポートするように様々なタイプのデータを記憶するように構成され、これらのデータは、例えば、該電子機器800上で操作されるための任意のアプリケーションプログラム又は方法の命令、及びアプリケーションプログラムに関連するデータを含んでもよく、例えば、連絡先データ、送受信されたメッセージ、ピクチャ、オーディオ、及びビデオ等が挙げられる。該メモリ802は、例えば、スタティックランダムアクセスメモリ(Static Random Access Memory、略称SRAM)、電気的消去可能プログラマブル読み取り専用メモリ(Electrically Erasable Programmable Read-Only Memory、略称EEPROM)、消去可能プログラマブル読み取り専用メモリ(Erasable Programmable Read-Only Memory、略称EPROM)、プログラマブル読み取り専用メモリ(Programmable Read-Only Memory、略称PROM)、読み取り専用メモリ(Read-Only Memory、略称ROM)、磁気メモリ、フラッシュメモリ、磁気ディスク又は光ディスクのような任意のタイプの揮発性又は不揮発性記憶機器又はそれらの組合せによって実現されてもよい。マルチメディアユニット803はスクリーン及びオーディオユニットを含んでもよい。スクリーンは、例えば、タッチスクリーンであってもよく、オーディオユニットはオーディオ信号を出力及び/又は入力するように構成される。例えば、オーディオユニットは外部オーディオ信号を受信するように構成される1つのマイクロフォンを含んでもよい。受信するオーディオ信号はさらにメモリ802に記憶されるか又は通信ユニット805によって送信されるようにしてもよい。オーディオユニットは、オーディオ信号を出力するように構成される少なくとも1つのスピーカーをさらに含む。I/Oインターフェース804はプロセッサ801とほかのインターフェースモジュールとの間でインターフェースを提供し、上記ほかのインターフェースモジュールはキーボード、マウス、及びボタン等であってもよい。これらのボタンは仮想ボタン又は物理ボタンであってもよい。通信ユニット805は該電子機器800とほかの機器との間で有線又は無線通信を行うように構成される。無線通信として、例えば、Wi-Fi、ブルートゥース(登録商標)、近距離無線通信(Near Field Communication、略称NFC)、2G、3G、4G、NB-IOT、eMTC、又はほかの5G等、又はそれらのうちの1種又は複数種の組合せが挙げられるが、ここでは限定しない。従って、対応する該通信ユニット805は、Wi-Fiモジュール、ブルートゥース(登録商標)モジュール、及びNFCモジュール等を含んでもよい。
【0100】
一例示的実施例では、電子機器800は1つ又は複数の特定用途向け集積回路(Application Specific Integrated Circuit、略称ASIC)、デジタル信号プロセッサ(Digital Signal Processor、略称DSP)、デジタル信号処理機器(Digital Signal Processing Device、略称DSPD)、プログラマブルロジックデバイス(Programmable Logic Device、略称PLD)、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array、略称FPGA)、コントローラ、マイクロコントローラ、マイクロプロセッサ又はほかの電子部品によって実現されてもよく、上記ロボット制御方法を実行するように構成される。
【0101】
別の例示的実施例では、プログラム命令を含むコンピュータ可読記憶媒体をさらに提供し、該プログラム命令がプロセッサによって実行されると、上記ロボット制御方法のステップを実現する。例えば、該コンピュータ可読記憶媒体は上記プログラム命令を含むメモリ802であってもよく、上記プログラム命令が電子機器800のプロセッサ801によって実行されると、上記ロボット制御方法を行うことができる。
【0102】
図9は一例示的実施例に係る電子機器900のブロック図である。例えば、電子機器900はサーバとして提供されてもよい。
図9に示すように、電子機器900は、1つ又は複数のプロセッサ922と、プロセッサ922によって実行可能なコンピュータプログラムを記憶するように構成されるメモリ932と、を含む。メモリ932に記憶されているコンピュータプログラムはそれぞれ1組の命令に対応する1つ又は1つ以上のモジュールを含んでもよい。また、プロセッサ922は上記ロボット制御方法を実行するように該コンピュータプログラムを実行するように構成されてもよい。
【0103】
また、電子機器900は電源ユニット926及び通信ユニット950をさらに含んでもよく、該電源ユニット926は電子機器900の電源管理を実行するように構成されてもよく、該通信ユニット950は電子機器900の通信、例えば、有線又は無線通信を実現するように構成されてもよい。また、該電子機器900は入力/出力(I/O)インターフェース958をさらに含んでもよい。電子機器900はメモリ932に記憶されているオペレーティングシステム、例えば、Windows(登録商標) Server、Mac OS、Unix(登録商標)、Linux(登録商標)等に基づいて操作してもよい。
【0104】
別の例示的実施例では、プログラム命令を含むコンピュータ可読記憶媒体をさらに提供し、該プログラム命令がプロセッサによって実行されると、上記ロボット制御方法のステップを実現する。例えば、該コンピュータ可読記憶媒体は上記プログラム命令を含むメモリ932であってもよく、上記プログラム命令は上記ロボット制御方法を行うように電子機器900のプロセッサ922によって実行されるようにしてもよい。
【0105】
別の例示的実施例では、コンピュータプログラム製品をさらに提供し、該コンピュータプログラム製品はプログラマブル装置によって実行可能なコンピュータプログラムを含み、該コンピュータプログラムは該プログラマブル装置によって実行されると上記ロボット制御方法を実行するためのコード部分を有する。
【0106】
以上、図面を参照しながら本開示の好適実施形態を詳細に説明したが、本開示は上記実施形態の詳細に限定されず、本開示の技術的アイディアの範囲内に本開示の技術的手段に対して種々の簡単な変形を行うことができ、これらの簡単な変形はいずれも本開示の保護範囲に属する。
【0107】
またなお、上記具体的な実施形態で説明された各具体的な技術特徴は、矛盾しない限り、適宜組み合わせることができる。不必要な重複を回避するために、本開示は様々な可能な組み合わせ方式を別途説明しない。
【0108】
また、本開示の様々な異なる実施形態は任意に組み合わせることができ、本開示の思想を逸脱しない限り、同様に本開示に開示されている内容とみなすべきである。
【手続補正書】
【提出日】2022-03-15
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ロボット制御方法であって、
ロボットの第1の制御命令を取得するステップと、
前記第1の制御命令に対応する、目標順序に従って接続される複数のブループリントノードを含む行動ブループリントを決定するステップと、
前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行するステップと、を含み、
前記ブループリントノードに対応する所定機能はアトミックAPI能力、メタスキル及びタスクスキルを含み、前記アトミックAPI能力は前記ロボットが部品によって実行する具体的な機能を表すことに用いられ、前記メタスキルは前記ロボットの実行部材が具備する機能を表すことに用いられ、前記タスクスキルは前記ロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられ、前記ロボットは1つ又は複数の実行部材を含み、前記実行部材は1つ又は複数の部品を含むことを特徴とするロボット制御方法。
【請求項2】
前記タスクスキルは動作スキル及び行動スキルを含み、前記行動スキルは1つ又は複数の前記動作スキルを含み、前記動作スキルは1つ又は複数の前記メタスキルを含み、前記メタスキルは1つ又は複数の前記アトミックAPI能力を含むことを特徴とする請求項1に記載の方法。
【請求項3】
前記行動ブループリントは第1のブループリントノード、及び前記目標順序に従って前記第1のブループリントノードの後に接続される1つ又は複数の第1の候補ブループリントノードを含み、前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行する前記ステップは、
前記第1のブループリントノードに対応する所定機能を実行した後、前記第1の候補ブループリントノードが1つであると、該第1の候補ブループリントノードに対応する所定機能を実行するステップを含むことを特徴とする請求項1に記載の方法。
【請求項4】
前記行動ブループリントは各第1の候補ブループリントノードに対応する目標実行条件をさらに含み、
前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行する前記ステップは、
前記第1のブループリントノードに対応する所定機能を実行した後、前記第1の候補ブループリントノードが複数であると、前記第1のブループリントノードの実行結果及び/又は前記ロボットの現在の状態に応じて、目標実行条件を満たす対応する第1の候補ブループリントノードを決定し、該第1の候補ブループリントノードを第2のブループリントノードとするステップと、
前記第2のブループリントノードに対応する所定機能を実行するステップと、をさらに含むことを特徴とする請求項3に記載の方法。
【請求項5】
現在のブループリントノードに対応する所定機能を実行する場合、ユーザーが前記ロボットに対して入力するノード制御命令を受信すると、前記ノード制御命令が指示する目標ブループリントノードを取得するステップと、
前記現在のブループリントノードに対応する所定機能を実行した後、前記目標ブループリントノードに対応する所定機能を実行し続けるステップと、
前記順序に従って、前記行動ブループリント中の前記目標ブループリントノードの後に位置するブループリントノードに対応する所定機能を実行し続けるステップと、をさらに含むことを特徴とする請求項1に記載の方法。
【請求項6】
前記行動ブループリントは、
ユーザーが入力するブループリント構築命令を取得し、
前記ブループリントノードと前記所定機能との対応関係を含む、前記ブループリント構築命令中のノード機能対応関係に応じて、複数のブループリントノードを生成し、
前記ブループリント構築命令中のノード接続関係に応じて、複数のブループリントノードを接続するための目標順序を生成し、
前記目標順序に従って、前記複数のブループリントノードを接続した後、前記行動ブループリントを生成する
ことにより予め生成されることを特徴とする請求項1~5のいずれか一項に記載の方法。
【請求項7】
ロボット制御装置であって、
ロボットの第1の制御命令を取得するように構成される制御命令取得モジュールと、
前記第1の制御命令に対応する、目標順序に従って接続される複数のブループリントノードを含む行動ブループリントを決定するように構成される行動ブループリント決定モジュールと、
前記目標順序に従って、前記ブループリントノードに対応する所定機能を実行するように構成される行動ブループリント実行モジュールと、を含み、
前記ブループリントノードに対応する所定機能はアトミックAPI能力、メタスキル及びタスクスキルを含み、前記アトミックAPI能力は前記ロボットが部品によって実行する機能を表すことに用いられ、前記メタスキルは前記ロボットの実行部材が具備する機能を表すことに用いられ、前記タスクスキルは前記ロボットがユーザー向けに目標タスクを実行する機能を表すことに用いられ、前記ロボットは1つ又は複数の実行部材を含み、前記実行部材は1つ又は複数の部品を含むことを特徴とするロボット制御装置。
【請求項8】
ロボットであって、請求項
7に記載のロボット制御装置を含むことを特徴とするロボット。
【請求項9】
コンピュータプログラムが記憶される非一時的コンピュータ可読記憶媒体であって、該プログラムがプロセッサによって実行されると、請求項1~6のいずれか一項に記載の方法のステップを実現することを特徴とする非一時的コンピュータ可読記憶媒体。
【請求項10】
電子機器であって、
コンピュータプログラムが記憶されるメモリと、
前記メモリにおける前記コンピュータプログラムを実行して、請求項1~6のいずれか一項に記載の方法を実現するように構成されるプロセッサと、を含むことを特徴とする電子機器。
【請求項11】
コンピュータプログラム製品であって、プログラマブル装置によって実行可能なコンピュータプログラムを含み、該コンピュータプログラムは該プログラマブル装置によって実行されると、請求項1~6のいずれか一項に記載の方法のステップを実行するためのコード部分を有することを特徴とするコンピュータプログラム製品。
【国際調査報告】