JP2002113675A - ロボット制御システム並びにロボット制御用ソフトウェアの導入方法 - Google Patents

ロボット制御システム並びにロボット制御用ソフトウェアの導入方法

Info

Publication number
JP2002113675A
JP2002113675A JP2000310146A JP2000310146A JP2002113675A JP 2002113675 A JP2002113675 A JP 2002113675A JP 2000310146 A JP2000310146 A JP 2000310146A JP 2000310146 A JP2000310146 A JP 2000310146A JP 2002113675 A JP2002113675 A JP 2002113675A
Authority
JP
Japan
Prior art keywords
hardware
software
robot
memory device
dependent
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
JP2000310146A
Other languages
English (en)
Inventor
Takayuki Sakamoto
隆之 坂本
Kazufumi Oyama
一文 尾山
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2000310146A priority Critical patent/JP2002113675A/ja
Priority to KR1020027007376A priority patent/KR20020067693A/ko
Priority to PCT/JP2001/008845 priority patent/WO2002030627A1/ja
Priority to CN01803906A priority patent/CN1395521A/zh
Publication of JP2002113675A publication Critical patent/JP2002113675A/ja
Priority to US10/171,561 priority patent/US6526332B2/en
Priority to US10/357,233 priority patent/US6760648B2/en
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • 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/1602Programme controls characterised by the control system, structure, architecture
    • 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/40304Modular structure

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mechanical Engineering (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)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Manipulator (AREA)

Abstract

