JP2006510496A - ロボットを制御するためのシステム及び方法 - Google Patents

ロボットを制御するためのシステム及び方法 Download PDF

Info

Publication number
JP2006510496A
JP2006510496A JP2004561778A JP2004561778A JP2006510496A JP 2006510496 A JP2006510496 A JP 2006510496A JP 2004561778 A JP2004561778 A JP 2004561778A JP 2004561778 A JP2004561778 A JP 2004561778A JP 2006510496 A JP2006510496 A JP 2006510496A
Authority
JP
Japan
Prior art keywords
robot
language
action
programming
programming statements
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004561778A
Other languages
English (en)
Inventor
アルサファディ,ヤッサー
チパラ,オクタヴ
ヤッシン,アムル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of JP2006510496A publication Critical patent/JP2006510496A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1658Programme controls characterised by programming, planning systems for manipulators characterised by programming language
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36243Convert source, high level code to machine, object code
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40393Learn natural high level command, associate its template with a plan, sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Stored Programmes (AREA)
  • Toys (AREA)

Abstract

本発明は、高レベルプログラミング言語を用いてロボット(41)を制御するためのコンピュータ実行システム及び方法を提供する。本発明は、3つのプログラミング言語、即ち、2つの高レベル言語と1つの低レベル言語とを規定する。第1高レベルプログラミング言語は、本発明においては、ロボットシナリオ言語(RSL)(20)と呼ばれ、エンドユーザ(18)はその言語で高レベル行動及びアクションに関連するロボットプレゼンテーション(40)をつくり出すことができる。第2高レベル言語は、本発明においてはロボット行動言語(RBL)と呼ばれ、ロボット(41)のハードウェアを直接制御するための低レベル言語コマンドに高レベル(RSL)言語で各々の高レベル行動又はアクションをどのように変換又はマッピングするかについて記述するためのテンプレートを有する。本発明では、低レベル言語をロボットハードウェア言語(RHWL)という。

Description

本発明は、ロボットを制御するためのコンピュータ実行可能方法に関する。特に、本発明は、ロボットにより直接実行可能な低レベル言語のハードウェアコマンドに高レベルのプログラミング言語を透過的に変換することによりロボットを制御するための方法に関する。
ロボットは、広範なアクティビティに対して過去において開発されてきたが、又更に開発が行われている一方、ロボットの環境との複雑な双方向的交流を必要としないアクティビティに対してタスクとして課されたロボットの研究は、今日までなされてきてはいない。従来技術においては、ロボット言語の定義のイニシアチブは2つの動向に分かれてきた。開発者は、低レベルのロボットの動作及び応答(即ち、実行するためにハードウェアが必要な動作又は操作されるために必要なセンサ刺激)を規定し、又は、動作が同期化される必要がある高度に複雑なタスクの解決を目的とするタスク記述(例えば、タスク記述言語)のために用いられる複雑な高レベルの言語を規定している。それら両方の方法は、環境との複雑なインタラクションを必要としない単純なアクティビティのためにロボットを使用することを意図するユーザの必要性を満足するものではない。そのようなアクティビティは、例えば、セールスマン、料理用ロボット及びクリーニングロボットのようなロボットを含む。それらのアクティビティに対して、そのことは、高レベルの言語ステートメントのみを用いる料理のデモンストレーション又はセールスのプレゼンテーションのためのロボットを操作することができるように、芸術家又は広告会社の幹部のような、特別なプログラミングスキルを有しないユーザに好ましい。従って、ロボットにより直接実行可能な低レベルの言語コマンドに高レベルの言語コマンドを変換するために、幾つかの手段が必要である。本発明は、それらの及びその他の目的を満足するために対処する。
本発明の目的は、高レベルのプログラミング言語を用いてロボットを制御するためのコンピュータ実行システム及び方法を提供することである。本発明は3つのプログラミング言語、即ち、2つの高レベル言語及び1つの低レベル言語を規定する。第1高レベルプログラミング言語は、ここでは、ロボットシナリオ言語(RSL)と呼ばれる。エンドユーザは、その言語で高レベルの行動及び動作に関するロボットのプレゼンテーションをつくり出す。第2項レベルプログラミング言語は、ここでは、ロボット行動言語(RBL)といい、高レベル(RSL)言語の各々の高レベルの行動又は動作がロボットのハードウェアを直接制御するための低レベル言語コマンドにどのように変換又はマッピングされるかを記述するためのテンプレートを有するロボット行動言語(RBL)と呼ばれる。低レベル言語は、ここでは、ロボットハードウェア言語(RHWL)と呼ばれる。
本発明の一特徴に従って、高レベルプログラミング言語を用いるロボットを制御するための方法は:変換エンジンへの第1入力として前記ロボットにより実行されるべき行動を定義するプログラミングステートメントの第1集合を供給する段階;前記変換エンジンへの第2入力として前記行動を解釈するためのルールを規定する行動テンプレートを有するプログラミングステートメントの第2集合を供給する段階;並びに、変換エンジンにおいて、前記ロボットを直接制御するためのロボットコマンドの第3集合を与えるために、前記の規定されたルールに従って前記行動を変換する段階;を有する。
本発明の他の特徴に従って、高レベルプログラミング言語を用いるロボットを制御するためのシステムは:変換エンジンへの第1入力として前記ロボットにより実行されるべき行動を定義するプログラミングステートメントの第1集合を供給するための手段;前記変換エンジンへの第2入力として前記行動を解釈するためのルールを規定する行動テンプレートを有するプログラミングステートメントの第2集合を供給するための手段;並びに、変換エンジンにおいて、前記ロボットを直接制御するためのロボットコマンドの第3集合を与えるために、前記の規定されたルールに従って前記行動を変換するための手段;を有する。
本発明により提供される一有利点は、プログラミングにおいて特定の専門知識を有しないユーザが、難解な高レベルタスク記述言語ステートメント又は低レベルプログラミング言語ステートメントを習得する心配を持たずに、高レベルRSLプログラミング言語を簡単に利用することにより、ロボットのプレゼンテーションを構築する能力を与えられることである。
本発明の他の有利点は、ロボットが改造又はアップグレードされることが可能である容易性である。欠陥部品のためにロボットが故障した状況について考える。交換部品は、オリジナルの部品と同じ仕様をもっているとは限らない。通常、このことは、時間を要し、エラーの影響を受ける新しい部品の仕様の違いに適応するようにロボットのネイティブ言語における低レベルコードを書き換える必要がある。本発明は、RBLテンプレート言語によりマッピングを簡単に変えることにより低レベル(RHWL)言語を高レベル(RSL)プログラミング言語との間のマッピングを簡単に変えることにより、この欠点を克服する。新しい部品の異なる仕様に従うようにRBLテンプレートを簡単に修正することにより、ユーザは、低レベルコードを書き換えなければならないタスクを取り除かれる。RBL言語は、ある意味で、抽出のレイヤを与える。
本発明により提供される他の有利点は、異なるハードウェア構成を有する多種多様のロボットプラットホームにおいて一貫した行動の結果を達成する能力である。一実施例として、“現在の位置から10フィート動く”ようにロボットに命令する高レベル言語の行動を考える。この一貫した行動の結果は、内部のハードウェア構成と関係なく、いずれのロボットに対して達成可能である。このような能力は、低レベル言語と高レベル言語との分離により与えられる。
本発明は、環境との複雑なインタラクションを必要としない非複雑性タスクを実行するためにロボットを使用するアプリケーションに十分適する。そのようなアプリケーションには、例えば、セールスマン、コック、クリーナ又はCNCマシンを使用する製造プロセスにおける使用がある。しかしながら、本発明は、本質的に、特定のクラスのアプリケーションに限定されるものではない。
本発明の上記の特徴については、添付図面に関連付けて、本発明の例示としての実施形態の以下の詳細説明を参照することにより、容易に明らかになり、理解されるであろう。
以下の本発明の詳細説明においては、多くの特定の詳細について示し、本発明を一貫して理解できるようにしている。しかしながら、それらの特定の詳細によらずとも、本発明が実行可能であることは、当業者には明らかであろう。幾つかの例においては、本発明を不明瞭にすることを回避するように、周知の構造及び装置については、その詳細ではなく、ブロック図の形で示している。
本発明は、その最も広いアプリケーションにおいて、3つのプログラミング言語であって、高レベルプログラミング言語として一般に特徴付けることが可能である第1言語と、高レベルテンプレート言語として一般に特徴付けられる第2言語と、低レベルプログラミング言語として一般に特徴付けられる第3言語とを使用する。それらの3つのプログラミング言語は、高レベルプログラミング言語によりロボット動作を制御するための構造又は基礎を形成する。
本発明の原理については、ここでは、拡張可能マークアップ言語(XML)の関連で記述する。XMLは、莫大な量の既存のインフラが与えられる好ましい実施である。しかしながら、XMLの実施形態は、非制限的な例示としての実施形態である。
A.ロボットシナリオ言語(RSL)
RSL言語は、特定のプログラミングスキルを有しない、高度の技術力を有しないエンドユーザによる使用の場合のために構築された高レベルプログラミング言語である。例えば、その言語は、プログアミング言語に精通していないか又は興味がないクリエーティブな/芸術的な人々による使用のために開発されたが、例えば、モール、公園又は映画館のロビーにおいてセールスデモンストレーションを実施することを含むかなり多くの目的のためにロボットのプレゼンテーションをつくり出すようにデザインすることができる。
高レベルRSLプログラミング言語の1つの注目すべき特徴は、高レベル言語であることにより、特定のロボットの能力又は属性に対する関心又は考慮をもつことなく、言語ステートメントを書くことができることである。例として、RSL言語ステートメントは、典型的には、例えば、“走る”、“笑う”、“目をパチパチさせる”、“踊る”等のようなロボットにより実行される見慣れた行動を規定する。ステートメントは、例えば、カントリーダンス、ロックンロールダンス、スローダンスのような種々のダンスの種類、又は、‘大笑い’又は‘くすくす笑う’等のような笑いのタイプを規定する、標準的な行動の多様性を更に有する。
図1は、ロボットウェブプレゼンテーション(robotic web presentation)をつくり出すことを希望して、コンピュータターミナルに向かっているエンドユーザによりRSL言語がどのように利用することが可能であるかについて示す実施形態である。図1は、ロボットプレゼンテーションをつくり出すためのプログラムを実行するコンピュータターミナルのディスプレイスクリーンのスナップショット画像を示している。その図から分かるように、所望のロボットの動作を規定するための選択可能アイコン20は、“走る”アイコン11、“ジャンプする”アイコン13、“笑う”アイコン15等を有するディスプレイスクリーン10の上部において規定される。ユーザは、所望のプレゼンテーションシーケンス35における選択可能アイコンを簡単にグラビングし且つドロッピングすることによりロボットのプレセンテーションをつくり出すことができる。図1のスナップショット画像は、時間軸で表されているような順序で、ロボットが、先ず“ジャンプし”36、“笑い”37及び“目をパチパチさせる”39ように命令する4つのアイコンを有する部分的なロボットウェブプレゼンテーションをエンドユーザがつくり出したことを示している。簡単化されたアイコン駆動方法を用いて、単純且つ容易に理解できる方法でロボットプレゼンテーションをつくり出すことが可能である。
その実施形態に従って、ロボット運動の難解な特徴はアプリケーションレベルに関して完全に透過的である。一旦、完了すれば、RSLに基づく高レベルのプレゼンテーションは、後の使用及び/又は修正のために記憶されることが可能である。RSLファイルは、一旦つくり出されると、特定のロボットのアクティビティを命令するために1つ又はそれ以上の遠隔位置に電子的に伝送されることが可能であることが又、検討される。
B.RBLテンプレート言語
RBL言語は、RSL高レベル言語のコマンドがどのように実行されるかを規定するための行動テンプレートを有する。即ち、RBL行動テンプレートは、ロボットのハードウェアを直接制御するための低レベル言語のコマンドに、高レベル(RSL)言語における各々の高レベル行動又はアクションがどのように変換されるかを記述する。RBL行動テンプレートは1つ又はそれ以上のルールを有する。例えば、‘笑う’に対するRSLコマンドをマッピングするためのRBL行動テンプレートは、ロボットが上方にロボットの唇の外側部分を動かすように命令するための第1ルールと、ロボットにロボットの歯全てが
現れるように命令するための第2ルールと、を有することが可能である。
RBLテンプレートは、RSLとの多対一対応関係の状態で存在する。換言すれば、各々のRSLコマンドは、同じ行動を実行するためのスールの異なる集合を特定するいずれの数のRBLテンプレートを有することが可能である。前記例を参照するに、‘笑う’に対する第2RBL行動テンプレートは、ロボットがロボットの頬を素早く上下に動かすように命令するためのルールを有することが可能である。明らかであるように、特定のRSLコマンドのためにつくり出すことが可能である異なるRBLテンプレートの多様性又は数に関する制限は存在しない。RBL行動テンプレートは、ある程度のプログラミングの専門知識が創造と維持に関連することを考えると、ロボットのシナリオをつくり出す人とは区別され且つ別個のエンティティにより、つくり出され且つ維持されることが可能である。
C.RHWL言語
本発明の第3プログラミング言語は、ロボットのハードウェアを直接制御するための低レベルのロボットハードウェア言語(RHWL)である。これは、本質的に、ロボットのネイティブ言語である。RHWL言語は、ロボットが実行することができる全体の低レベル命令を表す。
D.一実施形態
実施形態に従った本発明の動作を示すために、3つのプログラミング言語の2つはXML言語実施形態として記述され、第3プログラミング言語は拡張可能スタイルシート言語(XSL)言語実施形態として記述されている例を提供する。XMLは、現在、利用可能にする拡張可能なインフラストラクチャを与える好適な実施である。
図2を参照するに、高レベルプログラミング言語によりロボット(Stanという)のアクションを遠隔的に制御するためのコンピュータ実行システム及び方法について示すプロセスフロー図200を示している。
例示としての例において、エンドユーザは、単一のアクション、即ち、写真を撮るアクションを有するロボットのプレゼンテーションを命令することを所望する。この例は、本発明の原理を分り難くしないように、意図的に簡単にしている。
例示としての例において、ロボット(Stan)は写真を撮る能力を有し(即ち、頭へのビデオカメラ)、想定されるロボットのセールスプレゼンテーションに従って見物人の写真を撮ることが要求される。
先ず、プログラミング言語に興味を持っていないか又は精通していないことが仮定されるエンドユーザは、ロボットのセールスプレゼンテーションをつくり出すことでタスクを課している。そのユーザは、第1高レベルプログラミング言語で書かれたアクション(行動)のシーケンスを有するRSLファイル20を最終プロダクトとして得るために、図1に関連して上で説明したアイコン駆動プログラムの援助の下でロボットのセールスプレゼンテーションをつくり出すことが可能である。そのアクション又は行動のシーケンスはロボットのプレゼンテーションを集合的に規定する。例示としての例において、ロボットのセールスプレゼンテーションは、ロボット41により写真を撮る単一のアクションを有する。しかしながら、更に現実的な例において、そのシナリオは、ロボット41により実行される多数のアクションを有することが可能である。
例示としての実施形態において、ユーザは、プレゼンテーションストリーム35に含むための選択可能アイコンのパレットから“写真を撮る”アイコン17を簡単に選択することによりロボットのプレゼンテーションをつくり出すためにアイコン駆動プログラムを利用することが可能である。ユーザは、例えば、“my_presentation.rsl”と名付けられたRSLファイル20としてプレゼンテーションストリームを保存することが可能である。XMLの実施形態においては、‘写真を撮る’ことに対するロボットのセールスプレゼンテーションを規定するRSLファイル20は次のコードシーケンスを有することが可能である。
Figure 2006510496
コードステートメント(1乃至5)は、XML実施形態を用いてRSLプログラミング言語で書かれている。コードステートメント(1乃至5)の一般的構造は、プログラミングの技術分野で周知であり、ここでは、更に説明することはしない。しかしながら、コードステートメント3が、写真を撮ることに関連する高レベル‘行動’のための高レベル言語RSLプログラミング言語コマンド、即ち“Take_Picture”をコードステートメントが規定することは興味深いことである。しかしながら、コードステートメントは、写真を撮るための‘行動’がロボットによりどのように実行されるかに関して、詳細又は特定性を与えない。
ここまで説明してきたことは、高レベルRSLプログラミング言語で書かれたロボットのセールスプレゼンテーションをつくり出すことについてである。
上記のように、ロボット41は、高レベル言語RSLコマンドをネイティブに処理することはできない。ロボット41は、低レベルロボットハードウェア言語(RHWL)コマンドにより制御又は操作することのみができる。それ故、本発明は、ロボットがネイティブに処理することができる低レベルロボットハードウェア言語コマンドに高レベルRSLコマンドをマッピング又は変換するための機構を提供する。第2高レベル言語で書かれたRBL行動テンプレートはそのようなマッピングを提供する。即ち、RBL行動テンプレートは、高レベル言語RSLコマンドの解釈の仕方を規定するルールを有する。
例示としての例においては、他に角RBL行動テンプレートは、次のように、RSLコマンド、即ち、“写真を撮る”を解釈するための第2高レベルプログラミング言語でつくり出された。
Figure 2006510496
コードステートメント(1乃至9)は、XML実施形態を用いてRSLプログラミング言語で書かれている。コードステートメント(1乃至9)の一般的構造は、プログラミングの技術分野で周知である。表IIからの興味のあるステートメントは、ステートメント3乃至6を有する。先ず、モーディングステートメント3は、‘写真を撮る’行動のためのマッチング行動テンプレートを規定する。本発明の原理に従って、変換処理中、RSLファイル20における各々の行動は、RBSファイルにおけるマッチング行動テンプレートとマッチングする必要がある。RBLファイルは、RSL言語で書かれた検討された行動全てに対するマッピングを規定する非常に多くのテンプレートを有する。
例示としての例において、RSLファイル20は、それに含まれる各々の行動を選択するために変換エンジンにより解析される。RSL行動に対して、RBLテンプレートファイル22は、RSL行動とマッチングする行動テンプレートを位置付けるために検索される。一旦、マッチング行動テンプレートが見つけられると、マッチングテンプレートに関連するルールが、RHWLファイル30を部分的に構築するために変換エンジン26において用いられ、そのRHWLファイル30は、例えば、“写真を撮る”ようにロボットを直接制御するための低レベルハードウェアコマンドを有する。表IIを参照するに、写真を撮るためのRBL行動テンプレートは、3つの動作、即ち、(1)カメラを40度傾ける、(2)カメラを20度パンする、及び(3)写真を撮る、としてある意味で“Take_picture”行動を解釈するライン4乃至6において指定されているような3つのルールを有する。
一般に、XSL変換エンジン26は2つの入力を有し、第1入力は高レベル言語RSLファイル20を受けるためのものであり、第2入力はRBLテンプレートファイル22を受けるためのものである。XSL変換エンジン26は、ロボットのアクションを直接制御するためのロボットのネイティブ言語において低レベルロボットハードウェアコマンド(RHWLファイル30)の単一の集合にRBL行動テンプレートに従ってRSL行動の変換(マッピング)を実行するための機構である。例示としての例において、上記のプロセスからもたらされるRHWLファイル30は次のようである。
Figure 2006510496
コードステートメント(1乃至7)は、分配器34によりロボット制御器のロボットハードウェア処理器35に供給され、XML実施形態を用いるRHWLプログラミング言語で書かれる。コードステートメントの構成はプログラミングの技術分野では周知である。ロボットのアクションを直接制御するための低レベルロボットハードウェア言語ステートメントを規定するステートメント3及び4は重要である。具体的には、RHWLステートメント(3)及び(4)は、ロボットがロボットの頭を40度傾け、次いで、その頭を20度パンするように命令する。
又、図2から分かるように、ロボットプレゼンテーション40に映像及び音声エンハンスメントを供給するためのロボット制御器41に補助ファイルとしてダウンロードされる音声ストリーム25及び映像ストリーム29をロボットプレゼンテーションに映像25及び音声29を有することが可能である。
図3は、例示としての例に対する図2のプロセスブロック42を更に詳細に示している。本発明のXML実施形態に対して、プロセスフローは、XSLT変換エンジンを用いてXSLスタイルシートとXMLソース文書を処理するための技術に類似している。当業者には周知であるように、XSLT変換エンジンは、XML文書を他の種類の文書に変換するために用いられる。特に、XSLTは、完全HTML文書のような他の種類の文書に生XMLデータを変換する能力を提供する。XSLT変換エンジンは、最終プロダクトのような変換された出力(例えば、完全HTML文書)を生成するためにそれにXSLスタイルシートを供給する且つ入力ソースとしてXML文書を取ることにより動作する。XSLスタイルシートはテンプレートを有し、それらの各々はルールを指示し、マッチングパターンにより特定される。XSLT変換エンジンが、XSLスタイルシートにおけるテンプレートパターンをマッチングするソースXMLデータを見つけたとき、そのデータに対するテンプレートのスタイリングルールは、XMLデータを抽出し、不所望のセクションをフィルタリング除去し、そしてデータをプレゼンテーション可能レイアウトに操作する。類似する方式で、図3に示すように、RSLファイル20は、一種のXML文書である。図3のRBLファイル22はXSLスタイルシートに類似している。本発明の原理に従って、XLST変換エンジンがテンプレートパターン(RBLテンプレート)にマッチングするソースXMLデータ(RSLコマンド)をみつけたとき、それは、テンプレートのスタイリングルール(RBLテンプレートにより特定された行動)をXMLデータ(RSLコマンド)に適用し、それからRHWLコマンド、即ち、RHWLファイル30を生成する。
それ故、高レベルプログラミング言語を用いてロボットを制御するためのコンピュータ実行システム及び方法の実施形態について説明したが、本発明のシステム及び方法の特定の有利点が達成できたことを、当業者は理解する筈である。上記内容は、本発明の例示としての実施形態であるとしてのみ構成されているものである。当業者は、本発明の範囲及び主旨からいずれかの逸脱をすることなく、上記実施形態に類似する機能性を提供できる他の構成を容易に考案することができるであろう。
RSL言語で高レベルロボットプレゼンテーションをつくり出すためのコンピュータターミナルディスプレイスクリーンのスナップショット画像を示す図である。 ロボットのハードウェアを直接制御するための低レベルRHWL命令に、高レベルRSL命令及び関連RBL行動テンプレートを変換するためのプロセスフローを示すブロック図である。 例示としての例について図2のプロセスブロック42を更に詳細に示す図である。