(57)【要約】 【課題】 ハードウェア依存のミドルウェア層と、ハー
ドウェア非依存のアプリケーション層との組み合わせを
動的に変更して多関節型ロボットを制御する。 【解決手段】 ロボットのハードウェア構成に依存する
ソフトウェア・セットを複数格納する記憶装置と、ロボ
ットのハードウェア構成に依存しないソフトウェア・セ
ットを複数格納する記憶装置を用意し、実行時にロボッ
トのハードウェア構成に適合するソフトウェアを前者の
記憶装置から導入して、これをハードウェア構成に依存
しないソフトウェア・セットと動的に組み合わせること
によって、ユーザのニーズに合致する適切なロボットの
動作制御を実現する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、脚式歩行型など多
関節型のロボットをソフトウェア・プログラムを用いて
制御するロボット制御システム並びにロボット制御用ソ
フトウェアの導入方法に係り、特に、脚部や頭部など各
動作ユニットの着脱・交換などに伴ってハードウェア構
成が大幅に変更する可能性がある多関節型ロボットをソ
フトウェア・プログラムを用いて制御するロボット制御
システム並びにロボット制御用ソフトウェアの導入方法
に関する。
【0002】更に詳しくは、本発明は、ハードウェア構
成に対して依存性の高いソフトウェア層とハードウェア
構成に非依存のソフトウェア層の組み合わせからなるソ
フトウェア・プログラムを用いて多関節型ロボットを制
御するロボット制御システム並びにロボット制御用ソフ
トウェアの導入方法に係り、特に、ミドルウェアのよう
なハードウェア依存のソフトウェア層と、アプリケーシ
ョンなどのハードウェア非依存のソフトウェア層との組
み合わせを動的に変更して多関節型ロボットを制御する
ロボット制御システム並びにロボット制御用ソフトウェ
アの導入方法に関する。
【0003】
【従来の技術】電気的若しくは磁気的な作用を用いて人
間の動作に似せた運動を行う機械装置のことを「ロボッ
ト」という。ロボットの語源は、スラブ語のROBOT
A(奴隷機械)に由来すると言われている。わが国では、
ロボットが普及し始めたのは1960年代末からである
が、その多くは、工場における生産作業の自動化・無人
化などを目的としたマニピュレータや搬送ロボットなど
の産業用ロボット(industrial robot)であった。
【0004】最近では、イヌやネコのように4足歩行の
動物の身体メカニズムやその動作を模したペット型ロボ
ット、あるいは、ヒトやサルなどの2足直立歩行を行う
動物の身体メカニズムや動作を模した「人間形」若しく
は「人間型」のロボット(humanoid robot)など、脚式
移動ロボットの構造やその安定歩行制御に関する研究開
発が進展し、実用化への期待も高まってきている。これ
ら脚式移動ロボットは、クローラ式ロボットに比し不安
定で姿勢制御や歩行制御が難しくなるが、階段の昇降や
障害物の乗り越えなど、柔軟な歩行・走行動作を実現で
きるという点で優れている。
【0005】アーム式ロボットのように、ある特定の場
所に植設して用いるような据置きタイプのロボットは、
部品の組立・選別作業など固定的・局所的な作業空間で
のみ活動する。これに対し、移動式のロボットは、作業
空間は非限定的であり、所定の経路上または無経路上を
自在に移動して、所定の若しくは任意の人的作業を代行
したり、ヒトやイヌあるいはその他の生命体に置き換わ
る種々のサービスを提供することができる。
【0006】脚式移動ロボットの用途の1つとして、産
業活動・生産活動等における各種の難作業の代行が挙げ
られる。例えば、原子力発電プラントや火力発電プラン
ト、石油化学プラントにおけるメンテナンス作業、製造
工場における部品の搬送・組立作業、高層ビルにおける
清掃、火災現場その他における救助といったような危険
作業・難作業の代行などである。
【0007】また、脚式移動ロボットの他の用途とし
て、上述の作業支援というよりも、生活密着型、すなわ
ち人間との「共生」あるいは「エンターティンメント」
という用途が挙げられる。この種のロボットは、ヒトあ
るいはイヌ(ペット)などの比較的知性の高い脚式歩行
動物の動作メカニズムや四肢を利用した豊かな感情表現
をエミュレートする。また、あらかじめ入力された動作
パターンを単に忠実に実行するだけではなく、ユーザ
(あるいは他のロボット)から受ける言葉や態度(「褒
める」とか「叱る」、「叩く」など)に対して動的に対
応した、生き生きとした応答表現を実現することも要求
される。
【0008】従来の玩具機械は、ユーザ操作と応答動作
との関係が固定的であり、玩具の動作をユーザの好みに
合わせて変更することはできない。この結果、ユーザは
同じ動作しか繰り返さない玩具をやがては飽きてしまう
ことになる。
【0009】これに対し、知能型のロボットは、動作に
起因する行動モデルや学習モデルを備えており、外部か
らの音声や画像、触覚などの入力情報に基づいてモデル
を変化させて動作を決定することにより、自律的な思考
及び動作制御を実現する。ロボットが感情モデルや本能
モデルを用意することにより、ロボット自身の感情や本
能に従った自律的な行動を表出することができる。ま
た、ロボットが画像入力装置や音声入出力装置を装備
し、画像認識処理や音声認識処理を行うことにより、よ
り高度な知的レベルで人間とのリアリスティックなコミ
ュニケーションを実現することも可能となる。
【0010】昨今の脚式移動ロボットは高い情報処理能
力を備えており、インテリジェントなロボットそのもの
を一種の計算機システムとして捉えることができる。
【0011】例えば、ロボットは、感情モデルや行動モ
デル、学習モデルなどのように、動作に関する各種の規
則をモデル化して保持しており、これらモデルに従って
ユーザ・アクションなどの外的要因に応答した行動計画
を立案して、各関節アクチュエータの駆動や音声出力な
どを介して行動計画を体現し、ユーザに対するフィード
バックとすることができる。このような行動計画の立案
やこれを体現するためのロボットの動作制御は、計算機
システム上におけるプログラム・コード(例えぱアプリ
ケーションなど)の実行という形態で実装される。
【0012】一般的な計算機システムとロボットとの主
な相違として、前者はシステムを構成するハードウェア
・コンポーネントの種類や組み合わせ(すなわちハード
ウェア構成)が各システム間で差が比較的少ないのに対
して、後者はハードウェア構成がシステム間で大幅に変
更するという点を挙げることができよう。例えば、ひと
えに移動ロボットといっても、胴体に対して取り付けら
れる可動部として、頭と脚部と尻尾で構成されるロボッ
トや、頭部と車輪のみで構成されるロボットなど、千差
万別である。
【0013】装備されるハードウェア構成がシステム間
で比較的均一である計算機システムにおいては、システ
ム上で実行するソフトウェアのデザインはハードウェア
の影響を比較的受けずに済む。これに対して、後者のロ
ボットの場合には、特にハードウェア操作を行う制御ソ
フトウェアにおいてはハードウェア依存性が極めて高く
なる。
【0014】例えば、ロボットの移動制御を考えた場
合、移動手段が可動脚の場合と車輪の場合と、2足と4
足の場合とでは、移動時・歩行時における安定度判別規
範がまったく相違するので、アプリケーションを実行す
るための動作環境はシステム間で大幅に異なる。
【0015】ロボットのソフトウェア開発を考えた場
合、このような事情を鑑み、ハードウェアの依存性が比
較的低いソフトウェア層と、ハードウェアの依存性が高
いソフトウェア層とに区別することが効率的と思料され
る。すなわち、ハードウェア非依存ソフトウェアと、ハ
ードウェア依存ソフトウェアとを個別に開発しておき、
両者の組み合わせにより、多岐にわたる、さまざまな特
性や性能を持つ製品ラインアップを提供することができ
る。
【0016】ハードウェア非依存のソフトウェアは、例
えば、感情モデルや行動モデル、学習モデルなどのハー
ドウェア操作との関係が少ない処理を行うアプリケーシ
ョンである。また、ハードウェア依存のソフトウェア
は、例えば、ロボットの基本的な機能を提供するソフト
ウェア・モジュールの集まりで構成されるミドルウェア
であり、各モジュールの構成はロボットの機械的・電気
的な特性や仕様、形状などハードウェア属性の影響を受
ける。ミドルウェアは、機能的には、各部のセンサの入
力を処理・認識して上位のアプリケーションに通知する
認識系のミドルウェアと、アプリケーションが発行する
コマンドに従って各関節アクチュエータの駆動などハー
ドウェアの駆動制御を行う出力系のミドルウェアに大別
することができる。
【0017】アプリケーションとミドルウェア間の任意
の組み合わせを許容するためには、これらソフトウェア
層間でのデータやコマンドを交換する形式、すなわちプ
ログラム間のインターフェースを確立させておく必要が
ある。
【0018】ところで、ロボットを始めとして各種の計
算機システムに対してソフトウェアを導入する形態とし
て、新しいソフトウェアをリムーバブル・メディアを介
して供給したり、あるいはネットワーク経由でソフトウ
ェアをダウンロードすることが挙げられる。
【0019】機種間でハードウェア構成の相違が著しい
ロボットに対して新規ソフトウェアを導入するに際して
は、まず第一に、導入ソフトウェアが導入先のハードウ
ェア構成に適合していることが重要である。さらに、新
たに導入されるソフトウェアが他のソフトウェア層との
相性(すなわちアプリケーションとミドルウェアとの互
換性)が保たれいてる必要がある。
【0020】
【発明が解決しようとする課題】本発明の目的は、脚式
歩行型など多関節型のロボットをソフトウェア・プログ
ラムを用いて制御することができる、優れたロボット制
御システム並びにロボット制御用ソフトウェアの導入方
法を提供することにある。
【0021】本発明の更なる目的は、脚部や頭部など各
動作ユニットの着脱・交換などに伴ってハードウェア構
成が大幅に変更する可能性がある多関節型ロボットをソ
フトウェア・プログラムを用いて制御することができ
る、優れたロボット制御システム並びにロボット制御用
ソフトウェアの導入方法を提供することにある。
【0022】本発明の更なる目的は、ハードウェア構成
に対して依存性の高いソフトウェア層とハードウェア構
成に非依存のソフトウェア層の組み合わせからなるソフ
トウェア・プログラムを用いて多関節型ロボットを制御
することができる、優れたロボット制御システム並びに
ロボット制御用ソフトウェアの導入方法を提供すること
にある。
【0023】本発明の更なる目的は、ミドルウェアのよ
うなハードウェア依存のソフトウェア層と、アプリケー
ションなどのハードウェア非依存のソフトウェア層との
組み合わせを動的に変更して多関節型ロボットを制御す
ることができる、優れたロボット制御システム並びにロ
ボット制御用ソフトウェアの導入方法を提供することに
ある。
【0024】
【課題を解決するための手段及び作用】本発明は、上記
課題を参酌してなされたものであり、その第1の側面
は、複数のハードウェア構成要素の組み合わせからなる
ロボットをハードウェア依存ソフトウェアとハードウェ
ア非依存ソフトウェアを用いて制御するロボット制御シ
ステムであって、ハードウェア非依存ソフトウェアを提
供するハードウェア非依存ソフトウェア提供手段と、1
以上のハードウェア依存ソフトウェアを提供するハード
ウェア依存ソフトウェア提供手段と、ロボットのハード
ウェア構成情報を取得するハードウェア構成情報取得手
段と、前記ハードウェア構成情報取得手段により取得さ
れたハードウェア構成情報に適合するハードウェア依存
ソフトウェアを前記ハードウェア依存ソフトウェア提供
手段の中から選択するハードウェア依存ソフトウェア選
択手段と、前記ハードウェア非依存ソフトウェア提供手
段が提供するハードウェア非依存ソフトウェア並びに前
記ハードウェア依存ソフトウェア選択手段が選択したハ
ードウェア依存ソフトウェアをシステムに導入するソフ
トウェア導入手段と、を具備することを特徴とするロボ
ット制御システムである。
【0025】但し、ここで言う「システム」とは、複数
の装置(又は特定の機能を実現する機能モジュール)が
論理的に集合した物のことを言い、各装置や機能モジュ
ールが単一の筐体内にあるか否かは特に問わない。
【0026】本発明の第1の側面に係るロボット制御シ
ステムによれば、ロボットのハードウェア構成に依存す
るソフトウェア・セットを複数格納するハードウェア依
存ソフトウェア提供手段すなわち記憶装置と、ロボット
のハードウェア構成に依存しないソフトウェア・セット
を複数格納するハードウェア非依存ソフトウェア提供手
段すなわち記憶装置を用意する。そして、例えばロボッ
トの起動時・実行時において、ロボットのハードウェア
構成に適合するソフトウェアを前者の記憶装置から導入
して、これをハードウェア構成に依存しないソフトウェ
ア・セットと動的に組み合わせるようにすることによっ
て、ユーザのニーズに合致する適切なロボットの動作制
御を実現することができる。
【0027】ハードウェア非依存ソフトウェア及び/又
はハードウェア依存ソフトウェアは、前記ロボット本体
に対して固定的に取り付けられる固定型メモリ装置や、
前記ロボット本体に対して交換可能に取り付けられる交
換可能メモリ装置によって提供される。
【0028】ロボット本体から取外すことができる交換
可能メモリ装置を利用することによって、新規ソフトウ
ェアや、ユーザのニーズに適合するソフトウェアを機体
に提供することができる。したがって、前記ソフトウェ
ア導入手段は、前記交換可能メモリ装置から優先してハ
ードウェア非依存ソフトウェア及び/又はハードウェア
依存ソフトウェアを導入することによって、ユーザのニ
ーズに合致する適切な制御ソフトウェアを用いてロボッ
トの動作制御を実現することができる。
【0029】前記ソフトウェア導入手段は、例えば、前
記交換可能メモリ装置に使用可能なハードウェア非依存
ソフトウェア及び/又はハードウェア依存ソフトウェア
が存在しないとき、又は、交換可能メモリ装置が前記ロ
ボット本体に装着されていないときに、前記固定型メモ
リ装置からハードウェア非依存ソフトウェア及び/又は
ハードウェア依存ソフトウェアを導入するようにすれば
よい。
【0030】また、本発明の第2の側面は、複数のハー
ドウェア構成要素の組み合わせからなるロボットに対し
てハードウェア依存ソフトウェアとハードウェア非依存
ソフトウェアを導入するロボット制御用ソフトウェアの
導入方法であって、ハードウェア非依存ソフトウェアを
提供するハードウェア非依存ソフトウェア提供ステップ
と、1以上のハードウェア依存ソフトウェアを提供する
ハードウェア依存ソフトウェア提供ステップと、ロボッ
トのハードウェア構成情報を取得するハードウェア構成
情報取得ステップと、前記ハードウェア構成情報取得ス
テップにより取得されたハードウェア構成情報に適合す
るハードウェア依存ソフトウェアを前記ハードウェア依
存ソフトウェア提供ステップにより提供されたものの中
から選択するハードウェア依存ソフトウェア選択ステッ
プと、前記ハードウェア非依存ソフトウェア提供ステッ
プにより提供されたるハードウェア非依存ソフトウェア
並びに前記ハードウェア依存ソフトウェア選択ステップ
により選択されたハードウェア依存ソフトウェアをシス
テムに導入するソフトウェア導入ステップと、を具備す
ることを特徴とするロボット制御用ソフトウェアの導入
方法である。
【0031】本発明の第2の側面に係るロボット制御用
ソフトウェアの導入方法は、ロボットのハードウェア構
成に依存するソフトウェア・セットを複数格納する記憶
装置と、ロボットのハードウェア構成に依存しないソフ
トウェア・セットを複数格納する記憶装置を用意するこ
とによって実現される。例えばロボットの起動時・実行
時において、ロボットのハードウェア構成に適合するソ
フトウェアを前者の記憶装置から導入して、これをハー
ドウェア構成に依存しないソフトウェア・セットと動的
に組み合わせるようにすることによって、ユーザのニー
ズに合致する適切なロボットの動作制御を行うことがで
きる。
【0032】ハードウェア非依存ソフトウェア及び/又
はハードウェア依存ソフトウェアは、前記ロボット本体
に対して固定的に取り付けられる固定型メモリ装置や、
前記ロボット本体に対して交換可能に取り付けられる交
換可能メモリ装置によって提供される。
【0033】ロボット本体から取外すことができる交換
可能メモリ装置を利用することによって、新規ソフトウ
ェアや、ユーザのニーズに適合するソフトウェアを機体
に提供することができる。したがって、前記ソフトウェ
ア導入ステップでは、前記交換可能メモリ装置から優先
してハードウェア非依存ソフトウェア及び/又はハード
ウェア依存ソフトウェアを導入することによって、ユー
ザのニーズに合致する適切な制御ソフトウェアを用いて
ロボットの動作制御を実現することができる。
【0034】前記ソフトウェア導入ステップでは、例え
ば、前記交換可能メモリ装置に使用可能なハードウェア
非依存ソフトウェア及び/又はハードウェア依存ソフト
ウェアが存在しないとき、又は、交換可能メモリ装置が
前記ロボット本体に装着されていないときに、前記固定
型メモリ装置からハードウェア非依存ソフトウェア及び
/又はハードウェア依存ソフトウェアを導入するように
すればよい。
【0035】また、本発明の第3の側面は、複数のハー
ドウェア構成要素の組み合わせからなるロボットをハー
ドウェア依存ソフトウェアとハードウェア非依存ソフト
ウェアを用いて制御するロボット制御システムであっ
て、ハードウェア非依存ソフトウェア及び/又はハード
ウェア依存ソフトウェアは、前記ロボット本体に対して
固定的に取り付けられる固定型メモリ装置並びに前記ロ
ボット本体に対して交換可能に取り付けられる交換可能
メモリ装置によって提供され、前記ロボットを、前記交
換可能メモリ装置から導入されたハードウェア依存ソフ
トウェア及びハードウェア非依存ソフトウェアを用いて
動作制御するベストマッチ動作モード、前記固定型メモ
リ装置から導入されたハードウェア依存ソフトウェア及
び前記交換可能メモリ装置から導入されたハードウェア
非依存ソフトウェアを用いて動作制御する互換動作モー
ド、前記固定型メモリ装置から導入されたハードウェア
依存ソフトウェア及びハードウェア非依存ソフトウェア
を用いて動作制御する固定動作モード、のうちいずれか
の動作モードで制御することを特徴とするロボット制御
システムである。
【0036】ロボット本体から取外すことができる交換
可能メモリ装置を利用することによって、新規ソフトウ
ェアや、ユーザのニーズに適合するソフトウェアを機体
に提供することができる。したがって、ベストマッチ動
作モード、互換動作モード、固定動作モードの優先順位
で動作モードを選択することにより、ユーザのニーズに
合致する適切な制御ソフトウェアを用いてロボットの動
作制御を実現することができる。
【0037】本発明のさらに他の目的、特徴や利点は、
後述する本発明の実施例や添付する図面に基づくより詳
細な説明によって明らかになるであろう。
【0038】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施例を詳解する。
【0039】図1には、本発明の実施に供されるロボッ
トのハードウェア構成を模式的に図解している。同図に
示すように、ロボットのハードウェアは、制御系サブシ
ステム10と、駆動系サブシステム50とで構成され
る。
【0040】制御系サブシステムは、CPU(Central
Processing Unit)11と、メイン・メモリ12と、固定
型メモリ装置13と、交換可能メモリ装置14とで構成
され、る。
【0041】メイン・コントローラとしてのCPU11
は、システム制御ソフトウェアの制御下で、アプリケー
ションのようなハードウェア非依存プログラムや、ミド
ルウェアのようなハードウェア依存プログラムを実行し
て、ロボットという装置全体の動作を統括的に制御する
ようになっている。
【0042】CPU11は、メモリやその他の各回路コ
ンポーネントや周辺機器とバス接続されている。バス上
の各装置にはそれぞれに固有のアドレス(メモリ・アド
レス又はI/Oアドレス)が割り当てられており、CP
U11はアドレス指定することでバス上の特定の装置と
通信することができる。バスは、アドレス・バス、デー
タ・バス、コントロール・バスを含んだ共通信号伝送路で
ある。
【0043】メイン・メモリ12は、通常、複数個のD
RAM(Dynamic Random Access Memory)チップで構成
される揮発性記憶装置で構成され、CPU11の実行プ
ログラム・コードをロードしたり、その作業データの一
時的な保存のために利用される。本実施例では、固定型
メモリ装置13や交換可能メモリ装置14から供給され
るアプリケーションやミドルウェアなどのプログラム・
コードは、メイン・メモリ12上に展開すなわちメモリ
空間上にマッピングされる。
【0044】固定型メモリ装置13は、ロボット本体に
対して固定的に取り付けられた、交換不能な不揮発性記
憶装置である。例えば、フラッシュ・メモリのように、
書き込み電圧の印加によりプログラマブルな不揮発性メ
モリ素子で固定型メモリ装置13に構成することができ
る。
【0045】固定型メモリ装置13は、ロボットの動作
や思考を制御するためのアプリケーションや、ハードウ
ェア操作用のミドルウェアなどのプログラム・コードを
格納するために利用される。但し、装置に対して固定的
に設置されることから、ミドルウェアなどのハードウェ
ア依存型のソフトウェアに関しては、ロボットの出荷時
(デフォルト時)又は標準的なハードウェア構成に適合
するバージョンを固定型メモリ装置13内に用意してお
くことが好ましい。
【0046】交換可能メモリ装置14は、ロボットに対
して着脱・交換可能に取り付けられる、不揮発性記憶装
置である。例えば、メモリ・カードやメモリ・スティック
のようなカートリッジ式の記憶媒体で交換可能メモリ装
置14を構成して、所定のメモリ・スロット上に装填す
ることによって、装置上で使用に供される。
【0047】交換可能メモリ装置14は、固定型メモリ
装置13と同様に、ロボットの動作や思考を制御するた
めのアプリケーションや、ハードウェア操作用のミドル
ウェアなどのプログラム・コードを格納するために利用
される。但し、ロボット本体に対して着脱・交換に提供
され、またハードウェア構成の異なる機種間を移動して
使用に供されることが想定されるので、最新のソフトウ
ェアを機体に提供する際などに利用することができる。
ミドルウェアなどのハードウェア依存型のソフトウェア
に関しては、ロボットの出荷時(デフォルト時)又は標
準的なハードウェア構成に適合するバージョンか否かを
特に意識して交換可能メモリ装置14上に格納する必要
性が低い。むしろ、アプリケーションが想定するハード
ウェア構成に対して動作環境を提供することができるミ
ドルウェアを、アプリケーションと組にして、交換可能
メモリ装置14に格納することが好ましい。
【0048】一方、駆動系サブシステム50は、各関節
アクチュエータやその駆動制御回路、動作検出用のエン
コーダ、さらにはカメラや接触センサなどの各種センサ
類(いずれも図示しない)などで構成される。図示の例
では、駆動系サブシステム50は、頭部、胴体部、脚部
など各駆動ユニット単位で扱われるものとする。
【0049】さらに、駆動ユニットの少なくとも一部
は、着脱・交換などにより動的に再構成可能な物理コン
ポーネント(CPC:Configurable Physical Componen
t)として構成されているものとする。
【0050】本実施例では、各物理コンポーネントは、
固有の識別情報すなわちコンポーネントIDが付与され
ている。制御系サブシステム10のCPU11(より具
体的にはCPU11上で実行されるシステム制御ソフト
ウェア)は、装備されている各物理コンポーネントに対
してバス経由でアクセスして、各物理コンポーネントに
対して制御コマンドを転送したり、それぞれのコンポー
ネントIDを取得することができるようになっている。
検出されたコンポーネントIDの組み合わせが、ロボッ
トにおける現在のハードウェア構成情報となる。
【0051】図2には、CPCコンポーネントの着脱・
交換により駆動系サブシステム50の構成を変更した例
を示している。同図(a)では、胴体に対して頭と脚と
尻尾などの複数の物理コンポーネントが装着されている
が、同図(b)では、胴体に対して物理コンポーネント
として車輪しか装備されていない。
【0052】図2(a)と図2(b)に示す例のよう
に、ハードウェア構成が著しく相違する場合には、同じ
ハードウェア依存ソフトウェアを使用することができな
い。例えば、頭や尻尾からのセンサ入力を行うミドルウ
ェアは、図2(b)に示すハードウェア構成の装置上で
は動作することができない。同様に、移動手段として脚
部を駆動制御するようにデザインされたミドルウェア
を、図2(b)に示すハードウェア構成の装置上で使用
することはできない。
【0053】次いで、ロボット制御用のソフトウェアの
構成について、図3を参照しながら説明する。同図に示
すように、ロボット制御用ソフトウェアは、アプリケー
ション層と、ミドルウェア層と、システム制御層とで構
成される。これらソフトウェアのデザインには、オブジ
ェクト指向プログラミングを採り入れることができる。
オブジェクト指向における各ソフトウェアは、データと
そのデータに対する処理手続きとを一体化させた「オブ
ジェクト」というモジュール単位で扱われる。また、ア
プリケーション層とミドルウェア層とは、所定のプログ
ラミング・インターフェース(「アプリケーション・イン
ターフェース」と呼ぶことにする)を介してデータ通信
が行われる。
【0054】アプリケーションは、ロボットの感情をモ
デル化した感情モデルと、本能をモデル化した本能モデ
ルと、外部事象とロボットがとる行動との因果関係を逐
次記憶していく学習モジュールと、行動パターンをモデ
ル化した行動モデルとを備えており、センサ入力情報す
なわち外部要因を基に行動モデルによって決定された行
動の出力先を切り替えるようになっている。
【0055】感情モデルと本能モデルは、それぞれ認識
結果と行動履歴を入力に持ち、感情値と本能値を管理し
ている。行動モデルは、これら感情値や本能値を参照す
ることができる。また、学習モデルは、外部(オペレー
タ)からの学習教示に基づいて行動選択確率を更新し
て、更新内容を行動モデルに供給する。
【0056】アプリケーションは、ロボットの構成や動
作を抽象化したモデルによって演算処理を行うので、ハ
ードウェア属性の影響を受けないハードウェア非依存型
のソフトウェアである。
【0057】ミドルウェア層は、ロボットの基本的な機
能を提供するソフトウェア・モジュールの集まりであ
り、各モジュールの構成はロボットの機械的・電気的な
特性や仕様、形状などハードウェア属性の影響を受ける
ハードウェア依存型のソフトウェアである。
【0058】ミドルウェア層は、機能的に、認識系のミ
ドルウェアと、出力系のミドルウェアに分けることがで
きる。
【0059】認識系のミドルウェアでは、画像データや
音声データ、その他のセンサから得られる検出データな
ど、ハードウェアからの生データをシステム制御層経由
で受け取ってこれらを処理する。すなわち、各種入力情
報に基づき、音声認識、距離検出、姿勢検出、接触、動
き検出、色認識などの処理を行い、認識結果を得る(例
えば、ボールを検出した、転倒を検出した、撫でられ
た、叩かれた、ドミソの音階が聞こえた、動く物体を検
出した、障害物を検出した、障害物を認識した、な
ど)。認識結果は、アプリケーション・インターフェー
スを介して上位のアプリケーション層に通知され、行動
計画の立案などに利用される。
【0060】一方、出力系のミドルウェアでは、歩行、
動きの再生、出力音の合成、目に相当するLEDの点灯
制御などの機能を提供する。すなわち、アプリケーショ
ン層において立案された行動計画を受け取って、ロボッ
トの各機能毎にロボットの各ジョイントのサーボ指令値
や出力音、出力光(LED)、出力音声などを生成し
て、出力すなわち仮想ロボットを介してロボット上で実
演する。このような仕組みにより、アプリケーション側
からは抽象的な行動コマンド(例えば、前進、後退、喜
ぶ、吼える、寝る、体操する、驚く、トラッキングする
など)を与えることで、ロボットの各関節アクチュエー
タや機体上のその他の出力部による動作を制御すること
ができる。
【0061】本実施例では、これらロボット制御用のソ
フトウェアは、固定型メモリ装置13や交換可能メモリ
装置14によって装置1内に提供される。
【0062】図4には、固定型メモリ装置13によって
提供されるソフトウェアの構成を模式的に示している。
【0063】同図に示すように、固定型メモリ装置13
内には、アプリケーション層と、ミドルウェア層と、シ
ステム制御層が装備されている。各層のソフトウェア
は、メイン・メモリ12上に展開されて、すなわちメモ
リ空間上にマッピングして使用される。
【0064】既に述べたように、固定型メモリ装置13
は、装置に対して固定的に設置されることから、ミドル
ウェアなどのハードウェア依存型のソフトウェアに関し
ては、ロボットの出荷時(デフォルト時)ハードウェア
構成に適合するバージョンが装備されている。
【0065】図5には、図4に示した固定型メモリ装置
13によって提供されるソフトウェア構成の変形例を示
している。
【0066】同図に示す例では、異なるハードウェア構
成に適合する複数のミドルウェアを装備している。固定
型メモリ装置13上のミドルウェアによってロボット装
置1を駆動可能か否かを即時的に判断するために、各ミ
ドルウェアに適合するハードウェア構成に関する情報を
記述した適合ハードウェア構成情報を備えている。ま
た、ハードウェア構成とこれに適合するミドルウェアの
対応関係を記述したルックアップ・テーブルを備えてい
る。
【0067】システム制御層は、ロボットのハードウェ
ア構成を検出して、適合ハードウェア構成情報並びにハ
ードウェア−ミドルウェア・ルックアップ・テーブルを参
照して、検出されたハードウェア構成に適合するミドル
ウェアを選択的に導入するようになっている。但し、ミ
ドルウェアの導入処理手順の詳細については後述に譲
る。
【0068】また、図6には、交換可能メモリ装置14
によって提供されるソフトウェアの構成を模式的に示し
ている。
【0069】同図に示すように、交換可能メモリ装置1
4内には、アプリケーション層と、ミドルウェア層が装
備されている。各層のソフトウェアは、メイン・メモリ
12上に展開して、すなわちメモリ空間にマッピングし
て使用される。
【0070】交換可能メモリ装置14は、ロボット本体
に対して着脱・交換に提供され、またハードウェア構成
の異なる機体間を移動して使用に供される。交換可能メ
モリ装置14の主要な利用形態は、最新バージョンのソ
フトウェアやユーザが使用したいアプリケーションを出
荷後のロボットに対して動的に供給することにある。交
換可能メモリ装置14上のミドルウェアは、例えばアプ
リケーションの動作に適したロボットのハードウェア構
成を想定してデザインされる。
【0071】但し、交換可能メモリ装置14を挿入した
先のすなわちターゲットのロボットが持つハードウェア
構成によっては、ミドルウェアなどのハードウェア依存
型のソフトウェアは適合せず、すなわち導入することが
できない場合もある。これに対し、アプリケーション層
は、基本的にはハードウェア非依存なので、ロボットの
ハードウェア構成に適合するミドルウェア上で動作する
ことができる(但し、アプリケーションとミドルウェア
間の互換性は保証されているものとする)。
【0072】図7には、図6に示した交換可能メモリ装
置14によって提供されるソフトウェア構成の変形例を
示している。
【0073】同図に示す例では、異なるハードウェア構
成に適合する複数のミドルウェアを装備している。交換
可能メモリ装置14上のミドルウェアによってロボット
装置1を駆動可能か否かを即時的に判断するために、各
ミドルウェアに適合するハードウェア構成に関する情報
を記述した適合ハードウェア構成情報を備えている。ま
た、ハードウェア構成とこれに適合するミドルウェアの
対応関係を記述したルックアップ・テーブルを備えてい
る。
【0074】固定型メモリ装置13によって提供される
システム制御層(前述)は、ロボットのハードウェア構
成を検出して、適合ハードウェア構成情報並びにハード
ウェア−ミドルウェア・ルックアップ・テーブルを参照し
て、検出されたハードウェア構成に適合するミドルウェ
アを選択的に導入するようになっている。
【0075】図4〜図7からも分かるように、アプリケ
ーションは、固定型メモリ装置13及び交換可能メモリ
装置14の双方から提供される。アプリケーションは、
基本的にはハードウェア構成に非依存であるから、いず
れのメモリ装置13/14上のものであっても、ハード
ウェア構成に適合するミドルウェアを介在させることに
よって、ロボット上で正常に動作することができる。
【0076】本実施例では、交換可能メモリ装置14側
から提供されるアプリケーション並びにミドルウェアを
優先的にインストールするようにしている。その理由
は、交換可能メモリ装置14を媒介としてソフトウェア
を移動することによって、最新のバージョンやユーザ好
みのバージョンを動的に選択できること、また、交換可
能メモリ装置14上のミドルウェアは、同メモリ装置1
4上のアプリケーションの動作に適したロボットのハー
ドウェア構成を想定してデザインされること、などに依
拠する。
【0077】アプリケーションやミドルウェアの導入処
理は、固定型メモリ装置13によって提供されるシステ
ム制御層(前述)が行う。すなわち、システム制御層
は、ロボットのハードウェア構成を検出して、適合ハー
ドウェア構成情報並びにハードウェア−ミドルウェア・
ルックアップ・テーブルを参照して、検出されたハード
ウェア構成に適合するミドルウェアを選択的に導入する
ようになっている。但し、ミドルウェアの導入処理手順
の詳細については後述に譲る。
【0078】図8には、本実施例に係るロボットの動作
モードを図解している。同図に示すように、ロボットに
は、「ベストマッチ動作モード」と、「互換動作モー
ド」と、「固定動作モード」という3種類の動作モード
が定義されている。
【0079】ベストマッチ動作モードとは、アプリケー
ション、ミドルウェアともに交換可能メモリ装置14か
ら導入されたものを使用して動作するモードである。
【0080】この動作モード下では、ユーザの要望に応
じて出荷後のロボットに対して動的に供給されたアプリ
ケーションを使用することができる。また、同アプリケ
ーションの動作に合わせてデザインされているミドルウ
ェアを交換可能メモリ装置14から導入して使用するこ
とができる。
【0081】互換動作モードとは、交換可能メモリ装置
14から導入したアプリケーションを、固定型メモリ装
置13から導入したミドルウェア上で動作させるモード
である。
【0082】この動作モード下では、ユーザの要望に応
じて出荷後のロボットに対して動的に供給されたアプリ
ケーションを使用することができる。
【0083】また、交換可能メモリ装置14上のアプリ
ケーションと、固定型メモリ装置13上のミドルウェア
の間で、所定のプログラミング・インターフェースを装
備する、すなわち互換性を持つことで、このような動作
モードが実現される。
【0084】固定動作モードとは、アプリケーション、
ミドルウェアともに固定型メモリ装置13から導入され
たものを使用して動作するモードである。
【0085】交換可能メモリ装置14を媒介にして、最
新バージョンのソフトウェア、あるいはユーザのニーズ
に適応したバージョンのソフトウェアを機体間で移動す
ることができるので、交換可能メモリ装置14側からの
ソフトウェアの導入が優先して行われる。すなわち、ベ
ストマッチ動作モード、互換動作モード、固定動作モー
ドの順で優先順位が与えられる。固定動作モードは、例
えば、交換可能メモリ装置14がロボット本体に装着さ
れていない場合に実行される動作モードである。
【0086】続いて、ロボットに対してソフトウェアを
導入するための処理について説明する。
【0087】図9には、ミドルウェア並びにアプリケー
ションを導入するための処理手順をフローチャートの形
式で示している。この導入処理手順は、例えば、固定型
メモリ装置13によって提供されるシステム制御層(前
述)が、機体のブート処理時などに行う。以下、このフ
ローチャートに従って、ソフトウェアの導入処理につい
て説明する。
【0088】まず、バス経由で装備されている各物理コ
ンポーネント(CPC)に対してハードウェア・アクセ
スし、各々のコンポーネントIDを読み取って、ハード
ウェア構成を取得する(ステップS1)。
【0089】次いで、交換可能メモリ装置14へのアク
セスを試みる(ステップS2)。
【0090】交換可能メモリ14がロボット本体に装着
されていない場合には、固定型メモリ装置13からミド
ルウェア並びにアプリケーションを導入する、すなわち
メイン・メモリ12上に展開して(ステップS10,S
11)、固定動作モードとして動作する。
【0091】なお、ステップS10における固定型メモ
リ装置13からのミドルウェアの導入に際して、固定型
メモリ装置13内の適合ハードウェア構成情報並びにハ
ードウェア−ミドルウェア・ルックアップ・テーブルを参
照して、ステップS1において検出されたハードウェア
構成に適合するミドルウェアを選択的に導入r.、すな
わちメイン・メモリ12上に展開するようにしてもよ
い。
【0092】他方、交換可能メモリ装置14がロボット
本体に装着されている場合には、交換可能メモリ装置1
4内の適合ハードウェア構成情報を読み出し、ステップ
S1において検出された実機上のハードウェア構成と比
較して、ミドルウェアとの適合性を検証する(ステップ
S4,S5)。
【0093】実機上のハードウェア構成と一致する適合
ハードウェア構成情報が交換可能型メモリ装置14内で
発見できなかった場合には、交換可能型メモリ装置14
上には実機上で動作可能なミドルウェアがないことにな
る。このような場合には、固定型メモリ装置13からミ
ドルウェアを導入すなわちメイン・メモリ12上に展開
するとともに(ステップS8)、交換可能メモリ装置1
4からアプリケーションを導入すなわちメイン・メモリ
12上に展開して(ステップS9)、互換動作モードと
して動作する。
【0094】なお、ステップS8における固定型メモリ
装置13からのミドルウェアの導入に際して、固定型メ
モリ装置13内の適合ハードウェア構成情報並びにハー
ドウェア−ミドルウェア・ルックアップ・テーブルを参照
して、ステップS1において検出されたハードウェア構
成に適合するミドルウェアを選択的に導入するようにし
てもよい。
【0095】実機上のハードウェア構成と一致する適合
ハードウェア構成情報が交換可能型メモリ装置14内で
発見できた場合には、さらに、交換可能型メモリ装置1
4内のハードウェア−ミドルウェア・ルックアップ・テー
ブルを参照して、ロボットの実機のハードウェア構成に
適合するミドルウェアが存在するか否かを調べて、これ
を導入すなわちメイン・メモリ12上に展開する(ステ
ップS6)。次いで、交換可能メモリ装置14からアプ
リケーションを導入すなわちメイン・メモリ12上に展
開して(ステップS7)、ベストマッチ動作モードとし
て動作する。
【0096】図10には、ロボットの実機上のハードウ
ェア構成を取得するとともに、これを適合ハードウェア
構成情報と比較する処理を描写している。かかるハード
ウェア構成情報の比較処理は、システム制御層が行う。
オブジェクト指向プログラミングにより実装されたシス
テム制御層のことを、以下では「システム・オブジェク
ト」と呼ぶことにする。
【0097】図示の例では、ロボットの実機には、胴体
と、脚部と、頭部と、尻尾という各物理コンポーネント
(CPC)が搭載されている。システム・オブジェクト
は、バス経由でこれら物理コンポーネントにハードウェ
ア・アクセスして、それぞれのコンポーネントIDを取
得する。この場合のロボットのハードウェア構成を、
{胴体ID,脚部ID,尻尾ID,頭部ID}とする。
【0098】一方、固定型メモリ装置13並びに交換可
能メモリ装置14上には、それぞれデザインA及びデザ
インBという適合ハードウェア構成情報ファイルが用意
されているものとする。ここで、デザインAは、{胴体
ID,脚部ID,尻尾ID,頭部ID}という適合ハー
ドウェア構成を備え、デザインBは、{胴体ID,4輪
ID}という適合ハードウェア構成を備えているとす
る。
【0099】システム・オブジェクトは、ロボットの実
機から取得したハードウェア構成情報と、各々の適合ハ
ードウェア構成情報とを比較し、実機に適合する適合ハ
ードウェア構成情報ファイルを選択する。同図に示す例
では、デザインAに係る適合ハードウェア構成情報ファ
イルが選択される。
【0100】システム・オブジェクトは、さらに、固定
型メモリ装置13又は交換可能メモリ装置14内のハー
ドウェア−ミドルウェア・ルックアップ・テーブルを参照
して、ハードウェア構成上からロボットに適合すると判
断されたミドルウェアを探索して、ミドルウェアとアプ
リケーションを導入することができる。
【0101】図11には、システム・オブジェクトがミ
ドルウェア並びにアプリケーションを導入するすなわち
メイン・メモリ12上に展開する様子を描写している。
【0102】本実施例では、アプリケーション並びにミ
ドルウェアは、それぞれオブジェクト指向プログラミン
グによりデザインされているものとする。
【0103】交換可能メモリ装置14上には、オブジェ
クトX,オブジェクトY,オブジェクトZからなるアプ
リケーション・ファイルが格納されている。これら各オ
ブジェクトは、仮想オブジェクトを介してシステム・オ
ブジェクトと通信することができる。
【0104】また、固定型メモリ装置13上には、オブ
ジェクトA,オブジェクトB,オブジェクトCからなる
ミドルウェア・ファイルが格納されている。これら各オ
ブジェクトは、仮想オブジェクトを介してシステム・オ
ブジェクトと通信することができる。このミドルウェア
は、先述のデザインAなるハードウェア構成情報に適合
するものとする。
【0105】また、交換可能メモリ装置14上には、オ
ブジェクトD及びオブジェクトEからなるミドルウェア
・ファイルが格納されている。これら各オブジェクト
は、仮想オブジェクトを介してシステム・オブジェクト
と通信することができる。このミドルウェアは、先述の
デザインBなるハードウェア構成情報に適合するものと
する。
【0106】いま、システム・オブジェクトによって、
ロボットの実機上のハードウェア構成情報がデザインA
であることが特定されたとする。このような場合、シス
テム・オブジェクトは、交換可能メモリ装置14並びに
固定型メモリ装置13内のハードウェア−ミドルウェア
・ルックアップ・テーブルを検索して、固定型メモリ装置
13内からデザインAに適合するミドルウェア・ファイ
ルを見つけ出す。そして、仮想オブジェクト経由で、こ
のミドルウェア・ファイルを構成するオブジェクトA,
オブジェクトB,オブジェクトCを導入する、すなわち
メイン・メモリ12上に展開する。
【0107】さらに、システム・オブジェクトは、交換
可能メモリ装置14内のアプリケーション・ファイルを
構成するオブジェクトと仮想オブジェクト経由で通信し
て、該アプリケーションを構成するオブジェクトX,オ
ブジェクトY,オブジェクトZを導入する、すなわちメ
イン・メモリ12上に展開する。
【0108】ミドルウェアの導入は、例えば、固定型メ
モリ装置13上のミドルウェア・ファイルのうち仮想オ
ブジェクトに相当する部分を実際のオブジェクトに置き
換えて、メイン・メモリ12上にロードすることによっ
て実現される。また、このようなメモリ・ロード作業
は、実際には、システム・オブジェクトが行う。
【0109】次いで、ロボット動作用のアプリケーショ
ンの入れ替え処理について説明する。
【0110】既に述べたように、メモリ・スティックな
どの交換可能メモリ装置14内には、アプリケーション
の他に、アプリケーションが想定する構成のミドルウェ
アが格納されている。ロボット本体が、アプリケーショ
ンが想定するミドルウェアで動作可能なハードウェア構
成を備えているような場合には、固定型メモリ装置13
上のミドルウェアに代わって、交換可能メモリ装置14
側からミドルウェアが導入される。そうでない場合に
は、固定型メモリ装置13側から導入されたミドルウェ
ア上で、交換可能メモリ装置14から導入されたアプリ
ケーションが動作することになる。
【0111】図12には、複数の物理コンポーネント
(CPC)で構成されるロボットのハードウェアが交換
可能メモリ装置14を介して外部から供給されるアプリ
ケーションによって動作する様子を図解している。
【0112】ロボット本体側は、例えば4足歩行を実現
する物理コンポーネント(CPC)のセットと、この4
足CPCセットの動作環境を提供する4足ミドルウェア
(仮称)とで構成される。この例では、4足ミドルウェ
アは、固定型メモリ装置13から導入されるものとし、
実機のハードウェア構成に密着した「ルートCPC」ミ
ドルウェアと呼ぶことにする。
【0113】プレイ1の段階では、交換可能メモリ装置
14を介してアプリケーションAが導入され、これがル
ートCPCミドルウェア上で4足CPCセットを動作制
御する。
【0114】次いで、プレイ2の段階では、交換可能メ
モリ装置14を介してアプリケーションBが導入され、
これがルートCPCミドルウェア上で4足CPCセット
を動作制御する。
【0115】次いで、プレイ2の段階では、交換可能メ
モリ装置14を介してアプリケーションAが再び導入さ
れ、これがルートCPCミドルウェア上で4足CPCセ
ットを動作制御する。
【0116】次いで、ロボットの動作環境を提供するミ
ドルウェアの入れ替え処理について説明する。
【0117】ロボット本体を構成する物理コンポーネン
トのうち少なくとも一部は、本体から着脱・交換自在に
構成されており、物理コンポーネントの取り替えによ
り、CPCセットは変更される。例えば、移動手段とし
て4足を持っていたが、4輪と取り替えて、4輪CPC
セットとしてロボットを構成することができる。
【0118】ハードウェア構成の動的な変更に伴って、
動作環境を提供するミドルウェアも、固定型メモリ装置
13から導入されるルートCPC(4足CPC)ミドル
ウェアから、4輪CPCセット駆動用のミドルウェアと
交換する必要がある。このような場合、新しいミドルウ
ェアは、アプリケーション・プログラムと同様に、交換
可能メモリ装置14を媒介として外部から供給され、メ
イン・メモリ12に導入することができる。
【0119】交換可能メモリ装置14内には、アプリケ
ーションの他に、アプリケーションが想定するハードウ
ェア構成に適合するミドルウェアが格納されている。交
換可能メモリ装置14を装着したロボットが、この想定
されるハードウェア構成を備えている場合には、交換可
能メモリ装置14からミドルウェアを導入して動作環境
を提供することができる。そうでない場合には、固定型
メモリ装置14のミドルウェアによって提供されるネイ
ティブの動作環境下で、交換可能メモリ装置14から導
入されるアプリケーションは実行されることになる。
【0120】図13には、各種の物理コンポーネント
(CPC)セットで構成されるロボットに対して、その
ハードウェア構成に適合するミドルウェアが導入される
様子を図解している。
【0121】同図(a)では、ロボットは、出荷時のま
まの4足CPCセットで構成されているとする。このよ
うな場合、ロボットは、固定型メモリ装置13から導入
されるルートCPCミドルウェアによって動作環境が提
供される。また、ルートCPCミドルウェア上では、ユ
ーザが交換可能メモリ装置14を介して導入する各種の
アプリケーション(図示の例では、アプリケーション
A)を実行させることができる。
【0122】また、同図(b)では、ロボットのCPC
組換え作業などにより、ハードウェア構成が4足CPC
セットから4輪CPCセットに変更している。このよう
な場合、4足用のルートCPCミドルウェアをそのまま
使用することができないので、交換可能メモリ装置14
を媒介として、4輪CPCセットの駆動を想定したミド
ルウェア、すなわち4輪用のルートCPCミドルウェア
を外部から導入する。4輪用のルートCPCミドルウェ
アが提供する動作環境下では、交換可能メモリ装置14
を介して導入される各種のアプリケーション(図示の例
では、アプリケーションB)を実行させることができ
る。
【0123】また、同図(c)では、ロボットのハード
ウェア構成自体は、4輪CPCセットのままであるが、
その動作環境を、4輪CPCセット駆動用の新機能を備
えた新しいミドルウェア、すなわち4輪用の新しいルー
トCPCセットに変更する例である。このような場合、
交換可能メモリ装置14を媒介として、新4輪CPCセ
ットの駆動を想定したミドルウェア、すなわち新4輪用
のルートCPCミドルウェアを外部から導入する。新4
輪用のルートCPCミドルウェアが提供する動作環境下
では、交換可能メモリ装置14を介して導入される各種
のアプリケーション(図示の例では、アプリケーション
B)を実行させることができる。
【0124】ロボット実機のハードウェア構成に適合し
たミドルウェアを逐次導入することによって、同じアプ
リケーションを様々なハードウェア構成のロボット上で
実行可能となる、という点に充分留意されたい。
【0125】本実施例では、ハードウェアの依存性が比
較的低いソフトウェア層すなわちアプリケーション層
と、ハードウェアの依存性が高いソフトウェア層すなわ
ちミドルウェア層とを独立して扱えるように構成したこ
とを前提とする。このようにアプリケーション〜クライ
アントの独立性を実現することにより、以下の機能を満
足させることができる。 (1)1つのアプリケーションで様々なハードウェア構
成のロボットに対応できるようにする。(ユーザは、自
分が所有する(あるいは育てた)アプリケーションを機
体間で移動させたり、流通・販売することができる。) (2)ある1つのハードウェア構成を持つ機体上で、さ
まざまなアプリケーションに対応するミドルウェアを作
成することができる。ミドルウェアの際利用性が高くな
るので、アプリケーションの開発効率が向上する。 (3)同一のハードウェア構成を持つ機体上で、同一の
アプリケーションであっても、ミドルウェアを変更する
ことで、実際の表現力や制御性の向上を実現することが
できる。 (4)バイナリ互換を保証することで、アプリケーショ
ン又はミドルウェアのバイナリ・コードをメモリ・スティ
ックなどの交換可能メモリ装置14などから機体にダウ
ンロードすることによって、簡単にソフトウェアを入れ
替えて、上述した利点を享受することができる。しか
も、コンパイル作業なしでソフトウェアを交換すること
ができる。 (5)アプリケーションとミドルウェアが独立している
ので、ソフトウェア開発ベンダは、得意な領域の機能開
発に集中することができる。例えば、制御系を専門とす
るベンダはミドルウェアの開発に注力することにより、
色々なアプリケーションを利用することができる。
【0126】[追補]以上、特定の実施例を参照しなが
ら、本発明について詳解してきた。しかしながら、本発
明の要旨を逸脱しない範囲で当業者が該実施例の修正や
代用を成し得ることは自明である。
【0127】本発明の要旨は、必ずしも「ロボット」と
称される製品には限定されない。すなわち、電気的若し
くは磁気的な作用を用いて人間の動作に似せた運動を行
う機械装置であるならば、例えば玩具等のような他の産
業分野に属する製品であっても、同様に本発明を適用す
ることができる。
【0128】要するに、例示という形態で本発明を開示
してきたのであり、限定的に解釈されるべきではない。
本発明の要旨を判断するためには、冒頭に記載した特許
請求の範囲の欄を参酌すべきである。
【0129】
【発明の効果】以上詳記したように、本発明によれば、
脚式歩行型など多関節型のロボットをソフトウェア・プ
ログラムを用いて制御することができる、優れたロボッ
ト制御システム並びにロボット制御用ソフトウェアの導
入方法を提供することができる。
【0130】また、本発明によれば、脚部や頭部など各
動作ユニットの着脱・交換などに伴ってハードウェア構
成が大幅に変更する可能性がある多関節型ロボットをソ
フトウェア・プログラムを用いて制御することができ
る、優れたロボット制御システム並びにロボット制御用
ソフトウェアの導入方法を提供することができる。
【0131】また、本発明によれば、ハードウェア構成
に対して依存性の高いソフトウェア層とハードウェア構
成に非依存のソフトウェア層の組み合わせからなるソフ
トウェア・プログラムを用いて多関節型ロボットを制御
することができる、優れたロボット制御システム並びに
ロボット制御用ソフトウェアの導入方法を提供すること
ができる。
【0132】また、本発明によれば、ミドルウェアのよ
うなハードウェア依存のソフトウェア層と、アプリケー
ションなどのハードウェア非依存のソフトウェア層との
組み合わせを動的に変更して多関節型ロボットを制御す
ることができる、優れたロボット制御システム並びにロ
ボット制御用ソフトウェアの導入方法を提供することが
できる。
【0133】本発明によれば、ロボットのハードウェア
構成に依存するソフトウェア・セットを複数格納する記
憶装置と、ロボットのハードウェア構成に依存しないソ
フトウェア・セットを複数格納する記憶装置を用意する
ことによって、ロボットの起動時あるいは実行時にロボ
ットのハードウェア構成に適合するソフトウェアを前者
の記憶装置から導入して、これをハードウェア構成に依
存しないソフトウェア・セットと動的に組み合わせるこ
とによって、ユーザのニーズに合致する適切なロボット
の動作制御を実現することができる。
【図面の簡単な説明】
【図1】本発明の実施に供されるロボットのハードウェ
ア構成を模式的に示した図である。
【図2】CPCコンポーネントの着脱・交換により駆動
系サブシステム50の構成を変更した例を示した図であ
る。
【図3】ロボット制御用のソフトウェアの構成を説明す
るための図である。
【図4】固定型メモリ装置13によって提供されるソフ
トウェアの構成を模式的に示した図である。
【図5】図4に示した固定型メモリ装置13によって提
供されるソフトウェア構成の変形例を示した図である。
【図6】交換可能メモリ装置14によって提供されるソ
フトウェアの構成を模式的に示した図である。
【図7】図6に示した交換可能メモリ装置14によって
提供されるソフトウェア構成の変形例を示した図であ
る。
【図8】本実施例に係るロボットの動作モードを示した
図である。
【図9】ミドルウェア並びにアプリケーションを導入す
るための処理手順を示したフローチャートである。
【図10】ロボットの実機上のハードウェア構成を取得
するとともに、これを適合ハードウェア構成情報と比較
する処理を描写した図である。
【図11】システム・オブジェクトがミドルウェア並び
にアプリケーションを導入すなわちメイン・メモリ12
上に展開する様子を描写した図である。
【図12】複数の物理コンポーネント(CPC)で構成
されるロボットのハードウェアが交換可能メモリ装置1
4を介して外部から供給されるアプリケーションによっ
て動作する様子を示した図である。
【図13】各種の物理コンポーネント(CPC)セット
で構成されるロボットに対して、そのハードウェア構成
に適合するミドルウェアが導入される様子を示した図で
ある。
【符号の説明】
10…制御系サブシステム 11…CPU 12…メイン・メモリ 13…固定型メモリ装置 14…交換可能メモリ装置 50…駆動系サブシステム

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】複数のハードウェア構成要素の組み合わせ
    からなるロボットをハードウェア依存ソフトウェアとハ
    ードウェア非依存ソフトウェアを用いて制御するロボッ
    ト制御システムであって、 ハードウェア非依存ソフトウェアを提供するハードウェ
    ア非依存ソフトウェア提供手段と、 1以上のハードウェア依存ソフトウェアを提供するハー
    ドウェア依存ソフトウェア提供手段と、 ロボットのハードウェア構成情報を取得するハードウェ
    ア構成情報取得手段と、 前記ハードウェア構成情報取得手段により取得されたハ
    ードウェア構成情報に適合するハードウェア依存ソフト
    ウェアを前記ハードウェア依存ソフトウェア提供手段の
    中から選択するハードウェア依存ソフトウェア選択手段
    と、 前記ハードウェア非依存ソフトウェア提供手段が提供す
    るハードウェア非依存ソフトウェア並びに前記ハードウ
    ェア依存ソフトウェア選択手段が選択したハードウェア
    依存ソフトウェアをシステムに導入するソフトウェア導
    入手段と、を具備することを特徴とするロボット制御シ
    ステム。
  2. 【請求項2】前記ロボット本体に対して固定的に取り付
    けられる固定型メモリ装置を備え、 ハードウェア非依存ソフトウェア及び/又はハードウェ
    ア依存ソフトウェアは前記固定型メモリ装置によって提
    供される、ことを特徴とする請求項1に記載のロボット
    制御システム。
  3. 【請求項3】前記ロボット本体に対して交換可能に取り
    付けられる交換可能メモリ装置を備え、 ハードウェア非依存ソフトウェア及び/又はハードウェ
    ア依存ソフトウェアは前記交換可能メモリ装置によって
    提供される、ことを特徴とする請求項1に記載のロボッ
    ト制御システム。
  4. 【請求項4】前記ロボット本体に対して固定的に取り付
    けられる固定型メモリ装置と、前記ロボット本体に対し
    て交換可能に取り付けられる交換可能メモリ装置を備
    え、 ハードウェア非依存ソフトウェア及び/又はハードウェ
    ア依存ソフトウェアは前記固定型メモリ装置並びに前記
    交換可能メモリ装置によって提供され、 前記ソフトウェア導入手段は、前記交換可能メモリ装置
    から優先してハードウェア非依存ソフトウェア及び/又
    はハードウェア依存ソフトウェアを導入する、ことを特
    徴とする請求項1に記載のロボット制御システム。
  5. 【請求項5】前記ソフトウェア導入手段は、前記交換可
    能メモリ装置に使用可能なハードウェア非依存ソフトウ
    ェア及び/又はハードウェア依存ソフトウェアが存在し
    ないとき、又は、交換可能メモリ装置が前記ロボット本
    体に装着されていないときに、前記固定型メモリ装置か
    らハードウェア非依存ソフトウェア及び/又はハードウ
    ェア依存ソフトウェアを導入する、ことを特徴とする請
    求項4に記載のロボット制御システム。
  6. 【請求項6】複数のハードウェア構成要素の組み合わせ
    からなるロボットに対してハードウェア依存ソフトウェ
    アとハードウェア非依存ソフトウェアを導入するロボッ
    ト制御用ソフトウェアの導入方法であって、 ハードウェア非依存ソフトウェアを提供するハードウェ
    ア非依存ソフトウェア提供ステップと、 1以上のハードウェア依存ソフトウェアを提供するハー
    ドウェア依存ソフトウェア提供ステップと、 ロボットのハードウェア構成情報を取得するハードウェ
    ア構成情報取得ステップと、 前記ハードウェア構成情報取得ステップにより取得され
    たハードウェア構成情報に適合するハードウェア依存ソ
    フトウェアを前記ハードウェア依存ソフトウェア提供ス
    テップにより提供されたものの中から選択するハードウ
    ェア依存ソフトウェア選択ステップと、 前記ハードウェア非依存ソフトウェア提供ステップによ
    り提供されたるハードウェア非依存ソフトウェア並びに
    前記ハードウェア依存ソフトウェア選択ステップにより
    選択されたハードウェア依存ソフトウェアをシステムに
    導入するソフトウェア導入ステップと、を具備すること
    を特徴とするロボット制御用ソフトウェアの導入方法。
  7. 【請求項7】前記ロボットは本体に対して固定的に取り
    付けられる固定型メモリ装置を備え、 ハードウェア非依存ソフトウェア及び/又はハードウェ
    ア依存ソフトウェアは前記固定型メモリ装置によって提
    供される、ことを特徴とする請求項6に記載のロボット
    制御用ソフトウェアの導入方法。
  8. 【請求項8】前記ロボットは本体に対して交換可能に取
    り付けられる交換可能メモリ装置を備え、 ハードウェア非依存ソフトウェア及び/又はハードウェ
    ア依存ソフトウェアは前記交換可能メモリ装置によって
    提供される、ことを特徴とする請求項6に記載のロボッ
    ト制御用ソフトウェアの導入方法。
  9. 【請求項9】前記ロボットは本体に対して固定的に取り
    付けられる固定型メモリ装置と、前記ロボット本体に対
    して交換可能に取り付けられる交換可能メモリ装置を備
    え、 ハードウェア非依存ソフトウェア及び/又はハードウェ
    ア依存ソフトウェアは前記固定型メモリ装置並びに前記
    交換可能メモリ装置によって提供され、 前記ソフトウェア導入ステップでは、前記交換可能メモ
    リ装置から優先してハードウェア非依存ソフトウェア及
    び/又はハードウェア依存ソフトウェアを導入する、こ
    とを特徴とする請求項8に記載のロボット制御用ソフト
    ウェアの導入方法。
  10. 【請求項10】前記ソフトウェア導入ステップでは、前
    記交換可能メモリ装置に使用可能なハードウェア非依存
    ソフトウェア及び/又はハードウェア依存ソフトウェア
    が存在しないとき、又は、交換可能メモリ装置が前記ロ
    ボット本体に装着されていないときに、前記固定型メモ
    リ装置からハードウェア非依存ソフトウェア及び/又は
    ハードウェア依存ソフトウェアを導入する、ことを特徴
    とする請求項9に記載のロボット制御用ソフトウェアの
    導入方法。
  11. 【請求項11】複数のハードウェア構成要素の組み合わ
    せからなるロボットをハードウェア依存ソフトウェアと
    ハードウェア非依存ソフトウェアを用いて制御するロボ
    ット制御システムであって、 ハードウェア非依存ソフトウェア及び/又はハードウェ
    ア依存ソフトウェアは、前記ロボット本体に対して固定
    的に取り付けられる固定型メモリ装置並びに前記ロボッ
    ト本体に対して交換可能に取り付けられる交換可能メモ
    リ装置によって提供され、 前記ロボットを、 前記交換可能メモリ装置から導入されたハードウェア依
    存ソフトウェア及びハードウェア非依存ソフトウェアを
    用いて動作制御するベストマッチ動作モード、 前記固定型メモリ装置から導入されたハードウェア依存
    ソフトウェア及び前記交換可能メモリ装置から導入され
    たハードウェア非依存ソフトウェアを用いて動作制御す
    る互換動作モード、 前記固定型メモリ装置から導入されたハードウェア依存
    ソフトウェア及びハードウェア非依存ソフトウェアを用
    いて動作制御する固定動作モード、のうちいずれかの動
    作モードで制御することを特徴とするロボット制御シス
    テム。
  12. 【請求項12】ベストマッチ動作モード、互換動作モー
    ド、固定動作モードの優先順位で動作モードを選択する
    ことを特徴とする請求項11に記載のロボット制御シス
    テム。