Claims (15)

  1. ロボットを制御するためのコンピュータ実行方法であって:
    (a)変換エンジンへの第1入力として前記ロボットにより実行されるべき行動を規定するプログラミングステートメントの第1集合を供給する段階;
    (b)前記変換エンジンへの第2入力として前記行動を解釈するためのルールを規定する複数の行動テンプレートとして構成されるプログラミングステートメントの第2集合を供給する段階;並びに
    (c)前記ロボットを直接制御するためのロボットプログラミングステートメントの第3集合をもたらすように前記の規定されたルールに従って、前記行動を前記変換エンジンにおいて変換する段階;
    を有することを特徴とする方法。
  2. 請求項1に記載の方法であって、前記のプログラミングステートメントの第1集合は第1高レベルプログラミング言語で書かれている、ことを特徴とする方法。
  3. 請求項1に記載の方法であって、前記のプログラミングステートメントの第2集合は第2高レベルプログラミング言語で書かれている、ことを特徴とする方法。
  4. 請求項2に記載の方法であって、前記のプログラミングステートメントの第1集合は拡張可能マークアップ言語(XML)の形であり、前記のプログラミングステートメントの第2集合は拡張可能スタイルシート言語(XSL)の形である、ことを特徴とする方法。
  5. 請求項3に記載の方法であって、前記のプログラミングステートメントの第1集合は拡張可能マークアップ言語(XML)の形であり、前記のプログラミングステートメントの第2集合は拡張可能スタイルシート言語(XSL)の形である、ことを特徴とする方法。
  6. 請求項1に記載の方法であって、前記のプログラミングステートメントの第1集合からの前記の規定された行動の1つは、前記のプログラミングステートメントの第2集合からの1つ又はそれ以上の前記の複数の行動テンプレートと関連している、ことを特徴とする方法。
  7. 請求項1に記載の方法であって、前記のプログラミングステートメントの第3集合は前記ロボットにより直接実行される低レベルロボットハードウェア言語で書かれている、ことを特徴とする方法。
  8. 請求項1に記載の方法であって、前記変換段階(c)は:
    (1)前記のプログラミングステートメントの第1集合から前記行動をシーケンシャルに選択する手順;
    (2)前記段階(1)において選択された各々の行動に対して、前記の選択された行動とマッチングする行動テンプレートを位置付けるために前記の複数の行動テンプレートを検索する手順;並びに
    (3)前記ロボットを直接制御するためのロボットコマンドの第3集合の少なくとも一部をもたらすために前記段階(1)において前記の選択された行動に前記段階(2)における前記のマッチングする行動テンプレートを適用する手順;
    を更に有する、ことを特徴とする方法。
  9. 請求項8に記載の方法であって、前記のロボットプログラミングステートメントの第1集合は高レベル記述ファイルから選択される、ことを特徴とする方法。
  10. 請求項1に記載の方法であって、前記のロボットプログラミングステートメントの第1集合は前記ロボットにより実行されるべきロボットプレゼンテーションを集合的に有する、ことを特徴とする方法。
  11. 請求項10に記載の方法であって、前記ロボットプレゼンテーションで用いる少なくとも1つの音声及び/又は映像マルチメディアストリームと前記のロボットコマンドの第3集合の前記の少なくとも一部を結合させる段階を更に有する、ことを特徴とする方法。
  12. 高レベルプログラミング言語によりロボットを制御するためのシステムであって:
    変換エンジンへの第1入力として前記ロボットにより実行されるべき行動を規定するプログラミングステートメントの第1集合を供給するための手段;
    前記変換エンジンへの第2入力として前記行動を解釈するためのルールを規定する複数の行動テンプレートとして構成されるプログラミングステートメントの第2集合を供給するための手段;並びに
    前記ロボットを直接制御するためのロボットプログラミングステートメントの第3集合をもたらすように前記の規定されたルールに従って、前記行動を前記変換エンジンにおいて変換するための手段;
    を有することを特徴とするシステム。
  13. 請求項12に記載のシステムであって、前記変換するための手段は:
    前記のプログラミングステートメントの第1集合から前記行動をシーケンシャルに選択するための手段;
    (2)前記段階(1)において選択された各々の行動に対して、前記の選択された行動とマッチングする行動テンプレートを位置付けるために前記の複数の行動テンプレートを検索するための手段;並びに
    (3)前記ロボットを直接制御するための前記のロボットコマンドの第3集合の少なくとも一部をもたらすために前記段階(1)において前記の選択された行動に前記段階(2)における前記のマッチングする行動テンプレートを適用するための手段;
    を更に有する、ことを特徴とするシステム。
  14. 請求項13に記載のシステムであって、前記行動テンプレートは第1高レベル記述ファイルにおいて検索される、ことを特徴とするシステム。
  15. 請求項13に記載のシステムであって、前記行動は第2高レベル記述ファイルから選択される、ことを特徴とするシステム。