JP2000310146A 2000-10-11 2000-10-11 ロボット制御システム並びにロボット制御用ソフトウェアの導入方法 Pending JP2002113675A (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2000310146A JP2002113675A (ja) 2000-10-11 2000-10-11 ロボット制御システム並びにロボット制御用ソフトウェアの導入方法
KR1020027007376A KR20020067693A (ko) 2000-10-11 2001-10-09 로봇 제어 시스템 및 로봇 제어용 소프트웨어의 도입 방법
PCT/JP2001/008845 WO2002030627A1 (fr) 2000-10-11 2001-10-09 Systeme de commande de robot et procede d"installation d"un logiciel de commande de robot
CN01803906A CN1395521A (zh) 2000-10-11 2001-10-09 机器人的控制系统和引入机器人控制软件的方法
US10/171,561 US6526332B2 (en) 2000-10-11 2002-06-10 Robot control system and method for introducing robot control software
US10/357,233 US6760648B2 (en) 2000-10-11 2003-02-03 Robot control system and method for introducing robot control software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000310146A JP2002113675A (ja) 2000-10-11 2000-10-11 ロボット制御システム並びにロボット制御用ソフトウェアの導入方法

Publications (1)

Publication Number Publication Date
JP2002113675A true JP2002113675A (ja) 2002-04-16

Family

ID=18790158

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000310146A Pending JP2002113675A (ja) 2000-10-11 2000-10-11 ロボット制御システム並びにロボット制御用ソフトウェアの導入方法

Country Status (5)

Country Link
US (2) US6526332B2 (ja)
JP (1) JP2002113675A (ja)
KR (1) KR20020067693A (ja)
CN (1) CN1395521A (ja)
WO (1) WO2002030627A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004088514A1 (ja) * 2003-03-28 2004-10-14 Sony Corporation 情報提供装置及び方法,並びに情報提供システム
JP2005515903A (ja) * 2001-11-28 2005-06-02 エヴォリューション ロボティクス インコーポレイテッド ロボット用センサおよびアクチュエータのハードウェア抽象化層内における抽象化および集合化
JP2011516287A (ja) * 2008-04-09 2011-05-26 アルデバラン ロボティクス 関節肢を使用する移動ロボットの制御コマンドアーキテクチャ
JP2014164762A (ja) * 2013-02-21 2014-09-08 Dspace Digital Signal Processing & Control Engineering Gmbh 制御装置テストシステムに接続されるハードウェアコンポーネントのインベントリを実施するための方法
JP2014179069A (ja) * 2013-02-22 2014-09-25 Dspace Digital Signal Processing & Control Engineering Gmbh 制御装置テストシステムのコンフィギュレーション設定の実行方法

Families Citing this family (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3615702B2 (ja) * 1999-11-25 2005-02-02 ソニー株式会社 脚式移動ロボットの動作制御装置及び動作制御方法、並びに、脚式移動ロボット
WO2002030626A1 (fr) * 2000-10-11 2002-04-18 Sony Corporation Systeme de commande de robot et procede de commande de robot
JP2002113675A (ja) * 2000-10-11 2002-04-16 Sony Corp ロボット制御システム並びにロボット制御用ソフトウェアの導入方法
US6918027B2 (en) * 2001-07-30 2005-07-12 Hewlett-Packard Development Company, L.P. System and method for in-system programming through an on-system JTAG bridge of programmable logic devices on multiple circuit boards of a system
US6883109B2 (en) * 2001-07-30 2005-04-19 Hewlett-Packard Development Company, L.P. Method for accessing scan chains and updating EEPROM-resident FPGA code through a system management processor and JTAG bus
US6954929B2 (en) * 2001-07-30 2005-10-11 Hewlett-Packard Development Company, L.P. Method for just-in-time updating of programming parts
US20040225783A1 (en) * 2001-07-30 2004-11-11 Erickson Michael John Bus to multiple jtag bus bridge
JP4689107B2 (ja) * 2001-08-22 2011-05-25 本田技研工業株式会社 自律行動ロボット
GB2385952B (en) * 2001-10-24 2006-05-31 Imagine Broadband Ltd Data processing system and method
SG111073A1 (en) * 2002-07-12 2005-05-30 Zen Voce Mfg Pte Ltd Machine vision system having flexible set-up features, method and product thereof
US20040162637A1 (en) 2002-07-25 2004-08-19 Yulun Wang Medical tele-robotic system with a master remote station with an arbitrator
US6925357B2 (en) 2002-07-25 2005-08-02 Intouch Health, Inc. Medical tele-robotic system
US7813836B2 (en) 2003-12-09 2010-10-12 Intouch Technologies, Inc. Protocol for a remotely controlled videoconferencing robot
US20050204438A1 (en) * 2004-02-26 2005-09-15 Yulun Wang Graphical interface for a remote presence system
DE102004031485B4 (de) * 2004-06-30 2015-07-30 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Steuern des Handhabungsgeräts
US8077963B2 (en) 2004-07-13 2011-12-13 Yulun Wang Mobile robot with a head-based movement mapping scheme
US20060052676A1 (en) * 2004-09-07 2006-03-09 Yulun Wang Tele-presence system that allows for remote monitoring/observation and review of a patient and their medical records
US8000837B2 (en) 2004-10-05 2011-08-16 J&L Group International, Llc Programmable load forming system, components thereof, and methods of use
WO2006062948A2 (en) * 2004-12-06 2006-06-15 Honda Motor Co., Ltd. Interface for robot motion control
US9198728B2 (en) * 2005-09-30 2015-12-01 Intouch Technologies, Inc. Multi-camera mobile teleconferencing platform
US8849679B2 (en) * 2006-06-15 2014-09-30 Intouch Technologies, Inc. Remote controlled robot system that provides medical images
US7590680B2 (en) * 2006-06-29 2009-09-15 Microsoft Corporation Extensible robotic framework and robot modeling
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
US7801644B2 (en) * 2006-07-05 2010-09-21 Battelle Energy Alliance, Llc Generic robot architecture
US7211980B1 (en) 2006-07-05 2007-05-01 Battelle Energy Alliance, Llc Robotic follow system and method
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
US7584020B2 (en) * 2006-07-05 2009-09-01 Battelle Energy Alliance, Llc Occupancy change detection system and method
US8271132B2 (en) 2008-03-13 2012-09-18 Battelle Energy Alliance, Llc System and method for seamless task-directed autonomy for robots
US7620477B2 (en) * 2006-07-05 2009-11-17 Battelle Energy Alliance, Llc Robotic intelligence kernel
US7587260B2 (en) * 2006-07-05 2009-09-08 Battelle Energy Alliance, Llc Autonomous navigation system and method
US7974738B2 (en) * 2006-07-05 2011-07-05 Battelle Energy Alliance, Llc Robotics virtual rail system and method
US8355818B2 (en) * 2009-09-03 2013-01-15 Battelle Energy Alliance, Llc Robots, systems, and methods for hazard evaluation and visualization
KR100772175B1 (ko) * 2006-10-23 2007-11-01 한국전자통신연구원 네트워크 로봇 시스템 및 네트워크 로봇 시스템에서의 통신방법
US8265793B2 (en) 2007-03-20 2012-09-11 Irobot Corporation Mobile robot for telecommunication
US9160783B2 (en) 2007-05-09 2015-10-13 Intouch Technologies, Inc. Robot system that operates through a network firewall
US8078357B1 (en) * 2007-06-06 2011-12-13 Spark Integration Technologies Inc. Application-independent and component-isolated system and system of systems framework
IL185124A0 (en) * 2007-08-08 2008-11-03 Wave Group Ltd A generic omni directional imaging system & method for vision, orientation and maneuver of robots
WO2009038772A2 (en) * 2007-09-20 2009-03-26 Evolution Robotics Transferable intelligent control device
CN101493903A (zh) * 2008-01-24 2009-07-29 鸿富锦精密工业(深圳)有限公司 有性格特征的类生物装置及其展现方法
US10875182B2 (en) * 2008-03-20 2020-12-29 Teladoc Health, Inc. Remote presence system mounted to operating room hardware
US8179418B2 (en) 2008-04-14 2012-05-15 Intouch Technologies, Inc. Robotic based health care system
US8170241B2 (en) 2008-04-17 2012-05-01 Intouch Technologies, Inc. Mobile tele-presence system with a microphone system
US9193065B2 (en) 2008-07-10 2015-11-24 Intouch Technologies, Inc. Docking system for a tele-presence robot
US9842192B2 (en) 2008-07-11 2017-12-12 Intouch Technologies, Inc. Tele-presence robot system with multi-cast features
US8340819B2 (en) 2008-09-18 2012-12-25 Intouch Technologies, Inc. Mobile videoconferencing robot system with network adaptive driving
KR101021836B1 (ko) 2008-10-09 2011-03-17 한국전자통신연구원 동적 행위 바인딩을 통한 다수 로봇의 협업 구현 시스템 및그 구현 방법
US8996165B2 (en) 2008-10-21 2015-03-31 Intouch Technologies, Inc. Telepresence robot with a camera boom
US9138891B2 (en) 2008-11-25 2015-09-22 Intouch Technologies, Inc. Server connectivity control for tele-presence robot
US8463435B2 (en) 2008-11-25 2013-06-11 Intouch Technologies, Inc. Server connectivity control for tele-presence robot
US8849680B2 (en) 2009-01-29 2014-09-30 Intouch Technologies, Inc. Documentation through a remote presence robot
US20100228695A1 (en) * 2009-03-06 2010-09-09 Boris Kaplan Computer system in which a received signal-reaction of the computer system of artificial intelligence of a cyborg or an android, an association of the computer system of artificial intelligence of a cyborg or an android, a thought of the computer system of artificial intelligence of a cyborg or an android are substantiated and the working method of this computer system of artificial intelligence of a cyborg or an android
US8897920B2 (en) 2009-04-17 2014-11-25 Intouch Technologies, Inc. Tele-presence robot system with software modularity, projector and laser pointer
US11399153B2 (en) 2009-08-26 2022-07-26 Teladoc Health, Inc. Portable telepresence apparatus
US8384755B2 (en) 2009-08-26 2013-02-26 Intouch Technologies, Inc. Portable remote presence robot
US8521328B2 (en) * 2009-12-10 2013-08-27 The Boeing Company Control system for robotic vehicles
US20110187875A1 (en) * 2010-02-04 2011-08-04 Intouch Technologies, Inc. Robot face used in a sterile environment
US11154981B2 (en) * 2010-02-04 2021-10-26 Teladoc Health, Inc. Robot user interface for telepresence robot system
US8670017B2 (en) 2010-03-04 2014-03-11 Intouch Technologies, Inc. Remote presence system including a cart that supports a robot face and an overhead camera
US8918213B2 (en) 2010-05-20 2014-12-23 Irobot Corporation Mobile human interface robot
US9014848B2 (en) 2010-05-20 2015-04-21 Irobot Corporation Mobile robot system
US8935005B2 (en) 2010-05-20 2015-01-13 Irobot Corporation Operating a mobile robot
US10343283B2 (en) 2010-05-24 2019-07-09 Intouch Technologies, Inc. Telepresence robot system that can be accessed by a cellular phone
US10808882B2 (en) 2010-05-26 2020-10-20 Intouch Technologies, Inc. Tele-robotic system with a robot face placed on a chair
DE102010031251A1 (de) 2010-07-12 2012-01-12 Kuka Roboter Gmbh Roboterarm, Industrieroboter und Verfahren zum Erstellen eines mathematischen Robotermodells
US20120072020A1 (en) * 2010-09-20 2012-03-22 Electronics And Telecommunications Research Institute Method and apparatus for dynamically reconfiguring robot components
KR101714791B1 (ko) * 2010-12-01 2017-03-09 한국전자통신연구원 원격 함수호출 방식 기반 네트워크 로봇 시스템의 서비스를 제어하기 위한 장치 및 그 방법
US9264664B2 (en) 2010-12-03 2016-02-16 Intouch Technologies, Inc. Systems and methods for dynamic bandwidth allocation
US8930019B2 (en) 2010-12-30 2015-01-06 Irobot Corporation Mobile human interface robot
KR101251287B1 (ko) * 2010-12-31 2013-04-10 강원대학교산학협력단 명령 적응형 지능형 로봇 장치 및 제어 방법
KR101809973B1 (ko) * 2011-01-24 2017-12-19 삼성전자주식회사 로봇 제어 시스템 및 로봇 제어 방법
JP5905031B2 (ja) 2011-01-28 2016-04-20 インタッチ テクノロジーズ インコーポレイテッド モバイルテレプレゼンスロボットとのインタフェーシング
US9323250B2 (en) 2011-01-28 2016-04-26 Intouch Technologies, Inc. Time-dependent navigation of telepresence robots
US10769739B2 (en) 2011-04-25 2020-09-08 Intouch Technologies, Inc. Systems and methods for management of information among medical providers and facilities
US20140139616A1 (en) 2012-01-27 2014-05-22 Intouch Technologies, Inc. Enhanced Diagnostics for a Telepresence Robot
US9098611B2 (en) 2012-11-26 2015-08-04 Intouch Technologies, Inc. Enhanced video interaction for a user interface of a telepresence network
US8836751B2 (en) 2011-11-08 2014-09-16 Intouch Technologies, Inc. Tele-presence system with a user interface that displays different communication links
KR20140099296A (ko) * 2011-12-30 2014-08-11 인텔 코포레이션 미들웨어로서의 플랫폼 독립 isa 에뮬레이터
US9251313B2 (en) 2012-04-11 2016-02-02 Intouch Technologies, Inc. Systems and methods for visualizing and managing telepresence devices in healthcare networks
US8902278B2 (en) 2012-04-11 2014-12-02 Intouch Technologies, Inc. Systems and methods for visualizing and managing telepresence devices in healthcare networks
WO2013176758A1 (en) 2012-05-22 2013-11-28 Intouch Technologies, Inc. Clinical workflows utilizing autonomous and semi-autonomous telemedicine devices
US9361021B2 (en) 2012-05-22 2016-06-07 Irobot Corporation Graphical user interfaces including touchpad driving interfaces for telemedicine devices
US10203683B2 (en) 2013-07-16 2019-02-12 Seagate Technology Llc Coordinating end effector and vision controls
DK2933796T3 (en) * 2014-04-17 2019-01-21 Softbank Robotics Europe EXECUTION OF SOFTWARE APPLICATIONS ON A ROBOT
US10401611B2 (en) 2015-04-27 2019-09-03 Endochoice, Inc. Endoscope with integrated measurement of distance to objects of interest
US11862302B2 (en) 2017-04-24 2024-01-02 Teladoc Health, Inc. Automated transcription and documentation of tele-health encounters
CN107065682B (zh) * 2017-05-17 2019-06-11 西安交通大学 一种机器人控制器开放底层位置指令接口的实现方法
CN107247608A (zh) * 2017-05-31 2017-10-13 河南思维轨道交通技术研究院有限公司 一种具有应用软件硬件地址无关性的操作系统实现方法
US10483007B2 (en) 2017-07-25 2019-11-19 Intouch Technologies, Inc. Modular telehealth cart with thermal imaging and touch screen user interface
US11636944B2 (en) 2017-08-25 2023-04-25 Teladoc Health, Inc. Connectivity infrastructure for a telehealth platform
KR101969727B1 (ko) * 2017-10-24 2019-04-17 주식회사 로보스타 다관절 로봇을 조작하기 위한 장치 및 그 방법
US10617299B2 (en) 2018-04-27 2020-04-14 Intouch Technologies, Inc. Telehealth cart that supports a removable tablet with seamless audio/video switching
WO2020053454A1 (es) * 2018-09-12 2020-03-19 Erle Robotics, S.L. Controlador para robots
CN110509312B (zh) * 2019-08-29 2021-03-26 炬星科技(深圳)有限公司 机器人配置更新方法、电子设备及计算机可读存储介质
CN111015666B (zh) * 2019-12-27 2022-03-29 达闼机器人有限公司 机器人适配方法、存储介质、控制装置、方法及系统
US11774954B2 (en) * 2020-12-02 2023-10-03 Westinghouse Electric Company Llc Systems and methods for wireless remote control of automated equipment
CN115837677B (zh) * 2023-02-24 2023-04-28 深圳育智科创科技有限公司 一种机器人智能控制方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5579444A (en) * 1987-08-28 1996-11-26 Axiom Bildverarbeitungssysteme Gmbh Adaptive vision-based controller
US5280613A (en) * 1990-06-25 1994-01-18 Hewlett-Packard Company ANDF installer using the HPcode-Plus compiler intermediate language
US5276881A (en) * 1990-06-25 1994-01-04 Hewlett-Packard Company ANDF producer using the HPcode-Plus compiler intermediate language
US5634010A (en) * 1994-10-21 1997-05-27 Modulus Technologies, Inc. Managing and distributing data objects of different types between computers connected to a network
US5643010A (en) * 1995-12-12 1997-07-01 Hon Hai Precision Ind. Co., Ltd. High pin density electrical connector
US5936240A (en) * 1996-01-30 1999-08-10 The United States Of America As Represented By The United States Department Of Energy Mobile autonomous robotic apparatus for radiologic characterization
JP3454067B2 (ja) * 1997-01-23 2003-10-06 ソニー株式会社 ロボット装置及びその制御方法
JP3879193B2 (ja) * 1997-08-22 2007-02-07 ソニー株式会社 ロボット装置及びその制御方法
JP3919040B2 (ja) * 1997-11-30 2007-05-23 ソニー株式会社 ロボツト装置
JP3765356B2 (ja) * 1997-12-22 2006-04-12 ソニー株式会社 ロボツト装置
JP3980205B2 (ja) * 1998-12-17 2007-09-26 コニカミノルタホールディングス株式会社 作業ロボット
JP3424631B2 (ja) * 1999-01-13 2003-07-07 ソニー株式会社 ロボット装置及びソフトウエアの更新方法
JP4366617B2 (ja) * 1999-01-25 2009-11-18 ソニー株式会社 ロボット装置
EP1081461A3 (en) * 1999-08-30 2002-11-20 Aisin Aw Co., Ltd. Navigation apparatus with navigation data processor device and man-machine interface device
US6292714B1 (en) * 2000-05-12 2001-09-18 Fujitsu Limited Robot cooperation device, and robot cooperation program storage medium
JP2002113675A (ja) * 2000-10-11 2002-04-16 Sony Corp ロボット制御システム並びにロボット制御用ソフトウェアの導入方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005515903A (ja) * 2001-11-28 2005-06-02 エヴォリューション ロボティクス インコーポレイテッド ロボット用センサおよびアクチュエータのハードウェア抽象化層内における抽象化および集合化
US7925381B2 (en) 2001-11-28 2011-04-12 Evolution Robotics, Inc. Hardware abstraction layer (HAL) for a robot
US8996168B2 (en) 2001-11-28 2015-03-31 Irobot Corporation Hardware abstraction layer (HAL) for a robot
WO2004088514A1 (ja) * 2003-03-28 2004-10-14 Sony Corporation 情報提供装置及び方法,並びに情報提供システム
CN100351789C (zh) * 2003-03-28 2007-11-28 索尼株式会社 信息提供设备、方法和信息提供系统
JP2011516287A (ja) * 2008-04-09 2011-05-26 アルデバラン ロボティクス 関節肢を使用する移動ロボットの制御コマンドアーキテクチャ
US9327400B2 (en) 2008-04-09 2016-05-03 Aldebaran Robotics Control-command architecture for a mobile robot using articulated limbs
JP2014164762A (ja) * 2013-02-21 2014-09-08 Dspace Digital Signal Processing & Control Engineering Gmbh 制御装置テストシステムに接続されるハードウェアコンポーネントのインベントリを実施するための方法
JP2017010595A (ja) * 2013-02-21 2017-01-12 ディスペース デジタル シグナル プロセッシング アンド コントロール エンジニアリング ゲゼルシャフト ミット ベシュレンクテル ハフツングdspace digital signal processing and control engineering GmbH 制御装置テストシステムに接続されるハードウェアコンポーネントのインベントリを実施するための方法
US9633144B2 (en) 2013-02-21 2017-04-25 Dspace Digital Signal Processing And Control Engineering Gmbh Method for performing an inventory of the hardware components connected to a control unit test system
JP2014179069A (ja) * 2013-02-22 2014-09-25 Dspace Digital Signal Processing & Control Engineering Gmbh 制御装置テストシステムのコンフィギュレーション設定の実行方法
US10025883B2 (en) 2013-02-22 2018-07-17 Dspace Digital Signal Processing And Control Engineering Gmbh Method for generating a configuration for a control unit test system

Also Published As

Publication number Publication date
WO2002030627A1 (fr) 2002-04-18
US20020173879A1 (en) 2002-11-21
US6526332B2 (en) 2003-02-25
KR20020067693A (ko) 2002-08-23
US20030139850A1 (en) 2003-07-24
US6760648B2 (en) 2004-07-06
CN1395521A (zh) 2003-02-05

Similar Documents

Publication Publication Date Title
JP2002113675A (ja) ロボット制御システム並びにロボット制御用ソフトウェアの導入方法
US6816753B2 (en) Robot control system and robot control method
US6470235B2 (en) Authoring system and method, and storage medium used therewith
US7024276B2 (en) Legged mobile robot and its motion teaching method, and storage medium
JP2004237392A (ja) ロボット装置、及びロボット装置の表現方法
WO2002034478A1 (fr) Robot pourvu de jambes, procede de commande du comportement d"un tel robot, et support de donnees
JP2003159674A (ja) ロボット装置、ロボット装置の外力検出方法及びロボット装置の外力検出プログラム、並びにロボット装置の外力検出のためのキャリブレーション方法及びロボット装置の外力検出のためのキャリブレーションプログラム
US6697708B2 (en) Robot apparatus and robot apparatus motion control method
JP2004283958A (ja) ロボット装置、その行動制御方法及びプログラム
JP2002187082A (ja) ロボット制御システム及びロボット制御方法
JP2002086378A (ja) 脚式ロボットに対する動作教示システム及び動作教示方法
JP2004034169A (ja) 脚式移動ロボット装置及び脚式移動ロボット装置の移動制御方法
JP2002059384A (ja) ロボットのための学習システム及び学習方法
JP4449372B2 (ja) ロボット装置及びその行動制御方法
JP2002086380A (ja) 脚式ロボット及びその制御方法
US11833441B2 (en) Robot
JP2005321954A (ja) ロボット装置、情報処理システム及び情報処理方法、並びにコンピュータ・プログラム
JP2003136439A (ja) ロボット装置及びロボット装置の歩行制御方法並びにロボット装置の歩行制御プログラム
JP2002346958A (ja) 脚式移動ロボットのための制御装置及び制御方法
JP4506249B2 (ja) ロボット装置及びその動作比較方法
JP2002205290A (ja) 脚式移動ロボットの制御装置及び制御方法
JP2003266338A (ja) 脚式ロボットの姿勢制御装置及び姿勢制御方法
JP2003340761A (ja) ロボット装置及びロボット装置の制御方法
JP2001246579A (ja) 脚式移動ロボット及びその制御方法
JP2005007501A (ja) ロボット装置及びその動作制御方法