JP2004561778A 2002-12-19 2003-12-04 ロボットを制御するためのシステム及び方法 Pending JP2006510496A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US43454902P 2002-12-19 2002-12-19
PCT/IB2003/005646 WO2004056537A2 (en) 2002-12-19 2003-12-04 System and method for controlling a robot

Publications (1)

Publication Number Publication Date
JP2006510496A true JP2006510496A (ja) 2006-03-30

Family

ID=32682059

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004561778A Pending JP2006510496A (ja) 2002-12-19 2003-12-04 ロボットを制御するためのシステム及び方法

Country Status (6)

Country Link
US (1) US20060117324A1 (ja)
EP (1) EP1575687A2 (ja)
JP (1) JP2006510496A (ja)
CN (1) CN100384495C (ja)
AU (1) AU2003283693A1 (ja)
WO (1) WO2004056537A2 (ja)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009034806A (ja) * 2007-07-31 2009-02-19 Ind Technol Res Inst 無線識別技術を電子ロボットの動作系列制御に応用する構造
JP2009034807A (ja) * 2007-08-02 2009-02-19 Robotis Co Ltd ネットワーク基盤のロボットコンテンツ取引システム及び方法
JP2010131748A (ja) * 2008-12-08 2010-06-17 Korea Electronics Telecommun 仮想空間と連係した多重ロボット制御装置および方法
JP2010527294A (ja) * 2007-05-08 2010-08-12 レイセオン・サルコス・エルエルシー ロボットクローラのための可変プリミティブマッピング
JP2011108156A (ja) * 2009-11-20 2011-06-02 Japan Science & Technology Agency 料理プロセス指示装置及び料理プロセス指示方法
US8392036B2 (en) 2009-01-08 2013-03-05 Raytheon Company Point and go navigation system and method
US8393422B1 (en) 2012-05-25 2013-03-12 Raytheon Company Serpentine robotic crawler
JP2013134786A (ja) * 2011-12-22 2013-07-08 Fanuc Robotics America Inc ロボットによる数値制御プログラムの実行
US8935014B2 (en) 2009-06-11 2015-01-13 Sarcos, Lc Method and system for deploying a surveillance network
US9031698B2 (en) 2012-10-31 2015-05-12 Sarcos Lc Serpentine robotic crawler
US9409292B2 (en) 2013-09-13 2016-08-09 Sarcos Lc Serpentine robotic crawler for performing dexterous operations
US9566711B2 (en) 2014-03-04 2017-02-14 Sarcos Lc Coordinated robotic control
JP2018015824A (ja) * 2016-07-26 2018-02-01 公立大学法人会津大学 ロボットを操作する装置、その装置において実行される方法およびプログラム。
JP2018079544A (ja) * 2016-11-17 2018-05-24 株式会社サテライトオフィス ロボットまたは音声対応電子回路モジュール制御システム
WO2021246416A1 (ja) * 2020-06-05 2021-12-09 ファナック株式会社 プログラミング装置

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7383100B2 (en) * 2005-09-29 2008-06-03 Honda Motor Co., Ltd. Extensible task engine framework for humanoid robots
US7587260B2 (en) 2006-07-05 2009-09-08 Battelle Energy Alliance, Llc Autonomous navigation system and method
US7584020B2 (en) * 2006-07-05 2009-09-01 Battelle Energy Alliance, Llc Occupancy change detection system and method
US7974738B2 (en) 2006-07-05 2011-07-05 Battelle Energy Alliance, Llc Robotics virtual rail system and method
US7620477B2 (en) * 2006-07-05 2009-11-17 Battelle Energy Alliance, Llc Robotic intelligence kernel
US7668621B2 (en) 2006-07-05 2010-02-23 The United States Of America As Represented By The United States Department Of Energy Robotic guarded motion system and method
US8355818B2 (en) 2009-09-03 2013-01-15 Battelle Energy Alliance, Llc Robots, systems, and methods for hazard evaluation and visualization
US8965578B2 (en) 2006-07-05 2015-02-24 Battelle Energy Alliance, Llc Real time explosive hazard information sensing, processing, and communication for autonomous operation
US8073564B2 (en) 2006-07-05 2011-12-06 Battelle Energy Alliance, Llc Multi-robot control interface
US8271132B2 (en) * 2008-03-13 2012-09-18 Battelle Energy Alliance, Llc System and method for seamless task-directed autonomy for robots
US7801644B2 (en) * 2006-07-05 2010-09-21 Battelle Energy Alliance, Llc Generic robot architecture
CN100429112C (zh) * 2006-12-21 2008-10-29 浙江大学 轮腿弹跳复合式移动机器人
WO2008137953A1 (en) 2007-05-07 2008-11-13 Raytheon Sarcos, Llc Method for manufacturing a complex structure
JP5285701B2 (ja) 2007-07-10 2013-09-11 レイセオン カンパニー モジュール式ロボットクローラ
US20090082879A1 (en) 2007-09-20 2009-03-26 Evolution Robotics Transferable intelligent control device
US9195911B2 (en) 2011-08-30 2015-11-24 5D Robotics, Inc. Modular robotic manipulation
US9682476B1 (en) 2015-05-28 2017-06-20 X Development Llc Selecting robot poses to account for cost
US9724826B1 (en) 2015-05-28 2017-08-08 X Development Llc Selecting physical arrangements for objects to be acted upon by a robot
CN111352360A (zh) * 2018-12-24 2020-06-30 深圳市优必选科技有限公司 机器人的控制方法、装置、机器人及计算机存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001191281A (ja) * 1999-12-29 2001-07-17 Sony Corp 編集装置、編集方法及び記録媒体
JP2001353678A (ja) * 2000-06-12 2001-12-25 Sony Corp オーサリング・システム及びオーサリング方法、並びに記憶媒体

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4827404A (en) * 1986-04-14 1989-05-02 Schlumberger Technology Corporation Method and system for computer programming
US5303384A (en) * 1990-01-02 1994-04-12 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration High level language-based robotic control system
US5576946A (en) * 1993-09-30 1996-11-19 Fluid Air, Inc. Icon based process design and control system
WO1998006043A1 (en) * 1996-08-02 1998-02-12 New York University A method and system for scripting interactive animated actors
US6285380B1 (en) * 1994-08-02 2001-09-04 New York University Method and system for scripting interactive animated actors
US5594856A (en) * 1994-08-25 1997-01-14 Girard; Michael Computer user interface for step-driven character animation
US5724074A (en) * 1995-02-06 1998-03-03 Microsoft Corporation Method and system for graphically programming mobile toys
US6553410B2 (en) * 1996-02-27 2003-04-22 Inpro Licensing Sarl Tailoring data and transmission protocol for efficient interactive data transactions over wide-area networks
US20010032278A1 (en) * 1997-10-07 2001-10-18 Brown Stephen J. Remote generation and distribution of command programs for programmable devices
US6546436B1 (en) * 1999-03-30 2003-04-08 Moshe Fainmesser System and interface for controlling programmable toys
US6589291B1 (en) * 1999-04-08 2003-07-08 International Business Machines Corporation Dynamically determining the most appropriate location for style sheet application
IT1313346B1 (it) * 1999-09-06 2002-07-23 Abb Ricerca Spa Metodo per eseguire la programmazione fuori linea di un robotindustriale.
US6879862B2 (en) * 2000-02-28 2005-04-12 Roy-G-Biv Corporation Selection and control of motion data
US7124356B1 (en) * 1999-12-03 2006-10-17 Koninklijke Philips Electronics N.V. Methods for initiating activity in intelligent devices connected to an in home digital network using extensible markup language (XML) for information exchange and systems therefor
US6920607B1 (en) * 1999-12-15 2005-07-19 Microsoft Corp. Methods and systems for dynamically creating user interfaces
WO2002029715A1 (en) * 2000-10-03 2002-04-11 Kent Ridge Digital Labs A system, method and language for programming behaviour in synthetic creatures
US20020095445A1 (en) * 2000-11-30 2002-07-18 Philips Electronics North America Corp. Content conditioning method and apparatus for internet devices
KR100434240B1 (ko) * 2001-02-27 2004-06-04 (주)다이나릿시스템 고수준 프로그래밍 언어를 이용한 회로내 에뮬레이션을위한 장치 및 방법
JP2002283259A (ja) * 2001-03-27 2002-10-03 Sony Corp ロボット装置のための動作教示装置及び動作教示方法、並びに記憶媒体
JP2005515903A (ja) * 2001-11-28 2005-06-02 エヴォリューション ロボティクス インコーポレイテッド ロボット用センサおよびアクチュエータのハードウェア抽象化層内における抽象化および集合化
US7797626B2 (en) * 2003-02-12 2010-09-14 Sap Ag Managing different representations of information

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001191281A (ja) * 1999-12-29 2001-07-17 Sony Corp 編集装置、編集方法及び記録媒体
JP2001353678A (ja) * 2000-06-12 2001-12-25 Sony Corp オーサリング・システム及びオーサリング方法、並びに記憶媒体

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010527294A (ja) * 2007-05-08 2010-08-12 レイセオン・サルコス・エルエルシー ロボットクローラのための可変プリミティブマッピング
JP2009034806A (ja) * 2007-07-31 2009-02-19 Ind Technol Res Inst 無線識別技術を電子ロボットの動作系列制御に応用する構造
JP2009034807A (ja) * 2007-08-02 2009-02-19 Robotis Co Ltd ネットワーク基盤のロボットコンテンツ取引システム及び方法
JP2010131748A (ja) * 2008-12-08 2010-06-17 Korea Electronics Telecommun 仮想空間と連係した多重ロボット制御装置および方法
US8392036B2 (en) 2009-01-08 2013-03-05 Raytheon Company Point and go navigation system and method
US8935014B2 (en) 2009-06-11 2015-01-13 Sarcos, Lc Method and system for deploying a surveillance network
JP2011108156A (ja) * 2009-11-20 2011-06-02 Japan Science & Technology Agency 料理プロセス指示装置及び料理プロセス指示方法
JP2013134786A (ja) * 2011-12-22 2013-07-08 Fanuc Robotics America Inc ロボットによる数値制御プログラムの実行
US8393422B1 (en) 2012-05-25 2013-03-12 Raytheon Company Serpentine robotic crawler
US9031698B2 (en) 2012-10-31 2015-05-12 Sarcos Lc Serpentine robotic crawler
US9409292B2 (en) 2013-09-13 2016-08-09 Sarcos Lc Serpentine robotic crawler for performing dexterous operations
US9566711B2 (en) 2014-03-04 2017-02-14 Sarcos Lc Coordinated robotic control
JP2018015824A (ja) * 2016-07-26 2018-02-01 公立大学法人会津大学 ロボットを操作する装置、その装置において実行される方法およびプログラム。
JP2018079544A (ja) * 2016-11-17 2018-05-24 株式会社サテライトオフィス ロボットまたは音声対応電子回路モジュール制御システム
WO2021246416A1 (ja) * 2020-06-05 2021-12-09 ファナック株式会社 プログラミング装置

Also Published As

Publication number Publication date
US20060117324A1 (en) 2006-06-01
CN1729035A (zh) 2006-02-01
WO2004056537A3 (en) 2004-10-21
AU2003283693A1 (en) 2004-07-14
AU2003283693A8 (en) 2004-07-14
CN100384495C (zh) 2008-04-30
WO2004056537A2 (en) 2004-07-08
EP1575687A2 (en) 2005-09-21

Similar Documents

Publication Publication Date Title
JP2006510496A (ja) ロボットを制御するためのシステム及び方法
US20150095882A1 (en) Method for the utilization of environment media in a computing system
US7490031B1 (en) Mechanization of modeling, simulation, amplification, and intelligence of software
US20040060037A1 (en) Method for gesture based modeling
JPS62214430A (ja) 情報処理システムにおけるオン・ライン表示の生成方法
JPS6118036A (ja) ドキユメント修正方式
CN101374213A (zh) 电视人机界面自定义的实现方法
CN105700867A (zh) 用于将动态可缩放矢量图形生成可执行应用程序的方法
CN111459501A (zh) 基于SVG的Web组态画面存储与展示系统和方法及介质
CN101303663A (zh) 一种数字机顶盒软件开发模拟测试方法
US10706215B2 (en) Producing formula representations of mathematical text
JP2019197084A (ja) 手話cg翻訳編集装置及びプログラム
US8566734B1 (en) System and method for providing visual component layout input in alternate forms
Buschhaus et al. Lessons learned from applying model-driven engineering in 5 domains: The success story of the MontiGem generator framework
CN112233208B (zh) 机器人状态处理方法、装置、计算设备和存储介质
Blumendorf Multimodal interaction in smart environments: a model-based runtime system for ubiquitous user interfaces
JP3254793B2 (ja) 対話処理システムの制御方法
Ruiz-Rube et al. Model-driven development of augmented reality-based editors for domain specific languages.
JP6795996B2 (ja) 手話cg編集装置及びプログラム
Oksa et al. Obtaining a ROS-Based Face Recognition and Object Detection: Hardware and Software Issues
JP2551935B2 (ja) 図的言語処理方式
JP2007160471A (ja) ロボット動作プログラム作成装置、ロボット動作プログラム作成方法、プログラム、記録媒体、ロボットコントローラおよびロボット
Pongthanisorn et al. Visual Programming for Artificial Intelligent and Robotic Application (VPAR) Framework
Roda Essential Programming for the Technical Artist
TW201305760A (zh) 一種運用電腦製作教材及訓練回饋之方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090310

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090604

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100602

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100609

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20101001